From fad9ae4f6b70e19da41b05de2ba145d8e0848fa9 Mon Sep 17 00:00:00 2001 From: Snow Lee Date: Sun, 19 Jul 2026 13:15:24 -0700 Subject: [PATCH] feat(web): react-table admin tables + RHF/zod forms; docs reflect the Stack A dependency set Members and shares-audit render through @tanstack/react-table (sortable, spec-first); org rename, hub signup policy, and onboarding create/join are react-hook-form + zod with inline errors replacing toast-on-typo. 55/55. Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_01VbiaaVM2ACxeRi8ySG9ybc --- CLAUDE.md | 2 +- README.md | 6 +- internal/webapp/frontend/e2e/admin.spec.ts | 15 +- .../frontend/src/components/EmptyState.tsx | 81 +++- .../frontend/src/components/HubSettings.tsx | 95 ++-- .../frontend/src/components/OrgAdmin.tsx | 419 ++++++++++++------ internal/webapp/frontend/src/style.css | 15 + .../webapp/static/assets/index-CKZ61mhX.js | 117 +++++ ...{index-MFSXFxvy.css => index-DNKHQHAn.css} | 2 +- .../webapp/static/assets/index-ESH0Hl7P.js | 51 --- internal/webapp/static/index.html | 4 +- 11 files changed, 544 insertions(+), 263 deletions(-) create mode 100644 internal/webapp/static/assets/index-CKZ61mhX.js rename internal/webapp/static/assets/{index-MFSXFxvy.css => index-DNKHQHAn.css} (56%) delete mode 100644 internal/webapp/static/assets/index-ESH0Hl7P.js diff --git a/CLAUDE.md b/CLAUDE.md index 0c964ab..71d244c 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -44,7 +44,7 @@ Package roles (`internal/`): - **`syncer`** — the heart: `Session.Cycle()` runs one pass: scan → commit local ops → pull peer journals → preserve conflict copies → materialize merged state → push blobs + own journal. Read the package doc comment in `syncer.go` first. `ignore.go` holds the path filter (`.bdriveignore` rules + the `.bdrive` include list), applied symmetrically in scan and materialize; a newly filtered path is dropped from the cache *without* a delete op so opting out locally never deletes remotely. - **`daemon`** — per-mount background loop (detached process, `daemon.pid`/`daemon.log` in the mount's volume dir). Scans every `--scan-interval` (3s), talks to the remote every `--remote-interval` (10s) or immediately after local edits. Re-reads `.bdrive/config.json` each tick; if it vanishes (folder moved/renamed/deleted) the daemon **exits cleanly without propagating deletes** — the next bdrive command at the new location resumes it (self-heal on next touch). - **`config`** — global state under `$BDRIVE_HOME` (default `~/.bdrive`): device identity (`device.json`), settings (`settings.json`: default server + device token + signed-in account), and the mount registry (`mounts.json`, keyed by **stable mount id**, holding only each mount's last-known path). The per-folder `.bdrive/` directory (`project.go`) holds `config.json` with the mount id + volume/remote/include; **nothing is keyed by the folder path**, so renames/moves are free — `ResolveMount` self-heals the registry path, and the volume store lives at `~/.bdrive/volumes//`. `.bdrive/` is never synced and holds no credentials. -- **`webapp`** — the `bdrive web` server, in two modes. Single-volume: `Source` is a `DirSource` (plain folder from disk) or `RemoteSource` (folds journals into a file tree with per-file provenance). Hub: `Root` + `Projects` host many projects on one storage root, each under `//` via `remote.Prefixed`; `ProjectDB` (`projects.go`) is a file-backed registry (JSON, loaded at open, rewritten atomically per change) with create-or-join-by-name semantics, name-scoped per organization. Orgs (`orgs.go`, file-backed `orgs.json`) wall projects by membership (email → owner|member): every per-project route — viewer APIs, uploads, history, shares management, the `/store/*` sync proxy — 403s for non-members, `/api/projects` lists only your orgs' projects, owners mint expiring multi-use invite links (`/join/`), and a pre-org hub migrates all projects into a "default" org (all existing accounts join, oldest owns) at startup. `QuotaProvider` (`quota.go`) is the plan-enforcement seam mirroring `AuthProvider` — CheckWrite/RecordUsage on every write path, CheckSeat on invite redemption; OSS ships only `UnlimitedQuota`, managed deployments swap the provider. Renders markdown (goldmark + Obsidian `[[wikilinks]]`). With `--upload` it accepts writes: browser uploads (`upload.go` — direct-to-storage via presigned URLs when the backend implements `remote.PutSigner`, relayed otherwise; ops journaled under the server's own device) and the per-project `/api/p//store/*` proxy (`store.go`) that whole devices sync through — the `https://` remote backend (`remote/http.go`) is its client; journals are never presigned, only immutable blobs. Frontend is a React + TypeScript app (`webapp/frontend/`, Vite; runtime deps only react, react-dom, @tanstack/react-query, lucide-react) whose **built output is committed** at `webapp/static/` — the `go:embed static` target — so plain `go build` needs no Node; after any `frontend/src` change run `npm run build` there and commit the new `static/` (`frontend/check-dist.sh` verifies freshness; e2e suite: `npm run e2e` — Playwright against the seeded harness in `e2e_serve_test.go`, port 8993). It learns everything from `/api/config` (+ `/api/projects` in hub mode) and never sees storage info or credentials. It uses native History-API path routing (`//` in hub mode, `/` in volume mode, `/join/` for invites — no `#`, slashes stay literal). **Every user-facing page owns a URL path**: new surfaces are view routes (`//{insights|history|install|settings}[/]`, `VIEW_ROUTES` in `router.ts`) so deep links, reload, and back/forward always work — never URL-less panel state (the org/hub admin panels are the legacy exceptions; don't add more) implemented by the in-repo synchronous router `frontend/src/nav.ts` + `router.ts` (deliberately NOT a router library: react-router v7's startTransition navigation left stale views on screen); `Server.frontend` serves `index.html` as the SPA fallback for any non-asset, non-API/auth/share route so deep links and refreshes resolve (hashed `assets/*` are cached immutable, everything else no-cache), and all client API/asset URLs are root-absolute so a deep path doesn't break relative resolution. Rendered markdown is transformed as a string before mounting and link clicks are delegated on the container — never patch the `dangerouslySetInnerHTML` subtree after commit (React re-applies the markup on unrelated updates and discards DOM patches). **Read heat** (`reads.go`): a `ReadLedger` (hub-only, nil = off, config `reads` block) aggregates read telemetry into daily per-actor buckets, debounced to 10-minute visits, folded into all-time rows past `retention_days` — viewer file/render/download = human (recorded via the project id the `proj()` resolver stashes in the request context), `/s/*` hits = share, device-reported reads (`POST /api/p//reads`) = agent; `/store/*` replication and history `/blob` views are NEVER reads. `GET /api/p//heat?prefix=&days=` returns counts/distinct-readers/last-read only — actor identities (the email/device/token in the buckets) must never appear in an API response. Recording and flushing degrade silently (log once); telemetry must never fail a request or a sync cycle. The frontend shows heat dots on folder listings for members and an admin/org-owner Insights quadrant (reads × staleness). **Hub metadata persistence** (accounts, projects, orgs+invites, shares, devices, read buckets — never blobs or journals) sits behind a pluggable `MetaStore` of typed repos (`db.go`): the service structs (`BuiltinAuth`, `OrgDB`, `ProjectDB`, `ShareDB`, `DeviceRegistry`, `ReadLedger`) keep their in-memory maps + logic and persist each change as one record through a repo (the `ReadRepo` alone is batch-oriented — one flush, one write). Two backends — `db_file.go` (the historical JSON files, still the zero-dep default, reached via the `Open*(path)` constructors) and `db_sql.go` (one `database/sql` impl over pure-Go drivers: `modernc.org/sqlite` locally, `jackc/pgx` for Postgres/Supabase, portable schema + idempotent migrations + transactional multi-row writes). `web.go`'s `database` config (`{driver:file|sqlite|postgres, dsn}`) selects it; file is default and untouched. `db_conformance_test.go` runs the same service ops against every backend. +- **`webapp`** — the `bdrive web` server, in two modes. Single-volume: `Source` is a `DirSource` (plain folder from disk) or `RemoteSource` (folds journals into a file tree with per-file provenance). Hub: `Root` + `Projects` host many projects on one storage root, each under `//` via `remote.Prefixed`; `ProjectDB` (`projects.go`) is a file-backed registry (JSON, loaded at open, rewritten atomically per change) with create-or-join-by-name semantics, name-scoped per organization. Orgs (`orgs.go`, file-backed `orgs.json`) wall projects by membership (email → owner|member): every per-project route — viewer APIs, uploads, history, shares management, the `/store/*` sync proxy — 403s for non-members, `/api/projects` lists only your orgs' projects, owners mint expiring multi-use invite links (`/join/`), and a pre-org hub migrates all projects into a "default" org (all existing accounts join, oldest owns) at startup. `QuotaProvider` (`quota.go`) is the plan-enforcement seam mirroring `AuthProvider` — CheckWrite/RecordUsage on every write path, CheckSeat on invite redemption; OSS ships only `UnlimitedQuota`, managed deployments swap the provider. Renders markdown (goldmark + Obsidian `[[wikilinks]]`). With `--upload` it accepts writes: browser uploads (`upload.go` — direct-to-storage via presigned URLs when the backend implements `remote.PutSigner`, relayed otherwise; ops journaled under the server's own device) and the per-project `/api/p//store/*` proxy (`store.go`) that whole devices sync through — the `https://` remote backend (`remote/http.go`) is its client; journals are never presigned, only immutable blobs. Frontend is a React + TypeScript app (`webapp/frontend/`, Vite + Tailwind v4 + shadcn/ui — Radix-based components copied into `src/components/ui`, themed from the BearDrive tokens in `src/tw.css`; TanStack query/table/virtual, react-hook-form + zod, cmdk, sonner, lucide-react) whose **built output is committed** at `webapp/static/` — the `go:embed static` target — so plain `go build` needs no Node; after any `frontend/src` change run `npm run build` there and commit the new `static/` (`frontend/check-dist.sh` verifies freshness; e2e suite: `npm run e2e` — Playwright against the seeded harness in `e2e_serve_test.go`, port 8993). It learns everything from `/api/config` (+ `/api/projects` in hub mode) and never sees storage info or credentials. It uses native History-API path routing (`//` in hub mode, `/` in volume mode, `/join/` for invites — no `#`, slashes stay literal). **Every user-facing page owns a URL path**: new surfaces are view routes (`//{insights|history|install|settings}[/]`, `VIEW_ROUTES` in `router.ts`) so deep links, reload, and back/forward always work — never URL-less panel state (the org/hub admin panels are the legacy exceptions; don't add more) implemented by the in-repo synchronous router `frontend/src/nav.ts` + `router.ts` (deliberately NOT a router library: react-router v7's startTransition navigation left stale views on screen); `Server.frontend` serves `index.html` as the SPA fallback for any non-asset, non-API/auth/share route so deep links and refreshes resolve (hashed `assets/*` are cached immutable, everything else no-cache), and all client API/asset URLs are root-absolute so a deep path doesn't break relative resolution. Rendered markdown is transformed as a string before mounting and link clicks are delegated on the container — never patch the `dangerouslySetInnerHTML` subtree after commit (React re-applies the markup on unrelated updates and discards DOM patches). **Read heat** (`reads.go`): a `ReadLedger` (hub-only, nil = off, config `reads` block) aggregates read telemetry into daily per-actor buckets, debounced to 10-minute visits, folded into all-time rows past `retention_days` — viewer file/render/download = human (recorded via the project id the `proj()` resolver stashes in the request context), `/s/*` hits = share, device-reported reads (`POST /api/p//reads`) = agent; `/store/*` replication and history `/blob` views are NEVER reads. `GET /api/p//heat?prefix=&days=` returns counts/distinct-readers/last-read only — actor identities (the email/device/token in the buckets) must never appear in an API response. Recording and flushing degrade silently (log once); telemetry must never fail a request or a sync cycle. The frontend shows heat dots on folder listings for members and an admin/org-owner Insights quadrant (reads × staleness). **Hub metadata persistence** (accounts, projects, orgs+invites, shares, devices, read buckets — never blobs or journals) sits behind a pluggable `MetaStore` of typed repos (`db.go`): the service structs (`BuiltinAuth`, `OrgDB`, `ProjectDB`, `ShareDB`, `DeviceRegistry`, `ReadLedger`) keep their in-memory maps + logic and persist each change as one record through a repo (the `ReadRepo` alone is batch-oriented — one flush, one write). Two backends — `db_file.go` (the historical JSON files, still the zero-dep default, reached via the `Open*(path)` constructors) and `db_sql.go` (one `database/sql` impl over pure-Go drivers: `modernc.org/sqlite` locally, `jackc/pgx` for Postgres/Supabase, portable schema + idempotent migrations + transactional multi-row writes). `web.go`'s `database` config (`{driver:file|sqlite|postgres, dsn}`) selects it; file is default and untouched. `db_conformance_test.go` runs the same service ops against every backend. `cmd/bdrive/` is a thin cobra CLI over these packages (`login`, `logout`, `init`, `stop`, `sync`, `status`, `log`, `url`, `web`, `whoami`, `daemon`, `version` — `mnt`/`umnt`/`remote` are gone; `init` is the front door and `stop` pauses). `bdrive login` signs the device in (bare form uses the remembered server or `config.DefaultServer` = beardrive.ai; loopback-callback browser flow in `login.go`, `--device` for headless) and stores server+token+account in `settings.json`; `bdrive logout` clears the saved token+account (keeps the remembered server unless `--forget`). Switching hubs is `bdrive login ` then re-`init` — `init` is the only thing that writes a folder's remote (always a hub, `server + "/p/" + id`); there is no client command to point a folder at a raw bucket. `bdrive init` is interactive on a TTY (survey menus: create-new vs connect-existing with a project list; whole-folder vs `--shared `, which becomes the include list) with full flag bypass (`--name/--project/--shared/--yes`) and never prompts without a TTY; it runs the login flow first when there is no session, writes `.bdrive/config.json`, seeds `.bdriveignore`, and starts sync via `startSync`; re-running it resumes — including after a folder move. `bdrive web -c config.json` configures the server from a file, explicit flags winning. diff --git a/README.md b/README.md index 9b6e36c..7a7fe42 100644 --- a/README.md +++ b/README.md @@ -494,9 +494,9 @@ conflicts. Set `BDRIVE_HOME` to relocate all beardrive state (used heavily in te ### Web frontend The hub's web UI is a React + TypeScript app in `internal/webapp/frontend` -(Vite; runtime dependencies are just react, react-dom, -@tanstack/react-query, and lucide-react for icons — routing is a small -in-repo history router). Its +(Vite + Tailwind v4 + shadcn/ui components owned in-repo; TanStack +query/table/virtual, react-hook-form + zod, cmdk, sonner, lucide-react — +routing stays a small in-repo history router). Its **built output is committed** at `internal/webapp/static`, the `go:embed` target, so building or `go install`-ing the binary never needs Node. diff --git a/internal/webapp/frontend/e2e/admin.spec.ts b/internal/webapp/frontend/e2e/admin.spec.ts index 1d2ca73..33eedc2 100644 --- a/internal/webapp/frontend/e2e/admin.spec.ts +++ b/internal/webapp/frontend/e2e/admin.spec.ts @@ -116,10 +116,10 @@ test("hub settings: policy view, save round-trip, pending queue empty", async ({ // Toggle approval on, save, revert const app = page.locator(".admin-item.toggle").nth(1).locator("input"); await app.check(); - await page.click(".admin > .pbtn"); + await page.click('.admin button:has-text("Save policy")'); await expectToast(page, "policy saved"); await app.uncheck(); - await page.click(".admin > .pbtn"); + await page.click('.admin button:has-text("Save policy")'); await expectToast(page, "policy saved"); await expect(page.locator(".admin-empty", { hasText: "No one is waiting" })).toBeVisible(); }); @@ -133,3 +133,14 @@ test("navigating away closes an open admin panel", async ({ page }) => { await expect(page.locator("#content h1")).toHaveText("Wiki"); await expect(page.locator(".admin")).toHaveCount(0); }); + +test("members table sorts by email", async ({ page }) => { + await login(page); + await openOrgSettings(page); + const emails = page.locator(".admin-table .admin-item .ai-main"); + await expect(emails.first()).toBeVisible(); + const before = await emails.allTextContents(); + await page.click('.admin-table th:has-text("Member")'); + const after = await emails.allTextContents(); + expect([...before].reverse()).toEqual(after); +}); diff --git a/internal/webapp/frontend/src/components/EmptyState.tsx b/internal/webapp/frontend/src/components/EmptyState.tsx index 5f99b8f..fea42c7 100644 --- a/internal/webapp/frontend/src/components/EmptyState.tsx +++ b/internal/webapp/frontend/src/components/EmptyState.tsx @@ -1,10 +1,25 @@ -import { useRef } from "react"; +import { useForm } from "react-hook-form"; +import { zodResolver } from "@hookform/resolvers/zod"; +import { z } from "zod"; import { Button } from "@/components/ui/button"; -import { toast } from "../toast"; // Onboarding: a signed-in account with no projects shouldn't hit a blank // sidebar. Explain that access comes from an invite, let them paste one, -// and — since any member can — offer to start a new project. +// and — since any member can — offer to start a new project. Both inputs +// are RHF+zod forms with inline errors (no toast-on-typo). + +const joinSchema = z.object({ + invite: z + .string() + .trim() + .refine((v) => /join\/([0-9a-f]+)/.test(v) || /^[0-9a-f]{8,}$/.test(v), { + message: "That doesn't look like an invite link.", + }), +}); +const createSchema = z.object({ + name: z.string().trim().min(1, "Give the project a name.").max(60, "Keep it under 60 characters."), +}); + export function EmptyState({ authEnabled, onCreate, @@ -12,18 +27,14 @@ export function EmptyState({ authEnabled: boolean; onCreate: (name: string) => void; }) { - const invite = useRef(null); - const name = useRef(null); - - const join = () => { - const v = invite.current!.value.trim(); - const m = v.match(/join\/([0-9a-f]+)/) || v.match(/^([0-9a-f]{8,})$/); - if (!m) { - toast("That doesn't look like an invite link.", true); - return; - } - location.href = "/join/" + m[1]; - }; + const joinForm = useForm>({ + resolver: zodResolver(joinSchema), + defaultValues: { invite: "" }, + }); + const createForm = useForm>({ + resolver: zodResolver(createSchema), + defaultValues: { name: "" }, + }); return (
@@ -33,23 +44,47 @@ export function EmptyState({

Have an invite link?

A teammate can send you a join link. Paste it here:

-
- - -
+ + {joinForm.formState.errors.invite && ( +

{joinForm.formState.errors.invite.message}

+ )}
)}

Or start a new project

Create a shared space for your team's files.

-
- - -
+ + {createForm.formState.errors.name && ( +

{createForm.formState.errors.name.message}

+ )}
); diff --git a/internal/webapp/frontend/src/components/HubSettings.tsx b/internal/webapp/frontend/src/components/HubSettings.tsx index 6c0ebb3..a42d822 100644 --- a/internal/webapp/frontend/src/components/HubSettings.tsx +++ b/internal/webapp/frontend/src/components/HubSettings.tsx @@ -1,9 +1,19 @@ -import { useEffect, useState } from "react"; +import { useEffect } from "react"; import { useQuery, useQueryClient } from "@tanstack/react-query"; +import { useForm } from "react-hook-form"; +import { zodResolver } from "@hookform/resolvers/zod"; +import { z } from "zod"; import { getJSON, postJSON } from "../api/http"; import type { AdminPolicy } from "../api/types"; import { usePending } from "../hooks/useHub"; import { toast } from "../toast"; +import { Button } from "@/components/ui/button"; + +const policySchema = z.object({ + require_verification: z.boolean(), + require_approval: z.boolean(), +}); +type PolicyForm = z.infer; /* Hub-admin settings: signup/access policy. Verification & approval are live toggles; the domain allowlist and admin list are shown read-only @@ -16,14 +26,12 @@ export function HubSettings() { queryFn: () => getJSON("/api/admin/policy"), }); const { data: pending } = usePending(true); - const [ver, setVer] = useState(false); - const [app, setApp] = useState(false); - useEffect(() => { - if (pol) { - setVer(pol.require_verification && pol.mailer); - setApp(pol.require_approval); - } - }, [pol]); + const form = useForm({ + resolver: zodResolver(policySchema), + values: pol + ? { require_verification: pol.require_verification && pol.mailer, require_approval: pol.require_approval } + : { require_verification: false, require_approval: false }, + }); useEffect(() => { if (error) toast((error as Error).message, true); }, [error]); @@ -47,40 +55,38 @@ export function HubSettings() {

New-account vetting

-
- - -
- +
+ + +
+ +

Who can sign up

@@ -116,9 +122,9 @@ export function HubSettings() { {(pending || []).map((u) => (
{(u.name ? u.name + " · " : "") + u.email} - + @@ -132,15 +138,13 @@ export function HubSettings() { function PolicyToggle({ label, desc, - checked, disabled, - onChange, + inputProps, }: { label: string; desc: string; - checked: boolean; disabled?: boolean; - onChange: (v: boolean) => void; + inputProps: ReturnType>["register"]>; }) { return ( ); } diff --git a/internal/webapp/frontend/src/components/OrgAdmin.tsx b/internal/webapp/frontend/src/components/OrgAdmin.tsx index f12eb03..91a701d 100644 --- a/internal/webapp/frontend/src/components/OrgAdmin.tsx +++ b/internal/webapp/frontend/src/components/OrgAdmin.tsx @@ -1,14 +1,36 @@ -import { useState } from "react"; +import { useMemo, useState } from "react"; import { useQuery, useQueryClient } from "@tanstack/react-query"; +import { + createColumnHelper, + flexRender, + getCoreRowModel, + getSortedRowModel, + useReactTable, + type SortingState, +} from "@tanstack/react-table"; +import { useForm } from "react-hook-form"; +import { zodResolver } from "@hookform/resolvers/zod"; +import { z } from "zod"; import { api, getJSON, postJSON } from "../api/http"; import type { Org, OrgInviteInfo, OrgShareInfo, Project } from "../api/types"; import { modalConfirm, modalPrompt } from "../modal"; import { toast } from "../toast"; import { copyText } from "../util"; +import { Button } from "@/components/ui/button"; +import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from "@/components/ui/table"; /* The org admin panel: members (owners can change roles / remove), rename, projects (rename / delete), invite links (create / revoke), and an - org-wide audit of public shares. */ + org-wide audit of public shares. Members and shares render through + react-table (sortable); the rename is an RHF+zod form. */ + +const renameSchema = z.object({ + name: z.string().trim().min(1, "Give the organization a name.").max(60, "Keep it under 60 characters."), +}); +type RenameForm = z.infer; + +type Member = Org["members"][number]; + export function OrgAdmin({ org, projects, @@ -22,12 +44,16 @@ export function OrgAdmin({ }) { const qc = useQueryClient(); const owner = org.role === "owner"; - const [renameVal, setRenameVal] = useState(org.name); const refreshOrgs = () => qc.invalidateQueries({ queryKey: ["orgs"] }); const refreshInvites = () => qc.invalidateQueries({ queryKey: ["invites", org.id] }); const refreshShares = () => qc.invalidateQueries({ queryKey: ["orgShares", org.id] }); + const renameForm = useForm({ + resolver: zodResolver(renameSchema), + values: { name: org.name }, + }); + const { data: invites } = useQuery({ queryKey: ["invites", org.id], queryFn: () => getJSON<{ invites: OrgInviteInfo[] }>(`/api/orgs/${org.id}/invites`), @@ -48,90 +74,30 @@ export function OrgAdmin({

{org.name + (owner ? "" : " · member")}

{owner && ( -
- setRenameVal(e.target.value)} - /> - -
+ + {renameForm.formState.errors.name && ( + {renameForm.formState.errors.name.message} + )} + )}

Members

-
- {org.members.map((m) => { - const isSelf = !!myEmail && m.email.toLowerCase() === myEmail.toLowerCase(); - return ( -
- {m.email + (isSelf ? " (you)" : "")} - {owner && !isSelf ? ( - <> - - - - ) : ( - {m.role} - )} -
- ); - })} -
+ {owner && ( <> @@ -141,8 +107,8 @@ export function OrgAdmin({ {orgProjects.map((p) => (
{p.name} - + +
{invites && invites.length === 0 && ( @@ -252,51 +218,240 @@ export function OrgAdmin({

Public share links

-
- {shares && shares.length === 0 &&
No public shares.
} - {(shares || []).map((sh) => ( -
- window.open(sh.url, "_blank")} - > - {sh.path} - - - {(sh.project_name || "") + - (sh.creator ? " · by " + sh.creator : "") + - (sh.created ? " · " + new Date(sh.created).toLocaleDateString() : "")} - - -
- ))} -
+ )}
); } + +/* ---- members (react-table: sortable email/role) ---- */ + +function MembersTable({ + org, + owner, + myEmail, + onChanged, +}: { + org: Org; + owner: boolean; + myEmail: string; + onChanged: () => void; +}) { + const [sorting, setSorting] = useState([{ id: "email", desc: false }]); + const col = useMemo(() => createColumnHelper(), []); + + const columns = useMemo( + () => [ + col.accessor("email", { + id: "email", + header: "Member", + cell: (c) => { + const isSelf = !!myEmail && c.getValue().toLowerCase() === myEmail.toLowerCase(); + return {c.getValue() + (isSelf ? " (you)" : "")}; + }, + }), + col.accessor("role", { + id: "role", + header: "Role", + cell: (c) => { + const m = c.row.original; + const isSelf = !!myEmail && m.email.toLowerCase() === myEmail.toLowerCase(); + if (!owner || isSelf) return {m.role}; + return ( + <> + + + + ); + }, + }), + ], + [col, org.id, org.name, owner, myEmail], + ); + + const table = useReactTable({ + data: org.members, + columns, + state: { sorting }, + onSortingChange: setSorting, + getCoreRowModel: getCoreRowModel(), + getSortedRowModel: getSortedRowModel(), + }); + + return ( + + + {table.getHeaderGroups().map((hg) => ( + + {hg.headers.map((h) => ( + + {flexRender(h.column.columnDef.header, h.getContext())} + {h.column.getIsSorted() === "asc" ? " ↑" : h.column.getIsSorted() === "desc" ? " ↓" : ""} + + ))} + + ))} + + + {table.getRowModel().rows.map((r) => ( + + {r.getVisibleCells().map((c) => ( + {flexRender(c.column.columnDef.cell, c.getContext())} + ))} + + ))} + +
+ ); +} + +/* ---- shares audit (react-table: sortable path/project) ---- */ + +function SharesTable({ + shares, + onChanged, +}: { + shares: OrgShareInfo[]; + onChanged: () => void; +}) { + const [sorting, setSorting] = useState([]); + const col = useMemo(() => createColumnHelper(), []); + const columns = useMemo( + () => [ + col.accessor("path", { + header: "Path", + cell: (c) => ( + window.open(c.row.original.url, "_blank")} + > + {c.getValue()} + + ), + }), + col.accessor((s) => s.project_name || "", { + id: "project", + header: "Project", + cell: (c) => ( + + {(c.getValue() || "") + + (c.row.original.creator ? " · by " + c.row.original.creator : "") + + (c.row.original.created ? " · " + new Date(c.row.original.created).toLocaleDateString() : "")} + + ), + }), + col.display({ + id: "actions", + header: "", + cell: (c) => ( + + ), + }), + ], + [col, onChanged], + ); + + const table = useReactTable({ + data: shares, + columns, + state: { sorting }, + onSortingChange: setSorting, + getCoreRowModel: getCoreRowModel(), + getSortedRowModel: getSortedRowModel(), + }); + + if (shares.length === 0) + return ( +
+
No public shares.
+
+ ); + + return ( + + + {table.getHeaderGroups().map((hg) => ( + + {hg.headers.map((h) => ( + + {flexRender(h.column.columnDef.header, h.getContext())} + + ))} + + ))} + + + {table.getRowModel().rows.map((r) => ( + + {r.getVisibleCells().map((c) => ( + {flexRender(c.column.columnDef.cell, c.getContext())} + ))} + + ))} + +
+ ); +} diff --git a/internal/webapp/frontend/src/style.css b/internal/webapp/frontend/src/style.css index 584b45b..ffdc422 100644 --- a/internal/webapp/frontend/src/style.css +++ b/internal/webapp/frontend/src/style.css @@ -136,6 +136,21 @@ button, input, a.btn { font-family: inherit; } #tree .row.collapsed .chev { transform: rotate(-90deg); } /* org bar */ +.field-err { color: var(--del); font-size: 12px; margin: 6px 2px 0; } + +/* react-table admin tables ride the .admin-item/.ai-* vocabulary */ +.admin-table { width: 100%; border-collapse: collapse; } +.admin-table th { + text-align: left; font-size: 11px; font-weight: 600; letter-spacing: .05em; + text-transform: uppercase; color: var(--text-ghost); padding: 6px 10px; + border-bottom: 1px solid var(--border); cursor: pointer; user-select: none; +} +.admin-table th:hover { color: var(--text-dim); } +.admin-table td { padding: 0; border-bottom: 1px solid var(--border); } +.admin-table tr.admin-item { display: table-row; } +.admin-table tr.admin-item td { padding: 8px 10px; } +.admin-table tr.admin-item td:first-child { width: 100%; } + /* ---- project menu ---- */ .nav-menu { list-style: none; margin: 6px 0 0; padding: 0; } .nav-menu .row .ico { width: 15px; height: 15px; flex: none; color: var(--text-ghost); } diff --git a/internal/webapp/static/assets/index-CKZ61mhX.js b/internal/webapp/static/assets/index-CKZ61mhX.js new file mode 100644 index 0000000..0f6bd01 --- /dev/null +++ b/internal/webapp/static/assets/index-CKZ61mhX.js @@ -0,0 +1,117 @@ +function rR(e,n){for(var r=0;ri[s]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const n=document.createElement("link").relList;if(n&&n.supports&&n.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))i(s);new MutationObserver(s=>{for(const u of s)if(u.type==="childList")for(const c of u.addedNodes)c.tagName==="LINK"&&c.rel==="modulepreload"&&i(c)}).observe(document,{childList:!0,subtree:!0});function r(s){const u={};return s.integrity&&(u.integrity=s.integrity),s.referrerPolicy&&(u.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?u.credentials="include":s.crossOrigin==="anonymous"?u.credentials="omit":u.credentials="same-origin",u}function i(s){if(s.ep)return;s.ep=!0;const u=r(s);fetch(s.href,u)}})();function zS(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var lh={exports:{}},Rs={};var M0;function oR(){if(M0)return Rs;M0=1;var e=Symbol.for("react.transitional.element"),n=Symbol.for("react.fragment");function r(i,s,u){var c=null;if(u!==void 0&&(c=""+u),s.key!==void 0&&(c=""+s.key),"key"in s){u={};for(var d in s)d!=="key"&&(u[d]=s[d])}else u=s;return s=u.ref,{$$typeof:e,type:i,key:c,ref:s!==void 0?s:null,props:u}}return Rs.Fragment=n,Rs.jsx=r,Rs.jsxs=r,Rs}var j0;function iR(){return j0||(j0=1,lh.exports=oR()),lh.exports}var v=iR(),uh={exports:{}},$e={};var z0;function aR(){if(z0)return $e;z0=1;var e=Symbol.for("react.transitional.element"),n=Symbol.for("react.portal"),r=Symbol.for("react.fragment"),i=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),u=Symbol.for("react.consumer"),c=Symbol.for("react.context"),d=Symbol.for("react.forward_ref"),h=Symbol.for("react.suspense"),m=Symbol.for("react.memo"),y=Symbol.for("react.lazy"),g=Symbol.for("react.activity"),b=Symbol.iterator;function S(z){return z===null||typeof z!="object"?null:(z=b&&z[b]||z["@@iterator"],typeof z=="function"?z:null)}var _={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},C=Object.assign,E={};function T(z,j,H){this.props=z,this.context=j,this.refs=E,this.updater=H||_}T.prototype.isReactComponent={},T.prototype.setState=function(z,j){if(typeof z!="object"&&typeof z!="function"&&z!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,z,j,"setState")},T.prototype.forceUpdate=function(z){this.updater.enqueueForceUpdate(this,z,"forceUpdate")};function O(){}O.prototype=T.prototype;function A(z,j,H){this.props=z,this.context=j,this.refs=E,this.updater=H||_}var k=A.prototype=new O;k.constructor=A,C(k,T.prototype),k.isPureReactComponent=!0;var L=Array.isArray;function U(){}var B={H:null,A:null,T:null,S:null},P=Object.prototype.hasOwnProperty;function ve(z,j,H){var Q=H.ref;return{$$typeof:e,type:z,key:j,ref:Q!==void 0?Q:null,props:H}}function ge(z,j){return ve(z.type,j,z.props)}function de(z){return typeof z=="object"&&z!==null&&z.$$typeof===e}function le(z){var j={"=":"=0",":":"=2"};return"$"+z.replace(/[=:]/g,function(H){return j[H]})}var ae=/\/+/g;function he(z,j){return typeof z=="object"&&z!==null&&z.key!=null?le(""+z.key):j.toString(36)}function ye(z){switch(z.status){case"fulfilled":return z.value;case"rejected":throw z.reason;default:switch(typeof z.status=="string"?z.then(U,U):(z.status="pending",z.then(function(j){z.status==="pending"&&(z.status="fulfilled",z.value=j)},function(j){z.status==="pending"&&(z.status="rejected",z.reason=j)})),z.status){case"fulfilled":return z.value;case"rejected":throw z.reason}}throw z}function N(z,j,H,Q,Z){var re=typeof z;(re==="undefined"||re==="boolean")&&(z=null);var ee=!1;if(z===null)ee=!0;else switch(re){case"bigint":case"string":case"number":ee=!0;break;case"object":switch(z.$$typeof){case e:case n:ee=!0;break;case y:return ee=z._init,N(ee(z._payload),j,H,Q,Z)}}if(ee)return Z=Z(z),ee=Q===""?"."+he(z,0):Q,L(Z)?(H="",ee!=null&&(H=ee.replace(ae,"$&/")+"/"),N(Z,j,H,"",function(ze){return ze})):Z!=null&&(de(Z)&&(Z=ge(Z,H+(Z.key==null||z&&z.key===Z.key?"":(""+Z.key).replace(ae,"$&/")+"/")+ee)),j.push(Z)),1;ee=0;var pe=Q===""?".":Q+":";if(L(z))for(var be=0;be>>1,W=N[J];if(0>>1;Js(H,ne))Qs(Z,H)?(N[J]=Z,N[Q]=ne,J=Q):(N[J]=H,N[j]=ne,J=j);else if(Qs(Z,ne))N[J]=Z,N[Q]=ne,J=Q;else break e}}return Y}function s(N,Y){var ne=N.sortIndex-Y.sortIndex;return ne!==0?ne:N.id-Y.id}if(e.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var u=performance;e.unstable_now=function(){return u.now()}}else{var c=Date,d=c.now();e.unstable_now=function(){return c.now()-d}}var h=[],m=[],y=1,g=null,b=3,S=!1,_=!1,C=!1,E=!1,T=typeof setTimeout=="function"?setTimeout:null,O=typeof clearTimeout=="function"?clearTimeout:null,A=typeof setImmediate<"u"?setImmediate:null;function k(N){for(var Y=r(m);Y!==null;){if(Y.callback===null)i(m);else if(Y.startTime<=N)i(m),Y.sortIndex=Y.expirationTime,n(h,Y);else break;Y=r(m)}}function L(N){if(C=!1,k(N),!_)if(r(h)!==null)_=!0,U||(U=!0,le());else{var Y=r(m);Y!==null&&ye(L,Y.startTime-N)}}var U=!1,B=-1,P=5,ve=-1;function ge(){return E?!0:!(e.unstable_now()-veN&&ge());){var J=g.callback;if(typeof J=="function"){g.callback=null,b=g.priorityLevel;var W=J(g.expirationTime<=N);if(N=e.unstable_now(),typeof W=="function"){g.callback=W,k(N),Y=!0;break t}g===r(h)&&i(h),k(N)}else i(h);g=r(h)}if(g!==null)Y=!0;else{var z=r(m);z!==null&&ye(L,z.startTime-N),Y=!1}}break e}finally{g=null,b=ne,S=!1}Y=void 0}}finally{Y?le():U=!1}}}var le;if(typeof A=="function")le=function(){A(de)};else if(typeof MessageChannel<"u"){var ae=new MessageChannel,he=ae.port2;ae.port1.onmessage=de,le=function(){he.postMessage(null)}}else le=function(){T(de,0)};function ye(N,Y){B=T(function(){N(e.unstable_now())},Y)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(N){N.callback=null},e.unstable_forceFrameRate=function(N){0>N||125J?(N.sortIndex=ne,n(m,N),r(h)===null&&N===r(m)&&(C?(O(B),B=-1):C=!0,ye(L,ne-J))):(N.sortIndex=W,n(h,N),_||S||(_=!0,U||(U=!0,le()))),N},e.unstable_shouldYield=ge,e.unstable_wrapCallback=function(N){var Y=b;return function(){var ne=b;b=Y;try{return N.apply(this,arguments)}finally{b=ne}}}})(fh)),fh}var k0;function lR(){return k0||(k0=1,dh.exports=sR()),dh.exports}var hh={exports:{}},cn={};var L0;function uR(){if(L0)return cn;L0=1;var e=Mm();function n(h){var m="https://react.dev/errors/"+h;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(n){console.error(n)}}return e(),hh.exports=uR(),hh.exports}var $0;function cR(){if($0)return Ts;$0=1;var e=lR(),n=Mm(),r=DS();function i(t){var o="https://react.dev/errors/"+t;if(1W||(t.current=J[W],J[W]=null,W--)}function H(t,o){W++,J[W]=t.current,t.current=o}var Q=z(null),Z=z(null),re=z(null),ee=z(null);function pe(t,o){switch(H(re,o),H(Z,t),H(Q,null),o.nodeType){case 9:case 11:t=(t=o.documentElement)&&(t=t.namespaceURI)?Wy(t):0;break;default:if(t=o.tagName,o=o.namespaceURI)o=Wy(o),t=e0(o,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}j(Q),H(Q,t)}function be(){j(Q),j(Z),j(re)}function ze(t){t.memoizedState!==null&&H(ee,t);var o=Q.current,a=e0(o,t.type);o!==a&&(H(Z,t),H(Q,a))}function Ie(t){Z.current===t&&(j(Q),j(Z)),ee.current===t&&(j(ee),ws._currentValue=ne)}var Ve,st;function Xe(t){if(Ve===void 0)try{throw Error()}catch(a){var o=a.stack.trim().match(/\n( *(at )?)/);Ve=o&&o[1]||"",st=-1)":-1f||D[l]!==G[f]){var te=` +`+D[l].replace(" at new "," at ");return t.displayName&&te.includes("")&&(te=te.replace("",t.displayName)),te}while(1<=l&&0<=f);break}}}finally{Xt=!1,Error.prepareStackTrace=a}return(a=t?t.displayName||t.name:"")?Xe(a):""}function mt(t,o){switch(t.tag){case 26:case 27:case 5:return Xe(t.type);case 16:return Xe("Lazy");case 13:return t.child!==o&&o!==null?Xe("Suspense Fallback"):Xe("Suspense");case 19:return Xe("SuspenseList");case 0:case 15:return Dt(t.type,!1);case 11:return Dt(t.type.render,!1);case 1:return Dt(t.type,!0);case 31:return Xe("Activity");default:return""}}function pr(t){try{var o="",a=null;do o+=mt(t,a),a=t,t=t.return;while(t);return o}catch(l){return` +Error generating stack: `+l.message+` +`+l.stack}}var Ht=Object.prototype.hasOwnProperty,Le=e.unstable_scheduleCallback,Be=e.unstable_cancelCallback,He=e.unstable_shouldYield,Un=e.unstable_requestPaint,Nt=e.unstable_now,eo=e.unstable_getCurrentPriorityLevel,Ar=e.unstable_ImmediatePriority,Ri=e.unstable_UserBlockingPriority,to=e.unstable_NormalPriority,Ti=e.unstable_LowPriority,Hn=e.unstable_IdlePriority,M=e.log,$=e.unstable_setDisableYieldValue,V=null,se=null;function ce(t){if(typeof M=="function"&&$(t),se&&typeof se.setStrictMode=="function")try{se.setStrictMode(V,t)}catch{}}var me=Math.clz32?Math.clz32:Te,Se=Math.log,xe=Math.LN2;function Te(t){return t>>>=0,t===0?32:31-(Se(t)/xe|0)|0}var nt=256,_t=262144,Jt=4194304;function kt(t){var o=t&42;if(o!==0)return o;switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function Me(t,o,a){var l=t.pendingLanes;if(l===0)return 0;var f=0,p=t.suspendedLanes,w=t.pingedLanes;t=t.warmLanes;var R=l&134217727;return R!==0?(l=R&~p,l!==0?f=kt(l):(w&=R,w!==0?f=kt(w):a||(a=R&~t,a!==0&&(f=kt(a))))):(R=l&~p,R!==0?f=kt(R):w!==0?f=kt(w):a||(a=l&~t,a!==0&&(f=kt(a)))),f===0?0:o!==0&&o!==f&&(o&p)===0&&(p=f&-f,a=o&-o,p>=a||p===32&&(a&4194048)!==0)?o:f}function pt(t,o){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&o)===0}function bt(t,o){switch(t){case 1:case 2:case 4:case 8:case 64:return o+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return o+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function qt(){var t=Jt;return Jt<<=1,(Jt&62914560)===0&&(Jt=4194304),t}function rr(t){for(var o=[],a=0;31>a;a++)o.push(t);return o}function Ct(t,o){t.pendingLanes|=o,o!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function gn(t,o,a,l,f,p){var w=t.pendingLanes;t.pendingLanes=a,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=a,t.entangledLanes&=a,t.errorRecoveryDisabledLanes&=a,t.shellSuspendCounter=0;var R=t.entanglements,D=t.expirationTimes,G=t.hiddenUpdates;for(a=w&~a;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var X_=/[\n"\\]/g;function Bn(t){return t.replace(X_,function(o){return"\\"+o.charCodeAt(0).toString(16)+" "})}function td(t,o,a,l,f,p,w,R){t.name="",w!=null&&typeof w!="function"&&typeof w!="symbol"&&typeof w!="boolean"?t.type=w:t.removeAttribute("type"),o!=null?w==="number"?(o===0&&t.value===""||t.value!=o)&&(t.value=""+Pn(o)):t.value!==""+Pn(o)&&(t.value=""+Pn(o)):w!=="submit"&&w!=="reset"||t.removeAttribute("value"),o!=null?nd(t,w,Pn(o)):a!=null?nd(t,w,Pn(a)):l!=null&&t.removeAttribute("value"),f==null&&p!=null&&(t.defaultChecked=!!p),f!=null&&(t.checked=f&&typeof f!="function"&&typeof f!="symbol"),R!=null&&typeof R!="function"&&typeof R!="symbol"&&typeof R!="boolean"?t.name=""+Pn(R):t.removeAttribute("name")}function Zp(t,o,a,l,f,p,w,R){if(p!=null&&typeof p!="function"&&typeof p!="symbol"&&typeof p!="boolean"&&(t.type=p),o!=null||a!=null){if(!(p!=="submit"&&p!=="reset"||o!=null)){ed(t);return}a=a!=null?""+Pn(a):"",o=o!=null?""+Pn(o):a,R||o===t.value||(t.value=o),t.defaultValue=o}l=l??f,l=typeof l!="function"&&typeof l!="symbol"&&!!l,t.checked=R?t.checked:!!l,t.defaultChecked=!!l,w!=null&&typeof w!="function"&&typeof w!="symbol"&&typeof w!="boolean"&&(t.name=w),ed(t)}function nd(t,o,a){o==="number"&&ml(t.ownerDocument)===t||t.defaultValue===""+a||(t.defaultValue=""+a)}function Ni(t,o,a,l){if(t=t.options,o){o={};for(var f=0;f"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),sd=!1;if(zr)try{var Fa={};Object.defineProperty(Fa,"passive",{get:function(){sd=!0}}),window.addEventListener("test",Fa,Fa),window.removeEventListener("test",Fa,Fa)}catch{sd=!1}var ro=null,ld=null,gl=null;function eg(){if(gl)return gl;var t,o=ld,a=o.length,l,f="value"in ro?ro.value:ro.textContent,p=f.length;for(t=0;t=Pa),ag=" ",sg=!1;function lg(t,o){switch(t){case"keyup":return EC.indexOf(o.keyCode)!==-1;case"keydown":return o.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function ug(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var $i=!1;function TC(t,o){switch(t){case"compositionend":return ug(o);case"keypress":return o.which!==32?null:(sg=!0,ag);case"textInput":return t=o.data,t===ag&&sg?null:t;default:return null}}function OC(t,o){if($i)return t==="compositionend"||!hd&&lg(t,o)?(t=eg(),gl=ld=ro=null,$i=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(o.ctrlKey||o.altKey||o.metaKey)||o.ctrlKey&&o.altKey){if(o.char&&1=o)return{node:a,offset:o-t};t=l}e:{for(;a;){if(a.nextSibling){a=a.nextSibling;break e}a=a.parentNode}a=void 0}a=vg(a)}}function bg(t,o){return t&&o?t===o?!0:t&&t.nodeType===3?!1:o&&o.nodeType===3?bg(t,o.parentNode):"contains"in t?t.contains(o):t.compareDocumentPosition?!!(t.compareDocumentPosition(o)&16):!1:!1}function Sg(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var o=ml(t.document);o instanceof t.HTMLIFrameElement;){try{var a=typeof o.contentWindow.location.href=="string"}catch{a=!1}if(a)t=o.contentWindow;else break;o=ml(t.document)}return o}function gd(t){var o=t&&t.nodeName&&t.nodeName.toLowerCase();return o&&(o==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||o==="textarea"||t.contentEditable==="true")}var LC=zr&&"documentMode"in document&&11>=document.documentMode,Vi=null,vd=null,Za=null,yd=!1;function xg(t,o,a){var l=a.window===a?a.document:a.nodeType===9?a:a.ownerDocument;yd||Vi==null||Vi!==ml(l)||(l=Vi,"selectionStart"in l&&gd(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),Za&&Ga(Za,l)||(Za=l,l=uu(vd,"onSelect"),0>=w,f-=w,gr=1<<32-me(o)+f|a<Pe?(Ye=Oe,Oe=null):Ye=Oe.sibling;var et=K(F,Oe,q[Pe],oe);if(et===null){Oe===null&&(Oe=Ye);break}t&&Oe&&et.alternate===null&&o(F,Oe),I=p(et,I,Pe),We===null?Ae=et:We.sibling=et,We=et,Oe=Ye}if(Pe===q.length)return a(F,Oe),Qe&&Nr(F,Pe),Ae;if(Oe===null){for(;PePe?(Ye=Oe,Oe=null):Ye=Oe.sibling;var Ro=K(F,Oe,et.value,oe);if(Ro===null){Oe===null&&(Oe=Ye);break}t&&Oe&&Ro.alternate===null&&o(F,Oe),I=p(Ro,I,Pe),We===null?Ae=Ro:We.sibling=Ro,We=Ro,Oe=Ye}if(et.done)return a(F,Oe),Qe&&Nr(F,Pe),Ae;if(Oe===null){for(;!et.done;Pe++,et=q.next())et=ie(F,et.value,oe),et!==null&&(I=p(et,I,Pe),We===null?Ae=et:We.sibling=et,We=et);return Qe&&Nr(F,Pe),Ae}for(Oe=l(Oe);!et.done;Pe++,et=q.next())et=X(Oe,F,Pe,et.value,oe),et!==null&&(t&&et.alternate!==null&&Oe.delete(et.key===null?Pe:et.key),I=p(et,I,Pe),We===null?Ae=et:We.sibling=et,We=et);return t&&Oe.forEach(function(nR){return o(F,nR)}),Qe&&Nr(F,Pe),Ae}function ct(F,I,q,oe){if(typeof q=="object"&&q!==null&&q.type===C&&q.key===null&&(q=q.props.children),typeof q=="object"&&q!==null){switch(q.$$typeof){case S:e:{for(var Ae=q.key;I!==null;){if(I.key===Ae){if(Ae=q.type,Ae===C){if(I.tag===7){a(F,I.sibling),oe=f(I,q.props.children),oe.return=F,F=oe;break e}}else if(I.elementType===Ae||typeof Ae=="object"&&Ae!==null&&Ae.$$typeof===P&&ni(Ae)===I.type){a(F,I.sibling),oe=f(I,q.props),Wa(oe,q),oe.return=F,F=oe;break e}a(F,I);break}else o(F,I);I=I.sibling}q.type===C?(oe=Xo(q.props.children,F.mode,oe,q.key),oe.return=F,F=oe):(oe=Rl(q.type,q.key,q.props,null,F.mode,oe),Wa(oe,q),oe.return=F,F=oe)}return w(F);case _:e:{for(Ae=q.key;I!==null;){if(I.key===Ae)if(I.tag===4&&I.stateNode.containerInfo===q.containerInfo&&I.stateNode.implementation===q.implementation){a(F,I.sibling),oe=f(I,q.children||[]),oe.return=F,F=oe;break e}else{a(F,I);break}else o(F,I);I=I.sibling}oe=Ed(q,F.mode,oe),oe.return=F,F=oe}return w(F);case P:return q=ni(q),ct(F,I,q,oe)}if(ye(q))return Ee(F,I,q,oe);if(le(q)){if(Ae=le(q),typeof Ae!="function")throw Error(i(150));return q=Ae.call(q),je(F,I,q,oe)}if(typeof q.then=="function")return ct(F,I,Dl(q),oe);if(q.$$typeof===A)return ct(F,I,Al(F,q),oe);Nl(F,q)}return typeof q=="string"&&q!==""||typeof q=="number"||typeof q=="bigint"?(q=""+q,I!==null&&I.tag===6?(a(F,I.sibling),oe=f(I,q),oe.return=F,F=oe):(a(F,I),oe=Cd(q,F.mode,oe),oe.return=F,F=oe),w(F)):a(F,I)}return function(F,I,q,oe){try{Ja=0;var Ae=ct(F,I,q,oe);return Qi=null,Ae}catch(Oe){if(Oe===Yi||Oe===jl)throw Oe;var We=zn(29,Oe,null,F.mode);return We.lanes=oe,We.return=F,We}}}var oi=Bg(!0),qg=Bg(!1),lo=!1;function Id(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function $d(t,o){t=t.updateQueue,o.updateQueue===t&&(o.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function uo(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function co(t,o,a){var l=t.updateQueue;if(l===null)return null;if(l=l.shared,(rt&2)!==0){var f=l.pending;return f===null?o.next=o:(o.next=f.next,f.next=o),l.pending=o,o=El(t),Og(t,null,a),o}return Cl(t,l,o,a),El(t)}function es(t,o,a){if(o=o.updateQueue,o!==null&&(o=o.shared,(a&4194048)!==0)){var l=o.lanes;l&=t.pendingLanes,a|=l,o.lanes=a,vn(t,a)}}function Vd(t,o){var a=t.updateQueue,l=t.alternate;if(l!==null&&(l=l.updateQueue,a===l)){var f=null,p=null;if(a=a.firstBaseUpdate,a!==null){do{var w={lane:a.lane,tag:a.tag,payload:a.payload,callback:null,next:null};p===null?f=p=w:p=p.next=w,a=a.next}while(a!==null);p===null?f=p=o:p=p.next=o}else f=p=o;a={baseState:l.baseState,firstBaseUpdate:f,lastBaseUpdate:p,shared:l.shared,callbacks:l.callbacks},t.updateQueue=a;return}t=a.lastBaseUpdate,t===null?a.firstBaseUpdate=o:t.next=o,a.lastBaseUpdate=o}var Fd=!1;function ts(){if(Fd){var t=Ki;if(t!==null)throw t}}function ns(t,o,a,l){Fd=!1;var f=t.updateQueue;lo=!1;var p=f.firstBaseUpdate,w=f.lastBaseUpdate,R=f.shared.pending;if(R!==null){f.shared.pending=null;var D=R,G=D.next;D.next=null,w===null?p=G:w.next=G,w=D;var te=t.alternate;te!==null&&(te=te.updateQueue,R=te.lastBaseUpdate,R!==w&&(R===null?te.firstBaseUpdate=G:R.next=G,te.lastBaseUpdate=D))}if(p!==null){var ie=f.baseState;w=0,te=G=D=null,R=p;do{var K=R.lane&-536870913,X=K!==R.lane;if(X?(Ke&K)===K:(l&K)===K){K!==0&&K===Zi&&(Fd=!0),te!==null&&(te=te.next={lane:0,tag:R.tag,payload:R.payload,callback:null,next:null});e:{var Ee=t,je=R;K=o;var ct=a;switch(je.tag){case 1:if(Ee=je.payload,typeof Ee=="function"){ie=Ee.call(ct,ie,K);break e}ie=Ee;break e;case 3:Ee.flags=Ee.flags&-65537|128;case 0:if(Ee=je.payload,K=typeof Ee=="function"?Ee.call(ct,ie,K):Ee,K==null)break e;ie=g({},ie,K);break e;case 2:lo=!0}}K=R.callback,K!==null&&(t.flags|=64,X&&(t.flags|=8192),X=f.callbacks,X===null?f.callbacks=[K]:X.push(K))}else X={lane:K,tag:R.tag,payload:R.payload,callback:R.callback,next:null},te===null?(G=te=X,D=ie):te=te.next=X,w|=K;if(R=R.next,R===null){if(R=f.shared.pending,R===null)break;X=R,R=X.next,X.next=null,f.lastBaseUpdate=X,f.shared.pending=null}}while(!0);te===null&&(D=ie),f.baseState=D,f.firstBaseUpdate=G,f.lastBaseUpdate=te,p===null&&(f.shared.lanes=0),go|=w,t.lanes=w,t.memoizedState=ie}}function Gg(t,o){if(typeof t!="function")throw Error(i(191,t));t.call(o)}function Zg(t,o){var a=t.callbacks;if(a!==null)for(t.callbacks=null,t=0;tp?p:8;var w=N.T,R={};N.T=R,af(t,!1,o,a);try{var D=f(),G=N.S;if(G!==null&&G(R,D),D!==null&&typeof D=="object"&&typeof D.then=="function"){var te=qC(D,l);is(t,o,te,In(t))}else is(t,o,l,In(t))}catch(ie){is(t,o,{then:function(){},status:"rejected",reason:ie},In())}finally{Y.p=p,w!==null&&R.types!==null&&(w.types=R.types),N.T=w}}function XC(){}function rf(t,o,a,l){if(t.tag!==5)throw Error(i(476));var f=Ev(t).queue;Cv(t,f,o,ne,a===null?XC:function(){return Rv(t),a(l)})}function Ev(t){var o=t.memoizedState;if(o!==null)return o;o={memoizedState:ne,baseState:ne,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:$r,lastRenderedState:ne},next:null};var a={};return o.next={memoizedState:a,baseState:a,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:$r,lastRenderedState:a},next:null},t.memoizedState=o,t=t.alternate,t!==null&&(t.memoizedState=o),o}function Rv(t){var o=Ev(t);o.next===null&&(o=t.alternate.memoizedState),is(t,o.next.queue,{},In())}function of(){return tn(ws)}function Tv(){return Mt().memoizedState}function Ov(){return Mt().memoizedState}function JC(t){for(var o=t.return;o!==null;){switch(o.tag){case 24:case 3:var a=In();t=uo(a);var l=co(o,t,a);l!==null&&(En(l,o,a),es(l,o,a)),o={cache:Dd()},t.payload=o;return}o=o.return}}function WC(t,o,a){var l=In();a={lane:l,revertLane:0,gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null},Bl(t)?Mv(o,a):(a=wd(t,o,a,l),a!==null&&(En(a,t,l),jv(a,o,l)))}function Av(t,o,a){var l=In();is(t,o,a,l)}function is(t,o,a,l){var f={lane:l,revertLane:0,gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null};if(Bl(t))Mv(o,f);else{var p=t.alternate;if(t.lanes===0&&(p===null||p.lanes===0)&&(p=o.lastRenderedReducer,p!==null))try{var w=o.lastRenderedState,R=p(w,a);if(f.hasEagerState=!0,f.eagerState=R,jn(R,w))return Cl(t,o,f,0),ht===null&&_l(),!1}catch{}if(a=wd(t,o,f,l),a!==null)return En(a,t,l),jv(a,o,l),!0}return!1}function af(t,o,a,l){if(l={lane:2,revertLane:$f(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Bl(t)){if(o)throw Error(i(479))}else o=wd(t,a,l,2),o!==null&&En(o,t,2)}function Bl(t){var o=t.alternate;return t===Ue||o!==null&&o===Ue}function Mv(t,o){Ji=Il=!0;var a=t.pending;a===null?o.next=o:(o.next=a.next,a.next=o),t.pending=o}function jv(t,o,a){if((a&4194048)!==0){var l=o.lanes;l&=t.pendingLanes,a|=l,o.lanes=a,vn(t,a)}}var as={readContext:tn,use:Fl,useCallback:Rt,useContext:Rt,useEffect:Rt,useImperativeHandle:Rt,useLayoutEffect:Rt,useInsertionEffect:Rt,useMemo:Rt,useReducer:Rt,useRef:Rt,useState:Rt,useDebugValue:Rt,useDeferredValue:Rt,useTransition:Rt,useSyncExternalStore:Rt,useId:Rt,useHostTransitionStatus:Rt,useFormState:Rt,useActionState:Rt,useOptimistic:Rt,useMemoCache:Rt,useCacheRefresh:Rt};as.useEffectEvent=Rt;var zv={readContext:tn,use:Fl,useCallback:function(t,o){return hn().memoizedState=[t,o===void 0?null:o],t},useContext:tn,useEffect:pv,useImperativeHandle:function(t,o,a){a=a!=null?a.concat([t]):null,Hl(4194308,4,bv.bind(null,o,t),a)},useLayoutEffect:function(t,o){return Hl(4194308,4,t,o)},useInsertionEffect:function(t,o){Hl(4,2,t,o)},useMemo:function(t,o){var a=hn();o=o===void 0?null:o;var l=t();if(ii){ce(!0);try{t()}finally{ce(!1)}}return a.memoizedState=[l,o],l},useReducer:function(t,o,a){var l=hn();if(a!==void 0){var f=a(o);if(ii){ce(!0);try{a(o)}finally{ce(!1)}}}else f=o;return l.memoizedState=l.baseState=f,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:f},l.queue=t,t=t.dispatch=WC.bind(null,Ue,t),[l.memoizedState,t]},useRef:function(t){var o=hn();return t={current:t},o.memoizedState=t},useState:function(t){t=Jd(t);var o=t.queue,a=Av.bind(null,Ue,o);return o.dispatch=a,[t.memoizedState,a]},useDebugValue:tf,useDeferredValue:function(t,o){var a=hn();return nf(a,t,o)},useTransition:function(){var t=Jd(!1);return t=Cv.bind(null,Ue,t.queue,!0,!1),hn().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,o,a){var l=Ue,f=hn();if(Qe){if(a===void 0)throw Error(i(407));a=a()}else{if(a=o(),ht===null)throw Error(i(349));(Ke&127)!==0||Wg(l,o,a)}f.memoizedState=a;var p={value:a,getSnapshot:o};return f.queue=p,pv(tv.bind(null,l,p,t),[t]),l.flags|=2048,ea(9,{destroy:void 0},ev.bind(null,l,p,a,o),null),a},useId:function(){var t=hn(),o=ht.identifierPrefix;if(Qe){var a=vr,l=gr;a=(l&~(1<<32-me(l)-1)).toString(32)+a,o="_"+o+"R_"+a,a=$l++,0<\/script>",p=p.removeChild(p.firstChild);break;case"select":p=typeof l.is=="string"?w.createElement("select",{is:l.is}):w.createElement("select"),l.multiple?p.multiple=!0:l.size&&(p.size=l.size);break;default:p=typeof l.is=="string"?w.createElement(f,{is:l.is}):w.createElement(f)}}p[Wt]=o,p[bn]=l;e:for(w=o.child;w!==null;){if(w.tag===5||w.tag===6)p.appendChild(w.stateNode);else if(w.tag!==4&&w.tag!==27&&w.child!==null){w.child.return=w,w=w.child;continue}if(w===o)break e;for(;w.sibling===null;){if(w.return===null||w.return===o)break e;w=w.return}w.sibling.return=w.return,w=w.sibling}o.stateNode=p;e:switch(rn(p,f,l),f){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break e;case"img":l=!0;break e;default:l=!1}l&&Fr(o)}}return vt(o),Sf(o,o.type,t===null?null:t.memoizedProps,o.pendingProps,a),null;case 6:if(t&&o.stateNode!=null)t.memoizedProps!==l&&Fr(o);else{if(typeof l!="string"&&o.stateNode===null)throw Error(i(166));if(t=re.current,qi(o)){if(t=o.stateNode,a=o.memoizedProps,l=null,f=en,f!==null)switch(f.tag){case 27:case 5:l=f.memoizedProps}t[Wt]=o,t=!!(t.nodeValue===a||l!==null&&l.suppressHydrationWarning===!0||Xy(t.nodeValue,a)),t||ao(o,!0)}else t=cu(t).createTextNode(l),t[Wt]=o,o.stateNode=t}return vt(o),null;case 31:if(a=o.memoizedState,t===null||t.memoizedState!==null){if(l=qi(o),a!==null){if(t===null){if(!l)throw Error(i(318));if(t=o.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(i(557));t[Wt]=o}else Jo(),(o.flags&128)===0&&(o.memoizedState=null),o.flags|=4;vt(o),t=!1}else a=Ad(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=a),t=!0;if(!t)return o.flags&256?(Nn(o),o):(Nn(o),null);if((o.flags&128)!==0)throw Error(i(558))}return vt(o),null;case 13:if(l=o.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(f=qi(o),l!==null&&l.dehydrated!==null){if(t===null){if(!f)throw Error(i(318));if(f=o.memoizedState,f=f!==null?f.dehydrated:null,!f)throw Error(i(317));f[Wt]=o}else Jo(),(o.flags&128)===0&&(o.memoizedState=null),o.flags|=4;vt(o),f=!1}else f=Ad(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=f),f=!0;if(!f)return o.flags&256?(Nn(o),o):(Nn(o),null)}return Nn(o),(o.flags&128)!==0?(o.lanes=a,o):(a=l!==null,t=t!==null&&t.memoizedState!==null,a&&(l=o.child,f=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(f=l.alternate.memoizedState.cachePool.pool),p=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(p=l.memoizedState.cachePool.pool),p!==f&&(l.flags|=2048)),a!==t&&a&&(o.child.flags|=8192),Yl(o,o.updateQueue),vt(o),null);case 4:return be(),t===null&&Hf(o.stateNode.containerInfo),vt(o),null;case 10:return Lr(o.type),vt(o),null;case 19:if(j(At),l=o.memoizedState,l===null)return vt(o),null;if(f=(o.flags&128)!==0,p=l.rendering,p===null)if(f)ls(l,!1);else{if(Tt!==0||t!==null&&(t.flags&128)!==0)for(t=o.child;t!==null;){if(p=Ll(t),p!==null){for(o.flags|=128,ls(l,!1),t=p.updateQueue,o.updateQueue=t,Yl(o,t),o.subtreeFlags=0,t=a,a=o.child;a!==null;)Ag(a,t),a=a.sibling;return H(At,At.current&1|2),Qe&&Nr(o,l.treeForkCount),o.child}t=t.sibling}l.tail!==null&&Nt()>eu&&(o.flags|=128,f=!0,ls(l,!1),o.lanes=4194304)}else{if(!f)if(t=Ll(p),t!==null){if(o.flags|=128,f=!0,t=t.updateQueue,o.updateQueue=t,Yl(o,t),ls(l,!0),l.tail===null&&l.tailMode==="hidden"&&!p.alternate&&!Qe)return vt(o),null}else 2*Nt()-l.renderingStartTime>eu&&a!==536870912&&(o.flags|=128,f=!0,ls(l,!1),o.lanes=4194304);l.isBackwards?(p.sibling=o.child,o.child=p):(t=l.last,t!==null?t.sibling=p:o.child=p,l.last=p)}return l.tail!==null?(t=l.tail,l.rendering=t,l.tail=t.sibling,l.renderingStartTime=Nt(),t.sibling=null,a=At.current,H(At,f?a&1|2:a&1),Qe&&Nr(o,l.treeForkCount),t):(vt(o),null);case 22:case 23:return Nn(o),Hd(),l=o.memoizedState!==null,t!==null?t.memoizedState!==null!==l&&(o.flags|=8192):l&&(o.flags|=8192),l?(a&536870912)!==0&&(o.flags&128)===0&&(vt(o),o.subtreeFlags&6&&(o.flags|=8192)):vt(o),a=o.updateQueue,a!==null&&Yl(o,a.retryQueue),a=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(a=t.memoizedState.cachePool.pool),l=null,o.memoizedState!==null&&o.memoizedState.cachePool!==null&&(l=o.memoizedState.cachePool.pool),l!==a&&(o.flags|=2048),t!==null&&j(ti),null;case 24:return a=null,t!==null&&(a=t.memoizedState.cache),o.memoizedState.cache!==a&&(o.flags|=2048),Lr(Lt),vt(o),null;case 25:return null;case 30:return null}throw Error(i(156,o.tag))}function oE(t,o){switch(Td(o),o.tag){case 1:return t=o.flags,t&65536?(o.flags=t&-65537|128,o):null;case 3:return Lr(Lt),be(),t=o.flags,(t&65536)!==0&&(t&128)===0?(o.flags=t&-65537|128,o):null;case 26:case 27:case 5:return Ie(o),null;case 31:if(o.memoizedState!==null){if(Nn(o),o.alternate===null)throw Error(i(340));Jo()}return t=o.flags,t&65536?(o.flags=t&-65537|128,o):null;case 13:if(Nn(o),t=o.memoizedState,t!==null&&t.dehydrated!==null){if(o.alternate===null)throw Error(i(340));Jo()}return t=o.flags,t&65536?(o.flags=t&-65537|128,o):null;case 19:return j(At),null;case 4:return be(),null;case 10:return Lr(o.type),null;case 22:case 23:return Nn(o),Hd(),t!==null&&j(ti),t=o.flags,t&65536?(o.flags=t&-65537|128,o):null;case 24:return Lr(Lt),null;case 25:return null;default:return null}}function ny(t,o){switch(Td(o),o.tag){case 3:Lr(Lt),be();break;case 26:case 27:case 5:Ie(o);break;case 4:be();break;case 31:o.memoizedState!==null&&Nn(o);break;case 13:Nn(o);break;case 19:j(At);break;case 10:Lr(o.type);break;case 22:case 23:Nn(o),Hd(),t!==null&&j(ti);break;case 24:Lr(Lt)}}function us(t,o){try{var a=o.updateQueue,l=a!==null?a.lastEffect:null;if(l!==null){var f=l.next;a=f;do{if((a.tag&t)===t){l=void 0;var p=a.create,w=a.inst;l=p(),w.destroy=l}a=a.next}while(a!==f)}}catch(R){at(o,o.return,R)}}function mo(t,o,a){try{var l=o.updateQueue,f=l!==null?l.lastEffect:null;if(f!==null){var p=f.next;l=p;do{if((l.tag&t)===t){var w=l.inst,R=w.destroy;if(R!==void 0){w.destroy=void 0,f=o;var D=a,G=R;try{G()}catch(te){at(f,D,te)}}}l=l.next}while(l!==p)}}catch(te){at(o,o.return,te)}}function ry(t){var o=t.updateQueue;if(o!==null){var a=t.stateNode;try{Zg(o,a)}catch(l){at(t,t.return,l)}}}function oy(t,o,a){a.props=ai(t.type,t.memoizedProps),a.state=t.memoizedState;try{a.componentWillUnmount()}catch(l){at(t,o,l)}}function cs(t,o){try{var a=t.ref;if(a!==null){switch(t.tag){case 26:case 27:case 5:var l=t.stateNode;break;case 30:l=t.stateNode;break;default:l=t.stateNode}typeof a=="function"?t.refCleanup=a(l):a.current=l}}catch(f){at(t,o,f)}}function yr(t,o){var a=t.ref,l=t.refCleanup;if(a!==null)if(typeof l=="function")try{l()}catch(f){at(t,o,f)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof a=="function")try{a(null)}catch(f){at(t,o,f)}else a.current=null}function iy(t){var o=t.type,a=t.memoizedProps,l=t.stateNode;try{e:switch(o){case"button":case"input":case"select":case"textarea":a.autoFocus&&l.focus();break e;case"img":a.src?l.src=a.src:a.srcSet&&(l.srcset=a.srcSet)}}catch(f){at(t,t.return,f)}}function xf(t,o,a){try{var l=t.stateNode;RE(l,t.type,a,o),l[bn]=o}catch(f){at(t,t.return,f)}}function ay(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&xo(t.type)||t.tag===4}function wf(t){e:for(;;){for(;t.sibling===null;){if(t.return===null||ay(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&xo(t.type)||t.flags&2||t.child===null||t.tag===4)continue e;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function _f(t,o,a){var l=t.tag;if(l===5||l===6)t=t.stateNode,o?(a.nodeType===9?a.body:a.nodeName==="HTML"?a.ownerDocument.body:a).insertBefore(t,o):(o=a.nodeType===9?a.body:a.nodeName==="HTML"?a.ownerDocument.body:a,o.appendChild(t),a=a._reactRootContainer,a!=null||o.onclick!==null||(o.onclick=jr));else if(l!==4&&(l===27&&xo(t.type)&&(a=t.stateNode,o=null),t=t.child,t!==null))for(_f(t,o,a),t=t.sibling;t!==null;)_f(t,o,a),t=t.sibling}function Ql(t,o,a){var l=t.tag;if(l===5||l===6)t=t.stateNode,o?a.insertBefore(t,o):a.appendChild(t);else if(l!==4&&(l===27&&xo(t.type)&&(a=t.stateNode),t=t.child,t!==null))for(Ql(t,o,a),t=t.sibling;t!==null;)Ql(t,o,a),t=t.sibling}function sy(t){var o=t.stateNode,a=t.memoizedProps;try{for(var l=t.type,f=o.attributes;f.length;)o.removeAttributeNode(f[0]);rn(o,l,a),o[Wt]=t,o[bn]=a}catch(p){at(t,t.return,p)}}var Ur=!1,Vt=!1,Cf=!1,ly=typeof WeakSet=="function"?WeakSet:Set,Zt=null;function iE(t,o){if(t=t.containerInfo,qf=vu,t=Sg(t),gd(t)){if("selectionStart"in t)var a={start:t.selectionStart,end:t.selectionEnd};else e:{a=(a=t.ownerDocument)&&a.defaultView||window;var l=a.getSelection&&a.getSelection();if(l&&l.rangeCount!==0){a=l.anchorNode;var f=l.anchorOffset,p=l.focusNode;l=l.focusOffset;try{a.nodeType,p.nodeType}catch{a=null;break e}var w=0,R=-1,D=-1,G=0,te=0,ie=t,K=null;t:for(;;){for(var X;ie!==a||f!==0&&ie.nodeType!==3||(R=w+f),ie!==p||l!==0&&ie.nodeType!==3||(D=w+l),ie.nodeType===3&&(w+=ie.nodeValue.length),(X=ie.firstChild)!==null;)K=ie,ie=X;for(;;){if(ie===t)break t;if(K===a&&++G===f&&(R=w),K===p&&++te===l&&(D=w),(X=ie.nextSibling)!==null)break;ie=K,K=ie.parentNode}ie=X}a=R===-1||D===-1?null:{start:R,end:D}}else a=null}a=a||{start:0,end:0}}else a=null;for(Gf={focusedElem:t,selectionRange:a},vu=!1,Zt=o;Zt!==null;)if(o=Zt,t=o.child,(o.subtreeFlags&1028)!==0&&t!==null)t.return=o,Zt=t;else for(;Zt!==null;){switch(o=Zt,p=o.alternate,t=o.flags,o.tag){case 0:if((t&4)!==0&&(t=o.updateQueue,t=t!==null?t.events:null,t!==null))for(a=0;a title"))),rn(p,l,a),p[Wt]=t,Gt(p),l=p;break e;case"link":var w=m0("link","href",f).get(l+(a.href||""));if(w){for(var R=0;Rct&&(w=ct,ct=je,je=w);var F=yg(R,je),I=yg(R,ct);if(F&&I&&(X.rangeCount!==1||X.anchorNode!==F.node||X.anchorOffset!==F.offset||X.focusNode!==I.node||X.focusOffset!==I.offset)){var q=ie.createRange();q.setStart(F.node,F.offset),X.removeAllRanges(),je>ct?(X.addRange(q),X.extend(I.node,I.offset)):(q.setEnd(I.node,I.offset),X.addRange(q))}}}}for(ie=[],X=R;X=X.parentNode;)X.nodeType===1&&ie.push({element:X,left:X.scrollLeft,top:X.scrollTop});for(typeof R.focus=="function"&&R.focus(),R=0;Ra?32:a,N.T=null,a=jf,jf=null;var p=yo,w=Gr;if(Pt=0,ia=yo=null,Gr=0,(rt&6)!==0)throw Error(i(331));var R=rt;if(rt|=4,by(p.current),gy(p,p.current,w,a),rt=R,gs(0,!1),se&&typeof se.onPostCommitFiberRoot=="function")try{se.onPostCommitFiberRoot(V,p)}catch{}return!0}finally{Y.p=f,N.T=l,Iy(t,o)}}function Vy(t,o,a){o=Gn(a,o),o=cf(t.stateNode,o,2),t=co(t,o,2),t!==null&&(Ct(t,2),br(t))}function at(t,o,a){if(t.tag===3)Vy(t,t,a);else for(;o!==null;){if(o.tag===3){Vy(o,t,a);break}else if(o.tag===1){var l=o.stateNode;if(typeof o.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(vo===null||!vo.has(l))){t=Gn(a,t),a=Fv(2),l=co(o,a,2),l!==null&&(Uv(a,l,o,t),Ct(l,2),br(l));break}}o=o.return}}function kf(t,o,a){var l=t.pingCache;if(l===null){l=t.pingCache=new lE;var f=new Set;l.set(o,f)}else f=l.get(o),f===void 0&&(f=new Set,l.set(o,f));f.has(a)||(Tf=!0,f.add(a),t=hE.bind(null,t,o,a),o.then(t,t))}function hE(t,o,a){var l=t.pingCache;l!==null&&l.delete(o),t.pingedLanes|=t.suspendedLanes&a,t.warmLanes&=~a,ht===t&&(Ke&a)===a&&(Tt===4||Tt===3&&(Ke&62914560)===Ke&&300>Nt()-Wl?(rt&2)===0&&aa(t,0):Of|=a,oa===Ke&&(oa=0)),br(t)}function Fy(t,o){o===0&&(o=qt()),t=Qo(t,o),t!==null&&(Ct(t,o),br(t))}function mE(t){var o=t.memoizedState,a=0;o!==null&&(a=o.retryLane),Fy(t,a)}function pE(t,o){var a=0;switch(t.tag){case 31:case 13:var l=t.stateNode,f=t.memoizedState;f!==null&&(a=f.retryLane);break;case 19:l=t.stateNode;break;case 22:l=t.stateNode._retryCache;break;default:throw Error(i(314))}l!==null&&l.delete(o),Fy(t,a)}function gE(t,o){return Le(t,o)}var au=null,la=null,Lf=!1,su=!1,If=!1,So=0;function br(t){t!==la&&t.next===null&&(la===null?au=la=t:la=la.next=t),su=!0,Lf||(Lf=!0,yE())}function gs(t,o){if(!If&&su){If=!0;do for(var a=!1,l=au;l!==null;){if(t!==0){var f=l.pendingLanes;if(f===0)var p=0;else{var w=l.suspendedLanes,R=l.pingedLanes;p=(1<<31-me(42|t)+1)-1,p&=f&~(w&~R),p=p&201326741?p&201326741|1:p?p|2:0}p!==0&&(a=!0,By(l,p))}else p=Ke,p=Me(l,l===ht?p:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(p&3)===0||pt(l,p)||(a=!0,By(l,p));l=l.next}while(a);If=!1}}function vE(){Uy()}function Uy(){su=Lf=!1;var t=0;So!==0&&OE()&&(t=So);for(var o=Nt(),a=null,l=au;l!==null;){var f=l.next,p=Hy(l,o);p===0?(l.next=null,a===null?au=f:a.next=f,f===null&&(la=a)):(a=l,(t!==0||(p&3)!==0)&&(su=!0)),l=f}Pt!==0&&Pt!==5||gs(t),So!==0&&(So=0)}function Hy(t,o){for(var a=t.suspendedLanes,l=t.pingedLanes,f=t.expirationTimes,p=t.pendingLanes&-62914561;0R)break;var te=D.transferSize,ie=D.initiatorType;te&&Jy(ie)&&(D=D.responseEnd,w+=te*(D"u"?null:document;function c0(t,o,a){var l=ua;if(l&&typeof o=="string"&&o){var f=Bn(o);f='link[rel="'+t+'"][href="'+f+'"]',typeof a=="string"&&(f+='[crossorigin="'+a+'"]'),u0.has(f)||(u0.add(f),t={rel:t,crossOrigin:a,href:o},l.querySelector(f)===null&&(o=l.createElement("link"),rn(o,"link",t),Gt(o),l.head.appendChild(o)))}}function IE(t){Zr.D(t),c0("dns-prefetch",t,null)}function $E(t,o){Zr.C(t,o),c0("preconnect",t,o)}function VE(t,o,a){Zr.L(t,o,a);var l=ua;if(l&&t&&o){var f='link[rel="preload"][as="'+Bn(o)+'"]';o==="image"&&a&&a.imageSrcSet?(f+='[imagesrcset="'+Bn(a.imageSrcSet)+'"]',typeof a.imageSizes=="string"&&(f+='[imagesizes="'+Bn(a.imageSizes)+'"]')):f+='[href="'+Bn(t)+'"]';var p=f;switch(o){case"style":p=ca(t);break;case"script":p=da(t)}Jn.has(p)||(t=g({rel:"preload",href:o==="image"&&a&&a.imageSrcSet?void 0:t,as:o},a),Jn.set(p,t),l.querySelector(f)!==null||o==="style"&&l.querySelector(Ss(p))||o==="script"&&l.querySelector(xs(p))||(o=l.createElement("link"),rn(o,"link",t),Gt(o),l.head.appendChild(o)))}}function FE(t,o){Zr.m(t,o);var a=ua;if(a&&t){var l=o&&typeof o.as=="string"?o.as:"script",f='link[rel="modulepreload"][as="'+Bn(l)+'"][href="'+Bn(t)+'"]',p=f;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":p=da(t)}if(!Jn.has(p)&&(t=g({rel:"modulepreload",href:t},o),Jn.set(p,t),a.querySelector(f)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(a.querySelector(xs(p)))return}l=a.createElement("link"),rn(l,"link",t),Gt(l),a.head.appendChild(l)}}}function UE(t,o,a){Zr.S(t,o,a);var l=ua;if(l&&t){var f=zi(l).hoistableStyles,p=ca(t);o=o||"default";var w=f.get(p);if(!w){var R={loading:0,preload:null};if(w=l.querySelector(Ss(p)))R.loading=5;else{t=g({rel:"stylesheet",href:t,"data-precedence":o},a),(a=Jn.get(p))&&Wf(t,a);var D=w=l.createElement("link");Gt(D),rn(D,"link",t),D._p=new Promise(function(G,te){D.onload=G,D.onerror=te}),D.addEventListener("load",function(){R.loading|=1}),D.addEventListener("error",function(){R.loading|=2}),R.loading|=4,fu(w,o,l)}w={type:"stylesheet",instance:w,count:1,state:R},f.set(p,w)}}}function HE(t,o){Zr.X(t,o);var a=ua;if(a&&t){var l=zi(a).hoistableScripts,f=da(t),p=l.get(f);p||(p=a.querySelector(xs(f)),p||(t=g({src:t,async:!0},o),(o=Jn.get(f))&&eh(t,o),p=a.createElement("script"),Gt(p),rn(p,"link",t),a.head.appendChild(p)),p={type:"script",instance:p,count:1,state:null},l.set(f,p))}}function PE(t,o){Zr.M(t,o);var a=ua;if(a&&t){var l=zi(a).hoistableScripts,f=da(t),p=l.get(f);p||(p=a.querySelector(xs(f)),p||(t=g({src:t,async:!0,type:"module"},o),(o=Jn.get(f))&&eh(t,o),p=a.createElement("script"),Gt(p),rn(p,"link",t),a.head.appendChild(p)),p={type:"script",instance:p,count:1,state:null},l.set(f,p))}}function d0(t,o,a,l){var f=(f=re.current)?du(f):null;if(!f)throw Error(i(446));switch(t){case"meta":case"title":return null;case"style":return typeof a.precedence=="string"&&typeof a.href=="string"?(o=ca(a.href),a=zi(f).hoistableStyles,l=a.get(o),l||(l={type:"style",instance:null,count:0,state:null},a.set(o,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(a.rel==="stylesheet"&&typeof a.href=="string"&&typeof a.precedence=="string"){t=ca(a.href);var p=zi(f).hoistableStyles,w=p.get(t);if(w||(f=f.ownerDocument||f,w={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},p.set(t,w),(p=f.querySelector(Ss(t)))&&!p._p&&(w.instance=p,w.state.loading=5),Jn.has(t)||(a={rel:"preload",as:"style",href:a.href,crossOrigin:a.crossOrigin,integrity:a.integrity,media:a.media,hrefLang:a.hrefLang,referrerPolicy:a.referrerPolicy},Jn.set(t,a),p||BE(f,t,a,w.state))),o&&l===null)throw Error(i(528,""));return w}if(o&&l!==null)throw Error(i(529,""));return null;case"script":return o=a.async,a=a.src,typeof a=="string"&&o&&typeof o!="function"&&typeof o!="symbol"?(o=da(a),a=zi(f).hoistableScripts,l=a.get(o),l||(l={type:"script",instance:null,count:0,state:null},a.set(o,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(i(444,t))}}function ca(t){return'href="'+Bn(t)+'"'}function Ss(t){return'link[rel="stylesheet"]['+t+"]"}function f0(t){return g({},t,{"data-precedence":t.precedence,precedence:null})}function BE(t,o,a,l){t.querySelector('link[rel="preload"][as="style"]['+o+"]")?l.loading=1:(o=t.createElement("link"),l.preload=o,o.addEventListener("load",function(){return l.loading|=1}),o.addEventListener("error",function(){return l.loading|=2}),rn(o,"link",a),Gt(o),t.head.appendChild(o))}function da(t){return'[src="'+Bn(t)+'"]'}function xs(t){return"script[async]"+t}function h0(t,o,a){if(o.count++,o.instance===null)switch(o.type){case"style":var l=t.querySelector('style[data-href~="'+Bn(a.href)+'"]');if(l)return o.instance=l,Gt(l),l;var f=g({},a,{"data-href":a.href,"data-precedence":a.precedence,href:null,precedence:null});return l=(t.ownerDocument||t).createElement("style"),Gt(l),rn(l,"style",f),fu(l,a.precedence,t),o.instance=l;case"stylesheet":f=ca(a.href);var p=t.querySelector(Ss(f));if(p)return o.state.loading|=4,o.instance=p,Gt(p),p;l=f0(a),(f=Jn.get(f))&&Wf(l,f),p=(t.ownerDocument||t).createElement("link"),Gt(p);var w=p;return w._p=new Promise(function(R,D){w.onload=R,w.onerror=D}),rn(p,"link",l),o.state.loading|=4,fu(p,a.precedence,t),o.instance=p;case"script":return p=da(a.src),(f=t.querySelector(xs(p)))?(o.instance=f,Gt(f),f):(l=a,(f=Jn.get(p))&&(l=g({},a),eh(l,f)),t=t.ownerDocument||t,f=t.createElement("script"),Gt(f),rn(f,"link",l),t.head.appendChild(f),o.instance=f);case"void":return null;default:throw Error(i(443,o.type))}else o.type==="stylesheet"&&(o.state.loading&4)===0&&(l=o.instance,o.state.loading|=4,fu(l,a.precedence,t));return o.instance}function fu(t,o,a){for(var l=a.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),f=l.length?l[l.length-1]:null,p=f,w=0;w title"):null)}function qE(t,o,a){if(a===1||o.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof o.precedence!="string"||typeof o.href!="string"||o.href==="")break;return!0;case"link":if(typeof o.rel!="string"||typeof o.href!="string"||o.href===""||o.onLoad||o.onError)break;return o.rel==="stylesheet"?(t=o.disabled,typeof o.precedence=="string"&&t==null):!0;case"script":if(o.async&&typeof o.async!="function"&&typeof o.async!="symbol"&&!o.onLoad&&!o.onError&&o.src&&typeof o.src=="string")return!0}return!1}function g0(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function GE(t,o,a,l){if(a.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(a.state.loading&4)===0){if(a.instance===null){var f=ca(l.href),p=o.querySelector(Ss(f));if(p){o=p._p,o!==null&&typeof o=="object"&&typeof o.then=="function"&&(t.count++,t=mu.bind(t),o.then(t,t)),a.state.loading|=4,a.instance=p,Gt(p);return}p=o.ownerDocument||o,l=f0(l),(f=Jn.get(f))&&Wf(l,f),p=p.createElement("link"),Gt(p);var w=p;w._p=new Promise(function(R,D){w.onload=R,w.onerror=D}),rn(p,"link",l),a.instance=p}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(a,o),(o=a.state.preload)&&(a.state.loading&3)===0&&(t.count++,a=mu.bind(t),o.addEventListener("load",a),o.addEventListener("error",a))}}var th=0;function ZE(t,o){return t.stylesheets&&t.count===0&&gu(t,t.stylesheets),0th?50:800)+o);return t.unsuspend=a,function(){t.unsuspend=null,clearTimeout(l),clearTimeout(f)}}:null}function mu(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)gu(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var pu=null;function gu(t,o){t.stylesheets=null,t.unsuspend!==null&&(t.count++,pu=new Map,o.forEach(KE,t),pu=null,mu.call(t))}function KE(t,o){if(!(o.state.loading&4)){var a=pu.get(t);if(a)var l=a.get(null);else{a=new Map,pu.set(t,a);for(var f=t.querySelectorAll("link[data-precedence],style[data-precedence]"),p=0;p"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(n){console.error(n)}}return e(),ch.exports=cR(),ch.exports}var fR=dR(),el=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},hR=class extends el{#e;#t;#n;constructor(){super(),this.#n=e=>{if(typeof window<"u"&&window.addEventListener){const n=()=>e();return window.addEventListener("visibilitychange",n,!1),()=>{window.removeEventListener("visibilitychange",n)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#n=e,this.#t?.(),this.#t=e(n=>{typeof n=="boolean"?this.setFocused(n):this.onFocus()})}setFocused(e){this.#e!==e&&(this.#e=e,this.onFocus())}onFocus(){const e=this.isFocused();this.listeners.forEach(n=>{n(e)})}isFocused(){return typeof this.#e=="boolean"?this.#e:globalThis.document?.visibilityState!=="hidden"}},jm=new hR,mR={setTimeout:(e,n)=>setTimeout(e,n),clearTimeout:e=>clearTimeout(e),setInterval:(e,n)=>setInterval(e,n),clearInterval:e=>clearInterval(e)},pR=class{#e=mR;#t=!1;setTimeoutProvider(e){this.#e=e}setTimeout(e,n){return this.#e.setTimeout(e,n)}clearTimeout(e){this.#e.clearTimeout(e)}setInterval(e,n){return this.#e.setInterval(e,n)}clearInterval(e){this.#e.clearInterval(e)}},fi=new pR;function gR(e){setTimeout(e,0)}var vR=typeof window>"u"||"Deno"in globalThis;function Tn(){}function yR(e,n){return typeof e=="function"?e(n):e}function Gh(e){return typeof e=="number"&&e>=0&&e!==1/0}function NS(e,n){return Math.max(e+(n||0)-Date.now(),0)}function zo(e,n){return typeof e=="function"?e(n):e}function $n(e,n){return typeof e=="function"?e(n):e}function F0(e,n){const{type:r="all",exact:i,fetchStatus:s,predicate:u,queryKey:c,stale:d}=e;if(c){if(i){if(n.queryHash!==zm(c,n.options))return!1}else if(!Us(n.queryKey,c))return!1}if(r!=="all"){const h=n.isActive();if(r==="active"&&!h||r==="inactive"&&h)return!1}return!(typeof d=="boolean"&&n.isStale()!==d||s&&s!==n.state.fetchStatus||u&&!u(n))}function U0(e,n){const{exact:r,status:i,predicate:s,mutationKey:u}=e;if(u){if(!n.options.mutationKey)return!1;if(r){if(Fs(n.options.mutationKey)!==Fs(u))return!1}else if(!Us(n.options.mutationKey,u))return!1}return!(i&&n.state.status!==i||s&&!s(n))}function zm(e,n){return(n?.queryKeyHashFn||Fs)(e)}function Fs(e){return JSON.stringify(e,(n,r)=>Kh(r)?Object.keys(r).sort().reduce((i,s)=>(i[s]=r[s],i),{}):r)}function Us(e,n){return e===n?!0:typeof e!=typeof n?!1:e&&n&&typeof e=="object"&&typeof n=="object"?Object.keys(n).every(r=>Us(e[r],n[r])):!1}var bR=Object.prototype.hasOwnProperty;function kS(e,n,r=0){if(e===n)return e;if(r>500)return n;const i=H0(e)&&H0(n);if(!i&&!(Kh(e)&&Kh(n)))return n;const u=(i?e:Object.keys(e)).length,c=i?n:Object.keys(n),d=c.length,h=i?new Array(d):{};let m=0;for(let y=0;y{fi.setTimeout(n,e)})}function Yh(e,n,r){return typeof r.structuralSharing=="function"?r.structuralSharing(e,n):r.structuralSharing!==!1?kS(e,n):n}function xR(e,n,r=0){const i=[...e,n];return r&&i.length>r?i.slice(1):i}function wR(e,n,r=0){const i=[n,...e];return r&&i.length>r?i.slice(0,-1):i}var Dm=Symbol();function LS(e,n){return!e.queryFn&&n?.initialPromise?()=>n.initialPromise:!e.queryFn||e.queryFn===Dm?()=>Promise.reject(new Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}function IS(e,n){return typeof e=="function"?e(...n):!!e}function _R(e,n,r){let i=!1,s;return Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(s??=n(),i||(i=!0,s.aborted?r():s.addEventListener("abort",r,{once:!0})),s)}),e}var Hs=(()=>{let e=()=>vR;return{isServer(){return e()},setIsServer(n){e=n}}})();function Qh(){let e,n;const r=new Promise((s,u)=>{e=s,n=u});r.status="pending",r.catch(()=>{});function i(s){Object.assign(r,s),delete r.resolve,delete r.reject}return r.resolve=s=>{i({status:"fulfilled",value:s}),e(s)},r.reject=s=>{i({status:"rejected",reason:s}),n(s)},r}var CR=gR;function ER(){let e=[],n=0,r=d=>{d()},i=d=>{d()},s=CR;const u=d=>{n?e.push(d):s(()=>{r(d)})},c=()=>{const d=e;e=[],d.length&&s(()=>{i(()=>{d.forEach(h=>{r(h)})})})};return{batch:d=>{let h;n++;try{h=d()}finally{n--,n||c()}return h},batchCalls:d=>(...h)=>{u(()=>{d(...h)})},schedule:u,setNotifyFunction:d=>{r=d},setBatchNotifyFunction:d=>{i=d},setScheduler:d=>{s=d}}}var sn=ER(),RR=class extends el{#e=!0;#t;#n;constructor(){super(),this.#n=e=>{if(typeof window<"u"&&window.addEventListener){const n=()=>e(!0),r=()=>e(!1);return window.addEventListener("online",n,!1),window.addEventListener("offline",r,!1),()=>{window.removeEventListener("online",n),window.removeEventListener("offline",r)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#n=e,this.#t?.(),this.#t=e(this.setOnline.bind(this))}setOnline(e){this.#e!==e&&(this.#e=e,this.listeners.forEach(r=>{r(e)}))}isOnline(){return this.#e}},Ku=new RR;function TR(e){return Math.min(1e3*2**e,3e4)}function $S(e){return(e??"online")==="online"?Ku.isOnline():!0}var Xh=class extends Error{constructor(e){super("CancelledError"),this.revert=e?.revert,this.silent=e?.silent}};function VS(e){let n=!1,r=0,i;const s=Qh(),u=()=>s.status!=="pending",c=C=>{if(!u()){const E=new Xh(C);b(E),e.onCancel?.(E)}},d=()=>{n=!0},h=()=>{n=!1},m=()=>jm.isFocused()&&(e.networkMode==="always"||Ku.isOnline())&&e.canRun(),y=()=>$S(e.networkMode)&&e.canRun(),g=C=>{u()||(i?.(),s.resolve(C))},b=C=>{u()||(i?.(),s.reject(C))},S=()=>new Promise(C=>{i=E=>{(u()||m())&&C(E)},e.onPause?.()}).then(()=>{i=void 0,u()||e.onContinue?.()}),_=()=>{if(u())return;let C;const E=r===0?e.initialPromise:void 0;try{C=E??e.fn()}catch(T){C=Promise.reject(T)}Promise.resolve(C).then(g).catch(T=>{if(u())return;const O=e.retry??(Hs.isServer()?0:3),A=e.retryDelay??TR,k=typeof A=="function"?A(r,T):A,L=O===!0||typeof O=="number"&&rm()?void 0:S()).then(()=>{n?b(T):_()})})};return{promise:s,status:()=>s.status,cancel:c,continue:()=>(i?.(),s),cancelRetry:d,continueRetry:h,canStart:y,start:()=>(y()?_():S().then(_),s)}}var FS=class{#e;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),Gh(this.gcTime)&&(this.#e=fi.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(Hs.isServer()?1/0:300*1e3))}clearGcTimeout(){this.#e!==void 0&&(fi.clearTimeout(this.#e),this.#e=void 0)}};function OR(e){return{onFetch:(n,r)=>{const i=n.options,s=n.fetchOptions?.meta?.fetchMore?.direction,u=n.state.data?.pages||[],c=n.state.data?.pageParams||[];let d={pages:[],pageParams:[]},h=0;const m=async()=>{let y=!1;const g=_=>{_R(_,()=>n.signal,()=>y=!0)},b=LS(n.options,n.fetchOptions),S=async(_,C,E)=>{if(y)return Promise.reject(n.signal.reason);if(C==null&&_.pages.length)return Promise.resolve(_);const O=(()=>{const U={client:n.client,queryKey:n.queryKey,pageParam:C,direction:E?"backward":"forward",meta:n.options.meta};return g(U),U})(),A=await b(O),{maxPages:k}=n.options,L=E?wR:xR;return{pages:L(_.pages,A,k),pageParams:L(_.pageParams,C,k)}};if(s&&u.length){const _=s==="backward",C=_?AR:B0,E={pages:u,pageParams:c},T=C(i,E);d=await S(E,T,_)}else{const _=e??u.length;do{const C=h===0?c[0]??i.initialPageParam:B0(i,d);if(h>0&&C==null)break;d=await S(d,C),h++}while(h<_)}return d};n.options.persister?n.fetchFn=()=>n.options.persister?.(m,{client:n.client,queryKey:n.queryKey,meta:n.options.meta,signal:n.signal},r):n.fetchFn=m}}}function B0(e,{pages:n,pageParams:r}){const i=n.length-1;return n.length>0?e.getNextPageParam(n[i],n,r[i],r):void 0}function AR(e,{pages:n,pageParams:r}){return n.length>0?e.getPreviousPageParam?.(n[0],n,r[0],r):void 0}var MR=class extends FS{#e;#t;#n;#r;#i;#o;#s;#a;constructor(e){super(),this.#a=!1,this.#s=e.defaultOptions,this.setOptions(e.options),this.observers=[],this.#i=e.client,this.#r=this.#i.getQueryCache(),this.queryKey=e.queryKey,this.queryHash=e.queryHash,this.#t=G0(this.options),this.state=e.state??this.#t,this.scheduleGc()}get meta(){return this.options.meta}get queryType(){return this.#e}get promise(){return this.#o?.promise}setOptions(e){if(this.options={...this.#s,...e},e?._type&&(this.#e=e._type),this.updateGcTime(this.options.gcTime),this.state&&this.state.data===void 0){const n=G0(this.options);n.data!==void 0&&(this.setState(q0(n.data,n.dataUpdatedAt)),this.#t=n)}}optionalRemove(){!this.observers.length&&this.state.fetchStatus==="idle"&&this.#r.remove(this)}setData(e,n){const r=Yh(this.state.data,e,this.options);return this.#l({data:r,type:"success",dataUpdatedAt:n?.updatedAt,manual:n?.manual}),r}setState(e){this.#l({type:"setState",state:e})}cancel(e){const n=this.#o?.promise;return this.#o?.cancel(e),n?n.then(Tn).catch(Tn):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}get resetState(){return this.#t}reset(){this.destroy(),this.setState(this.resetState)}isActive(){return this.observers.some(e=>$n(e.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===Dm||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0?this.observers.some(e=>zo(e.options.staleTime,this)==="static"):!1}isStale(){return this.getObserversCount()>0?this.observers.some(e=>e.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(e=0){return this.state.data===void 0?!0:e==="static"?!1:this.state.isInvalidated?!0:!NS(this.state.dataUpdatedAt,e)}onFocus(){this.observers.find(n=>n.shouldFetchOnWindowFocus())?.refetch({cancelRefetch:!1}),this.#o?.continue()}onOnline(){this.observers.find(n=>n.shouldFetchOnReconnect())?.refetch({cancelRefetch:!1}),this.#o?.continue()}addObserver(e){this.observers.includes(e)||(this.observers.push(e),this.clearGcTimeout(),this.#r.notify({type:"observerAdded",query:this,observer:e}))}removeObserver(e){this.observers.includes(e)&&(this.observers=this.observers.filter(n=>n!==e),this.observers.length||(this.#o&&(this.#a||this.#c()?this.#o.cancel({revert:!0}):this.#o.cancelRetry()),this.scheduleGc()),this.#r.notify({type:"observerRemoved",query:this,observer:e}))}getObserversCount(){return this.observers.length}#c(){return this.state.fetchStatus==="paused"&&this.state.status==="pending"}invalidate(){this.state.isInvalidated||this.#l({type:"invalidate"})}async fetch(e,n){if(this.state.fetchStatus!=="idle"&&this.#o?.status()!=="rejected"){if(this.state.data!==void 0&&n?.cancelRefetch)this.cancel({silent:!0});else if(this.#o)return this.#o.continueRetry(),this.#o.promise}if(e&&this.setOptions(e),!this.options.queryFn){const h=this.observers.find(m=>m.options.queryFn);h&&this.setOptions(h.options)}const r=new AbortController,i=h=>{Object.defineProperty(h,"signal",{enumerable:!0,get:()=>(this.#a=!0,r.signal)})},s=()=>{const h=LS(this.options,n),y=(()=>{const g={client:this.#i,queryKey:this.queryKey,meta:this.meta};return i(g),g})();return this.#a=!1,this.options.persister?this.options.persister(h,y,this):h(y)},c=(()=>{const h={fetchOptions:n,options:this.options,queryKey:this.queryKey,client:this.#i,state:this.state,fetchFn:s};return i(h),h})();(this.#e==="infinite"?OR(this.options.pages):this.options.behavior)?.onFetch(c,this),this.#n=this.state,(this.state.fetchStatus==="idle"||this.state.fetchMeta!==c.fetchOptions?.meta)&&this.#l({type:"fetch",meta:c.fetchOptions?.meta}),this.#o=VS({initialPromise:n?.initialPromise,fn:c.fetchFn,onCancel:h=>{h instanceof Xh&&h.revert&&this.setState({...this.#n,fetchStatus:"idle"}),r.abort()},onFail:(h,m)=>{this.#l({type:"failed",failureCount:h,error:m})},onPause:()=>{this.#l({type:"pause"})},onContinue:()=>{this.#l({type:"continue"})},retry:c.options.retry,retryDelay:c.options.retryDelay,networkMode:c.options.networkMode,canRun:()=>!0});try{const h=await this.#o.start();if(h===void 0)throw new Error(`${this.queryHash} data is undefined`);return this.setData(h),this.#r.config.onSuccess?.(h,this),this.#r.config.onSettled?.(h,this.state.error,this),h}catch(h){if(h instanceof Xh){if(h.silent)return this.#o.promise;if(h.revert){if(this.state.data===void 0)throw h;return this.state.data}}throw this.#l({type:"error",error:h}),this.#r.config.onError?.(h,this),this.#r.config.onSettled?.(this.state.data,h,this),h}finally{this.scheduleGc()}}#l(e){const n=r=>{switch(e.type){case"failed":return{...r,fetchFailureCount:e.failureCount,fetchFailureReason:e.error};case"pause":return{...r,fetchStatus:"paused"};case"continue":return{...r,fetchStatus:"fetching"};case"fetch":return{...r,...US(r.data,this.options),fetchMeta:e.meta??null};case"success":const i={...r,...q0(e.data,e.dataUpdatedAt),dataUpdateCount:r.dataUpdateCount+1,...!e.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};return this.#n=e.manual?i:void 0,i;case"error":const s=e.error;return{...r,error:s,errorUpdateCount:r.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:r.fetchFailureCount+1,fetchFailureReason:s,fetchStatus:"idle",status:"error",isInvalidated:!0};case"invalidate":return{...r,isInvalidated:!0};case"setState":return{...r,...e.state}}};this.state=n(this.state),sn.batch(()=>{this.observers.forEach(r=>{r.onQueryUpdate()}),this.#r.notify({query:this,type:"updated",action:e})})}};function US(e,n){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:$S(n.networkMode)?"fetching":"paused",...e===void 0&&{error:null,status:"pending"}}}function q0(e,n){return{data:e,dataUpdatedAt:n??Date.now(),error:null,isInvalidated:!1,status:"success"}}function G0(e){const n=typeof e.initialData=="function"?e.initialData():e.initialData,r=n!==void 0,i=r?typeof e.initialDataUpdatedAt=="function"?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:n,dataUpdateCount:0,dataUpdatedAt:r?i??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:r?"success":"pending",fetchStatus:"idle"}}var jR=class extends el{constructor(e,n){super(),this.options=n,this.#e=e,this.#a=null,this.#s=Qh(),this.bindMethods(),this.setOptions(n)}#e;#t=void 0;#n=void 0;#r=void 0;#i;#o;#s;#a;#c;#l;#m;#d;#f;#u;#p=new Set;bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(this.#t.addObserver(this),Z0(this.#t,this.options)?this.#h():this.updateResult(),this.#b())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return Jh(this.#t,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return Jh(this.#t,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#S(),this.#x(),this.#t.removeObserver(this)}setOptions(e){const n=this.options,r=this.#t;if(this.options=this.#e.defaultQueryOptions(e),this.options.enabled!==void 0&&typeof this.options.enabled!="boolean"&&typeof this.options.enabled!="function"&&typeof $n(this.options.enabled,this.#t)!="boolean")throw new Error("Expected enabled to be a boolean or a callback that returns a boolean");this.#w(),this.#t.setOptions(this.options),n._defaulted&&!Zh(this.options,n)&&this.#e.getQueryCache().notify({type:"observerOptionsUpdated",query:this.#t,observer:this});const i=this.hasListeners();i&&K0(this.#t,r,this.options,n)&&this.#h(),this.updateResult(),i&&(this.#t!==r||$n(this.options.enabled,this.#t)!==$n(n.enabled,this.#t)||zo(this.options.staleTime,this.#t)!==zo(n.staleTime,this.#t))&&this.#g();const s=this.#v();i&&(this.#t!==r||$n(this.options.enabled,this.#t)!==$n(n.enabled,this.#t)||s!==this.#u)&&this.#y(s)}getOptimisticResult(e){const n=this.#e.getQueryCache().build(this.#e,e),r=this.createResult(n,e);return DR(this,r)&&(this.#r=r,this.#o=this.options,this.#i=this.#t.state),r}getCurrentResult(){return this.#r}trackResult(e,n){return new Proxy(e,{get:(r,i)=>(this.trackProp(i),n?.(i),i==="promise"&&(this.trackProp("data"),!this.options.experimental_prefetchInRender&&this.#s.status==="pending"&&this.#s.reject(new Error("experimental_prefetchInRender feature flag is not enabled"))),Reflect.get(r,i))})}trackProp(e){this.#p.add(e)}getCurrentQuery(){return this.#t}refetch({...e}={}){return this.fetch({...e})}fetchOptimistic(e){const n=this.#e.defaultQueryOptions(e),r=this.#e.getQueryCache().build(this.#e,n);return r.fetch().then(()=>this.createResult(r,n))}fetch(e){return this.#h({...e,cancelRefetch:e.cancelRefetch??!0}).then(()=>(this.updateResult(),this.#r))}#h(e){this.#w();let n=this.#t.fetch(this.options,e);return e?.throwOnError||(n=n.catch(Tn)),n}#g(){this.#S();const e=zo(this.options.staleTime,this.#t);if(Hs.isServer()||this.#r.isStale||!Gh(e))return;const r=NS(this.#r.dataUpdatedAt,e)+1;this.#d=fi.setTimeout(()=>{this.#r.isStale||this.updateResult()},r)}#v(){return(typeof this.options.refetchInterval=="function"?this.options.refetchInterval(this.#t):this.options.refetchInterval)??!1}#y(e){this.#x(),this.#u=e,!(Hs.isServer()||$n(this.options.enabled,this.#t)===!1||!Gh(this.#u)||this.#u===0)&&(this.#f=fi.setInterval(()=>{(this.options.refetchIntervalInBackground||jm.isFocused())&&this.#h()},this.#u))}#b(){this.#g(),this.#y(this.#v())}#S(){this.#d!==void 0&&(fi.clearTimeout(this.#d),this.#d=void 0)}#x(){this.#f!==void 0&&(fi.clearInterval(this.#f),this.#f=void 0)}createResult(e,n){const r=this.#t,i=this.options,s=this.#r,u=this.#i,c=this.#o,h=e!==r?e.state:this.#n,{state:m}=e;let y={...m},g=!1,b;if(n._optimisticResults){const P=this.hasListeners(),ve=!P&&Z0(e,n),ge=P&&K0(e,r,n,i);(ve||ge)&&(y={...y,...US(m.data,e.options)}),n._optimisticResults==="isRestoring"&&(y.fetchStatus="idle")}let{error:S,errorUpdatedAt:_,status:C}=y;b=y.data;let E=!1;if(n.placeholderData!==void 0&&b===void 0&&C==="pending"){let P;s?.isPlaceholderData&&n.placeholderData===c?.placeholderData?(P=s.data,E=!0):P=typeof n.placeholderData=="function"?n.placeholderData(this.#m?.state.data,this.#m):n.placeholderData,P!==void 0&&(C="success",b=Yh(s?.data,P,n),g=!0)}if(n.select&&b!==void 0&&!E)if(s&&b===u?.data&&n.select===this.#c)b=this.#l;else try{this.#c=n.select,b=n.select(b),b=Yh(s?.data,b,n),this.#l=b,this.#a=null}catch(P){this.#a=P}this.#a&&(S=this.#a,b=this.#l,_=Date.now(),C="error");const T=y.fetchStatus==="fetching",O=C==="pending",A=C==="error",k=O&&T,L=b!==void 0,B={status:C,fetchStatus:y.fetchStatus,isPending:O,isSuccess:C==="success",isError:A,isInitialLoading:k,isLoading:k,data:b,dataUpdatedAt:y.dataUpdatedAt,error:S,errorUpdatedAt:_,failureCount:y.fetchFailureCount,failureReason:y.fetchFailureReason,errorUpdateCount:y.errorUpdateCount,isFetched:e.isFetched(),isFetchedAfterMount:y.dataUpdateCount>h.dataUpdateCount||y.errorUpdateCount>h.errorUpdateCount,isFetching:T,isRefetching:T&&!O,isLoadingError:A&&!L,isPaused:y.fetchStatus==="paused",isPlaceholderData:g,isRefetchError:A&&L,isStale:Nm(e,n),refetch:this.refetch,promise:this.#s,isEnabled:$n(n.enabled,e)!==!1};if(this.options.experimental_prefetchInRender){const P=B.data!==void 0,ve=B.status==="error"&&!P,ge=ae=>{ve?ae.reject(B.error):P&&ae.resolve(B.data)},de=()=>{const ae=this.#s=B.promise=Qh();ge(ae)},le=this.#s;switch(le.status){case"pending":e.queryHash===r.queryHash&&ge(le);break;case"fulfilled":(ve||B.data!==le.value)&&de();break;case"rejected":(!ve||B.error!==le.reason)&&de();break}}return B}updateResult(){const e=this.#r,n=this.createResult(this.#t,this.options);if(this.#i=this.#t.state,this.#o=this.options,this.#i.data!==void 0&&(this.#m=this.#t),Zh(n,e))return;this.#r=n;const r=()=>{if(!e)return!0;const{notifyOnChangeProps:i}=this.options,s=typeof i=="function"?i():i;if(s==="all"||!s&&!this.#p.size)return!0;const u=new Set(s??this.#p);return this.options.throwOnError&&u.add("error"),Object.keys(this.#r).some(c=>{const d=c;return this.#r[d]!==e[d]&&u.has(d)})};this.#_({listeners:r()})}#w(){const e=this.#e.getQueryCache().build(this.#e,this.options);if(e===this.#t)return;const n=this.#t;this.#t=e,this.#n=e.state,this.hasListeners()&&(n?.removeObserver(this),e.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#b()}#_(e){sn.batch(()=>{e.listeners&&this.listeners.forEach(n=>{n(this.#r)}),this.#e.getQueryCache().notify({query:this.#t,type:"observerResultsUpdated"})})}};function zR(e,n){return $n(n.enabled,e)!==!1&&e.state.data===void 0&&!(e.state.status==="error"&&$n(n.retryOnMount,e)===!1)}function Z0(e,n){return zR(e,n)||e.state.data!==void 0&&Jh(e,n,n.refetchOnMount)}function Jh(e,n,r){if($n(n.enabled,e)!==!1&&zo(n.staleTime,e)!=="static"){const i=typeof r=="function"?r(e):r;return i==="always"||i!==!1&&Nm(e,n)}return!1}function K0(e,n,r,i){return(e!==n||$n(i.enabled,e)===!1)&&(!r.suspense||e.state.status!=="error")&&Nm(e,r)}function Nm(e,n){return $n(n.enabled,e)!==!1&&e.isStaleByTime(zo(n.staleTime,e))}function DR(e,n){return!Zh(e.getCurrentResult(),n)}var NR=class extends FS{#e;#t;#n;#r;constructor(e){super(),this.#e=e.client,this.mutationId=e.mutationId,this.#n=e.mutationCache,this.#t=[],this.state=e.state||kR(),this.setOptions(e.options),this.scheduleGc()}setOptions(e){this.options=e,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(e){this.#t.includes(e)||(this.#t.push(e),this.clearGcTimeout(),this.#n.notify({type:"observerAdded",mutation:this,observer:e}))}removeObserver(e){this.#t=this.#t.filter(n=>n!==e),this.scheduleGc(),this.#n.notify({type:"observerRemoved",mutation:this,observer:e})}optionalRemove(){this.#t.length||(this.state.status==="pending"?this.scheduleGc():this.#n.remove(this))}continue(){return this.#r?.continue()??this.execute(this.state.variables)}async execute(e){const n=()=>{this.#i({type:"continue"})},r={client:this.#e,meta:this.options.meta,mutationKey:this.options.mutationKey};this.#r=VS({fn:()=>this.options.mutationFn?this.options.mutationFn(e,r):Promise.reject(new Error("No mutationFn found")),onFail:(u,c)=>{this.#i({type:"failed",failureCount:u,error:c})},onPause:()=>{this.#i({type:"pause"})},onContinue:n,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>this.#n.canRun(this)});const i=this.state.status==="pending",s=!this.#r.canStart();try{if(i)n();else{this.#i({type:"pending",variables:e,isPaused:s}),this.#n.config.onMutate&&await this.#n.config.onMutate(e,this,r);const c=await this.options.onMutate?.(e,r);c!==this.state.context&&this.#i({type:"pending",context:c,variables:e,isPaused:s})}const u=await this.#r.start();return await this.#n.config.onSuccess?.(u,e,this.state.context,this,r),await this.options.onSuccess?.(u,e,this.state.context,r),await this.#n.config.onSettled?.(u,null,this.state.variables,this.state.context,this,r),await this.options.onSettled?.(u,null,e,this.state.context,r),this.#i({type:"success",data:u}),u}catch(u){try{await this.#n.config.onError?.(u,e,this.state.context,this,r)}catch(c){Promise.reject(c)}try{await this.options.onError?.(u,e,this.state.context,r)}catch(c){Promise.reject(c)}try{await this.#n.config.onSettled?.(void 0,u,this.state.variables,this.state.context,this,r)}catch(c){Promise.reject(c)}try{await this.options.onSettled?.(void 0,u,e,this.state.context,r)}catch(c){Promise.reject(c)}throw this.#i({type:"error",error:u}),u}finally{this.#n.runNext(this)}}#i(e){const n=r=>{switch(e.type){case"failed":return{...r,failureCount:e.failureCount,failureReason:e.error};case"pause":return{...r,isPaused:!0};case"continue":return{...r,isPaused:!1};case"pending":return{...r,context:e.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:e.isPaused,status:"pending",variables:e.variables,submittedAt:Date.now()};case"success":return{...r,data:e.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...r,data:void 0,error:e.error,failureCount:r.failureCount+1,failureReason:e.error,isPaused:!1,status:"error"}}};this.state=n(this.state),sn.batch(()=>{this.#t.forEach(r=>{r.onMutationUpdate(e)}),this.#n.notify({mutation:this,type:"updated",action:e})})}};function kR(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}var LR=class extends el{constructor(e={}){super(),this.config=e,this.#e=new Set,this.#t=new Map,this.#n=0}#e;#t;#n;build(e,n,r){const i=new NR({client:e,mutationCache:this,mutationId:++this.#n,options:e.defaultMutationOptions(n),state:r});return this.add(i),i}add(e){this.#e.add(e);const n=Cu(e);if(typeof n=="string"){const r=this.#t.get(n);r?r.push(e):this.#t.set(n,[e])}this.notify({type:"added",mutation:e})}remove(e){if(this.#e.delete(e)){const n=Cu(e);if(typeof n=="string"){const r=this.#t.get(n);if(r)if(r.length>1){const i=r.indexOf(e);i!==-1&&r.splice(i,1)}else r[0]===e&&this.#t.delete(n)}}this.notify({type:"removed",mutation:e})}canRun(e){const n=Cu(e);if(typeof n=="string"){const i=this.#t.get(n)?.find(s=>s.state.status==="pending");return!i||i===e}else return!0}runNext(e){const n=Cu(e);return typeof n=="string"?this.#t.get(n)?.find(i=>i!==e&&i.state.isPaused)?.continue()??Promise.resolve():Promise.resolve()}clear(){sn.batch(()=>{this.#e.forEach(e=>{this.notify({type:"removed",mutation:e})}),this.#e.clear(),this.#t.clear()})}getAll(){return Array.from(this.#e)}find(e){const n={exact:!0,...e};return this.getAll().find(r=>U0(n,r))}findAll(e={}){return this.getAll().filter(n=>U0(e,n))}notify(e){sn.batch(()=>{this.listeners.forEach(n=>{n(e)})})}resumePausedMutations(){const e=this.getAll().filter(n=>n.state.isPaused);return sn.batch(()=>Promise.all(e.map(n=>n.continue().catch(Tn))))}};function Cu(e){return e.options.scope?.id}var IR=class extends el{constructor(e={}){super(),this.config=e,this.#e=new Map}#e;build(e,n,r){const i=n.queryKey,s=n.queryHash??zm(i,n);let u=this.get(s);return u||(u=new MR({client:e,queryKey:i,queryHash:s,options:e.defaultQueryOptions(n),state:r,defaultOptions:e.getQueryDefaults(i)}),this.add(u)),u}add(e){this.#e.has(e.queryHash)||(this.#e.set(e.queryHash,e),this.notify({type:"added",query:e}))}remove(e){const n=this.#e.get(e.queryHash);n&&(e.destroy(),n===e&&this.#e.delete(e.queryHash),this.notify({type:"removed",query:e}))}clear(){sn.batch(()=>{this.getAll().forEach(e=>{this.remove(e)})})}get(e){return this.#e.get(e)}getAll(){return[...this.#e.values()]}find(e){const n={exact:!0,...e};return this.getAll().find(r=>F0(n,r))}findAll(e={}){const n=this.getAll();return Object.keys(e).length>0?n.filter(r=>F0(e,r)):n}notify(e){sn.batch(()=>{this.listeners.forEach(n=>{n(e)})})}onFocus(){sn.batch(()=>{this.getAll().forEach(e=>{e.onFocus()})})}onOnline(){sn.batch(()=>{this.getAll().forEach(e=>{e.onOnline()})})}},$R=class{#e;#t;#n;#r;#i;#o;#s;#a;constructor(e={}){this.#e=e.queryCache||new IR,this.#t=e.mutationCache||new LR,this.#n=e.defaultOptions||{},this.#r=new Map,this.#i=new Map,this.#o=0}mount(){this.#o++,this.#o===1&&(this.#s=jm.subscribe(async e=>{e&&(await this.resumePausedMutations(),this.#e.onFocus())}),this.#a=Ku.subscribe(async e=>{e&&(await this.resumePausedMutations(),this.#e.onOnline())}))}unmount(){this.#o--,this.#o===0&&(this.#s?.(),this.#s=void 0,this.#a?.(),this.#a=void 0)}isFetching(e){return this.#e.findAll({...e,fetchStatus:"fetching"}).length}isMutating(e){return this.#t.findAll({...e,status:"pending"}).length}getQueryData(e){const n=this.defaultQueryOptions({queryKey:e});return this.#e.get(n.queryHash)?.state.data}ensureQueryData(e){const n=this.defaultQueryOptions(e),r=this.#e.build(this,n),i=r.state.data;return i===void 0?this.fetchQuery(e):(e.revalidateIfStale&&r.isStaleByTime(zo(n.staleTime,r))&&this.prefetchQuery(n),Promise.resolve(i))}getQueriesData(e){return this.#e.findAll(e).map(({queryKey:n,state:r})=>{const i=r.data;return[n,i]})}setQueryData(e,n,r){const i=this.defaultQueryOptions({queryKey:e}),u=this.#e.get(i.queryHash)?.state.data,c=yR(n,u);if(c!==void 0)return this.#e.build(this,i).setData(c,{...r,manual:!0})}setQueriesData(e,n,r){return sn.batch(()=>this.#e.findAll(e).map(({queryKey:i})=>[i,this.setQueryData(i,n,r)]))}getQueryState(e){const n=this.defaultQueryOptions({queryKey:e});return this.#e.get(n.queryHash)?.state}removeQueries(e){const n=this.#e;sn.batch(()=>{n.findAll(e).forEach(r=>{n.remove(r)})})}resetQueries(e,n){const r=this.#e;return sn.batch(()=>(r.findAll(e).forEach(i=>{i.reset()}),this.refetchQueries({type:"active",...e},n)))}cancelQueries(e,n={}){const r={revert:!0,...n},i=sn.batch(()=>this.#e.findAll(e).map(s=>s.cancel(r)));return Promise.all(i).then(Tn).catch(Tn)}invalidateQueries(e,n={}){return sn.batch(()=>(this.#e.findAll(e).forEach(r=>{r.invalidate()}),e?.refetchType==="none"?Promise.resolve():this.refetchQueries({...e,type:e?.refetchType??e?.type??"active"},n)))}refetchQueries(e,n={}){const r={...n,cancelRefetch:n.cancelRefetch??!0},i=sn.batch(()=>this.#e.findAll(e).filter(s=>!s.isDisabled()&&!s.isStatic()).map(s=>{let u=s.fetch(void 0,r);return r.throwOnError||(u=u.catch(Tn)),s.state.fetchStatus==="paused"?Promise.resolve():u}));return Promise.all(i).then(Tn)}fetchQuery(e){const n=this.defaultQueryOptions(e);n.retry===void 0&&(n.retry=!1);const r=this.#e.build(this,n);return r.isStaleByTime(zo(n.staleTime,r))?r.fetch(n):Promise.resolve(r.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(Tn).catch(Tn)}fetchInfiniteQuery(e){return e._type="infinite",this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(Tn).catch(Tn)}ensureInfiniteQueryData(e){return e._type="infinite",this.ensureQueryData(e)}resumePausedMutations(){return Ku.isOnline()?this.#t.resumePausedMutations():Promise.resolve()}getQueryCache(){return this.#e}getMutationCache(){return this.#t}getDefaultOptions(){return this.#n}setDefaultOptions(e){this.#n=e}setQueryDefaults(e,n){this.#r.set(Fs(e),{queryKey:e,defaultOptions:n})}getQueryDefaults(e){const n=[...this.#r.values()],r={};return n.forEach(i=>{Us(e,i.queryKey)&&Object.assign(r,i.defaultOptions)}),r}setMutationDefaults(e,n){this.#i.set(Fs(e),{mutationKey:e,defaultOptions:n})}getMutationDefaults(e){const n=[...this.#i.values()],r={};return n.forEach(i=>{Us(e,i.mutationKey)&&Object.assign(r,i.defaultOptions)}),r}defaultQueryOptions(e){if(e._defaulted)return e;const n={...this.#n.queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return n.queryHash||(n.queryHash=zm(n.queryKey,n)),n.refetchOnReconnect===void 0&&(n.refetchOnReconnect=n.networkMode!=="always"),n.throwOnError===void 0&&(n.throwOnError=!!n.suspense),!n.networkMode&&n.persister&&(n.networkMode="offlineFirst"),n.queryFn===Dm&&(n.enabled=!1),n}defaultMutationOptions(e){return e?._defaulted?e:{...this.#n.mutations,...e?.mutationKey&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){this.#e.clear(),this.#t.clear()}},HS=x.createContext(void 0),tl=e=>{const n=x.useContext(HS);if(!n)throw new Error("No QueryClient set, use QueryClientProvider to set one");return n},VR=({client:e,children:n})=>(x.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),v.jsx(HS.Provider,{value:e,children:n})),PS=x.createContext(!1),FR=()=>x.useContext(PS);PS.Provider;function UR(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var HR=x.createContext(UR()),PR=()=>x.useContext(HR),BR=(e,n,r)=>{const i=r?.state.error&&typeof e.throwOnError=="function"?IS(e.throwOnError,[r.state.error,r]):e.throwOnError;(e.suspense||e.experimental_prefetchInRender||i)&&(n.isReset()||(e.retryOnMount=!1))},qR=e=>{x.useEffect(()=>{e.clearReset()},[e])},GR=({result:e,errorResetBoundary:n,throwOnError:r,query:i,suspense:s})=>e.isError&&!n.isReset()&&!e.isFetching&&i&&(s&&e.data===void 0||IS(r,[e.error,i])),ZR=e=>{if(e.suspense){const r=s=>s==="static"?s:Math.max(s??1e3,1e3),i=e.staleTime;e.staleTime=typeof i=="function"?(...s)=>r(i(...s)):r(i),typeof e.gcTime=="number"&&(e.gcTime=Math.max(e.gcTime,1e3))}},KR=(e,n)=>e.isLoading&&e.isFetching&&!n,YR=(e,n)=>e?.suspense&&n.isPending,Y0=(e,n,r)=>n.fetchOptimistic(e).catch(()=>{r.clearReset()});function QR(e,n,r){const i=FR(),s=PR(),u=tl(),c=u.defaultQueryOptions(e);u.getDefaultOptions().queries?._experimental_beforeQuery?.(c);const d=u.getQueryCache().get(c.queryHash),h=e.subscribed!==!1;c._optimisticResults=i?"isRestoring":h?"optimistic":void 0,ZR(c),BR(c,s,d),qR(s);const m=!u.getQueryCache().get(c.queryHash),[y]=x.useState(()=>new n(u,c)),g=y.getOptimisticResult(c),b=!i&&h;if(x.useSyncExternalStore(x.useCallback(S=>{const _=b?y.subscribe(sn.batchCalls(S)):Tn;return y.updateResult(),_},[y,b]),()=>y.getCurrentResult(),()=>y.getCurrentResult()),x.useEffect(()=>{y.setOptions(c)},[c,y]),YR(c,g))throw Y0(c,y,s);if(GR({result:g,errorResetBoundary:s,throwOnError:c.throwOnError,query:d,suspense:c.suspense}))throw g.error;return u.getDefaultOptions().queries?._experimental_afterQuery?.(c,g),c.experimental_prefetchInRender&&!Hs.isServer()&&KR(g,i)&&(m?Y0(c,y,s):d?.promise)?.catch(Tn).finally(()=>{y.updateResult()}),c.notifyOnChangeProps?g:y.trackResult(g)}function Mn(e,n){return QR(e,jR)}function BS(){throw location.href="/auth/login?next="+encodeURIComponent(location.pathname+location.search),new Error("signing in…")}async function Vn(e){const n=await fetch(e);if(n.status===401&&BS(),!n.ok)throw new Error(await n.text());return n.json()}async function Ao(e,n,r){const i={method:e};r!==void 0&&(i.headers={"Content-Type":"application/json"},i.body=JSON.stringify(r));const s=await fetch(n,i);if(!s.ok)throw new Error(await s.text());return s.status===204?{}:s.json()}async function Oa(e,n){const r=await fetch(e,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n||{})});if(r.status===401&&BS(),!r.ok)throw new Error(await r.text());return r.json()}function XR(){return Mn({queryKey:["config"],queryFn:async()=>{const e=await Vn("/api/config");return e.auth.enabled&&!e.me&&(location.href="/auth/login?next="+encodeURIComponent(location.pathname+location.search),await new Promise(()=>{})),e},staleTime:1/0})}var Si=DS();const JR=zS(Si);function Q0(e,n){if(typeof e=="function")return e(n);e!=null&&(e.current=n)}function Aa(...e){return n=>{let r=!1;const i=e.map(s=>{const u=Q0(s,n);return!r&&typeof u=="function"&&(r=!0),u});if(r)return()=>{for(let s=0;s{let{children:s,...u}=r,c=null,d=!1;const h=[];X0(s)&&typeof Eu=="function"&&(s=Eu(s._payload)),x.Children.forEach(s,b=>{if(oT(b)){d=!0;const S=b;let _="child"in S.props?S.props.child:S.props.children;X0(_)&&typeof Eu=="function"&&(_=Eu(_._payload)),c=tT(S,_),h.push(c?.props?.children)}else h.push(b)}),c?c=x.cloneElement(c,void 0,h):!d&&x.Children.count(s)===1&&x.isValidElement(s)&&(c=s);const m=c?rT(c):void 0,y=ot(i,m);if(!c){if(s||s===0)throw new Error(d?lT(e):sT(e));return s}const g=nT(u,c.props??{});return c.type!==x.Fragment&&(g.ref=i?y:m),x.cloneElement(c,g)});return n.displayName=`${e}.Slot`,n}var WR=hi("Slot"),qS=Symbol.for("radix.slottable");function eT(e){const n=r=>"child"in r?r.children(r.child):r.children;return n.displayName=`${e}.Slottable`,n.__radixId=qS,n}var tT=(e,n)=>{if("child"in e.props){const r=e.props.child;return x.isValidElement(r)?x.cloneElement(r,void 0,e.props.children(r.props.children)):null}return x.isValidElement(n)?n:null};function nT(e,n){const r={...n};for(const i in n){const s=e[i],u=n[i];/^on[A-Z]/.test(i)?s&&u?r[i]=(...d)=>{const h=u(...d);return s(...d),h}:s&&(r[i]=s):i==="style"?r[i]={...s,...u}:i==="className"&&(r[i]=[s,u].filter(Boolean).join(" "))}return{...e,...r}}function rT(e){let n=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,r=n&&"isReactWarning"in n&&n.isReactWarning;return r?e.ref:(n=Object.getOwnPropertyDescriptor(e,"ref")?.get,r=n&&"isReactWarning"in n&&n.isReactWarning,r?e.props.ref:e.props.ref||e.ref)}function oT(e){return x.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===qS}var iT=Symbol.for("react.lazy");function X0(e){return e!=null&&typeof e=="object"&&"$$typeof"in e&&e.$$typeof===iT&&"_payload"in e&&aT(e._payload)}function aT(e){return typeof e=="object"&&e!==null&&"then"in e}var sT=e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,lT=e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,Eu=gc[" use ".trim().toString()],uT=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],Fe=uT.reduce((e,n)=>{const r=hi(`Primitive.${n}`),i=x.forwardRef((s,u)=>{const{asChild:c,...d}=s,h=c?r:n;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),v.jsx(h,{...d,ref:u})});return i.displayName=`Primitive.${n}`,{...e,[n]:i}},{});function GS(e,n){e&&Si.flushSync(()=>e.dispatchEvent(n))}var ZS=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"}),cT="VisuallyHidden",KS=x.forwardRef((e,n)=>v.jsx(Fe.span,{...e,ref:n,style:{...ZS,...e.style}}));KS.displayName=cT;var dT=KS;function $o(e,n=[]){let r=[];function i(u,c){const d=x.createContext(c);d.displayName=u+"Context";const h=r.length;r=[...r,c];const m=g=>{const{scope:b,children:S,..._}=g,C=b?.[e]?.[h]||d,E=x.useMemo(()=>_,Object.values(_));return v.jsx(C.Provider,{value:E,children:S})};m.displayName=u+"Provider";function y(g,b,S={}){const{optional:_=!1}=S,C=b?.[e]?.[h]||d,E=x.useContext(C);if(E)return E;if(c!==void 0)return c;if(!_)throw new Error(`\`${g}\` must be used within \`${u}\``)}return[m,y]}const s=()=>{const u=r.map(c=>x.createContext(c));return function(d){const h=d?.[e]||u;return x.useMemo(()=>({[`__scope${e}`]:{...d,[e]:h}}),[d,h])}};return s.scopeName=e,[i,fT(s,...n)]}function fT(...e){const n=e[0];if(e.length===1)return n;const r=()=>{const i=e.map(s=>({useScope:s(),scopeName:s.scopeName}));return function(u){const c=i.reduce((d,{useScope:h,scopeName:m})=>{const g=h(u)[`__scope${m}`];return{...d,...g}},{});return x.useMemo(()=>({[`__scope${n.scopeName}`]:c}),[c])}};return r.scopeName=n.scopeName,r}function km(e){const n=e+"CollectionProvider",[r,i]=$o(n),[s,u]=r(n,{collectionRef:{current:null},itemMap:new Map}),c=C=>{const{scope:E,children:T}=C,O=x.useRef(null),A=x.useRef(new Map).current;return v.jsx(s,{scope:E,itemMap:A,collectionRef:O,children:T})};c.displayName=n;const d=e+"CollectionSlot",h=hi(d),m=x.forwardRef((C,E)=>{const{scope:T,children:O}=C,A=u(d,T),k=ot(E,A.collectionRef);return v.jsx(h,{ref:k,children:O})});m.displayName=d;const y=e+"CollectionItemSlot",g="data-radix-collection-item",b=hi(y),S=x.forwardRef((C,E)=>{const{scope:T,children:O,...A}=C,k=x.useRef(null),L=ot(E,k),U=u(y,T);return x.useEffect(()=>(U.itemMap.set(k,{ref:k,...A}),()=>{U.itemMap.delete(k)})),v.jsx(b,{[g]:"",ref:L,children:O})});S.displayName=y;function _(C){const E=u(e+"CollectionConsumer",C);return x.useCallback(()=>{const O=E.collectionRef.current;if(!O)return[];const A=Array.from(O.querySelectorAll(`[${g}]`));return Array.from(E.itemMap.values()).sort((U,B)=>A.indexOf(U.ref.current)-A.indexOf(B.ref.current))},[E.collectionRef,E.itemMap])}return[{Provider:c,Slot:m,ItemSlot:S},_,i]}function Re(e,n,{checkForDefaultPrevented:r=!0}={}){return function(s){if(e?.(s),r===!1||!s||!s.defaultPrevented)return n?.(s)}}var Qt=globalThis?.document?x.useLayoutEffect:()=>{},hT=gc[" useInsertionEffect ".trim().toString()]||Qt;function Ma({prop:e,defaultProp:n,onChange:r=()=>{},caller:i}){const[s,u,c]=mT({defaultProp:n,onChange:r}),d=e!==void 0,h=d?e:s;{const y=x.useRef(e!==void 0);x.useEffect(()=>{const g=y.current;g!==d&&console.warn(`${i} is changing from ${g?"controlled":"uncontrolled"} to ${d?"controlled":"uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),y.current=d},[d,i])}const m=x.useCallback(y=>{if(d){const g=pT(y)?y(e):y;g!==e&&c.current?.(g)}else u(y)},[d,e,u,c]);return[h,m]}function mT({defaultProp:e,onChange:n}){const[r,i]=x.useState(e),s=x.useRef(r),u=x.useRef(n);return hT(()=>{u.current=n},[n]),x.useEffect(()=>{s.current!==r&&(u.current?.(r),s.current=r)},[r,s]),[r,i,u]}function pT(e){return typeof e=="function"}function gT(e,n){return x.useReducer((r,i)=>n[r][i]??r,e)}var hr=e=>{const{present:n,children:r}=e,i=vT(n),s=typeof r=="function"?r({present:i.isPresent}):x.Children.only(r),u=yT(i.ref,bT(s));return typeof r=="function"||i.isPresent?x.cloneElement(s,{ref:u}):null};hr.displayName="Presence";function vT(e){const[n,r]=x.useState(),i=x.useRef(null),s=x.useRef(e),u=x.useRef("none"),c=x.useRef(void 0),d=e?"mounted":"unmounted",[h,m]=gT(d,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return x.useEffect(()=>{h==="mounted"?(u.current=c.current??Os(i.current),c.current=void 0):u.current="none"},[h]),Qt(()=>{const y=i.current,g=s.current;if(g!==e){const S=u.current,_=Os(y);e?(c.current=_,m("MOUNT")):_==="none"||y?.display==="none"?m("UNMOUNT"):m(g&&S!==_?"ANIMATION_OUT":"UNMOUNT"),s.current=e}},[e,m]),Qt(()=>{if(n){let y;const g=n.ownerDocument.defaultView??window,b=_=>{const E=Os(i.current).includes(CSS.escape(_.animationName));if(_.target===n&&E&&(m("ANIMATION_END"),!s.current)){const T=n.style.animationFillMode;n.style.animationFillMode="forwards",y=g.setTimeout(()=>{n.style.animationFillMode==="forwards"&&(n.style.animationFillMode=T)})}},S=_=>{_.target===n&&(u.current=Os(i.current))};return n.addEventListener("animationstart",S),n.addEventListener("animationcancel",b),n.addEventListener("animationend",b),()=>{g.clearTimeout(y),n.removeEventListener("animationstart",S),n.removeEventListener("animationcancel",b),n.removeEventListener("animationend",b)}}else m("ANIMATION_END")},[n,m]),{isPresent:["mounted","unmountSuspended"].includes(h),ref:x.useCallback(y=>{if(y){const g=getComputedStyle(y);i.current=g,c.current=Os(g)}else i.current=null;r(y)},[])}}function J0(e,n){if(typeof e=="function")return e(n);e!=null&&(e.current=n)}function yT(...e){const n=x.useRef(e);return n.current=e,x.useCallback(r=>{const i=n.current;let s=!1;const u=i.map(c=>{const d=J0(c,r);return!s&&typeof d=="function"&&(s=!0),d});if(s)return()=>{for(let c=0;c{}),xT=0;function fn(e){const[n,r]=x.useState(ST());return Qt(()=>{r(i=>i??String(xT++))},[e]),n?`radix-${n}`:""}var wT=x.createContext(void 0);function Lm(e){const n=x.useContext(wT);return e||n||"ltr"}function tr(e){const n=x.useRef(e);return x.useEffect(()=>{n.current=e}),x.useMemo(()=>((...r)=>n.current?.(...r)),[])}var _T="DismissableLayer",Wh="dismissableLayer.update",CT="dismissableLayer.pointerDownOutside",ET="dismissableLayer.focusOutside",W0,Im=x.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),nl=x.forwardRef((e,n)=>{const{disableOutsidePointerEvents:r=!1,deferPointerDownOutside:i=!1,onEscapeKeyDown:s,onPointerDownOutside:u,onFocusOutside:c,onInteractOutside:d,onDismiss:h,...m}=e,y=x.useContext(Im),[g,b]=x.useState(null),S=g?.ownerDocument??globalThis?.document,[,_]=x.useState({}),C=ot(n,b),E=Array.from(y.layers),[T]=[...y.layersWithOutsidePointerEventsDisabled].slice(-1),O=T?E.indexOf(T):-1,A=g?E.indexOf(g):-1,k=y.layersWithOutsidePointerEventsDisabled.size>0,L=A>=O,U=x.useRef(!1),B=MT(de=>{u?.(de),d?.(de),de.defaultPrevented||h?.()},{ownerDocument:S,deferPointerDownOutside:i,isDeferredPointerDownOutsideRef:U,dismissableSurfaces:y.dismissableSurfaces,shouldHandlePointerDownOutside:x.useCallback(de=>{if(!(de instanceof Node))return!1;const le=[...y.branches].some(ae=>ae.contains(de));return L&&!le},[y.branches,L])}),P=jT(de=>{if(i&&U.current)return;const le=de.target;[...y.branches].some(he=>he.contains(le))||(c?.(de),d?.(de),de.defaultPrevented||h?.())},S),ve=g?A===E.length-1:!1,ge=tr(de=>{de.key==="Escape"&&(s?.(de),!de.defaultPrevented&&h&&(de.preventDefault(),h()))});return x.useEffect(()=>{if(ve)return S.addEventListener("keydown",ge,{capture:!0}),()=>S.removeEventListener("keydown",ge,{capture:!0})},[S,ve,ge]),x.useEffect(()=>{if(g)return r&&(y.layersWithOutsidePointerEventsDisabled.size===0&&(W0=S.body.style.pointerEvents,S.body.style.pointerEvents="none"),y.layersWithOutsidePointerEventsDisabled.add(g)),y.layers.add(g),eb(),()=>{r&&(y.layersWithOutsidePointerEventsDisabled.delete(g),y.layersWithOutsidePointerEventsDisabled.size===0&&(S.body.style.pointerEvents=W0))}},[g,S,r,y]),x.useEffect(()=>()=>{g&&(y.layers.delete(g),y.layersWithOutsidePointerEventsDisabled.delete(g),eb())},[g,y]),x.useEffect(()=>{const de=()=>_({});return document.addEventListener(Wh,de),()=>document.removeEventListener(Wh,de)},[]),v.jsx(Fe.div,{...m,ref:C,style:{pointerEvents:k?L?"auto":"none":void 0,...e.style},onFocusCapture:Re(e.onFocusCapture,P.onFocusCapture),onBlurCapture:Re(e.onBlurCapture,P.onBlurCapture),onPointerDownCapture:Re(e.onPointerDownCapture,B.onPointerDownCapture)})});nl.displayName=_T;var RT="DismissableLayerBranch",TT=x.forwardRef((e,n)=>{const r=x.useContext(Im),i=x.useRef(null),s=ot(n,i);return x.useEffect(()=>{const u=i.current;if(u)return r.branches.add(u),()=>{r.branches.delete(u)}},[r.branches]),v.jsx(Fe.div,{...e,ref:s})});TT.displayName=RT;function OT(){const e=x.useContext(Im),[n,r]=x.useState(null);return x.useEffect(()=>{if(n)return e.dismissableSurfaces.add(n),()=>{e.dismissableSurfaces.delete(n)}},[n,e.dismissableSurfaces]),r}var AT=()=>!0;function MT(e,n){const{ownerDocument:r=globalThis?.document,deferPointerDownOutside:i=!1,isDeferredPointerDownOutsideRef:s,dismissableSurfaces:u,shouldHandlePointerDownOutside:c=AT}=n,d=tr(e),h=x.useRef(!1),m=x.useRef(!1),y=x.useRef(new Map),g=x.useRef(()=>{});return x.useEffect(()=>{function b(){m.current=!1,s.current=!1,y.current.clear()}function S(){return Array.from(y.current.values()).some(Boolean)}function _(A){if(!m.current)return;const k=A.target;k instanceof Node&&[...u].some(U=>U.contains(k))||y.current.set(A.type,!0),A.type==="click"&&window.setTimeout(()=>{m.current&&g.current()},0)}function C(A){m.current&&y.current.set(A.type,!1)}const E=A=>{if(A.target&&!h.current){let k=function(){r.removeEventListener("click",g.current);const U=S();b(),U||YS(CT,d,L,{discrete:!0})};if(!c(A.target)){r.removeEventListener("click",g.current),b(),h.current=!1;return}const L={originalEvent:A};m.current=!0,s.current=i&&A.button===0,y.current.clear(),!i||A.button!==0?k():(r.removeEventListener("click",g.current),g.current=k,r.addEventListener("click",g.current,{once:!0}))}else r.removeEventListener("click",g.current),b();h.current=!1},T=["pointerup","mousedown","mouseup","touchstart","touchend","click"];for(const A of T)r.addEventListener(A,_,!0),r.addEventListener(A,C);const O=window.setTimeout(()=>{r.addEventListener("pointerdown",E)},0);return()=>{window.clearTimeout(O),r.removeEventListener("pointerdown",E),r.removeEventListener("click",g.current);for(const A of T)r.removeEventListener(A,_,!0),r.removeEventListener(A,C)}},[r,d,i,s,u,c]),{onPointerDownCapture:()=>h.current=!0}}function jT(e,n=globalThis?.document){const r=tr(e),i=x.useRef(!1);return x.useEffect(()=>{const s=u=>{u.target&&!i.current&&YS(ET,r,{originalEvent:u},{discrete:!1})};return n.addEventListener("focusin",s),()=>n.removeEventListener("focusin",s)},[n,r]),{onFocusCapture:()=>i.current=!0,onBlurCapture:()=>i.current=!1}}function eb(){const e=new CustomEvent(Wh);document.dispatchEvent(e)}function YS(e,n,r,{discrete:i}){const s=r.originalEvent.target,u=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:r});n&&s.addEventListener(e,n,{once:!0}),i?GS(s,u):s.dispatchEvent(u)}var mh="focusScope.autoFocusOnMount",ph="focusScope.autoFocusOnUnmount",tb={bubbles:!1,cancelable:!0},zT="FocusScope",vc=x.forwardRef((e,n)=>{const{loop:r=!1,trapped:i=!1,onMountAutoFocus:s,onUnmountAutoFocus:u,...c}=e,[d,h]=x.useState(null),m=tr(s),y=tr(u),g=x.useRef(null),b=ot(n,h),S=x.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;x.useEffect(()=>{if(i){let C=function(A){if(S.paused||!d)return;const k=A.target;d.contains(k)?g.current=k:Oo(g.current,{select:!0})},E=function(A){if(S.paused||!d)return;const k=A.relatedTarget;k!==null&&(d.contains(k)||Oo(g.current,{select:!0}))},T=function(A){if(document.activeElement===document.body)for(const L of A)L.removedNodes.length>0&&Oo(d)};document.addEventListener("focusin",C),document.addEventListener("focusout",E);const O=new MutationObserver(T);return d&&O.observe(d,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",C),document.removeEventListener("focusout",E),O.disconnect()}}},[i,d,S.paused]),x.useEffect(()=>{if(d){rb.add(S);const C=document.activeElement;if(!d.contains(C)){const T=new CustomEvent(mh,tb);d.addEventListener(mh,m),d.dispatchEvent(T),T.defaultPrevented||(DT($T(QS(d)),{select:!0}),document.activeElement===C&&Oo(d))}return()=>{d.removeEventListener(mh,m),setTimeout(()=>{const T=new CustomEvent(ph,tb);d.addEventListener(ph,y),d.dispatchEvent(T),T.defaultPrevented||Oo(C??document.body,{select:!0}),d.removeEventListener(ph,y),rb.remove(S)},0)}}},[d,m,y,S]);const _=x.useCallback(C=>{if(!r&&!i||S.paused)return;const E=C.key==="Tab"&&!C.altKey&&!C.ctrlKey&&!C.metaKey,T=document.activeElement;if(E&&T){const O=C.currentTarget,[A,k]=NT(O);A&&k?!C.shiftKey&&T===k?(C.preventDefault(),r&&Oo(A,{select:!0})):C.shiftKey&&T===A&&(C.preventDefault(),r&&Oo(k,{select:!0})):T===O&&C.preventDefault()}},[r,i,S.paused]);return v.jsx(Fe.div,{tabIndex:-1,...c,ref:b,onKeyDown:_})});vc.displayName=zT;function DT(e,{select:n=!1}={}){const r=document.activeElement;for(const i of e)if(Oo(i,{select:n}),document.activeElement!==r)return}function NT(e){const n=QS(e),r=nb(n,e),i=nb(n.reverse(),e);return[r,i]}function QS(e){const n=[],r=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:i=>{const s=i.tagName==="INPUT"&&i.type==="hidden";return i.disabled||i.hidden||s?NodeFilter.FILTER_SKIP:i.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;r.nextNode();)n.push(r.currentNode);return n}function nb(e,n){const r=typeof n.checkVisibility=="function"&&n.checkVisibility({checkVisibilityCSS:!0});for(const i of e)if(!(r?!i.checkVisibility({checkVisibilityCSS:!0}):kT(i,{upTo:n})))return i}function kT(e,{upTo:n}){if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(n!==void 0&&e===n)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1}function LT(e){return e instanceof HTMLInputElement&&"select"in e}function Oo(e,{select:n=!1}={}){if(e&&e.focus){const r=document.activeElement;e.focus({preventScroll:!0}),e!==r&<(e)&&n&&e.select()}}var rb=IT();function IT(){let e=[];return{add(n){const r=e[0];n!==r&&r?.pause(),e=ob(e,n),e.unshift(n)},remove(n){e=ob(e,n),e[0]?.resume()}}}function ob(e,n){const r=[...e],i=r.indexOf(n);return i!==-1&&r.splice(i,1),r}function $T(e){return e.filter(n=>n.tagName!=="A")}var VT="Portal",rl=x.forwardRef((e,n)=>{const{container:r,...i}=e,[s,u]=x.useState(!1);Qt(()=>u(!0),[]);const c=r||s&&globalThis?.document?.body;return c?Si.createPortal(v.jsx(Fe.div,{...i,ref:n}),c):null});rl.displayName=VT;var Ru=0,ha=null;function $m(){x.useEffect(()=>{ha||(ha={start:ib(),end:ib()});const{start:e,end:n}=ha;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement("afterbegin",e),document.body.lastElementChild!==n&&document.body.insertAdjacentElement("beforeend",n),Ru++,()=>{Ru===1&&(ha?.start.remove(),ha?.end.remove(),ha=null),Ru=Math.max(0,Ru-1)}},[])}function ib(){const e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}var Cr=function(){return Cr=Object.assign||function(n){for(var r,i=1,s=arguments.length;i"u")return nO;var n=rO(e),r=document.documentElement.clientWidth,i=window.innerWidth;return{left:n[0],top:n[1],right:n[2],gap:Math.max(0,i-r+n[2]-n[0])}},iO=ex(),Ea="data-scroll-locked",aO=function(e,n,r,i){var s=e.left,u=e.top,c=e.right,d=e.gap;return r===void 0&&(r="margin"),` + .`.concat(UT,` { + overflow: hidden `).concat(i,`; + padding-right: `).concat(d,"px ").concat(i,`; + } + body[`).concat(Ea,`] { + overflow: hidden `).concat(i,`; + overscroll-behavior: contain; + `).concat([n&&"position: relative ".concat(i,";"),r==="margin"&&` + padding-left: `.concat(s,`px; + padding-top: `).concat(u,`px; + padding-right: `).concat(c,`px; + margin-left:0; + margin-top:0; + margin-right: `).concat(d,"px ").concat(i,`; + `),r==="padding"&&"padding-right: ".concat(d,"px ").concat(i,";")].filter(Boolean).join(""),` + } + + .`).concat(Hu,` { + right: `).concat(d,"px ").concat(i,`; + } + + .`).concat(Pu,` { + margin-right: `).concat(d,"px ").concat(i,`; + } + + .`).concat(Hu," .").concat(Hu,` { + right: 0 `).concat(i,`; + } + + .`).concat(Pu," .").concat(Pu,` { + margin-right: 0 `).concat(i,`; + } + + body[`).concat(Ea,`] { + `).concat(HT,": ").concat(d,`px; + } +`)},sb=function(){var e=parseInt(document.body.getAttribute(Ea)||"0",10);return isFinite(e)?e:0},sO=function(){x.useEffect(function(){return document.body.setAttribute(Ea,(sb()+1).toString()),function(){var e=sb()-1;e<=0?document.body.removeAttribute(Ea):document.body.setAttribute(Ea,e.toString())}},[])},lO=function(e){var n=e.noRelative,r=e.noImportant,i=e.gapMode,s=i===void 0?"margin":i;sO();var u=x.useMemo(function(){return oO(s)},[s]);return x.createElement(iO,{styles:aO(u,!n,s,r?"":"!important")})},em=!1;if(typeof window<"u")try{var Tu=Object.defineProperty({},"passive",{get:function(){return em=!0,!0}});window.addEventListener("test",Tu,Tu),window.removeEventListener("test",Tu,Tu)}catch{em=!1}var ma=em?{passive:!1}:!1,uO=function(e){return e.tagName==="TEXTAREA"},tx=function(e,n){if(!(e instanceof Element))return!1;var r=window.getComputedStyle(e);return r[n]!=="hidden"&&!(r.overflowY===r.overflowX&&!uO(e)&&r[n]==="visible")},cO=function(e){return tx(e,"overflowY")},dO=function(e){return tx(e,"overflowX")},lb=function(e,n){var r=n.ownerDocument,i=n;do{typeof ShadowRoot<"u"&&i instanceof ShadowRoot&&(i=i.host);var s=nx(e,i);if(s){var u=rx(e,i),c=u[1],d=u[2];if(c>d)return!0}i=i.parentNode}while(i&&i!==r.body);return!1},fO=function(e){var n=e.scrollTop,r=e.scrollHeight,i=e.clientHeight;return[n,r,i]},hO=function(e){var n=e.scrollLeft,r=e.scrollWidth,i=e.clientWidth;return[n,r,i]},nx=function(e,n){return e==="v"?cO(n):dO(n)},rx=function(e,n){return e==="v"?fO(n):hO(n)},mO=function(e,n){return e==="h"&&n==="rtl"?-1:1},pO=function(e,n,r,i,s){var u=mO(e,window.getComputedStyle(n).direction),c=u*i,d=r.target,h=n.contains(d),m=!1,y=c>0,g=0,b=0;do{if(!d)break;var S=rx(e,d),_=S[0],C=S[1],E=S[2],T=C-E-u*_;(_||T)&&nx(e,d)&&(g+=T,b+=_);var O=d.parentNode;d=O&&O.nodeType===Node.DOCUMENT_FRAGMENT_NODE?O.host:O}while(!h&&d!==document.body||h&&(n.contains(d)||n===d));return(y&&Math.abs(g)<1||!y&&Math.abs(b)<1)&&(m=!0),m},Ou=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},ub=function(e){return[e.deltaX,e.deltaY]},cb=function(e){return e&&"current"in e?e.current:e},gO=function(e,n){return e[0]===n[0]&&e[1]===n[1]},vO=function(e){return` + .block-interactivity-`.concat(e,` {pointer-events: none;} + .allow-interactivity-`).concat(e,` {pointer-events: all;} +`)},yO=0,pa=[];function bO(e){var n=x.useRef([]),r=x.useRef([0,0]),i=x.useRef(),s=x.useState(yO++)[0],u=x.useState(ex)[0],c=x.useRef(e);x.useEffect(function(){c.current=e},[e]),x.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(s));var C=FT([e.lockRef.current],(e.shards||[]).map(cb),!0).filter(Boolean);return C.forEach(function(E){return E.classList.add("allow-interactivity-".concat(s))}),function(){document.body.classList.remove("block-interactivity-".concat(s)),C.forEach(function(E){return E.classList.remove("allow-interactivity-".concat(s))})}}},[e.inert,e.lockRef.current,e.shards]);var d=x.useCallback(function(C,E){if("touches"in C&&C.touches.length===2||C.type==="wheel"&&C.ctrlKey)return!c.current.allowPinchZoom;var T=Ou(C),O=r.current,A="deltaX"in C?C.deltaX:O[0]-T[0],k="deltaY"in C?C.deltaY:O[1]-T[1],L,U=C.target,B=Math.abs(A)>Math.abs(k)?"h":"v";if("touches"in C&&B==="h"&&U.type==="range")return!1;var P=window.getSelection(),ve=P&&P.anchorNode,ge=ve?ve===U||ve.contains(U):!1;if(ge)return!1;var de=lb(B,U);if(!de)return!0;if(de?L=B:(L=B==="v"?"h":"v",de=lb(B,U)),!de)return!1;if(!i.current&&"changedTouches"in C&&(A||k)&&(i.current=L),!L)return!0;var le=i.current||L;return pO(le,E,C,le==="h"?A:k)},[]),h=x.useCallback(function(C){var E=C;if(!(!pa.length||pa[pa.length-1]!==u)){var T="deltaY"in E?ub(E):Ou(E),O=n.current.filter(function(L){return L.name===E.type&&(L.target===E.target||E.target===L.shadowParent)&&gO(L.delta,T)})[0];if(O&&O.should){E.cancelable&&E.preventDefault();return}if(!O){var A=(c.current.shards||[]).map(cb).filter(Boolean).filter(function(L){return L.contains(E.target)}),k=A.length>0?d(E,A[0]):!c.current.noIsolation;k&&E.cancelable&&E.preventDefault()}}},[]),m=x.useCallback(function(C,E,T,O){var A={name:C,delta:E,target:T,should:O,shadowParent:SO(T)};n.current.push(A),setTimeout(function(){n.current=n.current.filter(function(k){return k!==A})},1)},[]),y=x.useCallback(function(C){r.current=Ou(C),i.current=void 0},[]),g=x.useCallback(function(C){m(C.type,ub(C),C.target,d(C,e.lockRef.current))},[]),b=x.useCallback(function(C){m(C.type,Ou(C),C.target,d(C,e.lockRef.current))},[]);x.useEffect(function(){return pa.push(u),e.setCallbacks({onScrollCapture:g,onWheelCapture:g,onTouchMoveCapture:b}),document.addEventListener("wheel",h,ma),document.addEventListener("touchmove",h,ma),document.addEventListener("touchstart",y,ma),function(){pa=pa.filter(function(C){return C!==u}),document.removeEventListener("wheel",h,ma),document.removeEventListener("touchmove",h,ma),document.removeEventListener("touchstart",y,ma)}},[]);var S=e.removeScrollBar,_=e.inert;return x.createElement(x.Fragment,null,_?x.createElement(u,{styles:vO(s)}):null,S?x.createElement(lO,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function SO(e){for(var n=null;e!==null;)e instanceof ShadowRoot&&(n=e.host,e=e.host),e=e.parentNode;return n}const xO=YT(WS,bO);var bc=x.forwardRef(function(e,n){return x.createElement(yc,Cr({},e,{ref:n,sideCar:xO}))});bc.classNames=yc.classNames;var wO=function(e){if(typeof document>"u")return null;var n=Array.isArray(e)?e[0]:e;return n.ownerDocument.body},ga=new WeakMap,Au=new WeakMap,Mu={},bh=0,ox=function(e){return e&&(e.host||ox(e.parentNode))},_O=function(e,n){return n.map(function(r){if(e.contains(r))return r;var i=ox(r);return i&&e.contains(i)?i:(console.error("aria-hidden",r,"in not contained inside",e,". Doing nothing"),null)}).filter(function(r){return!!r})},CO=function(e,n,r,i){var s=_O(n,Array.isArray(e)?e:[e]);Mu[r]||(Mu[r]=new WeakMap);var u=Mu[r],c=[],d=new Set,h=new Set(s),m=function(g){!g||d.has(g)||(d.add(g),m(g.parentNode))};s.forEach(m);var y=function(g){!g||h.has(g)||Array.prototype.forEach.call(g.children,function(b){if(d.has(b))y(b);else try{var S=b.getAttribute(i),_=S!==null&&S!=="false",C=(ga.get(b)||0)+1,E=(u.get(b)||0)+1;ga.set(b,C),u.set(b,E),c.push(b),C===1&&_&&Au.set(b,!0),E===1&&b.setAttribute(r,"true"),_||b.setAttribute(i,"true")}catch(T){console.error("aria-hidden: cannot operate on ",b,T)}})};return y(n),d.clear(),bh++,function(){c.forEach(function(g){var b=ga.get(g)-1,S=u.get(g)-1;ga.set(g,b),u.set(g,S),b||(Au.has(g)||g.removeAttribute(i),Au.delete(g)),S||g.removeAttribute(r)}),bh--,bh||(ga=new WeakMap,ga=new WeakMap,Au=new WeakMap,Mu={})}},Vm=function(e,n,r){r===void 0&&(r="data-aria-hidden");var i=Array.from(Array.isArray(e)?e:[e]),s=wO(e);return s?(i.push.apply(i,Array.from(s.querySelectorAll("[aria-live], script"))),CO(i,s,r,"aria-hidden")):function(){return null}},Sc="Dialog",[ix]=$o(Sc),[EO,mr]=ix(Sc),Fm=e=>{const{__scopeDialog:n,children:r,open:i,defaultOpen:s,onOpenChange:u,modal:c=!0}=e,d=x.useRef(null),h=x.useRef(null),[m,y]=Ma({prop:i,defaultProp:s??!1,onChange:u,caller:Sc});return v.jsx(EO,{scope:n,triggerRef:d,contentRef:h,contentId:fn(),titleId:fn(),descriptionId:fn(),open:m,onOpenChange:y,onOpenToggle:x.useCallback(()=>y(g=>!g),[y]),modal:c,children:r})};Fm.displayName=Sc;var ax="DialogTrigger",RO=x.forwardRef((e,n)=>{const{__scopeDialog:r,...i}=e,s=mr(ax,r),u=ot(n,s.triggerRef);return v.jsx(Fe.button,{type:"button","aria-haspopup":"dialog","aria-expanded":s.open,"aria-controls":s.open?s.contentId:void 0,"data-state":qm(s.open),...i,ref:u,onClick:Re(e.onClick,s.onOpenToggle)})});RO.displayName=ax;var Um="DialogPortal",[TO,sx]=ix(Um,{forceMount:void 0}),Hm=e=>{const{__scopeDialog:n,forceMount:r,children:i,container:s}=e,u=mr(Um,n);return v.jsx(TO,{scope:n,forceMount:r,children:x.Children.map(i,c=>v.jsx(hr,{present:r||u.open,children:v.jsx(rl,{asChild:!0,container:s,children:c})}))})};Hm.displayName=Um;var Yu="DialogOverlay",Pm=x.forwardRef((e,n)=>{const r=sx(Yu,e.__scopeDialog),{forceMount:i=r.forceMount,...s}=e,u=mr(Yu,e.__scopeDialog);return u.modal?v.jsx(hr,{present:i||u.open,children:v.jsx(AO,{...s,ref:n})}):null});Pm.displayName=Yu;var OO=hi("DialogOverlay.RemoveScroll"),AO=x.forwardRef((e,n)=>{const{__scopeDialog:r,...i}=e,s=mr(Yu,r),u=OT(),c=ot(n,u);return v.jsx(bc,{as:OO,allowPinchZoom:!0,shards:[s.contentRef],children:v.jsx(Fe.div,{"data-state":qm(s.open),...i,ref:c,style:{pointerEvents:"auto",...i.style}})})}),ja="DialogContent",Bm=x.forwardRef((e,n)=>{const r=sx(ja,e.__scopeDialog),{forceMount:i=r.forceMount,...s}=e,u=mr(ja,e.__scopeDialog);return v.jsx(hr,{present:i||u.open,children:u.modal?v.jsx(MO,{...s,ref:n}):v.jsx(jO,{...s,ref:n})})});Bm.displayName=ja;var MO=x.forwardRef((e,n)=>{const r=mr(ja,e.__scopeDialog),i=x.useRef(null),s=ot(n,r.contentRef,i);return x.useEffect(()=>{const u=i.current;if(u)return Vm(u)},[]),v.jsx(lx,{...e,ref:s,trapFocus:r.open,disableOutsidePointerEvents:r.open,onCloseAutoFocus:Re(e.onCloseAutoFocus,u=>{u.preventDefault(),r.triggerRef.current?.focus()}),onPointerDownOutside:Re(e.onPointerDownOutside,u=>{const c=u.detail.originalEvent,d=c.button===0&&c.ctrlKey===!0;(c.button===2||d)&&u.preventDefault()}),onFocusOutside:Re(e.onFocusOutside,u=>u.preventDefault())})}),jO=x.forwardRef((e,n)=>{const r=mr(ja,e.__scopeDialog),i=x.useRef(!1),s=x.useRef(!1);return v.jsx(lx,{...e,ref:n,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:u=>{e.onCloseAutoFocus?.(u),u.defaultPrevented||(i.current||r.triggerRef.current?.focus(),u.preventDefault()),i.current=!1,s.current=!1},onInteractOutside:u=>{e.onInteractOutside?.(u),u.defaultPrevented||(i.current=!0,u.detail.originalEvent.type==="pointerdown"&&(s.current=!0));const c=u.target;r.triggerRef.current?.contains(c)&&u.preventDefault(),u.detail.originalEvent.type==="focusin"&&s.current&&u.preventDefault()}})}),lx=x.forwardRef((e,n)=>{const{__scopeDialog:r,trapFocus:i,onOpenAutoFocus:s,onCloseAutoFocus:u,...c}=e,d=mr(ja,r);return $m(),v.jsx(v.Fragment,{children:v.jsx(vc,{asChild:!0,loop:!0,trapped:i,onMountAutoFocus:s,onUnmountAutoFocus:u,children:v.jsx(nl,{role:"dialog",id:d.contentId,"aria-describedby":d.descriptionId,"aria-labelledby":d.titleId,"data-state":qm(d.open),...c,ref:n,deferPointerDownOutside:!0,onDismiss:()=>d.onOpenChange(!1)})})})}),ux="DialogTitle",cx=x.forwardRef((e,n)=>{const{__scopeDialog:r,...i}=e,s=mr(ux,r);return v.jsx(Fe.h2,{id:s.titleId,...i,ref:n})});cx.displayName=ux;var dx="DialogDescription",zO=x.forwardRef((e,n)=>{const{__scopeDialog:r,...i}=e,s=mr(dx,r);return v.jsx(Fe.p,{id:s.descriptionId,...i,ref:n})});zO.displayName=dx;var fx="DialogClose",hx=x.forwardRef((e,n)=>{const{__scopeDialog:r,...i}=e,s=mr(fx,r);return v.jsx(Fe.button,{type:"button",...i,ref:n,onClick:Re(e.onClick,()=>s.onOpenChange(!1))})});hx.displayName=fx;function qm(e){return e?"open":"closed"}function DO(e){const n=x.useRef({value:e,previous:e});return x.useMemo(()=>(n.current.value!==e&&(n.current.previous=n.current.value,n.current.value=e),n.current.previous),[e])}function NO(e){const[n,r]=x.useState(void 0);return Qt(()=>{if(e){r({width:e.offsetWidth,height:e.offsetHeight});const i=new ResizeObserver(s=>{if(!Array.isArray(s)||!s.length)return;const u=s[0];let c,d;if("borderBoxSize"in u){const h=u.borderBoxSize,m=Array.isArray(h)?h[0]:h;c=m.inlineSize,d=m.blockSize}else c=e.offsetWidth,d=e.offsetHeight;r({width:c,height:d})});return i.observe(e,{box:"border-box"}),()=>i.unobserve(e)}else r(void 0)},[e]),n}const kO=["top","right","bottom","left"],Do=Math.min,Qr=Math.max,Qu=Math.round,ju=Math.floor,Xr=e=>({x:e,y:e}),LO={left:"right",right:"left",bottom:"top",top:"bottom"};function mx(e,n,r){return Qr(e,Do(n,r))}function Jr(e,n){return typeof e=="function"?e(n):e}function No(e){return e.split("-")[0]}function Da(e){return e.split("-")[1]}function Gm(e){return e==="x"?"y":"x"}function Zm(e){return e==="y"?"height":"width"}function Er(e){const n=e[0];return n==="t"||n==="b"?"y":"x"}function Km(e){return Gm(Er(e))}function IO(e,n,r){r===void 0&&(r=!1);const i=Da(e),s=Km(e),u=Zm(s);let c=s==="x"?i===(r?"end":"start")?"right":"left":i==="start"?"bottom":"top";return n.reference[u]>n.floating[u]&&(c=Xu(c)),[c,Xu(c)]}function $O(e){const n=Xu(e);return[tm(e),n,tm(n)]}function tm(e){return e.includes("start")?e.replace("start","end"):e.replace("end","start")}const db=["left","right"],fb=["right","left"],VO=["top","bottom"],FO=["bottom","top"];function UO(e,n,r){switch(e){case"top":case"bottom":return r?n?fb:db:n?db:fb;case"left":case"right":return n?VO:FO;default:return[]}}function HO(e,n,r,i){const s=Da(e);let u=UO(No(e),r==="start",i);return s&&(u=u.map(c=>c+"-"+s),n&&(u=u.concat(u.map(tm)))),u}function Xu(e){const n=No(e);return LO[n]+e.slice(n.length)}function PO(e){var n,r,i,s;return{top:(n=e.top)!=null?n:0,right:(r=e.right)!=null?r:0,bottom:(i=e.bottom)!=null?i:0,left:(s=e.left)!=null?s:0}}function px(e){return typeof e!="number"?PO(e):{top:e,right:e,bottom:e,left:e}}function Ju(e){const{x:n,y:r,width:i,height:s}=e;return{width:i,height:s,top:r,left:n,right:n+i,bottom:r+s,x:n,y:r}}function hb(e,n,r){let{reference:i,floating:s}=e;const u=Er(n),c=Km(n),d=Zm(c),h=No(n),m=u==="y",y=i.x+i.width/2-s.width/2,g=i.y+i.height/2-s.height/2,b=i[d]/2-s[d]/2;let S;switch(h){case"top":S={x:y,y:i.y-s.height};break;case"bottom":S={x:y,y:i.y+i.height};break;case"right":S={x:i.x+i.width,y:g};break;case"left":S={x:i.x-s.width,y:g};break;default:S={x:i.x,y:i.y}}const _=Da(n);return _&&(S[c]+=b*(_==="end"?1:-1)*(r&&m?-1:1)),S}async function BO(e,n){var r;n===void 0&&(n={});const{x:i,y:s,platform:u,rects:c,elements:d,strategy:h}=e,{boundary:m="clippingAncestors",rootBoundary:y="viewport",elementContext:g="floating",altBoundary:b=!1,padding:S=0}=Jr(n,e),_=px(S),E=d[b?g==="floating"?"reference":"floating":g],T=Ju(await u.getClippingRect({element:(r=await(u.isElement==null?void 0:u.isElement(E)))==null||r?E:E.contextElement||await(u.getDocumentElement==null?void 0:u.getDocumentElement(d.floating)),boundary:m,rootBoundary:y,strategy:h})),O=g==="floating"?{x:i,y:s,width:c.floating.width,height:c.floating.height}:c.reference,A=await(u.getOffsetParent==null?void 0:u.getOffsetParent(d.floating)),k=await(u.isElement==null?void 0:u.isElement(A))&&await(u.getScale==null?void 0:u.getScale(A))||{x:1,y:1},L=Ju(u.convertOffsetParentRelativeRectToViewportRelativeRect?await u.convertOffsetParentRelativeRectToViewportRelativeRect({elements:d,rect:O,offsetParent:A,strategy:h}):O);return{top:(T.top-L.top+_.top)/k.y,bottom:(L.bottom-T.bottom+_.bottom)/k.y,left:(T.left-L.left+_.left)/k.x,right:(L.right-T.right+_.right)/k.x}}const qO=50,GO=async(e,n,r)=>{const{placement:i="bottom",strategy:s="absolute",middleware:u=[],platform:c}=r,d=c.detectOverflow?c:{...c,detectOverflow:BO},h=await(c.isRTL==null?void 0:c.isRTL(n));let m=await c.getElementRects({reference:e,floating:n,strategy:s}),{x:y,y:g}=hb(m,i,h),b=i,S=0;const _={};for(let C=0;C({name:"arrow",options:e,async fn(n){const{x:r,y:i,placement:s,rects:u,platform:c,elements:d,middlewareData:h}=n,{element:m,padding:y=0}=Jr(e,n)||{};if(m==null)return{};const g=px(y),b={x:r,y:i},S=Km(s),_=Zm(S),C=await c.getDimensions(m),E=S==="y",T=E?"top":"left",O=E?"bottom":"right",A=E?"clientHeight":"clientWidth",k=u.reference[_]+u.reference[S]-b[S]-u.floating[_],L=b[S]-u.reference[S],U=await(c.getOffsetParent==null?void 0:c.getOffsetParent(m));let B=U?U[A]:0;(!B||!await(c.isElement==null?void 0:c.isElement(U)))&&(B=d.floating[A]||u.floating[_]);const P=k/2-L/2,ve=B/2-C[_]/2-1,ge=Do(g[T],ve),de=Do(g[O],ve),le=B-C[_]-de,ae=B/2-C[_]/2+P,he=mx(ge,ae,le),ye=!h.arrow&&Da(s)!=null&&ae!==he&&u.reference[_]/2-(aehe<=0)){var de,le;const he=(((de=u.flip)==null?void 0:de.index)||0)+1,ye=B[he];if(ye&&(!(g==="alignment"?O!==Er(ye):!1)||ge.every(ne=>Er(ne.placement)===O?ne.overflows[0]>0:!0)))return{data:{index:he,overflows:ge},reset:{placement:ye}};let N=(le=ge.filter(Y=>Y.overflows[0]<=0).sort((Y,ne)=>Y.overflows[1]-ne.overflows[1])[0])==null?void 0:le.placement;if(!N)switch(S){case"bestFit":{var ae;const Y=(ae=ge.filter(ne=>{if(U){const J=Er(ne.placement);return J===O||J==="y"}return!0}).map(ne=>[ne.placement,ne.overflows.filter(J=>J>0).reduce((J,W)=>J+W,0)]).sort((ne,J)=>ne[1]-J[1])[0])==null?void 0:ae[0];Y&&(N=Y);break}case"initialPlacement":N=d;break}if(s!==N)return{reset:{placement:N}}}return{}}}};function mb(e,n){return{top:e.top-n.height,right:e.right-n.width,bottom:e.bottom-n.height,left:e.left-n.width}}function pb(e){return kO.some(n=>e[n]>=0)}const YO=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(n){const{rects:r,platform:i}=n,{strategy:s="referenceHidden",...u}=Jr(e,n);switch(s){case"referenceHidden":{const c=await i.detectOverflow(n,{...u,elementContext:"reference"}),d=mb(c,r.reference);return{data:{referenceHiddenOffsets:d,referenceHidden:pb(d)}}}case"escaped":{const c=await i.detectOverflow(n,{...u,altBoundary:!0}),d=mb(c,r.floating);return{data:{escapedOffsets:d,escaped:pb(d)}}}default:return{}}}}},gx=new Set(["left","top"]);async function QO(e,n){const{placement:r,platform:i,elements:s}=e,u=await(i.isRTL==null?void 0:i.isRTL(s.floating)),c=No(r),d=Da(r),h=Er(r)==="y",m=gx.has(c)?-1:1,y=u&&h?-1:1,g=Jr(n,e);let{mainAxis:b,crossAxis:S,alignmentAxis:_}=typeof g=="number"?{mainAxis:g,crossAxis:0,alignmentAxis:null}:{mainAxis:g.mainAxis||0,crossAxis:g.crossAxis||0,alignmentAxis:g.alignmentAxis};return d&&typeof _=="number"&&(S=d==="end"?_*-1:_),h?{x:S*y,y:b*m}:{x:b*m,y:S*y}}const XO=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(n){var r,i;const{x:s,y:u,placement:c,middlewareData:d}=n,h=await QO(n,e);return c===((r=d.offset)==null?void 0:r.placement)&&(i=d.arrow)!=null&&i.alignmentOffset?{}:{x:s+h.x,y:u+h.y,data:{...h,placement:c}}}}},JO=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(n){const{x:r,y:i,placement:s,platform:u}=n,{mainAxis:c=!0,crossAxis:d=!1,limiter:h={fn:O=>{let{x:A,y:k}=O;return{x:A,y:k}}},...m}=Jr(e,n),y={x:r,y:i},g=await u.detectOverflow(n,m),b=Er(s),S=Gm(b);let _=y[S],C=y[b];const E=(O,A)=>mx(A+g[O==="y"?"top":"left"],A,A-g[O==="y"?"bottom":"right"]);c&&(_=E(S,_)),d&&(C=E(b,C));const T=h.fn({...n,[S]:_,[b]:C});return{...T,data:{x:T.x-r,y:T.y-i,enabled:{[S]:c,[b]:d}}}}}},WO=function(e){return e===void 0&&(e={}),{options:e,fn(n){var r,i;const{x:s,y:u,placement:c,rects:d,middlewareData:h}=n,{offset:m=0,mainAxis:y=!0,crossAxis:g=!0}=Jr(e,n),b={x:s,y:u},S=Er(c),_=Gm(S);let C=b[_],E=b[S];const T=Jr(m,n),O=typeof T=="number"?{mainAxis:T,crossAxis:0}:{mainAxis:(r=T.mainAxis)!=null?r:0,crossAxis:(i=T.crossAxis)!=null?i:0};if(y){const L=_==="y"?"height":"width",U=d.reference[_]-d.floating[L]+O.mainAxis,B=d.reference[_]+d.reference[L]-O.mainAxis;CB&&(C=B)}if(g){var A,k;const L=_==="y"?"width":"height",U=gx.has(No(c)),B=d.reference[S]-d.floating[L]+(U&&((A=h.offset)==null?void 0:A[S])||0)+(U?0:O.crossAxis),P=d.reference[S]+d.reference[L]+(U?0:((k=h.offset)==null?void 0:k[S])||0)-(U?O.crossAxis:0);EP&&(E=P)}return{[_]:C,[S]:E}}}},eA=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(n){const{placement:r,rects:i,platform:s,elements:u}=n,{apply:c=()=>{},...d}=Jr(e,n),h=await s.detectOverflow(n,d),m=No(r),y=Da(r),g=Er(r)==="y",{width:b,height:S}=i.floating;let _,C;m==="top"||m==="bottom"?(_=m,C=y===(await(s.isRTL==null?void 0:s.isRTL(u.floating))?"start":"end")?"left":"right"):(C=m,_=y==="end"?"top":"bottom");const E=S-h.top-h.bottom,T=b-h.left-h.right,O=Do(S-h[_],E),A=Do(b-h[C],T),k=n.middlewareData.shift,L=!k;let U=O,B=A;k!=null&&k.enabled.x&&(B=T),k!=null&&k.enabled.y&&(U=E),L&&!y&&(g?B=b-2*Qr(h.left,h.right):U=S-2*Qr(h.top,h.bottom)),await c({...n,availableWidth:B,availableHeight:U});const P=await s.getDimensions(u.floating);return b!==P.width||S!==P.height?{reset:{rects:!0}}:{}}}};function xc(){return typeof window<"u"}function Na(e){return vx(e)?(e.nodeName||"").toLowerCase():"#document"}function An(e){var n;return(e==null||(n=e.ownerDocument)==null?void 0:n.defaultView)||window}function Wr(e){var n;return(n=(vx(e)?e.ownerDocument:e.document)||window.document)==null?void 0:n.documentElement}function vx(e){return xc()?e instanceof Node||e instanceof An(e).Node:!1}function Rr(e){return xc()?e instanceof Element||e instanceof An(e).Element:!1}function Vo(e){return xc()?e instanceof HTMLElement||e instanceof An(e).HTMLElement:!1}function gb(e){return!xc()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof An(e).ShadowRoot}function wc(e){const{overflow:n,overflowX:r,overflowY:i,display:s}=Tr(e);return/auto|scroll|overlay|hidden|clip/.test(n+i+r)&&s!=="inline"&&s!=="contents"}function tA(e){return/^(table|td|th)$/.test(Na(e))}function _c(e){try{if(e.matches(":popover-open"))return!0}catch{}try{return e.matches(":modal")}catch{return!1}}const nA=/transform|translate|scale|rotate|perspective|filter/,rA=/paint|layout|strict|content/,ui=e=>!!e&&e!=="none";let Sh;function Ym(e){const n=Rr(e)?Tr(e):e;return ui(n.transform)||ui(n.translate)||ui(n.scale)||ui(n.rotate)||ui(n.perspective)||!Qm()&&(ui(n.backdropFilter)||ui(n.filter))||nA.test(n.willChange||"")||rA.test(n.contain||"")}function oA(e){let n=mi(e);for(;Vo(n)&&!Ps(n);){if(Ym(n))return n;if(_c(n))return null;n=mi(n)}return null}function Qm(){return Sh==null&&(Sh=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),Sh}function Ps(e){return/^(html|body|#document)$/.test(Na(e))}function Tr(e){return An(e).getComputedStyle(e)}function Cc(e){return Rr(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function mi(e){if(Na(e)==="html")return e;const n=e.assignedSlot||e.parentNode||gb(e)&&e.host||Wr(e);return gb(n)?n.host:n}function yx(e){const n=mi(e);return Ps(n)?(e.ownerDocument||e).body:Vo(n)&&wc(n)?n:yx(n)}function Bs(e,n,r){var i;n===void 0&&(n=[]),r===void 0&&(r=!0);const s=yx(e),u=s===((i=e.ownerDocument)==null?void 0:i.body),c=An(s);if(u){const d=nm(c);return n.concat(c,c.visualViewport||[],wc(s)?s:[],d&&r?Bs(d):[])}else return n.concat(s,Bs(s,[],r))}function nm(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function bx(e){const n=Tr(e);let r=parseFloat(n.width)||0,i=parseFloat(n.height)||0;const s=Vo(e),u=s?e.offsetWidth:r,c=s?e.offsetHeight:i,d=Qu(r)!==u||Qu(i)!==c;return d&&(r=u,i=c),{width:r,height:i,$:d}}function Xm(e){return Rr(e)?e:e.contextElement}function Ra(e){const n=Xm(e);if(!Vo(n))return Xr(1);const r=n.getBoundingClientRect(),{width:i,height:s,$:u}=bx(n);let c=(u?Qu(r.width):r.width)/i,d=(u?Qu(r.height):r.height)/s;return(!c||!Number.isFinite(c))&&(c=1),(!d||!Number.isFinite(d))&&(d=1),{x:c,y:d}}const iA=Xr(0);function Sx(e){const n=An(e);return!Qm()||!n.visualViewport?iA:{x:n.visualViewport.offsetLeft,y:n.visualViewport.offsetTop}}function aA(e,n,r){return n===void 0&&(n=!1),!!r&&n&&r===An(e)}function pi(e,n,r,i){n===void 0&&(n=!1),r===void 0&&(r=!1);const s=e.getBoundingClientRect(),u=Xm(e);let c=Xr(1);n&&(i?Rr(i)&&(c=Ra(i)):c=Ra(e));const d=aA(u,r,i)?Sx(u):Xr(0);let h=(s.left+d.x)/c.x,m=(s.top+d.y)/c.y,y=s.width/c.x,g=s.height/c.y;if(u&&i){const b=An(u),S=Rr(i)?An(i):i;let _=b,C=nm(_);for(;C&&S!==_;){const E=Ra(C),T=C.getBoundingClientRect(),O=Tr(C),A=T.left+(C.clientLeft+parseFloat(O.paddingLeft))*E.x,k=T.top+(C.clientTop+parseFloat(O.paddingTop))*E.y;h*=E.x,m*=E.y,y*=E.x,g*=E.y,h+=A,m+=k,_=An(C),C=nm(_)}}return Ju({width:y,height:g,x:h,y:m})}function Ec(e,n){const r=Cc(e).scrollLeft;return n?n.left+r:pi(Wr(e)).left+r}function xx(e,n){const r=e.getBoundingClientRect(),i=r.left+n.scrollLeft-Ec(e,r),s=r.top+n.scrollTop;return{x:i,y:s}}function sA(e){let{elements:n,rect:r,offsetParent:i,strategy:s}=e;const u=s==="fixed",c=Wr(i),d=n?_c(n.floating):!1;if(i===c||d&&u)return r;let h={scrollLeft:0,scrollTop:0},m=Xr(1);const y=Xr(0),g=Vo(i);if((g||!u)&&((Na(i)!=="body"||wc(c))&&(h=Cc(i)),g)){const S=pi(i);m=Ra(i),y.x=S.x+i.clientLeft,y.y=S.y+i.clientTop}const b=c&&!g&&!u?xx(c,h):Xr(0);return{width:r.width*m.x,height:r.height*m.y,x:r.x*m.x-h.scrollLeft*m.x+y.x+b.x,y:r.y*m.y-h.scrollTop*m.y+y.y+b.y}}function lA(e){return e.getClientRects?Array.from(e.getClientRects()):[]}function uA(e){const n=Cc(e),r=e.ownerDocument.body,i=Qr(e.scrollWidth,e.clientWidth,r.scrollWidth,r.clientWidth),s=Qr(e.scrollHeight,e.clientHeight,r.scrollHeight,r.clientHeight);let u=-n.scrollLeft+Ec(e);const c=-n.scrollTop;return Tr(r).direction==="rtl"&&(u+=Qr(e.clientWidth,r.clientWidth)-i),{width:i,height:s,x:u,y:c}}const cA=25;function dA(e,n,r){r===void 0&&(r="viewport");const i=r==="layoutViewport",s=An(e),u=Wr(e),c=s.visualViewport;let d=u.clientWidth,h=u.clientHeight,m=0,y=0;if(c){const b=!Qm()||n==="fixed";i?b||(m=-c.offsetLeft,y=-c.offsetTop):(d=c.width,h=c.height,b&&(m=c.offsetLeft,y=c.offsetTop))}if(Ec(u)<=0){const b=u.ownerDocument,S=b.body,_=getComputedStyle(S),C=b.compatMode==="CSS1Compat"&&parseFloat(_.marginLeft)+parseFloat(_.marginRight)||0,E=Math.abs(u.clientWidth-S.clientWidth-C),T=getComputedStyle(u).scrollbarGutter==="stable both-edges"?E/2:E;T<=cA&&(d-=T)}return{width:d,height:h,x:m,y}}function fA(e,n){const r=pi(e,!0,n==="fixed"),i=r.top+e.clientTop,s=r.left+e.clientLeft,u=Ra(e),c=e.clientWidth*u.x,d=e.clientHeight*u.y,h=s*u.x,m=i*u.y;return{width:c,height:d,x:h,y:m}}function vb(e,n,r){let i;if(n==="viewport"||n==="layoutViewport")i=dA(e,r,n);else if(n==="document")i=uA(Wr(e));else if(Rr(n))i=fA(n,r);else{const s=Sx(e);i={x:n.x-s.x,y:n.y-s.y,width:n.width,height:n.height}}return Ju(i)}function hA(e,n){const r=n.get(e);if(r)return r;let i=Bs(e,[],!1).filter(d=>Rr(d)&&Na(d)!=="body"),s=null;const u=Tr(e).position==="fixed";let c=u?mi(e):e;for(;Rr(c)&&!Ps(c);){const d=Tr(c),h=Ym(c),m=s?s.position:u?"fixed":"";!h&&(m==="fixed"||m==="absolute"&&d.position==="static")?i=i.filter(g=>g!==c):s=d,c=mi(c)}return n.set(e,i),i}function mA(e){let{element:n,boundary:r,rootBoundary:i,strategy:s}=e;const c=[...r==="clippingAncestors"?_c(n)?[]:hA(n,this._c):[].concat(r),i],d=vb(n,c[0],s);let h=d.top,m=d.right,y=d.bottom,g=d.left;for(let b=1;b{d(!1,1e-7)},1e3)}B=!1}try{i=new IntersectionObserver(P,{...U,root:u.ownerDocument})}catch{i=new IntersectionObserver(P,U)}i.observe(e)}const h=An(e),m=()=>d(r);return h.addEventListener("resize",m),d(!0),()=>{h.removeEventListener("resize",m),c()}}function xA(e,n,r,i){i===void 0&&(i={});const{ancestorScroll:s=!0,ancestorResize:u=!0,elementResize:c=typeof ResizeObserver=="function",layoutShift:d=typeof IntersectionObserver=="function",animationFrame:h=!1}=i,m=Xm(e),y=s||u?[...m?Bs(m):[],...n?Bs(n):[]]:[];y.forEach(T=>{s&&T.addEventListener("scroll",r),u&&T.addEventListener("resize",r)});const g=m&&d?SA(m,r,u):null;let b=-1,S=null;c&&(S=new ResizeObserver(T=>{let[O]=T;O&&O.target===m&&S&&n&&(S.unobserve(n),cancelAnimationFrame(b),b=requestAnimationFrame(()=>{var A;(A=S)==null||A.observe(n)})),r()}),m&&!h&&S.observe(m),n&&S.observe(n));let _,C=h?pi(e):null;h&&E();function E(){const T=pi(e);C&&!_x(C,T)&&r(),C=T,_=requestAnimationFrame(E)}return r(),()=>{var T;y.forEach(O=>{s&&O.removeEventListener("scroll",r),u&&O.removeEventListener("resize",r)}),g?.(),(T=S)==null||T.disconnect(),S=null,h&&cancelAnimationFrame(_)}}const wA=XO,_A=JO,CA=KO,EA=eA,RA=YO,bb=ZO,TA=WO,OA=(e,n,r)=>{const i=new Map,s=r??{},u={...bA,...s.platform,_c:i};return GO(e,n,{...s,platform:u})};var AA=typeof document<"u",MA=function(){},Bu=AA?x.useLayoutEffect:MA;function Wu(e,n){if(e===n)return!0;if(typeof e!=typeof n)return!1;if(typeof e=="function"&&e.toString()===n.toString())return!0;let r,i,s;if(e&&n&&typeof e=="object"){if(Array.isArray(e)){if(r=e.length,r!==n.length)return!1;for(i=r;i--!==0;)if(!Wu(e[i],n[i]))return!1;return!0}if(s=Object.keys(e),r=s.length,r!==Object.keys(n).length)return!1;for(i=r;i--!==0;)if(!{}.hasOwnProperty.call(n,s[i]))return!1;for(i=r;i--!==0;){const u=s[i];if(!(u==="_owner"&&e.$$typeof)&&!Wu(e[u],n[u]))return!1}return!0}return e!==e&&n!==n}function Cx(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function Sb(e,n){const r=Cx(e);return Math.round(n*r)/r}function wh(e){const n=x.useRef(e);return Bu(()=>{n.current=e}),n}function jA(e){e===void 0&&(e={});const{placement:n="bottom",strategy:r="absolute",middleware:i=[],platform:s,elements:{reference:u,floating:c}={},transform:d=!0,whileElementsMounted:h,open:m}=e,[y,g]=x.useState({x:0,y:0,strategy:r,placement:n,middlewareData:{},isPositioned:!1}),[b,S]=x.useState(i);Wu(b,i)||S(i);const[_,C]=x.useState(null),[E,T]=x.useState(null),O=x.useCallback(ne=>{ne!==U.current&&(U.current=ne,C(ne))},[]),A=x.useCallback(ne=>{ne!==B.current&&(B.current=ne,T(ne))},[]),k=u||_,L=c||E,U=x.useRef(null),B=x.useRef(null),P=x.useRef(y),ve=h!=null,ge=wh(h),de=wh(s),le=wh(m),ae=x.useCallback(()=>{if(!U.current||!B.current)return;const ne={placement:n,strategy:r,middleware:b};de.current&&(ne.platform=de.current),OA(U.current,B.current,ne).then(J=>{const W={...J,isPositioned:le.current!==!1};he.current&&!Wu(P.current,W)&&(P.current=W,Si.flushSync(()=>{g(W)}))})},[b,n,r,de,le]);Bu(()=>{m===!1&&P.current.isPositioned&&(P.current.isPositioned=!1,g(ne=>({...ne,isPositioned:!1})))},[m]);const he=x.useRef(!1);Bu(()=>(he.current=!0,()=>{he.current=!1}),[]),Bu(()=>{if(k&&(U.current=k),L&&(B.current=L),k&&L){if(ge.current)return ge.current(k,L,ae);ae()}},[k,L,ae,ge,ve]);const ye=x.useMemo(()=>({reference:U,floating:B,setReference:O,setFloating:A}),[O,A]),N=x.useMemo(()=>({reference:k,floating:L}),[k,L]),Y=x.useMemo(()=>{const ne={position:r,left:0,top:0};if(!N.floating)return ne;const J=Sb(N.floating,y.x),W=Sb(N.floating,y.y);return d?{...ne,transform:"translate("+J+"px, "+W+"px)",...Cx(N.floating)>=1.5&&{willChange:"transform"}}:{position:r,left:J,top:W}},[r,d,N.floating,y.x,y.y]);return x.useMemo(()=>({...y,update:ae,refs:ye,elements:N,floatingStyles:Y}),[y,ae,ye,N,Y])}const zA=e=>{function n(r){return{}.hasOwnProperty.call(r,"current")}return{name:"arrow",options:e,fn(r){const{element:i,padding:s}=typeof e=="function"?e(r):e;return i&&n(i)?i.current!=null?bb({element:i.current,padding:s}).fn(r):{}:i?bb({element:i,padding:s}).fn(r):{}}}},DA=(e,n)=>{const r=wA(e);return{name:r.name,fn:r.fn,options:[e,n]}},NA=(e,n)=>{const r=_A(e);return{name:r.name,fn:r.fn,options:[e,n]}},kA=(e,n)=>({fn:TA(e).fn,options:[e,n]}),LA=(e,n)=>{const r=CA(e);return{name:r.name,fn:r.fn,options:[e,n]}},IA=(e,n)=>{const r=EA(e);return{name:r.name,fn:r.fn,options:[e,n]}},$A=(e,n)=>{const r=RA(e);return{name:r.name,fn:r.fn,options:[e,n]}},VA=(e,n)=>{const r=zA(e);return{name:r.name,fn:r.fn,options:[e,n]}};var FA="Arrow",Ex=x.forwardRef((e,n)=>{const{children:r,width:i=10,height:s=5,...u}=e;return v.jsx(Fe.svg,{...u,ref:n,width:i,height:s,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:e.asChild?r:v.jsx("polygon",{points:"0,0 30,0 15,10"})})});Ex.displayName=FA;var UA=Ex,Jm="Popper",[Rx,ka]=$o(Jm),[HA,Tx]=Rx(Jm),Ox=e=>{const{__scopePopper:n,children:r}=e,[i,s]=x.useState(null),[u,c]=x.useState(void 0);return v.jsx(HA,{scope:n,anchor:i,onAnchorChange:s,placementState:u,setPlacementState:c,children:r})};Ox.displayName=Jm;var Ax="PopperAnchor",Mx=x.forwardRef((e,n)=>{const{__scopePopper:r,virtualRef:i,...s}=e,u=Tx(Ax,r),c=x.useRef(null),d=u.onAnchorChange,h=x.useCallback(_=>{c.current=_,_&&d(_)},[d]),m=ot(n,h),y=x.useRef(null);x.useEffect(()=>{if(!i)return;const _=y.current;y.current=i.current,_!==y.current&&d(y.current)});const g=u.placementState&&ep(u.placementState),b=g?.[0],S=g?.[1];return i?null:v.jsx(Fe.div,{"data-radix-popper-side":b,"data-radix-popper-align":S,...s,ref:m})});Mx.displayName=Ax;var Wm="PopperContent",[PA,BA]=Rx(Wm),jx=x.forwardRef((e,n)=>{const{__scopePopper:r,side:i="bottom",sideOffset:s=0,align:u="center",alignOffset:c=0,arrowPadding:d=0,avoidCollisions:h=!0,collisionBoundary:m=[],collisionPadding:y=0,sticky:g="partial",hideWhenDetached:b=!1,updatePositionStrategy:S="optimized",onPlaced:_,...C}=e,E=Tx(Wm,r),[T,O]=x.useState(null),A=ot(n,O),[k,L]=x.useState(null),U=NO(k),B=U?.width??0,P=U?.height??0,ve=i+(u!=="center"?"-"+u:""),ge=typeof y=="number"?y:{top:0,right:0,bottom:0,left:0,...y},de=Array.isArray(m)?m:[m],le=de.length>0,ae={padding:ge,boundary:de.filter(GA),altBoundary:le},{refs:he,floatingStyles:ye,placement:N,isPositioned:Y,middlewareData:ne}=jA({strategy:"fixed",placement:ve,whileElementsMounted:(...pe)=>xA(...pe,{animationFrame:S==="always"}),elements:{reference:E.anchor},middleware:[DA({mainAxis:s+P,alignmentAxis:c}),h&&NA({mainAxis:!0,crossAxis:!1,limiter:g==="partial"?kA():void 0,...ae}),h&&LA({...ae}),IA({...ae,apply:({elements:pe,rects:be,availableWidth:ze,availableHeight:Ie})=>{const{width:Ve,height:st}=be.reference,Xe=pe.floating.style;Xe.setProperty("--radix-popper-available-width",`${ze}px`),Xe.setProperty("--radix-popper-available-height",`${Ie}px`),Xe.setProperty("--radix-popper-anchor-width",`${Ve}px`),Xe.setProperty("--radix-popper-anchor-height",`${st}px`)}}),k&&VA({element:k,padding:d}),ZA({arrowWidth:B,arrowHeight:P}),b&&$A({strategy:"referenceHidden",...ae,boundary:le?ae.boundary:void 0})]}),J=E.setPlacementState;Qt(()=>(J(N),()=>{J(void 0)}),[N,J]);const[W,z]=ep(N),j=tr(_);Qt(()=>{Y&&j?.()},[Y,j]);const H=ne.arrow?.x,Q=ne.arrow?.y,Z=ne.arrow?.centerOffset!==0,[re,ee]=x.useState();return Qt(()=>{T&&ee(window.getComputedStyle(T).zIndex)},[T]),v.jsx("div",{ref:he.setFloating,"data-radix-popper-content-wrapper":"",style:{...ye,transform:Y?ye.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:re,"--radix-popper-transform-origin":[ne.transformOrigin?.x,ne.transformOrigin?.y].join(" "),...ne.hide?.referenceHidden&&{visibility:"hidden",pointerEvents:"none"}},dir:e.dir,children:v.jsx(PA,{scope:r,placedSide:W,placedAlign:z,onArrowChange:L,arrowX:H,arrowY:Q,shouldHideArrow:Z,children:v.jsx(Fe.div,{"data-side":W,"data-align":z,...C,ref:A,style:{...C.style,animation:Y?void 0:"none"}})})})});jx.displayName=Wm;var zx="PopperArrow",qA={top:"bottom",right:"left",bottom:"top",left:"right"},Dx=x.forwardRef(function(n,r){const{__scopePopper:i,...s}=n,u=BA(zx,i),c=qA[u.placedSide];return v.jsx("span",{ref:u.onArrowChange,style:{position:"absolute",left:u.arrowX,top:u.arrowY,[c]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[u.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[u.placedSide],visibility:u.shouldHideArrow?"hidden":void 0},children:v.jsx(UA,{...s,ref:r,style:{...s.style,display:"block"}})})});Dx.displayName=zx;function GA(e){return e!==null}var ZA=e=>({name:"transformOrigin",options:e,fn(n){const{placement:r,rects:i,middlewareData:s}=n,c=s.arrow?.centerOffset!==0,d=c?0:e.arrowWidth,h=c?0:e.arrowHeight,[m,y]=ep(r),g={start:"0%",center:"50%",end:"100%"}[y],b=(s.arrow?.x??0)+d/2,S=(s.arrow?.y??0)+h/2;let _="",C="";return m==="bottom"?(_=c?g:`${b}px`,C=`${-h}px`):m==="top"?(_=c?g:`${b}px`,C=`${i.floating.height+h}px`):m==="right"?(_=`${-h}px`,C=c?g:`${S}px`):m==="left"&&(_=`${i.floating.width+h}px`,C=c?g:`${S}px`),{data:{x:_,y:C}}}});function ep(e){const[n,r="center"]=e.split("-");return[n,r]}var tp=Ox,np=Mx,rp=jx,op=Dx,_h=!1;function KA(){const[e,n]=x.useState(_h);return x.useEffect(()=>{_h||(_h=!0,n(!0))},[]),e}var Nx=gc[" useSyncExternalStore ".trim().toString()];function YA(){return()=>{}}function QA(){return Nx(YA,()=>!0,()=>!1)}var XA=typeof Nx=="function"?QA:KA,Ch="rovingFocusGroup.onEntryFocus",JA={bubbles:!1,cancelable:!0},ol="RovingFocusGroup",[rm,kx,WA]=km(ol),[eM,Lx]=$o(ol,[WA]),[tM,nM]=eM(ol),Ix=x.forwardRef((e,n)=>v.jsx(rm.Provider,{scope:e.__scopeRovingFocusGroup,children:v.jsx(rm.Slot,{scope:e.__scopeRovingFocusGroup,children:v.jsx(rM,{...e,ref:n})})}));Ix.displayName=ol;var rM=x.forwardRef((e,n)=>{const{__scopeRovingFocusGroup:r,orientation:i,loop:s=!1,dir:u,currentTabStopId:c,defaultCurrentTabStopId:d,onCurrentTabStopIdChange:h,onEntryFocus:m,preventScrollOnEntryFocus:y=!1,...g}=e,b=x.useRef(null),S=ot(n,b),_=Lm(u),[C,E]=Ma({prop:c,defaultProp:d??null,onChange:h,caller:ol}),[T,O]=x.useState(!1),A=tr(m),k=kx(r),L=x.useRef(!1),[U,B]=x.useState(0);return x.useEffect(()=>{const P=b.current;if(P)return P.addEventListener(Ch,A),()=>P.removeEventListener(Ch,A)},[A]),v.jsx(tM,{scope:r,orientation:i,dir:_,loop:s,currentTabStopId:C,onItemFocus:x.useCallback(P=>E(P),[E]),onItemShiftTab:x.useCallback(()=>O(!0),[]),onFocusableItemAdd:x.useCallback(()=>B(P=>P+1),[]),onFocusableItemRemove:x.useCallback(()=>B(P=>P-1),[]),children:v.jsx(Fe.div,{tabIndex:T||U===0?-1:0,"data-orientation":i,...g,ref:S,style:{outline:"none",...e.style},onMouseDown:Re(e.onMouseDown,()=>{L.current=!0}),onFocus:Re(e.onFocus,P=>{const ve=!L.current;if(P.target===P.currentTarget&&ve&&!T){const ge=new CustomEvent(Ch,JA);if(P.currentTarget.dispatchEvent(ge),!ge.defaultPrevented){const de=k().filter(N=>N.focusable),le=de.find(N=>N.active),ae=de.find(N=>N.id===C),ye=[le,ae,...de].filter(Boolean).map(N=>N.ref.current);Fx(ye,y)}}L.current=!1}),onBlur:Re(e.onBlur,()=>O(!1))})})}),$x="RovingFocusGroupItem",Vx=x.forwardRef((e,n)=>{const{__scopeRovingFocusGroup:r,focusable:i=!0,active:s=!1,tabStopId:u,children:c,...d}=e,h=fn(),m=u||h,y=nM($x,r),g=y.currentTabStopId===m,b=kx(r),{onFocusableItemAdd:S,onFocusableItemRemove:_,currentTabStopId:C}=y,E=XA();return Qt(()=>{if(!(!E||!i))return S(),()=>_()},[E,i,S,_]),x.useEffect(()=>{if(!(E||!i))return S(),()=>_()},[E,i,S,_]),v.jsx(rm.ItemSlot,{scope:r,id:m,focusable:i,active:s,children:v.jsx(Fe.span,{tabIndex:g?0:-1,"data-orientation":y.orientation,...d,ref:n,onMouseDown:Re(e.onMouseDown,T=>{i?y.onItemFocus(m):T.preventDefault()}),onFocus:Re(e.onFocus,()=>y.onItemFocus(m)),onKeyDown:Re(e.onKeyDown,T=>{if(T.key==="Tab"&&T.shiftKey){y.onItemShiftTab();return}if(T.target!==T.currentTarget)return;const O=aM(T,y.orientation,y.dir);if(O!==void 0){if(T.metaKey||T.ctrlKey||T.altKey||T.shiftKey)return;T.preventDefault();let k=b().filter(L=>L.focusable).map(L=>L.ref.current);if(O==="last")k.reverse();else if(O==="prev"||O==="next"){O==="prev"&&k.reverse();const L=k.indexOf(T.currentTarget);k=y.loop?sM(k,L+1):k.slice(L+1)}setTimeout(()=>Fx(k))}}),children:typeof c=="function"?c({isCurrentTabStop:g,hasTabStop:C!=null}):c})})});Vx.displayName=$x;var oM={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function iM(e,n){return n!=="rtl"?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}function aM(e,n,r){const i=iM(e.key,r);if(!(n==="vertical"&&["ArrowLeft","ArrowRight"].includes(i))&&!(n==="horizontal"&&["ArrowUp","ArrowDown"].includes(i)))return oM[i]}function Fx(e,n=!1){const r=document.activeElement;for(const i of e)if(i===r||(i.focus({preventScroll:n}),document.activeElement!==r))return}function sM(e,n){return e.map((r,i)=>e[(n+i)%e.length])}var lM=Ix,uM=Vx,om=["Enter"," "],cM=["ArrowDown","PageUp","Home"],Ux=["ArrowUp","PageDown","End"],dM=[...cM,...Ux],fM={ltr:[...om,"ArrowRight"],rtl:[...om,"ArrowLeft"]},hM={ltr:["ArrowLeft"],rtl:["ArrowRight"]},il="Menu",[qs,mM,pM]=km(il),[xi,Hx]=$o(il,[pM,ka,Lx]),Rc=ka(),Px=Lx(),[gM,wi]=xi(il),[vM,al]=xi(il),Bx=e=>{const{__scopeMenu:n,open:r=!1,children:i,dir:s,onOpenChange:u,modal:c=!0}=e,d=Rc(n),[h,m]=x.useState(null),y=x.useRef(!1),g=tr(u),b=Lm(s);return x.useEffect(()=>{const S=()=>{y.current=!0,document.addEventListener("pointerdown",_,{capture:!0,once:!0}),document.addEventListener("pointermove",_,{capture:!0,once:!0})},_=()=>y.current=!1;return document.addEventListener("keydown",S,{capture:!0}),()=>{document.removeEventListener("keydown",S,{capture:!0}),document.removeEventListener("pointerdown",_,{capture:!0}),document.removeEventListener("pointermove",_,{capture:!0})}},[]),x.useEffect(()=>{if(!r)return;const S=()=>g(!1);return window.addEventListener("blur",S),()=>window.removeEventListener("blur",S)},[r,g]),v.jsx(tp,{...d,children:v.jsx(gM,{scope:n,open:r,onOpenChange:g,content:h,onContentChange:m,children:v.jsx(vM,{scope:n,onClose:x.useCallback(()=>g(!1),[g]),isUsingKeyboardRef:y,dir:b,modal:c,children:i})})})};Bx.displayName=il;var yM="MenuAnchor",ip=x.forwardRef((e,n)=>{const{__scopeMenu:r,...i}=e,s=Rc(r);return v.jsx(np,{...s,...i,ref:n})});ip.displayName=yM;var ap="MenuPortal",[bM,qx]=xi(ap,{forceMount:void 0}),Gx=e=>{const{__scopeMenu:n,forceMount:r,children:i,container:s}=e,u=wi(ap,n);return v.jsx(bM,{scope:n,forceMount:r,children:v.jsx(hr,{present:r||u.open,children:v.jsx(rl,{asChild:!0,container:s,children:i})})})};Gx.displayName=ap;var er="MenuContent",[SM,sp]=xi(er),Zx=x.forwardRef((e,n)=>{const r=qx(er,e.__scopeMenu),{forceMount:i=r.forceMount,...s}=e,u=wi(er,e.__scopeMenu),c=al(er,e.__scopeMenu);return v.jsx(qs.Provider,{scope:e.__scopeMenu,children:v.jsx(hr,{present:i||u.open,children:v.jsx(qs.Slot,{scope:e.__scopeMenu,children:c.modal?v.jsx(xM,{...s,ref:n}):v.jsx(wM,{...s,ref:n})})})})}),xM=x.forwardRef((e,n)=>{const r=wi(er,e.__scopeMenu),i=x.useRef(null),s=ot(n,i);return x.useEffect(()=>{const u=i.current;if(u)return Vm(u)},[]),v.jsx(lp,{...e,ref:s,trapFocus:r.open,disableOutsidePointerEvents:r.open,disableOutsideScroll:!0,onFocusOutside:Re(e.onFocusOutside,u=>u.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>r.onOpenChange(!1)})}),wM=x.forwardRef((e,n)=>{const r=wi(er,e.__scopeMenu);return v.jsx(lp,{...e,ref:n,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>r.onOpenChange(!1)})}),_M=hi("MenuContent.ScrollLock"),lp=x.forwardRef((e,n)=>{const{__scopeMenu:r,loop:i=!1,trapFocus:s,onOpenAutoFocus:u,onCloseAutoFocus:c,disableOutsidePointerEvents:d,onEntryFocus:h,onEscapeKeyDown:m,onPointerDownOutside:y,onFocusOutside:g,onInteractOutside:b,onDismiss:S,disableOutsideScroll:_,...C}=e,E=wi(er,r),T=al(er,r),O=Rc(r),A=Px(r),k=mM(r),[L,U]=x.useState(null),B=x.useRef(null),P=ot(n,B,E.onContentChange),ve=x.useRef(0),ge=x.useRef(""),de=x.useRef(0),le=x.useRef(null),ae=x.useRef("right"),he=x.useRef(0),ye=_?bc:x.Fragment,N=_?{as:_M,allowPinchZoom:!0}:void 0,Y=J=>{const W=ge.current+J,z=k().filter(ee=>!ee.disabled),j=document.activeElement,H=z.find(ee=>ee.ref.current===j)?.textValue,Q=z.map(ee=>ee.textValue),Z=kM(Q,W,H),re=z.find(ee=>ee.textValue===Z)?.ref.current;(function ee(pe){ge.current=pe,window.clearTimeout(ve.current),pe!==""&&(ve.current=window.setTimeout(()=>ee(""),1e3))})(W),re&&setTimeout(()=>re.focus())};x.useEffect(()=>()=>window.clearTimeout(ve.current),[]),$m();const ne=x.useCallback(J=>ae.current===le.current?.side&&IM(J,le.current?.area),[]);return v.jsx(SM,{scope:r,searchRef:ge,onItemEnter:x.useCallback(J=>{ne(J)&&J.preventDefault()},[ne]),onItemLeave:x.useCallback(J=>{ne(J)||(B.current?.focus(),U(null))},[ne]),onTriggerLeave:x.useCallback(J=>{ne(J)&&J.preventDefault()},[ne]),pointerGraceTimerRef:de,onPointerGraceIntentChange:x.useCallback(J=>{le.current=J},[]),children:v.jsx(ye,{...N,children:v.jsx(vc,{asChild:!0,trapped:s,onMountAutoFocus:Re(u,J=>{J.preventDefault(),B.current?.focus({preventScroll:!0})}),onUnmountAutoFocus:c,children:v.jsx(nl,{asChild:!0,disableOutsidePointerEvents:d,onEscapeKeyDown:m,onPointerDownOutside:y,onFocusOutside:g,onInteractOutside:b,onDismiss:S,children:v.jsx(lM,{asChild:!0,...A,dir:T.dir,orientation:"vertical",loop:i,currentTabStopId:L,onCurrentTabStopIdChange:U,onEntryFocus:Re(h,J=>{T.isUsingKeyboardRef.current||J.preventDefault()}),preventScrollOnEntryFocus:!0,children:v.jsx(rp,{role:"menu","aria-orientation":"vertical","data-state":uw(E.open),"data-radix-menu-content":"",dir:T.dir,...O,...C,ref:P,style:{outline:"none",...C.style},onKeyDown:Re(C.onKeyDown,J=>{const z=J.target.closest("[data-radix-menu-content]")===J.currentTarget,j=J.ctrlKey||J.altKey||J.metaKey,H=J.key.length===1;z&&(J.key==="Tab"&&J.preventDefault(),!j&&H&&Y(J.key));const Q=B.current;if(J.target!==Q||!dM.includes(J.key))return;J.preventDefault();const re=k().filter(ee=>!ee.disabled).map(ee=>ee.ref.current);Ux.includes(J.key)&&re.reverse(),DM(re)}),onBlur:Re(e.onBlur,J=>{J.currentTarget.contains(J.target)||(window.clearTimeout(ve.current),ge.current="")}),onPointerMove:Re(e.onPointerMove,Gs(J=>{const W=J.target,z=he.current!==J.clientX;if(J.currentTarget.contains(W)&&z){const j=J.clientX>he.current?"right":"left";ae.current=j,he.current=J.clientX}}))})})})})})})});Zx.displayName=er;var CM="MenuGroup",up=x.forwardRef((e,n)=>{const{__scopeMenu:r,...i}=e;return v.jsx(Fe.div,{role:"group",...i,ref:n})});up.displayName=CM;var EM="MenuLabel",Kx=x.forwardRef((e,n)=>{const{__scopeMenu:r,...i}=e;return v.jsx(Fe.div,{...i,ref:n})});Kx.displayName=EM;var ec="MenuItem",xb="menu.itemSelect",Tc=x.forwardRef((e,n)=>{const{disabled:r=!1,onSelect:i,...s}=e,u=x.useRef(null),c=al(ec,e.__scopeMenu),d=sp(ec,e.__scopeMenu),h=ot(n,u),m=x.useRef(!1),y=()=>{const g=u.current;if(!r&&g){const b=new CustomEvent(xb,{bubbles:!0,cancelable:!0});g.addEventListener(xb,S=>i?.(S),{once:!0}),GS(g,b),b.defaultPrevented?m.current=!1:c.onClose()}};return v.jsx(Yx,{...s,ref:h,disabled:r,onClick:Re(e.onClick,y),onPointerDown:g=>{e.onPointerDown?.(g),m.current=!0},onPointerUp:Re(e.onPointerUp,g=>{m.current||g.currentTarget?.click()}),onKeyDown:Re(e.onKeyDown,g=>{r||g.target!==g.currentTarget||d.searchRef.current!==""&&g.key===" "||om.includes(g.key)&&(g.currentTarget.click(),g.preventDefault())})})});Tc.displayName=ec;var Yx=x.forwardRef((e,n)=>{const{__scopeMenu:r,disabled:i=!1,textValue:s,...u}=e,c=sp(ec,r),d=Px(r),h=x.useRef(null),m=ot(n,h),[y,g]=x.useState(!1),[b,S]=x.useState("");return x.useEffect(()=>{const _=h.current;_&&S((_.textContent??"").trim())},[u.children]),v.jsx(qs.ItemSlot,{scope:r,disabled:i,textValue:s??b,children:v.jsx(uM,{asChild:!0,...d,focusable:!i,children:v.jsx(Fe.div,{role:"menuitem","data-highlighted":y?"":void 0,"aria-disabled":i||void 0,"data-disabled":i?"":void 0,...u,ref:m,onPointerMove:Re(e.onPointerMove,Gs(_=>{i?c.onItemLeave(_):(c.onItemEnter(_),_.defaultPrevented||_.currentTarget.focus({preventScroll:!0}))})),onPointerLeave:Re(e.onPointerLeave,Gs(_=>c.onItemLeave(_))),onFocus:Re(e.onFocus,()=>g(!0)),onBlur:Re(e.onBlur,()=>g(!1))})})})}),RM="MenuCheckboxItem",Qx=x.forwardRef((e,n)=>{const{checked:r=!1,onCheckedChange:i,...s}=e;return v.jsx(tw,{scope:e.__scopeMenu,checked:r,children:v.jsx(Tc,{role:"menuitemcheckbox","aria-checked":tc(r)?"mixed":r,...s,ref:n,"data-state":dp(r),onSelect:Re(s.onSelect,()=>i?.(tc(r)?!0:!r),{checkForDefaultPrevented:!1})})})});Qx.displayName=RM;var Xx="MenuRadioGroup",[TM,OM]=xi(Xx,{value:void 0,onValueChange:()=>{}}),Jx=x.forwardRef((e,n)=>{const{value:r,onValueChange:i,...s}=e,u=tr(i);return v.jsx(TM,{scope:e.__scopeMenu,value:r,onValueChange:u,children:v.jsx(up,{...s,ref:n})})});Jx.displayName=Xx;var Wx="MenuRadioItem",ew=x.forwardRef((e,n)=>{const{value:r,...i}=e,s=OM(Wx,e.__scopeMenu),u=r===s.value;return v.jsx(tw,{scope:e.__scopeMenu,checked:u,children:v.jsx(Tc,{role:"menuitemradio","aria-checked":u,...i,ref:n,"data-state":dp(u),onSelect:Re(i.onSelect,()=>s.onValueChange?.(r),{checkForDefaultPrevented:!1})})})});ew.displayName=Wx;var cp="MenuItemIndicator",[tw,AM]=xi(cp,{checked:!1}),nw=x.forwardRef((e,n)=>{const{__scopeMenu:r,forceMount:i,...s}=e,u=AM(cp,r);return v.jsx(hr,{present:i||tc(u.checked)||u.checked===!0,children:v.jsx(Fe.span,{...s,ref:n,"data-state":dp(u.checked)})})});nw.displayName=cp;var MM="MenuSeparator",rw=x.forwardRef((e,n)=>{const{__scopeMenu:r,...i}=e;return v.jsx(Fe.div,{role:"separator","aria-orientation":"horizontal",...i,ref:n})});rw.displayName=MM;var jM="MenuArrow",ow=x.forwardRef((e,n)=>{const{__scopeMenu:r,...i}=e,s=Rc(r);return v.jsx(op,{...s,...i,ref:n})});ow.displayName=jM;var zM="MenuSub",[i$,iw]=xi(zM),Ns="MenuSubTrigger",aw=x.forwardRef((e,n)=>{const r=wi(Ns,e.__scopeMenu),i=al(Ns,e.__scopeMenu),s=iw(Ns,e.__scopeMenu),u=sp(Ns,e.__scopeMenu),c=x.useRef(null),{pointerGraceTimerRef:d,onPointerGraceIntentChange:h}=u,m={__scopeMenu:e.__scopeMenu},y=x.useCallback(()=>{c.current&&window.clearTimeout(c.current),c.current=null},[]);x.useEffect(()=>y,[y]),x.useEffect(()=>{const b=d.current;return()=>{window.clearTimeout(b),h(null)}},[d,h]);const g=ot(n,s.onTriggerChange);return v.jsx(ip,{asChild:!0,...m,children:v.jsx(Yx,{id:s.triggerId,"aria-haspopup":"menu","aria-expanded":r.open,"aria-controls":r.open?s.contentId:void 0,"data-state":uw(r.open),...e,ref:g,onClick:b=>{e.onClick?.(b),!(e.disabled||b.defaultPrevented)&&(b.currentTarget.focus(),r.open||r.onOpenChange(!0))},onPointerMove:Re(e.onPointerMove,Gs(b=>{u.onItemEnter(b),!b.defaultPrevented&&!e.disabled&&!r.open&&!c.current&&(u.onPointerGraceIntentChange(null),c.current=window.setTimeout(()=>{r.onOpenChange(!0),y()},100))})),onPointerLeave:Re(e.onPointerLeave,Gs(b=>{y();const S=r.content?.getBoundingClientRect();if(S){const _=r.content?.dataset.side,C=_==="right",E=C?-5:5,T=S[C?"left":"right"],O=S[C?"right":"left"];u.onPointerGraceIntentChange({area:[{x:b.clientX+E,y:b.clientY},{x:T,y:S.top},{x:O,y:S.top},{x:O,y:S.bottom},{x:T,y:S.bottom}],side:_}),window.clearTimeout(d.current),d.current=window.setTimeout(()=>u.onPointerGraceIntentChange(null),300)}else{if(u.onTriggerLeave(b),b.defaultPrevented)return;u.onPointerGraceIntentChange(null)}})),onKeyDown:Re(e.onKeyDown,b=>{e.disabled||b.target!==b.currentTarget||u.searchRef.current!==""&&b.key===" "||fM[i.dir].includes(b.key)&&(r.onOpenChange(!0),r.content?.focus(),b.preventDefault())})})})});aw.displayName=Ns;var sw="MenuSubContent",lw=x.forwardRef((e,n)=>{const r=qx(er,e.__scopeMenu),{forceMount:i=r.forceMount,align:s="start",...u}=e,c=wi(er,e.__scopeMenu),d=al(er,e.__scopeMenu),h=iw(sw,e.__scopeMenu),m=x.useRef(null),y=ot(n,m);return v.jsx(qs.Provider,{scope:e.__scopeMenu,children:v.jsx(hr,{present:i||c.open,children:v.jsx(qs.Slot,{scope:e.__scopeMenu,children:v.jsx(lp,{id:h.contentId,"aria-labelledby":h.triggerId,...u,ref:y,align:s,side:d.dir==="rtl"?"left":"right",disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:g=>{d.isUsingKeyboardRef.current&&m.current?.focus(),g.preventDefault()},onCloseAutoFocus:g=>g.preventDefault(),onFocusOutside:Re(e.onFocusOutside,g=>{g.target!==h.trigger&&c.onOpenChange(!1)}),onEscapeKeyDown:Re(e.onEscapeKeyDown,g=>{d.onClose(),g.preventDefault()}),onKeyDown:Re(e.onKeyDown,g=>{const b=g.currentTarget.contains(g.target),S=hM[d.dir].includes(g.key);b&&S&&(c.onOpenChange(!1),h.trigger?.focus(),g.preventDefault())})})})})})});lw.displayName=sw;function uw(e){return e?"open":"closed"}function tc(e){return e==="indeterminate"}function dp(e){return tc(e)?"indeterminate":e?"checked":"unchecked"}function DM(e){const n=document.activeElement;for(const r of e)if(r===n||(r.focus(),document.activeElement!==n))return}function NM(e,n){return e.map((r,i)=>e[(n+i)%e.length])}function kM(e,n,r){const s=n.length>1&&Array.from(n).every(m=>m===n[0])?n[0]:n,u=r?e.indexOf(r):-1;let c=NM(e,Math.max(u,0));s.length===1&&(c=c.filter(m=>m!==r));const h=c.find(m=>m.toLowerCase().startsWith(s.toLowerCase()));return h!==r?h:void 0}function LM(e,n){const{x:r,y:i}=e;let s=!1;for(let u=0,c=n.length-1;ui!=b>i&&r<(g-m)*(i-y)/(b-y)+m&&(s=!s)}return s}function IM(e,n){if(!n)return!1;const r={x:e.clientX,y:e.clientY};return LM(r,n)}function Gs(e){return n=>n.pointerType==="mouse"?e(n):void 0}var $M=Bx,VM=ip,FM=Gx,UM=Zx,HM=up,PM=Kx,BM=Tc,qM=Qx,GM=Jx,ZM=ew,KM=nw,YM=rw,QM=ow,XM=aw,JM=lw,Oc="DropdownMenu",[WM]=$o(Oc,[Hx]),pn=Hx(),[e2,cw]=WM(Oc),dw=e=>{const{__scopeDropdownMenu:n,children:r,dir:i,open:s,defaultOpen:u,onOpenChange:c,modal:d=!0}=e,h=pn(n),m=x.useRef(null),[y,g]=Ma({prop:s,defaultProp:u??!1,onChange:c,caller:Oc});return v.jsx(e2,{scope:n,triggerId:fn(),triggerRef:m,contentId:fn(),open:y,onOpenChange:g,onOpenToggle:x.useCallback(()=>g(b=>!b),[g]),modal:d,children:v.jsx($M,{...h,open:y,onOpenChange:g,dir:i,modal:d,children:r})})};dw.displayName=Oc;var fw="DropdownMenuTrigger",hw=x.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,disabled:i=!1,...s}=e,u=cw(fw,r),c=pn(r),d=ot(n,u.triggerRef);return v.jsx(VM,{asChild:!0,...c,children:v.jsx(Fe.button,{type:"button",id:u.triggerId,"aria-haspopup":"menu","aria-expanded":u.open,"aria-controls":u.open?u.contentId:void 0,"data-state":u.open?"open":"closed","data-disabled":i?"":void 0,disabled:i,...s,ref:d,onPointerDown:Re(e.onPointerDown,h=>{!i&&h.button===0&&h.ctrlKey===!1&&(u.onOpenToggle(),u.open||h.preventDefault())}),onKeyDown:Re(e.onKeyDown,h=>{i||(["Enter"," "].includes(h.key)&&u.onOpenToggle(),h.key==="ArrowDown"&&u.onOpenChange(!0),["Enter"," ","ArrowDown"].includes(h.key)&&h.preventDefault())})})})});hw.displayName=fw;var t2="DropdownMenuPortal",mw=e=>{const{__scopeDropdownMenu:n,...r}=e,i=pn(n);return v.jsx(FM,{...i,...r})};mw.displayName=t2;var pw="DropdownMenuContent",gw=x.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,...i}=e,s=cw(pw,r),u=pn(r),c=x.useRef(!1);return v.jsx(UM,{id:s.contentId,"aria-labelledby":s.triggerId,...u,...i,ref:n,onCloseAutoFocus:Re(e.onCloseAutoFocus,d=>{c.current||s.triggerRef.current?.focus(),c.current=!1,d.preventDefault()}),onInteractOutside:Re(e.onInteractOutside,d=>{const h=d.detail.originalEvent,m=h.button===0&&h.ctrlKey===!0,y=h.button===2||m;(!s.modal||y)&&(c.current=!0)}),style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});gw.displayName=pw;var n2="DropdownMenuGroup",r2=x.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,...i}=e,s=pn(r);return v.jsx(HM,{...s,...i,ref:n})});r2.displayName=n2;var o2="DropdownMenuLabel",vw=x.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,...i}=e,s=pn(r);return v.jsx(PM,{...s,...i,ref:n})});vw.displayName=o2;var i2="DropdownMenuItem",yw=x.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,...i}=e,s=pn(r);return v.jsx(BM,{...s,...i,ref:n})});yw.displayName=i2;var a2="DropdownMenuCheckboxItem",s2=x.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,...i}=e,s=pn(r);return v.jsx(qM,{...s,...i,ref:n})});s2.displayName=a2;var l2="DropdownMenuRadioGroup",u2=x.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,...i}=e,s=pn(r);return v.jsx(GM,{...s,...i,ref:n})});u2.displayName=l2;var c2="DropdownMenuRadioItem",d2=x.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,...i}=e,s=pn(r);return v.jsx(ZM,{...s,...i,ref:n})});d2.displayName=c2;var f2="DropdownMenuItemIndicator",h2=x.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,...i}=e,s=pn(r);return v.jsx(KM,{...s,...i,ref:n})});h2.displayName=f2;var m2="DropdownMenuSeparator",p2=x.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,...i}=e,s=pn(r);return v.jsx(YM,{...s,...i,ref:n})});p2.displayName=m2;var g2="DropdownMenuArrow",v2=x.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,...i}=e,s=pn(r);return v.jsx(QM,{...s,...i,ref:n})});v2.displayName=g2;var y2="DropdownMenuSubTrigger",b2=x.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,...i}=e,s=pn(r);return v.jsx(XM,{...s,...i,ref:n})});b2.displayName=y2;var S2="DropdownMenuSubContent",x2=x.forwardRef((e,n)=>{const{__scopeDropdownMenu:r,...i}=e,s=pn(r);return v.jsx(JM,{...s,...i,ref:n,style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});x2.displayName=S2;var w2=dw,_2=hw,C2=mw,E2=gw,R2=vw,T2=yw;function wb(e,[n,r]){return Math.min(r,Math.max(n,e))}var O2=[" ","Enter","ArrowUp","ArrowDown"],A2=[" ","Enter"],gi="Select",[Ac,Mc,M2]=km(gi),[_i]=$o(gi,[M2,ka]),jc=ka(),[j2,Fo]=_i(gi),[z2,D2]=_i(gi),N2="SelectProvider";function bw(e){const{__scopeSelect:n,children:r,open:i,defaultOpen:s,onOpenChange:u,value:c,defaultValue:d,onValueChange:h,dir:m,name:y,autoComplete:g,disabled:b,required:S,form:_,internal_do_not_use_render:C}=e,E=jc(n),[T,O]=x.useState(null),[A,k]=x.useState(null),[L,U]=x.useState(!1),B=Lm(m),[P,ve]=Ma({prop:i,defaultProp:s??!1,onChange:u,caller:gi}),[ge,de]=Ma({prop:c,defaultProp:d,onChange:h,caller:gi}),le=x.useRef(null),ae=x.useRef(ge);x.useEffect(()=>{const j=_?T?.ownerDocument.getElementById(_):T?.form;if(j instanceof HTMLFormElement){const H=()=>de(ae.current);return j.addEventListener("reset",H),()=>j.removeEventListener("reset",H)}},[_,T,de]);const he=T?!!_||!!T.closest("form"):!0,[ye,N]=x.useState(new Set),Y=fn(),ne=Array.from(ye).map(j=>j.props.value).join(";"),J=x.useCallback(j=>{N(H=>new Set(H).add(j))},[]),W=x.useCallback(j=>{N(H=>{const Q=new Set(H);return Q.delete(j),Q})},[]),z={required:S,trigger:T,onTriggerChange:O,valueNode:A,onValueNodeChange:k,valueNodeHasChildren:L,onValueNodeHasChildrenChange:U,contentId:Y,value:ge,onValueChange:de,open:P,onOpenChange:ve,dir:B,triggerPointerDownPosRef:le,disabled:b,name:y,autoComplete:g,form:_,nativeOptions:ye,nativeSelectKey:ne,isFormControl:he};return v.jsx(tp,{...E,children:v.jsx(j2,{scope:n,...z,children:v.jsx(Ac.Provider,{scope:n,children:v.jsx(z2,{scope:n,onNativeOptionAdd:J,onNativeOptionRemove:W,children:X2(C)?C(z):r})})})})}bw.displayName=N2;var Sw=e=>{const{__scopeSelect:n,children:r,...i}=e;return v.jsx(bw,{__scopeSelect:n,...i,internal_do_not_use_render:({isFormControl:s})=>v.jsxs(v.Fragment,{children:[r,s?v.jsx(Gw,{__scopeSelect:n}):null]})})};Sw.displayName=gi;var xw="SelectTrigger",ww=x.forwardRef((e,n)=>{const{__scopeSelect:r,disabled:i=!1,...s}=e,u=jc(r),c=Fo(xw,r),d=c.disabled||i,h=ot(n,c.onTriggerChange),m=Mc(r),y=x.useRef("touch"),[g,b,S]=Zw(C=>{const E=m().filter(A=>!A.disabled),T=E.find(A=>A.value===c.value),O=Kw(E,C,T);O!==void 0&&c.onValueChange(O.value)}),_=C=>{d||(c.onOpenChange(!0),S()),C&&(c.triggerPointerDownPosRef.current={x:Math.round(C.pageX),y:Math.round(C.pageY)})};return v.jsx(np,{asChild:!0,...u,children:v.jsx(Fe.button,{type:"button",role:"combobox","aria-controls":c.open?c.contentId:void 0,"aria-expanded":c.open,"aria-required":c.required,"aria-autocomplete":"none",dir:c.dir,"data-state":c.open?"open":"closed",disabled:d,"data-disabled":d?"":void 0,"data-placeholder":zc(c.value)?"":void 0,...s,ref:h,onClick:Re(s.onClick,C=>{C.currentTarget.focus(),y.current!=="mouse"&&_(C)}),onPointerDown:Re(s.onPointerDown,C=>{y.current=C.pointerType;const E=C.target;E.hasPointerCapture(C.pointerId)&&E.releasePointerCapture(C.pointerId),C.button===0&&C.ctrlKey===!1&&C.pointerType==="mouse"&&(_(C),C.preventDefault())}),onKeyDown:Re(s.onKeyDown,C=>{const E=g.current!=="";!(C.ctrlKey||C.altKey||C.metaKey)&&C.key.length===1&&b(C.key),!(E&&C.key===" ")&&O2.includes(C.key)&&(_(),C.preventDefault())})})})});ww.displayName=xw;var _w="SelectValue",Cw=x.forwardRef((e,n)=>{const{__scopeSelect:r,className:i,style:s,children:u,placeholder:c="",...d}=e,h=Fo(_w,r),{onValueNodeHasChildrenChange:m}=h,y=u!==void 0,g=ot(n,h.onValueNodeChange);Qt(()=>{m(y)},[m,y]);const b=zc(h.value);return v.jsx(Fe.span,{...d,asChild:b?!1:d.asChild,ref:g,style:{pointerEvents:"none"},children:v.jsx(x.Fragment,{children:b?c:u},b?"placeholder":"value")})});Cw.displayName=_w;var k2="SelectIcon",Ew=x.forwardRef((e,n)=>{const{__scopeSelect:r,children:i,...s}=e;return v.jsx(Fe.span,{"aria-hidden":!0,...s,ref:n,children:i||"▼"})});Ew.displayName=k2;var Rw="SelectPortal",[L2,I2]=_i(Rw,{forceMount:void 0}),Tw=e=>{const{__scopeSelect:n,forceMount:r,...i}=e;return v.jsx(L2,{scope:e.__scopeSelect,forceMount:r,children:v.jsx(rl,{asChild:!0,...i})})};Tw.displayName=Rw;var ko="SelectContent",Ow=x.forwardRef((e,n)=>{const r=I2(ko,e.__scopeSelect),{forceMount:i=r.forceMount,...s}=e,u=Fo(ko,e.__scopeSelect),[c,d]=x.useState();return Qt(()=>{d(new DocumentFragment)},[]),v.jsx(hr,{present:i||u.open,children:({present:h})=>h?v.jsx(jw,{...s,ref:n}):v.jsx(Aw,{...s,fragment:c})})});Ow.displayName=ko;var Aw=x.forwardRef((e,n)=>{const{__scopeSelect:r,children:i,fragment:s}=e;return s?Si.createPortal(v.jsx(Mw,{scope:r,children:v.jsx(Ac.Slot,{scope:r,children:v.jsx("div",{ref:n,children:i})})}),s):null});Aw.displayName="SelectContentFragment";var lr=10,[Mw,Uo]=_i(ko),$2="SelectContentImpl",V2=hi("SelectContent.RemoveScroll"),jw=x.forwardRef((e,n)=>{const{__scopeSelect:r}=e,{position:i="item-aligned",onCloseAutoFocus:s,onEscapeKeyDown:u,onPointerDownOutside:c,side:d,sideOffset:h,align:m,alignOffset:y,arrowPadding:g,collisionBoundary:b,collisionPadding:S,sticky:_,hideWhenDetached:C,avoidCollisions:E,...T}=e,O=Fo(ko,r),[A,k]=x.useState(null),[L,U]=x.useState(null),B=ot(n,k),[P,ve]=x.useState(null),[ge,de]=x.useState(null),le=Mc(r),[ae,he]=x.useState(!1),ye=x.useRef(!1);x.useEffect(()=>{if(A)return Vm(A)},[A]),$m();const N=x.useCallback(ee=>{const[pe,...be]=le().map(Ve=>Ve.ref.current),[ze]=be.slice(-1),Ie=document.activeElement;for(const Ve of ee)if(Ve===Ie||(Ve?.scrollIntoView({block:"nearest"}),Ve===pe&&L&&(L.scrollTop=0),Ve===ze&&L&&(L.scrollTop=L.scrollHeight),Ve?.focus(),document.activeElement!==Ie))return},[le,L]),Y=x.useCallback(()=>N([P,A]),[N,P,A]);x.useEffect(()=>{ae&&Y()},[ae,Y]);const{onOpenChange:ne,triggerPointerDownPosRef:J}=O;x.useEffect(()=>{if(A){let ee={x:0,y:0};const pe=ze=>{ee={x:Math.abs(Math.round(ze.pageX)-(J.current?.x??0)),y:Math.abs(Math.round(ze.pageY)-(J.current?.y??0))}},be=ze=>{ee.x<=10&&ee.y<=10?ze.preventDefault():ze.composedPath().includes(A)||ne(!1),document.removeEventListener("pointermove",pe),J.current=null};return J.current!==null&&(document.addEventListener("pointermove",pe),document.addEventListener("pointerup",be,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",pe),document.removeEventListener("pointerup",be,{capture:!0})}}},[A,ne,J]),x.useEffect(()=>{const ee=()=>ne(!1);return window.addEventListener("blur",ee),window.addEventListener("resize",ee),()=>{window.removeEventListener("blur",ee),window.removeEventListener("resize",ee)}},[ne]);const[W,z]=Zw(ee=>{const pe=le().filter(Ie=>!Ie.disabled),be=pe.find(Ie=>Ie.ref.current===document.activeElement),ze=Kw(pe,ee,be);ze&&setTimeout(()=>ze.ref.current?.focus())}),j=x.useCallback((ee,pe,be)=>{const ze=!ye.current&&!be;(O.value!==void 0&&O.value===pe||ze)&&(ve(ee),ze&&(ye.current=!0))},[O.value]),H=x.useCallback(()=>A?.focus(),[A]),Q=x.useCallback((ee,pe,be)=>{const ze=!ye.current&&!be;(O.value!==void 0&&O.value===pe||ze)&&de(ee)},[O.value]),Z=i==="popper"?im:zw,re=Z===im?{side:d,sideOffset:h,align:m,alignOffset:y,arrowPadding:g,collisionBoundary:b,collisionPadding:S,sticky:_,hideWhenDetached:C,avoidCollisions:E}:{};return v.jsx(Mw,{scope:r,content:A,viewport:L,onViewportChange:U,itemRefCallback:j,selectedItem:P,onItemLeave:H,itemTextRefCallback:Q,focusSelectedItem:Y,selectedItemText:ge,position:i,isPositioned:ae,searchRef:W,children:v.jsx(bc,{as:V2,allowPinchZoom:!0,children:v.jsx(vc,{asChild:!0,trapped:O.open,onMountAutoFocus:ee=>{ee.preventDefault()},onUnmountAutoFocus:Re(s,ee=>{O.trigger?.focus({preventScroll:!0}),ee.preventDefault()}),children:v.jsx(nl,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:u,onPointerDownOutside:c,onFocusOutside:ee=>ee.preventDefault(),onDismiss:()=>O.onOpenChange(!1),children:v.jsx(Z,{role:"listbox",id:O.contentId,"data-state":O.open?"open":"closed",dir:O.dir,onContextMenu:ee=>ee.preventDefault(),...T,...re,onPlaced:()=>he(!0),ref:B,style:{display:"flex",flexDirection:"column",outline:"none",...T.style},onKeyDown:Re(T.onKeyDown,ee=>{const pe=ee.ctrlKey||ee.altKey||ee.metaKey;if(ee.key==="Tab"&&ee.preventDefault(),!pe&&ee.key.length===1&&z(ee.key),["ArrowUp","ArrowDown","Home","End"].includes(ee.key)){let ze=le().filter(Ie=>!Ie.disabled).map(Ie=>Ie.ref.current);if(["ArrowUp","End"].includes(ee.key)&&(ze=ze.slice().reverse()),["ArrowUp","ArrowDown"].includes(ee.key)){const Ie=ee.target,Ve=ze.indexOf(Ie);ze=ze.slice(Ve+1)}setTimeout(()=>N(ze)),ee.preventDefault()}})})})})})})});jw.displayName=$2;var F2="SelectItemAlignedPosition",zw=x.forwardRef((e,n)=>{const{__scopeSelect:r,onPlaced:i,...s}=e,u=Fo(ko,r),c=Uo(ko,r),[d,h]=x.useState(null),[m,y]=x.useState(null),g=ot(n,y),b=Mc(r),S=x.useRef(!1),_=x.useRef(!0),{viewport:C,selectedItem:E,selectedItemText:T,focusSelectedItem:O}=c,A=x.useCallback(()=>{if(u.trigger&&u.valueNode&&d&&m&&C&&E&&T){const B=u.trigger.getBoundingClientRect(),P=m.getBoundingClientRect(),ve=u.valueNode.getBoundingClientRect(),ge=T.getBoundingClientRect();if(u.dir!=="rtl"){const Ie=ge.left-P.left,Ve=ve.left-Ie,st=B.left-Ve,Xe=B.width+st,Xt=Math.max(Xe,P.width),Dt=window.innerWidth-lr,mt=wb(Ve,[lr,Math.max(lr,Dt-Xt)]);d.style.minWidth=Xe+"px",d.style.left=mt+"px"}else{const Ie=P.right-ge.right,Ve=window.innerWidth-ve.right-Ie,st=window.innerWidth-B.right-Ve,Xe=B.width+st,Xt=Math.max(Xe,P.width),Dt=window.innerWidth-lr,mt=wb(Ve,[lr,Math.max(lr,Dt-Xt)]);d.style.minWidth=Xe+"px",d.style.right=mt+"px"}const de=b(),le=window.innerHeight-lr*2,ae=C.scrollHeight,he=window.getComputedStyle(m),ye=parseInt(he.borderTopWidth,10),N=parseInt(he.paddingTop,10),Y=parseInt(he.borderBottomWidth,10),ne=parseInt(he.paddingBottom,10),J=ye+N+ae+ne+Y,W=Math.min(E.offsetHeight*5,J),z=window.getComputedStyle(C),j=parseInt(z.paddingTop,10),H=parseInt(z.paddingBottom,10),Q=B.top+B.height/2-lr,Z=le-Q,re=E.offsetHeight/2,ee=E.offsetTop+re,pe=ye+N+ee,be=J-pe;if(pe<=Q){const Ie=de.length>0&&E===de[de.length-1].ref.current;d.style.bottom="0px";const Ve=m.clientHeight-C.offsetTop-C.offsetHeight,st=Math.max(Z,re+(Ie?H:0)+Ve+Y),Xe=pe+st;d.style.height=Xe+"px"}else{const Ie=de.length>0&&E===de[0].ref.current;d.style.top="0px";const st=Math.max(Q,ye+C.offsetTop+(Ie?j:0)+re)+be;d.style.height=st+"px",C.scrollTop=pe-Q+C.offsetTop}d.style.margin=`${lr}px 0`,d.style.minHeight=W+"px",d.style.maxHeight=le+"px",i?.(),requestAnimationFrame(()=>S.current=!0)}},[b,u.trigger,u.valueNode,d,m,C,E,T,u.dir,i]);Qt(()=>A(),[A]);const[k,L]=x.useState();Qt(()=>{m&&L(window.getComputedStyle(m).zIndex)},[m]);const U=x.useCallback(B=>{B&&_.current===!0&&(A(),O?.(),_.current=!1)},[A,O]);return v.jsx(H2,{scope:r,contentWrapper:d,shouldExpandOnScrollRef:S,onScrollButtonChange:U,children:v.jsx("div",{ref:h,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:k},children:v.jsx(Fe.div,{...s,ref:g,style:{boxSizing:"border-box",maxHeight:"100%",...s.style}})})})});zw.displayName=F2;var U2="SelectPopperPosition",im=x.forwardRef((e,n)=>{const{__scopeSelect:r,align:i="start",collisionPadding:s=lr,...u}=e,c=jc(r);return v.jsx(rp,{...c,...u,ref:n,align:i,collisionPadding:s,style:{boxSizing:"border-box",...u.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});im.displayName=U2;var[H2,fp]=_i(ko,{}),am="SelectViewport",Dw=x.forwardRef((e,n)=>{const{__scopeSelect:r,nonce:i,...s}=e,u=Uo(am,r),c=fp(am,r),d=ot(n,u.onViewportChange),h=x.useRef(0);return v.jsxs(v.Fragment,{children:[v.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:i}),v.jsx(Ac.Slot,{scope:r,children:v.jsx(Fe.div,{"data-radix-select-viewport":"",role:"presentation",...s,ref:d,style:{position:"relative",flex:1,overflow:"hidden auto",...s.style},onScroll:Re(s.onScroll,m=>{const y=m.currentTarget,{contentWrapper:g,shouldExpandOnScrollRef:b}=c;if(b?.current&&g){const S=Math.abs(h.current-y.scrollTop);if(S>0){const _=window.innerHeight-lr*2,C=parseFloat(g.style.minHeight),E=parseFloat(g.style.height),T=Math.max(C,E);if(T<_){const O=T+S,A=Math.min(_,O),k=O-A;g.style.height=A+"px",g.style.bottom==="0px"&&(y.scrollTop=k>0?k:0,g.style.justifyContent="flex-end")}}}h.current=y.scrollTop})})})]})});Dw.displayName=am;var Nw="SelectGroup",[P2,B2]=_i(Nw),q2=x.forwardRef((e,n)=>{const{__scopeSelect:r,...i}=e,s=fn();return v.jsx(P2,{scope:r,id:s,children:v.jsx(Fe.div,{role:"group","aria-labelledby":s,...i,ref:n})})});q2.displayName=Nw;var kw="SelectLabel",G2=x.forwardRef((e,n)=>{const{__scopeSelect:r,...i}=e,s=B2(kw,r);return v.jsx(Fe.div,{id:s.id,...i,ref:n})});G2.displayName=kw;var nc="SelectItem",[Z2,Lw]=_i(nc),Iw=x.forwardRef((e,n)=>{const{__scopeSelect:r,value:i,disabled:s=!1,textValue:u,...c}=e,d=Fo(nc,r),h=Uo(nc,r),m=d.value===i,[y,g]=x.useState(u??""),[b,S]=x.useState(!1),_=tr(A=>h.itemRefCallback?.(A,i,s)),C=ot(n,_),E=fn(),T=x.useRef("touch"),O=()=>{s||(d.onValueChange(i),d.onOpenChange(!1))};return v.jsx(Z2,{scope:r,value:i,disabled:s,textId:E,isSelected:m,onItemTextChange:x.useCallback(A=>{g(k=>k||(A?.textContent??"").trim())},[]),children:v.jsx(Ac.ItemSlot,{scope:r,value:i,disabled:s,textValue:y,children:v.jsx(Fe.div,{role:"option","aria-labelledby":E,"data-highlighted":b?"":void 0,"aria-selected":m&&b,"data-state":m?"checked":"unchecked","aria-disabled":s||void 0,"data-disabled":s?"":void 0,tabIndex:s?void 0:-1,...c,ref:C,onFocus:Re(c.onFocus,()=>S(!0)),onBlur:Re(c.onBlur,()=>S(!1)),onClick:Re(c.onClick,()=>{T.current!=="mouse"&&O()}),onPointerUp:Re(c.onPointerUp,()=>{T.current==="mouse"&&O()}),onPointerDown:Re(c.onPointerDown,A=>{T.current=A.pointerType}),onPointerMove:Re(c.onPointerMove,A=>{T.current=A.pointerType,s?h.onItemLeave?.():T.current==="mouse"&&A.currentTarget.focus({preventScroll:!0})}),onPointerLeave:Re(c.onPointerLeave,A=>{A.currentTarget===document.activeElement&&h.onItemLeave?.()}),onKeyDown:Re(c.onKeyDown,A=>{s||A.target!==A.currentTarget||h.searchRef?.current!==""&&A.key===" "||(A2.includes(A.key)&&O(),A.key===" "&&A.preventDefault())})})})})});Iw.displayName=nc;var ks="SelectItemText",$w=x.forwardRef((e,n)=>{const{__scopeSelect:r,className:i,style:s,...u}=e,c=Fo(ks,r),d=Uo(ks,r),h=Lw(ks,r),m=D2(ks,r),[y,g]=x.useState(null),b=tr(O=>d.itemTextRefCallback?.(O,h.value,h.disabled)),S=ot(n,g,h.onItemTextChange,b),_=y?.textContent,C=x.useMemo(()=>v.jsx("option",{value:h.value,disabled:h.disabled,children:_},h.value),[h.disabled,h.value,_]),{onNativeOptionAdd:E,onNativeOptionRemove:T}=m;return Qt(()=>(E(C),()=>T(C)),[E,T,C]),v.jsxs(v.Fragment,{children:[v.jsx(Fe.span,{id:h.textId,...u,ref:S}),h.isSelected&&c.valueNode&&!c.valueNodeHasChildren&&!zc(c.value)?Si.createPortal(u.children,c.valueNode):null]})});$w.displayName=ks;var Vw="SelectItemIndicator",Fw=x.forwardRef((e,n)=>{const{__scopeSelect:r,...i}=e;return Lw(Vw,r).isSelected?v.jsx(Fe.span,{"aria-hidden":!0,...i,ref:n}):null});Fw.displayName=Vw;var sm="SelectScrollUpButton",Uw=x.forwardRef((e,n)=>{const r=Uo(sm,e.__scopeSelect),i=fp(sm,e.__scopeSelect),[s,u]=x.useState(!1),c=ot(n,i.onScrollButtonChange);return Qt(()=>{if(r.viewport&&r.isPositioned){let d=function(){const m=h.scrollTop>0;u(m)};const h=r.viewport;return d(),h.addEventListener("scroll",d),()=>h.removeEventListener("scroll",d)}},[r.viewport,r.isPositioned]),s?v.jsx(Pw,{...e,ref:c,onAutoScroll:()=>{const{viewport:d,selectedItem:h}=r;d&&h&&(d.scrollTop=d.scrollTop-h.offsetHeight)}}):null});Uw.displayName=sm;var lm="SelectScrollDownButton",Hw=x.forwardRef((e,n)=>{const r=Uo(lm,e.__scopeSelect),i=fp(lm,e.__scopeSelect),[s,u]=x.useState(!1),c=ot(n,i.onScrollButtonChange);return Qt(()=>{if(r.viewport&&r.isPositioned){let d=function(){const m=h.scrollHeight-h.clientHeight,y=Math.ceil(h.scrollTop)h.removeEventListener("scroll",d)}},[r.viewport,r.isPositioned]),s?v.jsx(Pw,{...e,ref:c,onAutoScroll:()=>{const{viewport:d,selectedItem:h}=r;d&&h&&(d.scrollTop=d.scrollTop+h.offsetHeight)}}):null});Hw.displayName=lm;var Pw=x.forwardRef((e,n)=>{const{__scopeSelect:r,onAutoScroll:i,...s}=e,u=Uo("SelectScrollButton",r),c=x.useRef(null),d=Mc(r),h=x.useCallback(()=>{c.current!==null&&(window.clearInterval(c.current),c.current=null)},[]);return x.useEffect(()=>()=>h(),[h]),Qt(()=>{d().find(y=>y.ref.current===document.activeElement)?.ref.current?.scrollIntoView({block:"nearest"})},[d]),v.jsx(Fe.div,{"aria-hidden":!0,...s,ref:n,style:{flexShrink:0,...s.style},onPointerDown:Re(s.onPointerDown,()=>{c.current===null&&(c.current=window.setInterval(i,50))}),onPointerMove:Re(s.onPointerMove,()=>{u.onItemLeave?.(),c.current===null&&(c.current=window.setInterval(i,50))}),onPointerLeave:Re(s.onPointerLeave,()=>{h()})})}),K2="SelectSeparator",Y2=x.forwardRef((e,n)=>{const{__scopeSelect:r,...i}=e;return v.jsx(Fe.div,{"aria-hidden":!0,...i,ref:n})});Y2.displayName=K2;var Bw="SelectArrow",Q2=x.forwardRef((e,n)=>{const{__scopeSelect:r,...i}=e,s=jc(r);return Uo(Bw,r).position==="popper"?v.jsx(op,{...s,...i,ref:n}):null});Q2.displayName=Bw;var qw="SelectBubbleInput",Gw=x.forwardRef(({__scopeSelect:e,...n},r)=>{const i=Fo(qw,e),{value:s,onValueChange:u,required:c,disabled:d,name:h,autoComplete:m,form:y}=i,{nativeOptions:g,nativeSelectKey:b}=i,S=x.useRef(null),_=ot(r,S),C=s??"",E=DO(C),T=Array.from(g).some(O=>(O.props.value??"")==="");return x.useEffect(()=>{const O=S.current;if(!O)return;const A=window.HTMLSelectElement.prototype,L=Object.getOwnPropertyDescriptor(A,"value").set;if(E!==C&&L){const U=new Event("change",{bubbles:!0});L.call(O,C),O.dispatchEvent(U)}},[E,C]),v.jsxs(Fe.select,{"aria-hidden":!0,required:c,tabIndex:-1,name:h,autoComplete:m,disabled:d,form:y,onChange:O=>u(O.target.value),...n,style:{...ZS,...n.style},ref:_,defaultValue:C,children:[zc(s)&&!T?v.jsx("option",{value:""}):null,Array.from(g)]},b)});Gw.displayName=qw;function X2(e){return typeof e=="function"}function zc(e){return e===""||e===void 0}function Zw(e){const n=tr(e),r=x.useRef(""),i=x.useRef(0),s=x.useCallback(c=>{const d=r.current+c;n(d),(function h(m){r.current=m,window.clearTimeout(i.current),m!==""&&(i.current=window.setTimeout(()=>h(""),1e3))})(d)},[n]),u=x.useCallback(()=>{r.current="",window.clearTimeout(i.current)},[]);return x.useEffect(()=>()=>window.clearTimeout(i.current),[]),[r,s,u]}function Kw(e,n,r){const s=n.length>1&&Array.from(n).every(m=>m===n[0])?n[0]:n,u=r?e.indexOf(r):-1;let c=J2(e,Math.max(u,0));s.length===1&&(c=c.filter(m=>m!==r));const h=c.find(m=>m.textValue.toLowerCase().startsWith(s.toLowerCase()));return h!==r?h:void 0}function J2(e,n){return e.map((r,i)=>e[(n+i)%e.length])}var[Dc]=$o("Tooltip",[ka]),Nc=ka(),Yw="TooltipProvider",W2=700,um="tooltip.open",[ej,hp]=Dc(Yw),Qw=e=>{const{__scopeTooltip:n,delayDuration:r=W2,skipDelayDuration:i=300,disableHoverableContent:s=!1,children:u}=e,c=x.useRef(!0),d=x.useRef(!1),h=x.useRef(0);return x.useEffect(()=>{const m=h.current;return()=>window.clearTimeout(m)},[]),v.jsx(ej,{scope:n,isOpenDelayedRef:c,delayDuration:r,onOpen:x.useCallback(()=>{i<=0||(window.clearTimeout(h.current),c.current=!1)},[i]),onClose:x.useCallback(()=>{i<=0||(window.clearTimeout(h.current),h.current=window.setTimeout(()=>c.current=!0,i))},[i]),isPointerInTransitRef:d,onPointerInTransitChange:x.useCallback(m=>{d.current=m},[]),disableHoverableContent:s,children:u})};Qw.displayName=Yw;var Zs="Tooltip",[tj,sl]=Dc(Zs),Xw=e=>{const{__scopeTooltip:n,children:r,open:i,defaultOpen:s,onOpenChange:u,disableHoverableContent:c,delayDuration:d}=e,h=hp(Zs,e.__scopeTooltip),m=Nc(n),[y,g]=x.useState(null),b=fn(),S=x.useRef(0),_=c??h.disableHoverableContent,C=d??h.delayDuration,E=x.useRef(!1),[T,O]=Ma({prop:i,defaultProp:s??!1,onChange:B=>{B?(h.onOpen(),document.dispatchEvent(new CustomEvent(um))):h.onClose(),u?.(B)},caller:Zs}),A=x.useMemo(()=>T?E.current?"delayed-open":"instant-open":"closed",[T]),k=x.useCallback(()=>{window.clearTimeout(S.current),S.current=0,E.current=!1,O(!0)},[O]),L=x.useCallback(()=>{window.clearTimeout(S.current),S.current=0,O(!1)},[O]),U=x.useCallback(()=>{window.clearTimeout(S.current),S.current=window.setTimeout(()=>{E.current=!0,O(!0),S.current=0},C)},[C,O]);return x.useEffect(()=>()=>{S.current&&(window.clearTimeout(S.current),S.current=0)},[]),v.jsx(tp,{...m,children:v.jsx(tj,{scope:n,contentId:b,open:T,stateAttribute:A,trigger:y,onTriggerChange:g,onTriggerEnter:x.useCallback(()=>{h.isOpenDelayedRef.current?U():k()},[h.isOpenDelayedRef,U,k]),onTriggerLeave:x.useCallback(()=>{_?L():(window.clearTimeout(S.current),S.current=0)},[L,_]),onOpen:k,onClose:L,disableHoverableContent:_,children:r})})};Xw.displayName=Zs;var cm="TooltipTrigger",Jw=x.forwardRef((e,n)=>{const{__scopeTooltip:r,...i}=e,s=sl(cm,r),u=hp(cm,r),c=Nc(r),d=x.useRef(null),h=ot(n,d,s.onTriggerChange),m=x.useRef(!1),y=x.useRef(!1),g=x.useCallback(()=>m.current=!1,[]);return x.useEffect(()=>()=>document.removeEventListener("pointerup",g),[g]),v.jsx(np,{asChild:!0,...c,children:v.jsx(Fe.button,{"aria-describedby":s.open?s.contentId:void 0,"data-state":s.stateAttribute,...i,ref:h,onPointerMove:Re(e.onPointerMove,b=>{b.pointerType!=="touch"&&!y.current&&!u.isPointerInTransitRef.current&&(s.onTriggerEnter(),y.current=!0)}),onPointerLeave:Re(e.onPointerLeave,()=>{s.onTriggerLeave(),y.current=!1}),onPointerDown:Re(e.onPointerDown,()=>{s.open&&s.onClose(),m.current=!0,document.addEventListener("pointerup",g,{once:!0})}),onFocus:Re(e.onFocus,()=>{m.current||s.onOpen()}),onBlur:Re(e.onBlur,s.onClose),onClick:Re(e.onClick,s.onClose)})})});Jw.displayName=cm;var mp="TooltipPortal",[nj,rj]=Dc(mp,{forceMount:void 0}),Ww=e=>{const{__scopeTooltip:n,forceMount:r,children:i,container:s}=e,u=sl(mp,n);return v.jsx(nj,{scope:n,forceMount:r,children:v.jsx(hr,{present:r||u.open,children:v.jsx(rl,{asChild:!0,container:s,children:i})})})};Ww.displayName=mp;var za="TooltipContent",e1=x.forwardRef((e,n)=>{const r=rj(za,e.__scopeTooltip),{forceMount:i=r.forceMount,side:s="top",...u}=e,c=sl(za,e.__scopeTooltip);return v.jsx(hr,{present:i||c.open,children:c.disableHoverableContent?v.jsx(t1,{side:s,...u,ref:n}):v.jsx(oj,{side:s,...u,ref:n})})}),oj=x.forwardRef((e,n)=>{const r=sl(za,e.__scopeTooltip),i=hp(za,e.__scopeTooltip),s=x.useRef(null),u=ot(n,s),[c,d]=x.useState(null),{trigger:h,onClose:m}=r,y=s.current,{onPointerInTransitChange:g}=i,b=x.useCallback(()=>{d(null),g(!1)},[g]),S=x.useCallback((_,C)=>{const E=_.currentTarget,T={x:_.clientX,y:_.clientY},O=lj(T,E.getBoundingClientRect()),A=uj(T,O),k=cj(C.getBoundingClientRect()),L=fj([...A,...k]);d(L),g(!0)},[g]);return x.useEffect(()=>()=>b(),[b]),x.useEffect(()=>{if(h&&y){const _=E=>S(E,y),C=E=>S(E,h);return h.addEventListener("pointerleave",_),y.addEventListener("pointerleave",C),()=>{h.removeEventListener("pointerleave",_),y.removeEventListener("pointerleave",C)}}},[h,y,S,b]),x.useEffect(()=>{if(c){const _=C=>{const E=C.target,T={x:C.clientX,y:C.clientY},O=h?.contains(E)||y?.contains(E),A=!dj(T,c);O?b():A&&(b(),m())};return document.addEventListener("pointermove",_),()=>document.removeEventListener("pointermove",_)}},[h,y,c,m,b]),v.jsx(t1,{...e,ref:u})}),[ij,aj]=Dc(Zs,{isInside:!1}),sj=eT("TooltipContent"),t1=x.forwardRef((e,n)=>{const{__scopeTooltip:r,children:i,"aria-label":s,onEscapeKeyDown:u,onPointerDownOutside:c,...d}=e,h=sl(za,r),m=Nc(r),{onClose:y}=h;return x.useEffect(()=>(document.addEventListener(um,y),()=>document.removeEventListener(um,y)),[y]),x.useEffect(()=>{if(h.trigger){const g=b=>{b.target instanceof Node&&b.target.contains(h.trigger)&&y()};return window.addEventListener("scroll",g,{capture:!0}),()=>window.removeEventListener("scroll",g,{capture:!0})}},[h.trigger,y]),v.jsx(nl,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:u,onPointerDownOutside:c,onFocusOutside:g=>g.preventDefault(),onDismiss:y,children:v.jsxs(rp,{"data-state":h.stateAttribute,...m,...d,ref:n,style:{...d.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-tooltip-content-available-width":"var(--radix-popper-available-width)","--radix-tooltip-content-available-height":"var(--radix-popper-available-height)","--radix-tooltip-trigger-width":"var(--radix-popper-anchor-width)","--radix-tooltip-trigger-height":"var(--radix-popper-anchor-height)"},children:[v.jsx(sj,{children:i}),v.jsx(ij,{scope:r,isInside:!0,children:v.jsx(dT,{id:h.contentId,role:"tooltip",children:s||i})})]})})});e1.displayName=za;var n1="TooltipArrow",r1=x.forwardRef((e,n)=>{const{__scopeTooltip:r,...i}=e,s=Nc(r);return aj(n1,r).isInside?null:v.jsx(op,{...s,...i,ref:n})});r1.displayName=n1;function lj(e,n){const r=Math.abs(n.top-e.y),i=Math.abs(n.bottom-e.y),s=Math.abs(n.right-e.x),u=Math.abs(n.left-e.x);switch(Math.min(r,i,s,u)){case u:return"left";case s:return"right";case r:return"top";case i:return"bottom";default:throw new Error("unreachable")}}function uj(e,n,r=5){const i=[];switch(n){case"top":i.push({x:e.x-r,y:e.y+r},{x:e.x+r,y:e.y+r});break;case"bottom":i.push({x:e.x-r,y:e.y-r},{x:e.x+r,y:e.y-r});break;case"left":i.push({x:e.x+r,y:e.y-r},{x:e.x+r,y:e.y+r});break;case"right":i.push({x:e.x-r,y:e.y-r},{x:e.x-r,y:e.y+r});break}return i}function cj(e){const{top:n,right:r,bottom:i,left:s}=e;return[{x:s,y:n},{x:r,y:n},{x:r,y:i},{x:s,y:i}]}function dj(e,n){const{x:r,y:i}=e;let s=!1;for(let u=0,c=n.length-1;ui!=b>i&&r<(g-m)*(i-y)/(b-y)+m&&(s=!s)}return s}function fj(e){const n=e.slice();return n.sort((r,i)=>r.xi.x?1:r.yi.y?1:0),hj(n)}function hj(e){if(e.length<=1)return e.slice();const n=[];for(let i=0;i=2;){const u=n[n.length-1],c=n[n.length-2];if((u.x-c.x)*(s.y-c.y)>=(u.y-c.y)*(s.x-c.x))n.pop();else break}n.push(s)}n.pop();const r=[];for(let i=e.length-1;i>=0;i--){const s=e[i];for(;r.length>=2;){const u=r[r.length-1],c=r[r.length-2];if((u.x-c.x)*(s.y-c.y)>=(u.y-c.y)*(s.x-c.x))r.pop();else break}r.push(s)}return r.pop(),n.length===1&&r.length===1&&n[0].x===r[0].x&&n[0].y===r[0].y?n:n.concat(r)}var mj=Qw,pj=Xw,gj=Jw,vj=Ww,yj=e1,bj=r1;function o1(e){var n,r,i="";if(typeof e=="string"||typeof e=="number")i+=e;else if(typeof e=="object")if(Array.isArray(e)){var s=e.length;for(n=0;n{const r=new Array(e.length+n.length);for(let i=0;i({classGroupId:e,validator:n}),a1=(e=new Map,n=null,r)=>({nextPart:e,validators:n,classGroupId:r}),rc="-",_b=[],wj="arbitrary..",_j=e=>{const n=Ej(e),{conflictingClassGroups:r,conflictingClassGroupModifiers:i}=e;return{getClassGroupId:c=>{if(c.startsWith("[")&&c.endsWith("]"))return Cj(c);const d=c.split(rc),h=d[0]===""&&d.length>1?1:0;return s1(d,h,n)},getConflictingClassGroupIds:(c,d)=>{if(d){const h=i[c],m=r[c];return h?m?Sj(m,h):h:m||_b}return r[c]||_b}}},s1=(e,n,r)=>{if(e.length-n===0)return r.classGroupId;const s=e[n],u=r.nextPart.get(s);if(u){const m=s1(e,n+1,u);if(m)return m}const c=r.validators;if(c===null)return;const d=n===0?e.join(rc):e.slice(n).join(rc),h=c.length;for(let m=0;me.slice(1,-1).indexOf(":")===-1?void 0:(()=>{const n=e.slice(1,-1),r=n.indexOf(":"),i=n.slice(0,r);return i?wj+i:void 0})(),Ej=e=>{const{theme:n,classGroups:r}=e;return Rj(r,n)},Rj=(e,n)=>{const r=a1();for(const i in e){const s=e[i];pp(s,r,i,n)}return r},pp=(e,n,r,i)=>{const s=e.length;for(let u=0;u{if(typeof e=="string"){Oj(e,n,r);return}if(typeof e=="function"){Aj(e,n,r,i);return}Mj(e,n,r,i)},Oj=(e,n,r)=>{const i=e===""?n:l1(n,e);i.classGroupId=r},Aj=(e,n,r,i)=>{if(jj(e)){pp(e(i),n,r,i);return}n.validators===null&&(n.validators=[]),n.validators.push(xj(r,e))},Mj=(e,n,r,i)=>{const s=Object.entries(e),u=s.length;for(let c=0;c{let r=e;const i=n.split(rc),s=i.length;for(let u=0;u"isThemeGetter"in e&&e.isThemeGetter===!0,zj=e=>{if(e<1)return{get:()=>{},set:()=>{}};let n=0,r=Object.create(null),i=Object.create(null);const s=(u,c)=>{r[u]=c,n++,n>e&&(n=0,i=r,r=Object.create(null))};return{get(u){let c=r[u];if(c!==void 0)return c;if((c=i[u])!==void 0)return s(u,c),c},set(u,c){u in r?r[u]=c:s(u,c)}}},dm="!",Cb=":",Dj=[],Eb=(e,n,r,i,s)=>({modifiers:e,hasImportantModifier:n,baseClassName:r,maybePostfixModifierPosition:i,isExternal:s}),Nj=e=>{const{prefix:n,experimentalParseClassName:r}=e;let i=s=>{const u=[];let c=0,d=0,h=0,m;const y=s.length;for(let C=0;Ch?m-h:void 0;return Eb(u,S,b,_)};if(n){const s=n+Cb,u=i;i=c=>c.startsWith(s)?u(c.slice(s.length)):Eb(Dj,!1,c,void 0,!0)}if(r){const s=i;i=u=>r({className:u,parseClassName:s})}return i},kj=e=>{const n=new Map;return e.orderSensitiveModifiers.forEach((r,i)=>{n.set(r,1e6+i)}),r=>{const i=[];let s=[];for(let u=0;u0&&(s.sort(),i.push(...s),s=[]),i.push(c)):s.push(c)}return s.length>0&&(s.sort(),i.push(...s)),i}},Lj=e=>({cache:zj(e.cacheSize),parseClassName:Nj(e),sortModifiers:kj(e),postfixLookupClassGroupIds:Ij(e),..._j(e)}),Ij=e=>{const n=Object.create(null),r=e.postfixLookupClassGroups;if(r)for(let i=0;i{const{parseClassName:r,getClassGroupId:i,getConflictingClassGroupIds:s,sortModifiers:u,postfixLookupClassGroupIds:c}=n,d=[],h=e.trim().split($j);let m="";for(let y=h.length-1;y>=0;y-=1){const g=h[y],{isExternal:b,modifiers:S,hasImportantModifier:_,baseClassName:C,maybePostfixModifierPosition:E}=r(g);if(b){m=g+(m.length>0?" "+m:m);continue}let T=!!E,O;if(T){const B=C.substring(0,E);O=i(B);const P=O&&c[O]?i(C):void 0;P&&P!==O&&(O=P,T=!1)}else O=i(C);if(!O){if(!T){m=g+(m.length>0?" "+m:m);continue}if(O=i(C),!O){m=g+(m.length>0?" "+m:m);continue}T=!1}const A=S.length===0?"":S.length===1?S[0]:u(S).join(":"),k=_?A+dm:A,L=k+O;if(d.indexOf(L)>-1)continue;d.push(L);const U=s(O,T);for(let B=0;B0?" "+m:m)}return m},Fj=(...e)=>{let n=0,r,i,s="";for(;n{if(typeof e=="string")return e;let n,r="";for(let i=0;i{let r,i,s,u;const c=h=>{const m=n.reduce((y,g)=>g(y),e());return r=Lj(m),i=r.cache.get,s=r.cache.set,u=d,d(h)},d=h=>{const m=i(h);if(m)return m;const y=Vj(h,r);return s(h,y),y};return u=c,(...h)=>u(Fj(...h))},Hj=[],Bt=e=>{const n=r=>r[e]||Hj;return n.isThemeGetter=!0,n},c1=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,d1=/^\((?:(\w[\w-]*):)?(.+)\)$/i,Pj=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,Bj=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,qj=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,Gj=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,Zj=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Kj=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,To=e=>Pj.test(e),qe=e=>!!e&&!Number.isNaN(Number(e)),Sr=e=>!!e&&Number.isInteger(Number(e)),Eh=e=>e.endsWith("%")&&qe(e.slice(0,-1)),Kr=e=>Bj.test(e),f1=()=>!0,Yj=e=>qj.test(e)&&!Gj.test(e),gp=()=>!1,Qj=e=>Zj.test(e),Xj=e=>Kj.test(e),Jj=e=>!_e(e)&&!Ce(e),Wj=e=>e.startsWith("@container")&&(e[10]==="/"&&e[11]!==void 0||e[11]==="s"&&e[16]!==void 0&&e.startsWith("-size/",10)||e[11]==="n"&&e[18]!==void 0&&e.startsWith("-normal/",10)),ez=e=>Ho(e,p1,gp),_e=e=>c1.test(e),ci=e=>Ho(e,g1,Yj),Rb=e=>Ho(e,lz,qe),tz=e=>Ho(e,y1,f1),nz=e=>Ho(e,v1,gp),Tb=e=>Ho(e,h1,gp),rz=e=>Ho(e,m1,Xj),zu=e=>Ho(e,b1,Qj),Ce=e=>d1.test(e),As=e=>Ci(e,g1),oz=e=>Ci(e,v1),Ob=e=>Ci(e,h1),iz=e=>Ci(e,p1),az=e=>Ci(e,m1),Du=e=>Ci(e,b1,!0),sz=e=>Ci(e,y1,!0),Ho=(e,n,r)=>{const i=c1.exec(e);return i?i[1]?n(i[1]):r(i[2]):!1},Ci=(e,n,r=!1)=>{const i=d1.exec(e);return i?i[1]?n(i[1]):r:!1},h1=e=>e==="position"||e==="percentage",m1=e=>e==="image"||e==="url",p1=e=>e==="length"||e==="size"||e==="bg-size",g1=e=>e==="length",lz=e=>e==="number",v1=e=>e==="family-name",y1=e=>e==="number"||e==="weight",b1=e=>e==="shadow",uz=()=>{const e=Bt("color"),n=Bt("font"),r=Bt("text"),i=Bt("font-weight"),s=Bt("tracking"),u=Bt("leading"),c=Bt("breakpoint"),d=Bt("container"),h=Bt("spacing"),m=Bt("radius"),y=Bt("shadow"),g=Bt("inset-shadow"),b=Bt("text-shadow"),S=Bt("drop-shadow"),_=Bt("blur"),C=Bt("perspective"),E=Bt("aspect"),T=Bt("ease"),O=Bt("animate"),A=()=>["auto","avoid","all","avoid-page","page","left","right","column"],k=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],L=()=>[...k(),Ce,_e],U=()=>["auto","hidden","clip","visible","scroll"],B=()=>["auto","contain","none"],P=()=>[Ce,_e,h],ve=()=>[To,"full","auto",...P()],ge=()=>[Sr,"none","subgrid",Ce,_e],de=()=>["auto",{span:["full",Sr,Ce,_e]},Sr,Ce,_e],le=()=>[Sr,"auto",Ce,_e],ae=()=>["auto","min","max","fr",Ce,_e],he=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],ye=()=>["start","end","center","stretch","center-safe","end-safe"],N=()=>["auto",...P()],Y=()=>[To,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...P()],ne=()=>[To,"screen","full","dvw","lvw","svw","min","max","fit",...P()],J=()=>[To,"screen","full","lh","dvh","lvh","svh","min","max","fit",...P()],W=()=>[e,Ce,_e],z=()=>[...k(),Ob,Tb,{position:[Ce,_e]}],j=()=>["no-repeat",{repeat:["","x","y","space","round"]}],H=()=>["auto","cover","contain",iz,ez,{size:[Ce,_e]}],Q=()=>[Eh,As,ci],Z=()=>["","none","full",m,Ce,_e],re=()=>["",qe,As,ci],ee=()=>["solid","dashed","dotted","double"],pe=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],be=()=>[qe,Eh,Ob,Tb],ze=()=>["","none",_,Ce,_e],Ie=()=>["none",qe,Ce,_e],Ve=()=>["none",qe,Ce,_e],st=()=>[qe,Ce,_e],Xe=()=>[To,"full",...P()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[Kr],breakpoint:[Kr],color:[f1],container:[Kr],"drop-shadow":[Kr],ease:["in","out","in-out"],font:[Jj],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[Kr],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[Kr],shadow:[Kr],spacing:["px",qe],text:[Kr],"text-shadow":[Kr],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",To,_e,Ce,E]}],container:["container"],"container-type":[{"@container":["","normal","size",Ce,_e]}],"container-named":[Wj],columns:[{columns:[qe,_e,Ce,d]}],"break-after":[{"break-after":A()}],"break-before":[{"break-before":A()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:L()}],overflow:[{overflow:U()}],"overflow-x":[{"overflow-x":U()}],"overflow-y":[{"overflow-y":U()}],overscroll:[{overscroll:B()}],"overscroll-x":[{"overscroll-x":B()}],"overscroll-y":[{"overscroll-y":B()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:ve()}],"inset-x":[{"inset-x":ve()}],"inset-y":[{"inset-y":ve()}],start:[{"inset-s":ve(),start:ve()}],end:[{"inset-e":ve(),end:ve()}],"inset-bs":[{"inset-bs":ve()}],"inset-be":[{"inset-be":ve()}],top:[{top:ve()}],right:[{right:ve()}],bottom:[{bottom:ve()}],left:[{left:ve()}],visibility:["visible","invisible","collapse"],z:[{z:[Sr,"auto",Ce,_e]}],basis:[{basis:[To,"full","auto",d,...P()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[qe,To,"auto","initial","none",_e]}],grow:[{grow:["",qe,Ce,_e]}],shrink:[{shrink:["",qe,Ce,_e]}],order:[{order:[Sr,"first","last","none",Ce,_e]}],"grid-cols":[{"grid-cols":ge()}],"col-start-end":[{col:de()}],"col-start":[{"col-start":le()}],"col-end":[{"col-end":le()}],"grid-rows":[{"grid-rows":ge()}],"row-start-end":[{row:de()}],"row-start":[{"row-start":le()}],"row-end":[{"row-end":le()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":ae()}],"auto-rows":[{"auto-rows":ae()}],gap:[{gap:P()}],"gap-x":[{"gap-x":P()}],"gap-y":[{"gap-y":P()}],"justify-content":[{justify:[...he(),"normal"]}],"justify-items":[{"justify-items":[...ye(),"normal"]}],"justify-self":[{"justify-self":["auto",...ye()]}],"align-content":[{content:["normal",...he()]}],"align-items":[{items:[...ye(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...ye(),{baseline:["","last"]}]}],"place-content":[{"place-content":he()}],"place-items":[{"place-items":[...ye(),"baseline"]}],"place-self":[{"place-self":["auto",...ye()]}],p:[{p:P()}],px:[{px:P()}],py:[{py:P()}],ps:[{ps:P()}],pe:[{pe:P()}],pbs:[{pbs:P()}],pbe:[{pbe:P()}],pt:[{pt:P()}],pr:[{pr:P()}],pb:[{pb:P()}],pl:[{pl:P()}],m:[{m:N()}],mx:[{mx:N()}],my:[{my:N()}],ms:[{ms:N()}],me:[{me:N()}],mbs:[{mbs:N()}],mbe:[{mbe:N()}],mt:[{mt:N()}],mr:[{mr:N()}],mb:[{mb:N()}],ml:[{ml:N()}],"space-x":[{"space-x":P()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":P()}],"space-y-reverse":["space-y-reverse"],size:[{size:Y()}],"inline-size":[{inline:["auto",...ne()]}],"min-inline-size":[{"min-inline":["auto",...ne()]}],"max-inline-size":[{"max-inline":["none",...ne()]}],"block-size":[{block:["auto",...J()]}],"min-block-size":[{"min-block":["auto",...J()]}],"max-block-size":[{"max-block":["none",...J()]}],w:[{w:[d,"screen",...Y()]}],"min-w":[{"min-w":[d,"screen","none",...Y()]}],"max-w":[{"max-w":[d,"screen","none","prose",{screen:[c]},...Y()]}],h:[{h:["screen","lh",...Y()]}],"min-h":[{"min-h":["screen","lh","none",...Y()]}],"max-h":[{"max-h":["screen","lh",...Y()]}],"font-size":[{text:["base",r,As,ci]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[i,sz,tz]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",Eh,_e]}],"font-family":[{font:[oz,nz,n]}],"font-features":[{"font-features":[_e]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[s,Ce,_e]}],"line-clamp":[{"line-clamp":[qe,"none",Ce,Rb]}],leading:[{leading:[u,...P()]}],"list-image":[{"list-image":["none",Ce,_e]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",Ce,_e]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:W()}],"text-color":[{text:W()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...ee(),"wavy"]}],"text-decoration-thickness":[{decoration:[qe,"from-font","auto",Ce,ci]}],"text-decoration-color":[{decoration:W()}],"underline-offset":[{"underline-offset":[qe,"auto",Ce,_e]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:P()}],"tab-size":[{tab:[Sr,Ce,_e]}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",Ce,_e]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",Ce,_e]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:z()}],"bg-repeat":[{bg:j()}],"bg-size":[{bg:H()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},Sr,Ce,_e],radial:["",Ce,_e],conic:[Sr,Ce,_e]},az,rz]}],"bg-color":[{bg:W()}],"gradient-from-pos":[{from:Q()}],"gradient-via-pos":[{via:Q()}],"gradient-to-pos":[{to:Q()}],"gradient-from":[{from:W()}],"gradient-via":[{via:W()}],"gradient-to":[{to:W()}],rounded:[{rounded:Z()}],"rounded-s":[{"rounded-s":Z()}],"rounded-e":[{"rounded-e":Z()}],"rounded-t":[{"rounded-t":Z()}],"rounded-r":[{"rounded-r":Z()}],"rounded-b":[{"rounded-b":Z()}],"rounded-l":[{"rounded-l":Z()}],"rounded-ss":[{"rounded-ss":Z()}],"rounded-se":[{"rounded-se":Z()}],"rounded-ee":[{"rounded-ee":Z()}],"rounded-es":[{"rounded-es":Z()}],"rounded-tl":[{"rounded-tl":Z()}],"rounded-tr":[{"rounded-tr":Z()}],"rounded-br":[{"rounded-br":Z()}],"rounded-bl":[{"rounded-bl":Z()}],"border-w":[{border:re()}],"border-w-x":[{"border-x":re()}],"border-w-y":[{"border-y":re()}],"border-w-s":[{"border-s":re()}],"border-w-e":[{"border-e":re()}],"border-w-bs":[{"border-bs":re()}],"border-w-be":[{"border-be":re()}],"border-w-t":[{"border-t":re()}],"border-w-r":[{"border-r":re()}],"border-w-b":[{"border-b":re()}],"border-w-l":[{"border-l":re()}],"divide-x":[{"divide-x":re()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":re()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...ee(),"hidden","none"]}],"divide-style":[{divide:[...ee(),"hidden","none"]}],"border-color":[{border:W()}],"border-color-x":[{"border-x":W()}],"border-color-y":[{"border-y":W()}],"border-color-s":[{"border-s":W()}],"border-color-e":[{"border-e":W()}],"border-color-bs":[{"border-bs":W()}],"border-color-be":[{"border-be":W()}],"border-color-t":[{"border-t":W()}],"border-color-r":[{"border-r":W()}],"border-color-b":[{"border-b":W()}],"border-color-l":[{"border-l":W()}],"divide-color":[{divide:W()}],"outline-style":[{outline:[...ee(),"none","hidden"]}],"outline-offset":[{"outline-offset":[qe,Ce,_e]}],"outline-w":[{outline:["",qe,As,ci]}],"outline-color":[{outline:W()}],shadow:[{shadow:["","none",y,Du,zu]}],"shadow-color":[{shadow:W()}],"inset-shadow":[{"inset-shadow":["none",g,Du,zu]}],"inset-shadow-color":[{"inset-shadow":W()}],"ring-w":[{ring:re()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:W()}],"ring-offset-w":[{"ring-offset":[qe,ci]}],"ring-offset-color":[{"ring-offset":W()}],"inset-ring-w":[{"inset-ring":re()}],"inset-ring-color":[{"inset-ring":W()}],"text-shadow":[{"text-shadow":["none",b,Du,zu]}],"text-shadow-color":[{"text-shadow":W()}],opacity:[{opacity:[qe,Ce,_e]}],"mix-blend":[{"mix-blend":[...pe(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":pe()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[qe]}],"mask-image-linear-from-pos":[{"mask-linear-from":be()}],"mask-image-linear-to-pos":[{"mask-linear-to":be()}],"mask-image-linear-from-color":[{"mask-linear-from":W()}],"mask-image-linear-to-color":[{"mask-linear-to":W()}],"mask-image-t-from-pos":[{"mask-t-from":be()}],"mask-image-t-to-pos":[{"mask-t-to":be()}],"mask-image-t-from-color":[{"mask-t-from":W()}],"mask-image-t-to-color":[{"mask-t-to":W()}],"mask-image-r-from-pos":[{"mask-r-from":be()}],"mask-image-r-to-pos":[{"mask-r-to":be()}],"mask-image-r-from-color":[{"mask-r-from":W()}],"mask-image-r-to-color":[{"mask-r-to":W()}],"mask-image-b-from-pos":[{"mask-b-from":be()}],"mask-image-b-to-pos":[{"mask-b-to":be()}],"mask-image-b-from-color":[{"mask-b-from":W()}],"mask-image-b-to-color":[{"mask-b-to":W()}],"mask-image-l-from-pos":[{"mask-l-from":be()}],"mask-image-l-to-pos":[{"mask-l-to":be()}],"mask-image-l-from-color":[{"mask-l-from":W()}],"mask-image-l-to-color":[{"mask-l-to":W()}],"mask-image-x-from-pos":[{"mask-x-from":be()}],"mask-image-x-to-pos":[{"mask-x-to":be()}],"mask-image-x-from-color":[{"mask-x-from":W()}],"mask-image-x-to-color":[{"mask-x-to":W()}],"mask-image-y-from-pos":[{"mask-y-from":be()}],"mask-image-y-to-pos":[{"mask-y-to":be()}],"mask-image-y-from-color":[{"mask-y-from":W()}],"mask-image-y-to-color":[{"mask-y-to":W()}],"mask-image-radial":[{"mask-radial":[Ce,_e]}],"mask-image-radial-from-pos":[{"mask-radial-from":be()}],"mask-image-radial-to-pos":[{"mask-radial-to":be()}],"mask-image-radial-from-color":[{"mask-radial-from":W()}],"mask-image-radial-to-color":[{"mask-radial-to":W()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":k()}],"mask-image-conic-pos":[{"mask-conic":[qe]}],"mask-image-conic-from-pos":[{"mask-conic-from":be()}],"mask-image-conic-to-pos":[{"mask-conic-to":be()}],"mask-image-conic-from-color":[{"mask-conic-from":W()}],"mask-image-conic-to-color":[{"mask-conic-to":W()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:z()}],"mask-repeat":[{mask:j()}],"mask-size":[{mask:H()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",Ce,_e]}],filter:[{filter:["","none",Ce,_e]}],blur:[{blur:ze()}],brightness:[{brightness:[qe,Ce,_e]}],contrast:[{contrast:[qe,Ce,_e]}],"drop-shadow":[{"drop-shadow":["","none",S,Du,zu]}],"drop-shadow-color":[{"drop-shadow":W()}],grayscale:[{grayscale:["",qe,Ce,_e]}],"hue-rotate":[{"hue-rotate":[qe,Ce,_e]}],invert:[{invert:["",qe,Ce,_e]}],saturate:[{saturate:[qe,Ce,_e]}],sepia:[{sepia:["",qe,Ce,_e]}],"backdrop-filter":[{"backdrop-filter":["","none",Ce,_e]}],"backdrop-blur":[{"backdrop-blur":ze()}],"backdrop-brightness":[{"backdrop-brightness":[qe,Ce,_e]}],"backdrop-contrast":[{"backdrop-contrast":[qe,Ce,_e]}],"backdrop-grayscale":[{"backdrop-grayscale":["",qe,Ce,_e]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[qe,Ce,_e]}],"backdrop-invert":[{"backdrop-invert":["",qe,Ce,_e]}],"backdrop-opacity":[{"backdrop-opacity":[qe,Ce,_e]}],"backdrop-saturate":[{"backdrop-saturate":[qe,Ce,_e]}],"backdrop-sepia":[{"backdrop-sepia":["",qe,Ce,_e]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":P()}],"border-spacing-x":[{"border-spacing-x":P()}],"border-spacing-y":[{"border-spacing-y":P()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",Ce,_e]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[qe,"initial",Ce,_e]}],ease:[{ease:["linear","initial",T,Ce,_e]}],delay:[{delay:[qe,Ce,_e]}],animate:[{animate:["none",O,Ce,_e]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[C,Ce,_e]}],"perspective-origin":[{"perspective-origin":L()}],rotate:[{rotate:Ie()}],"rotate-x":[{"rotate-x":Ie()}],"rotate-y":[{"rotate-y":Ie()}],"rotate-z":[{"rotate-z":Ie()}],scale:[{scale:Ve()}],"scale-x":[{"scale-x":Ve()}],"scale-y":[{"scale-y":Ve()}],"scale-z":[{"scale-z":Ve()}],"scale-3d":["scale-3d"],skew:[{skew:st()}],"skew-x":[{"skew-x":st()}],"skew-y":[{"skew-y":st()}],transform:[{transform:[Ce,_e,"","none","gpu","cpu"]}],"transform-origin":[{origin:L()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:Xe()}],"translate-x":[{"translate-x":Xe()}],"translate-y":[{"translate-y":Xe()}],"translate-z":[{"translate-z":Xe()}],"translate-none":["translate-none"],zoom:[{zoom:[Sr,Ce,_e]}],accent:[{accent:W()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:W()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",Ce,_e]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scrollbar-thumb-color":[{"scrollbar-thumb":W()}],"scrollbar-track-color":[{"scrollbar-track":W()}],"scrollbar-gutter":[{"scrollbar-gutter":["auto","stable","both"]}],"scrollbar-w":[{scrollbar:["auto","thin","none"]}],"scroll-m":[{"scroll-m":P()}],"scroll-mx":[{"scroll-mx":P()}],"scroll-my":[{"scroll-my":P()}],"scroll-ms":[{"scroll-ms":P()}],"scroll-me":[{"scroll-me":P()}],"scroll-mbs":[{"scroll-mbs":P()}],"scroll-mbe":[{"scroll-mbe":P()}],"scroll-mt":[{"scroll-mt":P()}],"scroll-mr":[{"scroll-mr":P()}],"scroll-mb":[{"scroll-mb":P()}],"scroll-ml":[{"scroll-ml":P()}],"scroll-p":[{"scroll-p":P()}],"scroll-px":[{"scroll-px":P()}],"scroll-py":[{"scroll-py":P()}],"scroll-ps":[{"scroll-ps":P()}],"scroll-pe":[{"scroll-pe":P()}],"scroll-pbs":[{"scroll-pbs":P()}],"scroll-pbe":[{"scroll-pbe":P()}],"scroll-pt":[{"scroll-pt":P()}],"scroll-pr":[{"scroll-pr":P()}],"scroll-pb":[{"scroll-pb":P()}],"scroll-pl":[{"scroll-pl":P()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",Ce,_e]}],fill:[{fill:["none",...W()]}],"stroke-w":[{stroke:[qe,As,ci,Rb]}],stroke:[{stroke:["none",...W()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{"container-named":["container-type"],overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","inset-bs","inset-be","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-bs","border-w-be","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-bs","border-color-be","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mbs","scroll-mbe","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pbs","scroll-pbe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},postfixLookupClassGroups:["container-type"],orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},cz=Uj(uz);function xt(...e){return cz(i1(e))}function dz({delayDuration:e=0,...n}){return v.jsx(mj,{"data-slot":"tooltip-provider",delayDuration:e,...n})}function fz({...e}){return v.jsx(pj,{"data-slot":"tooltip",...e})}function hz({...e}){return v.jsx(gj,{"data-slot":"tooltip-trigger",...e})}function mz({className:e,sideOffset:n=0,children:r,...i}){return v.jsx(vj,{children:v.jsxs(yj,{"data-slot":"tooltip-content",sideOffset:n,className:xt("z-50 w-fit origin-(--radix-tooltip-content-transform-origin) animate-in rounded-md bg-foreground px-3 py-1.5 text-xs text-balance text-background fade-in-0 zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",e),...i,children:[r,v.jsx(bj,{className:"z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px] bg-foreground fill-foreground"})]})})}const fm=new Set;function pz(e){return fm.add(e),()=>fm.delete(e)}function gz(){for(const e of fm)e()}const S1=(...e)=>e.filter((n,r,i)=>!!n&&n.trim()!==""&&i.indexOf(n)===r).join(" ").trim();const vz=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();const yz=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(n,r,i)=>i?i.toUpperCase():r.toLowerCase());const Ab=e=>{const n=yz(e);return n.charAt(0).toUpperCase()+n.slice(1)};var Rh={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};const bz=e=>{for(const n in e)if(n.startsWith("aria-")||n==="role"||n==="title")return!0;return!1},Sz=x.createContext({}),xz=()=>x.useContext(Sz),wz=x.forwardRef(({color:e,size:n,strokeWidth:r,absoluteStrokeWidth:i,className:s="",children:u,iconNode:c,...d},h)=>{const{size:m=24,strokeWidth:y=2,absoluteStrokeWidth:g=!1,color:b="currentColor",className:S=""}=xz()??{},_=i??g?Number(r??y)*24/Number(n??m):r??y;return x.createElement("svg",{ref:h,...Rh,width:n??m??Rh.width,height:n??m??Rh.height,stroke:e??b,strokeWidth:_,className:S1("lucide",S,s),...!u&&!bz(d)&&{"aria-hidden":"true"},...d},[...c.map(([C,E])=>x.createElement(C,E)),...Array.isArray(u)?u:[u]])});const tt=(e,n)=>{const r=x.forwardRef(({className:i,...s},u)=>x.createElement(wz,{ref:u,iconNode:n,className:S1(`lucide-${vz(Ab(e))}`,`lucide-${e}`,i),...s}));return r.displayName=Ab(e),r};const _z=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],x1=tt("check",_z);const Cz=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],vp=tt("chevron-down",Cz);const Ez=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],Rz=tt("chevron-right",Ez);const Tz=[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]],Oz=tt("chevron-up",Tz);const Az=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],Mz=tt("circle-check",Az);const jz=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]],zz=tt("clock",jz);const Dz=[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]],Nz=tt("copy",Dz);const kz=[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]],Lz=tt("download",kz);const Iz=[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]],$z=tt("ellipsis",Iz);const Vz=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]],Fz=tt("file-text",Vz);const Uz=[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]],Hz=tt("folder",Uz);const Pz=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]],Bz=tt("globe",Pz);const qz=[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]],Gz=tt("history",qz);const Zz=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]],Kz=tt("info",Zz);const Yz=[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]],Qz=tt("layout-dashboard",Yz);const Xz=[["path",{d:"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71",key:"1cjeqo"}],["path",{d:"M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71",key:"19qd67"}]],Jz=tt("link",Xz);const Wz=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]],eD=tt("loader-circle",Wz);const tD=[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]],nD=tt("lock",tD);const rD=[["path",{d:"m16 17 5-5-5-5",key:"1bji2h"}],["path",{d:"M21 12H9",key:"dn1m92"}],["path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4",key:"1uf3rs"}]],oD=tt("log-out",rD);const iD=[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]],aD=tt("menu",iD);const sD=[["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"M2.586 16.726A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2h6.624a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586z",key:"2d38gg"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]],lD=tt("octagon-x",sD);const uD=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]],cD=tt("plus",uD);const dD=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],w1=tt("search",dD);const fD=[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]],hD=tt("settings",fD);const mD=[["circle",{cx:"18",cy:"5",r:"3",key:"gq8acd"}],["circle",{cx:"6",cy:"12",r:"3",key:"w7nqdw"}],["circle",{cx:"18",cy:"19",r:"3",key:"1xt0gg"}],["line",{x1:"8.59",x2:"15.42",y1:"13.51",y2:"17.49",key:"47mynk"}],["line",{x1:"15.41",x2:"8.59",y1:"6.51",y2:"10.49",key:"1n3mei"}]],pD=tt("share-2",mD);const gD=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]],vD=tt("shield",gD);const yD=[["path",{d:"m7 11 2-2-2-2",key:"1lz0vl"}],["path",{d:"M11 13h4",key:"1p7l4v"}],["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}]],bD=tt("square-terminal",yD);const SD=[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]],xD=tt("trash-2",SD);const wD=[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]],_1=tt("triangle-alert",wD);const _D=[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]],CD=tt("upload",_D);const ED=[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]],RD=tt("users",ED);const TD=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],C1=tt("x",TD);function OD(){document.body.classList.toggle("sb-open")}function cr(){document.body.classList.remove("sb-open")}const AD={alert:_1,check:x1,chev:Rz,chevd:vp,clock:zz,copy:Nz,doc:Fz,dots:$z,download:Lz,folder:Hz,dashboard:Qz,gear:hD,globe:Bz,hist:Gz,link:Jz,lock:nD,menu:aD,plus:cD,power:oD,search:w1,share:pD,shield:vD,terminal:bD,trash:xD,upload:CD,users:RD,x:C1};function Kt({name:e}){const n=AD[e];return n?v.jsx(n,{className:"ico","aria-hidden":"true"}):null}function Ks(e){return v.jsxs(v.Fragment,{children:[v.jsx("div",{id:"sb-backdrop",onClick:cr}),v.jsxs("aside",{id:"sidebar",children:[e.vault,e.projectsNav,e.tree??v.jsx("nav",{id:"tree","aria-label":"Files"}),e.orgBar]}),v.jsxs("main",{id:"main",children:[e.topbar,v.jsx("article",{id:"content",className:e.contentClass??"markdown",ref:e.contentRef,onScroll:e.onContentScroll,children:e.children})]})]})}function kc(e){const{name:n,onHome:r,showSignout:i,search:s}=e;return v.jsxs("header",{id:"vault",children:[v.jsx("span",{id:"vault-badge","aria-hidden":"true",children:"🐻"}),v.jsx("span",{id:"vault-name",className:r?"vault-link":void 0,onClick:r,role:r?"button":void 0,tabIndex:r?0:void 0,onKeyDown:u=>{r&&(u.key==="Enter"||u.key===" ")&&(u.preventDefault(),r())},children:n}),v.jsxs("div",{className:"vault-actions",children:[s&&v.jsxs(fz,{delayDuration:150,children:[v.jsx(hz,{asChild:!0,children:v.jsx("button",{id:"search-btn",className:"icon-btn2","aria-label":"Search",onClick:()=>{gz(),cr()},children:v.jsx(Kt,{name:"search"})})}),v.jsxs(mz,{className:"tipcard",sideOffset:6,children:["Search ",v.jsx("kbd",{children:"⌘K"})]})]}),i&&v.jsx("a",{id:"signout",href:"/auth/logout",title:"Sign out","aria-label":"Sign out",children:v.jsx(Kt,{name:"power"})})]})]})}function Ys(e){return v.jsxs("header",{id:"topbar",children:[v.jsx("button",{id:"menu-btn",className:"icon-btn",title:"Menu","aria-label":"Menu",onClick:OD,children:v.jsx(Kt,{name:"menu"})}),v.jsx("span",{id:"crumb",children:e.crumb}),v.jsx("span",{id:"meta",children:e.meta}),e.actions]})}function MD(e){if(typeof document>"u")return;let n=document.head||document.getElementsByTagName("head")[0],r=document.createElement("style");r.type="text/css",n.appendChild(r),r.styleSheet?r.styleSheet.cssText=e:r.appendChild(document.createTextNode(e))}const jD=e=>{switch(e){case"success":return ND;case"info":return LD;case"warning":return kD;case"error":return ID;default:return null}},zD=Array(12).fill(0),DD=({visible:e,className:n})=>fe.createElement("div",{className:["sonner-loading-wrapper",n].filter(Boolean).join(" "),"data-visible":e},fe.createElement("div",{className:"sonner-spinner"},zD.map((r,i)=>fe.createElement("div",{className:"sonner-loading-bar",key:`spinner-bar-${i}`})))),ND=fe.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},fe.createElement("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z",clipRule:"evenodd"})),kD=fe.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",height:"20",width:"20"},fe.createElement("path",{fillRule:"evenodd",d:"M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z",clipRule:"evenodd"})),LD=fe.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},fe.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z",clipRule:"evenodd"})),ID=fe.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},fe.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z",clipRule:"evenodd"})),$D=fe.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"},fe.createElement("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),fe.createElement("line",{x1:"6",y1:"6",x2:"18",y2:"18"})),VD=()=>{const[e,n]=fe.useState(document.hidden);return fe.useEffect(()=>{const r=()=>{n(document.hidden)};return document.addEventListener("visibilitychange",r),()=>window.removeEventListener("visibilitychange",r)},[]),e};let hm=1;class FD{constructor(){this.subscribe=n=>(this.subscribers.push(n),()=>{const r=this.subscribers.indexOf(n);this.subscribers.splice(r,1)}),this.publish=n=>{this.subscribers.forEach(r=>r(n))},this.addToast=n=>{this.publish(n),this.toasts=[...this.toasts,n]},this.create=n=>{var r;const{message:i,...s}=n,u=typeof n?.id=="number"||((r=n.id)==null?void 0:r.length)>0?n.id:hm++,c=this.toasts.find(h=>h.id===u),d=n.dismissible===void 0?!0:n.dismissible;return this.dismissedToasts.has(u)&&this.dismissedToasts.delete(u),c?this.toasts=this.toasts.map(h=>h.id===u?(this.publish({...h,...n,id:u,title:i}),{...h,...n,id:u,dismissible:d,title:i}):h):this.addToast({title:i,...s,dismissible:d,id:u}),u},this.dismiss=n=>(n?(this.dismissedToasts.add(n),requestAnimationFrame(()=>this.subscribers.forEach(r=>r({id:n,dismiss:!0})))):this.toasts.forEach(r=>{this.subscribers.forEach(i=>i({id:r.id,dismiss:!0}))}),n),this.message=(n,r)=>this.create({...r,message:n}),this.error=(n,r)=>this.create({...r,message:n,type:"error"}),this.success=(n,r)=>this.create({...r,type:"success",message:n}),this.info=(n,r)=>this.create({...r,type:"info",message:n}),this.warning=(n,r)=>this.create({...r,type:"warning",message:n}),this.loading=(n,r)=>this.create({...r,type:"loading",message:n}),this.promise=(n,r)=>{if(!r)return;let i;r.loading!==void 0&&(i=this.create({...r,promise:n,type:"loading",message:r.loading,description:typeof r.description!="function"?r.description:void 0}));const s=Promise.resolve(n instanceof Function?n():n);let u=i!==void 0,c;const d=s.then(async m=>{if(c=["resolve",m],fe.isValidElement(m))u=!1,this.create({id:i,type:"default",message:m});else if(HD(m)&&!m.ok){u=!1;const g=typeof r.error=="function"?await r.error(`HTTP error! status: ${m.status}`):r.error,b=typeof r.description=="function"?await r.description(`HTTP error! status: ${m.status}`):r.description,_=typeof g=="object"&&!fe.isValidElement(g)?g:{message:g};this.create({id:i,type:"error",description:b,..._})}else if(m instanceof Error){u=!1;const g=typeof r.error=="function"?await r.error(m):r.error,b=typeof r.description=="function"?await r.description(m):r.description,_=typeof g=="object"&&!fe.isValidElement(g)?g:{message:g};this.create({id:i,type:"error",description:b,..._})}else if(r.success!==void 0){u=!1;const g=typeof r.success=="function"?await r.success(m):r.success,b=typeof r.description=="function"?await r.description(m):r.description,_=typeof g=="object"&&!fe.isValidElement(g)?g:{message:g};this.create({id:i,type:"success",description:b,..._})}}).catch(async m=>{if(c=["reject",m],r.error!==void 0){u=!1;const y=typeof r.error=="function"?await r.error(m):r.error,g=typeof r.description=="function"?await r.description(m):r.description,S=typeof y=="object"&&!fe.isValidElement(y)?y:{message:y};this.create({id:i,type:"error",description:g,...S})}}).finally(()=>{u&&(this.dismiss(i),i=void 0),r.finally==null||r.finally.call(r)}),h=()=>new Promise((m,y)=>d.then(()=>c[0]==="reject"?y(c[1]):m(c[1])).catch(y));return typeof i!="string"&&typeof i!="number"?{unwrap:h}:Object.assign(i,{unwrap:h})},this.custom=(n,r)=>{const i=r?.id||hm++;return this.create({jsx:n(i),id:i,...r}),i},this.getActiveToasts=()=>this.toasts.filter(n=>!this.dismissedToasts.has(n.id)),this.subscribers=[],this.toasts=[],this.dismissedToasts=new Set}}const Rn=new FD,UD=(e,n)=>{const r=n?.id||hm++;return Rn.addToast({title:e,...n,id:r}),r},HD=e=>e&&typeof e=="object"&&"ok"in e&&typeof e.ok=="boolean"&&"status"in e&&typeof e.status=="number",PD=UD,BD=()=>Rn.toasts,qD=()=>Rn.getActiveToasts(),Mb=Object.assign(PD,{success:Rn.success,info:Rn.info,warning:Rn.warning,error:Rn.error,custom:Rn.custom,message:Rn.message,promise:Rn.promise,dismiss:Rn.dismiss,loading:Rn.loading},{getHistory:BD,getToasts:qD});MD("[data-sonner-toaster][dir=ltr],html[dir=ltr]{--toast-icon-margin-start:-3px;--toast-icon-margin-end:4px;--toast-svg-margin-start:-1px;--toast-svg-margin-end:0px;--toast-button-margin-start:auto;--toast-button-margin-end:0;--toast-close-button-start:0;--toast-close-button-end:unset;--toast-close-button-transform:translate(-35%, -35%)}[data-sonner-toaster][dir=rtl],html[dir=rtl]{--toast-icon-margin-start:4px;--toast-icon-margin-end:-3px;--toast-svg-margin-start:0px;--toast-svg-margin-end:-1px;--toast-button-margin-start:0;--toast-button-margin-end:auto;--toast-close-button-start:unset;--toast-close-button-end:0;--toast-close-button-transform:translate(35%, -35%)}[data-sonner-toaster]{position:fixed;width:var(--width);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--gray1:hsl(0, 0%, 99%);--gray2:hsl(0, 0%, 97.3%);--gray3:hsl(0, 0%, 95.1%);--gray4:hsl(0, 0%, 93%);--gray5:hsl(0, 0%, 90.9%);--gray6:hsl(0, 0%, 88.7%);--gray7:hsl(0, 0%, 85.8%);--gray8:hsl(0, 0%, 78%);--gray9:hsl(0, 0%, 56.1%);--gray10:hsl(0, 0%, 52.3%);--gray11:hsl(0, 0%, 43.5%);--gray12:hsl(0, 0%, 9%);--border-radius:8px;box-sizing:border-box;padding:0;margin:0;list-style:none;outline:0;z-index:999999999;transition:transform .4s ease}@media (hover:none) and (pointer:coarse){[data-sonner-toaster][data-lifted=true]{transform:none}}[data-sonner-toaster][data-x-position=right]{right:var(--offset-right)}[data-sonner-toaster][data-x-position=left]{left:var(--offset-left)}[data-sonner-toaster][data-x-position=center]{left:50%;transform:translateX(-50%)}[data-sonner-toaster][data-y-position=top]{top:var(--offset-top)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--offset-bottom)}[data-sonner-toast]{--y:translateY(100%);--lift-amount:calc(var(--lift) * var(--gap));z-index:var(--z-index);position:absolute;opacity:0;transform:var(--y);touch-action:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;box-sizing:border-box;outline:0;overflow-wrap:anywhere}[data-sonner-toast][data-styled=true]{padding:16px;background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);box-shadow:0 4px 12px rgba(0,0,0,.1);width:var(--width);font-size:13px;display:flex;align-items:center;gap:6px}[data-sonner-toast]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast][data-y-position=top]{top:0;--y:translateY(-100%);--lift:1;--lift-amount:calc(1 * var(--gap))}[data-sonner-toast][data-y-position=bottom]{bottom:0;--y:translateY(100%);--lift:-1;--lift-amount:calc(var(--lift) * var(--gap))}[data-sonner-toast][data-styled=true] [data-description]{font-weight:400;line-height:1.4;color:#3f3f3f}[data-rich-colors=true][data-sonner-toast][data-styled=true] [data-description]{color:inherit}[data-sonner-toaster][data-sonner-theme=dark] [data-description]{color:#e8e8e8}[data-sonner-toast][data-styled=true] [data-title]{font-weight:500;line-height:1.5;color:inherit}[data-sonner-toast][data-styled=true] [data-icon]{display:flex;height:16px;width:16px;position:relative;justify-content:flex-start;align-items:center;flex-shrink:0;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end)}[data-sonner-toast][data-promise=true] [data-icon]>svg{opacity:0;transform:scale(.8);transform-origin:center;animation:sonner-fade-in .3s ease forwards}[data-sonner-toast][data-styled=true] [data-icon]>*{flex-shrink:0}[data-sonner-toast][data-styled=true] [data-icon] svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}[data-sonner-toast][data-styled=true] [data-content]{display:flex;flex-direction:column;gap:2px}[data-sonner-toast][data-styled=true] [data-button]{border-radius:4px;padding-left:8px;padding-right:8px;height:24px;font-size:12px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);border:none;font-weight:500;cursor:pointer;outline:0;display:flex;align-items:center;flex-shrink:0;transition:opacity .4s,box-shadow .2s}[data-sonner-toast][data-styled=true] [data-button]:focus-visible{box-shadow:0 0 0 2px rgba(0,0,0,.4)}[data-sonner-toast][data-styled=true] [data-button]:first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}[data-sonner-toast][data-styled=true] [data-cancel]{color:var(--normal-text);background:rgba(0,0,0,.08)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-styled=true] [data-cancel]{background:rgba(255,255,255,.3)}[data-sonner-toast][data-styled=true] [data-close-button]{position:absolute;left:var(--toast-close-button-start);right:var(--toast-close-button-end);top:0;height:20px;width:20px;display:flex;justify-content:center;align-items:center;padding:0;color:var(--gray12);background:var(--normal-bg);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);border-radius:50%;cursor:pointer;z-index:1;transition:opacity .1s,background .2s,border-color .2s}[data-sonner-toast][data-styled=true] [data-close-button]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast][data-styled=true] [data-disabled=true]{cursor:not-allowed}[data-sonner-toast][data-styled=true]:hover [data-close-button]:hover{background:var(--gray2);border-color:var(--gray5)}[data-sonner-toast][data-swiping=true]::before{content:'';position:absolute;left:-100%;right:-100%;height:100%;z-index:-1}[data-sonner-toast][data-y-position=top][data-swiping=true]::before{bottom:50%;transform:scaleY(3) translateY(50%)}[data-sonner-toast][data-y-position=bottom][data-swiping=true]::before{top:50%;transform:scaleY(3) translateY(-50%)}[data-sonner-toast][data-swiping=false][data-removed=true]::before{content:'';position:absolute;inset:0;transform:scaleY(2)}[data-sonner-toast][data-expanded=true]::after{content:'';position:absolute;left:0;height:calc(var(--gap) + 1px);bottom:100%;width:100%}[data-sonner-toast][data-mounted=true]{--y:translateY(0);opacity:1}[data-sonner-toast][data-expanded=false][data-front=false]{--scale:var(--toasts-before) * 0.05 + 1;--y:translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));height:var(--front-toast-height)}[data-sonner-toast]>*{transition:opacity .4s}[data-sonner-toast][data-x-position=right]{right:0}[data-sonner-toast][data-x-position=left]{left:0}[data-sonner-toast][data-expanded=false][data-front=false][data-styled=true]>*{opacity:0}[data-sonner-toast][data-visible=false]{opacity:0;pointer-events:none}[data-sonner-toast][data-mounted=true][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset)));height:var(--initial-height)}[data-sonner-toast][data-removed=true][data-front=true][data-swipe-out=false]{--y:translateY(calc(var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=false]{--y:translateY(40%);opacity:0;transition:transform .5s,opacity .2s}[data-sonner-toast][data-removed=true][data-front=false]::before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y) translateY(var(--swipe-amount-y,0)) translateX(var(--swipe-amount-x,0));transition:none}[data-sonner-toast][data-swiped=true]{user-select:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation-duration:.2s;animation-timing-function:ease-out;animation-fill-mode:forwards}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=left]{animation-name:swipe-out-left}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=right]{animation-name:swipe-out-right}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=up]{animation-name:swipe-out-up}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=down]{animation-name:swipe-out-down}@keyframes swipe-out-left{from{transform:var(--y) translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translateX(calc(var(--swipe-amount-x) - 100%));opacity:0}}@keyframes swipe-out-right{from{transform:var(--y) translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translateX(calc(var(--swipe-amount-x) + 100%));opacity:0}}@keyframes swipe-out-up{from{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) - 100%));opacity:0}}@keyframes swipe-out-down{from{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) + 100%));opacity:0}}@media (max-width:600px){[data-sonner-toaster]{position:fixed;right:var(--mobile-offset-right);left:var(--mobile-offset-left);width:100%}[data-sonner-toaster][dir=rtl]{left:calc(var(--mobile-offset-left) * -1)}[data-sonner-toaster] [data-sonner-toast]{left:0;right:0;width:calc(100% - var(--mobile-offset-left) * 2)}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset-left)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--mobile-offset-bottom)}[data-sonner-toaster][data-y-position=top]{top:var(--mobile-offset-top)}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset-left);right:var(--mobile-offset-right);transform:none}}[data-sonner-toaster][data-sonner-theme=light]{--normal-bg:#fff;--normal-border:var(--gray4);--normal-text:var(--gray12);--success-bg:hsl(143, 85%, 96%);--success-border:hsl(145, 92%, 87%);--success-text:hsl(140, 100%, 27%);--info-bg:hsl(208, 100%, 97%);--info-border:hsl(221, 91%, 93%);--info-text:hsl(210, 92%, 45%);--warning-bg:hsl(49, 100%, 97%);--warning-border:hsl(49, 91%, 84%);--warning-text:hsl(31, 92%, 45%);--error-bg:hsl(359, 100%, 97%);--error-border:hsl(359, 100%, 94%);--error-text:hsl(360, 100%, 45%)}[data-sonner-toaster][data-sonner-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg:#000;--normal-border:hsl(0, 0%, 20%);--normal-text:var(--gray1)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg:#fff;--normal-border:var(--gray3);--normal-text:var(--gray12)}[data-sonner-toaster][data-sonner-theme=dark]{--normal-bg:#000;--normal-bg-hover:hsl(0, 0%, 12%);--normal-border:hsl(0, 0%, 20%);--normal-border-hover:hsl(0, 0%, 25%);--normal-text:var(--gray1);--success-bg:hsl(150, 100%, 6%);--success-border:hsl(147, 100%, 12%);--success-text:hsl(150, 86%, 65%);--info-bg:hsl(215, 100%, 6%);--info-border:hsl(223, 43%, 17%);--info-text:hsl(216, 87%, 65%);--warning-bg:hsl(64, 100%, 6%);--warning-border:hsl(60, 100%, 9%);--warning-text:hsl(46, 87%, 65%);--error-bg:hsl(358, 76%, 10%);--error-border:hsl(357, 89%, 16%);--error-text:hsl(358, 100%, 81%)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]{background:var(--normal-bg);border-color:var(--normal-border);color:var(--normal-text)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]:hover{background:var(--normal-bg-hover);border-color:var(--normal-border-hover)}[data-rich-colors=true][data-sonner-toast][data-type=success]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size:16px;height:var(--size);width:var(--size);position:absolute;inset:0;z-index:10}.sonner-loading-wrapper[data-visible=false]{transform-origin:center;animation:sonner-fade-out .2s ease forwards}.sonner-spinner{position:relative;top:50%;left:50%;height:var(--size);width:var(--size)}.sonner-loading-bar{animation:sonner-spin 1.2s linear infinite;background:var(--gray11);border-radius:6px;height:8%;left:-10%;position:absolute;top:-3.9%;width:24%}.sonner-loading-bar:first-child{animation-delay:-1.2s;transform:rotate(.0001deg) translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg) translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg) translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg) translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg) translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg) translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg) translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg) translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg) translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg) translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg) translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg) translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}100%{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}100%{opacity:.15}}@media (prefers-reduced-motion){.sonner-loading-bar,[data-sonner-toast],[data-sonner-toast]>*{transition:none!important;animation:none!important}}.sonner-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center;transition:opacity .2s,transform .2s}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8) translate(-50%,-50%)}");function Nu(e){return e.label!==void 0}const GD=3,ZD="24px",KD="16px",jb=4e3,YD=356,QD=14,XD=45,JD=200;function xr(...e){return e.filter(Boolean).join(" ")}function WD(e){const[n,r]=e.split("-"),i=[];return n&&i.push(n),r&&i.push(r),i}const eN=e=>{var n,r,i,s,u,c,d,h,m;const{invert:y,toast:g,unstyled:b,interacting:S,setHeights:_,visibleToasts:C,heights:E,index:T,toasts:O,expanded:A,removeToast:k,defaultRichColors:L,closeButton:U,style:B,cancelButtonStyle:P,actionButtonStyle:ve,className:ge="",descriptionClassName:de="",duration:le,position:ae,gap:he,expandByDefault:ye,classNames:N,icons:Y,closeButtonAriaLabel:ne="Close toast"}=e,[J,W]=fe.useState(null),[z,j]=fe.useState(null),[H,Q]=fe.useState(!1),[Z,re]=fe.useState(!1),[ee,pe]=fe.useState(!1),[be,ze]=fe.useState(!1),[Ie,Ve]=fe.useState(!1),[st,Xe]=fe.useState(0),[Xt,Dt]=fe.useState(0),mt=fe.useRef(g.duration||le||jb),pr=fe.useRef(null),Ht=fe.useRef(null),Le=T===0,Be=T+1<=C,He=g.type,Un=g.dismissible!==!1,Nt=g.className||"",eo=g.descriptionClassName||"",Ar=fe.useMemo(()=>E.findIndex(Me=>Me.toastId===g.id)||0,[E,g.id]),Ri=fe.useMemo(()=>{var Me;return(Me=g.closeButton)!=null?Me:U},[g.closeButton,U]),to=fe.useMemo(()=>g.duration||le||jb,[g.duration,le]),Ti=fe.useRef(0),Hn=fe.useRef(0),M=fe.useRef(0),$=fe.useRef(null),[V,se]=ae.split("-"),ce=fe.useMemo(()=>E.reduce((Me,pt,bt)=>bt>=Ar?Me:Me+pt.height,0),[E,Ar]),me=VD(),Se=g.invert||y,xe=He==="loading";Hn.current=fe.useMemo(()=>Ar*he+ce,[Ar,ce]),fe.useEffect(()=>{mt.current=to},[to]),fe.useEffect(()=>{Q(!0)},[]),fe.useEffect(()=>{const Me=Ht.current;if(Me){const pt=Me.getBoundingClientRect().height;return Dt(pt),_(bt=>[{toastId:g.id,height:pt,position:g.position},...bt]),()=>_(bt=>bt.filter(qt=>qt.toastId!==g.id))}},[_,g.id]),fe.useLayoutEffect(()=>{if(!H)return;const Me=Ht.current,pt=Me.style.height;Me.style.height="auto";const bt=Me.getBoundingClientRect().height;Me.style.height=pt,Dt(bt),_(qt=>qt.find(Ct=>Ct.toastId===g.id)?qt.map(Ct=>Ct.toastId===g.id?{...Ct,height:bt}:Ct):[{toastId:g.id,height:bt,position:g.position},...qt])},[H,g.title,g.description,_,g.id,g.jsx,g.action,g.cancel]);const Te=fe.useCallback(()=>{re(!0),Xe(Hn.current),_(Me=>Me.filter(pt=>pt.toastId!==g.id)),setTimeout(()=>{k(g)},JD)},[g,k,_,Hn]);fe.useEffect(()=>{if(g.promise&&He==="loading"||g.duration===1/0||g.type==="loading")return;let Me;return A||S||me?(()=>{if(M.current{g.onAutoClose==null||g.onAutoClose.call(g,g),Te()},mt.current)),()=>clearTimeout(Me)},[A,S,g,He,me,Te]),fe.useEffect(()=>{g.delete&&(Te(),g.onDismiss==null||g.onDismiss.call(g,g))},[Te,g.delete]);function nt(){var Me;if(Y?.loading){var pt;return fe.createElement("div",{className:xr(N?.loader,g==null||(pt=g.classNames)==null?void 0:pt.loader,"sonner-loader"),"data-visible":He==="loading"},Y.loading)}return fe.createElement(DD,{className:xr(N?.loader,g==null||(Me=g.classNames)==null?void 0:Me.loader),visible:He==="loading"})}const _t=g.icon||Y?.[He]||jD(He);var Jt,kt;return fe.createElement("li",{tabIndex:0,ref:Ht,className:xr(ge,Nt,N?.toast,g==null||(n=g.classNames)==null?void 0:n.toast,N?.default,N?.[He],g==null||(r=g.classNames)==null?void 0:r[He]),"data-sonner-toast":"","data-rich-colors":(Jt=g.richColors)!=null?Jt:L,"data-styled":!(g.jsx||g.unstyled||b),"data-mounted":H,"data-promise":!!g.promise,"data-swiped":Ie,"data-removed":Z,"data-visible":Be,"data-y-position":V,"data-x-position":se,"data-index":T,"data-front":Le,"data-swiping":ee,"data-dismissible":Un,"data-type":He,"data-invert":Se,"data-swipe-out":be,"data-swipe-direction":z,"data-expanded":!!(A||ye&&H),"data-testid":g.testId,style:{"--index":T,"--toasts-before":T,"--z-index":O.length-T,"--offset":`${Z?st:Hn.current}px`,"--initial-height":ye?"auto":`${Xt}px`,...B,...g.style},onDragEnd:()=>{pe(!1),W(null),$.current=null},onPointerDown:Me=>{Me.button!==2&&(xe||!Un||(pr.current=new Date,Xe(Hn.current),Me.target.setPointerCapture(Me.pointerId),Me.target.tagName!=="BUTTON"&&(pe(!0),$.current={x:Me.clientX,y:Me.clientY})))},onPointerUp:()=>{var Me,pt,bt;if(be||!Un)return;$.current=null;const qt=Number(((Me=Ht.current)==null?void 0:Me.style.getPropertyValue("--swipe-amount-x").replace("px",""))||0),rr=Number(((pt=Ht.current)==null?void 0:pt.style.getPropertyValue("--swipe-amount-y").replace("px",""))||0),Ct=new Date().getTime()-((bt=pr.current)==null?void 0:bt.getTime()),gn=J==="x"?qt:rr,qo=Math.abs(gn)/Ct;if(Math.abs(gn)>=XD||qo>.11){Xe(Hn.current),g.onDismiss==null||g.onDismiss.call(g,g),j(J==="x"?qt>0?"right":"left":rr>0?"down":"up"),Te(),ze(!0);return}else{var vn,yn;(vn=Ht.current)==null||vn.style.setProperty("--swipe-amount-x","0px"),(yn=Ht.current)==null||yn.style.setProperty("--swipe-amount-y","0px")}Ve(!1),pe(!1),W(null)},onPointerMove:Me=>{var pt,bt,qt;if(!$.current||!Un||((pt=window.getSelection())==null?void 0:pt.toString().length)>0)return;const Ct=Me.clientY-$.current.y,gn=Me.clientX-$.current.x;var qo;const vn=(qo=e.swipeDirections)!=null?qo:WD(ae);!J&&(Math.abs(gn)>1||Math.abs(Ct)>1)&&W(Math.abs(gn)>Math.abs(Ct)?"x":"y");let yn={x:0,y:0};const Oi=or=>1/(1.5+Math.abs(or)/20);if(J==="y"){if(vn.includes("top")||vn.includes("bottom"))if(vn.includes("top")&&Ct<0||vn.includes("bottom")&&Ct>0)yn.y=Ct;else{const or=Ct*Oi(Ct);yn.y=Math.abs(or)0)yn.x=gn;else{const or=gn*Oi(gn);yn.x=Math.abs(or)0||Math.abs(yn.y)>0)&&Ve(!0),(bt=Ht.current)==null||bt.style.setProperty("--swipe-amount-x",`${yn.x}px`),(qt=Ht.current)==null||qt.style.setProperty("--swipe-amount-y",`${yn.y}px`)}},Ri&&!g.jsx&&He!=="loading"?fe.createElement("button",{"aria-label":ne,"data-disabled":xe,"data-close-button":!0,onClick:xe||!Un?()=>{}:()=>{Te(),g.onDismiss==null||g.onDismiss.call(g,g)},className:xr(N?.closeButton,g==null||(i=g.classNames)==null?void 0:i.closeButton)},(kt=Y?.close)!=null?kt:$D):null,(He||g.icon||g.promise)&&g.icon!==null&&(Y?.[He]!==null||g.icon)?fe.createElement("div",{"data-icon":"",className:xr(N?.icon,g==null||(s=g.classNames)==null?void 0:s.icon)},g.promise||g.type==="loading"&&!g.icon?g.icon||nt():null,g.type!=="loading"?_t:null):null,fe.createElement("div",{"data-content":"",className:xr(N?.content,g==null||(u=g.classNames)==null?void 0:u.content)},fe.createElement("div",{"data-title":"",className:xr(N?.title,g==null||(c=g.classNames)==null?void 0:c.title)},g.jsx?g.jsx:typeof g.title=="function"?g.title():g.title),g.description?fe.createElement("div",{"data-description":"",className:xr(de,eo,N?.description,g==null||(d=g.classNames)==null?void 0:d.description)},typeof g.description=="function"?g.description():g.description):null),fe.isValidElement(g.cancel)?g.cancel:g.cancel&&Nu(g.cancel)?fe.createElement("button",{"data-button":!0,"data-cancel":!0,style:g.cancelButtonStyle||P,onClick:Me=>{Nu(g.cancel)&&Un&&(g.cancel.onClick==null||g.cancel.onClick.call(g.cancel,Me),Te())},className:xr(N?.cancelButton,g==null||(h=g.classNames)==null?void 0:h.cancelButton)},g.cancel.label):null,fe.isValidElement(g.action)?g.action:g.action&&Nu(g.action)?fe.createElement("button",{"data-button":!0,"data-action":!0,style:g.actionButtonStyle||ve,onClick:Me=>{Nu(g.action)&&(g.action.onClick==null||g.action.onClick.call(g.action,Me),!Me.defaultPrevented&&Te())},className:xr(N?.actionButton,g==null||(m=g.classNames)==null?void 0:m.actionButton)},g.action.label):null)};function zb(){if(typeof window>"u"||typeof document>"u")return"ltr";const e=document.documentElement.getAttribute("dir");return e==="auto"||!e?window.getComputedStyle(document.documentElement).direction:e}function tN(e,n){const r={};return[e,n].forEach((i,s)=>{const u=s===1,c=u?"--mobile-offset":"--offset",d=u?KD:ZD;function h(m){["top","right","bottom","left"].forEach(y=>{r[`${c}-${y}`]=typeof m=="number"?`${m}px`:m})}typeof i=="number"||typeof i=="string"?h(i):typeof i=="object"?["top","right","bottom","left"].forEach(m=>{i[m]===void 0?r[`${c}-${m}`]=d:r[`${c}-${m}`]=typeof i[m]=="number"?`${i[m]}px`:i[m]}):h(d)}),r}const nN=fe.forwardRef(function(n,r){const{id:i,invert:s,position:u="bottom-right",hotkey:c=["altKey","KeyT"],expand:d,closeButton:h,className:m,offset:y,mobileOffset:g,theme:b="light",richColors:S,duration:_,style:C,visibleToasts:E=GD,toastOptions:T,dir:O=zb(),gap:A=QD,icons:k,containerAriaLabel:L="Notifications"}=n,[U,B]=fe.useState([]),P=fe.useMemo(()=>i?U.filter(H=>H.toasterId===i):U.filter(H=>!H.toasterId),[U,i]),ve=fe.useMemo(()=>Array.from(new Set([u].concat(P.filter(H=>H.position).map(H=>H.position)))),[P,u]),[ge,de]=fe.useState([]),[le,ae]=fe.useState(!1),[he,ye]=fe.useState(!1),[N,Y]=fe.useState(b!=="system"?b:typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"),ne=fe.useRef(null),J=c.join("+").replace(/Key/g,"").replace(/Digit/g,""),W=fe.useRef(null),z=fe.useRef(!1),j=fe.useCallback(H=>{B(Q=>{var Z;return(Z=Q.find(re=>re.id===H.id))!=null&&Z.delete||Rn.dismiss(H.id),Q.filter(({id:re})=>re!==H.id)})},[]);return fe.useEffect(()=>Rn.subscribe(H=>{if(H.dismiss){requestAnimationFrame(()=>{B(Q=>Q.map(Z=>Z.id===H.id?{...Z,delete:!0}:Z))});return}setTimeout(()=>{JR.flushSync(()=>{B(Q=>{const Z=Q.findIndex(re=>re.id===H.id);return Z!==-1?[...Q.slice(0,Z),{...Q[Z],...H},...Q.slice(Z+1)]:[H,...Q]})})})}),[U]),fe.useEffect(()=>{if(b!=="system"){Y(b);return}if(b==="system"&&(window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?Y("dark"):Y("light")),typeof window>"u")return;const H=window.matchMedia("(prefers-color-scheme: dark)");try{H.addEventListener("change",({matches:Q})=>{Y(Q?"dark":"light")})}catch{H.addListener(({matches:Z})=>{try{Y(Z?"dark":"light")}catch(re){console.error(re)}})}},[b]),fe.useEffect(()=>{U.length<=1&&ae(!1)},[U]),fe.useEffect(()=>{const H=Q=>{var Z;if(c.every(pe=>Q[pe]||Q.code===pe)){var ee;ae(!0),(ee=ne.current)==null||ee.focus()}Q.code==="Escape"&&(document.activeElement===ne.current||(Z=ne.current)!=null&&Z.contains(document.activeElement))&&ae(!1)};return document.addEventListener("keydown",H),()=>document.removeEventListener("keydown",H)},[c]),fe.useEffect(()=>{if(ne.current)return()=>{W.current&&(W.current.focus({preventScroll:!0}),W.current=null,z.current=!1)}},[ne.current]),fe.createElement("section",{ref:r,"aria-label":`${L} ${J}`,tabIndex:-1,"aria-live":"polite","aria-relevant":"additions text","aria-atomic":"false",suppressHydrationWarning:!0},ve.map((H,Q)=>{var Z;const[re,ee]=H.split("-");return P.length?fe.createElement("ol",{key:H,dir:O==="auto"?zb():O,tabIndex:-1,ref:ne,className:m,"data-sonner-toaster":!0,"data-sonner-theme":N,"data-y-position":re,"data-x-position":ee,style:{"--front-toast-height":`${((Z=ge[0])==null?void 0:Z.height)||0}px`,"--width":`${YD}px`,"--gap":`${A}px`,...C,...tN(y,g)},onBlur:pe=>{z.current&&!pe.currentTarget.contains(pe.relatedTarget)&&(z.current=!1,W.current&&(W.current.focus({preventScroll:!0}),W.current=null))},onFocus:pe=>{pe.target instanceof HTMLElement&&pe.target.dataset.dismissible==="false"||z.current||(z.current=!0,W.current=pe.relatedTarget)},onMouseEnter:()=>ae(!0),onMouseMove:()=>ae(!0),onMouseLeave:()=>{he||ae(!1)},onDragEnd:()=>ae(!1),onPointerDown:pe=>{pe.target instanceof HTMLElement&&pe.target.dataset.dismissible==="false"||ye(!0)},onPointerUp:()=>ye(!1)},P.filter(pe=>!pe.position&&Q===0||pe.position===H).map((pe,be)=>{var ze,Ie;return fe.createElement(eN,{key:pe.id,icons:k,index:be,toast:pe,defaultRichColors:S,duration:(ze=T?.duration)!=null?ze:_,className:T?.className,descriptionClassName:T?.descriptionClassName,invert:s,visibleToasts:E,closeButton:(Ie=T?.closeButton)!=null?Ie:h,interacting:he,position:H,style:T?.style,unstyled:T?.unstyled,classNames:T?.classNames,cancelButtonStyle:T?.cancelButtonStyle,actionButtonStyle:T?.actionButtonStyle,closeButtonAriaLabel:T?.closeButtonAriaLabel,removeToast:j,toasts:P.filter(Ve=>Ve.position==pe.position),heights:ge.filter(Ve=>Ve.position==pe.position),setHeights:de,expandByDefault:d,gap:A,expanded:le,swipeDirections:n.swipeDirections})})):null}))}),rN=({...e})=>v.jsx(nN,{theme:"dark",className:"toaster group",icons:{success:v.jsx(Mz,{className:"size-4"}),info:v.jsx(Kz,{className:"size-4"}),warning:v.jsx(_1,{className:"size-4"}),error:v.jsx(lD,{className:"size-4"}),loading:v.jsx(eD,{className:"size-4 animate-spin"})},style:{"--normal-bg":"var(--popover)","--normal-text":"var(--popover-foreground)","--normal-border":"var(--border)","--border-radius":"var(--radius)"},...e});function Je(e,n=!1){n?Mb.error(e):Mb(e)}function oN(){return v.jsx(rN,{position:"bottom-center"})}const Db=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,Nb=i1,iN=(e,n)=>r=>{var i;if(n?.variants==null)return Nb(e,r?.class,r?.className);const{variants:s,defaultVariants:u}=n,c=Object.keys(s).map(m=>{const y=r?.[m],g=u?.[m];if(y===null)return null;const b=Db(y)||Db(g);return s[m][b]}),d=r&&Object.entries(r).reduce((m,y)=>{let[g,b]=y;return b===void 0||(m[g]=b),m},{}),h=n==null||(i=n.compoundVariants)===null||i===void 0?void 0:i.reduce((m,y)=>{let{class:g,className:b,...S}=y;return Object.entries(S).every(_=>{let[C,E]=_;return Array.isArray(E)?E.includes({...u,...d}[C]):{...u,...d}[C]===E})?[...m,g,b]:m},[]);return Nb(e,c,h,r?.class,r?.className)},aN=iN("inline-flex shrink-0 items-center justify-center gap-2 rounded-md text-sm font-medium whitespace-nowrap transition-all outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",primary:"pbtn",danger:"danger-btn",subtle:"ai-btn",toolbar:"btn",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 gap-1.5 rounded-md px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function Yt({className:e,variant:n="default",size:r="default",asChild:i=!1,...s}){const u=i?WR:"button";return v.jsx(u,{"data-slot":"button","data-variant":n,"data-size":r,className:xt(aN({variant:n,size:r,className:e})),...s})}function yp({...e}){return v.jsx(Fm,{"data-slot":"dialog",...e})}function sN({...e}){return v.jsx(Hm,{"data-slot":"dialog-portal",...e})}function lN({className:e,...n}){return v.jsx(Pm,{"data-slot":"dialog-overlay",className:xt("fixed inset-0 z-50 bg-black/50 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:animate-in data-[state=open]:fade-in-0",e),...n})}function bp({className:e,children:n,showCloseButton:r=!0,...i}){return v.jsxs(sN,{"data-slot":"dialog-portal",children:[v.jsx(lN,{}),v.jsxs(Bm,{"data-slot":"dialog-content",className:xt("fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border bg-background p-6 shadow-lg duration-200 outline-none data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 sm:max-w-lg",e),...i,children:[n,r&&v.jsxs(hx,{"data-slot":"dialog-close",className:"absolute top-4 right-4 rounded-xs opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",children:[v.jsx(C1,{}),v.jsx("span",{className:"sr-only",children:"Close"})]})]})]})}function Lc({className:e,...n}){return v.jsx(cx,{"data-slot":"dialog-title",className:xt("text-lg leading-none font-semibold",e),...n})}let E1=null,qu=[];function ll(e){E1=e,qu.forEach(n=>n())}function R1(e,n,r="",i="OK"){return new Promise(s=>ll({kind:"prompt",title:e,label:n,value:r,okLabel:i,resolve:s}))}function oc(e,n,r="Confirm",i=!1){return new Promise(s=>ll({kind:"confirm",title:e,message:n,confirmLabel:r,danger:i,resolve:s}))}function uN(){const e=x.useSyncExternalStore(r=>(qu.push(r),()=>{qu=qu.filter(i=>i!==r)}),()=>E1);if(!e)return null;const n=()=>{ll(null),e.kind==="prompt"?e.resolve(null):e.resolve(!1)};return v.jsx(yp,{open:!0,onOpenChange:r=>!r&&n(),children:v.jsx(bp,{className:"modal",showCloseButton:!1,children:e.kind==="prompt"?v.jsx(cN,{m:e}):v.jsx(dN,{m:e})})})}function cN({m:e}){const n=x.useRef(null),r=s=>{ll(null),e.resolve(s)},i=()=>r(n.current.value.trim()||null);return v.jsxs(v.Fragment,{children:[v.jsx(Lc,{asChild:!0,children:v.jsx("h3",{children:e.title})}),v.jsx("label",{className:"modal-label",children:e.label}),v.jsx("input",{className:"modal-input",type:"text",autoComplete:"off",defaultValue:e.value,ref:n,autoFocus:!0,onFocus:s=>s.currentTarget.select(),onKeyDown:s=>s.key==="Enter"&&i()}),v.jsxs("div",{className:"modal-actions",children:[v.jsx(Yt,{variant:"subtle",onClick:()=>r(null),children:"Cancel"}),v.jsx(Yt,{variant:"primary",onClick:i,children:e.okLabel})]})]})}function dN({m:e}){const n=r=>{ll(null),e.resolve(r)};return v.jsxs(v.Fragment,{children:[v.jsx(Lc,{asChild:!0,children:v.jsx("h3",{children:e.title})}),v.jsx("p",{className:"modal-msg",children:e.message}),v.jsxs("div",{className:"modal-actions",children:[v.jsx(Yt,{variant:"subtle",onClick:()=>n(!1),children:"Cancel"}),v.jsx(Yt,{variant:e.danger?"danger":"primary",onClick:()=>n(!0),autoFocus:!0,children:e.confirmLabel})]})]})}function fN(e){return Mn({queryKey:["projects"],queryFn:()=>Vn("/api/projects"),enabled:e,refetchInterval:3e4,select:n=>n.projects||[]})}function hN(e){return Mn({queryKey:["orgs"],queryFn:()=>Vn("/api/orgs"),enabled:e,select:n=>n.orgs||[]})}function T1(e){return Mn({queryKey:["admin","pending"],queryFn:()=>Vn("/api/admin/pending"),enabled:e,select:n=>n.pending||[]})}function O1(){const e=tl();return()=>Promise.all([e.invalidateQueries({queryKey:["projects"]}),e.invalidateQueries({queryKey:["orgs"]})]).then(()=>{})}function A1(e){return e.split("/").map(encodeURIComponent).join("/")}function kb(e){return e.split("/").map(decodeURIComponent).join("/")}const mN=new Set(["insights","history","install","settings"]);function M1(e,n){const r=e.replace(/^\/+/,"");if(n!=="hub")return{path:r?kb(r):""};const i=r.indexOf("/");if(i===-1)return{project:r,path:""};const s={project:r.slice(0,i),path:kb(r.slice(i+1))},u=s.path.indexOf("/"),c=u===-1?s.path:s.path.slice(0,u);return mN.has(c)&&(s.view=c,s.viewTarget=u===-1?"":s.path.slice(u+1).replace(/\/+$/,""),s.path=""),s}function pN(e,n){const r=A1(e);return n?"/"+n+(r?"/"+r:""):"/"+r}function _a(e,n,r){let i=(n?"/"+n:"")+"/"+e;return r&&(i+="/"+A1(r.replace(/\/+$/,""))),i}let Sp="POP";const mm=new Set;function j1(){for(const e of mm)e()}window.addEventListener("popstate",()=>{Sp="POP",j1()});function On(e,n){const r=location.pathname+location.search;!n?.replace&&r===e||(history[n?.replace?"replaceState":"pushState"](null,"",e),Sp=n?.replace?"REPLACE":"PUSH",j1())}function xp(){return x.useSyncExternalStore(e=>(mm.add(e),()=>{mm.delete(e)}),()=>location.pathname)}function gN(){return Sp}function vN({to:e}){return x.useEffect(()=>{On(e,{replace:!0})},[e]),null}function z1(){return{accessor:(e,n)=>typeof e=="function"?{...n,accessorFn:e}:{...n,accessorKey:e},display:e=>e,group:e=>e}}function Mo(e,n){return typeof e=="function"?e(n):e}function Fn(e,n){return r=>{n.setState(i=>({...i,[e]:Mo(r,i[e])}))}}function Ic(e){return e instanceof Function}function yN(e){return Array.isArray(e)&&e.every(n=>typeof n=="number")}function bN(e,n){const r=[],i=s=>{s.forEach(u=>{r.push(u);const c=n(u);c!=null&&c.length&&i(c)})};return i(e),r}function De(e,n,r){let i=[],s;return u=>{let c;r.key&&r.debug&&(c=Date.now());const d=e(u);if(!(d.length!==i.length||d.some((y,g)=>i[g]!==y)))return s;i=d;let m;if(r.key&&r.debug&&(m=Date.now()),s=n(...d),r==null||r.onChange==null||r.onChange(s),r.key&&r.debug&&r!=null&&r.debug()){const y=Math.round((Date.now()-c)*100)/100,g=Math.round((Date.now()-m)*100)/100,b=g/16,S=(_,C)=>{for(_=String(_);_.length{var s;return(s=e?.debugAll)!=null?s:e[n]},key:!1,onChange:i}}function SN(e,n,r,i){const s=()=>{var c;return(c=u.getValue())!=null?c:e.options.renderFallbackValue},u={id:`${n.id}_${r.id}`,row:n,column:r,getValue:()=>n.getValue(i),renderValue:s,getContext:De(()=>[e,r,n,u],(c,d,h,m)=>({table:c,column:d,row:h,cell:m,getValue:m.getValue,renderValue:m.renderValue}),Ne(e.options,"debugCells"))};return e._features.forEach(c=>{c.createCell==null||c.createCell(u,r,n,e)},{}),u}function xN(e,n,r,i){var s,u;const d={...e._getDefaultColumnDef(),...n},h=d.accessorKey;let m=(s=(u=d.id)!=null?u:h?typeof String.prototype.replaceAll=="function"?h.replaceAll(".","_"):h.replace(/\./g,"_"):void 0)!=null?s:typeof d.header=="string"?d.header:void 0,y;if(d.accessorFn?y=d.accessorFn:h&&(h.includes(".")?y=b=>{let S=b;for(const C of h.split(".")){var _;S=(_=S)==null?void 0:_[C]}return S}:y=b=>b[d.accessorKey]),!m)throw new Error;let g={id:`${String(m)}`,accessorFn:y,parent:i,depth:r,columnDef:d,columns:[],getFlatColumns:De(()=>[!0],()=>{var b;return[g,...(b=g.columns)==null?void 0:b.flatMap(S=>S.getFlatColumns())]},Ne(e.options,"debugColumns")),getLeafColumns:De(()=>[e._getOrderColumnsFn()],b=>{var S;if((S=g.columns)!=null&&S.length){let _=g.columns.flatMap(C=>C.getLeafColumns());return b(_)}return[g]},Ne(e.options,"debugColumns"))};for(const b of e._features)b.createColumn==null||b.createColumn(g,e);return g}const dn="debugHeaders";function Lb(e,n,r){var i;let u={id:(i=r.id)!=null?i:n.id,column:n,index:r.index,isPlaceholder:!!r.isPlaceholder,placeholderId:r.placeholderId,depth:r.depth,subHeaders:[],colSpan:0,rowSpan:0,headerGroup:null,getLeafHeaders:()=>{const c=[],d=h=>{h.subHeaders&&h.subHeaders.length&&h.subHeaders.map(d),c.push(h)};return d(u),c},getContext:()=>({table:e,header:u,column:n})};return e._features.forEach(c=>{c.createHeader==null||c.createHeader(u,e)}),u}const wN={createTable:e=>{e.getHeaderGroups=De(()=>[e.getAllColumns(),e.getVisibleLeafColumns(),e.getState().columnPinning.left,e.getState().columnPinning.right],(n,r,i,s)=>{var u,c;const d=(u=i?.map(g=>r.find(b=>b.id===g)).filter(Boolean))!=null?u:[],h=(c=s?.map(g=>r.find(b=>b.id===g)).filter(Boolean))!=null?c:[],m=r.filter(g=>!(i!=null&&i.includes(g.id))&&!(s!=null&&s.includes(g.id)));return ku(n,[...d,...m,...h],e)},Ne(e.options,dn)),e.getCenterHeaderGroups=De(()=>[e.getAllColumns(),e.getVisibleLeafColumns(),e.getState().columnPinning.left,e.getState().columnPinning.right],(n,r,i,s)=>(r=r.filter(u=>!(i!=null&&i.includes(u.id))&&!(s!=null&&s.includes(u.id))),ku(n,r,e,"center")),Ne(e.options,dn)),e.getLeftHeaderGroups=De(()=>[e.getAllColumns(),e.getVisibleLeafColumns(),e.getState().columnPinning.left],(n,r,i)=>{var s;const u=(s=i?.map(c=>r.find(d=>d.id===c)).filter(Boolean))!=null?s:[];return ku(n,u,e,"left")},Ne(e.options,dn)),e.getRightHeaderGroups=De(()=>[e.getAllColumns(),e.getVisibleLeafColumns(),e.getState().columnPinning.right],(n,r,i)=>{var s;const u=(s=i?.map(c=>r.find(d=>d.id===c)).filter(Boolean))!=null?s:[];return ku(n,u,e,"right")},Ne(e.options,dn)),e.getFooterGroups=De(()=>[e.getHeaderGroups()],n=>[...n].reverse(),Ne(e.options,dn)),e.getLeftFooterGroups=De(()=>[e.getLeftHeaderGroups()],n=>[...n].reverse(),Ne(e.options,dn)),e.getCenterFooterGroups=De(()=>[e.getCenterHeaderGroups()],n=>[...n].reverse(),Ne(e.options,dn)),e.getRightFooterGroups=De(()=>[e.getRightHeaderGroups()],n=>[...n].reverse(),Ne(e.options,dn)),e.getFlatHeaders=De(()=>[e.getHeaderGroups()],n=>n.map(r=>r.headers).flat(),Ne(e.options,dn)),e.getLeftFlatHeaders=De(()=>[e.getLeftHeaderGroups()],n=>n.map(r=>r.headers).flat(),Ne(e.options,dn)),e.getCenterFlatHeaders=De(()=>[e.getCenterHeaderGroups()],n=>n.map(r=>r.headers).flat(),Ne(e.options,dn)),e.getRightFlatHeaders=De(()=>[e.getRightHeaderGroups()],n=>n.map(r=>r.headers).flat(),Ne(e.options,dn)),e.getCenterLeafHeaders=De(()=>[e.getCenterFlatHeaders()],n=>n.filter(r=>{var i;return!((i=r.subHeaders)!=null&&i.length)}),Ne(e.options,dn)),e.getLeftLeafHeaders=De(()=>[e.getLeftFlatHeaders()],n=>n.filter(r=>{var i;return!((i=r.subHeaders)!=null&&i.length)}),Ne(e.options,dn)),e.getRightLeafHeaders=De(()=>[e.getRightFlatHeaders()],n=>n.filter(r=>{var i;return!((i=r.subHeaders)!=null&&i.length)}),Ne(e.options,dn)),e.getLeafHeaders=De(()=>[e.getLeftHeaderGroups(),e.getCenterHeaderGroups(),e.getRightHeaderGroups()],(n,r,i)=>{var s,u,c,d,h,m;return[...(s=(u=n[0])==null?void 0:u.headers)!=null?s:[],...(c=(d=r[0])==null?void 0:d.headers)!=null?c:[],...(h=(m=i[0])==null?void 0:m.headers)!=null?h:[]].map(y=>y.getLeafHeaders()).flat()},Ne(e.options,dn))}};function ku(e,n,r,i){var s,u;let c=0;const d=function(b,S){S===void 0&&(S=1),c=Math.max(c,S),b.filter(_=>_.getIsVisible()).forEach(_=>{var C;(C=_.columns)!=null&&C.length&&d(_.columns,S+1)},0)};d(e);let h=[];const m=(b,S)=>{const _={depth:S,id:[i,`${S}`].filter(Boolean).join("_"),headers:[]},C=[];b.forEach(E=>{const T=[...C].reverse()[0],O=E.column.depth===_.depth;let A,k=!1;if(O&&E.column.parent?A=E.column.parent:(A=E.column,k=!0),T&&T?.column===A)T.subHeaders.push(E);else{const L=Lb(r,A,{id:[i,S,A.id,E?.id].filter(Boolean).join("_"),isPlaceholder:k,placeholderId:k?`${C.filter(U=>U.column===A).length}`:void 0,depth:S,index:C.length});L.subHeaders.push(E),C.push(L)}_.headers.push(E),E.headerGroup=_}),h.push(_),S>0&&m(C,S-1)},y=n.map((b,S)=>Lb(r,b,{depth:c,index:S}));m(y,c-1),h.reverse();const g=b=>b.filter(_=>_.column.getIsVisible()).map(_=>{let C=0,E=0,T=[0];_.subHeaders&&_.subHeaders.length?(T=[],g(_.subHeaders).forEach(A=>{let{colSpan:k,rowSpan:L}=A;C+=k,T.push(L)})):C=1;const O=Math.min(...T);return E=E+O,_.colSpan=C,_.rowSpan=E,{colSpan:C,rowSpan:E}});return g((s=(u=h[0])==null?void 0:u.headers)!=null?s:[]),h}const _N=(e,n,r,i,s,u,c)=>{let d={id:n,index:i,original:r,depth:s,parentId:c,_valuesCache:{},_uniqueValuesCache:{},getValue:h=>{if(d._valuesCache.hasOwnProperty(h))return d._valuesCache[h];const m=e.getColumn(h);if(m!=null&&m.accessorFn)return d._valuesCache[h]=m.accessorFn(d.original,i),d._valuesCache[h]},getUniqueValues:h=>{if(d._uniqueValuesCache.hasOwnProperty(h))return d._uniqueValuesCache[h];const m=e.getColumn(h);if(m!=null&&m.accessorFn)return m.columnDef.getUniqueValues?(d._uniqueValuesCache[h]=m.columnDef.getUniqueValues(d.original,i),d._uniqueValuesCache[h]):(d._uniqueValuesCache[h]=[d.getValue(h)],d._uniqueValuesCache[h])},renderValue:h=>{var m;return(m=d.getValue(h))!=null?m:e.options.renderFallbackValue},subRows:[],getLeafRows:()=>bN(d.subRows,h=>h.subRows),getParentRow:()=>d.parentId?e.getRow(d.parentId,!0):void 0,getParentRows:()=>{let h=[],m=d;for(;;){const y=m.getParentRow();if(!y)break;h.push(y),m=y}return h.reverse()},getAllCells:De(()=>[e.getAllLeafColumns()],h=>h.map(m=>SN(e,d,m,m.id)),Ne(e.options,"debugRows")),_getAllCellsByColumnId:De(()=>[d.getAllCells()],h=>h.reduce((m,y)=>(m[y.column.id]=y,m),{}),Ne(e.options,"debugRows"))};for(let h=0;h{e._getFacetedRowModel=n.options.getFacetedRowModel&&n.options.getFacetedRowModel(n,e.id),e.getFacetedRowModel=()=>e._getFacetedRowModel?e._getFacetedRowModel():n.getPreFilteredRowModel(),e._getFacetedUniqueValues=n.options.getFacetedUniqueValues&&n.options.getFacetedUniqueValues(n,e.id),e.getFacetedUniqueValues=()=>e._getFacetedUniqueValues?e._getFacetedUniqueValues():new Map,e._getFacetedMinMaxValues=n.options.getFacetedMinMaxValues&&n.options.getFacetedMinMaxValues(n,e.id),e.getFacetedMinMaxValues=()=>{if(e._getFacetedMinMaxValues)return e._getFacetedMinMaxValues()}}},D1=(e,n,r)=>{var i,s;const u=r==null||(i=r.toString())==null?void 0:i.toLowerCase();return!!(!((s=e.getValue(n))==null||(s=s.toString())==null||(s=s.toLowerCase())==null)&&s.includes(u))};D1.autoRemove=e=>fr(e);const N1=(e,n,r)=>{var i;return!!(!((i=e.getValue(n))==null||(i=i.toString())==null)&&i.includes(r))};N1.autoRemove=e=>fr(e);const k1=(e,n,r)=>{var i;return((i=e.getValue(n))==null||(i=i.toString())==null?void 0:i.toLowerCase())===r?.toLowerCase()};k1.autoRemove=e=>fr(e);const L1=(e,n,r)=>{var i;return(i=e.getValue(n))==null?void 0:i.includes(r)};L1.autoRemove=e=>fr(e);const I1=(e,n,r)=>!r.some(i=>{var s;return!((s=e.getValue(n))!=null&&s.includes(i))});I1.autoRemove=e=>fr(e)||!(e!=null&&e.length);const $1=(e,n,r)=>r.some(i=>{var s;return(s=e.getValue(n))==null?void 0:s.includes(i)});$1.autoRemove=e=>fr(e)||!(e!=null&&e.length);const V1=(e,n,r)=>e.getValue(n)===r;V1.autoRemove=e=>fr(e);const F1=(e,n,r)=>e.getValue(n)==r;F1.autoRemove=e=>fr(e);const wp=(e,n,r)=>{let[i,s]=r;const u=e.getValue(n);return u>=i&&u<=s};wp.resolveFilterValue=e=>{let[n,r]=e,i=typeof n!="number"?parseFloat(n):n,s=typeof r!="number"?parseFloat(r):r,u=n===null||Number.isNaN(i)?-1/0:i,c=r===null||Number.isNaN(s)?1/0:s;if(u>c){const d=u;u=c,c=d}return[u,c]};wp.autoRemove=e=>fr(e)||fr(e[0])&&fr(e[1]);const Yr={includesString:D1,includesStringSensitive:N1,equalsString:k1,arrIncludes:L1,arrIncludesAll:I1,arrIncludesSome:$1,equals:V1,weakEquals:F1,inNumberRange:wp};function fr(e){return e==null||e===""}const EN={getDefaultColumnDef:()=>({filterFn:"auto"}),getInitialState:e=>({columnFilters:[],...e}),getDefaultOptions:e=>({onColumnFiltersChange:Fn("columnFilters",e),filterFromLeafRows:!1,maxLeafRowFilterDepth:100}),createColumn:(e,n)=>{e.getAutoFilterFn=()=>{const r=n.getCoreRowModel().flatRows[0],i=r?.getValue(e.id);return typeof i=="string"?Yr.includesString:typeof i=="number"?Yr.inNumberRange:typeof i=="boolean"||i!==null&&typeof i=="object"?Yr.equals:Array.isArray(i)?Yr.arrIncludes:Yr.weakEquals},e.getFilterFn=()=>{var r,i;return Ic(e.columnDef.filterFn)?e.columnDef.filterFn:e.columnDef.filterFn==="auto"?e.getAutoFilterFn():(r=(i=n.options.filterFns)==null?void 0:i[e.columnDef.filterFn])!=null?r:Yr[e.columnDef.filterFn]},e.getCanFilter=()=>{var r,i,s;return((r=e.columnDef.enableColumnFilter)!=null?r:!0)&&((i=n.options.enableColumnFilters)!=null?i:!0)&&((s=n.options.enableFilters)!=null?s:!0)&&!!e.accessorFn},e.getIsFiltered=()=>e.getFilterIndex()>-1,e.getFilterValue=()=>{var r;return(r=n.getState().columnFilters)==null||(r=r.find(i=>i.id===e.id))==null?void 0:r.value},e.getFilterIndex=()=>{var r,i;return(r=(i=n.getState().columnFilters)==null?void 0:i.findIndex(s=>s.id===e.id))!=null?r:-1},e.setFilterValue=r=>{n.setColumnFilters(i=>{const s=e.getFilterFn(),u=i?.find(y=>y.id===e.id),c=Mo(r,u?u.value:void 0);if(Ib(s,c,e)){var d;return(d=i?.filter(y=>y.id!==e.id))!=null?d:[]}const h={id:e.id,value:c};if(u){var m;return(m=i?.map(y=>y.id===e.id?h:y))!=null?m:[]}return i!=null&&i.length?[...i,h]:[h]})}},createRow:(e,n)=>{e.columnFilters={},e.columnFiltersMeta={}},createTable:e=>{e.setColumnFilters=n=>{const r=e.getAllLeafColumns(),i=s=>{var u;return(u=Mo(n,s))==null?void 0:u.filter(c=>{const d=r.find(h=>h.id===c.id);if(d){const h=d.getFilterFn();if(Ib(h,c.value,d))return!1}return!0})};e.options.onColumnFiltersChange==null||e.options.onColumnFiltersChange(i)},e.resetColumnFilters=n=>{var r,i;e.setColumnFilters(n?[]:(r=(i=e.initialState)==null?void 0:i.columnFilters)!=null?r:[])},e.getPreFilteredRowModel=()=>e.getCoreRowModel(),e.getFilteredRowModel=()=>(!e._getFilteredRowModel&&e.options.getFilteredRowModel&&(e._getFilteredRowModel=e.options.getFilteredRowModel(e)),e.options.manualFiltering||!e._getFilteredRowModel?e.getPreFilteredRowModel():e._getFilteredRowModel())}};function Ib(e,n,r){return(e&&e.autoRemove?e.autoRemove(n,r):!1)||typeof n>"u"||typeof n=="string"&&!n}const RN=(e,n,r)=>r.reduce((i,s)=>{const u=s.getValue(e);return i+(typeof u=="number"?u:0)},0),TN=(e,n,r)=>{let i;return r.forEach(s=>{const u=s.getValue(e);u!=null&&(i>u||i===void 0&&u>=u)&&(i=u)}),i},ON=(e,n,r)=>{let i;return r.forEach(s=>{const u=s.getValue(e);u!=null&&(i=u)&&(i=u)}),i},AN=(e,n,r)=>{let i,s;return r.forEach(u=>{const c=u.getValue(e);c!=null&&(i===void 0?c>=c&&(i=s=c):(i>c&&(i=c),s{let r=0,i=0;if(n.forEach(s=>{let u=s.getValue(e);u!=null&&(u=+u)>=u&&(++r,i+=u)}),r)return i/r},jN=(e,n)=>{if(!n.length)return;const r=n.map(u=>u.getValue(e));if(!yN(r))return;if(r.length===1)return r[0];const i=Math.floor(r.length/2),s=r.sort((u,c)=>u-c);return r.length%2!==0?s[i]:(s[i-1]+s[i])/2},zN=(e,n)=>Array.from(new Set(n.map(r=>r.getValue(e))).values()),DN=(e,n)=>new Set(n.map(r=>r.getValue(e))).size,NN=(e,n)=>n.length,Th={sum:RN,min:TN,max:ON,extent:AN,mean:MN,median:jN,unique:zN,uniqueCount:DN,count:NN},kN={getDefaultColumnDef:()=>({aggregatedCell:e=>{var n,r;return(n=(r=e.getValue())==null||r.toString==null?void 0:r.toString())!=null?n:null},aggregationFn:"auto"}),getInitialState:e=>({grouping:[],...e}),getDefaultOptions:e=>({onGroupingChange:Fn("grouping",e),groupedColumnMode:"reorder"}),createColumn:(e,n)=>{e.toggleGrouping=()=>{n.setGrouping(r=>r!=null&&r.includes(e.id)?r.filter(i=>i!==e.id):[...r??[],e.id])},e.getCanGroup=()=>{var r,i;return((r=e.columnDef.enableGrouping)!=null?r:!0)&&((i=n.options.enableGrouping)!=null?i:!0)&&(!!e.accessorFn||!!e.columnDef.getGroupingValue)},e.getIsGrouped=()=>{var r;return(r=n.getState().grouping)==null?void 0:r.includes(e.id)},e.getGroupedIndex=()=>{var r;return(r=n.getState().grouping)==null?void 0:r.indexOf(e.id)},e.getToggleGroupingHandler=()=>{const r=e.getCanGroup();return()=>{r&&e.toggleGrouping()}},e.getAutoAggregationFn=()=>{const r=n.getCoreRowModel().flatRows[0],i=r?.getValue(e.id);if(typeof i=="number")return Th.sum;if(Object.prototype.toString.call(i)==="[object Date]")return Th.extent},e.getAggregationFn=()=>{var r,i;if(!e)throw new Error;return Ic(e.columnDef.aggregationFn)?e.columnDef.aggregationFn:e.columnDef.aggregationFn==="auto"?e.getAutoAggregationFn():(r=(i=n.options.aggregationFns)==null?void 0:i[e.columnDef.aggregationFn])!=null?r:Th[e.columnDef.aggregationFn]}},createTable:e=>{e.setGrouping=n=>e.options.onGroupingChange==null?void 0:e.options.onGroupingChange(n),e.resetGrouping=n=>{var r,i;e.setGrouping(n?[]:(r=(i=e.initialState)==null?void 0:i.grouping)!=null?r:[])},e.getPreGroupedRowModel=()=>e.getFilteredRowModel(),e.getGroupedRowModel=()=>(!e._getGroupedRowModel&&e.options.getGroupedRowModel&&(e._getGroupedRowModel=e.options.getGroupedRowModel(e)),e.options.manualGrouping||!e._getGroupedRowModel?e.getPreGroupedRowModel():e._getGroupedRowModel())},createRow:(e,n)=>{e.getIsGrouped=()=>!!e.groupingColumnId,e.getGroupingValue=r=>{if(e._groupingValuesCache.hasOwnProperty(r))return e._groupingValuesCache[r];const i=n.getColumn(r);return i!=null&&i.columnDef.getGroupingValue?(e._groupingValuesCache[r]=i.columnDef.getGroupingValue(e.original),e._groupingValuesCache[r]):e.getValue(r)},e._groupingValuesCache={}},createCell:(e,n,r,i)=>{e.getIsGrouped=()=>n.getIsGrouped()&&n.id===r.groupingColumnId,e.getIsPlaceholder=()=>!e.getIsGrouped()&&n.getIsGrouped(),e.getIsAggregated=()=>{var s;return!e.getIsGrouped()&&!e.getIsPlaceholder()&&!!((s=r.subRows)!=null&&s.length)}}};function LN(e,n,r){if(!(n!=null&&n.length)||!r)return e;const i=e.filter(u=>!n.includes(u.id));return r==="remove"?i:[...n.map(u=>e.find(c=>c.id===u)).filter(Boolean),...i]}const IN={getInitialState:e=>({columnOrder:[],...e}),getDefaultOptions:e=>({onColumnOrderChange:Fn("columnOrder",e)}),createColumn:(e,n)=>{e.getIndex=De(r=>[$s(n,r)],r=>r.findIndex(i=>i.id===e.id),Ne(n.options,"debugColumns")),e.getIsFirstColumn=r=>{var i;return((i=$s(n,r)[0])==null?void 0:i.id)===e.id},e.getIsLastColumn=r=>{var i;const s=$s(n,r);return((i=s[s.length-1])==null?void 0:i.id)===e.id}},createTable:e=>{e.setColumnOrder=n=>e.options.onColumnOrderChange==null?void 0:e.options.onColumnOrderChange(n),e.resetColumnOrder=n=>{var r;e.setColumnOrder(n?[]:(r=e.initialState.columnOrder)!=null?r:[])},e._getOrderColumnsFn=De(()=>[e.getState().columnOrder,e.getState().grouping,e.options.groupedColumnMode],(n,r,i)=>s=>{let u=[];if(!(n!=null&&n.length))u=s;else{const c=[...n],d=[...s];for(;d.length&&c.length;){const h=c.shift(),m=d.findIndex(y=>y.id===h);m>-1&&u.push(d.splice(m,1)[0])}u=[...u,...d]}return LN(u,r,i)},Ne(e.options,"debugTable"))}},Oh=()=>({left:[],right:[]}),$N={getInitialState:e=>({columnPinning:Oh(),...e}),getDefaultOptions:e=>({onColumnPinningChange:Fn("columnPinning",e)}),createColumn:(e,n)=>{e.pin=r=>{const i=e.getLeafColumns().map(s=>s.id).filter(Boolean);n.setColumnPinning(s=>{var u,c;if(r==="right"){var d,h;return{left:((d=s?.left)!=null?d:[]).filter(g=>!(i!=null&&i.includes(g))),right:[...((h=s?.right)!=null?h:[]).filter(g=>!(i!=null&&i.includes(g))),...i]}}if(r==="left"){var m,y;return{left:[...((m=s?.left)!=null?m:[]).filter(g=>!(i!=null&&i.includes(g))),...i],right:((y=s?.right)!=null?y:[]).filter(g=>!(i!=null&&i.includes(g)))}}return{left:((u=s?.left)!=null?u:[]).filter(g=>!(i!=null&&i.includes(g))),right:((c=s?.right)!=null?c:[]).filter(g=>!(i!=null&&i.includes(g)))}})},e.getCanPin=()=>e.getLeafColumns().some(i=>{var s,u,c;return((s=i.columnDef.enablePinning)!=null?s:!0)&&((u=(c=n.options.enableColumnPinning)!=null?c:n.options.enablePinning)!=null?u:!0)}),e.getIsPinned=()=>{const r=e.getLeafColumns().map(d=>d.id),{left:i,right:s}=n.getState().columnPinning,u=r.some(d=>i?.includes(d)),c=r.some(d=>s?.includes(d));return u?"left":c?"right":!1},e.getPinnedIndex=()=>{var r,i;const s=e.getIsPinned();return s?(r=(i=n.getState().columnPinning)==null||(i=i[s])==null?void 0:i.indexOf(e.id))!=null?r:-1:0}},createRow:(e,n)=>{e.getCenterVisibleCells=De(()=>[e._getAllVisibleCells(),n.getState().columnPinning.left,n.getState().columnPinning.right],(r,i,s)=>{const u=[...i??[],...s??[]];return r.filter(c=>!u.includes(c.column.id))},Ne(n.options,"debugRows")),e.getLeftVisibleCells=De(()=>[e._getAllVisibleCells(),n.getState().columnPinning.left],(r,i)=>(i??[]).map(u=>r.find(c=>c.column.id===u)).filter(Boolean).map(u=>({...u,position:"left"})),Ne(n.options,"debugRows")),e.getRightVisibleCells=De(()=>[e._getAllVisibleCells(),n.getState().columnPinning.right],(r,i)=>(i??[]).map(u=>r.find(c=>c.column.id===u)).filter(Boolean).map(u=>({...u,position:"right"})),Ne(n.options,"debugRows"))},createTable:e=>{e.setColumnPinning=n=>e.options.onColumnPinningChange==null?void 0:e.options.onColumnPinningChange(n),e.resetColumnPinning=n=>{var r,i;return e.setColumnPinning(n?Oh():(r=(i=e.initialState)==null?void 0:i.columnPinning)!=null?r:Oh())},e.getIsSomeColumnsPinned=n=>{var r;const i=e.getState().columnPinning;if(!n){var s,u;return!!((s=i.left)!=null&&s.length||(u=i.right)!=null&&u.length)}return!!((r=i[n])!=null&&r.length)},e.getLeftLeafColumns=De(()=>[e.getAllLeafColumns(),e.getState().columnPinning.left],(n,r)=>(r??[]).map(i=>n.find(s=>s.id===i)).filter(Boolean),Ne(e.options,"debugColumns")),e.getRightLeafColumns=De(()=>[e.getAllLeafColumns(),e.getState().columnPinning.right],(n,r)=>(r??[]).map(i=>n.find(s=>s.id===i)).filter(Boolean),Ne(e.options,"debugColumns")),e.getCenterLeafColumns=De(()=>[e.getAllLeafColumns(),e.getState().columnPinning.left,e.getState().columnPinning.right],(n,r,i)=>{const s=[...r??[],...i??[]];return n.filter(u=>!s.includes(u.id))},Ne(e.options,"debugColumns"))}};function VN(e){return e||(typeof document<"u"?document:null)}const Lu={size:150,minSize:20,maxSize:Number.MAX_SAFE_INTEGER},Ah=()=>({startOffset:null,startSize:null,deltaOffset:null,deltaPercentage:null,isResizingColumn:!1,columnSizingStart:[]}),FN={getDefaultColumnDef:()=>Lu,getInitialState:e=>({columnSizing:{},columnSizingInfo:Ah(),...e}),getDefaultOptions:e=>({columnResizeMode:"onEnd",columnResizeDirection:"ltr",onColumnSizingChange:Fn("columnSizing",e),onColumnSizingInfoChange:Fn("columnSizingInfo",e)}),createColumn:(e,n)=>{e.getSize=()=>{var r,i,s;const u=n.getState().columnSizing[e.id];return Math.min(Math.max((r=e.columnDef.minSize)!=null?r:Lu.minSize,(i=u??e.columnDef.size)!=null?i:Lu.size),(s=e.columnDef.maxSize)!=null?s:Lu.maxSize)},e.getStart=De(r=>[r,$s(n,r),n.getState().columnSizing],(r,i)=>i.slice(0,e.getIndex(r)).reduce((s,u)=>s+u.getSize(),0),Ne(n.options,"debugColumns")),e.getAfter=De(r=>[r,$s(n,r),n.getState().columnSizing],(r,i)=>i.slice(e.getIndex(r)+1).reduce((s,u)=>s+u.getSize(),0),Ne(n.options,"debugColumns")),e.resetSize=()=>{n.setColumnSizing(r=>{let{[e.id]:i,...s}=r;return s})},e.getCanResize=()=>{var r,i;return((r=e.columnDef.enableResizing)!=null?r:!0)&&((i=n.options.enableColumnResizing)!=null?i:!0)},e.getIsResizing=()=>n.getState().columnSizingInfo.isResizingColumn===e.id},createHeader:(e,n)=>{e.getSize=()=>{let r=0;const i=s=>{if(s.subHeaders.length)s.subHeaders.forEach(i);else{var u;r+=(u=s.column.getSize())!=null?u:0}};return i(e),r},e.getStart=()=>{if(e.index>0){const r=e.headerGroup.headers[e.index-1];return r.getStart()+r.getSize()}return 0},e.getResizeHandler=r=>{const i=n.getColumn(e.column.id),s=i?.getCanResize();return u=>{if(!i||!s||(u.persist==null||u.persist(),Mh(u)&&u.touches&&u.touches.length>1))return;const c=e.getSize(),d=e?e.getLeafHeaders().map(T=>[T.column.id,T.column.getSize()]):[[i.id,i.getSize()]],h=Mh(u)?Math.round(u.touches[0].clientX):u.clientX,m={},y=(T,O)=>{typeof O=="number"&&(n.setColumnSizingInfo(A=>{var k,L;const U=n.options.columnResizeDirection==="rtl"?-1:1,B=(O-((k=A?.startOffset)!=null?k:0))*U,P=Math.max(B/((L=A?.startSize)!=null?L:0),-.999999);return A.columnSizingStart.forEach(ve=>{let[ge,de]=ve;m[ge]=Math.round(Math.max(de+de*P,0)*100)/100}),{...A,deltaOffset:B,deltaPercentage:P}}),(n.options.columnResizeMode==="onChange"||T==="end")&&n.setColumnSizing(A=>({...A,...m})))},g=T=>y("move",T),b=T=>{y("end",T),n.setColumnSizingInfo(O=>({...O,isResizingColumn:!1,startOffset:null,startSize:null,deltaOffset:null,deltaPercentage:null,columnSizingStart:[]}))},S=VN(r),_={moveHandler:T=>g(T.clientX),upHandler:T=>{S?.removeEventListener("mousemove",_.moveHandler),S?.removeEventListener("mouseup",_.upHandler),b(T.clientX)}},C={moveHandler:T=>(T.cancelable&&(T.preventDefault(),T.stopPropagation()),g(T.touches[0].clientX),!1),upHandler:T=>{var O;S?.removeEventListener("touchmove",C.moveHandler),S?.removeEventListener("touchend",C.upHandler),T.cancelable&&(T.preventDefault(),T.stopPropagation()),b((O=T.touches[0])==null?void 0:O.clientX)}},E=UN()?{passive:!1}:!1;Mh(u)?(S?.addEventListener("touchmove",C.moveHandler,E),S?.addEventListener("touchend",C.upHandler,E)):(S?.addEventListener("mousemove",_.moveHandler,E),S?.addEventListener("mouseup",_.upHandler,E)),n.setColumnSizingInfo(T=>({...T,startOffset:h,startSize:c,deltaOffset:0,deltaPercentage:0,columnSizingStart:d,isResizingColumn:i.id}))}}},createTable:e=>{e.setColumnSizing=n=>e.options.onColumnSizingChange==null?void 0:e.options.onColumnSizingChange(n),e.setColumnSizingInfo=n=>e.options.onColumnSizingInfoChange==null?void 0:e.options.onColumnSizingInfoChange(n),e.resetColumnSizing=n=>{var r;e.setColumnSizing(n?{}:(r=e.initialState.columnSizing)!=null?r:{})},e.resetHeaderSizeInfo=n=>{var r;e.setColumnSizingInfo(n?Ah():(r=e.initialState.columnSizingInfo)!=null?r:Ah())},e.getTotalSize=()=>{var n,r;return(n=(r=e.getHeaderGroups()[0])==null?void 0:r.headers.reduce((i,s)=>i+s.getSize(),0))!=null?n:0},e.getLeftTotalSize=()=>{var n,r;return(n=(r=e.getLeftHeaderGroups()[0])==null?void 0:r.headers.reduce((i,s)=>i+s.getSize(),0))!=null?n:0},e.getCenterTotalSize=()=>{var n,r;return(n=(r=e.getCenterHeaderGroups()[0])==null?void 0:r.headers.reduce((i,s)=>i+s.getSize(),0))!=null?n:0},e.getRightTotalSize=()=>{var n,r;return(n=(r=e.getRightHeaderGroups()[0])==null?void 0:r.headers.reduce((i,s)=>i+s.getSize(),0))!=null?n:0}}};let Iu=null;function UN(){if(typeof Iu=="boolean")return Iu;let e=!1;try{const n={get passive(){return e=!0,!1}},r=()=>{};window.addEventListener("test",r,n),window.removeEventListener("test",r)}catch{e=!1}return Iu=e,Iu}function Mh(e){return e.type==="touchstart"}const HN={getInitialState:e=>({columnVisibility:{},...e}),getDefaultOptions:e=>({onColumnVisibilityChange:Fn("columnVisibility",e)}),createColumn:(e,n)=>{e.toggleVisibility=r=>{e.getCanHide()&&n.setColumnVisibility(i=>({...i,[e.id]:r??!e.getIsVisible()}))},e.getIsVisible=()=>{var r,i;const s=e.columns;return(r=s.length?s.some(u=>u.getIsVisible()):(i=n.getState().columnVisibility)==null?void 0:i[e.id])!=null?r:!0},e.getCanHide=()=>{var r,i;return((r=e.columnDef.enableHiding)!=null?r:!0)&&((i=n.options.enableHiding)!=null?i:!0)},e.getToggleVisibilityHandler=()=>r=>{e.toggleVisibility==null||e.toggleVisibility(r.target.checked)}},createRow:(e,n)=>{e._getAllVisibleCells=De(()=>[e.getAllCells(),n.getState().columnVisibility],r=>r.filter(i=>i.column.getIsVisible()),Ne(n.options,"debugRows")),e.getVisibleCells=De(()=>[e.getLeftVisibleCells(),e.getCenterVisibleCells(),e.getRightVisibleCells()],(r,i,s)=>[...r,...i,...s],Ne(n.options,"debugRows"))},createTable:e=>{const n=(r,i)=>De(()=>[i(),i().filter(s=>s.getIsVisible()).map(s=>s.id).join("_")],s=>s.filter(u=>u.getIsVisible==null?void 0:u.getIsVisible()),Ne(e.options,"debugColumns"));e.getVisibleFlatColumns=n("getVisibleFlatColumns",()=>e.getAllFlatColumns()),e.getVisibleLeafColumns=n("getVisibleLeafColumns",()=>e.getAllLeafColumns()),e.getLeftVisibleLeafColumns=n("getLeftVisibleLeafColumns",()=>e.getLeftLeafColumns()),e.getRightVisibleLeafColumns=n("getRightVisibleLeafColumns",()=>e.getRightLeafColumns()),e.getCenterVisibleLeafColumns=n("getCenterVisibleLeafColumns",()=>e.getCenterLeafColumns()),e.setColumnVisibility=r=>e.options.onColumnVisibilityChange==null?void 0:e.options.onColumnVisibilityChange(r),e.resetColumnVisibility=r=>{var i;e.setColumnVisibility(r?{}:(i=e.initialState.columnVisibility)!=null?i:{})},e.toggleAllColumnsVisible=r=>{var i;r=(i=r)!=null?i:!e.getIsAllColumnsVisible(),e.setColumnVisibility(e.getAllLeafColumns().reduce((s,u)=>({...s,[u.id]:r||!(u.getCanHide!=null&&u.getCanHide())}),{}))},e.getIsAllColumnsVisible=()=>!e.getAllLeafColumns().some(r=>!(r.getIsVisible!=null&&r.getIsVisible())),e.getIsSomeColumnsVisible=()=>e.getAllLeafColumns().some(r=>r.getIsVisible==null?void 0:r.getIsVisible()),e.getToggleAllColumnsVisibilityHandler=()=>r=>{var i;e.toggleAllColumnsVisible((i=r.target)==null?void 0:i.checked)}}};function $s(e,n){return n?n==="center"?e.getCenterVisibleLeafColumns():n==="left"?e.getLeftVisibleLeafColumns():e.getRightVisibleLeafColumns():e.getVisibleLeafColumns()}const PN={createTable:e=>{e._getGlobalFacetedRowModel=e.options.getFacetedRowModel&&e.options.getFacetedRowModel(e,"__global__"),e.getGlobalFacetedRowModel=()=>e.options.manualFiltering||!e._getGlobalFacetedRowModel?e.getPreFilteredRowModel():e._getGlobalFacetedRowModel(),e._getGlobalFacetedUniqueValues=e.options.getFacetedUniqueValues&&e.options.getFacetedUniqueValues(e,"__global__"),e.getGlobalFacetedUniqueValues=()=>e._getGlobalFacetedUniqueValues?e._getGlobalFacetedUniqueValues():new Map,e._getGlobalFacetedMinMaxValues=e.options.getFacetedMinMaxValues&&e.options.getFacetedMinMaxValues(e,"__global__"),e.getGlobalFacetedMinMaxValues=()=>{if(e._getGlobalFacetedMinMaxValues)return e._getGlobalFacetedMinMaxValues()}}},BN={getInitialState:e=>({globalFilter:void 0,...e}),getDefaultOptions:e=>({onGlobalFilterChange:Fn("globalFilter",e),globalFilterFn:"auto",getColumnCanGlobalFilter:n=>{var r;const i=(r=e.getCoreRowModel().flatRows[0])==null||(r=r._getAllCellsByColumnId()[n.id])==null?void 0:r.getValue();return typeof i=="string"||typeof i=="number"}}),createColumn:(e,n)=>{e.getCanGlobalFilter=()=>{var r,i,s,u;return((r=e.columnDef.enableGlobalFilter)!=null?r:!0)&&((i=n.options.enableGlobalFilter)!=null?i:!0)&&((s=n.options.enableFilters)!=null?s:!0)&&((u=n.options.getColumnCanGlobalFilter==null?void 0:n.options.getColumnCanGlobalFilter(e))!=null?u:!0)&&!!e.accessorFn}},createTable:e=>{e.getGlobalAutoFilterFn=()=>Yr.includesString,e.getGlobalFilterFn=()=>{var n,r;const{globalFilterFn:i}=e.options;return Ic(i)?i:i==="auto"?e.getGlobalAutoFilterFn():(n=(r=e.options.filterFns)==null?void 0:r[i])!=null?n:Yr[i]},e.setGlobalFilter=n=>{e.options.onGlobalFilterChange==null||e.options.onGlobalFilterChange(n)},e.resetGlobalFilter=n=>{e.setGlobalFilter(n?void 0:e.initialState.globalFilter)}}},qN={getInitialState:e=>({expanded:{},...e}),getDefaultOptions:e=>({onExpandedChange:Fn("expanded",e),paginateExpandedRows:!0}),createTable:e=>{let n=!1,r=!1;e._autoResetExpanded=()=>{var i,s;if(!n){e._queue(()=>{n=!0});return}if((i=(s=e.options.autoResetAll)!=null?s:e.options.autoResetExpanded)!=null?i:!e.options.manualExpanding){if(r)return;r=!0,e._queue(()=>{e.resetExpanded(),r=!1})}},e.setExpanded=i=>e.options.onExpandedChange==null?void 0:e.options.onExpandedChange(i),e.toggleAllRowsExpanded=i=>{i??!e.getIsAllRowsExpanded()?e.setExpanded(!0):e.setExpanded({})},e.resetExpanded=i=>{var s,u;e.setExpanded(i?{}:(s=(u=e.initialState)==null?void 0:u.expanded)!=null?s:{})},e.getCanSomeRowsExpand=()=>e.getPrePaginationRowModel().flatRows.some(i=>i.getCanExpand()),e.getToggleAllRowsExpandedHandler=()=>i=>{i.persist==null||i.persist(),e.toggleAllRowsExpanded()},e.getIsSomeRowsExpanded=()=>{const i=e.getState().expanded;return i===!0||Object.values(i).some(Boolean)},e.getIsAllRowsExpanded=()=>{const i=e.getState().expanded;return typeof i=="boolean"?i===!0:!(!Object.keys(i).length||e.getRowModel().flatRows.some(s=>!s.getIsExpanded()))},e.getExpandedDepth=()=>{let i=0;return(e.getState().expanded===!0?Object.keys(e.getRowModel().rowsById):Object.keys(e.getState().expanded)).forEach(u=>{const c=u.split(".");i=Math.max(i,c.length)}),i},e.getPreExpandedRowModel=()=>e.getSortedRowModel(),e.getExpandedRowModel=()=>(!e._getExpandedRowModel&&e.options.getExpandedRowModel&&(e._getExpandedRowModel=e.options.getExpandedRowModel(e)),e.options.manualExpanding||!e._getExpandedRowModel?e.getPreExpandedRowModel():e._getExpandedRowModel())},createRow:(e,n)=>{e.toggleExpanded=r=>{n.setExpanded(i=>{var s;const u=i===!0?!0:!!(i!=null&&i[e.id]);let c={};if(i===!0?Object.keys(n.getRowModel().rowsById).forEach(d=>{c[d]=!0}):c=i,r=(s=r)!=null?s:!u,!u&&r)return{...c,[e.id]:!0};if(u&&!r){const{[e.id]:d,...h}=c;return h}return i})},e.getIsExpanded=()=>{var r;const i=n.getState().expanded;return!!((r=n.options.getIsRowExpanded==null?void 0:n.options.getIsRowExpanded(e))!=null?r:i===!0||i?.[e.id])},e.getCanExpand=()=>{var r,i,s;return(r=n.options.getRowCanExpand==null?void 0:n.options.getRowCanExpand(e))!=null?r:((i=n.options.enableExpanding)!=null?i:!0)&&!!((s=e.subRows)!=null&&s.length)},e.getIsAllParentsExpanded=()=>{let r=!0,i=e;for(;r&&i.parentId;)i=n.getRow(i.parentId,!0),r=i.getIsExpanded();return r},e.getToggleExpandedHandler=()=>{const r=e.getCanExpand();return()=>{r&&e.toggleExpanded()}}}},pm=0,gm=10,jh=()=>({pageIndex:pm,pageSize:gm}),GN={getInitialState:e=>({...e,pagination:{...jh(),...e?.pagination}}),getDefaultOptions:e=>({onPaginationChange:Fn("pagination",e)}),createTable:e=>{let n=!1,r=!1;e._autoResetPageIndex=()=>{var i,s;if(!n){e._queue(()=>{n=!0});return}if((i=(s=e.options.autoResetAll)!=null?s:e.options.autoResetPageIndex)!=null?i:!e.options.manualPagination){if(r)return;r=!0,e._queue(()=>{e.resetPageIndex(),r=!1})}},e.setPagination=i=>{const s=u=>Mo(i,u);return e.options.onPaginationChange==null?void 0:e.options.onPaginationChange(s)},e.resetPagination=i=>{var s;e.setPagination(i?jh():(s=e.initialState.pagination)!=null?s:jh())},e.setPageIndex=i=>{e.setPagination(s=>{let u=Mo(i,s.pageIndex);const c=typeof e.options.pageCount>"u"||e.options.pageCount===-1?Number.MAX_SAFE_INTEGER:e.options.pageCount-1;return u=Math.max(0,Math.min(u,c)),{...s,pageIndex:u}})},e.resetPageIndex=i=>{var s,u;e.setPageIndex(i?pm:(s=(u=e.initialState)==null||(u=u.pagination)==null?void 0:u.pageIndex)!=null?s:pm)},e.resetPageSize=i=>{var s,u;e.setPageSize(i?gm:(s=(u=e.initialState)==null||(u=u.pagination)==null?void 0:u.pageSize)!=null?s:gm)},e.setPageSize=i=>{e.setPagination(s=>{const u=Math.max(1,Mo(i,s.pageSize)),c=s.pageSize*s.pageIndex,d=Math.floor(c/u);return{...s,pageIndex:d,pageSize:u}})},e.setPageCount=i=>e.setPagination(s=>{var u;let c=Mo(i,(u=e.options.pageCount)!=null?u:-1);return typeof c=="number"&&(c=Math.max(-1,c)),{...s,pageCount:c}}),e.getPageOptions=De(()=>[e.getPageCount()],i=>{let s=[];return i&&i>0&&(s=[...new Array(i)].fill(null).map((u,c)=>c)),s},Ne(e.options,"debugTable")),e.getCanPreviousPage=()=>e.getState().pagination.pageIndex>0,e.getCanNextPage=()=>{const{pageIndex:i}=e.getState().pagination,s=e.getPageCount();return s===-1?!0:s===0?!1:ie.setPageIndex(i=>i-1),e.nextPage=()=>e.setPageIndex(i=>i+1),e.firstPage=()=>e.setPageIndex(0),e.lastPage=()=>e.setPageIndex(e.getPageCount()-1),e.getPrePaginationRowModel=()=>e.getExpandedRowModel(),e.getPaginationRowModel=()=>(!e._getPaginationRowModel&&e.options.getPaginationRowModel&&(e._getPaginationRowModel=e.options.getPaginationRowModel(e)),e.options.manualPagination||!e._getPaginationRowModel?e.getPrePaginationRowModel():e._getPaginationRowModel()),e.getPageCount=()=>{var i;return(i=e.options.pageCount)!=null?i:Math.ceil(e.getRowCount()/e.getState().pagination.pageSize)},e.getRowCount=()=>{var i;return(i=e.options.rowCount)!=null?i:e.getPrePaginationRowModel().rows.length}}},zh=()=>({top:[],bottom:[]}),ZN={getInitialState:e=>({rowPinning:zh(),...e}),getDefaultOptions:e=>({onRowPinningChange:Fn("rowPinning",e)}),createRow:(e,n)=>{e.pin=(r,i,s)=>{const u=i?e.getLeafRows().map(h=>{let{id:m}=h;return m}):[],c=s?e.getParentRows().map(h=>{let{id:m}=h;return m}):[],d=new Set([...c,e.id,...u]);n.setRowPinning(h=>{var m,y;if(r==="bottom"){var g,b;return{top:((g=h?.top)!=null?g:[]).filter(C=>!(d!=null&&d.has(C))),bottom:[...((b=h?.bottom)!=null?b:[]).filter(C=>!(d!=null&&d.has(C))),...Array.from(d)]}}if(r==="top"){var S,_;return{top:[...((S=h?.top)!=null?S:[]).filter(C=>!(d!=null&&d.has(C))),...Array.from(d)],bottom:((_=h?.bottom)!=null?_:[]).filter(C=>!(d!=null&&d.has(C)))}}return{top:((m=h?.top)!=null?m:[]).filter(C=>!(d!=null&&d.has(C))),bottom:((y=h?.bottom)!=null?y:[]).filter(C=>!(d!=null&&d.has(C)))}})},e.getCanPin=()=>{var r;const{enableRowPinning:i,enablePinning:s}=n.options;return typeof i=="function"?i(e):(r=i??s)!=null?r:!0},e.getIsPinned=()=>{const r=[e.id],{top:i,bottom:s}=n.getState().rowPinning,u=r.some(d=>i?.includes(d)),c=r.some(d=>s?.includes(d));return u?"top":c?"bottom":!1},e.getPinnedIndex=()=>{var r,i;const s=e.getIsPinned();if(!s)return-1;const u=(r=s==="top"?n.getTopRows():n.getBottomRows())==null?void 0:r.map(c=>{let{id:d}=c;return d});return(i=u?.indexOf(e.id))!=null?i:-1}},createTable:e=>{e.setRowPinning=n=>e.options.onRowPinningChange==null?void 0:e.options.onRowPinningChange(n),e.resetRowPinning=n=>{var r,i;return e.setRowPinning(n?zh():(r=(i=e.initialState)==null?void 0:i.rowPinning)!=null?r:zh())},e.getIsSomeRowsPinned=n=>{var r;const i=e.getState().rowPinning;if(!n){var s,u;return!!((s=i.top)!=null&&s.length||(u=i.bottom)!=null&&u.length)}return!!((r=i[n])!=null&&r.length)},e._getPinnedRows=(n,r,i)=>{var s;return((s=e.options.keepPinnedRows)==null||s?(r??[]).map(c=>{const d=e.getRow(c,!0);return d.getIsAllParentsExpanded()?d:null}):(r??[]).map(c=>n.find(d=>d.id===c))).filter(Boolean).map(c=>({...c,position:i}))},e.getTopRows=De(()=>[e.getRowModel().rows,e.getState().rowPinning.top],(n,r)=>e._getPinnedRows(n,r,"top"),Ne(e.options,"debugRows")),e.getBottomRows=De(()=>[e.getRowModel().rows,e.getState().rowPinning.bottom],(n,r)=>e._getPinnedRows(n,r,"bottom"),Ne(e.options,"debugRows")),e.getCenterRows=De(()=>[e.getRowModel().rows,e.getState().rowPinning.top,e.getState().rowPinning.bottom],(n,r,i)=>{const s=new Set([...r??[],...i??[]]);return n.filter(u=>!s.has(u.id))},Ne(e.options,"debugRows"))}},KN={getInitialState:e=>({rowSelection:{},...e}),getDefaultOptions:e=>({onRowSelectionChange:Fn("rowSelection",e),enableRowSelection:!0,enableMultiRowSelection:!0,enableSubRowSelection:!0}),createTable:e=>{e.setRowSelection=n=>e.options.onRowSelectionChange==null?void 0:e.options.onRowSelectionChange(n),e.resetRowSelection=n=>{var r;return e.setRowSelection(n?{}:(r=e.initialState.rowSelection)!=null?r:{})},e.toggleAllRowsSelected=n=>{e.setRowSelection(r=>{n=typeof n<"u"?n:!e.getIsAllRowsSelected();const i={...r},s=e.getPreGroupedRowModel().flatRows;return n?s.forEach(u=>{u.getCanSelect()&&(i[u.id]=!0)}):s.forEach(u=>{delete i[u.id]}),i})},e.toggleAllPageRowsSelected=n=>e.setRowSelection(r=>{const i=typeof n<"u"?n:!e.getIsAllPageRowsSelected(),s={...r};return e.getRowModel().rows.forEach(u=>{vm(s,u.id,i,!0,e)}),s}),e.getPreSelectedRowModel=()=>e.getCoreRowModel(),e.getSelectedRowModel=De(()=>[e.getState().rowSelection,e.getCoreRowModel()],(n,r)=>Object.keys(n).length?Dh(e,r):{rows:[],flatRows:[],rowsById:{}},Ne(e.options,"debugTable")),e.getFilteredSelectedRowModel=De(()=>[e.getState().rowSelection,e.getFilteredRowModel()],(n,r)=>Object.keys(n).length?Dh(e,r):{rows:[],flatRows:[],rowsById:{}},Ne(e.options,"debugTable")),e.getGroupedSelectedRowModel=De(()=>[e.getState().rowSelection,e.getSortedRowModel()],(n,r)=>Object.keys(n).length?Dh(e,r):{rows:[],flatRows:[],rowsById:{}},Ne(e.options,"debugTable")),e.getIsAllRowsSelected=()=>{const n=e.getFilteredRowModel().flatRows,{rowSelection:r}=e.getState();let i=!!(n.length&&Object.keys(r).length);return i&&n.some(s=>s.getCanSelect()&&!r[s.id])&&(i=!1),i},e.getIsAllPageRowsSelected=()=>{const n=e.getPaginationRowModel().flatRows.filter(s=>s.getCanSelect()),{rowSelection:r}=e.getState();let i=!!n.length;return i&&n.some(s=>!r[s.id])&&(i=!1),i},e.getIsSomeRowsSelected=()=>{var n;const r=Object.keys((n=e.getState().rowSelection)!=null?n:{}).length;return r>0&&r{const n=e.getPaginationRowModel().flatRows;return e.getIsAllPageRowsSelected()?!1:n.filter(r=>r.getCanSelect()).some(r=>r.getIsSelected()||r.getIsSomeSelected())},e.getToggleAllRowsSelectedHandler=()=>n=>{e.toggleAllRowsSelected(n.target.checked)},e.getToggleAllPageRowsSelectedHandler=()=>n=>{e.toggleAllPageRowsSelected(n.target.checked)}},createRow:(e,n)=>{e.toggleSelected=(r,i)=>{const s=e.getIsSelected();n.setRowSelection(u=>{var c;if(r=typeof r<"u"?r:!s,e.getCanSelect()&&s===r)return u;const d={...u};return vm(d,e.id,r,(c=i?.selectChildren)!=null?c:!0,n),d})},e.getIsSelected=()=>{const{rowSelection:r}=n.getState();return _p(e,r)},e.getIsSomeSelected=()=>{const{rowSelection:r}=n.getState();return ym(e,r)==="some"},e.getIsAllSubRowsSelected=()=>{const{rowSelection:r}=n.getState();return ym(e,r)==="all"},e.getCanSelect=()=>{var r;return typeof n.options.enableRowSelection=="function"?n.options.enableRowSelection(e):(r=n.options.enableRowSelection)!=null?r:!0},e.getCanSelectSubRows=()=>{var r;return typeof n.options.enableSubRowSelection=="function"?n.options.enableSubRowSelection(e):(r=n.options.enableSubRowSelection)!=null?r:!0},e.getCanMultiSelect=()=>{var r;return typeof n.options.enableMultiRowSelection=="function"?n.options.enableMultiRowSelection(e):(r=n.options.enableMultiRowSelection)!=null?r:!0},e.getToggleSelectedHandler=()=>{const r=e.getCanSelect();return i=>{var s;r&&e.toggleSelected((s=i.target)==null?void 0:s.checked)}}}},vm=(e,n,r,i,s)=>{var u;const c=s.getRow(n,!0);r?(c.getCanMultiSelect()||Object.keys(e).forEach(d=>delete e[d]),c.getCanSelect()&&(e[n]=!0)):delete e[n],i&&(u=c.subRows)!=null&&u.length&&c.getCanSelectSubRows()&&c.subRows.forEach(d=>vm(e,d.id,r,i,s))};function Dh(e,n){const r=e.getState().rowSelection,i=[],s={},u=function(c,d){return c.map(h=>{var m;const y=_p(h,r);if(y&&(i.push(h),s[h.id]=h),(m=h.subRows)!=null&&m.length&&(h={...h,subRows:u(h.subRows)}),y)return h}).filter(Boolean)};return{rows:u(n.rows),flatRows:i,rowsById:s}}function _p(e,n){var r;return(r=n[e.id])!=null?r:!1}function ym(e,n,r){var i;if(!((i=e.subRows)!=null&&i.length))return!1;let s=!0,u=!1;return e.subRows.forEach(c=>{if(!(u&&!s)&&(c.getCanSelect()&&(_p(c,n)?u=!0:s=!1),c.subRows&&c.subRows.length)){const d=ym(c,n);d==="all"?u=!0:(d==="some"&&(u=!0),s=!1)}}),s?"all":u?"some":!1}const bm=/([0-9]+)/gm,YN=(e,n,r)=>U1(Lo(e.getValue(r)).toLowerCase(),Lo(n.getValue(r)).toLowerCase()),QN=(e,n,r)=>U1(Lo(e.getValue(r)),Lo(n.getValue(r))),XN=(e,n,r)=>Cp(Lo(e.getValue(r)).toLowerCase(),Lo(n.getValue(r)).toLowerCase()),JN=(e,n,r)=>Cp(Lo(e.getValue(r)),Lo(n.getValue(r))),WN=(e,n,r)=>{const i=e.getValue(r),s=n.getValue(r);return i>s?1:iCp(e.getValue(r),n.getValue(r));function Cp(e,n){return e===n?0:e>n?1:-1}function Lo(e){return typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?"":String(e):typeof e=="string"?e:""}function U1(e,n){const r=e.split(bm).filter(Boolean),i=n.split(bm).filter(Boolean);for(;r.length&&i.length;){const s=r.shift(),u=i.shift(),c=parseInt(s,10),d=parseInt(u,10),h=[c,d].sort();if(isNaN(h[0])){if(s>u)return 1;if(u>s)return-1;continue}if(isNaN(h[1]))return isNaN(c)?-1:1;if(c>d)return 1;if(d>c)return-1}return r.length-i.length}const Ms={alphanumeric:YN,alphanumericCaseSensitive:QN,text:XN,textCaseSensitive:JN,datetime:WN,basic:ek},tk={getInitialState:e=>({sorting:[],...e}),getDefaultColumnDef:()=>({sortingFn:"auto",sortUndefined:1}),getDefaultOptions:e=>({onSortingChange:Fn("sorting",e),isMultiSortEvent:n=>n.shiftKey}),createColumn:(e,n)=>{e.getAutoSortingFn=()=>{const r=n.getFilteredRowModel().flatRows.slice(10);let i=!1;for(const s of r){const u=s?.getValue(e.id);if(Object.prototype.toString.call(u)==="[object Date]")return Ms.datetime;if(typeof u=="string"&&(i=!0,u.split(bm).length>1))return Ms.alphanumeric}return i?Ms.text:Ms.basic},e.getAutoSortDir=()=>{const r=n.getFilteredRowModel().flatRows[0];return typeof r?.getValue(e.id)=="string"?"asc":"desc"},e.getSortingFn=()=>{var r,i;if(!e)throw new Error;return Ic(e.columnDef.sortingFn)?e.columnDef.sortingFn:e.columnDef.sortingFn==="auto"?e.getAutoSortingFn():(r=(i=n.options.sortingFns)==null?void 0:i[e.columnDef.sortingFn])!=null?r:Ms[e.columnDef.sortingFn]},e.toggleSorting=(r,i)=>{const s=e.getNextSortingOrder(),u=typeof r<"u"&&r!==null;n.setSorting(c=>{const d=c?.find(S=>S.id===e.id),h=c?.findIndex(S=>S.id===e.id);let m=[],y,g=u?r:s==="desc";if(c!=null&&c.length&&e.getCanMultiSort()&&i?d?y="toggle":y="add":c!=null&&c.length&&h!==c.length-1?y="replace":d?y="toggle":y="replace",y==="toggle"&&(u||s||(y="remove")),y==="add"){var b;m=[...c,{id:e.id,desc:g}],m.splice(0,m.length-((b=n.options.maxMultiSortColCount)!=null?b:Number.MAX_SAFE_INTEGER))}else y==="toggle"?m=c.map(S=>S.id===e.id?{...S,desc:g}:S):y==="remove"?m=c.filter(S=>S.id!==e.id):m=[{id:e.id,desc:g}];return m})},e.getFirstSortDir=()=>{var r,i;return((r=(i=e.columnDef.sortDescFirst)!=null?i:n.options.sortDescFirst)!=null?r:e.getAutoSortDir()==="desc")?"desc":"asc"},e.getNextSortingOrder=r=>{var i,s;const u=e.getFirstSortDir(),c=e.getIsSorted();return c?c!==u&&((i=n.options.enableSortingRemoval)==null||i)&&(!(r&&(s=n.options.enableMultiRemove)!=null)||s)?!1:c==="desc"?"asc":"desc":u},e.getCanSort=()=>{var r,i;return((r=e.columnDef.enableSorting)!=null?r:!0)&&((i=n.options.enableSorting)!=null?i:!0)&&!!e.accessorFn},e.getCanMultiSort=()=>{var r,i;return(r=(i=e.columnDef.enableMultiSort)!=null?i:n.options.enableMultiSort)!=null?r:!!e.accessorFn},e.getIsSorted=()=>{var r;const i=(r=n.getState().sorting)==null?void 0:r.find(s=>s.id===e.id);return i?i.desc?"desc":"asc":!1},e.getSortIndex=()=>{var r,i;return(r=(i=n.getState().sorting)==null?void 0:i.findIndex(s=>s.id===e.id))!=null?r:-1},e.clearSorting=()=>{n.setSorting(r=>r!=null&&r.length?r.filter(i=>i.id!==e.id):[])},e.getToggleSortingHandler=()=>{const r=e.getCanSort();return i=>{r&&(i.persist==null||i.persist(),e.toggleSorting==null||e.toggleSorting(void 0,e.getCanMultiSort()?n.options.isMultiSortEvent==null?void 0:n.options.isMultiSortEvent(i):!1))}}},createTable:e=>{e.setSorting=n=>e.options.onSortingChange==null?void 0:e.options.onSortingChange(n),e.resetSorting=n=>{var r,i;e.setSorting(n?[]:(r=(i=e.initialState)==null?void 0:i.sorting)!=null?r:[])},e.getPreSortedRowModel=()=>e.getGroupedRowModel(),e.getSortedRowModel=()=>(!e._getSortedRowModel&&e.options.getSortedRowModel&&(e._getSortedRowModel=e.options.getSortedRowModel(e)),e.options.manualSorting||!e._getSortedRowModel?e.getPreSortedRowModel():e._getSortedRowModel())}},nk=[wN,HN,IN,$N,CN,EN,PN,BN,tk,kN,qN,GN,ZN,KN,FN];function rk(e){var n,r;const i=[...nk,...(n=e._features)!=null?n:[]];let s={_features:i};const u=s._features.reduce((b,S)=>Object.assign(b,S.getDefaultOptions==null?void 0:S.getDefaultOptions(s)),{}),c=b=>s.options.mergeOptions?s.options.mergeOptions(u,b):{...u,...b};let h={...{},...(r=e.initialState)!=null?r:{}};s._features.forEach(b=>{var S;h=(S=b.getInitialState==null?void 0:b.getInitialState(h))!=null?S:h});const m=[];let y=!1;const g={_features:i,options:{...u,...e},initialState:h,_queue:b=>{m.push(b),y||(y=!0,Promise.resolve().then(()=>{for(;m.length;)m.shift()();y=!1}).catch(S=>setTimeout(()=>{throw S})))},reset:()=>{s.setState(s.initialState)},setOptions:b=>{const S=Mo(b,s.options);s.options=c(S)},getState:()=>s.options.state,setState:b=>{s.options.onStateChange==null||s.options.onStateChange(b)},_getRowId:(b,S,_)=>{var C;return(C=s.options.getRowId==null?void 0:s.options.getRowId(b,S,_))!=null?C:`${_?[_.id,S].join("."):S}`},getCoreRowModel:()=>(s._getCoreRowModel||(s._getCoreRowModel=s.options.getCoreRowModel(s)),s._getCoreRowModel()),getRowModel:()=>s.getPaginationRowModel(),getRow:(b,S)=>{let _=(S?s.getPrePaginationRowModel():s.getRowModel()).rowsById[b];if(!_&&(_=s.getCoreRowModel().rowsById[b],!_))throw new Error;return _},_getDefaultColumnDef:De(()=>[s.options.defaultColumn],b=>{var S;return b=(S=b)!=null?S:{},{header:_=>{const C=_.header.column.columnDef;return C.accessorKey?C.accessorKey:C.accessorFn?C.id:null},cell:_=>{var C,E;return(C=(E=_.renderValue())==null||E.toString==null?void 0:E.toString())!=null?C:null},...s._features.reduce((_,C)=>Object.assign(_,C.getDefaultColumnDef==null?void 0:C.getDefaultColumnDef()),{}),...b}},Ne(e,"debugColumns")),_getColumnDefs:()=>s.options.columns,getAllColumns:De(()=>[s._getColumnDefs()],b=>{const S=function(_,C,E){return E===void 0&&(E=0),_.map(T=>{const O=xN(s,T,E,C),A=T;return O.columns=A.columns?S(A.columns,O,E+1):[],O})};return S(b)},Ne(e,"debugColumns")),getAllFlatColumns:De(()=>[s.getAllColumns()],b=>b.flatMap(S=>S.getFlatColumns()),Ne(e,"debugColumns")),_getAllFlatColumnsById:De(()=>[s.getAllFlatColumns()],b=>b.reduce((S,_)=>(S[_.id]=_,S),{}),Ne(e,"debugColumns")),getAllLeafColumns:De(()=>[s.getAllColumns(),s._getOrderColumnsFn()],(b,S)=>{let _=b.flatMap(C=>C.getLeafColumns());return S(_)},Ne(e,"debugColumns")),getColumn:b=>s._getAllFlatColumnsById()[b]};Object.assign(s,g);for(let b=0;bDe(()=>[e.options.data],n=>{const r={rows:[],flatRows:[],rowsById:{}},i=function(s,u,c){u===void 0&&(u=0);const d=[];for(let m=0;me._autoResetPageIndex()))}function P1(){return e=>De(()=>[e.getState().sorting,e.getPreSortedRowModel()],(n,r)=>{if(!r.rows.length||!(n!=null&&n.length))return r;const i=e.getState().sorting,s=[],u=i.filter(h=>{var m;return(m=e.getColumn(h.id))==null?void 0:m.getCanSort()}),c={};u.forEach(h=>{const m=e.getColumn(h.id);m&&(c[h.id]={sortUndefined:m.columnDef.sortUndefined,invertSorting:m.columnDef.invertSorting,sortingFn:m.getSortingFn()})});const d=h=>{const m=h.map(y=>({...y}));return m.sort((y,g)=>{for(let S=0;S{var g;s.push(y),(g=y.subRows)!=null&&g.length&&(y.subRows=d(y.subRows))}),m};return{rows:d(r.rows),flatRows:s,rowsById:r.rowsById}},Ne(e.options,"debugTable","getSortedRowModel",()=>e._autoResetPageIndex()))}function ic(e,n){return e?ok(e)?x.createElement(e,n):e:null}function ok(e){return ik(e)||typeof e=="function"||ak(e)}function ik(e){return typeof e=="function"&&(()=>{const n=Object.getPrototypeOf(e);return n.prototype&&n.prototype.isReactComponent})()}function ak(e){return typeof e=="object"&&typeof e.$$typeof=="symbol"&&["react.memo","react.forward_ref"].includes(e.$$typeof.description)}function B1(e){const n={state:{},onStateChange:()=>{},renderFallbackValue:null,...e},[r]=x.useState(()=>({current:rk(n)})),[i,s]=x.useState(()=>r.current.initialState);return r.current.setOptions(u=>({...u,...e,state:{...i,...e.state},onStateChange:c=>{s(c),e.onStateChange==null||e.onStateChange(c)}})),r.current}var ul=e=>e.type==="checkbox",jo=e=>e instanceof Date,an=e=>e==null;const Ep=e=>typeof e=="object";var Ot=e=>!an(e)&&!Array.isArray(e)&&Ep(e)&&!jo(e),sk=e=>Ot(e)&&e.target?ul(e.target)?e.target.checked:e.target.value:e,lk=(e,n)=>n.split(".").some((r,i,s)=>!isNaN(Number(r))&&e.has(s.slice(0,i).join("."))),q1=e=>{const n=e.constructor&&e.constructor.prototype;return Ot(n)&&n.hasOwnProperty("isPrototypeOf")},$c=typeof window<"u"&&typeof window.HTMLElement<"u"&&typeof document<"u";function jt(e){if(e instanceof Date)return new Date(e);const n=typeof FileList<"u"&&e instanceof FileList;if($c&&(e instanceof Blob||n))return e;const r=Array.isArray(e);if(!r&&!(Ot(e)&&q1(e)))return e;const i=r?[]:Object.create(Object.getPrototypeOf(e));for(const s in e)Object.prototype.hasOwnProperty.call(e,s)&&(i[s]=jt(e[s]));return i}const va={BLUR:"blur",FOCUS_OUT:"focusout",SUBMIT:"submit",TRIGGER:"trigger",VALID:"valid"},dr={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},ur={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},G1="root",Rp=["__proto__","constructor","prototype"],uk=/^\w*$/;var cl=e=>uk.test(e),yt=e=>e===void 0;const ck=/[.[\]'"]/;var Vc=e=>e.split(ck).filter(Boolean),we=(e,n,r)=>{if(!n||!Ot(e))return r;const i=cl(n)?[n]:Vc(n);if(i.some(u=>Rp.includes(u)))return r;const s=i.reduce((u,c)=>an(u)?void 0:u[c],e);return yt(s)||s===e?yt(e[n])?r:e[n]:s},wr=e=>typeof e=="boolean",Wn=e=>typeof e=="function",dt=(e,n,r)=>{let i=-1;const s=cl(n)?[n]:Vc(n),u=s.length,c=u-1;for(;++i{const s={};for(const u in e)Object.defineProperty(s,u,{get:()=>{const c=u;return n._proxyFormState[c]!==dr.all&&(n._proxyFormState[c]=!i||dr.all),e[c]}});return s};const hk=$c?fe.useLayoutEffect:fe.useEffect;var ln=e=>typeof e=="string",mk=(e,n,r,i,s)=>ln(e)?(i&&n.watch.add(e),we(r,e,s)):Array.isArray(e)?e.map(u=>(i&&n.watch.add(u),we(r,u))):(i&&(n.watchAll=!0),r),Sm=e=>an(e)||!Ep(e);const $b=(e,n)=>n.length===0&&!Array.isArray(e)&&!q1(e);function _r(e,n,r=new WeakMap){if(e===n)return!0;if(Sm(e)||Sm(n))return Object.is(e,n);if(jo(e)&&jo(n))return Object.is(e.getTime(),n.getTime());const i=Object.keys(e),s=Object.keys(n);if(i.length!==s.length)return!1;if($b(e,i)||$b(n,s))return Object.is(e,n);if(!i.length&&Array.isArray(e)!==Array.isArray(n))return!1;const u=r.get(e);if(u&&u.has(n))return!0;if(u)u.add(n);else{const c=new WeakSet;c.add(n),r.set(e,c)}for(const c of i){const d=e[c];if(!(c in n))return!1;if(c!=="ref"){const h=n[c];if(jo(d)&&jo(h)||(Ot(d)||Array.isArray(d))&&(Ot(h)||Array.isArray(h))?!_r(d,h,r):!Object.is(d,h))return!1}}return!0}var $u=e=>({isOnSubmit:!e||e===dr.onSubmit,isOnBlur:e===dr.onBlur,isOnChange:e===dr.onChange,isOnAll:e===dr.all,isOnTouch:e===dr.onTouched}),Nh=(e,n,r)=>{if(r)return!1;if(n.watchAll||n.watch.has(e))return!0;for(const i of n.watch)if(e.startsWith(i)&&e.charAt(i.length)===".")return!0;return!1};const Vs=(e,n,r,i)=>{for(const s of r||Object.keys(e)){const u=we(e,s);if(u){const{_f:c,...d}=u;if(c){if(c.refs&&c.refs[0]&&n(c.refs[0],s)&&!i)return!0;if(c.ref&&n(c.ref,c.name)&&!i)return!0;if(Vs(d,n))break}else if(Ot(d)&&Vs(d,n))break}}};var Vb=(e,n,r)=>{const i=we(e,r),s=Array.isArray(i)?i:[];return dt(s,G1,n[r]),dt(e,r,s),e},on=e=>Ot(e)&&!Object.keys(e).length,Tp=e=>e.type==="file",ac=e=>{if(!$c)return!1;const n=e?e.ownerDocument:0;return e instanceof(n&&n.defaultView?n.defaultView.HTMLElement:HTMLElement)},Op=e=>e.type==="radio",sc=e=>e instanceof RegExp,Ap=(e,n,r,i,s)=>n?{...r[e],types:{...r[e]&&r[e].types?r[e].types:{},[i]:s||!0}}:{};const Fb={value:!1,isValid:!1},Ub={value:!0,isValid:!0};var Z1=e=>{if(Array.isArray(e)){if(e.length>1){const n=e.filter(r=>r&&r.checked&&!r.disabled).map(r=>r.value);return{value:n,isValid:!!n.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!yt(e[0].attributes.value)?yt(e[0].value)||e[0].value===""?Ub:{value:e[0].value,isValid:!0}:Ub:Fb}return Fb};const Hb={isValid:!1,value:null};var K1=e=>Array.isArray(e)?e.reduce((n,r)=>r&&r.checked&&!r.disabled?{isValid:!0,value:r.value}:n,Hb):Hb;function Pb(e,n,r="validate"){if(ln(e)||Array.isArray(e)&&e.every(ln)||wr(e)&&!e)return{type:r,message:ln(e)?e:"",ref:n}}var ya=e=>Ot(e)&&!sc(e)?e:{value:e,message:""},Bb=async(e,n,r,i,s,u)=>{const{ref:c,refs:d,required:h,maxLength:m,minLength:y,min:g,max:b,pattern:S,validate:_,name:C,valueAsNumber:E,mount:T}=e._f,O=we(r,C);if(!T||n.has(C))return{};const A=d?d[0]:c,k=le=>{if(s&&A.reportValidity){const ae=wr(le)?"":le||"";d?d.forEach(he=>he.setCustomValidity(ae)):A.setCustomValidity(ae),A.reportValidity()}},L={},U=Op(c),B=ul(c),P=U||B,ve=(E||Tp(c))&&yt(c.value)&&yt(O)||ac(c)&&c.value===""||O===""||Array.isArray(O)&&!O.length,ge=Ap.bind(null,C,i,L),de=(le,ae,he,ye=ur.maxLength,N=ur.minLength)=>{const Y=le?ae:he;L[C]={type:le?ye:N,message:Y,ref:c,...ge(le?ye:N,Y)}};if(u?!Array.isArray(O)||!O.length:h&&(!P&&(ve||an(O))||wr(O)&&!O||B&&!Z1(d).isValid||U&&!K1(d).isValid)){const{value:le,message:ae}=ln(h)?{value:!!h,message:h}:ya(h);if(le&&(L[C]={type:ur.required,message:ae,ref:A,...ge(ur.required,ae)},!i))return k(ae),L}if(!ve&&(!an(g)||!an(b))){let le,ae;const he=ya(b),ye=ya(g);if(!an(O)&&!isNaN(O)){const N=c.valueAsNumber||O&&+O;an(he.value)||(le=N>he.value),an(ye.value)||(ae=Nnew Date(new Date().toDateString()+" "+W),ne=c.type=="time",J=c.type=="week";ln(he.value)&&O&&(le=ne?Y(O)>Y(he.value):J?O>he.value:N>new Date(he.value)),ln(ye.value)&&O&&(ae=ne?Y(O)+le.value,ye=!an(ae.value)&&O.length<+ae.value;if((he||ye)&&(de(he,le.message,ae.message),!i))return k(L[C].message),L}if(S&&!ve&&ln(O)){const{value:le,message:ae}=ya(S);if(sc(le)&&!O.match(le)&&(L[C]={type:ur.pattern,message:ae,ref:c,...ge(ur.pattern,ae)},!i))return k(ae),L}if(_){if(Wn(_)){const le=await _(O,r),ae=Pb(le,A);if(ae&&(L[C]={...ae,...ge(ur.validate,ae.message)},!i))return k(ae.message),L}else if(Ot(_)){let le={};for(const ae in _){if(!on(le)&&!i)break;const he=Pb(await _[ae](O,r),A,ae);he&&(le={...he,...ge(ae,he.message)},k(he.message),i&&(L[C]=le))}if(!on(le)&&(L[C]={ref:A,...le},!i))return L}}return k(!0),L},Gu=e=>Array.isArray(e)?e:[e],Y1=e=>Array.isArray(e)?e.filter(Boolean):[];function pk(e,n){const r=n.slice(0,-1).length;let i=0;for(;iRp.includes(String(c))))return e;const i=r.length===1?e:pk(e,r),s=r.length-1,u=r[s];return i&&delete i[u],s!==0&&(Ot(i)&&on(i)||Array.isArray(i)&&gk(i))&&zt(e,r.slice(0,-1)),e}const Q1=e=>{const n={};for(const r of Object.keys(e))if(Ep(e[r])&&e[r]!==null&&!jo(e[r])){const i=Q1(e[r]);for(const s of Object.keys(i))n[`${r}.${s}`]=i[s]}else n[r]=e[r];return n},vk=fe.createContext(null);vk.displayName="HookFormContext";var qb=()=>{let e=[];return{get observers(){return e},next:s=>{for(const u of e)u.next&&u.next(s)},subscribe:s=>(e.push(s),{unsubscribe:()=>{e=e.filter(u=>u!==s)}}),unsubscribe:()=>{e=[]}}};function X1(e,n){const r={};for(const i in e)if(e.hasOwnProperty(i)){const s=e[i],u=n[i];if(s&&Ot(s)&&u){const c=X1(s,u);Ot(c)&&(r[i]=c)}else e[i]&&(r[i]=u)}return r}var J1=e=>e.type==="select-multiple",yk=e=>Op(e)||ul(e),kh=e=>ac(e)&&e.isConnected,bk=e=>{for(const n in e)if(Wn(e[n]))return!0;return!1};function W1(e){return Array.isArray(e)||Ot(e)&&!bk(e)}function e_(e){return!!(e&&"_f"in e)}function t_(e){return Array.isArray(e)?!e.some(n=>!yt(n)):!Object.keys(e).length}function xm(e,n){Array.isArray(e)?e[n]=void 0:delete e[n]}function wm(e,n={},r){for(const i in e){const s=e[i],u=r&&r[i];W1(s)&&(!Array.isArray(s)||!e_(u))?(n[i]=Array.isArray(s)?[]:{},wm(s,n[i],u),t_(n[i])&&xm(n,i)):yt(s)||(n[i]=!0)}return n}function di(e,n,r,i){r||(r=wm(n,{},i));for(const s in e){const u=e[s],c=i&&i[s];W1(u)&&(!Array.isArray(u)||!e_(c))?(yt(n)||Sm(r[s])?r[s]=wm(u,Array.isArray(u)?[]:{},c):di(u,an(n)?{}:n[s],r[s],c),t_(r[s])&&xm(r,s)):_r(u,n[s])?xm(r,s):r[s]=!0}return r}var n_=(e,{valueAsNumber:n,valueAsDate:r,setValueAs:i})=>yt(e)?e:n?e===""?NaN:e&&+e:r&&ln(e)?new Date(e):i?i(e):e;function Gb(e){const n=e.ref;return Tp(n)?n.files:Op(n)?K1(e.refs).value:J1(n)?[...n.selectedOptions].map(({value:r})=>r):ul(n)?Z1(e.refs).value:n_(yt(n.value)?e.ref.value:n.value,e)}var Sk=(e,n,r,i)=>{const s={};for(const u of e){const c=we(n,u);c&&dt(s,u,c._f)}return{criteriaMode:r,names:[...e],fields:s,shouldUseNativeValidation:i}},js=e=>yt(e)?e:sc(e)?e.source:Ot(e)?sc(e.value)?e.value.source:e.value:e;const Zb="AsyncFunction";var xk=e=>{if(!e||!e.validate)return!1;if(Wn(e.validate))return e.validate.constructor.name===Zb;if(Ot(e.validate)){for(const n in e.validate)if(e.validate[n].constructor.name===Zb)return!0}return!1},wk=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate);function Kb(e,n,r){const i=we(e,r);if(i||cl(r))return{error:i,name:r};const s=r.split(".");for(;s.length;){const u=s.join("."),c=we(n,u),d=we(e,u);if(c&&!Array.isArray(c)&&r!==u)return{name:r};if(d&&d.type)return{name:u,error:d};if(d&&d.root&&d.root.type)return{name:`${u}.root`,error:d.root};s.pop()}return{name:r}}var _k=(e,n,r,i)=>{r(e);const{name:s,...u}=e,c=Object.keys(u);return!c.length||i&&c.length>=Object.keys(n).length||c.find(d=>n[d]===(!i||dr.all))},Ck=(e,n,r)=>!e||!n||e===n||Gu(e).some(i=>i&&(r?i===n||i.startsWith(n+"."):i.startsWith(n)||n.startsWith(i))),Ek=(e,n,r,i,s)=>s.isOnAll?!1:!r&&s.isOnTouch?!(n||e):(r?i.isOnBlur:s.isOnBlur)?!e:(r?i.isOnChange:s.isOnChange)?e:!0,Rk=(e,n)=>!Y1(we(e,n)).length&&zt(e,n);const Tk={mode:dr.onSubmit,reValidateMode:dr.onChange,shouldFocusError:!0},Lh="form",r_={submitCount:0,isDirty:!1,isReady:!1,isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{}};function Ok(e={}){let n={...Tk,...e},r={...jt(r_),isLoading:Wn(n.defaultValues),errors:n.errors||{},disabled:n.disabled||!1},i={},s=Ot(n.defaultValues)||Ot(n.values)?jt(n.defaultValues||n.values)||{}:{},u=n.shouldUnregister?{}:jt(s),c={action:!1,mount:!1,watch:!1,keepIsValid:!1},d={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set,registerName:new Set};const h={},m={};let y=0,g=$u(n.mode),b=$u(n.reValidateMode);const S={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},_={...S};let C={..._};const E={array:qb(),state:qb()};let T=0;const O=n.criteriaMode===dr.all,A=(M,$)=>V=>{clearTimeout(m[M]),m[M]=setTimeout($,V)},k=async M=>{if(!c.keepIsValid&&!n.disabled&&(_.isValid||C.isValid||M)){const $=++T;let V;n.resolver?(V=on((await he()).errors),$===T&&L()):V=await Y({fields:i,onlyCheckValid:!0,eventType:va.VALID}),$===T&&V!==r.isValid&&E.state.next({isValid:V})}},L=(M,$)=>{!n.disabled&&(_.isValidating||_.validatingFields||C.isValidating||C.validatingFields)&&((M||Array.from(d.mount)).forEach(V=>{V&&($?dt(r.validatingFields,V,$):zt(r.validatingFields,V))}),E.state.next({validatingFields:r.validatingFields,isValidating:!on(r.validatingFields)}))},U=()=>{r.dirtyFields=di(s,u,void 0,i)},B=(M,$=[],V,se,ce=!0,me=!0)=>{if(se&&V&&!n.disabled){if(c.action=!0,me&&Array.isArray(we(i,M))){const Se=V(we(i,M),se.argA,se.argB);ce&&dt(i,M,Se)}if(me&&Array.isArray(we(r.errors,M))){const Se=V(we(r.errors,M),se.argA,se.argB);ce&&dt(r.errors,M,Se),Rk(r.errors,M)}if((_.touchedFields||C.touchedFields)&&me&&Array.isArray(we(r.touchedFields,M))){const Se=V(we(r.touchedFields,M),se.argA,se.argB);ce&&dt(r.touchedFields,M,Se)}(_.dirtyFields||C.dirtyFields)&&U(),E.state.next({name:M,isDirty:J(M,$),dirtyFields:r.dirtyFields,errors:r.errors,isValid:r.isValid})}else dt(u,M,$)},P=(M,$)=>{dt(r.errors,M,$),r.errors={...r.errors},E.state.next({errors:r.errors})},ve=M=>{r.errors=M,E.state.next({errors:r.errors,isValid:!1})},ge=M=>{const $=cl(M)?[M]:Vc(M);let V=u,se=s;for(let ce=0;ce<$.length-1;ce++){const me=$[ce];if(V=an(V)?V:V[me],se=an(se)?se:se[me],V===null&&se!==null)return!0}return!1},de=(M,$,V,se)=>{const ce=we(i,M);if(ce){if(ge(M))return;const me=yt(we(u,M)),Se=we(u,M,yt(V)?we(s,M):V);yt(Se)||se&&se.defaultChecked||$?dt(u,M,$?Se:Gb(ce._f)):j(M,Se),c.mount&&!c.action&&(k(),me&&r.isDirty&&(_.isDirty||C.isDirty)&&(J()||(r.isDirty=!1,E.state.next({...r}))),e.shouldUnregister&&me&&!yt(we(u,M))&&Nh(M,d)&&(c.watch=!0))}},le=(M,$,V,se,ce)=>{let me=!1,Se=!1;const xe={name:M};if(!n.disabled||se===!0){if(!V||se){const Te=_r(we(s,M),$);(_.isDirty||C.isDirty)&&(Se=r.isDirty,r.isDirty=xe.isDirty=!Te||J(),me=Se!==xe.isDirty),Se=!!we(r.dirtyFields,M),Te!==r.isDirty?r.dirtyFields=di(s,u,void 0,i):Te?zt(r.dirtyFields,M):dt(r.dirtyFields,M,!0),xe.dirtyFields=r.dirtyFields,me=me||(_.dirtyFields||C.dirtyFields)&&Se!==!Te}if(V){const Te=we(r.touchedFields,M);Te||(dt(r.touchedFields,M,V),xe.touchedFields=r.touchedFields,me=me||(_.touchedFields||C.touchedFields)&&Te!==V)}me&&ce&&E.state.next(xe)}return me?xe:{}},ae=(M,$,V,se)=>{const ce=we(r.errors,M),me=(_.isValid||C.isValid)&&wr($)&&r.isValid!==$;if(n.delayError&&V?(h[M]=A(M,()=>P(M,V)),h[M](n.delayError)):(clearTimeout(m[M]),delete h[M],V?dt(r.errors,M,V):zt(r.errors,M),r.errors={...r.errors}),(V?!_r(ce,V):ce)||!on(se)||me){const Se={...se,...me&&wr($)?{isValid:$}:{},errors:r.errors,name:M};r={...r,...Se},E.state.next(Se)}},he=async M=>(L(M,!0),await n.resolver(u,n.context,Sk(M||d.mount,i,n.criteriaMode,n.shouldUseNativeValidation))),ye=async M=>{const{errors:$}=await he(M);if(L(M),M){for(const V of M){const se=we($,V);se?d.array.has(V)&&Ot(se)&&!Object.keys(se).some(ce=>!Number.isNaN(Number(ce)))?Vb(r.errors,{[V]:se},V):dt(r.errors,V,se):zt(r.errors,V)}r.errors={...r.errors}}else r.errors=$;return $},N=async({name:M,eventType:$})=>{if(e.validate){const V=await e.validate({formValues:u,formState:r,name:M,eventType:$});if(Ot(V))for(const se in V){const ce=V[se];ce&&st(`${Lh}.${se}`,{message:ln(ce.message)?ce.message:"",type:ce.type||ur.validate})}else ln(V)||!V?st(Lh,{message:V||"",type:ur.validate}):Ve(Lh);return V}return!0},Y=async({fields:M,onlyCheckValid:$,name:V,eventType:se,context:ce={valid:!0,runRootValidation:!1}})=>{if(e.validate&&(ce.runRootValidation=!0,!await N({name:V,eventType:se})&&(ce.valid=!1,$)))return ce.valid;for(const me in M){const Se=M[me];if(Se){const{_f:xe,...Te}=Se;if(xe){const nt=d.array.has(xe.name),_t=Se._f&&xk(Se._f),Jt=_.validatingFields||_.isValidating||C.validatingFields||C.isValidating;_t&&Jt&&L([xe.name],!0);const kt=await Bb(Se,d.disabled,u,O,n.shouldUseNativeValidation&&!$,nt);if(_t&&Jt&&L([xe.name]),kt[xe.name]&&(ce.valid=!1,$)||(!$&&(we(kt,xe.name)?nt?Vb(r.errors,kt,xe.name):dt(r.errors,xe.name,kt[xe.name]):zt(r.errors,xe.name)),e.shouldUseNativeValidation&&kt[xe.name]))break}!on(Te)&&await Y({context:ce,onlyCheckValid:$,fields:Te,name:me,eventType:se})}}return ce.valid},ne=()=>{for(const M of d.unMount){const $=we(i,M);$&&($._f.refs?$._f.refs.every(V=>!kh(V)):!kh($._f.ref))&&mt(M)}d.unMount=new Set},J=(M,$)=>(M&&$&&dt(u,M,$),!_r(c.mount?u:s,s)),W=(M,$,V)=>mk(M,d,{...c.mount?u:yt($)?s:ln(M)?{[M]:$}:$},V,$),z=M=>Y1(we(c.mount?u:s,M,n.shouldUnregister?we(s,M,[]):[])),j=(M,$,V={},se=!1,ce=!1)=>{const me=we(i,M);let Se=$;if(me){const xe=me._f;xe&&(!xe.disabled&&dt(u,M,n_($,xe)),Se=ac(xe.ref)&&an($)?"":$,J1(xe.ref)?[...xe.ref.options].forEach(Te=>Te.selected=Se.includes(Te.value)):xe.refs?ul(xe.ref)?xe.refs.forEach(Te=>{(!Te.defaultChecked||!Te.disabled)&&(Array.isArray(Se)?Te.checked=!!Se.find(nt=>nt===Te.value):Te.checked=Se===Te.value||!!Se)}):xe.refs.forEach(Te=>Te.checked=Te.value===Se):Tp(xe.ref)?xe.ref.value="":(xe.ref.value=Se,!xe.ref.type&&!ce&&E.state.next({name:M,values:se?u:jt(u)})))}(V.shouldDirty||V.shouldTouch)&&le(M,Se,V.shouldTouch,V.shouldDirty,!ce),V.shouldValidate&&be(M,{delayError:V.delayError})},H=(M,$,V,se=!1,ce=!1)=>{for(const me in $){if(!$.hasOwnProperty(me))return;const Se=$[me],xe=M+"."+me,Te=we(i,xe);(d.array.has(M)||Ot(Se)||Te&&!Te._f)&&!jo(Se)?H(xe,Se,V,se,ce):j(xe,Se,V,se,ce)}},Q=(M,$,V,se,ce=!1)=>{const me=we(i,M),Se=d.array.has(M),xe=se?$:jt($),Te=we(u,M),nt=_r(Te,xe);if(nt||dt(u,M,xe),Se)E.array.next({name:M,values:se?u:jt(u)}),(_.isDirty||_.dirtyFields||C.isDirty||C.dirtyFields)&&V.shouldDirty&&(U(),ce||E.state.next({name:M,dirtyFields:r.dirtyFields,isDirty:J(M,xe)}));else{const _t=Array.isArray(xe)&&!xe.length||on(xe);!me||me._f||an(xe)||_t?j(M,xe,V,se,ce):H(M,xe,V,se,ce)}if(!nt&&!ce){const _t=Nh(M,d),Jt=se?u:jt(u);E.state.next({..._t&&r,name:c.mount||_t?M:void 0,values:Jt})}},Z=(M,$,V={})=>Q(M,$,V,!1),re=(M,$={})=>{const V=Wn(M)?M(u):M;if(!_r(u,V)){u={...u,...V};const se=Q1(V);for(const ce of d.mount)ce in se&&Q(ce,se[ce],$,!0,!0);E.state.next({...r,name:void 0,type:void 0,...y?{values:u}:{}}),$.shouldValidate&&k()}},ee=async M=>{c.mount=!0;const $=M.target;let V=$.name,se=!0;const ce=we(i,V),me=Se=>{se=Number.isNaN(Se)||jo(Se)&&isNaN(Se.getTime())||_r(Se,we(u,V,Se))};if(ce){let Se,xe;const Te=$.type?Gb(ce._f):sk(M),nt=M.type===va.BLUR||M.type===va.FOCUS_OUT,_t=!wk(ce._f)&&!e.validate&&!n.resolver&&!we(r.errors,V)&&!ce._f.deps,Jt=_t||Ek(nt,we(r.touchedFields,V),r.isSubmitted,b,g),kt=Nh(V,d,nt);if(dt(u,V,Te),nt){if(!$||!$.readOnly){ce._f.onBlur&&ce._f.onBlur(M);const bt=h[V];bt&&bt(0)}}else ce._f.onChange&&ce._f.onChange(M);const Me=le(V,Te,nt),pt=!on(Me)||kt;if(!nt&&E.state.next({name:V,type:M.type,...y?{values:jt(u)}:{}}),Jt)return(!_t||!r.isValid)&&(_.isValid||C.isValid)&&(n.mode==="onBlur"?nt&&k():nt||k()),pt&&E.state.next({name:V,...kt?{}:Me});if(!n.resolver&&e.validate&&await N({name:V,eventType:M.type}),!nt&&kt&&E.state.next({...r}),n.resolver){const{errors:bt}=await he([V]);if(L([V]),me(Te),!se){!on(Me)&&E.state.next(Me);return}const qt=Kb(r.errors,i,V),rr=Kb(bt,i,qt.name||V);Se=rr.error,V=rr.name,xe=on(bt)}else L([V],!0),Se=(await Bb(ce,d.disabled,u,O,n.shouldUseNativeValidation))[V],L([V]),me(Te),se&&(Se?xe=!1:(_.isValid||C.isValid)&&(xe=await Y({fields:i,onlyCheckValid:!0,name:V,eventType:M.type})));se&&(ce._f.deps&&(!Array.isArray(ce._f.deps)||ce._f.deps.length>0)&&be(ce._f.deps),ae(V,xe,Se,Me))}},pe=(M,$)=>{if(we(r.errors,$)&&M.focus)return M.focus(),1},be=async(M,$={})=>{let V,se;const ce=Gu(M);if(n.resolver){const me=await ye(yt(M)?M:ce);V=on(me),se=M?!ce.some(Se=>we(me,Se)):V}else M?(se=(await Promise.all(ce.map(async me=>{const Se=we(i,me);return await Y({fields:Se&&Se._f?{[me]:Se}:Se,eventType:va.TRIGGER})}))).every(Boolean),!(!se&&!r.isValid)&&k()):se=V=await Y({fields:i,name:M,eventType:va.TRIGGER});if($.delayError&&n.delayError&&ln(M)){const me=we(r.errors,M);me?(zt(r.errors,M),h[M]=A(M,()=>P(M,me)),h[M](n.delayError)):(clearTimeout(m[M]),delete h[M])}return E.state.next({...!ln(M)||(_.isValid||C.isValid)&&V!==r.isValid?{}:{name:M},...n.resolver||!M?{isValid:V}:{},errors:r.errors}),$.shouldFocus&&!se&&Vs(i,pe,M?ce:d.mount),se},ze=(M,$)=>{let V={...c.mount?u:s};return $&&(V=X1($.dirtyFields?r.dirtyFields:r.touchedFields,V)),yt(M)?V:ln(M)?we(V,M):M.map(se=>we(V,se))},Ie=(M,$)=>({invalid:!!we(($||r).errors,M),isDirty:!!we(($||r).dirtyFields,M),error:we(($||r).errors,M),isValidating:!!we(r.validatingFields,M),isTouched:!!we(($||r).touchedFields,M)}),Ve=M=>{const $=M?Gu(M):void 0;$?.forEach(V=>zt(r.errors,V)),$?$.forEach(V=>{E.state.next({name:V,errors:r.errors})}):E.state.next({errors:{}})},st=(M,$,V)=>{const se=(we(i,M,{_f:{}})._f||{}).ref,ce=we(r.errors,M)||{},{ref:me,message:Se,type:xe,...Te}=ce;dt(r.errors,M,{...Te,...$,ref:se}),E.state.next({name:M,errors:r.errors,isValid:!1}),V&&V.shouldFocus&&se&&se.focus&&se.focus()},Xe=(M,$)=>{if(Wn(M)){y++;const{unsubscribe:V}=E.state.subscribe({next:ce=>"values"in ce&&M(ce.values||W(void 0,$),ce)});let se=!1;return{unsubscribe:()=>{se||(se=!0,y--,V())}}}return W(M,$,!0)},Xt=M=>{var $;const V=!!(!(($=M.formState)===null||$===void 0)&&$.values);V&&y++;const{unsubscribe:se}=E.state.subscribe({next:me=>{if(Ck(M.name,me.name,M.exact)&&_k(me,M.formState||_,Ri,M.reRenderRoot)){const Se={...u};M.callback({values:Se,...r,...me,defaultValues:s})}}});if(!V)return se;let ce=!1;return()=>{ce||(ce=!0,y--,se())}},Dt=M=>(c.mount=!0,C={...C,...M.formState},Xt({...M,formState:{...S,...M.formState}})),mt=(M,$={})=>{for(const V of M?Gu(M):d.mount)d.mount.delete(V),d.array.delete(V),$.keepValue||(zt(i,V),zt(u,V)),!$.keepError&&zt(r.errors,V),!$.keepDirty&&zt(r.dirtyFields,V),!$.keepTouched&&zt(r.touchedFields,V),!$.keepIsValidating&&zt(r.validatingFields,V),!n.shouldUnregister&&!$.keepDefaultValue&&zt(s,V);E.state.next({values:jt(u)}),E.state.next({...r,...$.keepDirty?{isDirty:J()}:{}}),!$.keepIsValid&&k()},pr=({disabled:M,name:$})=>{if(wr(M)&&c.mount||M||d.disabled.has($)){const ce=d.disabled.has($)!==!!M;M?d.disabled.add($):d.disabled.delete($),ce&&c.mount&&!c.action&&k()}},Ht=(M,$={})=>{let V=we(i,M);const se=wr($.disabled)||wr(n.disabled),ce=!d.registerName.has(M)&&V&&V._f&&!V._f.mount;return dt(i,M,{...V||{},_f:{...V&&V._f?V._f:{ref:{name:M}},name:M,mount:!0,...$}}),d.mount.add(M),V&&!ce?pr({disabled:wr($.disabled)?$.disabled:n.disabled,name:M}):de(M,!0,$.value),{...se?{disabled:$.disabled||n.disabled}:{},...n.progressive?{required:!!$.required,min:js($.min),max:js($.max),minLength:js($.minLength),maxLength:js($.maxLength),pattern:js($.pattern)}:{},name:M,onChange:ee,onBlur:ee,ref:me=>{if(me){d.registerName.add(M),Ht(M,$),d.registerName.delete(M),V=we(i,M);const Se=yt(me.value)&&me.querySelectorAll&&me.querySelectorAll("input,select,textarea")[0]||me,xe=yk(Se),Te=V._f.refs||[];if(xe?Te.find(nt=>nt===Se):Se===V._f.ref)return;dt(i,M,{_f:{...V._f,...xe?{refs:[...Te.filter(kh),Se,...Array.isArray(we(s,M))?[{}]:[]],ref:{type:Se.type,name:M}}:{ref:Se}}}),de(M,!1,void 0,Se)}else V=we(i,M,{}),V._f&&(V._f.mount=!1),(n.shouldUnregister||$.shouldUnregister)&&!(lk(d.array,M)&&c.action)&&d.unMount.add(M)}}},Le=()=>n.shouldFocusError&&!n.shouldUseNativeValidation&&Vs(i,pe,d.mount),Be=M=>{wr(M)&&(E.state.next({disabled:M}),Vs(i,($,V)=>{const se=we(i,V);se&&($.disabled=se._f.disabled||M,Array.isArray(se._f.refs)&&se._f.refs.forEach(ce=>{ce.disabled=se._f.disabled||M}))},0,!1))},He=(M,$)=>async V=>{let se;V&&(V.preventDefault&&V.preventDefault(),V.persist&&V.persist());let ce=jt(u);if(E.state.next({isSubmitting:!0}),n.resolver){const{errors:me,values:Se}=await he();L(),r.errors=me,ce=jt(Se)}else await Y({fields:i,eventType:va.SUBMIT});if(d.disabled.size)for(const me of d.disabled)zt(ce,me);if(zt(r.errors,G1),on(r.errors)){E.state.next({errors:{}});try{await M(ce,V)}catch(me){se=me}}else $&&await $({...r.errors},V),Le(),setTimeout(Le);if(E.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:on(r.errors)&&!se,submitCount:r.submitCount+1,errors:r.errors}),se)throw se},Un=(M,$={})=>{we(i,M)&&(yt($.defaultValue)?Z(M,jt(we(s,M))):(Z(M,$.defaultValue),dt(s,M,jt($.defaultValue))),$.keepTouched||zt(r.touchedFields,M),$.keepDirty||(zt(r.dirtyFields,M),r.isDirty=$.defaultValue?J(M,jt(we(s,M))):J()),$.keepError||(zt(r.errors,M),_.isValid&&k()),E.state.next({...r}))},Nt=(M,$={})=>{const V=M?jt(M):s,se=jt(V),ce=on(M),me=se,Se=i;if($.keepDefaultValues||(s=V),!$.keepValues){if($.keepDirtyValues){const xe=new Set([...d.mount,...Object.keys(di(s,u,void 0,Se))]);for(const Te of Array.from(xe)){const nt=we(r.dirtyFields,Te),_t=we(u,Te),Jt=we(me,Te);nt&&!yt(_t)?dt(me,Te,_t):!nt&&!yt(Jt)&&Z(Te,Jt)}}else{if($c&&yt(M))for(const xe of d.mount){const Te=we(i,xe);if(Te&&Te._f){const nt=Array.isArray(Te._f.refs)?Te._f.refs[0]:Te._f.ref;if(ac(nt)){const _t=nt.closest("form");if(_t){_t.reset();break}}}}if($.keepFieldsRef)for(const xe of d.mount)Z(xe,we(me,xe));else i={}}if(n.shouldUnregister){if(u=$.keepDefaultValues?jt(s):{},$.keepFieldsRef)for(const xe of d.mount)dt(u,xe,we(me,xe))}else u=jt(me);E.array.next({values:{...me}}),E.state.next({name:void 0,type:void 0,values:{...me}})}d={mount:$.keepDirtyValues?d.mount:new Set,unMount:new Set,array:new Set,registerName:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:""},c.mount=!_.isValid||!!$.keepIsValid||!!$.keepDirtyValues||!n.shouldUnregister&&!on(me),c.watch=!!n.shouldUnregister,c.keepIsValid=!!$.keepIsValid,c.action=!1,$.keepErrors||(r.errors={}),E.state.next({submitCount:$.keepSubmitCount?r.submitCount:0,isDirty:ce?!1:$.keepDirty?r.isDirty:$.keepValues?J():!!($.keepDefaultValues&&!_r(M,s)),isSubmitted:$.keepIsSubmitted?r.isSubmitted:!1,dirtyFields:ce?{}:$.keepDirtyValues?$.keepDefaultValues&&u?di(s,u,void 0,Se):r.dirtyFields:$.keepDefaultValues&&M?di(s,M,void 0,Se):$.keepDirty?r.dirtyFields:{},touchedFields:$.keepTouched?r.touchedFields:{},errors:$.keepErrors?r.errors:{},isSubmitSuccessful:$.keepIsSubmitSuccessful?r.isSubmitSuccessful:!1,isSubmitting:!1,defaultValues:s})},eo=(M,$)=>Nt(Wn(M)?M(u):M,{...n.resetOptions,...$}),Ar=(M,$={})=>{const V=we(i,M),se=V&&V._f;if(se){const ce=se.refs?se.refs[0]:se.ref;ce.focus&&setTimeout(()=>{ce.focus(),$.shouldSelect&&Wn(ce.select)&&ce.select()})}},Ri=M=>{const{name:$,type:V,values:se,...ce}=M;r={...r,...ce}},Hn={control:{register:Ht,unregister:mt,getFieldState:Ie,handleSubmit:He,setError:st,_subscribe:Xt,_runSchema:he,_updateIsValidating:L,_focusError:Le,_getWatch:W,_getDirty:J,_setValid:k,_setFieldArray:B,_setDisabledField:pr,_setErrors:ve,_getFieldArray:z,_reset:Nt,_resetDefaultValues:()=>Wn(n.defaultValues)&&n.defaultValues().then(M=>{eo(M,n.resetOptions),E.state.next({isLoading:!1})}),_removeUnmounted:ne,_disableForm:Be,_subjects:E,_proxyFormState:_,get _fields(){return i},get _formValues(){return u},get _state(){return c},set _state(M){c=M},get _defaultValues(){return s},get _names(){return d},set _names(M){d=M},get _formState(){return r},get _options(){return n},set _options(M){n={...n,...M},g=$u(n.mode),b=$u(n.reValidateMode)}},subscribe:Dt,trigger:be,register:Ht,handleSubmit:He,watch:Xe,setValue:Z,setValues:re,getValues:ze,reset:eo,resetField:Un,resetDefaultValues:(M,$={})=>{if(s=jt(M),!$.keepDirty){const V=di(s,u,void 0,i);r.dirtyFields=V,r.isDirty=!on(V)}$.keepIsValid||k(),E.state.next({...r,defaultValues:s})},clearErrors:Ve,unregister:mt,setError:st,setFocus:Ar,getFieldState:Ie};return{...Hn,formControl:Hn}}function lc(e={}){const n=fe.useRef(void 0),r=fe.useRef(void 0),i=fe.useRef(e.formControl),[s,u]=fe.useState(()=>({...jt(r_),isLoading:Wn(e.defaultValues),errors:e.errors||{},disabled:e.disabled||!1,defaultValues:Wn(e.defaultValues)?void 0:e.defaultValues}));if(!n.current||e.formControl&&i.current!==e.formControl)if(i.current=e.formControl,e.formControl)n.current={...e.formControl,formState:s},e.defaultValues&&!Wn(e.defaultValues)&&e.formControl.reset(e.defaultValues,e.resetOptions);else{const{formControl:d,...h}=Ok(e);n.current={...h,formState:s}}const c=n.current.control;return c._options=e,hk(()=>{const d=c._subscribe({formState:c._proxyFormState,callback:()=>u({...c._formState,defaultValues:c._defaultValues}),reRenderRoot:!0});return u(h=>({...h,isReady:!0})),c._formState.isReady=!0,d},[c]),fe.useEffect(()=>c._disableForm(e.disabled),[c,e.disabled]),fe.useEffect(()=>{e.mode&&(c._options.mode=e.mode),e.reValidateMode&&(c._options.reValidateMode=e.reValidateMode)},[c,e.mode,e.reValidateMode]),fe.useEffect(()=>{e.errors&&(c._setErrors(e.errors),c._focusError())},[c,e.errors]),fe.useEffect(()=>{e.shouldUnregister&&c._subjects.state.next({values:c._getWatch()})},[c,e.shouldUnregister]),fe.useEffect(()=>{if(c._proxyFormState.isDirty){const d=c._getDirty();d!==s.isDirty&&c._subjects.state.next({isDirty:d})}},[c,s.isDirty]),fe.useEffect(()=>{var d;e.values&&!_r(e.values,r.current)?(c._reset(e.values,{keepFieldsRef:!0,...c._options.resetOptions}),!((d=c._options.resetOptions)===null||d===void 0)&&d.keepIsValid||c._setValid(),r.current=e.values,u(h=>({...h}))):c._resetDefaultValues()},[c,e.values]),fe.useEffect(()=>{c._state.mount||(c._setValid(),c._state.mount=!0),c._state.watch&&(c._state.watch=!1,c._subjects.state.next({...c._formState})),c._removeUnmounted()}),n.current.formState=fe.useMemo(()=>fk(s,c),[c,s]),n.current}const Yb=(e,n,r)=>{if(e&&"reportValidity"in e){const i=we(r,n);e.setCustomValidity(i&&i.message||""),e.reportValidity()}},_m=(e,n)=>{for(const r in n.fields){const i=n.fields[r];i&&i.ref&&"reportValidity"in i.ref?Yb(i.ref,r,e):i&&i.refs&&i.refs.forEach(s=>Yb(s,r,e))}},Qb=(e,n)=>{n.shouldUseNativeValidation&&_m(e,n);const r={};for(const i in e){const s=we(n.fields,i),u=Object.assign(e[i]||{},{ref:s&&s.ref});if(Ak(n.names||Object.keys(e),i)){const c=Object.assign({},we(r,i));dt(c,"root",u),dt(r,i,c)}else dt(r,i,u)}return r},Ak=(e,n)=>{const r=Xb(n).replace(/[.*+?^${}()|\\]/g,"\\$&");return e.some(i=>Xb(i).match(`^${r}\\.\\d+`))};function Xb(e){return e.replace(/[\[\]]/g,"")}var Jb;function ue(e,n,r){function i(d,h){if(d._zod||Object.defineProperty(d,"_zod",{value:{def:h,constr:c,traits:new Set},enumerable:!1}),d._zod.traits.has(e))return;d._zod.traits.add(e),n(d,h);const m=c.prototype,y=Object.keys(m);for(let g=0;gr?.Parent&&d instanceof r.Parent?!0:d?._zod?.traits?.has(e)}),Object.defineProperty(c,"name",{value:e}),c}class Ta extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class o_ extends Error{constructor(n){super(`Encountered unidirectional transform during encode: ${n}`),this.name="ZodEncodeError"}}(Jb=globalThis).__zod_globalConfig??(Jb.__zod_globalConfig={});const Mp=globalThis.__zod_globalConfig;function vi(e){return Mp}function i_(e){const n=Object.values(e).filter(i=>typeof i=="number");return Object.entries(e).filter(([i,s])=>n.indexOf(+i)===-1).map(([i,s])=>s)}function Cm(e,n){return typeof n=="bigint"?n.toString():n}function jp(e){return{get value(){{const n=e();return Object.defineProperty(this,"value",{value:n}),n}}}}function zp(e){return e==null}function Dp(e){const n=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(n,r)}const Wb=Symbol("evaluating");function ft(e,n,r){let i;Object.defineProperty(e,n,{get(){if(i!==Wb)return i===void 0&&(i=Wb,i=r()),i},set(s){Object.defineProperty(e,n,{value:s})},configurable:!0})}function Ei(e,n,r){Object.defineProperty(e,n,{value:r,writable:!0,enumerable:!0,configurable:!0})}function Po(...e){const n={};for(const r of e){const i=Object.getOwnPropertyDescriptors(r);Object.assign(n,i)}return Object.defineProperties({},n)}function eS(e){return JSON.stringify(e)}function Mk(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const a_="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function uc(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const jk=jp(()=>{if(Mp.jitless||typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{const e=Function;return new e(""),!0}catch{return!1}});function Qs(e){if(uc(e)===!1)return!1;const n=e.constructor;if(n===void 0||typeof n!="function")return!0;const r=n.prototype;return!(uc(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function s_(e){return Qs(e)?{...e}:Array.isArray(e)?[...e]:e instanceof Map?new Map(e):e instanceof Set?new Set(e):e}const zk=new Set(["string","number","symbol"]);function Fc(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Bo(e,n,r){const i=new e._zod.constr(n??e._zod.def);return(!n||r?.parent)&&(i._zod.parent=e),i}function ke(e){const n=e;if(!n)return{};if(typeof n=="string")return{error:()=>n};if(n?.message!==void 0){if(n?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");n.error=n.message}return delete n.message,typeof n.error=="string"?{...n,error:()=>n.error}:n}function Dk(e){return Object.keys(e).filter(n=>e[n]._zod.optin==="optional"&&e[n]._zod.optout==="optional")}function Nk(e,n){const r=e._zod.def,i=r.checks;if(i&&i.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");const u=Po(e._zod.def,{get shape(){const c={};for(const d in n){if(!(d in r.shape))throw new Error(`Unrecognized key: "${d}"`);n[d]&&(c[d]=r.shape[d])}return Ei(this,"shape",c),c},checks:[]});return Bo(e,u)}function kk(e,n){const r=e._zod.def,i=r.checks;if(i&&i.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");const u=Po(e._zod.def,{get shape(){const c={...e._zod.def.shape};for(const d in n){if(!(d in r.shape))throw new Error(`Unrecognized key: "${d}"`);n[d]&&delete c[d]}return Ei(this,"shape",c),c},checks:[]});return Bo(e,u)}function Lk(e,n){if(!Qs(n))throw new Error("Invalid input to extend: expected a plain object");const r=e._zod.def.checks;if(r&&r.length>0){const u=e._zod.def.shape;for(const c in n)if(Object.getOwnPropertyDescriptor(u,c)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}const s=Po(e._zod.def,{get shape(){const u={...e._zod.def.shape,...n};return Ei(this,"shape",u),u}});return Bo(e,s)}function Ik(e,n){if(!Qs(n))throw new Error("Invalid input to safeExtend: expected a plain object");const r=Po(e._zod.def,{get shape(){const i={...e._zod.def.shape,...n};return Ei(this,"shape",i),i}});return Bo(e,r)}function $k(e,n){if(e._zod.def.checks?.length)throw new Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");const r=Po(e._zod.def,{get shape(){const i={...e._zod.def.shape,...n._zod.def.shape};return Ei(this,"shape",i),i},get catchall(){return n._zod.def.catchall},checks:n._zod.def.checks??[]});return Bo(e,r)}function Vk(e,n,r){const s=n._zod.def.checks;if(s&&s.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");const c=Po(n._zod.def,{get shape(){const d=n._zod.def.shape,h={...d};if(r)for(const m in r){if(!(m in d))throw new Error(`Unrecognized key: "${m}"`);r[m]&&(h[m]=e?new e({type:"optional",innerType:d[m]}):d[m])}else for(const m in d)h[m]=e?new e({type:"optional",innerType:d[m]}):d[m];return Ei(this,"shape",h),h},checks:[]});return Bo(n,c)}function Fk(e,n,r){const i=Po(n._zod.def,{get shape(){const s=n._zod.def.shape,u={...s};if(r)for(const c in r){if(!(c in u))throw new Error(`Unrecognized key: "${c}"`);r[c]&&(u[c]=new e({type:"nonoptional",innerType:s[c]}))}else for(const c in s)u[c]=new e({type:"nonoptional",innerType:s[c]});return Ei(this,"shape",u),u}});return Bo(n,i)}function Ca(e,n=0){if(e.aborted===!0)return!0;for(let r=n;r{var i;return(i=r).path??(i.path=[]),r.path.unshift(e),r})}function Vu(e){return typeof e=="string"?e:e?.message}function yi(e,n,r){const i=e.message?e.message:Vu(e.inst?._zod.def?.error?.(e))??Vu(n?.error?.(e))??Vu(r.customError?.(e))??Vu(r.localeError?.(e))??"Invalid input",{inst:s,continue:u,input:c,...d}=e;return d.path??(d.path=[]),d.message=i,n?.reportInput&&(d.input=c),d}function Np(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function Xs(...e){const[n,r,i]=e;return typeof n=="string"?{message:n,code:"custom",input:r,inst:i}:{...n}}const u_=(e,n)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:n,enumerable:!1}),e.message=JSON.stringify(n,Cm,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},kp=ue("$ZodError",u_),Uc=ue("$ZodError",u_,{Parent:Error});function Hk(e,n=r=>r.message){const r={},i=[];for(const s of e.issues)s.path.length>0?(r[s.path[0]]=r[s.path[0]]||[],r[s.path[0]].push(n(s))):i.push(n(s));return{formErrors:i,fieldErrors:r}}function Pk(e,n=r=>r.message){const r={_errors:[]},i=(s,u=[])=>{for(const c of s.issues)if(c.code==="invalid_union"&&c.errors.length)c.errors.map(d=>i({issues:d},[...u,...c.path]));else if(c.code==="invalid_key")i({issues:c.issues},[...u,...c.path]);else if(c.code==="invalid_element")i({issues:c.issues},[...u,...c.path]);else{const d=[...u,...c.path];if(d.length===0)r._errors.push(n(c));else{let h=r,m=0;for(;m(n,r,i,s)=>{const u=i?{...i,async:!1}:{async:!1},c=n._zod.run({value:r,issues:[]},u);if(c instanceof Promise)throw new Ta;if(c.issues.length){const d=new(s?.Err??e)(c.issues.map(h=>yi(h,u,vi())));throw a_(d,s?.callee),d}return c.value},Bk=Hc(Uc),Pc=e=>async(n,r,i,s)=>{const u=i?{...i,async:!0}:{async:!0};let c=n._zod.run({value:r,issues:[]},u);if(c instanceof Promise&&(c=await c),c.issues.length){const d=new(s?.Err??e)(c.issues.map(h=>yi(h,u,vi())));throw a_(d,s?.callee),d}return c.value},qk=Pc(Uc),Bc=e=>(n,r,i)=>{const s=i?{...i,async:!1}:{async:!1},u=n._zod.run({value:r,issues:[]},s);if(u instanceof Promise)throw new Ta;return u.issues.length?{success:!1,error:new(e??kp)(u.issues.map(c=>yi(c,s,vi())))}:{success:!0,data:u.value}},Gk=Bc(Uc),qc=e=>async(n,r,i)=>{const s=i?{...i,async:!0}:{async:!0};let u=n._zod.run({value:r,issues:[]},s);return u instanceof Promise&&(u=await u),u.issues.length?{success:!1,error:new e(u.issues.map(c=>yi(c,s,vi())))}:{success:!0,data:u.value}},Zk=qc(Uc),Kk=e=>(n,r,i)=>{const s=i?{...i,direction:"backward"}:{direction:"backward"};return Hc(e)(n,r,s)},Yk=e=>(n,r,i)=>Hc(e)(n,r,i),Qk=e=>async(n,r,i)=>{const s=i?{...i,direction:"backward"}:{direction:"backward"};return Pc(e)(n,r,s)},Xk=e=>async(n,r,i)=>Pc(e)(n,r,i),Jk=e=>(n,r,i)=>{const s=i?{...i,direction:"backward"}:{direction:"backward"};return Bc(e)(n,r,s)},Wk=e=>(n,r,i)=>Bc(e)(n,r,i),e3=e=>async(n,r,i)=>{const s=i?{...i,direction:"backward"}:{direction:"backward"};return qc(e)(n,r,s)},t3=e=>async(n,r,i)=>qc(e)(n,r,i),n3=/^[cC][0-9a-z]{6,}$/,r3=/^[0-9a-z]+$/,o3=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,i3=/^[0-9a-vA-V]{20}$/,a3=/^[A-Za-z0-9]{27}$/,s3=/^[a-zA-Z0-9_-]{21}$/,l3=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,u3=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,tS=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,c3=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,d3="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function f3(){return new RegExp(d3,"u")}const h3=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,m3=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,p3=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,g3=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,v3=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,c_=/^[A-Za-z0-9_-]*$/,y3=/^https?$/,b3=/^\+[1-9]\d{6,14}$/,d_="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",S3=new RegExp(`^${d_}$`);function f_(e){const n="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof e.precision=="number"?e.precision===-1?`${n}`:e.precision===0?`${n}:[0-5]\\d`:`${n}:[0-5]\\d\\.\\d{${e.precision}}`:`${n}(?::[0-5]\\d(?:\\.\\d+)?)?`}function x3(e){return new RegExp(`^${f_(e)}$`)}function w3(e){const n=f_({precision:e.precision}),r=["Z"];e.local&&r.push(""),e.offset&&r.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const i=`${n}(?:${r.join("|")})`;return new RegExp(`^${d_}T(?:${i})$`)}const _3=e=>{const n=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${n}$`)},C3=/^(?:true|false)$/i,E3=/^[^A-Z]*$/,R3=/^[^a-z]*$/,Or=ue("$ZodCheck",(e,n)=>{var r;e._zod??(e._zod={}),e._zod.def=n,(r=e._zod).onattach??(r.onattach=[])}),T3=ue("$ZodCheckMaxLength",(e,n)=>{var r;Or.init(e,n),(r=e._zod.def).when??(r.when=i=>{const s=i.value;return!zp(s)&&s.length!==void 0}),e._zod.onattach.push(i=>{const s=i._zod.bag.maximum??Number.POSITIVE_INFINITY;n.maximum{const s=i.value;if(s.length<=n.maximum)return;const c=Np(s);i.issues.push({origin:c,code:"too_big",maximum:n.maximum,inclusive:!0,input:s,inst:e,continue:!n.abort})}}),O3=ue("$ZodCheckMinLength",(e,n)=>{var r;Or.init(e,n),(r=e._zod.def).when??(r.when=i=>{const s=i.value;return!zp(s)&&s.length!==void 0}),e._zod.onattach.push(i=>{const s=i._zod.bag.minimum??Number.NEGATIVE_INFINITY;n.minimum>s&&(i._zod.bag.minimum=n.minimum)}),e._zod.check=i=>{const s=i.value;if(s.length>=n.minimum)return;const c=Np(s);i.issues.push({origin:c,code:"too_small",minimum:n.minimum,inclusive:!0,input:s,inst:e,continue:!n.abort})}}),A3=ue("$ZodCheckLengthEquals",(e,n)=>{var r;Or.init(e,n),(r=e._zod.def).when??(r.when=i=>{const s=i.value;return!zp(s)&&s.length!==void 0}),e._zod.onattach.push(i=>{const s=i._zod.bag;s.minimum=n.length,s.maximum=n.length,s.length=n.length}),e._zod.check=i=>{const s=i.value,u=s.length;if(u===n.length)return;const c=Np(s),d=u>n.length;i.issues.push({origin:c,...d?{code:"too_big",maximum:n.length}:{code:"too_small",minimum:n.length},inclusive:!0,exact:!0,input:i.value,inst:e,continue:!n.abort})}}),Gc=ue("$ZodCheckStringFormat",(e,n)=>{var r,i;Or.init(e,n),e._zod.onattach.push(s=>{const u=s._zod.bag;u.format=n.format,n.pattern&&(u.patterns??(u.patterns=new Set),u.patterns.add(n.pattern))}),n.pattern?(r=e._zod).check??(r.check=s=>{n.pattern.lastIndex=0,!n.pattern.test(s.value)&&s.issues.push({origin:"string",code:"invalid_format",format:n.format,input:s.value,...n.pattern?{pattern:n.pattern.toString()}:{},inst:e,continue:!n.abort})}):(i=e._zod).check??(i.check=()=>{})}),M3=ue("$ZodCheckRegex",(e,n)=>{Gc.init(e,n),e._zod.check=r=>{n.pattern.lastIndex=0,!n.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:n.pattern.toString(),inst:e,continue:!n.abort})}}),j3=ue("$ZodCheckLowerCase",(e,n)=>{n.pattern??(n.pattern=E3),Gc.init(e,n)}),z3=ue("$ZodCheckUpperCase",(e,n)=>{n.pattern??(n.pattern=R3),Gc.init(e,n)}),D3=ue("$ZodCheckIncludes",(e,n)=>{Or.init(e,n);const r=Fc(n.includes),i=new RegExp(typeof n.position=="number"?`^.{${n.position}}${r}`:r);n.pattern=i,e._zod.onattach.push(s=>{const u=s._zod.bag;u.patterns??(u.patterns=new Set),u.patterns.add(i)}),e._zod.check=s=>{s.value.includes(n.includes,n.position)||s.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:n.includes,input:s.value,inst:e,continue:!n.abort})}}),N3=ue("$ZodCheckStartsWith",(e,n)=>{Or.init(e,n);const r=new RegExp(`^${Fc(n.prefix)}.*`);n.pattern??(n.pattern=r),e._zod.onattach.push(i=>{const s=i._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(r)}),e._zod.check=i=>{i.value.startsWith(n.prefix)||i.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:n.prefix,input:i.value,inst:e,continue:!n.abort})}}),k3=ue("$ZodCheckEndsWith",(e,n)=>{Or.init(e,n);const r=new RegExp(`.*${Fc(n.suffix)}$`);n.pattern??(n.pattern=r),e._zod.onattach.push(i=>{const s=i._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(r)}),e._zod.check=i=>{i.value.endsWith(n.suffix)||i.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:n.suffix,input:i.value,inst:e,continue:!n.abort})}}),L3=ue("$ZodCheckOverwrite",(e,n)=>{Or.init(e,n),e._zod.check=r=>{r.value=n.tx(r.value)}});class I3{constructor(n=[]){this.content=[],this.indent=0,this&&(this.args=n)}indented(n){this.indent+=1,n(this),this.indent-=1}write(n){if(typeof n=="function"){n(this,{execution:"sync"}),n(this,{execution:"async"});return}const i=n.split(` +`).filter(c=>c),s=Math.min(...i.map(c=>c.length-c.trimStart().length)),u=i.map(c=>c.slice(s)).map(c=>" ".repeat(this.indent*2)+c);for(const c of u)this.content.push(c)}compile(){const n=Function,r=this?.args,s=[...(this?.content??[""]).map(u=>` ${u}`)];return new n(...r,s.join(` +`))}}const $3={major:4,minor:4,patch:3},Ft=ue("$ZodType",(e,n)=>{var r;e??(e={}),e._zod.def=n,e._zod.bag=e._zod.bag||{},e._zod.version=$3;const i=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&i.unshift(e);for(const s of i)for(const u of s._zod.onattach)u(e);if(i.length===0)(r=e._zod).deferred??(r.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{const s=(c,d,h)=>{let m=Ca(c),y;for(const g of d){if(g._zod.def.when){if(Uk(c)||!g._zod.def.when(c))continue}else if(m)continue;const b=c.issues.length,S=g._zod.check(c);if(S instanceof Promise&&h?.async===!1)throw new Ta;if(y||S instanceof Promise)y=(y??Promise.resolve()).then(async()=>{await S,c.issues.length!==b&&(m||(m=Ca(c,b)))});else{if(c.issues.length===b)continue;m||(m=Ca(c,b))}}return y?y.then(()=>c):c},u=(c,d,h)=>{if(Ca(c))return c.aborted=!0,c;const m=s(d,i,h);if(m instanceof Promise){if(h.async===!1)throw new Ta;return m.then(y=>e._zod.parse(y,h))}return e._zod.parse(m,h)};e._zod.run=(c,d)=>{if(d.skipChecks)return e._zod.parse(c,d);if(d.direction==="backward"){const m=e._zod.parse({value:c.value,issues:[]},{...d,skipChecks:!0});return m instanceof Promise?m.then(y=>u(y,c,d)):u(m,c,d)}const h=e._zod.parse(c,d);if(h instanceof Promise){if(d.async===!1)throw new Ta;return h.then(m=>s(m,i,d))}return s(h,i,d)}}ft(e,"~standard",()=>({validate:s=>{try{const u=Gk(e,s);return u.success?{value:u.data}:{issues:u.error?.issues}}catch{return Zk(e,s).then(c=>c.success?{value:c.data}:{issues:c.error?.issues})}},vendor:"zod",version:1}))}),Lp=ue("$ZodString",(e,n)=>{Ft.init(e,n),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??_3(e._zod.bag),e._zod.parse=(r,i)=>{if(n.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:e}),r}}),wt=ue("$ZodStringFormat",(e,n)=>{Gc.init(e,n),Lp.init(e,n)}),V3=ue("$ZodGUID",(e,n)=>{n.pattern??(n.pattern=u3),wt.init(e,n)}),F3=ue("$ZodUUID",(e,n)=>{if(n.version){const i={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[n.version];if(i===void 0)throw new Error(`Invalid UUID version: "${n.version}"`);n.pattern??(n.pattern=tS(i))}else n.pattern??(n.pattern=tS());wt.init(e,n)}),U3=ue("$ZodEmail",(e,n)=>{n.pattern??(n.pattern=c3),wt.init(e,n)}),H3=ue("$ZodURL",(e,n)=>{wt.init(e,n),e._zod.check=r=>{try{const i=r.value.trim();if(!n.normalize&&n.protocol?.source===y3.source&&!/^https?:\/\//i.test(i)){r.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:r.value,inst:e,continue:!n.abort});return}const s=new URL(i);n.hostname&&(n.hostname.lastIndex=0,n.hostname.test(s.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:n.hostname.source,input:r.value,inst:e,continue:!n.abort})),n.protocol&&(n.protocol.lastIndex=0,n.protocol.test(s.protocol.endsWith(":")?s.protocol.slice(0,-1):s.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:n.protocol.source,input:r.value,inst:e,continue:!n.abort})),n.normalize?r.value=s.href:r.value=i;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!n.abort})}}}),P3=ue("$ZodEmoji",(e,n)=>{n.pattern??(n.pattern=f3()),wt.init(e,n)}),B3=ue("$ZodNanoID",(e,n)=>{n.pattern??(n.pattern=s3),wt.init(e,n)}),q3=ue("$ZodCUID",(e,n)=>{n.pattern??(n.pattern=n3),wt.init(e,n)}),G3=ue("$ZodCUID2",(e,n)=>{n.pattern??(n.pattern=r3),wt.init(e,n)}),Z3=ue("$ZodULID",(e,n)=>{n.pattern??(n.pattern=o3),wt.init(e,n)}),K3=ue("$ZodXID",(e,n)=>{n.pattern??(n.pattern=i3),wt.init(e,n)}),Y3=ue("$ZodKSUID",(e,n)=>{n.pattern??(n.pattern=a3),wt.init(e,n)}),Q3=ue("$ZodISODateTime",(e,n)=>{n.pattern??(n.pattern=w3(n)),wt.init(e,n)}),X3=ue("$ZodISODate",(e,n)=>{n.pattern??(n.pattern=S3),wt.init(e,n)}),J3=ue("$ZodISOTime",(e,n)=>{n.pattern??(n.pattern=x3(n)),wt.init(e,n)}),W3=ue("$ZodISODuration",(e,n)=>{n.pattern??(n.pattern=l3),wt.init(e,n)}),e4=ue("$ZodIPv4",(e,n)=>{n.pattern??(n.pattern=h3),wt.init(e,n),e._zod.bag.format="ipv4"}),t4=ue("$ZodIPv6",(e,n)=>{n.pattern??(n.pattern=m3),wt.init(e,n),e._zod.bag.format="ipv6",e._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:e,continue:!n.abort})}}}),n4=ue("$ZodCIDRv4",(e,n)=>{n.pattern??(n.pattern=p3),wt.init(e,n)}),r4=ue("$ZodCIDRv6",(e,n)=>{n.pattern??(n.pattern=g3),wt.init(e,n),e._zod.check=r=>{const i=r.value.split("/");try{if(i.length!==2)throw new Error;const[s,u]=i;if(!u)throw new Error;const c=Number(u);if(`${c}`!==u)throw new Error;if(c<0||c>128)throw new Error;new URL(`http://[${s}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:e,continue:!n.abort})}}});function h_(e){if(e==="")return!0;if(/\s/.test(e)||e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}const o4=ue("$ZodBase64",(e,n)=>{n.pattern??(n.pattern=v3),wt.init(e,n),e._zod.bag.contentEncoding="base64",e._zod.check=r=>{h_(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!n.abort})}});function i4(e){if(!c_.test(e))return!1;const n=e.replace(/[-_]/g,i=>i==="-"?"+":"/"),r=n.padEnd(Math.ceil(n.length/4)*4,"=");return h_(r)}const a4=ue("$ZodBase64URL",(e,n)=>{n.pattern??(n.pattern=c_),wt.init(e,n),e._zod.bag.contentEncoding="base64url",e._zod.check=r=>{i4(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:e,continue:!n.abort})}}),s4=ue("$ZodE164",(e,n)=>{n.pattern??(n.pattern=b3),wt.init(e,n)});function l4(e,n=null){try{const r=e.split(".");if(r.length!==3)return!1;const[i]=r;if(!i)return!1;const s=JSON.parse(atob(i));return!("typ"in s&&s?.typ!=="JWT"||!s.alg||n&&(!("alg"in s)||s.alg!==n))}catch{return!1}}const u4=ue("$ZodJWT",(e,n)=>{wt.init(e,n),e._zod.check=r=>{l4(r.value,n.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:e,continue:!n.abort})}}),c4=ue("$ZodBoolean",(e,n)=>{Ft.init(e,n),e._zod.pattern=C3,e._zod.parse=(r,i)=>{if(n.coerce)try{r.value=!!r.value}catch{}const s=r.value;return typeof s=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:s,inst:e}),r}}),d4=ue("$ZodUnknown",(e,n)=>{Ft.init(e,n),e._zod.parse=r=>r}),f4=ue("$ZodNever",(e,n)=>{Ft.init(e,n),e._zod.parse=(r,i)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:e}),r)});function nS(e,n,r){e.issues.length&&n.issues.push(...l_(r,e.issues)),n.value[r]=e.value}const h4=ue("$ZodArray",(e,n)=>{Ft.init(e,n),e._zod.parse=(r,i)=>{const s=r.value;if(!Array.isArray(s))return r.issues.push({expected:"array",code:"invalid_type",input:s,inst:e}),r;r.value=Array(s.length);const u=[];for(let c=0;cnS(m,r,c))):nS(h,r,c)}return u.length?Promise.all(u).then(()=>r):r}});function cc(e,n,r,i,s,u){const c=r in i;if(e.issues.length){if(s&&u&&!c)return;n.issues.push(...l_(r,e.issues))}if(!c&&!s){e.issues.length||n.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[r]});return}e.value===void 0?c&&(n.value[r]=void 0):n.value[r]=e.value}function m_(e){const n=Object.keys(e.shape);for(const i of n)if(!e.shape?.[i]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${i}": expected a Zod schema`);const r=Dk(e.shape);return{...e,keys:n,keySet:new Set(n),numKeys:n.length,optionalKeys:new Set(r)}}function p_(e,n,r,i,s,u){const c=[],d=s.keySet,h=s.catchall._zod,m=h.def.type,y=h.optin==="optional",g=h.optout==="optional";for(const b in n){if(b==="__proto__"||d.has(b))continue;if(m==="never"){c.push(b);continue}const S=h.run({value:n[b],issues:[]},i);S instanceof Promise?e.push(S.then(_=>cc(_,r,b,n,y,g))):cc(S,r,b,n,y,g)}return c.length&&r.issues.push({code:"unrecognized_keys",keys:c,input:n,inst:u}),e.length?Promise.all(e).then(()=>r):r}const m4=ue("$ZodObject",(e,n)=>{if(Ft.init(e,n),!Object.getOwnPropertyDescriptor(n,"shape")?.get){const d=n.shape;Object.defineProperty(n,"shape",{get:()=>{const h={...d};return Object.defineProperty(n,"shape",{value:h}),h}})}const i=jp(()=>m_(n));ft(e._zod,"propValues",()=>{const d=n.shape,h={};for(const m in d){const y=d[m]._zod;if(y.values){h[m]??(h[m]=new Set);for(const g of y.values)h[m].add(g)}}return h});const s=uc,u=n.catchall;let c;e._zod.parse=(d,h)=>{c??(c=i.value);const m=d.value;if(!s(m))return d.issues.push({expected:"object",code:"invalid_type",input:m,inst:e}),d;d.value={};const y=[],g=c.shape;for(const b of c.keys){const S=g[b],_=S._zod.optin==="optional",C=S._zod.optout==="optional",E=S._zod.run({value:m[b],issues:[]},h);E instanceof Promise?y.push(E.then(T=>cc(T,d,b,m,_,C))):cc(E,d,b,m,_,C)}return u?p_(y,m,d,h,i.value,e):y.length?Promise.all(y).then(()=>d):d}}),p4=ue("$ZodObjectJIT",(e,n)=>{m4.init(e,n);const r=e._zod.parse,i=jp(()=>m_(n)),s=b=>{const S=new I3(["shape","payload","ctx"]),_=i.value,C=A=>{const k=eS(A);return`shape[${k}]._zod.run({ value: input[${k}], issues: [] }, ctx)`};S.write("const input = payload.value;");const E=Object.create(null);let T=0;for(const A of _.keys)E[A]=`key_${T++}`;S.write("const newResult = {};");for(const A of _.keys){const k=E[A],L=eS(A),U=b[A],B=U?._zod?.optin==="optional",P=U?._zod?.optout==="optional";S.write(`const ${k} = ${C(A)};`),B&&P?S.write(` + if (${k}.issues.length) { + if (${L} in input) { + payload.issues = payload.issues.concat(${k}.issues.map(iss => ({ + ...iss, + path: iss.path ? [${L}, ...iss.path] : [${L}] + }))); + } + } + + if (${k}.value === undefined) { + if (${L} in input) { + newResult[${L}] = undefined; + } + } else { + newResult[${L}] = ${k}.value; + } + + `):B?S.write(` + if (${k}.issues.length) { + payload.issues = payload.issues.concat(${k}.issues.map(iss => ({ + ...iss, + path: iss.path ? [${L}, ...iss.path] : [${L}] + }))); + } + + if (${k}.value === undefined) { + if (${L} in input) { + newResult[${L}] = undefined; + } + } else { + newResult[${L}] = ${k}.value; + } + + `):S.write(` + const ${k}_present = ${L} in input; + if (${k}.issues.length) { + payload.issues = payload.issues.concat(${k}.issues.map(iss => ({ + ...iss, + path: iss.path ? [${L}, ...iss.path] : [${L}] + }))); + } + if (!${k}_present && !${k}.issues.length) { + payload.issues.push({ + code: "invalid_type", + expected: "nonoptional", + input: undefined, + path: [${L}] + }); + } + + if (${k}_present) { + if (${k}.value === undefined) { + newResult[${L}] = undefined; + } else { + newResult[${L}] = ${k}.value; + } + } + + `)}S.write("payload.value = newResult;"),S.write("return payload;");const O=S.compile();return(A,k)=>O(b,A,k)};let u;const c=uc,d=!Mp.jitless,m=d&&jk.value,y=n.catchall;let g;e._zod.parse=(b,S)=>{g??(g=i.value);const _=b.value;return c(_)?d&&m&&S?.async===!1&&S.jitless!==!0?(u||(u=s(n.shape)),b=u(b,S),y?p_([],_,b,S,g,e):b):r(b,S):(b.issues.push({expected:"object",code:"invalid_type",input:_,inst:e}),b)}});function rS(e,n,r,i){for(const u of e)if(u.issues.length===0)return n.value=u.value,n;const s=e.filter(u=>!Ca(u));return s.length===1?(n.value=s[0].value,s[0]):(n.issues.push({code:"invalid_union",input:n.value,inst:r,errors:e.map(u=>u.issues.map(c=>yi(c,i,vi())))}),n)}const g4=ue("$ZodUnion",(e,n)=>{Ft.init(e,n),ft(e._zod,"optin",()=>n.options.some(i=>i._zod.optin==="optional")?"optional":void 0),ft(e._zod,"optout",()=>n.options.some(i=>i._zod.optout==="optional")?"optional":void 0),ft(e._zod,"values",()=>{if(n.options.every(i=>i._zod.values))return new Set(n.options.flatMap(i=>Array.from(i._zod.values)))}),ft(e._zod,"pattern",()=>{if(n.options.every(i=>i._zod.pattern)){const i=n.options.map(s=>s._zod.pattern);return new RegExp(`^(${i.map(s=>Dp(s.source)).join("|")})$`)}});const r=n.options.length===1?n.options[0]._zod.run:null;e._zod.parse=(i,s)=>{if(r)return r(i,s);let u=!1;const c=[];for(const d of n.options){const h=d._zod.run({value:i.value,issues:[]},s);if(h instanceof Promise)c.push(h),u=!0;else{if(h.issues.length===0)return h;c.push(h)}}return u?Promise.all(c).then(d=>rS(d,i,e,s)):rS(c,i,e,s)}}),v4=ue("$ZodIntersection",(e,n)=>{Ft.init(e,n),e._zod.parse=(r,i)=>{const s=r.value,u=n.left._zod.run({value:s,issues:[]},i),c=n.right._zod.run({value:s,issues:[]},i);return u instanceof Promise||c instanceof Promise?Promise.all([u,c]).then(([h,m])=>oS(r,h,m)):oS(r,u,c)}});function Em(e,n){if(e===n)return{valid:!0,data:e};if(e instanceof Date&&n instanceof Date&&+e==+n)return{valid:!0,data:e};if(Qs(e)&&Qs(n)){const r=Object.keys(n),i=Object.keys(e).filter(u=>r.indexOf(u)!==-1),s={...e,...n};for(const u of i){const c=Em(e[u],n[u]);if(!c.valid)return{valid:!1,mergeErrorPath:[u,...c.mergeErrorPath]};s[u]=c.data}return{valid:!0,data:s}}if(Array.isArray(e)&&Array.isArray(n)){if(e.length!==n.length)return{valid:!1,mergeErrorPath:[]};const r=[];for(let i=0;id.l&&d.r).map(([d])=>d);if(u.length&&s&&e.issues.push({...s,keys:u}),Ca(e))return e;const c=Em(n.value,r.value);if(!c.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(c.mergeErrorPath)}`);return e.value=c.data,e}const y4=ue("$ZodEnum",(e,n)=>{Ft.init(e,n);const r=i_(n.entries),i=new Set(r);e._zod.values=i,e._zod.pattern=new RegExp(`^(${r.filter(s=>zk.has(typeof s)).map(s=>typeof s=="string"?Fc(s):s.toString()).join("|")})$`),e._zod.parse=(s,u)=>{const c=s.value;return i.has(c)||s.issues.push({code:"invalid_value",values:r,input:c,inst:e}),s}}),b4=ue("$ZodTransform",(e,n)=>{Ft.init(e,n),e._zod.optin="optional",e._zod.parse=(r,i)=>{if(i.direction==="backward")throw new o_(e.constructor.name);const s=n.transform(r.value,r);if(i.async)return(s instanceof Promise?s:Promise.resolve(s)).then(c=>(r.value=c,r.fallback=!0,r));if(s instanceof Promise)throw new Ta;return r.value=s,r.fallback=!0,r}});function iS(e,n){return n===void 0&&(e.issues.length||e.fallback)?{issues:[],value:void 0}:e}const g_=ue("$ZodOptional",(e,n)=>{Ft.init(e,n),e._zod.optin="optional",e._zod.optout="optional",ft(e._zod,"values",()=>n.innerType._zod.values?new Set([...n.innerType._zod.values,void 0]):void 0),ft(e._zod,"pattern",()=>{const r=n.innerType._zod.pattern;return r?new RegExp(`^(${Dp(r.source)})?$`):void 0}),e._zod.parse=(r,i)=>{if(n.innerType._zod.optin==="optional"){const s=r.value,u=n.innerType._zod.run(r,i);return u instanceof Promise?u.then(c=>iS(c,s)):iS(u,s)}return r.value===void 0?r:n.innerType._zod.run(r,i)}}),S4=ue("$ZodExactOptional",(e,n)=>{g_.init(e,n),ft(e._zod,"values",()=>n.innerType._zod.values),ft(e._zod,"pattern",()=>n.innerType._zod.pattern),e._zod.parse=(r,i)=>n.innerType._zod.run(r,i)}),x4=ue("$ZodNullable",(e,n)=>{Ft.init(e,n),ft(e._zod,"optin",()=>n.innerType._zod.optin),ft(e._zod,"optout",()=>n.innerType._zod.optout),ft(e._zod,"pattern",()=>{const r=n.innerType._zod.pattern;return r?new RegExp(`^(${Dp(r.source)}|null)$`):void 0}),ft(e._zod,"values",()=>n.innerType._zod.values?new Set([...n.innerType._zod.values,null]):void 0),e._zod.parse=(r,i)=>r.value===null?r:n.innerType._zod.run(r,i)}),w4=ue("$ZodDefault",(e,n)=>{Ft.init(e,n),e._zod.optin="optional",ft(e._zod,"values",()=>n.innerType._zod.values),e._zod.parse=(r,i)=>{if(i.direction==="backward")return n.innerType._zod.run(r,i);if(r.value===void 0)return r.value=n.defaultValue,r;const s=n.innerType._zod.run(r,i);return s instanceof Promise?s.then(u=>aS(u,n)):aS(s,n)}});function aS(e,n){return e.value===void 0&&(e.value=n.defaultValue),e}const _4=ue("$ZodPrefault",(e,n)=>{Ft.init(e,n),e._zod.optin="optional",ft(e._zod,"values",()=>n.innerType._zod.values),e._zod.parse=(r,i)=>(i.direction==="backward"||r.value===void 0&&(r.value=n.defaultValue),n.innerType._zod.run(r,i))}),C4=ue("$ZodNonOptional",(e,n)=>{Ft.init(e,n),ft(e._zod,"values",()=>{const r=n.innerType._zod.values;return r?new Set([...r].filter(i=>i!==void 0)):void 0}),e._zod.parse=(r,i)=>{const s=n.innerType._zod.run(r,i);return s instanceof Promise?s.then(u=>sS(u,e)):sS(s,e)}});function sS(e,n){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:n}),e}const E4=ue("$ZodCatch",(e,n)=>{Ft.init(e,n),e._zod.optin="optional",ft(e._zod,"optout",()=>n.innerType._zod.optout),ft(e._zod,"values",()=>n.innerType._zod.values),e._zod.parse=(r,i)=>{if(i.direction==="backward")return n.innerType._zod.run(r,i);const s=n.innerType._zod.run(r,i);return s instanceof Promise?s.then(u=>(r.value=u.value,u.issues.length&&(r.value=n.catchValue({...r,error:{issues:u.issues.map(c=>yi(c,i,vi()))},input:r.value}),r.issues=[],r.fallback=!0),r)):(r.value=s.value,s.issues.length&&(r.value=n.catchValue({...r,error:{issues:s.issues.map(u=>yi(u,i,vi()))},input:r.value}),r.issues=[],r.fallback=!0),r)}}),R4=ue("$ZodPipe",(e,n)=>{Ft.init(e,n),ft(e._zod,"values",()=>n.in._zod.values),ft(e._zod,"optin",()=>n.in._zod.optin),ft(e._zod,"optout",()=>n.out._zod.optout),ft(e._zod,"propValues",()=>n.in._zod.propValues),e._zod.parse=(r,i)=>{if(i.direction==="backward"){const u=n.out._zod.run(r,i);return u instanceof Promise?u.then(c=>Fu(c,n.in,i)):Fu(u,n.in,i)}const s=n.in._zod.run(r,i);return s instanceof Promise?s.then(u=>Fu(u,n.out,i)):Fu(s,n.out,i)}});function Fu(e,n,r){return e.issues.length?(e.aborted=!0,e):n._zod.run({value:e.value,issues:e.issues,fallback:e.fallback},r)}const T4=ue("$ZodReadonly",(e,n)=>{Ft.init(e,n),ft(e._zod,"propValues",()=>n.innerType._zod.propValues),ft(e._zod,"values",()=>n.innerType._zod.values),ft(e._zod,"optin",()=>n.innerType?._zod?.optin),ft(e._zod,"optout",()=>n.innerType?._zod?.optout),e._zod.parse=(r,i)=>{if(i.direction==="backward")return n.innerType._zod.run(r,i);const s=n.innerType._zod.run(r,i);return s instanceof Promise?s.then(lS):lS(s)}});function lS(e){return e.value=Object.freeze(e.value),e}const O4=ue("$ZodCustom",(e,n)=>{Or.init(e,n),Ft.init(e,n),e._zod.parse=(r,i)=>r,e._zod.check=r=>{const i=r.value,s=n.fn(i);if(s instanceof Promise)return s.then(u=>uS(u,r,i,e));uS(s,r,i,e)}});function uS(e,n,r,i){if(!e){const s={code:"custom",input:r,inst:i,path:[...i._zod.def.path??[]],continue:!i._zod.def.abort};i._zod.def.params&&(s.params=i._zod.def.params),n.issues.push(Xs(s))}}var cS;class A4{constructor(){this._map=new WeakMap,this._idmap=new Map}add(n,...r){const i=r[0];return this._map.set(n,i),i&&typeof i=="object"&&"id"in i&&this._idmap.set(i.id,n),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(n){const r=this._map.get(n);return r&&typeof r=="object"&&"id"in r&&this._idmap.delete(r.id),this._map.delete(n),this}get(n){const r=n._zod.parent;if(r){const i={...this.get(r)??{}};delete i.id;const s={...i,...this._map.get(n)};return Object.keys(s).length?s:void 0}return this._map.get(n)}has(n){return this._map.has(n)}}function M4(){return new A4}(cS=globalThis).__zod_globalRegistry??(cS.__zod_globalRegistry=M4());const Ls=globalThis.__zod_globalRegistry;function j4(e,n){return new e({type:"string",...ke(n)})}function z4(e,n){return new e({type:"string",format:"email",check:"string_format",abort:!1,...ke(n)})}function dS(e,n){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...ke(n)})}function D4(e,n){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...ke(n)})}function N4(e,n){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...ke(n)})}function k4(e,n){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...ke(n)})}function L4(e,n){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...ke(n)})}function I4(e,n){return new e({type:"string",format:"url",check:"string_format",abort:!1,...ke(n)})}function $4(e,n){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...ke(n)})}function V4(e,n){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...ke(n)})}function F4(e,n){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...ke(n)})}function U4(e,n){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...ke(n)})}function H4(e,n){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...ke(n)})}function P4(e,n){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...ke(n)})}function B4(e,n){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...ke(n)})}function q4(e,n){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...ke(n)})}function G4(e,n){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...ke(n)})}function Z4(e,n){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...ke(n)})}function K4(e,n){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...ke(n)})}function Y4(e,n){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...ke(n)})}function Q4(e,n){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...ke(n)})}function X4(e,n){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...ke(n)})}function J4(e,n){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...ke(n)})}function W4(e,n){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...ke(n)})}function e5(e,n){return new e({type:"string",format:"date",check:"string_format",...ke(n)})}function t5(e,n){return new e({type:"string",format:"time",check:"string_format",precision:null,...ke(n)})}function n5(e,n){return new e({type:"string",format:"duration",check:"string_format",...ke(n)})}function r5(e,n){return new e({type:"boolean",...ke(n)})}function o5(e){return new e({type:"unknown"})}function i5(e,n){return new e({type:"never",...ke(n)})}function v_(e,n){return new T3({check:"max_length",...ke(n),maximum:e})}function dc(e,n){return new O3({check:"min_length",...ke(n),minimum:e})}function y_(e,n){return new A3({check:"length_equals",...ke(n),length:e})}function a5(e,n){return new M3({check:"string_format",format:"regex",...ke(n),pattern:e})}function s5(e){return new j3({check:"string_format",format:"lowercase",...ke(e)})}function l5(e){return new z3({check:"string_format",format:"uppercase",...ke(e)})}function u5(e,n){return new D3({check:"string_format",format:"includes",...ke(n),includes:e})}function c5(e,n){return new N3({check:"string_format",format:"starts_with",...ke(n),prefix:e})}function d5(e,n){return new k3({check:"string_format",format:"ends_with",...ke(n),suffix:e})}function La(e){return new L3({check:"overwrite",tx:e})}function f5(e){return La(n=>n.normalize(e))}function h5(){return La(e=>e.trim())}function m5(){return La(e=>e.toLowerCase())}function p5(){return La(e=>e.toUpperCase())}function g5(){return La(e=>Mk(e))}function v5(e,n,r){return new e({type:"array",element:n,...ke(r)})}function y5(e,n,r){return new e({type:"custom",check:"custom",fn:n,...ke(r)})}function b5(e,n){const r=S5(i=>(i.addIssue=s=>{if(typeof s=="string")i.issues.push(Xs(s,i.value,r._zod.def));else{const u=s;u.fatal&&(u.continue=!1),u.code??(u.code="custom"),u.input??(u.input=i.value),u.inst??(u.inst=r),u.continue??(u.continue=!r._zod.def.abort),i.issues.push(Xs(u))}},e(i.value,i)),n);return r}function S5(e,n){const r=new Or({check:"custom",...ke(n)});return r._zod.check=e,r}function b_(e){let n=e?.target??"draft-2020-12";return n==="draft-4"&&(n="draft-04"),n==="draft-7"&&(n="draft-07"),{processors:e.processors??{},metadataRegistry:e?.metadata??Ls,target:n,unrepresentable:e?.unrepresentable??"throw",override:e?.override??(()=>{}),io:e?.io??"output",counter:0,seen:new Map,cycles:e?.cycles??"ref",reused:e?.reused??"inline",external:e?.external??void 0}}function un(e,n,r={path:[],schemaPath:[]}){var i;const s=e._zod.def,u=n.seen.get(e);if(u)return u.count++,r.schemaPath.includes(e)&&(u.cycle=r.path),u.schema;const c={schema:{},count:1,cycle:void 0,path:r.path};n.seen.set(e,c);const d=e._zod.toJSONSchema?.();if(d)c.schema=d;else{const y={...r,schemaPath:[...r.schemaPath,e],path:r.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(n,c.schema,y);else{const b=c.schema,S=n.processors[s.type];if(!S)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${s.type}`);S(e,n,b,y)}const g=e._zod.parent;g&&(c.ref||(c.ref=g),un(g,n,y),n.seen.get(g).isParent=!0)}const h=n.metadataRegistry.get(e);return h&&Object.assign(c.schema,h),n.io==="input"&&mn(e)&&(delete c.schema.examples,delete c.schema.default),n.io==="input"&&"_prefault"in c.schema&&((i=c.schema).default??(i.default=c.schema._prefault)),delete c.schema._prefault,n.seen.get(e).schema}function S_(e,n){const r=e.seen.get(n);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");const i=new Map;for(const c of e.seen.entries()){const d=e.metadataRegistry.get(c[0])?.id;if(d){const h=i.get(d);if(h&&h!==c[0])throw new Error(`Duplicate schema id "${d}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);i.set(d,c[0])}}const s=c=>{const d=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){const g=e.external.registry.get(c[0])?.id,b=e.external.uri??(_=>_);if(g)return{ref:b(g)};const S=c[1].defId??c[1].schema.id??`schema${e.counter++}`;return c[1].defId=S,{defId:S,ref:`${b("__shared")}#/${d}/${S}`}}if(c[1]===r)return{ref:"#"};const m=`#/${d}/`,y=c[1].schema.id??`__schema${e.counter++}`;return{defId:y,ref:m+y}},u=c=>{if(c[1].schema.$ref)return;const d=c[1],{ref:h,defId:m}=s(c);d.def={...d.schema},m&&(d.defId=m);const y=d.schema;for(const g in y)delete y[g];y.$ref=h};if(e.cycles==="throw")for(const c of e.seen.entries()){const d=c[1];if(d.cycle)throw new Error(`Cycle detected: #/${d.cycle?.join("/")}/ + +Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(const c of e.seen.entries()){const d=c[1];if(n===c[0]){u(c);continue}if(e.external){const m=e.external.registry.get(c[0])?.id;if(n!==c[0]&&m){u(c);continue}}if(e.metadataRegistry.get(c[0])?.id){u(c);continue}if(d.cycle){u(c);continue}if(d.count>1&&e.reused==="ref"){u(c);continue}}}function x_(e,n){const r=e.seen.get(n);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");const i=d=>{const h=e.seen.get(d);if(h.ref===null)return;const m=h.def??h.schema,y={...m},g=h.ref;if(h.ref=null,g){i(g);const S=e.seen.get(g),_=S.schema;if(_.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0")?(m.allOf=m.allOf??[],m.allOf.push(_)):Object.assign(m,_),Object.assign(m,y),d._zod.parent===g)for(const E in m)E==="$ref"||E==="allOf"||E in y||delete m[E];if(_.$ref&&S.def)for(const E in m)E==="$ref"||E==="allOf"||E in S.def&&JSON.stringify(m[E])===JSON.stringify(S.def[E])&&delete m[E]}const b=d._zod.parent;if(b&&b!==g){i(b);const S=e.seen.get(b);if(S?.schema.$ref&&(m.$ref=S.schema.$ref,S.def))for(const _ in m)_==="$ref"||_==="allOf"||_ in S.def&&JSON.stringify(m[_])===JSON.stringify(S.def[_])&&delete m[_]}e.override({zodSchema:d,jsonSchema:m,path:h.path??[]})};for(const d of[...e.seen.entries()].reverse())i(d[0]);const s={};if(e.target==="draft-2020-12"?s.$schema="https://json-schema.org/draft/2020-12/schema":e.target==="draft-07"?s.$schema="http://json-schema.org/draft-07/schema#":e.target==="draft-04"?s.$schema="http://json-schema.org/draft-04/schema#":e.target,e.external?.uri){const d=e.external.registry.get(n)?.id;if(!d)throw new Error("Schema is missing an `id` property");s.$id=e.external.uri(d)}Object.assign(s,r.def??r.schema);const u=e.metadataRegistry.get(n)?.id;u!==void 0&&s.id===u&&delete s.id;const c=e.external?.defs??{};for(const d of e.seen.entries()){const h=d[1];h.def&&h.defId&&(h.def.id===h.defId&&delete h.def.id,c[h.defId]=h.def)}e.external||Object.keys(c).length>0&&(e.target==="draft-2020-12"?s.$defs=c:s.definitions=c);try{const d=JSON.parse(JSON.stringify(s));return Object.defineProperty(d,"~standard",{value:{...n["~standard"],jsonSchema:{input:fc(n,"input",e.processors),output:fc(n,"output",e.processors)}},enumerable:!1,writable:!1}),d}catch{throw new Error("Error converting schema to JSON.")}}function mn(e,n){const r=n??{seen:new Set};if(r.seen.has(e))return!1;r.seen.add(e);const i=e._zod.def;if(i.type==="transform")return!0;if(i.type==="array")return mn(i.element,r);if(i.type==="set")return mn(i.valueType,r);if(i.type==="lazy")return mn(i.getter(),r);if(i.type==="promise"||i.type==="optional"||i.type==="nonoptional"||i.type==="nullable"||i.type==="readonly"||i.type==="default"||i.type==="prefault")return mn(i.innerType,r);if(i.type==="intersection")return mn(i.left,r)||mn(i.right,r);if(i.type==="record"||i.type==="map")return mn(i.keyType,r)||mn(i.valueType,r);if(i.type==="pipe")return e._zod.traits.has("$ZodCodec")?!0:mn(i.in,r)||mn(i.out,r);if(i.type==="object"){for(const s in i.shape)if(mn(i.shape[s],r))return!0;return!1}if(i.type==="union"){for(const s of i.options)if(mn(s,r))return!0;return!1}if(i.type==="tuple"){for(const s of i.items)if(mn(s,r))return!0;return!!(i.rest&&mn(i.rest,r))}return!1}const x5=(e,n={})=>r=>{const i=b_({...r,processors:n});return un(e,i),S_(i,e),x_(i,e)},fc=(e,n,r={})=>i=>{const{libraryOptions:s,target:u}=i??{},c=b_({...s??{},target:u,io:n,processors:r});return un(e,c),S_(c,e),x_(c,e)},w5={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},_5=(e,n,r,i)=>{const s=r;s.type="string";const{minimum:u,maximum:c,format:d,patterns:h,contentEncoding:m}=e._zod.bag;if(typeof u=="number"&&(s.minLength=u),typeof c=="number"&&(s.maxLength=c),d&&(s.format=w5[d]??d,s.format===""&&delete s.format,d==="time"&&delete s.format),m&&(s.contentEncoding=m),h&&h.size>0){const y=[...h];y.length===1?s.pattern=y[0].source:y.length>1&&(s.allOf=[...y.map(g=>({...n.target==="draft-07"||n.target==="draft-04"||n.target==="openapi-3.0"?{type:"string"}:{},pattern:g.source}))])}},C5=(e,n,r,i)=>{r.type="boolean"},E5=(e,n,r,i)=>{r.not={}},R5=(e,n,r,i)=>{},T5=(e,n,r,i)=>{const s=e._zod.def,u=i_(s.entries);u.every(c=>typeof c=="number")&&(r.type="number"),u.every(c=>typeof c=="string")&&(r.type="string"),r.enum=u},O5=(e,n,r,i)=>{if(n.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},A5=(e,n,r,i)=>{if(n.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},M5=(e,n,r,i)=>{const s=r,u=e._zod.def,{minimum:c,maximum:d}=e._zod.bag;typeof c=="number"&&(s.minItems=c),typeof d=="number"&&(s.maxItems=d),s.type="array",s.items=un(u.element,n,{...i,path:[...i.path,"items"]})},j5=(e,n,r,i)=>{const s=r,u=e._zod.def;s.type="object",s.properties={};const c=u.shape;for(const m in c)s.properties[m]=un(c[m],n,{...i,path:[...i.path,"properties",m]});const d=new Set(Object.keys(c)),h=new Set([...d].filter(m=>{const y=u.shape[m]._zod;return n.io==="input"?y.optin===void 0:y.optout===void 0}));h.size>0&&(s.required=Array.from(h)),u.catchall?._zod.def.type==="never"?s.additionalProperties=!1:u.catchall?u.catchall&&(s.additionalProperties=un(u.catchall,n,{...i,path:[...i.path,"additionalProperties"]})):n.io==="output"&&(s.additionalProperties=!1)},z5=(e,n,r,i)=>{const s=e._zod.def,u=s.inclusive===!1,c=s.options.map((d,h)=>un(d,n,{...i,path:[...i.path,u?"oneOf":"anyOf",h]}));u?r.oneOf=c:r.anyOf=c},D5=(e,n,r,i)=>{const s=e._zod.def,u=un(s.left,n,{...i,path:[...i.path,"allOf",0]}),c=un(s.right,n,{...i,path:[...i.path,"allOf",1]}),d=m=>"allOf"in m&&Object.keys(m).length===1,h=[...d(u)?u.allOf:[u],...d(c)?c.allOf:[c]];r.allOf=h},N5=(e,n,r,i)=>{const s=e._zod.def,u=un(s.innerType,n,i),c=n.seen.get(e);n.target==="openapi-3.0"?(c.ref=s.innerType,r.nullable=!0):r.anyOf=[u,{type:"null"}]},k5=(e,n,r,i)=>{const s=e._zod.def;un(s.innerType,n,i);const u=n.seen.get(e);u.ref=s.innerType},L5=(e,n,r,i)=>{const s=e._zod.def;un(s.innerType,n,i);const u=n.seen.get(e);u.ref=s.innerType,r.default=JSON.parse(JSON.stringify(s.defaultValue))},I5=(e,n,r,i)=>{const s=e._zod.def;un(s.innerType,n,i);const u=n.seen.get(e);u.ref=s.innerType,n.io==="input"&&(r._prefault=JSON.parse(JSON.stringify(s.defaultValue)))},$5=(e,n,r,i)=>{const s=e._zod.def;un(s.innerType,n,i);const u=n.seen.get(e);u.ref=s.innerType;let c;try{c=s.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}r.default=c},V5=(e,n,r,i)=>{const s=e._zod.def,u=s.in._zod.traits.has("$ZodTransform"),c=n.io==="input"?u?s.out:s.in:s.out;un(c,n,i);const d=n.seen.get(e);d.ref=c},F5=(e,n,r,i)=>{const s=e._zod.def;un(s.innerType,n,i);const u=n.seen.get(e);u.ref=s.innerType,r.readOnly=!0},w_=(e,n,r,i)=>{const s=e._zod.def;un(s.innerType,n,i);const u=n.seen.get(e);u.ref=s.innerType};function Rm(){return Rm=Object.assign?Object.assign.bind():function(e){for(var n=1;n0){var h=s.errors[0][0];r[d]={message:h.message,type:h.code}}else r[d]={message:c,type:u};if(s.code==="invalid_union"&&s.errors.forEach(function(g){return g.forEach(function(b){return e.push(Rm({},b,{path:[].concat(s.path,b.path)}))})}),n){var m=r[d].types,y=m&&m[s.code];r[d]=Ap(d,n,r,u,y?[].concat(y,s.message):s.message)}e.shift()};e.length;)i();return r}function hc(e,n,r){if(r===void 0&&(r={}),(function(i){return"_def"in i&&typeof i._def=="object"&&"typeName"in i._def})(e))return function(i,s,u){try{return Promise.resolve(fS(function(){return Promise.resolve(e[r.mode==="sync"?"parse":"parseAsync"](i,n)).then(function(c){return u.shouldUseNativeValidation&&_m({},u),{errors:{},values:r.raw?Object.assign({},i):c}})},function(c){if((function(d){return Array.isArray(d?.issues)})(c))return{values:{},errors:Qb(U5(c.errors,!u.shouldUseNativeValidation&&u.criteriaMode==="all"),u)};throw c}))}catch(c){return Promise.reject(c)}};if((function(i){return"_zod"in i&&typeof i._zod=="object"})(e))return function(i,s,u){try{return Promise.resolve(fS(function(){return Promise.resolve((r.mode==="sync"?Bk:qk)(e,i,n)).then(function(c){return u.shouldUseNativeValidation&&_m({},u),{errors:{},values:r.raw?Object.assign({},i):c}})},function(c){if((function(d){return d instanceof kp})(c))return{values:{},errors:Qb(H5(c.issues,!u.shouldUseNativeValidation&&u.criteriaMode==="all"),u)};throw c}))}catch(c){return Promise.reject(c)}};throw new Error("Invalid input: not a Zod schema")}const P5=ue("ZodISODateTime",(e,n)=>{Q3.init(e,n),Et.init(e,n)});function B5(e){return W4(P5,e)}const q5=ue("ZodISODate",(e,n)=>{X3.init(e,n),Et.init(e,n)});function G5(e){return e5(q5,e)}const Z5=ue("ZodISOTime",(e,n)=>{J3.init(e,n),Et.init(e,n)});function K5(e){return t5(Z5,e)}const Y5=ue("ZodISODuration",(e,n)=>{W3.init(e,n),Et.init(e,n)});function Q5(e){return n5(Y5,e)}const X5=(e,n)=>{kp.init(e,n),e.name="ZodError",Object.defineProperties(e,{format:{value:r=>Pk(e,r)},flatten:{value:r=>Hk(e,r)},addIssue:{value:r=>{e.issues.push(r),e.message=JSON.stringify(e.issues,Cm,2)}},addIssues:{value:r=>{e.issues.push(...r),e.message=JSON.stringify(e.issues,Cm,2)}},isEmpty:{get(){return e.issues.length===0}}})},nr=ue("ZodError",X5,{Parent:Error}),J5=Hc(nr),W5=Pc(nr),eL=Bc(nr),tL=qc(nr),nL=Kk(nr),rL=Yk(nr),oL=Qk(nr),iL=Xk(nr),aL=Jk(nr),sL=Wk(nr),lL=e3(nr),uL=t3(nr),hS=new WeakMap;function Zc(e,n,r){const i=Object.getPrototypeOf(e);let s=hS.get(i);if(s||(s=new Set,hS.set(i,s)),!s.has(n)){s.add(n);for(const u in r){const c=r[u];Object.defineProperty(i,u,{configurable:!0,enumerable:!1,get(){const d=c.bind(this);return Object.defineProperty(this,u,{configurable:!0,writable:!0,enumerable:!0,value:d}),d},set(d){Object.defineProperty(this,u,{configurable:!0,writable:!0,enumerable:!0,value:d})}})}}}const Ut=ue("ZodType",(e,n)=>(Ft.init(e,n),Object.assign(e["~standard"],{jsonSchema:{input:fc(e,"input"),output:fc(e,"output")}}),e.toJSONSchema=x5(e,{}),e.def=n,e.type=n.type,Object.defineProperty(e,"_def",{value:n}),e.parse=(r,i)=>J5(e,r,i,{callee:e.parse}),e.safeParse=(r,i)=>eL(e,r,i),e.parseAsync=async(r,i)=>W5(e,r,i,{callee:e.parseAsync}),e.safeParseAsync=async(r,i)=>tL(e,r,i),e.spa=e.safeParseAsync,e.encode=(r,i)=>nL(e,r,i),e.decode=(r,i)=>rL(e,r,i),e.encodeAsync=async(r,i)=>oL(e,r,i),e.decodeAsync=async(r,i)=>iL(e,r,i),e.safeEncode=(r,i)=>aL(e,r,i),e.safeDecode=(r,i)=>sL(e,r,i),e.safeEncodeAsync=async(r,i)=>lL(e,r,i),e.safeDecodeAsync=async(r,i)=>uL(e,r,i),Zc(e,"ZodType",{check(...r){const i=this.def;return this.clone(Po(i,{checks:[...i.checks??[],...r.map(s=>typeof s=="function"?{_zod:{check:s,def:{check:"custom"},onattach:[]}}:s)]}),{parent:!0})},with(...r){return this.check(...r)},clone(r,i){return Bo(this,r,i)},brand(){return this},register(r,i){return r.add(this,i),this},refine(r,i){return this.check(n6(r,i))},superRefine(r,i){return this.check(r6(r,i))},overwrite(r){return this.check(La(r))},optional(){return vS(this)},exactOptional(){return PL(this)},nullable(){return yS(this)},nullish(){return vS(yS(this))},nonoptional(r){return YL(this,r)},array(){return DL(this)},or(r){return LL([this,r])},and(r){return $L(this,r)},transform(r){return bS(this,UL(r))},default(r){return GL(this,r)},prefault(r){return KL(this,r)},catch(r){return XL(this,r)},pipe(r){return bS(this,r)},readonly(){return e6(this)},describe(r){const i=this.clone();return Ls.add(i,{description:r}),i},meta(...r){if(r.length===0)return Ls.get(this);const i=this.clone();return Ls.add(i,r[0]),i},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(r){return r(this)}}),Object.defineProperty(e,"description",{get(){return Ls.get(e)?.description},configurable:!0}),e)),__=ue("_ZodString",(e,n)=>{Lp.init(e,n),Ut.init(e,n),e._zod.processJSONSchema=(i,s,u)=>_5(e,i,s);const r=e._zod.bag;e.format=r.format??null,e.minLength=r.minimum??null,e.maxLength=r.maximum??null,Zc(e,"_ZodString",{regex(...i){return this.check(a5(...i))},includes(...i){return this.check(u5(...i))},startsWith(...i){return this.check(c5(...i))},endsWith(...i){return this.check(d5(...i))},min(...i){return this.check(dc(...i))},max(...i){return this.check(v_(...i))},length(...i){return this.check(y_(...i))},nonempty(...i){return this.check(dc(1,...i))},lowercase(i){return this.check(s5(i))},uppercase(i){return this.check(l5(i))},trim(){return this.check(h5())},normalize(...i){return this.check(f5(...i))},toLowerCase(){return this.check(m5())},toUpperCase(){return this.check(p5())},slugify(){return this.check(g5())}})}),cL=ue("ZodString",(e,n)=>{Lp.init(e,n),__.init(e,n),e.email=r=>e.check(z4(dL,r)),e.url=r=>e.check(I4(fL,r)),e.jwt=r=>e.check(J4(TL,r)),e.emoji=r=>e.check($4(hL,r)),e.guid=r=>e.check(dS(mS,r)),e.uuid=r=>e.check(D4(Uu,r)),e.uuidv4=r=>e.check(N4(Uu,r)),e.uuidv6=r=>e.check(k4(Uu,r)),e.uuidv7=r=>e.check(L4(Uu,r)),e.nanoid=r=>e.check(V4(mL,r)),e.guid=r=>e.check(dS(mS,r)),e.cuid=r=>e.check(F4(pL,r)),e.cuid2=r=>e.check(U4(gL,r)),e.ulid=r=>e.check(H4(vL,r)),e.base64=r=>e.check(Y4(CL,r)),e.base64url=r=>e.check(Q4(EL,r)),e.xid=r=>e.check(P4(yL,r)),e.ksuid=r=>e.check(B4(bL,r)),e.ipv4=r=>e.check(q4(SL,r)),e.ipv6=r=>e.check(G4(xL,r)),e.cidrv4=r=>e.check(Z4(wL,r)),e.cidrv6=r=>e.check(K4(_L,r)),e.e164=r=>e.check(X4(RL,r)),e.datetime=r=>e.check(B5(r)),e.date=r=>e.check(G5(r)),e.time=r=>e.check(K5(r)),e.duration=r=>e.check(Q5(r))});function Ip(e){return j4(cL,e)}const Et=ue("ZodStringFormat",(e,n)=>{wt.init(e,n),__.init(e,n)}),dL=ue("ZodEmail",(e,n)=>{U3.init(e,n),Et.init(e,n)}),mS=ue("ZodGUID",(e,n)=>{V3.init(e,n),Et.init(e,n)}),Uu=ue("ZodUUID",(e,n)=>{F3.init(e,n),Et.init(e,n)}),fL=ue("ZodURL",(e,n)=>{H3.init(e,n),Et.init(e,n)}),hL=ue("ZodEmoji",(e,n)=>{P3.init(e,n),Et.init(e,n)}),mL=ue("ZodNanoID",(e,n)=>{B3.init(e,n),Et.init(e,n)}),pL=ue("ZodCUID",(e,n)=>{q3.init(e,n),Et.init(e,n)}),gL=ue("ZodCUID2",(e,n)=>{G3.init(e,n),Et.init(e,n)}),vL=ue("ZodULID",(e,n)=>{Z3.init(e,n),Et.init(e,n)}),yL=ue("ZodXID",(e,n)=>{K3.init(e,n),Et.init(e,n)}),bL=ue("ZodKSUID",(e,n)=>{Y3.init(e,n),Et.init(e,n)}),SL=ue("ZodIPv4",(e,n)=>{e4.init(e,n),Et.init(e,n)}),xL=ue("ZodIPv6",(e,n)=>{t4.init(e,n),Et.init(e,n)}),wL=ue("ZodCIDRv4",(e,n)=>{n4.init(e,n),Et.init(e,n)}),_L=ue("ZodCIDRv6",(e,n)=>{r4.init(e,n),Et.init(e,n)}),CL=ue("ZodBase64",(e,n)=>{o4.init(e,n),Et.init(e,n)}),EL=ue("ZodBase64URL",(e,n)=>{a4.init(e,n),Et.init(e,n)}),RL=ue("ZodE164",(e,n)=>{s4.init(e,n),Et.init(e,n)}),TL=ue("ZodJWT",(e,n)=>{u4.init(e,n),Et.init(e,n)}),OL=ue("ZodBoolean",(e,n)=>{c4.init(e,n),Ut.init(e,n),e._zod.processJSONSchema=(r,i,s)=>C5(e,r,i)});function pS(e){return r5(OL,e)}const AL=ue("ZodUnknown",(e,n)=>{d4.init(e,n),Ut.init(e,n),e._zod.processJSONSchema=(r,i,s)=>R5()});function gS(){return o5(AL)}const ML=ue("ZodNever",(e,n)=>{f4.init(e,n),Ut.init(e,n),e._zod.processJSONSchema=(r,i,s)=>E5(e,r,i)});function jL(e){return i5(ML,e)}const zL=ue("ZodArray",(e,n)=>{h4.init(e,n),Ut.init(e,n),e._zod.processJSONSchema=(r,i,s)=>M5(e,r,i,s),e.element=n.element,Zc(e,"ZodArray",{min(r,i){return this.check(dc(r,i))},nonempty(r){return this.check(dc(1,r))},max(r,i){return this.check(v_(r,i))},length(r,i){return this.check(y_(r,i))},unwrap(){return this.element}})});function DL(e,n){return v5(zL,e,n)}const NL=ue("ZodObject",(e,n)=>{p4.init(e,n),Ut.init(e,n),e._zod.processJSONSchema=(r,i,s)=>j5(e,r,i,s),ft(e,"shape",()=>n.shape),Zc(e,"ZodObject",{keyof(){return VL(Object.keys(this._zod.def.shape))},catchall(r){return this.clone({...this._zod.def,catchall:r})},passthrough(){return this.clone({...this._zod.def,catchall:gS()})},loose(){return this.clone({...this._zod.def,catchall:gS()})},strict(){return this.clone({...this._zod.def,catchall:jL()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(r){return Lk(this,r)},safeExtend(r){return Ik(this,r)},merge(r){return $k(this,r)},pick(r){return Nk(this,r)},omit(r){return kk(this,r)},partial(...r){return Vk(C_,this,r[0])},required(...r){return Fk(E_,this,r[0])}})});function Kc(e,n){const r={type:"object",shape:e??{},...ke(n)};return new NL(r)}const kL=ue("ZodUnion",(e,n)=>{g4.init(e,n),Ut.init(e,n),e._zod.processJSONSchema=(r,i,s)=>z5(e,r,i,s),e.options=n.options});function LL(e,n){return new kL({type:"union",options:e,...ke(n)})}const IL=ue("ZodIntersection",(e,n)=>{v4.init(e,n),Ut.init(e,n),e._zod.processJSONSchema=(r,i,s)=>D5(e,r,i,s)});function $L(e,n){return new IL({type:"intersection",left:e,right:n})}const Tm=ue("ZodEnum",(e,n)=>{y4.init(e,n),Ut.init(e,n),e._zod.processJSONSchema=(i,s,u)=>T5(e,i,s),e.enum=n.entries,e.options=Object.values(n.entries);const r=new Set(Object.keys(n.entries));e.extract=(i,s)=>{const u={};for(const c of i)if(r.has(c))u[c]=n.entries[c];else throw new Error(`Key ${c} not found in enum`);return new Tm({...n,checks:[],...ke(s),entries:u})},e.exclude=(i,s)=>{const u={...n.entries};for(const c of i)if(r.has(c))delete u[c];else throw new Error(`Key ${c} not found in enum`);return new Tm({...n,checks:[],...ke(s),entries:u})}});function VL(e,n){const r=Array.isArray(e)?Object.fromEntries(e.map(i=>[i,i])):e;return new Tm({type:"enum",entries:r,...ke(n)})}const FL=ue("ZodTransform",(e,n)=>{b4.init(e,n),Ut.init(e,n),e._zod.processJSONSchema=(r,i,s)=>A5(e,r),e._zod.parse=(r,i)=>{if(i.direction==="backward")throw new o_(e.constructor.name);r.addIssue=u=>{if(typeof u=="string")r.issues.push(Xs(u,r.value,n));else{const c=u;c.fatal&&(c.continue=!1),c.code??(c.code="custom"),c.input??(c.input=r.value),c.inst??(c.inst=e),r.issues.push(Xs(c))}};const s=n.transform(r.value,r);return s instanceof Promise?s.then(u=>(r.value=u,r.fallback=!0,r)):(r.value=s,r.fallback=!0,r)}});function UL(e){return new FL({type:"transform",transform:e})}const C_=ue("ZodOptional",(e,n)=>{g_.init(e,n),Ut.init(e,n),e._zod.processJSONSchema=(r,i,s)=>w_(e,r,i,s),e.unwrap=()=>e._zod.def.innerType});function vS(e){return new C_({type:"optional",innerType:e})}const HL=ue("ZodExactOptional",(e,n)=>{S4.init(e,n),Ut.init(e,n),e._zod.processJSONSchema=(r,i,s)=>w_(e,r,i,s),e.unwrap=()=>e._zod.def.innerType});function PL(e){return new HL({type:"optional",innerType:e})}const BL=ue("ZodNullable",(e,n)=>{x4.init(e,n),Ut.init(e,n),e._zod.processJSONSchema=(r,i,s)=>N5(e,r,i,s),e.unwrap=()=>e._zod.def.innerType});function yS(e){return new BL({type:"nullable",innerType:e})}const qL=ue("ZodDefault",(e,n)=>{w4.init(e,n),Ut.init(e,n),e._zod.processJSONSchema=(r,i,s)=>L5(e,r,i,s),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function GL(e,n){return new qL({type:"default",innerType:e,get defaultValue(){return typeof n=="function"?n():s_(n)}})}const ZL=ue("ZodPrefault",(e,n)=>{_4.init(e,n),Ut.init(e,n),e._zod.processJSONSchema=(r,i,s)=>I5(e,r,i,s),e.unwrap=()=>e._zod.def.innerType});function KL(e,n){return new ZL({type:"prefault",innerType:e,get defaultValue(){return typeof n=="function"?n():s_(n)}})}const E_=ue("ZodNonOptional",(e,n)=>{C4.init(e,n),Ut.init(e,n),e._zod.processJSONSchema=(r,i,s)=>k5(e,r,i,s),e.unwrap=()=>e._zod.def.innerType});function YL(e,n){return new E_({type:"nonoptional",innerType:e,...ke(n)})}const QL=ue("ZodCatch",(e,n)=>{E4.init(e,n),Ut.init(e,n),e._zod.processJSONSchema=(r,i,s)=>$5(e,r,i,s),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function XL(e,n){return new QL({type:"catch",innerType:e,catchValue:typeof n=="function"?n:()=>n})}const JL=ue("ZodPipe",(e,n)=>{R4.init(e,n),Ut.init(e,n),e._zod.processJSONSchema=(r,i,s)=>V5(e,r,i,s),e.in=n.in,e.out=n.out});function bS(e,n){return new JL({type:"pipe",in:e,out:n})}const WL=ue("ZodReadonly",(e,n)=>{T4.init(e,n),Ut.init(e,n),e._zod.processJSONSchema=(r,i,s)=>F5(e,r,i,s),e.unwrap=()=>e._zod.def.innerType});function e6(e){return new WL({type:"readonly",innerType:e})}const t6=ue("ZodCustom",(e,n)=>{O4.init(e,n),Ut.init(e,n),e._zod.processJSONSchema=(r,i,s)=>O5(e,r)});function n6(e,n={}){return y5(t6,e,n)}function r6(e,n){return b5(e,n)}const o6=/\.(md|markdown)$/i,i6=/\.(png|jpe?g|gif|svg|webp|ico|bmp|avif)$/i,a6=/\.html?$/i,s6=/\.(txt|log|json|ya?ml|toml|csv|go|py|js|ts|jsx|tsx|sh|bash|zsh|rb|rs|c|h|cpp|java|kt|swift|sql|css|xml|ini|conf|env|mod|sum|jsonl)$/i;function R_(e){if(e<1024)return e+" B";const n=["KB","MB","GB","TB"];let r=-1;do e/=1024,r++;while(e>=1024&&r[role=checkbox]]:translate-y-[2px]",e),...n})}function z_({className:e,...n}){return v.jsx("td",{"data-slot":"table-cell",className:xt("p-2 align-middle whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",e),...n})}const l6=Kc({name:Ip().trim().min(1,"Give the organization a name.").max(60,"Keep it under 60 characters.")});function u6({org:e,projects:n,myEmail:r,onProjectsChanged:i}){const s=tl(),u=e.role==="owner",c=()=>s.invalidateQueries({queryKey:["orgs"]}),d=()=>s.invalidateQueries({queryKey:["invites",e.id]}),h=()=>s.invalidateQueries({queryKey:["orgShares",e.id]}),m=lc({resolver:hc(l6),values:{name:e.name}}),{data:y}=Mn({queryKey:["invites",e.id],queryFn:()=>Vn(`/api/orgs/${e.id}/invites`),enabled:u,select:S=>S.invites||[]}),{data:g}=Mn({queryKey:["orgShares",e.id],queryFn:()=>Vn(`/api/orgs/${e.id}/shares`),enabled:u,select:S=>S.shares||[]}),b=n.filter(S=>S.org===e.id);return v.jsxs("div",{className:"admin",children:[v.jsx("h1",{id:"org-title",children:e.name+(u?"":" · member")}),u&&v.jsxs("form",{className:"admin-row",onSubmit:m.handleSubmit(async({name:S})=>{try{await Ao("PATCH","/api/orgs/"+e.id,{name:S}),Je("Renamed."),c()}catch(_){Je(_.message,!0)}}),children:[v.jsx("input",{id:"org-rename",type:"text",...m.register("name")}),v.jsx(Yt,{variant:"primary",id:"org-rename-btn",type:"submit",children:"Rename org"}),m.formState.errors.name&&v.jsx("span",{className:"field-err",children:m.formState.errors.name.message})]}),v.jsx("h3",{children:"Members"}),v.jsx(c6,{org:e,owner:u,myEmail:r,onChanged:c}),u&&v.jsxs(v.Fragment,{children:[v.jsx("h3",{children:"Projects"}),v.jsxs("div",{className:"admin-list",children:[b.length===0&&v.jsx("div",{className:"admin-empty",children:"No projects yet."}),b.map(S=>v.jsxs("div",{className:"admin-item",children:[v.jsx("span",{className:"ai-main",children:S.name}),v.jsx(Yt,{variant:"subtle",onClick:async()=>{const _=await R1("Rename project","New name",S.name,"Rename");if(!(!_||_===S.name))try{await Ao("PATCH","/api/projects/"+S.id,{name:_}),Je("Renamed."),await i()}catch(C){Je(C.message,!0)}},children:"Rename"}),v.jsx("button",{className:"ai-del",onClick:async()=>{if(await oc("Delete project",`Delete “${S.name}”? Its files stay in storage, but it's removed from the hub.`,"Delete",!0))try{await Ao("DELETE","/api/projects/"+S.id),Je(`Deleted “${S.name}”.`),await i()}catch(_){Je(_.message,!0)}},children:"Delete"})]},S.id))]}),v.jsxs("div",{className:"admin-h",children:[v.jsx("h3",{children:"Invite links"}),v.jsx(Yt,{variant:"primary",onClick:async()=>{try{const S=await Oa(`/api/orgs/${e.id}/invites`),_=await Js(S.url);Je(_?"Invite link copied to clipboard.":"Invite created — copy it from the list below."),d()}catch(S){Je(S.message,!0)}},children:"New invite"})]}),v.jsxs("div",{className:"admin-list",children:[y&&y.length===0&&v.jsx("div",{className:"admin-empty",children:"No active invite links."}),(y||[]).map(S=>v.jsxs("div",{className:"admin-item",children:[v.jsx("span",{className:"ai-main mono",style:{cursor:"pointer"},title:"Copy",onClick:()=>Js(S.url).then(_=>Je(_?"Copied.":"Select and copy the link.")),children:S.url}),v.jsx("span",{className:"ai-tag",children:(S.creator?"by "+S.creator+" · ":"")+(S.uses?S.uses+" joined · ":"unused · ")+"expires "+new Date(S.expires).toLocaleDateString()}),v.jsx("button",{className:"ai-del",onClick:async()=>{if(await oc("Revoke invite","Revoke this invite link? Anyone still holding it won't be able to join.","Revoke",!0))try{await Ao("DELETE",`/api/orgs/${e.id}/invites/${S.token}`),Je("Revoked."),d()}catch(_){Je(_.message,!0)}},children:"Revoke"})]},S.token))]}),v.jsx("h3",{children:"Public share links"}),v.jsx(d6,{shares:g||[],onChanged:h})]})]})}function c6({org:e,owner:n,myEmail:r,onChanged:i}){const[s,u]=x.useState([{id:"email",desc:!1}]),c=x.useMemo(()=>z1(),[]),d=x.useMemo(()=>[c.accessor("email",{id:"email",header:"Member",cell:m=>{const y=!!r&&m.getValue().toLowerCase()===r.toLowerCase();return v.jsx("span",{className:"ai-main",children:m.getValue()+(y?" (you)":"")})}}),c.accessor("role",{id:"role",header:"Role",cell:m=>{const y=m.row.original,g=!!r&&y.email.toLowerCase()===r.toLowerCase();return!n||g?v.jsx("span",{className:"ai-tag",children:y.role}):v.jsxs(v.Fragment,{children:[v.jsxs("select",{value:y.role,onChange:async b=>{try{await Ao("PATCH",`/api/orgs/${e.id}/members/${encodeURIComponent(y.email)}`,{role:b.target.value}),Je("Role updated.")}catch(S){Je(S.message,!0)}i()},children:[v.jsx("option",{value:"owner",children:"owner"}),v.jsx("option",{value:"member",children:"member"})]}),v.jsx("button",{className:"ai-del",onClick:async()=>{if(await oc("Remove member",`Remove ${y.email} from ${e.name}?`,"Remove",!0))try{await Ao("DELETE",`/api/orgs/${e.id}/members/${encodeURIComponent(y.email)}`),Je("Removed."),i()}catch(b){Je(b.message,!0)}},children:"Remove"})]})}})],[c,e.id,e.name,n,r]),h=B1({data:e.members,columns:d,state:{sorting:s},onSortingChange:u,getCoreRowModel:H1(),getSortedRowModel:P1()});return v.jsxs(O_,{className:"admin-table",children:[v.jsx(A_,{children:h.getHeaderGroups().map(m=>v.jsx(mc,{children:m.headers.map(y=>v.jsxs(j_,{onClick:y.column.getToggleSortingHandler(),"data-sort":y.column.getIsSorted()||void 0,children:[ic(y.column.columnDef.header,y.getContext()),y.column.getIsSorted()==="asc"?" ↑":y.column.getIsSorted()==="desc"?" ↓":""]},y.id))},m.id))}),v.jsx(M_,{children:h.getRowModel().rows.map(m=>v.jsx(mc,{className:"admin-item",children:m.getVisibleCells().map(y=>v.jsx(z_,{children:ic(y.column.columnDef.cell,y.getContext())},y.id))},m.id))})]})}function d6({shares:e,onChanged:n}){const[r,i]=x.useState([]),s=x.useMemo(()=>z1(),[]),u=x.useMemo(()=>[s.accessor("path",{header:"Path",cell:d=>v.jsx("span",{className:"ai-main mono",style:{cursor:"pointer"},title:d.row.original.url,onClick:()=>window.open(d.row.original.url,"_blank"),children:d.getValue()})}),s.accessor(d=>d.project_name||"",{id:"project",header:"Project",cell:d=>v.jsx("span",{className:"ai-tag",children:(d.getValue()||"")+(d.row.original.creator?" · by "+d.row.original.creator:"")+(d.row.original.created?" · "+new Date(d.row.original.created).toLocaleDateString():"")})}),s.display({id:"actions",header:"",cell:d=>v.jsx("button",{className:"ai-del",onClick:async()=>{const h=d.row.original;if(await oc("Revoke share link",`Revoke the public link to “${h.path}”? Anyone with the URL will lose access.`,"Revoke",!0))try{await Ao("DELETE","/api/shares/"+h.token),Je("Share revoked."),n()}catch(m){Je(m.message,!0)}},children:"Revoke"})})],[s,n]),c=B1({data:e,columns:u,state:{sorting:r},onSortingChange:i,getCoreRowModel:H1(),getSortedRowModel:P1()});return e.length===0?v.jsx("div",{className:"admin-list",children:v.jsx("div",{className:"admin-empty",children:"No public shares."})}):v.jsxs(O_,{className:"admin-table",children:[v.jsx(A_,{children:c.getHeaderGroups().map(d=>v.jsx(mc,{children:d.headers.map(h=>v.jsx(j_,{onClick:h.column.getToggleSortingHandler(),children:ic(h.column.columnDef.header,h.getContext())},h.id))},d.id))}),v.jsx(M_,{children:c.getRowModel().rows.map(d=>v.jsx(mc,{className:"admin-item",children:d.getVisibleCells().map(h=>v.jsx(z_,{children:ic(h.column.columnDef.cell,h.getContext())},h.id))},d.id))})]})}const f6=Kc({require_verification:pS(),require_approval:pS()});function h6(){const e=tl(),{data:n,error:r}=Mn({queryKey:["admin","policy"],queryFn:()=>Vn("/api/admin/policy")}),{data:i}=T1(!0),s=lc({resolver:hc(f6),values:n?{require_verification:n.require_verification&&n.mailer,require_approval:n.require_approval}:{require_verification:!1,require_approval:!1}});if(x.useEffect(()=>{r&&Je(r.message,!0)},[r]),!n)return null;const u=async(c,d,h)=>{try{await Oa(`/api/admin/pending/${c}/${d}`),Je((d==="approve"?"Approved ":"Denied ")+h),e.invalidateQueries({queryKey:["admin","pending"]})}catch(m){Je(m.message,!0)}};return v.jsxs("div",{className:"admin",children:[v.jsx("h1",{children:"Signup & access"}),v.jsx("p",{className:"admin-sub",children:"Who can create an account on this hub, and how new accounts are vetted."}),v.jsx("h3",{children:"New-account vetting"}),v.jsxs("form",{onSubmit:s.handleSubmit(async c=>{try{await Oa("/api/admin/policy",c),Je("Signup policy saved."),e.invalidateQueries({queryKey:["admin","policy"]})}catch(d){Je(d.message,!0)}}),children:[v.jsxs("div",{className:"admin-list",children:[v.jsx(SS,{label:"Require email verification",desc:n.mailer?"New accounts must click an emailed link before they can sign in — proves they control the address.":"Configure SMTP on the server (auth.smtp) to enable email verification.",disabled:!n.mailer,inputProps:s.register("require_verification")}),v.jsx(SS,{label:"Require admin approval",desc:"New accounts wait for a hub admin to approve them before they gain access.",inputProps:s.register("require_approval")})]}),v.jsx(Yt,{variant:"primary",type:"submit",style:{marginTop:14},children:"Save policy"})]}),v.jsx("h3",{children:"Who can sign up"}),v.jsxs("div",{className:"admin-list",children:[v.jsxs("div",{className:"admin-item",children:[v.jsx("span",{className:"ai-main",children:"Allowed email domains"}),v.jsx("span",{className:"ai-tag",children:n.allowed_domains&&n.allowed_domains.length?n.allowed_domains.map(c=>"@"+c).join(", "):"any"})]}),v.jsxs("div",{className:"admin-item",children:[v.jsx("span",{className:"ai-main",children:"Self-signup"}),v.jsx("span",{className:"ai-tag",children:n.allow_signup?"open":"invite-only"})]}),v.jsxs("div",{className:"admin-item",children:[v.jsx("span",{className:"ai-main",children:"Hub admins"}),v.jsx("span",{className:"ai-tag",children:n.admins&&n.admins.length?n.admins.join(", "):"none"})]})]}),v.jsx("p",{className:"admin-sub",children:"Domains and admins are set in the server config file (they can't be widened from the browser)."}),v.jsx("h3",{children:"Pending signups"}),v.jsxs("div",{className:"admin-list",children:[(!i||i.length===0)&&v.jsx("div",{className:"admin-empty",children:"No one is waiting for approval."}),(i||[]).map(c=>v.jsxs("div",{className:"admin-item",children:[v.jsx("span",{className:"ai-main",children:(c.name?c.name+" · ":"")+c.email}),v.jsx(Yt,{variant:"primary",onClick:()=>u(c.id,"approve",c.email),children:"Approve"}),v.jsx("button",{className:"ai-del",onClick:()=>u(c.id,"deny",c.email),children:"Deny"})]},c.id))]})]})}function SS({label:e,desc:n,disabled:r,inputProps:i}){return v.jsxs("label",{className:"admin-item toggle",style:r?{opacity:.55}:void 0,children:[v.jsxs("span",{className:"ai-main",children:[v.jsx("div",{className:"tg-label",children:e}),v.jsx("div",{className:"tg-desc",children:n})]}),v.jsx("input",{type:"checkbox",disabled:r,...i})]})}function m6({...e}){return v.jsx(Sw,{"data-slot":"select",...e})}function p6({...e}){return v.jsx(Cw,{"data-slot":"select-value",...e})}function g6({className:e,size:n="default",children:r,...i}){return v.jsxs(ww,{"data-slot":"select-trigger","data-size":n,className:xt("flex w-fit items-center justify-between gap-2 rounded-md border border-input bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 data-[placeholder]:text-muted-foreground data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 dark:bg-input/30 dark:hover:bg-input/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground",e),...i,children:[r,v.jsx(Ew,{asChild:!0,children:v.jsx(vp,{className:"size-4 opacity-50"})})]})}function v6({className:e,children:n,position:r="item-aligned",align:i="center",...s}){return v.jsx(Tw,{children:v.jsxs(Ow,{"data-slot":"select-content",className:xt("relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border bg-popover text-popover-foreground shadow-md data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",r==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:r,align:i,...s,children:[v.jsx(b6,{}),v.jsx(Dw,{className:xt("p-1",r==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:n}),v.jsx(S6,{})]})})}function y6({className:e,children:n,...r}){return v.jsxs(Iw,{"data-slot":"select-item",className:xt("relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",e),...r,children:[v.jsx("span",{"data-slot":"select-item-indicator",className:"absolute right-2 flex size-3.5 items-center justify-center",children:v.jsx(Fw,{children:v.jsx(x1,{className:"size-4"})})}),v.jsx($w,{children:n})]})}function b6({className:e,...n}){return v.jsx(Uw,{"data-slot":"select-scroll-up-button",className:xt("flex cursor-default items-center justify-center py-1",e),...n,children:v.jsx(Oz,{className:"size-4"})})}function S6({className:e,...n}){return v.jsx(Hw,{"data-slot":"select-scroll-down-button",className:xt("flex cursor-default items-center justify-center py-1",e),...n,children:v.jsx(vp,{className:"size-4"})})}const xS=["#5b8def","#f5a623","#4cc38a","#e0679b","#8b7bf0","#3ec8c8","#e6934a"];function D_(e){let n=0;for(const r of e)n=n*31+r.charCodeAt(0)>>>0;return xS[n%xS.length]}function wS({projects:e,currentId:n,menu:r}){const i=O1(),s=async()=>{const u=await R1("New project","Project name","","Create");if(u)try{const c=await Oa("/api/projects",{name:u});await i(),On("/"+c.project.id),Je(`Created “${c.project.name}”.`)}catch(c){Je("Could not create the project: "+c.message,!0)}};return v.jsxs("nav",{id:"projects","aria-label":"Projects",children:[v.jsxs("div",{className:"nav-head",children:[v.jsx("span",{children:"Projects"}),v.jsx("button",{className:"nav-add",title:"New project",onClick:s,children:"+"})]}),v.jsx("div",{className:"proj-row",children:v.jsxs(m6,{value:n||"",onValueChange:u=>{u&&u!==n&&(On("/"+u),cr())},children:[v.jsxs(g6,{id:"project-select","aria-label":"Switch project",className:"proj-trigger",children:[n&&v.jsx("span",{className:"proj-mark","aria-hidden":"true",style:{background:D_(e.find(u=>u.id===n)?.name||"")}}),v.jsx(p6,{placeholder:"Select a project"})]}),v.jsx(v6,{className:"proj-menu",children:e.map(u=>v.jsx(y6,{value:u.id,children:u.name},u.id))})]})}),r&&v.jsx("ul",{className:"nav-menu","aria-label":"Project pages",children:[["dashboard","Dashboard","dashboard",r.onDashboard],["install","Installation","terminal",r.onInstall],["history","History","hist",r.onHistory],["settings","Settings","gear",r.onSettings]].map(([u,c,d,h])=>v.jsx("li",{children:v.jsxs("div",{id:"nav-"+u,className:"row"+(r.active===u?" active":""),role:"button",tabIndex:0,onClick:h,onKeyDown:m=>{(m.key==="Enter"||m.key===" ")&&(m.preventDefault(),h())},children:[v.jsx(Kt,{name:d}),v.jsx("span",{className:"label",children:c})]})},u))})]})}function x6({...e}){return v.jsx(w2,{"data-slot":"dropdown-menu",...e})}function w6({...e}){return v.jsx(_2,{"data-slot":"dropdown-menu-trigger",...e})}function _6({className:e,sideOffset:n=4,...r}){return v.jsx(C2,{children:v.jsx(E2,{"data-slot":"dropdown-menu-content",sideOffset:n,className:xt("z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",e),...r})})}function Ih({className:e,inset:n,variant:r="default",...i}){return v.jsx(T2,{"data-slot":"dropdown-menu-item","data-inset":n,"data-variant":r,className:xt("relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground data-[variant=destructive]:*:[svg]:text-destructive!",e),...i})}function $h({className:e,inset:n,...r}){return v.jsx(R2,{"data-slot":"dropdown-menu-label","data-inset":n,className:xt("px-2 py-1.5 text-sm font-medium data-[inset]:pl-8",e),...r})}function C6({me:e,org:n,admin:r,onOrgSettings:i}){const s=e.name||e.email;return v.jsx("footer",{id:"accountbar",children:v.jsxs(x6,{modal:!1,children:[v.jsx(w6,{asChild:!0,children:v.jsxs("button",{id:"account-btn","aria-label":"Account menu",children:[v.jsx("span",{className:"avatar",style:{background:D_(e.email)},"aria-hidden":"true",children:(s.trim()[0]||"?").toUpperCase()}),v.jsxs("span",{className:"acct",children:[v.jsx("b",{children:s}),e.name&&v.jsx("small",{children:e.email})]}),v.jsx(Kt,{name:"chev"})]})}),v.jsxs(_6,{id:"account-menu",side:"top",align:"start",sideOffset:6,className:"acct-menu",children:[n&&v.jsxs(v.Fragment,{children:[v.jsx($h,{className:"menu-sec",children:"Organization"}),v.jsxs(Ih,{id:"menu-org-settings",onSelect:()=>i(n),children:[v.jsx(Kt,{name:"gear"}),v.jsxs("span",{children:[v.jsx("b",{children:n.name})," Settings"]})]})]}),r&&v.jsxs(v.Fragment,{children:[v.jsx($h,{className:"menu-sec",children:"Hub"}),v.jsxs(Ih,{id:"menu-hub-admin",onSelect:r.onClick,children:[v.jsx(Kt,{name:"shield"}),v.jsxs("span",{children:["Signup & access",r.pending?` · ${r.pending}`:""]})]})]}),v.jsx($h,{className:"menu-sec",children:"Account"}),v.jsx(Ih,{asChild:!0,children:v.jsxs("a",{id:"signout",href:"/auth/logout",children:[v.jsx(Kt,{name:"power"}),v.jsx("span",{children:"Log out"})]})})]})]})})}function E6({project:e,org:n}){return v.jsxs("div",{className:"project-settings",children:[v.jsx("h2",{children:e.name}),v.jsxs("dl",{className:"ps-facts",children:[v.jsx("dt",{children:"Project id"}),v.jsx("dd",{children:v.jsx("code",{children:e.id})}),n&&v.jsxs(v.Fragment,{children:[v.jsx("dt",{children:"Workspace"}),v.jsx("dd",{children:n.name})]}),e.created&&v.jsxs(v.Fragment,{children:[v.jsx("dt",{children:"Created"}),v.jsx("dd",{children:new Date(e.created).toLocaleDateString()})]})]})]})}const Vh=[{key:"claude",label:"Claude Code & Cowork"},{key:"hermes",label:"Hermes",hook:"hermes",note:"Registers BearDrive's hooks in Hermes's config: pull before every turn, push after edits with a session note, and report file reads to Insights."},{key:"codex",label:"Codex",hook:"codex",note:"Registers hooks in .codex/hooks.json.",extra:"Run /hooks inside Codex once to trust the project's .codex layer — after that every turn pulls, edits push automatically, and reads are reported to Insights."}];function R6(e,n){const r=window.location.origin,i=n.id;if(e.key==="claude")return[{title:"Add the BearDrive plugin",desc:"One time, in any Claude Code session. The plugin ships the beardrive skill, the /beardrive commands, and turn-boundary sync hooks — and Claude Cowork shares the same plugins, so installing it once covers both.",code:`/plugin marketplace add runbear-io/beardrive +/plugin install beardrive@beardrive`},{title:"Set up this project conversationally",desc:"In a Claude Code or Cowork session in the folder where you want the files, run:",code:"/beardrive:install connect to "+r+", project "+i,extra:"Claude installs the CLI, signs this machine in, mounts the project, and registers the sync hooks — pull the latest before every turn, push after edits (stamped with the session that made them), and report file reads to Insights. It asks before anything it changes."}];const s=(n.name||"project").toLowerCase().replace(/[^a-z0-9._-]+/g,"-")||"project";return[{title:"Install the BearDrive CLI",desc:"One static binary. Homebrew on macOS and Linux; releases and `go install` also work.",code:"brew install runbear-io/tap/beardrive"},{title:"Sign in to this hub",desc:"Opens the browser once and stores a device token on this machine — the synced folder itself never holds credentials.",code:"bdrive login "+r},{title:"Mount the project into a local folder",desc:"Run it where you want the files. An existing folder works too — contents merge, and re-running init later (or after moving the folder) just resumes.",code:"mkdir -p ~/"+s+" && cd ~/"+s+` +bdrive init --project `+i},{title:"Connect "+e.label,desc:e.note,code:"bdrive hooks install --agent "+e.hook,extra:e.extra}]}function T6(){try{return localStorage.getItem("bdrive-guide-agent")||"claude"}catch{return"claude"}}function N_({project:e}){const[n,r]=x.useState(T6),i=Vh.find(s=>s.key===n)||Vh[0];return v.jsxs("div",{className:"guide",children:[v.jsx("h1",{className:"in-title",children:e.name}),v.jsx("p",{className:"dl-sub",children:"Mount this project as a folder on any machine and connect your coding agent: files sync both ways in the background, every change is journaled with who made it, and agent reads feed Insights."}),v.jsx("div",{className:"gd-tabs",children:Vh.map(s=>v.jsx("button",{className:"gd-tab"+(s.key===i.key?" active":""),"data-key":s.key,onClick:()=>{r(s.key);try{localStorage.setItem("bdrive-guide-agent",s.key)}catch{}},children:s.label},s.key))}),v.jsxs("div",{className:"gd-body",children:[R6(i,e).map((s,u)=>v.jsxs("div",{className:"gd-step",children:[v.jsxs("div",{className:"gd-step-head",children:[v.jsx("span",{className:"gd-num",children:u+1}),v.jsx("span",{className:"gd-step-title",children:s.title})]}),s.desc&&v.jsx("p",{className:"gd-desc",children:s.desc}),s.code&&v.jsx(O6,{code:s.code}),s.extra&&v.jsx("p",{className:"gd-desc gd-extra",children:s.extra})]},u)),v.jsx("p",{className:"gd-done",children:"That's it — the folder now syncs on its own. Every agent turn starts from the latest state, edits appear here (and on every teammate's mount) within seconds, and what your agents read shows up in Insights."})]})]})}function O6({code:e}){const[n,r]=x.useState("Copy");return v.jsxs("pre",{className:"gd-code",children:[v.jsx("code",{children:e}),v.jsx("button",{className:"gd-copy",onClick:async()=>{r(await Js(e)?"Copied":"Copy failed"),setTimeout(()=>r("Copy"),1400)},children:n})]})}const A6=Kc({invite:Ip().trim().refine(e=>/join\/([0-9a-f]+)/.test(e)||/^[0-9a-f]{8,}$/.test(e),{message:"That doesn't look like an invite link."})}),M6=Kc({name:Ip().trim().min(1,"Give the project a name.").max(60,"Keep it under 60 characters.")});function j6({authEnabled:e,onCreate:n}){const r=lc({resolver:hc(A6),defaultValues:{invite:""}}),i=lc({resolver:hc(M6),defaultValues:{name:""}});return v.jsxs("div",{className:"onboard",children:[v.jsx("h1",{children:"Welcome to BearDrive"}),v.jsx("p",{children:"You're signed in, but you're not part of any project yet."}),e&&v.jsxs("div",{className:"ob-card",children:[v.jsx("h3",{children:"Have an invite link?"}),v.jsx("p",{children:"A teammate can send you a join link. Paste it here:"}),v.jsxs("form",{className:"ob-row",onSubmit:r.handleSubmit(({invite:s})=>{const u=s.match(/join\/([0-9a-f]+)/)||s.match(/^([0-9a-f]{8,})$/);location.href="/join/"+u[1]}),children:[v.jsx("input",{id:"ob-invite",type:"text",placeholder:"https://…/join/…",autoComplete:"off",...r.register("invite")}),v.jsx(Yt,{id:"ob-join",variant:"primary",type:"submit",children:"Join"})]}),r.formState.errors.invite&&v.jsx("p",{className:"field-err",children:r.formState.errors.invite.message})]}),v.jsxs("div",{className:"ob-card",children:[v.jsx("h3",{children:"Or start a new project"}),v.jsx("p",{children:"Create a shared space for your team's files."}),v.jsxs("form",{className:"ob-row",onSubmit:i.handleSubmit(({name:s})=>n(s)),children:[v.jsx("input",{id:"ob-name",type:"text",placeholder:"Project name, e.g. wiki",autoComplete:"off",...i.register("name")}),v.jsx(Yt,{id:"ob-create",variant:"primary",type:"submit",children:"Create"})]}),i.formState.errors.name&&v.jsx("p",{className:"field-err",children:i.formState.errors.name.message})]})]})}function z6(e,n=!0){const r=Mn({queryKey:["tree",e],queryFn:()=>Vn(e+"tree"),enabled:n,refetchInterval:15e3}),i=x.useMemo(()=>{const s=[],u=new Map,c=d=>{for(const h of d.children||[])h.dir?(u.set(h.path,h),c(h)):s.push(h)};return r.data&&c(r.data),{flatFiles:s,dirIndex:u}},[r.data]);return{tree:r.data,...i,loaded:!!r.data}}function D6(e,n){return Mn({queryKey:["heat",e],queryFn:()=>Vn(e+"heat?days=30"),enabled:n,staleTime:6e4,refetchInterval:6e4}).data?.entries??null}function N6(e,n,r){return Mn({queryKey:["history",e,"prefix",n,20],queryFn:()=>Vn(e+"history?prefix="+encodeURIComponent(n)+"&n=20"),enabled:r,staleTime:15e3}).data?.entries??null}function _S(e,n,r){if(!e)return null;if(!r)return e[n]||null;const i={human:0,agent:0,share:0};for(const[s,u]of Object.entries(e))s.startsWith(n+"/")&&(i.human+=u.human||0,i.agent+=u.agent||0,i.share+=u.share||0);return i.human||i.agent||i.share?i:null}function Ws(e){return(e.human||0)+(e.agent||0)+(e.share||0)}function Zu(e){const n=Ws(e);if(!n)return"";let r=n+(n===1?" read":" reads");return e.agent&&(r+=" ("+e.agent+" agent)"),r}function k6(e){const n=Ws(e);return n?n<3?1:n<10?2:n<30?3:4:0}function L6(e,n,r){const i=new Array(e);return new Proxy(i,{get(s,u,c){if(typeof u=="string"){const d=u.charCodeAt(0);if(d>=48&&d<=57){const h=+u;if(Number.isInteger(h)&&h>=0&&hi[y]!==m))&&(i=d,s=n(...d),r?.onChange&&!(u&&r.skipInitialOnChange)&&r.onChange(s),u=!1),s}return c.updateDeps=d=>{i=d},c}function CS(e,n){if(e===void 0)throw new Error("Unexpected undefined");return e}const I6=(e,n)=>Math.abs(e-n)<1.01,$6=(e,n,r)=>{let i;return function(...s){e.clearTimeout(i),i=e.setTimeout(()=>n.apply(this,s),r)}};let zs;const Fh=()=>{if(zs!==void 0)return zs;if(typeof navigator>"u")return zs=!1;if(/iP(hone|od|ad)/.test(navigator.userAgent))return zs=!0;const e=navigator.maxTouchPoints;return zs=navigator.platform==="MacIntel"&&e!==void 0&&e>0},ES=e=>{const{offsetWidth:n,offsetHeight:r}=e;return{width:n,height:r}},V6=e=>e,F6=e=>{const n=Math.max(e.startIndex-e.overscan,0),i=Math.min(e.endIndex+e.overscan,e.count-1)-n+1,s=new Array(i);for(let u=0;u{const r=e.scrollElement;if(!r)return;const i=e.targetWindow;if(!i)return;const s=c=>{const{width:d,height:h}=c;n({width:Math.round(d),height:Math.round(h)})};if(s(ES(r)),!i.ResizeObserver)return()=>{};const u=new i.ResizeObserver(c=>{const d=()=>{const h=c[0];if(h?.borderBoxSize){const m=h.borderBoxSize[0];if(m){s({width:m.inlineSize,height:m.blockSize});return}}s(ES(r))};e.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(d):d()});return u.observe(r,{box:"border-box"}),()=>{u.unobserve(r)}},pc={passive:!0},H6=typeof window>"u"?!0:"onscrollend"in window,P6=(e,n,r)=>{const i=e.scrollElement;if(!i)return;const s=e.targetWindow;if(!s)return;const u=e.options.useScrollendEvent&&H6;let c=0;const d=u?null:$6(s,()=>n(c,!1),e.options.isScrollingResetDelay),h=g=>()=>{c=r(i),d?.(),n(c,g)},m=h(!0),y=h(!1);return i.addEventListener("scroll",m,pc),u&&i.addEventListener("scrollend",y,pc),()=>{i.removeEventListener("scroll",m),u&&i.removeEventListener("scrollend",y)}},B6=(e,n)=>P6(e,n,r=>{const{horizontal:i,isRtl:s}=e.options;return i?r.scrollLeft*(s&&-1||1):r.scrollTop}),q6=(e,n,r)=>{if(r.options.useCachedMeasurements){const i=r.indexFromElement(e),s=r.options.getItemKey(i);return r.itemSizeCache.get(s)??r.options.estimateSize(i)}if(n?.borderBoxSize){const i=n.borderBoxSize[0];if(i)return Math.round(i[r.options.horizontal?"inlineSize":"blockSize"])}if(!n){const i=r.indexFromElement(e),s=r.options.getItemKey(i),u=r.itemSizeCache.get(s);if(u!==void 0)return u}return e[r.options.horizontal?"offsetWidth":"offsetHeight"]},G6=(e,{adjustments:n=0,behavior:r},i)=>{var s,u;(u=(s=i.scrollElement)==null?void 0:s.scrollTo)==null||u.call(s,{[i.options.horizontal?"left":"top"]:e+n,behavior:r})},Z6=G6;class K6{constructor(n){this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.isScrolling=!1,this.scrollState=null,this.measurementsCache=[],this._flatMeasurements=null,this.itemSizeCache=new Map,this.itemSizeCacheVersion=0,this.laneAssignments=new Map,this.pendingMin=null,this.prevLanes=void 0,this.lanesChangedFlag=!1,this.lanesSettling=!1,this.pendingScrollAnchor=null,this.scrollRect=null,this.scrollOffset=null,this.scrollDirection=null,this.scrollAdjustments=0,this._iosDeferredAdjustment=0,this._iosTouching=!1,this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._intendedScrollOffset=null,this.elementsCache=new Map,this.now=()=>{var r,i,s;return((s=(i=(r=this.targetWindow)==null?void 0:r.performance)==null?void 0:i.now)==null?void 0:s.call(i))??Date.now()},this.observer=(()=>{let r=null;const i=()=>r||(!this.targetWindow||!this.targetWindow.ResizeObserver?null:r=new this.targetWindow.ResizeObserver(s=>{s.forEach(u=>{const c=()=>{const d=u.target,h=this.indexFromElement(d);if(!d.isConnected){this.observer.unobserve(d);for(const[m,y]of this.elementsCache)if(y===d){this.elementsCache.delete(m);break}return}this.shouldMeasureDuringScroll(h)&&this.resizeItem(h,this.options.measureElement(d,u,this))};this.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(c):c()})}));return{disconnect:()=>{var s;(s=i())==null||s.disconnect(),r=null},observe:s=>{var u;return(u=i())==null?void 0:u.observe(s,{box:"border-box"})},unobserve:s=>{var u;return(u=i())==null?void 0:u.unobserve(s)}}})(),this.range=null,this.setOptions=r=>{var i,s;const u={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:V6,rangeExtractor:F6,onChange:()=>{},measureElement:q6,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:"data-index",initialMeasurementsCache:[],lanes:1,anchorTo:"start",followOnAppend:!1,scrollEndThreshold:1,isScrollingResetDelay:150,enabled:!0,isRtl:!1,useScrollendEvent:!1,useAnimationFrameWithResizeObserver:!1,laneAssignmentMode:"estimate",useCachedMeasurements:!1};for(const b in r){const S=r[b];S!==void 0&&(u[b]=S)}const c=this.options;let d=null,h=null,m=!1;if(c!==void 0&&c.enabled&&u.enabled&&u.anchorTo==="end"&&this.scrollElement!==null){const b=c.count,S=u.count,_=this.getMeasurements(),C=b>0?((i=_[0])==null?void 0:i.key)??c.getItemKey(0):null,E=b>0?((s=_[b-1])==null?void 0:s.key)??c.getItemKey(b-1):null;if(S!==b||b>0&&S>0&&(u.getItemKey(0)!==C||u.getItemKey(S-1)!==E)){m=!0;const A=b>0?this.getVirtualItemForOffset(this.getScrollOffset())??_[0]:null;A&&(d=[A.key,this.getScrollOffset()-A.start]);const k=u.followOnAppend===!0?"auto":u.followOnAppend||null;k&&S>b&&this.isAtEnd(c.scrollEndThreshold)&&(b===0||u.getItemKey(S-1)!==E)&&(h=k)}}this.options=u,m&&(this.pendingMin=0,this.itemSizeCacheVersion++);let y=!1,g=0;if(d&&this.scrollOffset!==null){const[b,S]=d,_=this.getMeasurements(),{count:C,getItemKey:E}=this.options;let T=0;for(;T{var i,s;(s=(i=this.options).onChange)==null||s.call(i,this,r)},this.maybeNotify=ba(()=>(this.calculateRange(),[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]),r=>{this.notify(r)},{key:!1,debug:()=>this.options.debug,initialDeps:[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]}),this.cleanup=()=>{this.unsubs.filter(Boolean).forEach(r=>r()),this.unsubs=[],this.observer.disconnect(),this.rafId!=null&&this.targetWindow&&(this.targetWindow.cancelAnimationFrame(this.rafId),this.rafId=null),this.scrollState=null,this._iosDeferredAdjustment=0,this._iosTouching=!1,this._iosJustTouchEnded=!1,this.scrollElement=null,this.targetWindow=null},this._didMount=()=>()=>{this.cleanup()},this._willUpdate=()=>{var r;const i=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==i){if(this.cleanup(),!i){this.maybeNotify();return}if(this.scrollElement=i,this.scrollElement&&"ownerDocument"in this.scrollElement?this.targetWindow=this.scrollElement.ownerDocument.defaultView:this.targetWindow=((r=this.scrollElement)==null?void 0:r.window)??null,this.elementsCache.forEach(u=>{this.observer.observe(u)}),this.unsubs.push(this.options.observeElementRect(this,u=>{this.scrollRect=u,this.maybeNotify()})),this.unsubs.push(this.options.observeElementOffset(this,(u,c)=>{if(c&&this._intendedScrollOffset===null&&u===this.scrollOffset)return;this._intendedScrollOffset!==null&&Math.abs(u-this._intendedScrollOffset)<1.5&&(u=this._intendedScrollOffset),this._intendedScrollOffset=null,this.scrollAdjustments=0;const d=this.getScrollOffset();this.scrollDirection=c?d===u?this.scrollDirection:d{this._iosTouching=!0,this._iosJustTouchEnded=!1,this._iosTouchEndTimerId!==null&&this.targetWindow!=null&&(this.targetWindow.clearTimeout(this._iosTouchEndTimerId),this._iosTouchEndTimerId=null)},d=()=>{this._iosTouching=!1,!(!Fh()||this.targetWindow==null)&&(this._iosJustTouchEnded=!0,this._iosTouchEndTimerId=this.targetWindow.setTimeout(()=>{this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._flushIosDeferredIfReady()},150))};u.addEventListener("touchstart",c,pc),u.addEventListener("touchend",d,pc),this.unsubs.push(()=>{u.removeEventListener("touchstart",c),u.removeEventListener("touchend",d),this._iosTouchEndTimerId!==null&&this.targetWindow!=null&&(this.targetWindow.clearTimeout(this._iosTouchEndTimerId),this._iosTouchEndTimerId=null)})}this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0})}const s=this.pendingScrollAnchor;if(this.pendingScrollAnchor=null,s&&this.scrollElement&&this.options.enabled){const[u,c,d,h]=s;u!==null&&!d&&(Fh()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded)?h!==0&&(this._iosDeferredAdjustment+=h):this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0})),d&&this.scrollToEnd({behavior:d})}},this._flushIosDeferredIfReady=()=>{if(this._iosDeferredAdjustment===0||this.isScrolling||this._iosTouching||this._iosJustTouchEnded)return;const r=this.getScrollOffset(),i=this.getMaxScrollOffset();if(r<0||r>i)return;const s=this._iosDeferredAdjustment;this._iosDeferredAdjustment=0,this._scrollToOffset(r,{adjustments:this.scrollAdjustments+=s,behavior:void 0})},this.rafId=null,this.getSize=()=>this.options.enabled?(this.scrollRect=this.scrollRect??this.options.initialRect,this.scrollRect[this.options.horizontal?"width":"height"]):(this.scrollRect=null,0),this.getScrollOffset=()=>this.options.enabled?(this.scrollOffset=this.scrollOffset??(typeof this.options.initialOffset=="function"?this.options.initialOffset():this.options.initialOffset),this.scrollOffset):(this.scrollOffset=null,0),this.getMeasurementOptions=ba(()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled,this.options.lanes,this.options.laneAssignmentMode,this.options.gap],(r,i,s,u,c,d,h,m)=>(this.prevLanes!==void 0&&this.prevLanes!==d&&(this.lanesChangedFlag=!0),this.prevLanes=d,this.pendingMin=null,{count:r,paddingStart:i,scrollMargin:s,getItemKey:u,enabled:c,lanes:d,laneAssignmentMode:h,gap:m}),{key:!1}),this.getMeasurements=ba(()=>[this.getMeasurementOptions(),this.itemSizeCacheVersion],({count:r,paddingStart:i,scrollMargin:s,getItemKey:u,enabled:c,lanes:d,laneAssignmentMode:h,gap:m},y)=>{const g=this.itemSizeCache;if(!c)return this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),[];if(this.laneAssignments.size>r)for(const T of this.laneAssignments.keys())T>=r&&this.laneAssignments.delete(T);this.lanesChangedFlag&&(this.lanesChangedFlag=!1,this.lanesSettling=!0,this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),this.pendingMin=null),this.measurementsCache.length===0&&!this.lanesSettling&&(this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach(T=>{this.itemSizeCache.set(T.key,T.size)}));const b=this.lanesSettling?0:this.pendingMin??0;if(this.pendingMin=null,this.lanesSettling&&this.measurementsCache.length===r&&(this.lanesSettling=!1),d===1){const T=r*2;let O=this._flatMeasurements;if(!O||O.length0&&L.set(O.subarray(0,b*2)),O=L,this._flatMeasurements=O}let A;if(b===0)A=i+s;else{const L=b-1;A=O[L*2]+O[L*2+1]+m}for(let L=b;L1){k=A;const ge=_[k],de=ge!==void 0?S[ge]:void 0;L=de?de.end+m:i+s}else if(E===d){let ge=0,de=C[0],le=_[0];for(let ae=1;aethis.options.debug}),this.calculateRange=ba(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(r,i,s,u)=>r.length===0||i===0?(this.range=null,null):(this.range=Q6(r,i,s,u,u===1&&this._flatMeasurements!=null?this._flatMeasurements:null),this.range),{key:!1,debug:()=>this.options.debug}),this.getVirtualIndexes=ba(()=>{let r=null,i=null;const s=this.calculateRange();return s&&(r=s.startIndex,i=s.endIndex),this.maybeNotify.updateDeps([this.isScrolling,r,i]),[this.options.rangeExtractor,this.options.overscan,this.options.count,r,i]},(r,i,s,u,c)=>u===null||c===null?[]:r({startIndex:u,endIndex:c,overscan:i,count:s}),{key:!1,debug:()=>this.options.debug}),this.indexFromElement=r=>{const i=this.options.indexAttribute,s=r.getAttribute(i);return s?parseInt(s,10):(console.warn(`Missing attribute name '${i}={index}' on measured element.`),-1)},this.shouldMeasureDuringScroll=r=>{var i;if(!this.scrollState||this.scrollState.behavior!=="smooth")return!0;const s=this.scrollState.index??((i=this.getVirtualItemForOffset(this.scrollState.lastTargetOffset))==null?void 0:i.index);if(s!==void 0&&this.range){const u=Math.max(this.options.overscan,Math.ceil((this.range.endIndex-this.range.startIndex)/2)),c=Math.max(0,s-u),d=Math.min(this.options.count-1,s+u);return r>=c&&r<=d}return!0},this.measureElement=r=>{if(!r){this.elementsCache.forEach((c,d)=>{c.isConnected||(this.observer.unobserve(c),this.elementsCache.delete(d))});return}const i=this.indexFromElement(r),s=this.options.getItemKey(i),u=this.elementsCache.get(s);u!==r&&(u&&this.observer.unobserve(u),this.observer.observe(r),this.elementsCache.set(s,r)),(!this.isScrolling||this.scrollState)&&this.shouldMeasureDuringScroll(i)&&this.resizeItem(i,this.options.measureElement(r,void 0,this))},this.resizeItem=(r,i)=>{var s,u;if(r<0||r>=this.options.count)return;let c,d,h;const m=this._flatMeasurements;if(this.options.lanes===1&&m!==null)h=this.options.getItemKey(r),d=m[r*2],c=m[r*2+1];else{const b=this.measurementsCache[r];if(!b)return;h=b.key,d=b.start,c=b.size}const y=this.itemSizeCache.get(h)??c,g=i-y;if(g!==0){const b=this.options.anchorTo==="end"&&((s=this.scrollState)==null?void 0:s.behavior)!=="smooth"&&this.getVirtualDistanceFromEnd()<=this.options.scrollEndThreshold,S=b?this.getTotalSize():0,_=((u=this.scrollState)==null?void 0:u.behavior)!=="smooth"&&(this.shouldAdjustScrollPositionOnItemSizeChange!==void 0?this.shouldAdjustScrollPositionOnItemSizeChange(this.measurementsCache[r]??{index:r,key:h,start:d,size:c,end:d+c,lane:0},g,this):d[this.getVirtualIndexes(),this.getMeasurements()],(r,i)=>{const s=[];for(let u=0,c=r.length;uthis.options.debug}),this.getVirtualItemForOffset=r=>{const i=this.getMeasurements();if(i.length===0)return;const s=this._flatMeasurements,u=this.options.lanes===1&&s!=null,c=k_(0,i.length-1,u?d=>s[d*2]:d=>CS(i[d]).start,r);return CS(i[c])},this.getMaxScrollOffset=()=>{if(!this.scrollElement)return 0;if("scrollHeight"in this.scrollElement)return this.options.horizontal?this.scrollElement.scrollWidth-this.scrollElement.clientWidth:this.scrollElement.scrollHeight-this.scrollElement.clientHeight;{const r=this.scrollElement.document.documentElement;return this.options.horizontal?r.scrollWidth-this.scrollElement.innerWidth:r.scrollHeight-this.scrollElement.innerHeight}},this.getVirtualDistanceFromEnd=()=>Math.max(this.getTotalSize()-this.getSize()-this.getScrollOffset(),0),this.getDistanceFromEnd=()=>Math.max(this.getMaxScrollOffset()-this.getScrollOffset(),0),this.isAtEnd=(r=this.options.scrollEndThreshold)=>this.getDistanceFromEnd()<=r,this.getOffsetForAlignment=(r,i,s=0)=>{if(!this.scrollElement)return 0;const u=this.getSize(),c=this.getScrollOffset();i==="auto"&&(i=r>=c+u?"end":"start"),i==="center"?r+=(s-u)/2:i==="end"&&(r-=u);const d=this.getMaxScrollOffset();return Math.max(Math.min(d,r),0)},this.getOffsetForIndex=(r,i="auto")=>{r=Math.max(0,Math.min(r,this.options.count-1));const s=this.getSize(),u=this.getScrollOffset(),c=this.measurementsCache[r];if(!c)return;if(i==="auto")if(c.end>=u+s-this.options.scrollPaddingEnd)i="end";else if(c.start<=u+this.options.scrollPaddingStart)i="start";else return[u,i];if(i==="end"&&r===this.options.count-1)return[this.getMaxScrollOffset(),i];const d=i==="end"?c.end+this.options.scrollPaddingEnd:c.start-this.options.scrollPaddingStart;return[this.getOffsetForAlignment(d,i,c.size),i]},this.scrollToOffset=(r,{align:i="start",behavior:s="auto"}={})=>{const u=this.getOffsetForAlignment(r,i),c=this.now();this.scrollState={index:null,align:i,behavior:s,startedAt:c,lastTargetOffset:u,stableFrames:0},this._scrollToOffset(u,{adjustments:void 0,behavior:s}),this.scheduleScrollReconcile()},this.scrollToIndex=(r,{align:i="auto",behavior:s="auto"}={})=>{r=Math.max(0,Math.min(r,this.options.count-1));const u=this.getOffsetForIndex(r,i);if(!u)return;const[c,d]=u,h=this.now();this.scrollState={index:r,align:d,behavior:s,startedAt:h,lastTargetOffset:c,stableFrames:0},this._scrollToOffset(c,{adjustments:void 0,behavior:s}),this.scheduleScrollReconcile()},this.scrollBy=(r,{behavior:i="auto"}={})=>{const s=this.getScrollOffset()+r,u=this.now();this.scrollState={index:null,align:"start",behavior:i,startedAt:u,lastTargetOffset:s,stableFrames:0},this._scrollToOffset(s,{adjustments:void 0,behavior:i}),this.scheduleScrollReconcile()},this.scrollToEnd=({behavior:r="auto"}={})=>{if(this.options.count>0){this.scrollToIndex(this.options.count-1,{align:"end",behavior:r});return}this.scrollToOffset(Math.max(this.getTotalSize()-this.getSize(),0),{behavior:r})},this.getTotalSize=()=>{var r;const i=this.getMeasurements();let s;if(i.length===0)s=this.options.paddingStart;else if(this.options.lanes===1){const u=i.length-1,c=this._flatMeasurements;c!=null?s=c[u*2]+c[u*2+1]:s=((r=i[u])==null?void 0:r.end)??0}else{const u=Array(this.options.lanes).fill(null);let c=i.length-1;for(;c>=0&&u.some(d=>d===null);){const d=i[c];u[d.lane]===null&&(u[d.lane]=d.end),c--}s=Math.max(...u.filter(d=>d!==null))}return Math.max(s-this.options.scrollMargin+this.options.paddingEnd,0)},this.takeSnapshot=()=>{const r=[];if(this.itemSizeCache.size===0)return r;const i=this.getMeasurements();for(const s of i)s&&this.itemSizeCache.has(s.key)&&r.push({index:s.index,key:s.key,start:s.start,size:s.size,end:s.end,lane:s.lane});return r},this._scrollToOffset=(r,{adjustments:i,behavior:s})=>{this._intendedScrollOffset=r+(i??0),this.options.scrollToFn(r,{behavior:s,adjustments:i},this)},this.measure=()=>{this.pendingMin=null,this.itemSizeCache.clear(),this.laneAssignments.clear(),this.itemSizeCacheVersion++,this.notify(!1)},this.setOptions(n)}applyScrollAdjustment(n,r){n!==0&&(Fh()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded)?this._iosDeferredAdjustment+=n:(this._scrollToOffset(this.getScrollOffset(),{adjustments:this.scrollAdjustments+=n,behavior:r}),this.scrollOffset!==null&&(this.scrollOffset+=this.scrollAdjustments,this.scrollAdjustments=0)))}scheduleScrollReconcile(){if(!this.targetWindow){this.scrollState=null;return}this.rafId==null&&(this.rafId=this.targetWindow.requestAnimationFrame(()=>{this.rafId=null,this.reconcileScroll()}))}reconcileScroll(){if(!this.scrollState||!this.scrollElement)return;if(this.now()-this.scrollState.startedAt>5e3){this.scrollState=null;return}const i=this.scrollState.index!=null?this.getOffsetForIndex(this.scrollState.index,this.scrollState.align):void 0,s=i?i[0]:this.scrollState.lastTargetOffset,u=1,c=s!==this.scrollState.lastTargetOffset;if(!c&&I6(s,this.getScrollOffset())){if(this.scrollState.stableFrames++,this.scrollState.stableFrames>=u){this.getScrollOffset()!==s&&this._scrollToOffset(s,{adjustments:void 0,behavior:"auto"}),this.scrollState=null;return}}else if(this.scrollState.stableFrames=0,c){const d=this.getSize()||600,h=Math.abs(s-this.getScrollOffset()),m=this.scrollState.behavior==="smooth"&&h>d;this.scrollState.lastTargetOffset=s,m||(this.scrollState.behavior="auto"),this._scrollToOffset(s,{adjustments:void 0,behavior:m?"smooth":"auto"})}this.scheduleScrollReconcile()}}const k_=(e,n,r,i)=>{for(;e<=n;){const s=(e+n)/2|0,u=r(s);if(ui)n=s-1;else return s}return e>0?e-1:0};function Y6(e,n,r){let i=0;for(;i<=n;){const s=(i+n)/2|0,u=e[s*2];if(ur)n=s-1;else return s}return i>0?i-1:0}function Q6(e,n,r,i,s){const u=e.length-1;if(e.length<=i)return{startIndex:0,endIndex:u};if(i===1&&s!==null){const m=Y6(s,u,r);let y=m;const g=r+n;for(;ye[m].start,r),h=d;if(i===1)for(;h1){const m=Array(i).fill(0);for(;hg=0&&y.some(g=>g>=r);){const g=e[d];y[g.lane]=g.start,d--}d=Math.max(0,d-d%i),h=Math.min(u,h+(i-1-h%i))}return{startIndex:d,endIndex:h}}const Uh=typeof document<"u"?x.useLayoutEffect:x.useEffect;function X6({useFlushSync:e=!0,directDomUpdates:n=!1,directDomUpdatesMode:r="transform",...i}){const s=x.useReducer(m=>m+1,0)[1],u=x.useRef({enabled:n,mode:r,container:null,lastSize:null,lastPositions:new WeakMap,prevRange:null});u.current.enabled=n,u.current.mode=r;const c=m=>{const y=u.current;if(!y.enabled||!y.container)return;const g=m.getTotalSize();if(g!==y.lastSize){y.lastSize=g;const T=m.options.horizontal?"width":"height";y.container.style[T]=`${g}px`}const b=!!m.options.horizontal,S=y.mode==="transform",_=b?"left":"top",C=m.options.scrollMargin,E=m.getVirtualItems();for(const T of E){const O=T.start-C,A=m.elementsCache.get(T.key);A&&y.lastPositions.get(A)!==O&&(y.lastPositions.set(A,O),S?A.style.transform=b?`translate3d(${O}px, 0, 0)`:`translate3d(0, ${O}px, 0)`:A.style[_]=`${O}px`)}},d={...i,onChange:(m,y)=>{var g;const b=u.current;let S=!0;if(b.enabled){c(m);const _=m.range,C=b.prevRange;S=!C||C.isScrolling!==m.isScrolling||C.startIndex!==_?.startIndex||C.endIndex!==_?.endIndex,S&&(b.prevRange=_?{startIndex:_.startIndex,endIndex:_.endIndex,isScrolling:m.isScrolling}:null)}S&&(e&&y?Si.flushSync(s):s()),(g=i.onChange)==null||g.call(i,m,y)}},[h]=x.useState(()=>{const m=new K6(d);return Object.assign(m,{containerRef:y=>{const g=u.current;if(g.container=y,g.lastSize=null,y&&g.enabled){const b=m.getTotalSize();g.lastSize=b;const S=m.options.horizontal?"width":"height";y.style[S]=`${b}px`}}})});return h.setOptions(d),Uh(()=>h._didMount(),[]),Uh(()=>h._willUpdate()),Uh(()=>{c(h)}),h}function J6(e){return X6({observeElementRect:U6,observeElementOffset:B6,scrollToFn:Z6,...e})}function W6(e,n){const r=[],i=(s,u)=>{for(const c of s)r.push({node:c,depth:u}),c.dir&&n.has(c.path)&&i(c.children||[],u+1)};return i(e?.children||[],0),r}function eI(e){const{root:n,expanded:r,onToggle:i,currentPath:s,listingShowing:u,onOpen:c}=e,d=x.useRef(null),h=x.useMemo(()=>W6(n,r),[n,r]),m=J6({count:h.length,getScrollElement:()=>d.current,estimateSize:()=>window.matchMedia("(max-width: 768px)").matches?44:28,overscan:12,getItemKey:y=>h[y].node.path});return x.useEffect(()=>{if(!s)return;const y=h.findIndex(g=>g.node.path===s);y>=0&&m.scrollToIndex(y,{align:"auto"})},[s,h]),v.jsx("nav",{id:"tree","aria-label":"Files",ref:d,children:v.jsx("div",{style:{height:m.getTotalSize(),position:"relative"},children:m.getVirtualItems().map(y=>{const{node:g,depth:b}=h[y.index],S=g.dir?r.has(g.path):!1,_=()=>{if(g.dir&&s===g.path&&u){i(g.path);return}c(g.path),g.dir||cr()};return v.jsxs("div",{className:"row"+(s===g.path?" active":"")+(g.dir&&!S?" collapsed":""),"data-path":g.path,tabIndex:0,role:"button",title:g.name,"aria-expanded":g.dir?S:void 0,style:{position:"absolute",top:0,left:0,right:0,transform:`translateY(${y.start}px)`,paddingLeft:8+b*13},onClick:_,onKeyDown:C=>{(C.key==="Enter"||C.key===" ")&&(C.preventDefault(),_())},children:[Array.from({length:b},(C,E)=>v.jsx("span",{className:"tguide",style:{left:8+E*13+5},"aria-hidden":"true"},E)),v.jsx("span",{className:"chev",onClick:C=>{g.dir&&(C.stopPropagation(),i(g.path))},children:v.jsx(Kt,{name:"chevd"})}),v.jsx("span",{className:"ticon",children:v.jsx(Kt,{name:g.dir?"folder":"doc"})}),v.jsx("span",{className:"label",children:g.name})]},y.key)})})})}function tI(e){const n=e.split("/"),r=[];let i="";for(let s=0;s{i=i?i+"/"+s:s;const c=i,d=u===r.length-1;return v.jsxs("span",{children:[u>0&&v.jsx("span",{className:"crumb-sep",children:"/"}),d?v.jsx("span",{children:s}):v.jsx("span",{className:"crumb-seg",title:c,onClick:()=>n(c),children:s})]},c)})})}const rI={add:"plus",edit:"edit",delete:"x"},oI={add:"added",edit:"edited",delete:"deleted"};function L_({entry:e,onOpen:n}){const[r,i]=x.useState(!1),s=e.kind==="put"?"edit":e.kind,u=e.user_name?`${e.user_name} <${e.user}>`:e.user||e.author||"unknown",c=[e.device.name||e.device.id,e.device.os,e.device.ip].filter(Boolean).join(" · "),d=s!=="delete",h=m=>{m.target.tagName!=="A"&&d&&n(e.path)};return v.jsxs("div",{className:"hentry "+s+(d?" clickable":""),tabIndex:d?0:void 0,role:d?"button":void 0,onClick:h,onKeyDown:m=>{d&&(m.key==="Enter"||m.key===" ")&&(m.preventDefault(),n(e.path))},children:[v.jsxs("div",{className:"hline",children:[v.jsx("span",{className:"hkind",children:v.jsx(Kt,{name:rI[s]||"dot"})}),v.jsx("span",{className:"hpath",children:e.path}),v.jsx("span",{className:"htag",children:oI[s]||s}),v.jsx("span",{className:"htime",children:new Date(e.time).toLocaleString()})]}),v.jsxs("div",{className:"hmeta",children:[v.jsx("span",{className:"hwho",children:u}),v.jsx("span",{className:"hdev",children:c}),v.jsx("span",{className:"hsize",children:e.size?R_(e.size):""})]}),e.note&&v.jsx("div",{className:"hnote"+(r?" open":""),tabIndex:0,role:"button",title:r?"Collapse note":"Show full note","aria-expanded":r,onClick:m=>{m.stopPropagation(),m.target.tagName!=="A"&&i(!r)},onKeyDown:m=>{(m.key==="Enter"||m.key===" ")&&(m.preventDefault(),m.stopPropagation(),i(!r))},children:e.note.split(/(https?:\/\/\S+)/).map((m,y)=>/^https?:\/\//.test(m)?v.jsx("a",{href:m,target:"_blank",rel:"noopener",children:m},y):m)})]})}function iI(e){const{node:n,heatMap:r,onOpen:i}=e,s=(n.children||[]).slice().sort((m,y)=>Number(y.dir||!1)-Number(m.dir||!1)||m.name.localeCompare(y.name)),u=s.filter(m=>m.dir).length,c=s.length-u,d=[];u&&d.push(u+(u===1?" folder":" folders")),c&&d.push(c+(c===1?" file":" files"));const h=_S(r,n.path,!0);return h&&d.push(Zu(h)+" in 30 days"),v.jsxs("div",{className:"dirlist",children:[v.jsxs("h1",{className:"dl-title",children:[v.jsx("span",{className:"dl-title-icon",children:v.jsx(Kt,{name:"folder"})}),v.jsx("span",{children:n.name})]}),v.jsx("p",{className:"dl-sub",children:d.join(" · ")||"Empty folder"}),s.length===0?v.jsx("div",{className:"dl-empty",children:"Nothing in this folder yet."}):v.jsx("div",{className:"dl-items",children:s.map(m=>{let y="";if(m.dir){const b=(m.children||[]).length;y=b+(b===1?" item":" items")}else y=[m.size?R_(m.size):"",m.time?new Date(m.time).toLocaleDateString():""].filter(Boolean).join(" · ");const g=_S(r,m.path,!!m.dir);return g&&(y=Zu(g)+(y?" · "+y:"")),v.jsxs("div",{className:"dl-row",tabIndex:0,role:"button",title:m.path,onClick:()=>i(m.path),onKeyDown:b=>{(b.key==="Enter"||b.key===" ")&&(b.preventDefault(),i(m.path))},children:[v.jsx("span",{className:"ticon",children:v.jsx(Kt,{name:m.dir?"folder":"doc"})}),v.jsx("span",{className:"dl-name",children:m.name}),g&&v.jsx("span",{className:"heatdot lvl"+k6(g),title:Zu(g)+" in 30 days"}),v.jsx("span",{className:"dl-meta",children:y})]},m.path)})}),e.hub&&v.jsx(aI,{apiBase:e.apiBase,prefix:n.path+"/",onOpen:i,onFullHistory:()=>e.onFullHistory(n.path+"/"),onRendered:e.onRendered})]})}function aI(e){const n=N6(e.apiBase,e.prefix,!0),{onRendered:r}=e;return x.useEffect(()=>{n&&n.length&&r&&r()},[n,r]),!n||n.length===0?null:v.jsxs("div",{className:"dl-history",children:[v.jsx("h3",{className:"dl-h3",children:"Recent changes"}),v.jsx("div",{className:"history dl-hlist",children:n.map((i,s)=>v.jsx(L_,{entry:i,onOpen:e.onOpen},s))}),v.jsx("button",{className:"ai-btn dl-more",onClick:e.onFullHistory,children:"Full history"})]})}function sI(e){const{apiBase:n,path:r,onMeta:i}=e,s=n+"file?path="+encodeURIComponent(r);return x.useEffect(()=>()=>i(""),[r,i]),o6.test(r)?v.jsx(lI,{...e}):a6.test(r)?v.jsx("iframe",{className:"htmlview",sandbox:"allow-scripts",src:s,title:r,onLoad:e.onRendered}):i6.test(r)?v.jsx(dI,{src:s,alt:r,onRendered:e.onRendered}):s6.test(r)?v.jsx(fI,{...e,fileURL:s}):v.jsxs("div",{className:"filecard",children:[v.jsx("div",{className:"name",children:r.split("/").pop()}),v.jsx("p",{children:"No preview for this file type."}),v.jsx("a",{className:"btn",download:!0,href:n+"download?path="+encodeURIComponent(r),children:"Download"})]})}function lI(e){const{apiBase:n,path:r,heatMap:i,flatFiles:s,onOpenFile:u,onMeta:c,onRendered:d}=e,{data:h,error:m}=Mn({queryKey:["render",n,r],queryFn:()=>Vn(n+"render?path="+encodeURIComponent(r))}),y=x.useMemo(()=>h?cI(h.html,r,n):"",[h,r,n]);return x.useEffect(()=>{if(!h)return;const g=[];h.author&&g.push(h.author+(h.device?" on "+h.device:"")),h.time&&g.push(new Date(h.time).toLocaleString());const b=i&&i[h.path];b&&Ws(b)&&g.push(Zu(b)+" / 30d"),c(g.join(" · ")),d?.()},[h,i,c,d]),m?v.jsxs("div",{className:"empty",children:["Could not load file: ",m.message]}):h?v.jsx("div",{dangerouslySetInnerHTML:{__html:y},onClick:g=>uI(g,r,s,u)}):null}function uI(e,n,r,i){const s=e.target.closest("a");if(!s||!e.currentTarget.contains(s))return;const u=s.getAttribute("href")||"",c=n.includes("/")?n.slice(0,n.lastIndexOf("/")):"";u.startsWith("wiki:")?(e.preventDefault(),hI(decodeURIComponent(u.slice(5)),r,i)):/^([a-z]+:|\/|#)/i.test(u)||(e.preventDefault(),i(T_(c,decodeURIComponent(u))))}function cI(e,n,r){const i=n.includes("/")?n.slice(0,n.lastIndexOf("/")):"",s=c=>r+"file?path="+encodeURIComponent(c),u=new DOMParser().parseFromString(e,"text/html");for(const c of u.querySelectorAll("img")){const d=c.getAttribute("src")||"";/^([a-z]+:|\/)/i.test(d)||c.setAttribute("src",s(T_(i,d)))}for(const c of u.querySelectorAll("a")){const d=c.getAttribute("href")||"";/^https?:/i.test(d)&&(c.setAttribute("target","_blank"),c.setAttribute("rel","noopener"))}return u.body.innerHTML}function dI({src:e,alt:n,onRendered:r}){return v.jsx("img",{src:e,alt:n,onLoad:r})}function fI(e){const{path:n,fileURL:r,onRendered:i}=e,{data:s,error:u}=Mn({queryKey:["text",r],queryFn:async()=>{const c=await fetch(r);if(!c.ok)throw new Error(await c.text());return c.text()}});return x.useEffect(()=>{s!=null&&i?.()},[s,i]),u?v.jsxs("div",{className:"empty",children:["Could not load file: ",u.message]}):s==null?null:v.jsx("pre",{className:"plain",children:s},n)}function hI(e,n,r){const i=e.toLowerCase(),s=n.find(u=>u.path.toLowerCase()===i||u.path.toLowerCase()===i+".md")||n.find(u=>{const c=u.name.toLowerCase();return c===i||c===i+".md"});s&&r(s.path)}function mI({url:e,copied:n,onClose:r}){const i=e.split("/s/")[1];return v.jsx(yp,{open:!0,onOpenChange:s=>!s&&r(),children:v.jsxs(bp,{className:"modal",showCloseButton:!1,children:[v.jsx(Lc,{asChild:!0,children:v.jsx("h3",{children:"Public link created"})}),v.jsxs("p",{children:[v.jsx("b",{children:"Anyone with this link can view this file"})," — no account needed. It always shows the latest version until you revoke it."]}),v.jsx("div",{className:"modal-url",children:e}),v.jsxs("div",{className:"modal-actions",children:[v.jsx(Yt,{variant:"primary",onClick:()=>Js(e).then(s=>Je(s?"Copied.":"Select and copy the link above.")),children:n?"Copied ✓":"Copy link"}),v.jsx(Yt,{variant:"subtle",onClick:()=>window.open(e,"_blank"),children:"Open"}),v.jsx(Yt,{variant:"subtle",className:"ai-del",onClick:async()=>{try{await Ao("DELETE","/api/shares/"+i),Je("Link revoked — it no longer works."),r()}catch(s){Je(s.message,!0)}},children:"Revoke"}),v.jsx(Yt,{variant:"subtle",onClick:r,children:"Done"})]})]})})}var RS=1,pI=.9,gI=.8,vI=.17,Hh=.1,Ph=.999,yI=.9999,bI=.99,SI=/[\\\/_+.#"@\[\(\{&]/,xI=/[\\\/_+.#"@\[\(\{&]/g,wI=/[\s-]/,I_=/[\s-]/g;function Om(e,n,r,i,s,u,c){if(u===n.length)return s===e.length?RS:bI;var d=`${s},${u}`;if(c[d]!==void 0)return c[d];for(var h=i.charAt(u),m=r.indexOf(h,s),y=0,g,b,S,_;m>=0;)g=Om(e,n,r,i,m+1,u+1,c),g>y&&(m===s?g*=RS:SI.test(e.charAt(m-1))?(g*=gI,S=e.slice(s,m-1).match(xI),S&&s>0&&(g*=Math.pow(Ph,S.length))):wI.test(e.charAt(m-1))?(g*=pI,_=e.slice(s,m-1).match(I_),_&&s>0&&(g*=Math.pow(Ph,_.length))):(g*=vI,s>0&&(g*=Math.pow(Ph,m-s))),e.charAt(m)!==n.charAt(u)&&(g*=yI)),(gg&&(g=b*Hh)),g>y&&(y=g),m=r.indexOf(h,m+1);return c[d]=y,y}function TS(e){return e.toLowerCase().replace(I_," ")}function _I(e,n,r){return e=r&&r.length>0?`${e+" "+r.join(" ")}`:e,Om(e,n,TS(e),TS(n),0,0,{})}var Ds='[cmdk-group=""]',Bh='[cmdk-group-items=""]',CI='[cmdk-group-heading=""]',$_='[cmdk-item=""]',OS=`${$_}:not([aria-disabled="true"])`,Am="cmdk-item-select",Sa="data-value",EI=(e,n,r)=>_I(e,n,r),V_=x.createContext(void 0),dl=()=>x.useContext(V_),F_=x.createContext(void 0),$p=()=>x.useContext(F_),U_=x.createContext(void 0),H_=x.forwardRef((e,n)=>{let r=xa(()=>{var j,H;return{search:"",value:(H=(j=e.value)!=null?j:e.defaultValue)!=null?H:"",selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}}}),i=xa(()=>new Set),s=xa(()=>new Map),u=xa(()=>new Map),c=xa(()=>new Set),d=P_(e),{label:h,children:m,value:y,onValueChange:g,filter:b,shouldFilter:S,loop:_,disablePointerSelection:C=!1,vimBindings:E=!0,...T}=e,O=fn(),A=fn(),k=fn(),L=x.useRef(null),U=LI();bi(()=>{if(y!==void 0){let j=y.trim();r.current.value=j,B.emit()}},[y]),bi(()=>{U(6,ae)},[]);let B=x.useMemo(()=>({subscribe:j=>(c.current.add(j),()=>c.current.delete(j)),snapshot:()=>r.current,setState:(j,H,Q)=>{var Z,re,ee,pe;if(!Object.is(r.current[j],H)){if(r.current[j]=H,j==="search")le(),ge(),U(1,de);else if(j==="value"){if(document.activeElement.hasAttribute("cmdk-input")||document.activeElement.hasAttribute("cmdk-root")){let be=document.getElementById(k);be?be.focus():(Z=document.getElementById(O))==null||Z.focus()}if(U(7,()=>{var be;r.current.selectedItemId=(be=he())==null?void 0:be.id,B.emit()}),Q||U(5,ae),((re=d.current)==null?void 0:re.value)!==void 0){let be=H??"";(pe=(ee=d.current).onValueChange)==null||pe.call(ee,be);return}}B.emit()}},emit:()=>{c.current.forEach(j=>j())}}),[]),P=x.useMemo(()=>({value:(j,H,Q)=>{var Z;H!==((Z=u.current.get(j))==null?void 0:Z.value)&&(u.current.set(j,{value:H,keywords:Q}),r.current.filtered.items.set(j,ve(H,Q)),U(2,()=>{ge(),B.emit()}))},item:(j,H)=>(i.current.add(j),H&&(s.current.has(H)?s.current.get(H).add(j):s.current.set(H,new Set([j]))),U(3,()=>{le(),ge(),r.current.value||de(),B.emit()}),()=>{u.current.delete(j),i.current.delete(j),r.current.filtered.items.delete(j);let Q=he();U(4,()=>{le(),Q?.getAttribute("id")===j&&de(),B.emit()})}),group:j=>(s.current.has(j)||s.current.set(j,new Set),()=>{u.current.delete(j),s.current.delete(j)}),filter:()=>d.current.shouldFilter,label:h||e["aria-label"],getDisablePointerSelection:()=>d.current.disablePointerSelection,listId:O,inputId:k,labelId:A,listInnerRef:L}),[]);function ve(j,H){var Q,Z;let re=(Z=(Q=d.current)==null?void 0:Q.filter)!=null?Z:EI;return j?re(j,r.current.search,H):0}function ge(){if(!r.current.search||d.current.shouldFilter===!1)return;let j=r.current.filtered.items,H=[];r.current.filtered.groups.forEach(Z=>{let re=s.current.get(Z),ee=0;re.forEach(pe=>{let be=j.get(pe);ee=Math.max(be,ee)}),H.push([Z,ee])});let Q=L.current;ye().sort((Z,re)=>{var ee,pe;let be=Z.getAttribute("id"),ze=re.getAttribute("id");return((ee=j.get(ze))!=null?ee:0)-((pe=j.get(be))!=null?pe:0)}).forEach(Z=>{let re=Z.closest(Bh);re?re.appendChild(Z.parentElement===re?Z:Z.closest(`${Bh} > *`)):Q.appendChild(Z.parentElement===Q?Z:Z.closest(`${Bh} > *`))}),H.sort((Z,re)=>re[1]-Z[1]).forEach(Z=>{var re;let ee=(re=L.current)==null?void 0:re.querySelector(`${Ds}[${Sa}="${encodeURIComponent(Z[0])}"]`);ee?.parentElement.appendChild(ee)})}function de(){let j=ye().find(Q=>Q.getAttribute("aria-disabled")!=="true"),H=j?.getAttribute(Sa);B.setState("value",H||void 0)}function le(){var j,H,Q,Z;if(!r.current.search||d.current.shouldFilter===!1){r.current.filtered.count=i.current.size;return}r.current.filtered.groups=new Set;let re=0;for(let ee of i.current){let pe=(H=(j=u.current.get(ee))==null?void 0:j.value)!=null?H:"",be=(Z=(Q=u.current.get(ee))==null?void 0:Q.keywords)!=null?Z:[],ze=ve(pe,be);r.current.filtered.items.set(ee,ze),ze>0&&re++}for(let[ee,pe]of s.current)for(let be of pe)if(r.current.filtered.items.get(be)>0){r.current.filtered.groups.add(ee);break}r.current.filtered.count=re}function ae(){var j,H,Q;let Z=he();Z&&(((j=Z.parentElement)==null?void 0:j.firstChild)===Z&&((Q=(H=Z.closest(Ds))==null?void 0:H.querySelector(CI))==null||Q.scrollIntoView({block:"nearest"})),Z.scrollIntoView({block:"nearest"}))}function he(){var j;return(j=L.current)==null?void 0:j.querySelector(`${$_}[aria-selected="true"]`)}function ye(){var j;return Array.from(((j=L.current)==null?void 0:j.querySelectorAll(OS))||[])}function N(j){let H=ye()[j];H&&B.setState("value",H.getAttribute(Sa))}function Y(j){var H;let Q=he(),Z=ye(),re=Z.findIndex(pe=>pe===Q),ee=Z[re+j];(H=d.current)!=null&&H.loop&&(ee=re+j<0?Z[Z.length-1]:re+j===Z.length?Z[0]:Z[re+j]),ee&&B.setState("value",ee.getAttribute(Sa))}function ne(j){let H=he(),Q=H?.closest(Ds),Z;for(;Q&&!Z;)Q=j>0?NI(Q,Ds):kI(Q,Ds),Z=Q?.querySelector(OS);Z?B.setState("value",Z.getAttribute(Sa)):Y(j)}let J=()=>N(ye().length-1),W=j=>{j.preventDefault(),j.metaKey?J():j.altKey?ne(1):Y(1)},z=j=>{j.preventDefault(),j.metaKey?N(0):j.altKey?ne(-1):Y(-1)};return x.createElement(Fe.div,{ref:n,tabIndex:-1,...T,"cmdk-root":"",onKeyDown:j=>{var H;(H=T.onKeyDown)==null||H.call(T,j);let Q=j.nativeEvent.isComposing||j.keyCode===229;if(!(j.defaultPrevented||Q))switch(j.key){case"n":case"j":{E&&j.ctrlKey&&W(j);break}case"ArrowDown":{W(j);break}case"p":case"k":{E&&j.ctrlKey&&z(j);break}case"ArrowUp":{z(j);break}case"Home":{j.preventDefault(),N(0);break}case"End":{j.preventDefault(),J();break}case"Enter":{j.preventDefault();let Z=he();if(Z){let re=new Event(Am);Z.dispatchEvent(re)}}}}},x.createElement("label",{"cmdk-label":"",htmlFor:P.inputId,id:P.labelId,style:$I},h),Qc(e,j=>x.createElement(F_.Provider,{value:B},x.createElement(V_.Provider,{value:P},j))))}),RI=x.forwardRef((e,n)=>{var r,i;let s=fn(),u=x.useRef(null),c=x.useContext(U_),d=dl(),h=P_(e),m=(i=(r=h.current)==null?void 0:r.forceMount)!=null?i:c?.forceMount;bi(()=>{if(!m)return d.item(s,c?.id)},[m]);let y=B_(s,u,[e.value,e.children,u],e.keywords),g=$p(),b=Io(U=>U.value&&U.value===y.current),S=Io(U=>m||d.filter()===!1?!0:U.search?U.filtered.items.get(s)>0:!0);x.useEffect(()=>{let U=u.current;if(!(!U||e.disabled))return U.addEventListener(Am,_),()=>U.removeEventListener(Am,_)},[S,e.onSelect,e.disabled]);function _(){var U,B;C(),(B=(U=h.current).onSelect)==null||B.call(U,y.current)}function C(){g.setState("value",y.current,!0)}if(!S)return null;let{disabled:E,value:T,onSelect:O,forceMount:A,keywords:k,...L}=e;return x.createElement(Fe.div,{ref:Aa(u,n),...L,id:s,"cmdk-item":"",role:"option","aria-disabled":!!E,"aria-selected":!!b,"data-disabled":!!E,"data-selected":!!b,onPointerMove:E||d.getDisablePointerSelection()?void 0:C,onClick:E?void 0:_},e.children)}),TI=x.forwardRef((e,n)=>{let{heading:r,children:i,forceMount:s,...u}=e,c=fn(),d=x.useRef(null),h=x.useRef(null),m=fn(),y=dl(),g=Io(S=>s||y.filter()===!1?!0:S.search?S.filtered.groups.has(c):!0);bi(()=>y.group(c),[]),B_(c,d,[e.value,e.heading,h]);let b=x.useMemo(()=>({id:c,forceMount:s}),[s]);return x.createElement(Fe.div,{ref:Aa(d,n),...u,"cmdk-group":"",role:"presentation",hidden:g?void 0:!0},r&&x.createElement("div",{ref:h,"cmdk-group-heading":"","aria-hidden":!0,id:m},r),Qc(e,S=>x.createElement("div",{"cmdk-group-items":"",role:"group","aria-labelledby":r?m:void 0},x.createElement(U_.Provider,{value:b},S))))}),OI=x.forwardRef((e,n)=>{let{alwaysRender:r,...i}=e,s=x.useRef(null),u=Io(c=>!c.search);return!r&&!u?null:x.createElement(Fe.div,{ref:Aa(s,n),...i,"cmdk-separator":"",role:"separator"})}),AI=x.forwardRef((e,n)=>{let{onValueChange:r,...i}=e,s=e.value!=null,u=$p(),c=Io(m=>m.search),d=Io(m=>m.selectedItemId),h=dl();return x.useEffect(()=>{e.value!=null&&u.setState("search",e.value)},[e.value]),x.createElement(Fe.input,{ref:n,...i,"cmdk-input":"",autoComplete:"off",autoCorrect:"off",spellCheck:!1,"aria-autocomplete":"list",role:"combobox","aria-expanded":!0,"aria-controls":h.listId,"aria-labelledby":h.labelId,"aria-activedescendant":d,id:h.inputId,type:"text",value:s?e.value:c,onChange:m=>{s||u.setState("search",m.target.value),r?.(m.target.value)}})}),MI=x.forwardRef((e,n)=>{let{children:r,label:i="Suggestions",...s}=e,u=x.useRef(null),c=x.useRef(null),d=Io(m=>m.selectedItemId),h=dl();return x.useEffect(()=>{if(c.current&&u.current){let m=c.current,y=u.current,g,b=new ResizeObserver(()=>{g=requestAnimationFrame(()=>{let S=m.offsetHeight;y.style.setProperty("--cmdk-list-height",S.toFixed(1)+"px")})});return b.observe(m),()=>{cancelAnimationFrame(g),b.unobserve(m)}}},[]),x.createElement(Fe.div,{ref:Aa(u,n),...s,"cmdk-list":"",role:"listbox",tabIndex:-1,"aria-activedescendant":d,"aria-label":i,id:h.listId},Qc(e,m=>x.createElement("div",{ref:Aa(c,h.listInnerRef),"cmdk-list-sizer":""},m)))}),jI=x.forwardRef((e,n)=>{let{open:r,onOpenChange:i,overlayClassName:s,contentClassName:u,container:c,...d}=e;return x.createElement(Fm,{open:r,onOpenChange:i},x.createElement(Hm,{container:c},x.createElement(Pm,{"cmdk-overlay":"",className:s}),x.createElement(Bm,{"aria-label":e.label,"cmdk-dialog":"",className:u},x.createElement(H_,{ref:n,...d}))))}),zI=x.forwardRef((e,n)=>Io(r=>r.filtered.count===0)?x.createElement(Fe.div,{ref:n,...e,"cmdk-empty":"",role:"presentation"}):null),DI=x.forwardRef((e,n)=>{let{progress:r,children:i,label:s="Loading...",...u}=e;return x.createElement(Fe.div,{ref:n,...u,"cmdk-loading":"",role:"progressbar","aria-valuenow":r,"aria-valuemin":0,"aria-valuemax":100,"aria-label":s},Qc(e,c=>x.createElement("div",{"aria-hidden":!0},c)))}),Yc=Object.assign(H_,{List:MI,Item:RI,Input:AI,Group:TI,Separator:OI,Dialog:jI,Empty:zI,Loading:DI});function NI(e,n){let r=e.nextElementSibling;for(;r;){if(r.matches(n))return r;r=r.nextElementSibling}}function kI(e,n){let r=e.previousElementSibling;for(;r;){if(r.matches(n))return r;r=r.previousElementSibling}}function P_(e){let n=x.useRef(e);return bi(()=>{n.current=e}),n}var bi=typeof window>"u"?x.useEffect:x.useLayoutEffect;function xa(e){let n=x.useRef();return n.current===void 0&&(n.current=e()),n}function Io(e){let n=$p(),r=()=>e(n.snapshot());return x.useSyncExternalStore(n.subscribe,r,r)}function B_(e,n,r,i=[]){let s=x.useRef(),u=dl();return bi(()=>{var c;let d=(()=>{var m;for(let y of r){if(typeof y=="string")return y.trim();if(typeof y=="object"&&"current"in y)return y.current?(m=y.current.textContent)==null?void 0:m.trim():s.current}})(),h=i.map(m=>m.trim());u.value(e,d,h),(c=n.current)==null||c.setAttribute(Sa,d),s.current=d}),s}var LI=()=>{let[e,n]=x.useState(),r=xa(()=>new Map);return bi(()=>{r.current.forEach(i=>i()),r.current=new Map},[e]),(i,s)=>{r.current.set(i,s),n({})}};function II(e){let n=e.type;return typeof n=="function"?n(e.props):"render"in n?n.render(e.props):e}function Qc({asChild:e,children:n},r){return e&&x.isValidElement(n)?x.cloneElement(II(n),{ref:n.ref},r(n.props.children)):r(n)}var $I={position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0"};function VI({className:e,...n}){return v.jsx(Yc,{"data-slot":"command",className:xt("flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",e),...n})}function FI({className:e,...n}){return v.jsxs("div",{"data-slot":"command-input-wrapper",className:"flex h-9 items-center gap-2 border-b px-3",children:[v.jsx(w1,{className:"size-4 shrink-0 opacity-50"}),v.jsx(Yc.Input,{"data-slot":"command-input",className:xt("flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",e),...n})]})}function UI({className:e,...n}){return v.jsx(Yc.List,{"data-slot":"command-list",className:xt("max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto",e),...n})}function HI({className:e,...n}){return v.jsx(Yc.Item,{"data-slot":"command-item",className:xt("relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground",e),...n})}function AS(e,n){if(!e)return{score:0,hits:[]};const r=e.toLowerCase(),i=n.toLowerCase();let s=0,u=0,c=0;const d=[];for(let h=0;h3&&i.endsWith("ies")?s=i.slice(0,-3)+"y":i.length>3&&i.endsWith("es")?s=i.slice(0,-2):i.length>2&&i.endsWith("s")&&(s=i.slice(0,-1)),s?AS(s,n):null}function BI({text:e,hits:n}){const r=[];let i=0;return n.forEach((s,u)=>{s>i&&r.push(e.slice(i,s)),r.push(v.jsx("b",{children:e[s]},u)),i=s+1}),r.push(e.slice(i)),v.jsx("span",{className:"plabel",children:r})}function qI({open:e,onClose:n,candidates:r}){const[i,s]=x.useState(""),u=x.useMemo(()=>{if(!e)return[];const d=[];for(const h of r()){const m=PI(i,h.label);m&&d.push({...h,score:m.score,hits:m.hits})}return d.sort((h,m)=>m.score-h.score),d.slice(0,40)},[e,i,r]);x.useEffect(()=>{e&&s("")},[e]);const c=d=>{n(),d.run()};return v.jsx(yp,{open:e,onOpenChange:d=>!d&&n(),children:v.jsxs(bp,{id:"palette",className:"palette",showCloseButton:!1,"aria-describedby":void 0,children:[v.jsx(Lc,{className:"sr-only",children:"Search and quick actions"}),v.jsxs(VI,{shouldFilter:!1,loop:!0,children:[v.jsxs("div",{id:"palette-inputwrap",children:[v.jsx(Kt,{name:"search"}),v.jsx(FI,{id:"palette-input",placeholder:"Search file names, projects, actions…",autoComplete:"off",spellCheck:!1,value:i,onValueChange:s})]}),v.jsx(UI,{id:"palette-results",children:u.length===0?v.jsx("div",{className:"pempty",children:"No matches — search covers file names, projects, and actions"}):u.map(d=>v.jsxs(HI,{value:d.kind+":"+d.label,onSelect:()=>c(d),children:[v.jsx("span",{className:"picon",children:v.jsx(Kt,{name:d.icon})}),v.jsx(BI,{text:d.label,hits:d.hits}),v.jsx("span",{className:"pkind",children:d.kind})]},d.kind+":"+d.label))}),v.jsx("footer",{id:"palette-hint",children:"↑↓ navigate · ⏎ select · esc close"})]})]})})}const Is=3,wa=30;function GI(e,n){return Mn({queryKey:["heatDevices",e],queryFn:()=>Vn(e+"heat?by=device&days=30"),enabled:n,retry:!1,staleTime:6e4}).data?.devices??null}function MS(e){const[n,r]=x.useState("all"),{flatFiles:i,heatMap:s,devices:u,scope:c}=e,d=b=>!c||b===c||b.startsWith(c+"/"),h=c?i.filter(b=>d(b.path)):i,m=u&&c?u.map(b=>{const S={};for(const[_,C]of Object.entries(b.folders||{}))d(_)&&(S[_]=C);return{...b,folders:S}}).filter(b=>Object.keys(b.folders).length>0):u,y=Date.now(),g=h.map(b=>{const S=s&&s[b.path]||{},_=b.time?Math.max(0,(y-new Date(b.time).getTime())/864e5):0,C=n==="all"?Ws(S):S[n]||0;return{path:b.path,reads:C,agent:S.agent||0,total:Ws(S),days:_,danger:C>=Is&&_>=wa}});return v.jsxs("div",{className:"insights",children:[v.jsxs("h1",{className:"in-title",children:["Knowledge insights",c?v.jsxs("span",{className:"in-scope",children:[" · ",c]}):null]}),v.jsx("p",{className:"dl-sub",children:c?`Reads over the last 30 days × freshness, for ${c} and everything in it.`:"Reads over the last 30 days × how long since each file changed. Hot but stale knowledge — read a lot, maintained by nobody — is the danger zone."}),v.jsx("div",{className:"in-lens",children:["all","human","agent"].map(b=>v.jsx("button",{className:"in-lens-btn"+(b===n?" active":""),onClick:()=>r(b),children:b==="all"?"All reads":b==="human"?"Human reads":"Agent reads"},b))}),v.jsx("h3",{className:"dl-h3",children:"Map — cell size = reads, color = freshness"}),v.jsx(KI,{pts:g,onOpenFile:e.onOpenFile,onOpenFolder:e.onOpenFolder,isFolder:e.isFolder}),v.jsx("h3",{className:"dl-h3",children:"Reads × freshness"}),v.jsx(YI,{pts:g,onOpenFile:e.onOpenFile}),v.jsx("h3",{className:"dl-h3",children:"Hot path — top files by reads"}),v.jsx(QI,{pts:g,lens:n,onOpenFile:e.onOpenFile}),m&&m.length>0&&v.jsxs(v.Fragment,{children:[v.jsx("h3",{className:"dl-h3",children:"Agent coverage — which agents read which areas"}),v.jsx(XI,{devices:m})]})]})}function ZI(e){const n=[[76,195,138],[232,196,84],[224,93,93]],r=Math.min(1,Math.max(0,e/300))*(n.length-1),i=Math.min(n.length-2,Math.floor(r)),s=r-i,u=n[i].map((c,d)=>Math.round(c+(n[i+1][d]-c)*s));return`rgb(${u[0]},${u[1]},${u[2]})`}function jS(e,n,r,i,s){const u=e.reduce((m,y)=>m+y.value,0);if(!u||i<=0||s<=0)return[];const c=e.slice().sort((m,y)=>y.value-m.value).map(m=>({it:m,a:m.value/u*i*s})),d=(m,y)=>{const b=m.reduce((_,C)=>_+C.a,0)/y;let S=0;for(const _ of m){const C=_.a/b;S=Math.max(S,C/b,b/C)}return S},h=[];for(;c.length;){const m=i>=s,y=m?s:i,g=[c.shift()];for(;c.length&&d(g.concat(c[0]),y)<=d(g,y);)g.push(c.shift());const b=g.reduce((_,C)=>_+C.a,0)/y;let S=0;for(const _ of g){const C=_.a/b;m?h.push({item:_.it,x:n,y:r+S,w:b,h:C}):h.push({item:_.it,x:n+S,y:r,w:C,h:b}),S+=C}m?(n+=b,i-=b):(r+=b,s-=b)}return h}const qh=15;function KI({pts:e,onOpenFile:n,onOpenFolder:r,isFolder:i}){const c=new Map;for(const h of e){const m=h.path.includes("/")?h.path.split("/")[0]:"/";let y=c.get(m);y||c.set(m,y={name:m,files:[],value:0}),y.files.push(h),y.value+=h.reads+1}const d=[];for(const h of jS([...c.values()],0,0,720,480)){const m=h.item,y=m.name==="/"?"":m.name;if(d.push(v.jsx("rect",{x:h.x+1,y:h.y+1,width:Math.max(0,h.w-2),height:Math.max(0,h.h-2),rx:3,className:"in-tm-group","data-dir":y},"g"+m.name)),h.w>46&&h.h>qh+10){let b=m.name==="/"?"(root)":m.name;const S=Math.floor((h.w-8)/6);b.length>S&&(b=b.slice(0,Math.max(1,S-1))+"…"),d.push(v.jsx("text",{x:h.x+5,y:h.y+12,className:"in-tm-glabel","data-dir":y,children:b},"gl"+m.name))}const g=jS(m.files.map(b=>({...b,name:b.path.split("/").pop(),value:b.reads+1})),h.x+2,h.y+qh,Math.max(0,h.w-4),Math.max(0,h.h-qh-2));for(const b of g)if(d.push(v.jsx("rect",{x:b.x+.6,y:b.y+.6,width:Math.max(.4,b.w-1.2),height:Math.max(.4,b.h-1.2),rx:1.5,fill:ZI(b.item.days),className:"in-tm-cell","data-path":b.item.path,children:v.jsx("title",{children:`${b.item.path} — ${b.item.reads} read${b.item.reads===1?"":"s"}/30d · changed ${Math.round(b.item.days)}d ago`})},b.item.path)),b.w>54&&b.h>16){const S=Math.floor((b.w-8)/6);let _=(b.item.danger?"⚠ ":"")+b.item.name;_.length>S&&(_=_.slice(0,Math.max(1,S-1))+"…"),S>=5&&d.push(v.jsx("text",{x:b.x+4.5,y:b.y+12.5,className:"in-tm-label","data-path":b.item.path,children:_},"l"+b.item.path))}}return v.jsx("svg",{viewBox:"0 0 720 480",className:"in-chart in-treemap",onClick:h=>{const m=h.target.closest("[data-path], [data-dir]");if(!m)return;const y=m.getAttribute("data-path");if(y)return n(y);const g=m.getAttribute("data-dir");g&&i(g)&&r(g)},children:d})}function YI({pts:e,onOpenFile:n}){const s={l:44,r:16,t:20,b:34},u=Math.max(wa*2,...e.map(g=>g.days)),c=Math.max(Is*2,...e.map(g=>g.reads)),d=g=>Math.log10(g+1)/Math.log10(u+1),h=g=>Math.log10(g+1)/Math.log10(c+1),m=g=>s.l+d(g)*(720-s.l-s.r),y=g=>360-s.b-h(g)*(360-s.t-s.b);return v.jsxs("svg",{viewBox:"0 0 720 360",className:"in-chart",children:[v.jsx("rect",{x:m(wa),y:s.t,width:720-s.r-m(wa),height:y(Is)-s.t,className:"in-danger-zone"}),v.jsx("line",{x1:m(wa),y1:s.t,x2:m(wa),y2:360-s.b,className:"in-threshold"}),v.jsx("line",{x1:s.l,y1:y(Is),x2:720-s.r,y2:y(Is),className:"in-threshold"}),v.jsx("line",{x1:s.l,y1:360-s.b,x2:720-s.r,y2:360-s.b,className:"in-axis"}),v.jsx("line",{x1:s.l,y1:s.t,x2:s.l,y2:360-s.b,className:"in-axis"}),v.jsx("text",{x:(s.l+720-s.r)/2,y:352,className:"in-label",children:"days since last change →"}),v.jsx("text",{x:12,y:(s.t+360-s.b)/2,className:"in-label",transform:`rotate(-90 12 ${(s.t+360-s.b)/2})`,children:"reads / 30d →"}),v.jsx("text",{x:720-s.r-6,y:s.t+14,className:"in-quad in-quad-danger",textAnchor:"end",children:"hot + stale"}),v.jsx("text",{x:s.l+6,y:s.t+14,className:"in-quad",children:"hot + fresh"}),v.jsx("text",{x:720-s.r-6,y:360-s.b-8,className:"in-quad",textAnchor:"end",children:"cold + stale"}),v.jsx("text",{x:720-s.r-6,y:s.t+28,className:"in-label",textAnchor:"end",children:"dot size = agent share of reads"}),e.map(g=>{const b=g.total?(g.agent||0)/g.total:0;return v.jsx("circle",{cx:Number(m(g.days).toFixed(1)),cy:Number(y(g.reads).toFixed(1)),r:Number((3+4*b).toFixed(1)),className:"in-pt"+(g.danger?" danger":g.reads?"":" cold"),onClick:()=>n(g.path),children:v.jsx("title",{children:`${g.path} — ${g.reads} read${g.reads===1?"":"s"} / 30d · changed ${Math.round(g.days)}d ago`})},g.path)})]})}function QI({pts:e,lens:n,onOpenFile:r}){const i=e.filter(u=>u.reads>0).sort((u,c)=>c.reads-u.reads||c.days-u.days).slice(0,20);if(!i.length)return v.jsx("div",{className:"dl-empty",children:"No reads in the window yet."});const s=i[0].reads;return v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"in-hotpath",children:i.map(u=>{const c=n==="agent"?1:n==="human"?0:u.total?u.agent/u.total:0,d=u.reads/s*100;return v.jsxs("div",{className:"in-hp-row",tabIndex:0,role:"button",title:u.danger?`${u.reads} read${u.reads===1?"":"s"}/30d · unchanged ${Math.round(u.days)}d — review this file`:u.path,onClick:()=>r(u.path),onKeyDown:h=>{(h.key==="Enter"||h.key===" ")&&(h.preventDefault(),r(u.path))},children:[v.jsx("span",{className:"in-hp-name"+(u.danger?" danger":""),children:u.path+(u.danger?" ⚠":"")}),v.jsxs("span",{className:"in-hp-bar",children:[v.jsx("span",{className:"in-hp-agent",style:{width:(d*c).toFixed(1)+"%"}}),v.jsx("span",{className:"in-hp-human",style:{width:(d*(1-c)).toFixed(1)+"%"}})]}),v.jsx("span",{className:"in-hp-count",children:u.reads})]},u.path)})}),v.jsxs("p",{className:"in-legend",children:[v.jsx("span",{className:"in-sw agent"})," agent reads ",v.jsx("span",{className:"in-sw human"})," human reads"]})]})}function XI({devices:e}){const n=new Map;for(const b of e)for(const[S,_]of Object.entries(b.folders||{}))n.set(S,(n.get(S)||0)+_);const r=[...n.entries()].sort((b,S)=>S[1]-b[1]).slice(0,12).map(b=>b[0]),i=e.slice(0,12),s=140,u=6,c=Math.min(76,Math.max(34,(720-s-8)/r.length)),d=26,h=720,m=u+i.length*d+58,y=Math.max(1,...i.flatMap(b=>r.map(S=>(b.folders||{})[S]||0))),g=b=>{const S=[23,25,31],_=[245,166,35],C=S.map((E,T)=>Math.round(E+(_[T]-E)*b));return`rgb(${C[0]},${C[1]},${C[2]})`};return v.jsxs("svg",{viewBox:`0 0 ${h} ${m}`,className:"in-chart in-matrix",children:[i.map((b,S)=>{let _=b.name||b.id||"";return _.length>20&&(_=_.slice(0,19)+"…"),v.jsxs("g",{children:[v.jsx("text",{x:s-8,y:u+S*d+17,textAnchor:"end",className:"in-label",children:_}),r.map((C,E)=>{const T=(b.folders||{})[C]||0;return v.jsx("rect",{x:s+E*c,y:u+S*d,width:c-4,height:d-4,rx:3,fill:g(Math.sqrt(T/y)),children:v.jsx("title",{children:`${b.name||b.id} × ${C||"(root)"}: ${T} read${T===1?"":"s"}/30d`})},C)})]},b.id||S)}),r.map((b,S)=>{const _=s+S*c+(c-4)/2,C=u+i.length*d+14;return v.jsx("text",{x:_,y:C,className:"in-label",textAnchor:"end",transform:`rotate(-28 ${_} ${C})`,children:b||"(root)"},b)})]})}function JI(e){const{apiBase:n,target:r,isFolder:i,onMeta:s,onRendered:u}=e,c=r?i(r)?{prefix:r+"/"}:{path:r}:{prefix:""},d="path"in c&&c.path!==void 0?"path="+encodeURIComponent(c.path):"prefix="+encodeURIComponent(c.prefix??""),{data:h,error:m}=Mn({queryKey:["history",n,d,200],queryFn:()=>Vn(n+"history?"+d+"&n=200"),staleTime:15e3});if(x.useEffect(()=>{m&&s("History unavailable: "+m.message)},[m,s]),x.useEffect(()=>{h&&u?.()},[h,u]),!h)return null;const y=h.entries||[];return v.jsxs("div",{className:"history",children:[y.length===0&&v.jsx("div",{className:"empty",children:"No history yet."}),y.map((g,b)=>v.jsx(L_,{entry:g,onOpen:e.onOpen},b))]})}function WI(e,n){return e?n(e)?e+"/ (folder)":e:"all changes"}function q_(e){const{config:n,apiBase:r,route:i,hub:s,project:u}=e,c=xp(),d=tl(),{tree:h,flatFiles:m,dirIndex:y,loaded:g}=z6(r,!s||!!u),b=D6(r,s&&!!u&&!!n.reads?.enabled),S=s&&!!u&&!i.path&&!i.view,_=!!e.canInsights&&(i.view==="insights"||S),C=GI(r,_);x.useEffect(()=>{_&&d.invalidateQueries({queryKey:["heat",r]})},[_,r,d]);const E=i.path,T=E||(i.view==="insights"||i.view==="history")&&i.viewTarget||"",O=!!E&&y.has(E),A=!!E&&g&&!O&&m.some(Le=>Le.path===E),k=!!E&&g&&!O&&!A,L=O&&!i.view,[U,B]=x.useState(()=>new Set),P=x.useRef(!0);x.useEffect(()=>{if(!h||!P.current)return;P.current=!1;const Le=(h.children||[]).filter(Be=>Be.dir);Le.length===1&&B(Be=>new Set(Be).add(Le[0].path))},[h]),x.useEffect(()=>{!T||!g||B(Le=>{const Be=new Set(Le);for(const He of tI(T))Be.add(He);return y.has(T)&&Be.add(T),Be})},[T,g,y]);const ve=x.useCallback(Le=>{B(Be=>{const He=new Set(Be);return He.has(Le)?He.delete(Le):He.add(Le),He})},[]),ge=x.useRef(null),de=x.useRef(new Map),le=x.useRef({key:"",want:0,attempts:0});x.useEffect(()=>{le.current={key:c,want:gN()==="POP"?de.current.get(c)??0:0,attempts:0}},[c]);const ae=x.useCallback(()=>{const Le=ge.current,Be=le.current;!Le||Be.key!==c||Be.attempts>=3||(Be.attempts++,Le.scrollTo({top:Be.want,behavior:"instant"}))},[c]),he=x.useCallback(()=>{ge.current&&de.current.set(c,ge.current.scrollTop)},[c]),ye=x.useCallback(Le=>{On(pN(Le,u?.id)),cr()},[u?.id]),N=x.useCallback(Le=>On(_a("history",u?.id,Le)),[u?.id]),[Y,ne]=x.useState(""),[J,W]=x.useState(null),[z,j]=x.useState(!1),[H,Q]=x.useState(!1);x.useEffect(()=>pz(()=>Q(!0)),[]);const Z=x.useRef(null),re=e.panel??null,ee=!re&&s&&!!u&&A,pe=!re&&s&&!!u,be=!re&&A,ze=!re&&(A||s&&!!u&&O),Ie=r+"download?path="+encodeURIComponent(E),Ve=x.useCallback(async()=>{try{const Le=await fetch(r+"shares",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:E})});if(!Le.ok)throw new Error(await Le.text());const Be=await Le.json(),He=await Js(Be.url);W({url:Be.url,copied:He})}catch(Le){Je("Share failed: "+Le.message,!0)}},[r,E]),st=x.useCallback(()=>{if(!E)return N("");N(O?E+"/":E)},[E,O,N]);x.useEffect(()=>{const Le=Be=>{(Be.metaKey||Be.ctrlKey)&&Be.key.toLowerCase()==="k"&&(Be.preventDefault(),Q(He=>!He))};return window.addEventListener("keydown",Le),()=>window.removeEventListener("keydown",Le)},[]);const Xe=x.useCallback(()=>{const Le=[],Be=(He,Un,Nt,eo)=>Le.push({icon:He,label:Un,kind:Nt,run:eo});if(s&&u&&E&&(A&&Be("share","Share: "+E,"action",Ve),Be("hist","History: "+E,"action",st),A&&Be("download","Download: "+E,"action",()=>Z.current?.click())),s&&u&&Be("hist","History: whole project","action",()=>N("")),s)for(const He of e.projects||[])(!u||He.id!==u.id)&&Be("folder","Switch to project: "+He.name,"project",()=>On("/"+He.id));n.auth?.enabled&&Be("power","Sign out","action",()=>window.location.href="/auth/logout");for(const He of y.keys())Be("folder",He,"folder",()=>ye(He));for(const He of m)Be("doc",He.path,"file",()=>ye(He.path));return Le},[s,u,E,A,n.auth?.enabled,y,m,e.projects,Ve,st,N,ye]);x.useEffect(()=>{if(!z)return;const Le=()=>j(!1);return document.addEventListener("click",Le),()=>document.removeEventListener("click",Le)},[z]);const Xt=x.useCallback(Le=>y.has(Le),[y]);let Dt="markdown",mt;re?(Dt="view",mt=re.body):i.view==="insights"?(Dt="view",mt=e.canInsights?v.jsx(MS,{flatFiles:m,heatMap:b,devices:C,scope:i.viewTarget||"",onOpenFile:ye,onOpenFolder:ye,isFolder:Xt}):v.jsx("div",{className:"empty",children:"Insights is for hub admins and org owners."})):i.view==="history"?(Dt="view",mt=v.jsx(JI,{apiBase:r,target:i.viewTarget||"",isFolder:Xt,onOpen:ye,onMeta:ne,onRendered:ae})):E?g?k?(Dt="view",mt=v.jsxs("div",{className:"notfound",children:[v.jsx("h1",{children:"Couldn't find that"}),v.jsxs("p",{children:[v.jsx("code",{children:E})," isn't in this project right now."]}),v.jsx("p",{className:"nf-sub",children:"If it was just created, it may still be uploading or syncing from a teammate's device — this page checks again automatically every few seconds, so refresh or come back in a moment."}),v.jsx("button",{className:"pbtn",onClick:()=>d.invalidateQueries({queryKey:["tree",r]}),children:"Check again"})]})):O?(Dt="view",mt=v.jsx(iI,{node:y.get(E),heatMap:b,hub:s&&!!u,apiBase:r,onOpen:ye,onFullHistory:N,onRendered:ae})):mt=v.jsx(sI,{apiBase:r,path:E,heatMap:b,flatFiles:m,onOpenFile:ye,onMeta:ne,onRendered:ae}):mt=v.jsx("div",{className:"empty",children:"Loading…"}):S?(Dt="view",mt=v.jsxs(v.Fragment,{children:[v.jsx(N_,{project:u}),e.canInsights&&v.jsx("div",{className:"home-insights",children:v.jsx(MS,{flatFiles:m,heatMap:b,devices:C,onOpenFile:ye,onOpenFolder:ye,isFolder:Xt})})]})):mt=v.jsx("div",{className:"empty",children:"Select a file to read it."});const pr=re?re.crumb:E?v.jsx(nI,{path:E,onOpenFolder:ye}):i.view==="insights"?"Insights — "+(i.viewTarget||u?.name||""):i.view==="history"?"History — "+WI(i.viewTarget||"",Xt):S?u.name:null,Ht=v.jsx(Ys,{crumb:pr,meta:Y,actions:v.jsxs(v.Fragment,{children:[ee&&v.jsx(Yt,{id:"share-btn",variant:"toolbar",className:"icon-only",title:"Share","aria-label":"Share",onClick:Ve,children:v.jsx(Kt,{name:"share"})}),pe&&!E&&!i.view&&v.jsxs(Yt,{id:"history-btn",variant:"toolbar",onClick:st,children:[v.jsx(Kt,{name:"hist"})," ",v.jsx("span",{className:"lbl",children:"History"})]}),be&&v.jsx("a",{id:"download",hidden:!0,download:!0,href:Ie,ref:Z,children:"Download"}),ze&&v.jsx(Yt,{id:"more-btn",variant:"toolbar",className:"icon-only",title:"More actions","aria-label":"More actions",onClick:Le=>{Le.stopPropagation(),j(!z)},children:v.jsx(Kt,{name:"dots"})}),z&&v.jsxs("div",{id:"more-menu",role:"menu",children:[pe&&v.jsx("button",{className:"more-item",onClick:st,children:"History"}),be&&v.jsx("button",{className:"more-item",onClick:()=>Z.current?.click(),children:"Download"}),e.canInsights&&v.jsx("button",{className:"more-item",onClick:()=>{e.onClosePanel?.(),On(_a("insights",u?.id,E))},children:"Insights"})]})]})});return v.jsxs(v.Fragment,{children:[v.jsx(Ks,{vault:e.sidebar.vault,projectsNav:e.sidebar.projectsNav,orgBar:e.sidebar.orgBar,tree:v.jsx(eI,{root:h,expanded:U,onToggle:ve,currentPath:T,listingShowing:L,onOpen:ye}),topbar:Ht,contentClass:Dt,contentRef:ge,onContentScroll:he,children:mt}),J&&v.jsx(mI,{url:J.url,copied:J.copied,onClose:()=>W(null)}),v.jsx(qI,{open:H,onClose:()=>Q(!1),candidates:Xe})]})}function e$({config:e}){const n=xp(),r=O1(),[i,s]=x.useState(null),[u,c]=x.useState(null);x.useEffect(()=>c(null),[n]);const d=x.useMemo(()=>{const U=n.match(/^\/join\/([0-9a-f]+)\/?$/);return U?U[1]:null},[n]),{data:h}=fN(!d),{data:m}=hN(!d),y=!!e.auth.admin,{data:g}=T1(y),b=x.useMemo(()=>M1(n,"hub"),[n]),S=x.useMemo(()=>h&&(h.find(U=>U.id===b.project)||i&&h.find(U=>U.org===i)||h[0])||null,[h,b.project,i]);if(x.useEffect(()=>{document.title=S?S.name+" — BearDrive":e.brand||e.volume||"BearDrive"},[S,e]),d)return v.jsx(t$,{token:d,onDone:async U=>{s(U),await r(),On("/",{replace:!0})}});const _=e.brand||e.volume||"BearDrive",C=S&&m?.find(U=>U.id===S.org)||null,E=y||(C?C.role==="owner":!1),T=v.jsx(kc,{name:_,onHome:()=>On("/"),search:!!S}),O=e.me?v.jsx(C6,{me:e.me,org:C,admin:y?{pending:g?.length||0,onClick:()=>{c({kind:"hub"}),cr()}}:void 0,onOrgSettings:U=>{c({kind:"org",orgId:U.id}),cr()}}):void 0;if(!h||!m)return v.jsx(Ks,{vault:T,topbar:v.jsx(Ys,{}),children:v.jsx("div",{className:"empty",children:"Loading…"})});if(!S)return v.jsx(Ks,{vault:T,projectsNav:v.jsx(wS,{projects:h}),orgBar:O,topbar:v.jsx(Ys,{}),contentClass:"view",children:v.jsx(j6,{authEnabled:e.auth.enabled,onCreate:async U=>{if(!U){Je("Give the project a name.",!0);return}try{const B=await Oa("/api/projects",{name:U});await r(),On("/"+B.project.id),Je(`Created “${B.project.name}”.`)}catch(B){Je("Could not create the project: "+B.message,!0)}}})});const A=u?.kind==="org"?m.find(U=>U.id===u.orgId):null,k=u?.kind==="hub"?{crumb:"Signup & access",body:v.jsx(h6,{})}:A?{crumb:A.name,body:v.jsx(u6,{org:A,projects:h,myEmail:e.me?.email||"",onProjectsChanged:r})}:null,L=b.view==="settings"?{crumb:"Project settings",body:v.jsx(E6,{project:S,org:C})}:b.view==="install"?{crumb:"Installation",body:v.jsx("div",{className:"onboard",children:v.jsx(N_,{project:S})})}:null;return b.project!==S.id?v.jsx(vN,{to:"/"+S.id}):v.jsx(q_,{config:e,apiBase:"/api/p/"+S.id+"/",route:b,hub:!0,project:S,projects:h,canInsights:E,sidebar:{vault:T,projectsNav:v.jsx(wS,{projects:h,currentId:S.id,menu:{active:u?null:b.view==="insights"&&!b.viewTarget?"dashboard":b.view==="install"?"install":b.view==="history"&&!b.viewTarget?"history":b.view==="settings"?"settings":null,onDashboard:()=>{c(null),On(_a("insights",S.id)),cr()},onInstall:()=>{c(null),On(_a("install",S.id)),cr()},onHistory:()=>{c(null),On(_a("history",S.id)),cr()},onSettings:()=>{c(null),On(_a("settings",S.id)),cr()}}}),orgBar:O},panel:k||L,onClosePanel:()=>c(null)},S.id)}function t$({token:e,onDone:n}){return x.useEffect(()=>{let r=!1;return Oa("/api/invites/"+e).then(i=>{r||(Je(`Welcome — you joined the “${i.org.name}” team. Opening its projects…`),n(i.org.id))}).catch(i=>{r||String(i.message).includes("signing in")||(Je("Could not accept the invite: "+i.message,!0),n(null))}),()=>{r=!0}},[e]),v.jsx(Ks,{vault:v.jsx(kc,{name:"BearDrive"}),topbar:v.jsx(Ys,{}),children:v.jsx("div",{className:"empty",children:"Joining…"})})}function n$({config:e}){const n=xp(),r=e.volume||"BearDrive";x.useEffect(()=>{document.title=e.brand||r},[e,r]);const i=x.useMemo(()=>M1(n,"volume"),[n]);return v.jsx(q_,{config:e,apiBase:"/api/",route:i,hub:!1,sidebar:{vault:v.jsx(kc,{name:r,showSignout:e.auth.enabled,search:!0})}})}function r$(){const{data:e}=XR();return v.jsxs(dz,{delayDuration:150,children:[e?e.mode==="hub"?v.jsx(e$,{config:e}):v.jsx(n$,{config:e}):v.jsx(Ks,{vault:v.jsx(kc,{name:"…",showSignout:!1}),topbar:v.jsx(Ys,{}),children:v.jsx("div",{className:"empty",children:"Loading…"})}),v.jsx(oN,{}),v.jsx(uN,{})]})}const o$=new $R({defaultOptions:{queries:{retry:1,refetchOnWindowFocus:!1}}});fR.createRoot(document.getElementById("root")).render(v.jsx(x.StrictMode,{children:v.jsx(VR,{client:o$,children:v.jsx(r$,{})})})); diff --git a/internal/webapp/static/assets/index-MFSXFxvy.css b/internal/webapp/static/assets/index-DNKHQHAn.css similarity index 56% rename from internal/webapp/static/assets/index-MFSXFxvy.css rename to internal/webapp/static/assets/index-DNKHQHAn.css index 1997f6d..e413358 100644 --- a/internal/webapp/static/assets/index-MFSXFxvy.css +++ b/internal/webapp/static/assets/index-DNKHQHAn.css @@ -1 +1 @@ -@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-duration:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-lg:32rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--font-weight-medium:500;--font-weight-semibold:600;--tracking-widest:.1em;--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--color-background:#0a0b0d;--color-foreground:#eef0f3;--color-popover:#15171b;--color-popover-foreground:#eef0f3;--color-primary:#f5a623;--color-primary-foreground:#1a1204;--color-secondary:#ffffff08;--color-secondary-foreground:#eef0f3;--color-muted:#ffffff0f;--color-muted-foreground:#9aa0a9;--color-accent:#ffffff0f;--color-accent-foreground:#eef0f3;--color-destructive:#f26d6d;--color-border:#ffffff12;--color-input:#ffffff1c;--color-ring:#d3861a}}@layer base,components;@layer utilities{.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:0}.top-4{top:calc(var(--spacing) * 4)}.top-20{top:calc(var(--spacing) * 20)}.top-\[50\%\]{top:50%}.right-2{right:calc(var(--spacing) * 2)}.right-4{right:calc(var(--spacing) * 4)}.left-2{left:calc(var(--spacing) * 2)}.left-\[50\%\]{left:50%}.z-50{z-index:50}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.my-1{margin-block:var(--spacing)}.mt-4{margin-top:calc(var(--spacing) * 4)}.ml-auto{margin-left:auto}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-row{display:table-row}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-2\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-full{height:100%}.h-px{height:1px}.max-h-\(--radix-dropdown-menu-content-available-height\){max-height:var(--radix-dropdown-menu-content-available-height)}.max-h-\(--radix-select-content-available-height\){max-height:var(--radix-select-content-available-height)}.max-h-\[300px\]{max-height:300px}.w-fit{width:fit-content}.w-full{width:100%}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.min-w-0{min-width:0}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.shrink-0{flex-shrink:0}.caption-bottom{caption-side:bottom}.origin-\(--radix-dropdown-menu-content-transform-origin\){transform-origin:var(--radix-dropdown-menu-content-transform-origin)}.origin-\(--radix-select-content-transform-origin\){transform-origin:var(--radix-select-content-transform-origin)}.origin-\(--radix-tooltip-content-transform-origin\){transform-origin:var(--radix-tooltip-content-transform-origin)}.translate-x-\[-50\%\]{--tw-translate-x:-50%;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\[-50\%\]{--tw-translate-y:-50%;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\[calc\(-50\%_-_2px\)\]{--tw-translate-y: calc(-50% - 2px) ;translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-45{rotate:45deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-in{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.scroll-my-1{scroll-margin-block:var(--spacing)}.scroll-py-1{scroll-padding-block:var(--spacing)}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-4{gap:calc(var(--spacing) * 4)}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded-\[2px\]{border-radius:2px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xs{border-radius:var(--radius-xs)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-input{border-color:var(--color-input)}.bg-background{background-color:var(--color-background)}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black) 50%,transparent)}}.bg-border{background-color:var(--color-border)}.bg-destructive{background-color:var(--color-destructive)}.bg-foreground{background-color:var(--color-foreground)}.bg-muted\/50{background-color:#ffffff08}@supports (color:color-mix(in lab,red,red)){.bg-muted\/50{background-color:color-mix(in oklab,var(--color-muted) 50%,transparent)}}.bg-popover{background-color:var(--color-popover)}.bg-primary{background-color:var(--color-primary)}.bg-secondary{background-color:var(--color-secondary)}.bg-transparent{background-color:#0000}.fill-current{fill:currentColor}.fill-foreground{fill:var(--color-foreground)}.p-0{padding:0}.p-1{padding:var(--spacing)}.p-2{padding:calc(var(--spacing) * 2)}.p-6{padding:calc(var(--spacing) * 6)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-6{padding-block:calc(var(--spacing) * 6)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-8{padding-left:calc(var(--spacing) * 8)}.text-center{text-align:center}.text-left{text-align:left}.align-middle{vertical-align:middle}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-none{--tw-leading:1;line-height:1}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-balance{text-wrap:balance}.whitespace-nowrap{white-space:nowrap}.text-background{color:var(--color-background)}.text-destructive{color:var(--color-destructive)}.text-foreground{color:var(--color-foreground)}.text-muted-foreground{color:var(--color-muted-foreground)}.text-popover-foreground{color:var(--color-popover-foreground)}.text-primary{color:var(--color-primary)}.text-primary-foreground{color:var(--color-primary-foreground)}.text-secondary-foreground{color:var(--color-secondary-foreground)}.text-white{color:var(--color-white)}.underline-offset-4{text-underline-offset:4px}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-offset-background{--tw-ring-offset-color:var(--color-background)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[color\,box-shadow\]{transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.fade-in-0{--tw-enter-opacity:0}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.zoom-in-95{--tw-enter-scale:.95}.running{animation-play-state:running}.group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled=true] *){opacity:.5}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.selection\:bg-primary ::selection{background-color:var(--color-primary)}.selection\:bg-primary::selection{background-color:var(--color-primary)}.selection\:text-primary-foreground ::selection{color:var(--color-primary-foreground)}.selection\:text-primary-foreground::selection{color:var(--color-primary-foreground)}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-7::file-selector-button{height:calc(var(--spacing) * 7)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--color-foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--color-muted-foreground)}@media(hover:hover){.hover\:bg-accent:hover{background-color:var(--color-accent)}.hover\:bg-destructive\/90:hover{background-color:#f26d6de6}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--color-destructive) 90%,transparent)}}.hover\:bg-muted\/50:hover{background-color:#ffffff08}@supports (color:color-mix(in lab,red,red)){.hover\:bg-muted\/50:hover{background-color:color-mix(in oklab,var(--color-muted) 50%,transparent)}}.hover\:bg-primary\/90:hover{background-color:#f5a623e6}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--color-primary) 90%,transparent)}}.hover\:bg-secondary\/80:hover{background-color:#ffffff06}@supports (color:color-mix(in lab,red,red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab,var(--color-secondary) 80%,transparent)}}.hover\:text-accent-foreground:hover{color:var(--color-accent-foreground)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}}.focus\:bg-accent:focus{background-color:var(--color-accent)}.focus\:text-accent-foreground:focus{color:var(--color-accent-foreground)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-ring:focus{--tw-ring-color:var(--color-ring)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus\:outline-hidden:focus{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.focus\:outline-hidden:focus{outline-offset:2px;outline:2px solid #0000}}.focus-visible\:border-ring:focus-visible{border-color:var(--color-ring)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:#f26d6d33}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--color-destructive) 20%, transparent)}}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:#d3861a80}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--color-ring) 50%, transparent)}}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.has-aria-expanded\:bg-muted\/50:has([aria-expanded=true]){background-color:#ffffff08}@supports (color:color-mix(in lab,red,red)){.has-aria-expanded\:bg-muted\/50:has([aria-expanded=true]){background-color:color-mix(in oklab,var(--color-muted) 50%,transparent)}}.has-\[\>svg\]\:px-1\.5:has(>svg){padding-inline:calc(var(--spacing) * 1.5)}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing) * 2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing) * 3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing) * 4)}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--color-destructive)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:#f26d6d33}@supports (color:color-mix(in lab,red,red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--color-destructive) 20%, transparent)}}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true]{pointer-events:none}.data-\[disabled\=true\]\:opacity-50[data-disabled=true]{opacity:.5}.data-\[error\=true\]\:text-destructive[data-error=true]{color:var(--color-destructive)}.data-\[inset\]\:pl-8[data-inset]{padding-left:calc(var(--spacing) * 8)}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:var(--color-muted-foreground)}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:var(--color-accent)}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:var(--color-accent-foreground)}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\[size\=default\]\:h-9[data-size=default]{height:calc(var(--spacing) * 9)}.data-\[size\=sm\]\:h-8[data-size=sm]{height:calc(var(--spacing) * 8)}:is(.\*\*\:data-\[slot\=command-input-wrapper\]\:h-12 *)[data-slot=command-input-wrapper]{height:calc(var(--spacing) * 12)}:is(.\*\:data-\[slot\=select-value\]\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\*\:data-\[slot\=select-value\]\:flex>*)[data-slot=select-value]{display:flex}:is(.\*\:data-\[slot\=select-value\]\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\*\:data-\[slot\=select-value\]\:gap-2>*)[data-slot=select-value]{gap:calc(var(--spacing) * 2)}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=open\]\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:var(--color-accent)}.data-\[state\=open\]\:text-accent-foreground[data-state=open]{color:var(--color-accent-foreground)}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:var(--color-muted-foreground)}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:var(--color-muted)}.data-\[variant\=destructive\]\:text-destructive[data-variant=destructive]{color:var(--color-destructive)}.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:#f26d6d1a}@supports (color:color-mix(in lab,red,red)){.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:color-mix(in oklab,var(--color-destructive) 10%,transparent)}}.data-\[variant\=destructive\]\:focus\:text-destructive[data-variant=destructive]:focus{color:var(--color-destructive)}@media(min-width:40rem){.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:text-left{text-align:left}}@media(min-width:48rem){.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}@media(prefers-color-scheme:dark){.dark\:border-input{border-color:var(--color-input)}.dark\:bg-destructive\/60{background-color:#f26d6d99}@supports (color:color-mix(in lab,red,red)){.dark\:bg-destructive\/60{background-color:color-mix(in oklab,var(--color-destructive) 60%,transparent)}}.dark\:bg-input\/30{background-color:#ffffff08}@supports (color:color-mix(in lab,red,red)){.dark\:bg-input\/30{background-color:color-mix(in oklab,var(--color-input) 30%,transparent)}}@media(hover:hover){.dark\:hover\:bg-accent\/50:hover{background-color:#ffffff08}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-accent\/50:hover{background-color:color-mix(in oklab,var(--color-accent) 50%,transparent)}}.dark\:hover\:bg-input\/50:hover{background-color:#ffffff0e}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-input\/50:hover{background-color:color-mix(in oklab,var(--color-input) 50%,transparent)}}}.dark\:focus-visible\:ring-destructive\/40:focus-visible{--tw-ring-color:#f26d6d66}@supports (color:color-mix(in lab,red,red)){.dark\:focus-visible\:ring-destructive\/40:focus-visible{--tw-ring-color:color-mix(in oklab, var(--color-destructive) 40%, transparent)}}.dark\:aria-invalid\:ring-destructive\/40[aria-invalid=true]{--tw-ring-color:#f26d6d66}@supports (color:color-mix(in lab,red,red)){.dark\:aria-invalid\:ring-destructive\/40[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--color-destructive) 40%, transparent)}}.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20[data-variant=destructive]:focus{background-color:#f26d6d33}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20[data-variant=destructive]:focus{background-color:color-mix(in oklab,var(--color-destructive) 20%,transparent)}}}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-block:calc(var(--spacing) * 1.5)}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:var(--color-muted-foreground)}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:0}.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg{height:calc(var(--spacing) * 5)}.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg{width:calc(var(--spacing) * 5)}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:calc(var(--spacing) * 12)}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-block:calc(var(--spacing) * 3)}.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{height:calc(var(--spacing) * 5)}.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{width:calc(var(--spacing) * 5)}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\:not\(\[class\*\=\'text-\'\]\)\]\:text-muted-foreground svg:not([class*=text-]){color:var(--color-muted-foreground)}.\[\&_tr\]\:border-b tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-style:var(--tw-border-style);border-width:0}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}:is(.\*\:\[span\]\:last\:flex>*):is(span):last-child{display:flex}:is(.\*\:\[span\]\:last\:items-center>*):is(span):last-child{align-items:center}:is(.\*\:\[span\]\:last\:gap-2>*):is(span):last-child{gap:calc(var(--spacing) * 2)}:is(.data-\[variant\=destructive\]\:\*\:\[svg\]\:text-destructive\![data-variant=destructive]>*):is(svg){color:var(--color-destructive)!important}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y:2px;translate:var(--tw-translate-x) var(--tw-translate-y)}.\[\&\>tr\]\:last\:border-b-0>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-duration{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}:root{--bg: #0a0b0d;--bg-side: #0c0e10;--bg-raise: #15171b;--surface: rgba(255,255,255,.03);--hover: rgba(255,255,255,.06);--border: rgba(255,255,255,.07);--border-2: rgba(255,255,255,.11);--code-bg: #0d0f12;--text: #eef0f3;--text-dim: #9aa0a9;--text-faint: #868b93;--text-ghost: #666b74;--accent: #f5a623;--accent-bright: #ffcf85;--accent-dim: #d3861a;--accent-press: #e0951a;--glow: rgba(245,166,35,.13);--add: #4cc38a;--del: #f26d6d;--mono: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--ui: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Inter", "Segoe UI", Roboto, sans-serif;--r-ctl: 7px;--r-card: 10px;--r-over: 14px}*{box-sizing:border-box}[hidden]{display:none!important}html,body{height:100%;margin:0}#root{display:contents}body{display:flex;background:var(--bg);color:var(--text);font:13px/1.5 var(--ui);letter-spacing:-.006em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}::selection{background:var(--glow);color:var(--accent-bright)}:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-radius:5px}.sprite{position:absolute}.ico{width:16px;height:16px;flex:none;stroke:currentColor;stroke-width:1.6;fill:none;stroke-linecap:round;stroke-linejoin:round}button,input,a.btn{font-family:inherit}#sidebar{width:264px;min-width:210px;background:var(--bg-side);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}#vault{display:flex;align-items:center;gap:9px;height:52px;padding:0 12px 0 14px;border-bottom:1px solid var(--border);position:relative;z-index:45}#vault-badge{width:22px;height:22px;border-radius:6px;flex:none;display:grid;place-items:center;font-size:13px;line-height:1;background:linear-gradient(160deg,#ffcf85,#f5a623 55%,#d3861a);box-shadow:0 1px #ffffff59 inset,0 2px 6px -1px #f5a62366}#vault-name{font-weight:600;font-size:13px;letter-spacing:-.01em;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vault-actions{display:flex;align-items:center;gap:4px}#vault #signout,.icon-btn2{width:28px;height:28px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-ghost);background:transparent;border:none;cursor:pointer;text-decoration:none}#vault #signout:hover,.icon-btn2:hover{color:var(--text);background:var(--hover)}#vault #signout .ico,.icon-btn2 .ico{width:16px;height:16px}#projects{flex:none;max-height:32%;overflow-y:auto;padding:10px 8px 8px;border-bottom:1px solid var(--border)}.nav-head{display:flex;align-items:center;justify-content:space-between;padding:6px 8px;font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--text-ghost)}.nav-add{display:grid;place-items:center;width:18px;height:18px;border:none;background:transparent;color:var(--text-ghost);cursor:pointer;border-radius:5px}.nav-add .ico{width:14px;height:14px}.nav-add:hover{color:var(--text);background:var(--hover)}#projects ul{list-style:none;margin:0;padding:0}#projects .row{display:flex;align-items:center;gap:9px;height:31px;padding:0 8px;border-radius:7px;color:var(--text-dim);cursor:pointer;position:relative;white-space:nowrap;overflow:hidden}.proj-mark{width:17px;height:17px;border-radius:5px;flex:none;display:grid;place-items:center;font-size:10px;font-weight:700;color:#0a0b0d;letter-spacing:-.02em;text-transform:uppercase}#projects .row .label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}#projects .row:hover{background:var(--hover);color:var(--text)}#projects .row.active{background:var(--glow);color:var(--accent-bright)}#projects .row.active:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:2px;border-radius:2px;background:var(--accent)}#tree{flex:1;overflow-y:auto;padding:8px 8px 24px}.tguide{position:absolute;top:0;bottom:0;width:1px;background:var(--border);pointer-events:none}#tree .row{display:flex;align-items:center;gap:6px;height:28px;padding:0 8px;border-radius:7px;color:var(--text-dim);cursor:pointer;position:relative;white-space:nowrap;overflow:hidden}#tree .row:hover{background:var(--hover);color:var(--text)}#tree .row.active{background:var(--glow);color:var(--accent-bright)}#tree .row.active:before{content:"";position:absolute;left:0;top:5px;bottom:5px;width:2px;border-radius:2px;background:var(--accent)}#tree .chev{width:14px;height:14px;flex:none;color:var(--text-ghost);transition:transform .12s;display:flex;align-items:center;justify-content:center}#tree .chev .ico{width:13px;height:13px}#tree .ticon{flex:none;display:flex;color:var(--text-ghost)}#tree .ticon .ico{width:15px;height:15px}#tree .row:hover .ticon,#tree .row:hover .chev{color:var(--text-faint)}#tree .row.active .ticon,#tree .row.active .chev{color:var(--accent)}#tree .label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}#tree .file .label{font-size:12.5px}#tree .file .chev{visibility:hidden}#tree .row.collapsed .chev{transform:rotate(-90deg)}.nav-menu{list-style:none;margin:6px 0 0;padding:0}.nav-menu .row .ico{width:15px;height:15px;flex:none;color:var(--text-ghost)}.nav-menu .row.active .ico{color:var(--accent-bright)}.proj-row{display:flex;align-items:center;gap:4px;padding:0 10px 4px 12px}#project-select{flex:1;min-width:0;height:30px;padding:0 9px;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:var(--r-ctl);background:var(--surface);color:var(--text);font:inherit;font-size:12.5px;font-weight:500;cursor:pointer;white-space:nowrap;outline:none}#project-select>span:last-of-type{overflow:hidden;text-overflow:ellipsis}#project-select:hover{background:var(--hover);border-color:var(--border-2)}#project-select svg{color:var(--text-ghost)}.proj-menu{z-index:80;min-width:var(--radix-select-trigger-width, 200px);border:1px solid var(--border-2);border-radius:9px;padding:4px;background:var(--bg-raise);box-shadow:0 10px 32px #00000059}.proj-menu [role=option]{font-size:12.5px;color:var(--text-dim);border-radius:6px;outline:none}.proj-menu [role=option][data-highlighted]{background:var(--hover);color:var(--text)}#accountbar{position:relative;border-top:1px solid var(--border);padding:7px 10px}#account-btn{width:100%;display:flex;align-items:center;gap:9px;text-align:left;padding:6px 8px;border:none;border-radius:7px;background:transparent;color:var(--text-dim);cursor:pointer;font:inherit}#account-btn:hover{background:var(--hover);color:var(--text)}#account-btn .avatar{width:26px;height:26px;flex:none;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:700}#account-btn .acct{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}#account-btn .acct b{font-size:12.5px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#account-btn .acct small{font-size:11px;color:var(--text-ghost);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#account-btn>.ico{width:14px;height:14px;color:var(--text-ghost)}#account-menu{min-width:var(--radix-dropdown-menu-trigger-width, 220px);padding:5px;border:1px solid var(--border-2);border-radius:9px;background:var(--bg-raise);box-shadow:0 10px 32px #00000059;display:flex;flex-direction:column;z-index:80;outline:none}#account-menu [role=menuitem]{outline:none}#account-menu [role=menuitem][data-highlighted]{background:var(--hover);color:var(--text)}#account-menu .menu-sec{padding:7px 9px 3px;font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-ghost)}#account-menu [role=menuitem]{display:flex;align-items:center;gap:8px;padding:7px 9px;border:none;border-radius:6px;background:transparent;text-align:left;color:var(--text-dim);font:inherit;font-size:12.5px;cursor:pointer;text-decoration:none}#account-menu [role=menuitem]:hover{background:var(--hover);color:var(--text)}#account-menu [role=menuitem] b{font-weight:600}#account-menu [role=menuitem] .ico{width:15px;height:15px}#account-menu #signout{color:var(--danger, #e5534b)}#account-menu #signout:hover{color:var(--danger, #e5534b);background:var(--hover)}#main{flex:1;display:flex;flex-direction:column;min-width:0}#topbar{position:relative;display:flex;align-items:center;gap:9px;height:52px;padding:0 16px;border-bottom:1px solid var(--border)}.icon-btn{display:none;width:34px;height:34px;border:none;background:transparent;color:var(--text-dim);cursor:pointer;border-radius:7px;align-items:center;justify-content:center}.icon-btn:hover{color:var(--text);background:var(--hover)}#crumb{font-size:12.5px;color:var(--text);font-weight:500;letter-spacing:-.01em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#crumb .crumb-seg{color:var(--text-dim);cursor:pointer}#crumb .crumb-seg:hover{color:var(--accent-bright)}#crumb .crumb-sep{color:var(--text-ghost);margin:0 5px}#meta{flex:1;min-width:0;font-size:12px;color:var(--text-faint);text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn{display:inline-flex;align-items:center;gap:6px;flex:none;height:30px;padding:0 11px;border-radius:var(--r-ctl);border:1px solid var(--border);background:var(--surface);color:var(--text-dim);font-size:12.5px;font-weight:500;cursor:pointer;text-decoration:none}.btn:hover{background:var(--hover);color:var(--text);border-color:var(--border-2)}.btn .ico{width:15px;height:15px}.btn.ghost{color:var(--text-dim)}.tipcard{display:flex;align-items:center;gap:7px;white-space:nowrap;padding:6px 9px;border-radius:8px;border:1px solid var(--border-2);background:var(--surface-solid, var(--bg-raise));color:var(--text);font-size:12.5px;font-weight:500;box-shadow:0 8px 24px #00000059;z-index:80}.tipcard kbd{font:11px var(--ui);color:var(--text-faint);background:var(--hover);border:1px solid var(--border-2);border-radius:5px;padding:1px 5px}#more-menu{position:absolute;right:12px;top:calc(100% - 4px);z-index:80;background:var(--bg-raise);border:1px solid var(--border-2);border-radius:var(--r-card);box-shadow:0 18px 44px -14px #000000bf;padding:6px;min-width:168px}.more-item{display:block;width:100%;text-align:left;min-height:40px;padding:0 12px;background:transparent;border:none;cursor:pointer;color:var(--text);font:inherit;font-size:13.5px;border-radius:var(--r-ctl)}.more-item:hover{background:var(--hover)}#content{flex:1;overflow-y:auto;padding:44px 40px 110px;scroll-behavior:smooth}.empty{color:var(--text-faint);text-align:center;margin-top:22vh}.empty-hint{display:block;margin-top:6px;font-size:12px;color:var(--text-ghost)}.onboard{max-width:560px;margin:8vh auto 0}.onboard h1{font-size:25px;font-weight:640;letter-spacing:-.02em;margin:0 0 8px;color:#f4f6f9}.onboard>p{color:var(--text-dim);margin:0 0 28px;font-size:14px}.ob-card{background:var(--bg-side);border:1px solid var(--border);border-radius:var(--r-card);padding:20px 22px;margin-bottom:14px}.ob-card h3{margin:0 0 6px;font-size:14.5px;font-weight:600}.ob-card p{margin:0 0 14px;font-size:13px;color:var(--text-dim)}.ob-row{display:flex;gap:9px}.ob-row input{flex:1;height:34px;padding:0 12px;border-radius:var(--r-ctl);border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;font-size:13px;outline:none}.ob-row input:focus{border-color:var(--accent);background:var(--hover)}.pbtn{display:inline-flex;align-items:center;gap:6px;flex:none;height:32px;padding:0 14px;border-radius:var(--r-ctl);border:none;background:var(--accent);color:#241704;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap}.pbtn:hover{background:var(--accent-bright)}.pbtn .ico{width:15px;height:15px}.danger-btn{display:inline-flex;align-items:center;height:32px;padding:0 14px;border-radius:var(--r-ctl);border:none;background:#b3382e;color:#fff;font-size:13px;font-weight:600;cursor:pointer}.danger-btn:hover{background:#c94336}.admin{max-width:760px}.admin h1{font-size:21px;font-weight:640;letter-spacing:-.02em;margin:0 0 6px;color:#f4f6f9}.admin h3{font-size:10.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--text-ghost);font-weight:600;margin:30px 0 10px}.admin-sub{color:var(--text-dim);font-size:13.5px;margin:0 0 6px;line-height:1.55}.admin-h{display:flex;align-items:center;justify-content:space-between;margin:30px 0 10px}.admin-h h3{margin:0}.admin-row{display:flex;gap:9px;margin-bottom:8px}.admin-row input{flex:1;height:34px;padding:0 12px;border-radius:var(--r-ctl);border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;font-size:13px;outline:none}.admin-row input:focus{border-color:var(--accent);background:var(--hover)}.admin-list{border:1px solid var(--border);border-radius:var(--r-card);overflow:hidden;background:var(--bg-side)}.admin-item{display:flex;align-items:center;gap:11px;padding:11px 14px;border-bottom:1px solid var(--border);font-size:13.5px}.admin-item:last-child{border-bottom:none}.admin-item:hover{background:#ffffff04}.ai-main{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.ai-main.mono{font:12px var(--mono);color:var(--text-dim);cursor:pointer}.ai-tag{font-size:11.5px;color:var(--text-faint);flex:none}.admin-item select{height:28px;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:0 8px;font:inherit;font-size:12.5px;cursor:pointer}.admin-item select:hover{border-color:var(--border-2)}.ai-btn,.ai-del{flex:none;height:27px;padding:0 11px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text-dim);font:inherit;font-size:12px;font-weight:500;cursor:pointer}.ai-btn:hover{background:var(--hover);color:var(--text);border-color:var(--border-2)}.ai-del{color:var(--del);border-color:transparent;background:transparent}.ai-del:hover{background:#f26d6d1f;color:#ff8b8b}.admin-empty{padding:14px;color:var(--text-faint);font-size:13px}.admin-item.toggle{cursor:pointer;align-items:flex-start}.admin-item.toggle .ai-main{white-space:normal}.tg-label{font-size:13.5px;font-weight:550;color:var(--text)}.tg-desc{font-size:12px;color:var(--text-faint);margin-top:3px;line-height:1.5}.admin-item.toggle input{width:16px;height:16px;margin-top:2px;accent-color:var(--accent);flex:none}.dirlist{max-width:704px;margin:0 auto}.dl-title{display:flex;align-items:center;gap:10px;font-size:21px;font-weight:640;letter-spacing:-.02em;margin:0 0 4px;color:#f4f6f9}.dl-title-icon{display:flex;color:var(--accent)}.dl-title-icon .ico{width:20px;height:20px}.dl-sub{color:var(--text-faint);font-size:12.5px;margin:0 0 18px}.dl-items{border:1px solid var(--border);border-radius:var(--r-card);overflow:hidden;background:var(--bg-side)}.dl-row{display:flex;align-items:center;gap:11px;padding:10px 14px;border-bottom:1px solid var(--border);cursor:pointer}.dl-row:last-child{border-bottom:none}.dl-row:hover{background:var(--hover)}.dl-row .ticon{flex:none;display:flex;color:var(--text-ghost)}.dl-row .ticon .ico{width:16px;height:16px}.dl-row:hover .ticon{color:var(--text-faint)}.dl-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;color:var(--text)}.dl-meta{flex:none;font-size:12px;color:var(--text-faint);font-variant-numeric:tabular-nums}.heatdot{flex:none;width:7px;height:7px;border-radius:50%;background:var(--accent)}.heatdot.lvl1{opacity:.3}.heatdot.lvl2{opacity:.55}.heatdot.lvl3{opacity:.8}.heatdot.lvl4{opacity:1;box-shadow:0 0 6px #f5a6238c}.dl-empty{padding:24px 14px;color:var(--text-faint);font-size:13px;border:1px dashed var(--border);border-radius:var(--r-card);text-align:center}.dl-h3{margin:28px 0 8px;font-size:10.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--text-ghost);font-weight:600}.dl-hlist{border:1px solid var(--border);border-radius:var(--r-card);background:var(--bg-side);overflow:hidden;max-width:none}.dl-hlist .hentry:last-child{border-bottom:none}.hentry.clickable{cursor:pointer}.hentry.clickable:hover{background:var(--hover)}.dl-more{margin-top:10px}#vault-name.vault-link{cursor:pointer}#vault-name.vault-link:hover{color:var(--accent-bright)}.guide{max-width:760px;margin:0 auto}.gd-tabs{display:flex;gap:2px;margin:20px 0 16px;border-bottom:1px solid var(--border);overflow-x:auto}.gd-tab{font:inherit;font-size:13px;font-weight:600;padding:7px 12px 9px;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;color:var(--text-faint);cursor:pointer;white-space:nowrap}.gd-tab:hover{color:var(--text)}.gd-tab.active{color:var(--accent-bright);border-bottom-color:var(--accent)}.gd-step{margin:0 0 18px}.gd-step-head{display:flex;align-items:center;gap:10px;margin-bottom:3px}.gd-num{flex:none;width:22px;height:22px;border-radius:50%;background:var(--glow);color:var(--accent-bright);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center}.gd-step-title{font-weight:600;font-size:14px;color:var(--text)}.gd-desc{margin:2px 0 8px 32px;color:var(--text-faint);font-size:13px;line-height:1.5}.gd-extra{font-size:12.5px;margin-top:6px}.gd-code{position:relative;margin:6px 0 6px 32px;padding:10px 72px 10px 12px;background:var(--bg-raise);border:1px solid var(--border);border-radius:var(--r-card);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.6;color:var(--text);overflow-x:auto;white-space:pre}.gd-copy{position:absolute;top:7px;right:7px;font:inherit;font-family:inherit;font-size:11px;font-weight:600;padding:3px 9px;border-radius:6px;border:1px solid var(--border-2);background:var(--bg-raise);color:var(--text-faint);cursor:pointer;box-shadow:-14px 0 12px -6px var(--bg-raise)}.gd-copy:hover{color:var(--accent-bright);border-color:var(--accent-dim)}.gd-done{margin:22px 0 8px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--r-card);background:var(--bg-side);color:var(--text-faint);font-size:13px;line-height:1.5}.home-insights{margin-top:30px;padding-top:22px;border-top:1px solid var(--border)}.insights{max-width:760px;margin:0 auto}.in-title{font-size:21px;font-weight:640;letter-spacing:-.02em;margin:0 0 4px;color:#f4f6f9}.in-title .in-scope{color:var(--text-ghost);font-weight:500;font-size:15px}.in-lens{display:flex;gap:6px;margin:0 0 14px}.in-lens-btn{font:inherit;font-size:12px;padding:5px 12px;border-radius:999px;border:1px solid var(--border);background:none;color:var(--text-faint);cursor:pointer}.in-lens-btn:hover{color:var(--text)}.in-lens-btn.active{color:var(--accent);border-color:var(--accent)}.in-chart{width:100%;height:auto;border:1px solid var(--border);border-radius:var(--r-card);background:var(--bg-side);margin-bottom:6px}.in-axis{stroke:var(--border);stroke-width:1}.in-threshold{stroke:var(--border);stroke-width:1;stroke-dasharray:4 4}.in-danger-zone{fill:#f26d6d0d}.in-label{fill:var(--text-ghost);font-size:11px}.in-quad{fill:var(--text-ghost);font-size:10.5px;text-transform:uppercase;letter-spacing:.06em}.in-quad-danger{fill:#e07070}.in-pt{fill:var(--accent);opacity:.5;cursor:pointer}.in-pt:hover{opacity:1}.in-pt.cold{fill:var(--text-ghost);opacity:.25}.in-pt.danger{fill:#e05d5d;opacity:.6}.in-treemap{background:#0c0d10}.in-tm-group{fill:none;stroke:var(--border);stroke-width:1;cursor:pointer;pointer-events:all}.in-tm-glabel{fill:var(--text-faint);font-size:10px;text-transform:uppercase;letter-spacing:.05em;cursor:pointer}.in-tm-cell{cursor:pointer}.in-tm-cell:hover{stroke:#fff;stroke-width:1}.in-tm-label{fill:#0c0d10;font-size:10.5px;font-weight:620;cursor:pointer;pointer-events:none}.in-hotpath{border:1px solid var(--border);border-radius:var(--r-card);background:var(--bg-side);overflow:hidden}.in-hp-row{display:flex;align-items:center;gap:10px;padding:6px 12px;border-bottom:1px solid var(--border);cursor:pointer}.in-hp-row:last-child{border-bottom:none}.in-hp-row:hover{background:var(--hover)}.in-hp-name{flex:0 0 300px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;color:var(--text)}.in-hp-name.danger{color:var(--accent)}.in-hp-bar{flex:1;display:flex;height:10px;border-radius:3px;overflow:hidden}.in-hp-agent{background:var(--accent)}.in-hp-human{background:#5b8def}.in-hp-count{flex:none;width:40px;text-align:right;font-size:11.5px;color:var(--text-faint);font-variant-numeric:tabular-nums}.in-legend{margin:8px 2px 0;font-size:11.5px;color:var(--text-faint)}.in-sw{display:inline-block;width:10px;height:10px;border-radius:2px;vertical-align:-1px}.in-sw.agent{background:var(--accent)}.in-sw.human{background:#5b8def}.in-matrix rect{transition:opacity .1s}.in-matrix rect:hover{opacity:.85}.history{max-width:860px}.hentry{padding:11px 12px;border-bottom:1px solid var(--border)}.hentry:hover{background:#ffffff04}.hline{display:flex;gap:10px;align-items:center}.hkind{display:inline-flex;color:var(--add)}.hkind .ico{width:13px;height:13px}.hentry.edit .hkind{color:var(--accent)}.hentry.delete .hkind{color:var(--del)}.htag{flex:none;font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;padding:1px 6px;border-radius:4px}.hentry.add .htag{color:var(--add);background:#4cc38a1f}.hentry.edit .htag{color:var(--accent-bright);background:var(--glow)}.hentry.delete .htag{color:#ff8b8b;background:#f26d6d1f}.hpath{font-weight:500;cursor:pointer;color:var(--text);font-size:13px}.hpath:hover{color:var(--accent-bright)}.htime{margin-left:auto;color:var(--text-faint);font-size:12px;font-variant-numeric:tabular-nums}.hmeta{display:flex;align-items:center;gap:14px;margin-top:4px;padding-left:23px;font-size:12px;color:var(--text-dim)}.hdev,.hsize{color:var(--text-faint)}.hsize{font-variant-numeric:tabular-nums;white-space:nowrap;flex:none}.hnote{margin-top:4px;padding-left:23px;font-size:12px;color:var(--text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.hnote:hover{color:var(--text)}.hnote.open{white-space:normal;overflow-wrap:anywhere}.hnote:before{content:"› ";color:var(--text-ghost)}.hnote a{color:var(--accent-bright);text-decoration:none}.hnote a:hover{text-decoration:underline}#palette{position:fixed;top:12vh;left:50%;transform:translate(-50%);z-index:151;display:block;width:min(560px,92vw);background:var(--bg-raise);border:1px solid var(--border-2);border-radius:var(--r-over);box-shadow:0 24px 70px -18px #000c;overflow:hidden;outline:none;padding:0}#palette-inputwrap{display:flex;align-items:center;gap:11px;padding:14px 16px;border-bottom:1px solid var(--border)}#palette-inputwrap .ico{width:17px;height:17px;color:var(--text-faint)}#palette-input{flex:1;width:100%;border:none;background:transparent;color:var(--text);font:inherit;font-size:15px;letter-spacing:-.01em;outline:none;padding:0}#palette-input::placeholder{color:var(--text-ghost)}#palette-results{list-style:none;margin:0;padding:8px;max-height:46vh;overflow-y:auto}#palette-results [cmdk-item]{display:flex;align-items:center;gap:11px;height:38px;padding:0 10px;border-radius:9px;cursor:pointer;color:var(--text-dim);font-size:13.5px}#palette-results [cmdk-item][data-selected=true]{background:var(--glow)}#palette-results [cmdk-item][data-selected=true] .picon{color:var(--accent)}#palette-results [cmdk-item][data-selected=true] .plabel,#palette-results [cmdk-item][data-selected=true] .plabel b{color:var(--accent-bright)}#palette-results li{display:flex;align-items:center;gap:11px;height:38px;padding:0 10px;border-radius:9px;cursor:pointer;color:var(--text-dim);font-size:13.5px}#palette-results li.selected{background:var(--glow)}#palette-results li.selected .picon{color:var(--accent)}#palette-results li.selected .plabel,#palette-results li.selected .plabel b{color:var(--accent-bright)}#palette-results li .picon{width:18px;flex:none;display:flex;justify-content:center;color:var(--text-faint)}#palette-results li .picon .ico{width:15px;height:15px}#palette-results li .plabel{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text)}#palette-results li .plabel b{color:var(--accent-bright);font-weight:600}#palette-results li .pkind{flex:none;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-ghost)}#palette-results .pempty{color:var(--text-faint);cursor:default;justify-content:center;height:auto;padding:14px}#palette-hint{padding:9px 16px;border-top:1px solid var(--border);font-size:11px;color:var(--text-ghost)}[data-slot=dialog-overlay]{position:fixed;inset:0;background:#06070999;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:150}.modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:151;display:block;background:var(--bg-raise);border:1px solid var(--border-2);border-radius:var(--r-over);padding:22px 24px;width:min(460px,calc(100vw - 40px));box-shadow:0 24px 70px -18px #000c;outline:none}.modal h3{margin:0 0 10px;font-size:16px;font-weight:620;letter-spacing:-.01em}.modal p{margin:0 0 16px;font-size:13.5px;color:var(--text-dim);line-height:1.55}.modal p b{color:var(--text)}.modal-url{font:12px var(--mono);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-ctl);padding:9px 11px;color:var(--text-dim);word-break:break-all;margin-bottom:16px}.modal-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.modal-label{display:block;font-size:12.5px;color:var(--text-dim);margin:0 0 6px}.modal-msg{margin:0 0 16px;font-size:13.5px;color:var(--text-dim);line-height:1.55}.modal-input{width:100%;height:36px;padding:0 12px;border-radius:var(--r-ctl);border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;font-size:14px;margin-bottom:16px;outline:none}.modal-input:focus{border-color:var(--accent);background:var(--hover)}[data-sonner-toast]{background:var(--bg-raise)!important;color:var(--text)!important;border:1px solid var(--border-2)!important;border-radius:10px!important;font-size:13.5px!important;box-shadow:0 18px 44px -12px #000000b3!important}[data-sonner-toast][data-type=error]{border-color:#f26d6d80!important;color:#ffb0aa!important}#sb-backdrop{display:none}@media(max-width:900px){#sidebar{position:fixed;z-index:60;top:0;left:0;height:100%;transform:translate(-100%);transition:transform .2s ease;box-shadow:0 0 40px #0009}body.sb-open #sidebar{transform:translate(0)}body.sb-open #sb-backdrop{display:block;position:fixed;inset:0;background:#0000008c;z-index:50}.icon-btn{display:inline-flex;width:44px;height:44px}#content{padding:24px 18px 70px}#topbar{padding:0 8px;gap:4px}.btn .lbl{display:none}#topbar .btn{min-width:44px;min-height:44px;padding:0;justify-content:center;gap:0}#topbar .btn .ico{width:18px;height:18px}#more-btn:not([hidden]){display:inline-flex}#history-btn,#upload-btn,#download{display:none!important}#meta{display:none}#crumb{flex:1}#vault{padding:0 8px 0 12px}.icon-btn2,#signout,#tree .row,#projects .row{height:44px}#account-btn,#project-select{min-height:44px}.nav-add{min-width:44px;min-height:44px}.markdown,.admin,.onboard,.history,.dirlist{max-width:100%}.markdown table,pre.plain{display:block;overflow-x:auto;max-width:100%}.ob-row{flex-direction:column}.ob-row input{flex:none;min-height:44px}.admin-item{flex-wrap:wrap;row-gap:8px;padding:12px 14px}.admin-item select{height:44px}.ai-btn,.ai-del{height:auto;min-height:44px;padding:0 12px}.admin-item .ai-main{flex:1 1 100%;white-space:normal;overflow-wrap:break-word}.gd-code{min-height:62px;padding-top:12px;padding-bottom:12px}.gd-copy{min-height:44px;padding:0 14px}.gd-tab{min-height:44px}.in-lens-btn{min-height:44px;padding:0 14px}.modal-input{height:44px}.modal-actions button,.pbtn,#palette-results li{height:auto;min-height:44px}.more-item{min-height:44px}}.modal-actions .ai-del{margin-right:auto}@media(max-width:430px){.dl-meta{display:none}.ai-tag{font-size:11px}.htime{white-space:nowrap;font-size:12px}.hline{flex-wrap:wrap}.modal-actions .ai-del{flex:0 0 100%}}.markdown{max-width:704px;width:100%;margin:0 auto}.markdown h1,.markdown h2,.markdown h3,.markdown h4{color:#f4f6f9;line-height:1.25;letter-spacing:-.018em;margin:1.5em 0 .5em;text-wrap:balance}.markdown h1:first-child{margin-top:0}.markdown h1{font-size:1.85em;font-weight:660;letter-spacing:-.024em}.markdown h2{font-size:1.32em;font-weight:620;margin-top:1.7em}.markdown h3{font-size:1.08em;font-weight:620}.markdown p,.markdown li{color:#c6cbd3;font-size:14.5px;line-height:1.72}.markdown p{margin:0 0 1em}.markdown strong{color:var(--text);font-weight:620}.markdown a{color:var(--accent-bright);text-decoration:none;border-bottom:1px solid rgba(245,166,35,.28)}.markdown a:hover{border-bottom-color:var(--accent)}.markdown ul,.markdown ol{margin:0 0 1em;padding-left:1.4em}.markdown li{margin-bottom:.4em}.markdown li::marker{color:var(--text-ghost)}.markdown code{background:var(--hover);border:1px solid var(--border);padding:.1em .4em;border-radius:5px;font:12.5px/1.5 var(--mono);color:#e4d9c4}.markdown pre{background:var(--code-bg);border:1px solid var(--border);border-radius:var(--r-card);padding:14px 16px;overflow-x:auto;margin:1.3em 0}.markdown pre code{background:none;border:none;padding:0;color:#c6cbd3}.markdown blockquote{margin:1.3em 0;padding:.3em 1em;border-left:2px solid var(--accent);background:linear-gradient(90deg,var(--glow),transparent);border-radius:0 8px 8px 0;color:#d8cdb6}.markdown blockquote p{margin:.3em 0;color:#d8cdb6}.markdown table{border-collapse:collapse;margin:1.3em 0;font-size:13.5px}.markdown th,.markdown td{border-bottom:1px solid var(--border);padding:9px 13px;text-align:left}.markdown th{color:var(--text-faint);font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:600;border-bottom-color:var(--border-2)}.markdown tr:hover td{background:#ffffff05}.markdown img{max-width:100%;border-radius:8px;border:1px solid var(--border)}.markdown hr{border:none;border-top:1px solid var(--border);margin:2.2em 0}.markdown table.frontmatter{margin:0 0 1.8em;font-size:12px;background:var(--surface);border:1px solid var(--border);border-radius:8px;border-collapse:separate;border-spacing:0}.markdown table.frontmatter th{text-transform:none;letter-spacing:0;font-size:11.5px;color:var(--text-faint);font-weight:600;text-align:left;white-space:nowrap;vertical-align:top;padding:6px 14px 6px 12px;border-bottom:1px solid var(--border)}.markdown table.frontmatter td{color:var(--text-dim);padding:6px 12px 6px 0;border-bottom:1px solid var(--border)}.markdown table.frontmatter tr:last-child th,.markdown table.frontmatter tr:last-child td{border-bottom:none}.markdown table.frontmatter code{white-space:pre-wrap;font-size:11px}.markdown input[type=checkbox]{accent-color:var(--accent)}.htmlview{display:block;width:100%;height:calc(100vh - 150px);border:1px solid var(--border);border-radius:var(--r-card);background:#fff}.notfound{margin-top:12vh;text-align:center;color:var(--text-dim)}.notfound h1{color:var(--text);font-size:1.4em;margin-bottom:.5em}.notfound code{background:var(--hover);border:1px solid var(--border);padding:.15em .5em;border-radius:6px}.notfound .nf-sub{max-width:440px;margin:12px auto 20px;font-size:13px;color:var(--text-faint);line-height:1.6}pre.plain{background:var(--code-bg);border:1px solid var(--border);border-radius:var(--r-card);padding:14px 16px;overflow-x:auto;font:12.5px/1.6 var(--mono);color:#c6cbd3;white-space:pre-wrap;overflow-wrap:anywhere;max-width:900px}#content.markdown{min-width:0}.filecard{margin-top:15vh;text-align:center;color:var(--text-dim)}.filecard .name{font-size:1.2em;color:var(--text);margin-bottom:.3em}.filecard .btn{margin-top:14px} +@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-duration:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-lg:32rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--font-weight-medium:500;--font-weight-semibold:600;--tracking-widest:.1em;--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--color-background:#0a0b0d;--color-foreground:#eef0f3;--color-popover:#15171b;--color-popover-foreground:#eef0f3;--color-primary:#f5a623;--color-primary-foreground:#1a1204;--color-secondary:#ffffff08;--color-secondary-foreground:#eef0f3;--color-muted:#ffffff0f;--color-muted-foreground:#9aa0a9;--color-accent:#ffffff0f;--color-accent-foreground:#eef0f3;--color-destructive:#f26d6d;--color-border:#ffffff12;--color-input:#ffffff1c;--color-ring:#d3861a}}@layer base,components;@layer utilities{.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:0}.top-4{top:calc(var(--spacing) * 4)}.top-20{top:calc(var(--spacing) * 20)}.top-\[50\%\]{top:50%}.right-2{right:calc(var(--spacing) * 2)}.right-4{right:calc(var(--spacing) * 4)}.left-2{left:calc(var(--spacing) * 2)}.left-\[50\%\]{left:50%}.z-50{z-index:50}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.my-1{margin-block:var(--spacing)}.mt-4{margin-top:calc(var(--spacing) * 4)}.ml-auto{margin-left:auto}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-row{display:table-row}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-2\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-full{height:100%}.h-px{height:1px}.max-h-\(--radix-dropdown-menu-content-available-height\){max-height:var(--radix-dropdown-menu-content-available-height)}.max-h-\(--radix-select-content-available-height\){max-height:var(--radix-select-content-available-height)}.max-h-\[300px\]{max-height:300px}.w-fit{width:fit-content}.w-full{width:100%}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.min-w-0{min-width:0}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.shrink-0{flex-shrink:0}.caption-bottom{caption-side:bottom}.origin-\(--radix-dropdown-menu-content-transform-origin\){transform-origin:var(--radix-dropdown-menu-content-transform-origin)}.origin-\(--radix-select-content-transform-origin\){transform-origin:var(--radix-select-content-transform-origin)}.origin-\(--radix-tooltip-content-transform-origin\){transform-origin:var(--radix-tooltip-content-transform-origin)}.translate-x-\[-50\%\]{--tw-translate-x:-50%;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\[-50\%\]{--tw-translate-y:-50%;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\[calc\(-50\%_-_2px\)\]{--tw-translate-y: calc(-50% - 2px) ;translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-45{rotate:45deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-in{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.scroll-my-1{scroll-margin-block:var(--spacing)}.scroll-py-1{scroll-padding-block:var(--spacing)}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-4{gap:calc(var(--spacing) * 4)}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded-\[2px\]{border-radius:2px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xs{border-radius:var(--radius-xs)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-input{border-color:var(--color-input)}.bg-background{background-color:var(--color-background)}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black) 50%,transparent)}}.bg-border{background-color:var(--color-border)}.bg-destructive{background-color:var(--color-destructive)}.bg-foreground{background-color:var(--color-foreground)}.bg-muted\/50{background-color:#ffffff08}@supports (color:color-mix(in lab,red,red)){.bg-muted\/50{background-color:color-mix(in oklab,var(--color-muted) 50%,transparent)}}.bg-popover{background-color:var(--color-popover)}.bg-primary{background-color:var(--color-primary)}.bg-secondary{background-color:var(--color-secondary)}.bg-transparent{background-color:#0000}.fill-current{fill:currentColor}.fill-foreground{fill:var(--color-foreground)}.p-0{padding:0}.p-1{padding:var(--spacing)}.p-2{padding:calc(var(--spacing) * 2)}.p-6{padding:calc(var(--spacing) * 6)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-6{padding-block:calc(var(--spacing) * 6)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-8{padding-left:calc(var(--spacing) * 8)}.text-center{text-align:center}.text-left{text-align:left}.align-middle{vertical-align:middle}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-none{--tw-leading:1;line-height:1}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-balance{text-wrap:balance}.whitespace-nowrap{white-space:nowrap}.text-background{color:var(--color-background)}.text-destructive{color:var(--color-destructive)}.text-foreground{color:var(--color-foreground)}.text-muted-foreground{color:var(--color-muted-foreground)}.text-popover-foreground{color:var(--color-popover-foreground)}.text-primary{color:var(--color-primary)}.text-primary-foreground{color:var(--color-primary-foreground)}.text-secondary-foreground{color:var(--color-secondary-foreground)}.text-white{color:var(--color-white)}.underline-offset-4{text-underline-offset:4px}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-offset-background{--tw-ring-offset-color:var(--color-background)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[color\,box-shadow\]{transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.fade-in-0{--tw-enter-opacity:0}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.zoom-in-95{--tw-enter-scale:.95}.running{animation-play-state:running}.group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled=true] *){opacity:.5}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.selection\:bg-primary ::selection{background-color:var(--color-primary)}.selection\:bg-primary::selection{background-color:var(--color-primary)}.selection\:text-primary-foreground ::selection{color:var(--color-primary-foreground)}.selection\:text-primary-foreground::selection{color:var(--color-primary-foreground)}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-7::file-selector-button{height:calc(var(--spacing) * 7)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--color-foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--color-muted-foreground)}@media(hover:hover){.hover\:bg-accent:hover{background-color:var(--color-accent)}.hover\:bg-destructive\/90:hover{background-color:#f26d6de6}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--color-destructive) 90%,transparent)}}.hover\:bg-muted\/50:hover{background-color:#ffffff08}@supports (color:color-mix(in lab,red,red)){.hover\:bg-muted\/50:hover{background-color:color-mix(in oklab,var(--color-muted) 50%,transparent)}}.hover\:bg-primary\/90:hover{background-color:#f5a623e6}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--color-primary) 90%,transparent)}}.hover\:bg-secondary\/80:hover{background-color:#ffffff06}@supports (color:color-mix(in lab,red,red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab,var(--color-secondary) 80%,transparent)}}.hover\:text-accent-foreground:hover{color:var(--color-accent-foreground)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}}.focus\:bg-accent:focus{background-color:var(--color-accent)}.focus\:text-accent-foreground:focus{color:var(--color-accent-foreground)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-ring:focus{--tw-ring-color:var(--color-ring)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus\:outline-hidden:focus{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.focus\:outline-hidden:focus{outline-offset:2px;outline:2px solid #0000}}.focus-visible\:border-ring:focus-visible{border-color:var(--color-ring)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:#f26d6d33}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--color-destructive) 20%, transparent)}}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:#d3861a80}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--color-ring) 50%, transparent)}}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.has-aria-expanded\:bg-muted\/50:has([aria-expanded=true]){background-color:#ffffff08}@supports (color:color-mix(in lab,red,red)){.has-aria-expanded\:bg-muted\/50:has([aria-expanded=true]){background-color:color-mix(in oklab,var(--color-muted) 50%,transparent)}}.has-\[\>svg\]\:px-1\.5:has(>svg){padding-inline:calc(var(--spacing) * 1.5)}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing) * 2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing) * 3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing) * 4)}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--color-destructive)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:#f26d6d33}@supports (color:color-mix(in lab,red,red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--color-destructive) 20%, transparent)}}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true]{pointer-events:none}.data-\[disabled\=true\]\:opacity-50[data-disabled=true]{opacity:.5}.data-\[error\=true\]\:text-destructive[data-error=true]{color:var(--color-destructive)}.data-\[inset\]\:pl-8[data-inset]{padding-left:calc(var(--spacing) * 8)}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:var(--color-muted-foreground)}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:var(--color-accent)}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:var(--color-accent-foreground)}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\[size\=default\]\:h-9[data-size=default]{height:calc(var(--spacing) * 9)}.data-\[size\=sm\]\:h-8[data-size=sm]{height:calc(var(--spacing) * 8)}:is(.\*\*\:data-\[slot\=command-input-wrapper\]\:h-12 *)[data-slot=command-input-wrapper]{height:calc(var(--spacing) * 12)}:is(.\*\:data-\[slot\=select-value\]\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\*\:data-\[slot\=select-value\]\:flex>*)[data-slot=select-value]{display:flex}:is(.\*\:data-\[slot\=select-value\]\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\*\:data-\[slot\=select-value\]\:gap-2>*)[data-slot=select-value]{gap:calc(var(--spacing) * 2)}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=open\]\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:var(--color-accent)}.data-\[state\=open\]\:text-accent-foreground[data-state=open]{color:var(--color-accent-foreground)}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:var(--color-muted-foreground)}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:var(--color-muted)}.data-\[variant\=destructive\]\:text-destructive[data-variant=destructive]{color:var(--color-destructive)}.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:#f26d6d1a}@supports (color:color-mix(in lab,red,red)){.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:color-mix(in oklab,var(--color-destructive) 10%,transparent)}}.data-\[variant\=destructive\]\:focus\:text-destructive[data-variant=destructive]:focus{color:var(--color-destructive)}@media(min-width:40rem){.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:text-left{text-align:left}}@media(min-width:48rem){.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}@media(prefers-color-scheme:dark){.dark\:border-input{border-color:var(--color-input)}.dark\:bg-destructive\/60{background-color:#f26d6d99}@supports (color:color-mix(in lab,red,red)){.dark\:bg-destructive\/60{background-color:color-mix(in oklab,var(--color-destructive) 60%,transparent)}}.dark\:bg-input\/30{background-color:#ffffff08}@supports (color:color-mix(in lab,red,red)){.dark\:bg-input\/30{background-color:color-mix(in oklab,var(--color-input) 30%,transparent)}}@media(hover:hover){.dark\:hover\:bg-accent\/50:hover{background-color:#ffffff08}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-accent\/50:hover{background-color:color-mix(in oklab,var(--color-accent) 50%,transparent)}}.dark\:hover\:bg-input\/50:hover{background-color:#ffffff0e}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-input\/50:hover{background-color:color-mix(in oklab,var(--color-input) 50%,transparent)}}}.dark\:focus-visible\:ring-destructive\/40:focus-visible{--tw-ring-color:#f26d6d66}@supports (color:color-mix(in lab,red,red)){.dark\:focus-visible\:ring-destructive\/40:focus-visible{--tw-ring-color:color-mix(in oklab, var(--color-destructive) 40%, transparent)}}.dark\:aria-invalid\:ring-destructive\/40[aria-invalid=true]{--tw-ring-color:#f26d6d66}@supports (color:color-mix(in lab,red,red)){.dark\:aria-invalid\:ring-destructive\/40[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--color-destructive) 40%, transparent)}}.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20[data-variant=destructive]:focus{background-color:#f26d6d33}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20[data-variant=destructive]:focus{background-color:color-mix(in oklab,var(--color-destructive) 20%,transparent)}}}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-block:calc(var(--spacing) * 1.5)}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:var(--color-muted-foreground)}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:0}.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg{height:calc(var(--spacing) * 5)}.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg{width:calc(var(--spacing) * 5)}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:calc(var(--spacing) * 12)}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-block:calc(var(--spacing) * 3)}.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{height:calc(var(--spacing) * 5)}.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{width:calc(var(--spacing) * 5)}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\:not\(\[class\*\=\'text-\'\]\)\]\:text-muted-foreground svg:not([class*=text-]){color:var(--color-muted-foreground)}.\[\&_tr\]\:border-b tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-style:var(--tw-border-style);border-width:0}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}:is(.\*\:\[span\]\:last\:flex>*):is(span):last-child{display:flex}:is(.\*\:\[span\]\:last\:items-center>*):is(span):last-child{align-items:center}:is(.\*\:\[span\]\:last\:gap-2>*):is(span):last-child{gap:calc(var(--spacing) * 2)}:is(.data-\[variant\=destructive\]\:\*\:\[svg\]\:text-destructive\![data-variant=destructive]>*):is(svg){color:var(--color-destructive)!important}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y:2px;translate:var(--tw-translate-x) var(--tw-translate-y)}.\[\&\>tr\]\:last\:border-b-0>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-duration{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}:root{--bg: #0a0b0d;--bg-side: #0c0e10;--bg-raise: #15171b;--surface: rgba(255,255,255,.03);--hover: rgba(255,255,255,.06);--border: rgba(255,255,255,.07);--border-2: rgba(255,255,255,.11);--code-bg: #0d0f12;--text: #eef0f3;--text-dim: #9aa0a9;--text-faint: #868b93;--text-ghost: #666b74;--accent: #f5a623;--accent-bright: #ffcf85;--accent-dim: #d3861a;--accent-press: #e0951a;--glow: rgba(245,166,35,.13);--add: #4cc38a;--del: #f26d6d;--mono: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--ui: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Inter", "Segoe UI", Roboto, sans-serif;--r-ctl: 7px;--r-card: 10px;--r-over: 14px}*{box-sizing:border-box}[hidden]{display:none!important}html,body{height:100%;margin:0}#root{display:contents}body{display:flex;background:var(--bg);color:var(--text);font:13px/1.5 var(--ui);letter-spacing:-.006em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}::selection{background:var(--glow);color:var(--accent-bright)}:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-radius:5px}.sprite{position:absolute}.ico{width:16px;height:16px;flex:none;stroke:currentColor;stroke-width:1.6;fill:none;stroke-linecap:round;stroke-linejoin:round}button,input,a.btn{font-family:inherit}#sidebar{width:264px;min-width:210px;background:var(--bg-side);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}#vault{display:flex;align-items:center;gap:9px;height:52px;padding:0 12px 0 14px;border-bottom:1px solid var(--border);position:relative;z-index:45}#vault-badge{width:22px;height:22px;border-radius:6px;flex:none;display:grid;place-items:center;font-size:13px;line-height:1;background:linear-gradient(160deg,#ffcf85,#f5a623 55%,#d3861a);box-shadow:0 1px #ffffff59 inset,0 2px 6px -1px #f5a62366}#vault-name{font-weight:600;font-size:13px;letter-spacing:-.01em;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vault-actions{display:flex;align-items:center;gap:4px}#vault #signout,.icon-btn2{width:28px;height:28px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-ghost);background:transparent;border:none;cursor:pointer;text-decoration:none}#vault #signout:hover,.icon-btn2:hover{color:var(--text);background:var(--hover)}#vault #signout .ico,.icon-btn2 .ico{width:16px;height:16px}#projects{flex:none;max-height:32%;overflow-y:auto;padding:10px 8px 8px;border-bottom:1px solid var(--border)}.nav-head{display:flex;align-items:center;justify-content:space-between;padding:6px 8px;font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--text-ghost)}.nav-add{display:grid;place-items:center;width:18px;height:18px;border:none;background:transparent;color:var(--text-ghost);cursor:pointer;border-radius:5px}.nav-add .ico{width:14px;height:14px}.nav-add:hover{color:var(--text);background:var(--hover)}#projects ul{list-style:none;margin:0;padding:0}#projects .row{display:flex;align-items:center;gap:9px;height:31px;padding:0 8px;border-radius:7px;color:var(--text-dim);cursor:pointer;position:relative;white-space:nowrap;overflow:hidden}.proj-mark{width:17px;height:17px;border-radius:5px;flex:none;display:grid;place-items:center;font-size:10px;font-weight:700;color:#0a0b0d;letter-spacing:-.02em;text-transform:uppercase}#projects .row .label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}#projects .row:hover{background:var(--hover);color:var(--text)}#projects .row.active{background:var(--glow);color:var(--accent-bright)}#projects .row.active:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:2px;border-radius:2px;background:var(--accent)}#tree{flex:1;overflow-y:auto;padding:8px 8px 24px}.tguide{position:absolute;top:0;bottom:0;width:1px;background:var(--border);pointer-events:none}#tree .row{display:flex;align-items:center;gap:6px;height:28px;padding:0 8px;border-radius:7px;color:var(--text-dim);cursor:pointer;position:relative;white-space:nowrap;overflow:hidden}#tree .row:hover{background:var(--hover);color:var(--text)}#tree .row.active{background:var(--glow);color:var(--accent-bright)}#tree .row.active:before{content:"";position:absolute;left:0;top:5px;bottom:5px;width:2px;border-radius:2px;background:var(--accent)}#tree .chev{width:14px;height:14px;flex:none;color:var(--text-ghost);transition:transform .12s;display:flex;align-items:center;justify-content:center}#tree .chev .ico{width:13px;height:13px}#tree .ticon{flex:none;display:flex;color:var(--text-ghost)}#tree .ticon .ico{width:15px;height:15px}#tree .row:hover .ticon,#tree .row:hover .chev{color:var(--text-faint)}#tree .row.active .ticon,#tree .row.active .chev{color:var(--accent)}#tree .label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}#tree .file .label{font-size:12.5px}#tree .file .chev{visibility:hidden}#tree .row.collapsed .chev{transform:rotate(-90deg)}.field-err{color:var(--del);font-size:12px;margin:6px 2px 0}.admin-table{width:100%;border-collapse:collapse}.admin-table th{text-align:left;font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-ghost);padding:6px 10px;border-bottom:1px solid var(--border);cursor:pointer;-webkit-user-select:none;user-select:none}.admin-table th:hover{color:var(--text-dim)}.admin-table td{padding:0;border-bottom:1px solid var(--border)}.admin-table tr.admin-item{display:table-row}.admin-table tr.admin-item td{padding:8px 10px}.admin-table tr.admin-item td:first-child{width:100%}.nav-menu{list-style:none;margin:6px 0 0;padding:0}.nav-menu .row .ico{width:15px;height:15px;flex:none;color:var(--text-ghost)}.nav-menu .row.active .ico{color:var(--accent-bright)}.proj-row{display:flex;align-items:center;gap:4px;padding:0 10px 4px 12px}#project-select{flex:1;min-width:0;height:30px;padding:0 9px;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:var(--r-ctl);background:var(--surface);color:var(--text);font:inherit;font-size:12.5px;font-weight:500;cursor:pointer;white-space:nowrap;outline:none}#project-select>span:last-of-type{overflow:hidden;text-overflow:ellipsis}#project-select:hover{background:var(--hover);border-color:var(--border-2)}#project-select svg{color:var(--text-ghost)}.proj-menu{z-index:80;min-width:var(--radix-select-trigger-width, 200px);border:1px solid var(--border-2);border-radius:9px;padding:4px;background:var(--bg-raise);box-shadow:0 10px 32px #00000059}.proj-menu [role=option]{font-size:12.5px;color:var(--text-dim);border-radius:6px;outline:none}.proj-menu [role=option][data-highlighted]{background:var(--hover);color:var(--text)}#accountbar{position:relative;border-top:1px solid var(--border);padding:7px 10px}#account-btn{width:100%;display:flex;align-items:center;gap:9px;text-align:left;padding:6px 8px;border:none;border-radius:7px;background:transparent;color:var(--text-dim);cursor:pointer;font:inherit}#account-btn:hover{background:var(--hover);color:var(--text)}#account-btn .avatar{width:26px;height:26px;flex:none;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:700}#account-btn .acct{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}#account-btn .acct b{font-size:12.5px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#account-btn .acct small{font-size:11px;color:var(--text-ghost);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#account-btn>.ico{width:14px;height:14px;color:var(--text-ghost)}#account-menu{min-width:var(--radix-dropdown-menu-trigger-width, 220px);padding:5px;border:1px solid var(--border-2);border-radius:9px;background:var(--bg-raise);box-shadow:0 10px 32px #00000059;display:flex;flex-direction:column;z-index:80;outline:none}#account-menu [role=menuitem]{outline:none}#account-menu [role=menuitem][data-highlighted]{background:var(--hover);color:var(--text)}#account-menu .menu-sec{padding:7px 9px 3px;font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-ghost)}#account-menu [role=menuitem]{display:flex;align-items:center;gap:8px;padding:7px 9px;border:none;border-radius:6px;background:transparent;text-align:left;color:var(--text-dim);font:inherit;font-size:12.5px;cursor:pointer;text-decoration:none}#account-menu [role=menuitem]:hover{background:var(--hover);color:var(--text)}#account-menu [role=menuitem] b{font-weight:600}#account-menu [role=menuitem] .ico{width:15px;height:15px}#account-menu #signout{color:var(--danger, #e5534b)}#account-menu #signout:hover{color:var(--danger, #e5534b);background:var(--hover)}#main{flex:1;display:flex;flex-direction:column;min-width:0}#topbar{position:relative;display:flex;align-items:center;gap:9px;height:52px;padding:0 16px;border-bottom:1px solid var(--border)}.icon-btn{display:none;width:34px;height:34px;border:none;background:transparent;color:var(--text-dim);cursor:pointer;border-radius:7px;align-items:center;justify-content:center}.icon-btn:hover{color:var(--text);background:var(--hover)}#crumb{font-size:12.5px;color:var(--text);font-weight:500;letter-spacing:-.01em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#crumb .crumb-seg{color:var(--text-dim);cursor:pointer}#crumb .crumb-seg:hover{color:var(--accent-bright)}#crumb .crumb-sep{color:var(--text-ghost);margin:0 5px}#meta{flex:1;min-width:0;font-size:12px;color:var(--text-faint);text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn{display:inline-flex;align-items:center;gap:6px;flex:none;height:30px;padding:0 11px;border-radius:var(--r-ctl);border:1px solid var(--border);background:var(--surface);color:var(--text-dim);font-size:12.5px;font-weight:500;cursor:pointer;text-decoration:none}.btn:hover{background:var(--hover);color:var(--text);border-color:var(--border-2)}.btn .ico{width:15px;height:15px}.btn.ghost{color:var(--text-dim)}.tipcard{display:flex;align-items:center;gap:7px;white-space:nowrap;padding:6px 9px;border-radius:8px;border:1px solid var(--border-2);background:var(--surface-solid, var(--bg-raise));color:var(--text);font-size:12.5px;font-weight:500;box-shadow:0 8px 24px #00000059;z-index:80}.tipcard kbd{font:11px var(--ui);color:var(--text-faint);background:var(--hover);border:1px solid var(--border-2);border-radius:5px;padding:1px 5px}#more-menu{position:absolute;right:12px;top:calc(100% - 4px);z-index:80;background:var(--bg-raise);border:1px solid var(--border-2);border-radius:var(--r-card);box-shadow:0 18px 44px -14px #000000bf;padding:6px;min-width:168px}.more-item{display:block;width:100%;text-align:left;min-height:40px;padding:0 12px;background:transparent;border:none;cursor:pointer;color:var(--text);font:inherit;font-size:13.5px;border-radius:var(--r-ctl)}.more-item:hover{background:var(--hover)}#content{flex:1;overflow-y:auto;padding:44px 40px 110px;scroll-behavior:smooth}.empty{color:var(--text-faint);text-align:center;margin-top:22vh}.empty-hint{display:block;margin-top:6px;font-size:12px;color:var(--text-ghost)}.onboard{max-width:560px;margin:8vh auto 0}.onboard h1{font-size:25px;font-weight:640;letter-spacing:-.02em;margin:0 0 8px;color:#f4f6f9}.onboard>p{color:var(--text-dim);margin:0 0 28px;font-size:14px}.ob-card{background:var(--bg-side);border:1px solid var(--border);border-radius:var(--r-card);padding:20px 22px;margin-bottom:14px}.ob-card h3{margin:0 0 6px;font-size:14.5px;font-weight:600}.ob-card p{margin:0 0 14px;font-size:13px;color:var(--text-dim)}.ob-row{display:flex;gap:9px}.ob-row input{flex:1;height:34px;padding:0 12px;border-radius:var(--r-ctl);border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;font-size:13px;outline:none}.ob-row input:focus{border-color:var(--accent);background:var(--hover)}.pbtn{display:inline-flex;align-items:center;gap:6px;flex:none;height:32px;padding:0 14px;border-radius:var(--r-ctl);border:none;background:var(--accent);color:#241704;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap}.pbtn:hover{background:var(--accent-bright)}.pbtn .ico{width:15px;height:15px}.danger-btn{display:inline-flex;align-items:center;height:32px;padding:0 14px;border-radius:var(--r-ctl);border:none;background:#b3382e;color:#fff;font-size:13px;font-weight:600;cursor:pointer}.danger-btn:hover{background:#c94336}.admin{max-width:760px}.admin h1{font-size:21px;font-weight:640;letter-spacing:-.02em;margin:0 0 6px;color:#f4f6f9}.admin h3{font-size:10.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--text-ghost);font-weight:600;margin:30px 0 10px}.admin-sub{color:var(--text-dim);font-size:13.5px;margin:0 0 6px;line-height:1.55}.admin-h{display:flex;align-items:center;justify-content:space-between;margin:30px 0 10px}.admin-h h3{margin:0}.admin-row{display:flex;gap:9px;margin-bottom:8px}.admin-row input{flex:1;height:34px;padding:0 12px;border-radius:var(--r-ctl);border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;font-size:13px;outline:none}.admin-row input:focus{border-color:var(--accent);background:var(--hover)}.admin-list{border:1px solid var(--border);border-radius:var(--r-card);overflow:hidden;background:var(--bg-side)}.admin-item{display:flex;align-items:center;gap:11px;padding:11px 14px;border-bottom:1px solid var(--border);font-size:13.5px}.admin-item:last-child{border-bottom:none}.admin-item:hover{background:#ffffff04}.ai-main{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.ai-main.mono{font:12px var(--mono);color:var(--text-dim);cursor:pointer}.ai-tag{font-size:11.5px;color:var(--text-faint);flex:none}.admin-item select{height:28px;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:0 8px;font:inherit;font-size:12.5px;cursor:pointer}.admin-item select:hover{border-color:var(--border-2)}.ai-btn,.ai-del{flex:none;height:27px;padding:0 11px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text-dim);font:inherit;font-size:12px;font-weight:500;cursor:pointer}.ai-btn:hover{background:var(--hover);color:var(--text);border-color:var(--border-2)}.ai-del{color:var(--del);border-color:transparent;background:transparent}.ai-del:hover{background:#f26d6d1f;color:#ff8b8b}.admin-empty{padding:14px;color:var(--text-faint);font-size:13px}.admin-item.toggle{cursor:pointer;align-items:flex-start}.admin-item.toggle .ai-main{white-space:normal}.tg-label{font-size:13.5px;font-weight:550;color:var(--text)}.tg-desc{font-size:12px;color:var(--text-faint);margin-top:3px;line-height:1.5}.admin-item.toggle input{width:16px;height:16px;margin-top:2px;accent-color:var(--accent);flex:none}.dirlist{max-width:704px;margin:0 auto}.dl-title{display:flex;align-items:center;gap:10px;font-size:21px;font-weight:640;letter-spacing:-.02em;margin:0 0 4px;color:#f4f6f9}.dl-title-icon{display:flex;color:var(--accent)}.dl-title-icon .ico{width:20px;height:20px}.dl-sub{color:var(--text-faint);font-size:12.5px;margin:0 0 18px}.dl-items{border:1px solid var(--border);border-radius:var(--r-card);overflow:hidden;background:var(--bg-side)}.dl-row{display:flex;align-items:center;gap:11px;padding:10px 14px;border-bottom:1px solid var(--border);cursor:pointer}.dl-row:last-child{border-bottom:none}.dl-row:hover{background:var(--hover)}.dl-row .ticon{flex:none;display:flex;color:var(--text-ghost)}.dl-row .ticon .ico{width:16px;height:16px}.dl-row:hover .ticon{color:var(--text-faint)}.dl-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;color:var(--text)}.dl-meta{flex:none;font-size:12px;color:var(--text-faint);font-variant-numeric:tabular-nums}.heatdot{flex:none;width:7px;height:7px;border-radius:50%;background:var(--accent)}.heatdot.lvl1{opacity:.3}.heatdot.lvl2{opacity:.55}.heatdot.lvl3{opacity:.8}.heatdot.lvl4{opacity:1;box-shadow:0 0 6px #f5a6238c}.dl-empty{padding:24px 14px;color:var(--text-faint);font-size:13px;border:1px dashed var(--border);border-radius:var(--r-card);text-align:center}.dl-h3{margin:28px 0 8px;font-size:10.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--text-ghost);font-weight:600}.dl-hlist{border:1px solid var(--border);border-radius:var(--r-card);background:var(--bg-side);overflow:hidden;max-width:none}.dl-hlist .hentry:last-child{border-bottom:none}.hentry.clickable{cursor:pointer}.hentry.clickable:hover{background:var(--hover)}.dl-more{margin-top:10px}#vault-name.vault-link{cursor:pointer}#vault-name.vault-link:hover{color:var(--accent-bright)}.guide{max-width:760px;margin:0 auto}.gd-tabs{display:flex;gap:2px;margin:20px 0 16px;border-bottom:1px solid var(--border);overflow-x:auto}.gd-tab{font:inherit;font-size:13px;font-weight:600;padding:7px 12px 9px;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;color:var(--text-faint);cursor:pointer;white-space:nowrap}.gd-tab:hover{color:var(--text)}.gd-tab.active{color:var(--accent-bright);border-bottom-color:var(--accent)}.gd-step{margin:0 0 18px}.gd-step-head{display:flex;align-items:center;gap:10px;margin-bottom:3px}.gd-num{flex:none;width:22px;height:22px;border-radius:50%;background:var(--glow);color:var(--accent-bright);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center}.gd-step-title{font-weight:600;font-size:14px;color:var(--text)}.gd-desc{margin:2px 0 8px 32px;color:var(--text-faint);font-size:13px;line-height:1.5}.gd-extra{font-size:12.5px;margin-top:6px}.gd-code{position:relative;margin:6px 0 6px 32px;padding:10px 72px 10px 12px;background:var(--bg-raise);border:1px solid var(--border);border-radius:var(--r-card);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.6;color:var(--text);overflow-x:auto;white-space:pre}.gd-copy{position:absolute;top:7px;right:7px;font:inherit;font-family:inherit;font-size:11px;font-weight:600;padding:3px 9px;border-radius:6px;border:1px solid var(--border-2);background:var(--bg-raise);color:var(--text-faint);cursor:pointer;box-shadow:-14px 0 12px -6px var(--bg-raise)}.gd-copy:hover{color:var(--accent-bright);border-color:var(--accent-dim)}.gd-done{margin:22px 0 8px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--r-card);background:var(--bg-side);color:var(--text-faint);font-size:13px;line-height:1.5}.home-insights{margin-top:30px;padding-top:22px;border-top:1px solid var(--border)}.insights{max-width:760px;margin:0 auto}.in-title{font-size:21px;font-weight:640;letter-spacing:-.02em;margin:0 0 4px;color:#f4f6f9}.in-title .in-scope{color:var(--text-ghost);font-weight:500;font-size:15px}.in-lens{display:flex;gap:6px;margin:0 0 14px}.in-lens-btn{font:inherit;font-size:12px;padding:5px 12px;border-radius:999px;border:1px solid var(--border);background:none;color:var(--text-faint);cursor:pointer}.in-lens-btn:hover{color:var(--text)}.in-lens-btn.active{color:var(--accent);border-color:var(--accent)}.in-chart{width:100%;height:auto;border:1px solid var(--border);border-radius:var(--r-card);background:var(--bg-side);margin-bottom:6px}.in-axis{stroke:var(--border);stroke-width:1}.in-threshold{stroke:var(--border);stroke-width:1;stroke-dasharray:4 4}.in-danger-zone{fill:#f26d6d0d}.in-label{fill:var(--text-ghost);font-size:11px}.in-quad{fill:var(--text-ghost);font-size:10.5px;text-transform:uppercase;letter-spacing:.06em}.in-quad-danger{fill:#e07070}.in-pt{fill:var(--accent);opacity:.5;cursor:pointer}.in-pt:hover{opacity:1}.in-pt.cold{fill:var(--text-ghost);opacity:.25}.in-pt.danger{fill:#e05d5d;opacity:.6}.in-treemap{background:#0c0d10}.in-tm-group{fill:none;stroke:var(--border);stroke-width:1;cursor:pointer;pointer-events:all}.in-tm-glabel{fill:var(--text-faint);font-size:10px;text-transform:uppercase;letter-spacing:.05em;cursor:pointer}.in-tm-cell{cursor:pointer}.in-tm-cell:hover{stroke:#fff;stroke-width:1}.in-tm-label{fill:#0c0d10;font-size:10.5px;font-weight:620;cursor:pointer;pointer-events:none}.in-hotpath{border:1px solid var(--border);border-radius:var(--r-card);background:var(--bg-side);overflow:hidden}.in-hp-row{display:flex;align-items:center;gap:10px;padding:6px 12px;border-bottom:1px solid var(--border);cursor:pointer}.in-hp-row:last-child{border-bottom:none}.in-hp-row:hover{background:var(--hover)}.in-hp-name{flex:0 0 300px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;color:var(--text)}.in-hp-name.danger{color:var(--accent)}.in-hp-bar{flex:1;display:flex;height:10px;border-radius:3px;overflow:hidden}.in-hp-agent{background:var(--accent)}.in-hp-human{background:#5b8def}.in-hp-count{flex:none;width:40px;text-align:right;font-size:11.5px;color:var(--text-faint);font-variant-numeric:tabular-nums}.in-legend{margin:8px 2px 0;font-size:11.5px;color:var(--text-faint)}.in-sw{display:inline-block;width:10px;height:10px;border-radius:2px;vertical-align:-1px}.in-sw.agent{background:var(--accent)}.in-sw.human{background:#5b8def}.in-matrix rect{transition:opacity .1s}.in-matrix rect:hover{opacity:.85}.history{max-width:860px}.hentry{padding:11px 12px;border-bottom:1px solid var(--border)}.hentry:hover{background:#ffffff04}.hline{display:flex;gap:10px;align-items:center}.hkind{display:inline-flex;color:var(--add)}.hkind .ico{width:13px;height:13px}.hentry.edit .hkind{color:var(--accent)}.hentry.delete .hkind{color:var(--del)}.htag{flex:none;font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;padding:1px 6px;border-radius:4px}.hentry.add .htag{color:var(--add);background:#4cc38a1f}.hentry.edit .htag{color:var(--accent-bright);background:var(--glow)}.hentry.delete .htag{color:#ff8b8b;background:#f26d6d1f}.hpath{font-weight:500;cursor:pointer;color:var(--text);font-size:13px}.hpath:hover{color:var(--accent-bright)}.htime{margin-left:auto;color:var(--text-faint);font-size:12px;font-variant-numeric:tabular-nums}.hmeta{display:flex;align-items:center;gap:14px;margin-top:4px;padding-left:23px;font-size:12px;color:var(--text-dim)}.hdev,.hsize{color:var(--text-faint)}.hsize{font-variant-numeric:tabular-nums;white-space:nowrap;flex:none}.hnote{margin-top:4px;padding-left:23px;font-size:12px;color:var(--text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.hnote:hover{color:var(--text)}.hnote.open{white-space:normal;overflow-wrap:anywhere}.hnote:before{content:"› ";color:var(--text-ghost)}.hnote a{color:var(--accent-bright);text-decoration:none}.hnote a:hover{text-decoration:underline}#palette{position:fixed;top:12vh;left:50%;transform:translate(-50%);z-index:151;display:block;width:min(560px,92vw);background:var(--bg-raise);border:1px solid var(--border-2);border-radius:var(--r-over);box-shadow:0 24px 70px -18px #000c;overflow:hidden;outline:none;padding:0}#palette-inputwrap{display:flex;align-items:center;gap:11px;padding:14px 16px;border-bottom:1px solid var(--border)}#palette-inputwrap .ico{width:17px;height:17px;color:var(--text-faint)}#palette-input{flex:1;width:100%;border:none;background:transparent;color:var(--text);font:inherit;font-size:15px;letter-spacing:-.01em;outline:none;padding:0}#palette-input::placeholder{color:var(--text-ghost)}#palette-results{list-style:none;margin:0;padding:8px;max-height:46vh;overflow-y:auto}#palette-results [cmdk-item]{display:flex;align-items:center;gap:11px;height:38px;padding:0 10px;border-radius:9px;cursor:pointer;color:var(--text-dim);font-size:13.5px}#palette-results [cmdk-item][data-selected=true]{background:var(--glow)}#palette-results [cmdk-item][data-selected=true] .picon{color:var(--accent)}#palette-results [cmdk-item][data-selected=true] .plabel,#palette-results [cmdk-item][data-selected=true] .plabel b{color:var(--accent-bright)}#palette-results li{display:flex;align-items:center;gap:11px;height:38px;padding:0 10px;border-radius:9px;cursor:pointer;color:var(--text-dim);font-size:13.5px}#palette-results li.selected{background:var(--glow)}#palette-results li.selected .picon{color:var(--accent)}#palette-results li.selected .plabel,#palette-results li.selected .plabel b{color:var(--accent-bright)}#palette-results li .picon{width:18px;flex:none;display:flex;justify-content:center;color:var(--text-faint)}#palette-results li .picon .ico{width:15px;height:15px}#palette-results li .plabel{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text)}#palette-results li .plabel b{color:var(--accent-bright);font-weight:600}#palette-results li .pkind{flex:none;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-ghost)}#palette-results .pempty{color:var(--text-faint);cursor:default;justify-content:center;height:auto;padding:14px}#palette-hint{padding:9px 16px;border-top:1px solid var(--border);font-size:11px;color:var(--text-ghost)}[data-slot=dialog-overlay]{position:fixed;inset:0;background:#06070999;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:150}.modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:151;display:block;background:var(--bg-raise);border:1px solid var(--border-2);border-radius:var(--r-over);padding:22px 24px;width:min(460px,calc(100vw - 40px));box-shadow:0 24px 70px -18px #000c;outline:none}.modal h3{margin:0 0 10px;font-size:16px;font-weight:620;letter-spacing:-.01em}.modal p{margin:0 0 16px;font-size:13.5px;color:var(--text-dim);line-height:1.55}.modal p b{color:var(--text)}.modal-url{font:12px var(--mono);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-ctl);padding:9px 11px;color:var(--text-dim);word-break:break-all;margin-bottom:16px}.modal-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.modal-label{display:block;font-size:12.5px;color:var(--text-dim);margin:0 0 6px}.modal-msg{margin:0 0 16px;font-size:13.5px;color:var(--text-dim);line-height:1.55}.modal-input{width:100%;height:36px;padding:0 12px;border-radius:var(--r-ctl);border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;font-size:14px;margin-bottom:16px;outline:none}.modal-input:focus{border-color:var(--accent);background:var(--hover)}[data-sonner-toast]{background:var(--bg-raise)!important;color:var(--text)!important;border:1px solid var(--border-2)!important;border-radius:10px!important;font-size:13.5px!important;box-shadow:0 18px 44px -12px #000000b3!important}[data-sonner-toast][data-type=error]{border-color:#f26d6d80!important;color:#ffb0aa!important}#sb-backdrop{display:none}@media(max-width:900px){#sidebar{position:fixed;z-index:60;top:0;left:0;height:100%;transform:translate(-100%);transition:transform .2s ease;box-shadow:0 0 40px #0009}body.sb-open #sidebar{transform:translate(0)}body.sb-open #sb-backdrop{display:block;position:fixed;inset:0;background:#0000008c;z-index:50}.icon-btn{display:inline-flex;width:44px;height:44px}#content{padding:24px 18px 70px}#topbar{padding:0 8px;gap:4px}.btn .lbl{display:none}#topbar .btn{min-width:44px;min-height:44px;padding:0;justify-content:center;gap:0}#topbar .btn .ico{width:18px;height:18px}#more-btn:not([hidden]){display:inline-flex}#history-btn,#upload-btn,#download{display:none!important}#meta{display:none}#crumb{flex:1}#vault{padding:0 8px 0 12px}.icon-btn2,#signout,#tree .row,#projects .row{height:44px}#account-btn,#project-select{min-height:44px}.nav-add{min-width:44px;min-height:44px}.markdown,.admin,.onboard,.history,.dirlist{max-width:100%}.markdown table,pre.plain{display:block;overflow-x:auto;max-width:100%}.ob-row{flex-direction:column}.ob-row input{flex:none;min-height:44px}.admin-item{flex-wrap:wrap;row-gap:8px;padding:12px 14px}.admin-item select{height:44px}.ai-btn,.ai-del{height:auto;min-height:44px;padding:0 12px}.admin-item .ai-main{flex:1 1 100%;white-space:normal;overflow-wrap:break-word}.gd-code{min-height:62px;padding-top:12px;padding-bottom:12px}.gd-copy{min-height:44px;padding:0 14px}.gd-tab{min-height:44px}.in-lens-btn{min-height:44px;padding:0 14px}.modal-input{height:44px}.modal-actions button,.pbtn,#palette-results li{height:auto;min-height:44px}.more-item{min-height:44px}}.modal-actions .ai-del{margin-right:auto}@media(max-width:430px){.dl-meta{display:none}.ai-tag{font-size:11px}.htime{white-space:nowrap;font-size:12px}.hline{flex-wrap:wrap}.modal-actions .ai-del{flex:0 0 100%}}.markdown{max-width:704px;width:100%;margin:0 auto}.markdown h1,.markdown h2,.markdown h3,.markdown h4{color:#f4f6f9;line-height:1.25;letter-spacing:-.018em;margin:1.5em 0 .5em;text-wrap:balance}.markdown h1:first-child{margin-top:0}.markdown h1{font-size:1.85em;font-weight:660;letter-spacing:-.024em}.markdown h2{font-size:1.32em;font-weight:620;margin-top:1.7em}.markdown h3{font-size:1.08em;font-weight:620}.markdown p,.markdown li{color:#c6cbd3;font-size:14.5px;line-height:1.72}.markdown p{margin:0 0 1em}.markdown strong{color:var(--text);font-weight:620}.markdown a{color:var(--accent-bright);text-decoration:none;border-bottom:1px solid rgba(245,166,35,.28)}.markdown a:hover{border-bottom-color:var(--accent)}.markdown ul,.markdown ol{margin:0 0 1em;padding-left:1.4em}.markdown li{margin-bottom:.4em}.markdown li::marker{color:var(--text-ghost)}.markdown code{background:var(--hover);border:1px solid var(--border);padding:.1em .4em;border-radius:5px;font:12.5px/1.5 var(--mono);color:#e4d9c4}.markdown pre{background:var(--code-bg);border:1px solid var(--border);border-radius:var(--r-card);padding:14px 16px;overflow-x:auto;margin:1.3em 0}.markdown pre code{background:none;border:none;padding:0;color:#c6cbd3}.markdown blockquote{margin:1.3em 0;padding:.3em 1em;border-left:2px solid var(--accent);background:linear-gradient(90deg,var(--glow),transparent);border-radius:0 8px 8px 0;color:#d8cdb6}.markdown blockquote p{margin:.3em 0;color:#d8cdb6}.markdown table{border-collapse:collapse;margin:1.3em 0;font-size:13.5px}.markdown th,.markdown td{border-bottom:1px solid var(--border);padding:9px 13px;text-align:left}.markdown th{color:var(--text-faint);font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:600;border-bottom-color:var(--border-2)}.markdown tr:hover td{background:#ffffff05}.markdown img{max-width:100%;border-radius:8px;border:1px solid var(--border)}.markdown hr{border:none;border-top:1px solid var(--border);margin:2.2em 0}.markdown table.frontmatter{margin:0 0 1.8em;font-size:12px;background:var(--surface);border:1px solid var(--border);border-radius:8px;border-collapse:separate;border-spacing:0}.markdown table.frontmatter th{text-transform:none;letter-spacing:0;font-size:11.5px;color:var(--text-faint);font-weight:600;text-align:left;white-space:nowrap;vertical-align:top;padding:6px 14px 6px 12px;border-bottom:1px solid var(--border)}.markdown table.frontmatter td{color:var(--text-dim);padding:6px 12px 6px 0;border-bottom:1px solid var(--border)}.markdown table.frontmatter tr:last-child th,.markdown table.frontmatter tr:last-child td{border-bottom:none}.markdown table.frontmatter code{white-space:pre-wrap;font-size:11px}.markdown input[type=checkbox]{accent-color:var(--accent)}.htmlview{display:block;width:100%;height:calc(100vh - 150px);border:1px solid var(--border);border-radius:var(--r-card);background:#fff}.notfound{margin-top:12vh;text-align:center;color:var(--text-dim)}.notfound h1{color:var(--text);font-size:1.4em;margin-bottom:.5em}.notfound code{background:var(--hover);border:1px solid var(--border);padding:.15em .5em;border-radius:6px}.notfound .nf-sub{max-width:440px;margin:12px auto 20px;font-size:13px;color:var(--text-faint);line-height:1.6}pre.plain{background:var(--code-bg);border:1px solid var(--border);border-radius:var(--r-card);padding:14px 16px;overflow-x:auto;font:12.5px/1.6 var(--mono);color:#c6cbd3;white-space:pre-wrap;overflow-wrap:anywhere;max-width:900px}#content.markdown{min-width:0}.filecard{margin-top:15vh;text-align:center;color:var(--text-dim)}.filecard .name{font-size:1.2em;color:var(--text);margin-bottom:.3em}.filecard .btn{margin-top:14px} diff --git a/internal/webapp/static/assets/index-ESH0Hl7P.js b/internal/webapp/static/assets/index-ESH0Hl7P.js deleted file mode 100644 index 067ea8a..0000000 --- a/internal/webapp/static/assets/index-ESH0Hl7P.js +++ /dev/null @@ -1,51 +0,0 @@ -function iw(n,l){for(var i=0;is[o]})}}}return Object.freeze(Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}))}(function(){const l=document.createElement("link").relList;if(l&&l.supports&&l.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))s(o);new MutationObserver(o=>{for(const u of o)if(u.type==="childList")for(const f of u.addedNodes)f.tagName==="LINK"&&f.rel==="modulepreload"&&s(f)}).observe(document,{childList:!0,subtree:!0});function i(o){const u={};return o.integrity&&(u.integrity=o.integrity),o.referrerPolicy&&(u.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?u.credentials="include":o.crossOrigin==="anonymous"?u.credentials="omit":u.credentials="same-origin",u}function s(o){if(o.ep)return;o.ep=!0;const u=i(o);fetch(o.href,u)}})();function Dy(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}var jd={exports:{}},jr={};var pv;function rw(){if(pv)return jr;pv=1;var n=Symbol.for("react.transitional.element"),l=Symbol.for("react.fragment");function i(s,o,u){var f=null;if(u!==void 0&&(f=""+u),o.key!==void 0&&(f=""+o.key),"key"in o){u={};for(var m in o)m!=="key"&&(u[m]=o[m])}else u=o;return o=u.ref,{$$typeof:n,type:s,key:f,ref:o!==void 0?o:null,props:u}}return jr.Fragment=l,jr.jsx=i,jr.jsxs=i,jr}var gv;function sw(){return gv||(gv=1,jd.exports=rw()),jd.exports}var p=sw(),Nd={exports:{}},we={};var vv;function ow(){if(vv)return we;vv=1;var n=Symbol.for("react.transitional.element"),l=Symbol.for("react.portal"),i=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),o=Symbol.for("react.profiler"),u=Symbol.for("react.consumer"),f=Symbol.for("react.context"),m=Symbol.for("react.forward_ref"),v=Symbol.for("react.suspense"),h=Symbol.for("react.memo"),x=Symbol.for("react.lazy"),g=Symbol.for("react.activity"),S=Symbol.iterator;function E(A){return A===null||typeof A!="object"?null:(A=S&&A[S]||A["@@iterator"],typeof A=="function"?A:null)}var w={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},C=Object.assign,R={};function M(A,O,L){this.props=A,this.context=O,this.refs=R,this.updater=L||w}M.prototype.isReactComponent={},M.prototype.setState=function(A,O){if(typeof A!="object"&&typeof A!="function"&&A!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,A,O,"setState")},M.prototype.forceUpdate=function(A){this.updater.enqueueForceUpdate(this,A,"forceUpdate")};function j(){}j.prototype=M.prototype;function N(A,O,L){this.props=A,this.context=O,this.refs=R,this.updater=L||w}var H=N.prototype=new j;H.constructor=N,C(H,M.prototype),H.isPureReactComponent=!0;var G=Array.isArray;function I(){}var V={H:null,A:null,T:null,S:null},U=Object.prototype.hasOwnProperty;function ce(A,O,L){var P=L.ref;return{$$typeof:n,type:A,key:O,ref:P!==void 0?P:null,props:L}}function se(A,O){return ce(A.type,O,A.props)}function ae(A){return typeof A=="object"&&A!==null&&A.$$typeof===n}function ue(A){var O={"=":"=0",":":"=2"};return"$"+A.replace(/[=:]/g,function(L){return O[L]})}var oe=/\/+/g;function me(A,O){return typeof A=="object"&&A!==null&&A.key!=null?ue(""+A.key):O.toString(36)}function de(A){switch(A.status){case"fulfilled":return A.value;case"rejected":throw A.reason;default:switch(typeof A.status=="string"?A.then(I,I):(A.status="pending",A.then(function(O){A.status==="pending"&&(A.status="fulfilled",A.value=O)},function(O){A.status==="pending"&&(A.status="rejected",A.reason=O)})),A.status){case"fulfilled":return A.value;case"rejected":throw A.reason}}throw A}function D(A,O,L,P,F){var te=typeof A;(te==="undefined"||te==="boolean")&&(A=null);var $=!1;if(A===null)$=!0;else switch(te){case"bigint":case"string":case"number":$=!0;break;case"object":switch(A.$$typeof){case n:case l:$=!0;break;case x:return $=A._init,D($(A._payload),O,L,P,F)}}if($)return F=F(A),$=P===""?"."+me(A,0):P,G(F)?(L="",$!=null&&(L=$.replace(oe,"$&/")+"/"),D(F,O,L,"",function(xe){return xe})):F!=null&&(ae(F)&&(F=se(F,L+(F.key==null||A&&A.key===F.key?"":(""+F.key).replace(oe,"$&/")+"/")+$)),O.push(F)),1;$=0;var le=P===""?".":P+":";if(G(A))for(var ie=0;ie>>1,Z=D[ee];if(0>>1;eeo(L,W))Po(F,L)?(D[ee]=F,D[P]=W,ee=P):(D[ee]=L,D[O]=W,ee=O);else if(Po(F,W))D[ee]=F,D[P]=W,ee=P;else break e}}return Q}function o(D,Q){var W=D.sortIndex-Q.sortIndex;return W!==0?W:D.id-Q.id}if(n.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var u=performance;n.unstable_now=function(){return u.now()}}else{var f=Date,m=f.now();n.unstable_now=function(){return f.now()-m}}var v=[],h=[],x=1,g=null,S=3,E=!1,w=!1,C=!1,R=!1,M=typeof setTimeout=="function"?setTimeout:null,j=typeof clearTimeout=="function"?clearTimeout:null,N=typeof setImmediate<"u"?setImmediate:null;function H(D){for(var Q=i(h);Q!==null;){if(Q.callback===null)s(h);else if(Q.startTime<=D)s(h),Q.sortIndex=Q.expirationTime,l(v,Q);else break;Q=i(h)}}function G(D){if(C=!1,H(D),!w)if(i(v)!==null)w=!0,I||(I=!0,ue());else{var Q=i(h);Q!==null&&de(G,Q.startTime-D)}}var I=!1,V=-1,U=5,ce=-1;function se(){return R?!0:!(n.unstable_now()-ceD&&se());){var ee=g.callback;if(typeof ee=="function"){g.callback=null,S=g.priorityLevel;var Z=ee(g.expirationTime<=D);if(D=n.unstable_now(),typeof Z=="function"){g.callback=Z,H(D),Q=!0;break t}g===i(v)&&s(v),H(D)}else s(v);g=i(v)}if(g!==null)Q=!0;else{var A=i(h);A!==null&&de(G,A.startTime-D),Q=!1}}break e}finally{g=null,S=W,E=!1}Q=void 0}}finally{Q?ue():I=!1}}}var ue;if(typeof N=="function")ue=function(){N(ae)};else if(typeof MessageChannel<"u"){var oe=new MessageChannel,me=oe.port2;oe.port1.onmessage=ae,ue=function(){me.postMessage(null)}}else ue=function(){M(ae,0)};function de(D,Q){V=M(function(){D(n.unstable_now())},Q)}n.unstable_IdlePriority=5,n.unstable_ImmediatePriority=1,n.unstable_LowPriority=4,n.unstable_NormalPriority=3,n.unstable_Profiling=null,n.unstable_UserBlockingPriority=2,n.unstable_cancelCallback=function(D){D.callback=null},n.unstable_forceFrameRate=function(D){0>D||125ee?(D.sortIndex=W,l(h,D),i(v)===null&&D===i(h)&&(C?(j(V),V=-1):C=!0,de(G,W-ee))):(D.sortIndex=Z,l(v,D),w||E||(w=!0,I||(I=!0,ue()))),D},n.unstable_shouldYield=se,n.unstable_wrapCallback=function(D){var Q=S;return function(){var W=S;S=Q;try{return D.apply(this,arguments)}finally{S=W}}}})(kd)),kd}var xv;function uw(){return xv||(xv=1,zd.exports=cw()),zd.exports}var Ld={exports:{}},At={};var Sv;function dw(){if(Sv)return At;Sv=1;var n=jf();function l(v){var h="https://react.dev/errors/"+v;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(l){console.error(l)}}return n(),Ld.exports=dw(),Ld.exports}var Ev;function fw(){if(Ev)return Nr;Ev=1;var n=uw(),l=jf(),i=zy();function s(e){var t="https://react.dev/errors/"+e;if(1Z||(e.current=ee[Z],ee[Z]=null,Z--)}function L(e,t){Z++,ee[Z]=e.current,e.current=t}var P=A(null),F=A(null),te=A(null),$=A(null);function le(e,t){switch(L(te,t),L(F,e),L(P,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Ug(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Ug(t),e=Bg(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}O(P),L(P,e)}function ie(){O(P),O(F),O(te)}function xe(e){e.memoizedState!==null&&L($,e);var t=P.current,a=Bg(t,e.type);t!==a&&(L(F,e),L(P,a))}function Me(e){F.current===e&&(O(P),O(F)),$.current===e&&(O($),Rr._currentValue=W)}var Oe,et;function qe(e){if(Oe===void 0)try{throw Error()}catch(a){var t=a.stack.trim().match(/\n( *(at )?)/);Oe=t&&t[1]||"",et=-1)":-1c||_[r]!==q[c]){var X=` -`+_[r].replace(" at new "," at ");return e.displayName&&X.includes("")&&(X=X.replace("",e.displayName)),X}while(1<=r&&0<=c);break}}}finally{kt=!1,Error.prepareStackTrace=a}return(a=e?e.displayName||e.name:"")?qe(a):""}function nt(e,t){switch(e.tag){case 26:case 27:case 5:return qe(e.type);case 16:return qe("Lazy");case 13:return e.child!==t&&t!==null?qe("Suspense Fallback"):qe("Suspense");case 19:return qe("SuspenseList");case 0:case 15:return ht(e.type,!1);case 11:return ht(e.type.render,!1);case 1:return ht(e.type,!0);case 31:return qe("Activity");default:return""}}function Za(e){try{var t="",a=null;do t+=nt(e,a),a=e,e=e.return;while(e);return t}catch(r){return` -Error generating stack: `+r.message+` -`+r.stack}}var jt=Object.prototype.hasOwnProperty,Ce=n.unstable_scheduleCallback,je=n.unstable_cancelCallback,_e=n.unstable_shouldYield,An=n.unstable_requestPaint,xt=n.unstable_now,Bi=n.unstable_getCurrentPriorityLevel,Ja=n.unstable_ImmediatePriority,os=n.unstable_UserBlockingPriority,Wa=n.unstable_NormalPriority,Ii=n.unstable_LowPriority,Vn=n.unstable_IdlePriority,cs=n.log,fa=n.unstable_setDisableYieldValue,el=null,Nt=null;function xn(e){if(typeof cs=="function"&&fa(e),Nt&&typeof Nt.setStrictMode=="function")try{Nt.setStrictMode(el,e)}catch{}}var Rt=Math.clz32?Math.clz32:_n,xc=Math.log,qi=Math.LN2;function _n(e){return e>>>=0,e===0?32:31-(xc(e)/qi|0)|0}var Dl=256,zl=262144,tl=4194304;function jn(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function Se(e,t,a){var r=e.pendingLanes;if(r===0)return 0;var c=0,d=e.suspendedLanes,b=e.pingedLanes;e=e.warmLanes;var T=r&134217727;return T!==0?(r=T&~d,r!==0?c=jn(r):(b&=T,b!==0?c=jn(b):a||(a=T&~e,a!==0&&(c=jn(a))))):(T=r&~d,T!==0?c=jn(T):b!==0?c=jn(b):a||(a=r&~e,a!==0&&(c=jn(a)))),c===0?0:t!==0&&t!==c&&(t&d)===0&&(d=c&-c,a=t&-t,d>=a||d===32&&(a&4194048)!==0)?t:c}function Je(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function mt(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Ot(){var e=tl;return tl<<=1,(tl&62914560)===0&&(tl=4194304),e}function ha(e){for(var t=[],a=0;31>a;a++)t.push(e);return t}function tt(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function Lt(e,t,a,r,c,d){var b=e.pendingLanes;e.pendingLanes=a,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=a,e.entangledLanes&=a,e.errorRecoveryDisabledLanes&=a,e.shellSuspendCounter=0;var T=e.entanglements,_=e.expirationTimes,q=e.hiddenUpdates;for(a=b&~a;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var Wx=/[\n"\\]/g;function cn(e){return e.replace(Wx,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function Tc(e,t,a,r,c,d,b,T){e.name="",b!=null&&typeof b!="function"&&typeof b!="symbol"&&typeof b!="boolean"?e.type=b:e.removeAttribute("type"),t!=null?b==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+on(t)):e.value!==""+on(t)&&(e.value=""+on(t)):b!=="submit"&&b!=="reset"||e.removeAttribute("value"),t!=null?Mc(e,b,on(t)):a!=null?Mc(e,b,on(a)):r!=null&&e.removeAttribute("value"),c==null&&d!=null&&(e.defaultChecked=!!d),c!=null&&(e.checked=c&&typeof c!="function"&&typeof c!="symbol"),T!=null&&typeof T!="function"&&typeof T!="symbol"&&typeof T!="boolean"?e.name=""+on(T):e.removeAttribute("name")}function Nh(e,t,a,r,c,d,b,T){if(d!=null&&typeof d!="function"&&typeof d!="symbol"&&typeof d!="boolean"&&(e.type=d),t!=null||a!=null){if(!(d!=="submit"&&d!=="reset"||t!=null)){Cc(e);return}a=a!=null?""+on(a):"",t=t!=null?""+on(t):a,T||t===e.value||(e.value=t),e.defaultValue=t}r=r??c,r=typeof r!="function"&&typeof r!="symbol"&&!!r,e.checked=T?e.checked:!!r,e.defaultChecked=!!r,b!=null&&typeof b!="function"&&typeof b!="symbol"&&typeof b!="boolean"&&(e.name=b),Cc(e)}function Mc(e,t,a){t==="number"&&fs(e.ownerDocument)===e||e.defaultValue===""+a||(e.defaultValue=""+a)}function ql(e,t,a,r){if(e=e.options,t){t={};for(var c=0;c"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),jc=!1;if(Fn)try{var Fi={};Object.defineProperty(Fi,"passive",{get:function(){jc=!0}}),window.addEventListener("test",Fi,Fi),window.removeEventListener("test",Fi,Fi)}catch{jc=!1}var pa=null,Nc=null,ms=null;function Bh(){if(ms)return ms;var e,t=Nc,a=t.length,r,c="value"in pa?pa.value:pa.textContent,d=c.length;for(e=0;e=Qi),Fh=" ",Ph=!1;function Kh(e,t){switch(e){case"keyup":return R1.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Qh(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Fl=!1;function A1(e,t){switch(e){case"compositionend":return Qh(t);case"keypress":return t.which!==32?null:(Ph=!0,Fh);case"textInput":return e=t.data,e===Fh&&Ph?null:e;default:return null}}function _1(e,t){if(Fl)return e==="compositionend"||!Hc&&Kh(e,t)?(e=Bh(),ms=Nc=pa=null,Fl=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:a,offset:t-e};e=r}e:{for(;a;){if(a.nextSibling){a=a.nextSibling;break e}a=a.parentNode}a=void 0}a=nm(a)}}function lm(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?lm(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function im(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=fs(e.document);t instanceof e.HTMLIFrameElement;){try{var a=typeof t.contentWindow.location.href=="string"}catch{a=!1}if(a)e=t.contentWindow;else break;t=fs(e.document)}return t}function Ic(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var U1=Fn&&"documentMode"in document&&11>=document.documentMode,Pl=null,qc=null,Ji=null,Vc=!1;function rm(e,t,a){var r=a.window===a?a.document:a.nodeType===9?a:a.ownerDocument;Vc||Pl==null||Pl!==fs(r)||(r=Pl,"selectionStart"in r&&Ic(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),Ji&&Zi(Ji,r)||(Ji=r,r=so(qc,"onSelect"),0>=b,c-=b,Nn=1<<32-Rt(t)+c|a<Re?(ke=ve,ve=null):ke=ve.sibling;var Be=Y(k,ve,B[Re],J);if(Be===null){ve===null&&(ve=ke);break}e&&ve&&Be.alternate===null&&t(k,ve),z=d(Be,z,Re),Ue===null?ye=Be:Ue.sibling=Be,Ue=Be,ve=ke}if(Re===B.length)return a(k,ve),Le&&Kn(k,Re),ye;if(ve===null){for(;ReRe?(ke=ve,ve=null):ke=ve.sibling;var Ha=Y(k,ve,Be.value,J);if(Ha===null){ve===null&&(ve=ke);break}e&&ve&&Ha.alternate===null&&t(k,ve),z=d(Ha,z,Re),Ue===null?ye=Ha:Ue.sibling=Ha,Ue=Ha,ve=ke}if(Be.done)return a(k,ve),Le&&Kn(k,Re),ye;if(ve===null){for(;!Be.done;Re++,Be=B.next())Be=ne(k,Be.value,J),Be!==null&&(z=d(Be,z,Re),Ue===null?ye=Be:Ue.sibling=Be,Ue=Be);return Le&&Kn(k,Re),ye}for(ve=r(ve);!Be.done;Re++,Be=B.next())Be=K(ve,k,Re,Be.value,J),Be!==null&&(e&&Be.alternate!==null&&ve.delete(Be.key===null?Re:Be.key),z=d(Be,z,Re),Ue===null?ye=Be:Ue.sibling=Be,Ue=Be);return e&&ve.forEach(function(lw){return t(k,lw)}),Le&&Kn(k,Re),ye}function Qe(k,z,B,J){if(typeof B=="object"&&B!==null&&B.type===C&&B.key===null&&(B=B.props.children),typeof B=="object"&&B!==null){switch(B.$$typeof){case E:e:{for(var ye=B.key;z!==null;){if(z.key===ye){if(ye=B.type,ye===C){if(z.tag===7){a(k,z.sibling),J=c(z,B.props.children),J.return=k,k=J;break e}}else if(z.elementType===ye||typeof ye=="object"&&ye!==null&&ye.$$typeof===U&&hl(ye)===z.type){a(k,z.sibling),J=c(z,B.props),lr(J,B),J.return=k,k=J;break e}a(k,z);break}else t(k,z);z=z.sibling}B.type===C?(J=ol(B.props.children,k.mode,J,B.key),J.return=k,k=J):(J=Cs(B.type,B.key,B.props,null,k.mode,J),lr(J,B),J.return=k,k=J)}return b(k);case w:e:{for(ye=B.key;z!==null;){if(z.key===ye)if(z.tag===4&&z.stateNode.containerInfo===B.containerInfo&&z.stateNode.implementation===B.implementation){a(k,z.sibling),J=c(z,B.children||[]),J.return=k,k=J;break e}else{a(k,z);break}else t(k,z);z=z.sibling}J=Xc(B,k.mode,J),J.return=k,k=J}return b(k);case U:return B=hl(B),Qe(k,z,B,J)}if(de(B))return pe(k,z,B,J);if(ue(B)){if(ye=ue(B),typeof ye!="function")throw Error(s(150));return B=ye.call(B),be(k,z,B,J)}if(typeof B.then=="function")return Qe(k,z,js(B),J);if(B.$$typeof===N)return Qe(k,z,Rs(k,B),J);Ns(k,B)}return typeof B=="string"&&B!==""||typeof B=="number"||typeof B=="bigint"?(B=""+B,z!==null&&z.tag===6?(a(k,z.sibling),J=c(z,B),J.return=k,k=J):(a(k,z),J=Qc(B,k.mode,J),J.return=k,k=J),b(k)):a(k,z)}return function(k,z,B,J){try{ar=0;var ye=Qe(k,z,B,J);return ai=null,ye}catch(ve){if(ve===ni||ve===As)throw ve;var Ue=Jt(29,ve,null,k.mode);return Ue.lanes=J,Ue.return=k,Ue}}}var pl=Am(!0),_m=Am(!1),xa=!1;function su(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function ou(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Sa(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function wa(e,t,a){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,(Ve&2)!==0){var c=r.pending;return c===null?t.next=t:(t.next=c.next,c.next=t),r.pending=t,t=Es(e),hm(e,null,a),t}return ws(e,r,t,a),Es(e)}function ir(e,t,a){if(t=t.updateQueue,t!==null&&(t=t.shared,(a&4194048)!==0)){var r=t.lanes;r&=e.pendingLanes,a|=r,t.lanes=a,Ht(e,a)}}function cu(e,t){var a=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,a===r)){var c=null,d=null;if(a=a.firstBaseUpdate,a!==null){do{var b={lane:a.lane,tag:a.tag,payload:a.payload,callback:null,next:null};d===null?c=d=b:d=d.next=b,a=a.next}while(a!==null);d===null?c=d=t:d=d.next=t}else c=d=t;a={baseState:r.baseState,firstBaseUpdate:c,lastBaseUpdate:d,shared:r.shared,callbacks:r.callbacks},e.updateQueue=a;return}e=a.lastBaseUpdate,e===null?a.firstBaseUpdate=t:e.next=t,a.lastBaseUpdate=t}var uu=!1;function rr(){if(uu){var e=ti;if(e!==null)throw e}}function sr(e,t,a,r){uu=!1;var c=e.updateQueue;xa=!1;var d=c.firstBaseUpdate,b=c.lastBaseUpdate,T=c.shared.pending;if(T!==null){c.shared.pending=null;var _=T,q=_.next;_.next=null,b===null?d=q:b.next=q,b=_;var X=e.alternate;X!==null&&(X=X.updateQueue,T=X.lastBaseUpdate,T!==b&&(T===null?X.firstBaseUpdate=q:T.next=q,X.lastBaseUpdate=_))}if(d!==null){var ne=c.baseState;b=0,X=q=_=null,T=d;do{var Y=T.lane&-536870913,K=Y!==T.lane;if(K?(ze&Y)===Y:(r&Y)===Y){Y!==0&&Y===ei&&(uu=!0),X!==null&&(X=X.next={lane:0,tag:T.tag,payload:T.payload,callback:null,next:null});e:{var pe=e,be=T;Y=t;var Qe=a;switch(be.tag){case 1:if(pe=be.payload,typeof pe=="function"){ne=pe.call(Qe,ne,Y);break e}ne=pe;break e;case 3:pe.flags=pe.flags&-65537|128;case 0:if(pe=be.payload,Y=typeof pe=="function"?pe.call(Qe,ne,Y):pe,Y==null)break e;ne=g({},ne,Y);break e;case 2:xa=!0}}Y=T.callback,Y!==null&&(e.flags|=64,K&&(e.flags|=8192),K=c.callbacks,K===null?c.callbacks=[Y]:K.push(Y))}else K={lane:Y,tag:T.tag,payload:T.payload,callback:T.callback,next:null},X===null?(q=X=K,_=ne):X=X.next=K,b|=Y;if(T=T.next,T===null){if(T=c.shared.pending,T===null)break;K=T,T=K.next,K.next=null,c.lastBaseUpdate=K,c.shared.pending=null}}while(!0);X===null&&(_=ne),c.baseState=_,c.firstBaseUpdate=q,c.lastBaseUpdate=X,d===null&&(c.shared.lanes=0),Ra|=b,e.lanes=b,e.memoizedState=ne}}function jm(e,t){if(typeof e!="function")throw Error(s(191,e));e.call(t)}function Nm(e,t){var a=e.callbacks;if(a!==null)for(e.callbacks=null,e=0;ed?d:8;var b=D.T,T={};D.T=T,Au(e,!1,t,a);try{var _=c(),q=D.S;if(q!==null&&q(T,_),_!==null&&typeof _=="object"&&typeof _.then=="function"){var X=K1(_,r);ur(e,t,X,an(e))}else ur(e,t,r,an(e))}catch(ne){ur(e,t,{then:function(){},status:"rejected",reason:ne},an())}finally{Q.p=d,b!==null&&T.types!==null&&(b.types=T.types),D.T=b}}function W1(){}function Ru(e,t,a,r){if(e.tag!==5)throw Error(s(476));var c=up(e).queue;cp(e,c,t,W,a===null?W1:function(){return dp(e),a(r)})}function up(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:W,baseState:W,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Zn,lastRenderedState:W},next:null};var a={};return t.next={memoizedState:a,baseState:a,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Zn,lastRenderedState:a},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function dp(e){var t=up(e);t.next===null&&(t=e.alternate.memoizedState),ur(e,t.next.queue,{},an())}function Ou(){return Et(Rr)}function fp(){return rt().memoizedState}function hp(){return rt().memoizedState}function eS(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var a=an();e=Sa(a);var r=wa(t,e,a);r!==null&&(Ft(r,t,a),ir(r,t,a)),t={cache:au()},e.payload=t;return}t=t.return}}function tS(e,t,a){var r=an();a={lane:r,revertLane:0,gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null},Vs(e)?pp(t,a):(a=Pc(e,t,a,r),a!==null&&(Ft(a,e,r),gp(a,t,r)))}function mp(e,t,a){var r=an();ur(e,t,a,r)}function ur(e,t,a,r){var c={lane:r,revertLane:0,gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null};if(Vs(e))pp(t,c);else{var d=e.alternate;if(e.lanes===0&&(d===null||d.lanes===0)&&(d=t.lastRenderedReducer,d!==null))try{var b=t.lastRenderedState,T=d(b,a);if(c.hasEagerState=!0,c.eagerState=T,Zt(T,b))return ws(e,t,c,0),Xe===null&&Ss(),!1}catch{}if(a=Pc(e,t,c,r),a!==null)return Ft(a,e,r),gp(a,t,r),!0}return!1}function Au(e,t,a,r){if(r={lane:2,revertLane:sd(),gesture:null,action:r,hasEagerState:!1,eagerState:null,next:null},Vs(e)){if(t)throw Error(s(479))}else t=Pc(e,a,r,2),t!==null&&Ft(t,e,2)}function Vs(e){var t=e.alternate;return e===Te||t!==null&&t===Te}function pp(e,t){ii=ks=!0;var a=e.pending;a===null?t.next=t:(t.next=a.next,a.next=t),e.pending=t}function gp(e,t,a){if((a&4194048)!==0){var r=t.lanes;r&=e.pendingLanes,a|=r,t.lanes=a,Ht(e,a)}}var dr={readContext:Et,use:Us,useCallback:at,useContext:at,useEffect:at,useImperativeHandle:at,useLayoutEffect:at,useInsertionEffect:at,useMemo:at,useReducer:at,useRef:at,useState:at,useDebugValue:at,useDeferredValue:at,useTransition:at,useSyncExternalStore:at,useId:at,useHostTransitionStatus:at,useFormState:at,useActionState:at,useOptimistic:at,useMemoCache:at,useCacheRefresh:at};dr.useEffectEvent=at;var vp={readContext:Et,use:Us,useCallback:function(e,t){return Dt().memoizedState=[e,t===void 0?null:t],e},useContext:Et,useEffect:ep,useImperativeHandle:function(e,t,a){a=a!=null?a.concat([e]):null,Is(4194308,4,lp.bind(null,t,e),a)},useLayoutEffect:function(e,t){return Is(4194308,4,e,t)},useInsertionEffect:function(e,t){Is(4,2,e,t)},useMemo:function(e,t){var a=Dt();t=t===void 0?null:t;var r=e();if(gl){xn(!0);try{e()}finally{xn(!1)}}return a.memoizedState=[r,t],r},useReducer:function(e,t,a){var r=Dt();if(a!==void 0){var c=a(t);if(gl){xn(!0);try{a(t)}finally{xn(!1)}}}else c=t;return r.memoizedState=r.baseState=c,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:c},r.queue=e,e=e.dispatch=tS.bind(null,Te,e),[r.memoizedState,e]},useRef:function(e){var t=Dt();return e={current:e},t.memoizedState=e},useState:function(e){e=wu(e);var t=e.queue,a=mp.bind(null,Te,t);return t.dispatch=a,[e.memoizedState,a]},useDebugValue:Tu,useDeferredValue:function(e,t){var a=Dt();return Mu(a,e,t)},useTransition:function(){var e=wu(!1);return e=cp.bind(null,Te,e.queue,!0,!1),Dt().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,a){var r=Te,c=Dt();if(Le){if(a===void 0)throw Error(s(407));a=a()}else{if(a=t(),Xe===null)throw Error(s(349));(ze&127)!==0||Um(r,t,a)}c.memoizedState=a;var d={value:a,getSnapshot:t};return c.queue=d,ep(Im.bind(null,r,d,e),[e]),r.flags|=2048,si(9,{destroy:void 0},Bm.bind(null,r,d,a,t),null),a},useId:function(){var e=Dt(),t=Xe.identifierPrefix;if(Le){var a=Dn,r=Nn;a=(r&~(1<<32-Rt(r)-1)).toString(32)+a,t="_"+t+"R_"+a,a=Ls++,0<\/script>",d=d.removeChild(d.firstChild);break;case"select":d=typeof r.is=="string"?b.createElement("select",{is:r.is}):b.createElement("select"),r.multiple?d.multiple=!0:r.size&&(d.size=r.size);break;default:d=typeof r.is=="string"?b.createElement(c,{is:r.is}):b.createElement(c)}}d[St]=t,d[Bt]=r;e:for(b=t.child;b!==null;){if(b.tag===5||b.tag===6)d.appendChild(b.stateNode);else if(b.tag!==4&&b.tag!==27&&b.child!==null){b.child.return=b,b=b.child;continue}if(b===t)break e;for(;b.sibling===null;){if(b.return===null||b.return===t)break e;b=b.return}b.sibling.return=b.return,b=b.sibling}t.stateNode=d;e:switch(Tt(d,c,r),c){case"button":case"input":case"select":case"textarea":r=!!r.autoFocus;break e;case"img":r=!0;break e;default:r=!1}r&&Wn(t)}}return Ze(t),Gu(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,a),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==r&&Wn(t);else{if(typeof r!="string"&&t.stateNode===null)throw Error(s(166));if(e=te.current,Jl(t)){if(e=t.stateNode,a=t.memoizedProps,r=null,c=wt,c!==null)switch(c.tag){case 27:case 5:r=c.memoizedProps}e[St]=t,e=!!(e.nodeValue===a||r!==null&&r.suppressHydrationWarning===!0||Lg(e.nodeValue,a)),e||ya(t,!0)}else e=oo(e).createTextNode(r),e[St]=t,t.stateNode=e}return Ze(t),null;case 31:if(a=t.memoizedState,e===null||e.memoizedState!==null){if(r=Jl(t),a!==null){if(e===null){if(!r)throw Error(s(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(s(557));e[St]=t}else cl(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ze(t),e=!1}else a=Wc(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),e=!0;if(!e)return t.flags&256?(en(t),t):(en(t),null);if((t.flags&128)!==0)throw Error(s(558))}return Ze(t),null;case 13:if(r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(c=Jl(t),r!==null&&r.dehydrated!==null){if(e===null){if(!c)throw Error(s(318));if(c=t.memoizedState,c=c!==null?c.dehydrated:null,!c)throw Error(s(317));c[St]=t}else cl(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ze(t),c=!1}else c=Wc(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=c),c=!0;if(!c)return t.flags&256?(en(t),t):(en(t),null)}return en(t),(t.flags&128)!==0?(t.lanes=a,t):(a=r!==null,e=e!==null&&e.memoizedState!==null,a&&(r=t.child,c=null,r.alternate!==null&&r.alternate.memoizedState!==null&&r.alternate.memoizedState.cachePool!==null&&(c=r.alternate.memoizedState.cachePool.pool),d=null,r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(d=r.memoizedState.cachePool.pool),d!==c&&(r.flags|=2048)),a!==e&&a&&(t.child.flags|=8192),Ks(t,t.updateQueue),Ze(t),null);case 4:return ie(),e===null&&dd(t.stateNode.containerInfo),Ze(t),null;case 10:return Xn(t.type),Ze(t),null;case 19:if(O(it),r=t.memoizedState,r===null)return Ze(t),null;if(c=(t.flags&128)!==0,d=r.rendering,d===null)if(c)hr(r,!1);else{if(lt!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(d=zs(e),d!==null){for(t.flags|=128,hr(r,!1),e=d.updateQueue,t.updateQueue=e,Ks(t,e),t.subtreeFlags=0,e=a,a=t.child;a!==null;)mm(a,e),a=a.sibling;return L(it,it.current&1|2),Le&&Kn(t,r.treeForkCount),t.child}e=e.sibling}r.tail!==null&&xt()>Js&&(t.flags|=128,c=!0,hr(r,!1),t.lanes=4194304)}else{if(!c)if(e=zs(d),e!==null){if(t.flags|=128,c=!0,e=e.updateQueue,t.updateQueue=e,Ks(t,e),hr(r,!0),r.tail===null&&r.tailMode==="hidden"&&!d.alternate&&!Le)return Ze(t),null}else 2*xt()-r.renderingStartTime>Js&&a!==536870912&&(t.flags|=128,c=!0,hr(r,!1),t.lanes=4194304);r.isBackwards?(d.sibling=t.child,t.child=d):(e=r.last,e!==null?e.sibling=d:t.child=d,r.last=d)}return r.tail!==null?(e=r.tail,r.rendering=e,r.tail=e.sibling,r.renderingStartTime=xt(),e.sibling=null,a=it.current,L(it,c?a&1|2:a&1),Le&&Kn(t,r.treeForkCount),e):(Ze(t),null);case 22:case 23:return en(t),fu(),r=t.memoizedState!==null,e!==null?e.memoizedState!==null!==r&&(t.flags|=8192):r&&(t.flags|=8192),r?(a&536870912)!==0&&(t.flags&128)===0&&(Ze(t),t.subtreeFlags&6&&(t.flags|=8192)):Ze(t),a=t.updateQueue,a!==null&&Ks(t,a.retryQueue),a=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(a=e.memoizedState.cachePool.pool),r=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(r=t.memoizedState.cachePool.pool),r!==a&&(t.flags|=2048),e!==null&&O(fl),null;case 24:return a=null,e!==null&&(a=e.memoizedState.cache),t.memoizedState.cache!==a&&(t.flags|=2048),Xn(st),Ze(t),null;case 25:return null;case 30:return null}throw Error(s(156,t.tag))}function rS(e,t){switch(Zc(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Xn(st),ie(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return Me(t),null;case 31:if(t.memoizedState!==null){if(en(t),t.alternate===null)throw Error(s(340));cl()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(en(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(s(340));cl()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return O(it),null;case 4:return ie(),null;case 10:return Xn(t.type),null;case 22:case 23:return en(t),fu(),e!==null&&O(fl),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return Xn(st),null;case 25:return null;default:return null}}function qp(e,t){switch(Zc(t),t.tag){case 3:Xn(st),ie();break;case 26:case 27:case 5:Me(t);break;case 4:ie();break;case 31:t.memoizedState!==null&&en(t);break;case 13:en(t);break;case 19:O(it);break;case 10:Xn(t.type);break;case 22:case 23:en(t),fu(),e!==null&&O(fl);break;case 24:Xn(st)}}function mr(e,t){try{var a=t.updateQueue,r=a!==null?a.lastEffect:null;if(r!==null){var c=r.next;a=c;do{if((a.tag&e)===e){r=void 0;var d=a.create,b=a.inst;r=d(),b.destroy=r}a=a.next}while(a!==c)}}catch(T){Fe(t,t.return,T)}}function Ta(e,t,a){try{var r=t.updateQueue,c=r!==null?r.lastEffect:null;if(c!==null){var d=c.next;r=d;do{if((r.tag&e)===e){var b=r.inst,T=b.destroy;if(T!==void 0){b.destroy=void 0,c=t;var _=a,q=T;try{q()}catch(X){Fe(c,_,X)}}}r=r.next}while(r!==d)}}catch(X){Fe(t,t.return,X)}}function Vp(e){var t=e.updateQueue;if(t!==null){var a=e.stateNode;try{Nm(t,a)}catch(r){Fe(e,e.return,r)}}}function Gp(e,t,a){a.props=vl(e.type,e.memoizedProps),a.state=e.memoizedState;try{a.componentWillUnmount()}catch(r){Fe(e,t,r)}}function pr(e,t){try{var a=e.ref;if(a!==null){switch(e.tag){case 26:case 27:case 5:var r=e.stateNode;break;case 30:r=e.stateNode;break;default:r=e.stateNode}typeof a=="function"?e.refCleanup=a(r):a.current=r}}catch(c){Fe(e,t,c)}}function zn(e,t){var a=e.ref,r=e.refCleanup;if(a!==null)if(typeof r=="function")try{r()}catch(c){Fe(e,t,c)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof a=="function")try{a(null)}catch(c){Fe(e,t,c)}else a.current=null}function Yp(e){var t=e.type,a=e.memoizedProps,r=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":a.autoFocus&&r.focus();break e;case"img":a.src?r.src=a.src:a.srcSet&&(r.srcset=a.srcSet)}}catch(c){Fe(e,e.return,c)}}function Yu(e,t,a){try{var r=e.stateNode;OS(r,e.type,a,t),r[Bt]=t}catch(c){Fe(e,e.return,c)}}function Fp(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Na(e.type)||e.tag===4}function Fu(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Fp(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&Na(e.type)||e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Pu(e,t,a){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?(a.nodeType===9?a.body:a.nodeName==="HTML"?a.ownerDocument.body:a).insertBefore(e,t):(t=a.nodeType===9?a.body:a.nodeName==="HTML"?a.ownerDocument.body:a,t.appendChild(e),a=a._reactRootContainer,a!=null||t.onclick!==null||(t.onclick=Yn));else if(r!==4&&(r===27&&Na(e.type)&&(a=e.stateNode,t=null),e=e.child,e!==null))for(Pu(e,t,a),e=e.sibling;e!==null;)Pu(e,t,a),e=e.sibling}function Qs(e,t,a){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?a.insertBefore(e,t):a.appendChild(e);else if(r!==4&&(r===27&&Na(e.type)&&(a=e.stateNode),e=e.child,e!==null))for(Qs(e,t,a),e=e.sibling;e!==null;)Qs(e,t,a),e=e.sibling}function Pp(e){var t=e.stateNode,a=e.memoizedProps;try{for(var r=e.type,c=t.attributes;c.length;)t.removeAttributeNode(c[0]);Tt(t,r,a),t[St]=e,t[Bt]=a}catch(d){Fe(e,e.return,d)}}var ea=!1,ut=!1,Ku=!1,Kp=typeof WeakSet=="function"?WeakSet:Set,gt=null;function sS(e,t){if(e=e.containerInfo,md=go,e=im(e),Ic(e)){if("selectionStart"in e)var a={start:e.selectionStart,end:e.selectionEnd};else e:{a=(a=e.ownerDocument)&&a.defaultView||window;var r=a.getSelection&&a.getSelection();if(r&&r.rangeCount!==0){a=r.anchorNode;var c=r.anchorOffset,d=r.focusNode;r=r.focusOffset;try{a.nodeType,d.nodeType}catch{a=null;break e}var b=0,T=-1,_=-1,q=0,X=0,ne=e,Y=null;t:for(;;){for(var K;ne!==a||c!==0&&ne.nodeType!==3||(T=b+c),ne!==d||r!==0&&ne.nodeType!==3||(_=b+r),ne.nodeType===3&&(b+=ne.nodeValue.length),(K=ne.firstChild)!==null;)Y=ne,ne=K;for(;;){if(ne===e)break t;if(Y===a&&++q===c&&(T=b),Y===d&&++X===r&&(_=b),(K=ne.nextSibling)!==null)break;ne=Y,Y=ne.parentNode}ne=K}a=T===-1||_===-1?null:{start:T,end:_}}else a=null}a=a||{start:0,end:0}}else a=null;for(pd={focusedElem:e,selectionRange:a},go=!1,gt=t;gt!==null;)if(t=gt,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,gt=e;else for(;gt!==null;){switch(t=gt,d=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(a=0;a title"))),Tt(d,r,a),d[St]=e,pt(d),r=d;break e;case"link":var b=Wg("link","href",c).get(r+(a.href||""));if(b){for(var T=0;TQe&&(b=Qe,Qe=be,be=b);var k=am(T,be),z=am(T,Qe);if(k&&z&&(K.rangeCount!==1||K.anchorNode!==k.node||K.anchorOffset!==k.offset||K.focusNode!==z.node||K.focusOffset!==z.offset)){var B=ne.createRange();B.setStart(k.node,k.offset),K.removeAllRanges(),be>Qe?(K.addRange(B),K.extend(z.node,z.offset)):(B.setEnd(z.node,z.offset),K.addRange(B))}}}}for(ne=[],K=T;K=K.parentNode;)K.nodeType===1&&ne.push({element:K,left:K.scrollLeft,top:K.scrollTop});for(typeof T.focus=="function"&&T.focus(),T=0;Ta?32:a,D.T=null,a=ed,ed=null;var d=Aa,b=ia;if(dt=0,fi=Aa=null,ia=0,(Ve&6)!==0)throw Error(s(331));var T=Ve;if(Ve|=4,lg(d.current),tg(d,d.current,b,a),Ve=T,Sr(0,!1),Nt&&typeof Nt.onPostCommitFiberRoot=="function")try{Nt.onPostCommitFiberRoot(el,d)}catch{}return!0}finally{Q.p=c,D.T=r,wg(e,t)}}function Cg(e,t,a){t=dn(a,t),t=Du(e.stateNode,t,2),e=wa(e,t,2),e!==null&&(tt(e,2),kn(e))}function Fe(e,t,a){if(e.tag===3)Cg(e,e,a);else for(;t!==null;){if(t.tag===3){Cg(t,e,a);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof r.componentDidCatch=="function"&&(Oa===null||!Oa.has(r))){e=dn(a,e),a=Tp(2),r=wa(t,a,2),r!==null&&(Mp(a,r,t,e),tt(r,2),kn(r));break}}t=t.return}}function ld(e,t,a){var r=e.pingCache;if(r===null){r=e.pingCache=new uS;var c=new Set;r.set(t,c)}else c=r.get(t),c===void 0&&(c=new Set,r.set(t,c));c.has(a)||($u=!0,c.add(a),e=pS.bind(null,e,t,a),t.then(e,e))}function pS(e,t,a){var r=e.pingCache;r!==null&&r.delete(t),e.pingedLanes|=e.suspendedLanes&a,e.warmLanes&=~a,Xe===e&&(ze&a)===a&&(lt===4||lt===3&&(ze&62914560)===ze&&300>xt()-Zs?(Ve&2)===0&&hi(e,0):Zu|=a,di===ze&&(di=0)),kn(e)}function Tg(e,t){t===0&&(t=Ot()),e=sl(e,t),e!==null&&(tt(e,t),kn(e))}function gS(e){var t=e.memoizedState,a=0;t!==null&&(a=t.retryLane),Tg(e,a)}function vS(e,t){var a=0;switch(e.tag){case 31:case 13:var r=e.stateNode,c=e.memoizedState;c!==null&&(a=c.retryLane);break;case 19:r=e.stateNode;break;case 22:r=e.stateNode._retryCache;break;default:throw Error(s(314))}r!==null&&r.delete(t),Tg(e,a)}function yS(e,t){return Ce(e,t)}var lo=null,pi=null,id=!1,io=!1,rd=!1,ja=0;function kn(e){e!==pi&&e.next===null&&(pi===null?lo=pi=e:pi=pi.next=e),io=!0,id||(id=!0,xS())}function Sr(e,t){if(!rd&&io){rd=!0;do for(var a=!1,r=lo;r!==null;){if(e!==0){var c=r.pendingLanes;if(c===0)var d=0;else{var b=r.suspendedLanes,T=r.pingedLanes;d=(1<<31-Rt(42|e)+1)-1,d&=c&~(b&~T),d=d&201326741?d&201326741|1:d?d|2:0}d!==0&&(a=!0,Ag(r,d))}else d=ze,d=Se(r,r===Xe?d:0,r.cancelPendingCommit!==null||r.timeoutHandle!==-1),(d&3)===0||Je(r,d)||(a=!0,Ag(r,d));r=r.next}while(a);rd=!1}}function bS(){Mg()}function Mg(){io=id=!1;var e=0;ja!==0&&_S()&&(e=ja);for(var t=xt(),a=null,r=lo;r!==null;){var c=r.next,d=Rg(r,t);d===0?(r.next=null,a===null?lo=c:a.next=c,c===null&&(pi=a)):(a=r,(e!==0||(d&3)!==0)&&(io=!0)),r=c}dt!==0&&dt!==5||Sr(e),ja!==0&&(ja=0)}function Rg(e,t){for(var a=e.suspendedLanes,r=e.pingedLanes,c=e.expirationTimes,d=e.pendingLanes&-62914561;0T)break;var X=_.transferSize,ne=_.initiatorType;X&&Hg(ne)&&(_=_.responseEnd,b+=X*(_"u"?null:document;function Xg(e,t,a){var r=gi;if(r&&typeof t=="string"&&t){var c=cn(t);c='link[rel="'+e+'"][href="'+c+'"]',typeof a=="string"&&(c+='[crossorigin="'+a+'"]'),Qg.has(c)||(Qg.add(c),e={rel:e,crossOrigin:a,href:t},r.querySelector(c)===null&&(t=r.createElement("link"),Tt(t,"link",e),pt(t),r.head.appendChild(t)))}}function BS(e){ra.D(e),Xg("dns-prefetch",e,null)}function IS(e,t){ra.C(e,t),Xg("preconnect",e,t)}function qS(e,t,a){ra.L(e,t,a);var r=gi;if(r&&e&&t){var c='link[rel="preload"][as="'+cn(t)+'"]';t==="image"&&a&&a.imageSrcSet?(c+='[imagesrcset="'+cn(a.imageSrcSet)+'"]',typeof a.imageSizes=="string"&&(c+='[imagesizes="'+cn(a.imageSizes)+'"]')):c+='[href="'+cn(e)+'"]';var d=c;switch(t){case"style":d=vi(e);break;case"script":d=yi(e)}vn.has(d)||(e=g({rel:"preload",href:t==="image"&&a&&a.imageSrcSet?void 0:e,as:t},a),vn.set(d,e),r.querySelector(c)!==null||t==="style"&&r.querySelector(Tr(d))||t==="script"&&r.querySelector(Mr(d))||(t=r.createElement("link"),Tt(t,"link",e),pt(t),r.head.appendChild(t)))}}function VS(e,t){ra.m(e,t);var a=gi;if(a&&e){var r=t&&typeof t.as=="string"?t.as:"script",c='link[rel="modulepreload"][as="'+cn(r)+'"][href="'+cn(e)+'"]',d=c;switch(r){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":d=yi(e)}if(!vn.has(d)&&(e=g({rel:"modulepreload",href:e},t),vn.set(d,e),a.querySelector(c)===null)){switch(r){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(a.querySelector(Mr(d)))return}r=a.createElement("link"),Tt(r,"link",e),pt(r),a.head.appendChild(r)}}}function GS(e,t,a){ra.S(e,t,a);var r=gi;if(r&&e){var c=Bl(r).hoistableStyles,d=vi(e);t=t||"default";var b=c.get(d);if(!b){var T={loading:0,preload:null};if(b=r.querySelector(Tr(d)))T.loading=5;else{e=g({rel:"stylesheet",href:e,"data-precedence":t},a),(a=vn.get(d))&&wd(e,a);var _=b=r.createElement("link");pt(_),Tt(_,"link",e),_._p=new Promise(function(q,X){_.onload=q,_.onerror=X}),_.addEventListener("load",function(){T.loading|=1}),_.addEventListener("error",function(){T.loading|=2}),T.loading|=4,uo(b,t,r)}b={type:"stylesheet",instance:b,count:1,state:T},c.set(d,b)}}}function YS(e,t){ra.X(e,t);var a=gi;if(a&&e){var r=Bl(a).hoistableScripts,c=yi(e),d=r.get(c);d||(d=a.querySelector(Mr(c)),d||(e=g({src:e,async:!0},t),(t=vn.get(c))&&Ed(e,t),d=a.createElement("script"),pt(d),Tt(d,"link",e),a.head.appendChild(d)),d={type:"script",instance:d,count:1,state:null},r.set(c,d))}}function FS(e,t){ra.M(e,t);var a=gi;if(a&&e){var r=Bl(a).hoistableScripts,c=yi(e),d=r.get(c);d||(d=a.querySelector(Mr(c)),d||(e=g({src:e,async:!0,type:"module"},t),(t=vn.get(c))&&Ed(e,t),d=a.createElement("script"),pt(d),Tt(d,"link",e),a.head.appendChild(d)),d={type:"script",instance:d,count:1,state:null},r.set(c,d))}}function $g(e,t,a,r){var c=(c=te.current)?co(c):null;if(!c)throw Error(s(446));switch(e){case"meta":case"title":return null;case"style":return typeof a.precedence=="string"&&typeof a.href=="string"?(t=vi(a.href),a=Bl(c).hoistableStyles,r=a.get(t),r||(r={type:"style",instance:null,count:0,state:null},a.set(t,r)),r):{type:"void",instance:null,count:0,state:null};case"link":if(a.rel==="stylesheet"&&typeof a.href=="string"&&typeof a.precedence=="string"){e=vi(a.href);var d=Bl(c).hoistableStyles,b=d.get(e);if(b||(c=c.ownerDocument||c,b={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},d.set(e,b),(d=c.querySelector(Tr(e)))&&!d._p&&(b.instance=d,b.state.loading=5),vn.has(e)||(a={rel:"preload",as:"style",href:a.href,crossOrigin:a.crossOrigin,integrity:a.integrity,media:a.media,hrefLang:a.hrefLang,referrerPolicy:a.referrerPolicy},vn.set(e,a),d||PS(c,e,a,b.state))),t&&r===null)throw Error(s(528,""));return b}if(t&&r!==null)throw Error(s(529,""));return null;case"script":return t=a.async,a=a.src,typeof a=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=yi(a),a=Bl(c).hoistableScripts,r=a.get(t),r||(r={type:"script",instance:null,count:0,state:null},a.set(t,r)),r):{type:"void",instance:null,count:0,state:null};default:throw Error(s(444,e))}}function vi(e){return'href="'+cn(e)+'"'}function Tr(e){return'link[rel="stylesheet"]['+e+"]"}function Zg(e){return g({},e,{"data-precedence":e.precedence,precedence:null})}function PS(e,t,a,r){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?r.loading=1:(t=e.createElement("link"),r.preload=t,t.addEventListener("load",function(){return r.loading|=1}),t.addEventListener("error",function(){return r.loading|=2}),Tt(t,"link",a),pt(t),e.head.appendChild(t))}function yi(e){return'[src="'+cn(e)+'"]'}function Mr(e){return"script[async]"+e}function Jg(e,t,a){if(t.count++,t.instance===null)switch(t.type){case"style":var r=e.querySelector('style[data-href~="'+cn(a.href)+'"]');if(r)return t.instance=r,pt(r),r;var c=g({},a,{"data-href":a.href,"data-precedence":a.precedence,href:null,precedence:null});return r=(e.ownerDocument||e).createElement("style"),pt(r),Tt(r,"style",c),uo(r,a.precedence,e),t.instance=r;case"stylesheet":c=vi(a.href);var d=e.querySelector(Tr(c));if(d)return t.state.loading|=4,t.instance=d,pt(d),d;r=Zg(a),(c=vn.get(c))&&wd(r,c),d=(e.ownerDocument||e).createElement("link"),pt(d);var b=d;return b._p=new Promise(function(T,_){b.onload=T,b.onerror=_}),Tt(d,"link",r),t.state.loading|=4,uo(d,a.precedence,e),t.instance=d;case"script":return d=yi(a.src),(c=e.querySelector(Mr(d)))?(t.instance=c,pt(c),c):(r=a,(c=vn.get(d))&&(r=g({},a),Ed(r,c)),e=e.ownerDocument||e,c=e.createElement("script"),pt(c),Tt(c,"link",r),e.head.appendChild(c),t.instance=c);case"void":return null;default:throw Error(s(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(r=t.instance,t.state.loading|=4,uo(r,a.precedence,e));return t.instance}function uo(e,t,a){for(var r=a.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),c=r.length?r[r.length-1]:null,d=c,b=0;b title"):null)}function KS(e,t,a){if(a===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;return t.rel==="stylesheet"?(e=t.disabled,typeof t.precedence=="string"&&e==null):!0;case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function tv(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function QS(e,t,a,r){if(a.type==="stylesheet"&&(typeof r.media!="string"||matchMedia(r.media).matches!==!1)&&(a.state.loading&4)===0){if(a.instance===null){var c=vi(r.href),d=t.querySelector(Tr(c));if(d){t=d._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=ho.bind(e),t.then(e,e)),a.state.loading|=4,a.instance=d,pt(d);return}d=t.ownerDocument||t,r=Zg(r),(c=vn.get(c))&&wd(r,c),d=d.createElement("link"),pt(d);var b=d;b._p=new Promise(function(T,_){b.onload=T,b.onerror=_}),Tt(d,"link",r),a.instance=d}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(a,t),(t=a.state.preload)&&(a.state.loading&3)===0&&(e.count++,a=ho.bind(e),t.addEventListener("load",a),t.addEventListener("error",a))}}var Cd=0;function XS(e,t){return e.stylesheets&&e.count===0&&po(e,e.stylesheets),0Cd?50:800)+t);return e.unsuspend=a,function(){e.unsuspend=null,clearTimeout(r),clearTimeout(c)}}:null}function ho(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)po(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var mo=null;function po(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,mo=new Map,t.forEach($S,e),mo=null,ho.call(e))}function $S(e,t){if(!(t.state.loading&4)){var a=mo.get(e);if(a)var r=a.get(null);else{a=new Map,mo.set(e,a);for(var c=e.querySelectorAll("link[data-precedence],style[data-precedence]"),d=0;d"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(l){console.error(l)}}return n(),Dd.exports=fw(),Dd.exports}var mw=hw(),Jr=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(n){return this.listeners.add(n),this.onSubscribe(),()=>{this.listeners.delete(n),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},pw=class extends Jr{#e;#t;#n;constructor(){super(),this.#n=n=>{if(typeof window<"u"&&window.addEventListener){const l=()=>n();return window.addEventListener("visibilitychange",l,!1),()=>{window.removeEventListener("visibilitychange",l)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(n){this.#n=n,this.#t?.(),this.#t=n(l=>{typeof l=="boolean"?this.setFocused(l):this.onFocus()})}setFocused(n){this.#e!==n&&(this.#e=n,this.onFocus())}onFocus(){const n=this.isFocused();this.listeners.forEach(l=>{l(n)})}isFocused(){return typeof this.#e=="boolean"?this.#e:globalThis.document?.visibilityState!=="hidden"}},Nf=new pw,gw={setTimeout:(n,l)=>setTimeout(n,l),clearTimeout:n=>clearTimeout(n),setInterval:(n,l)=>setInterval(n,l),clearInterval:n=>clearInterval(n)},vw=class{#e=gw;#t=!1;setTimeoutProvider(n){this.#e=n}setTimeout(n,l){return this.#e.setTimeout(n,l)}clearTimeout(n){this.#e.clearTimeout(n)}setInterval(n,l){return this.#e.setInterval(n,l)}clearInterval(n){this.#e.clearInterval(n)}},wl=new vw;function yw(n){setTimeout(n,0)}var bw=typeof window>"u"||"Deno"in globalThis;function Kt(){}function xw(n,l){return typeof n=="function"?n(l):n}function rf(n){return typeof n=="number"&&n>=0&&n!==1/0}function ky(n,l){return Math.max(n+(l||0)-Date.now(),0)}function qa(n,l){return typeof n=="function"?n(l):n}function ln(n,l){return typeof n=="function"?n(l):n}function Tv(n,l){const{type:i="all",exact:s,fetchStatus:o,predicate:u,queryKey:f,stale:m}=n;if(f){if(s){if(l.queryHash!==Df(f,l.options))return!1}else if(!qr(l.queryKey,f))return!1}if(i!=="all"){const v=l.isActive();if(i==="active"&&!v||i==="inactive"&&v)return!1}return!(typeof m=="boolean"&&l.isStale()!==m||o&&o!==l.state.fetchStatus||u&&!u(l))}function Mv(n,l){const{exact:i,status:s,predicate:o,mutationKey:u}=n;if(u){if(!l.options.mutationKey)return!1;if(i){if(Ir(l.options.mutationKey)!==Ir(u))return!1}else if(!qr(l.options.mutationKey,u))return!1}return!(s&&l.state.status!==s||o&&!o(l))}function Df(n,l){return(l?.queryKeyHashFn||Ir)(n)}function Ir(n){return JSON.stringify(n,(l,i)=>of(i)?Object.keys(i).sort().reduce((s,o)=>(s[o]=i[o],s),{}):i)}function qr(n,l){return n===l?!0:typeof n!=typeof l?!1:n&&l&&typeof n=="object"&&typeof l=="object"?Object.keys(l).every(i=>qr(n[i],l[i])):!1}var Sw=Object.prototype.hasOwnProperty;function Ly(n,l,i=0){if(n===l)return n;if(i>500)return l;const s=Rv(n)&&Rv(l);if(!s&&!(of(n)&&of(l)))return l;const u=(s?n:Object.keys(n)).length,f=s?l:Object.keys(l),m=f.length,v=s?new Array(m):{};let h=0;for(let x=0;x{wl.setTimeout(l,n)})}function cf(n,l,i){return typeof i.structuralSharing=="function"?i.structuralSharing(n,l):i.structuralSharing!==!1?Ly(n,l):l}function Ew(n,l,i=0){const s=[...n,l];return i&&s.length>i?s.slice(1):s}function Cw(n,l,i=0){const s=[l,...n];return i&&s.length>i?s.slice(0,-1):s}var zf=Symbol();function Hy(n,l){return!n.queryFn&&l?.initialPromise?()=>l.initialPromise:!n.queryFn||n.queryFn===zf?()=>Promise.reject(new Error(`Missing queryFn: '${n.queryHash}'`)):n.queryFn}function Uy(n,l){return typeof n=="function"?n(...l):!!n}function Tw(n,l,i){let s=!1,o;return Object.defineProperty(n,"signal",{enumerable:!0,get:()=>(o??=l(),s||(s=!0,o.aborted?i():o.addEventListener("abort",i,{once:!0})),o)}),n}var Vr=(()=>{let n=()=>bw;return{isServer(){return n()},setIsServer(l){n=l}}})();function uf(){let n,l;const i=new Promise((o,u)=>{n=o,l=u});i.status="pending",i.catch(()=>{});function s(o){Object.assign(i,o),delete i.resolve,delete i.reject}return i.resolve=o=>{s({status:"fulfilled",value:o}),n(o)},i.reject=o=>{s({status:"rejected",reason:o}),l(o)},i}var Mw=yw;function Rw(){let n=[],l=0,i=m=>{m()},s=m=>{m()},o=Mw;const u=m=>{l?n.push(m):o(()=>{i(m)})},f=()=>{const m=n;n=[],m.length&&o(()=>{s(()=>{m.forEach(v=>{i(v)})})})};return{batch:m=>{let v;l++;try{v=m()}finally{l--,l||f()}return v},batchCalls:m=>(...v)=>{u(()=>{m(...v)})},schedule:u,setNotifyFunction:m=>{i=m},setBatchNotifyFunction:m=>{s=m},setScheduler:m=>{o=m}}}var Mt=Rw(),Ow=class extends Jr{#e=!0;#t;#n;constructor(){super(),this.#n=n=>{if(typeof window<"u"&&window.addEventListener){const l=()=>n(!0),i=()=>n(!1);return window.addEventListener("online",l,!1),window.addEventListener("offline",i,!1),()=>{window.removeEventListener("online",l),window.removeEventListener("offline",i)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(n){this.#n=n,this.#t?.(),this.#t=n(this.setOnline.bind(this))}setOnline(n){this.#e!==n&&(this.#e=n,this.listeners.forEach(i=>{i(n)}))}isOnline(){return this.#e}},Io=new Ow;function Aw(n){return Math.min(1e3*2**n,3e4)}function By(n){return(n??"online")==="online"?Io.isOnline():!0}var df=class extends Error{constructor(n){super("CancelledError"),this.revert=n?.revert,this.silent=n?.silent}};function Iy(n){let l=!1,i=0,s;const o=uf(),u=()=>o.status!=="pending",f=C=>{if(!u()){const R=new df(C);S(R),n.onCancel?.(R)}},m=()=>{l=!0},v=()=>{l=!1},h=()=>Nf.isFocused()&&(n.networkMode==="always"||Io.isOnline())&&n.canRun(),x=()=>By(n.networkMode)&&n.canRun(),g=C=>{u()||(s?.(),o.resolve(C))},S=C=>{u()||(s?.(),o.reject(C))},E=()=>new Promise(C=>{s=R=>{(u()||h())&&C(R)},n.onPause?.()}).then(()=>{s=void 0,u()||n.onContinue?.()}),w=()=>{if(u())return;let C;const R=i===0?n.initialPromise:void 0;try{C=R??n.fn()}catch(M){C=Promise.reject(M)}Promise.resolve(C).then(g).catch(M=>{if(u())return;const j=n.retry??(Vr.isServer()?0:3),N=n.retryDelay??Aw,H=typeof N=="function"?N(i,M):N,G=j===!0||typeof j=="number"&&ih()?void 0:E()).then(()=>{l?S(M):w()})})};return{promise:o,status:()=>o.status,cancel:f,continue:()=>(s?.(),o),cancelRetry:m,continueRetry:v,canStart:x,start:()=>(x()?w():E().then(w),o)}}var qy=class{#e;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),rf(this.gcTime)&&(this.#e=wl.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(n){this.gcTime=Math.max(this.gcTime||0,n??(Vr.isServer()?1/0:300*1e3))}clearGcTimeout(){this.#e!==void 0&&(wl.clearTimeout(this.#e),this.#e=void 0)}};function _w(n){return{onFetch:(l,i)=>{const s=l.options,o=l.fetchOptions?.meta?.fetchMore?.direction,u=l.state.data?.pages||[],f=l.state.data?.pageParams||[];let m={pages:[],pageParams:[]},v=0;const h=async()=>{let x=!1;const g=w=>{Tw(w,()=>l.signal,()=>x=!0)},S=Hy(l.options,l.fetchOptions),E=async(w,C,R)=>{if(x)return Promise.reject(l.signal.reason);if(C==null&&w.pages.length)return Promise.resolve(w);const j=(()=>{const I={client:l.client,queryKey:l.queryKey,pageParam:C,direction:R?"backward":"forward",meta:l.options.meta};return g(I),I})(),N=await S(j),{maxPages:H}=l.options,G=R?Cw:Ew;return{pages:G(w.pages,N,H),pageParams:G(w.pageParams,C,H)}};if(o&&u.length){const w=o==="backward",C=w?jw:Av,R={pages:u,pageParams:f},M=C(s,R);m=await E(R,M,w)}else{const w=n??u.length;do{const C=v===0?f[0]??s.initialPageParam:Av(s,m);if(v>0&&C==null)break;m=await E(m,C),v++}while(vl.options.persister?.(h,{client:l.client,queryKey:l.queryKey,meta:l.options.meta,signal:l.signal},i):l.fetchFn=h}}}function Av(n,{pages:l,pageParams:i}){const s=l.length-1;return l.length>0?n.getNextPageParam(l[s],l,i[s],i):void 0}function jw(n,{pages:l,pageParams:i}){return l.length>0?n.getPreviousPageParam?.(l[0],l,i[0],i):void 0}var Nw=class extends qy{#e;#t;#n;#a;#i;#l;#s;#r;constructor(n){super(),this.#r=!1,this.#s=n.defaultOptions,this.setOptions(n.options),this.observers=[],this.#i=n.client,this.#a=this.#i.getQueryCache(),this.queryKey=n.queryKey,this.queryHash=n.queryHash,this.#t=jv(this.options),this.state=n.state??this.#t,this.scheduleGc()}get meta(){return this.options.meta}get queryType(){return this.#e}get promise(){return this.#l?.promise}setOptions(n){if(this.options={...this.#s,...n},n?._type&&(this.#e=n._type),this.updateGcTime(this.options.gcTime),this.state&&this.state.data===void 0){const l=jv(this.options);l.data!==void 0&&(this.setState(_v(l.data,l.dataUpdatedAt)),this.#t=l)}}optionalRemove(){!this.observers.length&&this.state.fetchStatus==="idle"&&this.#a.remove(this)}setData(n,l){const i=cf(this.state.data,n,this.options);return this.#o({data:i,type:"success",dataUpdatedAt:l?.updatedAt,manual:l?.manual}),i}setState(n){this.#o({type:"setState",state:n})}cancel(n){const l=this.#l?.promise;return this.#l?.cancel(n),l?l.then(Kt).catch(Kt):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}get resetState(){return this.#t}reset(){this.destroy(),this.setState(this.resetState)}isActive(){return this.observers.some(n=>ln(n.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===zf||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0?this.observers.some(n=>qa(n.options.staleTime,this)==="static"):!1}isStale(){return this.getObserversCount()>0?this.observers.some(n=>n.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(n=0){return this.state.data===void 0?!0:n==="static"?!1:this.state.isInvalidated?!0:!ky(this.state.dataUpdatedAt,n)}onFocus(){this.observers.find(l=>l.shouldFetchOnWindowFocus())?.refetch({cancelRefetch:!1}),this.#l?.continue()}onOnline(){this.observers.find(l=>l.shouldFetchOnReconnect())?.refetch({cancelRefetch:!1}),this.#l?.continue()}addObserver(n){this.observers.includes(n)||(this.observers.push(n),this.clearGcTimeout(),this.#a.notify({type:"observerAdded",query:this,observer:n}))}removeObserver(n){this.observers.includes(n)&&(this.observers=this.observers.filter(l=>l!==n),this.observers.length||(this.#l&&(this.#r||this.#u()?this.#l.cancel({revert:!0}):this.#l.cancelRetry()),this.scheduleGc()),this.#a.notify({type:"observerRemoved",query:this,observer:n}))}getObserversCount(){return this.observers.length}#u(){return this.state.fetchStatus==="paused"&&this.state.status==="pending"}invalidate(){this.state.isInvalidated||this.#o({type:"invalidate"})}async fetch(n,l){if(this.state.fetchStatus!=="idle"&&this.#l?.status()!=="rejected"){if(this.state.data!==void 0&&l?.cancelRefetch)this.cancel({silent:!0});else if(this.#l)return this.#l.continueRetry(),this.#l.promise}if(n&&this.setOptions(n),!this.options.queryFn){const v=this.observers.find(h=>h.options.queryFn);v&&this.setOptions(v.options)}const i=new AbortController,s=v=>{Object.defineProperty(v,"signal",{enumerable:!0,get:()=>(this.#r=!0,i.signal)})},o=()=>{const v=Hy(this.options,l),x=(()=>{const g={client:this.#i,queryKey:this.queryKey,meta:this.meta};return s(g),g})();return this.#r=!1,this.options.persister?this.options.persister(v,x,this):v(x)},f=(()=>{const v={fetchOptions:l,options:this.options,queryKey:this.queryKey,client:this.#i,state:this.state,fetchFn:o};return s(v),v})();(this.#e==="infinite"?_w(this.options.pages):this.options.behavior)?.onFetch(f,this),this.#n=this.state,(this.state.fetchStatus==="idle"||this.state.fetchMeta!==f.fetchOptions?.meta)&&this.#o({type:"fetch",meta:f.fetchOptions?.meta}),this.#l=Iy({initialPromise:l?.initialPromise,fn:f.fetchFn,onCancel:v=>{v instanceof df&&v.revert&&this.setState({...this.#n,fetchStatus:"idle"}),i.abort()},onFail:(v,h)=>{this.#o({type:"failed",failureCount:v,error:h})},onPause:()=>{this.#o({type:"pause"})},onContinue:()=>{this.#o({type:"continue"})},retry:f.options.retry,retryDelay:f.options.retryDelay,networkMode:f.options.networkMode,canRun:()=>!0});try{const v=await this.#l.start();if(v===void 0)throw new Error(`${this.queryHash} data is undefined`);return this.setData(v),this.#a.config.onSuccess?.(v,this),this.#a.config.onSettled?.(v,this.state.error,this),v}catch(v){if(v instanceof df){if(v.silent)return this.#l.promise;if(v.revert){if(this.state.data===void 0)throw v;return this.state.data}}throw this.#o({type:"error",error:v}),this.#a.config.onError?.(v,this),this.#a.config.onSettled?.(this.state.data,v,this),v}finally{this.scheduleGc()}}#o(n){const l=i=>{switch(n.type){case"failed":return{...i,fetchFailureCount:n.failureCount,fetchFailureReason:n.error};case"pause":return{...i,fetchStatus:"paused"};case"continue":return{...i,fetchStatus:"fetching"};case"fetch":return{...i,...Vy(i.data,this.options),fetchMeta:n.meta??null};case"success":const s={...i,..._v(n.data,n.dataUpdatedAt),dataUpdateCount:i.dataUpdateCount+1,...!n.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};return this.#n=n.manual?s:void 0,s;case"error":const o=n.error;return{...i,error:o,errorUpdateCount:i.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:i.fetchFailureCount+1,fetchFailureReason:o,fetchStatus:"idle",status:"error",isInvalidated:!0};case"invalidate":return{...i,isInvalidated:!0};case"setState":return{...i,...n.state}}};this.state=l(this.state),Mt.batch(()=>{this.observers.forEach(i=>{i.onQueryUpdate()}),this.#a.notify({query:this,type:"updated",action:n})})}};function Vy(n,l){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:By(l.networkMode)?"fetching":"paused",...n===void 0&&{error:null,status:"pending"}}}function _v(n,l){return{data:n,dataUpdatedAt:l??Date.now(),error:null,isInvalidated:!1,status:"success"}}function jv(n){const l=typeof n.initialData=="function"?n.initialData():n.initialData,i=l!==void 0,s=i?typeof n.initialDataUpdatedAt=="function"?n.initialDataUpdatedAt():n.initialDataUpdatedAt:0;return{data:l,dataUpdateCount:0,dataUpdatedAt:i?s??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:i?"success":"pending",fetchStatus:"idle"}}var Dw=class extends Jr{constructor(n,l){super(),this.options=l,this.#e=n,this.#r=null,this.#s=uf(),this.bindMethods(),this.setOptions(l)}#e;#t=void 0;#n=void 0;#a=void 0;#i;#l;#s;#r;#u;#o;#m;#d;#f;#c;#p=new Set;bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(this.#t.addObserver(this),Nv(this.#t,this.options)?this.#h():this.updateResult(),this.#b())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return ff(this.#t,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return ff(this.#t,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#x(),this.#S(),this.#t.removeObserver(this)}setOptions(n){const l=this.options,i=this.#t;if(this.options=this.#e.defaultQueryOptions(n),this.options.enabled!==void 0&&typeof this.options.enabled!="boolean"&&typeof this.options.enabled!="function"&&typeof ln(this.options.enabled,this.#t)!="boolean")throw new Error("Expected enabled to be a boolean or a callback that returns a boolean");this.#w(),this.#t.setOptions(this.options),l._defaulted&&!sf(this.options,l)&&this.#e.getQueryCache().notify({type:"observerOptionsUpdated",query:this.#t,observer:this});const s=this.hasListeners();s&&Dv(this.#t,i,this.options,l)&&this.#h(),this.updateResult(),s&&(this.#t!==i||ln(this.options.enabled,this.#t)!==ln(l.enabled,this.#t)||qa(this.options.staleTime,this.#t)!==qa(l.staleTime,this.#t))&&this.#g();const o=this.#v();s&&(this.#t!==i||ln(this.options.enabled,this.#t)!==ln(l.enabled,this.#t)||o!==this.#c)&&this.#y(o)}getOptimisticResult(n){const l=this.#e.getQueryCache().build(this.#e,n),i=this.createResult(l,n);return kw(this,i)&&(this.#a=i,this.#l=this.options,this.#i=this.#t.state),i}getCurrentResult(){return this.#a}trackResult(n,l){return new Proxy(n,{get:(i,s)=>(this.trackProp(s),l?.(s),s==="promise"&&(this.trackProp("data"),!this.options.experimental_prefetchInRender&&this.#s.status==="pending"&&this.#s.reject(new Error("experimental_prefetchInRender feature flag is not enabled"))),Reflect.get(i,s))})}trackProp(n){this.#p.add(n)}getCurrentQuery(){return this.#t}refetch({...n}={}){return this.fetch({...n})}fetchOptimistic(n){const l=this.#e.defaultQueryOptions(n),i=this.#e.getQueryCache().build(this.#e,l);return i.fetch().then(()=>this.createResult(i,l))}fetch(n){return this.#h({...n,cancelRefetch:n.cancelRefetch??!0}).then(()=>(this.updateResult(),this.#a))}#h(n){this.#w();let l=this.#t.fetch(this.options,n);return n?.throwOnError||(l=l.catch(Kt)),l}#g(){this.#x();const n=qa(this.options.staleTime,this.#t);if(Vr.isServer()||this.#a.isStale||!rf(n))return;const i=ky(this.#a.dataUpdatedAt,n)+1;this.#d=wl.setTimeout(()=>{this.#a.isStale||this.updateResult()},i)}#v(){return(typeof this.options.refetchInterval=="function"?this.options.refetchInterval(this.#t):this.options.refetchInterval)??!1}#y(n){this.#S(),this.#c=n,!(Vr.isServer()||ln(this.options.enabled,this.#t)===!1||!rf(this.#c)||this.#c===0)&&(this.#f=wl.setInterval(()=>{(this.options.refetchIntervalInBackground||Nf.isFocused())&&this.#h()},this.#c))}#b(){this.#g(),this.#y(this.#v())}#x(){this.#d!==void 0&&(wl.clearTimeout(this.#d),this.#d=void 0)}#S(){this.#f!==void 0&&(wl.clearInterval(this.#f),this.#f=void 0)}createResult(n,l){const i=this.#t,s=this.options,o=this.#a,u=this.#i,f=this.#l,v=n!==i?n.state:this.#n,{state:h}=n;let x={...h},g=!1,S;if(l._optimisticResults){const U=this.hasListeners(),ce=!U&&Nv(n,l),se=U&&Dv(n,i,l,s);(ce||se)&&(x={...x,...Vy(h.data,n.options)}),l._optimisticResults==="isRestoring"&&(x.fetchStatus="idle")}let{error:E,errorUpdatedAt:w,status:C}=x;S=x.data;let R=!1;if(l.placeholderData!==void 0&&S===void 0&&C==="pending"){let U;o?.isPlaceholderData&&l.placeholderData===f?.placeholderData?(U=o.data,R=!0):U=typeof l.placeholderData=="function"?l.placeholderData(this.#m?.state.data,this.#m):l.placeholderData,U!==void 0&&(C="success",S=cf(o?.data,U,l),g=!0)}if(l.select&&S!==void 0&&!R)if(o&&S===u?.data&&l.select===this.#u)S=this.#o;else try{this.#u=l.select,S=l.select(S),S=cf(o?.data,S,l),this.#o=S,this.#r=null}catch(U){this.#r=U}this.#r&&(E=this.#r,S=this.#o,w=Date.now(),C="error");const M=x.fetchStatus==="fetching",j=C==="pending",N=C==="error",H=j&&M,G=S!==void 0,V={status:C,fetchStatus:x.fetchStatus,isPending:j,isSuccess:C==="success",isError:N,isInitialLoading:H,isLoading:H,data:S,dataUpdatedAt:x.dataUpdatedAt,error:E,errorUpdatedAt:w,failureCount:x.fetchFailureCount,failureReason:x.fetchFailureReason,errorUpdateCount:x.errorUpdateCount,isFetched:n.isFetched(),isFetchedAfterMount:x.dataUpdateCount>v.dataUpdateCount||x.errorUpdateCount>v.errorUpdateCount,isFetching:M,isRefetching:M&&!j,isLoadingError:N&&!G,isPaused:x.fetchStatus==="paused",isPlaceholderData:g,isRefetchError:N&&G,isStale:kf(n,l),refetch:this.refetch,promise:this.#s,isEnabled:ln(l.enabled,n)!==!1};if(this.options.experimental_prefetchInRender){const U=V.data!==void 0,ce=V.status==="error"&&!U,se=oe=>{ce?oe.reject(V.error):U&&oe.resolve(V.data)},ae=()=>{const oe=this.#s=V.promise=uf();se(oe)},ue=this.#s;switch(ue.status){case"pending":n.queryHash===i.queryHash&&se(ue);break;case"fulfilled":(ce||V.data!==ue.value)&&ae();break;case"rejected":(!ce||V.error!==ue.reason)&&ae();break}}return V}updateResult(){const n=this.#a,l=this.createResult(this.#t,this.options);if(this.#i=this.#t.state,this.#l=this.options,this.#i.data!==void 0&&(this.#m=this.#t),sf(l,n))return;this.#a=l;const i=()=>{if(!n)return!0;const{notifyOnChangeProps:s}=this.options,o=typeof s=="function"?s():s;if(o==="all"||!o&&!this.#p.size)return!0;const u=new Set(o??this.#p);return this.options.throwOnError&&u.add("error"),Object.keys(this.#a).some(f=>{const m=f;return this.#a[m]!==n[m]&&u.has(m)})};this.#E({listeners:i()})}#w(){const n=this.#e.getQueryCache().build(this.#e,this.options);if(n===this.#t)return;const l=this.#t;this.#t=n,this.#n=n.state,this.hasListeners()&&(l?.removeObserver(this),n.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#b()}#E(n){Mt.batch(()=>{n.listeners&&this.listeners.forEach(l=>{l(this.#a)}),this.#e.getQueryCache().notify({query:this.#t,type:"observerResultsUpdated"})})}};function zw(n,l){return ln(l.enabled,n)!==!1&&n.state.data===void 0&&!(n.state.status==="error"&&ln(l.retryOnMount,n)===!1)}function Nv(n,l){return zw(n,l)||n.state.data!==void 0&&ff(n,l,l.refetchOnMount)}function ff(n,l,i){if(ln(l.enabled,n)!==!1&&qa(l.staleTime,n)!=="static"){const s=typeof i=="function"?i(n):i;return s==="always"||s!==!1&&kf(n,l)}return!1}function Dv(n,l,i,s){return(n!==l||ln(s.enabled,n)===!1)&&(!i.suspense||n.state.status!=="error")&&kf(n,i)}function kf(n,l){return ln(l.enabled,n)!==!1&&n.isStaleByTime(qa(l.staleTime,n))}function kw(n,l){return!sf(n.getCurrentResult(),l)}var Lw=class extends qy{#e;#t;#n;#a;constructor(n){super(),this.#e=n.client,this.mutationId=n.mutationId,this.#n=n.mutationCache,this.#t=[],this.state=n.state||Hw(),this.setOptions(n.options),this.scheduleGc()}setOptions(n){this.options=n,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(n){this.#t.includes(n)||(this.#t.push(n),this.clearGcTimeout(),this.#n.notify({type:"observerAdded",mutation:this,observer:n}))}removeObserver(n){this.#t=this.#t.filter(l=>l!==n),this.scheduleGc(),this.#n.notify({type:"observerRemoved",mutation:this,observer:n})}optionalRemove(){this.#t.length||(this.state.status==="pending"?this.scheduleGc():this.#n.remove(this))}continue(){return this.#a?.continue()??this.execute(this.state.variables)}async execute(n){const l=()=>{this.#i({type:"continue"})},i={client:this.#e,meta:this.options.meta,mutationKey:this.options.mutationKey};this.#a=Iy({fn:()=>this.options.mutationFn?this.options.mutationFn(n,i):Promise.reject(new Error("No mutationFn found")),onFail:(u,f)=>{this.#i({type:"failed",failureCount:u,error:f})},onPause:()=>{this.#i({type:"pause"})},onContinue:l,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>this.#n.canRun(this)});const s=this.state.status==="pending",o=!this.#a.canStart();try{if(s)l();else{this.#i({type:"pending",variables:n,isPaused:o}),this.#n.config.onMutate&&await this.#n.config.onMutate(n,this,i);const f=await this.options.onMutate?.(n,i);f!==this.state.context&&this.#i({type:"pending",context:f,variables:n,isPaused:o})}const u=await this.#a.start();return await this.#n.config.onSuccess?.(u,n,this.state.context,this,i),await this.options.onSuccess?.(u,n,this.state.context,i),await this.#n.config.onSettled?.(u,null,this.state.variables,this.state.context,this,i),await this.options.onSettled?.(u,null,n,this.state.context,i),this.#i({type:"success",data:u}),u}catch(u){try{await this.#n.config.onError?.(u,n,this.state.context,this,i)}catch(f){Promise.reject(f)}try{await this.options.onError?.(u,n,this.state.context,i)}catch(f){Promise.reject(f)}try{await this.#n.config.onSettled?.(void 0,u,this.state.variables,this.state.context,this,i)}catch(f){Promise.reject(f)}try{await this.options.onSettled?.(void 0,u,n,this.state.context,i)}catch(f){Promise.reject(f)}throw this.#i({type:"error",error:u}),u}finally{this.#n.runNext(this)}}#i(n){const l=i=>{switch(n.type){case"failed":return{...i,failureCount:n.failureCount,failureReason:n.error};case"pause":return{...i,isPaused:!0};case"continue":return{...i,isPaused:!1};case"pending":return{...i,context:n.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:n.isPaused,status:"pending",variables:n.variables,submittedAt:Date.now()};case"success":return{...i,data:n.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...i,data:void 0,error:n.error,failureCount:i.failureCount+1,failureReason:n.error,isPaused:!1,status:"error"}}};this.state=l(this.state),Mt.batch(()=>{this.#t.forEach(i=>{i.onMutationUpdate(n)}),this.#n.notify({mutation:this,type:"updated",action:n})})}};function Hw(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}var Uw=class extends Jr{constructor(n={}){super(),this.config=n,this.#e=new Set,this.#t=new Map,this.#n=0}#e;#t;#n;build(n,l,i){const s=new Lw({client:n,mutationCache:this,mutationId:++this.#n,options:n.defaultMutationOptions(l),state:i});return this.add(s),s}add(n){this.#e.add(n);const l=Eo(n);if(typeof l=="string"){const i=this.#t.get(l);i?i.push(n):this.#t.set(l,[n])}this.notify({type:"added",mutation:n})}remove(n){if(this.#e.delete(n)){const l=Eo(n);if(typeof l=="string"){const i=this.#t.get(l);if(i)if(i.length>1){const s=i.indexOf(n);s!==-1&&i.splice(s,1)}else i[0]===n&&this.#t.delete(l)}}this.notify({type:"removed",mutation:n})}canRun(n){const l=Eo(n);if(typeof l=="string"){const s=this.#t.get(l)?.find(o=>o.state.status==="pending");return!s||s===n}else return!0}runNext(n){const l=Eo(n);return typeof l=="string"?this.#t.get(l)?.find(s=>s!==n&&s.state.isPaused)?.continue()??Promise.resolve():Promise.resolve()}clear(){Mt.batch(()=>{this.#e.forEach(n=>{this.notify({type:"removed",mutation:n})}),this.#e.clear(),this.#t.clear()})}getAll(){return Array.from(this.#e)}find(n){const l={exact:!0,...n};return this.getAll().find(i=>Mv(l,i))}findAll(n={}){return this.getAll().filter(l=>Mv(n,l))}notify(n){Mt.batch(()=>{this.listeners.forEach(l=>{l(n)})})}resumePausedMutations(){const n=this.getAll().filter(l=>l.state.isPaused);return Mt.batch(()=>Promise.all(n.map(l=>l.continue().catch(Kt))))}};function Eo(n){return n.options.scope?.id}var Bw=class extends Jr{constructor(n={}){super(),this.config=n,this.#e=new Map}#e;build(n,l,i){const s=l.queryKey,o=l.queryHash??Df(s,l);let u=this.get(o);return u||(u=new Nw({client:n,queryKey:s,queryHash:o,options:n.defaultQueryOptions(l),state:i,defaultOptions:n.getQueryDefaults(s)}),this.add(u)),u}add(n){this.#e.has(n.queryHash)||(this.#e.set(n.queryHash,n),this.notify({type:"added",query:n}))}remove(n){const l=this.#e.get(n.queryHash);l&&(n.destroy(),l===n&&this.#e.delete(n.queryHash),this.notify({type:"removed",query:n}))}clear(){Mt.batch(()=>{this.getAll().forEach(n=>{this.remove(n)})})}get(n){return this.#e.get(n)}getAll(){return[...this.#e.values()]}find(n){const l={exact:!0,...n};return this.getAll().find(i=>Tv(l,i))}findAll(n={}){const l=this.getAll();return Object.keys(n).length>0?l.filter(i=>Tv(n,i)):l}notify(n){Mt.batch(()=>{this.listeners.forEach(l=>{l(n)})})}onFocus(){Mt.batch(()=>{this.getAll().forEach(n=>{n.onFocus()})})}onOnline(){Mt.batch(()=>{this.getAll().forEach(n=>{n.onOnline()})})}},Iw=class{#e;#t;#n;#a;#i;#l;#s;#r;constructor(n={}){this.#e=n.queryCache||new Bw,this.#t=n.mutationCache||new Uw,this.#n=n.defaultOptions||{},this.#a=new Map,this.#i=new Map,this.#l=0}mount(){this.#l++,this.#l===1&&(this.#s=Nf.subscribe(async n=>{n&&(await this.resumePausedMutations(),this.#e.onFocus())}),this.#r=Io.subscribe(async n=>{n&&(await this.resumePausedMutations(),this.#e.onOnline())}))}unmount(){this.#l--,this.#l===0&&(this.#s?.(),this.#s=void 0,this.#r?.(),this.#r=void 0)}isFetching(n){return this.#e.findAll({...n,fetchStatus:"fetching"}).length}isMutating(n){return this.#t.findAll({...n,status:"pending"}).length}getQueryData(n){const l=this.defaultQueryOptions({queryKey:n});return this.#e.get(l.queryHash)?.state.data}ensureQueryData(n){const l=this.defaultQueryOptions(n),i=this.#e.build(this,l),s=i.state.data;return s===void 0?this.fetchQuery(n):(n.revalidateIfStale&&i.isStaleByTime(qa(l.staleTime,i))&&this.prefetchQuery(l),Promise.resolve(s))}getQueriesData(n){return this.#e.findAll(n).map(({queryKey:l,state:i})=>{const s=i.data;return[l,s]})}setQueryData(n,l,i){const s=this.defaultQueryOptions({queryKey:n}),u=this.#e.get(s.queryHash)?.state.data,f=xw(l,u);if(f!==void 0)return this.#e.build(this,s).setData(f,{...i,manual:!0})}setQueriesData(n,l,i){return Mt.batch(()=>this.#e.findAll(n).map(({queryKey:s})=>[s,this.setQueryData(s,l,i)]))}getQueryState(n){const l=this.defaultQueryOptions({queryKey:n});return this.#e.get(l.queryHash)?.state}removeQueries(n){const l=this.#e;Mt.batch(()=>{l.findAll(n).forEach(i=>{l.remove(i)})})}resetQueries(n,l){const i=this.#e;return Mt.batch(()=>(i.findAll(n).forEach(s=>{s.reset()}),this.refetchQueries({type:"active",...n},l)))}cancelQueries(n,l={}){const i={revert:!0,...l},s=Mt.batch(()=>this.#e.findAll(n).map(o=>o.cancel(i)));return Promise.all(s).then(Kt).catch(Kt)}invalidateQueries(n,l={}){return Mt.batch(()=>(this.#e.findAll(n).forEach(i=>{i.invalidate()}),n?.refetchType==="none"?Promise.resolve():this.refetchQueries({...n,type:n?.refetchType??n?.type??"active"},l)))}refetchQueries(n,l={}){const i={...l,cancelRefetch:l.cancelRefetch??!0},s=Mt.batch(()=>this.#e.findAll(n).filter(o=>!o.isDisabled()&&!o.isStatic()).map(o=>{let u=o.fetch(void 0,i);return i.throwOnError||(u=u.catch(Kt)),o.state.fetchStatus==="paused"?Promise.resolve():u}));return Promise.all(s).then(Kt)}fetchQuery(n){const l=this.defaultQueryOptions(n);l.retry===void 0&&(l.retry=!1);const i=this.#e.build(this,l);return i.isStaleByTime(qa(l.staleTime,i))?i.fetch(l):Promise.resolve(i.state.data)}prefetchQuery(n){return this.fetchQuery(n).then(Kt).catch(Kt)}fetchInfiniteQuery(n){return n._type="infinite",this.fetchQuery(n)}prefetchInfiniteQuery(n){return this.fetchInfiniteQuery(n).then(Kt).catch(Kt)}ensureInfiniteQueryData(n){return n._type="infinite",this.ensureQueryData(n)}resumePausedMutations(){return Io.isOnline()?this.#t.resumePausedMutations():Promise.resolve()}getQueryCache(){return this.#e}getMutationCache(){return this.#t}getDefaultOptions(){return this.#n}setDefaultOptions(n){this.#n=n}setQueryDefaults(n,l){this.#a.set(Ir(n),{queryKey:n,defaultOptions:l})}getQueryDefaults(n){const l=[...this.#a.values()],i={};return l.forEach(s=>{qr(n,s.queryKey)&&Object.assign(i,s.defaultOptions)}),i}setMutationDefaults(n,l){this.#i.set(Ir(n),{mutationKey:n,defaultOptions:l})}getMutationDefaults(n){const l=[...this.#i.values()],i={};return l.forEach(s=>{qr(n,s.mutationKey)&&Object.assign(i,s.defaultOptions)}),i}defaultQueryOptions(n){if(n._defaulted)return n;const l={...this.#n.queries,...this.getQueryDefaults(n.queryKey),...n,_defaulted:!0};return l.queryHash||(l.queryHash=Df(l.queryKey,l)),l.refetchOnReconnect===void 0&&(l.refetchOnReconnect=l.networkMode!=="always"),l.throwOnError===void 0&&(l.throwOnError=!!l.suspense),!l.networkMode&&l.persister&&(l.networkMode="offlineFirst"),l.queryFn===zf&&(l.enabled=!1),l}defaultMutationOptions(n){return n?._defaulted?n:{...this.#n.mutations,...n?.mutationKey&&this.getMutationDefaults(n.mutationKey),...n,_defaulted:!0}}clear(){this.#e.clear(),this.#t.clear()}},Gy=y.createContext(void 0),Wr=n=>{const l=y.useContext(Gy);if(!l)throw new Error("No QueryClient set, use QueryClientProvider to set one");return l},qw=({client:n,children:l})=>(y.useEffect(()=>(n.mount(),()=>{n.unmount()}),[n]),p.jsx(Gy.Provider,{value:n,children:l})),Yy=y.createContext(!1),Vw=()=>y.useContext(Yy);Yy.Provider;function Gw(){let n=!1;return{clearReset:()=>{n=!1},reset:()=>{n=!0},isReset:()=>n}}var Yw=y.createContext(Gw()),Fw=()=>y.useContext(Yw),Pw=(n,l,i)=>{const s=i?.state.error&&typeof n.throwOnError=="function"?Uy(n.throwOnError,[i.state.error,i]):n.throwOnError;(n.suspense||n.experimental_prefetchInRender||s)&&(l.isReset()||(n.retryOnMount=!1))},Kw=n=>{y.useEffect(()=>{n.clearReset()},[n])},Qw=({result:n,errorResetBoundary:l,throwOnError:i,query:s,suspense:o})=>n.isError&&!l.isReset()&&!n.isFetching&&s&&(o&&n.data===void 0||Uy(i,[n.error,s])),Xw=n=>{if(n.suspense){const i=o=>o==="static"?o:Math.max(o??1e3,1e3),s=n.staleTime;n.staleTime=typeof s=="function"?(...o)=>i(s(...o)):i(s),typeof n.gcTime=="number"&&(n.gcTime=Math.max(n.gcTime,1e3))}},$w=(n,l)=>n.isLoading&&n.isFetching&&!l,Zw=(n,l)=>n?.suspense&&l.isPending,zv=(n,l,i)=>l.fetchOptimistic(n).catch(()=>{i.clearReset()});function Jw(n,l,i){const s=Vw(),o=Fw(),u=Wr(),f=u.defaultQueryOptions(n);u.getDefaultOptions().queries?._experimental_beforeQuery?.(f);const m=u.getQueryCache().get(f.queryHash),v=n.subscribed!==!1;f._optimisticResults=s?"isRestoring":v?"optimistic":void 0,Xw(f),Pw(f,o,m),Kw(o);const h=!u.getQueryCache().get(f.queryHash),[x]=y.useState(()=>new l(u,f)),g=x.getOptimisticResult(f),S=!s&&v;if(y.useSyncExternalStore(y.useCallback(E=>{const w=S?x.subscribe(Mt.batchCalls(E)):Kt;return x.updateResult(),w},[x,S]),()=>x.getCurrentResult(),()=>x.getCurrentResult()),y.useEffect(()=>{x.setOptions(f)},[f,x]),Zw(f,g))throw zv(f,x,o);if(Qw({result:g,errorResetBoundary:o,throwOnError:f.throwOnError,query:m,suspense:f.suspense}))throw g.error;return u.getDefaultOptions().queries?._experimental_afterQuery?.(f,g),f.experimental_prefetchInRender&&!Vr.isServer()&&$w(g,s)&&(h?zv(f,x,o):m?.promise)?.catch(Kt).finally(()=>{x.updateResult()}),f.notifyOnChangeProps?g:x.trackResult(g)}function $t(n,l){return Jw(n,Dw)}function Fy(){throw location.href="/auth/login?next="+encodeURIComponent(location.pathname+location.search),new Error("signing in…")}async function sn(n){const l=await fetch(n);if(l.status===401&&Fy(),!l.ok)throw new Error(await l.text());return l.json()}async function Ba(n,l,i){const s={method:n};i!==void 0&&(s.headers={"Content-Type":"application/json"},s.body=JSON.stringify(i));const o=await fetch(l,s);if(!o.ok)throw new Error(await o.text());return o.status===204?{}:o.json()}async function ji(n,l){const i=await fetch(n,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(l||{})});if(i.status===401&&Fy(),!i.ok)throw new Error(await i.text());return i.json()}function Ww(){return $t({queryKey:["config"],queryFn:async()=>{const n=await sn("/api/config");return n.auth.enabled&&!n.me&&(location.href="/auth/login?next="+encodeURIComponent(location.pathname+location.search),await new Promise(()=>{})),n},staleTime:1/0})}var Ol=zy();const eE=Dy(Ol);function kv(n,l){if(typeof n=="function")return n(l);n!=null&&(n.current=l)}function Ni(...n){return l=>{let i=!1;const s=n.map(o=>{const u=kv(o,l);return!i&&typeof u=="function"&&(i=!0),u});if(i)return()=>{for(let o=0;o{let{children:o,...u}=i,f=null,m=!1;const v=[];Lv(o)&&typeof Co=="function"&&(o=Co(o._payload)),y.Children.forEach(o,S=>{if(rE(S)){m=!0;const E=S;let w="child"in E.props?E.props.child:E.props.children;Lv(w)&&typeof Co=="function"&&(w=Co(w._payload)),f=aE(E,w),v.push(f?.props?.children)}else v.push(S)}),f?f=y.cloneElement(f,void 0,v):!m&&y.Children.count(o)===1&&y.isValidElement(o)&&(f=o);const h=f?iE(f):void 0,x=Ge(s,h);if(!f){if(o||o===0)throw new Error(m?uE(n):cE(n));return o}const g=lE(u,f.props??{});return f.type!==y.Fragment&&(g.ref=s?x:h),y.cloneElement(f,g)});return l.displayName=`${n}.Slot`,l}var tE=El("Slot"),Py=Symbol.for("radix.slottable");function nE(n){const l=i=>"child"in i?i.children(i.child):i.children;return l.displayName=`${n}.Slottable`,l.__radixId=Py,l}var aE=(n,l)=>{if("child"in n.props){const i=n.props.child;return y.isValidElement(i)?y.cloneElement(i,void 0,n.props.children(i.props.children)):null}return y.isValidElement(l)?l:null};function lE(n,l){const i={...l};for(const s in l){const o=n[s],u=l[s];/^on[A-Z]/.test(s)?o&&u?i[s]=(...m)=>{const v=u(...m);return o(...m),v}:o&&(i[s]=o):s==="style"?i[s]={...o,...u}:s==="className"&&(i[s]=[o,u].filter(Boolean).join(" "))}return{...n,...i}}function iE(n){let l=Object.getOwnPropertyDescriptor(n.props,"ref")?.get,i=l&&"isReactWarning"in l&&l.isReactWarning;return i?n.ref:(l=Object.getOwnPropertyDescriptor(n,"ref")?.get,i=l&&"isReactWarning"in l&&l.isReactWarning,i?n.props.ref:n.props.ref||n.ref)}function rE(n){return y.isValidElement(n)&&typeof n.type=="function"&&"__radixId"in n.type&&n.type.__radixId===Py}var sE=Symbol.for("react.lazy");function Lv(n){return n!=null&&typeof n=="object"&&"$$typeof"in n&&n.$$typeof===sE&&"_payload"in n&&oE(n._payload)}function oE(n){return typeof n=="object"&&n!==null&&"then"in n}var cE=n=>`${n} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,uE=n=>`${n} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,Co=Zo[" use ".trim().toString()],dE=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],Ee=dE.reduce((n,l)=>{const i=El(`Primitive.${l}`),s=y.forwardRef((o,u)=>{const{asChild:f,...m}=o,v=f?i:l;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),p.jsx(v,{...m,ref:u})});return s.displayName=`Primitive.${l}`,{...n,[l]:s}},{});function Ky(n,l){n&&Ol.flushSync(()=>n.dispatchEvent(l))}var Qy=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"}),fE="VisuallyHidden",Xy=y.forwardRef((n,l)=>p.jsx(Ee.span,{...n,ref:l,style:{...Qy,...n.style}}));Xy.displayName=fE;var hE=Xy;function Pa(n,l=[]){let i=[];function s(u,f){const m=y.createContext(f);m.displayName=u+"Context";const v=i.length;i=[...i,f];const h=g=>{const{scope:S,children:E,...w}=g,C=S?.[n]?.[v]||m,R=y.useMemo(()=>w,Object.values(w));return p.jsx(C.Provider,{value:R,children:E})};h.displayName=u+"Provider";function x(g,S,E={}){const{optional:w=!1}=E,C=S?.[n]?.[v]||m,R=y.useContext(C);if(R)return R;if(f!==void 0)return f;if(!w)throw new Error(`\`${g}\` must be used within \`${u}\``)}return[h,x]}const o=()=>{const u=i.map(f=>y.createContext(f));return function(m){const v=m?.[n]||u;return y.useMemo(()=>({[`__scope${n}`]:{...m,[n]:v}}),[m,v])}};return o.scopeName=n,[s,mE(o,...l)]}function mE(...n){const l=n[0];if(n.length===1)return l;const i=()=>{const s=n.map(o=>({useScope:o(),scopeName:o.scopeName}));return function(u){const f=s.reduce((m,{useScope:v,scopeName:h})=>{const g=v(u)[`__scope${h}`];return{...m,...g}},{});return y.useMemo(()=>({[`__scope${l.scopeName}`]:f}),[f])}};return i.scopeName=l.scopeName,i}function Lf(n){const l=n+"CollectionProvider",[i,s]=Pa(l),[o,u]=i(l,{collectionRef:{current:null},itemMap:new Map}),f=C=>{const{scope:R,children:M}=C,j=y.useRef(null),N=y.useRef(new Map).current;return p.jsx(o,{scope:R,itemMap:N,collectionRef:j,children:M})};f.displayName=l;const m=n+"CollectionSlot",v=El(m),h=y.forwardRef((C,R)=>{const{scope:M,children:j}=C,N=u(m,M),H=Ge(R,N.collectionRef);return p.jsx(v,{ref:H,children:j})});h.displayName=m;const x=n+"CollectionItemSlot",g="data-radix-collection-item",S=El(x),E=y.forwardRef((C,R)=>{const{scope:M,children:j,...N}=C,H=y.useRef(null),G=Ge(R,H),I=u(x,M);return y.useEffect(()=>(I.itemMap.set(H,{ref:H,...N}),()=>{I.itemMap.delete(H)})),p.jsx(S,{[g]:"",ref:G,children:j})});E.displayName=x;function w(C){const R=u(n+"CollectionConsumer",C);return y.useCallback(()=>{const j=R.collectionRef.current;if(!j)return[];const N=Array.from(j.querySelectorAll(`[${g}]`));return Array.from(R.itemMap.values()).sort((I,V)=>N.indexOf(I.ref.current)-N.indexOf(V.ref.current))},[R.collectionRef,R.itemMap])}return[{Provider:f,Slot:h,ItemSlot:E},w,s]}function ge(n,l,{checkForDefaultPrevented:i=!0}={}){return function(o){if(n?.(o),i===!1||!o||!o.defaultPrevented)return l?.(o)}}var yt=globalThis?.document?y.useLayoutEffect:()=>{},pE=Zo[" useInsertionEffect ".trim().toString()]||yt;function Di({prop:n,defaultProp:l,onChange:i=()=>{},caller:s}){const[o,u,f]=gE({defaultProp:l,onChange:i}),m=n!==void 0,v=m?n:o;{const x=y.useRef(n!==void 0);y.useEffect(()=>{const g=x.current;g!==m&&console.warn(`${s} is changing from ${g?"controlled":"uncontrolled"} to ${m?"controlled":"uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),x.current=m},[m,s])}const h=y.useCallback(x=>{if(m){const g=vE(x)?x(n):x;g!==n&&f.current?.(g)}else u(x)},[m,n,u,f]);return[v,h]}function gE({defaultProp:n,onChange:l}){const[i,s]=y.useState(n),o=y.useRef(i),u=y.useRef(l);return pE(()=>{u.current=l},[l]),y.useEffect(()=>{o.current!==i&&(u.current?.(i),o.current=i)},[i,o]),[i,s,u]}function vE(n){return typeof n=="function"}function yE(n,l){return y.useReducer((i,s)=>l[i][s]??i,n)}var Rn=n=>{const{present:l,children:i}=n,s=bE(l),o=typeof i=="function"?i({present:s.isPresent}):y.Children.only(i),u=xE(s.ref,SE(o));return typeof i=="function"||s.isPresent?y.cloneElement(o,{ref:u}):null};Rn.displayName="Presence";function bE(n){const[l,i]=y.useState(),s=y.useRef(null),o=y.useRef(n),u=y.useRef("none"),f=y.useRef(void 0),m=n?"mounted":"unmounted",[v,h]=yE(m,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return y.useEffect(()=>{v==="mounted"?(u.current=f.current??Dr(s.current),f.current=void 0):u.current="none"},[v]),yt(()=>{const x=s.current,g=o.current;if(g!==n){const E=u.current,w=Dr(x);n?(f.current=w,h("MOUNT")):w==="none"||x?.display==="none"?h("UNMOUNT"):h(g&&E!==w?"ANIMATION_OUT":"UNMOUNT"),o.current=n}},[n,h]),yt(()=>{if(l){let x;const g=l.ownerDocument.defaultView??window,S=w=>{const R=Dr(s.current).includes(CSS.escape(w.animationName));if(w.target===l&&R&&(h("ANIMATION_END"),!o.current)){const M=l.style.animationFillMode;l.style.animationFillMode="forwards",x=g.setTimeout(()=>{l.style.animationFillMode==="forwards"&&(l.style.animationFillMode=M)})}},E=w=>{w.target===l&&(u.current=Dr(s.current))};return l.addEventListener("animationstart",E),l.addEventListener("animationcancel",S),l.addEventListener("animationend",S),()=>{g.clearTimeout(x),l.removeEventListener("animationstart",E),l.removeEventListener("animationcancel",S),l.removeEventListener("animationend",S)}}else h("ANIMATION_END")},[l,h]),{isPresent:["mounted","unmountSuspended"].includes(v),ref:y.useCallback(x=>{if(x){const g=getComputedStyle(x);s.current=g,f.current=Dr(g)}else s.current=null;i(x)},[])}}function Hv(n,l){if(typeof n=="function")return n(l);n!=null&&(n.current=l)}function xE(...n){const l=y.useRef(n);return l.current=n,y.useCallback(i=>{const s=l.current;let o=!1;const u=s.map(f=>{const m=Hv(f,i);return!o&&typeof m=="function"&&(o=!0),m});if(o)return()=>{for(let f=0;f{}),EE=0;function _t(n){const[l,i]=y.useState(wE());return yt(()=>{i(s=>s??String(EE++))},[n]),l?`radix-${l}`:""}var CE=y.createContext(void 0);function Hf(n){const l=y.useContext(CE);return n||l||"ltr"}function bn(n){const l=y.useRef(n);return y.useEffect(()=>{l.current=n}),y.useMemo(()=>((...i)=>l.current?.(...i)),[])}var TE="DismissableLayer",hf="dismissableLayer.update",ME="dismissableLayer.pointerDownOutside",RE="dismissableLayer.focusOutside",Uv,Uf=y.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),es=y.forwardRef((n,l)=>{const{disableOutsidePointerEvents:i=!1,deferPointerDownOutside:s=!1,onEscapeKeyDown:o,onPointerDownOutside:u,onFocusOutside:f,onInteractOutside:m,onDismiss:v,...h}=n,x=y.useContext(Uf),[g,S]=y.useState(null),E=g?.ownerDocument??globalThis?.document,[,w]=y.useState({}),C=Ge(l,S),R=Array.from(x.layers),[M]=[...x.layersWithOutsidePointerEventsDisabled].slice(-1),j=M?R.indexOf(M):-1,N=g?R.indexOf(g):-1,H=x.layersWithOutsidePointerEventsDisabled.size>0,G=N>=j,I=y.useRef(!1),V=NE(ae=>{u?.(ae),m?.(ae),ae.defaultPrevented||v?.()},{ownerDocument:E,deferPointerDownOutside:s,isDeferredPointerDownOutsideRef:I,dismissableSurfaces:x.dismissableSurfaces,shouldHandlePointerDownOutside:y.useCallback(ae=>{if(!(ae instanceof Node))return!1;const ue=[...x.branches].some(oe=>oe.contains(ae));return G&&!ue},[x.branches,G])}),U=DE(ae=>{if(s&&I.current)return;const ue=ae.target;[...x.branches].some(me=>me.contains(ue))||(f?.(ae),m?.(ae),ae.defaultPrevented||v?.())},E),ce=g?N===R.length-1:!1,se=bn(ae=>{ae.key==="Escape"&&(o?.(ae),!ae.defaultPrevented&&v&&(ae.preventDefault(),v()))});return y.useEffect(()=>{if(ce)return E.addEventListener("keydown",se,{capture:!0}),()=>E.removeEventListener("keydown",se,{capture:!0})},[E,ce,se]),y.useEffect(()=>{if(g)return i&&(x.layersWithOutsidePointerEventsDisabled.size===0&&(Uv=E.body.style.pointerEvents,E.body.style.pointerEvents="none"),x.layersWithOutsidePointerEventsDisabled.add(g)),x.layers.add(g),Bv(),()=>{i&&(x.layersWithOutsidePointerEventsDisabled.delete(g),x.layersWithOutsidePointerEventsDisabled.size===0&&(E.body.style.pointerEvents=Uv))}},[g,E,i,x]),y.useEffect(()=>()=>{g&&(x.layers.delete(g),x.layersWithOutsidePointerEventsDisabled.delete(g),Bv())},[g,x]),y.useEffect(()=>{const ae=()=>w({});return document.addEventListener(hf,ae),()=>document.removeEventListener(hf,ae)},[]),p.jsx(Ee.div,{...h,ref:C,style:{pointerEvents:H?G?"auto":"none":void 0,...n.style},onFocusCapture:ge(n.onFocusCapture,U.onFocusCapture),onBlurCapture:ge(n.onBlurCapture,U.onBlurCapture),onPointerDownCapture:ge(n.onPointerDownCapture,V.onPointerDownCapture)})});es.displayName=TE;var OE="DismissableLayerBranch",AE=y.forwardRef((n,l)=>{const i=y.useContext(Uf),s=y.useRef(null),o=Ge(l,s);return y.useEffect(()=>{const u=s.current;if(u)return i.branches.add(u),()=>{i.branches.delete(u)}},[i.branches]),p.jsx(Ee.div,{...n,ref:o})});AE.displayName=OE;function _E(){const n=y.useContext(Uf),[l,i]=y.useState(null);return y.useEffect(()=>{if(l)return n.dismissableSurfaces.add(l),()=>{n.dismissableSurfaces.delete(l)}},[l,n.dismissableSurfaces]),i}var jE=()=>!0;function NE(n,l){const{ownerDocument:i=globalThis?.document,deferPointerDownOutside:s=!1,isDeferredPointerDownOutsideRef:o,dismissableSurfaces:u,shouldHandlePointerDownOutside:f=jE}=l,m=bn(n),v=y.useRef(!1),h=y.useRef(!1),x=y.useRef(new Map),g=y.useRef(()=>{});return y.useEffect(()=>{function S(){h.current=!1,o.current=!1,x.current.clear()}function E(){return Array.from(x.current.values()).some(Boolean)}function w(N){if(!h.current)return;const H=N.target;H instanceof Node&&[...u].some(I=>I.contains(H))||x.current.set(N.type,!0),N.type==="click"&&window.setTimeout(()=>{h.current&&g.current()},0)}function C(N){h.current&&x.current.set(N.type,!1)}const R=N=>{if(N.target&&!v.current){let H=function(){i.removeEventListener("click",g.current);const I=E();S(),I||$y(ME,m,G,{discrete:!0})};if(!f(N.target)){i.removeEventListener("click",g.current),S(),v.current=!1;return}const G={originalEvent:N};h.current=!0,o.current=s&&N.button===0,x.current.clear(),!s||N.button!==0?H():(i.removeEventListener("click",g.current),g.current=H,i.addEventListener("click",g.current,{once:!0}))}else i.removeEventListener("click",g.current),S();v.current=!1},M=["pointerup","mousedown","mouseup","touchstart","touchend","click"];for(const N of M)i.addEventListener(N,w,!0),i.addEventListener(N,C);const j=window.setTimeout(()=>{i.addEventListener("pointerdown",R)},0);return()=>{window.clearTimeout(j),i.removeEventListener("pointerdown",R),i.removeEventListener("click",g.current);for(const N of M)i.removeEventListener(N,w,!0),i.removeEventListener(N,C)}},[i,m,s,o,u,f]),{onPointerDownCapture:()=>v.current=!0}}function DE(n,l=globalThis?.document){const i=bn(n),s=y.useRef(!1);return y.useEffect(()=>{const o=u=>{u.target&&!s.current&&$y(RE,i,{originalEvent:u},{discrete:!1})};return l.addEventListener("focusin",o),()=>l.removeEventListener("focusin",o)},[l,i]),{onFocusCapture:()=>s.current=!0,onBlurCapture:()=>s.current=!1}}function Bv(){const n=new CustomEvent(hf);document.dispatchEvent(n)}function $y(n,l,i,{discrete:s}){const o=i.originalEvent.target,u=new CustomEvent(n,{bubbles:!1,cancelable:!0,detail:i});l&&o.addEventListener(n,l,{once:!0}),s?Ky(o,u):o.dispatchEvent(u)}var Hd="focusScope.autoFocusOnMount",Ud="focusScope.autoFocusOnUnmount",Iv={bubbles:!1,cancelable:!0},zE="FocusScope",Jo=y.forwardRef((n,l)=>{const{loop:i=!1,trapped:s=!1,onMountAutoFocus:o,onUnmountAutoFocus:u,...f}=n,[m,v]=y.useState(null),h=bn(o),x=bn(u),g=y.useRef(null),S=Ge(l,v),E=y.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;y.useEffect(()=>{if(s){let C=function(N){if(E.paused||!m)return;const H=N.target;m.contains(H)?g.current=H:Ia(g.current,{select:!0})},R=function(N){if(E.paused||!m)return;const H=N.relatedTarget;H!==null&&(m.contains(H)||Ia(g.current,{select:!0}))},M=function(N){if(document.activeElement===document.body)for(const G of N)G.removedNodes.length>0&&Ia(m)};document.addEventListener("focusin",C),document.addEventListener("focusout",R);const j=new MutationObserver(M);return m&&j.observe(m,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",C),document.removeEventListener("focusout",R),j.disconnect()}}},[s,m,E.paused]),y.useEffect(()=>{if(m){Vv.add(E);const C=document.activeElement;if(!m.contains(C)){const M=new CustomEvent(Hd,Iv);m.addEventListener(Hd,h),m.dispatchEvent(M),M.defaultPrevented||(kE(IE(Zy(m)),{select:!0}),document.activeElement===C&&Ia(m))}return()=>{m.removeEventListener(Hd,h),setTimeout(()=>{const M=new CustomEvent(Ud,Iv);m.addEventListener(Ud,x),m.dispatchEvent(M),M.defaultPrevented||Ia(C??document.body,{select:!0}),m.removeEventListener(Ud,x),Vv.remove(E)},0)}}},[m,h,x,E]);const w=y.useCallback(C=>{if(!i&&!s||E.paused)return;const R=C.key==="Tab"&&!C.altKey&&!C.ctrlKey&&!C.metaKey,M=document.activeElement;if(R&&M){const j=C.currentTarget,[N,H]=LE(j);N&&H?!C.shiftKey&&M===H?(C.preventDefault(),i&&Ia(N,{select:!0})):C.shiftKey&&M===N&&(C.preventDefault(),i&&Ia(H,{select:!0})):M===j&&C.preventDefault()}},[i,s,E.paused]);return p.jsx(Ee.div,{tabIndex:-1,...f,ref:S,onKeyDown:w})});Jo.displayName=zE;function kE(n,{select:l=!1}={}){const i=document.activeElement;for(const s of n)if(Ia(s,{select:l}),document.activeElement!==i)return}function LE(n){const l=Zy(n),i=qv(l,n),s=qv(l.reverse(),n);return[i,s]}function Zy(n){const l=[],i=document.createTreeWalker(n,NodeFilter.SHOW_ELEMENT,{acceptNode:s=>{const o=s.tagName==="INPUT"&&s.type==="hidden";return s.disabled||s.hidden||o?NodeFilter.FILTER_SKIP:s.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;i.nextNode();)l.push(i.currentNode);return l}function qv(n,l){const i=typeof l.checkVisibility=="function"&&l.checkVisibility({checkVisibilityCSS:!0});for(const s of n)if(!(i?!s.checkVisibility({checkVisibilityCSS:!0}):HE(s,{upTo:l})))return s}function HE(n,{upTo:l}){if(getComputedStyle(n).visibility==="hidden")return!0;for(;n;){if(l!==void 0&&n===l)return!1;if(getComputedStyle(n).display==="none")return!0;n=n.parentElement}return!1}function UE(n){return n instanceof HTMLInputElement&&"select"in n}function Ia(n,{select:l=!1}={}){if(n&&n.focus){const i=document.activeElement;n.focus({preventScroll:!0}),n!==i&&UE(n)&&l&&n.select()}}var Vv=BE();function BE(){let n=[];return{add(l){const i=n[0];l!==i&&i?.pause(),n=Gv(n,l),n.unshift(l)},remove(l){n=Gv(n,l),n[0]?.resume()}}}function Gv(n,l){const i=[...n],s=i.indexOf(l);return s!==-1&&i.splice(s,1),i}function IE(n){return n.filter(l=>l.tagName!=="A")}var qE="Portal",ts=y.forwardRef((n,l)=>{const{container:i,...s}=n,[o,u]=y.useState(!1);yt(()=>u(!0),[]);const f=i||o&&globalThis?.document?.body;return f?Ol.createPortal(p.jsx(Ee.div,{...s,ref:l}),f):null});ts.displayName=qE;var To=0,xi=null;function Bf(){y.useEffect(()=>{xi||(xi={start:Yv(),end:Yv()});const{start:n,end:l}=xi;return document.body.firstElementChild!==n&&document.body.insertAdjacentElement("afterbegin",n),document.body.lastElementChild!==l&&document.body.insertAdjacentElement("beforeend",l),To++,()=>{To===1&&(xi?.start.remove(),xi?.end.remove(),xi=null),To=Math.max(0,To-1)}},[])}function Yv(){const n=document.createElement("span");return n.setAttribute("data-radix-focus-guard",""),n.tabIndex=0,n.style.outline="none",n.style.opacity="0",n.style.position="fixed",n.style.pointerEvents="none",n}var Un=function(){return Un=Object.assign||function(l){for(var i,s=1,o=arguments.length;s"u")return lC;var l=iC(n),i=document.documentElement.clientWidth,s=window.innerWidth;return{left:l[0],top:l[1],right:l[2],gap:Math.max(0,s-i+l[2]-l[0])}},sC=t0(),Ai="data-scroll-locked",oC=function(n,l,i,s){var o=n.left,u=n.top,f=n.right,m=n.gap;return i===void 0&&(i="margin"),` - .`.concat(GE,` { - overflow: hidden `).concat(s,`; - padding-right: `).concat(m,"px ").concat(s,`; - } - body[`).concat(Ai,`] { - overflow: hidden `).concat(s,`; - overscroll-behavior: contain; - `).concat([l&&"position: relative ".concat(s,";"),i==="margin"&&` - padding-left: `.concat(o,`px; - padding-top: `).concat(u,`px; - padding-right: `).concat(f,`px; - margin-left:0; - margin-top:0; - margin-right: `).concat(m,"px ").concat(s,`; - `),i==="padding"&&"padding-right: ".concat(m,"px ").concat(s,";")].filter(Boolean).join(""),` - } - - .`).concat(ko,` { - right: `).concat(m,"px ").concat(s,`; - } - - .`).concat(Lo,` { - margin-right: `).concat(m,"px ").concat(s,`; - } - - .`).concat(ko," .").concat(ko,` { - right: 0 `).concat(s,`; - } - - .`).concat(Lo," .").concat(Lo,` { - margin-right: 0 `).concat(s,`; - } - - body[`).concat(Ai,`] { - `).concat(YE,": ").concat(m,`px; - } -`)},Pv=function(){var n=parseInt(document.body.getAttribute(Ai)||"0",10);return isFinite(n)?n:0},cC=function(){y.useEffect(function(){return document.body.setAttribute(Ai,(Pv()+1).toString()),function(){var n=Pv()-1;n<=0?document.body.removeAttribute(Ai):document.body.setAttribute(Ai,n.toString())}},[])},uC=function(n){var l=n.noRelative,i=n.noImportant,s=n.gapMode,o=s===void 0?"margin":s;cC();var u=y.useMemo(function(){return rC(o)},[o]);return y.createElement(sC,{styles:oC(u,!l,o,i?"":"!important")})},mf=!1;if(typeof window<"u")try{var Mo=Object.defineProperty({},"passive",{get:function(){return mf=!0,!0}});window.addEventListener("test",Mo,Mo),window.removeEventListener("test",Mo,Mo)}catch{mf=!1}var Si=mf?{passive:!1}:!1,dC=function(n){return n.tagName==="TEXTAREA"},n0=function(n,l){if(!(n instanceof Element))return!1;var i=window.getComputedStyle(n);return i[l]!=="hidden"&&!(i.overflowY===i.overflowX&&!dC(n)&&i[l]==="visible")},fC=function(n){return n0(n,"overflowY")},hC=function(n){return n0(n,"overflowX")},Kv=function(n,l){var i=l.ownerDocument,s=l;do{typeof ShadowRoot<"u"&&s instanceof ShadowRoot&&(s=s.host);var o=a0(n,s);if(o){var u=l0(n,s),f=u[1],m=u[2];if(f>m)return!0}s=s.parentNode}while(s&&s!==i.body);return!1},mC=function(n){var l=n.scrollTop,i=n.scrollHeight,s=n.clientHeight;return[l,i,s]},pC=function(n){var l=n.scrollLeft,i=n.scrollWidth,s=n.clientWidth;return[l,i,s]},a0=function(n,l){return n==="v"?fC(l):hC(l)},l0=function(n,l){return n==="v"?mC(l):pC(l)},gC=function(n,l){return n==="h"&&l==="rtl"?-1:1},vC=function(n,l,i,s,o){var u=gC(n,window.getComputedStyle(l).direction),f=u*s,m=i.target,v=l.contains(m),h=!1,x=f>0,g=0,S=0;do{if(!m)break;var E=l0(n,m),w=E[0],C=E[1],R=E[2],M=C-R-u*w;(w||M)&&a0(n,m)&&(g+=M,S+=w);var j=m.parentNode;m=j&&j.nodeType===Node.DOCUMENT_FRAGMENT_NODE?j.host:j}while(!v&&m!==document.body||v&&(l.contains(m)||l===m));return(x&&Math.abs(g)<1||!x&&Math.abs(S)<1)&&(h=!0),h},Ro=function(n){return"changedTouches"in n?[n.changedTouches[0].clientX,n.changedTouches[0].clientY]:[0,0]},Qv=function(n){return[n.deltaX,n.deltaY]},Xv=function(n){return n&&"current"in n?n.current:n},yC=function(n,l){return n[0]===l[0]&&n[1]===l[1]},bC=function(n){return` - .block-interactivity-`.concat(n,` {pointer-events: none;} - .allow-interactivity-`).concat(n,` {pointer-events: all;} -`)},xC=0,wi=[];function SC(n){var l=y.useRef([]),i=y.useRef([0,0]),s=y.useRef(),o=y.useState(xC++)[0],u=y.useState(t0)[0],f=y.useRef(n);y.useEffect(function(){f.current=n},[n]),y.useEffect(function(){if(n.inert){document.body.classList.add("block-interactivity-".concat(o));var C=VE([n.lockRef.current],(n.shards||[]).map(Xv),!0).filter(Boolean);return C.forEach(function(R){return R.classList.add("allow-interactivity-".concat(o))}),function(){document.body.classList.remove("block-interactivity-".concat(o)),C.forEach(function(R){return R.classList.remove("allow-interactivity-".concat(o))})}}},[n.inert,n.lockRef.current,n.shards]);var m=y.useCallback(function(C,R){if("touches"in C&&C.touches.length===2||C.type==="wheel"&&C.ctrlKey)return!f.current.allowPinchZoom;var M=Ro(C),j=i.current,N="deltaX"in C?C.deltaX:j[0]-M[0],H="deltaY"in C?C.deltaY:j[1]-M[1],G,I=C.target,V=Math.abs(N)>Math.abs(H)?"h":"v";if("touches"in C&&V==="h"&&I.type==="range")return!1;var U=window.getSelection(),ce=U&&U.anchorNode,se=ce?ce===I||ce.contains(I):!1;if(se)return!1;var ae=Kv(V,I);if(!ae)return!0;if(ae?G=V:(G=V==="v"?"h":"v",ae=Kv(V,I)),!ae)return!1;if(!s.current&&"changedTouches"in C&&(N||H)&&(s.current=G),!G)return!0;var ue=s.current||G;return vC(ue,R,C,ue==="h"?N:H)},[]),v=y.useCallback(function(C){var R=C;if(!(!wi.length||wi[wi.length-1]!==u)){var M="deltaY"in R?Qv(R):Ro(R),j=l.current.filter(function(G){return G.name===R.type&&(G.target===R.target||R.target===G.shadowParent)&&yC(G.delta,M)})[0];if(j&&j.should){R.cancelable&&R.preventDefault();return}if(!j){var N=(f.current.shards||[]).map(Xv).filter(Boolean).filter(function(G){return G.contains(R.target)}),H=N.length>0?m(R,N[0]):!f.current.noIsolation;H&&R.cancelable&&R.preventDefault()}}},[]),h=y.useCallback(function(C,R,M,j){var N={name:C,delta:R,target:M,should:j,shadowParent:wC(M)};l.current.push(N),setTimeout(function(){l.current=l.current.filter(function(H){return H!==N})},1)},[]),x=y.useCallback(function(C){i.current=Ro(C),s.current=void 0},[]),g=y.useCallback(function(C){h(C.type,Qv(C),C.target,m(C,n.lockRef.current))},[]),S=y.useCallback(function(C){h(C.type,Ro(C),C.target,m(C,n.lockRef.current))},[]);y.useEffect(function(){return wi.push(u),n.setCallbacks({onScrollCapture:g,onWheelCapture:g,onTouchMoveCapture:S}),document.addEventListener("wheel",v,Si),document.addEventListener("touchmove",v,Si),document.addEventListener("touchstart",x,Si),function(){wi=wi.filter(function(C){return C!==u}),document.removeEventListener("wheel",v,Si),document.removeEventListener("touchmove",v,Si),document.removeEventListener("touchstart",x,Si)}},[]);var E=n.removeScrollBar,w=n.inert;return y.createElement(y.Fragment,null,w?y.createElement(u,{styles:bC(o)}):null,E?y.createElement(uC,{noRelative:n.noRelative,gapMode:n.gapMode}):null)}function wC(n){for(var l=null;n!==null;)n instanceof ShadowRoot&&(l=n.host,n=n.host),n=n.parentNode;return l}const EC=ZE(e0,SC);var ec=y.forwardRef(function(n,l){return y.createElement(Wo,Un({},n,{ref:l,sideCar:EC}))});ec.classNames=Wo.classNames;var CC=function(n){if(typeof document>"u")return null;var l=Array.isArray(n)?n[0]:n;return l.ownerDocument.body},Ei=new WeakMap,Oo=new WeakMap,Ao={},Vd=0,i0=function(n){return n&&(n.host||i0(n.parentNode))},TC=function(n,l){return l.map(function(i){if(n.contains(i))return i;var s=i0(i);return s&&n.contains(s)?s:(console.error("aria-hidden",i,"in not contained inside",n,". Doing nothing"),null)}).filter(function(i){return!!i})},MC=function(n,l,i,s){var o=TC(l,Array.isArray(n)?n:[n]);Ao[i]||(Ao[i]=new WeakMap);var u=Ao[i],f=[],m=new Set,v=new Set(o),h=function(g){!g||m.has(g)||(m.add(g),h(g.parentNode))};o.forEach(h);var x=function(g){!g||v.has(g)||Array.prototype.forEach.call(g.children,function(S){if(m.has(S))x(S);else try{var E=S.getAttribute(s),w=E!==null&&E!=="false",C=(Ei.get(S)||0)+1,R=(u.get(S)||0)+1;Ei.set(S,C),u.set(S,R),f.push(S),C===1&&w&&Oo.set(S,!0),R===1&&S.setAttribute(i,"true"),w||S.setAttribute(s,"true")}catch(M){console.error("aria-hidden: cannot operate on ",S,M)}})};return x(l),m.clear(),Vd++,function(){f.forEach(function(g){var S=Ei.get(g)-1,E=u.get(g)-1;Ei.set(g,S),u.set(g,E),S||(Oo.has(g)||g.removeAttribute(s),Oo.delete(g)),E||g.removeAttribute(i)}),Vd--,Vd||(Ei=new WeakMap,Ei=new WeakMap,Oo=new WeakMap,Ao={})}},If=function(n,l,i){i===void 0&&(i="data-aria-hidden");var s=Array.from(Array.isArray(n)?n:[n]),o=CC(n);return o?(s.push.apply(s,Array.from(o.querySelectorAll("[aria-live], script"))),MC(s,o,i,"aria-hidden")):function(){return null}},tc="Dialog",[r0]=Pa(tc),[RC,On]=r0(tc),qf=n=>{const{__scopeDialog:l,children:i,open:s,defaultOpen:o,onOpenChange:u,modal:f=!0}=n,m=y.useRef(null),v=y.useRef(null),[h,x]=Di({prop:s,defaultProp:o??!1,onChange:u,caller:tc});return p.jsx(RC,{scope:l,triggerRef:m,contentRef:v,contentId:_t(),titleId:_t(),descriptionId:_t(),open:h,onOpenChange:x,onOpenToggle:y.useCallback(()=>x(g=>!g),[x]),modal:f,children:i})};qf.displayName=tc;var s0="DialogTrigger",OC=y.forwardRef((n,l)=>{const{__scopeDialog:i,...s}=n,o=On(s0,i),u=Ge(l,o.triggerRef);return p.jsx(Ee.button,{type:"button","aria-haspopup":"dialog","aria-expanded":o.open,"aria-controls":o.open?o.contentId:void 0,"data-state":Pf(o.open),...s,ref:u,onClick:ge(n.onClick,o.onOpenToggle)})});OC.displayName=s0;var Vf="DialogPortal",[AC,o0]=r0(Vf,{forceMount:void 0}),Gf=n=>{const{__scopeDialog:l,forceMount:i,children:s,container:o}=n,u=On(Vf,l);return p.jsx(AC,{scope:l,forceMount:i,children:y.Children.map(s,f=>p.jsx(Rn,{present:i||u.open,children:p.jsx(ts,{asChild:!0,container:o,children:f})}))})};Gf.displayName=Vf;var qo="DialogOverlay",Yf=y.forwardRef((n,l)=>{const i=o0(qo,n.__scopeDialog),{forceMount:s=i.forceMount,...o}=n,u=On(qo,n.__scopeDialog);return u.modal?p.jsx(Rn,{present:s||u.open,children:p.jsx(jC,{...o,ref:l})}):null});Yf.displayName=qo;var _C=El("DialogOverlay.RemoveScroll"),jC=y.forwardRef((n,l)=>{const{__scopeDialog:i,...s}=n,o=On(qo,i),u=_E(),f=Ge(l,u);return p.jsx(ec,{as:_C,allowPinchZoom:!0,shards:[o.contentRef],children:p.jsx(Ee.div,{"data-state":Pf(o.open),...s,ref:f,style:{pointerEvents:"auto",...s.style}})})}),zi="DialogContent",Ff=y.forwardRef((n,l)=>{const i=o0(zi,n.__scopeDialog),{forceMount:s=i.forceMount,...o}=n,u=On(zi,n.__scopeDialog);return p.jsx(Rn,{present:s||u.open,children:u.modal?p.jsx(NC,{...o,ref:l}):p.jsx(DC,{...o,ref:l})})});Ff.displayName=zi;var NC=y.forwardRef((n,l)=>{const i=On(zi,n.__scopeDialog),s=y.useRef(null),o=Ge(l,i.contentRef,s);return y.useEffect(()=>{const u=s.current;if(u)return If(u)},[]),p.jsx(c0,{...n,ref:o,trapFocus:i.open,disableOutsidePointerEvents:i.open,onCloseAutoFocus:ge(n.onCloseAutoFocus,u=>{u.preventDefault(),i.triggerRef.current?.focus()}),onPointerDownOutside:ge(n.onPointerDownOutside,u=>{const f=u.detail.originalEvent,m=f.button===0&&f.ctrlKey===!0;(f.button===2||m)&&u.preventDefault()}),onFocusOutside:ge(n.onFocusOutside,u=>u.preventDefault())})}),DC=y.forwardRef((n,l)=>{const i=On(zi,n.__scopeDialog),s=y.useRef(!1),o=y.useRef(!1);return p.jsx(c0,{...n,ref:l,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:u=>{n.onCloseAutoFocus?.(u),u.defaultPrevented||(s.current||i.triggerRef.current?.focus(),u.preventDefault()),s.current=!1,o.current=!1},onInteractOutside:u=>{n.onInteractOutside?.(u),u.defaultPrevented||(s.current=!0,u.detail.originalEvent.type==="pointerdown"&&(o.current=!0));const f=u.target;i.triggerRef.current?.contains(f)&&u.preventDefault(),u.detail.originalEvent.type==="focusin"&&o.current&&u.preventDefault()}})}),c0=y.forwardRef((n,l)=>{const{__scopeDialog:i,trapFocus:s,onOpenAutoFocus:o,onCloseAutoFocus:u,...f}=n,m=On(zi,i);return Bf(),p.jsx(p.Fragment,{children:p.jsx(Jo,{asChild:!0,loop:!0,trapped:s,onMountAutoFocus:o,onUnmountAutoFocus:u,children:p.jsx(es,{role:"dialog",id:m.contentId,"aria-describedby":m.descriptionId,"aria-labelledby":m.titleId,"data-state":Pf(m.open),...f,ref:l,deferPointerDownOutside:!0,onDismiss:()=>m.onOpenChange(!1)})})})}),u0="DialogTitle",d0=y.forwardRef((n,l)=>{const{__scopeDialog:i,...s}=n,o=On(u0,i);return p.jsx(Ee.h2,{id:o.titleId,...s,ref:l})});d0.displayName=u0;var f0="DialogDescription",zC=y.forwardRef((n,l)=>{const{__scopeDialog:i,...s}=n,o=On(f0,i);return p.jsx(Ee.p,{id:o.descriptionId,...s,ref:l})});zC.displayName=f0;var h0="DialogClose",m0=y.forwardRef((n,l)=>{const{__scopeDialog:i,...s}=n,o=On(h0,i);return p.jsx(Ee.button,{type:"button",...s,ref:l,onClick:ge(n.onClick,()=>o.onOpenChange(!1))})});m0.displayName=h0;function Pf(n){return n?"open":"closed"}function kC(n){const l=y.useRef({value:n,previous:n});return y.useMemo(()=>(l.current.value!==n&&(l.current.previous=l.current.value,l.current.value=n),l.current.previous),[n])}function LC(n){const[l,i]=y.useState(void 0);return yt(()=>{if(n){i({width:n.offsetWidth,height:n.offsetHeight});const s=new ResizeObserver(o=>{if(!Array.isArray(o)||!o.length)return;const u=o[0];let f,m;if("borderBoxSize"in u){const v=u.borderBoxSize,h=Array.isArray(v)?v[0]:v;f=h.inlineSize,m=h.blockSize}else f=n.offsetWidth,m=n.offsetHeight;i({width:f,height:m})});return s.observe(n,{box:"border-box"}),()=>s.unobserve(n)}else i(void 0)},[n]),l}const HC=["top","right","bottom","left"],Va=Math.min,oa=Math.max,Vo=Math.round,_o=Math.floor,ca=n=>({x:n,y:n}),UC={left:"right",right:"left",bottom:"top",top:"bottom"};function p0(n,l,i){return oa(n,Va(l,i))}function ua(n,l){return typeof n=="function"?n(l):n}function Ga(n){return n.split("-")[0]}function Li(n){return n.split("-")[1]}function Kf(n){return n==="x"?"y":"x"}function Qf(n){return n==="y"?"height":"width"}function Bn(n){const l=n[0];return l==="t"||l==="b"?"y":"x"}function Xf(n){return Kf(Bn(n))}function BC(n,l,i){i===void 0&&(i=!1);const s=Li(n),o=Xf(n),u=Qf(o);let f=o==="x"?s===(i?"end":"start")?"right":"left":s==="start"?"bottom":"top";return l.reference[u]>l.floating[u]&&(f=Go(f)),[f,Go(f)]}function IC(n){const l=Go(n);return[pf(n),l,pf(l)]}function pf(n){return n.includes("start")?n.replace("start","end"):n.replace("end","start")}const $v=["left","right"],Zv=["right","left"],qC=["top","bottom"],VC=["bottom","top"];function GC(n,l,i){switch(n){case"top":case"bottom":return i?l?Zv:$v:l?$v:Zv;case"left":case"right":return l?qC:VC;default:return[]}}function YC(n,l,i,s){const o=Li(n);let u=GC(Ga(n),i==="start",s);return o&&(u=u.map(f=>f+"-"+o),l&&(u=u.concat(u.map(pf)))),u}function Go(n){const l=Ga(n);return UC[l]+n.slice(l.length)}function FC(n){var l,i,s,o;return{top:(l=n.top)!=null?l:0,right:(i=n.right)!=null?i:0,bottom:(s=n.bottom)!=null?s:0,left:(o=n.left)!=null?o:0}}function g0(n){return typeof n!="number"?FC(n):{top:n,right:n,bottom:n,left:n}}function Yo(n){const{x:l,y:i,width:s,height:o}=n;return{width:s,height:o,top:i,left:l,right:l+s,bottom:i+o,x:l,y:i}}function Jv(n,l,i){let{reference:s,floating:o}=n;const u=Bn(l),f=Xf(l),m=Qf(f),v=Ga(l),h=u==="y",x=s.x+s.width/2-o.width/2,g=s.y+s.height/2-o.height/2,S=s[m]/2-o[m]/2;let E;switch(v){case"top":E={x,y:s.y-o.height};break;case"bottom":E={x,y:s.y+s.height};break;case"right":E={x:s.x+s.width,y:g};break;case"left":E={x:s.x-o.width,y:g};break;default:E={x:s.x,y:s.y}}const w=Li(l);return w&&(E[f]+=S*(w==="end"?1:-1)*(i&&h?-1:1)),E}async function PC(n,l){var i;l===void 0&&(l={});const{x:s,y:o,platform:u,rects:f,elements:m,strategy:v}=n,{boundary:h="clippingAncestors",rootBoundary:x="viewport",elementContext:g="floating",altBoundary:S=!1,padding:E=0}=ua(l,n),w=g0(E),R=m[S?g==="floating"?"reference":"floating":g],M=Yo(await u.getClippingRect({element:(i=await(u.isElement==null?void 0:u.isElement(R)))==null||i?R:R.contextElement||await(u.getDocumentElement==null?void 0:u.getDocumentElement(m.floating)),boundary:h,rootBoundary:x,strategy:v})),j=g==="floating"?{x:s,y:o,width:f.floating.width,height:f.floating.height}:f.reference,N=await(u.getOffsetParent==null?void 0:u.getOffsetParent(m.floating)),H=await(u.isElement==null?void 0:u.isElement(N))&&await(u.getScale==null?void 0:u.getScale(N))||{x:1,y:1},G=Yo(u.convertOffsetParentRelativeRectToViewportRelativeRect?await u.convertOffsetParentRelativeRectToViewportRelativeRect({elements:m,rect:j,offsetParent:N,strategy:v}):j);return{top:(M.top-G.top+w.top)/H.y,bottom:(G.bottom-M.bottom+w.bottom)/H.y,left:(M.left-G.left+w.left)/H.x,right:(G.right-M.right+w.right)/H.x}}const KC=50,QC=async(n,l,i)=>{const{placement:s="bottom",strategy:o="absolute",middleware:u=[],platform:f}=i,m=f.detectOverflow?f:{...f,detectOverflow:PC},v=await(f.isRTL==null?void 0:f.isRTL(l));let h=await f.getElementRects({reference:n,floating:l,strategy:o}),{x,y:g}=Jv(h,s,v),S=s,E=0;const w={};for(let C=0;C({name:"arrow",options:n,async fn(l){const{x:i,y:s,placement:o,rects:u,platform:f,elements:m,middlewareData:v}=l,{element:h,padding:x=0}=ua(n,l)||{};if(h==null)return{};const g=g0(x),S={x:i,y:s},E=Xf(o),w=Qf(E),C=await f.getDimensions(h),R=E==="y",M=R?"top":"left",j=R?"bottom":"right",N=R?"clientHeight":"clientWidth",H=u.reference[w]+u.reference[E]-S[E]-u.floating[w],G=S[E]-u.reference[E],I=await(f.getOffsetParent==null?void 0:f.getOffsetParent(h));let V=I?I[N]:0;(!V||!await(f.isElement==null?void 0:f.isElement(I)))&&(V=m.floating[N]||u.floating[w]);const U=H/2-G/2,ce=V/2-C[w]/2-1,se=Va(g[M],ce),ae=Va(g[j],ce),ue=V-C[w]-ae,oe=V/2-C[w]/2+U,me=p0(se,oe,ue),de=!v.arrow&&Li(o)!=null&&oe!==me&&u.reference[w]/2-(oeme<=0)){var ae,ue;const me=(((ae=u.flip)==null?void 0:ae.index)||0)+1,de=V[me];if(de&&(!(g==="alignment"?j!==Bn(de):!1)||se.every(W=>Bn(W.placement)===j?W.overflows[0]>0:!0)))return{data:{index:me,overflows:se},reset:{placement:de}};let D=(ue=se.filter(Q=>Q.overflows[0]<=0).sort((Q,W)=>Q.overflows[1]-W.overflows[1])[0])==null?void 0:ue.placement;if(!D)switch(E){case"bestFit":{var oe;const Q=(oe=se.filter(W=>{if(I){const ee=Bn(W.placement);return ee===j||ee==="y"}return!0}).map(W=>[W.placement,W.overflows.filter(ee=>ee>0).reduce((ee,Z)=>ee+Z,0)]).sort((W,ee)=>W[1]-ee[1])[0])==null?void 0:oe[0];Q&&(D=Q);break}case"initialPlacement":D=m;break}if(o!==D)return{reset:{placement:D}}}return{}}}};function Wv(n,l){return{top:n.top-l.height,right:n.right-l.width,bottom:n.bottom-l.height,left:n.left-l.width}}function ey(n){return HC.some(l=>n[l]>=0)}const ZC=function(n){return n===void 0&&(n={}),{name:"hide",options:n,async fn(l){const{rects:i,platform:s}=l,{strategy:o="referenceHidden",...u}=ua(n,l);switch(o){case"referenceHidden":{const f=await s.detectOverflow(l,{...u,elementContext:"reference"}),m=Wv(f,i.reference);return{data:{referenceHiddenOffsets:m,referenceHidden:ey(m)}}}case"escaped":{const f=await s.detectOverflow(l,{...u,altBoundary:!0}),m=Wv(f,i.floating);return{data:{escapedOffsets:m,escaped:ey(m)}}}default:return{}}}}},v0=new Set(["left","top"]);async function JC(n,l){const{placement:i,platform:s,elements:o}=n,u=await(s.isRTL==null?void 0:s.isRTL(o.floating)),f=Ga(i),m=Li(i),v=Bn(i)==="y",h=v0.has(f)?-1:1,x=u&&v?-1:1,g=ua(l,n);let{mainAxis:S,crossAxis:E,alignmentAxis:w}=typeof g=="number"?{mainAxis:g,crossAxis:0,alignmentAxis:null}:{mainAxis:g.mainAxis||0,crossAxis:g.crossAxis||0,alignmentAxis:g.alignmentAxis};return m&&typeof w=="number"&&(E=m==="end"?w*-1:w),v?{x:E*x,y:S*h}:{x:S*h,y:E*x}}const WC=function(n){return n===void 0&&(n=0),{name:"offset",options:n,async fn(l){var i,s;const{x:o,y:u,placement:f,middlewareData:m}=l,v=await JC(l,n);return f===((i=m.offset)==null?void 0:i.placement)&&(s=m.arrow)!=null&&s.alignmentOffset?{}:{x:o+v.x,y:u+v.y,data:{...v,placement:f}}}}},e2=function(n){return n===void 0&&(n={}),{name:"shift",options:n,async fn(l){const{x:i,y:s,placement:o,platform:u}=l,{mainAxis:f=!0,crossAxis:m=!1,limiter:v={fn:j=>{let{x:N,y:H}=j;return{x:N,y:H}}},...h}=ua(n,l),x={x:i,y:s},g=await u.detectOverflow(l,h),S=Bn(o),E=Kf(S);let w=x[E],C=x[S];const R=(j,N)=>p0(N+g[j==="y"?"top":"left"],N,N-g[j==="y"?"bottom":"right"]);f&&(w=R(E,w)),m&&(C=R(S,C));const M=v.fn({...l,[E]:w,[S]:C});return{...M,data:{x:M.x-i,y:M.y-s,enabled:{[E]:f,[S]:m}}}}}},t2=function(n){return n===void 0&&(n={}),{options:n,fn(l){var i,s;const{x:o,y:u,placement:f,rects:m,middlewareData:v}=l,{offset:h=0,mainAxis:x=!0,crossAxis:g=!0}=ua(n,l),S={x:o,y:u},E=Bn(f),w=Kf(E);let C=S[w],R=S[E];const M=ua(h,l),j=typeof M=="number"?{mainAxis:M,crossAxis:0}:{mainAxis:(i=M.mainAxis)!=null?i:0,crossAxis:(s=M.crossAxis)!=null?s:0};if(x){const G=w==="y"?"height":"width",I=m.reference[w]-m.floating[G]+j.mainAxis,V=m.reference[w]+m.reference[G]-j.mainAxis;CV&&(C=V)}if(g){var N,H;const G=w==="y"?"width":"height",I=v0.has(Ga(f)),V=m.reference[E]-m.floating[G]+(I&&((N=v.offset)==null?void 0:N[E])||0)+(I?0:j.crossAxis),U=m.reference[E]+m.reference[G]+(I?0:((H=v.offset)==null?void 0:H[E])||0)-(I?j.crossAxis:0);RU&&(R=U)}return{[w]:C,[E]:R}}}},n2=function(n){return n===void 0&&(n={}),{name:"size",options:n,async fn(l){const{placement:i,rects:s,platform:o,elements:u}=l,{apply:f=()=>{},...m}=ua(n,l),v=await o.detectOverflow(l,m),h=Ga(i),x=Li(i),g=Bn(i)==="y",{width:S,height:E}=s.floating;let w,C;h==="top"||h==="bottom"?(w=h,C=x===(await(o.isRTL==null?void 0:o.isRTL(u.floating))?"start":"end")?"left":"right"):(C=h,w=x==="end"?"top":"bottom");const R=E-v.top-v.bottom,M=S-v.left-v.right,j=Va(E-v[w],R),N=Va(S-v[C],M),H=l.middlewareData.shift,G=!H;let I=j,V=N;H!=null&&H.enabled.x&&(V=M),H!=null&&H.enabled.y&&(I=R),G&&!x&&(g?V=S-2*oa(v.left,v.right):I=E-2*oa(v.top,v.bottom)),await f({...l,availableWidth:V,availableHeight:I});const U=await o.getDimensions(u.floating);return S!==U.width||E!==U.height?{reset:{rects:!0}}:{}}}};function nc(){return typeof window<"u"}function Hi(n){return y0(n)?(n.nodeName||"").toLowerCase():"#document"}function Xt(n){var l;return(n==null||(l=n.ownerDocument)==null?void 0:l.defaultView)||window}function da(n){var l;return(l=(y0(n)?n.ownerDocument:n.document)||window.document)==null?void 0:l.documentElement}function y0(n){return nc()?n instanceof Node||n instanceof Xt(n).Node:!1}function In(n){return nc()?n instanceof Element||n instanceof Xt(n).Element:!1}function Ka(n){return nc()?n instanceof HTMLElement||n instanceof Xt(n).HTMLElement:!1}function ty(n){return!nc()||typeof ShadowRoot>"u"?!1:n instanceof ShadowRoot||n instanceof Xt(n).ShadowRoot}function ac(n){const{overflow:l,overflowX:i,overflowY:s,display:o}=qn(n);return/auto|scroll|overlay|hidden|clip/.test(l+s+i)&&o!=="inline"&&o!=="contents"}function a2(n){return/^(table|td|th)$/.test(Hi(n))}function lc(n){try{if(n.matches(":popover-open"))return!0}catch{}try{return n.matches(":modal")}catch{return!1}}const l2=/transform|translate|scale|rotate|perspective|filter/,i2=/paint|layout|strict|content/,xl=n=>!!n&&n!=="none";let Gd;function $f(n){const l=In(n)?qn(n):n;return xl(l.transform)||xl(l.translate)||xl(l.scale)||xl(l.rotate)||xl(l.perspective)||!Zf()&&(xl(l.backdropFilter)||xl(l.filter))||l2.test(l.willChange||"")||i2.test(l.contain||"")}function r2(n){let l=Cl(n);for(;Ka(l)&&!Gr(l);){if($f(l))return l;if(lc(l))return null;l=Cl(l)}return null}function Zf(){return Gd==null&&(Gd=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),Gd}function Gr(n){return/^(html|body|#document)$/.test(Hi(n))}function qn(n){return Xt(n).getComputedStyle(n)}function ic(n){return In(n)?{scrollLeft:n.scrollLeft,scrollTop:n.scrollTop}:{scrollLeft:n.scrollX,scrollTop:n.scrollY}}function Cl(n){if(Hi(n)==="html")return n;const l=n.assignedSlot||n.parentNode||ty(n)&&n.host||da(n);return ty(l)?l.host:l}function b0(n){const l=Cl(n);return Gr(l)?(n.ownerDocument||n).body:Ka(l)&&ac(l)?l:b0(l)}function Yr(n,l,i){var s;l===void 0&&(l=[]),i===void 0&&(i=!0);const o=b0(n),u=o===((s=n.ownerDocument)==null?void 0:s.body),f=Xt(o);if(u){const m=gf(f);return l.concat(f,f.visualViewport||[],ac(o)?o:[],m&&i?Yr(m):[])}else return l.concat(o,Yr(o,[],i))}function gf(n){return n.parent&&Object.getPrototypeOf(n.parent)?n.frameElement:null}function x0(n){const l=qn(n);let i=parseFloat(l.width)||0,s=parseFloat(l.height)||0;const o=Ka(n),u=o?n.offsetWidth:i,f=o?n.offsetHeight:s,m=Vo(i)!==u||Vo(s)!==f;return m&&(i=u,s=f),{width:i,height:s,$:m}}function Jf(n){return In(n)?n:n.contextElement}function _i(n){const l=Jf(n);if(!Ka(l))return ca(1);const i=l.getBoundingClientRect(),{width:s,height:o,$:u}=x0(l);let f=(u?Vo(i.width):i.width)/s,m=(u?Vo(i.height):i.height)/o;return(!f||!Number.isFinite(f))&&(f=1),(!m||!Number.isFinite(m))&&(m=1),{x:f,y:m}}const s2=ca(0);function S0(n){const l=Xt(n);return!Zf()||!l.visualViewport?s2:{x:l.visualViewport.offsetLeft,y:l.visualViewport.offsetTop}}function o2(n,l,i){return l===void 0&&(l=!1),!!i&&l&&i===Xt(n)}function Tl(n,l,i,s){l===void 0&&(l=!1),i===void 0&&(i=!1);const o=n.getBoundingClientRect(),u=Jf(n);let f=ca(1);l&&(s?In(s)&&(f=_i(s)):f=_i(n));const m=o2(u,i,s)?S0(u):ca(0);let v=(o.left+m.x)/f.x,h=(o.top+m.y)/f.y,x=o.width/f.x,g=o.height/f.y;if(u&&s){const S=Xt(u),E=In(s)?Xt(s):s;let w=S,C=gf(w);for(;C&&E!==w;){const R=_i(C),M=C.getBoundingClientRect(),j=qn(C),N=M.left+(C.clientLeft+parseFloat(j.paddingLeft))*R.x,H=M.top+(C.clientTop+parseFloat(j.paddingTop))*R.y;v*=R.x,h*=R.y,x*=R.x,g*=R.y,v+=N,h+=H,w=Xt(C),C=gf(w)}}return Yo({width:x,height:g,x:v,y:h})}function rc(n,l){const i=ic(n).scrollLeft;return l?l.left+i:Tl(da(n)).left+i}function w0(n,l){const i=n.getBoundingClientRect(),s=i.left+l.scrollLeft-rc(n,i),o=i.top+l.scrollTop;return{x:s,y:o}}function c2(n){let{elements:l,rect:i,offsetParent:s,strategy:o}=n;const u=o==="fixed",f=da(s),m=l?lc(l.floating):!1;if(s===f||m&&u)return i;let v={scrollLeft:0,scrollTop:0},h=ca(1);const x=ca(0),g=Ka(s);if((g||!u)&&((Hi(s)!=="body"||ac(f))&&(v=ic(s)),g)){const E=Tl(s);h=_i(s),x.x=E.x+s.clientLeft,x.y=E.y+s.clientTop}const S=f&&!g&&!u?w0(f,v):ca(0);return{width:i.width*h.x,height:i.height*h.y,x:i.x*h.x-v.scrollLeft*h.x+x.x+S.x,y:i.y*h.y-v.scrollTop*h.y+x.y+S.y}}function u2(n){return n.getClientRects?Array.from(n.getClientRects()):[]}function d2(n){const l=ic(n),i=n.ownerDocument.body,s=oa(n.scrollWidth,n.clientWidth,i.scrollWidth,i.clientWidth),o=oa(n.scrollHeight,n.clientHeight,i.scrollHeight,i.clientHeight);let u=-l.scrollLeft+rc(n);const f=-l.scrollTop;return qn(i).direction==="rtl"&&(u+=oa(n.clientWidth,i.clientWidth)-s),{width:s,height:o,x:u,y:f}}const f2=25;function h2(n,l,i){i===void 0&&(i="viewport");const s=i==="layoutViewport",o=Xt(n),u=da(n),f=o.visualViewport;let m=u.clientWidth,v=u.clientHeight,h=0,x=0;if(f){const S=!Zf()||l==="fixed";s?S||(h=-f.offsetLeft,x=-f.offsetTop):(m=f.width,v=f.height,S&&(h=f.offsetLeft,x=f.offsetTop))}if(rc(u)<=0){const S=u.ownerDocument,E=S.body,w=getComputedStyle(E),C=S.compatMode==="CSS1Compat"&&parseFloat(w.marginLeft)+parseFloat(w.marginRight)||0,R=Math.abs(u.clientWidth-E.clientWidth-C),M=getComputedStyle(u).scrollbarGutter==="stable both-edges"?R/2:R;M<=f2&&(m-=M)}return{width:m,height:v,x:h,y:x}}function m2(n,l){const i=Tl(n,!0,l==="fixed"),s=i.top+n.clientTop,o=i.left+n.clientLeft,u=_i(n),f=n.clientWidth*u.x,m=n.clientHeight*u.y,v=o*u.x,h=s*u.y;return{width:f,height:m,x:v,y:h}}function ny(n,l,i){let s;if(l==="viewport"||l==="layoutViewport")s=h2(n,i,l);else if(l==="document")s=d2(da(n));else if(In(l))s=m2(l,i);else{const o=S0(n);s={x:l.x-o.x,y:l.y-o.y,width:l.width,height:l.height}}return Yo(s)}function p2(n,l){const i=l.get(n);if(i)return i;let s=Yr(n,[],!1).filter(m=>In(m)&&Hi(m)!=="body"),o=null;const u=qn(n).position==="fixed";let f=u?Cl(n):n;for(;In(f)&&!Gr(f);){const m=qn(f),v=$f(f),h=o?o.position:u?"fixed":"";!v&&(h==="fixed"||h==="absolute"&&m.position==="static")?s=s.filter(g=>g!==f):o=m,f=Cl(f)}return l.set(n,s),s}function g2(n){let{element:l,boundary:i,rootBoundary:s,strategy:o}=n;const f=[...i==="clippingAncestors"?lc(l)?[]:p2(l,this._c):[].concat(i),s],m=ny(l,f[0],o);let v=m.top,h=m.right,x=m.bottom,g=m.left;for(let S=1;S{m(!1,1e-7)},1e3)}V=!1}try{s=new IntersectionObserver(U,{...I,root:u.ownerDocument})}catch{s=new IntersectionObserver(U,I)}s.observe(n)}const v=Xt(n),h=()=>m(i);return v.addEventListener("resize",h),m(!0),()=>{v.removeEventListener("resize",h),f()}}function E2(n,l,i,s){s===void 0&&(s={});const{ancestorScroll:o=!0,ancestorResize:u=!0,elementResize:f=typeof ResizeObserver=="function",layoutShift:m=typeof IntersectionObserver=="function",animationFrame:v=!1}=s,h=Jf(n),x=o||u?[...h?Yr(h):[],...l?Yr(l):[]]:[];x.forEach(M=>{o&&M.addEventListener("scroll",i),u&&M.addEventListener("resize",i)});const g=h&&m?w2(h,i,u):null;let S=-1,E=null;f&&(E=new ResizeObserver(M=>{let[j]=M;j&&j.target===h&&E&&l&&(E.unobserve(l),cancelAnimationFrame(S),S=requestAnimationFrame(()=>{var N;(N=E)==null||N.observe(l)})),i()}),h&&!v&&E.observe(h),l&&E.observe(l));let w,C=v?Tl(n):null;v&&R();function R(){const M=Tl(n);C&&!C0(C,M)&&i(),C=M,w=requestAnimationFrame(R)}return i(),()=>{var M;x.forEach(j=>{o&&j.removeEventListener("scroll",i),u&&j.removeEventListener("resize",i)}),g?.(),(M=E)==null||M.disconnect(),E=null,v&&cancelAnimationFrame(w)}}const C2=WC,T2=e2,M2=$C,R2=n2,O2=ZC,ly=XC,A2=t2,_2=(n,l,i)=>{const s=new Map,o=i??{},u={...S2,...o.platform,_c:s};return QC(n,l,{...o,platform:u})};var j2=typeof document<"u",N2=function(){},Ho=j2?y.useLayoutEffect:N2;function Fo(n,l){if(n===l)return!0;if(typeof n!=typeof l)return!1;if(typeof n=="function"&&n.toString()===l.toString())return!0;let i,s,o;if(n&&l&&typeof n=="object"){if(Array.isArray(n)){if(i=n.length,i!==l.length)return!1;for(s=i;s--!==0;)if(!Fo(n[s],l[s]))return!1;return!0}if(o=Object.keys(n),i=o.length,i!==Object.keys(l).length)return!1;for(s=i;s--!==0;)if(!{}.hasOwnProperty.call(l,o[s]))return!1;for(s=i;s--!==0;){const u=o[s];if(!(u==="_owner"&&n.$$typeof)&&!Fo(n[u],l[u]))return!1}return!0}return n!==n&&l!==l}function T0(n){return typeof window>"u"?1:(n.ownerDocument.defaultView||window).devicePixelRatio||1}function iy(n,l){const i=T0(n);return Math.round(l*i)/i}function Fd(n){const l=y.useRef(n);return Ho(()=>{l.current=n}),l}function D2(n){n===void 0&&(n={});const{placement:l="bottom",strategy:i="absolute",middleware:s=[],platform:o,elements:{reference:u,floating:f}={},transform:m=!0,whileElementsMounted:v,open:h}=n,[x,g]=y.useState({x:0,y:0,strategy:i,placement:l,middlewareData:{},isPositioned:!1}),[S,E]=y.useState(s);Fo(S,s)||E(s);const[w,C]=y.useState(null),[R,M]=y.useState(null),j=y.useCallback(W=>{W!==I.current&&(I.current=W,C(W))},[]),N=y.useCallback(W=>{W!==V.current&&(V.current=W,M(W))},[]),H=u||w,G=f||R,I=y.useRef(null),V=y.useRef(null),U=y.useRef(x),ce=v!=null,se=Fd(v),ae=Fd(o),ue=Fd(h),oe=y.useCallback(()=>{if(!I.current||!V.current)return;const W={placement:l,strategy:i,middleware:S};ae.current&&(W.platform=ae.current),_2(I.current,V.current,W).then(ee=>{const Z={...ee,isPositioned:ue.current!==!1};me.current&&!Fo(U.current,Z)&&(U.current=Z,Ol.flushSync(()=>{g(Z)}))})},[S,l,i,ae,ue]);Ho(()=>{h===!1&&U.current.isPositioned&&(U.current.isPositioned=!1,g(W=>({...W,isPositioned:!1})))},[h]);const me=y.useRef(!1);Ho(()=>(me.current=!0,()=>{me.current=!1}),[]),Ho(()=>{if(H&&(I.current=H),G&&(V.current=G),H&&G){if(se.current)return se.current(H,G,oe);oe()}},[H,G,oe,se,ce]);const de=y.useMemo(()=>({reference:I,floating:V,setReference:j,setFloating:N}),[j,N]),D=y.useMemo(()=>({reference:H,floating:G}),[H,G]),Q=y.useMemo(()=>{const W={position:i,left:0,top:0};if(!D.floating)return W;const ee=iy(D.floating,x.x),Z=iy(D.floating,x.y);return m?{...W,transform:"translate("+ee+"px, "+Z+"px)",...T0(D.floating)>=1.5&&{willChange:"transform"}}:{position:i,left:ee,top:Z}},[i,m,D.floating,x.x,x.y]);return y.useMemo(()=>({...x,update:oe,refs:de,elements:D,floatingStyles:Q}),[x,oe,de,D,Q])}const z2=n=>{function l(i){return{}.hasOwnProperty.call(i,"current")}return{name:"arrow",options:n,fn(i){const{element:s,padding:o}=typeof n=="function"?n(i):n;return s&&l(s)?s.current!=null?ly({element:s.current,padding:o}).fn(i):{}:s?ly({element:s,padding:o}).fn(i):{}}}},k2=(n,l)=>{const i=C2(n);return{name:i.name,fn:i.fn,options:[n,l]}},L2=(n,l)=>{const i=T2(n);return{name:i.name,fn:i.fn,options:[n,l]}},H2=(n,l)=>({fn:A2(n).fn,options:[n,l]}),U2=(n,l)=>{const i=M2(n);return{name:i.name,fn:i.fn,options:[n,l]}},B2=(n,l)=>{const i=R2(n);return{name:i.name,fn:i.fn,options:[n,l]}},I2=(n,l)=>{const i=O2(n);return{name:i.name,fn:i.fn,options:[n,l]}},q2=(n,l)=>{const i=z2(n);return{name:i.name,fn:i.fn,options:[n,l]}};var V2="Arrow",M0=y.forwardRef((n,l)=>{const{children:i,width:s=10,height:o=5,...u}=n;return p.jsx(Ee.svg,{...u,ref:l,width:s,height:o,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:n.asChild?i:p.jsx("polygon",{points:"0,0 30,0 15,10"})})});M0.displayName=V2;var G2=M0,Wf="Popper",[R0,Ui]=Pa(Wf),[Y2,O0]=R0(Wf),A0=n=>{const{__scopePopper:l,children:i}=n,[s,o]=y.useState(null),[u,f]=y.useState(void 0);return p.jsx(Y2,{scope:l,anchor:s,onAnchorChange:o,placementState:u,setPlacementState:f,children:i})};A0.displayName=Wf;var _0="PopperAnchor",j0=y.forwardRef((n,l)=>{const{__scopePopper:i,virtualRef:s,...o}=n,u=O0(_0,i),f=y.useRef(null),m=u.onAnchorChange,v=y.useCallback(w=>{f.current=w,w&&m(w)},[m]),h=Ge(l,v),x=y.useRef(null);y.useEffect(()=>{if(!s)return;const w=x.current;x.current=s.current,w!==x.current&&m(x.current)});const g=u.placementState&&th(u.placementState),S=g?.[0],E=g?.[1];return s?null:p.jsx(Ee.div,{"data-radix-popper-side":S,"data-radix-popper-align":E,...o,ref:h})});j0.displayName=_0;var eh="PopperContent",[F2,P2]=R0(eh),N0=y.forwardRef((n,l)=>{const{__scopePopper:i,side:s="bottom",sideOffset:o=0,align:u="center",alignOffset:f=0,arrowPadding:m=0,avoidCollisions:v=!0,collisionBoundary:h=[],collisionPadding:x=0,sticky:g="partial",hideWhenDetached:S=!1,updatePositionStrategy:E="optimized",onPlaced:w,...C}=n,R=O0(eh,i),[M,j]=y.useState(null),N=Ge(l,j),[H,G]=y.useState(null),I=LC(H),V=I?.width??0,U=I?.height??0,ce=s+(u!=="center"?"-"+u:""),se=typeof x=="number"?x:{top:0,right:0,bottom:0,left:0,...x},ae=Array.isArray(h)?h:[h],ue=ae.length>0,oe={padding:se,boundary:ae.filter(Q2),altBoundary:ue},{refs:me,floatingStyles:de,placement:D,isPositioned:Q,middlewareData:W}=D2({strategy:"fixed",placement:ce,whileElementsMounted:(...le)=>E2(...le,{animationFrame:E==="always"}),elements:{reference:R.anchor},middleware:[k2({mainAxis:o+U,alignmentAxis:f}),v&&L2({mainAxis:!0,crossAxis:!1,limiter:g==="partial"?H2():void 0,...oe}),v&&U2({...oe}),B2({...oe,apply:({elements:le,rects:ie,availableWidth:xe,availableHeight:Me})=>{const{width:Oe,height:et}=ie.reference,qe=le.floating.style;qe.setProperty("--radix-popper-available-width",`${xe}px`),qe.setProperty("--radix-popper-available-height",`${Me}px`),qe.setProperty("--radix-popper-anchor-width",`${Oe}px`),qe.setProperty("--radix-popper-anchor-height",`${et}px`)}}),H&&q2({element:H,padding:m}),X2({arrowWidth:V,arrowHeight:U}),S&&I2({strategy:"referenceHidden",...oe,boundary:ue?oe.boundary:void 0})]}),ee=R.setPlacementState;yt(()=>(ee(D),()=>{ee(void 0)}),[D,ee]);const[Z,A]=th(D),O=bn(w);yt(()=>{Q&&O?.()},[Q,O]);const L=W.arrow?.x,P=W.arrow?.y,F=W.arrow?.centerOffset!==0,[te,$]=y.useState();return yt(()=>{M&&$(window.getComputedStyle(M).zIndex)},[M]),p.jsx("div",{ref:me.setFloating,"data-radix-popper-content-wrapper":"",style:{...de,transform:Q?de.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:te,"--radix-popper-transform-origin":[W.transformOrigin?.x,W.transformOrigin?.y].join(" "),...W.hide?.referenceHidden&&{visibility:"hidden",pointerEvents:"none"}},dir:n.dir,children:p.jsx(F2,{scope:i,placedSide:Z,placedAlign:A,onArrowChange:G,arrowX:L,arrowY:P,shouldHideArrow:F,children:p.jsx(Ee.div,{"data-side":Z,"data-align":A,...C,ref:N,style:{...C.style,animation:Q?void 0:"none"}})})})});N0.displayName=eh;var D0="PopperArrow",K2={top:"bottom",right:"left",bottom:"top",left:"right"},z0=y.forwardRef(function(l,i){const{__scopePopper:s,...o}=l,u=P2(D0,s),f=K2[u.placedSide];return p.jsx("span",{ref:u.onArrowChange,style:{position:"absolute",left:u.arrowX,top:u.arrowY,[f]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[u.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[u.placedSide],visibility:u.shouldHideArrow?"hidden":void 0},children:p.jsx(G2,{...o,ref:i,style:{...o.style,display:"block"}})})});z0.displayName=D0;function Q2(n){return n!==null}var X2=n=>({name:"transformOrigin",options:n,fn(l){const{placement:i,rects:s,middlewareData:o}=l,f=o.arrow?.centerOffset!==0,m=f?0:n.arrowWidth,v=f?0:n.arrowHeight,[h,x]=th(i),g={start:"0%",center:"50%",end:"100%"}[x],S=(o.arrow?.x??0)+m/2,E=(o.arrow?.y??0)+v/2;let w="",C="";return h==="bottom"?(w=f?g:`${S}px`,C=`${-v}px`):h==="top"?(w=f?g:`${S}px`,C=`${s.floating.height+v}px`):h==="right"?(w=`${-v}px`,C=f?g:`${E}px`):h==="left"&&(w=`${s.floating.width+v}px`,C=f?g:`${E}px`),{data:{x:w,y:C}}}});function th(n){const[l,i="center"]=n.split("-");return[l,i]}var nh=A0,ah=j0,lh=N0,ih=z0,Pd=!1;function $2(){const[n,l]=y.useState(Pd);return y.useEffect(()=>{Pd||(Pd=!0,l(!0))},[]),n}var k0=Zo[" useSyncExternalStore ".trim().toString()];function Z2(){return()=>{}}function J2(){return k0(Z2,()=>!0,()=>!1)}var W2=typeof k0=="function"?J2:$2,Kd="rovingFocusGroup.onEntryFocus",eT={bubbles:!1,cancelable:!0},ns="RovingFocusGroup",[vf,L0,tT]=Lf(ns),[nT,H0]=Pa(ns,[tT]),[aT,lT]=nT(ns),U0=y.forwardRef((n,l)=>p.jsx(vf.Provider,{scope:n.__scopeRovingFocusGroup,children:p.jsx(vf.Slot,{scope:n.__scopeRovingFocusGroup,children:p.jsx(iT,{...n,ref:l})})}));U0.displayName=ns;var iT=y.forwardRef((n,l)=>{const{__scopeRovingFocusGroup:i,orientation:s,loop:o=!1,dir:u,currentTabStopId:f,defaultCurrentTabStopId:m,onCurrentTabStopIdChange:v,onEntryFocus:h,preventScrollOnEntryFocus:x=!1,...g}=n,S=y.useRef(null),E=Ge(l,S),w=Hf(u),[C,R]=Di({prop:f,defaultProp:m??null,onChange:v,caller:ns}),[M,j]=y.useState(!1),N=bn(h),H=L0(i),G=y.useRef(!1),[I,V]=y.useState(0);return y.useEffect(()=>{const U=S.current;if(U)return U.addEventListener(Kd,N),()=>U.removeEventListener(Kd,N)},[N]),p.jsx(aT,{scope:i,orientation:s,dir:w,loop:o,currentTabStopId:C,onItemFocus:y.useCallback(U=>R(U),[R]),onItemShiftTab:y.useCallback(()=>j(!0),[]),onFocusableItemAdd:y.useCallback(()=>V(U=>U+1),[]),onFocusableItemRemove:y.useCallback(()=>V(U=>U-1),[]),children:p.jsx(Ee.div,{tabIndex:M||I===0?-1:0,"data-orientation":s,...g,ref:E,style:{outline:"none",...n.style},onMouseDown:ge(n.onMouseDown,()=>{G.current=!0}),onFocus:ge(n.onFocus,U=>{const ce=!G.current;if(U.target===U.currentTarget&&ce&&!M){const se=new CustomEvent(Kd,eT);if(U.currentTarget.dispatchEvent(se),!se.defaultPrevented){const ae=H().filter(D=>D.focusable),ue=ae.find(D=>D.active),oe=ae.find(D=>D.id===C),de=[ue,oe,...ae].filter(Boolean).map(D=>D.ref.current);q0(de,x)}}G.current=!1}),onBlur:ge(n.onBlur,()=>j(!1))})})}),B0="RovingFocusGroupItem",I0=y.forwardRef((n,l)=>{const{__scopeRovingFocusGroup:i,focusable:s=!0,active:o=!1,tabStopId:u,children:f,...m}=n,v=_t(),h=u||v,x=lT(B0,i),g=x.currentTabStopId===h,S=L0(i),{onFocusableItemAdd:E,onFocusableItemRemove:w,currentTabStopId:C}=x,R=W2();return yt(()=>{if(!(!R||!s))return E(),()=>w()},[R,s,E,w]),y.useEffect(()=>{if(!(R||!s))return E(),()=>w()},[R,s,E,w]),p.jsx(vf.ItemSlot,{scope:i,id:h,focusable:s,active:o,children:p.jsx(Ee.span,{tabIndex:g?0:-1,"data-orientation":x.orientation,...m,ref:l,onMouseDown:ge(n.onMouseDown,M=>{s?x.onItemFocus(h):M.preventDefault()}),onFocus:ge(n.onFocus,()=>x.onItemFocus(h)),onKeyDown:ge(n.onKeyDown,M=>{if(M.key==="Tab"&&M.shiftKey){x.onItemShiftTab();return}if(M.target!==M.currentTarget)return;const j=oT(M,x.orientation,x.dir);if(j!==void 0){if(M.metaKey||M.ctrlKey||M.altKey||M.shiftKey)return;M.preventDefault();let H=S().filter(G=>G.focusable).map(G=>G.ref.current);if(j==="last")H.reverse();else if(j==="prev"||j==="next"){j==="prev"&&H.reverse();const G=H.indexOf(M.currentTarget);H=x.loop?cT(H,G+1):H.slice(G+1)}setTimeout(()=>q0(H))}}),children:typeof f=="function"?f({isCurrentTabStop:g,hasTabStop:C!=null}):f})})});I0.displayName=B0;var rT={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function sT(n,l){return l!=="rtl"?n:n==="ArrowLeft"?"ArrowRight":n==="ArrowRight"?"ArrowLeft":n}function oT(n,l,i){const s=sT(n.key,i);if(!(l==="vertical"&&["ArrowLeft","ArrowRight"].includes(s))&&!(l==="horizontal"&&["ArrowUp","ArrowDown"].includes(s)))return rT[s]}function q0(n,l=!1){const i=document.activeElement;for(const s of n)if(s===i||(s.focus({preventScroll:l}),document.activeElement!==i))return}function cT(n,l){return n.map((i,s)=>n[(l+s)%n.length])}var uT=U0,dT=I0,yf=["Enter"," "],fT=["ArrowDown","PageUp","Home"],V0=["ArrowUp","PageDown","End"],hT=[...fT,...V0],mT={ltr:[...yf,"ArrowRight"],rtl:[...yf,"ArrowLeft"]},pT={ltr:["ArrowLeft"],rtl:["ArrowRight"]},as="Menu",[Fr,gT,vT]=Lf(as),[Al,G0]=Pa(as,[vT,Ui,H0]),sc=Ui(),Y0=H0(),[yT,_l]=Al(as),[bT,ls]=Al(as),F0=n=>{const{__scopeMenu:l,open:i=!1,children:s,dir:o,onOpenChange:u,modal:f=!0}=n,m=sc(l),[v,h]=y.useState(null),x=y.useRef(!1),g=bn(u),S=Hf(o);return y.useEffect(()=>{const E=()=>{x.current=!0,document.addEventListener("pointerdown",w,{capture:!0,once:!0}),document.addEventListener("pointermove",w,{capture:!0,once:!0})},w=()=>x.current=!1;return document.addEventListener("keydown",E,{capture:!0}),()=>{document.removeEventListener("keydown",E,{capture:!0}),document.removeEventListener("pointerdown",w,{capture:!0}),document.removeEventListener("pointermove",w,{capture:!0})}},[]),y.useEffect(()=>{if(!i)return;const E=()=>g(!1);return window.addEventListener("blur",E),()=>window.removeEventListener("blur",E)},[i,g]),p.jsx(nh,{...m,children:p.jsx(yT,{scope:l,open:i,onOpenChange:g,content:v,onContentChange:h,children:p.jsx(bT,{scope:l,onClose:y.useCallback(()=>g(!1),[g]),isUsingKeyboardRef:x,dir:S,modal:f,children:s})})})};F0.displayName=as;var xT="MenuAnchor",rh=y.forwardRef((n,l)=>{const{__scopeMenu:i,...s}=n,o=sc(i);return p.jsx(ah,{...o,...s,ref:l})});rh.displayName=xT;var sh="MenuPortal",[ST,P0]=Al(sh,{forceMount:void 0}),K0=n=>{const{__scopeMenu:l,forceMount:i,children:s,container:o}=n,u=_l(sh,l);return p.jsx(ST,{scope:l,forceMount:i,children:p.jsx(Rn,{present:i||u.open,children:p.jsx(ts,{asChild:!0,container:o,children:s})})})};K0.displayName=sh;var yn="MenuContent",[wT,oh]=Al(yn),Q0=y.forwardRef((n,l)=>{const i=P0(yn,n.__scopeMenu),{forceMount:s=i.forceMount,...o}=n,u=_l(yn,n.__scopeMenu),f=ls(yn,n.__scopeMenu);return p.jsx(Fr.Provider,{scope:n.__scopeMenu,children:p.jsx(Rn,{present:s||u.open,children:p.jsx(Fr.Slot,{scope:n.__scopeMenu,children:f.modal?p.jsx(ET,{...o,ref:l}):p.jsx(CT,{...o,ref:l})})})})}),ET=y.forwardRef((n,l)=>{const i=_l(yn,n.__scopeMenu),s=y.useRef(null),o=Ge(l,s);return y.useEffect(()=>{const u=s.current;if(u)return If(u)},[]),p.jsx(ch,{...n,ref:o,trapFocus:i.open,disableOutsidePointerEvents:i.open,disableOutsideScroll:!0,onFocusOutside:ge(n.onFocusOutside,u=>u.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>i.onOpenChange(!1)})}),CT=y.forwardRef((n,l)=>{const i=_l(yn,n.__scopeMenu);return p.jsx(ch,{...n,ref:l,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>i.onOpenChange(!1)})}),TT=El("MenuContent.ScrollLock"),ch=y.forwardRef((n,l)=>{const{__scopeMenu:i,loop:s=!1,trapFocus:o,onOpenAutoFocus:u,onCloseAutoFocus:f,disableOutsidePointerEvents:m,onEntryFocus:v,onEscapeKeyDown:h,onPointerDownOutside:x,onFocusOutside:g,onInteractOutside:S,onDismiss:E,disableOutsideScroll:w,...C}=n,R=_l(yn,i),M=ls(yn,i),j=sc(i),N=Y0(i),H=gT(i),[G,I]=y.useState(null),V=y.useRef(null),U=Ge(l,V,R.onContentChange),ce=y.useRef(0),se=y.useRef(""),ae=y.useRef(0),ue=y.useRef(null),oe=y.useRef("right"),me=y.useRef(0),de=w?ec:y.Fragment,D=w?{as:TT,allowPinchZoom:!0}:void 0,Q=ee=>{const Z=se.current+ee,A=H().filter($=>!$.disabled),O=document.activeElement,L=A.find($=>$.ref.current===O)?.textValue,P=A.map($=>$.textValue),F=HT(P,Z,L),te=A.find($=>$.textValue===F)?.ref.current;(function $(le){se.current=le,window.clearTimeout(ce.current),le!==""&&(ce.current=window.setTimeout(()=>$(""),1e3))})(Z),te&&setTimeout(()=>te.focus())};y.useEffect(()=>()=>window.clearTimeout(ce.current),[]),Bf();const W=y.useCallback(ee=>oe.current===ue.current?.side&&BT(ee,ue.current?.area),[]);return p.jsx(wT,{scope:i,searchRef:se,onItemEnter:y.useCallback(ee=>{W(ee)&&ee.preventDefault()},[W]),onItemLeave:y.useCallback(ee=>{W(ee)||(V.current?.focus(),I(null))},[W]),onTriggerLeave:y.useCallback(ee=>{W(ee)&&ee.preventDefault()},[W]),pointerGraceTimerRef:ae,onPointerGraceIntentChange:y.useCallback(ee=>{ue.current=ee},[]),children:p.jsx(de,{...D,children:p.jsx(Jo,{asChild:!0,trapped:o,onMountAutoFocus:ge(u,ee=>{ee.preventDefault(),V.current?.focus({preventScroll:!0})}),onUnmountAutoFocus:f,children:p.jsx(es,{asChild:!0,disableOutsidePointerEvents:m,onEscapeKeyDown:h,onPointerDownOutside:x,onFocusOutside:g,onInteractOutside:S,onDismiss:E,children:p.jsx(uT,{asChild:!0,...N,dir:M.dir,orientation:"vertical",loop:s,currentTabStopId:G,onCurrentTabStopIdChange:I,onEntryFocus:ge(v,ee=>{M.isUsingKeyboardRef.current||ee.preventDefault()}),preventScrollOnEntryFocus:!0,children:p.jsx(lh,{role:"menu","aria-orientation":"vertical","data-state":ub(R.open),"data-radix-menu-content":"",dir:M.dir,...j,...C,ref:U,style:{outline:"none",...C.style},onKeyDown:ge(C.onKeyDown,ee=>{const A=ee.target.closest("[data-radix-menu-content]")===ee.currentTarget,O=ee.ctrlKey||ee.altKey||ee.metaKey,L=ee.key.length===1;A&&(ee.key==="Tab"&&ee.preventDefault(),!O&&L&&Q(ee.key));const P=V.current;if(ee.target!==P||!hT.includes(ee.key))return;ee.preventDefault();const te=H().filter($=>!$.disabled).map($=>$.ref.current);V0.includes(ee.key)&&te.reverse(),kT(te)}),onBlur:ge(n.onBlur,ee=>{ee.currentTarget.contains(ee.target)||(window.clearTimeout(ce.current),se.current="")}),onPointerMove:ge(n.onPointerMove,Pr(ee=>{const Z=ee.target,A=me.current!==ee.clientX;if(ee.currentTarget.contains(Z)&&A){const O=ee.clientX>me.current?"right":"left";oe.current=O,me.current=ee.clientX}}))})})})})})})});Q0.displayName=yn;var MT="MenuGroup",uh=y.forwardRef((n,l)=>{const{__scopeMenu:i,...s}=n;return p.jsx(Ee.div,{role:"group",...s,ref:l})});uh.displayName=MT;var RT="MenuLabel",X0=y.forwardRef((n,l)=>{const{__scopeMenu:i,...s}=n;return p.jsx(Ee.div,{...s,ref:l})});X0.displayName=RT;var Po="MenuItem",ry="menu.itemSelect",oc=y.forwardRef((n,l)=>{const{disabled:i=!1,onSelect:s,...o}=n,u=y.useRef(null),f=ls(Po,n.__scopeMenu),m=oh(Po,n.__scopeMenu),v=Ge(l,u),h=y.useRef(!1),x=()=>{const g=u.current;if(!i&&g){const S=new CustomEvent(ry,{bubbles:!0,cancelable:!0});g.addEventListener(ry,E=>s?.(E),{once:!0}),Ky(g,S),S.defaultPrevented?h.current=!1:f.onClose()}};return p.jsx($0,{...o,ref:v,disabled:i,onClick:ge(n.onClick,x),onPointerDown:g=>{n.onPointerDown?.(g),h.current=!0},onPointerUp:ge(n.onPointerUp,g=>{h.current||g.currentTarget?.click()}),onKeyDown:ge(n.onKeyDown,g=>{i||g.target!==g.currentTarget||m.searchRef.current!==""&&g.key===" "||yf.includes(g.key)&&(g.currentTarget.click(),g.preventDefault())})})});oc.displayName=Po;var $0=y.forwardRef((n,l)=>{const{__scopeMenu:i,disabled:s=!1,textValue:o,...u}=n,f=oh(Po,i),m=Y0(i),v=y.useRef(null),h=Ge(l,v),[x,g]=y.useState(!1),[S,E]=y.useState("");return y.useEffect(()=>{const w=v.current;w&&E((w.textContent??"").trim())},[u.children]),p.jsx(Fr.ItemSlot,{scope:i,disabled:s,textValue:o??S,children:p.jsx(dT,{asChild:!0,...m,focusable:!s,children:p.jsx(Ee.div,{role:"menuitem","data-highlighted":x?"":void 0,"aria-disabled":s||void 0,"data-disabled":s?"":void 0,...u,ref:h,onPointerMove:ge(n.onPointerMove,Pr(w=>{s?f.onItemLeave(w):(f.onItemEnter(w),w.defaultPrevented||w.currentTarget.focus({preventScroll:!0}))})),onPointerLeave:ge(n.onPointerLeave,Pr(w=>f.onItemLeave(w))),onFocus:ge(n.onFocus,()=>g(!0)),onBlur:ge(n.onBlur,()=>g(!1))})})})}),OT="MenuCheckboxItem",Z0=y.forwardRef((n,l)=>{const{checked:i=!1,onCheckedChange:s,...o}=n;return p.jsx(nb,{scope:n.__scopeMenu,checked:i,children:p.jsx(oc,{role:"menuitemcheckbox","aria-checked":Ko(i)?"mixed":i,...o,ref:l,"data-state":fh(i),onSelect:ge(o.onSelect,()=>s?.(Ko(i)?!0:!i),{checkForDefaultPrevented:!1})})})});Z0.displayName=OT;var J0="MenuRadioGroup",[AT,_T]=Al(J0,{value:void 0,onValueChange:()=>{}}),W0=y.forwardRef((n,l)=>{const{value:i,onValueChange:s,...o}=n,u=bn(s);return p.jsx(AT,{scope:n.__scopeMenu,value:i,onValueChange:u,children:p.jsx(uh,{...o,ref:l})})});W0.displayName=J0;var eb="MenuRadioItem",tb=y.forwardRef((n,l)=>{const{value:i,...s}=n,o=_T(eb,n.__scopeMenu),u=i===o.value;return p.jsx(nb,{scope:n.__scopeMenu,checked:u,children:p.jsx(oc,{role:"menuitemradio","aria-checked":u,...s,ref:l,"data-state":fh(u),onSelect:ge(s.onSelect,()=>o.onValueChange?.(i),{checkForDefaultPrevented:!1})})})});tb.displayName=eb;var dh="MenuItemIndicator",[nb,jT]=Al(dh,{checked:!1}),ab=y.forwardRef((n,l)=>{const{__scopeMenu:i,forceMount:s,...o}=n,u=jT(dh,i);return p.jsx(Rn,{present:s||Ko(u.checked)||u.checked===!0,children:p.jsx(Ee.span,{...o,ref:l,"data-state":fh(u.checked)})})});ab.displayName=dh;var NT="MenuSeparator",lb=y.forwardRef((n,l)=>{const{__scopeMenu:i,...s}=n;return p.jsx(Ee.div,{role:"separator","aria-orientation":"horizontal",...s,ref:l})});lb.displayName=NT;var DT="MenuArrow",ib=y.forwardRef((n,l)=>{const{__scopeMenu:i,...s}=n,o=sc(i);return p.jsx(ih,{...o,...s,ref:l})});ib.displayName=DT;var zT="MenuSub",[pN,rb]=Al(zT),Hr="MenuSubTrigger",sb=y.forwardRef((n,l)=>{const i=_l(Hr,n.__scopeMenu),s=ls(Hr,n.__scopeMenu),o=rb(Hr,n.__scopeMenu),u=oh(Hr,n.__scopeMenu),f=y.useRef(null),{pointerGraceTimerRef:m,onPointerGraceIntentChange:v}=u,h={__scopeMenu:n.__scopeMenu},x=y.useCallback(()=>{f.current&&window.clearTimeout(f.current),f.current=null},[]);y.useEffect(()=>x,[x]),y.useEffect(()=>{const S=m.current;return()=>{window.clearTimeout(S),v(null)}},[m,v]);const g=Ge(l,o.onTriggerChange);return p.jsx(rh,{asChild:!0,...h,children:p.jsx($0,{id:o.triggerId,"aria-haspopup":"menu","aria-expanded":i.open,"aria-controls":i.open?o.contentId:void 0,"data-state":ub(i.open),...n,ref:g,onClick:S=>{n.onClick?.(S),!(n.disabled||S.defaultPrevented)&&(S.currentTarget.focus(),i.open||i.onOpenChange(!0))},onPointerMove:ge(n.onPointerMove,Pr(S=>{u.onItemEnter(S),!S.defaultPrevented&&!n.disabled&&!i.open&&!f.current&&(u.onPointerGraceIntentChange(null),f.current=window.setTimeout(()=>{i.onOpenChange(!0),x()},100))})),onPointerLeave:ge(n.onPointerLeave,Pr(S=>{x();const E=i.content?.getBoundingClientRect();if(E){const w=i.content?.dataset.side,C=w==="right",R=C?-5:5,M=E[C?"left":"right"],j=E[C?"right":"left"];u.onPointerGraceIntentChange({area:[{x:S.clientX+R,y:S.clientY},{x:M,y:E.top},{x:j,y:E.top},{x:j,y:E.bottom},{x:M,y:E.bottom}],side:w}),window.clearTimeout(m.current),m.current=window.setTimeout(()=>u.onPointerGraceIntentChange(null),300)}else{if(u.onTriggerLeave(S),S.defaultPrevented)return;u.onPointerGraceIntentChange(null)}})),onKeyDown:ge(n.onKeyDown,S=>{n.disabled||S.target!==S.currentTarget||u.searchRef.current!==""&&S.key===" "||mT[s.dir].includes(S.key)&&(i.onOpenChange(!0),i.content?.focus(),S.preventDefault())})})})});sb.displayName=Hr;var ob="MenuSubContent",cb=y.forwardRef((n,l)=>{const i=P0(yn,n.__scopeMenu),{forceMount:s=i.forceMount,align:o="start",...u}=n,f=_l(yn,n.__scopeMenu),m=ls(yn,n.__scopeMenu),v=rb(ob,n.__scopeMenu),h=y.useRef(null),x=Ge(l,h);return p.jsx(Fr.Provider,{scope:n.__scopeMenu,children:p.jsx(Rn,{present:s||f.open,children:p.jsx(Fr.Slot,{scope:n.__scopeMenu,children:p.jsx(ch,{id:v.contentId,"aria-labelledby":v.triggerId,...u,ref:x,align:o,side:m.dir==="rtl"?"left":"right",disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:g=>{m.isUsingKeyboardRef.current&&h.current?.focus(),g.preventDefault()},onCloseAutoFocus:g=>g.preventDefault(),onFocusOutside:ge(n.onFocusOutside,g=>{g.target!==v.trigger&&f.onOpenChange(!1)}),onEscapeKeyDown:ge(n.onEscapeKeyDown,g=>{m.onClose(),g.preventDefault()}),onKeyDown:ge(n.onKeyDown,g=>{const S=g.currentTarget.contains(g.target),E=pT[m.dir].includes(g.key);S&&E&&(f.onOpenChange(!1),v.trigger?.focus(),g.preventDefault())})})})})})});cb.displayName=ob;function ub(n){return n?"open":"closed"}function Ko(n){return n==="indeterminate"}function fh(n){return Ko(n)?"indeterminate":n?"checked":"unchecked"}function kT(n){const l=document.activeElement;for(const i of n)if(i===l||(i.focus(),document.activeElement!==l))return}function LT(n,l){return n.map((i,s)=>n[(l+s)%n.length])}function HT(n,l,i){const o=l.length>1&&Array.from(l).every(h=>h===l[0])?l[0]:l,u=i?n.indexOf(i):-1;let f=LT(n,Math.max(u,0));o.length===1&&(f=f.filter(h=>h!==i));const v=f.find(h=>h.toLowerCase().startsWith(o.toLowerCase()));return v!==i?v:void 0}function UT(n,l){const{x:i,y:s}=n;let o=!1;for(let u=0,f=l.length-1;us!=S>s&&i<(g-h)*(s-x)/(S-x)+h&&(o=!o)}return o}function BT(n,l){if(!l)return!1;const i={x:n.clientX,y:n.clientY};return UT(i,l)}function Pr(n){return l=>l.pointerType==="mouse"?n(l):void 0}var IT=F0,qT=rh,VT=K0,GT=Q0,YT=uh,FT=X0,PT=oc,KT=Z0,QT=W0,XT=tb,$T=ab,ZT=lb,JT=ib,WT=sb,eM=cb,cc="DropdownMenu",[tM]=Pa(cc,[G0]),zt=G0(),[nM,db]=tM(cc),fb=n=>{const{__scopeDropdownMenu:l,children:i,dir:s,open:o,defaultOpen:u,onOpenChange:f,modal:m=!0}=n,v=zt(l),h=y.useRef(null),[x,g]=Di({prop:o,defaultProp:u??!1,onChange:f,caller:cc});return p.jsx(nM,{scope:l,triggerId:_t(),triggerRef:h,contentId:_t(),open:x,onOpenChange:g,onOpenToggle:y.useCallback(()=>g(S=>!S),[g]),modal:m,children:p.jsx(IT,{...v,open:x,onOpenChange:g,dir:s,modal:m,children:i})})};fb.displayName=cc;var hb="DropdownMenuTrigger",mb=y.forwardRef((n,l)=>{const{__scopeDropdownMenu:i,disabled:s=!1,...o}=n,u=db(hb,i),f=zt(i),m=Ge(l,u.triggerRef);return p.jsx(qT,{asChild:!0,...f,children:p.jsx(Ee.button,{type:"button",id:u.triggerId,"aria-haspopup":"menu","aria-expanded":u.open,"aria-controls":u.open?u.contentId:void 0,"data-state":u.open?"open":"closed","data-disabled":s?"":void 0,disabled:s,...o,ref:m,onPointerDown:ge(n.onPointerDown,v=>{!s&&v.button===0&&v.ctrlKey===!1&&(u.onOpenToggle(),u.open||v.preventDefault())}),onKeyDown:ge(n.onKeyDown,v=>{s||(["Enter"," "].includes(v.key)&&u.onOpenToggle(),v.key==="ArrowDown"&&u.onOpenChange(!0),["Enter"," ","ArrowDown"].includes(v.key)&&v.preventDefault())})})})});mb.displayName=hb;var aM="DropdownMenuPortal",pb=n=>{const{__scopeDropdownMenu:l,...i}=n,s=zt(l);return p.jsx(VT,{...s,...i})};pb.displayName=aM;var gb="DropdownMenuContent",vb=y.forwardRef((n,l)=>{const{__scopeDropdownMenu:i,...s}=n,o=db(gb,i),u=zt(i),f=y.useRef(!1);return p.jsx(GT,{id:o.contentId,"aria-labelledby":o.triggerId,...u,...s,ref:l,onCloseAutoFocus:ge(n.onCloseAutoFocus,m=>{f.current||o.triggerRef.current?.focus(),f.current=!1,m.preventDefault()}),onInteractOutside:ge(n.onInteractOutside,m=>{const v=m.detail.originalEvent,h=v.button===0&&v.ctrlKey===!0,x=v.button===2||h;(!o.modal||x)&&(f.current=!0)}),style:{...n.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});vb.displayName=gb;var lM="DropdownMenuGroup",iM=y.forwardRef((n,l)=>{const{__scopeDropdownMenu:i,...s}=n,o=zt(i);return p.jsx(YT,{...o,...s,ref:l})});iM.displayName=lM;var rM="DropdownMenuLabel",yb=y.forwardRef((n,l)=>{const{__scopeDropdownMenu:i,...s}=n,o=zt(i);return p.jsx(FT,{...o,...s,ref:l})});yb.displayName=rM;var sM="DropdownMenuItem",bb=y.forwardRef((n,l)=>{const{__scopeDropdownMenu:i,...s}=n,o=zt(i);return p.jsx(PT,{...o,...s,ref:l})});bb.displayName=sM;var oM="DropdownMenuCheckboxItem",cM=y.forwardRef((n,l)=>{const{__scopeDropdownMenu:i,...s}=n,o=zt(i);return p.jsx(KT,{...o,...s,ref:l})});cM.displayName=oM;var uM="DropdownMenuRadioGroup",dM=y.forwardRef((n,l)=>{const{__scopeDropdownMenu:i,...s}=n,o=zt(i);return p.jsx(QT,{...o,...s,ref:l})});dM.displayName=uM;var fM="DropdownMenuRadioItem",hM=y.forwardRef((n,l)=>{const{__scopeDropdownMenu:i,...s}=n,o=zt(i);return p.jsx(XT,{...o,...s,ref:l})});hM.displayName=fM;var mM="DropdownMenuItemIndicator",pM=y.forwardRef((n,l)=>{const{__scopeDropdownMenu:i,...s}=n,o=zt(i);return p.jsx($T,{...o,...s,ref:l})});pM.displayName=mM;var gM="DropdownMenuSeparator",vM=y.forwardRef((n,l)=>{const{__scopeDropdownMenu:i,...s}=n,o=zt(i);return p.jsx(ZT,{...o,...s,ref:l})});vM.displayName=gM;var yM="DropdownMenuArrow",bM=y.forwardRef((n,l)=>{const{__scopeDropdownMenu:i,...s}=n,o=zt(i);return p.jsx(JT,{...o,...s,ref:l})});bM.displayName=yM;var xM="DropdownMenuSubTrigger",SM=y.forwardRef((n,l)=>{const{__scopeDropdownMenu:i,...s}=n,o=zt(i);return p.jsx(WT,{...o,...s,ref:l})});SM.displayName=xM;var wM="DropdownMenuSubContent",EM=y.forwardRef((n,l)=>{const{__scopeDropdownMenu:i,...s}=n,o=zt(i);return p.jsx(eM,{...o,...s,ref:l,style:{...n.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});EM.displayName=wM;var CM=fb,TM=mb,MM=pb,RM=vb,OM=yb,AM=bb;function sy(n,[l,i]){return Math.min(i,Math.max(l,n))}var _M=[" ","Enter","ArrowUp","ArrowDown"],jM=[" ","Enter"],Ml="Select",[uc,dc,NM]=Lf(Ml),[jl]=Pa(Ml,[NM,Ui]),fc=Ui(),[DM,Qa]=jl(Ml),[zM,kM]=jl(Ml),LM="SelectProvider";function xb(n){const{__scopeSelect:l,children:i,open:s,defaultOpen:o,onOpenChange:u,value:f,defaultValue:m,onValueChange:v,dir:h,name:x,autoComplete:g,disabled:S,required:E,form:w,internal_do_not_use_render:C}=n,R=fc(l),[M,j]=y.useState(null),[N,H]=y.useState(null),[G,I]=y.useState(!1),V=Hf(h),[U,ce]=Di({prop:s,defaultProp:o??!1,onChange:u,caller:Ml}),[se,ae]=Di({prop:f,defaultProp:m,onChange:v,caller:Ml}),ue=y.useRef(null),oe=y.useRef(se);y.useEffect(()=>{const O=w?M?.ownerDocument.getElementById(w):M?.form;if(O instanceof HTMLFormElement){const L=()=>ae(oe.current);return O.addEventListener("reset",L),()=>O.removeEventListener("reset",L)}},[w,M,ae]);const me=M?!!w||!!M.closest("form"):!0,[de,D]=y.useState(new Set),Q=_t(),W=Array.from(de).map(O=>O.props.value).join(";"),ee=y.useCallback(O=>{D(L=>new Set(L).add(O))},[]),Z=y.useCallback(O=>{D(L=>{const P=new Set(L);return P.delete(O),P})},[]),A={required:E,trigger:M,onTriggerChange:j,valueNode:N,onValueNodeChange:H,valueNodeHasChildren:G,onValueNodeHasChildrenChange:I,contentId:Q,value:se,onValueChange:ae,open:U,onOpenChange:ce,dir:V,triggerPointerDownPosRef:ue,disabled:S,name:x,autoComplete:g,form:w,nativeOptions:de,nativeSelectKey:W,isFormControl:me};return p.jsx(nh,{...R,children:p.jsx(DM,{scope:l,...A,children:p.jsx(uc.Provider,{scope:l,children:p.jsx(zM,{scope:l,onNativeOptionAdd:ee,onNativeOptionRemove:Z,children:WM(C)?C(A):i})})})})}xb.displayName=LM;var Sb=n=>{const{__scopeSelect:l,children:i,...s}=n;return p.jsx(xb,{__scopeSelect:l,...s,internal_do_not_use_render:({isFormControl:o})=>p.jsxs(p.Fragment,{children:[i,o?p.jsx(Kb,{__scopeSelect:l}):null]})})};Sb.displayName=Ml;var wb="SelectTrigger",Eb=y.forwardRef((n,l)=>{const{__scopeSelect:i,disabled:s=!1,...o}=n,u=fc(i),f=Qa(wb,i),m=f.disabled||s,v=Ge(l,f.onTriggerChange),h=dc(i),x=y.useRef("touch"),[g,S,E]=Qb(C=>{const R=h().filter(N=>!N.disabled),M=R.find(N=>N.value===f.value),j=Xb(R,C,M);j!==void 0&&f.onValueChange(j.value)}),w=C=>{m||(f.onOpenChange(!0),E()),C&&(f.triggerPointerDownPosRef.current={x:Math.round(C.pageX),y:Math.round(C.pageY)})};return p.jsx(ah,{asChild:!0,...u,children:p.jsx(Ee.button,{type:"button",role:"combobox","aria-controls":f.open?f.contentId:void 0,"aria-expanded":f.open,"aria-required":f.required,"aria-autocomplete":"none",dir:f.dir,"data-state":f.open?"open":"closed",disabled:m,"data-disabled":m?"":void 0,"data-placeholder":hc(f.value)?"":void 0,...o,ref:v,onClick:ge(o.onClick,C=>{C.currentTarget.focus(),x.current!=="mouse"&&w(C)}),onPointerDown:ge(o.onPointerDown,C=>{x.current=C.pointerType;const R=C.target;R.hasPointerCapture(C.pointerId)&&R.releasePointerCapture(C.pointerId),C.button===0&&C.ctrlKey===!1&&C.pointerType==="mouse"&&(w(C),C.preventDefault())}),onKeyDown:ge(o.onKeyDown,C=>{const R=g.current!=="";!(C.ctrlKey||C.altKey||C.metaKey)&&C.key.length===1&&S(C.key),!(R&&C.key===" ")&&_M.includes(C.key)&&(w(),C.preventDefault())})})})});Eb.displayName=wb;var Cb="SelectValue",Tb=y.forwardRef((n,l)=>{const{__scopeSelect:i,className:s,style:o,children:u,placeholder:f="",...m}=n,v=Qa(Cb,i),{onValueNodeHasChildrenChange:h}=v,x=u!==void 0,g=Ge(l,v.onValueNodeChange);yt(()=>{h(x)},[h,x]);const S=hc(v.value);return p.jsx(Ee.span,{...m,asChild:S?!1:m.asChild,ref:g,style:{pointerEvents:"none"},children:p.jsx(y.Fragment,{children:S?f:u},S?"placeholder":"value")})});Tb.displayName=Cb;var HM="SelectIcon",Mb=y.forwardRef((n,l)=>{const{__scopeSelect:i,children:s,...o}=n;return p.jsx(Ee.span,{"aria-hidden":!0,...o,ref:l,children:s||"▼"})});Mb.displayName=HM;var Rb="SelectPortal",[UM,BM]=jl(Rb,{forceMount:void 0}),Ob=n=>{const{__scopeSelect:l,forceMount:i,...s}=n;return p.jsx(UM,{scope:n.__scopeSelect,forceMount:i,children:p.jsx(ts,{asChild:!0,...s})})};Ob.displayName=Rb;var Ya="SelectContent",Ab=y.forwardRef((n,l)=>{const i=BM(Ya,n.__scopeSelect),{forceMount:s=i.forceMount,...o}=n,u=Qa(Ya,n.__scopeSelect),[f,m]=y.useState();return yt(()=>{m(new DocumentFragment)},[]),p.jsx(Rn,{present:s||u.open,children:({present:v})=>v?p.jsx(Nb,{...o,ref:l}):p.jsx(_b,{...o,fragment:f})})});Ab.displayName=Ya;var _b=y.forwardRef((n,l)=>{const{__scopeSelect:i,children:s,fragment:o}=n;return o?Ol.createPortal(p.jsx(jb,{scope:i,children:p.jsx(uc.Slot,{scope:i,children:p.jsx("div",{ref:l,children:s})})}),o):null});_b.displayName="SelectContentFragment";var Tn=10,[jb,Xa]=jl(Ya),IM="SelectContentImpl",qM=El("SelectContent.RemoveScroll"),Nb=y.forwardRef((n,l)=>{const{__scopeSelect:i}=n,{position:s="item-aligned",onCloseAutoFocus:o,onEscapeKeyDown:u,onPointerDownOutside:f,side:m,sideOffset:v,align:h,alignOffset:x,arrowPadding:g,collisionBoundary:S,collisionPadding:E,sticky:w,hideWhenDetached:C,avoidCollisions:R,...M}=n,j=Qa(Ya,i),[N,H]=y.useState(null),[G,I]=y.useState(null),V=Ge(l,H),[U,ce]=y.useState(null),[se,ae]=y.useState(null),ue=dc(i),[oe,me]=y.useState(!1),de=y.useRef(!1);y.useEffect(()=>{if(N)return If(N)},[N]),Bf();const D=y.useCallback($=>{const[le,...ie]=ue().map(Oe=>Oe.ref.current),[xe]=ie.slice(-1),Me=document.activeElement;for(const Oe of $)if(Oe===Me||(Oe?.scrollIntoView({block:"nearest"}),Oe===le&&G&&(G.scrollTop=0),Oe===xe&&G&&(G.scrollTop=G.scrollHeight),Oe?.focus(),document.activeElement!==Me))return},[ue,G]),Q=y.useCallback(()=>D([U,N]),[D,U,N]);y.useEffect(()=>{oe&&Q()},[oe,Q]);const{onOpenChange:W,triggerPointerDownPosRef:ee}=j;y.useEffect(()=>{if(N){let $={x:0,y:0};const le=xe=>{$={x:Math.abs(Math.round(xe.pageX)-(ee.current?.x??0)),y:Math.abs(Math.round(xe.pageY)-(ee.current?.y??0))}},ie=xe=>{$.x<=10&&$.y<=10?xe.preventDefault():xe.composedPath().includes(N)||W(!1),document.removeEventListener("pointermove",le),ee.current=null};return ee.current!==null&&(document.addEventListener("pointermove",le),document.addEventListener("pointerup",ie,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",le),document.removeEventListener("pointerup",ie,{capture:!0})}}},[N,W,ee]),y.useEffect(()=>{const $=()=>W(!1);return window.addEventListener("blur",$),window.addEventListener("resize",$),()=>{window.removeEventListener("blur",$),window.removeEventListener("resize",$)}},[W]);const[Z,A]=Qb($=>{const le=ue().filter(Me=>!Me.disabled),ie=le.find(Me=>Me.ref.current===document.activeElement),xe=Xb(le,$,ie);xe&&setTimeout(()=>xe.ref.current?.focus())}),O=y.useCallback(($,le,ie)=>{const xe=!de.current&&!ie;(j.value!==void 0&&j.value===le||xe)&&(ce($),xe&&(de.current=!0))},[j.value]),L=y.useCallback(()=>N?.focus(),[N]),P=y.useCallback(($,le,ie)=>{const xe=!de.current&&!ie;(j.value!==void 0&&j.value===le||xe)&&ae($)},[j.value]),F=s==="popper"?bf:Db,te=F===bf?{side:m,sideOffset:v,align:h,alignOffset:x,arrowPadding:g,collisionBoundary:S,collisionPadding:E,sticky:w,hideWhenDetached:C,avoidCollisions:R}:{};return p.jsx(jb,{scope:i,content:N,viewport:G,onViewportChange:I,itemRefCallback:O,selectedItem:U,onItemLeave:L,itemTextRefCallback:P,focusSelectedItem:Q,selectedItemText:se,position:s,isPositioned:oe,searchRef:Z,children:p.jsx(ec,{as:qM,allowPinchZoom:!0,children:p.jsx(Jo,{asChild:!0,trapped:j.open,onMountAutoFocus:$=>{$.preventDefault()},onUnmountAutoFocus:ge(o,$=>{j.trigger?.focus({preventScroll:!0}),$.preventDefault()}),children:p.jsx(es,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:u,onPointerDownOutside:f,onFocusOutside:$=>$.preventDefault(),onDismiss:()=>j.onOpenChange(!1),children:p.jsx(F,{role:"listbox",id:j.contentId,"data-state":j.open?"open":"closed",dir:j.dir,onContextMenu:$=>$.preventDefault(),...M,...te,onPlaced:()=>me(!0),ref:V,style:{display:"flex",flexDirection:"column",outline:"none",...M.style},onKeyDown:ge(M.onKeyDown,$=>{const le=$.ctrlKey||$.altKey||$.metaKey;if($.key==="Tab"&&$.preventDefault(),!le&&$.key.length===1&&A($.key),["ArrowUp","ArrowDown","Home","End"].includes($.key)){let xe=ue().filter(Me=>!Me.disabled).map(Me=>Me.ref.current);if(["ArrowUp","End"].includes($.key)&&(xe=xe.slice().reverse()),["ArrowUp","ArrowDown"].includes($.key)){const Me=$.target,Oe=xe.indexOf(Me);xe=xe.slice(Oe+1)}setTimeout(()=>D(xe)),$.preventDefault()}})})})})})})});Nb.displayName=IM;var VM="SelectItemAlignedPosition",Db=y.forwardRef((n,l)=>{const{__scopeSelect:i,onPlaced:s,...o}=n,u=Qa(Ya,i),f=Xa(Ya,i),[m,v]=y.useState(null),[h,x]=y.useState(null),g=Ge(l,x),S=dc(i),E=y.useRef(!1),w=y.useRef(!0),{viewport:C,selectedItem:R,selectedItemText:M,focusSelectedItem:j}=f,N=y.useCallback(()=>{if(u.trigger&&u.valueNode&&m&&h&&C&&R&&M){const V=u.trigger.getBoundingClientRect(),U=h.getBoundingClientRect(),ce=u.valueNode.getBoundingClientRect(),se=M.getBoundingClientRect();if(u.dir!=="rtl"){const Me=se.left-U.left,Oe=ce.left-Me,et=V.left-Oe,qe=V.width+et,kt=Math.max(qe,U.width),ht=window.innerWidth-Tn,nt=sy(Oe,[Tn,Math.max(Tn,ht-kt)]);m.style.minWidth=qe+"px",m.style.left=nt+"px"}else{const Me=U.right-se.right,Oe=window.innerWidth-ce.right-Me,et=window.innerWidth-V.right-Oe,qe=V.width+et,kt=Math.max(qe,U.width),ht=window.innerWidth-Tn,nt=sy(Oe,[Tn,Math.max(Tn,ht-kt)]);m.style.minWidth=qe+"px",m.style.right=nt+"px"}const ae=S(),ue=window.innerHeight-Tn*2,oe=C.scrollHeight,me=window.getComputedStyle(h),de=parseInt(me.borderTopWidth,10),D=parseInt(me.paddingTop,10),Q=parseInt(me.borderBottomWidth,10),W=parseInt(me.paddingBottom,10),ee=de+D+oe+W+Q,Z=Math.min(R.offsetHeight*5,ee),A=window.getComputedStyle(C),O=parseInt(A.paddingTop,10),L=parseInt(A.paddingBottom,10),P=V.top+V.height/2-Tn,F=ue-P,te=R.offsetHeight/2,$=R.offsetTop+te,le=de+D+$,ie=ee-le;if(le<=P){const Me=ae.length>0&&R===ae[ae.length-1].ref.current;m.style.bottom="0px";const Oe=h.clientHeight-C.offsetTop-C.offsetHeight,et=Math.max(F,te+(Me?L:0)+Oe+Q),qe=le+et;m.style.height=qe+"px"}else{const Me=ae.length>0&&R===ae[0].ref.current;m.style.top="0px";const et=Math.max(P,de+C.offsetTop+(Me?O:0)+te)+ie;m.style.height=et+"px",C.scrollTop=le-P+C.offsetTop}m.style.margin=`${Tn}px 0`,m.style.minHeight=Z+"px",m.style.maxHeight=ue+"px",s?.(),requestAnimationFrame(()=>E.current=!0)}},[S,u.trigger,u.valueNode,m,h,C,R,M,u.dir,s]);yt(()=>N(),[N]);const[H,G]=y.useState();yt(()=>{h&&G(window.getComputedStyle(h).zIndex)},[h]);const I=y.useCallback(V=>{V&&w.current===!0&&(N(),j?.(),w.current=!1)},[N,j]);return p.jsx(YM,{scope:i,contentWrapper:m,shouldExpandOnScrollRef:E,onScrollButtonChange:I,children:p.jsx("div",{ref:v,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:H},children:p.jsx(Ee.div,{...o,ref:g,style:{boxSizing:"border-box",maxHeight:"100%",...o.style}})})})});Db.displayName=VM;var GM="SelectPopperPosition",bf=y.forwardRef((n,l)=>{const{__scopeSelect:i,align:s="start",collisionPadding:o=Tn,...u}=n,f=fc(i);return p.jsx(lh,{...f,...u,ref:l,align:s,collisionPadding:o,style:{boxSizing:"border-box",...u.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})});bf.displayName=GM;var[YM,hh]=jl(Ya,{}),xf="SelectViewport",zb=y.forwardRef((n,l)=>{const{__scopeSelect:i,nonce:s,...o}=n,u=Xa(xf,i),f=hh(xf,i),m=Ge(l,u.onViewportChange),v=y.useRef(0);return p.jsxs(p.Fragment,{children:[p.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:s}),p.jsx(uc.Slot,{scope:i,children:p.jsx(Ee.div,{"data-radix-select-viewport":"",role:"presentation",...o,ref:m,style:{position:"relative",flex:1,overflow:"hidden auto",...o.style},onScroll:ge(o.onScroll,h=>{const x=h.currentTarget,{contentWrapper:g,shouldExpandOnScrollRef:S}=f;if(S?.current&&g){const E=Math.abs(v.current-x.scrollTop);if(E>0){const w=window.innerHeight-Tn*2,C=parseFloat(g.style.minHeight),R=parseFloat(g.style.height),M=Math.max(C,R);if(M0?H:0,g.style.justifyContent="flex-end")}}}v.current=x.scrollTop})})})]})});zb.displayName=xf;var kb="SelectGroup",[FM,PM]=jl(kb),KM=y.forwardRef((n,l)=>{const{__scopeSelect:i,...s}=n,o=_t();return p.jsx(FM,{scope:i,id:o,children:p.jsx(Ee.div,{role:"group","aria-labelledby":o,...s,ref:l})})});KM.displayName=kb;var Lb="SelectLabel",QM=y.forwardRef((n,l)=>{const{__scopeSelect:i,...s}=n,o=PM(Lb,i);return p.jsx(Ee.div,{id:o.id,...s,ref:l})});QM.displayName=Lb;var Qo="SelectItem",[XM,Hb]=jl(Qo),Ub=y.forwardRef((n,l)=>{const{__scopeSelect:i,value:s,disabled:o=!1,textValue:u,...f}=n,m=Qa(Qo,i),v=Xa(Qo,i),h=m.value===s,[x,g]=y.useState(u??""),[S,E]=y.useState(!1),w=bn(N=>v.itemRefCallback?.(N,s,o)),C=Ge(l,w),R=_t(),M=y.useRef("touch"),j=()=>{o||(m.onValueChange(s),m.onOpenChange(!1))};return p.jsx(XM,{scope:i,value:s,disabled:o,textId:R,isSelected:h,onItemTextChange:y.useCallback(N=>{g(H=>H||(N?.textContent??"").trim())},[]),children:p.jsx(uc.ItemSlot,{scope:i,value:s,disabled:o,textValue:x,children:p.jsx(Ee.div,{role:"option","aria-labelledby":R,"data-highlighted":S?"":void 0,"aria-selected":h&&S,"data-state":h?"checked":"unchecked","aria-disabled":o||void 0,"data-disabled":o?"":void 0,tabIndex:o?void 0:-1,...f,ref:C,onFocus:ge(f.onFocus,()=>E(!0)),onBlur:ge(f.onBlur,()=>E(!1)),onClick:ge(f.onClick,()=>{M.current!=="mouse"&&j()}),onPointerUp:ge(f.onPointerUp,()=>{M.current==="mouse"&&j()}),onPointerDown:ge(f.onPointerDown,N=>{M.current=N.pointerType}),onPointerMove:ge(f.onPointerMove,N=>{M.current=N.pointerType,o?v.onItemLeave?.():M.current==="mouse"&&N.currentTarget.focus({preventScroll:!0})}),onPointerLeave:ge(f.onPointerLeave,N=>{N.currentTarget===document.activeElement&&v.onItemLeave?.()}),onKeyDown:ge(f.onKeyDown,N=>{o||N.target!==N.currentTarget||v.searchRef?.current!==""&&N.key===" "||(jM.includes(N.key)&&j(),N.key===" "&&N.preventDefault())})})})})});Ub.displayName=Qo;var Ur="SelectItemText",Bb=y.forwardRef((n,l)=>{const{__scopeSelect:i,className:s,style:o,...u}=n,f=Qa(Ur,i),m=Xa(Ur,i),v=Hb(Ur,i),h=kM(Ur,i),[x,g]=y.useState(null),S=bn(j=>m.itemTextRefCallback?.(j,v.value,v.disabled)),E=Ge(l,g,v.onItemTextChange,S),w=x?.textContent,C=y.useMemo(()=>p.jsx("option",{value:v.value,disabled:v.disabled,children:w},v.value),[v.disabled,v.value,w]),{onNativeOptionAdd:R,onNativeOptionRemove:M}=h;return yt(()=>(R(C),()=>M(C)),[R,M,C]),p.jsxs(p.Fragment,{children:[p.jsx(Ee.span,{id:v.textId,...u,ref:E}),v.isSelected&&f.valueNode&&!f.valueNodeHasChildren&&!hc(f.value)?Ol.createPortal(u.children,f.valueNode):null]})});Bb.displayName=Ur;var Ib="SelectItemIndicator",qb=y.forwardRef((n,l)=>{const{__scopeSelect:i,...s}=n;return Hb(Ib,i).isSelected?p.jsx(Ee.span,{"aria-hidden":!0,...s,ref:l}):null});qb.displayName=Ib;var Sf="SelectScrollUpButton",Vb=y.forwardRef((n,l)=>{const i=Xa(Sf,n.__scopeSelect),s=hh(Sf,n.__scopeSelect),[o,u]=y.useState(!1),f=Ge(l,s.onScrollButtonChange);return yt(()=>{if(i.viewport&&i.isPositioned){let m=function(){const h=v.scrollTop>0;u(h)};const v=i.viewport;return m(),v.addEventListener("scroll",m),()=>v.removeEventListener("scroll",m)}},[i.viewport,i.isPositioned]),o?p.jsx(Yb,{...n,ref:f,onAutoScroll:()=>{const{viewport:m,selectedItem:v}=i;m&&v&&(m.scrollTop=m.scrollTop-v.offsetHeight)}}):null});Vb.displayName=Sf;var wf="SelectScrollDownButton",Gb=y.forwardRef((n,l)=>{const i=Xa(wf,n.__scopeSelect),s=hh(wf,n.__scopeSelect),[o,u]=y.useState(!1),f=Ge(l,s.onScrollButtonChange);return yt(()=>{if(i.viewport&&i.isPositioned){let m=function(){const h=v.scrollHeight-v.clientHeight,x=Math.ceil(v.scrollTop)v.removeEventListener("scroll",m)}},[i.viewport,i.isPositioned]),o?p.jsx(Yb,{...n,ref:f,onAutoScroll:()=>{const{viewport:m,selectedItem:v}=i;m&&v&&(m.scrollTop=m.scrollTop+v.offsetHeight)}}):null});Gb.displayName=wf;var Yb=y.forwardRef((n,l)=>{const{__scopeSelect:i,onAutoScroll:s,...o}=n,u=Xa("SelectScrollButton",i),f=y.useRef(null),m=dc(i),v=y.useCallback(()=>{f.current!==null&&(window.clearInterval(f.current),f.current=null)},[]);return y.useEffect(()=>()=>v(),[v]),yt(()=>{m().find(x=>x.ref.current===document.activeElement)?.ref.current?.scrollIntoView({block:"nearest"})},[m]),p.jsx(Ee.div,{"aria-hidden":!0,...o,ref:l,style:{flexShrink:0,...o.style},onPointerDown:ge(o.onPointerDown,()=>{f.current===null&&(f.current=window.setInterval(s,50))}),onPointerMove:ge(o.onPointerMove,()=>{u.onItemLeave?.(),f.current===null&&(f.current=window.setInterval(s,50))}),onPointerLeave:ge(o.onPointerLeave,()=>{v()})})}),$M="SelectSeparator",ZM=y.forwardRef((n,l)=>{const{__scopeSelect:i,...s}=n;return p.jsx(Ee.div,{"aria-hidden":!0,...s,ref:l})});ZM.displayName=$M;var Fb="SelectArrow",JM=y.forwardRef((n,l)=>{const{__scopeSelect:i,...s}=n,o=fc(i);return Xa(Fb,i).position==="popper"?p.jsx(ih,{...o,...s,ref:l}):null});JM.displayName=Fb;var Pb="SelectBubbleInput",Kb=y.forwardRef(({__scopeSelect:n,...l},i)=>{const s=Qa(Pb,n),{value:o,onValueChange:u,required:f,disabled:m,name:v,autoComplete:h,form:x}=s,{nativeOptions:g,nativeSelectKey:S}=s,E=y.useRef(null),w=Ge(i,E),C=o??"",R=kC(C),M=Array.from(g).some(j=>(j.props.value??"")==="");return y.useEffect(()=>{const j=E.current;if(!j)return;const N=window.HTMLSelectElement.prototype,G=Object.getOwnPropertyDescriptor(N,"value").set;if(R!==C&&G){const I=new Event("change",{bubbles:!0});G.call(j,C),j.dispatchEvent(I)}},[R,C]),p.jsxs(Ee.select,{"aria-hidden":!0,required:f,tabIndex:-1,name:v,autoComplete:h,disabled:m,form:x,onChange:j=>u(j.target.value),...l,style:{...Qy,...l.style},ref:w,defaultValue:C,children:[hc(o)&&!M?p.jsx("option",{value:""}):null,Array.from(g)]},S)});Kb.displayName=Pb;function WM(n){return typeof n=="function"}function hc(n){return n===""||n===void 0}function Qb(n){const l=bn(n),i=y.useRef(""),s=y.useRef(0),o=y.useCallback(f=>{const m=i.current+f;l(m),(function v(h){i.current=h,window.clearTimeout(s.current),h!==""&&(s.current=window.setTimeout(()=>v(""),1e3))})(m)},[l]),u=y.useCallback(()=>{i.current="",window.clearTimeout(s.current)},[]);return y.useEffect(()=>()=>window.clearTimeout(s.current),[]),[i,o,u]}function Xb(n,l,i){const o=l.length>1&&Array.from(l).every(h=>h===l[0])?l[0]:l,u=i?n.indexOf(i):-1;let f=eR(n,Math.max(u,0));o.length===1&&(f=f.filter(h=>h!==i));const v=f.find(h=>h.textValue.toLowerCase().startsWith(o.toLowerCase()));return v!==i?v:void 0}function eR(n,l){return n.map((i,s)=>n[(l+s)%n.length])}var[mc]=Pa("Tooltip",[Ui]),pc=Ui(),$b="TooltipProvider",tR=700,Ef="tooltip.open",[nR,mh]=mc($b),Zb=n=>{const{__scopeTooltip:l,delayDuration:i=tR,skipDelayDuration:s=300,disableHoverableContent:o=!1,children:u}=n,f=y.useRef(!0),m=y.useRef(!1),v=y.useRef(0);return y.useEffect(()=>{const h=v.current;return()=>window.clearTimeout(h)},[]),p.jsx(nR,{scope:l,isOpenDelayedRef:f,delayDuration:i,onOpen:y.useCallback(()=>{s<=0||(window.clearTimeout(v.current),f.current=!1)},[s]),onClose:y.useCallback(()=>{s<=0||(window.clearTimeout(v.current),v.current=window.setTimeout(()=>f.current=!0,s))},[s]),isPointerInTransitRef:m,onPointerInTransitChange:y.useCallback(h=>{m.current=h},[]),disableHoverableContent:o,children:u})};Zb.displayName=$b;var Kr="Tooltip",[aR,is]=mc(Kr),Jb=n=>{const{__scopeTooltip:l,children:i,open:s,defaultOpen:o,onOpenChange:u,disableHoverableContent:f,delayDuration:m}=n,v=mh(Kr,n.__scopeTooltip),h=pc(l),[x,g]=y.useState(null),S=_t(),E=y.useRef(0),w=f??v.disableHoverableContent,C=m??v.delayDuration,R=y.useRef(!1),[M,j]=Di({prop:s,defaultProp:o??!1,onChange:V=>{V?(v.onOpen(),document.dispatchEvent(new CustomEvent(Ef))):v.onClose(),u?.(V)},caller:Kr}),N=y.useMemo(()=>M?R.current?"delayed-open":"instant-open":"closed",[M]),H=y.useCallback(()=>{window.clearTimeout(E.current),E.current=0,R.current=!1,j(!0)},[j]),G=y.useCallback(()=>{window.clearTimeout(E.current),E.current=0,j(!1)},[j]),I=y.useCallback(()=>{window.clearTimeout(E.current),E.current=window.setTimeout(()=>{R.current=!0,j(!0),E.current=0},C)},[C,j]);return y.useEffect(()=>()=>{E.current&&(window.clearTimeout(E.current),E.current=0)},[]),p.jsx(nh,{...h,children:p.jsx(aR,{scope:l,contentId:S,open:M,stateAttribute:N,trigger:x,onTriggerChange:g,onTriggerEnter:y.useCallback(()=>{v.isOpenDelayedRef.current?I():H()},[v.isOpenDelayedRef,I,H]),onTriggerLeave:y.useCallback(()=>{w?G():(window.clearTimeout(E.current),E.current=0)},[G,w]),onOpen:H,onClose:G,disableHoverableContent:w,children:i})})};Jb.displayName=Kr;var Cf="TooltipTrigger",Wb=y.forwardRef((n,l)=>{const{__scopeTooltip:i,...s}=n,o=is(Cf,i),u=mh(Cf,i),f=pc(i),m=y.useRef(null),v=Ge(l,m,o.onTriggerChange),h=y.useRef(!1),x=y.useRef(!1),g=y.useCallback(()=>h.current=!1,[]);return y.useEffect(()=>()=>document.removeEventListener("pointerup",g),[g]),p.jsx(ah,{asChild:!0,...f,children:p.jsx(Ee.button,{"aria-describedby":o.open?o.contentId:void 0,"data-state":o.stateAttribute,...s,ref:v,onPointerMove:ge(n.onPointerMove,S=>{S.pointerType!=="touch"&&!x.current&&!u.isPointerInTransitRef.current&&(o.onTriggerEnter(),x.current=!0)}),onPointerLeave:ge(n.onPointerLeave,()=>{o.onTriggerLeave(),x.current=!1}),onPointerDown:ge(n.onPointerDown,()=>{o.open&&o.onClose(),h.current=!0,document.addEventListener("pointerup",g,{once:!0})}),onFocus:ge(n.onFocus,()=>{h.current||o.onOpen()}),onBlur:ge(n.onBlur,o.onClose),onClick:ge(n.onClick,o.onClose)})})});Wb.displayName=Cf;var ph="TooltipPortal",[lR,iR]=mc(ph,{forceMount:void 0}),ex=n=>{const{__scopeTooltip:l,forceMount:i,children:s,container:o}=n,u=is(ph,l);return p.jsx(lR,{scope:l,forceMount:i,children:p.jsx(Rn,{present:i||u.open,children:p.jsx(ts,{asChild:!0,container:o,children:s})})})};ex.displayName=ph;var ki="TooltipContent",tx=y.forwardRef((n,l)=>{const i=iR(ki,n.__scopeTooltip),{forceMount:s=i.forceMount,side:o="top",...u}=n,f=is(ki,n.__scopeTooltip);return p.jsx(Rn,{present:s||f.open,children:f.disableHoverableContent?p.jsx(nx,{side:o,...u,ref:l}):p.jsx(rR,{side:o,...u,ref:l})})}),rR=y.forwardRef((n,l)=>{const i=is(ki,n.__scopeTooltip),s=mh(ki,n.__scopeTooltip),o=y.useRef(null),u=Ge(l,o),[f,m]=y.useState(null),{trigger:v,onClose:h}=i,x=o.current,{onPointerInTransitChange:g}=s,S=y.useCallback(()=>{m(null),g(!1)},[g]),E=y.useCallback((w,C)=>{const R=w.currentTarget,M={x:w.clientX,y:w.clientY},j=uR(M,R.getBoundingClientRect()),N=dR(M,j),H=fR(C.getBoundingClientRect()),G=mR([...N,...H]);m(G),g(!0)},[g]);return y.useEffect(()=>()=>S(),[S]),y.useEffect(()=>{if(v&&x){const w=R=>E(R,x),C=R=>E(R,v);return v.addEventListener("pointerleave",w),x.addEventListener("pointerleave",C),()=>{v.removeEventListener("pointerleave",w),x.removeEventListener("pointerleave",C)}}},[v,x,E,S]),y.useEffect(()=>{if(f){const w=C=>{const R=C.target,M={x:C.clientX,y:C.clientY},j=v?.contains(R)||x?.contains(R),N=!hR(M,f);j?S():N&&(S(),h())};return document.addEventListener("pointermove",w),()=>document.removeEventListener("pointermove",w)}},[v,x,f,h,S]),p.jsx(nx,{...n,ref:u})}),[sR,oR]=mc(Kr,{isInside:!1}),cR=nE("TooltipContent"),nx=y.forwardRef((n,l)=>{const{__scopeTooltip:i,children:s,"aria-label":o,onEscapeKeyDown:u,onPointerDownOutside:f,...m}=n,v=is(ki,i),h=pc(i),{onClose:x}=v;return y.useEffect(()=>(document.addEventListener(Ef,x),()=>document.removeEventListener(Ef,x)),[x]),y.useEffect(()=>{if(v.trigger){const g=S=>{S.target instanceof Node&&S.target.contains(v.trigger)&&x()};return window.addEventListener("scroll",g,{capture:!0}),()=>window.removeEventListener("scroll",g,{capture:!0})}},[v.trigger,x]),p.jsx(es,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:u,onPointerDownOutside:f,onFocusOutside:g=>g.preventDefault(),onDismiss:x,children:p.jsxs(lh,{"data-state":v.stateAttribute,...h,...m,ref:l,style:{...m.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-tooltip-content-available-width":"var(--radix-popper-available-width)","--radix-tooltip-content-available-height":"var(--radix-popper-available-height)","--radix-tooltip-trigger-width":"var(--radix-popper-anchor-width)","--radix-tooltip-trigger-height":"var(--radix-popper-anchor-height)"},children:[p.jsx(cR,{children:s}),p.jsx(sR,{scope:i,isInside:!0,children:p.jsx(hE,{id:v.contentId,role:"tooltip",children:o||s})})]})})});tx.displayName=ki;var ax="TooltipArrow",lx=y.forwardRef((n,l)=>{const{__scopeTooltip:i,...s}=n,o=pc(i);return oR(ax,i).isInside?null:p.jsx(ih,{...o,...s,ref:l})});lx.displayName=ax;function uR(n,l){const i=Math.abs(l.top-n.y),s=Math.abs(l.bottom-n.y),o=Math.abs(l.right-n.x),u=Math.abs(l.left-n.x);switch(Math.min(i,s,o,u)){case u:return"left";case o:return"right";case i:return"top";case s:return"bottom";default:throw new Error("unreachable")}}function dR(n,l,i=5){const s=[];switch(l){case"top":s.push({x:n.x-i,y:n.y+i},{x:n.x+i,y:n.y+i});break;case"bottom":s.push({x:n.x-i,y:n.y-i},{x:n.x+i,y:n.y-i});break;case"left":s.push({x:n.x+i,y:n.y-i},{x:n.x+i,y:n.y+i});break;case"right":s.push({x:n.x-i,y:n.y-i},{x:n.x-i,y:n.y+i});break}return s}function fR(n){const{top:l,right:i,bottom:s,left:o}=n;return[{x:o,y:l},{x:i,y:l},{x:i,y:s},{x:o,y:s}]}function hR(n,l){const{x:i,y:s}=n;let o=!1;for(let u=0,f=l.length-1;us!=S>s&&i<(g-h)*(s-x)/(S-x)+h&&(o=!o)}return o}function mR(n){const l=n.slice();return l.sort((i,s)=>i.xs.x?1:i.ys.y?1:0),pR(l)}function pR(n){if(n.length<=1)return n.slice();const l=[];for(let s=0;s=2;){const u=l[l.length-1],f=l[l.length-2];if((u.x-f.x)*(o.y-f.y)>=(u.y-f.y)*(o.x-f.x))l.pop();else break}l.push(o)}l.pop();const i=[];for(let s=n.length-1;s>=0;s--){const o=n[s];for(;i.length>=2;){const u=i[i.length-1],f=i[i.length-2];if((u.x-f.x)*(o.y-f.y)>=(u.y-f.y)*(o.x-f.x))i.pop();else break}i.push(o)}return i.pop(),l.length===1&&i.length===1&&l[0].x===i[0].x&&l[0].y===i[0].y?l:l.concat(i)}var gR=Zb,vR=Jb,yR=Wb,bR=ex,xR=tx,SR=lx;function ix(n){var l,i,s="";if(typeof n=="string"||typeof n=="number")s+=n;else if(typeof n=="object")if(Array.isArray(n)){var o=n.length;for(l=0;l{const i=new Array(n.length+l.length);for(let s=0;s({classGroupId:n,validator:l}),sx=(n=new Map,l=null,i)=>({nextPart:n,validators:l,classGroupId:i}),Xo="-",oy=[],CR="arbitrary..",TR=n=>{const l=RR(n),{conflictingClassGroups:i,conflictingClassGroupModifiers:s}=n;return{getClassGroupId:f=>{if(f.startsWith("[")&&f.endsWith("]"))return MR(f);const m=f.split(Xo),v=m[0]===""&&m.length>1?1:0;return ox(m,v,l)},getConflictingClassGroupIds:(f,m)=>{if(m){const v=s[f],h=i[f];return v?h?wR(h,v):v:h||oy}return i[f]||oy}}},ox=(n,l,i)=>{if(n.length-l===0)return i.classGroupId;const o=n[l],u=i.nextPart.get(o);if(u){const h=ox(n,l+1,u);if(h)return h}const f=i.validators;if(f===null)return;const m=l===0?n.join(Xo):n.slice(l).join(Xo),v=f.length;for(let h=0;hn.slice(1,-1).indexOf(":")===-1?void 0:(()=>{const l=n.slice(1,-1),i=l.indexOf(":"),s=l.slice(0,i);return s?CR+s:void 0})(),RR=n=>{const{theme:l,classGroups:i}=n;return OR(i,l)},OR=(n,l)=>{const i=sx();for(const s in n){const o=n[s];gh(o,i,s,l)}return i},gh=(n,l,i,s)=>{const o=n.length;for(let u=0;u{if(typeof n=="string"){_R(n,l,i);return}if(typeof n=="function"){jR(n,l,i,s);return}NR(n,l,i,s)},_R=(n,l,i)=>{const s=n===""?l:cx(l,n);s.classGroupId=i},jR=(n,l,i,s)=>{if(DR(n)){gh(n(s),l,i,s);return}l.validators===null&&(l.validators=[]),l.validators.push(ER(i,n))},NR=(n,l,i,s)=>{const o=Object.entries(n),u=o.length;for(let f=0;f{let i=n;const s=l.split(Xo),o=s.length;for(let u=0;u"isThemeGetter"in n&&n.isThemeGetter===!0,zR=n=>{if(n<1)return{get:()=>{},set:()=>{}};let l=0,i=Object.create(null),s=Object.create(null);const o=(u,f)=>{i[u]=f,l++,l>n&&(l=0,s=i,i=Object.create(null))};return{get(u){let f=i[u];if(f!==void 0)return f;if((f=s[u])!==void 0)return o(u,f),f},set(u,f){u in i?i[u]=f:o(u,f)}}},Tf="!",cy=":",kR=[],uy=(n,l,i,s,o)=>({modifiers:n,hasImportantModifier:l,baseClassName:i,maybePostfixModifierPosition:s,isExternal:o}),LR=n=>{const{prefix:l,experimentalParseClassName:i}=n;let s=o=>{const u=[];let f=0,m=0,v=0,h;const x=o.length;for(let C=0;Cv?h-v:void 0;return uy(u,E,S,w)};if(l){const o=l+cy,u=s;s=f=>f.startsWith(o)?u(f.slice(o.length)):uy(kR,!1,f,void 0,!0)}if(i){const o=s;s=u=>i({className:u,parseClassName:o})}return s},HR=n=>{const l=new Map;return n.orderSensitiveModifiers.forEach((i,s)=>{l.set(i,1e6+s)}),i=>{const s=[];let o=[];for(let u=0;u0&&(o.sort(),s.push(...o),o=[]),s.push(f)):o.push(f)}return o.length>0&&(o.sort(),s.push(...o)),s}},UR=n=>({cache:zR(n.cacheSize),parseClassName:LR(n),sortModifiers:HR(n),postfixLookupClassGroupIds:BR(n),...TR(n)}),BR=n=>{const l=Object.create(null),i=n.postfixLookupClassGroups;if(i)for(let s=0;s{const{parseClassName:i,getClassGroupId:s,getConflictingClassGroupIds:o,sortModifiers:u,postfixLookupClassGroupIds:f}=l,m=[],v=n.trim().split(IR);let h="";for(let x=v.length-1;x>=0;x-=1){const g=v[x],{isExternal:S,modifiers:E,hasImportantModifier:w,baseClassName:C,maybePostfixModifierPosition:R}=i(g);if(S){h=g+(h.length>0?" "+h:h);continue}let M=!!R,j;if(M){const V=C.substring(0,R);j=s(V);const U=j&&f[j]?s(C):void 0;U&&U!==j&&(j=U,M=!1)}else j=s(C);if(!j){if(!M){h=g+(h.length>0?" "+h:h);continue}if(j=s(C),!j){h=g+(h.length>0?" "+h:h);continue}M=!1}const N=E.length===0?"":E.length===1?E[0]:u(E).join(":"),H=w?N+Tf:N,G=H+j;if(m.indexOf(G)>-1)continue;m.push(G);const I=o(j,M);for(let V=0;V0?" "+h:h)}return h},VR=(...n)=>{let l=0,i,s,o="";for(;l{if(typeof n=="string")return n;let l,i="";for(let s=0;s{let i,s,o,u;const f=v=>{const h=l.reduce((x,g)=>g(x),n());return i=UR(h),s=i.cache.get,o=i.cache.set,u=m,m(v)},m=v=>{const h=s(v);if(h)return h;const x=qR(v,i);return o(v,x),x};return u=f,(...v)=>u(VR(...v))},YR=[],ft=n=>{const l=i=>i[n]||YR;return l.isThemeGetter=!0,l},dx=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,fx=/^\((?:(\w[\w-]*):)?(.+)\)$/i,FR=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,PR=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,KR=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,QR=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,XR=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,$R=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Ua=n=>FR.test(n),Ae=n=>!!n&&!Number.isNaN(Number(n)),Ln=n=>!!n&&Number.isInteger(Number(n)),Qd=n=>n.endsWith("%")&&Ae(n.slice(0,-1)),sa=n=>PR.test(n),hx=()=>!0,ZR=n=>KR.test(n)&&!QR.test(n),vh=()=>!1,JR=n=>XR.test(n),WR=n=>$R.test(n),eO=n=>!fe(n)&&!he(n),tO=n=>n.startsWith("@container")&&(n[10]==="/"&&n[11]!==void 0||n[11]==="s"&&n[16]!==void 0&&n.startsWith("-size/",10)||n[11]==="n"&&n[18]!==void 0&&n.startsWith("-normal/",10)),nO=n=>$a(n,gx,vh),fe=n=>dx.test(n),Sl=n=>$a(n,vx,ZR),dy=n=>$a(n,uO,Ae),aO=n=>$a(n,bx,hx),lO=n=>$a(n,yx,vh),fy=n=>$a(n,mx,vh),iO=n=>$a(n,px,WR),jo=n=>$a(n,xx,JR),he=n=>fx.test(n),zr=n=>Nl(n,vx),rO=n=>Nl(n,yx),hy=n=>Nl(n,mx),sO=n=>Nl(n,gx),oO=n=>Nl(n,px),No=n=>Nl(n,xx,!0),cO=n=>Nl(n,bx,!0),$a=(n,l,i)=>{const s=dx.exec(n);return s?s[1]?l(s[1]):i(s[2]):!1},Nl=(n,l,i=!1)=>{const s=fx.exec(n);return s?s[1]?l(s[1]):i:!1},mx=n=>n==="position"||n==="percentage",px=n=>n==="image"||n==="url",gx=n=>n==="length"||n==="size"||n==="bg-size",vx=n=>n==="length",uO=n=>n==="number",yx=n=>n==="family-name",bx=n=>n==="number"||n==="weight",xx=n=>n==="shadow",dO=()=>{const n=ft("color"),l=ft("font"),i=ft("text"),s=ft("font-weight"),o=ft("tracking"),u=ft("leading"),f=ft("breakpoint"),m=ft("container"),v=ft("spacing"),h=ft("radius"),x=ft("shadow"),g=ft("inset-shadow"),S=ft("text-shadow"),E=ft("drop-shadow"),w=ft("blur"),C=ft("perspective"),R=ft("aspect"),M=ft("ease"),j=ft("animate"),N=()=>["auto","avoid","all","avoid-page","page","left","right","column"],H=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],G=()=>[...H(),he,fe],I=()=>["auto","hidden","clip","visible","scroll"],V=()=>["auto","contain","none"],U=()=>[he,fe,v],ce=()=>[Ua,"full","auto",...U()],se=()=>[Ln,"none","subgrid",he,fe],ae=()=>["auto",{span:["full",Ln,he,fe]},Ln,he,fe],ue=()=>[Ln,"auto",he,fe],oe=()=>["auto","min","max","fr",he,fe],me=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],de=()=>["start","end","center","stretch","center-safe","end-safe"],D=()=>["auto",...U()],Q=()=>[Ua,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...U()],W=()=>[Ua,"screen","full","dvw","lvw","svw","min","max","fit",...U()],ee=()=>[Ua,"screen","full","lh","dvh","lvh","svh","min","max","fit",...U()],Z=()=>[n,he,fe],A=()=>[...H(),hy,fy,{position:[he,fe]}],O=()=>["no-repeat",{repeat:["","x","y","space","round"]}],L=()=>["auto","cover","contain",sO,nO,{size:[he,fe]}],P=()=>[Qd,zr,Sl],F=()=>["","none","full",h,he,fe],te=()=>["",Ae,zr,Sl],$=()=>["solid","dashed","dotted","double"],le=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],ie=()=>[Ae,Qd,hy,fy],xe=()=>["","none",w,he,fe],Me=()=>["none",Ae,he,fe],Oe=()=>["none",Ae,he,fe],et=()=>[Ae,he,fe],qe=()=>[Ua,"full",...U()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[sa],breakpoint:[sa],color:[hx],container:[sa],"drop-shadow":[sa],ease:["in","out","in-out"],font:[eO],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[sa],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[sa],shadow:[sa],spacing:["px",Ae],text:[sa],"text-shadow":[sa],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",Ua,fe,he,R]}],container:["container"],"container-type":[{"@container":["","normal","size",he,fe]}],"container-named":[tO],columns:[{columns:[Ae,fe,he,m]}],"break-after":[{"break-after":N()}],"break-before":[{"break-before":N()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:G()}],overflow:[{overflow:I()}],"overflow-x":[{"overflow-x":I()}],"overflow-y":[{"overflow-y":I()}],overscroll:[{overscroll:V()}],"overscroll-x":[{"overscroll-x":V()}],"overscroll-y":[{"overscroll-y":V()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:ce()}],"inset-x":[{"inset-x":ce()}],"inset-y":[{"inset-y":ce()}],start:[{"inset-s":ce(),start:ce()}],end:[{"inset-e":ce(),end:ce()}],"inset-bs":[{"inset-bs":ce()}],"inset-be":[{"inset-be":ce()}],top:[{top:ce()}],right:[{right:ce()}],bottom:[{bottom:ce()}],left:[{left:ce()}],visibility:["visible","invisible","collapse"],z:[{z:[Ln,"auto",he,fe]}],basis:[{basis:[Ua,"full","auto",m,...U()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[Ae,Ua,"auto","initial","none",fe]}],grow:[{grow:["",Ae,he,fe]}],shrink:[{shrink:["",Ae,he,fe]}],order:[{order:[Ln,"first","last","none",he,fe]}],"grid-cols":[{"grid-cols":se()}],"col-start-end":[{col:ae()}],"col-start":[{"col-start":ue()}],"col-end":[{"col-end":ue()}],"grid-rows":[{"grid-rows":se()}],"row-start-end":[{row:ae()}],"row-start":[{"row-start":ue()}],"row-end":[{"row-end":ue()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":oe()}],"auto-rows":[{"auto-rows":oe()}],gap:[{gap:U()}],"gap-x":[{"gap-x":U()}],"gap-y":[{"gap-y":U()}],"justify-content":[{justify:[...me(),"normal"]}],"justify-items":[{"justify-items":[...de(),"normal"]}],"justify-self":[{"justify-self":["auto",...de()]}],"align-content":[{content:["normal",...me()]}],"align-items":[{items:[...de(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...de(),{baseline:["","last"]}]}],"place-content":[{"place-content":me()}],"place-items":[{"place-items":[...de(),"baseline"]}],"place-self":[{"place-self":["auto",...de()]}],p:[{p:U()}],px:[{px:U()}],py:[{py:U()}],ps:[{ps:U()}],pe:[{pe:U()}],pbs:[{pbs:U()}],pbe:[{pbe:U()}],pt:[{pt:U()}],pr:[{pr:U()}],pb:[{pb:U()}],pl:[{pl:U()}],m:[{m:D()}],mx:[{mx:D()}],my:[{my:D()}],ms:[{ms:D()}],me:[{me:D()}],mbs:[{mbs:D()}],mbe:[{mbe:D()}],mt:[{mt:D()}],mr:[{mr:D()}],mb:[{mb:D()}],ml:[{ml:D()}],"space-x":[{"space-x":U()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":U()}],"space-y-reverse":["space-y-reverse"],size:[{size:Q()}],"inline-size":[{inline:["auto",...W()]}],"min-inline-size":[{"min-inline":["auto",...W()]}],"max-inline-size":[{"max-inline":["none",...W()]}],"block-size":[{block:["auto",...ee()]}],"min-block-size":[{"min-block":["auto",...ee()]}],"max-block-size":[{"max-block":["none",...ee()]}],w:[{w:[m,"screen",...Q()]}],"min-w":[{"min-w":[m,"screen","none",...Q()]}],"max-w":[{"max-w":[m,"screen","none","prose",{screen:[f]},...Q()]}],h:[{h:["screen","lh",...Q()]}],"min-h":[{"min-h":["screen","lh","none",...Q()]}],"max-h":[{"max-h":["screen","lh",...Q()]}],"font-size":[{text:["base",i,zr,Sl]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[s,cO,aO]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",Qd,fe]}],"font-family":[{font:[rO,lO,l]}],"font-features":[{"font-features":[fe]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[o,he,fe]}],"line-clamp":[{"line-clamp":[Ae,"none",he,dy]}],leading:[{leading:[u,...U()]}],"list-image":[{"list-image":["none",he,fe]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",he,fe]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:Z()}],"text-color":[{text:Z()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...$(),"wavy"]}],"text-decoration-thickness":[{decoration:[Ae,"from-font","auto",he,Sl]}],"text-decoration-color":[{decoration:Z()}],"underline-offset":[{"underline-offset":[Ae,"auto",he,fe]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:U()}],"tab-size":[{tab:[Ln,he,fe]}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",he,fe]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",he,fe]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:A()}],"bg-repeat":[{bg:O()}],"bg-size":[{bg:L()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},Ln,he,fe],radial:["",he,fe],conic:[Ln,he,fe]},oO,iO]}],"bg-color":[{bg:Z()}],"gradient-from-pos":[{from:P()}],"gradient-via-pos":[{via:P()}],"gradient-to-pos":[{to:P()}],"gradient-from":[{from:Z()}],"gradient-via":[{via:Z()}],"gradient-to":[{to:Z()}],rounded:[{rounded:F()}],"rounded-s":[{"rounded-s":F()}],"rounded-e":[{"rounded-e":F()}],"rounded-t":[{"rounded-t":F()}],"rounded-r":[{"rounded-r":F()}],"rounded-b":[{"rounded-b":F()}],"rounded-l":[{"rounded-l":F()}],"rounded-ss":[{"rounded-ss":F()}],"rounded-se":[{"rounded-se":F()}],"rounded-ee":[{"rounded-ee":F()}],"rounded-es":[{"rounded-es":F()}],"rounded-tl":[{"rounded-tl":F()}],"rounded-tr":[{"rounded-tr":F()}],"rounded-br":[{"rounded-br":F()}],"rounded-bl":[{"rounded-bl":F()}],"border-w":[{border:te()}],"border-w-x":[{"border-x":te()}],"border-w-y":[{"border-y":te()}],"border-w-s":[{"border-s":te()}],"border-w-e":[{"border-e":te()}],"border-w-bs":[{"border-bs":te()}],"border-w-be":[{"border-be":te()}],"border-w-t":[{"border-t":te()}],"border-w-r":[{"border-r":te()}],"border-w-b":[{"border-b":te()}],"border-w-l":[{"border-l":te()}],"divide-x":[{"divide-x":te()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":te()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...$(),"hidden","none"]}],"divide-style":[{divide:[...$(),"hidden","none"]}],"border-color":[{border:Z()}],"border-color-x":[{"border-x":Z()}],"border-color-y":[{"border-y":Z()}],"border-color-s":[{"border-s":Z()}],"border-color-e":[{"border-e":Z()}],"border-color-bs":[{"border-bs":Z()}],"border-color-be":[{"border-be":Z()}],"border-color-t":[{"border-t":Z()}],"border-color-r":[{"border-r":Z()}],"border-color-b":[{"border-b":Z()}],"border-color-l":[{"border-l":Z()}],"divide-color":[{divide:Z()}],"outline-style":[{outline:[...$(),"none","hidden"]}],"outline-offset":[{"outline-offset":[Ae,he,fe]}],"outline-w":[{outline:["",Ae,zr,Sl]}],"outline-color":[{outline:Z()}],shadow:[{shadow:["","none",x,No,jo]}],"shadow-color":[{shadow:Z()}],"inset-shadow":[{"inset-shadow":["none",g,No,jo]}],"inset-shadow-color":[{"inset-shadow":Z()}],"ring-w":[{ring:te()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:Z()}],"ring-offset-w":[{"ring-offset":[Ae,Sl]}],"ring-offset-color":[{"ring-offset":Z()}],"inset-ring-w":[{"inset-ring":te()}],"inset-ring-color":[{"inset-ring":Z()}],"text-shadow":[{"text-shadow":["none",S,No,jo]}],"text-shadow-color":[{"text-shadow":Z()}],opacity:[{opacity:[Ae,he,fe]}],"mix-blend":[{"mix-blend":[...le(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":le()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[Ae]}],"mask-image-linear-from-pos":[{"mask-linear-from":ie()}],"mask-image-linear-to-pos":[{"mask-linear-to":ie()}],"mask-image-linear-from-color":[{"mask-linear-from":Z()}],"mask-image-linear-to-color":[{"mask-linear-to":Z()}],"mask-image-t-from-pos":[{"mask-t-from":ie()}],"mask-image-t-to-pos":[{"mask-t-to":ie()}],"mask-image-t-from-color":[{"mask-t-from":Z()}],"mask-image-t-to-color":[{"mask-t-to":Z()}],"mask-image-r-from-pos":[{"mask-r-from":ie()}],"mask-image-r-to-pos":[{"mask-r-to":ie()}],"mask-image-r-from-color":[{"mask-r-from":Z()}],"mask-image-r-to-color":[{"mask-r-to":Z()}],"mask-image-b-from-pos":[{"mask-b-from":ie()}],"mask-image-b-to-pos":[{"mask-b-to":ie()}],"mask-image-b-from-color":[{"mask-b-from":Z()}],"mask-image-b-to-color":[{"mask-b-to":Z()}],"mask-image-l-from-pos":[{"mask-l-from":ie()}],"mask-image-l-to-pos":[{"mask-l-to":ie()}],"mask-image-l-from-color":[{"mask-l-from":Z()}],"mask-image-l-to-color":[{"mask-l-to":Z()}],"mask-image-x-from-pos":[{"mask-x-from":ie()}],"mask-image-x-to-pos":[{"mask-x-to":ie()}],"mask-image-x-from-color":[{"mask-x-from":Z()}],"mask-image-x-to-color":[{"mask-x-to":Z()}],"mask-image-y-from-pos":[{"mask-y-from":ie()}],"mask-image-y-to-pos":[{"mask-y-to":ie()}],"mask-image-y-from-color":[{"mask-y-from":Z()}],"mask-image-y-to-color":[{"mask-y-to":Z()}],"mask-image-radial":[{"mask-radial":[he,fe]}],"mask-image-radial-from-pos":[{"mask-radial-from":ie()}],"mask-image-radial-to-pos":[{"mask-radial-to":ie()}],"mask-image-radial-from-color":[{"mask-radial-from":Z()}],"mask-image-radial-to-color":[{"mask-radial-to":Z()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":H()}],"mask-image-conic-pos":[{"mask-conic":[Ae]}],"mask-image-conic-from-pos":[{"mask-conic-from":ie()}],"mask-image-conic-to-pos":[{"mask-conic-to":ie()}],"mask-image-conic-from-color":[{"mask-conic-from":Z()}],"mask-image-conic-to-color":[{"mask-conic-to":Z()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:A()}],"mask-repeat":[{mask:O()}],"mask-size":[{mask:L()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",he,fe]}],filter:[{filter:["","none",he,fe]}],blur:[{blur:xe()}],brightness:[{brightness:[Ae,he,fe]}],contrast:[{contrast:[Ae,he,fe]}],"drop-shadow":[{"drop-shadow":["","none",E,No,jo]}],"drop-shadow-color":[{"drop-shadow":Z()}],grayscale:[{grayscale:["",Ae,he,fe]}],"hue-rotate":[{"hue-rotate":[Ae,he,fe]}],invert:[{invert:["",Ae,he,fe]}],saturate:[{saturate:[Ae,he,fe]}],sepia:[{sepia:["",Ae,he,fe]}],"backdrop-filter":[{"backdrop-filter":["","none",he,fe]}],"backdrop-blur":[{"backdrop-blur":xe()}],"backdrop-brightness":[{"backdrop-brightness":[Ae,he,fe]}],"backdrop-contrast":[{"backdrop-contrast":[Ae,he,fe]}],"backdrop-grayscale":[{"backdrop-grayscale":["",Ae,he,fe]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[Ae,he,fe]}],"backdrop-invert":[{"backdrop-invert":["",Ae,he,fe]}],"backdrop-opacity":[{"backdrop-opacity":[Ae,he,fe]}],"backdrop-saturate":[{"backdrop-saturate":[Ae,he,fe]}],"backdrop-sepia":[{"backdrop-sepia":["",Ae,he,fe]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":U()}],"border-spacing-x":[{"border-spacing-x":U()}],"border-spacing-y":[{"border-spacing-y":U()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",he,fe]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[Ae,"initial",he,fe]}],ease:[{ease:["linear","initial",M,he,fe]}],delay:[{delay:[Ae,he,fe]}],animate:[{animate:["none",j,he,fe]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[C,he,fe]}],"perspective-origin":[{"perspective-origin":G()}],rotate:[{rotate:Me()}],"rotate-x":[{"rotate-x":Me()}],"rotate-y":[{"rotate-y":Me()}],"rotate-z":[{"rotate-z":Me()}],scale:[{scale:Oe()}],"scale-x":[{"scale-x":Oe()}],"scale-y":[{"scale-y":Oe()}],"scale-z":[{"scale-z":Oe()}],"scale-3d":["scale-3d"],skew:[{skew:et()}],"skew-x":[{"skew-x":et()}],"skew-y":[{"skew-y":et()}],transform:[{transform:[he,fe,"","none","gpu","cpu"]}],"transform-origin":[{origin:G()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:qe()}],"translate-x":[{"translate-x":qe()}],"translate-y":[{"translate-y":qe()}],"translate-z":[{"translate-z":qe()}],"translate-none":["translate-none"],zoom:[{zoom:[Ln,he,fe]}],accent:[{accent:Z()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:Z()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",he,fe]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scrollbar-thumb-color":[{"scrollbar-thumb":Z()}],"scrollbar-track-color":[{"scrollbar-track":Z()}],"scrollbar-gutter":[{"scrollbar-gutter":["auto","stable","both"]}],"scrollbar-w":[{scrollbar:["auto","thin","none"]}],"scroll-m":[{"scroll-m":U()}],"scroll-mx":[{"scroll-mx":U()}],"scroll-my":[{"scroll-my":U()}],"scroll-ms":[{"scroll-ms":U()}],"scroll-me":[{"scroll-me":U()}],"scroll-mbs":[{"scroll-mbs":U()}],"scroll-mbe":[{"scroll-mbe":U()}],"scroll-mt":[{"scroll-mt":U()}],"scroll-mr":[{"scroll-mr":U()}],"scroll-mb":[{"scroll-mb":U()}],"scroll-ml":[{"scroll-ml":U()}],"scroll-p":[{"scroll-p":U()}],"scroll-px":[{"scroll-px":U()}],"scroll-py":[{"scroll-py":U()}],"scroll-ps":[{"scroll-ps":U()}],"scroll-pe":[{"scroll-pe":U()}],"scroll-pbs":[{"scroll-pbs":U()}],"scroll-pbe":[{"scroll-pbe":U()}],"scroll-pt":[{"scroll-pt":U()}],"scroll-pr":[{"scroll-pr":U()}],"scroll-pb":[{"scroll-pb":U()}],"scroll-pl":[{"scroll-pl":U()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",he,fe]}],fill:[{fill:["none",...Z()]}],"stroke-w":[{stroke:[Ae,zr,Sl,dy]}],stroke:[{stroke:["none",...Z()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{"container-named":["container-type"],overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","inset-bs","inset-be","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-bs","border-w-be","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-bs","border-color-be","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mbs","scroll-mbe","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pbs","scroll-pbe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},postfixLookupClassGroups:["container-type"],orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},fO=GR(dO);function bt(...n){return fO(rx(n))}function hO({delayDuration:n=0,...l}){return p.jsx(gR,{"data-slot":"tooltip-provider",delayDuration:n,...l})}function mO({...n}){return p.jsx(vR,{"data-slot":"tooltip",...n})}function pO({...n}){return p.jsx(yR,{"data-slot":"tooltip-trigger",...n})}function gO({className:n,sideOffset:l=0,children:i,...s}){return p.jsx(bR,{children:p.jsxs(xR,{"data-slot":"tooltip-content",sideOffset:l,className:bt("z-50 w-fit origin-(--radix-tooltip-content-transform-origin) animate-in rounded-md bg-foreground px-3 py-1.5 text-xs text-balance text-background fade-in-0 zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",n),...s,children:[i,p.jsx(SR,{className:"z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px] bg-foreground fill-foreground"})]})})}const Mf=new Set;function vO(n){return Mf.add(n),()=>Mf.delete(n)}function yO(){for(const n of Mf)n()}const Sx=(...n)=>n.filter((l,i,s)=>!!l&&l.trim()!==""&&s.indexOf(l)===i).join(" ").trim();const bO=n=>n.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();const xO=n=>n.replace(/^([A-Z])|[\s-_]+(\w)/g,(l,i,s)=>s?s.toUpperCase():i.toLowerCase());const my=n=>{const l=xO(n);return l.charAt(0).toUpperCase()+l.slice(1)};var Xd={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};const SO=n=>{for(const l in n)if(l.startsWith("aria-")||l==="role"||l==="title")return!0;return!1},wO=y.createContext({}),EO=()=>y.useContext(wO),CO=y.forwardRef(({color:n,size:l,strokeWidth:i,absoluteStrokeWidth:s,className:o="",children:u,iconNode:f,...m},v)=>{const{size:h=24,strokeWidth:x=2,absoluteStrokeWidth:g=!1,color:S="currentColor",className:E=""}=EO()??{},w=s??g?Number(i??x)*24/Number(l??h):i??x;return y.createElement("svg",{ref:v,...Xd,width:l??h??Xd.width,height:l??h??Xd.height,stroke:n??S,strokeWidth:w,className:Sx("lucide",E,o),...!u&&!SO(m)&&{"aria-hidden":"true"},...m},[...f.map(([C,R])=>y.createElement(C,R)),...Array.isArray(u)?u:[u]])});const Ie=(n,l)=>{const i=y.forwardRef(({className:s,...o},u)=>y.createElement(CO,{ref:u,iconNode:l,className:Sx(`lucide-${bO(my(n))}`,`lucide-${n}`,s),...o}));return i.displayName=my(n),i};const TO=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],wx=Ie("check",TO);const MO=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],yh=Ie("chevron-down",MO);const RO=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],OO=Ie("chevron-right",RO);const AO=[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]],_O=Ie("chevron-up",AO);const jO=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],NO=Ie("circle-check",jO);const DO=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]],zO=Ie("clock",DO);const kO=[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]],LO=Ie("copy",kO);const HO=[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]],UO=Ie("download",HO);const BO=[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]],IO=Ie("ellipsis",BO);const qO=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]],VO=Ie("file-text",qO);const GO=[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]],YO=Ie("folder",GO);const FO=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]],PO=Ie("globe",FO);const KO=[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]],QO=Ie("history",KO);const XO=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]],$O=Ie("info",XO);const ZO=[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]],JO=Ie("layout-dashboard",ZO);const WO=[["path",{d:"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71",key:"1cjeqo"}],["path",{d:"M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71",key:"19qd67"}]],eA=Ie("link",WO);const tA=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]],nA=Ie("loader-circle",tA);const aA=[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]],lA=Ie("lock",aA);const iA=[["path",{d:"m16 17 5-5-5-5",key:"1bji2h"}],["path",{d:"M21 12H9",key:"dn1m92"}],["path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4",key:"1uf3rs"}]],rA=Ie("log-out",iA);const sA=[["path",{d:"M4 5h16",key:"1tepv9"}],["path",{d:"M4 12h16",key:"1lakjw"}],["path",{d:"M4 19h16",key:"1djgab"}]],oA=Ie("menu",sA);const cA=[["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"M2.586 16.726A2 2 0 0 1 2 15.312V8.688a2 2 0 0 1 .586-1.414l4.688-4.688A2 2 0 0 1 8.688 2h6.624a2 2 0 0 1 1.414.586l4.688 4.688A2 2 0 0 1 22 8.688v6.624a2 2 0 0 1-.586 1.414l-4.688 4.688a2 2 0 0 1-1.414.586H8.688a2 2 0 0 1-1.414-.586z",key:"2d38gg"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]],uA=Ie("octagon-x",cA);const dA=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]],fA=Ie("plus",dA);const hA=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],Ex=Ie("search",hA);const mA=[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]],pA=Ie("settings",mA);const gA=[["circle",{cx:"18",cy:"5",r:"3",key:"gq8acd"}],["circle",{cx:"6",cy:"12",r:"3",key:"w7nqdw"}],["circle",{cx:"18",cy:"19",r:"3",key:"1xt0gg"}],["line",{x1:"8.59",x2:"15.42",y1:"13.51",y2:"17.49",key:"47mynk"}],["line",{x1:"15.41",x2:"8.59",y1:"6.51",y2:"10.49",key:"1n3mei"}]],vA=Ie("share-2",gA);const yA=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}]],bA=Ie("shield",yA);const xA=[["path",{d:"m7 11 2-2-2-2",key:"1lz0vl"}],["path",{d:"M11 13h4",key:"1p7l4v"}],["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}]],SA=Ie("square-terminal",xA);const wA=[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]],EA=Ie("trash-2",wA);const CA=[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]],Cx=Ie("triangle-alert",CA);const TA=[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]],MA=Ie("upload",TA);const RA=[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]],OA=Ie("users",RA);const AA=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],Tx=Ie("x",AA);function _A(){document.body.classList.toggle("sb-open")}function Mn(){document.body.classList.remove("sb-open")}const jA={alert:Cx,check:wx,chev:OO,chevd:yh,clock:zO,copy:LO,doc:VO,dots:IO,download:UO,folder:YO,dashboard:JO,gear:pA,globe:PO,hist:QO,link:eA,lock:lA,menu:oA,plus:fA,power:rA,search:Ex,share:vA,shield:bA,terminal:SA,trash:EA,upload:MA,users:OA,x:Tx};function vt({name:n}){const l=jA[n];return l?p.jsx(l,{className:"ico","aria-hidden":"true"}):null}function Qr(n){return p.jsxs(p.Fragment,{children:[p.jsx("div",{id:"sb-backdrop",onClick:Mn}),p.jsxs("aside",{id:"sidebar",children:[n.vault,n.projectsNav,n.tree??p.jsx("nav",{id:"tree","aria-label":"Files"}),n.orgBar]}),p.jsxs("main",{id:"main",children:[n.topbar,p.jsx("article",{id:"content",className:n.contentClass??"markdown",ref:n.contentRef,onScroll:n.onContentScroll,children:n.children})]})]})}function gc(n){const{name:l,onHome:i,showSignout:s,search:o}=n;return p.jsxs("header",{id:"vault",children:[p.jsx("span",{id:"vault-badge","aria-hidden":"true",children:"🐻"}),p.jsx("span",{id:"vault-name",className:i?"vault-link":void 0,onClick:i,role:i?"button":void 0,tabIndex:i?0:void 0,onKeyDown:u=>{i&&(u.key==="Enter"||u.key===" ")&&(u.preventDefault(),i())},children:l}),p.jsxs("div",{className:"vault-actions",children:[o&&p.jsxs(mO,{delayDuration:150,children:[p.jsx(pO,{asChild:!0,children:p.jsx("button",{id:"search-btn",className:"icon-btn2","aria-label":"Search",onClick:()=>{yO(),Mn()},children:p.jsx(vt,{name:"search"})})}),p.jsxs(gO,{className:"tipcard",sideOffset:6,children:["Search ",p.jsx("kbd",{children:"⌘K"})]})]}),s&&p.jsx("a",{id:"signout",href:"/auth/logout",title:"Sign out","aria-label":"Sign out",children:p.jsx(vt,{name:"power"})})]})]})}function Xr(n){return p.jsxs("header",{id:"topbar",children:[p.jsx("button",{id:"menu-btn",className:"icon-btn",title:"Menu","aria-label":"Menu",onClick:_A,children:p.jsx(vt,{name:"menu"})}),p.jsx("span",{id:"crumb",children:n.crumb}),p.jsx("span",{id:"meta",children:n.meta}),n.actions]})}function NA(n){if(typeof document>"u")return;let l=document.head||document.getElementsByTagName("head")[0],i=document.createElement("style");i.type="text/css",l.appendChild(i),i.styleSheet?i.styleSheet.cssText=n:i.appendChild(document.createTextNode(n))}const DA=n=>{switch(n){case"success":return LA;case"info":return UA;case"warning":return HA;case"error":return BA;default:return null}},zA=Array(12).fill(0),kA=({visible:n,className:l})=>re.createElement("div",{className:["sonner-loading-wrapper",l].filter(Boolean).join(" "),"data-visible":n},re.createElement("div",{className:"sonner-spinner"},zA.map((i,s)=>re.createElement("div",{className:"sonner-loading-bar",key:`spinner-bar-${s}`})))),LA=re.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},re.createElement("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z",clipRule:"evenodd"})),HA=re.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",height:"20",width:"20"},re.createElement("path",{fillRule:"evenodd",d:"M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z",clipRule:"evenodd"})),UA=re.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},re.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z",clipRule:"evenodd"})),BA=re.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},re.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z",clipRule:"evenodd"})),IA=re.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"},re.createElement("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),re.createElement("line",{x1:"6",y1:"6",x2:"18",y2:"18"})),qA=()=>{const[n,l]=re.useState(document.hidden);return re.useEffect(()=>{const i=()=>{l(document.hidden)};return document.addEventListener("visibilitychange",i),()=>window.removeEventListener("visibilitychange",i)},[]),n};let Rf=1;class VA{constructor(){this.subscribe=l=>(this.subscribers.push(l),()=>{const i=this.subscribers.indexOf(l);this.subscribers.splice(i,1)}),this.publish=l=>{this.subscribers.forEach(i=>i(l))},this.addToast=l=>{this.publish(l),this.toasts=[...this.toasts,l]},this.create=l=>{var i;const{message:s,...o}=l,u=typeof l?.id=="number"||((i=l.id)==null?void 0:i.length)>0?l.id:Rf++,f=this.toasts.find(v=>v.id===u),m=l.dismissible===void 0?!0:l.dismissible;return this.dismissedToasts.has(u)&&this.dismissedToasts.delete(u),f?this.toasts=this.toasts.map(v=>v.id===u?(this.publish({...v,...l,id:u,title:s}),{...v,...l,id:u,dismissible:m,title:s}):v):this.addToast({title:s,...o,dismissible:m,id:u}),u},this.dismiss=l=>(l?(this.dismissedToasts.add(l),requestAnimationFrame(()=>this.subscribers.forEach(i=>i({id:l,dismiss:!0})))):this.toasts.forEach(i=>{this.subscribers.forEach(s=>s({id:i.id,dismiss:!0}))}),l),this.message=(l,i)=>this.create({...i,message:l}),this.error=(l,i)=>this.create({...i,message:l,type:"error"}),this.success=(l,i)=>this.create({...i,type:"success",message:l}),this.info=(l,i)=>this.create({...i,type:"info",message:l}),this.warning=(l,i)=>this.create({...i,type:"warning",message:l}),this.loading=(l,i)=>this.create({...i,type:"loading",message:l}),this.promise=(l,i)=>{if(!i)return;let s;i.loading!==void 0&&(s=this.create({...i,promise:l,type:"loading",message:i.loading,description:typeof i.description!="function"?i.description:void 0}));const o=Promise.resolve(l instanceof Function?l():l);let u=s!==void 0,f;const m=o.then(async h=>{if(f=["resolve",h],re.isValidElement(h))u=!1,this.create({id:s,type:"default",message:h});else if(YA(h)&&!h.ok){u=!1;const g=typeof i.error=="function"?await i.error(`HTTP error! status: ${h.status}`):i.error,S=typeof i.description=="function"?await i.description(`HTTP error! status: ${h.status}`):i.description,w=typeof g=="object"&&!re.isValidElement(g)?g:{message:g};this.create({id:s,type:"error",description:S,...w})}else if(h instanceof Error){u=!1;const g=typeof i.error=="function"?await i.error(h):i.error,S=typeof i.description=="function"?await i.description(h):i.description,w=typeof g=="object"&&!re.isValidElement(g)?g:{message:g};this.create({id:s,type:"error",description:S,...w})}else if(i.success!==void 0){u=!1;const g=typeof i.success=="function"?await i.success(h):i.success,S=typeof i.description=="function"?await i.description(h):i.description,w=typeof g=="object"&&!re.isValidElement(g)?g:{message:g};this.create({id:s,type:"success",description:S,...w})}}).catch(async h=>{if(f=["reject",h],i.error!==void 0){u=!1;const x=typeof i.error=="function"?await i.error(h):i.error,g=typeof i.description=="function"?await i.description(h):i.description,E=typeof x=="object"&&!re.isValidElement(x)?x:{message:x};this.create({id:s,type:"error",description:g,...E})}}).finally(()=>{u&&(this.dismiss(s),s=void 0),i.finally==null||i.finally.call(i)}),v=()=>new Promise((h,x)=>m.then(()=>f[0]==="reject"?x(f[1]):h(f[1])).catch(x));return typeof s!="string"&&typeof s!="number"?{unwrap:v}:Object.assign(s,{unwrap:v})},this.custom=(l,i)=>{const s=i?.id||Rf++;return this.create({jsx:l(s),id:s,...i}),s},this.getActiveToasts=()=>this.toasts.filter(l=>!this.dismissedToasts.has(l.id)),this.subscribers=[],this.toasts=[],this.dismissedToasts=new Set}}const Pt=new VA,GA=(n,l)=>{const i=l?.id||Rf++;return Pt.addToast({title:n,...l,id:i}),i},YA=n=>n&&typeof n=="object"&&"ok"in n&&typeof n.ok=="boolean"&&"status"in n&&typeof n.status=="number",FA=GA,PA=()=>Pt.toasts,KA=()=>Pt.getActiveToasts(),py=Object.assign(FA,{success:Pt.success,info:Pt.info,warning:Pt.warning,error:Pt.error,custom:Pt.custom,message:Pt.message,promise:Pt.promise,dismiss:Pt.dismiss,loading:Pt.loading},{getHistory:PA,getToasts:KA});NA("[data-sonner-toaster][dir=ltr],html[dir=ltr]{--toast-icon-margin-start:-3px;--toast-icon-margin-end:4px;--toast-svg-margin-start:-1px;--toast-svg-margin-end:0px;--toast-button-margin-start:auto;--toast-button-margin-end:0;--toast-close-button-start:0;--toast-close-button-end:unset;--toast-close-button-transform:translate(-35%, -35%)}[data-sonner-toaster][dir=rtl],html[dir=rtl]{--toast-icon-margin-start:4px;--toast-icon-margin-end:-3px;--toast-svg-margin-start:0px;--toast-svg-margin-end:-1px;--toast-button-margin-start:0;--toast-button-margin-end:auto;--toast-close-button-start:unset;--toast-close-button-end:0;--toast-close-button-transform:translate(35%, -35%)}[data-sonner-toaster]{position:fixed;width:var(--width);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--gray1:hsl(0, 0%, 99%);--gray2:hsl(0, 0%, 97.3%);--gray3:hsl(0, 0%, 95.1%);--gray4:hsl(0, 0%, 93%);--gray5:hsl(0, 0%, 90.9%);--gray6:hsl(0, 0%, 88.7%);--gray7:hsl(0, 0%, 85.8%);--gray8:hsl(0, 0%, 78%);--gray9:hsl(0, 0%, 56.1%);--gray10:hsl(0, 0%, 52.3%);--gray11:hsl(0, 0%, 43.5%);--gray12:hsl(0, 0%, 9%);--border-radius:8px;box-sizing:border-box;padding:0;margin:0;list-style:none;outline:0;z-index:999999999;transition:transform .4s ease}@media (hover:none) and (pointer:coarse){[data-sonner-toaster][data-lifted=true]{transform:none}}[data-sonner-toaster][data-x-position=right]{right:var(--offset-right)}[data-sonner-toaster][data-x-position=left]{left:var(--offset-left)}[data-sonner-toaster][data-x-position=center]{left:50%;transform:translateX(-50%)}[data-sonner-toaster][data-y-position=top]{top:var(--offset-top)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--offset-bottom)}[data-sonner-toast]{--y:translateY(100%);--lift-amount:calc(var(--lift) * var(--gap));z-index:var(--z-index);position:absolute;opacity:0;transform:var(--y);touch-action:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;box-sizing:border-box;outline:0;overflow-wrap:anywhere}[data-sonner-toast][data-styled=true]{padding:16px;background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);box-shadow:0 4px 12px rgba(0,0,0,.1);width:var(--width);font-size:13px;display:flex;align-items:center;gap:6px}[data-sonner-toast]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast][data-y-position=top]{top:0;--y:translateY(-100%);--lift:1;--lift-amount:calc(1 * var(--gap))}[data-sonner-toast][data-y-position=bottom]{bottom:0;--y:translateY(100%);--lift:-1;--lift-amount:calc(var(--lift) * var(--gap))}[data-sonner-toast][data-styled=true] [data-description]{font-weight:400;line-height:1.4;color:#3f3f3f}[data-rich-colors=true][data-sonner-toast][data-styled=true] [data-description]{color:inherit}[data-sonner-toaster][data-sonner-theme=dark] [data-description]{color:#e8e8e8}[data-sonner-toast][data-styled=true] [data-title]{font-weight:500;line-height:1.5;color:inherit}[data-sonner-toast][data-styled=true] [data-icon]{display:flex;height:16px;width:16px;position:relative;justify-content:flex-start;align-items:center;flex-shrink:0;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end)}[data-sonner-toast][data-promise=true] [data-icon]>svg{opacity:0;transform:scale(.8);transform-origin:center;animation:sonner-fade-in .3s ease forwards}[data-sonner-toast][data-styled=true] [data-icon]>*{flex-shrink:0}[data-sonner-toast][data-styled=true] [data-icon] svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}[data-sonner-toast][data-styled=true] [data-content]{display:flex;flex-direction:column;gap:2px}[data-sonner-toast][data-styled=true] [data-button]{border-radius:4px;padding-left:8px;padding-right:8px;height:24px;font-size:12px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);border:none;font-weight:500;cursor:pointer;outline:0;display:flex;align-items:center;flex-shrink:0;transition:opacity .4s,box-shadow .2s}[data-sonner-toast][data-styled=true] [data-button]:focus-visible{box-shadow:0 0 0 2px rgba(0,0,0,.4)}[data-sonner-toast][data-styled=true] [data-button]:first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}[data-sonner-toast][data-styled=true] [data-cancel]{color:var(--normal-text);background:rgba(0,0,0,.08)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-styled=true] [data-cancel]{background:rgba(255,255,255,.3)}[data-sonner-toast][data-styled=true] [data-close-button]{position:absolute;left:var(--toast-close-button-start);right:var(--toast-close-button-end);top:0;height:20px;width:20px;display:flex;justify-content:center;align-items:center;padding:0;color:var(--gray12);background:var(--normal-bg);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);border-radius:50%;cursor:pointer;z-index:1;transition:opacity .1s,background .2s,border-color .2s}[data-sonner-toast][data-styled=true] [data-close-button]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast][data-styled=true] [data-disabled=true]{cursor:not-allowed}[data-sonner-toast][data-styled=true]:hover [data-close-button]:hover{background:var(--gray2);border-color:var(--gray5)}[data-sonner-toast][data-swiping=true]::before{content:'';position:absolute;left:-100%;right:-100%;height:100%;z-index:-1}[data-sonner-toast][data-y-position=top][data-swiping=true]::before{bottom:50%;transform:scaleY(3) translateY(50%)}[data-sonner-toast][data-y-position=bottom][data-swiping=true]::before{top:50%;transform:scaleY(3) translateY(-50%)}[data-sonner-toast][data-swiping=false][data-removed=true]::before{content:'';position:absolute;inset:0;transform:scaleY(2)}[data-sonner-toast][data-expanded=true]::after{content:'';position:absolute;left:0;height:calc(var(--gap) + 1px);bottom:100%;width:100%}[data-sonner-toast][data-mounted=true]{--y:translateY(0);opacity:1}[data-sonner-toast][data-expanded=false][data-front=false]{--scale:var(--toasts-before) * 0.05 + 1;--y:translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));height:var(--front-toast-height)}[data-sonner-toast]>*{transition:opacity .4s}[data-sonner-toast][data-x-position=right]{right:0}[data-sonner-toast][data-x-position=left]{left:0}[data-sonner-toast][data-expanded=false][data-front=false][data-styled=true]>*{opacity:0}[data-sonner-toast][data-visible=false]{opacity:0;pointer-events:none}[data-sonner-toast][data-mounted=true][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset)));height:var(--initial-height)}[data-sonner-toast][data-removed=true][data-front=true][data-swipe-out=false]{--y:translateY(calc(var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=false]{--y:translateY(40%);opacity:0;transition:transform .5s,opacity .2s}[data-sonner-toast][data-removed=true][data-front=false]::before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y) translateY(var(--swipe-amount-y,0)) translateX(var(--swipe-amount-x,0));transition:none}[data-sonner-toast][data-swiped=true]{user-select:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation-duration:.2s;animation-timing-function:ease-out;animation-fill-mode:forwards}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=left]{animation-name:swipe-out-left}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=right]{animation-name:swipe-out-right}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=up]{animation-name:swipe-out-up}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=down]{animation-name:swipe-out-down}@keyframes swipe-out-left{from{transform:var(--y) translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translateX(calc(var(--swipe-amount-x) - 100%));opacity:0}}@keyframes swipe-out-right{from{transform:var(--y) translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translateX(calc(var(--swipe-amount-x) + 100%));opacity:0}}@keyframes swipe-out-up{from{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) - 100%));opacity:0}}@keyframes swipe-out-down{from{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) + 100%));opacity:0}}@media (max-width:600px){[data-sonner-toaster]{position:fixed;right:var(--mobile-offset-right);left:var(--mobile-offset-left);width:100%}[data-sonner-toaster][dir=rtl]{left:calc(var(--mobile-offset-left) * -1)}[data-sonner-toaster] [data-sonner-toast]{left:0;right:0;width:calc(100% - var(--mobile-offset-left) * 2)}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset-left)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--mobile-offset-bottom)}[data-sonner-toaster][data-y-position=top]{top:var(--mobile-offset-top)}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset-left);right:var(--mobile-offset-right);transform:none}}[data-sonner-toaster][data-sonner-theme=light]{--normal-bg:#fff;--normal-border:var(--gray4);--normal-text:var(--gray12);--success-bg:hsl(143, 85%, 96%);--success-border:hsl(145, 92%, 87%);--success-text:hsl(140, 100%, 27%);--info-bg:hsl(208, 100%, 97%);--info-border:hsl(221, 91%, 93%);--info-text:hsl(210, 92%, 45%);--warning-bg:hsl(49, 100%, 97%);--warning-border:hsl(49, 91%, 84%);--warning-text:hsl(31, 92%, 45%);--error-bg:hsl(359, 100%, 97%);--error-border:hsl(359, 100%, 94%);--error-text:hsl(360, 100%, 45%)}[data-sonner-toaster][data-sonner-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg:#000;--normal-border:hsl(0, 0%, 20%);--normal-text:var(--gray1)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg:#fff;--normal-border:var(--gray3);--normal-text:var(--gray12)}[data-sonner-toaster][data-sonner-theme=dark]{--normal-bg:#000;--normal-bg-hover:hsl(0, 0%, 12%);--normal-border:hsl(0, 0%, 20%);--normal-border-hover:hsl(0, 0%, 25%);--normal-text:var(--gray1);--success-bg:hsl(150, 100%, 6%);--success-border:hsl(147, 100%, 12%);--success-text:hsl(150, 86%, 65%);--info-bg:hsl(215, 100%, 6%);--info-border:hsl(223, 43%, 17%);--info-text:hsl(216, 87%, 65%);--warning-bg:hsl(64, 100%, 6%);--warning-border:hsl(60, 100%, 9%);--warning-text:hsl(46, 87%, 65%);--error-bg:hsl(358, 76%, 10%);--error-border:hsl(357, 89%, 16%);--error-text:hsl(358, 100%, 81%)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]{background:var(--normal-bg);border-color:var(--normal-border);color:var(--normal-text)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]:hover{background:var(--normal-bg-hover);border-color:var(--normal-border-hover)}[data-rich-colors=true][data-sonner-toast][data-type=success]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size:16px;height:var(--size);width:var(--size);position:absolute;inset:0;z-index:10}.sonner-loading-wrapper[data-visible=false]{transform-origin:center;animation:sonner-fade-out .2s ease forwards}.sonner-spinner{position:relative;top:50%;left:50%;height:var(--size);width:var(--size)}.sonner-loading-bar{animation:sonner-spin 1.2s linear infinite;background:var(--gray11);border-radius:6px;height:8%;left:-10%;position:absolute;top:-3.9%;width:24%}.sonner-loading-bar:first-child{animation-delay:-1.2s;transform:rotate(.0001deg) translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg) translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg) translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg) translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg) translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg) translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg) translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg) translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg) translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg) translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg) translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg) translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}100%{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}100%{opacity:.15}}@media (prefers-reduced-motion){.sonner-loading-bar,[data-sonner-toast],[data-sonner-toast]>*{transition:none!important;animation:none!important}}.sonner-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center;transition:opacity .2s,transform .2s}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8) translate(-50%,-50%)}");function Do(n){return n.label!==void 0}const QA=3,XA="24px",$A="16px",gy=4e3,ZA=356,JA=14,WA=45,e_=200;function Hn(...n){return n.filter(Boolean).join(" ")}function t_(n){const[l,i]=n.split("-"),s=[];return l&&s.push(l),i&&s.push(i),s}const n_=n=>{var l,i,s,o,u,f,m,v,h;const{invert:x,toast:g,unstyled:S,interacting:E,setHeights:w,visibleToasts:C,heights:R,index:M,toasts:j,expanded:N,removeToast:H,defaultRichColors:G,closeButton:I,style:V,cancelButtonStyle:U,actionButtonStyle:ce,className:se="",descriptionClassName:ae="",duration:ue,position:oe,gap:me,expandByDefault:de,classNames:D,icons:Q,closeButtonAriaLabel:W="Close toast"}=n,[ee,Z]=re.useState(null),[A,O]=re.useState(null),[L,P]=re.useState(!1),[F,te]=re.useState(!1),[$,le]=re.useState(!1),[ie,xe]=re.useState(!1),[Me,Oe]=re.useState(!1),[et,qe]=re.useState(0),[kt,ht]=re.useState(0),nt=re.useRef(g.duration||ue||gy),Za=re.useRef(null),jt=re.useRef(null),Ce=M===0,je=M+1<=C,_e=g.type,An=g.dismissible!==!1,xt=g.className||"",Bi=g.descriptionClassName||"",Ja=re.useMemo(()=>R.findIndex(Se=>Se.toastId===g.id)||0,[R,g.id]),os=re.useMemo(()=>{var Se;return(Se=g.closeButton)!=null?Se:I},[g.closeButton,I]),Wa=re.useMemo(()=>g.duration||ue||gy,[g.duration,ue]),Ii=re.useRef(0),Vn=re.useRef(0),cs=re.useRef(0),fa=re.useRef(null),[el,Nt]=oe.split("-"),xn=re.useMemo(()=>R.reduce((Se,Je,mt)=>mt>=Ja?Se:Se+Je.height,0),[R,Ja]),Rt=qA(),xc=g.invert||x,qi=_e==="loading";Vn.current=re.useMemo(()=>Ja*me+xn,[Ja,xn]),re.useEffect(()=>{nt.current=Wa},[Wa]),re.useEffect(()=>{P(!0)},[]),re.useEffect(()=>{const Se=jt.current;if(Se){const Je=Se.getBoundingClientRect().height;return ht(Je),w(mt=>[{toastId:g.id,height:Je,position:g.position},...mt]),()=>w(mt=>mt.filter(Ot=>Ot.toastId!==g.id))}},[w,g.id]),re.useLayoutEffect(()=>{if(!L)return;const Se=jt.current,Je=Se.style.height;Se.style.height="auto";const mt=Se.getBoundingClientRect().height;Se.style.height=Je,ht(mt),w(Ot=>Ot.find(tt=>tt.toastId===g.id)?Ot.map(tt=>tt.toastId===g.id?{...tt,height:mt}:tt):[{toastId:g.id,height:mt,position:g.position},...Ot])},[L,g.title,g.description,w,g.id,g.jsx,g.action,g.cancel]);const _n=re.useCallback(()=>{te(!0),qe(Vn.current),w(Se=>Se.filter(Je=>Je.toastId!==g.id)),setTimeout(()=>{H(g)},e_)},[g,H,w,Vn]);re.useEffect(()=>{if(g.promise&&_e==="loading"||g.duration===1/0||g.type==="loading")return;let Se;return N||E||Rt?(()=>{if(cs.current{g.onAutoClose==null||g.onAutoClose.call(g,g),_n()},nt.current)),()=>clearTimeout(Se)},[N,E,g,_e,Rt,_n]),re.useEffect(()=>{g.delete&&(_n(),g.onDismiss==null||g.onDismiss.call(g,g))},[_n,g.delete]);function Dl(){var Se;if(Q?.loading){var Je;return re.createElement("div",{className:Hn(D?.loader,g==null||(Je=g.classNames)==null?void 0:Je.loader,"sonner-loader"),"data-visible":_e==="loading"},Q.loading)}return re.createElement(kA,{className:Hn(D?.loader,g==null||(Se=g.classNames)==null?void 0:Se.loader),visible:_e==="loading"})}const zl=g.icon||Q?.[_e]||DA(_e);var tl,jn;return re.createElement("li",{tabIndex:0,ref:jt,className:Hn(se,xt,D?.toast,g==null||(l=g.classNames)==null?void 0:l.toast,D?.default,D?.[_e],g==null||(i=g.classNames)==null?void 0:i[_e]),"data-sonner-toast":"","data-rich-colors":(tl=g.richColors)!=null?tl:G,"data-styled":!(g.jsx||g.unstyled||S),"data-mounted":L,"data-promise":!!g.promise,"data-swiped":Me,"data-removed":F,"data-visible":je,"data-y-position":el,"data-x-position":Nt,"data-index":M,"data-front":Ce,"data-swiping":$,"data-dismissible":An,"data-type":_e,"data-invert":xc,"data-swipe-out":ie,"data-swipe-direction":A,"data-expanded":!!(N||de&&L),"data-testid":g.testId,style:{"--index":M,"--toasts-before":M,"--z-index":j.length-M,"--offset":`${F?et:Vn.current}px`,"--initial-height":de?"auto":`${kt}px`,...V,...g.style},onDragEnd:()=>{le(!1),Z(null),fa.current=null},onPointerDown:Se=>{Se.button!==2&&(qi||!An||(Za.current=new Date,qe(Vn.current),Se.target.setPointerCapture(Se.pointerId),Se.target.tagName!=="BUTTON"&&(le(!0),fa.current={x:Se.clientX,y:Se.clientY})))},onPointerUp:()=>{var Se,Je,mt;if(ie||!An)return;fa.current=null;const Ot=Number(((Se=jt.current)==null?void 0:Se.style.getPropertyValue("--swipe-amount-x").replace("px",""))||0),ha=Number(((Je=jt.current)==null?void 0:Je.style.getPropertyValue("--swipe-amount-y").replace("px",""))||0),tt=new Date().getTime()-((mt=Za.current)==null?void 0:mt.getTime()),Lt=ee==="x"?Ot:ha,nl=Math.abs(Lt)/tt;if(Math.abs(Lt)>=WA||nl>.11){qe(Vn.current),g.onDismiss==null||g.onDismiss.call(g,g),O(ee==="x"?Ot>0?"right":"left":ha>0?"down":"up"),_n(),xe(!0);return}else{var Ht,Ut;(Ht=jt.current)==null||Ht.style.setProperty("--swipe-amount-x","0px"),(Ut=jt.current)==null||Ut.style.setProperty("--swipe-amount-y","0px")}Oe(!1),le(!1),Z(null)},onPointerMove:Se=>{var Je,mt,Ot;if(!fa.current||!An||((Je=window.getSelection())==null?void 0:Je.toString().length)>0)return;const tt=Se.clientY-fa.current.y,Lt=Se.clientX-fa.current.x;var nl;const Ht=(nl=n.swipeDirections)!=null?nl:t_(oe);!ee&&(Math.abs(Lt)>1||Math.abs(tt)>1)&&Z(Math.abs(Lt)>Math.abs(tt)?"x":"y");let Ut={x:0,y:0};const kl=Sn=>1/(1.5+Math.abs(Sn)/20);if(ee==="y"){if(Ht.includes("top")||Ht.includes("bottom"))if(Ht.includes("top")&&tt<0||Ht.includes("bottom")&&tt>0)Ut.y=tt;else{const Sn=tt*kl(tt);Ut.y=Math.abs(Sn)0)Ut.x=Lt;else{const Sn=Lt*kl(Lt);Ut.x=Math.abs(Sn)0||Math.abs(Ut.y)>0)&&Oe(!0),(mt=jt.current)==null||mt.style.setProperty("--swipe-amount-x",`${Ut.x}px`),(Ot=jt.current)==null||Ot.style.setProperty("--swipe-amount-y",`${Ut.y}px`)}},os&&!g.jsx&&_e!=="loading"?re.createElement("button",{"aria-label":W,"data-disabled":qi,"data-close-button":!0,onClick:qi||!An?()=>{}:()=>{_n(),g.onDismiss==null||g.onDismiss.call(g,g)},className:Hn(D?.closeButton,g==null||(s=g.classNames)==null?void 0:s.closeButton)},(jn=Q?.close)!=null?jn:IA):null,(_e||g.icon||g.promise)&&g.icon!==null&&(Q?.[_e]!==null||g.icon)?re.createElement("div",{"data-icon":"",className:Hn(D?.icon,g==null||(o=g.classNames)==null?void 0:o.icon)},g.promise||g.type==="loading"&&!g.icon?g.icon||Dl():null,g.type!=="loading"?zl:null):null,re.createElement("div",{"data-content":"",className:Hn(D?.content,g==null||(u=g.classNames)==null?void 0:u.content)},re.createElement("div",{"data-title":"",className:Hn(D?.title,g==null||(f=g.classNames)==null?void 0:f.title)},g.jsx?g.jsx:typeof g.title=="function"?g.title():g.title),g.description?re.createElement("div",{"data-description":"",className:Hn(ae,Bi,D?.description,g==null||(m=g.classNames)==null?void 0:m.description)},typeof g.description=="function"?g.description():g.description):null),re.isValidElement(g.cancel)?g.cancel:g.cancel&&Do(g.cancel)?re.createElement("button",{"data-button":!0,"data-cancel":!0,style:g.cancelButtonStyle||U,onClick:Se=>{Do(g.cancel)&&An&&(g.cancel.onClick==null||g.cancel.onClick.call(g.cancel,Se),_n())},className:Hn(D?.cancelButton,g==null||(v=g.classNames)==null?void 0:v.cancelButton)},g.cancel.label):null,re.isValidElement(g.action)?g.action:g.action&&Do(g.action)?re.createElement("button",{"data-button":!0,"data-action":!0,style:g.actionButtonStyle||ce,onClick:Se=>{Do(g.action)&&(g.action.onClick==null||g.action.onClick.call(g.action,Se),!Se.defaultPrevented&&_n())},className:Hn(D?.actionButton,g==null||(h=g.classNames)==null?void 0:h.actionButton)},g.action.label):null)};function vy(){if(typeof window>"u"||typeof document>"u")return"ltr";const n=document.documentElement.getAttribute("dir");return n==="auto"||!n?window.getComputedStyle(document.documentElement).direction:n}function a_(n,l){const i={};return[n,l].forEach((s,o)=>{const u=o===1,f=u?"--mobile-offset":"--offset",m=u?$A:XA;function v(h){["top","right","bottom","left"].forEach(x=>{i[`${f}-${x}`]=typeof h=="number"?`${h}px`:h})}typeof s=="number"||typeof s=="string"?v(s):typeof s=="object"?["top","right","bottom","left"].forEach(h=>{s[h]===void 0?i[`${f}-${h}`]=m:i[`${f}-${h}`]=typeof s[h]=="number"?`${s[h]}px`:s[h]}):v(m)}),i}const l_=re.forwardRef(function(l,i){const{id:s,invert:o,position:u="bottom-right",hotkey:f=["altKey","KeyT"],expand:m,closeButton:v,className:h,offset:x,mobileOffset:g,theme:S="light",richColors:E,duration:w,style:C,visibleToasts:R=QA,toastOptions:M,dir:j=vy(),gap:N=JA,icons:H,containerAriaLabel:G="Notifications"}=l,[I,V]=re.useState([]),U=re.useMemo(()=>s?I.filter(L=>L.toasterId===s):I.filter(L=>!L.toasterId),[I,s]),ce=re.useMemo(()=>Array.from(new Set([u].concat(U.filter(L=>L.position).map(L=>L.position)))),[U,u]),[se,ae]=re.useState([]),[ue,oe]=re.useState(!1),[me,de]=re.useState(!1),[D,Q]=re.useState(S!=="system"?S:typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"),W=re.useRef(null),ee=f.join("+").replace(/Key/g,"").replace(/Digit/g,""),Z=re.useRef(null),A=re.useRef(!1),O=re.useCallback(L=>{V(P=>{var F;return(F=P.find(te=>te.id===L.id))!=null&&F.delete||Pt.dismiss(L.id),P.filter(({id:te})=>te!==L.id)})},[]);return re.useEffect(()=>Pt.subscribe(L=>{if(L.dismiss){requestAnimationFrame(()=>{V(P=>P.map(F=>F.id===L.id?{...F,delete:!0}:F))});return}setTimeout(()=>{eE.flushSync(()=>{V(P=>{const F=P.findIndex(te=>te.id===L.id);return F!==-1?[...P.slice(0,F),{...P[F],...L},...P.slice(F+1)]:[L,...P]})})})}),[I]),re.useEffect(()=>{if(S!=="system"){Q(S);return}if(S==="system"&&(window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?Q("dark"):Q("light")),typeof window>"u")return;const L=window.matchMedia("(prefers-color-scheme: dark)");try{L.addEventListener("change",({matches:P})=>{Q(P?"dark":"light")})}catch{L.addListener(({matches:F})=>{try{Q(F?"dark":"light")}catch(te){console.error(te)}})}},[S]),re.useEffect(()=>{I.length<=1&&oe(!1)},[I]),re.useEffect(()=>{const L=P=>{var F;if(f.every(le=>P[le]||P.code===le)){var $;oe(!0),($=W.current)==null||$.focus()}P.code==="Escape"&&(document.activeElement===W.current||(F=W.current)!=null&&F.contains(document.activeElement))&&oe(!1)};return document.addEventListener("keydown",L),()=>document.removeEventListener("keydown",L)},[f]),re.useEffect(()=>{if(W.current)return()=>{Z.current&&(Z.current.focus({preventScroll:!0}),Z.current=null,A.current=!1)}},[W.current]),re.createElement("section",{ref:i,"aria-label":`${G} ${ee}`,tabIndex:-1,"aria-live":"polite","aria-relevant":"additions text","aria-atomic":"false",suppressHydrationWarning:!0},ce.map((L,P)=>{var F;const[te,$]=L.split("-");return U.length?re.createElement("ol",{key:L,dir:j==="auto"?vy():j,tabIndex:-1,ref:W,className:h,"data-sonner-toaster":!0,"data-sonner-theme":D,"data-y-position":te,"data-x-position":$,style:{"--front-toast-height":`${((F=se[0])==null?void 0:F.height)||0}px`,"--width":`${ZA}px`,"--gap":`${N}px`,...C,...a_(x,g)},onBlur:le=>{A.current&&!le.currentTarget.contains(le.relatedTarget)&&(A.current=!1,Z.current&&(Z.current.focus({preventScroll:!0}),Z.current=null))},onFocus:le=>{le.target instanceof HTMLElement&&le.target.dataset.dismissible==="false"||A.current||(A.current=!0,Z.current=le.relatedTarget)},onMouseEnter:()=>oe(!0),onMouseMove:()=>oe(!0),onMouseLeave:()=>{me||oe(!1)},onDragEnd:()=>oe(!1),onPointerDown:le=>{le.target instanceof HTMLElement&&le.target.dataset.dismissible==="false"||de(!0)},onPointerUp:()=>de(!1)},U.filter(le=>!le.position&&P===0||le.position===L).map((le,ie)=>{var xe,Me;return re.createElement(n_,{key:le.id,icons:H,index:ie,toast:le,defaultRichColors:E,duration:(xe=M?.duration)!=null?xe:w,className:M?.className,descriptionClassName:M?.descriptionClassName,invert:o,visibleToasts:R,closeButton:(Me=M?.closeButton)!=null?Me:v,interacting:me,position:L,style:M?.style,unstyled:M?.unstyled,classNames:M?.classNames,cancelButtonStyle:M?.cancelButtonStyle,actionButtonStyle:M?.actionButtonStyle,closeButtonAriaLabel:M?.closeButtonAriaLabel,removeToast:O,toasts:U.filter(Oe=>Oe.position==le.position),heights:se.filter(Oe=>Oe.position==le.position),setHeights:ae,expandByDefault:m,gap:N,expanded:ue,swipeDirections:l.swipeDirections})})):null}))}),i_=({...n})=>p.jsx(l_,{theme:"dark",className:"toaster group",icons:{success:p.jsx(NO,{className:"size-4"}),info:p.jsx($O,{className:"size-4"}),warning:p.jsx(Cx,{className:"size-4"}),error:p.jsx(uA,{className:"size-4"}),loading:p.jsx(nA,{className:"size-4 animate-spin"})},style:{"--normal-bg":"var(--popover)","--normal-text":"var(--popover-foreground)","--normal-border":"var(--border)","--border-radius":"var(--radius)"},...n});function He(n,l=!1){l?py.error(n):py(n)}function r_(){return p.jsx(i_,{position:"bottom-center"})}const yy=n=>typeof n=="boolean"?`${n}`:n===0?"0":n,by=rx,s_=(n,l)=>i=>{var s;if(l?.variants==null)return by(n,i?.class,i?.className);const{variants:o,defaultVariants:u}=l,f=Object.keys(o).map(h=>{const x=i?.[h],g=u?.[h];if(x===null)return null;const S=yy(x)||yy(g);return o[h][S]}),m=i&&Object.entries(i).reduce((h,x)=>{let[g,S]=x;return S===void 0||(h[g]=S),h},{}),v=l==null||(s=l.compoundVariants)===null||s===void 0?void 0:s.reduce((h,x)=>{let{class:g,className:S,...E}=x;return Object.entries(E).every(w=>{let[C,R]=w;return Array.isArray(R)?R.includes({...u,...m}[C]):{...u,...m}[C]===R})?[...h,g,S]:h},[]);return by(n,f,v,i?.class,i?.className)},o_=s_("inline-flex shrink-0 items-center justify-center gap-2 rounded-md text-sm font-medium whitespace-nowrap transition-all outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",primary:"pbtn",danger:"danger-btn",subtle:"ai-btn",toolbar:"btn",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",xs:"h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-8 gap-1.5 rounded-md px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-xs":"size-6 rounded-md [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function rn({className:n,variant:l="default",size:i="default",asChild:s=!1,...o}){const u=s?tE:"button";return p.jsx(u,{"data-slot":"button","data-variant":l,"data-size":i,className:bt(o_({variant:l,size:i,className:n})),...o})}function bh({...n}){return p.jsx(qf,{"data-slot":"dialog",...n})}function c_({...n}){return p.jsx(Gf,{"data-slot":"dialog-portal",...n})}function u_({className:n,...l}){return p.jsx(Yf,{"data-slot":"dialog-overlay",className:bt("fixed inset-0 z-50 bg-black/50 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:animate-in data-[state=open]:fade-in-0",n),...l})}function xh({className:n,children:l,showCloseButton:i=!0,...s}){return p.jsxs(c_,{"data-slot":"dialog-portal",children:[p.jsx(u_,{}),p.jsxs(Ff,{"data-slot":"dialog-content",className:bt("fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border bg-background p-6 shadow-lg duration-200 outline-none data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 sm:max-w-lg",n),...s,children:[l,i&&p.jsxs(m0,{"data-slot":"dialog-close",className:"absolute top-4 right-4 rounded-xs opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",children:[p.jsx(Tx,{}),p.jsx("span",{className:"sr-only",children:"Close"})]})]})]})}function vc({className:n,...l}){return p.jsx(d0,{"data-slot":"dialog-title",className:bt("text-lg leading-none font-semibold",n),...l})}let Mx=null,Uo=[];function rs(n){Mx=n,Uo.forEach(l=>l())}function Rx(n,l,i="",s="OK"){return new Promise(o=>rs({kind:"prompt",title:n,label:l,value:i,okLabel:s,resolve:o}))}function zo(n,l,i="Confirm",s=!1){return new Promise(o=>rs({kind:"confirm",title:n,message:l,confirmLabel:i,danger:s,resolve:o}))}function d_(){const n=y.useSyncExternalStore(i=>(Uo.push(i),()=>{Uo=Uo.filter(s=>s!==i)}),()=>Mx);if(!n)return null;const l=()=>{rs(null),n.kind==="prompt"?n.resolve(null):n.resolve(!1)};return p.jsx(bh,{open:!0,onOpenChange:i=>!i&&l(),children:p.jsx(xh,{className:"modal",showCloseButton:!1,children:n.kind==="prompt"?p.jsx(f_,{m:n}):p.jsx(h_,{m:n})})})}function f_({m:n}){const l=y.useRef(null),i=o=>{rs(null),n.resolve(o)},s=()=>i(l.current.value.trim()||null);return p.jsxs(p.Fragment,{children:[p.jsx(vc,{asChild:!0,children:p.jsx("h3",{children:n.title})}),p.jsx("label",{className:"modal-label",children:n.label}),p.jsx("input",{className:"modal-input",type:"text",autoComplete:"off",defaultValue:n.value,ref:l,autoFocus:!0,onFocus:o=>o.currentTarget.select(),onKeyDown:o=>o.key==="Enter"&&s()}),p.jsxs("div",{className:"modal-actions",children:[p.jsx(rn,{variant:"subtle",onClick:()=>i(null),children:"Cancel"}),p.jsx(rn,{variant:"primary",onClick:s,children:n.okLabel})]})]})}function h_({m:n}){const l=i=>{rs(null),n.resolve(i)};return p.jsxs(p.Fragment,{children:[p.jsx(vc,{asChild:!0,children:p.jsx("h3",{children:n.title})}),p.jsx("p",{className:"modal-msg",children:n.message}),p.jsxs("div",{className:"modal-actions",children:[p.jsx(rn,{variant:"subtle",onClick:()=>l(!1),children:"Cancel"}),p.jsx(rn,{variant:n.danger?"danger":"primary",onClick:()=>l(!0),autoFocus:!0,children:n.confirmLabel})]})]})}function m_(n){return $t({queryKey:["projects"],queryFn:()=>sn("/api/projects"),enabled:n,refetchInterval:3e4,select:l=>l.projects||[]})}function p_(n){return $t({queryKey:["orgs"],queryFn:()=>sn("/api/orgs"),enabled:n,select:l=>l.orgs||[]})}function Ox(n){return $t({queryKey:["admin","pending"],queryFn:()=>sn("/api/admin/pending"),enabled:n,select:l=>l.pending||[]})}function Ax(){const n=Wr();return()=>Promise.all([n.invalidateQueries({queryKey:["projects"]}),n.invalidateQueries({queryKey:["orgs"]})]).then(()=>{})}function _x(n){return n.split("/").map(encodeURIComponent).join("/")}function xy(n){return n.split("/").map(decodeURIComponent).join("/")}const g_=new Set(["insights","history","install","settings"]);function jx(n,l){const i=n.replace(/^\/+/,"");if(l!=="hub")return{path:i?xy(i):""};const s=i.indexOf("/");if(s===-1)return{project:i,path:""};const o={project:i.slice(0,s),path:xy(i.slice(s+1))},u=o.path.indexOf("/"),f=u===-1?o.path:o.path.slice(0,u);return g_.has(f)&&(o.view=f,o.viewTarget=u===-1?"":o.path.slice(u+1).replace(/\/+$/,""),o.path=""),o}function v_(n,l){const i=_x(n);return l?"/"+l+(i?"/"+i:""):"/"+i}function Oi(n,l,i){let s=(l?"/"+l:"")+"/"+n;return i&&(s+="/"+_x(i.replace(/\/+$/,""))),s}let Sh="POP";const Of=new Set;function Nx(){for(const n of Of)n()}window.addEventListener("popstate",()=>{Sh="POP",Nx()});function Qt(n,l){const i=location.pathname+location.search;!l?.replace&&i===n||(history[l?.replace?"replaceState":"pushState"](null,"",n),Sh=l?.replace?"REPLACE":"PUSH",Nx())}function wh(){return y.useSyncExternalStore(n=>(Of.add(n),()=>{Of.delete(n)}),()=>location.pathname)}function y_(){return Sh}function b_({to:n}){return y.useEffect(()=>{Qt(n,{replace:!0})},[n]),null}const x_=/\.(md|markdown)$/i,S_=/\.(png|jpe?g|gif|svg|webp|ico|bmp|avif)$/i,w_=/\.html?$/i,E_=/\.(txt|log|json|ya?ml|toml|csv|go|py|js|ts|jsx|tsx|sh|bash|zsh|rb|rs|c|h|cpp|java|kt|swift|sql|css|xml|ini|conf|env|mod|sum|jsonl)$/i;function Dx(n){if(n<1024)return n+" B";const l=["KB","MB","GB","TB"];let i=-1;do n/=1024,i++;while(n>=1024&&io.invalidateQueries({queryKey:["orgs"]}),h=()=>o.invalidateQueries({queryKey:["invites",n.id]}),x=()=>o.invalidateQueries({queryKey:["orgShares",n.id]}),{data:g}=$t({queryKey:["invites",n.id],queryFn:()=>sn(`/api/orgs/${n.id}/invites`),enabled:u,select:w=>w.invites||[]}),{data:S}=$t({queryKey:["orgShares",n.id],queryFn:()=>sn(`/api/orgs/${n.id}/shares`),enabled:u,select:w=>w.shares||[]}),E=l.filter(w=>w.org===n.id);return p.jsxs("div",{className:"admin",children:[p.jsx("h1",{id:"org-title",children:n.name+(u?"":" · member")}),u&&p.jsxs("div",{className:"admin-row",children:[p.jsx("input",{id:"org-rename",type:"text",value:f,onChange:w=>m(w.target.value)}),p.jsx("button",{className:"pbtn",id:"org-rename-btn",onClick:async()=>{try{await Ba("PATCH","/api/orgs/"+n.id,{name:f.trim()}),He("Renamed."),v()}catch(w){He(w.message,!0)}},children:"Rename org"})]}),p.jsx("h3",{children:"Members"}),p.jsx("div",{className:"admin-list",children:n.members.map(w=>{const C=!!i&&w.email.toLowerCase()===i.toLowerCase();return p.jsxs("div",{className:"admin-item",children:[p.jsx("span",{className:"ai-main",children:w.email+(C?" (you)":"")}),u&&!C?p.jsxs(p.Fragment,{children:[p.jsxs("select",{value:w.role,onChange:async R=>{try{await Ba("PATCH",`/api/orgs/${n.id}/members/${encodeURIComponent(w.email)}`,{role:R.target.value}),He("Role updated.")}catch(M){He(M.message,!0)}v()},children:[p.jsx("option",{value:"owner",children:"owner"}),p.jsx("option",{value:"member",children:"member"})]}),p.jsx("button",{className:"ai-del",onClick:async()=>{if(await zo("Remove member",`Remove ${w.email} from ${n.name}?`,"Remove",!0))try{await Ba("DELETE",`/api/orgs/${n.id}/members/${encodeURIComponent(w.email)}`),He("Removed."),v()}catch(R){He(R.message,!0)}},children:"Remove"})]}):p.jsx("span",{className:"ai-tag",children:w.role})]},w.email)})}),u&&p.jsxs(p.Fragment,{children:[p.jsx("h3",{children:"Projects"}),p.jsxs("div",{className:"admin-list",children:[E.length===0&&p.jsx("div",{className:"admin-empty",children:"No projects yet."}),E.map(w=>p.jsxs("div",{className:"admin-item",children:[p.jsx("span",{className:"ai-main",children:w.name}),p.jsx("button",{className:"ai-btn",onClick:async()=>{const C=await Rx("Rename project","New name",w.name,"Rename");if(!(!C||C===w.name))try{await Ba("PATCH","/api/projects/"+w.id,{name:C}),He("Renamed."),await s()}catch(R){He(R.message,!0)}},children:"Rename"}),p.jsx("button",{className:"ai-del",onClick:async()=>{if(await zo("Delete project",`Delete “${w.name}”? Its files stay in storage, but it's removed from the hub.`,"Delete",!0))try{await Ba("DELETE","/api/projects/"+w.id),He(`Deleted “${w.name}”.`),await s()}catch(C){He(C.message,!0)}},children:"Delete"})]},w.id))]}),p.jsxs("div",{className:"admin-h",children:[p.jsx("h3",{children:"Invite links"}),p.jsx("button",{className:"pbtn",onClick:async()=>{try{const w=await ji(`/api/orgs/${n.id}/invites`),C=await $r(w.url);He(C?"Invite link copied to clipboard.":"Invite created — copy it from the list below."),h()}catch(w){He(w.message,!0)}},children:"New invite"})]}),p.jsxs("div",{className:"admin-list",children:[g&&g.length===0&&p.jsx("div",{className:"admin-empty",children:"No active invite links."}),(g||[]).map(w=>p.jsxs("div",{className:"admin-item",children:[p.jsx("span",{className:"ai-main mono",style:{cursor:"pointer"},title:"Copy",onClick:()=>$r(w.url).then(C=>He(C?"Copied.":"Select and copy the link.")),children:w.url}),p.jsx("span",{className:"ai-tag",children:(w.creator?"by "+w.creator+" · ":"")+(w.uses?w.uses+" joined · ":"unused · ")+"expires "+new Date(w.expires).toLocaleDateString()}),p.jsx("button",{className:"ai-del",onClick:async()=>{if(await zo("Revoke invite","Revoke this invite link? Anyone still holding it won't be able to join.","Revoke",!0))try{await Ba("DELETE",`/api/orgs/${n.id}/invites/${w.token}`),He("Revoked."),h()}catch(C){He(C.message,!0)}},children:"Revoke"})]},w.token))]}),p.jsx("h3",{children:"Public share links"}),p.jsxs("div",{className:"admin-list",children:[S&&S.length===0&&p.jsx("div",{className:"admin-empty",children:"No public shares."}),(S||[]).map(w=>p.jsxs("div",{className:"admin-item",children:[p.jsx("span",{className:"ai-main mono",style:{cursor:"pointer"},title:w.url,onClick:()=>window.open(w.url,"_blank"),children:w.path}),p.jsx("span",{className:"ai-tag",children:(w.project_name||"")+(w.creator?" · by "+w.creator:"")+(w.created?" · "+new Date(w.created).toLocaleDateString():"")}),p.jsx("button",{className:"ai-del",onClick:async()=>{if(await zo("Revoke share link",`Revoke the public link to “${w.path}”? Anyone with the URL will lose access.`,"Revoke",!0))try{await Ba("DELETE","/api/shares/"+w.token),He("Share revoked."),x()}catch(C){He(C.message,!0)}},children:"Revoke"})]},w.token))]})]})]})}function T_(){const n=Wr(),{data:l,error:i}=$t({queryKey:["admin","policy"],queryFn:()=>sn("/api/admin/policy")}),{data:s}=Ox(!0),[o,u]=y.useState(!1),[f,m]=y.useState(!1);if(y.useEffect(()=>{l&&(u(l.require_verification&&l.mailer),m(l.require_approval))},[l]),y.useEffect(()=>{i&&He(i.message,!0)},[i]),!l)return null;const v=async(h,x,g)=>{try{await ji(`/api/admin/pending/${h}/${x}`),He((x==="approve"?"Approved ":"Denied ")+g),n.invalidateQueries({queryKey:["admin","pending"]})}catch(S){He(S.message,!0)}};return p.jsxs("div",{className:"admin",children:[p.jsx("h1",{children:"Signup & access"}),p.jsx("p",{className:"admin-sub",children:"Who can create an account on this hub, and how new accounts are vetted."}),p.jsx("h3",{children:"New-account vetting"}),p.jsxs("div",{className:"admin-list",children:[p.jsx(Sy,{label:"Require email verification",desc:l.mailer?"New accounts must click an emailed link before they can sign in — proves they control the address.":"Configure SMTP on the server (auth.smtp) to enable email verification.",checked:o,disabled:!l.mailer,onChange:u}),p.jsx(Sy,{label:"Require admin approval",desc:"New accounts wait for a hub admin to approve them before they gain access.",checked:f,onChange:m})]}),p.jsx("button",{className:"pbtn",style:{marginTop:14},onClick:async()=>{try{await ji("/api/admin/policy",{require_verification:o,require_approval:f}),He("Signup policy saved."),n.invalidateQueries({queryKey:["admin","policy"]})}catch(h){He(h.message,!0)}},children:"Save policy"}),p.jsx("h3",{children:"Who can sign up"}),p.jsxs("div",{className:"admin-list",children:[p.jsxs("div",{className:"admin-item",children:[p.jsx("span",{className:"ai-main",children:"Allowed email domains"}),p.jsx("span",{className:"ai-tag",children:l.allowed_domains&&l.allowed_domains.length?l.allowed_domains.map(h=>"@"+h).join(", "):"any"})]}),p.jsxs("div",{className:"admin-item",children:[p.jsx("span",{className:"ai-main",children:"Self-signup"}),p.jsx("span",{className:"ai-tag",children:l.allow_signup?"open":"invite-only"})]}),p.jsxs("div",{className:"admin-item",children:[p.jsx("span",{className:"ai-main",children:"Hub admins"}),p.jsx("span",{className:"ai-tag",children:l.admins&&l.admins.length?l.admins.join(", "):"none"})]})]}),p.jsx("p",{className:"admin-sub",children:"Domains and admins are set in the server config file (they can't be widened from the browser)."}),p.jsx("h3",{children:"Pending signups"}),p.jsxs("div",{className:"admin-list",children:[(!s||s.length===0)&&p.jsx("div",{className:"admin-empty",children:"No one is waiting for approval."}),(s||[]).map(h=>p.jsxs("div",{className:"admin-item",children:[p.jsx("span",{className:"ai-main",children:(h.name?h.name+" · ":"")+h.email}),p.jsx("button",{className:"pbtn",onClick:()=>v(h.id,"approve",h.email),children:"Approve"}),p.jsx("button",{className:"ai-del",onClick:()=>v(h.id,"deny",h.email),children:"Deny"})]},h.id))]})]})}function Sy({label:n,desc:l,checked:i,disabled:s,onChange:o}){return p.jsxs("label",{className:"admin-item toggle",style:s?{opacity:.55}:void 0,children:[p.jsxs("span",{className:"ai-main",children:[p.jsx("div",{className:"tg-label",children:n}),p.jsx("div",{className:"tg-desc",children:l})]}),p.jsx("input",{type:"checkbox",checked:i,disabled:s,onChange:u=>o(u.target.checked)})]})}function M_({...n}){return p.jsx(Sb,{"data-slot":"select",...n})}function R_({...n}){return p.jsx(Tb,{"data-slot":"select-value",...n})}function O_({className:n,size:l="default",children:i,...s}){return p.jsxs(Eb,{"data-slot":"select-trigger","data-size":l,className:bt("flex w-fit items-center justify-between gap-2 rounded-md border border-input bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 data-[placeholder]:text-muted-foreground data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 dark:bg-input/30 dark:hover:bg-input/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground",n),...s,children:[i,p.jsx(Mb,{asChild:!0,children:p.jsx(yh,{className:"size-4 opacity-50"})})]})}function A_({className:n,children:l,position:i="item-aligned",align:s="center",...o}){return p.jsx(Ob,{children:p.jsxs(Ab,{"data-slot":"select-content",className:bt("relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border bg-popover text-popover-foreground shadow-md data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",i==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",n),position:i,align:s,...o,children:[p.jsx(j_,{}),p.jsx(zb,{className:bt("p-1",i==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:l}),p.jsx(N_,{})]})})}function __({className:n,children:l,...i}){return p.jsxs(Ub,{"data-slot":"select-item",className:bt("relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",n),...i,children:[p.jsx("span",{"data-slot":"select-item-indicator",className:"absolute right-2 flex size-3.5 items-center justify-center",children:p.jsx(qb,{children:p.jsx(wx,{className:"size-4"})})}),p.jsx(Bb,{children:l})]})}function j_({className:n,...l}){return p.jsx(Vb,{"data-slot":"select-scroll-up-button",className:bt("flex cursor-default items-center justify-center py-1",n),...l,children:p.jsx(_O,{className:"size-4"})})}function N_({className:n,...l}){return p.jsx(Gb,{"data-slot":"select-scroll-down-button",className:bt("flex cursor-default items-center justify-center py-1",n),...l,children:p.jsx(yh,{className:"size-4"})})}const wy=["#5b8def","#f5a623","#4cc38a","#e0679b","#8b7bf0","#3ec8c8","#e6934a"];function kx(n){let l=0;for(const i of n)l=l*31+i.charCodeAt(0)>>>0;return wy[l%wy.length]}function Ey({projects:n,currentId:l,menu:i}){const s=Ax(),o=async()=>{const u=await Rx("New project","Project name","","Create");if(u)try{const f=await ji("/api/projects",{name:u});await s(),Qt("/"+f.project.id),He(`Created “${f.project.name}”.`)}catch(f){He("Could not create the project: "+f.message,!0)}};return p.jsxs("nav",{id:"projects","aria-label":"Projects",children:[p.jsxs("div",{className:"nav-head",children:[p.jsx("span",{children:"Projects"}),p.jsx("button",{className:"nav-add",title:"New project",onClick:o,children:"+"})]}),p.jsx("div",{className:"proj-row",children:p.jsxs(M_,{value:l||"",onValueChange:u=>{u&&u!==l&&(Qt("/"+u),Mn())},children:[p.jsxs(O_,{id:"project-select","aria-label":"Switch project",className:"proj-trigger",children:[l&&p.jsx("span",{className:"proj-mark","aria-hidden":"true",style:{background:kx(n.find(u=>u.id===l)?.name||"")}}),p.jsx(R_,{placeholder:"Select a project"})]}),p.jsx(A_,{className:"proj-menu",children:n.map(u=>p.jsx(__,{value:u.id,children:u.name},u.id))})]})}),i&&p.jsx("ul",{className:"nav-menu","aria-label":"Project pages",children:[["dashboard","Dashboard","dashboard",i.onDashboard],["install","Installation","terminal",i.onInstall],["history","History","hist",i.onHistory],["settings","Settings","gear",i.onSettings]].map(([u,f,m,v])=>p.jsx("li",{children:p.jsxs("div",{id:"nav-"+u,className:"row"+(i.active===u?" active":""),role:"button",tabIndex:0,onClick:v,onKeyDown:h=>{(h.key==="Enter"||h.key===" ")&&(h.preventDefault(),v())},children:[p.jsx(vt,{name:m}),p.jsx("span",{className:"label",children:f})]})},u))})]})}function D_({...n}){return p.jsx(CM,{"data-slot":"dropdown-menu",...n})}function z_({...n}){return p.jsx(TM,{"data-slot":"dropdown-menu-trigger",...n})}function k_({className:n,sideOffset:l=4,...i}){return p.jsx(MM,{children:p.jsx(RM,{"data-slot":"dropdown-menu-content",sideOffset:l,className:bt("z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",n),...i})})}function $d({className:n,inset:l,variant:i="default",...s}){return p.jsx(AM,{"data-slot":"dropdown-menu-item","data-inset":l,"data-variant":i,className:bt("relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground data-[variant=destructive]:*:[svg]:text-destructive!",n),...s})}function Zd({className:n,inset:l,...i}){return p.jsx(OM,{"data-slot":"dropdown-menu-label","data-inset":l,className:bt("px-2 py-1.5 text-sm font-medium data-[inset]:pl-8",n),...i})}function L_({me:n,org:l,admin:i,onOrgSettings:s}){const o=n.name||n.email;return p.jsx("footer",{id:"accountbar",children:p.jsxs(D_,{modal:!1,children:[p.jsx(z_,{asChild:!0,children:p.jsxs("button",{id:"account-btn","aria-label":"Account menu",children:[p.jsx("span",{className:"avatar",style:{background:kx(n.email)},"aria-hidden":"true",children:(o.trim()[0]||"?").toUpperCase()}),p.jsxs("span",{className:"acct",children:[p.jsx("b",{children:o}),n.name&&p.jsx("small",{children:n.email})]}),p.jsx(vt,{name:"chev"})]})}),p.jsxs(k_,{id:"account-menu",side:"top",align:"start",sideOffset:6,className:"acct-menu",children:[l&&p.jsxs(p.Fragment,{children:[p.jsx(Zd,{className:"menu-sec",children:"Organization"}),p.jsxs($d,{id:"menu-org-settings",onSelect:()=>s(l),children:[p.jsx(vt,{name:"gear"}),p.jsxs("span",{children:[p.jsx("b",{children:l.name})," Settings"]})]})]}),i&&p.jsxs(p.Fragment,{children:[p.jsx(Zd,{className:"menu-sec",children:"Hub"}),p.jsxs($d,{id:"menu-hub-admin",onSelect:i.onClick,children:[p.jsx(vt,{name:"shield"}),p.jsxs("span",{children:["Signup & access",i.pending?` · ${i.pending}`:""]})]})]}),p.jsx(Zd,{className:"menu-sec",children:"Account"}),p.jsx($d,{asChild:!0,children:p.jsxs("a",{id:"signout",href:"/auth/logout",children:[p.jsx(vt,{name:"power"}),p.jsx("span",{children:"Log out"})]})})]})]})})}function H_({project:n,org:l}){return p.jsxs("div",{className:"project-settings",children:[p.jsx("h2",{children:n.name}),p.jsxs("dl",{className:"ps-facts",children:[p.jsx("dt",{children:"Project id"}),p.jsx("dd",{children:p.jsx("code",{children:n.id})}),l&&p.jsxs(p.Fragment,{children:[p.jsx("dt",{children:"Workspace"}),p.jsx("dd",{children:l.name})]}),n.created&&p.jsxs(p.Fragment,{children:[p.jsx("dt",{children:"Created"}),p.jsx("dd",{children:new Date(n.created).toLocaleDateString()})]})]})]})}const Jd=[{key:"claude",label:"Claude Code & Cowork"},{key:"hermes",label:"Hermes",hook:"hermes",note:"Registers BearDrive's hooks in Hermes's config: pull before every turn, push after edits with a session note, and report file reads to Insights."},{key:"codex",label:"Codex",hook:"codex",note:"Registers hooks in .codex/hooks.json.",extra:"Run /hooks inside Codex once to trust the project's .codex layer — after that every turn pulls, edits push automatically, and reads are reported to Insights."}];function U_(n,l){const i=window.location.origin,s=l.id;if(n.key==="claude")return[{title:"Add the BearDrive plugin",desc:"One time, in any Claude Code session. The plugin ships the beardrive skill, the /beardrive commands, and turn-boundary sync hooks — and Claude Cowork shares the same plugins, so installing it once covers both.",code:`/plugin marketplace add runbear-io/beardrive -/plugin install beardrive@beardrive`},{title:"Set up this project conversationally",desc:"In a Claude Code or Cowork session in the folder where you want the files, run:",code:"/beardrive:install connect to "+i+", project "+s,extra:"Claude installs the CLI, signs this machine in, mounts the project, and registers the sync hooks — pull the latest before every turn, push after edits (stamped with the session that made them), and report file reads to Insights. It asks before anything it changes."}];const o=(l.name||"project").toLowerCase().replace(/[^a-z0-9._-]+/g,"-")||"project";return[{title:"Install the BearDrive CLI",desc:"One static binary. Homebrew on macOS and Linux; releases and `go install` also work.",code:"brew install runbear-io/tap/beardrive"},{title:"Sign in to this hub",desc:"Opens the browser once and stores a device token on this machine — the synced folder itself never holds credentials.",code:"bdrive login "+i},{title:"Mount the project into a local folder",desc:"Run it where you want the files. An existing folder works too — contents merge, and re-running init later (or after moving the folder) just resumes.",code:"mkdir -p ~/"+o+" && cd ~/"+o+` -bdrive init --project `+s},{title:"Connect "+n.label,desc:n.note,code:"bdrive hooks install --agent "+n.hook,extra:n.extra}]}function B_(){try{return localStorage.getItem("bdrive-guide-agent")||"claude"}catch{return"claude"}}function Lx({project:n}){const[l,i]=y.useState(B_),s=Jd.find(o=>o.key===l)||Jd[0];return p.jsxs("div",{className:"guide",children:[p.jsx("h1",{className:"in-title",children:n.name}),p.jsx("p",{className:"dl-sub",children:"Mount this project as a folder on any machine and connect your coding agent: files sync both ways in the background, every change is journaled with who made it, and agent reads feed Insights."}),p.jsx("div",{className:"gd-tabs",children:Jd.map(o=>p.jsx("button",{className:"gd-tab"+(o.key===s.key?" active":""),"data-key":o.key,onClick:()=>{i(o.key);try{localStorage.setItem("bdrive-guide-agent",o.key)}catch{}},children:o.label},o.key))}),p.jsxs("div",{className:"gd-body",children:[U_(s,n).map((o,u)=>p.jsxs("div",{className:"gd-step",children:[p.jsxs("div",{className:"gd-step-head",children:[p.jsx("span",{className:"gd-num",children:u+1}),p.jsx("span",{className:"gd-step-title",children:o.title})]}),o.desc&&p.jsx("p",{className:"gd-desc",children:o.desc}),o.code&&p.jsx(I_,{code:o.code}),o.extra&&p.jsx("p",{className:"gd-desc gd-extra",children:o.extra})]},u)),p.jsx("p",{className:"gd-done",children:"That's it — the folder now syncs on its own. Every agent turn starts from the latest state, edits appear here (and on every teammate's mount) within seconds, and what your agents read shows up in Insights."})]})]})}function I_({code:n}){const[l,i]=y.useState("Copy");return p.jsxs("pre",{className:"gd-code",children:[p.jsx("code",{children:n}),p.jsx("button",{className:"gd-copy",onClick:async()=>{i(await $r(n)?"Copied":"Copy failed"),setTimeout(()=>i("Copy"),1400)},children:l})]})}function q_({authEnabled:n,onCreate:l}){const i=y.useRef(null),s=y.useRef(null),o=()=>{const u=i.current.value.trim(),f=u.match(/join\/([0-9a-f]+)/)||u.match(/^([0-9a-f]{8,})$/);if(!f){He("That doesn't look like an invite link.",!0);return}location.href="/join/"+f[1]};return p.jsxs("div",{className:"onboard",children:[p.jsx("h1",{children:"Welcome to BearDrive"}),p.jsx("p",{children:"You're signed in, but you're not part of any project yet."}),n&&p.jsxs("div",{className:"ob-card",children:[p.jsx("h3",{children:"Have an invite link?"}),p.jsx("p",{children:"A teammate can send you a join link. Paste it here:"}),p.jsxs("div",{className:"ob-row",children:[p.jsx("input",{id:"ob-invite",type:"text",placeholder:"https://…/join/…",autoComplete:"off",ref:i}),p.jsx(rn,{id:"ob-join",variant:"primary",onClick:o,children:"Join"})]})]}),p.jsxs("div",{className:"ob-card",children:[p.jsx("h3",{children:"Or start a new project"}),p.jsx("p",{children:"Create a shared space for your team's files."}),p.jsxs("div",{className:"ob-row",children:[p.jsx("input",{id:"ob-name",type:"text",placeholder:"Project name, e.g. wiki",autoComplete:"off",ref:s}),p.jsx(rn,{id:"ob-create",variant:"primary",onClick:()=>l(s.current.value.trim()),children:"Create"})]})]})]})}function V_(n,l=!0){const i=$t({queryKey:["tree",n],queryFn:()=>sn(n+"tree"),enabled:l,refetchInterval:15e3}),s=y.useMemo(()=>{const o=[],u=new Map,f=m=>{for(const v of m.children||[])v.dir?(u.set(v.path,v),f(v)):o.push(v)};return i.data&&f(i.data),{flatFiles:o,dirIndex:u}},[i.data]);return{tree:i.data,...s,loaded:!!i.data}}function G_(n,l){return $t({queryKey:["heat",n],queryFn:()=>sn(n+"heat?days=30"),enabled:l,staleTime:6e4,refetchInterval:6e4}).data?.entries??null}function Y_(n,l,i){return $t({queryKey:["history",n,"prefix",l,20],queryFn:()=>sn(n+"history?prefix="+encodeURIComponent(l)+"&n=20"),enabled:i,staleTime:15e3}).data?.entries??null}function Cy(n,l,i){if(!n)return null;if(!i)return n[l]||null;const s={human:0,agent:0,share:0};for(const[o,u]of Object.entries(n))o.startsWith(l+"/")&&(s.human+=u.human||0,s.agent+=u.agent||0,s.share+=u.share||0);return s.human||s.agent||s.share?s:null}function Zr(n){return(n.human||0)+(n.agent||0)+(n.share||0)}function Bo(n){const l=Zr(n);if(!l)return"";let i=l+(l===1?" read":" reads");return n.agent&&(i+=" ("+n.agent+" agent)"),i}function F_(n){const l=Zr(n);return l?l<3?1:l<10?2:l<30?3:4:0}function P_(n,l,i){const s=new Array(n);return new Proxy(s,{get(o,u,f){if(typeof u=="string"){const m=u.charCodeAt(0);if(m>=48&&m<=57){const v=+u;if(Number.isInteger(v)&&v>=0&&vs[x]!==h))&&(s=m,o=l(...m),i?.onChange&&!(u&&i.skipInitialOnChange)&&i.onChange(o),u=!1),o}return f.updateDeps=m=>{s=m},f}function Ty(n,l){if(n===void 0)throw new Error("Unexpected undefined");return n}const K_=(n,l)=>Math.abs(n-l)<1.01,Q_=(n,l,i)=>{let s;return function(...o){n.clearTimeout(s),s=n.setTimeout(()=>l.apply(this,o),i)}};let kr;const Wd=()=>{if(kr!==void 0)return kr;if(typeof navigator>"u")return kr=!1;if(/iP(hone|od|ad)/.test(navigator.userAgent))return kr=!0;const n=navigator.maxTouchPoints;return kr=navigator.platform==="MacIntel"&&n!==void 0&&n>0},My=n=>{const{offsetWidth:l,offsetHeight:i}=n;return{width:l,height:i}},X_=n=>n,$_=n=>{const l=Math.max(n.startIndex-n.overscan,0),s=Math.min(n.endIndex+n.overscan,n.count-1)-l+1,o=new Array(s);for(let u=0;u{const i=n.scrollElement;if(!i)return;const s=n.targetWindow;if(!s)return;const o=f=>{const{width:m,height:v}=f;l({width:Math.round(m),height:Math.round(v)})};if(o(My(i)),!s.ResizeObserver)return()=>{};const u=new s.ResizeObserver(f=>{const m=()=>{const v=f[0];if(v?.borderBoxSize){const h=v.borderBoxSize[0];if(h){o({width:h.inlineSize,height:h.blockSize});return}}o(My(i))};n.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(m):m()});return u.observe(i,{box:"border-box"}),()=>{u.unobserve(i)}},$o={passive:!0},J_=typeof window>"u"?!0:"onscrollend"in window,W_=(n,l,i)=>{const s=n.scrollElement;if(!s)return;const o=n.targetWindow;if(!o)return;const u=n.options.useScrollendEvent&&J_;let f=0;const m=u?null:Q_(o,()=>l(f,!1),n.options.isScrollingResetDelay),v=g=>()=>{f=i(s),m?.(),l(f,g)},h=v(!0),x=v(!1);return s.addEventListener("scroll",h,$o),u&&s.addEventListener("scrollend",x,$o),()=>{s.removeEventListener("scroll",h),u&&s.removeEventListener("scrollend",x)}},ej=(n,l)=>W_(n,l,i=>{const{horizontal:s,isRtl:o}=n.options;return s?i.scrollLeft*(o&&-1||1):i.scrollTop}),tj=(n,l,i)=>{if(i.options.useCachedMeasurements){const s=i.indexFromElement(n),o=i.options.getItemKey(s);return i.itemSizeCache.get(o)??i.options.estimateSize(s)}if(l?.borderBoxSize){const s=l.borderBoxSize[0];if(s)return Math.round(s[i.options.horizontal?"inlineSize":"blockSize"])}if(!l){const s=i.indexFromElement(n),o=i.options.getItemKey(s),u=i.itemSizeCache.get(o);if(u!==void 0)return u}return n[i.options.horizontal?"offsetWidth":"offsetHeight"]},nj=(n,{adjustments:l=0,behavior:i},s)=>{var o,u;(u=(o=s.scrollElement)==null?void 0:o.scrollTo)==null||u.call(o,{[s.options.horizontal?"left":"top"]:n+l,behavior:i})},aj=nj;class lj{constructor(l){this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.isScrolling=!1,this.scrollState=null,this.measurementsCache=[],this._flatMeasurements=null,this.itemSizeCache=new Map,this.itemSizeCacheVersion=0,this.laneAssignments=new Map,this.pendingMin=null,this.prevLanes=void 0,this.lanesChangedFlag=!1,this.lanesSettling=!1,this.pendingScrollAnchor=null,this.scrollRect=null,this.scrollOffset=null,this.scrollDirection=null,this.scrollAdjustments=0,this._iosDeferredAdjustment=0,this._iosTouching=!1,this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._intendedScrollOffset=null,this.elementsCache=new Map,this.now=()=>{var i,s,o;return((o=(s=(i=this.targetWindow)==null?void 0:i.performance)==null?void 0:s.now)==null?void 0:o.call(s))??Date.now()},this.observer=(()=>{let i=null;const s=()=>i||(!this.targetWindow||!this.targetWindow.ResizeObserver?null:i=new this.targetWindow.ResizeObserver(o=>{o.forEach(u=>{const f=()=>{const m=u.target,v=this.indexFromElement(m);if(!m.isConnected){this.observer.unobserve(m);for(const[h,x]of this.elementsCache)if(x===m){this.elementsCache.delete(h);break}return}this.shouldMeasureDuringScroll(v)&&this.resizeItem(v,this.options.measureElement(m,u,this))};this.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(f):f()})}));return{disconnect:()=>{var o;(o=s())==null||o.disconnect(),i=null},observe:o=>{var u;return(u=s())==null?void 0:u.observe(o,{box:"border-box"})},unobserve:o=>{var u;return(u=s())==null?void 0:u.unobserve(o)}}})(),this.range=null,this.setOptions=i=>{var s,o;const u={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:X_,rangeExtractor:$_,onChange:()=>{},measureElement:tj,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:"data-index",initialMeasurementsCache:[],lanes:1,anchorTo:"start",followOnAppend:!1,scrollEndThreshold:1,isScrollingResetDelay:150,enabled:!0,isRtl:!1,useScrollendEvent:!1,useAnimationFrameWithResizeObserver:!1,laneAssignmentMode:"estimate",useCachedMeasurements:!1};for(const S in i){const E=i[S];E!==void 0&&(u[S]=E)}const f=this.options;let m=null,v=null,h=!1;if(f!==void 0&&f.enabled&&u.enabled&&u.anchorTo==="end"&&this.scrollElement!==null){const S=f.count,E=u.count,w=this.getMeasurements(),C=S>0?((s=w[0])==null?void 0:s.key)??f.getItemKey(0):null,R=S>0?((o=w[S-1])==null?void 0:o.key)??f.getItemKey(S-1):null;if(E!==S||S>0&&E>0&&(u.getItemKey(0)!==C||u.getItemKey(E-1)!==R)){h=!0;const N=S>0?this.getVirtualItemForOffset(this.getScrollOffset())??w[0]:null;N&&(m=[N.key,this.getScrollOffset()-N.start]);const H=u.followOnAppend===!0?"auto":u.followOnAppend||null;H&&E>S&&this.isAtEnd(f.scrollEndThreshold)&&(S===0||u.getItemKey(E-1)!==R)&&(v=H)}}this.options=u,h&&(this.pendingMin=0,this.itemSizeCacheVersion++);let x=!1,g=0;if(m&&this.scrollOffset!==null){const[S,E]=m,w=this.getMeasurements(),{count:C,getItemKey:R}=this.options;let M=0;for(;M{var s,o;(o=(s=this.options).onChange)==null||o.call(s,this,i)},this.maybeNotify=Ci(()=>(this.calculateRange(),[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]),i=>{this.notify(i)},{key:!1,debug:()=>this.options.debug,initialDeps:[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]}),this.cleanup=()=>{this.unsubs.filter(Boolean).forEach(i=>i()),this.unsubs=[],this.observer.disconnect(),this.rafId!=null&&this.targetWindow&&(this.targetWindow.cancelAnimationFrame(this.rafId),this.rafId=null),this.scrollState=null,this._iosDeferredAdjustment=0,this._iosTouching=!1,this._iosJustTouchEnded=!1,this.scrollElement=null,this.targetWindow=null},this._didMount=()=>()=>{this.cleanup()},this._willUpdate=()=>{var i;const s=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==s){if(this.cleanup(),!s){this.maybeNotify();return}if(this.scrollElement=s,this.scrollElement&&"ownerDocument"in this.scrollElement?this.targetWindow=this.scrollElement.ownerDocument.defaultView:this.targetWindow=((i=this.scrollElement)==null?void 0:i.window)??null,this.elementsCache.forEach(u=>{this.observer.observe(u)}),this.unsubs.push(this.options.observeElementRect(this,u=>{this.scrollRect=u,this.maybeNotify()})),this.unsubs.push(this.options.observeElementOffset(this,(u,f)=>{if(f&&this._intendedScrollOffset===null&&u===this.scrollOffset)return;this._intendedScrollOffset!==null&&Math.abs(u-this._intendedScrollOffset)<1.5&&(u=this._intendedScrollOffset),this._intendedScrollOffset=null,this.scrollAdjustments=0;const m=this.getScrollOffset();this.scrollDirection=f?m===u?this.scrollDirection:m{this._iosTouching=!0,this._iosJustTouchEnded=!1,this._iosTouchEndTimerId!==null&&this.targetWindow!=null&&(this.targetWindow.clearTimeout(this._iosTouchEndTimerId),this._iosTouchEndTimerId=null)},m=()=>{this._iosTouching=!1,!(!Wd()||this.targetWindow==null)&&(this._iosJustTouchEnded=!0,this._iosTouchEndTimerId=this.targetWindow.setTimeout(()=>{this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._flushIosDeferredIfReady()},150))};u.addEventListener("touchstart",f,$o),u.addEventListener("touchend",m,$o),this.unsubs.push(()=>{u.removeEventListener("touchstart",f),u.removeEventListener("touchend",m),this._iosTouchEndTimerId!==null&&this.targetWindow!=null&&(this.targetWindow.clearTimeout(this._iosTouchEndTimerId),this._iosTouchEndTimerId=null)})}this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0})}const o=this.pendingScrollAnchor;if(this.pendingScrollAnchor=null,o&&this.scrollElement&&this.options.enabled){const[u,f,m,v]=o;u!==null&&!m&&(Wd()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded)?v!==0&&(this._iosDeferredAdjustment+=v):this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0})),m&&this.scrollToEnd({behavior:m})}},this._flushIosDeferredIfReady=()=>{if(this._iosDeferredAdjustment===0||this.isScrolling||this._iosTouching||this._iosJustTouchEnded)return;const i=this.getScrollOffset(),s=this.getMaxScrollOffset();if(i<0||i>s)return;const o=this._iosDeferredAdjustment;this._iosDeferredAdjustment=0,this._scrollToOffset(i,{adjustments:this.scrollAdjustments+=o,behavior:void 0})},this.rafId=null,this.getSize=()=>this.options.enabled?(this.scrollRect=this.scrollRect??this.options.initialRect,this.scrollRect[this.options.horizontal?"width":"height"]):(this.scrollRect=null,0),this.getScrollOffset=()=>this.options.enabled?(this.scrollOffset=this.scrollOffset??(typeof this.options.initialOffset=="function"?this.options.initialOffset():this.options.initialOffset),this.scrollOffset):(this.scrollOffset=null,0),this.getMeasurementOptions=Ci(()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled,this.options.lanes,this.options.laneAssignmentMode,this.options.gap],(i,s,o,u,f,m,v,h)=>(this.prevLanes!==void 0&&this.prevLanes!==m&&(this.lanesChangedFlag=!0),this.prevLanes=m,this.pendingMin=null,{count:i,paddingStart:s,scrollMargin:o,getItemKey:u,enabled:f,lanes:m,laneAssignmentMode:v,gap:h}),{key:!1}),this.getMeasurements=Ci(()=>[this.getMeasurementOptions(),this.itemSizeCacheVersion],({count:i,paddingStart:s,scrollMargin:o,getItemKey:u,enabled:f,lanes:m,laneAssignmentMode:v,gap:h},x)=>{const g=this.itemSizeCache;if(!f)return this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),[];if(this.laneAssignments.size>i)for(const M of this.laneAssignments.keys())M>=i&&this.laneAssignments.delete(M);this.lanesChangedFlag&&(this.lanesChangedFlag=!1,this.lanesSettling=!0,this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),this.pendingMin=null),this.measurementsCache.length===0&&!this.lanesSettling&&(this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach(M=>{this.itemSizeCache.set(M.key,M.size)}));const S=this.lanesSettling?0:this.pendingMin??0;if(this.pendingMin=null,this.lanesSettling&&this.measurementsCache.length===i&&(this.lanesSettling=!1),m===1){const M=i*2;let j=this._flatMeasurements;if(!j||j.length0&&G.set(j.subarray(0,S*2)),j=G,this._flatMeasurements=j}let N;if(S===0)N=s+o;else{const G=S-1;N=j[G*2]+j[G*2+1]+h}for(let G=S;G1){H=N;const se=w[H],ae=se!==void 0?E[se]:void 0;G=ae?ae.end+h:s+o}else if(R===m){let se=0,ae=C[0],ue=w[0];for(let oe=1;oethis.options.debug}),this.calculateRange=Ci(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(i,s,o,u)=>i.length===0||s===0?(this.range=null,null):(this.range=rj(i,s,o,u,u===1&&this._flatMeasurements!=null?this._flatMeasurements:null),this.range),{key:!1,debug:()=>this.options.debug}),this.getVirtualIndexes=Ci(()=>{let i=null,s=null;const o=this.calculateRange();return o&&(i=o.startIndex,s=o.endIndex),this.maybeNotify.updateDeps([this.isScrolling,i,s]),[this.options.rangeExtractor,this.options.overscan,this.options.count,i,s]},(i,s,o,u,f)=>u===null||f===null?[]:i({startIndex:u,endIndex:f,overscan:s,count:o}),{key:!1,debug:()=>this.options.debug}),this.indexFromElement=i=>{const s=this.options.indexAttribute,o=i.getAttribute(s);return o?parseInt(o,10):(console.warn(`Missing attribute name '${s}={index}' on measured element.`),-1)},this.shouldMeasureDuringScroll=i=>{var s;if(!this.scrollState||this.scrollState.behavior!=="smooth")return!0;const o=this.scrollState.index??((s=this.getVirtualItemForOffset(this.scrollState.lastTargetOffset))==null?void 0:s.index);if(o!==void 0&&this.range){const u=Math.max(this.options.overscan,Math.ceil((this.range.endIndex-this.range.startIndex)/2)),f=Math.max(0,o-u),m=Math.min(this.options.count-1,o+u);return i>=f&&i<=m}return!0},this.measureElement=i=>{if(!i){this.elementsCache.forEach((f,m)=>{f.isConnected||(this.observer.unobserve(f),this.elementsCache.delete(m))});return}const s=this.indexFromElement(i),o=this.options.getItemKey(s),u=this.elementsCache.get(o);u!==i&&(u&&this.observer.unobserve(u),this.observer.observe(i),this.elementsCache.set(o,i)),(!this.isScrolling||this.scrollState)&&this.shouldMeasureDuringScroll(s)&&this.resizeItem(s,this.options.measureElement(i,void 0,this))},this.resizeItem=(i,s)=>{var o,u;if(i<0||i>=this.options.count)return;let f,m,v;const h=this._flatMeasurements;if(this.options.lanes===1&&h!==null)v=this.options.getItemKey(i),m=h[i*2],f=h[i*2+1];else{const S=this.measurementsCache[i];if(!S)return;v=S.key,m=S.start,f=S.size}const x=this.itemSizeCache.get(v)??f,g=s-x;if(g!==0){const S=this.options.anchorTo==="end"&&((o=this.scrollState)==null?void 0:o.behavior)!=="smooth"&&this.getVirtualDistanceFromEnd()<=this.options.scrollEndThreshold,E=S?this.getTotalSize():0,w=((u=this.scrollState)==null?void 0:u.behavior)!=="smooth"&&(this.shouldAdjustScrollPositionOnItemSizeChange!==void 0?this.shouldAdjustScrollPositionOnItemSizeChange(this.measurementsCache[i]??{index:i,key:v,start:m,size:f,end:m+f,lane:0},g,this):m[this.getVirtualIndexes(),this.getMeasurements()],(i,s)=>{const o=[];for(let u=0,f=i.length;uthis.options.debug}),this.getVirtualItemForOffset=i=>{const s=this.getMeasurements();if(s.length===0)return;const o=this._flatMeasurements,u=this.options.lanes===1&&o!=null,f=Hx(0,s.length-1,u?m=>o[m*2]:m=>Ty(s[m]).start,i);return Ty(s[f])},this.getMaxScrollOffset=()=>{if(!this.scrollElement)return 0;if("scrollHeight"in this.scrollElement)return this.options.horizontal?this.scrollElement.scrollWidth-this.scrollElement.clientWidth:this.scrollElement.scrollHeight-this.scrollElement.clientHeight;{const i=this.scrollElement.document.documentElement;return this.options.horizontal?i.scrollWidth-this.scrollElement.innerWidth:i.scrollHeight-this.scrollElement.innerHeight}},this.getVirtualDistanceFromEnd=()=>Math.max(this.getTotalSize()-this.getSize()-this.getScrollOffset(),0),this.getDistanceFromEnd=()=>Math.max(this.getMaxScrollOffset()-this.getScrollOffset(),0),this.isAtEnd=(i=this.options.scrollEndThreshold)=>this.getDistanceFromEnd()<=i,this.getOffsetForAlignment=(i,s,o=0)=>{if(!this.scrollElement)return 0;const u=this.getSize(),f=this.getScrollOffset();s==="auto"&&(s=i>=f+u?"end":"start"),s==="center"?i+=(o-u)/2:s==="end"&&(i-=u);const m=this.getMaxScrollOffset();return Math.max(Math.min(m,i),0)},this.getOffsetForIndex=(i,s="auto")=>{i=Math.max(0,Math.min(i,this.options.count-1));const o=this.getSize(),u=this.getScrollOffset(),f=this.measurementsCache[i];if(!f)return;if(s==="auto")if(f.end>=u+o-this.options.scrollPaddingEnd)s="end";else if(f.start<=u+this.options.scrollPaddingStart)s="start";else return[u,s];if(s==="end"&&i===this.options.count-1)return[this.getMaxScrollOffset(),s];const m=s==="end"?f.end+this.options.scrollPaddingEnd:f.start-this.options.scrollPaddingStart;return[this.getOffsetForAlignment(m,s,f.size),s]},this.scrollToOffset=(i,{align:s="start",behavior:o="auto"}={})=>{const u=this.getOffsetForAlignment(i,s),f=this.now();this.scrollState={index:null,align:s,behavior:o,startedAt:f,lastTargetOffset:u,stableFrames:0},this._scrollToOffset(u,{adjustments:void 0,behavior:o}),this.scheduleScrollReconcile()},this.scrollToIndex=(i,{align:s="auto",behavior:o="auto"}={})=>{i=Math.max(0,Math.min(i,this.options.count-1));const u=this.getOffsetForIndex(i,s);if(!u)return;const[f,m]=u,v=this.now();this.scrollState={index:i,align:m,behavior:o,startedAt:v,lastTargetOffset:f,stableFrames:0},this._scrollToOffset(f,{adjustments:void 0,behavior:o}),this.scheduleScrollReconcile()},this.scrollBy=(i,{behavior:s="auto"}={})=>{const o=this.getScrollOffset()+i,u=this.now();this.scrollState={index:null,align:"start",behavior:s,startedAt:u,lastTargetOffset:o,stableFrames:0},this._scrollToOffset(o,{adjustments:void 0,behavior:s}),this.scheduleScrollReconcile()},this.scrollToEnd=({behavior:i="auto"}={})=>{if(this.options.count>0){this.scrollToIndex(this.options.count-1,{align:"end",behavior:i});return}this.scrollToOffset(Math.max(this.getTotalSize()-this.getSize(),0),{behavior:i})},this.getTotalSize=()=>{var i;const s=this.getMeasurements();let o;if(s.length===0)o=this.options.paddingStart;else if(this.options.lanes===1){const u=s.length-1,f=this._flatMeasurements;f!=null?o=f[u*2]+f[u*2+1]:o=((i=s[u])==null?void 0:i.end)??0}else{const u=Array(this.options.lanes).fill(null);let f=s.length-1;for(;f>=0&&u.some(m=>m===null);){const m=s[f];u[m.lane]===null&&(u[m.lane]=m.end),f--}o=Math.max(...u.filter(m=>m!==null))}return Math.max(o-this.options.scrollMargin+this.options.paddingEnd,0)},this.takeSnapshot=()=>{const i=[];if(this.itemSizeCache.size===0)return i;const s=this.getMeasurements();for(const o of s)o&&this.itemSizeCache.has(o.key)&&i.push({index:o.index,key:o.key,start:o.start,size:o.size,end:o.end,lane:o.lane});return i},this._scrollToOffset=(i,{adjustments:s,behavior:o})=>{this._intendedScrollOffset=i+(s??0),this.options.scrollToFn(i,{behavior:o,adjustments:s},this)},this.measure=()=>{this.pendingMin=null,this.itemSizeCache.clear(),this.laneAssignments.clear(),this.itemSizeCacheVersion++,this.notify(!1)},this.setOptions(l)}applyScrollAdjustment(l,i){l!==0&&(Wd()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded)?this._iosDeferredAdjustment+=l:(this._scrollToOffset(this.getScrollOffset(),{adjustments:this.scrollAdjustments+=l,behavior:i}),this.scrollOffset!==null&&(this.scrollOffset+=this.scrollAdjustments,this.scrollAdjustments=0)))}scheduleScrollReconcile(){if(!this.targetWindow){this.scrollState=null;return}this.rafId==null&&(this.rafId=this.targetWindow.requestAnimationFrame(()=>{this.rafId=null,this.reconcileScroll()}))}reconcileScroll(){if(!this.scrollState||!this.scrollElement)return;if(this.now()-this.scrollState.startedAt>5e3){this.scrollState=null;return}const s=this.scrollState.index!=null?this.getOffsetForIndex(this.scrollState.index,this.scrollState.align):void 0,o=s?s[0]:this.scrollState.lastTargetOffset,u=1,f=o!==this.scrollState.lastTargetOffset;if(!f&&K_(o,this.getScrollOffset())){if(this.scrollState.stableFrames++,this.scrollState.stableFrames>=u){this.getScrollOffset()!==o&&this._scrollToOffset(o,{adjustments:void 0,behavior:"auto"}),this.scrollState=null;return}}else if(this.scrollState.stableFrames=0,f){const m=this.getSize()||600,v=Math.abs(o-this.getScrollOffset()),h=this.scrollState.behavior==="smooth"&&v>m;this.scrollState.lastTargetOffset=o,h||(this.scrollState.behavior="auto"),this._scrollToOffset(o,{adjustments:void 0,behavior:h?"smooth":"auto"})}this.scheduleScrollReconcile()}}const Hx=(n,l,i,s)=>{for(;n<=l;){const o=(n+l)/2|0,u=i(o);if(us)l=o-1;else return o}return n>0?n-1:0};function ij(n,l,i){let s=0;for(;s<=l;){const o=(s+l)/2|0,u=n[o*2];if(ui)l=o-1;else return o}return s>0?s-1:0}function rj(n,l,i,s,o){const u=n.length-1;if(n.length<=s)return{startIndex:0,endIndex:u};if(s===1&&o!==null){const h=ij(o,u,i);let x=h;const g=i+l;for(;xn[h].start,i),v=m;if(s===1)for(;v1){const h=Array(s).fill(0);for(;vg=0&&x.some(g=>g>=i);){const g=n[m];x[g.lane]=g.start,m--}m=Math.max(0,m-m%s),v=Math.min(u,v+(s-1-v%s))}return{startIndex:m,endIndex:v}}const ef=typeof document<"u"?y.useLayoutEffect:y.useEffect;function sj({useFlushSync:n=!0,directDomUpdates:l=!1,directDomUpdatesMode:i="transform",...s}){const o=y.useReducer(h=>h+1,0)[1],u=y.useRef({enabled:l,mode:i,container:null,lastSize:null,lastPositions:new WeakMap,prevRange:null});u.current.enabled=l,u.current.mode=i;const f=h=>{const x=u.current;if(!x.enabled||!x.container)return;const g=h.getTotalSize();if(g!==x.lastSize){x.lastSize=g;const M=h.options.horizontal?"width":"height";x.container.style[M]=`${g}px`}const S=!!h.options.horizontal,E=x.mode==="transform",w=S?"left":"top",C=h.options.scrollMargin,R=h.getVirtualItems();for(const M of R){const j=M.start-C,N=h.elementsCache.get(M.key);N&&x.lastPositions.get(N)!==j&&(x.lastPositions.set(N,j),E?N.style.transform=S?`translate3d(${j}px, 0, 0)`:`translate3d(0, ${j}px, 0)`:N.style[w]=`${j}px`)}},m={...s,onChange:(h,x)=>{var g;const S=u.current;let E=!0;if(S.enabled){f(h);const w=h.range,C=S.prevRange;E=!C||C.isScrolling!==h.isScrolling||C.startIndex!==w?.startIndex||C.endIndex!==w?.endIndex,E&&(S.prevRange=w?{startIndex:w.startIndex,endIndex:w.endIndex,isScrolling:h.isScrolling}:null)}E&&(n&&x?Ol.flushSync(o):o()),(g=s.onChange)==null||g.call(s,h,x)}},[v]=y.useState(()=>{const h=new lj(m);return Object.assign(h,{containerRef:x=>{const g=u.current;if(g.container=x,g.lastSize=null,x&&g.enabled){const S=h.getTotalSize();g.lastSize=S;const E=h.options.horizontal?"width":"height";x.style[E]=`${S}px`}}})});return v.setOptions(m),ef(()=>v._didMount(),[]),ef(()=>v._willUpdate()),ef(()=>{f(v)}),v}function oj(n){return sj({observeElementRect:Z_,observeElementOffset:ej,scrollToFn:aj,...n})}function cj(n,l){const i=[],s=(o,u)=>{for(const f of o)i.push({node:f,depth:u}),f.dir&&l.has(f.path)&&s(f.children||[],u+1)};return s(n?.children||[],0),i}function uj(n){const{root:l,expanded:i,onToggle:s,currentPath:o,listingShowing:u,onOpen:f}=n,m=y.useRef(null),v=y.useMemo(()=>cj(l,i),[l,i]),h=oj({count:v.length,getScrollElement:()=>m.current,estimateSize:()=>window.matchMedia("(max-width: 768px)").matches?44:28,overscan:12,getItemKey:x=>v[x].node.path});return y.useEffect(()=>{if(!o)return;const x=v.findIndex(g=>g.node.path===o);x>=0&&h.scrollToIndex(x,{align:"auto"})},[o,v]),p.jsx("nav",{id:"tree","aria-label":"Files",ref:m,children:p.jsx("div",{style:{height:h.getTotalSize(),position:"relative"},children:h.getVirtualItems().map(x=>{const{node:g,depth:S}=v[x.index],E=g.dir?i.has(g.path):!1,w=()=>{if(g.dir&&o===g.path&&u){s(g.path);return}f(g.path),g.dir||Mn()};return p.jsxs("div",{className:"row"+(o===g.path?" active":"")+(g.dir&&!E?" collapsed":""),"data-path":g.path,tabIndex:0,role:"button",title:g.name,"aria-expanded":g.dir?E:void 0,style:{position:"absolute",top:0,left:0,right:0,transform:`translateY(${x.start}px)`,paddingLeft:8+S*13},onClick:w,onKeyDown:C=>{(C.key==="Enter"||C.key===" ")&&(C.preventDefault(),w())},children:[Array.from({length:S},(C,R)=>p.jsx("span",{className:"tguide",style:{left:8+R*13+5},"aria-hidden":"true"},R)),p.jsx("span",{className:"chev",onClick:C=>{g.dir&&(C.stopPropagation(),s(g.path))},children:p.jsx(vt,{name:"chevd"})}),p.jsx("span",{className:"ticon",children:p.jsx(vt,{name:g.dir?"folder":"doc"})}),p.jsx("span",{className:"label",children:g.name})]},x.key)})})})}function dj(n){const l=n.split("/"),i=[];let s="";for(let o=0;o{s=s?s+"/"+o:o;const f=s,m=u===i.length-1;return p.jsxs("span",{children:[u>0&&p.jsx("span",{className:"crumb-sep",children:"/"}),m?p.jsx("span",{children:o}):p.jsx("span",{className:"crumb-seg",title:f,onClick:()=>l(f),children:o})]},f)})})}const hj={add:"plus",edit:"edit",delete:"x"},mj={add:"added",edit:"edited",delete:"deleted"};function Ux({entry:n,onOpen:l}){const[i,s]=y.useState(!1),o=n.kind==="put"?"edit":n.kind,u=n.user_name?`${n.user_name} <${n.user}>`:n.user||n.author||"unknown",f=[n.device.name||n.device.id,n.device.os,n.device.ip].filter(Boolean).join(" · "),m=o!=="delete",v=h=>{h.target.tagName!=="A"&&m&&l(n.path)};return p.jsxs("div",{className:"hentry "+o+(m?" clickable":""),tabIndex:m?0:void 0,role:m?"button":void 0,onClick:v,onKeyDown:h=>{m&&(h.key==="Enter"||h.key===" ")&&(h.preventDefault(),l(n.path))},children:[p.jsxs("div",{className:"hline",children:[p.jsx("span",{className:"hkind",children:p.jsx(vt,{name:hj[o]||"dot"})}),p.jsx("span",{className:"hpath",children:n.path}),p.jsx("span",{className:"htag",children:mj[o]||o}),p.jsx("span",{className:"htime",children:new Date(n.time).toLocaleString()})]}),p.jsxs("div",{className:"hmeta",children:[p.jsx("span",{className:"hwho",children:u}),p.jsx("span",{className:"hdev",children:f}),p.jsx("span",{className:"hsize",children:n.size?Dx(n.size):""})]}),n.note&&p.jsx("div",{className:"hnote"+(i?" open":""),tabIndex:0,role:"button",title:i?"Collapse note":"Show full note","aria-expanded":i,onClick:h=>{h.stopPropagation(),h.target.tagName!=="A"&&s(!i)},onKeyDown:h=>{(h.key==="Enter"||h.key===" ")&&(h.preventDefault(),h.stopPropagation(),s(!i))},children:n.note.split(/(https?:\/\/\S+)/).map((h,x)=>/^https?:\/\//.test(h)?p.jsx("a",{href:h,target:"_blank",rel:"noopener",children:h},x):h)})]})}function pj(n){const{node:l,heatMap:i,onOpen:s}=n,o=(l.children||[]).slice().sort((h,x)=>Number(x.dir||!1)-Number(h.dir||!1)||h.name.localeCompare(x.name)),u=o.filter(h=>h.dir).length,f=o.length-u,m=[];u&&m.push(u+(u===1?" folder":" folders")),f&&m.push(f+(f===1?" file":" files"));const v=Cy(i,l.path,!0);return v&&m.push(Bo(v)+" in 30 days"),p.jsxs("div",{className:"dirlist",children:[p.jsxs("h1",{className:"dl-title",children:[p.jsx("span",{className:"dl-title-icon",children:p.jsx(vt,{name:"folder"})}),p.jsx("span",{children:l.name})]}),p.jsx("p",{className:"dl-sub",children:m.join(" · ")||"Empty folder"}),o.length===0?p.jsx("div",{className:"dl-empty",children:"Nothing in this folder yet."}):p.jsx("div",{className:"dl-items",children:o.map(h=>{let x="";if(h.dir){const S=(h.children||[]).length;x=S+(S===1?" item":" items")}else x=[h.size?Dx(h.size):"",h.time?new Date(h.time).toLocaleDateString():""].filter(Boolean).join(" · ");const g=Cy(i,h.path,!!h.dir);return g&&(x=Bo(g)+(x?" · "+x:"")),p.jsxs("div",{className:"dl-row",tabIndex:0,role:"button",title:h.path,onClick:()=>s(h.path),onKeyDown:S=>{(S.key==="Enter"||S.key===" ")&&(S.preventDefault(),s(h.path))},children:[p.jsx("span",{className:"ticon",children:p.jsx(vt,{name:h.dir?"folder":"doc"})}),p.jsx("span",{className:"dl-name",children:h.name}),g&&p.jsx("span",{className:"heatdot lvl"+F_(g),title:Bo(g)+" in 30 days"}),p.jsx("span",{className:"dl-meta",children:x})]},h.path)})}),n.hub&&p.jsx(gj,{apiBase:n.apiBase,prefix:l.path+"/",onOpen:s,onFullHistory:()=>n.onFullHistory(l.path+"/"),onRendered:n.onRendered})]})}function gj(n){const l=Y_(n.apiBase,n.prefix,!0),{onRendered:i}=n;return y.useEffect(()=>{l&&l.length&&i&&i()},[l,i]),!l||l.length===0?null:p.jsxs("div",{className:"dl-history",children:[p.jsx("h3",{className:"dl-h3",children:"Recent changes"}),p.jsx("div",{className:"history dl-hlist",children:l.map((s,o)=>p.jsx(Ux,{entry:s,onOpen:n.onOpen},o))}),p.jsx("button",{className:"ai-btn dl-more",onClick:n.onFullHistory,children:"Full history"})]})}function vj(n){const{apiBase:l,path:i,onMeta:s}=n,o=l+"file?path="+encodeURIComponent(i);return y.useEffect(()=>()=>s(""),[i,s]),x_.test(i)?p.jsx(yj,{...n}):w_.test(i)?p.jsx("iframe",{className:"htmlview",sandbox:"allow-scripts",src:o,title:i,onLoad:n.onRendered}):S_.test(i)?p.jsx(Sj,{src:o,alt:i,onRendered:n.onRendered}):E_.test(i)?p.jsx(wj,{...n,fileURL:o}):p.jsxs("div",{className:"filecard",children:[p.jsx("div",{className:"name",children:i.split("/").pop()}),p.jsx("p",{children:"No preview for this file type."}),p.jsx("a",{className:"btn",download:!0,href:l+"download?path="+encodeURIComponent(i),children:"Download"})]})}function yj(n){const{apiBase:l,path:i,heatMap:s,flatFiles:o,onOpenFile:u,onMeta:f,onRendered:m}=n,{data:v,error:h}=$t({queryKey:["render",l,i],queryFn:()=>sn(l+"render?path="+encodeURIComponent(i))}),x=y.useMemo(()=>v?xj(v.html,i,l):"",[v,i,l]);return y.useEffect(()=>{if(!v)return;const g=[];v.author&&g.push(v.author+(v.device?" on "+v.device:"")),v.time&&g.push(new Date(v.time).toLocaleString());const S=s&&s[v.path];S&&Zr(S)&&g.push(Bo(S)+" / 30d"),f(g.join(" · ")),m?.()},[v,s,f,m]),h?p.jsxs("div",{className:"empty",children:["Could not load file: ",h.message]}):v?p.jsx("div",{dangerouslySetInnerHTML:{__html:x},onClick:g=>bj(g,i,o,u)}):null}function bj(n,l,i,s){const o=n.target.closest("a");if(!o||!n.currentTarget.contains(o))return;const u=o.getAttribute("href")||"",f=l.includes("/")?l.slice(0,l.lastIndexOf("/")):"";u.startsWith("wiki:")?(n.preventDefault(),Ej(decodeURIComponent(u.slice(5)),i,s)):/^([a-z]+:|\/|#)/i.test(u)||(n.preventDefault(),s(zx(f,decodeURIComponent(u))))}function xj(n,l,i){const s=l.includes("/")?l.slice(0,l.lastIndexOf("/")):"",o=f=>i+"file?path="+encodeURIComponent(f),u=new DOMParser().parseFromString(n,"text/html");for(const f of u.querySelectorAll("img")){const m=f.getAttribute("src")||"";/^([a-z]+:|\/)/i.test(m)||f.setAttribute("src",o(zx(s,m)))}for(const f of u.querySelectorAll("a")){const m=f.getAttribute("href")||"";/^https?:/i.test(m)&&(f.setAttribute("target","_blank"),f.setAttribute("rel","noopener"))}return u.body.innerHTML}function Sj({src:n,alt:l,onRendered:i}){return p.jsx("img",{src:n,alt:l,onLoad:i})}function wj(n){const{path:l,fileURL:i,onRendered:s}=n,{data:o,error:u}=$t({queryKey:["text",i],queryFn:async()=>{const f=await fetch(i);if(!f.ok)throw new Error(await f.text());return f.text()}});return y.useEffect(()=>{o!=null&&s?.()},[o,s]),u?p.jsxs("div",{className:"empty",children:["Could not load file: ",u.message]}):o==null?null:p.jsx("pre",{className:"plain",children:o},l)}function Ej(n,l,i){const s=n.toLowerCase(),o=l.find(u=>u.path.toLowerCase()===s||u.path.toLowerCase()===s+".md")||l.find(u=>{const f=u.name.toLowerCase();return f===s||f===s+".md"});o&&i(o.path)}function Cj({url:n,copied:l,onClose:i}){const s=n.split("/s/")[1];return p.jsx(bh,{open:!0,onOpenChange:o=>!o&&i(),children:p.jsxs(xh,{className:"modal",showCloseButton:!1,children:[p.jsx(vc,{asChild:!0,children:p.jsx("h3",{children:"Public link created"})}),p.jsxs("p",{children:[p.jsx("b",{children:"Anyone with this link can view this file"})," — no account needed. It always shows the latest version until you revoke it."]}),p.jsx("div",{className:"modal-url",children:n}),p.jsxs("div",{className:"modal-actions",children:[p.jsx(rn,{variant:"primary",onClick:()=>$r(n).then(o=>He(o?"Copied.":"Select and copy the link above.")),children:l?"Copied ✓":"Copy link"}),p.jsx(rn,{variant:"subtle",onClick:()=>window.open(n,"_blank"),children:"Open"}),p.jsx(rn,{variant:"subtle",className:"ai-del",onClick:async()=>{try{await Ba("DELETE","/api/shares/"+s),He("Link revoked — it no longer works."),i()}catch(o){He(o.message,!0)}},children:"Revoke"}),p.jsx(rn,{variant:"subtle",onClick:i,children:"Done"})]})]})})}var Ry=1,Tj=.9,Mj=.8,Rj=.17,tf=.1,nf=.999,Oj=.9999,Aj=.99,_j=/[\\\/_+.#"@\[\(\{&]/,jj=/[\\\/_+.#"@\[\(\{&]/g,Nj=/[\s-]/,Bx=/[\s-]/g;function Af(n,l,i,s,o,u,f){if(u===l.length)return o===n.length?Ry:Aj;var m=`${o},${u}`;if(f[m]!==void 0)return f[m];for(var v=s.charAt(u),h=i.indexOf(v,o),x=0,g,S,E,w;h>=0;)g=Af(n,l,i,s,h+1,u+1,f),g>x&&(h===o?g*=Ry:_j.test(n.charAt(h-1))?(g*=Mj,E=n.slice(o,h-1).match(jj),E&&o>0&&(g*=Math.pow(nf,E.length))):Nj.test(n.charAt(h-1))?(g*=Tj,w=n.slice(o,h-1).match(Bx),w&&o>0&&(g*=Math.pow(nf,w.length))):(g*=Rj,o>0&&(g*=Math.pow(nf,h-o))),n.charAt(h)!==l.charAt(u)&&(g*=Oj)),(gg&&(g=S*tf)),g>x&&(x=g),h=i.indexOf(v,h+1);return f[m]=x,x}function Oy(n){return n.toLowerCase().replace(Bx," ")}function Dj(n,l,i){return n=i&&i.length>0?`${n+" "+i.join(" ")}`:n,Af(n,l,Oy(n),Oy(l),0,0,{})}var Lr='[cmdk-group=""]',af='[cmdk-group-items=""]',zj='[cmdk-group-heading=""]',Ix='[cmdk-item=""]',Ay=`${Ix}:not([aria-disabled="true"])`,_f="cmdk-item-select",Ti="data-value",kj=(n,l,i)=>Dj(n,l,i),qx=y.createContext(void 0),ss=()=>y.useContext(qx),Vx=y.createContext(void 0),Eh=()=>y.useContext(Vx),Gx=y.createContext(void 0),Yx=y.forwardRef((n,l)=>{let i=Mi(()=>{var O,L;return{search:"",value:(L=(O=n.value)!=null?O:n.defaultValue)!=null?L:"",selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}}}),s=Mi(()=>new Set),o=Mi(()=>new Map),u=Mi(()=>new Map),f=Mi(()=>new Set),m=Fx(n),{label:v,children:h,value:x,onValueChange:g,filter:S,shouldFilter:E,loop:w,disablePointerSelection:C=!1,vimBindings:R=!0,...M}=n,j=_t(),N=_t(),H=_t(),G=y.useRef(null),I=Pj();Rl(()=>{if(x!==void 0){let O=x.trim();i.current.value=O,V.emit()}},[x]),Rl(()=>{I(6,oe)},[]);let V=y.useMemo(()=>({subscribe:O=>(f.current.add(O),()=>f.current.delete(O)),snapshot:()=>i.current,setState:(O,L,P)=>{var F,te,$,le;if(!Object.is(i.current[O],L)){if(i.current[O]=L,O==="search")ue(),se(),I(1,ae);else if(O==="value"){if(document.activeElement.hasAttribute("cmdk-input")||document.activeElement.hasAttribute("cmdk-root")){let ie=document.getElementById(H);ie?ie.focus():(F=document.getElementById(j))==null||F.focus()}if(I(7,()=>{var ie;i.current.selectedItemId=(ie=me())==null?void 0:ie.id,V.emit()}),P||I(5,oe),((te=m.current)==null?void 0:te.value)!==void 0){let ie=L??"";(le=($=m.current).onValueChange)==null||le.call($,ie);return}}V.emit()}},emit:()=>{f.current.forEach(O=>O())}}),[]),U=y.useMemo(()=>({value:(O,L,P)=>{var F;L!==((F=u.current.get(O))==null?void 0:F.value)&&(u.current.set(O,{value:L,keywords:P}),i.current.filtered.items.set(O,ce(L,P)),I(2,()=>{se(),V.emit()}))},item:(O,L)=>(s.current.add(O),L&&(o.current.has(L)?o.current.get(L).add(O):o.current.set(L,new Set([O]))),I(3,()=>{ue(),se(),i.current.value||ae(),V.emit()}),()=>{u.current.delete(O),s.current.delete(O),i.current.filtered.items.delete(O);let P=me();I(4,()=>{ue(),P?.getAttribute("id")===O&&ae(),V.emit()})}),group:O=>(o.current.has(O)||o.current.set(O,new Set),()=>{u.current.delete(O),o.current.delete(O)}),filter:()=>m.current.shouldFilter,label:v||n["aria-label"],getDisablePointerSelection:()=>m.current.disablePointerSelection,listId:j,inputId:H,labelId:N,listInnerRef:G}),[]);function ce(O,L){var P,F;let te=(F=(P=m.current)==null?void 0:P.filter)!=null?F:kj;return O?te(O,i.current.search,L):0}function se(){if(!i.current.search||m.current.shouldFilter===!1)return;let O=i.current.filtered.items,L=[];i.current.filtered.groups.forEach(F=>{let te=o.current.get(F),$=0;te.forEach(le=>{let ie=O.get(le);$=Math.max(ie,$)}),L.push([F,$])});let P=G.current;de().sort((F,te)=>{var $,le;let ie=F.getAttribute("id"),xe=te.getAttribute("id");return(($=O.get(xe))!=null?$:0)-((le=O.get(ie))!=null?le:0)}).forEach(F=>{let te=F.closest(af);te?te.appendChild(F.parentElement===te?F:F.closest(`${af} > *`)):P.appendChild(F.parentElement===P?F:F.closest(`${af} > *`))}),L.sort((F,te)=>te[1]-F[1]).forEach(F=>{var te;let $=(te=G.current)==null?void 0:te.querySelector(`${Lr}[${Ti}="${encodeURIComponent(F[0])}"]`);$?.parentElement.appendChild($)})}function ae(){let O=de().find(P=>P.getAttribute("aria-disabled")!=="true"),L=O?.getAttribute(Ti);V.setState("value",L||void 0)}function ue(){var O,L,P,F;if(!i.current.search||m.current.shouldFilter===!1){i.current.filtered.count=s.current.size;return}i.current.filtered.groups=new Set;let te=0;for(let $ of s.current){let le=(L=(O=u.current.get($))==null?void 0:O.value)!=null?L:"",ie=(F=(P=u.current.get($))==null?void 0:P.keywords)!=null?F:[],xe=ce(le,ie);i.current.filtered.items.set($,xe),xe>0&&te++}for(let[$,le]of o.current)for(let ie of le)if(i.current.filtered.items.get(ie)>0){i.current.filtered.groups.add($);break}i.current.filtered.count=te}function oe(){var O,L,P;let F=me();F&&(((O=F.parentElement)==null?void 0:O.firstChild)===F&&((P=(L=F.closest(Lr))==null?void 0:L.querySelector(zj))==null||P.scrollIntoView({block:"nearest"})),F.scrollIntoView({block:"nearest"}))}function me(){var O;return(O=G.current)==null?void 0:O.querySelector(`${Ix}[aria-selected="true"]`)}function de(){var O;return Array.from(((O=G.current)==null?void 0:O.querySelectorAll(Ay))||[])}function D(O){let L=de()[O];L&&V.setState("value",L.getAttribute(Ti))}function Q(O){var L;let P=me(),F=de(),te=F.findIndex(le=>le===P),$=F[te+O];(L=m.current)!=null&&L.loop&&($=te+O<0?F[F.length-1]:te+O===F.length?F[0]:F[te+O]),$&&V.setState("value",$.getAttribute(Ti))}function W(O){let L=me(),P=L?.closest(Lr),F;for(;P&&!F;)P=O>0?Yj(P,Lr):Fj(P,Lr),F=P?.querySelector(Ay);F?V.setState("value",F.getAttribute(Ti)):Q(O)}let ee=()=>D(de().length-1),Z=O=>{O.preventDefault(),O.metaKey?ee():O.altKey?W(1):Q(1)},A=O=>{O.preventDefault(),O.metaKey?D(0):O.altKey?W(-1):Q(-1)};return y.createElement(Ee.div,{ref:l,tabIndex:-1,...M,"cmdk-root":"",onKeyDown:O=>{var L;(L=M.onKeyDown)==null||L.call(M,O);let P=O.nativeEvent.isComposing||O.keyCode===229;if(!(O.defaultPrevented||P))switch(O.key){case"n":case"j":{R&&O.ctrlKey&&Z(O);break}case"ArrowDown":{Z(O);break}case"p":case"k":{R&&O.ctrlKey&&A(O);break}case"ArrowUp":{A(O);break}case"Home":{O.preventDefault(),D(0);break}case"End":{O.preventDefault(),ee();break}case"Enter":{O.preventDefault();let F=me();if(F){let te=new Event(_f);F.dispatchEvent(te)}}}}},y.createElement("label",{"cmdk-label":"",htmlFor:U.inputId,id:U.labelId,style:Qj},v),bc(n,O=>y.createElement(Vx.Provider,{value:V},y.createElement(qx.Provider,{value:U},O))))}),Lj=y.forwardRef((n,l)=>{var i,s;let o=_t(),u=y.useRef(null),f=y.useContext(Gx),m=ss(),v=Fx(n),h=(s=(i=v.current)==null?void 0:i.forceMount)!=null?s:f?.forceMount;Rl(()=>{if(!h)return m.item(o,f?.id)},[h]);let x=Px(o,u,[n.value,n.children,u],n.keywords),g=Eh(),S=Fa(I=>I.value&&I.value===x.current),E=Fa(I=>h||m.filter()===!1?!0:I.search?I.filtered.items.get(o)>0:!0);y.useEffect(()=>{let I=u.current;if(!(!I||n.disabled))return I.addEventListener(_f,w),()=>I.removeEventListener(_f,w)},[E,n.onSelect,n.disabled]);function w(){var I,V;C(),(V=(I=v.current).onSelect)==null||V.call(I,x.current)}function C(){g.setState("value",x.current,!0)}if(!E)return null;let{disabled:R,value:M,onSelect:j,forceMount:N,keywords:H,...G}=n;return y.createElement(Ee.div,{ref:Ni(u,l),...G,id:o,"cmdk-item":"",role:"option","aria-disabled":!!R,"aria-selected":!!S,"data-disabled":!!R,"data-selected":!!S,onPointerMove:R||m.getDisablePointerSelection()?void 0:C,onClick:R?void 0:w},n.children)}),Hj=y.forwardRef((n,l)=>{let{heading:i,children:s,forceMount:o,...u}=n,f=_t(),m=y.useRef(null),v=y.useRef(null),h=_t(),x=ss(),g=Fa(E=>o||x.filter()===!1?!0:E.search?E.filtered.groups.has(f):!0);Rl(()=>x.group(f),[]),Px(f,m,[n.value,n.heading,v]);let S=y.useMemo(()=>({id:f,forceMount:o}),[o]);return y.createElement(Ee.div,{ref:Ni(m,l),...u,"cmdk-group":"",role:"presentation",hidden:g?void 0:!0},i&&y.createElement("div",{ref:v,"cmdk-group-heading":"","aria-hidden":!0,id:h},i),bc(n,E=>y.createElement("div",{"cmdk-group-items":"",role:"group","aria-labelledby":i?h:void 0},y.createElement(Gx.Provider,{value:S},E))))}),Uj=y.forwardRef((n,l)=>{let{alwaysRender:i,...s}=n,o=y.useRef(null),u=Fa(f=>!f.search);return!i&&!u?null:y.createElement(Ee.div,{ref:Ni(o,l),...s,"cmdk-separator":"",role:"separator"})}),Bj=y.forwardRef((n,l)=>{let{onValueChange:i,...s}=n,o=n.value!=null,u=Eh(),f=Fa(h=>h.search),m=Fa(h=>h.selectedItemId),v=ss();return y.useEffect(()=>{n.value!=null&&u.setState("search",n.value)},[n.value]),y.createElement(Ee.input,{ref:l,...s,"cmdk-input":"",autoComplete:"off",autoCorrect:"off",spellCheck:!1,"aria-autocomplete":"list",role:"combobox","aria-expanded":!0,"aria-controls":v.listId,"aria-labelledby":v.labelId,"aria-activedescendant":m,id:v.inputId,type:"text",value:o?n.value:f,onChange:h=>{o||u.setState("search",h.target.value),i?.(h.target.value)}})}),Ij=y.forwardRef((n,l)=>{let{children:i,label:s="Suggestions",...o}=n,u=y.useRef(null),f=y.useRef(null),m=Fa(h=>h.selectedItemId),v=ss();return y.useEffect(()=>{if(f.current&&u.current){let h=f.current,x=u.current,g,S=new ResizeObserver(()=>{g=requestAnimationFrame(()=>{let E=h.offsetHeight;x.style.setProperty("--cmdk-list-height",E.toFixed(1)+"px")})});return S.observe(h),()=>{cancelAnimationFrame(g),S.unobserve(h)}}},[]),y.createElement(Ee.div,{ref:Ni(u,l),...o,"cmdk-list":"",role:"listbox",tabIndex:-1,"aria-activedescendant":m,"aria-label":s,id:v.listId},bc(n,h=>y.createElement("div",{ref:Ni(f,v.listInnerRef),"cmdk-list-sizer":""},h)))}),qj=y.forwardRef((n,l)=>{let{open:i,onOpenChange:s,overlayClassName:o,contentClassName:u,container:f,...m}=n;return y.createElement(qf,{open:i,onOpenChange:s},y.createElement(Gf,{container:f},y.createElement(Yf,{"cmdk-overlay":"",className:o}),y.createElement(Ff,{"aria-label":n.label,"cmdk-dialog":"",className:u},y.createElement(Yx,{ref:l,...m}))))}),Vj=y.forwardRef((n,l)=>Fa(i=>i.filtered.count===0)?y.createElement(Ee.div,{ref:l,...n,"cmdk-empty":"",role:"presentation"}):null),Gj=y.forwardRef((n,l)=>{let{progress:i,children:s,label:o="Loading...",...u}=n;return y.createElement(Ee.div,{ref:l,...u,"cmdk-loading":"",role:"progressbar","aria-valuenow":i,"aria-valuemin":0,"aria-valuemax":100,"aria-label":o},bc(n,f=>y.createElement("div",{"aria-hidden":!0},f)))}),yc=Object.assign(Yx,{List:Ij,Item:Lj,Input:Bj,Group:Hj,Separator:Uj,Dialog:qj,Empty:Vj,Loading:Gj});function Yj(n,l){let i=n.nextElementSibling;for(;i;){if(i.matches(l))return i;i=i.nextElementSibling}}function Fj(n,l){let i=n.previousElementSibling;for(;i;){if(i.matches(l))return i;i=i.previousElementSibling}}function Fx(n){let l=y.useRef(n);return Rl(()=>{l.current=n}),l}var Rl=typeof window>"u"?y.useEffect:y.useLayoutEffect;function Mi(n){let l=y.useRef();return l.current===void 0&&(l.current=n()),l}function Fa(n){let l=Eh(),i=()=>n(l.snapshot());return y.useSyncExternalStore(l.subscribe,i,i)}function Px(n,l,i,s=[]){let o=y.useRef(),u=ss();return Rl(()=>{var f;let m=(()=>{var h;for(let x of i){if(typeof x=="string")return x.trim();if(typeof x=="object"&&"current"in x)return x.current?(h=x.current.textContent)==null?void 0:h.trim():o.current}})(),v=s.map(h=>h.trim());u.value(n,m,v),(f=l.current)==null||f.setAttribute(Ti,m),o.current=m}),o}var Pj=()=>{let[n,l]=y.useState(),i=Mi(()=>new Map);return Rl(()=>{i.current.forEach(s=>s()),i.current=new Map},[n]),(s,o)=>{i.current.set(s,o),l({})}};function Kj(n){let l=n.type;return typeof l=="function"?l(n.props):"render"in l?l.render(n.props):n}function bc({asChild:n,children:l},i){return n&&y.isValidElement(l)?y.cloneElement(Kj(l),{ref:l.ref},i(l.props.children)):i(l)}var Qj={position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0"};function Xj({className:n,...l}){return p.jsx(yc,{"data-slot":"command",className:bt("flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",n),...l})}function $j({className:n,...l}){return p.jsxs("div",{"data-slot":"command-input-wrapper",className:"flex h-9 items-center gap-2 border-b px-3",children:[p.jsx(Ex,{className:"size-4 shrink-0 opacity-50"}),p.jsx(yc.Input,{"data-slot":"command-input",className:bt("flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",n),...l})]})}function Zj({className:n,...l}){return p.jsx(yc.List,{"data-slot":"command-list",className:bt("max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto",n),...l})}function Jj({className:n,...l}){return p.jsx(yc.Item,{"data-slot":"command-item",className:bt("relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground",n),...l})}function _y(n,l){if(!n)return{score:0,hits:[]};const i=n.toLowerCase(),s=l.toLowerCase();let o=0,u=0,f=0;const m=[];for(let v=0;v3&&s.endsWith("ies")?o=s.slice(0,-3)+"y":s.length>3&&s.endsWith("es")?o=s.slice(0,-2):s.length>2&&s.endsWith("s")&&(o=s.slice(0,-1)),o?_y(o,l):null}function eN({text:n,hits:l}){const i=[];let s=0;return l.forEach((o,u)=>{o>s&&i.push(n.slice(s,o)),i.push(p.jsx("b",{children:n[o]},u)),s=o+1}),i.push(n.slice(s)),p.jsx("span",{className:"plabel",children:i})}function tN({open:n,onClose:l,candidates:i}){const[s,o]=y.useState(""),u=y.useMemo(()=>{if(!n)return[];const m=[];for(const v of i()){const h=Wj(s,v.label);h&&m.push({...v,score:h.score,hits:h.hits})}return m.sort((v,h)=>h.score-v.score),m.slice(0,40)},[n,s,i]);y.useEffect(()=>{n&&o("")},[n]);const f=m=>{l(),m.run()};return p.jsx(bh,{open:n,onOpenChange:m=>!m&&l(),children:p.jsxs(xh,{id:"palette",className:"palette",showCloseButton:!1,"aria-describedby":void 0,children:[p.jsx(vc,{className:"sr-only",children:"Search and quick actions"}),p.jsxs(Xj,{shouldFilter:!1,loop:!0,children:[p.jsxs("div",{id:"palette-inputwrap",children:[p.jsx(vt,{name:"search"}),p.jsx($j,{id:"palette-input",placeholder:"Search file names, projects, actions…",autoComplete:"off",spellCheck:!1,value:s,onValueChange:o})]}),p.jsx(Zj,{id:"palette-results",children:u.length===0?p.jsx("div",{className:"pempty",children:"No matches — search covers file names, projects, and actions"}):u.map(m=>p.jsxs(Jj,{value:m.kind+":"+m.label,onSelect:()=>f(m),children:[p.jsx("span",{className:"picon",children:p.jsx(vt,{name:m.icon})}),p.jsx(eN,{text:m.label,hits:m.hits}),p.jsx("span",{className:"pkind",children:m.kind})]},m.kind+":"+m.label))}),p.jsx("footer",{id:"palette-hint",children:"↑↓ navigate · ⏎ select · esc close"})]})]})})}const Br=3,Ri=30;function nN(n,l){return $t({queryKey:["heatDevices",n],queryFn:()=>sn(n+"heat?by=device&days=30"),enabled:l,retry:!1,staleTime:6e4}).data?.devices??null}function jy(n){const[l,i]=y.useState("all"),{flatFiles:s,heatMap:o,devices:u,scope:f}=n,m=S=>!f||S===f||S.startsWith(f+"/"),v=f?s.filter(S=>m(S.path)):s,h=u&&f?u.map(S=>{const E={};for(const[w,C]of Object.entries(S.folders||{}))m(w)&&(E[w]=C);return{...S,folders:E}}).filter(S=>Object.keys(S.folders).length>0):u,x=Date.now(),g=v.map(S=>{const E=o&&o[S.path]||{},w=S.time?Math.max(0,(x-new Date(S.time).getTime())/864e5):0,C=l==="all"?Zr(E):E[l]||0;return{path:S.path,reads:C,agent:E.agent||0,total:Zr(E),days:w,danger:C>=Br&&w>=Ri}});return p.jsxs("div",{className:"insights",children:[p.jsxs("h1",{className:"in-title",children:["Knowledge insights",f?p.jsxs("span",{className:"in-scope",children:[" · ",f]}):null]}),p.jsx("p",{className:"dl-sub",children:f?`Reads over the last 30 days × freshness, for ${f} and everything in it.`:"Reads over the last 30 days × how long since each file changed. Hot but stale knowledge — read a lot, maintained by nobody — is the danger zone."}),p.jsx("div",{className:"in-lens",children:["all","human","agent"].map(S=>p.jsx("button",{className:"in-lens-btn"+(S===l?" active":""),onClick:()=>i(S),children:S==="all"?"All reads":S==="human"?"Human reads":"Agent reads"},S))}),p.jsx("h3",{className:"dl-h3",children:"Map — cell size = reads, color = freshness"}),p.jsx(lN,{pts:g,onOpenFile:n.onOpenFile,onOpenFolder:n.onOpenFolder,isFolder:n.isFolder}),p.jsx("h3",{className:"dl-h3",children:"Reads × freshness"}),p.jsx(iN,{pts:g,onOpenFile:n.onOpenFile}),p.jsx("h3",{className:"dl-h3",children:"Hot path — top files by reads"}),p.jsx(rN,{pts:g,lens:l,onOpenFile:n.onOpenFile}),h&&h.length>0&&p.jsxs(p.Fragment,{children:[p.jsx("h3",{className:"dl-h3",children:"Agent coverage — which agents read which areas"}),p.jsx(sN,{devices:h})]})]})}function aN(n){const l=[[76,195,138],[232,196,84],[224,93,93]],i=Math.min(1,Math.max(0,n/300))*(l.length-1),s=Math.min(l.length-2,Math.floor(i)),o=i-s,u=l[s].map((f,m)=>Math.round(f+(l[s+1][m]-f)*o));return`rgb(${u[0]},${u[1]},${u[2]})`}function Ny(n,l,i,s,o){const u=n.reduce((h,x)=>h+x.value,0);if(!u||s<=0||o<=0)return[];const f=n.slice().sort((h,x)=>x.value-h.value).map(h=>({it:h,a:h.value/u*s*o})),m=(h,x)=>{const S=h.reduce((w,C)=>w+C.a,0)/x;let E=0;for(const w of h){const C=w.a/S;E=Math.max(E,C/S,S/C)}return E},v=[];for(;f.length;){const h=s>=o,x=h?o:s,g=[f.shift()];for(;f.length&&m(g.concat(f[0]),x)<=m(g,x);)g.push(f.shift());const S=g.reduce((w,C)=>w+C.a,0)/x;let E=0;for(const w of g){const C=w.a/S;h?v.push({item:w.it,x:l,y:i+E,w:S,h:C}):v.push({item:w.it,x:l+E,y:i,w:C,h:S}),E+=C}h?(l+=S,s-=S):(i+=S,o-=S)}return v}const lf=15;function lN({pts:n,onOpenFile:l,onOpenFolder:i,isFolder:s}){const f=new Map;for(const v of n){const h=v.path.includes("/")?v.path.split("/")[0]:"/";let x=f.get(h);x||f.set(h,x={name:h,files:[],value:0}),x.files.push(v),x.value+=v.reads+1}const m=[];for(const v of Ny([...f.values()],0,0,720,480)){const h=v.item,x=h.name==="/"?"":h.name;if(m.push(p.jsx("rect",{x:v.x+1,y:v.y+1,width:Math.max(0,v.w-2),height:Math.max(0,v.h-2),rx:3,className:"in-tm-group","data-dir":x},"g"+h.name)),v.w>46&&v.h>lf+10){let S=h.name==="/"?"(root)":h.name;const E=Math.floor((v.w-8)/6);S.length>E&&(S=S.slice(0,Math.max(1,E-1))+"…"),m.push(p.jsx("text",{x:v.x+5,y:v.y+12,className:"in-tm-glabel","data-dir":x,children:S},"gl"+h.name))}const g=Ny(h.files.map(S=>({...S,name:S.path.split("/").pop(),value:S.reads+1})),v.x+2,v.y+lf,Math.max(0,v.w-4),Math.max(0,v.h-lf-2));for(const S of g)if(m.push(p.jsx("rect",{x:S.x+.6,y:S.y+.6,width:Math.max(.4,S.w-1.2),height:Math.max(.4,S.h-1.2),rx:1.5,fill:aN(S.item.days),className:"in-tm-cell","data-path":S.item.path,children:p.jsx("title",{children:`${S.item.path} — ${S.item.reads} read${S.item.reads===1?"":"s"}/30d · changed ${Math.round(S.item.days)}d ago`})},S.item.path)),S.w>54&&S.h>16){const E=Math.floor((S.w-8)/6);let w=(S.item.danger?"⚠ ":"")+S.item.name;w.length>E&&(w=w.slice(0,Math.max(1,E-1))+"…"),E>=5&&m.push(p.jsx("text",{x:S.x+4.5,y:S.y+12.5,className:"in-tm-label","data-path":S.item.path,children:w},"l"+S.item.path))}}return p.jsx("svg",{viewBox:"0 0 720 480",className:"in-chart in-treemap",onClick:v=>{const h=v.target.closest("[data-path], [data-dir]");if(!h)return;const x=h.getAttribute("data-path");if(x)return l(x);const g=h.getAttribute("data-dir");g&&s(g)&&i(g)},children:m})}function iN({pts:n,onOpenFile:l}){const o={l:44,r:16,t:20,b:34},u=Math.max(Ri*2,...n.map(g=>g.days)),f=Math.max(Br*2,...n.map(g=>g.reads)),m=g=>Math.log10(g+1)/Math.log10(u+1),v=g=>Math.log10(g+1)/Math.log10(f+1),h=g=>o.l+m(g)*(720-o.l-o.r),x=g=>360-o.b-v(g)*(360-o.t-o.b);return p.jsxs("svg",{viewBox:"0 0 720 360",className:"in-chart",children:[p.jsx("rect",{x:h(Ri),y:o.t,width:720-o.r-h(Ri),height:x(Br)-o.t,className:"in-danger-zone"}),p.jsx("line",{x1:h(Ri),y1:o.t,x2:h(Ri),y2:360-o.b,className:"in-threshold"}),p.jsx("line",{x1:o.l,y1:x(Br),x2:720-o.r,y2:x(Br),className:"in-threshold"}),p.jsx("line",{x1:o.l,y1:360-o.b,x2:720-o.r,y2:360-o.b,className:"in-axis"}),p.jsx("line",{x1:o.l,y1:o.t,x2:o.l,y2:360-o.b,className:"in-axis"}),p.jsx("text",{x:(o.l+720-o.r)/2,y:352,className:"in-label",children:"days since last change →"}),p.jsx("text",{x:12,y:(o.t+360-o.b)/2,className:"in-label",transform:`rotate(-90 12 ${(o.t+360-o.b)/2})`,children:"reads / 30d →"}),p.jsx("text",{x:720-o.r-6,y:o.t+14,className:"in-quad in-quad-danger",textAnchor:"end",children:"hot + stale"}),p.jsx("text",{x:o.l+6,y:o.t+14,className:"in-quad",children:"hot + fresh"}),p.jsx("text",{x:720-o.r-6,y:360-o.b-8,className:"in-quad",textAnchor:"end",children:"cold + stale"}),p.jsx("text",{x:720-o.r-6,y:o.t+28,className:"in-label",textAnchor:"end",children:"dot size = agent share of reads"}),n.map(g=>{const S=g.total?(g.agent||0)/g.total:0;return p.jsx("circle",{cx:Number(h(g.days).toFixed(1)),cy:Number(x(g.reads).toFixed(1)),r:Number((3+4*S).toFixed(1)),className:"in-pt"+(g.danger?" danger":g.reads?"":" cold"),onClick:()=>l(g.path),children:p.jsx("title",{children:`${g.path} — ${g.reads} read${g.reads===1?"":"s"} / 30d · changed ${Math.round(g.days)}d ago`})},g.path)})]})}function rN({pts:n,lens:l,onOpenFile:i}){const s=n.filter(u=>u.reads>0).sort((u,f)=>f.reads-u.reads||f.days-u.days).slice(0,20);if(!s.length)return p.jsx("div",{className:"dl-empty",children:"No reads in the window yet."});const o=s[0].reads;return p.jsxs(p.Fragment,{children:[p.jsx("div",{className:"in-hotpath",children:s.map(u=>{const f=l==="agent"?1:l==="human"?0:u.total?u.agent/u.total:0,m=u.reads/o*100;return p.jsxs("div",{className:"in-hp-row",tabIndex:0,role:"button",title:u.danger?`${u.reads} read${u.reads===1?"":"s"}/30d · unchanged ${Math.round(u.days)}d — review this file`:u.path,onClick:()=>i(u.path),onKeyDown:v=>{(v.key==="Enter"||v.key===" ")&&(v.preventDefault(),i(u.path))},children:[p.jsx("span",{className:"in-hp-name"+(u.danger?" danger":""),children:u.path+(u.danger?" ⚠":"")}),p.jsxs("span",{className:"in-hp-bar",children:[p.jsx("span",{className:"in-hp-agent",style:{width:(m*f).toFixed(1)+"%"}}),p.jsx("span",{className:"in-hp-human",style:{width:(m*(1-f)).toFixed(1)+"%"}})]}),p.jsx("span",{className:"in-hp-count",children:u.reads})]},u.path)})}),p.jsxs("p",{className:"in-legend",children:[p.jsx("span",{className:"in-sw agent"})," agent reads ",p.jsx("span",{className:"in-sw human"})," human reads"]})]})}function sN({devices:n}){const l=new Map;for(const S of n)for(const[E,w]of Object.entries(S.folders||{}))l.set(E,(l.get(E)||0)+w);const i=[...l.entries()].sort((S,E)=>E[1]-S[1]).slice(0,12).map(S=>S[0]),s=n.slice(0,12),o=140,u=6,f=Math.min(76,Math.max(34,(720-o-8)/i.length)),m=26,v=720,h=u+s.length*m+58,x=Math.max(1,...s.flatMap(S=>i.map(E=>(S.folders||{})[E]||0))),g=S=>{const E=[23,25,31],w=[245,166,35],C=E.map((R,M)=>Math.round(R+(w[M]-R)*S));return`rgb(${C[0]},${C[1]},${C[2]})`};return p.jsxs("svg",{viewBox:`0 0 ${v} ${h}`,className:"in-chart in-matrix",children:[s.map((S,E)=>{let w=S.name||S.id||"";return w.length>20&&(w=w.slice(0,19)+"…"),p.jsxs("g",{children:[p.jsx("text",{x:o-8,y:u+E*m+17,textAnchor:"end",className:"in-label",children:w}),i.map((C,R)=>{const M=(S.folders||{})[C]||0;return p.jsx("rect",{x:o+R*f,y:u+E*m,width:f-4,height:m-4,rx:3,fill:g(Math.sqrt(M/x)),children:p.jsx("title",{children:`${S.name||S.id} × ${C||"(root)"}: ${M} read${M===1?"":"s"}/30d`})},C)})]},S.id||E)}),i.map((S,E)=>{const w=o+E*f+(f-4)/2,C=u+s.length*m+14;return p.jsx("text",{x:w,y:C,className:"in-label",textAnchor:"end",transform:`rotate(-28 ${w} ${C})`,children:S||"(root)"},S)})]})}function oN(n){const{apiBase:l,target:i,isFolder:s,onMeta:o,onRendered:u}=n,f=i?s(i)?{prefix:i+"/"}:{path:i}:{prefix:""},m="path"in f&&f.path!==void 0?"path="+encodeURIComponent(f.path):"prefix="+encodeURIComponent(f.prefix??""),{data:v,error:h}=$t({queryKey:["history",l,m,200],queryFn:()=>sn(l+"history?"+m+"&n=200"),staleTime:15e3});if(y.useEffect(()=>{h&&o("History unavailable: "+h.message)},[h,o]),y.useEffect(()=>{v&&u?.()},[v,u]),!v)return null;const x=v.entries||[];return p.jsxs("div",{className:"history",children:[x.length===0&&p.jsx("div",{className:"empty",children:"No history yet."}),x.map((g,S)=>p.jsx(Ux,{entry:g,onOpen:n.onOpen},S))]})}function cN(n,l){return n?l(n)?n+"/ (folder)":n:"all changes"}function Kx(n){const{config:l,apiBase:i,route:s,hub:o,project:u}=n,f=wh(),m=Wr(),{tree:v,flatFiles:h,dirIndex:x,loaded:g}=V_(i,!o||!!u),S=G_(i,o&&!!u&&!!l.reads?.enabled),E=o&&!!u&&!s.path&&!s.view,w=!!n.canInsights&&(s.view==="insights"||E),C=nN(i,w);y.useEffect(()=>{w&&m.invalidateQueries({queryKey:["heat",i]})},[w,i,m]);const R=s.path,M=R||(s.view==="insights"||s.view==="history")&&s.viewTarget||"",j=!!R&&x.has(R),N=!!R&&g&&!j&&h.some(Ce=>Ce.path===R),H=!!R&&g&&!j&&!N,G=j&&!s.view,[I,V]=y.useState(()=>new Set),U=y.useRef(!0);y.useEffect(()=>{if(!v||!U.current)return;U.current=!1;const Ce=(v.children||[]).filter(je=>je.dir);Ce.length===1&&V(je=>new Set(je).add(Ce[0].path))},[v]),y.useEffect(()=>{!M||!g||V(Ce=>{const je=new Set(Ce);for(const _e of dj(M))je.add(_e);return x.has(M)&&je.add(M),je})},[M,g,x]);const ce=y.useCallback(Ce=>{V(je=>{const _e=new Set(je);return _e.has(Ce)?_e.delete(Ce):_e.add(Ce),_e})},[]),se=y.useRef(null),ae=y.useRef(new Map),ue=y.useRef({key:"",want:0,attempts:0});y.useEffect(()=>{ue.current={key:f,want:y_()==="POP"?ae.current.get(f)??0:0,attempts:0}},[f]);const oe=y.useCallback(()=>{const Ce=se.current,je=ue.current;!Ce||je.key!==f||je.attempts>=3||(je.attempts++,Ce.scrollTo({top:je.want,behavior:"instant"}))},[f]),me=y.useCallback(()=>{se.current&&ae.current.set(f,se.current.scrollTop)},[f]),de=y.useCallback(Ce=>{Qt(v_(Ce,u?.id)),Mn()},[u?.id]),D=y.useCallback(Ce=>Qt(Oi("history",u?.id,Ce)),[u?.id]),[Q,W]=y.useState(""),[ee,Z]=y.useState(null),[A,O]=y.useState(!1),[L,P]=y.useState(!1);y.useEffect(()=>vO(()=>P(!0)),[]);const F=y.useRef(null),te=n.panel??null,$=!te&&o&&!!u&&N,le=!te&&o&&!!u,ie=!te&&N,xe=!te&&(N||o&&!!u&&j),Me=i+"download?path="+encodeURIComponent(R),Oe=y.useCallback(async()=>{try{const Ce=await fetch(i+"shares",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:R})});if(!Ce.ok)throw new Error(await Ce.text());const je=await Ce.json(),_e=await $r(je.url);Z({url:je.url,copied:_e})}catch(Ce){He("Share failed: "+Ce.message,!0)}},[i,R]),et=y.useCallback(()=>{if(!R)return D("");D(j?R+"/":R)},[R,j,D]);y.useEffect(()=>{const Ce=je=>{(je.metaKey||je.ctrlKey)&&je.key.toLowerCase()==="k"&&(je.preventDefault(),P(_e=>!_e))};return window.addEventListener("keydown",Ce),()=>window.removeEventListener("keydown",Ce)},[]);const qe=y.useCallback(()=>{const Ce=[],je=(_e,An,xt,Bi)=>Ce.push({icon:_e,label:An,kind:xt,run:Bi});if(o&&u&&R&&(N&&je("share","Share: "+R,"action",Oe),je("hist","History: "+R,"action",et),N&&je("download","Download: "+R,"action",()=>F.current?.click())),o&&u&&je("hist","History: whole project","action",()=>D("")),o)for(const _e of n.projects||[])(!u||_e.id!==u.id)&&je("folder","Switch to project: "+_e.name,"project",()=>Qt("/"+_e.id));l.auth?.enabled&&je("power","Sign out","action",()=>window.location.href="/auth/logout");for(const _e of x.keys())je("folder",_e,"folder",()=>de(_e));for(const _e of h)je("doc",_e.path,"file",()=>de(_e.path));return Ce},[o,u,R,N,l.auth?.enabled,x,h,n.projects,Oe,et,D,de]);y.useEffect(()=>{if(!A)return;const Ce=()=>O(!1);return document.addEventListener("click",Ce),()=>document.removeEventListener("click",Ce)},[A]);const kt=y.useCallback(Ce=>x.has(Ce),[x]);let ht="markdown",nt;te?(ht="view",nt=te.body):s.view==="insights"?(ht="view",nt=n.canInsights?p.jsx(jy,{flatFiles:h,heatMap:S,devices:C,scope:s.viewTarget||"",onOpenFile:de,onOpenFolder:de,isFolder:kt}):p.jsx("div",{className:"empty",children:"Insights is for hub admins and org owners."})):s.view==="history"?(ht="view",nt=p.jsx(oN,{apiBase:i,target:s.viewTarget||"",isFolder:kt,onOpen:de,onMeta:W,onRendered:oe})):R?g?H?(ht="view",nt=p.jsxs("div",{className:"notfound",children:[p.jsx("h1",{children:"Couldn't find that"}),p.jsxs("p",{children:[p.jsx("code",{children:R})," isn't in this project right now."]}),p.jsx("p",{className:"nf-sub",children:"If it was just created, it may still be uploading or syncing from a teammate's device — this page checks again automatically every few seconds, so refresh or come back in a moment."}),p.jsx("button",{className:"pbtn",onClick:()=>m.invalidateQueries({queryKey:["tree",i]}),children:"Check again"})]})):j?(ht="view",nt=p.jsx(pj,{node:x.get(R),heatMap:S,hub:o&&!!u,apiBase:i,onOpen:de,onFullHistory:D,onRendered:oe})):nt=p.jsx(vj,{apiBase:i,path:R,heatMap:S,flatFiles:h,onOpenFile:de,onMeta:W,onRendered:oe}):nt=p.jsx("div",{className:"empty",children:"Loading…"}):E?(ht="view",nt=p.jsxs(p.Fragment,{children:[p.jsx(Lx,{project:u}),n.canInsights&&p.jsx("div",{className:"home-insights",children:p.jsx(jy,{flatFiles:h,heatMap:S,devices:C,onOpenFile:de,onOpenFolder:de,isFolder:kt})})]})):nt=p.jsx("div",{className:"empty",children:"Select a file to read it."});const Za=te?te.crumb:R?p.jsx(fj,{path:R,onOpenFolder:de}):s.view==="insights"?"Insights — "+(s.viewTarget||u?.name||""):s.view==="history"?"History — "+cN(s.viewTarget||"",kt):E?u.name:null,jt=p.jsx(Xr,{crumb:Za,meta:Q,actions:p.jsxs(p.Fragment,{children:[$&&p.jsx(rn,{id:"share-btn",variant:"toolbar",className:"icon-only",title:"Share","aria-label":"Share",onClick:Oe,children:p.jsx(vt,{name:"share"})}),le&&!R&&!s.view&&p.jsxs(rn,{id:"history-btn",variant:"toolbar",onClick:et,children:[p.jsx(vt,{name:"hist"})," ",p.jsx("span",{className:"lbl",children:"History"})]}),ie&&p.jsx("a",{id:"download",hidden:!0,download:!0,href:Me,ref:F,children:"Download"}),xe&&p.jsx(rn,{id:"more-btn",variant:"toolbar",className:"icon-only",title:"More actions","aria-label":"More actions",onClick:Ce=>{Ce.stopPropagation(),O(!A)},children:p.jsx(vt,{name:"dots"})}),A&&p.jsxs("div",{id:"more-menu",role:"menu",children:[le&&p.jsx("button",{className:"more-item",onClick:et,children:"History"}),ie&&p.jsx("button",{className:"more-item",onClick:()=>F.current?.click(),children:"Download"}),n.canInsights&&p.jsx("button",{className:"more-item",onClick:()=>{n.onClosePanel?.(),Qt(Oi("insights",u?.id,R))},children:"Insights"})]})]})});return p.jsxs(p.Fragment,{children:[p.jsx(Qr,{vault:n.sidebar.vault,projectsNav:n.sidebar.projectsNav,orgBar:n.sidebar.orgBar,tree:p.jsx(uj,{root:v,expanded:I,onToggle:ce,currentPath:M,listingShowing:G,onOpen:de}),topbar:jt,contentClass:ht,contentRef:se,onContentScroll:me,children:nt}),ee&&p.jsx(Cj,{url:ee.url,copied:ee.copied,onClose:()=>Z(null)}),p.jsx(tN,{open:L,onClose:()=>P(!1),candidates:qe})]})}function uN({config:n}){const l=wh(),i=Ax(),[s,o]=y.useState(null),[u,f]=y.useState(null);y.useEffect(()=>f(null),[l]);const m=y.useMemo(()=>{const I=l.match(/^\/join\/([0-9a-f]+)\/?$/);return I?I[1]:null},[l]),{data:v}=m_(!m),{data:h}=p_(!m),x=!!n.auth.admin,{data:g}=Ox(x),S=y.useMemo(()=>jx(l,"hub"),[l]),E=y.useMemo(()=>v&&(v.find(I=>I.id===S.project)||s&&v.find(I=>I.org===s)||v[0])||null,[v,S.project,s]);if(y.useEffect(()=>{document.title=E?E.name+" — BearDrive":n.brand||n.volume||"BearDrive"},[E,n]),m)return p.jsx(dN,{token:m,onDone:async I=>{o(I),await i(),Qt("/",{replace:!0})}});const w=n.brand||n.volume||"BearDrive",C=E&&h?.find(I=>I.id===E.org)||null,R=x||(C?C.role==="owner":!1),M=p.jsx(gc,{name:w,onHome:()=>Qt("/"),search:!!E}),j=n.me?p.jsx(L_,{me:n.me,org:C,admin:x?{pending:g?.length||0,onClick:()=>{f({kind:"hub"}),Mn()}}:void 0,onOrgSettings:I=>{f({kind:"org",orgId:I.id}),Mn()}}):void 0;if(!v||!h)return p.jsx(Qr,{vault:M,topbar:p.jsx(Xr,{}),children:p.jsx("div",{className:"empty",children:"Loading…"})});if(!E)return p.jsx(Qr,{vault:M,projectsNav:p.jsx(Ey,{projects:v}),orgBar:j,topbar:p.jsx(Xr,{}),contentClass:"view",children:p.jsx(q_,{authEnabled:n.auth.enabled,onCreate:async I=>{if(!I){He("Give the project a name.",!0);return}try{const V=await ji("/api/projects",{name:I});await i(),Qt("/"+V.project.id),He(`Created “${V.project.name}”.`)}catch(V){He("Could not create the project: "+V.message,!0)}}})});const N=u?.kind==="org"?h.find(I=>I.id===u.orgId):null,H=u?.kind==="hub"?{crumb:"Signup & access",body:p.jsx(T_,{})}:N?{crumb:N.name,body:p.jsx(C_,{org:N,projects:v,myEmail:n.me?.email||"",onProjectsChanged:i})}:null,G=S.view==="settings"?{crumb:"Project settings",body:p.jsx(H_,{project:E,org:C})}:S.view==="install"?{crumb:"Installation",body:p.jsx("div",{className:"onboard",children:p.jsx(Lx,{project:E})})}:null;return S.project!==E.id?p.jsx(b_,{to:"/"+E.id}):p.jsx(Kx,{config:n,apiBase:"/api/p/"+E.id+"/",route:S,hub:!0,project:E,projects:v,canInsights:R,sidebar:{vault:M,projectsNav:p.jsx(Ey,{projects:v,currentId:E.id,menu:{active:u?null:S.view==="insights"&&!S.viewTarget?"dashboard":S.view==="install"?"install":S.view==="history"&&!S.viewTarget?"history":S.view==="settings"?"settings":null,onDashboard:()=>{f(null),Qt(Oi("insights",E.id)),Mn()},onInstall:()=>{f(null),Qt(Oi("install",E.id)),Mn()},onHistory:()=>{f(null),Qt(Oi("history",E.id)),Mn()},onSettings:()=>{f(null),Qt(Oi("settings",E.id)),Mn()}}}),orgBar:j},panel:H||G,onClosePanel:()=>f(null)},E.id)}function dN({token:n,onDone:l}){return y.useEffect(()=>{let i=!1;return ji("/api/invites/"+n).then(s=>{i||(He(`Welcome — you joined the “${s.org.name}” team. Opening its projects…`),l(s.org.id))}).catch(s=>{i||String(s.message).includes("signing in")||(He("Could not accept the invite: "+s.message,!0),l(null))}),()=>{i=!0}},[n]),p.jsx(Qr,{vault:p.jsx(gc,{name:"BearDrive"}),topbar:p.jsx(Xr,{}),children:p.jsx("div",{className:"empty",children:"Joining…"})})}function fN({config:n}){const l=wh(),i=n.volume||"BearDrive";y.useEffect(()=>{document.title=n.brand||i},[n,i]);const s=y.useMemo(()=>jx(l,"volume"),[l]);return p.jsx(Kx,{config:n,apiBase:"/api/",route:s,hub:!1,sidebar:{vault:p.jsx(gc,{name:i,showSignout:n.auth.enabled,search:!0})}})}function hN(){const{data:n}=Ww();return p.jsxs(hO,{delayDuration:150,children:[n?n.mode==="hub"?p.jsx(uN,{config:n}):p.jsx(fN,{config:n}):p.jsx(Qr,{vault:p.jsx(gc,{name:"…",showSignout:!1}),topbar:p.jsx(Xr,{}),children:p.jsx("div",{className:"empty",children:"Loading…"})}),p.jsx(r_,{}),p.jsx(d_,{})]})}const mN=new Iw({defaultOptions:{queries:{retry:1,refetchOnWindowFocus:!1}}});mw.createRoot(document.getElementById("root")).render(p.jsx(y.StrictMode,{children:p.jsx(qw,{client:mN,children:p.jsx(hN,{})})})); diff --git a/internal/webapp/static/index.html b/internal/webapp/static/index.html index cd59a11..e0d198b 100644 --- a/internal/webapp/static/index.html +++ b/internal/webapp/static/index.html @@ -5,8 +5,8 @@ BearDrive - - + +