From 00932944721992c8011780e25bd130ce46b41fe1 Mon Sep 17 00:00:00 2001 From: eric Date: Tue, 10 Mar 2026 04:41:20 -0500 Subject: [PATCH] 's' --- .gitignore | 41 + README.md | 106 +- app/api/pay/route.ts | 227 ++ app/api/pay/status/route.ts | 23 + app/favicon.ico | Bin 0 -> 25931 bytes app/globals.css | 28 + app/index-content.ts | 50 + app/index.module.css | 231 ++ app/layout.tsx | 34 + app/lib/payEnv.ts | 38 + app/lib/usePayStatusPoll.ts | 75 + app/page.tsx | 310 +++ app/paid/page.tsx | 76 + config/services.config.ts | 76 + eslint.config.mjs | 18 + next.config.ts | 15 + package.json | 30 + pnpm-lock.yaml | 4072 +++++++++++++++++++++++++++++++++++ pnpm-workspace.yaml | 3 + postcss.config.mjs | 7 + public/file.svg | 1 + public/globe.svg | 1 + public/images/code.svg | 28 + public/images/group.svg | 20 + public/images/laptop.svg | 64 + public/images/touxiang.png | Bin 0 -> 157238 bytes public/images/travel.svg | 3 + public/next.svg | 1 + public/vercel.svg | 1 + public/window.svg | 1 + tsconfig.json | 34 + 31 files changed, 5541 insertions(+), 73 deletions(-) create mode 100644 .gitignore create mode 100644 app/api/pay/route.ts create mode 100644 app/api/pay/status/route.ts create mode 100644 app/favicon.ico create mode 100644 app/globals.css create mode 100644 app/index-content.ts create mode 100644 app/index.module.css create mode 100644 app/layout.tsx create mode 100644 app/lib/payEnv.ts create mode 100644 app/lib/usePayStatusPoll.ts create mode 100644 app/page.tsx create mode 100644 app/paid/page.tsx create mode 100644 config/services.config.ts create mode 100644 eslint.config.mjs create mode 100644 next.config.ts create mode 100644 package.json create mode 100644 pnpm-lock.yaml create mode 100644 pnpm-workspace.yaml create mode 100644 postcss.config.mjs create mode 100644 public/file.svg create mode 100644 public/globe.svg create mode 100644 public/images/code.svg create mode 100644 public/images/group.svg create mode 100644 public/images/laptop.svg create mode 100644 public/images/touxiang.png create mode 100644 public/images/travel.svg create mode 100644 public/next.svg create mode 100644 public/vercel.svg create mode 100644 public/window.svg create mode 100644 tsconfig.json diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..5ef6a52 --- /dev/null +++ b/.gitignore @@ -0,0 +1,41 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules +/.pnp +.pnp.* +.yarn/* +!.yarn/patches +!.yarn/plugins +!.yarn/releases +!.yarn/versions + +# testing +/coverage + +# next.js +/.next/ +/out/ + +# production +/build + +# misc +.DS_Store +*.pem + +# debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* +.pnpm-debug.log* + +# env files (can opt-in for committing if needed) +.env* + +# vercel +.vercel + +# typescript +*.tsbuildinfo +next-env.d.ts diff --git a/README.md b/README.md index b7f09a1..f97490c 100644 --- a/README.md +++ b/README.md @@ -1,92 +1,52 @@ -# nomadvip +# NomadVIP | 异度星球 +VIP 会员解锁页,集成 PocketBase 支付校验、ZPAY 支付。 +## 服务配置(参考 desktop digital) -## Getting started +ZPAY、PocketBase、MinIO 配置与 `C:\project\digital` 保持一致,复制 `.env.example` 为 `.env.local` 后按需修改: -To make it easy for you to get started with GitLab, here's a list of recommended next steps. +| 变量 | 说明 | 默认值 | +|------|------|--------| +| `NEXT_PUBLIC_POCKETBASE_URL` | PocketBase 地址 | `https://pocketbase.hackrobot.cn` | +| `NEXT_PUBLIC_API_URL` / `PAYMENT_API_URL` | payjsapi 地址 | `https://api.hackrobot.cn` | +| `PAYMENT_PROVIDER` | 支付提供商 | `zpay` | +| `MINIO_ENDPOINT` | MinIO 端点 | `minioweb.hackrobot.cn` | +| `MINIO_BUCKET` | 存储桶 | `hackrobot` | -Already a pro? Just edit this README.md and make it your own. Want to make it easy? [Use the template at the bottom](#editing-this-readme)! +详见 `config/services.config.ts`。 -## Add your files +## Getting Started -- [ ] [Create](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#create-a-file) or [upload](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#upload-a-file) files -- [ ] [Add files using the command line](https://docs.gitlab.com/ee/gitlab-basics/add-file.html#add-a-file-using-the-command-line) or push an existing Git repository with the following command: +First, run the development server: -``` -cd existing_repo -git remote add origin http://gitlab.yidooplanet.com/gitlab-instance-0a899031/nomadvip.git -git branch -M main -git push -uf origin main +```bash +npm run dev +# or +yarn dev +# or +pnpm dev +# or +bun dev ``` -## Integrate with your tools +Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. -- [ ] [Set up project integrations](http://gitlab.yidooplanet.com/gitlab-instance-0a899031/nomadvip/-/settings/integrations) +You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file. -## Collaborate with your team +This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load [Geist](https://vercel.com/font), a new font family for Vercel. -- [ ] [Invite team members and collaborators](https://docs.gitlab.com/ee/user/project/members/) -- [ ] [Create a new merge request](https://docs.gitlab.com/ee/user/project/merge_requests/creating_merge_requests.html) -- [ ] [Automatically close issues from merge requests](https://docs.gitlab.com/ee/user/project/issues/managing_issues.html#closing-issues-automatically) -- [ ] [Enable merge request approvals](https://docs.gitlab.com/ee/user/project/merge_requests/approvals/) -- [ ] [Automatically merge when pipeline succeeds](https://docs.gitlab.com/ee/user/project/merge_requests/merge_when_pipeline_succeeds.html) +## Learn More -## Test and Deploy +To learn more about Next.js, take a look at the following resources: -Use the built-in continuous integration in GitLab. +- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API. +- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial. -- [ ] [Get started with GitLab CI/CD](https://docs.gitlab.com/ee/ci/quick_start/index.html) -- [ ] [Analyze your code for known vulnerabilities with Static Application Security Testing(SAST)](https://docs.gitlab.com/ee/user/application_security/sast/) -- [ ] [Deploy to Kubernetes, Amazon EC2, or Amazon ECS using Auto Deploy](https://docs.gitlab.com/ee/topics/autodevops/requirements.html) -- [ ] [Use pull-based deployments for improved Kubernetes management](https://docs.gitlab.com/ee/user/clusters/agent/) -- [ ] [Set up protected environments](https://docs.gitlab.com/ee/ci/environments/protected_environments.html) +You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome! -*** +## Deploy on Vercel -# Editing this README +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. -When you're ready to make this README your own, just edit this file and use the handy template below (or feel free to structure it however you want - this is just a starting point!). Thank you to [makeareadme.com](https://www.makeareadme.com/) for this template. - -## Suggestions for a good README -Every project is different, so consider which of these sections apply to yours. The sections used in the template are suggestions for most open source projects. Also keep in mind that while a README can be too long and detailed, too long is better than too short. If you think your README is too long, consider utilizing another form of documentation rather than cutting out information. - -## Name -Choose a self-explaining name for your project. - -## Description -Let people know what your project can do specifically. Provide context and add a link to any reference visitors might be unfamiliar with. A list of Features or a Background subsection can also be added here. If there are alternatives to your project, this is a good place to list differentiating factors. - -## Badges -On some READMEs, you may see small images that convey metadata, such as whether or not all the tests are passing for the project. You can use Shields to add some to your README. Many services also have instructions for adding a badge. - -## Visuals -Depending on what you are making, it can be a good idea to include screenshots or even a video (you'll frequently see GIFs rather than actual videos). Tools like ttygif can help, but check out Asciinema for a more sophisticated method. - -## Installation -Within a particular ecosystem, there may be a common way of installing things, such as using Yarn, NuGet, or Homebrew. However, consider the possibility that whoever is reading your README is a novice and would like more guidance. Listing specific steps helps remove ambiguity and gets people to using your project as quickly as possible. If it only runs in a specific context like a particular programming language version or operating system or has dependencies that have to be installed manually, also add a Requirements subsection. - -## Usage -Use examples liberally, and show the expected output if you can. It's helpful to have inline the smallest example of usage that you can demonstrate, while providing links to more sophisticated examples if they are too long to reasonably include in the README. - -## Support -Tell people where they can go to for help. It can be any combination of an issue tracker, a chat room, an email address, etc. - -## Roadmap -If you have ideas for releases in the future, it is a good idea to list them in the README. - -## Contributing -State if you are open to contributions and what your requirements are for accepting them. - -For people who want to make changes to your project, it's helpful to have some documentation on how to get started. Perhaps there is a script that they should run or some environment variables that they need to set. Make these steps explicit. These instructions could also be useful to your future self. - -You can also document commands to lint the code or run tests. These steps help to ensure high code quality and reduce the likelihood that the changes inadvertently break something. Having instructions for running tests is especially helpful if it requires external setup, such as starting a Selenium server for testing in a browser. - -## Authors and acknowledgment -Show your appreciation to those who have contributed to the project. - -## License -For open source projects, say how it is licensed. - -## Project status -If you have run out of energy or time for your project, put a note at the top of the README saying that development has slowed down or stopped completely. Someone may choose to fork your project or volunteer to step in as a maintainer or owner, allowing your project to keep going. You can also make an explicit request for maintainers. +Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details. diff --git a/app/api/pay/route.ts b/app/api/pay/route.ts new file mode 100644 index 0000000..2eedb0f --- /dev/null +++ b/app/api/pay/route.ts @@ -0,0 +1,227 @@ +/** + * nomadvip 支付 API - 参考 digital + * PC: 二维码 | H5: 302 跳转 | 微信内: 收银台表单 + */ +import { NextRequest, NextResponse } from "next/server"; +import { getPaymentConfig, getApiUrlFromRequest } from "@/config/services.config"; + +const ZPAY_REQUIRED = ["pid", "type", "out_trade_no", "notify_url", "return_url", "name", "money", "sign", "sign_type"]; + +function escapeAttr(s: string): string { + return String(s) + .replace(/&/g, "&") + .replace(/"/g, """) + .replace(//g, ">"); +} + +function buildPayHtml(payUrl: string, params: Record): string { + const flat: Record = {}; + for (const [k, v] of Object.entries(params)) { + if (v == null) continue; + const s = String(v).trim(); + if (s === "") continue; + flat[k] = s; + } + const inputs = Object.entries(flat) + .map(([k, v]) => ``) + .join("\n"); + return ` + + + + + 跳转支付... + + + +

正在跳转到支付页面...

+
+ ${inputs} +
+ + +`; +} + +function setPayOrderCookie(res: NextResponse, orderId: string) { + res.cookies.set("nomadvip_pay_order", `${orderId}|${Date.now()}`, { path: "/", maxAge: 900 }); +} + +export async function POST(request: NextRequest) { + try { + let body: Record; + const contentType = request.headers.get("content-type") || ""; + if (contentType.includes("application/json")) { + body = (await request.json()) as Record; + } else { + const form = await request.formData(); + body = Object.fromEntries(form.entries()) as Record; + } + + const payConfig = getPaymentConfig(); + const hostHeader = request.headers.get("host") || request.headers.get("x-forwarded-host"); + const envApiUrl = process.env.PAYMENT_API_URL || process.env.NEXT_PUBLIC_API_URL; + const apiUrl = (envApiUrl ? payConfig.apiUrl : getApiUrlFromRequest(hostHeader)).replace(/\/$/, ""); + const user_id = String(body?.user_id || "").trim(); + const return_url = String(body?.return_url || "").trim(); + const total_fee = Number(body?.total_fee) || 18800; + const type = String(body?.type || "vip"); + const channel = String(body?.channel || "alipay"); + const device = String(body?.device || "pc"); + + if (!user_id) { + return NextResponse.json({ ok: false, error: "缺少 user_id" }, { status: 400 }); + } + + const origin = + request.headers.get("x-forwarded-host") + ? `${request.headers.get("x-forwarded-proto") || "https"}://${request.headers.get("x-forwarded-host")}` + : request.headers.get("origin") || "http://localhost:3000"; + const finalReturnUrl = return_url || `${origin}/paid`; + + const wantHtml = String(body?.html) === "1"; + + if (!wantHtml) { + return NextResponse.json({ ok: false, error: "请传 html=1" }, { status: 400 }); + } + + const clientIp = + request.headers.get("x-forwarded-for")?.split(",")[0]?.trim() || + request.headers.get("x-real-ip") || + ""; + + const redirectPayload = { + user_id, + total_fee, + type, + channel, + return_url: finalReturnUrl, + device, + ...(clientIp && { client_ip: clientIp }), + }; + + const controller = new AbortController(); + const timeout = setTimeout(() => controller.abort(), 15000); + const redirectRes = await fetch(`${apiUrl}/nomadvip/payh5/redirect`, { + method: "POST", + headers: { "Content-Type": "application/json" }, + body: JSON.stringify(redirectPayload), + redirect: "manual", + signal: controller.signal, + }).finally(() => clearTimeout(timeout)); + + if (redirectRes.status >= 301 && redirectRes.status <= 308) { + const location = redirectRes.headers.get("location"); + if (location) { + const res = NextResponse.redirect(location); + const orderId = redirectRes.headers.get("x-pay-order-id")?.trim(); + if (orderId) setPayOrderCookie(res, orderId); + return res; + } + } + + const resData = await redirectRes.json().catch(() => ({})); + + if (redirectRes.status === 200 && resData?.use_form) { + // 微信内:直接用 payh5 获取 params,构建收银台表单(不调用 redirect 避免重复创建订单) + const createRes = await fetch(`${apiUrl}/nomadvip/payh5`, { + method: "POST", + headers: { "Content-Type": "application/json" }, + body: JSON.stringify({ user_id, total_fee, type, channel }), + }); + const createData = await createRes.json().catch(() => ({})); + const params = createData?.params || {}; + const orderId = String(params?.out_trade_no || "").trim(); + if (!params || Object.keys(params).length === 0) { + return NextResponse.json({ ok: false, error: "支付参数为空" }, { status: 500 }); + } + const html = buildPayHtml(payConfig.zpaySubmitUrl, params as Record); + const res = new NextResponse(html, { + status: 200, + headers: { "Content-Type": "text/html; charset=utf-8" }, + }); + if (orderId) setPayOrderCookie(res, orderId); + return res; + } + + if (redirectRes.status === 200 && resData?.qrcode_mode && resData?.img) { + const returnUrl = String(resData.return_url || finalReturnUrl).replace( + /[&<>"']/g, + (c) => ({ "&": "&", "<": "<", ">": ">", '"': """, "'": "'" })[c] || c + ); + const imgSrc = String(resData.img).replace( + /[&<>"']/g, + (c) => ({ "&": "&", "<": "<", ">": ">", '"': """, "'": "'" })[c] || c + ); + const orderId = String(resData.order_id || "").replace( + /[&<>"']/g, + (c) => ({ "&": "&", "<": "<", ">": ">", '"': """, "'": "'" })[c] || c + ); + const ch = String(resData.channel || "alipay").toLowerCase(); + const isWx = ch === "wxpay" || ch === "wx" || ch === "wechat"; + const title = isWx ? "微信扫码支付" : "支付宝扫码支付"; + const hint = isWx ? "请使用微信扫描下方二维码完成支付" : "请使用支付宝扫描下方二维码完成支付"; + const esc = (s: string) => + s.replace(/[&<>"']/g, (c) => ({ "&": "&", "<": "<", ">": ">", '"': """, "'": "'" })[c] || c); + const html = ` + +${esc(title)} + + +

${esc(title)}

+

${esc(hint)}

+支付二维码 +

支付成功后将自动跳转...

+ +`; + const res = new NextResponse(html, { + status: 200, + headers: { "Content-Type": "text/html; charset=utf-8" }, + }); + if (orderId) setPayOrderCookie(res, orderId); + return res; + } + + if (redirectRes.status === 400 || redirectRes.status === 500) { + return NextResponse.json( + { ok: false, error: resData?.detail || resData?.msg || "支付跳转失败" }, + { status: redirectRes.status } + ); + } + + return NextResponse.json({ ok: false, error: "支付创建失败" }, { status: 500 }); + } catch (e) { + const err = e instanceof Error ? e : new Error(String(e)); + const msg = err.message || ""; + const hint = + msg.includes("fetch") || msg.includes("ECONNREFUSED") + ? "请确认 payjsapi 已启动" + : err.name === "AbortError" + ? "请求超时" + : msg; + console.error("Pay API error:", err); + return NextResponse.json({ ok: false, error: `支付请求失败: ${hint}` }, { status: 500 }); + } +} diff --git a/app/api/pay/status/route.ts b/app/api/pay/status/route.ts new file mode 100644 index 0000000..969d249 --- /dev/null +++ b/app/api/pay/status/route.ts @@ -0,0 +1,23 @@ +import { NextRequest, NextResponse } from "next/server"; +import { getPaymentConfig, getApiUrlFromRequest } from "@/config/services.config"; + +export async function GET(request: NextRequest) { + const orderId = request.nextUrl.searchParams.get("order_id"); + if (!orderId) { + return NextResponse.json({ ok: false, error: "缺少 order_id" }, { status: 400 }); + } + const payConfig = getPaymentConfig(); + const hostHeader = request.headers.get("host") || request.headers.get("x-forwarded-host"); + const envApiUrl = process.env.PAYMENT_API_URL || process.env.NEXT_PUBLIC_API_URL; + const apiUrl = (envApiUrl ? payConfig.apiUrl : getApiUrlFromRequest(hostHeader)).replace(/\/$/, ""); + try { + const res = await fetch( + `${apiUrl}/nomadvip/zpay_order_status?out_trade_no=${encodeURIComponent(orderId)}`, + { cache: "no-store" } + ); + const data = await res.json().catch(() => ({})); + return NextResponse.json({ ok: true, paid: !!data?.paid }); + } catch (e) { + return NextResponse.json({ ok: false, paid: false, error: String(e) }, { status: 500 }); + } +} diff --git a/app/favicon.ico b/app/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..718d6fea4835ec2d246af9800eddb7ffb276240c GIT binary patch literal 25931 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 LrJugUA?W`A8`#=m literal 0 HcmV?d00001 diff --git a/app/globals.css b/app/globals.css new file mode 100644 index 0000000..47ea2fd --- /dev/null +++ b/app/globals.css @@ -0,0 +1,28 @@ +@import "tailwindcss"; +@import "github-markdown-css/github-markdown.css"; +@import "animate.css"; + +:root { + --background: #ffffff; + --foreground: #171717; +} + +@theme inline { + --color-background: var(--background); + --color-foreground: var(--foreground); + --font-sans: var(--font-geist-sans); + --font-mono: var(--font-geist-mono); +} + +@media (prefers-color-scheme: dark) { + :root { + --background: #0a0a0a; + --foreground: #ededed; + } +} + +body { + background: var(--background); + color: var(--foreground); + font-family: Arial, Helvetica, sans-serif; +} diff --git a/app/index-content.ts b/app/index-content.ts new file mode 100644 index 0000000..91e22d9 --- /dev/null +++ b/app/index-content.ts @@ -0,0 +1,50 @@ +export const indexMd = ` +image_20251231_015321_20586.jpg + +🌟你将收获: +🚀 业务方向:无人直播、RPA 自动化、web开发 + +⚙️ 技术杠杆:云手机、PVE 虚拟化、服务器集群 + +🌐 海外平台:YouTube、TikTok、SaaS 运营实战 + + + +
+ +📖 解锁=>电子书+视频教程 + +1️⃣[《数字游民》:地理套利 + 自动化杠杆](https://hackrobot.cn) + +2️⃣ [《云手机》:低成本工作室搭建指南](https://android.hackrobot.cn) + +20260101205143_20260101_205202_1552.png + + + +📱设备自助下单(开箱即用) + +wqdq_20260101_212749_8560.jpg + + + +📚 即时问答 (技术咨询) + +20260101203904_20260101_204741_699.png + +㊙️私密社群 + +20260101204456_20260101_204802_768.png + +
+ +🚫 内容不适合想躺赚、现金流紧张的人 + +💰 价格随参与人数阶梯式调整 +(维护与答疑成本随规模增长) + +📌 本内容为虚拟数字交付 +不支持退款 + +👉 **限时特惠,3月12日恢复** +`; diff --git a/app/index.module.css b/app/index.module.css new file mode 100644 index 0000000..6e91ff1 --- /dev/null +++ b/app/index.module.css @@ -0,0 +1,231 @@ +/* markdown-body from github-markdown-css */ +.markVip { + padding-left: 50px; + padding-right: 50px; +} + +.markVip img { + display: block; + margin: 10px auto; + max-width: 100%; + height: auto; + border-radius: 6px; + box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1); +} + +.markVip p, +.markVip li, +.markVip h1, +.markVip h2, +.markVip h3 { + font-size: 15px; +} + +.index { + height: 100vh; +} + +.indexBook { + min-height: 150px; + display: flex; + flex-direction: column-reverse; + align-items: center; + justify-content: space-between; +} + +.indexBookLeft { + min-width: 300px; + min-height: 150px; + display: flex; + flex-direction: column; + align-items: center; + justify-content: space-around; +} + +.leftTitle { + font-size: 25px; + font-weight: 700; + color: #69b1ff; + margin-top: 5px; +} + +.card { + margin-top: 10px; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; +} + +.cardItem { + padding: 10px; + width: 250px; + margin-bottom: 10px; + display: flex; + flex-direction: row; + background-color: #f0f5ff; + border-radius: 10px; +} + +.cardItemLeft { + display: flex; + flex-direction: column; + margin-right: 20px; +} + +.cardItemLeftImg { + width: 40px; + height: 40px; +} + +.cardItemRight { + flex: 1; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; +} + +.cardItemRightUp { + width: 100%; + height: 40px; + display: flex; + flex-direction: row; + font-weight: 700; + font-size: 17px; +} + +.cardItemRightDown { + width: 100%; + flex: 1; + display: flex; + flex-direction: row; + font-size: 15px; + flex-wrap: wrap; + color: #262626; +} + +.leftBtn { + margin-top: 15px; + margin-bottom: 15px; +} + +.startRead { + width: 250px; + padding: 8px 16px; + font-size: 14px; + font-weight: 500; + color: white; + background: linear-gradient(135deg, #69b1ff 0%, #4096ff 100%); + border: none; + border-radius: 9999px; + cursor: pointer; +} + +.startRead:hover { + opacity: 0.9; +} + +.indexBookImg { + margin-top: 15px; + width: 200px; + height: 200px; +} + +.bookImg { + width: 100%; + height: auto; +} + +.svgItems { + display: flex; + flex-direction: column; + align-items: center; + justify-content: space-around; + margin-top: 20px; +} + +/* H5 下隐藏「解锁vip」按钮下方模块(无人直播、RPA自动化、聊天机器人) */ +@media (max-width: 768px) { + .svgItems { + display: none; + } +} + +.svgItem { + width: 100%; + display: flex; + flex-direction: row; + align-items: center; + justify-content: space-around; +} + +.bookImgItem { + width: 350px; + height: 350px; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; +} + +.bookImgText { + margin-top: 20px; + font-size: 30px; +} + +.vipcode { + display: flex; + flex-direction: column; + align-items: center; + font-size: 15px; +} + +.vipcode button { + margin: 8px 0; + padding: 8px 16px; + cursor: pointer; +} + +@media (min-width: 1536px) { + .index { + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + position: relative; + } + + .indexBook { + width: 100%; + max-width: 1400px; + display: flex; + flex-direction: row; + align-items: center; + justify-content: space-between; + background-color: #f0f5ff; + border-radius: 20px; + } + + .indexBookLeft .card { + display: none; + } + + .indexBookLeft .leftBtn .startRead { + width: 100px; + } + + .indexBookImg .bookImg { + margin-bottom: 40px; + } + + .svgItems { + width: 100%; + max-width: 1400px; + margin-top: 80px; + display: flex; + flex-direction: row; + align-items: center; + justify-content: center; + } +} diff --git a/app/layout.tsx b/app/layout.tsx new file mode 100644 index 0000000..b50fd99 --- /dev/null +++ b/app/layout.tsx @@ -0,0 +1,34 @@ +import type { Metadata } from "next"; +import { Geist, Geist_Mono } from "next/font/google"; +import "./globals.css"; + +const geistSans = Geist({ + variable: "--font-geist-sans", + subsets: ["latin"], +}); + +const geistMono = Geist_Mono({ + variable: "--font-geist-mono", + subsets: ["latin"], +}); + +export const metadata: Metadata = { + title: "异度星球", + description: "数字游民社群", +}; + +export default function RootLayout({ + children, +}: Readonly<{ + children: React.ReactNode; +}>) { + return ( + + + {children} + + + ); +} diff --git a/app/lib/payEnv.ts b/app/lib/payEnv.ts new file mode 100644 index 0000000..ff5b554 --- /dev/null +++ b/app/lib/payEnv.ts @@ -0,0 +1,38 @@ +/** + * 支付环境检测:PC / H5 / 微信浏览器 + * 参考 digital app/lib/payEnv.ts + */ + +export type PayEnv = "pc" | "h5" | "wechat"; +export type PayChannel = "alipay" | "wxpay"; + +export function isWeChat(): boolean { + if (typeof navigator === "undefined") return false; + return /MicroMessenger/i.test(navigator.userAgent); +} + +export function isMobile(): boolean { + if (typeof navigator === "undefined") return false; + return /AppleWebKit.*Mobile|Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test( + navigator.userAgent + ); +} + +export function getPayEnv(): PayEnv { + if (isWeChat()) return "wechat"; + if (isMobile()) return "h5"; + return "pc"; +} + +export function getRecommendedChannel(env: PayEnv): PayChannel { + return "wxpay"; +} + +export function mustUseWxPay(env: PayEnv): boolean { + return env === "wechat"; +} + +export function getDeviceFromEnv(env: PayEnv): "pc" | "h5" | "wechat" { + if (env === "wechat") return "wechat"; + return env === "pc" ? "pc" : "h5"; +} diff --git a/app/lib/usePayStatusPoll.ts b/app/lib/usePayStatusPoll.ts new file mode 100644 index 0000000..4c732a4 --- /dev/null +++ b/app/lib/usePayStatusPoll.ts @@ -0,0 +1,75 @@ +/** + * 微信 H5 支付完成后可能不跳转,通过 cookie 轮询检测支付状态 + * 参考 digital usePayStatusPoll + */ +import { useEffect, useRef, useState } from "react"; + +const COOKIE_NAME = "nomadvip_pay_order"; +const POLL_INTERVAL = 2000; +const MAX_POLLS = 150; +const MAX_AGE_MS = 15 * 60 * 1000; + +function getCookie(name: string): string | null { + if (typeof document === "undefined") return null; + const match = document.cookie.match(new RegExp(`(?:^|; )${name}=([^;]*)`)); + return match ? decodeURIComponent(match[1]) : null; +} + +function clearCookie(name: string): void { + if (typeof document === "undefined") return; + document.cookie = `${name}=; path=/; max-age=0`; +} + +function parsePayOrderCookie(raw: string | null): [string | null, boolean] { + if (!raw?.trim()) return [null, false]; + const parts = raw.split("|"); + const orderId = parts[0]?.trim() || raw.trim(); + const ts = parts[1] ? parseInt(parts[1], 10) : NaN; + if (!orderId) return [null, false]; + if (Number.isNaN(ts)) return [orderId, false]; + if (Date.now() - ts > MAX_AGE_MS) return [orderId, false]; + return [orderId, true]; +} + +export function usePayStatusPoll(onPaid: () => void): boolean { + const [polling, setPolling] = useState(false); + const onPaidRef = useRef(onPaid); + onPaidRef.current = onPaid; + + useEffect(() => { + const raw = getCookie(COOKIE_NAME); + const [orderId, isValid] = parsePayOrderCookie(raw); + if (!orderId || !isValid) { + if (raw) clearCookie(COOKIE_NAME); + return; + } + + setPolling(true); + let count = 0; + const timer = setInterval(async () => { + count++; + if (count > MAX_POLLS) { + clearInterval(timer); + clearCookie(COOKIE_NAME); + setPolling(false); + return; + } + try { + const res = await fetch(`/api/pay/status?order_id=${encodeURIComponent(orderId)}`); + const data = await res.json(); + if (data?.ok && data?.paid) { + clearInterval(timer); + clearCookie(COOKIE_NAME); + setPolling(false); + onPaidRef.current(); + } + } catch { + // 继续轮询 + } + }, POLL_INTERVAL); + + return () => clearInterval(timer); + }, []); + + return polling; +} diff --git a/app/page.tsx b/app/page.tsx new file mode 100644 index 0000000..be82f86 --- /dev/null +++ b/app/page.tsx @@ -0,0 +1,310 @@ +"use client"; + +import { useCallback, useEffect, useRef, useState } from "react"; +import Image from "next/image"; +import { marked } from "marked"; +import PocketBase from "pocketbase"; +import { indexMd } from "./index-content"; +import styles from "./index.module.css"; +import { + getPayEnv, + getRecommendedChannel, + mustUseWxPay, + getDeviceFromEnv, +} from "@/app/lib/payEnv"; +import { usePayStatusPoll } from "@/app/lib/usePayStatusPoll"; + +const PB_URL = + process.env.NEXT_PUBLIC_POCKETBASE_URL || "https://pocketbase.hackrobot.cn"; + +function redirectToPay(params: { + user_id: string; + return_url: string; + total_fee: number; + type: string; + channel: "alipay" | "wxpay"; + device: "pc" | "h5" | "wechat"; +}) { + const form = document.createElement("form"); + form.method = "POST"; + form.action = "/api/pay"; + form.target = "_self"; + form.style.display = "none"; + const fields: [string, string][] = [ + ["user_id", params.user_id], + ["return_url", params.return_url], + ["total_fee", String(params.total_fee)], + ["type", params.type], + ["channel", params.channel], + ["device", params.device], + ["html", "1"], + ]; + fields.forEach(([k, v]) => { + const input = document.createElement("input"); + input.type = "hidden"; + input.name = k; + input.value = v; + form.appendChild(input); + }); + document.body.appendChild(form); + form.submit(); +} + +function getStorage(key: string): string | null { + if (typeof window === "undefined") return null; + return localStorage.getItem(key); +} + +function setStorage(key: string, value: string): void { + if (typeof window === "undefined") return; + localStorage.setItem(key, value); +} + +function removeStorage(key: string): void { + if (typeof window === "undefined") return; + localStorage.removeItem(key); +} + +export default function Home() { + const [paidType, setPaidType] = useState(null); + const [userName, setUserName] = useState(null); + const [loading, setLoading] = useState(true); + const contentRef = useRef(null); + + const savePaidType = useCallback((type: string | null) => { + if (type) setStorage("paidType", type); + else removeStorage("paidType"); + setPaidType(type); + }, []); + + const saveUserName = useCallback((name: string) => { + setStorage("userName", name); + setUserName(name); + }, []); + + const getOrCreateUserId = useCallback(() => { + let userId = getStorage("userId"); + if (!userId) { + userId = `user${Date.now()}`; + setStorage("userId", userId); + } + return userId; + }, []); + + const checkPaymentFromPB = useCallback(async (userId: string) => { + try { + const pb = new PocketBase(PB_URL); + const records = await pb.collection("payments").getList(1, 1, { + filter: `user_id = "${userId}"`, + sort: "-created", + }); + + if (records.items.length > 0) { + const latestType = records.items[0].type as string; + const dbUserId = records.items[0].user_id as string; + savePaidType(latestType); + saveUserName(dbUserId); + return latestType; + } else { + savePaidType(null); + return null; + } + } catch (err) { + console.error("查询 PocketBase 失败:", err); + return getStorage("paidType"); + } + }, [savePaidType, saveUserName]); + + const clearAllStorage = useCallback(() => { + try { + if (typeof window !== "undefined" && window.localStorage) { + window.localStorage.clear(); + } + removeStorage("userId"); + removeStorage("paidType"); + removeStorage("userName"); + setPaidType(null); + setUserName(null); + setLoading(false); + alert("本地存储已清空"); + // 移除 URL 中的 ?type=clean,避免刷新时重复触发 + if (typeof window !== "undefined" && window.history.replaceState) { + window.history.replaceState({}, "", window.location.pathname); + } + } catch (error) { + console.error("清空存储失败:", error); + alert("清空存储失败"); + } + }, []); + + const handlePay = useCallback(() => { + const userId = getOrCreateUserId(); + const returnUrl = `${window.location.origin}/paid`; + const env = getPayEnv(); + const channel = mustUseWxPay(env) ? "wxpay" : getRecommendedChannel(env); + const device = getDeviceFromEnv(env); + redirectToPay({ + user_id: userId, + return_url: returnUrl, + total_fee: 18800, + type: "vip", + channel, + device, + }); + }, [getOrCreateUserId]); + + const handleCopyUsername = useCallback(() => { + const name = userName || ""; + if (typeof navigator !== "undefined" && navigator.clipboard) { + navigator.clipboard.writeText(name); + alert("账号已复制"); + } + }, [userName]); + + // 微信 H5 支付完成后可能不跳转,轮询检测到已支付则刷新 + usePayStatusPoll(() => { + savePaidType("vip"); + saveUserName(getStorage("userId") || ""); + }); + + useEffect(() => { + const urlParams = new URLSearchParams(window.location.search); + if (urlParams.get("type") === "clean") { + clearAllStorage(); + return; + } + if (urlParams.get("paid") === "1") { + savePaidType("vip"); + saveUserName(getStorage("userId") || ""); + } + + const init = async () => { + getOrCreateUserId(); + + const localType = getStorage("paidType"); + const localUserName = getStorage("userName"); + if (localType && localUserName) { + setPaidType(localType); + setUserName(localUserName); + setLoading(false); + return; + } + + const userId = getStorage("userId"); + if (userId) { + await checkPaymentFromPB(userId); + } + setLoading(false); + }; + + init(); + }, [clearAllStorage, getOrCreateUserId, checkPaymentFromPB, savePaidType, saveUserName]); + + marked.setOptions({ breaks: true, gfm: true }); + + return ( +
+
+
+
异度星球
+ +
+
+
+ group +
+
+
数字游民社群
+
还在独自摸索吗?
+
+
+
+ +
+ +
+ {paidType === "vip" ? ( +
+
{ + window.location.href = "https://qun.hackrobot.cn"; + }} + style={{ cursor: "pointer" }} + > + 👉星球地址: qun.hackrobot.cn +
+
账号:{getStorage("userName")}
+ +
密码:123456
+
打开网页后,请点击"左上角头像",打开侧面栏
+
+ ) : ( + + )} +
+
+ +
+ avatar +
+
+ +
+
+
+ laptop +
无人直播
+
+
+ travel +
RPA自动化
+
+
+ code +
聊天机器人
+
+
+
+
+ ); +} diff --git a/app/paid/page.tsx b/app/paid/page.tsx new file mode 100644 index 0000000..7c379d6 --- /dev/null +++ b/app/paid/page.tsx @@ -0,0 +1,76 @@ +"use client"; + +import { useEffect, useState } from "react"; +import Link from "next/link"; +import { usePayStatusPoll } from "@/app/lib/usePayStatusPoll"; + +export default function PaidPage() { + const [status, setStatus] = useState<"pending" | "success" | "fail">("pending"); + const [fromUrl, setFromUrl] = useState(null); + + usePayStatusPoll(() => setStatus("success")); + + useEffect(() => { + const params = new URLSearchParams(window.location.search); + const paid = params.get("paid"); + const fail = params.get("fail"); + const from = params.get("from"); + if (paid === "1") setStatus("success"); + else if (fail === "1") setStatus("fail"); + if (from) setFromUrl(decodeURIComponent(from)); + }, []); + + if (status === "pending") { + return ( +
+
+
+

支付结果确认中

+

+ 正在查询支付状态,请稍候… +
+ (支付完成后将自动跳转) +

+
+
+ ); + } + + if (status === "success") { + return ( +
+
+
+ ✅ +
+

支付成功

+

感谢您的支持,VIP 权益已开通

+ + ← 返回首页 + +
+
+ ); + } + + return ( +
+
+
+ ⚠️ +
+

支付未完成

+

支付已取消或未成功,请重试

+ + ← 返回首页 + +
+
+ ); +} diff --git a/config/services.config.ts b/config/services.config.ts new file mode 100644 index 0000000..d0b719a --- /dev/null +++ b/config/services.config.ts @@ -0,0 +1,76 @@ +/** + * 服务配置 - 参考 desktop digital 项目 + * PocketBase、支付(ZPAY)、MinIO 可通过环境变量覆盖 + */ + +const isDev = process.env.NODE_ENV === "development"; + +export interface PocketBaseConfig { + url: string; +} + +export interface PaymentConfig { + apiUrl: string; + provider: "zpay" | "xorpay"; + zpaySubmitUrl: string; + /** nomadvip 专用接口路径(固定 ZPAY,不影响 digital/cnomadcna) */ + nomadvipPayPath: string; +} + +export interface MinioConfig { + endPoint: string; + port: number; + useSSL: boolean; + bucket: string; + publicUrl: string; +} + +export function getPocketBaseConfig(): PocketBaseConfig { + return { + url: + process.env.NEXT_PUBLIC_POCKETBASE_URL || + process.env.POCKETBASE_URL || + "https://pocketbase.hackrobot.cn", + }; +} + +/** + * 根据请求 Host 推断 payjsapi 地址(同主机:8700) + * 访问 192.168.41.222:3000 时自动用 192.168.41.222:8700,无需在 .env 写死 IP + */ +export function getApiUrlFromRequest(hostHeader: string | null): string { + if (!hostHeader) return isDev ? "http://127.0.0.1:8700" : "https://api.hackrobot.cn"; + const hostname = hostHeader.split(":")[0]; + return isDev ? `http://${hostname}:8700` : "https://api.hackrobot.cn"; +} + +export function getPaymentConfig(): PaymentConfig { + const apiUrl = + process.env.PAYMENT_API_URL || + process.env.NEXT_PUBLIC_API_URL || + (isDev ? "http://127.0.0.1:8700" : "https://api.hackrobot.cn"); + return { + apiUrl, + provider: (process.env.PAYMENT_PROVIDER as "zpay" | "xorpay") || "zpay", + zpaySubmitUrl: + process.env.ZPAY_SUBMIT_URL || "https://zpayz.cn/submit.php", + nomadvipPayPath: "/nomadvip/payh5", + }; +} + +export function getMinioConfig(): MinioConfig { + const endPoint = process.env.MINIO_ENDPOINT || "minioweb.hackrobot.cn"; + const port = parseInt(process.env.MINIO_PORT || "9035", 10); + const useSSL = process.env.MINIO_USE_SSL === "true"; + const bucket = process.env.MINIO_BUCKET || "hackrobot"; + const publicUrl = + process.env.MINIO_PUBLIC_URL || `https://${endPoint}/${bucket}`; + + return { + endPoint, + port, + useSSL, + bucket, + publicUrl: publicUrl.replace(/\/$/, ""), + }; +} diff --git a/eslint.config.mjs b/eslint.config.mjs new file mode 100644 index 0000000..05e726d --- /dev/null +++ b/eslint.config.mjs @@ -0,0 +1,18 @@ +import { defineConfig, globalIgnores } from "eslint/config"; +import nextVitals from "eslint-config-next/core-web-vitals"; +import nextTs from "eslint-config-next/typescript"; + +const eslintConfig = defineConfig([ + ...nextVitals, + ...nextTs, + // Override default ignores of eslint-config-next. + globalIgnores([ + // Default ignores of eslint-config-next: + ".next/**", + "out/**", + "build/**", + "next-env.d.ts", + ]), +]); + +export default eslintConfig; diff --git a/next.config.ts b/next.config.ts new file mode 100644 index 0000000..73521d7 --- /dev/null +++ b/next.config.ts @@ -0,0 +1,15 @@ +import type { NextConfig } from "next"; + +const nextConfig: NextConfig = { + // 局域网访问(如手机 192.168.x.x)时允许跨域请求 _next 资源 + // 需完全重启 dev 服务(Ctrl+C 后 pnpm dev)后生效 + allowedDevOrigins: [ + "192.168.41.222", + "192.168.41.222:3000", + "http://192.168.41.222", + "http://192.168.41.222:3000", + "http://192.168.41.222:3001", + ], +}; + +export default nextConfig; diff --git a/package.json b/package.json new file mode 100644 index 0000000..a3238c9 --- /dev/null +++ b/package.json @@ -0,0 +1,30 @@ +{ + "name": "nomadvip", + "version": "0.1.0", + "private": true, + "scripts": { + "dev": "next dev -H 0.0.0.0", + "build": "next build", + "start": "next start", + "lint": "eslint" + }, + "dependencies": { + "animate.css": "^4.1.1", + "github-markdown-css": "^5.9.0", + "marked": "^17.0.4", + "next": "16.1.6", + "pocketbase": "^0.26.8", + "react": "19.2.3", + "react-dom": "19.2.3" + }, + "devDependencies": { + "@tailwindcss/postcss": "^4", + "@types/node": "^20", + "@types/react": "^19", + "@types/react-dom": "^19", + "eslint": "^9", + "eslint-config-next": "16.1.6", + "tailwindcss": "^4", + "typescript": "^5" + } +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml new file mode 100644 index 0000000..87885fc --- /dev/null +++ b/pnpm-lock.yaml @@ -0,0 +1,4072 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + dependencies: + animate.css: + specifier: ^4.1.1 + version: 4.1.1 + github-markdown-css: + specifier: ^5.9.0 + version: 5.9.0 + marked: + specifier: ^17.0.4 + version: 17.0.4 + next: + specifier: 16.1.6 + version: 16.1.6(@babel/core@7.29.0)(react-dom@19.2.3(react@19.2.3))(react@19.2.3) + pocketbase: + specifier: ^0.26.8 + version: 0.26.8 + react: + specifier: 19.2.3 + version: 19.2.3 + react-dom: + specifier: 19.2.3 + version: 19.2.3(react@19.2.3) + devDependencies: + '@tailwindcss/postcss': + specifier: ^4 + version: 4.2.1 + '@types/node': + specifier: ^20 + version: 20.19.37 + '@types/react': + specifier: ^19 + version: 19.2.14 + '@types/react-dom': + specifier: ^19 + version: 19.2.3(@types/react@19.2.14) + eslint: + specifier: ^9 + version: 9.39.4(jiti@2.6.1) + eslint-config-next: + specifier: 16.1.6 + version: 16.1.6(@typescript-eslint/parser@8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) + tailwindcss: + specifier: ^4 + version: 4.2.1 + typescript: + specifier: ^5 + version: 5.9.3 + +packages: + + '@alloc/quick-lru@5.2.0': + resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==} + engines: {node: '>=10'} + + '@babel/code-frame@7.29.0': + resolution: {integrity: sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==} + engines: {node: '>=6.9.0'} + + '@babel/compat-data@7.29.0': + resolution: {integrity: sha512-T1NCJqT/j9+cn8fvkt7jtwbLBfLC/1y1c7NtCeXFRgzGTsafi68MRv8yzkYSapBnFA6L3U2VSc02ciDzoAJhJg==} + engines: {node: '>=6.9.0'} + + '@babel/core@7.29.0': + resolution: {integrity: sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==} + engines: {node: '>=6.9.0'} + + '@babel/generator@7.29.1': + resolution: {integrity: sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-compilation-targets@7.28.6': + resolution: {integrity: sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA==} + engines: {node: '>=6.9.0'} + + '@babel/helper-globals@7.28.0': + resolution: {integrity: sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-module-imports@7.28.6': + resolution: {integrity: sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-module-transforms@7.28.6': + resolution: {integrity: sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/helper-string-parser@7.27.1': + resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-identifier@7.28.5': + resolution: {integrity: sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-option@7.27.1': + resolution: {integrity: sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==} + engines: {node: '>=6.9.0'} + + '@babel/helpers@7.28.6': + resolution: {integrity: sha512-xOBvwq86HHdB7WUDTfKfT/Vuxh7gElQ+Sfti2Cy6yIWNW05P8iUslOVcZ4/sKbE+/jQaukQAdz/gf3724kYdqw==} + engines: {node: '>=6.9.0'} + + '@babel/parser@7.29.0': + resolution: {integrity: sha512-IyDgFV5GeDUVX4YdF/3CPULtVGSXXMLh1xVIgdCgxApktqnQV0r7/8Nqthg+8YLGaAtdyIlo2qIdZrbCv4+7ww==} + engines: {node: '>=6.0.0'} + hasBin: true + + '@babel/template@7.28.6': + resolution: {integrity: sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==} + engines: {node: '>=6.9.0'} + + '@babel/traverse@7.29.0': + resolution: {integrity: sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==} + engines: {node: '>=6.9.0'} + + '@babel/types@7.29.0': + resolution: {integrity: sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==} + engines: {node: '>=6.9.0'} + + '@emnapi/core@1.8.1': + resolution: {integrity: sha512-AvT9QFpxK0Zd8J0jopedNm+w/2fIzvtPKPjqyw9jwvBaReTTqPBk9Hixaz7KbjimP+QNz605/XnjFcDAL2pqBg==} + + '@emnapi/runtime@1.8.1': + resolution: {integrity: sha512-mehfKSMWjjNol8659Z8KxEMrdSJDDot5SXMq00dM8BN4o+CLNXQ0xH2V7EchNHV4RmbZLmmPdEaXZc5H2FXmDg==} + + '@emnapi/wasi-threads@1.1.0': + resolution: {integrity: sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==} + + '@eslint-community/eslint-utils@4.9.1': + resolution: {integrity: sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + + '@eslint-community/regexpp@4.12.2': + resolution: {integrity: sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + + '@eslint/config-array@0.21.2': + resolution: {integrity: sha512-nJl2KGTlrf9GjLimgIru+V/mzgSK0ABCDQRvxw5BjURL7WfH5uoWmizbH7QB6MmnMBd8cIC9uceWnezL1VZWWw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/config-helpers@0.4.2': + resolution: {integrity: sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/core@0.17.0': + resolution: {integrity: sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/eslintrc@3.3.5': + resolution: {integrity: sha512-4IlJx0X0qftVsN5E+/vGujTRIFtwuLbNsVUe7TO6zYPDR1O6nFwvwhIKEKSrl6dZchmYBITazxKoUYOjdtjlRg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/js@9.39.4': + resolution: {integrity: sha512-nE7DEIchvtiFTwBw4Lfbu59PG+kCofhjsKaCWzxTpt4lfRjRMqG6uMBzKXuEcyXhOHoUp9riAm7/aWYGhXZ9cw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/object-schema@2.1.7': + resolution: {integrity: sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@eslint/plugin-kit@0.4.1': + resolution: {integrity: sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@humanfs/core@0.19.1': + resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==} + engines: {node: '>=18.18.0'} + + '@humanfs/node@0.16.7': + resolution: {integrity: sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==} + engines: {node: '>=18.18.0'} + + '@humanwhocodes/module-importer@1.0.1': + resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} + engines: {node: '>=12.22'} + + '@humanwhocodes/retry@0.4.3': + resolution: {integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==} + engines: {node: '>=18.18'} + + '@img/colour@1.1.0': + resolution: {integrity: sha512-Td76q7j57o/tLVdgS746cYARfSyxk8iEfRxewL9h4OMzYhbW4TAcppl0mT4eyqXddh6L/jwoM75mo7ixa/pCeQ==} + engines: {node: '>=18'} + + '@img/sharp-darwin-arm64@0.34.5': + resolution: {integrity: sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [darwin] + + '@img/sharp-darwin-x64@0.34.5': + resolution: {integrity: sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [darwin] + + '@img/sharp-libvips-darwin-arm64@1.2.4': + resolution: {integrity: sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g==} + cpu: [arm64] + os: [darwin] + + '@img/sharp-libvips-darwin-x64@1.2.4': + resolution: {integrity: sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg==} + cpu: [x64] + os: [darwin] + + '@img/sharp-libvips-linux-arm64@1.2.4': + resolution: {integrity: sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw==} + cpu: [arm64] + os: [linux] + + '@img/sharp-libvips-linux-arm@1.2.4': + resolution: {integrity: sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A==} + cpu: [arm] + os: [linux] + + '@img/sharp-libvips-linux-ppc64@1.2.4': + resolution: {integrity: sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA==} + cpu: [ppc64] + os: [linux] + + '@img/sharp-libvips-linux-riscv64@1.2.4': + resolution: {integrity: sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA==} + cpu: [riscv64] + os: [linux] + + '@img/sharp-libvips-linux-s390x@1.2.4': + resolution: {integrity: sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ==} + cpu: [s390x] + os: [linux] + + '@img/sharp-libvips-linux-x64@1.2.4': + resolution: {integrity: sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw==} + cpu: [x64] + os: [linux] + + '@img/sharp-libvips-linuxmusl-arm64@1.2.4': + resolution: {integrity: sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw==} + cpu: [arm64] + os: [linux] + + '@img/sharp-libvips-linuxmusl-x64@1.2.4': + resolution: {integrity: sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg==} + cpu: [x64] + os: [linux] + + '@img/sharp-linux-arm64@0.34.5': + resolution: {integrity: sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [linux] + + '@img/sharp-linux-arm@0.34.5': + resolution: {integrity: sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm] + os: [linux] + + '@img/sharp-linux-ppc64@0.34.5': + resolution: {integrity: sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [ppc64] + os: [linux] + + '@img/sharp-linux-riscv64@0.34.5': + resolution: {integrity: sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [riscv64] + os: [linux] + + '@img/sharp-linux-s390x@0.34.5': + resolution: {integrity: sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [s390x] + os: [linux] + + '@img/sharp-linux-x64@0.34.5': + resolution: {integrity: sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [linux] + + '@img/sharp-linuxmusl-arm64@0.34.5': + resolution: {integrity: sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [linux] + + '@img/sharp-linuxmusl-x64@0.34.5': + resolution: {integrity: sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [linux] + + '@img/sharp-wasm32@0.34.5': + resolution: {integrity: sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [wasm32] + + '@img/sharp-win32-arm64@0.34.5': + resolution: {integrity: sha512-WQ3AgWCWYSb2yt+IG8mnC6Jdk9Whs7O0gxphblsLvdhSpSTtmu69ZG1Gkb6NuvxsNACwiPV6cNSZNzt0KPsw7g==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [arm64] + os: [win32] + + '@img/sharp-win32-ia32@0.34.5': + resolution: {integrity: sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [ia32] + os: [win32] + + '@img/sharp-win32-x64@0.34.5': + resolution: {integrity: sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + cpu: [x64] + os: [win32] + + '@jridgewell/gen-mapping@0.3.13': + resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==} + + '@jridgewell/remapping@2.3.5': + resolution: {integrity: sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==} + + '@jridgewell/resolve-uri@3.1.2': + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} + + '@jridgewell/sourcemap-codec@1.5.5': + resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} + + '@jridgewell/trace-mapping@0.3.31': + resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} + + '@napi-rs/wasm-runtime@0.2.12': + resolution: {integrity: sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==} + + '@next/env@16.1.6': + resolution: {integrity: sha512-N1ySLuZjnAtN3kFnwhAwPvZah8RJxKasD7x1f8shFqhncnWZn4JMfg37diLNuoHsLAlrDfM3g4mawVdtAG8XLQ==} + + '@next/eslint-plugin-next@16.1.6': + resolution: {integrity: sha512-/Qq3PTagA6+nYVfryAtQ7/9FEr/6YVyvOtl6rZnGsbReGLf0jZU6gkpr1FuChAQpvV46a78p4cmHOVP8mbfSMQ==} + + '@next/swc-darwin-arm64@16.1.6': + resolution: {integrity: sha512-wTzYulosJr/6nFnqGW7FrG3jfUUlEf8UjGA0/pyypJl42ExdVgC6xJgcXQ+V8QFn6niSG2Pb8+MIG1mZr2vczw==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + + '@next/swc-darwin-x64@16.1.6': + resolution: {integrity: sha512-BLFPYPDO+MNJsiDWbeVzqvYd4NyuRrEYVB5k2N3JfWncuHAy2IVwMAOlVQDFjj+krkWzhY2apvmekMkfQR0CUQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + + '@next/swc-linux-arm64-gnu@16.1.6': + resolution: {integrity: sha512-OJYkCd5pj/QloBvoEcJ2XiMnlJkRv9idWA/j0ugSuA34gMT6f5b7vOiCQHVRpvStoZUknhl6/UxOXL4OwtdaBw==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@next/swc-linux-arm64-musl@16.1.6': + resolution: {integrity: sha512-S4J2v+8tT3NIO9u2q+S0G5KdvNDjXfAv06OhfOzNDaBn5rw84DGXWndOEB7d5/x852A20sW1M56vhC/tRVbccQ==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@next/swc-linux-x64-gnu@16.1.6': + resolution: {integrity: sha512-2eEBDkFlMMNQnkTyPBhQOAyn2qMxyG2eE7GPH2WIDGEpEILcBPI/jdSv4t6xupSP+ot/jkfrCShLAa7+ZUPcJQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@next/swc-linux-x64-musl@16.1.6': + resolution: {integrity: sha512-oicJwRlyOoZXVlxmIMaTq7f8pN9QNbdes0q2FXfRsPhfCi8n8JmOZJm5oo1pwDaFbnnD421rVU409M3evFbIqg==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@next/swc-win32-arm64-msvc@16.1.6': + resolution: {integrity: sha512-gQmm8izDTPgs+DCWH22kcDmuUp7NyiJgEl18bcr8irXA5N2m2O+JQIr6f3ct42GOs9c0h8QF3L5SzIxcYAAXXw==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [win32] + + '@next/swc-win32-x64-msvc@16.1.6': + resolution: {integrity: sha512-NRfO39AIrzBnixKbjuo2YiYhB6o9d8v/ymU9m/Xk8cyVk+k7XylniXkHwjs4s70wedVffc6bQNbufk5v0xEm0A==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + + '@nodelib/fs.scandir@2.1.5': + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} + engines: {node: '>= 8'} + + '@nodelib/fs.stat@2.0.5': + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} + + '@nodelib/fs.walk@1.2.8': + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} + + '@nolyfill/is-core-module@1.0.39': + resolution: {integrity: sha512-nn5ozdjYQpUCZlWGuxcJY/KpxkWQs4DcbMCmKojjyrYDEAGy4Ce19NN4v5MduafTwJlbKc99UA8YhSVqq9yPZA==} + engines: {node: '>=12.4.0'} + + '@rtsao/scc@1.1.0': + resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==} + + '@swc/helpers@0.5.15': + resolution: {integrity: sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==} + + '@tailwindcss/node@4.2.1': + resolution: {integrity: sha512-jlx6sLk4EOwO6hHe1oCGm1Q4AN/s0rSrTTPBGPM0/RQ6Uylwq17FuU8IeJJKEjtc6K6O07zsvP+gDO6MMWo7pg==} + + '@tailwindcss/oxide-android-arm64@4.2.1': + resolution: {integrity: sha512-eZ7G1Zm5EC8OOKaesIKuw77jw++QJ2lL9N+dDpdQiAB/c/B2wDh0QPFHbkBVrXnwNugvrbJFk1gK2SsVjwWReg==} + engines: {node: '>= 20'} + cpu: [arm64] + os: [android] + + '@tailwindcss/oxide-darwin-arm64@4.2.1': + resolution: {integrity: sha512-q/LHkOstoJ7pI1J0q6djesLzRvQSIfEto148ppAd+BVQK0JYjQIFSK3JgYZJa+Yzi0DDa52ZsQx2rqytBnf8Hw==} + engines: {node: '>= 20'} + cpu: [arm64] + os: [darwin] + + '@tailwindcss/oxide-darwin-x64@4.2.1': + resolution: {integrity: sha512-/f/ozlaXGY6QLbpvd/kFTro2l18f7dHKpB+ieXz+Cijl4Mt9AI2rTrpq7V+t04nK+j9XBQHnSMdeQRhbGyt6fw==} + engines: {node: '>= 20'} + cpu: [x64] + os: [darwin] + + '@tailwindcss/oxide-freebsd-x64@4.2.1': + resolution: {integrity: sha512-5e/AkgYJT/cpbkys/OU2Ei2jdETCLlifwm7ogMC7/hksI2fC3iiq6OcXwjibcIjPung0kRtR3TxEITkqgn0TcA==} + engines: {node: '>= 20'} + cpu: [x64] + os: [freebsd] + + '@tailwindcss/oxide-linux-arm-gnueabihf@4.2.1': + resolution: {integrity: sha512-Uny1EcVTTmerCKt/1ZuKTkb0x8ZaiuYucg2/kImO5A5Y/kBz41/+j0gxUZl+hTF3xkWpDmHX+TaWhOtba2Fyuw==} + engines: {node: '>= 20'} + cpu: [arm] + os: [linux] + + '@tailwindcss/oxide-linux-arm64-gnu@4.2.1': + resolution: {integrity: sha512-CTrwomI+c7n6aSSQlsPL0roRiNMDQ/YzMD9EjcR+H4f0I1SQ8QqIuPnsVp7QgMkC1Qi8rtkekLkOFjo7OlEFRQ==} + engines: {node: '>= 20'} + cpu: [arm64] + os: [linux] + + '@tailwindcss/oxide-linux-arm64-musl@4.2.1': + resolution: {integrity: sha512-WZA0CHRL/SP1TRbA5mp9htsppSEkWuQ4KsSUumYQnyl8ZdT39ntwqmz4IUHGN6p4XdSlYfJwM4rRzZLShHsGAQ==} + engines: {node: '>= 20'} + cpu: [arm64] + os: [linux] + + '@tailwindcss/oxide-linux-x64-gnu@4.2.1': + resolution: {integrity: sha512-qMFzxI2YlBOLW5PhblzuSWlWfwLHaneBE0xHzLrBgNtqN6mWfs+qYbhryGSXQjFYB1Dzf5w+LN5qbUTPhW7Y5g==} + engines: {node: '>= 20'} + cpu: [x64] + os: [linux] + + '@tailwindcss/oxide-linux-x64-musl@4.2.1': + resolution: {integrity: sha512-5r1X2FKnCMUPlXTWRYpHdPYUY6a1Ar/t7P24OuiEdEOmms5lyqjDRvVY1yy9Rmioh+AunQ0rWiOTPE8F9A3v5g==} + engines: {node: '>= 20'} + cpu: [x64] + os: [linux] + + '@tailwindcss/oxide-wasm32-wasi@4.2.1': + resolution: {integrity: sha512-MGFB5cVPvshR85MTJkEvqDUnuNoysrsRxd6vnk1Lf2tbiqNlXpHYZqkqOQalydienEWOHHFyyuTSYRsLfxFJ2Q==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] + bundledDependencies: + - '@napi-rs/wasm-runtime' + - '@emnapi/core' + - '@emnapi/runtime' + - '@tybys/wasm-util' + - '@emnapi/wasi-threads' + - tslib + + '@tailwindcss/oxide-win32-arm64-msvc@4.2.1': + resolution: {integrity: sha512-YlUEHRHBGnCMh4Nj4GnqQyBtsshUPdiNroZj8VPkvTZSoHsilRCwXcVKnG9kyi0ZFAS/3u+qKHBdDc81SADTRA==} + engines: {node: '>= 20'} + cpu: [arm64] + os: [win32] + + '@tailwindcss/oxide-win32-x64-msvc@4.2.1': + resolution: {integrity: sha512-rbO34G5sMWWyrN/idLeVxAZgAKWrn5LiR3/I90Q9MkA67s6T1oB0xtTe+0heoBvHSpbU9Mk7i6uwJnpo4u21XQ==} + engines: {node: '>= 20'} + cpu: [x64] + os: [win32] + + '@tailwindcss/oxide@4.2.1': + resolution: {integrity: sha512-yv9jeEFWnjKCI6/T3Oq50yQEOqmpmpfzG1hcZsAOaXFQPfzWprWrlHSdGPEF3WQTi8zu8ohC9Mh9J470nT5pUw==} + engines: {node: '>= 20'} + + '@tailwindcss/postcss@4.2.1': + resolution: {integrity: sha512-OEwGIBnXnj7zJeonOh6ZG9woofIjGrd2BORfvE5p9USYKDCZoQmfqLcfNiRWoJlRWLdNPn2IgVZuWAOM4iTYMw==} + + '@tybys/wasm-util@0.10.1': + resolution: {integrity: sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==} + + '@types/estree@1.0.8': + resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} + + '@types/json-schema@7.0.15': + resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} + + '@types/json5@0.0.29': + resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} + + '@types/node@20.19.37': + resolution: {integrity: sha512-8kzdPJ3FsNsVIurqBs7oodNnCEVbni9yUEkaHbgptDACOPW04jimGagZ51E6+lXUwJjgnBw+hyko/lkFWCldqw==} + + '@types/react-dom@19.2.3': + resolution: {integrity: sha512-jp2L/eY6fn+KgVVQAOqYItbF0VY/YApe5Mz2F0aykSO8gx31bYCZyvSeYxCHKvzHG5eZjc+zyaS5BrBWya2+kQ==} + peerDependencies: + '@types/react': ^19.2.0 + + '@types/react@19.2.14': + resolution: {integrity: sha512-ilcTH/UniCkMdtexkoCN0bI7pMcJDvmQFPvuPvmEaYA/NSfFTAgdUSLAoVjaRJm7+6PvcM+q1zYOwS4wTYMF9w==} + + '@typescript-eslint/eslint-plugin@8.57.0': + resolution: {integrity: sha512-qeu4rTHR3/IaFORbD16gmjq9+rEs9fGKdX0kF6BKSfi+gCuG3RCKLlSBYzn/bGsY9Tj7KE/DAQStbp8AHJGHEQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + '@typescript-eslint/parser': ^8.57.0 + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.0.0' + + '@typescript-eslint/parser@8.57.0': + resolution: {integrity: sha512-XZzOmihLIr8AD1b9hL9ccNMzEMWt/dE2u7NyTY9jJG6YNiNthaD5XtUHVF2uCXZ15ng+z2hT3MVuxnUYhq6k1g==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.0.0' + + '@typescript-eslint/project-service@8.57.0': + resolution: {integrity: sha512-pR+dK0BlxCLxtWfaKQWtYr7MhKmzqZxuii+ZjuFlZlIGRZm22HnXFqa2eY+90MUz8/i80YJmzFGDUsi8dMOV5w==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.0.0' + + '@typescript-eslint/scope-manager@8.57.0': + resolution: {integrity: sha512-nvExQqAHF01lUM66MskSaZulpPL5pgy5hI5RfrxviLgzZVffB5yYzw27uK/ft8QnKXI2X0LBrHJFr1TaZtAibw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/tsconfig-utils@8.57.0': + resolution: {integrity: sha512-LtXRihc5ytjJIQEH+xqjB0+YgsV4/tW35XKX3GTZHpWtcC8SPkT/d4tqdf1cKtesryHm2bgp6l555NYcT2NLvA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.0.0' + + '@typescript-eslint/type-utils@8.57.0': + resolution: {integrity: sha512-yjgh7gmDcJ1+TcEg8x3uWQmn8ifvSupnPfjP21twPKrDP/pTHlEQgmKcitzF/rzPSmv7QjJ90vRpN4U+zoUjwQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.0.0' + + '@typescript-eslint/types@8.57.0': + resolution: {integrity: sha512-dTLI8PEXhjUC7B9Kre+u0XznO696BhXcTlOn0/6kf1fHaQW8+VjJAVHJ3eTI14ZapTxdkOmc80HblPQLaEeJdg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/typescript-estree@8.57.0': + resolution: {integrity: sha512-m7faHcyVg0BT3VdYTlX8GdJEM7COexXxS6KqGopxdtkQRvBanK377QDHr4W/vIPAR+ah9+B/RclSW5ldVniO1Q==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <6.0.0' + + '@typescript-eslint/utils@8.57.0': + resolution: {integrity: sha512-5iIHvpD3CZe06riAsbNxxreP+MuYgVUsV0n4bwLH//VJmgtt54sQeY2GszntJ4BjYCpMzrfVh2SBnUQTtys2lQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.0.0' + + '@typescript-eslint/visitor-keys@8.57.0': + resolution: {integrity: sha512-zm6xx8UT/Xy2oSr2ZXD0pZo7Jx2XsCoID2IUh9YSTFRu7z+WdwYTRk6LhUftm1crwqbuoF6I8zAFeCMw0YjwDg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@unrs/resolver-binding-android-arm-eabi@1.11.1': + resolution: {integrity: sha512-ppLRUgHVaGRWUx0R0Ut06Mjo9gBaBkg3v/8AxusGLhsIotbBLuRk51rAzqLC8gq6NyyAojEXglNjzf6R948DNw==} + cpu: [arm] + os: [android] + + '@unrs/resolver-binding-android-arm64@1.11.1': + resolution: {integrity: sha512-lCxkVtb4wp1v+EoN+HjIG9cIIzPkX5OtM03pQYkG+U5O/wL53LC4QbIeazgiKqluGeVEeBlZahHalCaBvU1a2g==} + cpu: [arm64] + os: [android] + + '@unrs/resolver-binding-darwin-arm64@1.11.1': + resolution: {integrity: sha512-gPVA1UjRu1Y/IsB/dQEsp2V1pm44Of6+LWvbLc9SDk1c2KhhDRDBUkQCYVWe6f26uJb3fOK8saWMgtX8IrMk3g==} + cpu: [arm64] + os: [darwin] + + '@unrs/resolver-binding-darwin-x64@1.11.1': + resolution: {integrity: sha512-cFzP7rWKd3lZaCsDze07QX1SC24lO8mPty9vdP+YVa3MGdVgPmFc59317b2ioXtgCMKGiCLxJ4HQs62oz6GfRQ==} + cpu: [x64] + os: [darwin] + + '@unrs/resolver-binding-freebsd-x64@1.11.1': + resolution: {integrity: sha512-fqtGgak3zX4DCB6PFpsH5+Kmt/8CIi4Bry4rb1ho6Av2QHTREM+47y282Uqiu3ZRF5IQioJQ5qWRV6jduA+iGw==} + cpu: [x64] + os: [freebsd] + + '@unrs/resolver-binding-linux-arm-gnueabihf@1.11.1': + resolution: {integrity: sha512-u92mvlcYtp9MRKmP+ZvMmtPN34+/3lMHlyMj7wXJDeXxuM0Vgzz0+PPJNsro1m3IZPYChIkn944wW8TYgGKFHw==} + cpu: [arm] + os: [linux] + + '@unrs/resolver-binding-linux-arm-musleabihf@1.11.1': + resolution: {integrity: sha512-cINaoY2z7LVCrfHkIcmvj7osTOtm6VVT16b5oQdS4beibX2SYBwgYLmqhBjA1t51CarSaBuX5YNsWLjsqfW5Cw==} + cpu: [arm] + os: [linux] + + '@unrs/resolver-binding-linux-arm64-gnu@1.11.1': + resolution: {integrity: sha512-34gw7PjDGB9JgePJEmhEqBhWvCiiWCuXsL9hYphDF7crW7UgI05gyBAi6MF58uGcMOiOqSJ2ybEeCvHcq0BCmQ==} + cpu: [arm64] + os: [linux] + + '@unrs/resolver-binding-linux-arm64-musl@1.11.1': + resolution: {integrity: sha512-RyMIx6Uf53hhOtJDIamSbTskA99sPHS96wxVE/bJtePJJtpdKGXO1wY90oRdXuYOGOTuqjT8ACccMc4K6QmT3w==} + cpu: [arm64] + os: [linux] + + '@unrs/resolver-binding-linux-ppc64-gnu@1.11.1': + resolution: {integrity: sha512-D8Vae74A4/a+mZH0FbOkFJL9DSK2R6TFPC9M+jCWYia/q2einCubX10pecpDiTmkJVUH+y8K3BZClycD8nCShA==} + cpu: [ppc64] + os: [linux] + + '@unrs/resolver-binding-linux-riscv64-gnu@1.11.1': + resolution: {integrity: sha512-frxL4OrzOWVVsOc96+V3aqTIQl1O2TjgExV4EKgRY09AJ9leZpEg8Ak9phadbuX0BA4k8U5qtvMSQQGGmaJqcQ==} + cpu: [riscv64] + os: [linux] + + '@unrs/resolver-binding-linux-riscv64-musl@1.11.1': + resolution: {integrity: sha512-mJ5vuDaIZ+l/acv01sHoXfpnyrNKOk/3aDoEdLO/Xtn9HuZlDD6jKxHlkN8ZhWyLJsRBxfv9GYM2utQ1SChKew==} + cpu: [riscv64] + os: [linux] + + '@unrs/resolver-binding-linux-s390x-gnu@1.11.1': + resolution: {integrity: sha512-kELo8ebBVtb9sA7rMe1Cph4QHreByhaZ2QEADd9NzIQsYNQpt9UkM9iqr2lhGr5afh885d/cB5QeTXSbZHTYPg==} + cpu: [s390x] + os: [linux] + + '@unrs/resolver-binding-linux-x64-gnu@1.11.1': + resolution: {integrity: sha512-C3ZAHugKgovV5YvAMsxhq0gtXuwESUKc5MhEtjBpLoHPLYM+iuwSj3lflFwK3DPm68660rZ7G8BMcwSro7hD5w==} + cpu: [x64] + os: [linux] + + '@unrs/resolver-binding-linux-x64-musl@1.11.1': + resolution: {integrity: sha512-rV0YSoyhK2nZ4vEswT/QwqzqQXw5I6CjoaYMOX0TqBlWhojUf8P94mvI7nuJTeaCkkds3QE4+zS8Ko+GdXuZtA==} + cpu: [x64] + os: [linux] + + '@unrs/resolver-binding-wasm32-wasi@1.11.1': + resolution: {integrity: sha512-5u4RkfxJm+Ng7IWgkzi3qrFOvLvQYnPBmjmZQ8+szTK/b31fQCnleNl1GgEt7nIsZRIf5PLhPwT0WM+q45x/UQ==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] + + '@unrs/resolver-binding-win32-arm64-msvc@1.11.1': + resolution: {integrity: sha512-nRcz5Il4ln0kMhfL8S3hLkxI85BXs3o8EYoattsJNdsX4YUU89iOkVn7g0VHSRxFuVMdM4Q1jEpIId1Ihim/Uw==} + cpu: [arm64] + os: [win32] + + '@unrs/resolver-binding-win32-ia32-msvc@1.11.1': + resolution: {integrity: sha512-DCEI6t5i1NmAZp6pFonpD5m7i6aFrpofcp4LA2i8IIq60Jyo28hamKBxNrZcyOwVOZkgsRp9O2sXWBWP8MnvIQ==} + cpu: [ia32] + os: [win32] + + '@unrs/resolver-binding-win32-x64-msvc@1.11.1': + resolution: {integrity: sha512-lrW200hZdbfRtztbygyaq/6jP6AKE8qQN2KvPcJ+x7wiD038YtnYtZ82IMNJ69GJibV7bwL3y9FgK+5w/pYt6g==} + cpu: [x64] + os: [win32] + + acorn-jsx@5.3.2: + resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + + acorn@8.16.0: + resolution: {integrity: sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==} + engines: {node: '>=0.4.0'} + hasBin: true + + ajv@6.14.0: + resolution: {integrity: sha512-IWrosm/yrn43eiKqkfkHis7QioDleaXQHdDVPKg0FSwwd/DuvyX79TZnFOnYpB7dcsFAMmtFztZuXPDvSePkFw==} + + animate.css@4.1.1: + resolution: {integrity: sha512-+mRmCTv6SbCmtYJCN4faJMNFVNN5EuCTTprDTAo7YzIGji2KADmakjVA3+8mVDkZ2Bf09vayB35lSQIex2+QaQ==} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + argparse@2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + + aria-query@5.3.2: + resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==} + engines: {node: '>= 0.4'} + + array-buffer-byte-length@1.0.2: + resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==} + engines: {node: '>= 0.4'} + + array-includes@3.1.9: + resolution: {integrity: sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==} + engines: {node: '>= 0.4'} + + array.prototype.findlast@1.2.5: + resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==} + engines: {node: '>= 0.4'} + + array.prototype.findlastindex@1.2.6: + resolution: {integrity: sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==} + engines: {node: '>= 0.4'} + + array.prototype.flat@1.3.3: + resolution: {integrity: sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==} + engines: {node: '>= 0.4'} + + array.prototype.flatmap@1.3.3: + resolution: {integrity: sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==} + engines: {node: '>= 0.4'} + + array.prototype.tosorted@1.1.4: + resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==} + engines: {node: '>= 0.4'} + + arraybuffer.prototype.slice@1.0.4: + resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==} + engines: {node: '>= 0.4'} + + ast-types-flow@0.0.8: + resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==} + + async-function@1.0.0: + resolution: {integrity: sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==} + engines: {node: '>= 0.4'} + + available-typed-arrays@1.0.7: + resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} + engines: {node: '>= 0.4'} + + axe-core@4.11.1: + resolution: {integrity: sha512-BASOg+YwO2C+346x3LZOeoovTIoTrRqEsqMa6fmfAV0P+U9mFr9NsyOEpiYvFjbc64NMrSswhV50WdXzdb/Z5A==} + engines: {node: '>=4'} + + axobject-query@4.1.0: + resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} + engines: {node: '>= 0.4'} + + balanced-match@1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + + balanced-match@4.0.4: + resolution: {integrity: sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==} + engines: {node: 18 || 20 || >=22} + + baseline-browser-mapping@2.10.0: + resolution: {integrity: sha512-lIyg0szRfYbiy67j9KN8IyeD7q7hcmqnJ1ddWmNt19ItGpNN64mnllmxUNFIOdOm6by97jlL6wfpTTJrmnjWAA==} + engines: {node: '>=6.0.0'} + hasBin: true + + brace-expansion@1.1.12: + resolution: {integrity: sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==} + + brace-expansion@5.0.4: + resolution: {integrity: sha512-h+DEnpVvxmfVefa4jFbCf5HdH5YMDXRsmKflpf1pILZWRFlTbJpxeU55nJl4Smt5HQaGzg1o6RHFPJaOqnmBDg==} + engines: {node: 18 || 20 || >=22} + + braces@3.0.3: + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} + engines: {node: '>=8'} + + browserslist@4.28.1: + resolution: {integrity: sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + + call-bind-apply-helpers@1.0.2: + resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} + engines: {node: '>= 0.4'} + + call-bind@1.0.8: + resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==} + engines: {node: '>= 0.4'} + + call-bound@1.0.4: + resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==} + engines: {node: '>= 0.4'} + + callsites@3.1.0: + resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} + engines: {node: '>=6'} + + caniuse-lite@1.0.30001777: + resolution: {integrity: sha512-tmN+fJxroPndC74efCdp12j+0rk0RHwV5Jwa1zWaFVyw2ZxAuPeG8ZgWC3Wz7uSjT3qMRQ5XHZ4COgQmsCMJAQ==} + + chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + + client-only@0.0.1: + resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + concat-map@0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + + convert-source-map@2.0.0: + resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} + + cross-spawn@7.0.6: + resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} + engines: {node: '>= 8'} + + csstype@3.2.3: + resolution: {integrity: sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==} + + damerau-levenshtein@1.0.8: + resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==} + + data-view-buffer@1.0.2: + resolution: {integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==} + engines: {node: '>= 0.4'} + + data-view-byte-length@1.0.2: + resolution: {integrity: sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==} + engines: {node: '>= 0.4'} + + data-view-byte-offset@1.0.1: + resolution: {integrity: sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==} + engines: {node: '>= 0.4'} + + debug@3.2.7: + resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + debug@4.4.3: + resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + deep-is@0.1.4: + resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + + define-data-property@1.1.4: + resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} + engines: {node: '>= 0.4'} + + define-properties@1.2.1: + resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} + engines: {node: '>= 0.4'} + + detect-libc@2.1.2: + resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==} + engines: {node: '>=8'} + + doctrine@2.1.0: + resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} + engines: {node: '>=0.10.0'} + + dunder-proto@1.0.1: + resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} + engines: {node: '>= 0.4'} + + electron-to-chromium@1.5.307: + resolution: {integrity: sha512-5z3uFKBWjiNR44nFcYdkcXjKMbg5KXNdciu7mhTPo9tB7NbqSNP2sSnGR+fqknZSCwKkBN+oxiiajWs4dT6ORg==} + + emoji-regex@9.2.2: + resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + + enhanced-resolve@5.20.0: + resolution: {integrity: sha512-/ce7+jQ1PQ6rVXwe+jKEg5hW5ciicHwIQUagZkp6IufBoY3YDgdTTY1azVs0qoRgVmvsNB+rbjLJxDAeHHtwsQ==} + engines: {node: '>=10.13.0'} + + es-abstract@1.24.1: + resolution: {integrity: sha512-zHXBLhP+QehSSbsS9Pt23Gg964240DPd6QCf8WpkqEXxQ7fhdZzYsocOr5u7apWonsS5EjZDmTF+/slGMyasvw==} + engines: {node: '>= 0.4'} + + es-define-property@1.0.1: + resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} + engines: {node: '>= 0.4'} + + es-errors@1.3.0: + resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} + engines: {node: '>= 0.4'} + + es-iterator-helpers@1.2.2: + resolution: {integrity: sha512-BrUQ0cPTB/IwXj23HtwHjS9n7O4h9FX94b4xc5zlTHxeLgTAdzYUDyy6KdExAl9lbN5rtfe44xpjpmj9grxs5w==} + engines: {node: '>= 0.4'} + + es-object-atoms@1.1.1: + resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} + engines: {node: '>= 0.4'} + + es-set-tostringtag@2.1.0: + resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} + engines: {node: '>= 0.4'} + + es-shim-unscopables@1.1.0: + resolution: {integrity: sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==} + engines: {node: '>= 0.4'} + + es-to-primitive@1.3.0: + resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==} + engines: {node: '>= 0.4'} + + escalade@3.2.0: + resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} + engines: {node: '>=6'} + + escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + + eslint-config-next@16.1.6: + resolution: {integrity: sha512-vKq40io2B0XtkkNDYyleATwblNt8xuh3FWp8SpSz3pt7P01OkBFlKsJZ2mWt5WsCySlDQLckb1zMY9yE9Qy0LA==} + peerDependencies: + eslint: '>=9.0.0' + typescript: '>=3.3.1' + peerDependenciesMeta: + typescript: + optional: true + + eslint-import-resolver-node@0.3.9: + resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} + + eslint-import-resolver-typescript@3.10.1: + resolution: {integrity: sha512-A1rHYb06zjMGAxdLSkN2fXPBwuSaQ0iO5M/hdyS0Ajj1VBaRp0sPD3dn1FhME3c/JluGFbwSxyCfqdSbtQLAHQ==} + engines: {node: ^14.18.0 || >=16.0.0} + peerDependencies: + eslint: '*' + eslint-plugin-import: '*' + eslint-plugin-import-x: '*' + peerDependenciesMeta: + eslint-plugin-import: + optional: true + eslint-plugin-import-x: + optional: true + + eslint-module-utils@2.12.1: + resolution: {integrity: sha512-L8jSWTze7K2mTg0vos/RuLRS5soomksDPoJLXIslC7c8Wmut3bx7CPpJijDcBZtxQ5lrbUdM+s0OlNbz0DCDNw==} + engines: {node: '>=4'} + peerDependencies: + '@typescript-eslint/parser': '*' + eslint: '*' + eslint-import-resolver-node: '*' + eslint-import-resolver-typescript: '*' + eslint-import-resolver-webpack: '*' + peerDependenciesMeta: + '@typescript-eslint/parser': + optional: true + eslint: + optional: true + eslint-import-resolver-node: + optional: true + eslint-import-resolver-typescript: + optional: true + eslint-import-resolver-webpack: + optional: true + + eslint-plugin-import@2.32.0: + resolution: {integrity: sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==} + engines: {node: '>=4'} + peerDependencies: + '@typescript-eslint/parser': '*' + eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9 + peerDependenciesMeta: + '@typescript-eslint/parser': + optional: true + + eslint-plugin-jsx-a11y@6.10.2: + resolution: {integrity: sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==} + engines: {node: '>=4.0'} + peerDependencies: + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9 + + eslint-plugin-react-hooks@7.0.1: + resolution: {integrity: sha512-O0d0m04evaNzEPoSW+59Mezf8Qt0InfgGIBJnpC0h3NH/WjUAR7BIKUfysC6todmtiZ/A0oUVS8Gce0WhBrHsA==} + engines: {node: '>=18'} + peerDependencies: + eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0 + + eslint-plugin-react@7.37.5: + resolution: {integrity: sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==} + engines: {node: '>=4'} + peerDependencies: + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 + + eslint-scope@8.4.0: + resolution: {integrity: sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + eslint-visitor-keys@3.4.3: + resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + + eslint-visitor-keys@4.2.1: + resolution: {integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + eslint-visitor-keys@5.0.1: + resolution: {integrity: sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24} + + eslint@9.39.4: + resolution: {integrity: sha512-XoMjdBOwe/esVgEvLmNsD3IRHkm7fbKIUGvrleloJXUZgDHig2IPWNniv+GwjyJXzuNqVjlr5+4yVUZjycJwfQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + hasBin: true + peerDependencies: + jiti: '*' + peerDependenciesMeta: + jiti: + optional: true + + espree@10.4.0: + resolution: {integrity: sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + esquery@1.7.0: + resolution: {integrity: sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==} + engines: {node: '>=0.10'} + + esrecurse@4.3.0: + resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} + engines: {node: '>=4.0'} + + estraverse@5.3.0: + resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} + engines: {node: '>=4.0'} + + esutils@2.0.3: + resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} + engines: {node: '>=0.10.0'} + + fast-deep-equal@3.1.3: + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + + fast-glob@3.3.1: + resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==} + engines: {node: '>=8.6.0'} + + fast-json-stable-stringify@2.1.0: + resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} + + fast-levenshtein@2.0.6: + resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + + fastq@1.20.1: + resolution: {integrity: sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==} + + fdir@6.5.0: + resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} + engines: {node: '>=12.0.0'} + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true + + file-entry-cache@8.0.0: + resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} + engines: {node: '>=16.0.0'} + + fill-range@7.1.1: + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} + engines: {node: '>=8'} + + find-up@5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} + + flat-cache@4.0.1: + resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} + engines: {node: '>=16'} + + flatted@3.4.1: + resolution: {integrity: sha512-IxfVbRFVlV8V/yRaGzk0UVIcsKKHMSfYw66T/u4nTwlWteQePsxe//LjudR1AMX4tZW3WFCh3Zqa/sjlqpbURQ==} + + for-each@0.3.5: + resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==} + engines: {node: '>= 0.4'} + + function-bind@1.1.2: + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} + + function.prototype.name@1.1.8: + resolution: {integrity: sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==} + engines: {node: '>= 0.4'} + + functions-have-names@1.2.3: + resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} + + generator-function@2.0.1: + resolution: {integrity: sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==} + engines: {node: '>= 0.4'} + + gensync@1.0.0-beta.2: + resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} + engines: {node: '>=6.9.0'} + + get-intrinsic@1.3.0: + resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==} + engines: {node: '>= 0.4'} + + get-proto@1.0.1: + resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} + engines: {node: '>= 0.4'} + + get-symbol-description@1.1.0: + resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==} + engines: {node: '>= 0.4'} + + get-tsconfig@4.13.6: + resolution: {integrity: sha512-shZT/QMiSHc/YBLxxOkMtgSid5HFoauqCE3/exfsEcwg1WkeqjG+V40yBbBrsD+jW2HDXcs28xOfcbm2jI8Ddw==} + + github-markdown-css@5.9.0: + resolution: {integrity: sha512-tmT5sY+zvg2302XLYEfH2mtkViIM1SWf2nvYoF5N1ZsO0V6B2qZTiw3GOzw4vpjLygK/KG35qRlPFweHqfzz5w==} + engines: {node: '>=10'} + + glob-parent@5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} + + glob-parent@6.0.2: + resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} + engines: {node: '>=10.13.0'} + + globals@14.0.0: + resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} + engines: {node: '>=18'} + + globals@16.4.0: + resolution: {integrity: sha512-ob/2LcVVaVGCYN+r14cnwnoDPUufjiYgSqRhiFD0Q1iI4Odora5RE8Iv1D24hAz5oMophRGkGz+yuvQmmUMnMw==} + engines: {node: '>=18'} + + globalthis@1.0.4: + resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==} + engines: {node: '>= 0.4'} + + gopd@1.2.0: + resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} + engines: {node: '>= 0.4'} + + graceful-fs@4.2.11: + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + + has-bigints@1.1.0: + resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==} + engines: {node: '>= 0.4'} + + has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + + has-property-descriptors@1.0.2: + resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} + + has-proto@1.2.0: + resolution: {integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==} + engines: {node: '>= 0.4'} + + has-symbols@1.1.0: + resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} + engines: {node: '>= 0.4'} + + has-tostringtag@1.0.2: + resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} + engines: {node: '>= 0.4'} + + hasown@2.0.2: + resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} + engines: {node: '>= 0.4'} + + hermes-estree@0.25.1: + resolution: {integrity: sha512-0wUoCcLp+5Ev5pDW2OriHC2MJCbwLwuRx+gAqMTOkGKJJiBCLjtrvy4PWUGn6MIVefecRpzoOZ/UV6iGdOr+Cw==} + + hermes-parser@0.25.1: + resolution: {integrity: sha512-6pEjquH3rqaI6cYAXYPcz9MS4rY6R4ngRgrgfDshRptUZIc3lw0MCIJIGDj9++mfySOuPTHB4nrSW99BCvOPIA==} + + ignore@5.3.2: + resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} + engines: {node: '>= 4'} + + ignore@7.0.5: + resolution: {integrity: sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==} + engines: {node: '>= 4'} + + import-fresh@3.3.1: + resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} + engines: {node: '>=6'} + + imurmurhash@0.1.4: + resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} + engines: {node: '>=0.8.19'} + + internal-slot@1.1.0: + resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==} + engines: {node: '>= 0.4'} + + is-array-buffer@3.0.5: + resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==} + engines: {node: '>= 0.4'} + + is-async-function@2.1.1: + resolution: {integrity: sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==} + engines: {node: '>= 0.4'} + + is-bigint@1.1.0: + resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==} + engines: {node: '>= 0.4'} + + is-boolean-object@1.2.2: + resolution: {integrity: sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==} + engines: {node: '>= 0.4'} + + is-bun-module@2.0.0: + resolution: {integrity: sha512-gNCGbnnnnFAUGKeZ9PdbyeGYJqewpmc2aKHUEMO5nQPWU9lOmv7jcmQIv+qHD8fXW6W7qfuCwX4rY9LNRjXrkQ==} + + is-callable@1.2.7: + resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} + engines: {node: '>= 0.4'} + + is-core-module@2.16.1: + resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==} + engines: {node: '>= 0.4'} + + is-data-view@1.0.2: + resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==} + engines: {node: '>= 0.4'} + + is-date-object@1.1.0: + resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==} + engines: {node: '>= 0.4'} + + is-extglob@2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} + + is-finalizationregistry@1.1.1: + resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==} + engines: {node: '>= 0.4'} + + is-generator-function@1.1.2: + resolution: {integrity: sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==} + engines: {node: '>= 0.4'} + + is-glob@4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} + + is-map@2.0.3: + resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} + engines: {node: '>= 0.4'} + + is-negative-zero@2.0.3: + resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==} + engines: {node: '>= 0.4'} + + is-number-object@1.1.1: + resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==} + engines: {node: '>= 0.4'} + + is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + + is-regex@1.2.1: + resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} + engines: {node: '>= 0.4'} + + is-set@2.0.3: + resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} + engines: {node: '>= 0.4'} + + is-shared-array-buffer@1.0.4: + resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==} + engines: {node: '>= 0.4'} + + is-string@1.1.1: + resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==} + engines: {node: '>= 0.4'} + + is-symbol@1.1.1: + resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==} + engines: {node: '>= 0.4'} + + is-typed-array@1.1.15: + resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==} + engines: {node: '>= 0.4'} + + is-weakmap@2.0.2: + resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} + engines: {node: '>= 0.4'} + + is-weakref@1.1.1: + resolution: {integrity: sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==} + engines: {node: '>= 0.4'} + + is-weakset@2.0.4: + resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==} + engines: {node: '>= 0.4'} + + isarray@2.0.5: + resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} + + isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + + iterator.prototype@1.1.5: + resolution: {integrity: sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==} + engines: {node: '>= 0.4'} + + jiti@2.6.1: + resolution: {integrity: sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==} + hasBin: true + + js-tokens@4.0.0: + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + + js-yaml@4.1.1: + resolution: {integrity: sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==} + hasBin: true + + jsesc@3.1.0: + resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} + engines: {node: '>=6'} + hasBin: true + + json-buffer@3.0.1: + resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} + + json-schema-traverse@0.4.1: + resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + + json-stable-stringify-without-jsonify@1.0.1: + resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} + + json5@1.0.2: + resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} + hasBin: true + + json5@2.2.3: + resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} + engines: {node: '>=6'} + hasBin: true + + jsx-ast-utils@3.3.5: + resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} + engines: {node: '>=4.0'} + + keyv@4.5.4: + resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + + language-subtag-registry@0.3.23: + resolution: {integrity: sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==} + + language-tags@1.0.9: + resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==} + engines: {node: '>=0.10'} + + levn@0.4.1: + resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} + engines: {node: '>= 0.8.0'} + + lightningcss-android-arm64@1.31.1: + resolution: {integrity: sha512-HXJF3x8w9nQ4jbXRiNppBCqeZPIAfUo8zE/kOEGbW5NZvGc/K7nMxbhIr+YlFlHW5mpbg/YFPdbnCh1wAXCKFg==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [android] + + lightningcss-darwin-arm64@1.31.1: + resolution: {integrity: sha512-02uTEqf3vIfNMq3h/z2cJfcOXnQ0GRwQrkmPafhueLb2h7mqEidiCzkE4gBMEH65abHRiQvhdcQ+aP0D0g67sg==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [darwin] + + lightningcss-darwin-x64@1.31.1: + resolution: {integrity: sha512-1ObhyoCY+tGxtsz1lSx5NXCj3nirk0Y0kB/g8B8DT+sSx4G9djitg9ejFnjb3gJNWo7qXH4DIy2SUHvpoFwfTA==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [darwin] + + lightningcss-freebsd-x64@1.31.1: + resolution: {integrity: sha512-1RINmQKAItO6ISxYgPwszQE1BrsVU5aB45ho6O42mu96UiZBxEXsuQ7cJW4zs4CEodPUioj/QrXW1r9pLUM74A==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [freebsd] + + lightningcss-linux-arm-gnueabihf@1.31.1: + resolution: {integrity: sha512-OOCm2//MZJ87CdDK62rZIu+aw9gBv4azMJuA8/KB74wmfS3lnC4yoPHm0uXZ/dvNNHmnZnB8XLAZzObeG0nS1g==} + engines: {node: '>= 12.0.0'} + cpu: [arm] + os: [linux] + + lightningcss-linux-arm64-gnu@1.31.1: + resolution: {integrity: sha512-WKyLWztD71rTnou4xAD5kQT+982wvca7E6QoLpoawZ1gP9JM0GJj4Tp5jMUh9B3AitHbRZ2/H3W5xQmdEOUlLg==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [linux] + + lightningcss-linux-arm64-musl@1.31.1: + resolution: {integrity: sha512-mVZ7Pg2zIbe3XlNbZJdjs86YViQFoJSpc41CbVmKBPiGmC4YrfeOyz65ms2qpAobVd7WQsbW4PdsSJEMymyIMg==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [linux] + + lightningcss-linux-x64-gnu@1.31.1: + resolution: {integrity: sha512-xGlFWRMl+0KvUhgySdIaReQdB4FNudfUTARn7q0hh/V67PVGCs3ADFjw+6++kG1RNd0zdGRlEKa+T13/tQjPMA==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + + lightningcss-linux-x64-musl@1.31.1: + resolution: {integrity: sha512-eowF8PrKHw9LpoZii5tdZwnBcYDxRw2rRCyvAXLi34iyeYfqCQNA9rmUM0ce62NlPhCvof1+9ivRaTY6pSKDaA==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [linux] + + lightningcss-win32-arm64-msvc@1.31.1: + resolution: {integrity: sha512-aJReEbSEQzx1uBlQizAOBSjcmr9dCdL3XuC/6HLXAxmtErsj2ICo5yYggg1qOODQMtnjNQv2UHb9NpOuFtYe4w==} + engines: {node: '>= 12.0.0'} + cpu: [arm64] + os: [win32] + + lightningcss-win32-x64-msvc@1.31.1: + resolution: {integrity: sha512-I9aiFrbd7oYHwlnQDqr1Roz+fTz61oDDJX7n9tYF9FJymH1cIN1DtKw3iYt6b8WZgEjoNwVSncwF4wx/ZedMhw==} + engines: {node: '>= 12.0.0'} + cpu: [x64] + os: [win32] + + lightningcss@1.31.1: + resolution: {integrity: sha512-l51N2r93WmGUye3WuFoN5k10zyvrVs0qfKBhyC5ogUQ6Ew6JUSswh78mbSO+IU3nTWsyOArqPCcShdQSadghBQ==} + engines: {node: '>= 12.0.0'} + + locate-path@6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} + + lodash.merge@4.6.2: + resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + + loose-envify@1.4.0: + resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} + hasBin: true + + lru-cache@5.1.1: + resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} + + magic-string@0.30.21: + resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} + + marked@17.0.4: + resolution: {integrity: sha512-NOmVMM+KAokHMvjWmC5N/ZOvgmSWuqJB8FoYI019j4ogb/PeRMKoKIjReZ2w3376kkA8dSJIP8uD993Kxc0iRQ==} + engines: {node: '>= 20'} + hasBin: true + + math-intrinsics@1.1.0: + resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} + engines: {node: '>= 0.4'} + + merge2@1.4.1: + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} + + micromatch@4.0.8: + resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} + engines: {node: '>=8.6'} + + minimatch@10.2.4: + resolution: {integrity: sha512-oRjTw/97aTBN0RHbYCdtF1MQfvusSIBQM0IZEgzl6426+8jSC0nF1a/GmnVLpfB9yyr6g6FTqWqiZVbxrtaCIg==} + engines: {node: 18 || 20 || >=22} + + minimatch@3.1.5: + resolution: {integrity: sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==} + + minimist@1.2.8: + resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} + + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + + nanoid@3.3.11: + resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + + napi-postinstall@0.3.4: + resolution: {integrity: sha512-PHI5f1O0EP5xJ9gQmFGMS6IZcrVvTjpXjz7Na41gTE7eE2hK11lg04CECCYEEjdc17EV4DO+fkGEtt7TpTaTiQ==} + engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} + hasBin: true + + natural-compare@1.4.0: + resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} + + next@16.1.6: + resolution: {integrity: sha512-hkyRkcu5x/41KoqnROkfTm2pZVbKxvbZRuNvKXLRXxs3VfyO0WhY50TQS40EuKO9SW3rBj/sF3WbVwDACeMZyw==} + engines: {node: '>=20.9.0'} + hasBin: true + peerDependencies: + '@opentelemetry/api': ^1.1.0 + '@playwright/test': ^1.51.1 + babel-plugin-react-compiler: '*' + react: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0 + react-dom: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0 + sass: ^1.3.0 + peerDependenciesMeta: + '@opentelemetry/api': + optional: true + '@playwright/test': + optional: true + babel-plugin-react-compiler: + optional: true + sass: + optional: true + + node-exports-info@1.6.0: + resolution: {integrity: sha512-pyFS63ptit/P5WqUkt+UUfe+4oevH+bFeIiPPdfb0pFeYEu/1ELnJu5l+5EcTKYL5M7zaAa7S8ddywgXypqKCw==} + engines: {node: '>= 0.4'} + + node-releases@2.0.36: + resolution: {integrity: sha512-TdC8FSgHz8Mwtw9g5L4gR/Sh9XhSP/0DEkQxfEFXOpiul5IiHgHan2VhYYb6agDSfp4KuvltmGApc8HMgUrIkA==} + + object-assign@4.1.1: + resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} + engines: {node: '>=0.10.0'} + + object-inspect@1.13.4: + resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==} + engines: {node: '>= 0.4'} + + object-keys@1.1.1: + resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} + engines: {node: '>= 0.4'} + + object.assign@4.1.7: + resolution: {integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==} + engines: {node: '>= 0.4'} + + object.entries@1.1.9: + resolution: {integrity: sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==} + engines: {node: '>= 0.4'} + + object.fromentries@2.0.8: + resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==} + engines: {node: '>= 0.4'} + + object.groupby@1.0.3: + resolution: {integrity: sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==} + engines: {node: '>= 0.4'} + + object.values@1.2.1: + resolution: {integrity: sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==} + engines: {node: '>= 0.4'} + + optionator@0.9.4: + resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} + engines: {node: '>= 0.8.0'} + + own-keys@1.0.1: + resolution: {integrity: sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==} + engines: {node: '>= 0.4'} + + p-limit@3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} + + p-locate@5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} + + parent-module@1.0.1: + resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} + engines: {node: '>=6'} + + path-exists@4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + + path-key@3.1.1: + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} + + path-parse@1.0.7: + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + + picocolors@1.1.1: + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} + + picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + + picomatch@4.0.3: + resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==} + engines: {node: '>=12'} + + pocketbase@0.26.8: + resolution: {integrity: sha512-aQ/ewvS7ncvAE8wxoW10iAZu6ElgbeFpBhKPnCfvRovNzm2gW8u/sQNPGN6vNgVEagz44kK//C61oKjfa+7Low==} + + possible-typed-array-names@1.1.0: + resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==} + engines: {node: '>= 0.4'} + + postcss@8.4.31: + resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} + engines: {node: ^10 || ^12 || >=14} + + postcss@8.5.8: + resolution: {integrity: sha512-OW/rX8O/jXnm82Ey1k44pObPtdblfiuWnrd8X7GJ7emImCOstunGbXUpp7HdBrFQX6rJzn3sPT397Wp5aCwCHg==} + engines: {node: ^10 || ^12 || >=14} + + prelude-ls@1.2.1: + resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} + engines: {node: '>= 0.8.0'} + + prop-types@15.8.1: + resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} + + punycode@2.3.1: + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} + engines: {node: '>=6'} + + queue-microtask@1.2.3: + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + + react-dom@19.2.3: + resolution: {integrity: sha512-yELu4WmLPw5Mr/lmeEpox5rw3RETacE++JgHqQzd2dg+YbJuat3jH4ingc+WPZhxaoFzdv9y33G+F7Nl5O0GBg==} + peerDependencies: + react: ^19.2.3 + + react-is@16.13.1: + resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} + + react@19.2.3: + resolution: {integrity: sha512-Ku/hhYbVjOQnXDZFv2+RibmLFGwFdeeKHFcOTlrt7xplBnya5OGn/hIRDsqDiSUcfORsDC7MPxwork8jBwsIWA==} + engines: {node: '>=0.10.0'} + + reflect.getprototypeof@1.0.10: + resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==} + engines: {node: '>= 0.4'} + + regexp.prototype.flags@1.5.4: + resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==} + engines: {node: '>= 0.4'} + + resolve-from@4.0.0: + resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} + engines: {node: '>=4'} + + resolve-pkg-maps@1.0.0: + resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} + + resolve@1.22.11: + resolution: {integrity: sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==} + engines: {node: '>= 0.4'} + hasBin: true + + resolve@2.0.0-next.6: + resolution: {integrity: sha512-3JmVl5hMGtJ3kMmB3zi3DL25KfkCEyy3Tw7Gmw7z5w8M9WlwoPFnIvwChzu1+cF3iaK3sp18hhPz8ANeimdJfA==} + engines: {node: '>= 0.4'} + hasBin: true + + reusify@1.1.0: + resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + + run-parallel@1.2.0: + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + + safe-array-concat@1.1.3: + resolution: {integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==} + engines: {node: '>=0.4'} + + safe-push-apply@1.0.0: + resolution: {integrity: sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==} + engines: {node: '>= 0.4'} + + safe-regex-test@1.1.0: + resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==} + engines: {node: '>= 0.4'} + + scheduler@0.27.0: + resolution: {integrity: sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==} + + semver@6.3.1: + resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} + hasBin: true + + semver@7.7.4: + resolution: {integrity: sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==} + engines: {node: '>=10'} + hasBin: true + + set-function-length@1.2.2: + resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} + engines: {node: '>= 0.4'} + + set-function-name@2.0.2: + resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} + engines: {node: '>= 0.4'} + + set-proto@1.0.0: + resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==} + engines: {node: '>= 0.4'} + + sharp@0.34.5: + resolution: {integrity: sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg==} + engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} + + shebang-command@2.0.0: + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} + + shebang-regex@3.0.0: + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} + + side-channel-list@1.0.0: + resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} + engines: {node: '>= 0.4'} + + side-channel-map@1.0.1: + resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} + engines: {node: '>= 0.4'} + + side-channel-weakmap@1.0.2: + resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} + engines: {node: '>= 0.4'} + + side-channel@1.1.0: + resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} + engines: {node: '>= 0.4'} + + source-map-js@1.2.1: + resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} + engines: {node: '>=0.10.0'} + + stable-hash@0.0.5: + resolution: {integrity: sha512-+L3ccpzibovGXFK+Ap/f8LOS0ahMrHTf3xu7mMLSpEGU0EO9ucaysSylKo9eRDFNhWve/y275iPmIZ4z39a9iA==} + + stop-iteration-iterator@1.1.0: + resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==} + engines: {node: '>= 0.4'} + + string.prototype.includes@2.0.1: + resolution: {integrity: sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==} + engines: {node: '>= 0.4'} + + string.prototype.matchall@4.0.12: + resolution: {integrity: sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==} + engines: {node: '>= 0.4'} + + string.prototype.repeat@1.0.0: + resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==} + + string.prototype.trim@1.2.10: + resolution: {integrity: sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==} + engines: {node: '>= 0.4'} + + string.prototype.trimend@1.0.9: + resolution: {integrity: sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==} + engines: {node: '>= 0.4'} + + string.prototype.trimstart@1.0.8: + resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} + engines: {node: '>= 0.4'} + + strip-bom@3.0.0: + resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} + engines: {node: '>=4'} + + strip-json-comments@3.1.1: + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} + engines: {node: '>=8'} + + styled-jsx@5.1.6: + resolution: {integrity: sha512-qSVyDTeMotdvQYoHWLNGwRFJHC+i+ZvdBRYosOFgC+Wg1vx4frN2/RG/NA7SYqqvKNLf39P2LSRA2pu6n0XYZA==} + engines: {node: '>= 12.0.0'} + peerDependencies: + '@babel/core': '*' + babel-plugin-macros: '*' + react: '>= 16.8.0 || 17.x.x || ^18.0.0-0 || ^19.0.0-0' + peerDependenciesMeta: + '@babel/core': + optional: true + babel-plugin-macros: + optional: true + + supports-color@7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} + + supports-preserve-symlinks-flag@1.0.0: + resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} + engines: {node: '>= 0.4'} + + tailwindcss@4.2.1: + resolution: {integrity: sha512-/tBrSQ36vCleJkAOsy9kbNTgaxvGbyOamC30PRePTQe/o1MFwEKHQk4Cn7BNGaPtjp+PuUrByJehM1hgxfq4sw==} + + tapable@2.3.0: + resolution: {integrity: sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==} + engines: {node: '>=6'} + + tinyglobby@0.2.15: + resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} + engines: {node: '>=12.0.0'} + + to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + + ts-api-utils@2.4.0: + resolution: {integrity: sha512-3TaVTaAv2gTiMB35i3FiGJaRfwb3Pyn/j3m/bfAvGe8FB7CF6u+LMYqYlDh7reQf7UNvoTvdfAqHGmPGOSsPmA==} + engines: {node: '>=18.12'} + peerDependencies: + typescript: '>=4.8.4' + + tsconfig-paths@3.15.0: + resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} + + tslib@2.8.1: + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} + + type-check@0.4.0: + resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} + engines: {node: '>= 0.8.0'} + + typed-array-buffer@1.0.3: + resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==} + engines: {node: '>= 0.4'} + + typed-array-byte-length@1.0.3: + resolution: {integrity: sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==} + engines: {node: '>= 0.4'} + + typed-array-byte-offset@1.0.4: + resolution: {integrity: sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==} + engines: {node: '>= 0.4'} + + typed-array-length@1.0.7: + resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==} + engines: {node: '>= 0.4'} + + typescript-eslint@8.57.0: + resolution: {integrity: sha512-W8GcigEMEeB07xEZol8oJ26rigm3+bfPHxHvwbYUlu1fUDsGuQ7Hiskx5xGW/xM4USc9Ephe3jtv7ZYPQntHeA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 + typescript: '>=4.8.4 <6.0.0' + + typescript@5.9.3: + resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} + engines: {node: '>=14.17'} + hasBin: true + + unbox-primitive@1.1.0: + resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} + engines: {node: '>= 0.4'} + + undici-types@6.21.0: + resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} + + unrs-resolver@1.11.1: + resolution: {integrity: sha512-bSjt9pjaEBnNiGgc9rUiHGKv5l4/TGzDmYw3RhnkJGtLhbnnA/5qJj7x3dNDCRx/PJxu774LlH8lCOlB4hEfKg==} + + update-browserslist-db@1.2.3: + resolution: {integrity: sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==} + hasBin: true + peerDependencies: + browserslist: '>= 4.21.0' + + uri-js@4.4.1: + resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} + + which-boxed-primitive@1.1.1: + resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==} + engines: {node: '>= 0.4'} + + which-builtin-type@1.2.1: + resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==} + engines: {node: '>= 0.4'} + + which-collection@1.0.2: + resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} + engines: {node: '>= 0.4'} + + which-typed-array@1.1.20: + resolution: {integrity: sha512-LYfpUkmqwl0h9A2HL09Mms427Q1RZWuOHsukfVcKRq9q95iQxdw0ix1JQrqbcDR9PH1QDwf5Qo8OZb5lksZ8Xg==} + engines: {node: '>= 0.4'} + + which@2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true + + word-wrap@1.2.5: + resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} + engines: {node: '>=0.10.0'} + + yallist@3.1.1: + resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} + + yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + + zod-validation-error@4.0.2: + resolution: {integrity: sha512-Q6/nZLe6jxuU80qb/4uJ4t5v2VEZ44lzQjPDhYJNztRQ4wyWc6VF3D3Kb/fAuPetZQnhS3hnajCf9CsWesghLQ==} + engines: {node: '>=18.0.0'} + peerDependencies: + zod: ^3.25.0 || ^4.0.0 + + zod@4.3.6: + resolution: {integrity: sha512-rftlrkhHZOcjDwkGlnUtZZkvaPHCsDATp4pGpuOOMDaTdDDXF91wuVDJoWoPsKX/3YPQ5fHuF3STjcYyKr+Qhg==} + +snapshots: + + '@alloc/quick-lru@5.2.0': {} + + '@babel/code-frame@7.29.0': + dependencies: + '@babel/helper-validator-identifier': 7.28.5 + js-tokens: 4.0.0 + picocolors: 1.1.1 + + '@babel/compat-data@7.29.0': {} + + '@babel/core@7.29.0': + dependencies: + '@babel/code-frame': 7.29.0 + '@babel/generator': 7.29.1 + '@babel/helper-compilation-targets': 7.28.6 + '@babel/helper-module-transforms': 7.28.6(@babel/core@7.29.0) + '@babel/helpers': 7.28.6 + '@babel/parser': 7.29.0 + '@babel/template': 7.28.6 + '@babel/traverse': 7.29.0 + '@babel/types': 7.29.0 + '@jridgewell/remapping': 2.3.5 + convert-source-map: 2.0.0 + debug: 4.4.3 + gensync: 1.0.0-beta.2 + json5: 2.2.3 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + '@babel/generator@7.29.1': + dependencies: + '@babel/parser': 7.29.0 + '@babel/types': 7.29.0 + '@jridgewell/gen-mapping': 0.3.13 + '@jridgewell/trace-mapping': 0.3.31 + jsesc: 3.1.0 + + '@babel/helper-compilation-targets@7.28.6': + dependencies: + '@babel/compat-data': 7.29.0 + '@babel/helper-validator-option': 7.27.1 + browserslist: 4.28.1 + lru-cache: 5.1.1 + semver: 6.3.1 + + '@babel/helper-globals@7.28.0': {} + + '@babel/helper-module-imports@7.28.6': + dependencies: + '@babel/traverse': 7.29.0 + '@babel/types': 7.29.0 + transitivePeerDependencies: + - supports-color + + '@babel/helper-module-transforms@7.28.6(@babel/core@7.29.0)': + dependencies: + '@babel/core': 7.29.0 + '@babel/helper-module-imports': 7.28.6 + '@babel/helper-validator-identifier': 7.28.5 + '@babel/traverse': 7.29.0 + transitivePeerDependencies: + - supports-color + + '@babel/helper-string-parser@7.27.1': {} + + '@babel/helper-validator-identifier@7.28.5': {} + + '@babel/helper-validator-option@7.27.1': {} + + '@babel/helpers@7.28.6': + dependencies: + '@babel/template': 7.28.6 + '@babel/types': 7.29.0 + + '@babel/parser@7.29.0': + dependencies: + '@babel/types': 7.29.0 + + '@babel/template@7.28.6': + dependencies: + '@babel/code-frame': 7.29.0 + '@babel/parser': 7.29.0 + '@babel/types': 7.29.0 + + '@babel/traverse@7.29.0': + dependencies: + '@babel/code-frame': 7.29.0 + '@babel/generator': 7.29.1 + '@babel/helper-globals': 7.28.0 + '@babel/parser': 7.29.0 + '@babel/template': 7.28.6 + '@babel/types': 7.29.0 + debug: 4.4.3 + transitivePeerDependencies: + - supports-color + + '@babel/types@7.29.0': + dependencies: + '@babel/helper-string-parser': 7.27.1 + '@babel/helper-validator-identifier': 7.28.5 + + '@emnapi/core@1.8.1': + dependencies: + '@emnapi/wasi-threads': 1.1.0 + tslib: 2.8.1 + optional: true + + '@emnapi/runtime@1.8.1': + dependencies: + tslib: 2.8.1 + optional: true + + '@emnapi/wasi-threads@1.1.0': + dependencies: + tslib: 2.8.1 + optional: true + + '@eslint-community/eslint-utils@4.9.1(eslint@9.39.4(jiti@2.6.1))': + dependencies: + eslint: 9.39.4(jiti@2.6.1) + eslint-visitor-keys: 3.4.3 + + '@eslint-community/regexpp@4.12.2': {} + + '@eslint/config-array@0.21.2': + dependencies: + '@eslint/object-schema': 2.1.7 + debug: 4.4.3 + minimatch: 3.1.5 + transitivePeerDependencies: + - supports-color + + '@eslint/config-helpers@0.4.2': + dependencies: + '@eslint/core': 0.17.0 + + '@eslint/core@0.17.0': + dependencies: + '@types/json-schema': 7.0.15 + + '@eslint/eslintrc@3.3.5': + dependencies: + ajv: 6.14.0 + debug: 4.4.3 + espree: 10.4.0 + globals: 14.0.0 + ignore: 5.3.2 + import-fresh: 3.3.1 + js-yaml: 4.1.1 + minimatch: 3.1.5 + strip-json-comments: 3.1.1 + transitivePeerDependencies: + - supports-color + + '@eslint/js@9.39.4': {} + + '@eslint/object-schema@2.1.7': {} + + '@eslint/plugin-kit@0.4.1': + dependencies: + '@eslint/core': 0.17.0 + levn: 0.4.1 + + '@humanfs/core@0.19.1': {} + + '@humanfs/node@0.16.7': + dependencies: + '@humanfs/core': 0.19.1 + '@humanwhocodes/retry': 0.4.3 + + '@humanwhocodes/module-importer@1.0.1': {} + + '@humanwhocodes/retry@0.4.3': {} + + '@img/colour@1.1.0': + optional: true + + '@img/sharp-darwin-arm64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-darwin-arm64': 1.2.4 + optional: true + + '@img/sharp-darwin-x64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-darwin-x64': 1.2.4 + optional: true + + '@img/sharp-libvips-darwin-arm64@1.2.4': + optional: true + + '@img/sharp-libvips-darwin-x64@1.2.4': + optional: true + + '@img/sharp-libvips-linux-arm64@1.2.4': + optional: true + + '@img/sharp-libvips-linux-arm@1.2.4': + optional: true + + '@img/sharp-libvips-linux-ppc64@1.2.4': + optional: true + + '@img/sharp-libvips-linux-riscv64@1.2.4': + optional: true + + '@img/sharp-libvips-linux-s390x@1.2.4': + optional: true + + '@img/sharp-libvips-linux-x64@1.2.4': + optional: true + + '@img/sharp-libvips-linuxmusl-arm64@1.2.4': + optional: true + + '@img/sharp-libvips-linuxmusl-x64@1.2.4': + optional: true + + '@img/sharp-linux-arm64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linux-arm64': 1.2.4 + optional: true + + '@img/sharp-linux-arm@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linux-arm': 1.2.4 + optional: true + + '@img/sharp-linux-ppc64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linux-ppc64': 1.2.4 + optional: true + + '@img/sharp-linux-riscv64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linux-riscv64': 1.2.4 + optional: true + + '@img/sharp-linux-s390x@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linux-s390x': 1.2.4 + optional: true + + '@img/sharp-linux-x64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linux-x64': 1.2.4 + optional: true + + '@img/sharp-linuxmusl-arm64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linuxmusl-arm64': 1.2.4 + optional: true + + '@img/sharp-linuxmusl-x64@0.34.5': + optionalDependencies: + '@img/sharp-libvips-linuxmusl-x64': 1.2.4 + optional: true + + '@img/sharp-wasm32@0.34.5': + dependencies: + '@emnapi/runtime': 1.8.1 + optional: true + + '@img/sharp-win32-arm64@0.34.5': + optional: true + + '@img/sharp-win32-ia32@0.34.5': + optional: true + + '@img/sharp-win32-x64@0.34.5': + optional: true + + '@jridgewell/gen-mapping@0.3.13': + dependencies: + '@jridgewell/sourcemap-codec': 1.5.5 + '@jridgewell/trace-mapping': 0.3.31 + + '@jridgewell/remapping@2.3.5': + dependencies: + '@jridgewell/gen-mapping': 0.3.13 + '@jridgewell/trace-mapping': 0.3.31 + + '@jridgewell/resolve-uri@3.1.2': {} + + '@jridgewell/sourcemap-codec@1.5.5': {} + + '@jridgewell/trace-mapping@0.3.31': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.5 + + '@napi-rs/wasm-runtime@0.2.12': + dependencies: + '@emnapi/core': 1.8.1 + '@emnapi/runtime': 1.8.1 + '@tybys/wasm-util': 0.10.1 + optional: true + + '@next/env@16.1.6': {} + + '@next/eslint-plugin-next@16.1.6': + dependencies: + fast-glob: 3.3.1 + + '@next/swc-darwin-arm64@16.1.6': + optional: true + + '@next/swc-darwin-x64@16.1.6': + optional: true + + '@next/swc-linux-arm64-gnu@16.1.6': + optional: true + + '@next/swc-linux-arm64-musl@16.1.6': + optional: true + + '@next/swc-linux-x64-gnu@16.1.6': + optional: true + + '@next/swc-linux-x64-musl@16.1.6': + optional: true + + '@next/swc-win32-arm64-msvc@16.1.6': + optional: true + + '@next/swc-win32-x64-msvc@16.1.6': + optional: true + + '@nodelib/fs.scandir@2.1.5': + dependencies: + '@nodelib/fs.stat': 2.0.5 + run-parallel: 1.2.0 + + '@nodelib/fs.stat@2.0.5': {} + + '@nodelib/fs.walk@1.2.8': + dependencies: + '@nodelib/fs.scandir': 2.1.5 + fastq: 1.20.1 + + '@nolyfill/is-core-module@1.0.39': {} + + '@rtsao/scc@1.1.0': {} + + '@swc/helpers@0.5.15': + dependencies: + tslib: 2.8.1 + + '@tailwindcss/node@4.2.1': + dependencies: + '@jridgewell/remapping': 2.3.5 + enhanced-resolve: 5.20.0 + jiti: 2.6.1 + lightningcss: 1.31.1 + magic-string: 0.30.21 + source-map-js: 1.2.1 + tailwindcss: 4.2.1 + + '@tailwindcss/oxide-android-arm64@4.2.1': + optional: true + + '@tailwindcss/oxide-darwin-arm64@4.2.1': + optional: true + + '@tailwindcss/oxide-darwin-x64@4.2.1': + optional: true + + '@tailwindcss/oxide-freebsd-x64@4.2.1': + optional: true + + '@tailwindcss/oxide-linux-arm-gnueabihf@4.2.1': + optional: true + + '@tailwindcss/oxide-linux-arm64-gnu@4.2.1': + optional: true + + '@tailwindcss/oxide-linux-arm64-musl@4.2.1': + optional: true + + '@tailwindcss/oxide-linux-x64-gnu@4.2.1': + optional: true + + '@tailwindcss/oxide-linux-x64-musl@4.2.1': + optional: true + + '@tailwindcss/oxide-wasm32-wasi@4.2.1': + optional: true + + '@tailwindcss/oxide-win32-arm64-msvc@4.2.1': + optional: true + + '@tailwindcss/oxide-win32-x64-msvc@4.2.1': + optional: true + + '@tailwindcss/oxide@4.2.1': + optionalDependencies: + '@tailwindcss/oxide-android-arm64': 4.2.1 + '@tailwindcss/oxide-darwin-arm64': 4.2.1 + '@tailwindcss/oxide-darwin-x64': 4.2.1 + '@tailwindcss/oxide-freebsd-x64': 4.2.1 + '@tailwindcss/oxide-linux-arm-gnueabihf': 4.2.1 + '@tailwindcss/oxide-linux-arm64-gnu': 4.2.1 + '@tailwindcss/oxide-linux-arm64-musl': 4.2.1 + '@tailwindcss/oxide-linux-x64-gnu': 4.2.1 + '@tailwindcss/oxide-linux-x64-musl': 4.2.1 + '@tailwindcss/oxide-wasm32-wasi': 4.2.1 + '@tailwindcss/oxide-win32-arm64-msvc': 4.2.1 + '@tailwindcss/oxide-win32-x64-msvc': 4.2.1 + + '@tailwindcss/postcss@4.2.1': + dependencies: + '@alloc/quick-lru': 5.2.0 + '@tailwindcss/node': 4.2.1 + '@tailwindcss/oxide': 4.2.1 + postcss: 8.5.8 + tailwindcss: 4.2.1 + + '@tybys/wasm-util@0.10.1': + dependencies: + tslib: 2.8.1 + optional: true + + '@types/estree@1.0.8': {} + + '@types/json-schema@7.0.15': {} + + '@types/json5@0.0.29': {} + + '@types/node@20.19.37': + dependencies: + undici-types: 6.21.0 + + '@types/react-dom@19.2.3(@types/react@19.2.14)': + dependencies: + '@types/react': 19.2.14 + + '@types/react@19.2.14': + dependencies: + csstype: 3.2.3 + + '@typescript-eslint/eslint-plugin@8.57.0(@typescript-eslint/parser@8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@eslint-community/regexpp': 4.12.2 + '@typescript-eslint/parser': 8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/scope-manager': 8.57.0 + '@typescript-eslint/type-utils': 8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/utils': 8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.57.0 + eslint: 9.39.4(jiti@2.6.1) + ignore: 7.0.5 + natural-compare: 1.4.0 + ts-api-utils: 2.4.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/parser@8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@typescript-eslint/scope-manager': 8.57.0 + '@typescript-eslint/types': 8.57.0 + '@typescript-eslint/typescript-estree': 8.57.0(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.57.0 + debug: 4.4.3 + eslint: 9.39.4(jiti@2.6.1) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/project-service@8.57.0(typescript@5.9.3)': + dependencies: + '@typescript-eslint/tsconfig-utils': 8.57.0(typescript@5.9.3) + '@typescript-eslint/types': 8.57.0 + debug: 4.4.3 + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/scope-manager@8.57.0': + dependencies: + '@typescript-eslint/types': 8.57.0 + '@typescript-eslint/visitor-keys': 8.57.0 + + '@typescript-eslint/tsconfig-utils@8.57.0(typescript@5.9.3)': + dependencies: + typescript: 5.9.3 + + '@typescript-eslint/type-utils@8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@typescript-eslint/types': 8.57.0 + '@typescript-eslint/typescript-estree': 8.57.0(typescript@5.9.3) + '@typescript-eslint/utils': 8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) + debug: 4.4.3 + eslint: 9.39.4(jiti@2.6.1) + ts-api-utils: 2.4.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/types@8.57.0': {} + + '@typescript-eslint/typescript-estree@8.57.0(typescript@5.9.3)': + dependencies: + '@typescript-eslint/project-service': 8.57.0(typescript@5.9.3) + '@typescript-eslint/tsconfig-utils': 8.57.0(typescript@5.9.3) + '@typescript-eslint/types': 8.57.0 + '@typescript-eslint/visitor-keys': 8.57.0 + debug: 4.4.3 + minimatch: 10.2.4 + semver: 7.7.4 + tinyglobby: 0.2.15 + ts-api-utils: 2.4.0(typescript@5.9.3) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/utils@8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3)': + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.4(jiti@2.6.1)) + '@typescript-eslint/scope-manager': 8.57.0 + '@typescript-eslint/types': 8.57.0 + '@typescript-eslint/typescript-estree': 8.57.0(typescript@5.9.3) + eslint: 9.39.4(jiti@2.6.1) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/visitor-keys@8.57.0': + dependencies: + '@typescript-eslint/types': 8.57.0 + eslint-visitor-keys: 5.0.1 + + '@unrs/resolver-binding-android-arm-eabi@1.11.1': + optional: true + + '@unrs/resolver-binding-android-arm64@1.11.1': + optional: true + + '@unrs/resolver-binding-darwin-arm64@1.11.1': + optional: true + + '@unrs/resolver-binding-darwin-x64@1.11.1': + optional: true + + '@unrs/resolver-binding-freebsd-x64@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-arm-gnueabihf@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-arm-musleabihf@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-arm64-gnu@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-arm64-musl@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-ppc64-gnu@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-riscv64-gnu@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-riscv64-musl@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-s390x-gnu@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-x64-gnu@1.11.1': + optional: true + + '@unrs/resolver-binding-linux-x64-musl@1.11.1': + optional: true + + '@unrs/resolver-binding-wasm32-wasi@1.11.1': + dependencies: + '@napi-rs/wasm-runtime': 0.2.12 + optional: true + + '@unrs/resolver-binding-win32-arm64-msvc@1.11.1': + optional: true + + '@unrs/resolver-binding-win32-ia32-msvc@1.11.1': + optional: true + + '@unrs/resolver-binding-win32-x64-msvc@1.11.1': + optional: true + + acorn-jsx@5.3.2(acorn@8.16.0): + dependencies: + acorn: 8.16.0 + + acorn@8.16.0: {} + + ajv@6.14.0: + dependencies: + fast-deep-equal: 3.1.3 + fast-json-stable-stringify: 2.1.0 + json-schema-traverse: 0.4.1 + uri-js: 4.4.1 + + animate.css@4.1.1: {} + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + + argparse@2.0.1: {} + + aria-query@5.3.2: {} + + array-buffer-byte-length@1.0.2: + dependencies: + call-bound: 1.0.4 + is-array-buffer: 3.0.5 + + array-includes@3.1.9: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-object-atoms: 1.1.1 + get-intrinsic: 1.3.0 + is-string: 1.1.1 + math-intrinsics: 1.1.0 + + array.prototype.findlast@1.2.5: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + es-shim-unscopables: 1.1.0 + + array.prototype.findlastindex@1.2.6: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + es-shim-unscopables: 1.1.0 + + array.prototype.flat@1.3.3: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-shim-unscopables: 1.1.0 + + array.prototype.flatmap@1.3.3: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-shim-unscopables: 1.1.0 + + array.prototype.tosorted@1.1.4: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-errors: 1.3.0 + es-shim-unscopables: 1.1.0 + + arraybuffer.prototype.slice@1.0.4: + dependencies: + array-buffer-byte-length: 1.0.2 + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + is-array-buffer: 3.0.5 + + ast-types-flow@0.0.8: {} + + async-function@1.0.0: {} + + available-typed-arrays@1.0.7: + dependencies: + possible-typed-array-names: 1.1.0 + + axe-core@4.11.1: {} + + axobject-query@4.1.0: {} + + balanced-match@1.0.2: {} + + balanced-match@4.0.4: {} + + baseline-browser-mapping@2.10.0: {} + + brace-expansion@1.1.12: + dependencies: + balanced-match: 1.0.2 + concat-map: 0.0.1 + + brace-expansion@5.0.4: + dependencies: + balanced-match: 4.0.4 + + braces@3.0.3: + dependencies: + fill-range: 7.1.1 + + browserslist@4.28.1: + dependencies: + baseline-browser-mapping: 2.10.0 + caniuse-lite: 1.0.30001777 + electron-to-chromium: 1.5.307 + node-releases: 2.0.36 + update-browserslist-db: 1.2.3(browserslist@4.28.1) + + call-bind-apply-helpers@1.0.2: + dependencies: + es-errors: 1.3.0 + function-bind: 1.1.2 + + call-bind@1.0.8: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: 1.0.1 + get-intrinsic: 1.3.0 + set-function-length: 1.2.2 + + call-bound@1.0.4: + dependencies: + call-bind-apply-helpers: 1.0.2 + get-intrinsic: 1.3.0 + + callsites@3.1.0: {} + + caniuse-lite@1.0.30001777: {} + + chalk@4.1.2: + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + + client-only@0.0.1: {} + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-name@1.1.4: {} + + concat-map@0.0.1: {} + + convert-source-map@2.0.0: {} + + cross-spawn@7.0.6: + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + + csstype@3.2.3: {} + + damerau-levenshtein@1.0.8: {} + + data-view-buffer@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + + data-view-byte-length@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + + data-view-byte-offset@1.0.1: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-data-view: 1.0.2 + + debug@3.2.7: + dependencies: + ms: 2.1.3 + + debug@4.4.3: + dependencies: + ms: 2.1.3 + + deep-is@0.1.4: {} + + define-data-property@1.1.4: + dependencies: + es-define-property: 1.0.1 + es-errors: 1.3.0 + gopd: 1.2.0 + + define-properties@1.2.1: + dependencies: + define-data-property: 1.1.4 + has-property-descriptors: 1.0.2 + object-keys: 1.1.1 + + detect-libc@2.1.2: {} + + doctrine@2.1.0: + dependencies: + esutils: 2.0.3 + + dunder-proto@1.0.1: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-errors: 1.3.0 + gopd: 1.2.0 + + electron-to-chromium@1.5.307: {} + + emoji-regex@9.2.2: {} + + enhanced-resolve@5.20.0: + dependencies: + graceful-fs: 4.2.11 + tapable: 2.3.0 + + es-abstract@1.24.1: + dependencies: + array-buffer-byte-length: 1.0.2 + arraybuffer.prototype.slice: 1.0.4 + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.4 + data-view-buffer: 1.0.2 + data-view-byte-length: 1.0.2 + data-view-byte-offset: 1.0.1 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + es-set-tostringtag: 2.1.0 + es-to-primitive: 1.3.0 + function.prototype.name: 1.1.8 + get-intrinsic: 1.3.0 + get-proto: 1.0.1 + get-symbol-description: 1.1.0 + globalthis: 1.0.4 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + has-proto: 1.2.0 + has-symbols: 1.1.0 + hasown: 2.0.2 + internal-slot: 1.1.0 + is-array-buffer: 3.0.5 + is-callable: 1.2.7 + is-data-view: 1.0.2 + is-negative-zero: 2.0.3 + is-regex: 1.2.1 + is-set: 2.0.3 + is-shared-array-buffer: 1.0.4 + is-string: 1.1.1 + is-typed-array: 1.1.15 + is-weakref: 1.1.1 + math-intrinsics: 1.1.0 + object-inspect: 1.13.4 + object-keys: 1.1.1 + object.assign: 4.1.7 + own-keys: 1.0.1 + regexp.prototype.flags: 1.5.4 + safe-array-concat: 1.1.3 + safe-push-apply: 1.0.0 + safe-regex-test: 1.1.0 + set-proto: 1.0.0 + stop-iteration-iterator: 1.1.0 + string.prototype.trim: 1.2.10 + string.prototype.trimend: 1.0.9 + string.prototype.trimstart: 1.0.8 + typed-array-buffer: 1.0.3 + typed-array-byte-length: 1.0.3 + typed-array-byte-offset: 1.0.4 + typed-array-length: 1.0.7 + unbox-primitive: 1.1.0 + which-typed-array: 1.1.20 + + es-define-property@1.0.1: {} + + es-errors@1.3.0: {} + + es-iterator-helpers@1.2.2: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-errors: 1.3.0 + es-set-tostringtag: 2.1.0 + function-bind: 1.1.2 + get-intrinsic: 1.3.0 + globalthis: 1.0.4 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + has-proto: 1.2.0 + has-symbols: 1.1.0 + internal-slot: 1.1.0 + iterator.prototype: 1.1.5 + safe-array-concat: 1.1.3 + + es-object-atoms@1.1.1: + dependencies: + es-errors: 1.3.0 + + es-set-tostringtag@2.1.0: + dependencies: + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + has-tostringtag: 1.0.2 + hasown: 2.0.2 + + es-shim-unscopables@1.1.0: + dependencies: + hasown: 2.0.2 + + es-to-primitive@1.3.0: + dependencies: + is-callable: 1.2.7 + is-date-object: 1.1.0 + is-symbol: 1.1.1 + + escalade@3.2.0: {} + + escape-string-regexp@4.0.0: {} + + eslint-config-next@16.1.6(@typescript-eslint/parser@8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3): + dependencies: + '@next/eslint-plugin-next': 16.1.6 + eslint: 9.39.4(jiti@2.6.1) + eslint-import-resolver-node: 0.3.9 + eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.32.0)(eslint@9.39.4(jiti@2.6.1)) + eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.4(jiti@2.6.1)) + eslint-plugin-jsx-a11y: 6.10.2(eslint@9.39.4(jiti@2.6.1)) + eslint-plugin-react: 7.37.5(eslint@9.39.4(jiti@2.6.1)) + eslint-plugin-react-hooks: 7.0.1(eslint@9.39.4(jiti@2.6.1)) + globals: 16.4.0 + typescript-eslint: 8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) + optionalDependencies: + typescript: 5.9.3 + transitivePeerDependencies: + - '@typescript-eslint/parser' + - eslint-import-resolver-webpack + - eslint-plugin-import-x + - supports-color + + eslint-import-resolver-node@0.3.9: + dependencies: + debug: 3.2.7 + is-core-module: 2.16.1 + resolve: 1.22.11 + transitivePeerDependencies: + - supports-color + + eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.32.0)(eslint@9.39.4(jiti@2.6.1)): + dependencies: + '@nolyfill/is-core-module': 1.0.39 + debug: 4.4.3 + eslint: 9.39.4(jiti@2.6.1) + get-tsconfig: 4.13.6 + is-bun-module: 2.0.0 + stable-hash: 0.0.5 + tinyglobby: 0.2.15 + unrs-resolver: 1.11.1 + optionalDependencies: + eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.4(jiti@2.6.1)) + transitivePeerDependencies: + - supports-color + + eslint-module-utils@2.12.1(@typescript-eslint/parser@8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.4(jiti@2.6.1)): + dependencies: + debug: 3.2.7 + optionalDependencies: + '@typescript-eslint/parser': 8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) + eslint: 9.39.4(jiti@2.6.1) + eslint-import-resolver-node: 0.3.9 + eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.32.0)(eslint@9.39.4(jiti@2.6.1)) + transitivePeerDependencies: + - supports-color + + eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.4(jiti@2.6.1)): + dependencies: + '@rtsao/scc': 1.1.0 + array-includes: 3.1.9 + array.prototype.findlastindex: 1.2.6 + array.prototype.flat: 1.3.3 + array.prototype.flatmap: 1.3.3 + debug: 3.2.7 + doctrine: 2.1.0 + eslint: 9.39.4(jiti@2.6.1) + eslint-import-resolver-node: 0.3.9 + eslint-module-utils: 2.12.1(@typescript-eslint/parser@8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.4(jiti@2.6.1)) + hasown: 2.0.2 + is-core-module: 2.16.1 + is-glob: 4.0.3 + minimatch: 3.1.5 + object.fromentries: 2.0.8 + object.groupby: 1.0.3 + object.values: 1.2.1 + semver: 6.3.1 + string.prototype.trimend: 1.0.9 + tsconfig-paths: 3.15.0 + optionalDependencies: + '@typescript-eslint/parser': 8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) + transitivePeerDependencies: + - eslint-import-resolver-typescript + - eslint-import-resolver-webpack + - supports-color + + eslint-plugin-jsx-a11y@6.10.2(eslint@9.39.4(jiti@2.6.1)): + dependencies: + aria-query: 5.3.2 + array-includes: 3.1.9 + array.prototype.flatmap: 1.3.3 + ast-types-flow: 0.0.8 + axe-core: 4.11.1 + axobject-query: 4.1.0 + damerau-levenshtein: 1.0.8 + emoji-regex: 9.2.2 + eslint: 9.39.4(jiti@2.6.1) + hasown: 2.0.2 + jsx-ast-utils: 3.3.5 + language-tags: 1.0.9 + minimatch: 3.1.5 + object.fromentries: 2.0.8 + safe-regex-test: 1.1.0 + string.prototype.includes: 2.0.1 + + eslint-plugin-react-hooks@7.0.1(eslint@9.39.4(jiti@2.6.1)): + dependencies: + '@babel/core': 7.29.0 + '@babel/parser': 7.29.0 + eslint: 9.39.4(jiti@2.6.1) + hermes-parser: 0.25.1 + zod: 4.3.6 + zod-validation-error: 4.0.2(zod@4.3.6) + transitivePeerDependencies: + - supports-color + + eslint-plugin-react@7.37.5(eslint@9.39.4(jiti@2.6.1)): + dependencies: + array-includes: 3.1.9 + array.prototype.findlast: 1.2.5 + array.prototype.flatmap: 1.3.3 + array.prototype.tosorted: 1.1.4 + doctrine: 2.1.0 + es-iterator-helpers: 1.2.2 + eslint: 9.39.4(jiti@2.6.1) + estraverse: 5.3.0 + hasown: 2.0.2 + jsx-ast-utils: 3.3.5 + minimatch: 3.1.5 + object.entries: 1.1.9 + object.fromentries: 2.0.8 + object.values: 1.2.1 + prop-types: 15.8.1 + resolve: 2.0.0-next.6 + semver: 6.3.1 + string.prototype.matchall: 4.0.12 + string.prototype.repeat: 1.0.0 + + eslint-scope@8.4.0: + dependencies: + esrecurse: 4.3.0 + estraverse: 5.3.0 + + eslint-visitor-keys@3.4.3: {} + + eslint-visitor-keys@4.2.1: {} + + eslint-visitor-keys@5.0.1: {} + + eslint@9.39.4(jiti@2.6.1): + dependencies: + '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.4(jiti@2.6.1)) + '@eslint-community/regexpp': 4.12.2 + '@eslint/config-array': 0.21.2 + '@eslint/config-helpers': 0.4.2 + '@eslint/core': 0.17.0 + '@eslint/eslintrc': 3.3.5 + '@eslint/js': 9.39.4 + '@eslint/plugin-kit': 0.4.1 + '@humanfs/node': 0.16.7 + '@humanwhocodes/module-importer': 1.0.1 + '@humanwhocodes/retry': 0.4.3 + '@types/estree': 1.0.8 + ajv: 6.14.0 + chalk: 4.1.2 + cross-spawn: 7.0.6 + debug: 4.4.3 + escape-string-regexp: 4.0.0 + eslint-scope: 8.4.0 + eslint-visitor-keys: 4.2.1 + espree: 10.4.0 + esquery: 1.7.0 + esutils: 2.0.3 + fast-deep-equal: 3.1.3 + file-entry-cache: 8.0.0 + find-up: 5.0.0 + glob-parent: 6.0.2 + ignore: 5.3.2 + imurmurhash: 0.1.4 + is-glob: 4.0.3 + json-stable-stringify-without-jsonify: 1.0.1 + lodash.merge: 4.6.2 + minimatch: 3.1.5 + natural-compare: 1.4.0 + optionator: 0.9.4 + optionalDependencies: + jiti: 2.6.1 + transitivePeerDependencies: + - supports-color + + espree@10.4.0: + dependencies: + acorn: 8.16.0 + acorn-jsx: 5.3.2(acorn@8.16.0) + eslint-visitor-keys: 4.2.1 + + esquery@1.7.0: + dependencies: + estraverse: 5.3.0 + + esrecurse@4.3.0: + dependencies: + estraverse: 5.3.0 + + estraverse@5.3.0: {} + + esutils@2.0.3: {} + + fast-deep-equal@3.1.3: {} + + fast-glob@3.3.1: + dependencies: + '@nodelib/fs.stat': 2.0.5 + '@nodelib/fs.walk': 1.2.8 + glob-parent: 5.1.2 + merge2: 1.4.1 + micromatch: 4.0.8 + + fast-json-stable-stringify@2.1.0: {} + + fast-levenshtein@2.0.6: {} + + fastq@1.20.1: + dependencies: + reusify: 1.1.0 + + fdir@6.5.0(picomatch@4.0.3): + optionalDependencies: + picomatch: 4.0.3 + + file-entry-cache@8.0.0: + dependencies: + flat-cache: 4.0.1 + + fill-range@7.1.1: + dependencies: + to-regex-range: 5.0.1 + + find-up@5.0.0: + dependencies: + locate-path: 6.0.0 + path-exists: 4.0.0 + + flat-cache@4.0.1: + dependencies: + flatted: 3.4.1 + keyv: 4.5.4 + + flatted@3.4.1: {} + + for-each@0.3.5: + dependencies: + is-callable: 1.2.7 + + function-bind@1.1.2: {} + + function.prototype.name@1.1.8: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + functions-have-names: 1.2.3 + hasown: 2.0.2 + is-callable: 1.2.7 + + functions-have-names@1.2.3: {} + + generator-function@2.0.1: {} + + gensync@1.0.0-beta.2: {} + + get-intrinsic@1.3.0: + dependencies: + call-bind-apply-helpers: 1.0.2 + es-define-property: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + function-bind: 1.1.2 + get-proto: 1.0.1 + gopd: 1.2.0 + has-symbols: 1.1.0 + hasown: 2.0.2 + math-intrinsics: 1.1.0 + + get-proto@1.0.1: + dependencies: + dunder-proto: 1.0.1 + es-object-atoms: 1.1.1 + + get-symbol-description@1.1.0: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + + get-tsconfig@4.13.6: + dependencies: + resolve-pkg-maps: 1.0.0 + + github-markdown-css@5.9.0: {} + + glob-parent@5.1.2: + dependencies: + is-glob: 4.0.3 + + glob-parent@6.0.2: + dependencies: + is-glob: 4.0.3 + + globals@14.0.0: {} + + globals@16.4.0: {} + + globalthis@1.0.4: + dependencies: + define-properties: 1.2.1 + gopd: 1.2.0 + + gopd@1.2.0: {} + + graceful-fs@4.2.11: {} + + has-bigints@1.1.0: {} + + has-flag@4.0.0: {} + + has-property-descriptors@1.0.2: + dependencies: + es-define-property: 1.0.1 + + has-proto@1.2.0: + dependencies: + dunder-proto: 1.0.1 + + has-symbols@1.1.0: {} + + has-tostringtag@1.0.2: + dependencies: + has-symbols: 1.1.0 + + hasown@2.0.2: + dependencies: + function-bind: 1.1.2 + + hermes-estree@0.25.1: {} + + hermes-parser@0.25.1: + dependencies: + hermes-estree: 0.25.1 + + ignore@5.3.2: {} + + ignore@7.0.5: {} + + import-fresh@3.3.1: + dependencies: + parent-module: 1.0.1 + resolve-from: 4.0.0 + + imurmurhash@0.1.4: {} + + internal-slot@1.1.0: + dependencies: + es-errors: 1.3.0 + hasown: 2.0.2 + side-channel: 1.1.0 + + is-array-buffer@3.0.5: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + + is-async-function@2.1.1: + dependencies: + async-function: 1.0.0 + call-bound: 1.0.4 + get-proto: 1.0.1 + has-tostringtag: 1.0.2 + safe-regex-test: 1.1.0 + + is-bigint@1.1.0: + dependencies: + has-bigints: 1.1.0 + + is-boolean-object@1.2.2: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-bun-module@2.0.0: + dependencies: + semver: 7.7.4 + + is-callable@1.2.7: {} + + is-core-module@2.16.1: + dependencies: + hasown: 2.0.2 + + is-data-view@1.0.2: + dependencies: + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + is-typed-array: 1.1.15 + + is-date-object@1.1.0: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-extglob@2.1.1: {} + + is-finalizationregistry@1.1.1: + dependencies: + call-bound: 1.0.4 + + is-generator-function@1.1.2: + dependencies: + call-bound: 1.0.4 + generator-function: 2.0.1 + get-proto: 1.0.1 + has-tostringtag: 1.0.2 + safe-regex-test: 1.1.0 + + is-glob@4.0.3: + dependencies: + is-extglob: 2.1.1 + + is-map@2.0.3: {} + + is-negative-zero@2.0.3: {} + + is-number-object@1.1.1: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-number@7.0.0: {} + + is-regex@1.2.1: + dependencies: + call-bound: 1.0.4 + gopd: 1.2.0 + has-tostringtag: 1.0.2 + hasown: 2.0.2 + + is-set@2.0.3: {} + + is-shared-array-buffer@1.0.4: + dependencies: + call-bound: 1.0.4 + + is-string@1.1.1: + dependencies: + call-bound: 1.0.4 + has-tostringtag: 1.0.2 + + is-symbol@1.1.1: + dependencies: + call-bound: 1.0.4 + has-symbols: 1.1.0 + safe-regex-test: 1.1.0 + + is-typed-array@1.1.15: + dependencies: + which-typed-array: 1.1.20 + + is-weakmap@2.0.2: {} + + is-weakref@1.1.1: + dependencies: + call-bound: 1.0.4 + + is-weakset@2.0.4: + dependencies: + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + + isarray@2.0.5: {} + + isexe@2.0.0: {} + + iterator.prototype@1.1.5: + dependencies: + define-data-property: 1.1.4 + es-object-atoms: 1.1.1 + get-intrinsic: 1.3.0 + get-proto: 1.0.1 + has-symbols: 1.1.0 + set-function-name: 2.0.2 + + jiti@2.6.1: {} + + js-tokens@4.0.0: {} + + js-yaml@4.1.1: + dependencies: + argparse: 2.0.1 + + jsesc@3.1.0: {} + + json-buffer@3.0.1: {} + + json-schema-traverse@0.4.1: {} + + json-stable-stringify-without-jsonify@1.0.1: {} + + json5@1.0.2: + dependencies: + minimist: 1.2.8 + + json5@2.2.3: {} + + jsx-ast-utils@3.3.5: + dependencies: + array-includes: 3.1.9 + array.prototype.flat: 1.3.3 + object.assign: 4.1.7 + object.values: 1.2.1 + + keyv@4.5.4: + dependencies: + json-buffer: 3.0.1 + + language-subtag-registry@0.3.23: {} + + language-tags@1.0.9: + dependencies: + language-subtag-registry: 0.3.23 + + levn@0.4.1: + dependencies: + prelude-ls: 1.2.1 + type-check: 0.4.0 + + lightningcss-android-arm64@1.31.1: + optional: true + + lightningcss-darwin-arm64@1.31.1: + optional: true + + lightningcss-darwin-x64@1.31.1: + optional: true + + lightningcss-freebsd-x64@1.31.1: + optional: true + + lightningcss-linux-arm-gnueabihf@1.31.1: + optional: true + + lightningcss-linux-arm64-gnu@1.31.1: + optional: true + + lightningcss-linux-arm64-musl@1.31.1: + optional: true + + lightningcss-linux-x64-gnu@1.31.1: + optional: true + + lightningcss-linux-x64-musl@1.31.1: + optional: true + + lightningcss-win32-arm64-msvc@1.31.1: + optional: true + + lightningcss-win32-x64-msvc@1.31.1: + optional: true + + lightningcss@1.31.1: + dependencies: + detect-libc: 2.1.2 + optionalDependencies: + lightningcss-android-arm64: 1.31.1 + lightningcss-darwin-arm64: 1.31.1 + lightningcss-darwin-x64: 1.31.1 + lightningcss-freebsd-x64: 1.31.1 + lightningcss-linux-arm-gnueabihf: 1.31.1 + lightningcss-linux-arm64-gnu: 1.31.1 + lightningcss-linux-arm64-musl: 1.31.1 + lightningcss-linux-x64-gnu: 1.31.1 + lightningcss-linux-x64-musl: 1.31.1 + lightningcss-win32-arm64-msvc: 1.31.1 + lightningcss-win32-x64-msvc: 1.31.1 + + locate-path@6.0.0: + dependencies: + p-locate: 5.0.0 + + lodash.merge@4.6.2: {} + + loose-envify@1.4.0: + dependencies: + js-tokens: 4.0.0 + + lru-cache@5.1.1: + dependencies: + yallist: 3.1.1 + + magic-string@0.30.21: + dependencies: + '@jridgewell/sourcemap-codec': 1.5.5 + + marked@17.0.4: {} + + math-intrinsics@1.1.0: {} + + merge2@1.4.1: {} + + micromatch@4.0.8: + dependencies: + braces: 3.0.3 + picomatch: 2.3.1 + + minimatch@10.2.4: + dependencies: + brace-expansion: 5.0.4 + + minimatch@3.1.5: + dependencies: + brace-expansion: 1.1.12 + + minimist@1.2.8: {} + + ms@2.1.3: {} + + nanoid@3.3.11: {} + + napi-postinstall@0.3.4: {} + + natural-compare@1.4.0: {} + + next@16.1.6(@babel/core@7.29.0)(react-dom@19.2.3(react@19.2.3))(react@19.2.3): + dependencies: + '@next/env': 16.1.6 + '@swc/helpers': 0.5.15 + baseline-browser-mapping: 2.10.0 + caniuse-lite: 1.0.30001777 + postcss: 8.4.31 + react: 19.2.3 + react-dom: 19.2.3(react@19.2.3) + styled-jsx: 5.1.6(@babel/core@7.29.0)(react@19.2.3) + optionalDependencies: + '@next/swc-darwin-arm64': 16.1.6 + '@next/swc-darwin-x64': 16.1.6 + '@next/swc-linux-arm64-gnu': 16.1.6 + '@next/swc-linux-arm64-musl': 16.1.6 + '@next/swc-linux-x64-gnu': 16.1.6 + '@next/swc-linux-x64-musl': 16.1.6 + '@next/swc-win32-arm64-msvc': 16.1.6 + '@next/swc-win32-x64-msvc': 16.1.6 + sharp: 0.34.5 + transitivePeerDependencies: + - '@babel/core' + - babel-plugin-macros + + node-exports-info@1.6.0: + dependencies: + array.prototype.flatmap: 1.3.3 + es-errors: 1.3.0 + object.entries: 1.1.9 + semver: 6.3.1 + + node-releases@2.0.36: {} + + object-assign@4.1.1: {} + + object-inspect@1.13.4: {} + + object-keys@1.1.1: {} + + object.assign@4.1.7: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + has-symbols: 1.1.0 + object-keys: 1.1.1 + + object.entries@1.1.9: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + + object.fromentries@2.0.8: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-object-atoms: 1.1.1 + + object.groupby@1.0.3: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.1 + + object.values@1.2.1: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + + optionator@0.9.4: + dependencies: + deep-is: 0.1.4 + fast-levenshtein: 2.0.6 + levn: 0.4.1 + prelude-ls: 1.2.1 + type-check: 0.4.0 + word-wrap: 1.2.5 + + own-keys@1.0.1: + dependencies: + get-intrinsic: 1.3.0 + object-keys: 1.1.1 + safe-push-apply: 1.0.0 + + p-limit@3.1.0: + dependencies: + yocto-queue: 0.1.0 + + p-locate@5.0.0: + dependencies: + p-limit: 3.1.0 + + parent-module@1.0.1: + dependencies: + callsites: 3.1.0 + + path-exists@4.0.0: {} + + path-key@3.1.1: {} + + path-parse@1.0.7: {} + + picocolors@1.1.1: {} + + picomatch@2.3.1: {} + + picomatch@4.0.3: {} + + pocketbase@0.26.8: {} + + possible-typed-array-names@1.1.0: {} + + postcss@8.4.31: + dependencies: + nanoid: 3.3.11 + picocolors: 1.1.1 + source-map-js: 1.2.1 + + postcss@8.5.8: + dependencies: + nanoid: 3.3.11 + picocolors: 1.1.1 + source-map-js: 1.2.1 + + prelude-ls@1.2.1: {} + + prop-types@15.8.1: + dependencies: + loose-envify: 1.4.0 + object-assign: 4.1.1 + react-is: 16.13.1 + + punycode@2.3.1: {} + + queue-microtask@1.2.3: {} + + react-dom@19.2.3(react@19.2.3): + dependencies: + react: 19.2.3 + scheduler: 0.27.0 + + react-is@16.13.1: {} + + react@19.2.3: {} + + reflect.getprototypeof@1.0.10: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + get-intrinsic: 1.3.0 + get-proto: 1.0.1 + which-builtin-type: 1.2.1 + + regexp.prototype.flags@1.5.4: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-errors: 1.3.0 + get-proto: 1.0.1 + gopd: 1.2.0 + set-function-name: 2.0.2 + + resolve-from@4.0.0: {} + + resolve-pkg-maps@1.0.0: {} + + resolve@1.22.11: + dependencies: + is-core-module: 2.16.1 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + + resolve@2.0.0-next.6: + dependencies: + es-errors: 1.3.0 + is-core-module: 2.16.1 + node-exports-info: 1.6.0 + object-keys: 1.1.1 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + + reusify@1.1.0: {} + + run-parallel@1.2.0: + dependencies: + queue-microtask: 1.2.3 + + safe-array-concat@1.1.3: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + get-intrinsic: 1.3.0 + has-symbols: 1.1.0 + isarray: 2.0.5 + + safe-push-apply@1.0.0: + dependencies: + es-errors: 1.3.0 + isarray: 2.0.5 + + safe-regex-test@1.1.0: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-regex: 1.2.1 + + scheduler@0.27.0: {} + + semver@6.3.1: {} + + semver@7.7.4: {} + + set-function-length@1.2.2: + dependencies: + define-data-property: 1.1.4 + es-errors: 1.3.0 + function-bind: 1.1.2 + get-intrinsic: 1.3.0 + gopd: 1.2.0 + has-property-descriptors: 1.0.2 + + set-function-name@2.0.2: + dependencies: + define-data-property: 1.1.4 + es-errors: 1.3.0 + functions-have-names: 1.2.3 + has-property-descriptors: 1.0.2 + + set-proto@1.0.0: + dependencies: + dunder-proto: 1.0.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + + sharp@0.34.5: + dependencies: + '@img/colour': 1.1.0 + detect-libc: 2.1.2 + semver: 7.7.4 + optionalDependencies: + '@img/sharp-darwin-arm64': 0.34.5 + '@img/sharp-darwin-x64': 0.34.5 + '@img/sharp-libvips-darwin-arm64': 1.2.4 + '@img/sharp-libvips-darwin-x64': 1.2.4 + '@img/sharp-libvips-linux-arm': 1.2.4 + '@img/sharp-libvips-linux-arm64': 1.2.4 + '@img/sharp-libvips-linux-ppc64': 1.2.4 + '@img/sharp-libvips-linux-riscv64': 1.2.4 + '@img/sharp-libvips-linux-s390x': 1.2.4 + '@img/sharp-libvips-linux-x64': 1.2.4 + '@img/sharp-libvips-linuxmusl-arm64': 1.2.4 + '@img/sharp-libvips-linuxmusl-x64': 1.2.4 + '@img/sharp-linux-arm': 0.34.5 + '@img/sharp-linux-arm64': 0.34.5 + '@img/sharp-linux-ppc64': 0.34.5 + '@img/sharp-linux-riscv64': 0.34.5 + '@img/sharp-linux-s390x': 0.34.5 + '@img/sharp-linux-x64': 0.34.5 + '@img/sharp-linuxmusl-arm64': 0.34.5 + '@img/sharp-linuxmusl-x64': 0.34.5 + '@img/sharp-wasm32': 0.34.5 + '@img/sharp-win32-arm64': 0.34.5 + '@img/sharp-win32-ia32': 0.34.5 + '@img/sharp-win32-x64': 0.34.5 + optional: true + + shebang-command@2.0.0: + dependencies: + shebang-regex: 3.0.0 + + shebang-regex@3.0.0: {} + + side-channel-list@1.0.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + + side-channel-map@1.0.1: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + + side-channel-weakmap@1.0.2: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + get-intrinsic: 1.3.0 + object-inspect: 1.13.4 + side-channel-map: 1.0.1 + + side-channel@1.1.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.4 + side-channel-list: 1.0.0 + side-channel-map: 1.0.1 + side-channel-weakmap: 1.0.2 + + source-map-js@1.2.1: {} + + stable-hash@0.0.5: {} + + stop-iteration-iterator@1.1.0: + dependencies: + es-errors: 1.3.0 + internal-slot: 1.1.0 + + string.prototype.includes@2.0.1: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-abstract: 1.24.1 + + string.prototype.matchall@4.0.12: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-errors: 1.3.0 + es-object-atoms: 1.1.1 + get-intrinsic: 1.3.0 + gopd: 1.2.0 + has-symbols: 1.1.0 + internal-slot: 1.1.0 + regexp.prototype.flags: 1.5.4 + set-function-name: 2.0.2 + side-channel: 1.1.0 + + string.prototype.repeat@1.0.0: + dependencies: + define-properties: 1.2.1 + es-abstract: 1.24.1 + + string.prototype.trim@1.2.10: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-data-property: 1.1.4 + define-properties: 1.2.1 + es-abstract: 1.24.1 + es-object-atoms: 1.1.1 + has-property-descriptors: 1.0.2 + + string.prototype.trimend@1.0.9: + dependencies: + call-bind: 1.0.8 + call-bound: 1.0.4 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + + string.prototype.trimstart@1.0.8: + dependencies: + call-bind: 1.0.8 + define-properties: 1.2.1 + es-object-atoms: 1.1.1 + + strip-bom@3.0.0: {} + + strip-json-comments@3.1.1: {} + + styled-jsx@5.1.6(@babel/core@7.29.0)(react@19.2.3): + dependencies: + client-only: 0.0.1 + react: 19.2.3 + optionalDependencies: + '@babel/core': 7.29.0 + + supports-color@7.2.0: + dependencies: + has-flag: 4.0.0 + + supports-preserve-symlinks-flag@1.0.0: {} + + tailwindcss@4.2.1: {} + + tapable@2.3.0: {} + + tinyglobby@0.2.15: + dependencies: + fdir: 6.5.0(picomatch@4.0.3) + picomatch: 4.0.3 + + to-regex-range@5.0.1: + dependencies: + is-number: 7.0.0 + + ts-api-utils@2.4.0(typescript@5.9.3): + dependencies: + typescript: 5.9.3 + + tsconfig-paths@3.15.0: + dependencies: + '@types/json5': 0.0.29 + json5: 1.0.2 + minimist: 1.2.8 + strip-bom: 3.0.0 + + tslib@2.8.1: {} + + type-check@0.4.0: + dependencies: + prelude-ls: 1.2.1 + + typed-array-buffer@1.0.3: + dependencies: + call-bound: 1.0.4 + es-errors: 1.3.0 + is-typed-array: 1.1.15 + + typed-array-byte-length@1.0.3: + dependencies: + call-bind: 1.0.8 + for-each: 0.3.5 + gopd: 1.2.0 + has-proto: 1.2.0 + is-typed-array: 1.1.15 + + typed-array-byte-offset@1.0.4: + dependencies: + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + for-each: 0.3.5 + gopd: 1.2.0 + has-proto: 1.2.0 + is-typed-array: 1.1.15 + reflect.getprototypeof: 1.0.10 + + typed-array-length@1.0.7: + dependencies: + call-bind: 1.0.8 + for-each: 0.3.5 + gopd: 1.2.0 + is-typed-array: 1.1.15 + possible-typed-array-names: 1.1.0 + reflect.getprototypeof: 1.0.10 + + typescript-eslint@8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3): + dependencies: + '@typescript-eslint/eslint-plugin': 8.57.0(@typescript-eslint/parser@8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3))(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/parser': 8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/typescript-estree': 8.57.0(typescript@5.9.3) + '@typescript-eslint/utils': 8.57.0(eslint@9.39.4(jiti@2.6.1))(typescript@5.9.3) + eslint: 9.39.4(jiti@2.6.1) + typescript: 5.9.3 + transitivePeerDependencies: + - supports-color + + typescript@5.9.3: {} + + unbox-primitive@1.1.0: + dependencies: + call-bound: 1.0.4 + has-bigints: 1.1.0 + has-symbols: 1.1.0 + which-boxed-primitive: 1.1.1 + + undici-types@6.21.0: {} + + unrs-resolver@1.11.1: + dependencies: + napi-postinstall: 0.3.4 + optionalDependencies: + '@unrs/resolver-binding-android-arm-eabi': 1.11.1 + '@unrs/resolver-binding-android-arm64': 1.11.1 + '@unrs/resolver-binding-darwin-arm64': 1.11.1 + '@unrs/resolver-binding-darwin-x64': 1.11.1 + '@unrs/resolver-binding-freebsd-x64': 1.11.1 + '@unrs/resolver-binding-linux-arm-gnueabihf': 1.11.1 + '@unrs/resolver-binding-linux-arm-musleabihf': 1.11.1 + '@unrs/resolver-binding-linux-arm64-gnu': 1.11.1 + '@unrs/resolver-binding-linux-arm64-musl': 1.11.1 + '@unrs/resolver-binding-linux-ppc64-gnu': 1.11.1 + '@unrs/resolver-binding-linux-riscv64-gnu': 1.11.1 + '@unrs/resolver-binding-linux-riscv64-musl': 1.11.1 + '@unrs/resolver-binding-linux-s390x-gnu': 1.11.1 + '@unrs/resolver-binding-linux-x64-gnu': 1.11.1 + '@unrs/resolver-binding-linux-x64-musl': 1.11.1 + '@unrs/resolver-binding-wasm32-wasi': 1.11.1 + '@unrs/resolver-binding-win32-arm64-msvc': 1.11.1 + '@unrs/resolver-binding-win32-ia32-msvc': 1.11.1 + '@unrs/resolver-binding-win32-x64-msvc': 1.11.1 + + update-browserslist-db@1.2.3(browserslist@4.28.1): + dependencies: + browserslist: 4.28.1 + escalade: 3.2.0 + picocolors: 1.1.1 + + uri-js@4.4.1: + dependencies: + punycode: 2.3.1 + + which-boxed-primitive@1.1.1: + dependencies: + is-bigint: 1.1.0 + is-boolean-object: 1.2.2 + is-number-object: 1.1.1 + is-string: 1.1.1 + is-symbol: 1.1.1 + + which-builtin-type@1.2.1: + dependencies: + call-bound: 1.0.4 + function.prototype.name: 1.1.8 + has-tostringtag: 1.0.2 + is-async-function: 2.1.1 + is-date-object: 1.1.0 + is-finalizationregistry: 1.1.1 + is-generator-function: 1.1.2 + is-regex: 1.2.1 + is-weakref: 1.1.1 + isarray: 2.0.5 + which-boxed-primitive: 1.1.1 + which-collection: 1.0.2 + which-typed-array: 1.1.20 + + which-collection@1.0.2: + dependencies: + is-map: 2.0.3 + is-set: 2.0.3 + is-weakmap: 2.0.2 + is-weakset: 2.0.4 + + which-typed-array@1.1.20: + dependencies: + available-typed-arrays: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.4 + for-each: 0.3.5 + get-proto: 1.0.1 + gopd: 1.2.0 + has-tostringtag: 1.0.2 + + which@2.0.2: + dependencies: + isexe: 2.0.0 + + word-wrap@1.2.5: {} + + yallist@3.1.1: {} + + yocto-queue@0.1.0: {} + + zod-validation-error@4.0.2(zod@4.3.6): + dependencies: + zod: 4.3.6 + + zod@4.3.6: {} diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml new file mode 100644 index 0000000..581a9d5 --- /dev/null +++ b/pnpm-workspace.yaml @@ -0,0 +1,3 @@ +ignoredBuiltDependencies: + - sharp + - unrs-resolver diff --git a/postcss.config.mjs b/postcss.config.mjs new file mode 100644 index 0000000..61e3684 --- /dev/null +++ b/postcss.config.mjs @@ -0,0 +1,7 @@ +const config = { + plugins: { + "@tailwindcss/postcss": {}, + }, +}; + +export default config; diff --git a/public/file.svg b/public/file.svg new file mode 100644 index 0000000..004145c --- /dev/null +++ b/public/file.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/globe.svg b/public/globe.svg new file mode 100644 index 0000000..567f17b --- /dev/null +++ b/public/globe.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/images/code.svg b/public/images/code.svg new file mode 100644 index 0000000..04e1cd8 --- /dev/null +++ b/public/images/code.svg @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/public/images/group.svg b/public/images/group.svg new file mode 100644 index 0000000..507db71 --- /dev/null +++ b/public/images/group.svg @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/public/images/laptop.svg b/public/images/laptop.svg new file mode 100644 index 0000000..8814a82 --- /dev/null +++ b/public/images/laptop.svg @@ -0,0 +1,64 @@ + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/public/images/touxiang.png b/public/images/touxiang.png new file mode 100644 index 0000000000000000000000000000000000000000..4343521b5fe4e6cc42aac715a3a1c24bbdb59f03 GIT binary patch literal 157238 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

6Cq9100^qlajA|?}wonQy8Nt3bwYk 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 TS + + \ No newline at end of file diff --git a/public/next.svg b/public/next.svg new file mode 100644 index 0000000..5174b28 --- /dev/null +++ b/public/next.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/vercel.svg b/public/vercel.svg new file mode 100644 index 0000000..7705396 --- /dev/null +++ b/public/vercel.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/public/window.svg b/public/window.svg new file mode 100644 index 0000000..b2b2a44 --- /dev/null +++ b/public/window.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..3a13f90 --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,34 @@ +{ + "compilerOptions": { + "target": "ES2017", + "lib": ["dom", "dom.iterable", "esnext"], + "allowJs": true, + "skipLibCheck": true, + "strict": true, + "noEmit": true, + "esModuleInterop": true, + "module": "esnext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "react-jsx", + "incremental": true, + "plugins": [ + { + "name": "next" + } + ], + "paths": { + "@/*": ["./*"] + } + }, + "include": [ + "next-env.d.ts", + "**/*.ts", + "**/*.tsx", + ".next/types/**/*.ts", + ".next/dev/types/**/*.ts", + "**/*.mts" + ], + "exclude": ["node_modules"] +}