From 06aa713a560cafc2808535fa07813a7abded4bd3 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Thu, 12 Nov 2026 15:09:13 +0000 Subject: [PATCH] =?UTF-8?q?=D0=90=D0=B4=D0=BC=D0=B8=D0=BD=D0=BA=D0=B0:=20?= =?UTF-8?q?=D0=BB=D0=BE=D0=B3=D0=B8=20=D0=B8=20=D0=BF=D0=BE=D0=B4=D1=80?= =?UTF-8?q?=D0=BE=D0=B1=D0=BD=D0=BE=D1=81=D1=82=D0=B8=20=D0=B2=20=D0=BE?= =?UTF-8?q?=D0=BA=D0=BD=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Логи NUC, проверка источников, отчёт DHT, сбой и подробности мониторинга открываются поверх страницы. У лога фильтр, обновление и копирование. Co-authored-by: ANDY BUM --- CHANGELOG.en.md | 2 + CHANGELOG.md | 2 + .../admin/src/components/logDialog.tsx | 63 ++++++++ ops/billing/admin/src/components/modal.tsx | 75 +++++++++ ops/billing/admin/src/lib/logText.ts | 27 ++++ ops/billing/admin/src/lib/monitorView.ts | 16 ++ ops/billing/admin/src/panels/DeskViews.tsx | 72 ++++++--- ops/billing/admin/src/panels/DhtPanel.tsx | 10 +- ops/billing/admin/src/panels/MonitorPanel.tsx | 29 +++- ops/billing/admin/src/panels/OpsExtra.tsx | 18 ++- ops/billing/public/assets/index-CCVriGa7.css | 1 - ops/billing/public/assets/index-CrNBBdsz.css | 1 + .../{index-CXP6R3pY.js => index-CvsAGg-z.js} | 149 ++++++++++-------- ops/billing/public/index.html | 4 +- ops/billing/test/adminLog.test.ts | 18 +++ ops/billing/test/adminModal.test.tsx | 119 ++++++++++++++ ops/billing/test/monitorView.test.ts | 12 +- ops/billing/vitest.config.ts | 21 ++- 18 files changed, 536 insertions(+), 103 deletions(-) create mode 100644 ops/billing/admin/src/components/logDialog.tsx create mode 100644 ops/billing/admin/src/components/modal.tsx create mode 100644 ops/billing/admin/src/lib/logText.ts delete mode 100644 ops/billing/public/assets/index-CCVriGa7.css create mode 100644 ops/billing/public/assets/index-CrNBBdsz.css rename ops/billing/public/assets/{index-CXP6R3pY.js => index-CvsAGg-z.js} (52%) create mode 100644 ops/billing/test/adminLog.test.ts create mode 100644 ops/billing/test/adminModal.test.tsx diff --git a/CHANGELOG.en.md b/CHANGELOG.en.md index 3e267ba66..19dba912a 100644 --- a/CHANGELOG.en.md +++ b/CHANGELOG.en.md @@ -6,6 +6,8 @@ The English translation covers the latest versions only; the full history (in Ru ## Unreleased +- [tech] Admin: NUC logs, a source check, the DHT probe, a crash report and monitor details open in a window over the page. A log has a filter, refresh and copy + ## 0.30.1-beta.6 - [phone] The embedded 2160 Player is updated to 0.2.26. The seek bar is full width with equal side gutters, elapsed time on the left and remaining on the right (both show --:-- until duration is known), and buffering shows a spinner in the centre button diff --git a/CHANGELOG.md b/CHANGELOG.md index 6cdb5e537..5b615ef22 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,8 @@ ## Не выпущено +- [tech] Админка: логи NUC, проверка источников, отчёт DHT, отчёт о сбое и подробности мониторинга открываются в окне поверх страницы. У лога есть фильтр, обновление и копирование + ## 0.30.1-beta.6 - [phone] Встроенный плеер 2160 обновлён до 0.2.26. Полоса перемотки на всю ширину с одинаковыми боковыми отступами, прошедшее слева и остаток справа (пока длина неизвестна, обе стороны --:--), при буферизации в центре спиннер diff --git a/ops/billing/admin/src/components/logDialog.tsx b/ops/billing/admin/src/components/logDialog.tsx new file mode 100644 index 000000000..25c34515f --- /dev/null +++ b/ops/billing/admin/src/components/logDialog.tsx @@ -0,0 +1,63 @@ +import { useState } from 'react'; +import { Modal } from '@/components/modal'; +import { toast } from '@/components/chrome'; +import { filterLogLines } from '@/lib/logText'; + +const fieldClass = 'h-10 min-w-0 flex-1 rounded-md border border-input bg-background px-3 text-sm text-foreground'; +const buttonClass = 'h-10 shrink-0 rounded-md bg-secondary px-3 text-sm font-semibold text-secondary-foreground disabled:opacity-50'; + +/** Scrollable monospace text over the page, with a line filter, optional refresh and copy. */ +export function LogDialog({ + title, + text, + onClose, + onRefresh, + refreshing, +}: { + title: string; + text: string; + onClose: () => void; + onRefresh?: () => void; + refreshing?: boolean; +}) { + const [query, setQuery] = useState(''); + const shown = filterLogLines(text, query); + return ( + +
+ setQuery(e.target.value)} + /> + {onRefresh ? ( + + ) : null} + +
+
+        {shown || (query.trim() ? 'Нет строк' : '')}
+      
+
+ ); +} diff --git a/ops/billing/admin/src/components/modal.tsx b/ops/billing/admin/src/components/modal.tsx new file mode 100644 index 000000000..3a533b4b8 --- /dev/null +++ b/ops/billing/admin/src/components/modal.tsx @@ -0,0 +1,75 @@ +import { useEffect, useId, useRef, type ReactNode } from 'react'; + +const FOCUSABLE = 'a[href], button:not([disabled]), textarea:not([disabled]), input:not([disabled]), select:not([disabled]), [tabindex]:not([tabindex="-1"])'; + +/** + * Window over the page. Esc, the close button and a click on the dimmed page close it. + * Tab stays inside. Focus returns to the control that opened it. + */ +export function Modal({ title, onClose, children }: { title: string; onClose: () => void; children: ReactNode }) { + const titleId = useId(); + const panel = useRef(null); + const closeRef = useRef(onClose); + closeRef.current = onClose; + + useEffect(() => { + const previous = document.activeElement instanceof HTMLElement ? document.activeElement : null; + const root = panel.current; + root?.focus(); + const onKey = (e: KeyboardEvent) => { + if (e.key === 'Escape') { + e.preventDefault(); + closeRef.current(); + return; + } + if (e.key !== 'Tab' || !root) return; + const nodes = Array.from(root.querySelectorAll(FOCUSABLE)); + if (!nodes.length) { + e.preventDefault(); + return; + } + const first = nodes[0]; + const last = nodes[nodes.length - 1]; + const active = document.activeElement; + if (e.shiftKey && (active === first || !root.contains(active))) { + e.preventDefault(); + last.focus(); + } else if (!e.shiftKey && active === last) { + e.preventDefault(); + first.focus(); + } + }; + document.addEventListener('keydown', onKey); + const prevOverflow = document.body.style.overflow; + document.body.style.overflow = 'hidden'; + return () => { + document.removeEventListener('keydown', onKey); + document.body.style.overflow = prevOverflow; + previous?.focus(); + }; + }, []); + + return ( +
closeRef.current()}> +
e.stopPropagation()} + > +
+

+ {title} +

+ +
+
{children}
+
+
+ ); +} diff --git a/ops/billing/admin/src/lib/logText.ts b/ops/billing/admin/src/lib/logText.ts new file mode 100644 index 000000000..43f8937e1 --- /dev/null +++ b/ops/billing/admin/src/lib/logText.ts @@ -0,0 +1,27 @@ +/** Line filter for the admin log window. A blank query keeps every line. */ + +export function filterLogLines(text: string, query: string): string { + const q = query.trim().toLowerCase(); + if (!q) return text; + return text + .split('\n') + .filter((line) => line.toLowerCase().indexOf(q) >= 0) + .join('\n'); +} + +export type HealthLine = { + name: string; + ok: boolean | null; + latencyMs: number; + lastError?: string; +}; + +/** Short lines, then the same rows as JSON, for the source-check window. */ +export function healthReport(rows: HealthLine[]): string { + const lines = rows.map((row) => { + const state = row.ok === true ? 'ок' : row.ok === false ? 'нет' : '-'; + const err = row.lastError ? ' · ' + row.lastError : ''; + return row.name + ': ' + state + ', ' + row.latencyMs + ' мс' + err; + }); + return lines.join('\n') + '\n\n' + JSON.stringify(rows, null, 2); +} diff --git a/ops/billing/admin/src/lib/monitorView.ts b/ops/billing/admin/src/lib/monitorView.ts index d73148a7d..11da94bb7 100644 --- a/ops/billing/admin/src/lib/monitorView.ts +++ b/ops/billing/admin/src/lib/monitorView.ts @@ -217,3 +217,19 @@ export function buildView(groups: { id: string; title: string }[], checks: Monit const order = new Map(groups.map((g, i) => [g.id, i])); return out.sort((a, b) => (a.failed ? 0 : 1) - (b.failed ? 0 : 1) || (order.get(a.id) || 0) - (order.get(b.id) || 0)); } + +function statusWord(ok: boolean | null) { + if (ok === true) return 'ок'; + if (ok === false) return 'ошибка'; + return 'нет данных'; +} + +/** Readable lines plus the raw check, for the monitor detail window. */ +export function monitorDetailText(row: MonitorCheck): string { + const lines = [row.name, 'id: ' + row.id, 'статус: ' + statusWord(row.ok), 'результат: ' + (row.detail || '-')]; + if (row.context) lines.push('контекст: ' + row.context); + lines.push('время ответа: ' + (row.ms || 0) + ' мс'); + if (row.path) lines.push('путь: ' + row.path); + if (row.target) lines.push('адрес: ' + row.target); + return lines.join('\n') + '\n\n' + JSON.stringify(row, null, 2); +} diff --git a/ops/billing/admin/src/panels/DeskViews.tsx b/ops/billing/admin/src/panels/DeskViews.tsx index 890c33089..81fe0e60a 100644 --- a/ops/billing/admin/src/panels/DeskViews.tsx +++ b/ops/billing/admin/src/panels/DeskViews.tsx @@ -11,6 +11,9 @@ import { post } from '@/lib/api'; import type { DeskData, DeskDevice, DeskUser } from '@/lib/desk'; import { Stamp } from '@/components/stamp'; import { toast } from '@/components/chrome'; +import { LogDialog } from '@/components/logDialog'; +import { healthReport } from '@/lib/logText'; +import type { HealthRow } from '@/lib/desk'; function Spark({ rows }: { rows?: { t: string | number; v: number }[] }) { const data = rows || []; @@ -93,14 +96,7 @@ export function DeskHome({ data, csrf }: { data?: DeskData; csrf: string }) { {h.ok ? 'ок' : h.ok === false ? 'нет' : '-'} ))} - + @@ -207,7 +203,7 @@ export function SourcesDesk({ data, csrf }: { data?: DeskData; csrf: string }) { ))} - + ); } @@ -370,9 +366,35 @@ type NucBox = { restart?: boolean; }; +function SourceCheck({ csrf, label }: { csrf: string; label: string }) { + const [text, setText] = useState(null); + return ( + <> + + {text != null ? setText(null)} /> : null} + + ); +} + +type OpenLog = { name: string; text: string; refreshing: boolean }; + export function NucDesk({ csrf }: { csrf: string }) { const { paused } = useLive(); - const [logs, setLogs] = useState(''); + const [log, setLog] = useState(null); const query = useQuery({ queryKey: ['nuc'], refetchInterval: paused ? false : 15000, @@ -412,14 +434,7 @@ export function NucDesk({ csrf }: { csrf: string }) {
- {c.restart ? ( @@ -437,9 +452,28 @@ export function NucDesk({ csrf }: { csrf: string }) { ))} - {logs ?
{logs}
: null} + {log ? ( + void openLog(log.name)} + onClose={() => setLog(null)} + /> + ) : null}
); + + async function openLog(name: string) { + setLog((cur) => ({ name, text: cur && cur.name === name ? cur.text : '', refreshing: true })); + try { + const res = await fetch('/admin/api/nuc/logs?name=' + encodeURIComponent(name), { credentials: 'same-origin' }); + const j = (await res.json()) as { lines?: string; error?: string }; + setLog({ name, text: j.lines || j.error || '', refreshing: false }); + } catch { + setLog({ name, text: 'логи недоступны', refreshing: false }); + } + } } export function RollbackCard({ rows, csrf }: { rows: { id: string; at: number }[]; csrf: string }) { diff --git a/ops/billing/admin/src/panels/DhtPanel.tsx b/ops/billing/admin/src/panels/DhtPanel.tsx index 30042b756..f44a65ae5 100644 --- a/ops/billing/admin/src/panels/DhtPanel.tsx +++ b/ops/billing/admin/src/panels/DhtPanel.tsx @@ -5,6 +5,7 @@ import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card'; import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from '@/components/ui/table'; import { api } from '@/lib/api'; import { createLoadGate } from '@/lib/dhtLoad'; +import { LogDialog } from '@/components/logDialog'; import { probeText, type DhtProbeResult } from '@/lib/dhtProbe'; import { when } from '@/lib/text'; @@ -89,7 +90,7 @@ function Bars({ rows, field, label, color }: { rows: DhtPoint[]; field: 'request export function DhtPanel({ csrf }: { csrf: string }) { const [data, setData] = useState(null); const [err, setErr] = useState(''); - const [probe, setProbe] = useState(null); + const [probeView, setProbeView] = useState(null); const [probing, setProbing] = useState(false); const loads = useRef(createLoadGate()); @@ -128,10 +129,11 @@ export function DhtPanel({ csrf }: { csrf: string }) { headers: { 'content-type': 'application/json', Accept: 'application/json' }, body: JSON.stringify({ csrf }), }); - setProbe(res); + setProbeView(probeText(res) + '\n\n' + JSON.stringify(res, null, 2)); await load(); } catch (e) { - setProbe({ ok: false, error: e instanceof Error ? e.message : 'проверка' }); + const fail: ProbeResult = { ok: false, error: e instanceof Error ? e.message : 'проверка' }; + setProbeView(probeText(fail) + '\n\n' + JSON.stringify(fail, null, 2)); } finally { setProbing(false); } @@ -173,7 +175,7 @@ export function DhtPanel({ csrf }: { csrf: string }) { {mem ? память {mem} : null}

Лимит: {limitText(data.limit)}. Меняется в «Настройках». Обновление само, раз в 20 с.

- {probe ?

{probeText(probe)}

: null} + {probeView != null ? setProbeView(null)} /> : null}
Запросов за 24 ч
diff --git a/ops/billing/admin/src/panels/MonitorPanel.tsx b/ops/billing/admin/src/panels/MonitorPanel.tsx index 62aa6876d..882024e3e 100644 --- a/ops/billing/admin/src/panels/MonitorPanel.tsx +++ b/ops/billing/admin/src/panels/MonitorPanel.tsx @@ -1,4 +1,5 @@ import { createContext, useContext, useEffect, useRef, useState } from 'react'; +import { LogDialog } from '@/components/logDialog'; import { Alert } from '@/components/ui/alert'; import { Badge } from '@/components/ui/badge'; import { Button } from '@/components/ui/button'; @@ -23,6 +24,7 @@ import { type MonitorItem, type MonitorPrefs, type MonitorSort, + monitorDetailText, } from '@/lib/monitorView'; export type { MonitorCheck } from '@/lib/monitorView'; @@ -52,6 +54,16 @@ const ROW_STATE_TEXT: Record = { queued: 'в очереди', /** What a table row needs from the panel: the live run states and the per-row recheck. */ type RowCtxValue = { states: Record; running: boolean; pending: string[]; recheck: (ids: string[]) => void }; const RowCtx = createContext({ states: {}, running: false, pending: [], recheck: () => {} }); +const OpenCtx = createContext<(row: MonitorCheck) => void>(() => {}); + +function More({ row }: { row: MonitorCheck }) { + const open = useContext(OpenCtx); + return ( + + ); +} /** Live state of the checks in a row while a run goes, plus «Перепроверить» on a red row when nothing runs. */ function RowRun({ ids, red, recheckIds }: { ids: string[]; red: boolean; recheckIds?: string[] }) { @@ -142,6 +154,7 @@ function Detail({ row }: { row?: MonitorCheck }) { {row.at ? · {clock(row.at)} : null} {row.retried && row.ok === false ? · повтор через 30 с : null} {!row.alert && row.ok === false ? · без алерта : null} + ); } @@ -198,6 +211,7 @@ function Cell({ row }: { row?: MonitorCheck }) {
{row.detail} + {row.ms ? ' · ' + row.ms + ' мс' : ''} {row.at ? ' · ' + clock(row.at) : ''}
@@ -254,7 +268,16 @@ function TrackerTable({ rows, withSearch }: { rows: MonitorItem[]; withSearch: b ) : null} - {t.site ? {t.site.detail} : } + + {t.site ? ( + + {t.site.detail} + + + ) : ( + + )} + {t.site ? null : } {main ? : null} @@ -405,7 +428,9 @@ export function MonitorView({ const summary = !running ? data?.lastSummary || null : null; const nameOf = (id: string) => checks.find((c) => c.id === id)?.name || id; const rowCtx: RowCtxValue = { states: progress?.states || {}, running, pending: pending || [], recheck: onRowRecheck || (() => {}) }; + const [picked, setPicked] = useState(null); return ( +
@@ -476,8 +501,10 @@ export function MonitorView({ {view.map((g) => ( setPrefs({ ...prefs, open: { ...prefs.open, [id]: open } })} /> ))} + {picked ? setPicked(null)} /> : null}
+
); } diff --git a/ops/billing/admin/src/panels/OpsExtra.tsx b/ops/billing/admin/src/panels/OpsExtra.tsx index c2201e465..831c76e47 100644 --- a/ops/billing/admin/src/panels/OpsExtra.tsx +++ b/ops/billing/admin/src/panels/OpsExtra.tsx @@ -5,6 +5,7 @@ import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card'; import { api, post } from '@/lib/api'; import { useLive } from '@/lib/live'; import { toast } from '@/components/chrome'; +import { LogDialog } from '@/components/logDialog'; import { Stamp } from '@/components/stamp'; import type { DeskData } from '@/lib/desk'; @@ -29,6 +30,16 @@ export function CrashesDesk({ csrf }: { csrf: string }) { queryFn: () => api<{ groups?: Group[] }>('/admin/api/crashes'), }); const groups = q.data?.groups || []; + const [crash, setCrash] = useState<{ title: string; text: string } | null>(null); + async function openLog(g: Group) { + setCrash({ title: g.title, text: '' }); + try { + const res = await fetch('/admin/api/crashes/log?id=' + encodeURIComponent(g.id), { credentials: 'same-origin' }); + setCrash({ title: g.title, text: await res.text() }); + } catch { + setCrash({ title: g.title, text: 'лог недоступен' }); + } + } return (
{groups.length === 0 ?

Сбоев нет

: null} @@ -45,9 +56,9 @@ export function CrashesDesk({ csrf }: { csrf: string }) {
{(g.versions || []).join(', ')}
- +
- ))} + ))} + {crash ? setCrash(null)} /> : null}
); } diff --git a/ops/billing/public/assets/index-CCVriGa7.css b/ops/billing/public/assets/index-CCVriGa7.css deleted file mode 100644 index 1d23c1998..000000000 --- a/ops/billing/public/assets/index-CCVriGa7.css +++ /dev/null @@ -1 +0,0 @@ -/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@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-space-y-reverse:0;--tw-space-x-reverse:0;--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-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--color-red-200:oklch(88.5% .062 18.334);--color-red-600:oklch(57.7% .245 27.325);--color-red-800:oklch(44.4% .177 26.899);--color-red-900:oklch(39.6% .141 25.723);--color-red-950:oklch(25.8% .092 26.042);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-300:oklch(87.9% .169 91.605);--color-amber-500:oklch(76.9% .188 70.08);--color-amber-700:oklch(55.5% .163 48.998);--color-amber-800:oklch(47.3% .137 46.201);--color-amber-950:oklch(27.9% .077 45.635);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-300:oklch(84.5% .143 164.978);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-700:oklch(50.8% .118 165.612);--color-emerald-800:oklch(43.2% .095 166.913);--color-emerald-950:oklch(26.2% .051 172.552);--color-zinc-50:oklch(98.5% 0 none);--color-zinc-100:oklch(96.7% .001 286.375);--color-zinc-200:oklch(92% .004 286.32);--color-zinc-500:oklch(55.2% .016 285.938);--color-zinc-600:oklch(44.2% .017 285.786);--color-zinc-700:oklch(37% .013 285.805);--color-zinc-800:oklch(27.4% .006 286.033);--color-zinc-950:oklch(14.1% .005 285.823);--color-black:#000;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-xl:36rem;--container-4xl:56rem;--container-5xl:64rem;--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);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--tracking-wider:.05em;--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:"IBM Plex Mono", ui-monospace, monospace}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:#31342c}html{scrollbar-width:none;-ms-overflow-style:none;height:100%;overflow-y:auto}html::-webkit-scrollbar{width:0;height:0;display:none}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#f2f2e9;scrollbar-width:none;-ms-overflow-style:none;background:#111310;min-height:100%;margin:0;font-family:Manrope,Segoe UI,system-ui,sans-serif;overflow-y:auto}body::-webkit-scrollbar{width:0;height:0;display:none}}@layer components;@layer utilities{.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.top-0{top:0}.top-1{top:var(--spacing)}.top-1\.5{top:calc(var(--spacing) * 1.5)}.bottom-6{bottom:calc(var(--spacing) * 6)}.-left-\[7px\]{left:-7px}.left-1{left:var(--spacing)}.left-1\/2{left:50%}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.mx-auto{margin-inline:auto}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mr-1{margin-right:var(--spacing)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mb-1{margin-bottom:var(--spacing)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.ml-1{margin-left:var(--spacing)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-2{height:calc(var(--spacing) * 2)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.h-12{height:calc(var(--spacing) * 12)}.h-16{height:calc(var(--spacing) * 16)}.h-20{height:calc(var(--spacing) * 20)}.h-24{height:calc(var(--spacing) * 24)}.h-36{height:calc(var(--spacing) * 36)}.h-40{height:calc(var(--spacing) * 40)}.h-48{height:calc(var(--spacing) * 48)}.h-80{height:calc(var(--spacing) * 80)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.max-h-80{max-height:calc(var(--spacing) * 80)}.min-h-0{min-height:0}.min-h-28{min-height:calc(var(--spacing) * 28)}.min-h-\[80px\]{min-height:80px}.min-h-screen{min-height:100vh}.w-1\/2{width:50%}.w-2{width:calc(var(--spacing) * 2)}.w-2\/3{width:66.6667%}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-3\/4{width:75%}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-12{width:calc(var(--spacing) * 12)}.w-16{width:calc(var(--spacing) * 16)}.w-20{width:calc(var(--spacing) * 20)}.w-24{width:calc(var(--spacing) * 24)}.w-28{width:calc(var(--spacing) * 28)}.w-32{width:calc(var(--spacing) * 32)}.w-36{width:calc(var(--spacing) * 36)}.w-40{width:calc(var(--spacing) * 40)}.w-48{width:calc(var(--spacing) * 48)}.w-56{width:calc(var(--spacing) * 56)}.w-\[2px\]{width:2px}.w-\[240px\]{width:240px}.w-full{width:100%}.max-w-4xl{max-width:var(--container-4xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-\[90\%\]{max-width:90%}.max-w-\[260px\]{max-width:260px}.max-w-\[1200px\]{max-width:1200px}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:0}.min-w-\[4px\]{min-width:4px}.min-w-\[6px\]{min-width:6px}.min-w-\[32rem\]{min-width:32rem}.min-w-\[36rem\]{min-width:36rem}.min-w-\[40rem\]{min-width:40rem}.flex-1{flex:1}.shrink-0{flex-shrink:0}.caption-bottom{caption-side:bottom}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-pointer{cursor:pointer}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-px{gap:1px}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-2{column-gap:calc(var(--spacing) * 2)}:where(.space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)))}.gap-y-1{row-gap:var(--spacing)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:.75rem}.rounded-md{border-radius:.5rem}.rounded-sm{border-radius:.375rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.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-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-amber-500{border-color:var(--color-amber-500)}.border-amber-700\/60{border-color:#b7500099}@supports (color:color-mix(in lab,red,red)){.border-amber-700\/60{border-color:color-mix(in oklab,var(--color-amber-700) 60%,transparent)}}.border-amber-800\/50{border-color:#953d0080}@supports (color:color-mix(in lab,red,red)){.border-amber-800\/50{border-color:color-mix(in oklab,var(--color-amber-800) 50%,transparent)}}.border-border{border-color:#31342c}.border-border\/60{border-color:#31342c99}.border-current{border-color:currentColor}.border-destructive\/50{border-color:#c4483a80}.border-emerald-700\/50{border-color:#00795680}@supports (color:color-mix(in lab,red,red)){.border-emerald-700\/50{border-color:color-mix(in oklab,var(--color-emerald-700) 50%,transparent)}}.border-input{border-color:#31342c}.border-primary{border-color:#f9c400}.border-primary\/40{border-color:#f9c40066}.border-red-900\/50{border-color:#82181a80}@supports (color:color-mix(in lab,red,red)){.border-red-900\/50{border-color:color-mix(in oklab,var(--color-red-900) 50%,transparent)}}.border-transparent{border-color:#0000}.border-t-transparent{border-top-color:#0000}.bg-\[\#f5b700\]{background-color:#f5b700}.bg-amber-300\/20{background-color:#ffd23633}@supports (color:color-mix(in lab,red,red)){.bg-amber-300\/20{background-color:color-mix(in oklab,var(--color-amber-300) 20%,transparent)}}.bg-amber-500{background-color:var(--color-amber-500)}.bg-amber-950{background-color:var(--color-amber-950)}.bg-amber-950\/30{background-color:#4619014d}@supports (color:color-mix(in lab,red,red)){.bg-amber-950\/30{background-color:color-mix(in oklab,var(--color-amber-950) 30%,transparent)}}.bg-background{background-color:#111310}.bg-background\/40{background-color:#11131066}.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-black\/60{background-color:#0009}@supports (color:color-mix(in lab,red,red)){.bg-black\/60{background-color:color-mix(in oklab,var(--color-black) 60%,transparent)}}.bg-black\/70{background-color:#000000b3}@supports (color:color-mix(in lab,red,red)){.bg-black\/70{background-color:color-mix(in oklab,var(--color-black) 70%,transparent)}}.bg-card{background-color:#181a15}.bg-destructive{background-color:#c4483a}.bg-emerald-600{background-color:var(--color-emerald-600)}.bg-emerald-950{background-color:var(--color-emerald-950)}.bg-emerald-950\/30{background-color:#002c224d}@supports (color:color-mix(in lab,red,red)){.bg-emerald-950\/30{background-color:color-mix(in oklab,var(--color-emerald-950) 30%,transparent)}}.bg-muted{background-color:#181a15}.bg-primary{background-color:#f9c400}.bg-red-600{background-color:var(--color-red-600)}.bg-red-950{background-color:var(--color-red-950)}.bg-red-950\/30{background-color:#4608094d}@supports (color:color-mix(in lab,red,red)){.bg-red-950\/30{background-color:color-mix(in oklab,var(--color-red-950) 30%,transparent)}}.bg-red-950\/40{background-color:#46080966}@supports (color:color-mix(in lab,red,red)){.bg-red-950\/40{background-color:color-mix(in oklab,var(--color-red-950) 40%,transparent)}}.bg-secondary{background-color:#31342c}.bg-transparent{background-color:#0000}.bg-zinc-700\/60{background-color:#3f3f4699}@supports (color:color-mix(in lab,red,red)){.bg-zinc-700\/60{background-color:color-mix(in oklab,var(--color-zinc-700) 60%,transparent)}}.bg-zinc-800{background-color:var(--color-zinc-800)}.bg-zinc-950{background-color:var(--color-zinc-950)}.object-cover{object-fit:cover}.p-1{padding:var(--spacing)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.px-0{padding-inline:0}.px-1{padding-inline:var(--spacing)}.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-0\.5{padding-block:calc(var(--spacing) * .5)}.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-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.pt-0{padding-top:0}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-\[12vh\]{padding-top:12vh}.pr-2{padding-right:calc(var(--spacing) * 2)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pl-4{padding-left:calc(var(--spacing) * 4)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.align-top{vertical-align:top}.font-mono{font-family:IBM Plex Mono,ui-monospace,monospace}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.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))}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.leading-none{--tw-leading:1;line-height:1}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.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-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-amber-100{color:var(--color-amber-100)}.text-amber-200{color:var(--color-amber-200)}.text-amber-300{color:var(--color-amber-300)}.text-card-foreground{color:#f2f2e9}.text-destructive{color:#c4483a}.text-destructive-foreground{color:#f2f2e9}.text-emerald-100{color:var(--color-emerald-100)}.text-emerald-300{color:var(--color-emerald-300)}.text-foreground{color:#f2f2e9}.text-muted-foreground{color:#b3b8a8}.text-primary{color:#f9c400}.text-primary-foreground{color:#111310}.text-red-200{color:var(--color-red-200)}.text-secondary-foreground{color:#f2f2e9}.text-zinc-50{color:var(--color-zinc-50)}.text-zinc-100{color:var(--color-zinc-100)}.text-zinc-200{color:var(--color-zinc-200)}.text-zinc-950{color:var(--color-zinc-950)}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.underline-offset-4{text-underline-offset:4px}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px 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-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px 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)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + 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)}.ring-amber-700{--tw-ring-color:var(--color-amber-700)}.ring-emerald-800{--tw-ring-color:var(--color-emerald-800)}.ring-red-800{--tw-ring-color:var(--color-red-800)}.ring-zinc-500{--tw-ring-color:var(--color-zinc-500)}.ring-zinc-600{--tw-ring-color:var(--color-zinc-600)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.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))}.placeholder\:text-muted-foreground::placeholder{color:#b3b8a8}@media(hover:hover){.hover\:bg-destructive\/90:hover{background-color:#c4483ae6}.hover\:bg-muted\/60:hover{background-color:#181a1599}.hover\:bg-primary\/90:hover{background-color:#f9c400e6}.hover\:bg-secondary:hover{background-color:#31342c}.hover\:bg-secondary\/50:hover{background-color:#31342c80}.hover\:bg-secondary\/80:hover{background-color:#31342ccc}.hover\:bg-zinc-800\/80:hover{background-color:#27272acc}@supports (color:color-mix(in lab,red,red)){.hover\:bg-zinc-800\/80:hover{background-color:color-mix(in oklab,var(--color-zinc-800) 80%,transparent)}}.hover\:text-zinc-50:hover{color:var(--color-zinc-50)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}}.focus-visible\:ring-2:focus-visible{--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-visible\:ring-ring:focus-visible{--tw-ring-color:#f9c400}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.data-\[state\=active\]\:bg-\[\#f5b700\][data-state=active]{background-color:#f5b700}.data-\[state\=active\]\:text-\[\#1a1400\][data-state=active]{color:#1a1400}.data-\[state\=active\]\:shadow[data-state=active]{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px 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)}.data-\[state\=inactive\]\:bg-transparent[data-state=inactive]{background-color:#0000}.data-\[state\=inactive\]\:text-zinc-200[data-state=inactive]{color:var(--color-zinc-200)}.data-\[state\=inactive\]\:shadow-none[data-state=inactive]{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}@media(min-width:40rem){.sm\:w-auto{width:auto}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}}@media(min-width:48rem){.md\:col-span-2{grid-column:span 2/span 2}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}}@media(min-width:64rem){.lg\:block{display:block}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:w-56{width:calc(var(--spacing) * 56)}.lg\:shrink-0{flex-shrink:0}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:grid-cols-\[280px_1fr\]{grid-template-columns:280px 1fr}.lg\:border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.lg\:border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}}.\[\&_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}}.omp-scroll{scrollbar-width:thin;scrollbar-color:#3d4451 transparent}.omp-scroll::-webkit-scrollbar{width:8px;height:8px}.omp-scroll::-webkit-scrollbar-track{background:0 0}.omp-scroll::-webkit-scrollbar-thumb{background:#3d4451;border-radius:999px}.omp-scroll::-webkit-scrollbar-thumb:hover{background:#535c6e}[cmdk-input]{width:100%;color:inherit;background:0 0;border:0;outline:none;padding:12px 14px}[cmdk-item]{cursor:pointer;border-radius:6px;padding:8px 10px}[cmdk-item][data-selected=true]{background:#31342c}[cmdk-group-heading]{letter-spacing:.04em;text-transform:uppercase;color:#b3b8a8;padding:6px 10px;font-size:11px}@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-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@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-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}} diff --git a/ops/billing/public/assets/index-CrNBBdsz.css b/ops/billing/public/assets/index-CrNBBdsz.css new file mode 100644 index 000000000..6986ff0d2 --- /dev/null +++ b/ops/billing/public/assets/index-CrNBBdsz.css @@ -0,0 +1 @@ +/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@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-space-y-reverse:0;--tw-space-x-reverse:0;--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-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--color-red-200:oklch(88.5% .062 18.334);--color-red-600:oklch(57.7% .245 27.325);--color-red-800:oklch(44.4% .177 26.899);--color-red-900:oklch(39.6% .141 25.723);--color-red-950:oklch(25.8% .092 26.042);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-200:oklch(92.4% .12 95.746);--color-amber-300:oklch(87.9% .169 91.605);--color-amber-500:oklch(76.9% .188 70.08);--color-amber-700:oklch(55.5% .163 48.998);--color-amber-800:oklch(47.3% .137 46.201);--color-amber-950:oklch(27.9% .077 45.635);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-300:oklch(84.5% .143 164.978);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-700:oklch(50.8% .118 165.612);--color-emerald-800:oklch(43.2% .095 166.913);--color-emerald-950:oklch(26.2% .051 172.552);--color-zinc-50:oklch(98.5% 0 none);--color-zinc-100:oklch(96.7% .001 286.375);--color-zinc-200:oklch(92% .004 286.32);--color-zinc-500:oklch(55.2% .016 285.938);--color-zinc-600:oklch(44.2% .017 285.786);--color-zinc-700:oklch(37% .013 285.805);--color-zinc-800:oklch(27.4% .006 286.033);--color-zinc-950:oklch(14.1% .005 285.823);--color-black:#000;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-xl:36rem;--container-3xl:48rem;--container-4xl:56rem;--container-5xl:64rem;--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);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--tracking-wider:.05em;--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:"IBM Plex Mono", ui-monospace, monospace}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:#31342c}html{scrollbar-width:none;-ms-overflow-style:none;height:100%;overflow-y:auto}html::-webkit-scrollbar{width:0;height:0;display:none}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#f2f2e9;scrollbar-width:none;-ms-overflow-style:none;background:#111310;min-height:100%;margin:0;font-family:Manrope,Segoe UI,system-ui,sans-serif;overflow-y:auto}body::-webkit-scrollbar{width:0;height:0;display:none}}@layer components;@layer utilities{.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.top-0{top:0}.top-1{top:var(--spacing)}.top-1\.5{top:calc(var(--spacing) * 1.5)}.bottom-6{bottom:calc(var(--spacing) * 6)}.-left-\[7px\]{left:-7px}.left-1{left:var(--spacing)}.left-1\/2{left:50%}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.mx-auto{margin-inline:auto}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mr-1{margin-right:var(--spacing)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mb-1{margin-bottom:var(--spacing)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.ml-1{margin-left:var(--spacing)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-2{height:calc(var(--spacing) * 2)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.h-12{height:calc(var(--spacing) * 12)}.h-16{height:calc(var(--spacing) * 16)}.h-20{height:calc(var(--spacing) * 20)}.h-24{height:calc(var(--spacing) * 24)}.h-36{height:calc(var(--spacing) * 36)}.h-40{height:calc(var(--spacing) * 40)}.h-48{height:calc(var(--spacing) * 48)}.h-80{height:calc(var(--spacing) * 80)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.max-h-80{max-height:calc(var(--spacing) * 80)}.max-h-\[100dvh\]{max-height:100dvh}.min-h-0{min-height:0}.min-h-28{min-height:calc(var(--spacing) * 28)}.min-h-40{min-height:calc(var(--spacing) * 40)}.min-h-\[80px\]{min-height:80px}.min-h-screen{min-height:100vh}.w-1\/2{width:50%}.w-2{width:calc(var(--spacing) * 2)}.w-2\/3{width:66.6667%}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-3\/4{width:75%}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-12{width:calc(var(--spacing) * 12)}.w-16{width:calc(var(--spacing) * 16)}.w-20{width:calc(var(--spacing) * 20)}.w-24{width:calc(var(--spacing) * 24)}.w-28{width:calc(var(--spacing) * 28)}.w-32{width:calc(var(--spacing) * 32)}.w-36{width:calc(var(--spacing) * 36)}.w-40{width:calc(var(--spacing) * 40)}.w-48{width:calc(var(--spacing) * 48)}.w-56{width:calc(var(--spacing) * 56)}.w-\[2px\]{width:2px}.w-\[240px\]{width:240px}.w-full{width:100%}.max-w-4xl{max-width:var(--container-4xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-\[90\%\]{max-width:90%}.max-w-\[260px\]{max-width:260px}.max-w-\[1200px\]{max-width:1200px}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:0}.min-w-\[4px\]{min-width:4px}.min-w-\[6px\]{min-width:6px}.min-w-\[32rem\]{min-width:32rem}.min-w-\[36rem\]{min-width:36rem}.min-w-\[40rem\]{min-width:40rem}.flex-1{flex:1}.shrink-0{flex-shrink:0}.caption-bottom{caption-side:bottom}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-pointer{cursor:pointer}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-px{gap:1px}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-2{column-gap:calc(var(--spacing) * 2)}:where(.space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)))}.gap-y-1{row-gap:var(--spacing)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:.75rem}.rounded-md{border-radius:.5rem}.rounded-sm{border-radius:.375rem}.rounded-t-lg{border-top-left-radius:.75rem;border-top-right-radius:.75rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.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-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-amber-500{border-color:var(--color-amber-500)}.border-amber-700\/60{border-color:#b7500099}@supports (color:color-mix(in lab,red,red)){.border-amber-700\/60{border-color:color-mix(in oklab,var(--color-amber-700) 60%,transparent)}}.border-amber-800\/50{border-color:#953d0080}@supports (color:color-mix(in lab,red,red)){.border-amber-800\/50{border-color:color-mix(in oklab,var(--color-amber-800) 50%,transparent)}}.border-border{border-color:#31342c}.border-border\/60{border-color:#31342c99}.border-current{border-color:currentColor}.border-destructive\/50{border-color:#c4483a80}.border-emerald-700\/50{border-color:#00795680}@supports (color:color-mix(in lab,red,red)){.border-emerald-700\/50{border-color:color-mix(in oklab,var(--color-emerald-700) 50%,transparent)}}.border-input{border-color:#31342c}.border-primary{border-color:#f9c400}.border-primary\/40{border-color:#f9c40066}.border-red-900\/50{border-color:#82181a80}@supports (color:color-mix(in lab,red,red)){.border-red-900\/50{border-color:color-mix(in oklab,var(--color-red-900) 50%,transparent)}}.border-transparent{border-color:#0000}.border-t-transparent{border-top-color:#0000}.bg-\[\#f5b700\]{background-color:#f5b700}.bg-amber-300\/20{background-color:#ffd23633}@supports (color:color-mix(in lab,red,red)){.bg-amber-300\/20{background-color:color-mix(in oklab,var(--color-amber-300) 20%,transparent)}}.bg-amber-500{background-color:var(--color-amber-500)}.bg-amber-950{background-color:var(--color-amber-950)}.bg-amber-950\/30{background-color:#4619014d}@supports (color:color-mix(in lab,red,red)){.bg-amber-950\/30{background-color:color-mix(in oklab,var(--color-amber-950) 30%,transparent)}}.bg-background{background-color:#111310}.bg-background\/40{background-color:#11131066}.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-black\/60{background-color:#0009}@supports (color:color-mix(in lab,red,red)){.bg-black\/60{background-color:color-mix(in oklab,var(--color-black) 60%,transparent)}}.bg-black\/70{background-color:#000000b3}@supports (color:color-mix(in lab,red,red)){.bg-black\/70{background-color:color-mix(in oklab,var(--color-black) 70%,transparent)}}.bg-card{background-color:#181a15}.bg-destructive{background-color:#c4483a}.bg-emerald-600{background-color:var(--color-emerald-600)}.bg-emerald-950{background-color:var(--color-emerald-950)}.bg-emerald-950\/30{background-color:#002c224d}@supports (color:color-mix(in lab,red,red)){.bg-emerald-950\/30{background-color:color-mix(in oklab,var(--color-emerald-950) 30%,transparent)}}.bg-muted{background-color:#181a15}.bg-primary{background-color:#f9c400}.bg-red-600{background-color:var(--color-red-600)}.bg-red-950{background-color:var(--color-red-950)}.bg-red-950\/30{background-color:#4608094d}@supports (color:color-mix(in lab,red,red)){.bg-red-950\/30{background-color:color-mix(in oklab,var(--color-red-950) 30%,transparent)}}.bg-red-950\/40{background-color:#46080966}@supports (color:color-mix(in lab,red,red)){.bg-red-950\/40{background-color:color-mix(in oklab,var(--color-red-950) 40%,transparent)}}.bg-secondary{background-color:#31342c}.bg-transparent{background-color:#0000}.bg-zinc-700\/60{background-color:#3f3f4699}@supports (color:color-mix(in lab,red,red)){.bg-zinc-700\/60{background-color:color-mix(in oklab,var(--color-zinc-700) 60%,transparent)}}.bg-zinc-800{background-color:var(--color-zinc-800)}.bg-zinc-950{background-color:var(--color-zinc-950)}.object-cover{object-fit:cover}.p-1{padding:var(--spacing)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.px-0{padding-inline:0}.px-1{padding-inline:var(--spacing)}.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-0\.5{padding-block:calc(var(--spacing) * .5)}.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-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.pt-0{padding-top:0}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-\[12vh\]{padding-top:12vh}.pr-2{padding-right:calc(var(--spacing) * 2)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pl-4{padding-left:calc(var(--spacing) * 4)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.align-top{vertical-align:top}.font-mono{font-family:IBM Plex Mono,ui-monospace,monospace}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.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))}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.leading-none{--tw-leading:1;line-height:1}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.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-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-amber-100{color:var(--color-amber-100)}.text-amber-200{color:var(--color-amber-200)}.text-amber-300{color:var(--color-amber-300)}.text-card-foreground{color:#f2f2e9}.text-destructive{color:#c4483a}.text-destructive-foreground{color:#f2f2e9}.text-emerald-100{color:var(--color-emerald-100)}.text-emerald-300{color:var(--color-emerald-300)}.text-foreground{color:#f2f2e9}.text-muted-foreground{color:#b3b8a8}.text-primary{color:#f9c400}.text-primary-foreground{color:#111310}.text-red-200{color:var(--color-red-200)}.text-secondary-foreground{color:#f2f2e9}.text-zinc-50{color:var(--color-zinc-50)}.text-zinc-100{color:var(--color-zinc-100)}.text-zinc-200{color:var(--color-zinc-200)}.text-zinc-950{color:var(--color-zinc-950)}.uppercase{text-transform:uppercase}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.underline-offset-4{text-underline-offset:4px}.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-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px 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-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px 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)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + 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)}.ring-amber-700{--tw-ring-color:var(--color-amber-700)}.ring-emerald-800{--tw-ring-color:var(--color-emerald-800)}.ring-red-800{--tw-ring-color:var(--color-red-800)}.ring-zinc-500{--tw-ring-color:var(--color-zinc-500)}.ring-zinc-600{--tw-ring-color:var(--color-zinc-600)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.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))}.outline-none{--tw-outline-style:none;outline-style:none}.placeholder\:text-muted-foreground::placeholder{color:#b3b8a8}@media(hover:hover){.hover\:bg-destructive\/90:hover{background-color:#c4483ae6}.hover\:bg-muted\/60:hover{background-color:#181a1599}.hover\:bg-primary\/90:hover{background-color:#f9c400e6}.hover\:bg-secondary:hover{background-color:#31342c}.hover\:bg-secondary\/50:hover{background-color:#31342c80}.hover\:bg-secondary\/80:hover{background-color:#31342ccc}.hover\:bg-zinc-800\/80:hover{background-color:#27272acc}@supports (color:color-mix(in lab,red,red)){.hover\:bg-zinc-800\/80:hover{background-color:color-mix(in oklab,var(--color-zinc-800) 80%,transparent)}}.hover\:text-zinc-50:hover{color:var(--color-zinc-50)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}}.focus-visible\:ring-2:focus-visible{--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-visible\:ring-ring:focus-visible{--tw-ring-color:#f9c400}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.data-\[state\=active\]\:bg-\[\#f5b700\][data-state=active]{background-color:#f5b700}.data-\[state\=active\]\:text-\[\#1a1400\][data-state=active]{color:#1a1400}.data-\[state\=active\]\:shadow[data-state=active]{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px 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)}.data-\[state\=inactive\]\:bg-transparent[data-state=inactive]{background-color:#0000}.data-\[state\=inactive\]\:text-zinc-200[data-state=inactive]{color:var(--color-zinc-200)}.data-\[state\=inactive\]\:shadow-none[data-state=inactive]{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}@media(min-width:40rem){.sm\:max-h-\[85vh\]{max-height:85vh}.sm\:w-auto{width:auto}.sm\:max-w-3xl{max-width:var(--container-3xl)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:rounded-lg{border-radius:.75rem}.sm\:p-4{padding:calc(var(--spacing) * 4)}}@media(min-width:48rem){.md\:col-span-2{grid-column:span 2/span 2}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.md\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}}@media(min-width:64rem){.lg\:block{display:block}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:w-56{width:calc(var(--spacing) * 56)}.lg\:shrink-0{flex-shrink:0}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:grid-cols-\[280px_1fr\]{grid-template-columns:280px 1fr}.lg\:border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.lg\:border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}}.\[\&_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}}.omp-scroll{scrollbar-width:thin;scrollbar-color:#3d4451 transparent}.omp-scroll::-webkit-scrollbar{width:8px;height:8px}.omp-scroll::-webkit-scrollbar-track{background:0 0}.omp-scroll::-webkit-scrollbar-thumb{background:#3d4451;border-radius:999px}.omp-scroll::-webkit-scrollbar-thumb:hover{background:#535c6e}[cmdk-input]{width:100%;color:inherit;background:0 0;border:0;outline:none;padding:12px 14px}[cmdk-item]{cursor:pointer;border-radius:6px;padding:8px 10px}[cmdk-item][data-selected=true]{background:#31342c}[cmdk-group-heading]{letter-spacing:.04em;text-transform:uppercase;color:#b3b8a8;padding:6px 10px;font-size:11px}@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-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@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-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}} diff --git a/ops/billing/public/assets/index-CXP6R3pY.js b/ops/billing/public/assets/index-CvsAGg-z.js similarity index 52% rename from ops/billing/public/assets/index-CXP6R3pY.js rename to ops/billing/public/assets/index-CvsAGg-z.js index 6ec636f89..0ad2b68ec 100644 --- a/ops/billing/public/assets/index-CXP6R3pY.js +++ b/ops/billing/public/assets/index-CvsAGg-z.js @@ -1,4 +1,4 @@ -var d$=Object.defineProperty;var XA=e=>{throw TypeError(e)};var h$=(e,t,n)=>t in e?d$(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var Kh=(e,t,n)=>h$(e,typeof t!="symbol"?t+"":t,n),sx=(e,t,n)=>t.has(e)||XA("Cannot "+n);var $=(e,t,n)=>(sx(e,t,"read from private field"),n?n.call(e):t.get(e)),Ie=(e,t,n)=>t.has(e)?XA("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,n),be=(e,t,n,r)=>(sx(e,t,"write to private field"),r?r.call(e,n):t.set(e,n),n),We=(e,t,n)=>(sx(e,t,"access private method"),n);var Yh=(e,t,n,r)=>({set _(l){be(e,t,l,n)},get _(){return $(e,t,r)}});function m$(e,t){for(var n=0;nr[l]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const l of document.querySelectorAll('link[rel="modulepreload"]'))r(l);new MutationObserver(l=>{for(const o of l)if(o.type==="childList")for(const u of o.addedNodes)u.tagName==="LINK"&&u.rel==="modulepreload"&&r(u)}).observe(document,{childList:!0,subtree:!0});function n(l){const o={};return l.integrity&&(o.integrity=l.integrity),l.referrerPolicy&&(o.referrerPolicy=l.referrerPolicy),l.crossOrigin==="use-credentials"?o.credentials="include":l.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function r(l){if(l.ep)return;l.ep=!0;const o=n(l);fetch(l.href,o)}})();function vR(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var ux={exports:{}},ef={};/** +var y$=Object.defineProperty;var ZE=e=>{throw TypeError(e)};var x$=(e,t,n)=>t in e?y$(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var Yh=(e,t,n)=>x$(e,typeof t!="symbol"?t+"":t,n),ux=(e,t,n)=>t.has(e)||ZE("Cannot "+n);var $=(e,t,n)=>(ux(e,t,"read from private field"),n?n.call(e):t.get(e)),Ie=(e,t,n)=>t.has(e)?ZE("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,n),be=(e,t,n,r)=>(ux(e,t,"write to private field"),r?r.call(e,n):t.set(e,n),n),We=(e,t,n)=>(ux(e,t,"access private method"),n);var Xh=(e,t,n,r)=>({set _(l){be(e,t,l,n)},get _(){return $(e,t,r)}});function b$(e,t){for(var n=0;nr[l]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const l of document.querySelectorAll('link[rel="modulepreload"]'))r(l);new MutationObserver(l=>{for(const o of l)if(o.type==="childList")for(const u of o.addedNodes)u.tagName==="LINK"&&u.rel==="modulepreload"&&r(u)}).observe(document,{childList:!0,subtree:!0});function n(l){const o={};return l.integrity&&(o.integrity=l.integrity),l.referrerPolicy&&(o.referrerPolicy=l.referrerPolicy),l.crossOrigin==="use-credentials"?o.credentials="include":l.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function r(l){if(l.ep)return;l.ep=!0;const o=n(l);fetch(l.href,o)}})();function xR(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var cx={exports:{}},ef={};/** * @license React * react-jsx-runtime.production.js * @@ -6,7 +6,7 @@ var d$=Object.defineProperty;var XA=e=>{throw TypeError(e)};var h$=(e,t,n)=>t in * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var QA;function v$(){if(QA)return ef;QA=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.fragment");function n(r,l,o){var u=null;if(o!==void 0&&(u=""+o),l.key!==void 0&&(u=""+l.key),"key"in l){o={};for(var c in l)c!=="key"&&(o[c]=l[c])}else o=l;return l=o.ref,{$$typeof:e,type:r,key:u,ref:l!==void 0?l:null,props:o}}return ef.Fragment=t,ef.jsx=n,ef.jsxs=n,ef}var ZA;function g$(){return ZA||(ZA=1,ux.exports=v$()),ux.exports}var f=g$(),cx={exports:{}},Be={};/** + */var WE;function S$(){if(WE)return ef;WE=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.fragment");function n(r,l,o){var u=null;if(o!==void 0&&(u=""+o),l.key!==void 0&&(u=""+l.key),"key"in l){o={};for(var c in l)c!=="key"&&(o[c]=l[c])}else o=l;return l=o.ref,{$$typeof:e,type:r,key:u,ref:l!==void 0?l:null,props:o}}return ef.Fragment=t,ef.jsx=n,ef.jsxs=n,ef}var JE;function w$(){return JE||(JE=1,cx.exports=S$()),cx.exports}var f=w$(),fx={exports:{}},Be={};/** * @license React * react.production.js * @@ -14,7 +14,7 @@ var d$=Object.defineProperty;var XA=e=>{throw TypeError(e)};var h$=(e,t,n)=>t in * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var WA;function p$(){if(WA)return Be;WA=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),l=Symbol.for("react.profiler"),o=Symbol.for("react.consumer"),u=Symbol.for("react.context"),c=Symbol.for("react.forward_ref"),h=Symbol.for("react.suspense"),m=Symbol.for("react.memo"),v=Symbol.for("react.lazy"),p=Symbol.for("react.activity"),x=Symbol.for("react.view_transition"),S=Symbol.iterator;function w(z){return z===null||typeof z!="object"?null:(z=S&&z[S]||z["@@iterator"],typeof z=="function"?z:null)}var j={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},C=Object.assign,A={};function N(z,Y,le){this.props=z,this.context=Y,this.refs=A,this.updater=le||j}N.prototype.isReactComponent={},N.prototype.setState=function(z,Y){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,Y,"setState")},N.prototype.forceUpdate=function(z){this.updater.enqueueForceUpdate(this,z,"forceUpdate")};function O(){}O.prototype=N.prototype;function T(z,Y,le){this.props=z,this.context=Y,this.refs=A,this.updater=le||j}var R=T.prototype=new O;R.constructor=T,C(R,N.prototype),R.isPureReactComponent=!0;var E=Array.isArray;function D(){}var k={H:null,A:null,T:null,S:null},I=Object.prototype.hasOwnProperty;function P(z,Y,le){var fe=le.ref;return{$$typeof:e,type:z,key:Y,ref:fe!==void 0?fe:null,props:le}}function B(z,Y){return P(z.type,Y,z.props)}function F(z){return typeof z=="object"&&z!==null&&z.$$typeof===e}function se(z){var Y={"=":"=0",":":"=2"};return"$"+z.replace(/[=:]/g,function(le){return Y[le]})}var ue=/\/+/g;function de(z,Y){return typeof z=="object"&&z!==null&&z.key!=null?se(""+z.key):Y.toString(36)}function G(z){switch(z.status){case"fulfilled":return z.value;case"rejected":throw z.reason;default:switch(typeof z.status=="string"?z.then(D,D):(z.status="pending",z.then(function(Y){z.status==="pending"&&(z.status="fulfilled",z.value=Y)},function(Y){z.status==="pending"&&(z.status="rejected",z.reason=Y)})),z.status){case"fulfilled":return z.value;case"rejected":throw z.reason}}throw z}function ne(z,Y,le,fe,De){var te=typeof z;(te==="undefined"||te==="boolean")&&(z=null);var ge=!1;if(z===null)ge=!0;else switch(te){case"bigint":case"string":case"number":ge=!0;break;case"object":switch(z.$$typeof){case e:case t:ge=!0;break;case v:return ge=z._init,ne(ge(z._payload),Y,le,fe,De)}}if(ge)return De=De(z),ge=fe===""?"."+de(z,0):fe,E(De)?(le="",ge!=null&&(le=ge.replace(ue,"$&/")+"/"),ne(De,Y,le,"",function(ut){return ut})):De!=null&&(F(De)&&(De=B(De,le+(De.key==null||z&&z.key===De.key?"":(""+De.key).replace(ue,"$&/")+"/")+ge)),Y.push(De)),1;ge=0;var oe=fe===""?".":fe+":";if(E(z))for(var J=0;J{const t=b.useContext(gR);if(!t)throw new Error("No QueryClient set, use QueryClientProvider to set one");return t},x$=({client:e,children:t})=>(b.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),f.jsx(gR.Provider,{value:e,children:t})),b$={setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e)};var Sl,Zb,aR,S$=(aR=class{constructor(){Ie(this,Sl,b$);Ie(this,Zb,!1)}setTimeoutProvider(e){be(this,Sl,e)}setTimeout(e,t){return $(this,Sl).setTimeout(e,t)}clearTimeout(e){$(this,Sl).clearTimeout(e)}setInterval(e,t){return $(this,Sl).setInterval(e,t)}clearInterval(e){$(this,Sl).clearInterval(e)}},Sl=new WeakMap,Zb=new WeakMap,aR);const So=new S$;function w$(e){setTimeout(e,0)}const j$=typeof window>"u"||"Deno"in globalThis;function sr(){}function C$(e,t){return typeof e=="function"?e(t):e}function pR(e){return typeof e=="number"&&e>=0&&e!==1/0}function yR(e,t){return Math.max(e+(t||0)-Date.now(),0)}function Mt(e,t){return typeof e=="function"?e(t):e}function eE(e,t){const{type:n="all",exact:r,fetchStatus:l,predicate:o,queryKey:u,stale:c}=e;if(u){if(r){if(t.queryHash!==Jb(u,t.options))return!1}else if(!Du(t.queryKey,u))return!1}if(n!=="all"){const h=t.isActive();if(n==="active"&&!h||n==="inactive"&&h)return!1}return!(typeof c=="boolean"&&t.isStale()!==c||l&&l!==t.state.fetchStatus||o&&!o(t))}function tE(e,t){const{exact:n,status:r,predicate:l,mutationKey:o}=e;if(o){if(!t.options.mutationKey)return!1;if(n){if(Of(t.options.mutationKey)!==Of(o))return!1}else if(!Du(t.options.mutationKey,o))return!1}return!(r&&t.state.status!==r||l&&!l(t))}function Jb(e,t){return((t==null?void 0:t.queryKeyHashFn)||Of)(e)}function Of(e){return JSON.stringify(e,(t,n)=>C0(n)?Object.keys(n).sort().reduce((r,l)=>(r[l]=n[l],r),{}):n)}function Du(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(e&&t&&typeof e=="object"&&typeof t=="object"){if(Array.isArray(e)&&Array.isArray(t)){if(t.length>e.length)return!1;for(let r=0;r500)return t;const r=nE(e)&&nE(t);if(!r&&!(C0(e)&&C0(t)))return t;const l=(r?e:Object.keys(e)).length,o=r?t:Object.keys(t),u=o.length,c=r?new Array(u):{};let h=0;for(let m=0;m{So.setTimeout(t,e)})}function _0(e,t,n){return typeof n.structuralSharing=="function"?n.structuralSharing(e,t):n.structuralSharing!==!1?bR(e,t):t}function A$(e,t,n=0){const r=[...e,t];return n&&r.length>n?r.slice(-n):r}function E$(e,t,n=0){const r=[t,...e];return n&&r.length>n?r.slice(0,n):r}const eS=Symbol();function SR(e,t){return!e.queryFn&&(t!=null&&t.initialPromise)?()=>t.initialPromise:!e.queryFn||e.queryFn===eS?()=>Promise.reject(new Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}function wR(e,t){return typeof e=="function"?e(...t):!!e}const tS=Symbol();function O$(e,t,n,r){let l=!1,o;return Object.defineProperties(e,{[tS]:{value:r},signal:{enumerable:!0,get:()=>(o??(o=t()),l||(l=!0,o.aborted?n():o.addEventListener("abort",n,{once:!0})),o)}}),e}let N$=()=>j$;const nS=()=>N$();var Xf=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(){}},Ao,wl,bu,lR,T$=(lR=class extends Xf{constructor(){super();Ie(this,Ao);Ie(this,wl);Ie(this,bu);be(this,bu,t=>{if(typeof window<"u"&&window.addEventListener){const n=()=>t();return window.addEventListener("visibilitychange",n,!1),()=>{window.removeEventListener("visibilitychange",n)}}})}onSubscribe(){$(this,wl)||this.setEventListener($(this,bu))}onUnsubscribe(){var t;this.hasListeners()||((t=$(this,wl))==null||t.call(this),be(this,wl,void 0))}setEventListener(t){var n;be(this,bu,t),(n=$(this,wl))==null||n.call(this),be(this,wl,t(r=>{typeof r=="boolean"?this.setFocused(r):this.onFocus()}))}setFocused(t){$(this,Ao)!==t&&(be(this,Ao,t),this.onFocus())}onFocus(){const t=this.isFocused();this.listeners.forEach(n=>{n(t)})}isFocused(){var t;return typeof $(this,Ao)=="boolean"?$(this,Ao):((t=globalThis.document)==null?void 0:t.visibilityState)!=="hidden"}},Ao=new WeakMap,wl=new WeakMap,bu=new WeakMap,lR);const rS=new T$,R$=w$;function M$(){let e=[],t=0,n=c=>{c()},r=c=>{c()},l=R$;const o=c=>{t?e.push(c):l(()=>{n(c)})},u=()=>{const c=e;e=[],c.length&&l(()=>{r(()=>{c.forEach(h=>{n(h)})})})};return{batch:c=>{let h;t++;try{h=c()}finally{t--,t||u()}return h},batchCalls:c=>(...h)=>{o(()=>{c(...h)})},schedule:o,setNotifyFunction:c=>{n=c},setBatchNotifyFunction:c=>{r=c},setScheduler:c=>{l=c}}}const Mn=M$();var Su,jl,wu,oR,D$=(oR=class extends Xf{constructor(){super();Ie(this,Su,!0);Ie(this,jl);Ie(this,wu);be(this,wu,t=>{if(typeof window<"u"&&window.addEventListener){const n=()=>t(!0),r=()=>t(!1);return window.addEventListener("online",n,!1),window.addEventListener("offline",r,!1),()=>{window.removeEventListener("online",n),window.removeEventListener("offline",r)}}})}onSubscribe(){$(this,jl)||this.setEventListener($(this,wu))}onUnsubscribe(){var t;this.hasListeners()||((t=$(this,jl))==null||t.call(this),be(this,jl,void 0))}setEventListener(t){var n;be(this,wu,t),(n=$(this,jl))==null||n.call(this),be(this,jl,t(this.setOnline.bind(this)))}setOnline(t){$(this,Su)!==t&&(be(this,Su,t),this.listeners.forEach(n=>{n(t)}))}isOnline(){return $(this,Su)}},Su=new WeakMap,jl=new WeakMap,wu=new WeakMap,oR);const km=new D$;function P$(e){return Math.min(1e3*2**e,3e4)}function jR(e){return(e??"online")==="online"?km.isOnline():!0}var A0=class extends Error{constructor(e){super("CancelledError"),this.revert=e==null?void 0:e.revert,this.silent=e==null?void 0:e.silent}};function CR(e){let t=!1,n=0,r,l="pending",o,u;const c=new Promise((N,O)=>{o=N,u=O});c.catch(sr);const h=()=>l!=="pending",m=N=>{var O;if(!h()){const T=new A0(N);j(T),(O=e.onCancel)==null||O.call(e,T)}},v=()=>{t=!0},p=()=>{t=!1},x=()=>rS.isFocused()&&(e.networkMode==="always"||km.isOnline())&&e.canRun(),S=()=>jR(e.networkMode)&&e.canRun(),w=N=>{h()||(r==null||r(),l="resolved",o(N))},j=N=>{h()||(r==null||r(),l="rejected",u(N))},C=N=>new Promise(O=>{var T;r=R=>{(h()||N())&&O(R)},(T=e.onPause)==null||T.call(e)}).then(()=>{var O;r=void 0,h()||(O=e.onContinue)==null||O.call(e)}),A=()=>{if(h())return;let N;const O=n===0?e.initialPromise:void 0;try{N=O??e.fn()}catch(T){N=Promise.reject(T)}Promise.resolve(N).then(w).catch(T=>{var I;if(h())return;const R=e.retry??(nS()?0:3),E=e.retryDelay??P$,D=typeof E=="function"?E(n,T):E,k=R===!0||typeof R=="number"&&nh()||x()?void 0:C(x)).then(()=>{t?j(T):A()})})};return{promise:c,status:()=>l,cancel:m,continue:()=>(r==null||r(),c),cancelRetry:v,continueRetry:p,canStart:S,start:()=>(S()?A():C(S).then(A),c)}}var Eo,sR,_R=(sR=class{constructor(){Ie(this,Eo)}destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),pR(this.gcTime)&&be(this,Eo,So.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(nS()?1/0:3e5))}clearGcTimeout(){$(this,Eo)!==void 0&&(So.clearTimeout($(this,Eo)),be(this,Eo,void 0))}},Eo=new WeakMap,sR);function k$(e){return{onFetch:(t,n)=>{var v,p,x,S,w;const r=t.options,l=(x=(p=(v=t.fetchOptions)==null?void 0:v.meta)==null?void 0:p.fetchMore)==null?void 0:x.direction,o=((S=t.state.data)==null?void 0:S.pages)||[],u=((w=t.state.data)==null?void 0:w.pageParams)||[];let c={pages:[],pageParams:[]},h=0;const m=async()=>{let j=!1;const C=t,A=T=>{O$(T,()=>t.signal,()=>j=!0,C[tS])},N=SR(t.options,t.fetchOptions),O=async(T,R,E)=>{if(j)return Promise.reject(t.signal.reason);if(R==null&&T.pages.length)return Promise.resolve(T);const k=(()=>{const F={client:t.client,queryKey:t.queryKey,pageParam:R,direction:E?"backward":"forward",meta:t.options.meta};return A(F),F})(),I=await N(k),{maxPages:P}=t.options,B=E?E$:A$;return{pages:B(T.pages,I,P),pageParams:B(T.pageParams,R,P)}};if(l&&o.length){const T=l==="backward",R=T?I$:iE,E={pages:o,pageParams:u};c=await O(E,R(r,E),T)}else{const T=e??o.length;do{const R=h===0?u[0]===void 0?r.initialPageParam:u[0]:iE(r,c);if(h>0&&R==null)break;c=await O(c,R),h++}while(h{var j,C;return(C=(j=t.options).persister)==null?void 0:C.call(j,m,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},n)}:t.fetchFn=m}}}function iE(e,{pages:t,pageParams:n}){const r=t.length-1;return t.length>0?e.getNextPageParam(t[r],t,n[r],n):void 0}function I$(e,{pages:t,pageParams:n}){var r;return t.length>0?(r=e.getPreviousPageParam)==null?void 0:r.call(e,t[0],t,n[0],n):void 0}var ju,Oo,Cu,Hr,No,hn,ha,Vf,To,li,ua,uR,z$=(uR=class extends _R{constructor(t){super();Ie(this,li);Ie(this,ju);Ie(this,Oo);Ie(this,Cu);Ie(this,Hr);Ie(this,No);Ie(this,hn);Ie(this,ha);Ie(this,Vf);Ie(this,To);be(this,To,!1),be(this,Vf,t.defaultOptions),this.setOptions(t.options),this.observers=[],be(this,No,t.client),be(this,Hr,$(this,No).getQueryCache()),this.queryKey=t.queryKey,this.queryHash=t.queryHash,be(this,Oo,lE(this.options)),this.state=t.state??$(this,Oo),this.scheduleGc()}get meta(){return this.options.meta}get queryType(){return $(this,ju)}get promise(){var t;return(t=$(this,hn))==null?void 0:t.promise}setOptions(t){if(this.options={...$(this,Vf),...t},t!=null&&t._type&&be(this,ju,t._type),this.updateGcTime(this.options.gcTime),this.state&&this.state.data===void 0){const n=lE(this.options);n.data!==void 0&&(this.setState(aE(n.data,n.dataUpdatedAt)),be(this,Oo,n))}}optionalRemove(){!this.observers.length&&this.state.fetchStatus==="idle"&&$(this,Hr).remove(this)}setData(t,n){const r=_0(this.state.data,t,this.options);return We(this,li,ua).call(this,{data:r,type:"success",dataUpdatedAt:n==null?void 0:n.updatedAt,manual:n==null?void 0:n.manual}),r}setState(t){We(this,li,ua).call(this,{type:"setState",state:t})}cancel(t){var r,l;const n=(r=$(this,hn))==null?void 0:r.promise;return(l=$(this,hn))==null||l.cancel(t),n?n.then(sr).catch(sr):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}get resetState(){return $(this,Oo)}reset(){this.destroy(),this.setState(this.resetState)}isActive(){return this.observers.some(t=>Mt(t.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===eS||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.state.data===void 0?!1:this.getObserversCount()>0?this.observers.some(t=>Mt(t.options.staleTime,this)==="static"):!1}isStale(){return this.getObserversCount()>0?this.observers.some(t=>t.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(t=0){return this.state.data===void 0?!0:t==="static"?!1:this.state.isInvalidated?!0:!yR(this.state.dataUpdatedAt,t)}onFocus(){var t,n;(t=this.observers.find(r=>r.shouldFetchOnWindowFocus()))==null||t.refetch({cancelRefetch:!1}),(n=$(this,hn))==null||n.continue()}onOnline(){var t,n;(t=this.observers.find(r=>r.shouldFetchOnReconnect()))==null||t.refetch({cancelRefetch:!1}),(n=$(this,hn))==null||n.continue()}addObserver(t){this.observers.includes(t)||(this.observers.push(t),this.clearGcTimeout(),$(this,Hr).notify({type:"observerAdded",query:this,observer:t}))}removeObserver(t){const n=this.observers.indexOf(t);n!==-1&&(this.observers.splice(n,1),this.observers.length||($(this,hn)&&($(this,To)||this.state.fetchStatus==="paused"&&this.state.status==="pending"?$(this,hn).cancel({revert:!0}):$(this,hn).cancelRetry()),this.scheduleGc()),$(this,Hr).notify({type:"observerRemoved",query:this,observer:t}))}getObserversCount(){return this.observers.length}invalidate(){this.state.isInvalidated||We(this,li,ua).call(this,{type:"invalidate"})}async fetch(t,n){var v,p,x,S;if(this.state.fetchStatus!=="idle"&&((v=$(this,hn))==null?void 0:v.status())!=="rejected"){if(this.state.data!==void 0&&(n!=null&&n.cancelRefetch))this.cancel({silent:!0});else if($(this,hn)&&$(this,ha))return $(this,hn).continueRetry(),$(this,ha)}if(t&&this.setOptions(t),!this.options.queryFn){const w=this.observers.find(j=>j.options.queryFn);w&&this.setOptions(w.options)}const r=new AbortController,l=w=>{Object.defineProperties(w,{[tS]:{value:r.signal,enumerable:!0},signal:{enumerable:!0,get:()=>(be(this,To,!0),r.signal)}})},o=()=>{const w=SR(this.options,n),C=(()=>{const A={client:$(this,No),queryKey:this.queryKey,meta:this.meta};return l(A),A})();return be(this,To,!1),this.options.persister?this.options.persister(w,C,this):w(C)},c=(()=>{const w={fetchOptions:n,options:this.options,queryKey:this.queryKey,client:$(this,No),state:this.state,fetchFn:o};return l(w),w})();(p=$(this,ju)==="infinite"?k$(this.options.pages):this.options.behavior)==null||p.onFetch(c,this),be(this,Cu,this.state),(this.state.fetchStatus==="idle"||this.state.fetchMeta!==((x=c.fetchOptions)==null?void 0:x.meta))&&We(this,li,ua).call(this,{type:"fetch",meta:(S=c.fetchOptions)==null?void 0:S.meta});const h=be(this,hn,CR({initialPromise:n==null?void 0:n.initialPromise,fn:c.fetchFn,onCancel:w=>{w instanceof A0&&w.revert&&this.setState({...$(this,Cu),fetchStatus:"idle"}),r.abort()},onFail:(w,j)=>{We(this,li,ua).call(this,{type:"failed",failureCount:w,error:j})},onPause:()=>{We(this,li,ua).call(this,{type:"pause"})},onContinue:()=>{We(this,li,ua).call(this,{type:"continue"})},retry:c.options.retry,retryDelay:c.options.retryDelay,networkMode:c.options.networkMode,canRun:()=>!0})),m=(async()=>{var w,j,C,A,N,O,T,R;try{const E=await h.promise;if(E===void 0)throw new Error(`${this.queryHash} data is undefined`);return this.setData(E),(j=(w=$(this,Hr).config).onSuccess)==null||j.call(w,E,this),(A=(C=$(this,Hr).config).onSettled)==null||A.call(C,E,this.state.error,this),E}catch(E){if(E instanceof A0){if(E.silent){if($(this,hn)!==h&&$(this,ha))return $(this,ha);throw E}else if(E.revert){if(this.state.data===void 0)throw E;return this.state.data}}throw We(this,li,ua).call(this,{type:"error",error:E}),(O=(N=$(this,Hr).config).onError)==null||O.call(N,E,this),(R=(T=$(this,Hr).config).onSettled)==null||R.call(T,this.state.data,E,this),E}finally{$(this,hn)===h&&(be(this,hn,void 0),be(this,ha,void 0)),this.scheduleGc()}})();return be(this,ha,m),h.start(),m}},ju=new WeakMap,Oo=new WeakMap,Cu=new WeakMap,Hr=new WeakMap,No=new WeakMap,hn=new WeakMap,ha=new WeakMap,Vf=new WeakMap,To=new WeakMap,li=new WeakSet,ua=function(t){const n=r=>{switch(t.type){case"failed":return{...r,fetchFailureCount:t.failureCount,fetchFailureReason:t.error};case"pause":return{...r,fetchStatus:"paused"};case"continue":return{...r,fetchStatus:"fetching"};case"fetch":return{...r,...AR(r.data,this.options),fetchMeta:t.meta??null};case"success":const l={...r,...aE(t.data,t.dataUpdatedAt),dataUpdateCount:r.dataUpdateCount+1,...!t.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};return be(this,Cu,t.manual?l:void 0),l;case"error":const o=t.error;return{...r,error:o,errorUpdateCount:r.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:r.fetchFailureCount+1,fetchFailureReason:o,fetchStatus:"idle",status:"error",isInvalidated:!0};case"invalidate":return{...r,isInvalidated:!0};case"setState":return{...r,...t.state}}};this.state=n(this.state),Mn.batch(()=>{this.observers.slice().forEach(r=>{r.onQueryUpdate()}),$(this,Hr).notify({query:this,type:"updated",action:t})})},uR);function AR(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:jR(t.networkMode)?"fetching":"paused",...e===void 0&&{error:null,status:"pending"}}}function aE(e,t){return{data:e,dataUpdatedAt:t??Date.now(),error:null,isInvalidated:!1,status:"success"}}function lE(e){const t=typeof e.initialData=="function"?e.initialData():e.initialData,n=t!==void 0,r=n?typeof e.initialDataUpdatedAt=="function"?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:n?r??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:n?"success":"pending",fetchStatus:"idle"}}var Yn,Je,Gf,Xn,Ro,_u,ma,qf,Au,Eu,Mo,Do,Cl,Ou,st,pf,E0,O0,N0,T0,R0,M0,D0,P0,cR,L$=(cR=class extends Xf{constructor(t,n){super();Ie(this,st);Ie(this,Yn);Ie(this,Je);Ie(this,Gf);Ie(this,Xn);Ie(this,Ro);Ie(this,_u);Ie(this,ma);Ie(this,qf);Ie(this,Au);Ie(this,Eu);Ie(this,Mo);Ie(this,Do);Ie(this,Cl);Ie(this,Ou,new Set);this.options=n,be(this,Yn,t),be(this,ma,null),this.bindMethods(),this.setOptions(n)}bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&($(this,Je).addObserver(this),oE($(this,Je),this.options)?We(this,st,pf).call(this):this.updateResult(),We(this,st,R0).call(this))}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return k0($(this,Je),this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return k0($(this,Je),this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,We(this,st,M0).call(this),We(this,st,D0).call(this),$(this,Je).removeObserver(this)}setOptions(t){const n=this.options,r=$(this,Je);if(this.options=$(this,Yn).defaultQueryOptions(t),this.options.enabled!==void 0&&typeof this.options.enabled!="boolean"&&typeof this.options.enabled!="function"&&typeof Mt(this.options.enabled,$(this,Je))!="boolean")throw new Error("Expected enabled to be a boolean or a callback that returns a boolean");We(this,st,P0).call(this),$(this,Je).setOptions(this.options),n._defaulted&&!fx(this.options,n)&&$(this,Yn).getQueryCache().notify({type:"observerOptionsUpdated",query:$(this,Je),observer:this});const l=this.hasListeners();l&&sE($(this,Je),r,this.options,n)&&We(this,st,pf).call(this),this.updateResult(),l&&($(this,Je)!==r||Mt(this.options.enabled,$(this,Je))!==Mt(n.enabled,$(this,Je))||Mt(this.options.staleTime,$(this,Je))!==Mt(n.staleTime,$(this,Je)))&&We(this,st,O0).call(this);const o=We(this,st,N0).call(this);l&&($(this,Je)!==r||Mt(this.options.enabled,$(this,Je))!==Mt(n.enabled,$(this,Je))||o!==$(this,Cl))&&We(this,st,T0).call(this,o)}getOptimisticResult(t){const n=$(this,Yn).getQueryCache().build($(this,Yn),t),r=this.createResult(n,t);return fx(this.getCurrentResult(),r)||(be(this,Xn,r),be(this,_u,this.options),be(this,Ro,$(this,Je).state)),r}getCurrentResult(){return $(this,Xn)}trackResult(t,n){return new Proxy(t,{get:(r,l)=>(this.trackProp(l),n==null||n(l),Reflect.get(r,l))})}trackProp(t){$(this,Ou).add(t)}getCurrentQuery(){return $(this,Je)}refetch({...t}={}){return this.fetch({...t})}fetchOptimistic(t){const n=$(this,Yn).defaultQueryOptions(t),r=$(this,Yn).getQueryCache().build($(this,Yn),n);let l=()=>{},o;const u=new Promise(c=>{o=c,l=$(this,Yn).getQueryCache().subscribe(h=>{h.type==="updated"&&h.query.queryHash===r.queryHash&&r.state.data!==void 0&&(l(),c(this.createResult(r,n)))})});return Promise.race([r.fetch(n).then(()=>{const c=this.createResult(r,n);return o==null||o(c),c}).finally(()=>{l()}),u])}fetch(t){return We(this,st,pf).call(this,{...t,cancelRefetch:t.cancelRefetch??!0}).then(()=>(this.updateResult(),$(this,Xn)))}createResult(t,n){var E;const r=$(this,Je),l=this.options,o=$(this,Xn),u=$(this,Ro),c=$(this,_u),h=t!==r?t.state:$(this,Gf),{state:m}=t;let v={...m},p=!1,x;if(n._optimisticResults){const D=this.hasListeners(),k=!D&&oE(t,n),I=D&&sE(t,r,n,l);(k||I)&&(v={...v,...AR(m.data,t.options)}),n._optimisticResults==="isRestoring"&&(v.fetchStatus="idle")}let{error:S,errorUpdatedAt:w,status:j}=v;x=v.data;let C=!1;if(n.placeholderData!==void 0&&x===void 0&&j==="pending"){let D;o!=null&&o.isPlaceholderData&&n.placeholderData===(c==null?void 0:c.placeholderData)?(D=o.data,C=!0):D=typeof n.placeholderData=="function"?n.placeholderData((E=$(this,Eu))==null?void 0:E.state.data,$(this,Eu)):n.placeholderData,D!==void 0&&(j="success",x=_0(o==null?void 0:o.data,D,n),p=!0)}if(n.select&&x!==void 0&&!C)if(o&&x===(u==null?void 0:u.data)&&n.select===$(this,qf))x=$(this,Au);else try{be(this,qf,n.select),x=n.select(x),x=_0(o==null?void 0:o.data,x,n),be(this,Au,x),be(this,ma,null)}catch(D){be(this,ma,D)}else x===void 0&&be(this,ma,null);$(this,ma)&&(S=$(this,ma),x=$(this,Au),w=(o==null?void 0:o.error)===S?o.errorUpdatedAt:Date.now(),j="error",p=!1);const A=v.fetchStatus==="fetching",N=j==="pending",O=j==="error",T=N&&A,R=x!==void 0;return{status:j,fetchStatus:v.fetchStatus,isPending:N,isSuccess:j==="success",isError:O,isInitialLoading:T,isLoading:T,data:x,dataUpdatedAt:v.dataUpdatedAt,error:S,errorUpdatedAt:w,failureCount:v.fetchFailureCount,failureReason:v.fetchFailureReason,errorUpdateCount:v.errorUpdateCount,isFetched:t.isFetched(),isFetchedAfterMount:v.dataUpdateCount>h.dataUpdateCount||v.errorUpdateCount>h.errorUpdateCount,isFetching:A,isRefetching:A&&!N,isLoadingError:O&&!R,isPaused:v.fetchStatus==="paused",isPlaceholderData:p,isRefetchError:O&&R,isStale:iS(t,n),refetch:this.refetch,isEnabled:Mt(n.enabled,t)!==!1}}updateResult(){const t=$(this,Xn),n=this.createResult($(this,Je),this.options);if(be(this,Ro,$(this,Je).state),be(this,_u,this.options),$(this,Ro).data!==void 0&&be(this,Eu,$(this,Je)),fx(n,t))return;be(this,Xn,n);const l=(()=>{if(!t)return!0;const{notifyOnChangeProps:o}=this.options,u=typeof o=="function"?o():o;if(u==="all"||!u&&!$(this,Ou).size||this.options.throwOnError&&$(this,Xn).error!==t.error)return!0;for(const c of u??$(this,Ou))if($(this,Xn)[c]!==t[c])return!0;return!1})();Mn.batch(()=>{l&&this.listeners.forEach(o=>{o($(this,Xn))}),$(this,Yn).getQueryCache().notify({query:$(this,Je),type:"observerResultsUpdated"})})}onQueryUpdate(){this.updateResult(),this.hasListeners()&&We(this,st,R0).call(this)}},Yn=new WeakMap,Je=new WeakMap,Gf=new WeakMap,Xn=new WeakMap,Ro=new WeakMap,_u=new WeakMap,ma=new WeakMap,qf=new WeakMap,Au=new WeakMap,Eu=new WeakMap,Mo=new WeakMap,Do=new WeakMap,Cl=new WeakMap,Ou=new WeakMap,st=new WeakSet,pf=function(t){We(this,st,P0).call(this);let n=$(this,Je).fetch(this.options,t);return t!=null&&t.throwOnError||(n=n.catch(sr)),n},E0=function(t){return!nS()&&Mt(this.options.enabled,$(this,Je))!==!1&&pR(t)},O0=function(){We(this,st,M0).call(this);const t=Mt(this.options.staleTime,$(this,Je));if($(this,Xn).isStale||!We(this,st,E0).call(this,t))return;const n=yR($(this,Xn).dataUpdatedAt,t)+1;be(this,Mo,So.setTimeout(()=>{$(this,Xn).isStale||this.updateResult()},n))},N0=function(){return Mt(this.options.refetchInterval,$(this,Je))??!1},T0=function(t){We(this,st,D0).call(this),be(this,Cl,t),!($(this,Cl)===0||!We(this,st,E0).call(this,$(this,Cl)))&&be(this,Do,So.setInterval(()=>{(this.options.refetchIntervalInBackground||rS.isFocused())&&We(this,st,pf).call(this)},$(this,Cl)))},R0=function(){We(this,st,O0).call(this),We(this,st,T0).call(this,We(this,st,N0).call(this))},M0=function(){$(this,Mo)!==void 0&&(So.clearTimeout($(this,Mo)),be(this,Mo,void 0))},D0=function(){$(this,Do)!==void 0&&(So.clearInterval($(this,Do)),be(this,Do,void 0))},P0=function(){const t=$(this,Yn).getQueryCache().build($(this,Yn),this.options);if(t===$(this,Je))return;const n=$(this,Je);be(this,Je,t),be(this,Gf,t.state),this.hasListeners()&&(n==null||n.removeObserver(this),t.addObserver(this))},cR);function U$(e,t){return Mt(t.enabled,e)!==!1&&e.state.data===void 0&&!(e.state.status==="error"&&Mt(t.retryOnMount,e)===!1)}function oE(e,t){return U$(e,t)||e.state.data!==void 0&&k0(e,t,t.refetchOnMount)}function k0(e,t,n){if(Mt(t.enabled,e)!==!1&&Mt(t.staleTime,e)!=="static"){const r=Mt(n,e);return r==="always"||r!==!1&&iS(e,t)}return!1}function sE(e,t,n,r){return(e!==t||Mt(r.enabled,e)===!1)&&(!n.suspense||e.state.status!=="error")&&iS(e,n)}function iS(e,t){return Mt(t.enabled,e)!==!1&&e.isStaleByTime(Mt(t.staleTime,e))}var Kf,Ti,zn,Po,Ri,pl,fR,$$=(fR=class extends _R{constructor(t){super();Ie(this,Ri);Ie(this,Kf);Ie(this,Ti);Ie(this,zn);Ie(this,Po);be(this,Kf,t.client),this.mutationId=t.mutationId,be(this,zn,t.mutationCache),be(this,Ti,[]),this.state=t.state||B$(),this.setOptions(t.options),this.scheduleGc()}setOptions(t){this.options=t,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(t){$(this,Ti).includes(t)||($(this,Ti).push(t),this.clearGcTimeout(),$(this,zn).notify({type:"observerAdded",mutation:this,observer:t}))}removeObserver(t){be(this,Ti,$(this,Ti).filter(n=>n!==t)),this.scheduleGc(),$(this,zn).notify({type:"observerRemoved",mutation:this,observer:t})}optionalRemove(){$(this,Ti).length||(this.state.status==="pending"?this.scheduleGc():$(this,zn).remove(this))}continue(){var t;return((t=$(this,Po))==null?void 0:t.continue())??(this.state.status==="pending"?this.execute(this.state.variables):Promise.resolve())}async execute(t){var c,h,m,v,p,x,S,w,j,C,A,N,O,T,R,E,D,k;const n=()=>{We(this,Ri,pl).call(this,{type:"continue"})},r={client:$(this,Kf),meta:this.options.meta,mutationKey:this.options.mutationKey},l=be(this,Po,CR({fn:()=>this.options.mutationFn?this.options.mutationFn(t,r):Promise.reject(new Error("No mutationFn found")),onFail:(I,P)=>{We(this,Ri,pl).call(this,{type:"failed",failureCount:I,error:P})},onPause:()=>{We(this,Ri,pl).call(this,{type:"pause"})},onContinue:n,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>$(this,zn).canRun(this)})),o=this.state.status==="pending",u=!l.canStart();try{if(o)n();else{We(this,Ri,pl).call(this,{type:"pending",variables:t,isPaused:u}),$(this,zn).config.onMutate&&await $(this,zn).config.onMutate(t,this,r);const P=await((h=(c=this.options).onMutate)==null?void 0:h.call(c,t,r));P!==this.state.context&&We(this,Ri,pl).call(this,{type:"pending",context:P,variables:t,isPaused:u})}this.state.isPaused&&l.canStart()&&n();const I=await l.start();return await((v=(m=$(this,zn).config).onSuccess)==null?void 0:v.call(m,I,t,this.state.context,this,r)),await((x=(p=this.options).onSuccess)==null?void 0:x.call(p,I,t,this.state.context,r)),await((w=(S=$(this,zn).config).onSettled)==null?void 0:w.call(S,I,null,this.state.variables,this.state.context,this,r)),await((C=(j=this.options).onSettled)==null?void 0:C.call(j,I,null,t,this.state.context,r)),We(this,Ri,pl).call(this,{type:"success",data:I}),I}catch(I){try{await((N=(A=$(this,zn).config).onError)==null?void 0:N.call(A,I,t,this.state.context,this,r))}catch(P){Promise.reject(P)}try{await((T=(O=this.options).onError)==null?void 0:T.call(O,I,t,this.state.context,r))}catch(P){Promise.reject(P)}try{await((E=(R=$(this,zn).config).onSettled)==null?void 0:E.call(R,void 0,I,this.state.variables,this.state.context,this,r))}catch(P){Promise.reject(P)}try{await((k=(D=this.options).onSettled)==null?void 0:k.call(D,void 0,I,t,this.state.context,r))}catch(P){Promise.reject(P)}throw We(this,Ri,pl).call(this,{type:"error",error:I}),I}finally{$(this,Po)===l&&be(this,Po,void 0),$(this,zn).runNext(this)}}},Kf=new WeakMap,Ti=new WeakMap,zn=new WeakMap,Po=new WeakMap,Ri=new WeakSet,pl=function(t){const n=r=>{switch(t.type){case"failed":return{...r,failureCount:t.failureCount,failureReason:t.error};case"pause":return{...r,isPaused:!0};case"continue":return{...r,isPaused:!1};case"pending":return{...r,context:t.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:t.isPaused,status:"pending",variables:t.variables,submittedAt:Date.now()};case"success":return{...r,data:t.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...r,data:void 0,error:t.error,failureCount:r.failureCount+1,failureReason:t.error,isPaused:!1,status:"error"}}};this.state=n(this.state),Mn.batch(()=>{$(this,Ti).forEach(r=>{r.onMutationUpdate(t)}),$(this,zn).notify({mutation:this,type:"updated",action:t})})},fR);function B$(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}var _l,oi,Yf,dR,H$=(dR=class extends Xf{constructor(t={}){super();Ie(this,_l);Ie(this,oi);Ie(this,Yf);this.config=t,be(this,_l,new Set),be(this,oi,new Map),be(this,Yf,0)}build(t,n,r){const l=new $$({client:t,mutationCache:this,mutationId:++Yh(this,Yf)._,options:t.defaultMutationOptions(n),state:r});return this.add(l),l}add(t){$(this,_l).add(t);const n=Xh(t);if(typeof n=="string"){const r=$(this,oi).get(n);r?r.push(t):$(this,oi).set(n,[t])}this.notify({type:"added",mutation:t})}remove(t){if($(this,_l).delete(t)){const n=Xh(t);if(typeof n=="string"){const r=$(this,oi).get(n);if(r)if(r.length>1){const l=r.indexOf(t);l!==-1&&r.splice(l,1)}else r[0]===t&&$(this,oi).delete(n)}}this.notify({type:"removed",mutation:t})}canRun(t){var r;const n=Xh(t);if(typeof n=="string"){const l=(r=$(this,oi).get(n))==null?void 0:r.find(o=>o.state.status==="pending");return!l||l===t}else return!0}runNext(t){var r,l;const n=Xh(t);return typeof n=="string"?((l=(r=$(this,oi).get(n))==null?void 0:r.find(o=>o!==t&&o.state.isPaused))==null?void 0:l.continue())??Promise.resolve():Promise.resolve()}clear(){Mn.batch(()=>{const t=this.getAll();$(this,_l).clear(),$(this,oi).clear(),t.forEach(n=>{this.notify({type:"removed",mutation:n})})})}getAll(){return Array.from($(this,_l))}find(t){const n={exact:!0,...t};return this.getAll().find(r=>tE(n,r))}findAll(t={}){return this.getAll().filter(n=>tE(t,n))}notify(t){Mn.batch(()=>{this.listeners.forEach(n=>{n(t)})})}resumePausedMutations(){const t=this.getAll().filter(n=>n.state.isPaused);return Mn.batch(()=>Promise.all(t.map(n=>n.continue().catch(sr))))}},_l=new WeakMap,oi=new WeakMap,Yf=new WeakMap,dR);function Xh(e){var t;return(t=e.options.scope)==null?void 0:t.id}var Mi,hR,F$=(hR=class extends Xf{constructor(t={}){super();Ie(this,Mi);this.config=t,be(this,Mi,new Map)}build(t,n,r){const l=n.queryKey,o=n.queryHash??Jb(l,n);let u=this.get(o);return u||(u=new z$({client:t,queryKey:l,queryHash:o,options:t.defaultQueryOptions(n),state:r,defaultOptions:t.getQueryDefaults(l)}),this.add(u)),u}add(t){$(this,Mi).has(t.queryHash)||($(this,Mi).set(t.queryHash,t),this.notify({type:"added",query:t}))}remove(t){$(this,Mi).get(t.queryHash)===t&&(t.destroy(),$(this,Mi).delete(t.queryHash),this.notify({type:"removed",query:t}))}clear(){Mn.batch(()=>{this.getAll().forEach(t=>{this.remove(t)})})}get(t){return $(this,Mi).get(t)}getAll(){return[...$(this,Mi).values()]}find(t){const n={exact:!0,...t};return this.getAll().find(r=>eE(n,r))}findAll(t={}){const n=this.getAll();return Object.keys(t).length>0?n.filter(r=>eE(t,r)):n}notify(t){Mn.batch(()=>{this.listeners.forEach(n=>{n(t)})})}onFocus(){Mn.batch(()=>{this.getAll().forEach(t=>{t.onFocus()})})}onOnline(){Mn.batch(()=>{this.getAll().forEach(t=>{t.onOnline()})})}},Mi=new WeakMap,hR),kt,Al,El,Nu,Tu,Ol,Ru,Mu,mR,V$=(mR=class{constructor(e={}){Ie(this,kt);Ie(this,Al);Ie(this,El);Ie(this,Nu);Ie(this,Tu);Ie(this,Ol);Ie(this,Ru);Ie(this,Mu);be(this,kt,e.queryCache||new F$),be(this,Al,e.mutationCache||new H$),be(this,El,e.defaultOptions||{}),be(this,Nu,new Map),be(this,Tu,new Map),be(this,Ol,0)}mount(){Yh(this,Ol)._++,$(this,Ol)===1&&(be(this,Ru,rS.subscribe(async e=>{e&&(await this.resumePausedMutations(),$(this,kt).onFocus())})),be(this,Mu,km.subscribe(async e=>{e&&(await this.resumePausedMutations(),$(this,kt).onOnline())})))}unmount(){var e,t;Yh(this,Ol)._--,$(this,Ol)===0&&((e=$(this,Ru))==null||e.call(this),be(this,Ru,void 0),(t=$(this,Mu))==null||t.call(this),be(this,Mu,void 0))}isFetching(e){return $(this,kt).findAll({...e,fetchStatus:"fetching"}).length}isMutating(e){return $(this,Al).findAll({...e,status:"pending"}).length}getQueryData(e){var n;const t=this.defaultQueryOptions({queryKey:e});return(n=$(this,kt).get(t.queryHash))==null?void 0:n.state.data}ensureQueryData(e){const t=this.defaultQueryOptions(e),n=$(this,kt).build(this,t),r=n.state.data;return r===void 0?this.fetchQuery(e):(e.revalidateIfStale&&n.isStaleByTime(Mt(t.staleTime,n))&&this.prefetchQuery(t),Promise.resolve(r))}getQueriesData(e){return $(this,kt).findAll(e).map(({queryKey:t,state:n})=>[t,n.data])}setQueryData(e,t,n){var u;const r=this.defaultQueryOptions({queryKey:e}),l=(u=$(this,kt).get(r.queryHash))==null?void 0:u.state.data,o=C$(t,l);if(o!==void 0)return $(this,kt).build(this,r).setData(o,{...n,manual:!0})}setQueriesData(e,t,n){return Mn.batch(()=>$(this,kt).findAll(e).map(({queryKey:r})=>[r,this.setQueryData(r,t,n)]))}getQueryState(e){var n;const t=this.defaultQueryOptions({queryKey:e});return(n=$(this,kt).get(t.queryHash))==null?void 0:n.state}removeQueries(e){const t=$(this,kt);Mn.batch(()=>{t.findAll(e).forEach(n=>{t.remove(n)})})}resetQueries(e,t){const n=$(this,kt);return Mn.batch(()=>{const r=n.findAll(e),l=new Set(r);return r.forEach(o=>{o.reset()}),this.refetchQueries({type:"active",predicate:o=>l.has(o)},t)})}cancelQueries(e,t={}){const n={revert:!0,...t},r=Mn.batch(()=>$(this,kt).findAll(e).map(l=>l.cancel(n)));return Promise.all(r).then(sr).catch(sr)}invalidateQueries(e,t={}){return Mn.batch(()=>($(this,kt).findAll(e).forEach(n=>{n.invalidate()}),(e==null?void 0:e.refetchType)==="none"?Promise.resolve():this.refetchQueries({...e,type:(e==null?void 0:e.refetchType)??(e==null?void 0:e.type)??"active"},t)))}refetchQueries(e,t={}){const n={...t,cancelRefetch:t.cancelRefetch??!0},r=Mn.batch(()=>$(this,kt).findAll(e).filter(l=>!l.isDisabled()&&!l.isStatic()).map(l=>{let o=l.fetch(void 0,n);const u=l.state.fetchStatus==="paused";return(!n.throwOnError||u)&&(o=o.catch(sr)),u?Promise.resolve():o}));return Promise.all(r).then(sr)}async query(e){const t=this.defaultQueryOptions(e);t.retry===void 0&&(t.retry=!1);const n=$(this,kt).build(this,t),r=n.isStaleByTime(Mt(t.staleTime,n))?await n.fetch(t):n.state.data,l=t.select;return l?l(r):r}fetchQuery(e){const t=this.defaultQueryOptions(e);t.retry===void 0&&(t.retry=!1);const n=$(this,kt).build(this,t);return n.isStaleByTime(Mt(t.staleTime,n))?n.fetch(t):Promise.resolve(n.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(sr).catch(sr)}infiniteQuery(e){return e._type="infinite",this.query(e)}fetchInfiniteQuery(e){return e._type="infinite",this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(sr).catch(sr)}ensureInfiniteQueryData(e){return e._type="infinite",this.ensureQueryData(e)}resumePausedMutations(){return km.isOnline()?$(this,Al).resumePausedMutations():Promise.resolve()}getQueryCache(){return $(this,kt)}getMutationCache(){return $(this,Al)}getDefaultOptions(){return $(this,El)}setDefaultOptions(e){be(this,El,e)}setQueryDefaults(e,t){$(this,Nu).set(Of(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){const t=[...$(this,Nu).values()],n={};return t.forEach(r=>{Du(e,r.queryKey)&&Object.assign(n,r.defaultOptions)}),n}setMutationDefaults(e,t){$(this,Tu).set(Of(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){const t=[...$(this,Tu).values()],n={};return t.forEach(r=>{Du(e,r.mutationKey)&&Object.assign(n,r.defaultOptions)}),n}defaultQueryOptions(e){if(e._defaulted)return e;const t={...$(this,El).queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return t.queryHash||(t.queryHash=Jb(t.queryKey,t)),t.refetchOnReconnect===void 0&&(t.refetchOnReconnect=t.networkMode!=="always"),t.throwOnError===void 0&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode="offlineFirst"),t.queryFn===eS&&(t.enabled=!1),t}defaultMutationOptions(e){return e!=null&&e._defaulted?e:{...$(this,El).mutations,...(e==null?void 0:e.mutationKey)&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){$(this,kt).clear(),$(this,Al).clear()}},kt=new WeakMap,Al=new WeakMap,El=new WeakMap,Nu=new WeakMap,Tu=new WeakMap,Ol=new WeakMap,Ru=new WeakMap,Mu=new WeakMap,mR);const ER=b.createContext(!1),G$=()=>b.useContext(ER);ER.Provider;function q$(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}const K$=b.createContext(q$()),Y$=()=>b.useContext(K$),X$=(e,t,n)=>{const r=(n==null?void 0:n.state.status)==="error"&&typeof e.throwOnError=="function"?wR(e.throwOnError,[n.state.error,n]):e.throwOnError;(e.suspense||r)&&(t.isReset()||(e.retryOnMount=!1))},Q$=e=>{b.useEffect(()=>{e.clearReset()},[e])},Z$=({result:e,errorResetBoundary:t,throwOnError:n,query:r,suspense:l})=>e.isError&&!t.isReset()&&!e.isFetching&&r&&(l&&e.data===void 0||wR(n,[e.error,r])),W$=e=>{if(e.suspense){const n=l=>l==="static"?l:Math.max(l??1e3,1e3),r=e.staleTime;e.staleTime=typeof r=="function"?(...l)=>n(r(...l)):n(r),typeof e.gcTime=="number"&&(e.gcTime=Math.max(e.gcTime,1e3))}},J$=(e,t)=>(e==null?void 0:e.suspense)&&t.isPending,e5=(e,t,n)=>t.fetchOptimistic(e).catch(()=>{n.clearReset()});function t5(e,t,n){const r=G$(),l=Y$(),o=Wb(),u=o.defaultQueryOptions(e),c=o.getQueryCache().get(u.queryHash),h=e.subscribed!==!1;u._optimisticResults=r?"isRestoring":h?"optimistic":void 0,W$(u),X$(u,l,c),Q$(l);const[m]=b.useState(()=>new t(o,u)),v=m.getOptimisticResult(u);b.useEffect(()=>{m.setOptions(u)},[u,m]);const p=!r&&h;if(b.useSyncExternalStore(b.useCallback(x=>{const S=p?m.subscribe(Mn.batchCalls(x)):sr;return m.updateResult(),S},[m,p]),()=>m.getCurrentResult(),()=>m.getCurrentResult()),J$(u,v))throw e5(u,m,l);if(Z$({result:v,errorResetBoundary:l,throwOnError:u.throwOnError,query:c,suspense:u.suspense}))throw v.error;return u.notifyOnChangeProps?v:m.trackResult(v)}function Tv(e,t){return t5(e,L$)}var dx={exports:{}},tf={},hx={exports:{}},mx={};/** + */var eA;function j$(){if(eA)return Be;eA=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),l=Symbol.for("react.profiler"),o=Symbol.for("react.consumer"),u=Symbol.for("react.context"),c=Symbol.for("react.forward_ref"),h=Symbol.for("react.suspense"),m=Symbol.for("react.memo"),v=Symbol.for("react.lazy"),g=Symbol.for("react.activity"),x=Symbol.for("react.view_transition"),S=Symbol.iterator;function w(z){return z===null||typeof z!="object"?null:(z=S&&z[S]||z["@@iterator"],typeof z=="function"?z:null)}var j={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},C=Object.assign,E={};function N(z,Y,le){this.props=z,this.context=Y,this.refs=E,this.updater=le||j}N.prototype.isReactComponent={},N.prototype.setState=function(z,Y){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,Y,"setState")},N.prototype.forceUpdate=function(z){this.updater.enqueueForceUpdate(this,z,"forceUpdate")};function O(){}O.prototype=N.prototype;function T(z,Y,le){this.props=z,this.context=Y,this.refs=E,this.updater=le||j}var R=T.prototype=new O;R.constructor=T,C(R,N.prototype),R.isPureReactComponent=!0;var A=Array.isArray;function D(){}var k={H:null,A:null,T:null,S:null},I=Object.prototype.hasOwnProperty;function P(z,Y,le){var fe=le.ref;return{$$typeof:e,type:z,key:Y,ref:fe!==void 0?fe:null,props:le}}function B(z,Y){return P(z.type,Y,z.props)}function F(z){return typeof z=="object"&&z!==null&&z.$$typeof===e}function se(z){var Y={"=":"=0",":":"=2"};return"$"+z.replace(/[=:]/g,function(le){return Y[le]})}var ue=/\/+/g;function de(z,Y){return typeof z=="object"&&z!==null&&z.key!=null?se(""+z.key):Y.toString(36)}function G(z){switch(z.status){case"fulfilled":return z.value;case"rejected":throw z.reason;default:switch(typeof z.status=="string"?z.then(D,D):(z.status="pending",z.then(function(Y){z.status==="pending"&&(z.status="fulfilled",z.value=Y)},function(Y){z.status==="pending"&&(z.status="rejected",z.reason=Y)})),z.status){case"fulfilled":return z.value;case"rejected":throw z.reason}}throw z}function ne(z,Y,le,fe,De){var te=typeof z;(te==="undefined"||te==="boolean")&&(z=null);var ge=!1;if(z===null)ge=!0;else switch(te){case"bigint":case"string":case"number":ge=!0;break;case"object":switch(z.$$typeof){case e:case t:ge=!0;break;case v:return ge=z._init,ne(ge(z._payload),Y,le,fe,De)}}if(ge)return De=De(z),ge=fe===""?"."+de(z,0):fe,A(De)?(le="",ge!=null&&(le=ge.replace(ue,"$&/")+"/"),ne(De,Y,le,"",function(ct){return ct})):De!=null&&(F(De)&&(De=B(De,le+(De.key==null||z&&z.key===De.key?"":(""+De.key).replace(ue,"$&/")+"/")+ge)),Y.push(De)),1;ge=0;var oe=fe===""?".":fe+":";if(A(z))for(var J=0;J{const t=b.useContext(bR);if(!t)throw new Error("No QueryClient set, use QueryClientProvider to set one");return t},_$=({client:e,children:t})=>(b.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),f.jsx(bR.Provider,{value:e,children:t})),E$={setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e)};var Sl,Wb,uR,A$=(uR=class{constructor(){Ie(this,Sl,E$);Ie(this,Wb,!1)}setTimeoutProvider(e){be(this,Sl,e)}setTimeout(e,t){return $(this,Sl).setTimeout(e,t)}clearTimeout(e){$(this,Sl).clearTimeout(e)}setInterval(e,t){return $(this,Sl).setInterval(e,t)}clearInterval(e){$(this,Sl).clearInterval(e)}},Sl=new WeakMap,Wb=new WeakMap,uR);const So=new A$;function O$(e){setTimeout(e,0)}const N$=typeof window>"u"||"Deno"in globalThis;function sr(){}function T$(e,t){return typeof e=="function"?e(t):e}function SR(e){return typeof e=="number"&&e>=0&&e!==1/0}function wR(e,t){return Math.max(e+(t||0)-Date.now(),0)}function Mt(e,t){return typeof e=="function"?e(t):e}function nA(e,t){const{type:n="all",exact:r,fetchStatus:l,predicate:o,queryKey:u,stale:c}=e;if(u){if(r){if(t.queryHash!==eS(u,t.options))return!1}else if(!Du(t.queryKey,u))return!1}if(n!=="all"){const h=t.isActive();if(n==="active"&&!h||n==="inactive"&&h)return!1}return!(typeof c=="boolean"&&t.isStale()!==c||l&&l!==t.state.fetchStatus||o&&!o(t))}function rA(e,t){const{exact:n,status:r,predicate:l,mutationKey:o}=e;if(o){if(!t.options.mutationKey)return!1;if(n){if(Of(t.options.mutationKey)!==Of(o))return!1}else if(!Du(t.options.mutationKey,o))return!1}return!(r&&t.state.status!==r||l&&!l(t))}function eS(e,t){return((t==null?void 0:t.queryKeyHashFn)||Of)(e)}function Of(e){return JSON.stringify(e,(t,n)=>_0(n)?Object.keys(n).sort().reduce((r,l)=>(r[l]=n[l],r),{}):n)}function Du(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(e&&t&&typeof e=="object"&&typeof t=="object"){if(Array.isArray(e)&&Array.isArray(t)){if(t.length>e.length)return!1;for(let r=0;r500)return t;const r=iA(e)&&iA(t);if(!r&&!(_0(e)&&_0(t)))return t;const l=(r?e:Object.keys(e)).length,o=r?t:Object.keys(t),u=o.length,c=r?new Array(u):{};let h=0;for(let m=0;m{So.setTimeout(t,e)})}function E0(e,t,n){return typeof n.structuralSharing=="function"?n.structuralSharing(e,t):n.structuralSharing!==!1?CR(e,t):t}function M$(e,t,n=0){const r=[...e,t];return n&&r.length>n?r.slice(-n):r}function D$(e,t,n=0){const r=[t,...e];return n&&r.length>n?r.slice(0,n):r}const tS=Symbol();function _R(e,t){return!e.queryFn&&(t!=null&&t.initialPromise)?()=>t.initialPromise:!e.queryFn||e.queryFn===tS?()=>Promise.reject(new Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}function ER(e,t){return typeof e=="function"?e(...t):!!e}const nS=Symbol();function P$(e,t,n,r){let l=!1,o;return Object.defineProperties(e,{[nS]:{value:r},signal:{enumerable:!0,get:()=>(o??(o=t()),l||(l=!0,o.aborted?n():o.addEventListener("abort",n,{once:!0})),o)}}),e}let k$=()=>N$;const rS=()=>k$();var Xf=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(){}},Eo,wl,bu,cR,I$=(cR=class extends Xf{constructor(){super();Ie(this,Eo);Ie(this,wl);Ie(this,bu);be(this,bu,t=>{if(typeof window<"u"&&window.addEventListener){const n=()=>t();return window.addEventListener("visibilitychange",n,!1),()=>{window.removeEventListener("visibilitychange",n)}}})}onSubscribe(){$(this,wl)||this.setEventListener($(this,bu))}onUnsubscribe(){var t;this.hasListeners()||((t=$(this,wl))==null||t.call(this),be(this,wl,void 0))}setEventListener(t){var n;be(this,bu,t),(n=$(this,wl))==null||n.call(this),be(this,wl,t(r=>{typeof r=="boolean"?this.setFocused(r):this.onFocus()}))}setFocused(t){$(this,Eo)!==t&&(be(this,Eo,t),this.onFocus())}onFocus(){const t=this.isFocused();this.listeners.forEach(n=>{n(t)})}isFocused(){var t;return typeof $(this,Eo)=="boolean"?$(this,Eo):((t=globalThis.document)==null?void 0:t.visibilityState)!=="hidden"}},Eo=new WeakMap,wl=new WeakMap,bu=new WeakMap,cR);const iS=new I$,z$=O$;function L$(){let e=[],t=0,n=c=>{c()},r=c=>{c()},l=z$;const o=c=>{t?e.push(c):l(()=>{n(c)})},u=()=>{const c=e;e=[],c.length&&l(()=>{r(()=>{c.forEach(h=>{n(h)})})})};return{batch:c=>{let h;t++;try{h=c()}finally{t--,t||u()}return h},batchCalls:c=>(...h)=>{o(()=>{c(...h)})},schedule:o,setNotifyFunction:c=>{n=c},setBatchNotifyFunction:c=>{r=c},setScheduler:c=>{l=c}}}const Mn=L$();var Su,jl,wu,fR,U$=(fR=class extends Xf{constructor(){super();Ie(this,Su,!0);Ie(this,jl);Ie(this,wu);be(this,wu,t=>{if(typeof window<"u"&&window.addEventListener){const n=()=>t(!0),r=()=>t(!1);return window.addEventListener("online",n,!1),window.addEventListener("offline",r,!1),()=>{window.removeEventListener("online",n),window.removeEventListener("offline",r)}}})}onSubscribe(){$(this,jl)||this.setEventListener($(this,wu))}onUnsubscribe(){var t;this.hasListeners()||((t=$(this,jl))==null||t.call(this),be(this,jl,void 0))}setEventListener(t){var n;be(this,wu,t),(n=$(this,jl))==null||n.call(this),be(this,jl,t(this.setOnline.bind(this)))}setOnline(t){$(this,Su)!==t&&(be(this,Su,t),this.listeners.forEach(n=>{n(t)}))}isOnline(){return $(this,Su)}},Su=new WeakMap,jl=new WeakMap,wu=new WeakMap,fR);const Im=new U$;function $$(e){return Math.min(1e3*2**e,3e4)}function AR(e){return(e??"online")==="online"?Im.isOnline():!0}var A0=class extends Error{constructor(e){super("CancelledError"),this.revert=e==null?void 0:e.revert,this.silent=e==null?void 0:e.silent}};function OR(e){let t=!1,n=0,r,l="pending",o,u;const c=new Promise((N,O)=>{o=N,u=O});c.catch(sr);const h=()=>l!=="pending",m=N=>{var O;if(!h()){const T=new A0(N);j(T),(O=e.onCancel)==null||O.call(e,T)}},v=()=>{t=!0},g=()=>{t=!1},x=()=>iS.isFocused()&&(e.networkMode==="always"||Im.isOnline())&&e.canRun(),S=()=>AR(e.networkMode)&&e.canRun(),w=N=>{h()||(r==null||r(),l="resolved",o(N))},j=N=>{h()||(r==null||r(),l="rejected",u(N))},C=N=>new Promise(O=>{var T;r=R=>{(h()||N())&&O(R)},(T=e.onPause)==null||T.call(e)}).then(()=>{var O;r=void 0,h()||(O=e.onContinue)==null||O.call(e)}),E=()=>{if(h())return;let N;const O=n===0?e.initialPromise:void 0;try{N=O??e.fn()}catch(T){N=Promise.reject(T)}Promise.resolve(N).then(w).catch(T=>{var I;if(h())return;const R=e.retry??(rS()?0:3),A=e.retryDelay??$$,D=typeof A=="function"?A(n,T):A,k=R===!0||typeof R=="number"&&nh()||x()?void 0:C(x)).then(()=>{t?j(T):E()})})};return{promise:c,status:()=>l,cancel:m,continue:()=>(r==null||r(),c),cancelRetry:v,continueRetry:g,canStart:S,start:()=>(S()?E():C(S).then(E),c)}}var Ao,dR,NR=(dR=class{constructor(){Ie(this,Ao)}destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),SR(this.gcTime)&&be(this,Ao,So.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(rS()?1/0:3e5))}clearGcTimeout(){$(this,Ao)!==void 0&&(So.clearTimeout($(this,Ao)),be(this,Ao,void 0))}},Ao=new WeakMap,dR);function B$(e){return{onFetch:(t,n)=>{var v,g,x,S,w;const r=t.options,l=(x=(g=(v=t.fetchOptions)==null?void 0:v.meta)==null?void 0:g.fetchMore)==null?void 0:x.direction,o=((S=t.state.data)==null?void 0:S.pages)||[],u=((w=t.state.data)==null?void 0:w.pageParams)||[];let c={pages:[],pageParams:[]},h=0;const m=async()=>{let j=!1;const C=t,E=T=>{P$(T,()=>t.signal,()=>j=!0,C[nS])},N=_R(t.options,t.fetchOptions),O=async(T,R,A)=>{if(j)return Promise.reject(t.signal.reason);if(R==null&&T.pages.length)return Promise.resolve(T);const k=(()=>{const F={client:t.client,queryKey:t.queryKey,pageParam:R,direction:A?"backward":"forward",meta:t.options.meta};return E(F),F})(),I=await N(k),{maxPages:P}=t.options,B=A?D$:M$;return{pages:B(T.pages,I,P),pageParams:B(T.pageParams,R,P)}};if(l&&o.length){const T=l==="backward",R=T?H$:lA,A={pages:o,pageParams:u};c=await O(A,R(r,A),T)}else{const T=e??o.length;do{const R=h===0?u[0]===void 0?r.initialPageParam:u[0]:lA(r,c);if(h>0&&R==null)break;c=await O(c,R),h++}while(h{var j,C;return(C=(j=t.options).persister)==null?void 0:C.call(j,m,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},n)}:t.fetchFn=m}}}function lA(e,{pages:t,pageParams:n}){const r=t.length-1;return t.length>0?e.getNextPageParam(t[r],t,n[r],n):void 0}function H$(e,{pages:t,pageParams:n}){var r;return t.length>0?(r=e.getPreviousPageParam)==null?void 0:r.call(e,t[0],t,n[0],n):void 0}var ju,Oo,Cu,Hr,No,hn,ha,Vf,To,li,ua,hR,F$=(hR=class extends NR{constructor(t){super();Ie(this,li);Ie(this,ju);Ie(this,Oo);Ie(this,Cu);Ie(this,Hr);Ie(this,No);Ie(this,hn);Ie(this,ha);Ie(this,Vf);Ie(this,To);be(this,To,!1),be(this,Vf,t.defaultOptions),this.setOptions(t.options),this.observers=[],be(this,No,t.client),be(this,Hr,$(this,No).getQueryCache()),this.queryKey=t.queryKey,this.queryHash=t.queryHash,be(this,Oo,sA(this.options)),this.state=t.state??$(this,Oo),this.scheduleGc()}get meta(){return this.options.meta}get queryType(){return $(this,ju)}get promise(){var t;return(t=$(this,hn))==null?void 0:t.promise}setOptions(t){if(this.options={...$(this,Vf),...t},t!=null&&t._type&&be(this,ju,t._type),this.updateGcTime(this.options.gcTime),this.state&&this.state.data===void 0){const n=sA(this.options);n.data!==void 0&&(this.setState(oA(n.data,n.dataUpdatedAt)),be(this,Oo,n))}}optionalRemove(){!this.observers.length&&this.state.fetchStatus==="idle"&&$(this,Hr).remove(this)}setData(t,n){const r=E0(this.state.data,t,this.options);return We(this,li,ua).call(this,{data:r,type:"success",dataUpdatedAt:n==null?void 0:n.updatedAt,manual:n==null?void 0:n.manual}),r}setState(t){We(this,li,ua).call(this,{type:"setState",state:t})}cancel(t){var r,l;const n=(r=$(this,hn))==null?void 0:r.promise;return(l=$(this,hn))==null||l.cancel(t),n?n.then(sr).catch(sr):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}get resetState(){return $(this,Oo)}reset(){this.destroy(),this.setState(this.resetState)}isActive(){return this.observers.some(t=>Mt(t.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===tS||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.state.data===void 0?!1:this.getObserversCount()>0?this.observers.some(t=>Mt(t.options.staleTime,this)==="static"):!1}isStale(){return this.getObserversCount()>0?this.observers.some(t=>t.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(t=0){return this.state.data===void 0?!0:t==="static"?!1:this.state.isInvalidated?!0:!wR(this.state.dataUpdatedAt,t)}onFocus(){var t,n;(t=this.observers.find(r=>r.shouldFetchOnWindowFocus()))==null||t.refetch({cancelRefetch:!1}),(n=$(this,hn))==null||n.continue()}onOnline(){var t,n;(t=this.observers.find(r=>r.shouldFetchOnReconnect()))==null||t.refetch({cancelRefetch:!1}),(n=$(this,hn))==null||n.continue()}addObserver(t){this.observers.includes(t)||(this.observers.push(t),this.clearGcTimeout(),$(this,Hr).notify({type:"observerAdded",query:this,observer:t}))}removeObserver(t){const n=this.observers.indexOf(t);n!==-1&&(this.observers.splice(n,1),this.observers.length||($(this,hn)&&($(this,To)||this.state.fetchStatus==="paused"&&this.state.status==="pending"?$(this,hn).cancel({revert:!0}):$(this,hn).cancelRetry()),this.scheduleGc()),$(this,Hr).notify({type:"observerRemoved",query:this,observer:t}))}getObserversCount(){return this.observers.length}invalidate(){this.state.isInvalidated||We(this,li,ua).call(this,{type:"invalidate"})}async fetch(t,n){var v,g,x,S;if(this.state.fetchStatus!=="idle"&&((v=$(this,hn))==null?void 0:v.status())!=="rejected"){if(this.state.data!==void 0&&(n!=null&&n.cancelRefetch))this.cancel({silent:!0});else if($(this,hn)&&$(this,ha))return $(this,hn).continueRetry(),$(this,ha)}if(t&&this.setOptions(t),!this.options.queryFn){const w=this.observers.find(j=>j.options.queryFn);w&&this.setOptions(w.options)}const r=new AbortController,l=w=>{Object.defineProperties(w,{[nS]:{value:r.signal,enumerable:!0},signal:{enumerable:!0,get:()=>(be(this,To,!0),r.signal)}})},o=()=>{const w=_R(this.options,n),C=(()=>{const E={client:$(this,No),queryKey:this.queryKey,meta:this.meta};return l(E),E})();return be(this,To,!1),this.options.persister?this.options.persister(w,C,this):w(C)},c=(()=>{const w={fetchOptions:n,options:this.options,queryKey:this.queryKey,client:$(this,No),state:this.state,fetchFn:o};return l(w),w})();(g=$(this,ju)==="infinite"?B$(this.options.pages):this.options.behavior)==null||g.onFetch(c,this),be(this,Cu,this.state),(this.state.fetchStatus==="idle"||this.state.fetchMeta!==((x=c.fetchOptions)==null?void 0:x.meta))&&We(this,li,ua).call(this,{type:"fetch",meta:(S=c.fetchOptions)==null?void 0:S.meta});const h=be(this,hn,OR({initialPromise:n==null?void 0:n.initialPromise,fn:c.fetchFn,onCancel:w=>{w instanceof A0&&w.revert&&this.setState({...$(this,Cu),fetchStatus:"idle"}),r.abort()},onFail:(w,j)=>{We(this,li,ua).call(this,{type:"failed",failureCount:w,error:j})},onPause:()=>{We(this,li,ua).call(this,{type:"pause"})},onContinue:()=>{We(this,li,ua).call(this,{type:"continue"})},retry:c.options.retry,retryDelay:c.options.retryDelay,networkMode:c.options.networkMode,canRun:()=>!0})),m=(async()=>{var w,j,C,E,N,O,T,R;try{const A=await h.promise;if(A===void 0)throw new Error(`${this.queryHash} data is undefined`);return this.setData(A),(j=(w=$(this,Hr).config).onSuccess)==null||j.call(w,A,this),(E=(C=$(this,Hr).config).onSettled)==null||E.call(C,A,this.state.error,this),A}catch(A){if(A instanceof A0){if(A.silent){if($(this,hn)!==h&&$(this,ha))return $(this,ha);throw A}else if(A.revert){if(this.state.data===void 0)throw A;return this.state.data}}throw We(this,li,ua).call(this,{type:"error",error:A}),(O=(N=$(this,Hr).config).onError)==null||O.call(N,A,this),(R=(T=$(this,Hr).config).onSettled)==null||R.call(T,this.state.data,A,this),A}finally{$(this,hn)===h&&(be(this,hn,void 0),be(this,ha,void 0)),this.scheduleGc()}})();return be(this,ha,m),h.start(),m}},ju=new WeakMap,Oo=new WeakMap,Cu=new WeakMap,Hr=new WeakMap,No=new WeakMap,hn=new WeakMap,ha=new WeakMap,Vf=new WeakMap,To=new WeakMap,li=new WeakSet,ua=function(t){const n=r=>{switch(t.type){case"failed":return{...r,fetchFailureCount:t.failureCount,fetchFailureReason:t.error};case"pause":return{...r,fetchStatus:"paused"};case"continue":return{...r,fetchStatus:"fetching"};case"fetch":return{...r,...TR(r.data,this.options),fetchMeta:t.meta??null};case"success":const l={...r,...oA(t.data,t.dataUpdatedAt),dataUpdateCount:r.dataUpdateCount+1,...!t.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};return be(this,Cu,t.manual?l:void 0),l;case"error":const o=t.error;return{...r,error:o,errorUpdateCount:r.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:r.fetchFailureCount+1,fetchFailureReason:o,fetchStatus:"idle",status:"error",isInvalidated:!0};case"invalidate":return{...r,isInvalidated:!0};case"setState":return{...r,...t.state}}};this.state=n(this.state),Mn.batch(()=>{this.observers.slice().forEach(r=>{r.onQueryUpdate()}),$(this,Hr).notify({query:this,type:"updated",action:t})})},hR);function TR(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:AR(t.networkMode)?"fetching":"paused",...e===void 0&&{error:null,status:"pending"}}}function oA(e,t){return{data:e,dataUpdatedAt:t??Date.now(),error:null,isInvalidated:!1,status:"success"}}function sA(e){const t=typeof e.initialData=="function"?e.initialData():e.initialData,n=t!==void 0,r=n?typeof e.initialDataUpdatedAt=="function"?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:n?r??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:n?"success":"pending",fetchStatus:"idle"}}var Yn,Je,Gf,Xn,Ro,_u,ma,qf,Eu,Au,Mo,Do,Cl,Ou,ut,pf,O0,N0,T0,R0,M0,D0,P0,k0,mR,V$=(mR=class extends Xf{constructor(t,n){super();Ie(this,ut);Ie(this,Yn);Ie(this,Je);Ie(this,Gf);Ie(this,Xn);Ie(this,Ro);Ie(this,_u);Ie(this,ma);Ie(this,qf);Ie(this,Eu);Ie(this,Au);Ie(this,Mo);Ie(this,Do);Ie(this,Cl);Ie(this,Ou,new Set);this.options=n,be(this,Yn,t),be(this,ma,null),this.bindMethods(),this.setOptions(n)}bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&($(this,Je).addObserver(this),uA($(this,Je),this.options)?We(this,ut,pf).call(this):this.updateResult(),We(this,ut,M0).call(this))}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return I0($(this,Je),this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return I0($(this,Je),this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,We(this,ut,D0).call(this),We(this,ut,P0).call(this),$(this,Je).removeObserver(this)}setOptions(t){const n=this.options,r=$(this,Je);if(this.options=$(this,Yn).defaultQueryOptions(t),this.options.enabled!==void 0&&typeof this.options.enabled!="boolean"&&typeof this.options.enabled!="function"&&typeof Mt(this.options.enabled,$(this,Je))!="boolean")throw new Error("Expected enabled to be a boolean or a callback that returns a boolean");We(this,ut,k0).call(this),$(this,Je).setOptions(this.options),n._defaulted&&!dx(this.options,n)&&$(this,Yn).getQueryCache().notify({type:"observerOptionsUpdated",query:$(this,Je),observer:this});const l=this.hasListeners();l&&cA($(this,Je),r,this.options,n)&&We(this,ut,pf).call(this),this.updateResult(),l&&($(this,Je)!==r||Mt(this.options.enabled,$(this,Je))!==Mt(n.enabled,$(this,Je))||Mt(this.options.staleTime,$(this,Je))!==Mt(n.staleTime,$(this,Je)))&&We(this,ut,N0).call(this);const o=We(this,ut,T0).call(this);l&&($(this,Je)!==r||Mt(this.options.enabled,$(this,Je))!==Mt(n.enabled,$(this,Je))||o!==$(this,Cl))&&We(this,ut,R0).call(this,o)}getOptimisticResult(t){const n=$(this,Yn).getQueryCache().build($(this,Yn),t),r=this.createResult(n,t);return dx(this.getCurrentResult(),r)||(be(this,Xn,r),be(this,_u,this.options),be(this,Ro,$(this,Je).state)),r}getCurrentResult(){return $(this,Xn)}trackResult(t,n){return new Proxy(t,{get:(r,l)=>(this.trackProp(l),n==null||n(l),Reflect.get(r,l))})}trackProp(t){$(this,Ou).add(t)}getCurrentQuery(){return $(this,Je)}refetch({...t}={}){return this.fetch({...t})}fetchOptimistic(t){const n=$(this,Yn).defaultQueryOptions(t),r=$(this,Yn).getQueryCache().build($(this,Yn),n);let l=()=>{},o;const u=new Promise(c=>{o=c,l=$(this,Yn).getQueryCache().subscribe(h=>{h.type==="updated"&&h.query.queryHash===r.queryHash&&r.state.data!==void 0&&(l(),c(this.createResult(r,n)))})});return Promise.race([r.fetch(n).then(()=>{const c=this.createResult(r,n);return o==null||o(c),c}).finally(()=>{l()}),u])}fetch(t){return We(this,ut,pf).call(this,{...t,cancelRefetch:t.cancelRefetch??!0}).then(()=>(this.updateResult(),$(this,Xn)))}createResult(t,n){var A;const r=$(this,Je),l=this.options,o=$(this,Xn),u=$(this,Ro),c=$(this,_u),h=t!==r?t.state:$(this,Gf),{state:m}=t;let v={...m},g=!1,x;if(n._optimisticResults){const D=this.hasListeners(),k=!D&&uA(t,n),I=D&&cA(t,r,n,l);(k||I)&&(v={...v,...TR(m.data,t.options)}),n._optimisticResults==="isRestoring"&&(v.fetchStatus="idle")}let{error:S,errorUpdatedAt:w,status:j}=v;x=v.data;let C=!1;if(n.placeholderData!==void 0&&x===void 0&&j==="pending"){let D;o!=null&&o.isPlaceholderData&&n.placeholderData===(c==null?void 0:c.placeholderData)?(D=o.data,C=!0):D=typeof n.placeholderData=="function"?n.placeholderData((A=$(this,Au))==null?void 0:A.state.data,$(this,Au)):n.placeholderData,D!==void 0&&(j="success",x=E0(o==null?void 0:o.data,D,n),g=!0)}if(n.select&&x!==void 0&&!C)if(o&&x===(u==null?void 0:u.data)&&n.select===$(this,qf))x=$(this,Eu);else try{be(this,qf,n.select),x=n.select(x),x=E0(o==null?void 0:o.data,x,n),be(this,Eu,x),be(this,ma,null)}catch(D){be(this,ma,D)}else x===void 0&&be(this,ma,null);$(this,ma)&&(S=$(this,ma),x=$(this,Eu),w=(o==null?void 0:o.error)===S?o.errorUpdatedAt:Date.now(),j="error",g=!1);const E=v.fetchStatus==="fetching",N=j==="pending",O=j==="error",T=N&&E,R=x!==void 0;return{status:j,fetchStatus:v.fetchStatus,isPending:N,isSuccess:j==="success",isError:O,isInitialLoading:T,isLoading:T,data:x,dataUpdatedAt:v.dataUpdatedAt,error:S,errorUpdatedAt:w,failureCount:v.fetchFailureCount,failureReason:v.fetchFailureReason,errorUpdateCount:v.errorUpdateCount,isFetched:t.isFetched(),isFetchedAfterMount:v.dataUpdateCount>h.dataUpdateCount||v.errorUpdateCount>h.errorUpdateCount,isFetching:E,isRefetching:E&&!N,isLoadingError:O&&!R,isPaused:v.fetchStatus==="paused",isPlaceholderData:g,isRefetchError:O&&R,isStale:aS(t,n),refetch:this.refetch,isEnabled:Mt(n.enabled,t)!==!1}}updateResult(){const t=$(this,Xn),n=this.createResult($(this,Je),this.options);if(be(this,Ro,$(this,Je).state),be(this,_u,this.options),$(this,Ro).data!==void 0&&be(this,Au,$(this,Je)),dx(n,t))return;be(this,Xn,n);const l=(()=>{if(!t)return!0;const{notifyOnChangeProps:o}=this.options,u=typeof o=="function"?o():o;if(u==="all"||!u&&!$(this,Ou).size||this.options.throwOnError&&$(this,Xn).error!==t.error)return!0;for(const c of u??$(this,Ou))if($(this,Xn)[c]!==t[c])return!0;return!1})();Mn.batch(()=>{l&&this.listeners.forEach(o=>{o($(this,Xn))}),$(this,Yn).getQueryCache().notify({query:$(this,Je),type:"observerResultsUpdated"})})}onQueryUpdate(){this.updateResult(),this.hasListeners()&&We(this,ut,M0).call(this)}},Yn=new WeakMap,Je=new WeakMap,Gf=new WeakMap,Xn=new WeakMap,Ro=new WeakMap,_u=new WeakMap,ma=new WeakMap,qf=new WeakMap,Eu=new WeakMap,Au=new WeakMap,Mo=new WeakMap,Do=new WeakMap,Cl=new WeakMap,Ou=new WeakMap,ut=new WeakSet,pf=function(t){We(this,ut,k0).call(this);let n=$(this,Je).fetch(this.options,t);return t!=null&&t.throwOnError||(n=n.catch(sr)),n},O0=function(t){return!rS()&&Mt(this.options.enabled,$(this,Je))!==!1&&SR(t)},N0=function(){We(this,ut,D0).call(this);const t=Mt(this.options.staleTime,$(this,Je));if($(this,Xn).isStale||!We(this,ut,O0).call(this,t))return;const n=wR($(this,Xn).dataUpdatedAt,t)+1;be(this,Mo,So.setTimeout(()=>{$(this,Xn).isStale||this.updateResult()},n))},T0=function(){return Mt(this.options.refetchInterval,$(this,Je))??!1},R0=function(t){We(this,ut,P0).call(this),be(this,Cl,t),!($(this,Cl)===0||!We(this,ut,O0).call(this,$(this,Cl)))&&be(this,Do,So.setInterval(()=>{(this.options.refetchIntervalInBackground||iS.isFocused())&&We(this,ut,pf).call(this)},$(this,Cl)))},M0=function(){We(this,ut,N0).call(this),We(this,ut,R0).call(this,We(this,ut,T0).call(this))},D0=function(){$(this,Mo)!==void 0&&(So.clearTimeout($(this,Mo)),be(this,Mo,void 0))},P0=function(){$(this,Do)!==void 0&&(So.clearInterval($(this,Do)),be(this,Do,void 0))},k0=function(){const t=$(this,Yn).getQueryCache().build($(this,Yn),this.options);if(t===$(this,Je))return;const n=$(this,Je);be(this,Je,t),be(this,Gf,t.state),this.hasListeners()&&(n==null||n.removeObserver(this),t.addObserver(this))},mR);function G$(e,t){return Mt(t.enabled,e)!==!1&&e.state.data===void 0&&!(e.state.status==="error"&&Mt(t.retryOnMount,e)===!1)}function uA(e,t){return G$(e,t)||e.state.data!==void 0&&I0(e,t,t.refetchOnMount)}function I0(e,t,n){if(Mt(t.enabled,e)!==!1&&Mt(t.staleTime,e)!=="static"){const r=Mt(n,e);return r==="always"||r!==!1&&aS(e,t)}return!1}function cA(e,t,n,r){return(e!==t||Mt(r.enabled,e)===!1)&&(!n.suspense||e.state.status!=="error")&&aS(e,n)}function aS(e,t){return Mt(t.enabled,e)!==!1&&e.isStaleByTime(Mt(t.staleTime,e))}var Kf,Ti,zn,Po,Ri,pl,vR,q$=(vR=class extends NR{constructor(t){super();Ie(this,Ri);Ie(this,Kf);Ie(this,Ti);Ie(this,zn);Ie(this,Po);be(this,Kf,t.client),this.mutationId=t.mutationId,be(this,zn,t.mutationCache),be(this,Ti,[]),this.state=t.state||K$(),this.setOptions(t.options),this.scheduleGc()}setOptions(t){this.options=t,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(t){$(this,Ti).includes(t)||($(this,Ti).push(t),this.clearGcTimeout(),$(this,zn).notify({type:"observerAdded",mutation:this,observer:t}))}removeObserver(t){be(this,Ti,$(this,Ti).filter(n=>n!==t)),this.scheduleGc(),$(this,zn).notify({type:"observerRemoved",mutation:this,observer:t})}optionalRemove(){$(this,Ti).length||(this.state.status==="pending"?this.scheduleGc():$(this,zn).remove(this))}continue(){var t;return((t=$(this,Po))==null?void 0:t.continue())??(this.state.status==="pending"?this.execute(this.state.variables):Promise.resolve())}async execute(t){var c,h,m,v,g,x,S,w,j,C,E,N,O,T,R,A,D,k;const n=()=>{We(this,Ri,pl).call(this,{type:"continue"})},r={client:$(this,Kf),meta:this.options.meta,mutationKey:this.options.mutationKey},l=be(this,Po,OR({fn:()=>this.options.mutationFn?this.options.mutationFn(t,r):Promise.reject(new Error("No mutationFn found")),onFail:(I,P)=>{We(this,Ri,pl).call(this,{type:"failed",failureCount:I,error:P})},onPause:()=>{We(this,Ri,pl).call(this,{type:"pause"})},onContinue:n,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>$(this,zn).canRun(this)})),o=this.state.status==="pending",u=!l.canStart();try{if(o)n();else{We(this,Ri,pl).call(this,{type:"pending",variables:t,isPaused:u}),$(this,zn).config.onMutate&&await $(this,zn).config.onMutate(t,this,r);const P=await((h=(c=this.options).onMutate)==null?void 0:h.call(c,t,r));P!==this.state.context&&We(this,Ri,pl).call(this,{type:"pending",context:P,variables:t,isPaused:u})}this.state.isPaused&&l.canStart()&&n();const I=await l.start();return await((v=(m=$(this,zn).config).onSuccess)==null?void 0:v.call(m,I,t,this.state.context,this,r)),await((x=(g=this.options).onSuccess)==null?void 0:x.call(g,I,t,this.state.context,r)),await((w=(S=$(this,zn).config).onSettled)==null?void 0:w.call(S,I,null,this.state.variables,this.state.context,this,r)),await((C=(j=this.options).onSettled)==null?void 0:C.call(j,I,null,t,this.state.context,r)),We(this,Ri,pl).call(this,{type:"success",data:I}),I}catch(I){try{await((N=(E=$(this,zn).config).onError)==null?void 0:N.call(E,I,t,this.state.context,this,r))}catch(P){Promise.reject(P)}try{await((T=(O=this.options).onError)==null?void 0:T.call(O,I,t,this.state.context,r))}catch(P){Promise.reject(P)}try{await((A=(R=$(this,zn).config).onSettled)==null?void 0:A.call(R,void 0,I,this.state.variables,this.state.context,this,r))}catch(P){Promise.reject(P)}try{await((k=(D=this.options).onSettled)==null?void 0:k.call(D,void 0,I,t,this.state.context,r))}catch(P){Promise.reject(P)}throw We(this,Ri,pl).call(this,{type:"error",error:I}),I}finally{$(this,Po)===l&&be(this,Po,void 0),$(this,zn).runNext(this)}}},Kf=new WeakMap,Ti=new WeakMap,zn=new WeakMap,Po=new WeakMap,Ri=new WeakSet,pl=function(t){const n=r=>{switch(t.type){case"failed":return{...r,failureCount:t.failureCount,failureReason:t.error};case"pause":return{...r,isPaused:!0};case"continue":return{...r,isPaused:!1};case"pending":return{...r,context:t.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:t.isPaused,status:"pending",variables:t.variables,submittedAt:Date.now()};case"success":return{...r,data:t.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...r,data:void 0,error:t.error,failureCount:r.failureCount+1,failureReason:t.error,isPaused:!1,status:"error"}}};this.state=n(this.state),Mn.batch(()=>{$(this,Ti).forEach(r=>{r.onMutationUpdate(t)}),$(this,zn).notify({mutation:this,type:"updated",action:t})})},vR);function K$(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}var _l,oi,Yf,gR,Y$=(gR=class extends Xf{constructor(t={}){super();Ie(this,_l);Ie(this,oi);Ie(this,Yf);this.config=t,be(this,_l,new Set),be(this,oi,new Map),be(this,Yf,0)}build(t,n,r){const l=new q$({client:t,mutationCache:this,mutationId:++Xh(this,Yf)._,options:t.defaultMutationOptions(n),state:r});return this.add(l),l}add(t){$(this,_l).add(t);const n=Qh(t);if(typeof n=="string"){const r=$(this,oi).get(n);r?r.push(t):$(this,oi).set(n,[t])}this.notify({type:"added",mutation:t})}remove(t){if($(this,_l).delete(t)){const n=Qh(t);if(typeof n=="string"){const r=$(this,oi).get(n);if(r)if(r.length>1){const l=r.indexOf(t);l!==-1&&r.splice(l,1)}else r[0]===t&&$(this,oi).delete(n)}}this.notify({type:"removed",mutation:t})}canRun(t){var r;const n=Qh(t);if(typeof n=="string"){const l=(r=$(this,oi).get(n))==null?void 0:r.find(o=>o.state.status==="pending");return!l||l===t}else return!0}runNext(t){var r,l;const n=Qh(t);return typeof n=="string"?((l=(r=$(this,oi).get(n))==null?void 0:r.find(o=>o!==t&&o.state.isPaused))==null?void 0:l.continue())??Promise.resolve():Promise.resolve()}clear(){Mn.batch(()=>{const t=this.getAll();$(this,_l).clear(),$(this,oi).clear(),t.forEach(n=>{this.notify({type:"removed",mutation:n})})})}getAll(){return Array.from($(this,_l))}find(t){const n={exact:!0,...t};return this.getAll().find(r=>rA(n,r))}findAll(t={}){return this.getAll().filter(n=>rA(t,n))}notify(t){Mn.batch(()=>{this.listeners.forEach(n=>{n(t)})})}resumePausedMutations(){const t=this.getAll().filter(n=>n.state.isPaused);return Mn.batch(()=>Promise.all(t.map(n=>n.continue().catch(sr))))}},_l=new WeakMap,oi=new WeakMap,Yf=new WeakMap,gR);function Qh(e){var t;return(t=e.options.scope)==null?void 0:t.id}var Mi,pR,X$=(pR=class extends Xf{constructor(t={}){super();Ie(this,Mi);this.config=t,be(this,Mi,new Map)}build(t,n,r){const l=n.queryKey,o=n.queryHash??eS(l,n);let u=this.get(o);return u||(u=new F$({client:t,queryKey:l,queryHash:o,options:t.defaultQueryOptions(n),state:r,defaultOptions:t.getQueryDefaults(l)}),this.add(u)),u}add(t){$(this,Mi).has(t.queryHash)||($(this,Mi).set(t.queryHash,t),this.notify({type:"added",query:t}))}remove(t){$(this,Mi).get(t.queryHash)===t&&(t.destroy(),$(this,Mi).delete(t.queryHash),this.notify({type:"removed",query:t}))}clear(){Mn.batch(()=>{this.getAll().forEach(t=>{this.remove(t)})})}get(t){return $(this,Mi).get(t)}getAll(){return[...$(this,Mi).values()]}find(t){const n={exact:!0,...t};return this.getAll().find(r=>nA(n,r))}findAll(t={}){const n=this.getAll();return Object.keys(t).length>0?n.filter(r=>nA(t,r)):n}notify(t){Mn.batch(()=>{this.listeners.forEach(n=>{n(t)})})}onFocus(){Mn.batch(()=>{this.getAll().forEach(t=>{t.onFocus()})})}onOnline(){Mn.batch(()=>{this.getAll().forEach(t=>{t.onOnline()})})}},Mi=new WeakMap,pR),kt,El,Al,Nu,Tu,Ol,Ru,Mu,yR,Q$=(yR=class{constructor(e={}){Ie(this,kt);Ie(this,El);Ie(this,Al);Ie(this,Nu);Ie(this,Tu);Ie(this,Ol);Ie(this,Ru);Ie(this,Mu);be(this,kt,e.queryCache||new X$),be(this,El,e.mutationCache||new Y$),be(this,Al,e.defaultOptions||{}),be(this,Nu,new Map),be(this,Tu,new Map),be(this,Ol,0)}mount(){Xh(this,Ol)._++,$(this,Ol)===1&&(be(this,Ru,iS.subscribe(async e=>{e&&(await this.resumePausedMutations(),$(this,kt).onFocus())})),be(this,Mu,Im.subscribe(async e=>{e&&(await this.resumePausedMutations(),$(this,kt).onOnline())})))}unmount(){var e,t;Xh(this,Ol)._--,$(this,Ol)===0&&((e=$(this,Ru))==null||e.call(this),be(this,Ru,void 0),(t=$(this,Mu))==null||t.call(this),be(this,Mu,void 0))}isFetching(e){return $(this,kt).findAll({...e,fetchStatus:"fetching"}).length}isMutating(e){return $(this,El).findAll({...e,status:"pending"}).length}getQueryData(e){var n;const t=this.defaultQueryOptions({queryKey:e});return(n=$(this,kt).get(t.queryHash))==null?void 0:n.state.data}ensureQueryData(e){const t=this.defaultQueryOptions(e),n=$(this,kt).build(this,t),r=n.state.data;return r===void 0?this.fetchQuery(e):(e.revalidateIfStale&&n.isStaleByTime(Mt(t.staleTime,n))&&this.prefetchQuery(t),Promise.resolve(r))}getQueriesData(e){return $(this,kt).findAll(e).map(({queryKey:t,state:n})=>[t,n.data])}setQueryData(e,t,n){var u;const r=this.defaultQueryOptions({queryKey:e}),l=(u=$(this,kt).get(r.queryHash))==null?void 0:u.state.data,o=T$(t,l);if(o!==void 0)return $(this,kt).build(this,r).setData(o,{...n,manual:!0})}setQueriesData(e,t,n){return Mn.batch(()=>$(this,kt).findAll(e).map(({queryKey:r})=>[r,this.setQueryData(r,t,n)]))}getQueryState(e){var n;const t=this.defaultQueryOptions({queryKey:e});return(n=$(this,kt).get(t.queryHash))==null?void 0:n.state}removeQueries(e){const t=$(this,kt);Mn.batch(()=>{t.findAll(e).forEach(n=>{t.remove(n)})})}resetQueries(e,t){const n=$(this,kt);return Mn.batch(()=>{const r=n.findAll(e),l=new Set(r);return r.forEach(o=>{o.reset()}),this.refetchQueries({type:"active",predicate:o=>l.has(o)},t)})}cancelQueries(e,t={}){const n={revert:!0,...t},r=Mn.batch(()=>$(this,kt).findAll(e).map(l=>l.cancel(n)));return Promise.all(r).then(sr).catch(sr)}invalidateQueries(e,t={}){return Mn.batch(()=>($(this,kt).findAll(e).forEach(n=>{n.invalidate()}),(e==null?void 0:e.refetchType)==="none"?Promise.resolve():this.refetchQueries({...e,type:(e==null?void 0:e.refetchType)??(e==null?void 0:e.type)??"active"},t)))}refetchQueries(e,t={}){const n={...t,cancelRefetch:t.cancelRefetch??!0},r=Mn.batch(()=>$(this,kt).findAll(e).filter(l=>!l.isDisabled()&&!l.isStatic()).map(l=>{let o=l.fetch(void 0,n);const u=l.state.fetchStatus==="paused";return(!n.throwOnError||u)&&(o=o.catch(sr)),u?Promise.resolve():o}));return Promise.all(r).then(sr)}async query(e){const t=this.defaultQueryOptions(e);t.retry===void 0&&(t.retry=!1);const n=$(this,kt).build(this,t),r=n.isStaleByTime(Mt(t.staleTime,n))?await n.fetch(t):n.state.data,l=t.select;return l?l(r):r}fetchQuery(e){const t=this.defaultQueryOptions(e);t.retry===void 0&&(t.retry=!1);const n=$(this,kt).build(this,t);return n.isStaleByTime(Mt(t.staleTime,n))?n.fetch(t):Promise.resolve(n.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(sr).catch(sr)}infiniteQuery(e){return e._type="infinite",this.query(e)}fetchInfiniteQuery(e){return e._type="infinite",this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(sr).catch(sr)}ensureInfiniteQueryData(e){return e._type="infinite",this.ensureQueryData(e)}resumePausedMutations(){return Im.isOnline()?$(this,El).resumePausedMutations():Promise.resolve()}getQueryCache(){return $(this,kt)}getMutationCache(){return $(this,El)}getDefaultOptions(){return $(this,Al)}setDefaultOptions(e){be(this,Al,e)}setQueryDefaults(e,t){$(this,Nu).set(Of(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){const t=[...$(this,Nu).values()],n={};return t.forEach(r=>{Du(e,r.queryKey)&&Object.assign(n,r.defaultOptions)}),n}setMutationDefaults(e,t){$(this,Tu).set(Of(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){const t=[...$(this,Tu).values()],n={};return t.forEach(r=>{Du(e,r.mutationKey)&&Object.assign(n,r.defaultOptions)}),n}defaultQueryOptions(e){if(e._defaulted)return e;const t={...$(this,Al).queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return t.queryHash||(t.queryHash=eS(t.queryKey,t)),t.refetchOnReconnect===void 0&&(t.refetchOnReconnect=t.networkMode!=="always"),t.throwOnError===void 0&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode="offlineFirst"),t.queryFn===tS&&(t.enabled=!1),t}defaultMutationOptions(e){return e!=null&&e._defaulted?e:{...$(this,Al).mutations,...(e==null?void 0:e.mutationKey)&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){$(this,kt).clear(),$(this,El).clear()}},kt=new WeakMap,El=new WeakMap,Al=new WeakMap,Nu=new WeakMap,Tu=new WeakMap,Ol=new WeakMap,Ru=new WeakMap,Mu=new WeakMap,yR);const RR=b.createContext(!1),Z$=()=>b.useContext(RR);RR.Provider;function W$(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}const J$=b.createContext(W$()),e5=()=>b.useContext(J$),t5=(e,t,n)=>{const r=(n==null?void 0:n.state.status)==="error"&&typeof e.throwOnError=="function"?ER(e.throwOnError,[n.state.error,n]):e.throwOnError;(e.suspense||r)&&(t.isReset()||(e.retryOnMount=!1))},n5=e=>{b.useEffect(()=>{e.clearReset()},[e])},r5=({result:e,errorResetBoundary:t,throwOnError:n,query:r,suspense:l})=>e.isError&&!t.isReset()&&!e.isFetching&&r&&(l&&e.data===void 0||ER(n,[e.error,r])),i5=e=>{if(e.suspense){const n=l=>l==="static"?l:Math.max(l??1e3,1e3),r=e.staleTime;e.staleTime=typeof r=="function"?(...l)=>n(r(...l)):n(r),typeof e.gcTime=="number"&&(e.gcTime=Math.max(e.gcTime,1e3))}},a5=(e,t)=>(e==null?void 0:e.suspense)&&t.isPending,l5=(e,t,n)=>t.fetchOptimistic(e).catch(()=>{n.clearReset()});function o5(e,t,n){const r=Z$(),l=e5(),o=Jb(),u=o.defaultQueryOptions(e),c=o.getQueryCache().get(u.queryHash),h=e.subscribed!==!1;u._optimisticResults=r?"isRestoring":h?"optimistic":void 0,i5(u),t5(u,l,c),n5(l);const[m]=b.useState(()=>new t(o,u)),v=m.getOptimisticResult(u);b.useEffect(()=>{m.setOptions(u)},[u,m]);const g=!r&&h;if(b.useSyncExternalStore(b.useCallback(x=>{const S=g?m.subscribe(Mn.batchCalls(x)):sr;return m.updateResult(),S},[m,g]),()=>m.getCurrentResult(),()=>m.getCurrentResult()),a5(u,v))throw l5(u,m,l);if(r5({result:v,errorResetBoundary:l,throwOnError:u.throwOnError,query:c,suspense:u.suspense}))throw v.error;return u.notifyOnChangeProps?v:m.trackResult(v)}function Rv(e,t){return o5(e,V$)}var hx={exports:{}},tf={},mx={exports:{}},vx={};/** * @license React * scheduler.production.js * @@ -22,7 +22,7 @@ var d$=Object.defineProperty;var XA=e=>{throw TypeError(e)};var h$=(e,t,n)=>t in * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var uE;function n5(){return uE||(uE=1,(function(e){function t(G,ne){var ie=G.length;G.push(ne);e:for(;0>>1,U=G[ce];if(0>>1;cel(ve,ie))zl(Y,ve)?(G[ce]=Y,G[z]=ie,ce=z):(G[ce]=ve,G[ee]=ie,ce=ee);else if(zl(Y,ie))G[ce]=Y,G[z]=ie,ce=z;else break e}}return ne}function l(G,ne){var ie=G.sortIndex-ne.sortIndex;return ie!==0?ie:G.id-ne.id}if(e.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var o=performance;e.unstable_now=function(){return o.now()}}else{var u=Date,c=u.now();e.unstable_now=function(){return u.now()-c}}var h=[],m=[],v=1,p=null,x=3,S=!1,w=!1,j=!1,C=!1,A=typeof setTimeout=="function"?setTimeout:null,N=typeof clearTimeout=="function"?clearTimeout:null,O=typeof setImmediate<"u"?setImmediate:null;function T(G){for(var ne=n(m);ne!==null;){if(ne.callback===null)r(m);else if(ne.startTime<=G)r(m),ne.sortIndex=ne.expirationTime,t(h,ne);else break;ne=n(m)}}function R(G){if(j=!1,T(G),!w)if(n(h)!==null)w=!0,E||(E=!0,F());else{var ne=n(m);ne!==null&&de(R,ne.startTime-G)}}var E=!1,D=-1,k=5,I=-1;function P(){return C?!0:!(e.unstable_now()-IG&&P());){var ce=p.callback;if(typeof ce=="function"){p.callback=null,x=p.priorityLevel;var U=ce(p.expirationTime<=G);if(G=e.unstable_now(),typeof U=="function"){p.callback=U,T(G),ne=!0;break t}p===n(h)&&r(h),T(G)}else r(h);p=n(h)}if(p!==null)ne=!0;else{var Ee=n(m);Ee!==null&&de(R,Ee.startTime-G),ne=!1}}break e}finally{p=null,x=ie,S=!1}ne=void 0}}finally{ne?F():E=!1}}}var F;if(typeof O=="function")F=function(){O(B)};else if(typeof MessageChannel<"u"){var se=new MessageChannel,ue=se.port2;se.port1.onmessage=B,F=function(){ue.postMessage(null)}}else F=function(){A(B,0)};function de(G,ne){D=A(function(){G(e.unstable_now())},ne)}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(G){G.callback=null},e.unstable_forceFrameRate=function(G){0>G||125ce?(G.sortIndex=ie,t(m,G),n(h)===null&&G===n(m)&&(j?(N(D),D=-1):j=!0,de(R,ie-ce))):(G.sortIndex=U,t(h,G),w||S||(w=!0,E||(E=!0,F()))),G},e.unstable_shouldYield=P,e.unstable_wrapCallback=function(G){var ne=x;return function(){var ie=x;x=ne;try{return G.apply(this,arguments)}finally{x=ie}}}})(mx)),mx}var cE;function r5(){return cE||(cE=1,hx.exports=n5()),hx.exports}var vx={exports:{}},On={};/** + */var fA;function s5(){return fA||(fA=1,(function(e){function t(G,ne){var ie=G.length;G.push(ne);e:for(;0>>1,U=G[ce];if(0>>1;cel(ve,ie))zl(Y,ve)?(G[ce]=Y,G[z]=ie,ce=z):(G[ce]=ve,G[ee]=ie,ce=ee);else if(zl(Y,ie))G[ce]=Y,G[z]=ie,ce=z;else break e}}return ne}function l(G,ne){var ie=G.sortIndex-ne.sortIndex;return ie!==0?ie:G.id-ne.id}if(e.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var o=performance;e.unstable_now=function(){return o.now()}}else{var u=Date,c=u.now();e.unstable_now=function(){return u.now()-c}}var h=[],m=[],v=1,g=null,x=3,S=!1,w=!1,j=!1,C=!1,E=typeof setTimeout=="function"?setTimeout:null,N=typeof clearTimeout=="function"?clearTimeout:null,O=typeof setImmediate<"u"?setImmediate:null;function T(G){for(var ne=n(m);ne!==null;){if(ne.callback===null)r(m);else if(ne.startTime<=G)r(m),ne.sortIndex=ne.expirationTime,t(h,ne);else break;ne=n(m)}}function R(G){if(j=!1,T(G),!w)if(n(h)!==null)w=!0,A||(A=!0,F());else{var ne=n(m);ne!==null&&de(R,ne.startTime-G)}}var A=!1,D=-1,k=5,I=-1;function P(){return C?!0:!(e.unstable_now()-IG&&P());){var ce=g.callback;if(typeof ce=="function"){g.callback=null,x=g.priorityLevel;var U=ce(g.expirationTime<=G);if(G=e.unstable_now(),typeof U=="function"){g.callback=U,T(G),ne=!0;break t}g===n(h)&&r(h),T(G)}else r(h);g=n(h)}if(g!==null)ne=!0;else{var Ae=n(m);Ae!==null&&de(R,Ae.startTime-G),ne=!1}}break e}finally{g=null,x=ie,S=!1}ne=void 0}}finally{ne?F():A=!1}}}var F;if(typeof O=="function")F=function(){O(B)};else if(typeof MessageChannel<"u"){var se=new MessageChannel,ue=se.port2;se.port1.onmessage=B,F=function(){ue.postMessage(null)}}else F=function(){E(B,0)};function de(G,ne){D=E(function(){G(e.unstable_now())},ne)}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(G){G.callback=null},e.unstable_forceFrameRate=function(G){0>G||125ce?(G.sortIndex=ie,t(m,G),n(h)===null&&G===n(m)&&(j?(N(D),D=-1):j=!0,de(R,ie-ce))):(G.sortIndex=U,t(h,G),w||S||(w=!0,A||(A=!0,F()))),G},e.unstable_shouldYield=P,e.unstable_wrapCallback=function(G){var ne=x;return function(){var ie=x;x=ne;try{return G.apply(this,arguments)}finally{x=ie}}}})(vx)),vx}var dA;function u5(){return dA||(dA=1,mx.exports=s5()),mx.exports}var gx={exports:{}},On={};/** * @license React * react-dom.production.js * @@ -30,7 +30,7 @@ var d$=Object.defineProperty;var XA=e=>{throw TypeError(e)};var h$=(e,t,n)=>t in * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var fE;function i5(){if(fE)return On;fE=1;var e=Hu();function t(v){var p="https://react.dev/errors/"+v;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),vx.exports=i5(),vx.exports}/** + */var hA;function c5(){if(hA)return On;hA=1;var e=Hu();function t(v){var g="https://react.dev/errors/"+v;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),gx.exports=c5(),gx.exports}/** * @license React * react-dom-client.production.js * @@ -38,67 +38,79 @@ var d$=Object.defineProperty;var XA=e=>{throw TypeError(e)};var h$=(e,t,n)=>t in * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var hE;function a5(){if(hE)return tf;hE=1;var e=r5(),t=Hu(),n=OR();function r(i){var a="https://react.dev/errors/"+i;if(1Pe||(i.current=Ke[Pe],Ke[Pe]=null,Pe--)}function mt(i,a){Pe++,Ke[Pe]=i.current,i.current=a}var hi=Tt(null),lc=Tt(null),Ua=Tt(null),pd=Tt(null);function yd(i,a){switch(mt(Ua,a),mt(lc,i),mt(hi,null),a.nodeType){case 9:case 11:i=(i=a.documentElement)&&(i=i.namespaceURI)?iA(i):0;break;default:if(i=a.tagName,a=a.namespaceURI)a=iA(a),i=aA(a,i);else switch(i){case"svg":i=1;break;case"math":i=2;break;default:i=0}}Et(hi),mt(hi,i)}function as(){Et(hi),Et(lc),Et(Ua)}function Og(i){var a=i.memoizedState;a!==null&&(qs._currentValue=a.memoizedState,mt(pd,i)),a=hi.current;var s=aA(a,i.type);a!==s&&(mt(lc,i),mt(hi,s))}function xd(i){lc.current===i&&(Et(hi),Et(lc)),pd.current===i&&(Et(pd),qs._currentValue=ut)}var Ng,_w;function $a(i){if(Ng===void 0)try{throw Error()}catch(s){var a=s.stack.trim().match(/\n( *(at )?)/);Ng=a&&a[1]||"",_w=-1Pe||(i.current=Ke[Pe],Ke[Pe]=null,Pe--)}function mt(i,a){Pe++,Ke[Pe]=i.current,i.current=a}var hi=Tt(null),lc=Tt(null),Ua=Tt(null),yd=Tt(null);function xd(i,a){switch(mt(Ua,a),mt(lc,i),mt(hi,null),a.nodeType){case 9:case 11:i=(i=a.documentElement)&&(i=i.namespaceURI)?lE(i):0;break;default:if(i=a.tagName,a=a.namespaceURI)a=lE(a),i=oE(a,i);else switch(i){case"svg":i=1;break;case"math":i=2;break;default:i=0}}At(hi),mt(hi,i)}function as(){At(hi),At(lc),At(Ua)}function Ng(i){var a=i.memoizedState;a!==null&&(qs._currentValue=a.memoizedState,mt(yd,i)),a=hi.current;var s=oE(a,i.type);a!==s&&(mt(lc,i),mt(hi,s))}function bd(i){lc.current===i&&(At(hi),At(lc)),yd.current===i&&(At(yd),qs._currentValue=ct)}var Tg,Aw;function $a(i){if(Tg===void 0)try{throw Error()}catch(s){var a=s.stack.trim().match(/\n( *(at )?)/);Tg=a&&a[1]||"",Aw=-1)":-1g||L[d]!==K[g]){var Z=` -`+L[d].replace(" at new "," at ");return i.displayName&&Z.includes("")&&(Z=Z.replace("",i.displayName)),Z}while(1<=d&&0<=g);break}}}finally{Tg=!1,Error.prepareStackTrace=s}return(s=i?i.displayName||i.name:"")?$a(s):""}function gL(i,a){switch(i.tag){case 26:case 27:case 5:return $a(i.type);case 16:return $a("Lazy");case 13:return i.child!==a&&a!==null?$a("Suspense Fallback"):$a("Suspense");case 19:return $a("SuspenseList");case 0:case 15:return Rg(i.type,!1);case 11:return Rg(i.type.render,!1);case 1:return Rg(i.type,!0);case 31:return $a("Activity");case 30:return $a("ViewTransition");default:return""}}function Aw(i){try{var a="",s=null;do a+=gL(i,s),s=i,i=i.return;while(i);return a}catch(d){return` +`);for(p=d=0;dp||L[d]!==K[p]){var Z=` +`+L[d].replace(" at new "," at ");return i.displayName&&Z.includes("")&&(Z=Z.replace("",i.displayName)),Z}while(1<=d&&0<=p);break}}}finally{Rg=!1,Error.prepareStackTrace=s}return(s=i?i.displayName||i.name:"")?$a(s):""}function wL(i,a){switch(i.tag){case 26:case 27:case 5:return $a(i.type);case 16:return $a("Lazy");case 13:return i.child!==a&&a!==null?$a("Suspense Fallback"):$a("Suspense");case 19:return $a("SuspenseList");case 0:case 15:return Mg(i.type,!1);case 11:return Mg(i.type.render,!1);case 1:return Mg(i.type,!0);case 31:return $a("Activity");case 30:return $a("ViewTransition");default:return""}}function Ow(i){try{var a="",s=null;do a+=wL(i,s),s=i,i=i.return;while(i);return a}catch(d){return` Error generating stack: `+d.message+` -`+d.stack}}var Mg=Object.prototype.hasOwnProperty,Dg=e.unstable_scheduleCallback,Pg=e.unstable_cancelCallback,pL=e.unstable_shouldYield,yL=e.unstable_requestPaint,dr=e.unstable_now,xL=e.unstable_getCurrentPriorityLevel,Ew=e.unstable_ImmediatePriority,Ow=e.unstable_UserBlockingPriority,bd=e.unstable_NormalPriority,bL=e.unstable_LowPriority,Nw=e.unstable_IdlePriority,SL=e.log,wL=e.unstable_setDisableYieldValue,oc=null,hr=null;function Ba(i){if(typeof SL=="function"&&wL(i),hr&&typeof hr.setStrictMode=="function")try{hr.setStrictMode(oc,i)}catch{}}var mr=Math.clz32?Math.clz32:_L,jL=Math.log,CL=Math.LN2;function _L(i){return i>>>=0,i===0?32:31-(jL(i)/CL|0)|0}var Sd=256,wd=262144,jd=4194304;function Fl(i){var a=i&42;if(a!==0)return a;switch(i&-i){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 i&-i;case 262144:case 524288:case 1048576:case 2097152:return i&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return i&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return i}}function Cd(i,a,s){var d=i.pendingLanes;if(d===0)return 0;var g=0,y=i.suspendedLanes,_=i.pingedLanes;i=i.warmLanes;var M=d&134217727;return M!==0?(d=M&~y,d!==0?g=Fl(d):(_&=M,_!==0?g=Fl(_):s||(s=M&~i,s!==0&&(g=Fl(s))))):(M=d&~y,M!==0?g=Fl(M):_!==0?g=Fl(_):s||(s=d&~i,s!==0&&(g=Fl(s)))),g===0?0:a!==0&&a!==g&&(a&y)===0&&(y=g&-g,s=a&-a,y>=s||y===32&&(s&4194048)!==0)?a:g}function sc(i,a){return(i.pendingLanes&~(i.suspendedLanes&~i.pingedLanes)&a)===0}function Tw(i,a){(a&8)!==0&&(a|=a&32);var s=i.entangledLanes;if(s!==0)for(i=i.entanglements,s&=a;0s;s++)a.push(i);return a}function uc(i,a){i.pendingLanes|=a,a!==268435456&&(i.suspendedLanes=0,i.pingedLanes=0,i.warmLanes=0)}function EL(i,a,s,d,g,y){var _=i.pendingLanes;i.pendingLanes=s,i.suspendedLanes=0,i.pingedLanes=0,i.warmLanes=0,i.expiredLanes&=s,i.entangledLanes&=s,i.errorRecoveryDisabledLanes&=s,i.shellSuspendCounter=0;var M=i.entanglements,L=i.expirationTimes,K=i.hiddenUpdates;for(s=_&~s;0"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Gg=!1;if(Xi)try{var hc={};Object.defineProperty(hc,"passive",{get:function(){Gg=!0}}),window.addEventListener("test",hc,hc),window.removeEventListener("test",hc,hc)}catch{Gg=!1}var Ha=null,qg=null,Td=null;function ej(){if(Td)return Td;var i,a=qg,s=a.length,d,g="value"in Ha?Ha.value:Ha.textContent,y=g.length;for(i=0;i=gc),lj=" ",oj=!1;function sj(i,a){switch(i){case"keyup":return u4.indexOf(a.keyCode)!==-1;case"keydown":return a.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function uj(i){return i=i.detail,typeof i=="object"&&"data"in i?i.data:null}var ms=!1;function f4(i,a){switch(i){case"compositionend":return uj(a);case"keypress":return a.which!==32?null:(oj=!0,lj);case"textInput":return i=a.data,i===lj&&oj?null:i;default:return null}}function d4(i,a){if(ms)return i==="compositionend"||!Zg&&sj(i,a)?(i=ej(),Td=qg=Ha=null,ms=!1,i):null;switch(i){case"paste":return null;case"keypress":if(!(a.ctrlKey||a.altKey||a.metaKey)||a.ctrlKey&&a.altKey){if(a.char&&1"u")return null;try{return i.activeElement||i.body}catch{return i.body}}function pj(i){for(;i&&i.firstChild;)i=i.firstChild;return i}function yj(i,a){var s=pj(i);i=0;for(var d;s;){if(s.nodeType===3){if(d=i+s.textContent.length,i<=a&&d>=a)return{node:s,offset:a-i};i=d}e:{for(;s;){if(s.nextSibling){s=s.nextSibling;break e}s=s.parentNode}s=void 0}s=pj(s)}}function xj(i,a){return i&&a?i===a?!0:i&&i.nodeType===3?!1:a&&a.nodeType===3?xj(i,a.parentNode):"contains"in i?i.contains(a):i.compareDocumentPosition?!!(i.compareDocumentPosition(a)&16):!1:!1}function bj(i){i=i!=null&&i.ownerDocument!=null&&i.ownerDocument.defaultView!=null?i.ownerDocument.defaultView:window;for(var a=ep(i.document);a instanceof i.HTMLIFrameElement;){try{var s=typeof a.contentWindow.location.href=="string"}catch{s=!1}if(s)i=a.contentWindow;else break;a=ep(i.document)}return a}function tp(i){var a=i&&i.nodeName&&i.nodeName.toLowerCase();return a&&(a==="input"&&(i.type==="text"||i.type==="search"||i.type==="tel"||i.type==="url"||i.type==="password")||a==="textarea"||i.contentEditable==="true")}var b4=Xi&&"documentMode"in document&&11>=document.documentMode,vs=null,np=null,bc=null,rp=!1;function Sj(i,a,s){var d=s.window===s?s.document:s.nodeType===9?s:s.ownerDocument;rp||vs==null||vs!==ep(d)||(d=vs,"selectionStart"in d&&tp(d)?d={start:d.selectionStart,end:d.selectionEnd}:(d=(d.ownerDocument&&d.ownerDocument.defaultView||window).getSelection(),d={anchorNode:d.anchorNode,anchorOffset:d.anchorOffset,focusNode:d.focusNode,focusOffset:d.focusOffset}),bc&&xc(bc,d)||(bc=d,d=kh(np,"onSelect"),0>=_,g-=_,vi=1<<32-mr(a)+g|s<ze?(Yt=Me,Me=null):Yt=Me.sibling;var tt=V(q,Me,X[ze],re);if(tt===null){Me===null&&(Me=Yt);break}i&&Me&&tt.alternate===null&&a(q,Me),H=y(tt,H,ze),Ze===null?we=tt:Ze.sibling=tt,Ze=tt,Me=Yt}if(ze===X.length)return s(q,Me),Ve&&Ji(q,ze),we;if(Me===null){for(;zeze?(Yt=Me,Me=null):Yt=Me.sibling;var hl=V(q,Me,tt.value,re);if(hl===null){Me===null&&(Me=Yt);break}i&&Me&&hl.alternate===null&&a(q,Me),H=y(hl,H,ze),Ze===null?we=hl:Ze.sibling=hl,Ze=hl,Me=Yt}if(tt.done)return s(q,Me),Ve&&Ji(q,ze),we;if(Me===null){for(;!tt.done;ze++,tt=X.next())tt=ae(q,tt.value,re),tt!==null&&(H=y(tt,H,ze),Ze===null?we=tt:Ze.sibling=tt,Ze=tt);return Ve&&Ji(q,ze),we}for(Me=d(Me);!tt.done;ze++,tt=X.next())tt=Q(Me,q,ze,tt.value,re),tt!==null&&(i&&(Yt=tt.alternate,Yt!==null&&Me.delete(Yt.key===null?ze:Yt.key)),H=y(tt,H,ze),Ze===null?we=tt:Ze.sibling=tt,Ze=tt);return i&&Me.forEach(function(f$){return a(q,f$)}),Ve&&Ji(q,ze),we}function Fe(q,H,X,re){if(typeof X=="object"&&X!==null&&X.type===B&&X.key===null&&X.props.ref===void 0&&(X=X.props.children),typeof X=="object"&&X!==null){switch(X.$$typeof){case I:e:{for(var we=X.key;H!==null;){if(H.key===we){if(we=X.type,we===B){if(H.tag===7){s(q,H.sibling),re=g(H,X.props.children),Ya(re,X),re.return=q,q=re;break e}}else if(H.elementType===we||typeof we=="object"&&we!==null&&we.$$typeof===U&&no(we)===H.type){s(q,H.sibling),re=g(H,X.props),Ya(re,X),re.return=q,q=re;break e}s(q,H);break}else a(q,H);H=H.sibling}X.type===B?(re=Xl(X.props.children,q.mode,re,X.key),Ya(re,X),re.return=q,q=re):(re=$d(X.type,X.key,X.props,null,q.mode,re),Ya(re,X),re.return=q,q=re)}return _(q);case P:e:{for(we=X.key;H!==null;){if(H.key===we)if(H.tag===4&&H.stateNode.containerInfo===X.containerInfo&&H.stateNode.implementation===X.implementation){s(q,H.sibling),re=g(H,X.children||[]),re.return=q,q=re;break e}else{s(q,H);break}else a(q,H);H=H.sibling}re=cp(X,q.mode,re),re.return=q,q=re}return _(q);case U:return X=no(X),Fe(q,H,X,re)}if(ge(X))return pe(q,H,X,re);if(fe(X)){if(we=fe(X),typeof we!="function")throw Error(r(150));return X=we.call(X),Ae(q,H,X,re)}if(typeof X.then=="function")return Fe(q,H,Qd(X),re);if(X.$$typeof===de)return Fe(q,H,qd(q,X),re);Zd(q,X)}return typeof X=="string"&&X!==""||typeof X=="number"||typeof X=="bigint"?(X=""+X,H!==null&&H.tag===6?(s(q,H.sibling),re=g(H,X),re.return=q,q=re):(s(q,H),re=up(X,q.mode,re),re.return=q,q=re),_(q)):s(q,H)}return function(q,H,X,re){try{Ac=0;var we=Fe(q,H,X,re);return Cs=null,we}catch(Me){if(Me===js||Me===Yd)throw Me;var Ze=nr(29,Me,null,q.mode);return Ze.lanes=re,Ze.return=q,Ze}finally{}}}var io=Gj(!0),qj=Gj(!1),Xa=!1;function bp(i){i.updateQueue={baseState:i.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Sp(i,a){i=i.updateQueue,a.updateQueue===i&&(a.updateQueue={baseState:i.baseState,firstBaseUpdate:i.firstBaseUpdate,lastBaseUpdate:i.lastBaseUpdate,shared:i.shared,callbacks:null})}function Qa(i){return{lane:i,tag:0,payload:null,callback:null,next:null}}function Za(i,a,s){var d=i.updateQueue;if(d===null)return null;if(d=d.shared,(lt&2)!==0){var g=d.pending;return g===null?a.next=a:(a.next=g.next,g.next=a),d.pending=a,a=Ud(i),Nj(i,null,s),a}return Ld(i,d,a,s),Ud(i)}function Ec(i,a,s){if(a=a.updateQueue,a!==null&&(a=a.shared,(s&4194048)!==0)){var d=a.lanes;d&=i.pendingLanes,s|=d,a.lanes=s,Dw(i,s)}}function wp(i,a){var s=i.updateQueue,d=i.alternate;if(d!==null&&(d=d.updateQueue,s===d)){var g=null,y=null;if(s=s.firstBaseUpdate,s!==null){do{var _={lane:s.lane,tag:s.tag,payload:s.payload,callback:null,next:null};y===null?g=y=_:y=y.next=_,s=s.next}while(s!==null);y===null?g=y=a:y=y.next=a}else g=y=a;s={baseState:d.baseState,firstBaseUpdate:g,lastBaseUpdate:y,shared:d.shared,callbacks:d.callbacks},i.updateQueue=s;return}i=s.lastBaseUpdate,i===null?s.firstBaseUpdate=a:i.next=a,s.lastBaseUpdate=a}var jp=!1;function Oc(){if(jp){var i=ws;if(i!==null)throw i}}function Nc(i,a,s,d){jp=!1;var g=i.updateQueue;Xa=!1;var y=g.firstBaseUpdate,_=g.lastBaseUpdate,M=g.shared.pending;if(M!==null){g.shared.pending=null;var L=M,K=L.next;L.next=null,_===null?y=K:_.next=K,_=L;var Z=i.alternate;Z!==null&&(Z=Z.updateQueue,M=Z.lastBaseUpdate,M!==_&&(M===null?Z.firstBaseUpdate=K:M.next=K,Z.lastBaseUpdate=L))}if(y!==null){var ae=g.baseState;_=0,Z=K=L=null,M=y;do{var V=M.lane&-536870913,Q=V!==M.lane;if(Q?(Qe&V)===V:(d&V)===V){V!==0&&V===eo&&(jp=!0),Z!==null&&(Z=Z.next={lane:0,tag:M.tag,payload:M.payload,callback:null,next:null});e:{var pe=i,Ae=M;V=a;var Fe=s;switch(Ae.tag){case 1:if(pe=Ae.payload,typeof pe=="function"){ae=pe.call(Fe,ae,V);break e}ae=pe;break e;case 3:pe.flags=pe.flags&-65537|128;case 0:if(pe=Ae.payload,V=typeof pe=="function"?pe.call(Fe,ae,V):pe,V==null)break e;ae=D({},ae,V);break e;case 2:Xa=!0}}V=M.callback,V!==null&&(i.flags|=64,Q&&(i.flags|=8192),Q=g.callbacks,Q===null?g.callbacks=[V]:Q.push(V))}else Q={lane:V,tag:M.tag,payload:M.payload,callback:M.callback,next:null},Z===null?(K=Z=Q,L=ae):Z=Z.next=Q,_|=V;if(M=M.next,M===null){if(M=g.shared.pending,M===null)break;Q=M,M=Q.next,Q.next=null,g.lastBaseUpdate=Q,g.shared.pending=null}}while(!0);Z===null&&(L=ae),g.baseState=L,g.firstBaseUpdate=K,g.lastBaseUpdate=Z,y===null&&(g.shared.lanes=0),il|=_,i.lanes=_,i.memoizedState=ae}}function Kj(i,a){if(typeof i!="function")throw Error(r(191,i));i.call(a)}function Yj(i,a){var s=i.callbacks;if(s!==null)for(i.callbacks=null,i=0;iy?y:8;var _=oe.T,M={};M.types=_!==null?_.types:null,oe.T=M,Fp(i,!1,a,s);try{var L=g(),K=oe.S;if(K!==null&&K(M,L),L!==null&&typeof L=="object"&&typeof L.then=="function"){var Z=R4(L,d);Dc(i,a,Z,Sr(i))}else Dc(i,a,d,Sr(i))}catch(ae){Dc(i,a,{then:function(){},status:"rejected",reason:ae},Sr())}finally{J.p=y,_!==null&&M.types!==null&&(_.types=M.types),oe.T=_}}function z4(){}function Bp(i,a,s,d){if(i.tag!==5)throw Error(r(476));var g=AC(i).queue;_C(i,g,a,ut,s===null?z4:function(){return EC(i),s(d)})}function AC(i){var a=i.memoizedState;if(a!==null)return a;a={memoizedState:ut,baseState:ut,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:ra,lastRenderedState:ut},next:null};var s={};return a.next={memoizedState:s,baseState:s,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:ra,lastRenderedState:s},next:null},i.memoizedState=a,i=i.alternate,i!==null&&(i.memoizedState=a),a}function EC(i){var a=AC(i);a.next===null&&(a=i.alternate.memoizedState),Dc(i,a.next.queue,{},Sr())}function Hp(){return jn(qs)}function OC(){return Ht().memoizedState}function NC(){return Ht().memoizedState}function L4(i){for(var a=i.return;a!==null;){switch(a.tag){case 24:case 3:var s=Sr();i=Qa(s);var d=Za(a,i,s);d!==null&&(lr(d,a,s),Ec(d,a,s)),a={cache:gp()},i.payload=a;return}a=a.return}}function U4(i,a,s){var d=Sr();s={lane:d,revertLane:0,gesture:null,action:s,hasEagerState:!1,eagerState:null,next:null},oh(i)?RC(a,s):(s=op(i,a,s,d),s!==null&&(lr(s,i,d),MC(s,a,d)))}function TC(i,a,s){var d=Sr();Dc(i,a,s,d)}function Dc(i,a,s,d){var g={lane:d,revertLane:0,gesture:null,action:s,hasEagerState:!1,eagerState:null,next:null};if(oh(i))RC(a,g);else{var y=i.alternate;if(i.lanes===0&&(y===null||y.lanes===0)&&(y=a.lastRenderedReducer,y!==null))try{var _=a.lastRenderedState,M=y(_,s);if(g.hasEagerState=!0,g.eagerState=M,gr(M,_))return Ld(i,a,g,0),St===null&&zd(),!1}catch{}finally{}if(s=op(i,a,g,d),s!==null)return lr(s,i,d),MC(s,a,d),!0}return!1}function Fp(i,a,s,d){if(d={lane:2,revertLane:Dy(),gesture:null,action:d,hasEagerState:!1,eagerState:null,next:null},oh(i)){if(a)throw Error(r(479))}else a=op(i,s,d,2),a!==null&&lr(a,i,2)}function oh(i){var a=i.alternate;return i===He||a!==null&&a===He}function RC(i,a){_s=eh=!0;var s=i.pending;s===null?a.next=a:(a.next=s.next,s.next=a),i.pending=a}function MC(i,a,s){if((s&4194048)!==0){var d=a.lanes;d&=i.pendingLanes,s|=d,a.lanes=s,Dw(i,s)}}var sh={readContext:jn,use:rh,useCallback:zt,useContext:zt,useEffect:zt,useImperativeHandle:zt,useLayoutEffect:zt,useInsertionEffect:zt,useMemo:zt,useReducer:zt,useRef:zt,useState:zt,useDebugValue:zt,useDeferredValue:zt,useTransition:zt,useSyncExternalStore:zt,useId:zt,useHostTransitionStatus:zt,useFormState:zt,useActionState:zt,useOptimistic:zt,useMemoCache:zt,useCacheRefresh:zt,useEffectEvent:zt},DC={readContext:jn,use:rh,useCallback:function(i,a){return Gn().memoizedState=[i,a===void 0?null:a],i},useContext:jn,useEffect:gC,useImperativeHandle:function(i,a,s){s=s!=null?s.concat([i]):null,ah(4194308,4,bC.bind(null,a,i),s)},useLayoutEffect:function(i,a){return ah(4194308,4,i,a)},useInsertionEffect:function(i,a){ah(4,2,i,a)},useMemo:function(i,a){var s=Gn();a=a===void 0?null:a;var d=i();if(ao){Ba(!0);try{i()}finally{Ba(!1)}}return s.memoizedState=[d,a],d},useReducer:function(i,a,s){var d=Gn();if(s!==void 0){var g=s(a);if(ao){Ba(!0);try{s(a)}finally{Ba(!1)}}}else g=a;return d.memoizedState=d.baseState=g,i={pending:null,lanes:0,dispatch:null,lastRenderedReducer:i,lastRenderedState:g},d.queue=i,i=i.dispatch=U4.bind(null,He,i),[d.memoizedState,i]},useRef:function(i){var a=Gn();return i={current:i},a.memoizedState=i},useState:function(i){i=Ip(i);var a=i.queue,s=TC.bind(null,He,a);return a.dispatch=s,[i.memoizedState,s]},useDebugValue:Up,useDeferredValue:function(i,a){var s=Gn();return $p(s,i,a)},useTransition:function(){var i=Ip(!1);return i=_C.bind(null,He,i.queue,!0,!1),Gn().memoizedState=i,[!1,i]},useSyncExternalStore:function(i,a,s){var d=He,g=Gn();if(Ve){if(s===void 0)throw Error(r(407));s=s()}else{if(s=a(),St===null)throw Error(r(349));(Qe&127)!==0||eC(d,a,s)}g.memoizedState=s;var y={value:s,getSnapshot:a};return g.queue=y,gC(nC.bind(null,d,y,i),[i]),d.flags|=2048,Es(9,{destroy:void 0},tC.bind(null,d,y,s,a),null),s},useId:function(){var i=Gn(),a=St.identifierPrefix;if(Ve){var s=gi,d=vi;s=(d&~(1<<32-mr(d)-1)).toString(32)+s,a="_"+a+"R_"+s,s=th++,0<\/script>",y=y.removeChild(y.firstChild);break;case"select":y=typeof d.is=="string"?_.createElement("select",{is:d.is}):_.createElement("select"),d.multiple?y.multiple=!0:d.size&&(y.size=d.size);break;default:y=typeof d.is=="string"?_.createElement(g,{is:d.is}):_.createElement(g)}}y[wn]=a,y[tr]=d;e:for(_=a.child;_!==null;){if(_.tag===5||_.tag===6)y.appendChild(_.stateNode);else if(_.tag!==4&&_.tag!==27&&_.child!==null){_.child.return=_,_=_.child;continue}if(_===a)break e;for(;_.sibling===null;){if(_.return===null||_.return===a)break e;_=_.return}_.sibling.return=_.return,_=_.sibling}a.stateNode=y;e:switch(En(y,g,d),g){case"button":case"input":case"select":case"textarea":d=!!d.autoFocus;break e;case"img":d=!0;break e;default:d=!1}d&&aa(a)}}return At(a),a.subtreeFlags&=-33554433,ny(a,a.type,i===null?null:i.memoizedProps,a.pendingProps,s),null;case 6:if(i&&a.stateNode!=null)i.memoizedProps!==d&&aa(a);else{if(typeof d!="string"&&a.stateNode===null)throw Error(r(166));if(i=Ua.current,Ss(a)){if(i=a.stateNode,s=a.memoizedProps,d=null,g=cn,g!==null)switch(g.tag){case 27:case 5:d=g.memoizedProps}i[wn]=a,i=!!(i.nodeValue===s||d!==null&&d.suppressHydrationWarning===!0||nA(i.nodeValue,s)),i||qa(a,!0)}else i=qc(i).createTextNode(d),i[wn]=a,a.stateNode=i}return At(a),null;case 31:if(s=a.memoizedState,i===null||i.memoizedState!==null){if(d=Ss(a),s!==null){if(i===null){if(!d)throw Error(r(318));if(i=a.memoizedState,i=i!==null?i.dehydrated:null,!i)throw Error(r(557));i[wn]=a}else Ql(),(a.flags&128)===0&&(a.memoizedState=null),a.flags|=4;At(a),i=!1}else s=hp(),i!==null&&i.memoizedState!==null&&(i.memoizedState.hydrationErrors=s),i=!0;if(!i)return a.flags&256?(pr(a),a):(pr(a),null);if((a.flags&128)!==0)throw Error(r(558))}return At(a),null;case 13:if(d=a.memoizedState,i===null||i.memoizedState!==null&&i.memoizedState.dehydrated!==null){if(g=Ss(a),d!==null&&d.dehydrated!==null){if(i===null){if(!g)throw Error(r(318));if(g=a.memoizedState,g=g!==null?g.dehydrated:null,!g)throw Error(r(317));g[wn]=a}else Ql(),(a.flags&128)===0&&(a.memoizedState=null),a.flags|=4;At(a),g=!1}else g=hp(),i!==null&&i.memoizedState!==null&&(i.memoizedState.hydrationErrors=g),g=!0;if(!g)return a.flags&256?(pr(a),a):(pr(a),null)}return pr(a),(a.flags&128)!==0?(a.lanes=s,a):(s=d!==null,i=i!==null&&i.memoizedState!==null,s&&(d=a.child,g=null,d.alternate!==null&&d.alternate.memoizedState!==null&&d.alternate.memoizedState.cachePool!==null&&(g=d.alternate.memoizedState.cachePool.pool),y=null,d.memoizedState!==null&&d.memoizedState.cachePool!==null&&(y=d.memoizedState.cachePool.pool),y!==g&&(d.flags|=2048)),s!==i&&s&&(a.child.flags|=8192),mh(a,a.updateQueue),At(a),null);case 4:return as(),i===null&&zy(a.stateNode.containerInfo),a.flags|=67108864,At(a),null;case 10:return ta(a.type),At(a),null;case 19:if(Ep(a),d=a.memoizedState,d===null)return At(a),null;if(g=(a.flags&128)!==0,y=d.rendering,y===null)if(g)kc(d,!1);else{if(Lt!==0||i!==null&&(i.flags&128)!==0)for(i=a.child;i!==null;){if(y=Jd(i),y!==null){for(a.flags|=128,kc(d,!1),i=y.updateQueue,a.updateQueue=i,mh(a,i),a.subtreeFlags=0,i=s,s=a.child;s!==null;)Tj(s,i),s=s.sibling;return Tc(a,_n.current&1|2),Ve&&Ji(a,d.treeForkCount),a.child}i=i.sibling}d.tail!==null&&dr()>Ah&&(a.flags|=128,g=!0,kc(d,!1),a.lanes=4194304)}else{if(!g)if(i=Jd(y),i!==null){if(a.flags|=128,g=!0,i=i.updateQueue,a.updateQueue=i,mh(a,i),kc(d,!0),d.tail===null&&d.tailMode!=="collapsed"&&d.tailMode!=="visible"&&!y.alternate&&!Ve)return At(a),null}else 2*dr()-d.renderingStartTime>Ah&&s!==536870912&&(a.flags|=128,g=!0,kc(d,!1),a.lanes=4194304);d.isBackwards?(y.sibling=a.child,a.child=y):(i=d.last,i!==null?i.sibling=y:a.child=y,d.last=y)}if(d.tail!==null){i=d.tail;e:{for(s=i;s!==null;){if(s.alternate!==null){s=!1;break e}s=s.sibling}s=!0}return d.rendering=i,d.tail=i.sibling,d.renderingStartTime=dr(),i.sibling=null,y=_n.current,y=g?y&1|2:y&1,d.tailMode==="visible"||d.tailMode==="collapsed"||!s||Ve?Tc(a,y):(s=y,mt(Cn,a),mt(_n,s),kn===null&&(kn=a)),Ve&&Ji(a,d.treeForkCount),i}return At(a),null;case 22:case 23:return pr(a),_p(),d=a.memoizedState!==null,i!==null?i.memoizedState!==null!==d&&(a.flags|=8192):d&&(a.flags|=8192),d?(s&536870912)!==0&&(a.flags&128)===0&&(At(a),a.subtreeFlags&6&&(a.flags|=8192)):At(a),s=a.updateQueue,s!==null&&mh(a,s.retryQueue),s=null,i!==null&&i.memoizedState!==null&&i.memoizedState.cachePool!==null&&(s=i.memoizedState.cachePool.pool),d=null,a.memoizedState!==null&&a.memoizedState.cachePool!==null&&(d=a.memoizedState.cachePool.pool),d!==s&&(a.flags|=2048),i!==null&&Et(to),null;case 24:return s=null,i!==null&&(s=i.memoizedState.cache),a.memoizedState.cache!==s&&(a.flags|=2048),ta(Gt),At(a),null;case 25:return null;case 30:return a.flags|=33554432,At(a),null}throw Error(r(156,a.tag))}function q4(i,a){switch(fp(a),a.tag){case 1:return i=a.flags,i&65536?(a.flags=i&-65537|128,a):null;case 3:return ta(Gt),as(),i=a.flags,(i&65536)!==0&&(i&128)===0?(a.flags=i&-65537|128,a):null;case 26:case 27:case 5:return xd(a),null;case 31:if(a.memoizedState!==null){if(pr(a),a.alternate===null)throw Error(r(340));Ql()}return i=a.flags,i&65536?(a.flags=i&-65537|128,a):null;case 13:if(pr(a),i=a.memoizedState,i!==null&&i.dehydrated!==null){if(a.alternate===null)throw Error(r(340));Ql()}return i=a.flags,i&65536?(a.flags=i&-65537|128,a):null;case 19:return Ep(a),i=a.flags,i&65536?(a.flags=i&-65537|128,i=a.memoizedState,i!==null&&(i.rendering=null,i.tail=null),a.flags|=4,a):null;case 4:return as(),null;case 10:return ta(a.type),null;case 22:case 23:return pr(a),_p(),i!==null&&Et(to),i=a.flags,i&65536?(a.flags=i&-65537|128,a):null;case 24:return ta(Gt),null;case 25:return null;default:return null}}function i_(i,a){switch(fp(a),a.tag){case 3:ta(Gt),as();break;case 26:case 27:case 5:xd(a);break;case 4:as();break;case 31:a.memoizedState!==null&&pr(a);break;case 13:pr(a);break;case 19:Ep(a);break;case 10:ta(a.type);break;case 22:case 23:pr(a),_p(),i!==null&&Et(to);break;case 24:ta(Gt)}}function Ic(i,a){try{var s=a.updateQueue,d=s!==null?s.lastEffect:null;if(d!==null){var g=d.next;s=g;do{if((s.tag&i)===i){d=void 0;var y=s.create,_=s.inst;d=y(),_.destroy=d}s=s.next}while(s!==g)}}catch(M){gt(a,a.return,M)}}function tl(i,a,s){try{var d=a.updateQueue,g=d!==null?d.lastEffect:null;if(g!==null){var y=g.next;d=y;do{if((d.tag&i)===i){var _=d.inst,M=_.destroy;if(M!==void 0){_.destroy=void 0,g=a;var L=s,K=M;try{K()}catch(Z){gt(g,L,Z)}}}d=d.next}while(d!==y)}}catch(Z){gt(a,a.return,Z)}}function a_(i){var a=i.updateQueue;if(a!==null){var s=i.stateNode;try{Yj(a,s)}catch(d){gt(i,i.return,d)}}}function l_(i,a,s){s.props=lo(i.type,i.memoizedProps),s.state=i.memoizedState;try{s.componentWillUnmount()}catch(d){gt(i,a,d)}}function pi(i,a){try{var s=i.ref;if(s!==null){switch(i.tag){case 26:case 27:case 5:var d=i.stateNode;break;case 30:var g=i.stateNode,y=Qi(i.memoizedProps,g);(g.ref===null||g.ref.name!==y)&&(g.ref=hA(y)),d=g.ref;break;case 7:if(i.stateNode===null){var _=new wr(i);p(i.child,!1,IU,_,void 0,void 0),i.stateNode=_}d=i.stateNode;break;default:d=i.stateNode}typeof s=="function"?i.refCleanup=s(d):s.current=d}}catch(M){gt(i,a,M)}}function An(i,a){var s=i.ref,d=i.refCleanup;if(s!==null)if(typeof d=="function")try{d()}catch(g){gt(i,a,g)}finally{i.refCleanup=null,i=i.alternate,i!=null&&(i.refCleanup=null)}else if(typeof s=="function")try{s(null)}catch(g){gt(i,a,g)}else s.current=null}function vh(i,a){if((i.tag===5||i.tag===27||i.tag===6)&&i.alternate===null&&a!==null)for(var s=0;s title"))),En(d,a,s),d[wn]=i,un(d),a=d;break e;case"link":if(y=TA("link","href",g).get(a+(s.href||""))){for(_=0;_Fe&&(_=Fe,Fe=Ae,Ae=_);var q=yj(M,Ae),H=yj(M,Fe);if(q&&H&&(Q.rangeCount!==1||Q.anchorNode!==q.node||Q.anchorOffset!==q.offset||Q.focusNode!==H.node||Q.focusOffset!==H.offset)){var X=ae.createRange();X.setStart(q.node,q.offset),Q.removeAllRanges(),Ae>Fe?(Q.addRange(X),Q.extend(H.node,H.offset)):(X.setEnd(H.node,H.offset),Q.addRange(X))}}}}for(ae=[],Q=M;Q=Q.parentNode;)Q.nodeType===1&&ae.push({element:Q,left:Q.scrollLeft,top:Q.scrollTop});for(typeof M.focus=="function"&&M.focus(),M=0;Ms?32:s,oe.T=null,s=jy,jy=null;var y=ii,_=ji;if(Pt=0,co=ii=null,ji=0,(lt&6)!==0)throw Error(r(331));var M=lt;if(lt|=4,N_(y.current),A_(y,y.current,_,s),lt=M,Fc(0,!1),hr&&typeof hr.onPostCommitFiberRoot=="function")try{hr.onPostCommitFiberRoot(oc,y)}catch{}return!0}finally{J.p=g,oe.T=d,V_(i,a)}}function G_(i,a,s){a=Dr(s,a),a=qp(i.stateNode,a,2),i=Za(i,a,2),i!==null&&(uc(i,2),Ci(i))}function gt(i,a,s){if(i.tag===3)G_(i,i,s);else for(;a!==null;){if(a.tag===3){G_(a,i,s);break}else if(a.tag===1){var d=a.stateNode;if(typeof a.type.getDerivedStateFromError=="function"||typeof d.componentDidCatch=="function"&&(al===null||!al.has(d))){i=Dr(s,i),s=BC(2),d=Za(a,s,2),d!==null&&(HC(s,d,a,i),uc(d,2),Ci(d));break}}a=a.return}}function Ty(i,a,s){var d=i.pingCache;if(d===null){d=i.pingCache=new Q4;var g=new Set;d.set(a,g)}else g=d.get(a),g===void 0&&(g=new Set,d.set(a,g));g.has(s)||(by=!0,g.add(s),i=iU.bind(null,i,a,s),a.then(i,i))}function iU(i,a,s){var d=i.pingCache;d!==null&&d.delete(a),i.pingedLanes|=i.suspendedLanes&s,i.warmLanes&=~s,St===i&&(Qe&s)===s&&((Lt===4||Lt===3&&(Qe&62914560)===Qe&&300>dr()-_h)&&(lt&2)===0?Ls(i,0):Ch|=s,Ds===Qe&&(Ds=0)),Ci(i)}function q_(i,a){a===0&&(a=Rw()),i=Yl(i,a),i!==null&&(uc(i,a),Ci(i))}function aU(i){var a=i.memoizedState,s=0;a!==null&&(s=a.retryLane),q_(i,s)}function lU(i,a){var s=0;switch(i.tag){case 31:case 13:var d=i.stateNode,g=i.memoizedState;g!==null&&(s=g.retryLane);break;case 19:d=i.stateNode;break;case 22:d=i.stateNode._retryCache;break;default:throw Error(r(314))}d!==null&&d.delete(a),q_(i,s)}function oU(i,a){return Dg(i,a)}var $s=null,Bs=null,Ry=!1,Dh=!1,My=!1,ol=0;function Ci(i){i!==Bs&&i.next===null&&(Bs===null?$s=Bs=i:Bs=Bs.next=i),Dh=!0,Ry||(Ry=!0,uU())}function Fc(i,a){if(!My&&Dh){My=!0;do for(var s=!1,d=$s;d!==null;){if(i!==0){var g=d.pendingLanes;if(g===0)var y=0;else{var _=d.suspendedLanes,M=d.pingedLanes;y=(1<<31-mr(42|i)+1)-1,y&=g&~(_&~M),y=y&201326741?y&201326741|1:y?y|2:0}y!==0&&(s=!0,Q_(d,y))}else y=Qe,y=Cd(d,d===St?y:0,d.cancelPendingCommit!==null||d.timeoutHandle!==-1),(y&3)===0||sc(d,y)||(s=!0,Q_(d,y));d=d.next}while(s);My=!1}}function sU(){K_()}function K_(){Dh=Ry=!1;var i=0;ol!==0&&bU()&&(i=ol);for(var a=dr(),s=null,d=$s;d!==null;){var g=d.next,y=Y_(d,a);y===0?(d.next=null,s===null?$s=g:s.next=g,g===null&&(Bs=s)):(s=d,(i!==0||(y&3)!==0)&&(Dh=!0)),d=g}Pt!==0&&Pt!==5||Fc(i),ol!==0&&(ol=0)}function Y_(i,a){for(var s=i.suspendedLanes,d=i.pingedLanes,g=i.expirationTimes,y=i.pendingLanes&-62914561;0M)break;var Z=L.transferSize,ae=L.initiatorType;Z&&rA(ae)&&(L=L.responseEnd,_+=Z*(LLh){Ae.length=pe;break}X=new Promise(AU.bind(X)),Ae.push(X)}}}if(0"u"?null:document;function AA(i,a,s){var d=Fs;if(d&&typeof a=="string"&&a){var g=Rr(a);g='link[rel="'+i+'"][href="'+g+'"]',typeof s=="string"&&(g+='[crossorigin="'+s+'"]'),_A.has(g)||(_A.add(g),i={rel:i,crossOrigin:s,href:a},d.querySelector(g)===null&&(a=d.createElement("link"),En(a,"link",i),un(a),d.head.appendChild(a)))}}function GU(i){oa.D(i),AA("dns-prefetch",i,null)}function qU(i,a){oa.C(i,a),AA("preconnect",i,a)}function KU(i,a,s){oa.L(i,a,s);var d=Fs;if(d&&i&&a){var g='link[rel="preload"][as="'+Rr(a)+'"]';a==="image"&&s&&s.imageSrcSet?(g+='[imagesrcset="'+Rr(s.imageSrcSet)+'"]',typeof s.imageSizes=="string"&&(g+='[imagesizes="'+Rr(s.imageSizes)+'"]')):g+='[href="'+Rr(i)+'"]';var y=g;switch(a){case"style":y=Vs(i);break;case"script":y=Gs(i)}if(!(Ur.has(y)||(i=D({rel:"preload",href:a==="image"&&s&&s.imageSrcSet?void 0:i,as:a},s),Ur.set(y,i),d.querySelector(g)!==null||a==="style"&&d.querySelector(Yc(y))||a==="script"&&d.querySelector(Xc(y))))){var _=d.createElement("link");En(_,"link",i),a==="style"&&(_[_d]=!0,_.onload=_.onerror=function(){Uw(_)}),un(_),d.head.appendChild(_)}}}function YU(i,a){oa.m(i,a);var s=Fs;if(s&&i){var d=a&&typeof a.as=="string"?a.as:"script",g='link[rel="modulepreload"][as="'+Rr(d)+'"][href="'+Rr(i)+'"]',y=g;switch(d){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":y=Gs(i)}if(!Ur.has(y)&&(i=D({rel:"modulepreload",href:i},a),Ur.set(y,i),s.querySelector(g)===null)){switch(d){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(s.querySelector(Xc(y)))return}d=s.createElement("link"),En(d,"link",i),un(d),s.head.appendChild(d)}}}function XU(i,a,s){oa.S(i,a,s);var d=Fs;if(d&&i){var g=ss(d).hoistableStyles,y=Vs(i);a=a||"default";var _=g.get(y);if(!_){var M={loading:0,preload:null};if(_=d.querySelector(Yc(y)))M.loading=5;else{i=D({rel:"stylesheet",href:i,"data-precedence":a},s),(s=Ur.get(y))&&Jy(i,s);var L=_=d.createElement("link");un(L),En(L,"link",i),L._p=new Promise(function(K,Z){L.onload=K,L.onerror=Z}),L.addEventListener("load",function(){M.loading|=1}),L.addEventListener("error",function(){M.loading|=2}),M.loading|=4,Ih(_,a,d)}_={type:"stylesheet",instance:_,count:1,state:M},g.set(y,_)}}}function QU(i,a){oa.X(i,a);var s=Fs;if(s&&i){var d=ss(s).hoistableScripts,g=Gs(i),y=d.get(g);y||(y=s.querySelector(Xc(g)),y||(i=D({src:i,async:!0},a),(a=Ur.get(g))&&ex(i,a),y=s.createElement("script"),un(y),En(y,"link",i),s.head.appendChild(y)),y={type:"script",instance:y,count:1,state:null},d.set(g,y))}}function ZU(i,a){oa.M(i,a);var s=Fs;if(s&&i){var d=ss(s).hoistableScripts,g=Gs(i),y=d.get(g);y||(y=s.querySelector(Xc(g)),y||(i=D({src:i,async:!0,type:"module"},a),(a=Ur.get(g))&&ex(i,a),y=s.createElement("script"),un(y),En(y,"link",i),s.head.appendChild(y)),y={type:"script",instance:y,count:1,state:null},d.set(g,y))}}function EA(i,a,s,d){var g=(g=Ua.current)?Kc(g):null;if(!g)throw Error(r(446));switch(i){case"meta":case"title":return null;case"style":return typeof s.precedence=="string"&&typeof s.href=="string"?(s=Vs(s.href),a=ss(g).hoistableStyles,d=a.get(s),d||(d={type:"style",instance:null,count:0,state:null},a.set(s,d)),d):{type:"void",instance:null,count:0,state:null};case"link":if(s.rel==="stylesheet"&&typeof s.href=="string"&&typeof s.precedence=="string"){i=Vs(s.href);var y=ss(g).hoistableStyles,_=y.get(i);if(_||(g=g.ownerDocument||g,_={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},y.set(i,_),(y=g.querySelector(Yc(i)))?y._p||(_.instance=y,_.state.loading=5):(y=Ur.get(i),y||(y={rel:"preload",as:"style",href:s.href,crossOrigin:s.crossOrigin,integrity:s.integrity,media:s.media,hrefLang:s.hrefLang,referrerPolicy:s.referrerPolicy},Ur.set(i,y)),WU(g,i,y,_.state))),a&&d===null)throw Error(r(528,""));return _}if(a&&d!==null)throw Error(r(529,""));return null;case"script":return a=s.async,s=s.src,typeof s=="string"&&a&&typeof a!="function"&&typeof a!="symbol"?(s=Gs(s),a=ss(g).hoistableScripts,d=a.get(s),d||(d={type:"script",instance:null,count:0,state:null},a.set(s,d)),d):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,i))}}function Vs(i){return'href="'+Rr(i)+'"'}function Yc(i){return'link[rel="stylesheet"]['+i+"]"}function OA(i){return D({},i,{"data-precedence":i.precedence,precedence:null})}function WU(i,a,s,d){if(a=i.querySelector('link[rel="preload"][as="style"]['+a+"]")){if(a[_d]!==!0){d.loading=1;return}}else a=i.createElement("link"),a[_d]=!0,a.onload=a.onerror=Uw.bind(null,a),En(a,"link",s),un(a),i.head.appendChild(a);d.preload=a,a.addEventListener("load",function(){return d.loading|=1}),a.addEventListener("error",function(){return d.loading|=2})}function Gs(i){return'[src="'+Rr(i)+'"]'}function Xc(i){return"script[async]"+i}function NA(i,a,s){if(a.count++,a.instance===null)switch(a.type){case"style":var d=i.querySelector('style[data-href~="'+Rr(s.href)+'"]');if(d)return a.instance=d,un(d),d;var g=D({},s,{"data-href":s.href,"data-precedence":s.precedence,href:null,precedence:null});return d=(i.ownerDocument||i).createElement("style"),un(d),En(d,"style",g),Ih(d,s.precedence,i),a.instance=d;case"stylesheet":g=Vs(s.href);var y=i.querySelector(Yc(g));if(y)return a.state.loading|=4,a.instance=y,un(y),y;d=OA(s),(g=Ur.get(g))&&Jy(d,g),y=(i.ownerDocument||i).createElement("link"),un(y);var _=y;return _._p=new Promise(function(M,L){_.onload=M,_.onerror=L}),En(y,"link",d),a.state.loading|=4,Ih(y,s.precedence,i),a.instance=y;case"script":return y=Gs(s.src),(g=i.querySelector(Xc(y)))?(a.instance=g,un(g),g):(d=s,(g=Ur.get(y))&&(d=D({},s),ex(d,g)),i=i.ownerDocument||i,g=i.createElement("script"),un(g),En(g,"link",d),i.head.appendChild(g),a.instance=g);case"void":return null;default:throw Error(r(443,a.type))}else a.type==="stylesheet"&&(a.state.loading&4)===0&&(d=a.instance,a.state.loading|=4,Ih(d,s.precedence,i));return a.instance}function Ih(i,a,s){for(var d=s.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),g=d.length?d[d.length-1]:null,y=g,_=0;_ title"):null)}function JU(i,a,s){if(s===1||a.itemProp!=null)return!1;switch(i){case"meta":case"title":return!0;case"style":if(typeof a.precedence!="string"||typeof a.href!="string"||a.href==="")break;return!0;case"link":if(typeof a.rel!="string"||typeof a.href!="string"||a.href===""||a.onLoad||a.onError)break;switch(a.rel){case"stylesheet":return i=a.disabled,typeof a.precedence=="string"&&i==null;default:return!0}case"script":if(a.async&&typeof a.async!="function"&&typeof a.async!="symbol"&&!a.onLoad&&!a.onError&&a.src&&typeof a.src=="string")return!0}return!1}function RA(i,a){return i==="img"&&a.src!=null&&a.src!==""&&a.onLoad==null&&a.loading!=="lazy"}function MA(i){return!(i.type==="stylesheet"&&(i.state.loading&3)===0)}function DA(i){return(i.width||100)*(i.height||100)*(typeof devicePixelRatio=="number"?devicePixelRatio:1)*.25}function PA(i,a){typeof a.decode=="function"&&(i.imgCount++,a.complete||(i.imgBytes+=DA(a),i.suspenseyImages.push(a)),i=n$.bind(i),a.decode().then(i,i))}function e$(i,a,s,d){if(s.type==="stylesheet"&&(typeof d.media!="string"||matchMedia(d.media).matches!==!1)&&(s.state.loading&4)===0){if(s.instance===null){var g=Vs(d.href),y=a.querySelector(Yc(g));if(y){a=y._p,a!==null&&typeof a=="object"&&typeof a.then=="function"&&(i.count++,i=Qc.bind(i),a.then(i,i)),s.state.loading|=4,s.instance=y,un(y);return}y=a.ownerDocument||a,d=OA(d),(g=Ur.get(g))&&Jy(d,g),y=y.createElement("link"),un(y);var _=y;_._p=new Promise(function(M,L){_.onload=M,_.onerror=L}),En(y,"link",d),s.instance=y}i.stylesheets===null&&(i.stylesheets=new Map),i.stylesheets.set(s,a),(a=s.state.preload)&&(s.state.loading&3)===0&&(i.count++,s=Qc.bind(i),a.addEventListener("load",s),a.addEventListener("error",s))}}var Lh=0;function t$(i,a){return i.stylesheets&&i.count===0&&$h(i,i.stylesheets),0Lh?50:800)+a);return i.unsuspend=s,function(){i.unsuspend=null,clearTimeout(d),clearTimeout(g)}}:null}function kA(i){if(i.count===0&&(i.imgCount===0||!i.waitingForImages)){if(i.stylesheets)$h(i,i.stylesheets);else if(i.unsuspend){var a=i.unsuspend;i.unsuspend=null,a()}}}function Qc(){this.count--,kA(this)}function n$(){this.imgCount--,kA(this)}var Uh=null;function $h(i,a){i.stylesheets=null,i.unsuspend!==null&&(i.count++,Uh=new Map,a.forEach(r$,i),Uh=null,Qc.call(i))}function r$(i,a){if(!(a.state.loading&4)){var s=Uh.get(i);if(s)var d=s.get(null);else{s=new Map,Uh.set(i,s);for(var g=i.querySelectorAll("link[data-precedence],style[data-precedence]"),y=0;y"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),dx.exports=a5(),dx.exports}var o5=l5();function NR(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var l=e.length;for(t=0;ttypeof e=="boolean"?`${e}`:e===0?"0":e,gE=Ct,aS=(e,t)=>n=>{var r;if((t==null?void 0:t.variants)==null)return gE(e,n==null?void 0:n.class,n==null?void 0:n.className);const{variants:l,defaultVariants:o}=t,u=Object.keys(l).map(m=>{const v=n==null?void 0:n[m],p=o==null?void 0:o[m];if(v===null)return null;const x=vE(v)||vE(p);return l[m][x]}),c=n&&Object.entries(n).reduce((m,v)=>{let[p,x]=v;return x===void 0||(m[p]=x),m},{}),h=t==null||(r=t.compoundVariants)===null||r===void 0?void 0:r.reduce((m,v)=>{let{class:p,className:x,...S}=v;return Object.entries(S).every(w=>{let[j,C]=w;return Array.isArray(C)?C.includes({...o,...c}[j]):{...o,...c}[j]===C})?[...m,p,x]:m},[]);return gE(e,u,h,n==null?void 0:n.class,n==null?void 0:n.className)},s5=(e,t)=>{const n=new Array(e.length+t.length);for(let r=0;r({classGroupId:e,validator:t}),TR=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),Im="-",pE=[],c5="arbitrary..",f5=e=>{const t=h5(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:u=>{if(u.startsWith("[")&&u.endsWith("]"))return d5(u);const c=u.split(Im),h=c[0]===""&&c.length>1?1:0;return RR(c,h,t)},getConflictingClassGroupIds:(u,c)=>{if(c){const h=r[u],m=n[u];return h?m?s5(m,h):h:m||pE}return n[u]||pE}}},RR=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;const l=e[t],o=n.nextPart.get(l);if(o){const m=RR(e,t+1,o);if(m)return m}const u=n.validators;if(u===null)return;const c=t===0?e.join(Im):e.slice(t).join(Im),h=u.length;for(let m=0;me.slice(1,-1).indexOf(":")===-1?void 0:(()=>{const t=e.slice(1,-1),n=t.indexOf(":"),r=t.slice(0,n);return r?c5+r:void 0})(),h5=e=>{const{theme:t,classGroups:n}=e;return m5(n,t)},m5=(e,t)=>{const n=TR();for(const r in e){const l=e[r];lS(l,n,r,t)}return n},lS=(e,t,n,r)=>{const l=e.length;for(let o=0;o{if(typeof e=="string"){g5(e,t,n);return}if(typeof e=="function"){p5(e,t,n,r);return}y5(e,t,n,r)},g5=(e,t,n)=>{const r=e===""?t:MR(t,e);r.classGroupId=n},p5=(e,t,n,r)=>{if(x5(e)){lS(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(u5(n,e))},y5=(e,t,n,r)=>{const l=Object.entries(e),o=l.length;for(let u=0;u{let n=e;const r=t.split(Im),l=r.length;for(let o=0;o"isThemeGetter"in e&&e.isThemeGetter===!0,b5=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null);const l=(o,u)=>{n[o]=u,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(o){let u=n[o];if(u!==void 0)return u;if((u=r[o])!==void 0)return l(o,u),u},set(o,u){o in n?n[o]=u:l(o,u)}}},I0="!",yE=":",S5=[],xE=(e,t,n,r,l)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:l}),w5=e=>{const{prefix:t,experimentalParseClassName:n}=e;let r=l=>{const o=[];let u=0,c=0,h=0,m;const v=l.length;for(let j=0;jh?m-h:void 0;return xE(o,S,x,w)};if(t){const l=t+yE,o=r;r=u=>u.startsWith(l)?o(u.slice(l.length)):xE(S5,!1,u,void 0,!0)}if(n){const l=r;r=o=>n({className:o,parseClassName:l})}return r},j5=e=>{const t=new Map;return e.orderSensitiveModifiers.forEach((n,r)=>{t.set(n,1e6+r)}),n=>{const r=[];let l=[];for(let o=0;o0&&(l.sort(),r.push(...l),l=[]),r.push(u)):l.push(u)}return l.length>0&&(l.sort(),r.push(...l)),r}},C5=e=>({cache:b5(e.cacheSize),parseClassName:w5(e),sortModifiers:j5(e),postfixLookupClassGroupIds:_5(e),...f5(e)}),_5=e=>{const t=Object.create(null),n=e.postfixLookupClassGroups;if(n)for(let r=0;r{const{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:l,sortModifiers:o,postfixLookupClassGroupIds:u}=t,c=[],h=e.trim().split(A5);let m="";for(let v=h.length-1;v>=0;v-=1){const p=h[v],{isExternal:x,modifiers:S,hasImportantModifier:w,baseClassName:j,maybePostfixModifierPosition:C}=n(p);if(x){m=p+(m.length>0?" "+m:m);continue}let A=!!C,N;if(A){const D=j.substring(0,C);N=r(D);const k=N&&u[N]?r(j):void 0;k&&k!==N&&(N=k,A=!1)}else N=r(j);if(!N){if(!A){m=p+(m.length>0?" "+m:m);continue}if(N=r(j),!N){m=p+(m.length>0?" "+m:m);continue}A=!1}const O=S.length===0?"":S.length===1?S[0]:o(S).join(":"),T=w?O+I0:O,R=T+N;if(c.indexOf(R)>-1)continue;c.push(R);const E=l(N,A);for(let D=0;D0?" "+m:m)}return m},O5=(...e)=>{let t=0,n,r,l="";for(;t{if(typeof e=="string")return e;let t,n="";for(let r=0;r{let n,r,l,o;const u=h=>{const m=t.reduce((v,p)=>p(v),e());return n=C5(m),r=n.cache.get,l=n.cache.set,o=c,c(h)},c=h=>{const m=r(h);if(m)return m;const v=E5(h,n);return l(h,v),v};return o=u,(...h)=>o(O5(...h))},T5=[],en=e=>{const t=n=>n[e]||T5;return t.isThemeGetter=!0,t.themeKey=e,t},PR=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,kR=/^\((?:(\w[\w-]*):)?(.+)\)$/i,R5=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,M5=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,D5=/\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$/,P5=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix|color|light-dark)\(.+\)$/,k5=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,I5=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,ml=e=>R5.test(e),Ge=e=>!!e&&!Number.isNaN(Number(e)),_i=e=>!!e&&Number.isInteger(Number(e)),gx=e=>e.endsWith("%")&&Ge(e.slice(0,-1)),sa=e=>M5.test(e),IR=()=>!0,z5=e=>D5.test(e)&&!P5.test(e),oS=()=>!1,L5=e=>k5.test(e),U5=e=>I5.test(e),$5=e=>!je(e)&&!Ce(e),B5=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)),H5=e=>Ul(e,UR,oS),je=e=>PR.test(e),ho=e=>Ul(e,$R,z5),bE=e=>Ul(e,Q5,Ge),F5=e=>Ul(e,HR,IR),V5=e=>Ul(e,BR,oS),SE=e=>Ul(e,zR,oS),G5=e=>Ul(e,LR,U5),Qh=e=>Ul(e,FR,L5),Ce=e=>kR.test(e),nf=e=>Wo(e,$R),q5=e=>Wo(e,BR),wE=e=>Wo(e,zR),K5=e=>Wo(e,UR),Y5=e=>Wo(e,LR),Zh=e=>Wo(e,FR,!0),X5=e=>Wo(e,HR,!0),Ul=(e,t,n)=>{const r=PR.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},Wo=(e,t,n=!1)=>{const r=kR.exec(e);return r?r[1]?t(r[1]):n:!1},zR=e=>e==="position"||e==="percentage",LR=e=>e==="image"||e==="url",UR=e=>e==="length"||e==="size"||e==="bg-size",$R=e=>e==="length",Q5=e=>e==="number",BR=e=>e==="family-name",HR=e=>e==="number"||e==="weight",FR=e=>e==="shadow",Z5=()=>{const e=en("color"),t=en("font"),n=en("text"),r=en("font-weight"),l=en("tracking"),o=en("leading"),u=en("breakpoint"),c=en("container"),h=en("spacing"),m=en("radius"),v=en("shadow"),p=en("inset-shadow"),x=en("text-shadow"),S=en("drop-shadow"),w=en("blur"),j=en("perspective"),C=en("aspect"),A=en("ease"),N=en("animate"),O=()=>["auto","avoid","all","avoid-page","page","left","right","column"],T=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],R=()=>[...T(),Ce,je],E=()=>["auto","hidden","clip","visible","scroll"],D=()=>["auto","contain","none"],k=()=>[Ce,je,h],I=()=>[ml,"full","auto",...k()],P=()=>[_i,"none","subgrid",Ce,je],B=()=>["auto",{span:["full",_i,Ce,je]},_i,Ce,je],F=()=>[_i,"auto",Ce,je],se=()=>["auto","min","max","fr",Ce,je],ue=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],de=()=>["start","end","center","stretch","center-safe","end-safe"],G=()=>["auto",...k()],ne=()=>[ml,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...k()],ie=()=>[c,ml,"screen","full","dvw","lvw","svw","min","max","fit",...k()],ce=()=>[ml,"screen","full","lh","dvh","lvh","svh","min","max","fit",...k()],U=()=>[e,Ce,je],Ee=()=>[...T(),wE,SE,{position:[Ce,je]}],ee=()=>["no-repeat",{repeat:["","x","y","space","round"]}],ve=()=>["auto","cover","contain",K5,H5,{size:[Ce,je]}],z=()=>[gx,nf,ho],Y=()=>["","none","full",m,Ce,je],le=()=>["",Ge,nf,ho],fe=()=>["solid","dashed","dotted","double"],De=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],te=()=>[Ge,gx,wE,SE],ge=()=>["","none",w,Ce,je],oe=()=>["none",Ge,Ce,je],J=()=>["none",Ge,Ce,je],ut=()=>[Ge,Ce,je],Ke=()=>[ml,"full",...k()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[sa],breakpoint:[sa],color:[IR],container:[sa],"drop-shadow":[sa],ease:["in","out","in-out"],font:[$5],"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",Ge],text:[sa],"text-shadow":[sa],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",ml,je,Ce,C]}],container:["container"],"container-type":[{"@container":["","normal","size",Ce,je]}],"container-named":[B5],columns:[{columns:[Ge,"auto",je,Ce,c]}],"break-after":[{"break-after":O()}],"break-before":[{"break-before":O()}],"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:R()}],overflow:[{overflow:E()}],"overflow-x":[{"overflow-x":E()}],"overflow-y":[{"overflow-y":E()}],overscroll:[{overscroll:D()}],"overscroll-x":[{"overscroll-x":D()}],"overscroll-y":[{"overscroll-y":D()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:I()}],"inset-x":[{"inset-x":I()}],"inset-y":[{"inset-y":I()}],start:[{"inset-s":I(),start:I()}],end:[{"inset-e":I(),end:I()}],"inset-bs":[{"inset-bs":I()}],"inset-be":[{"inset-be":I()}],top:[{top:I()}],right:[{right:I()}],bottom:[{bottom:I()}],left:[{left:I()}],visibility:["visible","invisible","collapse"],z:[{z:[_i,"auto",Ce,je]}],basis:[{basis:[ml,"full","auto",c,...k()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[Ge,ml,"auto","initial","none",je]}],grow:[{grow:["",Ge,Ce,je]}],shrink:[{shrink:["",Ge,Ce,je]}],order:[{order:[_i,"first","last","none",Ce,je]}],"grid-cols":[{"grid-cols":P()}],"col-start-end":[{col:B()}],"col-start":[{"col-start":F()}],"col-end":[{"col-end":F()}],"grid-rows":[{"grid-rows":P()}],"row-start-end":[{row:B()}],"row-start":[{"row-start":F()}],"row-end":[{"row-end":F()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":se()}],"auto-rows":[{"auto-rows":se()}],gap:[{gap:k()}],"gap-x":[{"gap-x":k()}],"gap-y":[{"gap-y":k()}],"justify-content":[{justify:[...ue(),"normal"]}],"justify-items":[{"justify-items":[...de(),"normal"]}],"justify-self":[{"justify-self":["auto",...de()]}],"align-content":[{content:["normal",...ue()]}],"align-items":[{items:[...de(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...de(),{baseline:["","last"]}]}],"place-content":[{"place-content":ue()}],"place-items":[{"place-items":[...de(),"baseline"]}],"place-self":[{"place-self":["auto",...de()]}],p:[{p:k()}],px:[{px:k()}],py:[{py:k()}],ps:[{ps:k()}],pe:[{pe:k()}],pbs:[{pbs:k()}],pbe:[{pbe:k()}],pt:[{pt:k()}],pr:[{pr:k()}],pb:[{pb:k()}],pl:[{pl:k()}],m:[{m:G()}],mx:[{mx:G()}],my:[{my:G()}],ms:[{ms:G()}],me:[{me:G()}],mbs:[{mbs:G()}],mbe:[{mbe:G()}],mt:[{mt:G()}],mr:[{mr:G()}],mb:[{mb:G()}],ml:[{ml:G()}],"space-x":[{"space-x":k()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":k()}],"space-y-reverse":["space-y-reverse"],size:[{size:ne()}],"inline-size":[{inline:["auto",...ie()]}],"min-inline-size":[{"min-inline":["auto",...ie()]}],"max-inline-size":[{"max-inline":["none",...ie()]}],"block-size":[{block:["auto",...ce()]}],"min-block-size":[{"min-block":["auto",...ce()]}],"max-block-size":[{"max-block":["none",...ce()]}],w:[{w:[c,"screen",...ne()]}],"min-w":[{"min-w":[c,"screen","none",...ne()]}],"max-w":[{"max-w":[c,"screen","none","prose",{screen:[u]},...ne()]}],h:[{h:["screen","lh",...ne()]}],"min-h":[{"min-h":["screen","lh","none",...ne()]}],"max-h":[{"max-h":["screen","lh","none",...ne()]}],"font-size":[{text:["base",n,nf,ho]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[r,X5,F5]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",gx,je]}],"font-family":[{font:[q5,V5,t]}],"font-features":[{"font-features":[je]}],"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:[l,Ce,je]}],"line-clamp":[{"line-clamp":[Ge,"none",Ce,bE]}],leading:[{leading:["none",o,...k()]}],"list-image":[{"list-image":["none",Ce,je]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",Ce,je]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:U()}],"text-color":[{text:U()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...fe(),"wavy"]}],"text-decoration-thickness":[{decoration:[Ge,"from-font","auto",Ce,ho]}],"text-decoration-color":[{decoration:U()}],"underline-offset":[{"underline-offset":[Ge,"auto",Ce,je]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:k()}],"tab-size":[{tab:[_i,Ce,je]}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",Ce,je]}],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,je]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:Ee()}],"bg-repeat":[{bg:ee()}],"bg-size":[{bg:ve()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},_i,Ce,je],radial:["",Ce,je],conic:["",_i,Ce,je]},Y5,G5]}],"bg-color":[{bg:U()}],"gradient-from-pos":[{from:z()}],"gradient-via-pos":[{via:z()}],"gradient-to-pos":[{to:z()}],"gradient-from":[{from:U()}],"gradient-via":[{via:U()}],"gradient-to":[{to:U()}],rounded:[{rounded:Y()}],"rounded-s":[{"rounded-s":Y()}],"rounded-e":[{"rounded-e":Y()}],"rounded-t":[{"rounded-t":Y()}],"rounded-r":[{"rounded-r":Y()}],"rounded-b":[{"rounded-b":Y()}],"rounded-l":[{"rounded-l":Y()}],"rounded-ss":[{"rounded-ss":Y()}],"rounded-se":[{"rounded-se":Y()}],"rounded-ee":[{"rounded-ee":Y()}],"rounded-es":[{"rounded-es":Y()}],"rounded-tl":[{"rounded-tl":Y()}],"rounded-tr":[{"rounded-tr":Y()}],"rounded-br":[{"rounded-br":Y()}],"rounded-bl":[{"rounded-bl":Y()}],"border-w":[{border:le()}],"border-w-x":[{"border-x":le()}],"border-w-y":[{"border-y":le()}],"border-w-s":[{"border-s":le()}],"border-w-e":[{"border-e":le()}],"border-w-bs":[{"border-bs":le()}],"border-w-be":[{"border-be":le()}],"border-w-t":[{"border-t":le()}],"border-w-r":[{"border-r":le()}],"border-w-b":[{"border-b":le()}],"border-w-l":[{"border-l":le()}],"divide-x":[{"divide-x":le()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":le()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...fe(),"hidden","none"]}],"divide-style":[{divide:[...fe(),"hidden","none"]}],"border-color":[{border:U()}],"border-color-x":[{"border-x":U()}],"border-color-y":[{"border-y":U()}],"border-color-s":[{"border-s":U()}],"border-color-e":[{"border-e":U()}],"border-color-bs":[{"border-bs":U()}],"border-color-be":[{"border-be":U()}],"border-color-t":[{"border-t":U()}],"border-color-r":[{"border-r":U()}],"border-color-b":[{"border-b":U()}],"border-color-l":[{"border-l":U()}],"divide-color":[{divide:U()}],"outline-style":[{outline:[...fe(),"none","hidden"]}],"outline-offset":[{"outline-offset":[Ge,Ce,je]}],"outline-w":[{outline:["",Ge,nf,ho]}],"outline-color":[{outline:U()}],shadow:[{shadow:["","inner","none",v,Zh,Qh]}],"shadow-color":[{shadow:U()}],"inset-shadow":[{"inset-shadow":["none",p,Zh,Qh]}],"inset-shadow-color":[{"inset-shadow":U()}],"ring-w":[{ring:le()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:U()}],"ring-offset-w":[{"ring-offset":[Ge,ho]}],"ring-offset-color":[{"ring-offset":U()}],"inset-ring-w":[{"inset-ring":le()}],"inset-ring-color":[{"inset-ring":U()}],"text-shadow":[{"text-shadow":["none",x,Zh,Qh]}],"text-shadow-color":[{"text-shadow":U()}],opacity:[{opacity:[Ge,Ce,je]}],"mix-blend":[{"mix-blend":[...De(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":De()}],"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":[Ge]}],"mask-image-linear-from-pos":[{"mask-linear-from":te()}],"mask-image-linear-to-pos":[{"mask-linear-to":te()}],"mask-image-linear-from-color":[{"mask-linear-from":U()}],"mask-image-linear-to-color":[{"mask-linear-to":U()}],"mask-image-t-from-pos":[{"mask-t-from":te()}],"mask-image-t-to-pos":[{"mask-t-to":te()}],"mask-image-t-from-color":[{"mask-t-from":U()}],"mask-image-t-to-color":[{"mask-t-to":U()}],"mask-image-r-from-pos":[{"mask-r-from":te()}],"mask-image-r-to-pos":[{"mask-r-to":te()}],"mask-image-r-from-color":[{"mask-r-from":U()}],"mask-image-r-to-color":[{"mask-r-to":U()}],"mask-image-b-from-pos":[{"mask-b-from":te()}],"mask-image-b-to-pos":[{"mask-b-to":te()}],"mask-image-b-from-color":[{"mask-b-from":U()}],"mask-image-b-to-color":[{"mask-b-to":U()}],"mask-image-l-from-pos":[{"mask-l-from":te()}],"mask-image-l-to-pos":[{"mask-l-to":te()}],"mask-image-l-from-color":[{"mask-l-from":U()}],"mask-image-l-to-color":[{"mask-l-to":U()}],"mask-image-x-from-pos":[{"mask-x-from":te()}],"mask-image-x-to-pos":[{"mask-x-to":te()}],"mask-image-x-from-color":[{"mask-x-from":U()}],"mask-image-x-to-color":[{"mask-x-to":U()}],"mask-image-y-from-pos":[{"mask-y-from":te()}],"mask-image-y-to-pos":[{"mask-y-to":te()}],"mask-image-y-from-color":[{"mask-y-from":U()}],"mask-image-y-to-color":[{"mask-y-to":U()}],"mask-image-radial":[{"mask-radial":[Ce,je]}],"mask-image-radial-from-pos":[{"mask-radial-from":te()}],"mask-image-radial-to-pos":[{"mask-radial-to":te()}],"mask-image-radial-from-color":[{"mask-radial-from":U()}],"mask-image-radial-to-color":[{"mask-radial-to":U()}],"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":T()}],"mask-image-conic-pos":[{"mask-conic":[Ge]}],"mask-image-conic-from-pos":[{"mask-conic-from":te()}],"mask-image-conic-to-pos":[{"mask-conic-to":te()}],"mask-image-conic-from-color":[{"mask-conic-from":U()}],"mask-image-conic-to-color":[{"mask-conic-to":U()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:Ee()}],"mask-repeat":[{mask:ee()}],"mask-size":[{mask:ve()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",Ce,je]}],filter:[{filter:["","none",Ce,je]}],blur:[{blur:ge()}],brightness:[{brightness:[Ge,Ce,je]}],contrast:[{contrast:[Ge,Ce,je]}],"drop-shadow":[{"drop-shadow":["","none",S,Zh,Qh]}],"drop-shadow-color":[{"drop-shadow":U()}],grayscale:[{grayscale:["",Ge,Ce,je]}],"hue-rotate":[{"hue-rotate":[Ge,Ce,je]}],invert:[{invert:["",Ge,Ce,je]}],saturate:[{saturate:[Ge,Ce,je]}],sepia:[{sepia:["",Ge,Ce,je]}],"backdrop-filter":[{"backdrop-filter":["","none",Ce,je]}],"backdrop-blur":[{"backdrop-blur":ge()}],"backdrop-brightness":[{"backdrop-brightness":[Ge,Ce,je]}],"backdrop-contrast":[{"backdrop-contrast":[Ge,Ce,je]}],"backdrop-grayscale":[{"backdrop-grayscale":["",Ge,Ce,je]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[Ge,Ce,je]}],"backdrop-invert":[{"backdrop-invert":["",Ge,Ce,je]}],"backdrop-opacity":[{"backdrop-opacity":[Ge,Ce,je]}],"backdrop-saturate":[{"backdrop-saturate":[Ge,Ce,je]}],"backdrop-sepia":[{"backdrop-sepia":["",Ge,Ce,je]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":k()}],"border-spacing-x":[{"border-spacing-x":k()}],"border-spacing-y":[{"border-spacing-y":k()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",Ce,je]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[Ge,"initial",Ce,je]}],ease:[{ease:["linear","initial",A,Ce,je]}],delay:[{delay:[Ge,Ce,je]}],animate:[{animate:["none",N,Ce,je]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[j,Ce,je]}],"perspective-origin":[{"perspective-origin":R()}],rotate:[{rotate:oe()}],"rotate-x":[{"rotate-x":oe()}],"rotate-y":[{"rotate-y":oe()}],"rotate-z":[{"rotate-z":oe()}],scale:[{scale:J()}],"scale-x":[{"scale-x":J()}],"scale-y":[{"scale-y":J()}],"scale-z":[{"scale-z":J()}],"scale-3d":["scale-3d"],skew:[{skew:ut()}],"skew-x":[{"skew-x":ut()}],"skew-y":[{"skew-y":ut()}],transform:[{transform:[Ce,je,"","none","gpu","cpu"]}],"transform-origin":[{origin:R()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:Ke()}],"translate-x":[{"translate-x":Ke()}],"translate-y":[{"translate-y":Ke()}],"translate-z":[{"translate-z":Ke()}],"translate-none":["translate-none"],zoom:[{zoom:[_i,Ce,je]}],accent:[{accent:U()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:U()}],"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,je]}],"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":U()}],"scrollbar-track-color":[{"scrollbar-track":U()}],"scrollbar-gutter":[{"scrollbar-gutter":["auto","stable","both"]}],"scrollbar-w":[{scrollbar:["auto","thin","none"]}],"scroll-m":[{"scroll-m":k()}],"scroll-mx":[{"scroll-mx":k()}],"scroll-my":[{"scroll-my":k()}],"scroll-ms":[{"scroll-ms":k()}],"scroll-me":[{"scroll-me":k()}],"scroll-mbs":[{"scroll-mbs":k()}],"scroll-mbe":[{"scroll-mbe":k()}],"scroll-mt":[{"scroll-mt":k()}],"scroll-mr":[{"scroll-mr":k()}],"scroll-mb":[{"scroll-mb":k()}],"scroll-ml":[{"scroll-ml":k()}],"scroll-p":[{"scroll-p":k()}],"scroll-px":[{"scroll-px":k()}],"scroll-py":[{"scroll-py":k()}],"scroll-ps":[{"scroll-ps":k()}],"scroll-pe":[{"scroll-pe":k()}],"scroll-pbs":[{"scroll-pbs":k()}],"scroll-pbe":[{"scroll-pbe":k()}],"scroll-pt":[{"scroll-pt":k()}],"scroll-pr":[{"scroll-pr":k()}],"scroll-pb":[{"scroll-pb":k()}],"scroll-pl":[{"scroll-pl":k()}],"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,je]}],fill:[{fill:["none",...U()]}],"stroke-w":[{stroke:[Ge,nf,ho,bE]}],stroke:[{stroke:["none",...U()]}],"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":["start","end","right","left"],"inset-y":["inset-bs","inset-be","top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["ps","pe","pr","pl"],py:["pbs","pbe","pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["ms","me","mr","ml"],my:["mbs","mbe","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-s","border-w-e","border-w-r","border-w-l"],"border-w-y":["border-w-bs","border-w-be","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-s","border-color-e","border-color-r","border-color-l"],"border-color-y":["border-color-bs","border-color-be","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-ms","scroll-me","scroll-mr","scroll-ml"],"scroll-my":["scroll-mbs","scroll-mbe","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-ps","scroll-pe","scroll-pr","scroll-pl"],"scroll-py":["scroll-pbs","scroll-pbe","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"]}},W5=N5(Z5);function Wt(...e){return W5(Ct(e))}const J5=aS("inline-flex items-center rounded-md px-2 py-0.5 text-xs font-medium",{variants:{variant:{default:"bg-zinc-800 text-zinc-100 ring-1 ring-zinc-600",secondary:"bg-zinc-800 text-zinc-100 ring-1 ring-zinc-600",count:"bg-zinc-950 text-zinc-50 ring-1 ring-zinc-500",ok:"bg-emerald-950 text-emerald-300 ring-1 ring-emerald-800",bad:"bg-red-950 text-red-200 ring-1 ring-red-800",warn:"bg-amber-950 text-amber-200 ring-1 ring-amber-700"}},defaultVariants:{variant:"default"}});function Oe({className:e,variant:t,...n}){return f.jsx("div",{className:Wt(J5({variant:t}),e),...n})}var eB=Object.defineProperty,sS=(e,t)=>eB(e,"name",{value:t,configurable:!0});function z0(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}sS(z0,"setRef");function Bo(...e){return t=>{let n=!1;const r=e.map(l=>{const o=z0(l,t);return!n&&typeof o=="function"&&(n=!0),o});if(n)return()=>{for(let l=0;ltB(e,"name",{value:t,configurable:!0});function Ml(e){const t=b.forwardRef((n,r)=>{let{children:l,...o}=n,u=null,c=!1;const h=[];l=XR(l),b.Children.forEach(l,x=>{var S;if(KR(x)){c=!0;const w=x;let j="child"in w.props?w.props.child:w.props.children;for(;uS(j)&&typeof zm=="function";)j=zm(j._payload);u=iB(w,j),h.push((S=u==null?void 0:u.props)==null?void 0:S.children)}else h.push(x)}),u?u=b.cloneElement(u,void 0,h):!c&&b.Children.count(l)===1&&b.isValidElement(l)&&(u=l);const m=u?qR(u):void 0,v=Kr(r,m);if(!u){if(l||l===0)throw new Error(c?oB(e):lB(e));return l}const p=GR(o,u.props??{});return u.type!==b.Fragment&&(p.ref=r?v:m),b.cloneElement(u,p)});return t.displayName=`${e}.Slot`,t}Nr(Ml,"createSlot");var nB=Ml("Slot"),VR=Symbol.for("radix.slottable");function rB(e){const t=Nr(n=>"child"in n?n.children(n.child):n.children,"Slottable");return t.displayName=`${e}.Slottable`,t.__radixId=VR,t}Nr(rB,"createSlottable");var iB=Nr((e,t)=>"child"in e.props?b.isValidElement(t)?b.cloneElement(t,void 0,e.props.children(t.props.children)):null:b.isValidElement(t)?t:null,"getSlottableElementFromSlottable");function GR(e,t){const n={...t};for(const r in t){const l=e[r],o=t[r];/^on[A-Z]/.test(r)?l&&o?n[r]=(...c)=>{const h=o(...c);return l(...c),h}:l&&(n[r]=l):r==="style"?n[r]={...l,...o}:r==="className"?n[r]=[l,o].filter(Boolean).join(" "):r==="aria-describedby"&&(n[r]=QR(o,l))}return{...e,...n}}Nr(GR,"mergeProps");function qR(e){var r,l;let t=(r=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:r.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=(l=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:l.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}Nr(qR,"getElementRef");function KR(e){return b.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===VR}Nr(KR,"isSlottable");var aB=Symbol.for("react.lazy");function uS(e){return e!=null&&typeof e=="object"&&"$$typeof"in e&&e.$$typeof===aB&&"_payload"in e&&YR(e._payload)}Nr(uS,"isLazyComponent");function YR(e){return typeof e=="object"&&e!==null&&"then"in e}Nr(YR,"isPromiseLike");function XR(e){let t=e;for(;uS(t)&&typeof zm=="function";)t=zm(t._payload);return t}Nr(XR,"useUnwrappedLazy");function QR(...e){const t=new Set;for(const n of e)if(typeof n=="string")for(const r of String(n).trim().split(/\s+/))r&&t.add(r);return t.size>0?Array.from(t).join(" "):void 0}Nr(QR,"concatAriaDescribedby");var lB=Nr(e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,"createSlotError"),oB=Nr(e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,"createSlottableError"),zm=Ll[" use ".trim().toString()];const sB=aS("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-semibold transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",outline:"border border-border bg-transparent hover:bg-secondary",ghost:"hover:bg-secondary",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-11 rounded-md px-6",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),he=b.forwardRef(({className:e,variant:t,size:n,asChild:r=!1,...l},o)=>{const u=r?nB:"button";return f.jsx(u,{className:Wt(sB({variant:t,size:n,className:e})),ref:o,...l})});he.displayName="Button";function ye({className:e,...t}){return f.jsx("div",{className:Wt("rounded-lg border border-border bg-card text-card-foreground shadow-sm",e),...t})}function Ne({className:e,...t}){return f.jsx("div",{className:Wt("flex flex-col gap-1.5 p-4",e),...t})}function Te({className:e,...t}){return f.jsx("h3",{className:Wt("text-base font-semibold leading-none",e),...t})}function ht({className:e,...t}){return f.jsx("p",{className:Wt("text-sm text-muted-foreground",e),...t})}function xe({className:e,...t}){return f.jsx("div",{className:Wt("p-4 pt-0",e),...t})}const $e=b.forwardRef(({className:e,type:t,...n},r)=>f.jsx("input",{type:t,className:Wt("flex h-10 w-full rounded-md border border-input bg-secondary px-3 py-2 text-sm text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",e),ref:r,...n}));$e.displayName="Input";var uB=Object.defineProperty,Fu=(e,t)=>uB(e,"name",{value:t,configurable:!0}),ZR=!!(typeof window<"u"&&window.document&&window.document.createElement);function $n(e,t,{checkForDefaultPrevented:n=!0}={}){return Fu(function(l){if(e==null||e(l),n===!1||!l||!l.defaultPrevented)return t==null?void 0:t(l)},"handleEvent")}Fu($n,"composeEventHandlers");function cB(e){var t;if(!ZR)throw new Error("Cannot access window outside of the DOM");return((t=e==null?void 0:e.ownerDocument)==null?void 0:t.defaultView)??window}Fu(cB,"getOwnerWindow");function L0(e){if(!ZR)throw new Error("Cannot access document outside of the DOM");return(e==null?void 0:e.ownerDocument)??document}Fu(L0,"getOwnerDocument");function WR(e,t=!1){const{activeElement:n}=L0(e);if(!(n!=null&&n.nodeName))return null;if(JR(n)&&n.contentDocument)return WR(n.contentDocument.body,t);if(t){const r=n.getAttribute("aria-activedescendant");if(r){const l=L0(n).getElementById(r);if(l)return l}}return n}Fu(WR,"getActiveElement");function JR(e){return e.tagName==="IFRAME"}Fu(JR,"isFrame");var fB=Object.defineProperty,Fr=(e,t)=>fB(e,"name",{value:t,configurable:!0});function dB(e,t){const n=b.createContext(t);n.displayName=e+"Context";const r=Fr(o=>{const{children:u,...c}=o,h=b.useMemo(()=>c,Object.values(c));return f.jsx(n.Provider,{value:h,children:u})},"Provider");r.displayName=e+"Provider";function l(o,u={}){const{optional:c=!1}=u,h=b.useContext(n);if(h)return h;if(t!==void 0)return t;if(!c)throw new Error(`\`${o}\` must be used within \`${e}\``)}return Fr(l,"useContext"),[r,l]}Fr(dB,"createContext");function Vu(e,t=[]){let n=[];function r(o,u){const c=b.createContext(u);c.displayName=o+"Context";const h=n.length;n=[...n,u];const m=Fr(p=>{var A;const{scope:x,children:S,...w}=p,j=((A=x==null?void 0:x[e])==null?void 0:A[h])||c,C=b.useMemo(()=>w,Object.values(w));return f.jsx(j.Provider,{value:C,children:S})},"Provider");m.displayName=o+"Provider";function v(p,x,S={}){var A;const{optional:w=!1}=S,j=((A=x==null?void 0:x[e])==null?void 0:A[h])||c,C=b.useContext(j);if(C)return C;if(u!==void 0)return u;if(!w)throw new Error(`\`${p}\` must be used within \`${o}\``)}return Fr(v,"useContext"),[m,v]}Fr(r,"createContext");const l=Fr(()=>{const o=n.map(u=>b.createContext(u));return Fr(function(c){const h=(c==null?void 0:c[e])||o;return b.useMemo(()=>({[`__scope${e}`]:{...c,[e]:h}}),[c,h])},"useScope")},"createScope");return l.scopeName=e,[r,eM(l,...t)]}Fr(Vu,"createContextScope");function eM(...e){const t=e[0];if(e.length===1)return t;const n=Fr(()=>{const r=e.map(l=>({useScope:l(),scopeName:l.scopeName}));return Fr(function(o){const u=r.reduce((c,{useScope:h,scopeName:m})=>{const p=h(o)[`__scope${m}`];return{...c,...p}},{});return b.useMemo(()=>({[`__scope${t.scopeName}`]:u}),[u])},"useComposedScopes")},"createScope");return n.scopeName=t.scopeName,n}Fr(eM,"composeContextScopes");var ja=globalThis!=null&&globalThis.document?b.useLayoutEffect:()=>{},hB=Object.defineProperty,rn=(e,t)=>hB(e,"name",{value:t,configurable:!0});function tM(e){const t=e+"CollectionProvider",[n,r]=Vu(t),[l,o]=n(t,{collectionRef:{current:null},itemMap:new Map}),u=rn(j=>{const{scope:C,children:A}=j,N=b.useRef(null),O=b.useRef(new Map).current;return f.jsx(l,{scope:C,itemMap:O,collectionRef:N,children:A})},"CollectionProvider");u.displayName=t;const c=e+"CollectionSlot",h=Ml(c),m=b.forwardRef((j,C)=>{const{scope:A,children:N}=j,O=o(c,A),T=Kr(C,O.collectionRef);return f.jsx(h,{ref:T,children:N})});m.displayName=c;const v=e+"CollectionItemSlot",p="data-radix-collection-item",x=Ml(v),S=b.forwardRef((j,C)=>{const{scope:A,children:N,...O}=j,T=b.useRef(null),R=Kr(C,T),E=o(v,A);return b.useEffect(()=>(E.itemMap.set(T,{ref:T,...O}),()=>void E.itemMap.delete(T))),f.jsx(x,{[p]:"",ref:R,children:N})});S.displayName=v;function w(j){const C=o(e+"CollectionConsumer",j);return b.useCallback(()=>{const N=C.collectionRef.current;if(!N)return[];const O=Array.from(N.querySelectorAll(`[${p}]`));return Array.from(C.itemMap.values()).sort((E,D)=>O.indexOf(E.ref.current)-O.indexOf(D.ref.current))},[C.collectionRef,C.itemMap])}return rn(w,"useCollection"),[{Provider:u,Slot:m,ItemSlot:S},w,r]}rn(tM,"createCollection");var jE=new WeakMap,Ft,jr,Wh=(jr=class extends Map{constructor(n){super(n);Ie(this,Ft);be(this,Ft,[...super.keys()]),jE.set(this,!0)}set(n,r){return jE.get(this)&&!this.has(n)&&$(this,Ft).push(n),super.set(n,r),this}insert(n,r,l){const o=this.has(r),u=o?this.size:this.size+1,c=cS(n),h=c>=0?Math.min(c,u-1):Math.max(u+c,0);if(o?$(this,Ft).indexOf(r)===h:h===this.size)return this.set(r,l),this;const m=$(this,Ft).filter(p=>p!==r);m.splice(h,0,r);const v=m.map(p=>[p,p===r?l:this.get(p)]);this.clear();for(const[p,x]of v)this.set(p,x);return this}with(n,r,l){const o=new jr(this);return o.insert(n,r,l),o}before(n){const r=$(this,Ft).indexOf(n)-1;if(!(r<0))return this.entryAt(r)}setBefore(n,r,l){const o=$(this,Ft).indexOf(n);if(o===-1)return this;const u=$(this,Ft).indexOf(r),c=u!==-1&&u=this.size&&(o=this.size-1),this.at(o)}keyFrom(n,r){const l=this.indexOf(n);if(l===-1)return;let o=l+r;return o<0&&(o=0),o>=this.size&&(o=this.size-1),this.keyAt(o)}find(n,r){let l=0;for(const o of this){if(Reflect.apply(n,r,[o,l,this]))return o;l++}}findIndex(n,r){let l=0;for(const o of this){if(Reflect.apply(n,r,[o,l,this]))return l;l++}return-1}filter(n,r){const l=[];let o=0;for(const u of this)Reflect.apply(n,r,[u,o,this])&&l.push(u),o++;return new jr(l)}map(n,r){const l=[];let o=0;for(const u of this)l.push([u[0],Reflect.apply(n,r,[u,o,this])]),o++;return new jr(l)}reduce(...n){const[r,l]=n,o=n.length>1;if(!o&&this.size===0)throw new TypeError("Reduce of empty OrderedDict with no initial value");let u=0,c=l;for(const h of this)u===0&&!o?c=h:c=Reflect.apply(r,this,[c,h,u,this]),u++;return c}reduceRight(...n){const[r,l]=n,o=n.length>1;if(!o&&this.size===0)throw new TypeError("Reduce of empty OrderedDict with no initial value");let u=l;for(let c=this.size-1;c>=0;c--){const h=this.entryAt(c);c===this.size-1&&!o?u=h:u=Reflect.apply(r,this,[u,h,c,this])}return u}sort(n){if(typeof n!="function")throw new TypeError("OrderedDict.sort requires a compare function");const r=[...this.entries()].sort(n);this.clear();for(const[l,o]of r)this.set(l,o);return this}toSorted(n){if(typeof n!="function")throw new TypeError("OrderedDict.toSorted requires a compare function");const r=[...this.entries()].sort(n);return new jr(r)}toReversed(){const n=new jr;for(let r=this.size-1;r>=0;r--){const l=this.keyAt(r),o=this.get(l);n.set(l,o)}return n}toSpliced(...n){const r=[...this.entries()];return r.splice(...n),new jr(r)}slice(n,r){const l=new jr;for(const o of $(this,Ft).slice(n,r))l.set(o,this.get(o));return l}every(n,r){let l=0;for(const o of this){if(!Reflect.apply(n,r,[o,l,this]))return!1;l++}return!0}some(n,r){let l=0;for(const o of this){if(Reflect.apply(n,r,[o,l,this]))return!0;l++}return!1}},Ft=new WeakMap,rn(jr,"OrderedDict"),jr);function Am(e,t){if("at"in Array.prototype)return Array.prototype.at.call(e,t);const n=nM(e,t);return n===-1?void 0:e[n]}rn(Am,"at");function nM(e,t){const n=e.length,r=cS(t),l=r>=0?r:n+r;return l<0||l>=n?-1:l}rn(nM,"toSafeIndex");function cS(e){return e!==e||e===0?0:Math.trunc(e)}rn(cS,"toSafeInteger");function mB(e){const t=e+"CollectionProvider",[n,r]=Vu(t),[l,o]=n(t);l.displayName=e+"CollectionStableContextProvider";const[u,c]=n(t);u.displayName=e+"CollectionStatefulContextProvider";const h=rn(({state:E,...D})=>E?f.jsx(v,{...D,state:E}):f.jsx(m,{...D}),"CollectionProvider");h.displayName=t;const m=rn(E=>{const D=N();return f.jsx(v,{...E,state:D})},"CollectionInit");m.displayName=e+"CollectionInit";const v=rn(E=>{const{scope:D,children:k,state:I}=E,P=b.useRef(null),[B,F]=b.useState(null),se=Kr(P,F),[ue,de]=I,G=b.useRef(new Wh),ne=b.useCallback(()=>{const ie=G.current;return aM(ie)||ie.sort(Em),ie},[]);return b.useEffect(()=>{if(!B)return;const ie=lM(()=>{de(ce=>{const U=ce.toSorted(Em);return U.some(([ee],ve)=>ce.keyAt(ve)!==ee)?U:ce})});return ie.observe(B,{childList:!0,subtree:!0}),()=>{ie.disconnect()}},[B,de]),f.jsx(l,{scope:D,collectionElementRef:se,collectionElementRefObject:P,getCollection:ne,setCollection:de,registryRef:G,children:f.jsx(u,{scope:D,collectionElement:B,collection:ue,children:k})})},"CollectionProviderImpl");v.displayName=e+"CollectionProviderImpl";const p=e+"CollectionSlot",x=Ml(p),S=b.forwardRef((E,D)=>{const{scope:k,children:I}=E,P=o(p,k),B=Kr(D,P.collectionElementRef);return f.jsx(x,{ref:B,children:I})});S.displayName=p;const w=e+"CollectionItemSlot",j="data-radix-collection-item",C=Ml(w),A=b.forwardRef((E,D)=>{const{scope:k,children:I,...P}=E,B=b.useRef(null),F=o(w,k),{setCollection:se,registryRef:ue}=F,de=b.useRef(P);rM(de.current,P)||(de.current=P);const G=de.current,ne=b.useCallback(U=>{const Ee=ue.current;U?Ee.set(U,{...de.current,element:U}):B.current&&Ee.delete(B.current)},[ue]),ie=Kr(D,ne,B);ja(()=>{const U=B.current,Ee=ue.current;U&&Ee.has(U)&&Ee.set(U,{...G,element:U})},[G,ue]);const ce=b.useRef(null);return b.useEffect(()=>{const U=B.current,Ee=ce.current;((Ee==null?void 0:Ee.element)??null)===U&&(!U||(Ee==null?void 0:Ee.itemData)===G)||(ce.current=U?{element:U,itemData:G}:null,se(ee=>{const ve=new Wh(ee);return Ee&&Ee.element!==U&&ve.delete(Ee.element),U&&ve.set(U,{...G,element:U}),ve.sort(Em)}))}),b.useEffect(()=>()=>{const U=ce.current;ce.current=null,U&&se(Ee=>{if(!Ee.has(U.element))return Ee;const ee=new Wh(Ee);return ee.delete(U.element),ee})},[se]),f.jsx(C,{[j]:"",ref:ie,children:I})});A.displayName=w;function N(){return b.useState(new Wh)}rn(N,"useInitCollection");function O(E){const{collection:D}=c(e+"CollectionConsumer",E);return D}rn(O,"useCollection");function T(E){const{getCollection:D}=o(e+"CollectionConsumer",E);return D}return rn(T,"useGetCollection"),[{Provider:h,Slot:S,ItemSlot:A},{createCollectionScope:r,useCollection:O,useGetCollection:T,useInitCollection:N}]}rn(mB,"createCollection");function rM(e,t){if(e===t)return!0;if(typeof e!="object"||typeof t!="object"||e==null||t==null)return!1;const n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(const l of n)if(!Object.prototype.hasOwnProperty.call(t,l)||e[l]!==t[l])return!1;return!0}rn(rM,"shallowEqual");function iM(e,t){return!!(t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_PRECEDING)}rn(iM,"isElementPreceding");function aM(e){let t;for(const n of e.keys()){if(t){const r=t.compareDocumentPosition(n);if(!(r&Node.DOCUMENT_POSITION_DISCONNECTED)&&r&Node.DOCUMENT_POSITION_PRECEDING)return!1}t=n}return!0}rn(aM,"isInDocumentOrder");function Em(e,t){return!e[1].element||!t[1].element?0:iM(e[1].element,t[1].element)?-1:1}rn(Em,"sortByDocumentPosition");function lM(e){return new MutationObserver(n=>{for(const r of n)if(r.type==="childList"){e();return}})}rn(lM,"getChildListObserver");var vB=Object.defineProperty,gB=(e,t)=>vB(e,"name",{value:t,configurable:!0}),pB=Ll[" useId ".trim().toString()]||(()=>{}),yB=0;function Yr(e){const[t,n]=b.useState(pB());return ja(()=>{e||n(r=>r??String(yB++))},[e]),e||(t?`radix-${t}`:"")}gB(Yr,"useId");var Rv=OR(),xB=Object.defineProperty,bB=(e,t)=>xB(e,"name",{value:t,configurable:!0}),SB=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],ln=SB.reduce((e,t)=>{const n=Ml(`Primitive.${t}`),r=b.forwardRef((l,o)=>{const{asChild:u,...c}=l,h=u?n:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),f.jsx(h,{...c,ref:o})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function oM(e,t){e&&Rv.flushSync(()=>e.dispatchEvent(t))}bB(oM,"dispatchDiscreteCustomEvent");var wB=Object.defineProperty,jB=(e,t)=>wB(e,"name",{value:t,configurable:!0}),CE=Ll[" useInsertionEffect ".trim().toString()];function Ho(e){const t=b.useRef(e);return typeof CE=="function"?CE(()=>{t.current=e}):ja(()=>{t.current=e}),b.useMemo(()=>((...n)=>{var r;return(r=t.current)==null?void 0:r.call(t,...n)}),[])}jB(Ho,"useCallbackRef");var CB=Object.defineProperty,_B=(e,t)=>CB(e,"name",{value:t,configurable:!0}),_E=Ll[" useEffectEvent ".trim().toString()],AE=Ll[" useInsertionEffect ".trim().toString()];function sM(e){if(typeof _E=="function")return _E(e);const t=b.useRef(()=>{throw new Error("Cannot call an event handler while rendering.")});return typeof AE=="function"?AE(()=>{t.current=e}):ja(()=>{t.current=e}),b.useMemo(()=>((...n)=>{var r;return(r=t.current)==null?void 0:r.call(t,...n)}),[])}_B(sM,"useEffectEvent");var AB=Object.defineProperty,Qf=(e,t)=>AB(e,"name",{value:t,configurable:!0}),EB=Ll[" useInsertionEffect ".trim().toString()]||ja;function Mv({prop:e,defaultProp:t,onChange:n=Qf(()=>{},"onChange"),caller:r}){const[l,o,u]=uM({defaultProp:t,onChange:n}),c=e!==void 0,h=c?e:l,m=b.useCallback(v=>{var p;if(c){const x=cM(v)?v(e):v;x!==e&&((p=u.current)==null||p.call(u,x))}else o(v)},[c,e,o,u]);return[h,m]}Qf(Mv,"useControllableState");function uM({defaultProp:e,onChange:t}){const[n,r]=b.useState(e),l=b.useRef(n),o=b.useRef(t);return EB(()=>{o.current=t},[t]),b.useEffect(()=>{var u;l.current!==n&&((u=o.current)==null||u.call(o,n),l.current=n)},[n,l]),[n,r,o]}Qf(uM,"useUncontrolledState");function cM(e){return typeof e=="function"}Qf(cM,"isFunction");var EE=Symbol("RADIX:SYNC_STATE");function OB(e,t,n,r){const{prop:l,defaultProp:o,onChange:u,caller:c}=t,h=l!==void 0,m=sM(u),v=[{...n,state:o}];r&&v.push(r);const[p,x]=b.useReducer((C,A)=>{if(A.type===EE)return{...C,state:A.state};const N=e(C,A);return h&&!Object.is(N.state,C.state)&&m(N.state),N},...v),S=p.state,w=b.useRef(S);b.useEffect(()=>{w.current!==S&&(w.current=S,h||m(S))},[S,w,h]);const j=b.useMemo(()=>l!==void 0?{...p,state:l}:p,[p,l]);return b.useEffect(()=>{h&&!Object.is(l,p.state)&&x({type:EE,state:l})},[l,p.state,h]),[j,x]}Qf(OB,"useControllableStateReducer");var NB=Object.defineProperty,TB=(e,t)=>NB(e,"name",{value:t,configurable:!0}),RB={LTR:"ltr"},MB=b.createContext(void 0);function fS(e){const t=b.useContext(MB);return e||t||RB.LTR}TB(fS,"useDirection");var DB=Object.defineProperty,dS=(e,t)=>DB(e,"name",{value:t,configurable:!0}),px=!1;function fM(){const[e,t]=b.useState(px);return b.useEffect(()=>{px||(px=!0,t(!0))},[]),e}dS(fM,"useIsHydrated");var dM=Ll[" useSyncExternalStore ".trim().toString()];function hM(){return()=>{}}dS(hM,"subscribe");function mM(){return dM(hM,()=>!0,()=>!1)}dS(mM,"useIsHydratedModern");var PB=typeof dM=="function"?mM:fM,kB=Object.defineProperty,Jo=(e,t)=>kB(e,"name",{value:t,configurable:!0}),yx="rovingFocusGroup.onEntryFocus",IB={bubbles:!1,cancelable:!0},Dv="RovingFocusGroup",[U0,vM,zB]=tM(Dv),[LB,gM]=Vu(Dv,[zB]),OE={Vertical:"vertical",Horizontal:"horizontal"},UB={RTL:"rtl"},[$B,BB]=LB(Dv),HB=b.forwardRef(Jo(function(t,n){return f.jsx(U0.Provider,{scope:t.__scopeRovingFocusGroup,children:f.jsx(U0.Slot,{scope:t.__scopeRovingFocusGroup,children:f.jsx(FB,{...t,ref:n})})})},"RovingFocusGroup")),FB=b.forwardRef(Jo(function(t,n){const{__scopeRovingFocusGroup:r,orientation:l,loop:o=!1,dir:u,currentTabStopId:c,defaultCurrentTabStopId:h,onCurrentTabStopIdChange:m,onEntryFocus:v,preventScrollOnEntryFocus:p=!1,...x}=t,S=b.useRef(null),w=Kr(n,S),j=fS(u),[C,A]=Mv({prop:c,defaultProp:h??null,onChange:m,caller:Dv}),[N,O]=b.useState(!1),T=Ho(v),R=vM(r),E=b.useRef(!1),[D,k]=b.useState(0);return b.useEffect(()=>{const I=S.current;if(I)return I.addEventListener(yx,T),()=>I.removeEventListener(yx,T)},[T]),f.jsx($B,{scope:r,orientation:l,dir:j,loop:o,currentTabStopId:C,onItemFocus:b.useCallback(I=>A(I),[A]),onItemShiftTab:b.useCallback(()=>O(!0),[]),onFocusableItemAdd:b.useCallback(()=>k(I=>I+1),[]),onFocusableItemRemove:b.useCallback(()=>k(I=>I-1),[]),children:f.jsx(ln.div,{tabIndex:N||D===0?-1:0,"data-orientation":l,...x,ref:w,style:{outline:"none",...t.style},onMouseDown:$n(t.onMouseDown,()=>{E.current=!0}),onFocus:$n(t.onFocus,I=>{const P=!E.current;if(I.target===I.currentTarget&&P&&!N){const B=new CustomEvent(yx,IB);if(I.currentTarget.dispatchEvent(B),!B.defaultPrevented){const F=R().filter(ne=>ne.focusable),se=F.find(ne=>ne.active),ue=F.find(ne=>ne.id===C),G=[se,ue,...F].filter(Boolean).map(ne=>ne.ref.current);hS(G,p)}}E.current=!1}),onBlur:$n(t.onBlur,()=>O(!1))})})},"RovingFocusGroupImpl")),VB="RovingFocusGroupItem",GB=b.forwardRef(Jo(function(t,n){const{__scopeRovingFocusGroup:r,focusable:l=!0,active:o=!1,tabStopId:u,children:c,...h}=t,m=Yr(),v=u||m,p=BB(VB,r),x=p.currentTabStopId===v,S=vM(r),{onFocusableItemAdd:w,onFocusableItemRemove:j,currentTabStopId:C}=p,A=PB();return ja(()=>{if(!(!A||!l))return w(),()=>j()},[A,l,w,j]),b.useEffect(()=>{if(!(A||!l))return w(),()=>j()},[A,l,w,j]),f.jsx(U0.ItemSlot,{scope:r,id:v,focusable:l,active:o,children:f.jsx(ln.span,{tabIndex:x?0:-1,"data-orientation":p.orientation,...h,ref:n,onMouseDown:$n(t.onMouseDown,N=>{l?p.onItemFocus(v):N.preventDefault()}),onFocus:$n(t.onFocus,()=>p.onItemFocus(v)),onKeyDown:$n(t.onKeyDown,N=>{if(N.key==="Tab"&&N.shiftKey){p.onItemShiftTab();return}if(N.target!==N.currentTarget)return;const O=yM(N,p.orientation,p.dir);if(O!==void 0){if(N.metaKey||N.ctrlKey||N.altKey||N.shiftKey)return;N.preventDefault();let R=S().filter(E=>E.focusable).map(E=>E.ref.current);if(O==="last")R.reverse();else if(O==="prev"||O==="next"){O==="prev"&&R.reverse();const E=R.indexOf(N.currentTarget);R=p.loop?xM(R,E+1):R.slice(E+1)}setTimeout(()=>hS(R))}}),children:typeof c=="function"?c({isCurrentTabStop:x,hasTabStop:C!=null}):c})})},"RovingFocusGroupItem")),qB={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function pM(e,t){return t!==UB.RTL?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}Jo(pM,"getDirectionAwareKey");function yM(e,t,n){const r=pM(e.key,n);if(!(t===OE.Vertical&&["ArrowLeft","ArrowRight"].includes(r))&&!(t===OE.Horizontal&&["ArrowUp","ArrowDown"].includes(r)))return qB[r]}Jo(yM,"getFocusIntent");function hS(e,t=!1){const n=document.activeElement;for(const r of e)if(r===n||(r.focus({preventScroll:t}),document.activeElement!==n))return}Jo(hS,"focusFirst");function xM(e,t){return e.map((n,r)=>e[(t+r)%e.length])}Jo(xM,"wrapArray");var KB=Object.defineProperty,Ca=(e,t)=>KB(e,"name",{value:t,configurable:!0});function bM(e,t){return b.useReducer((n,r)=>t[n][r]??n,e)}Ca(bM,"useStateMachine");var Pv=Ca(e=>{const{present:t,children:n}=e,r=SM(t),l=typeof n=="function"?n({present:r.isPresent}):b.Children.only(n),o=wM(r.ref,jM(l));return typeof n=="function"||r.isPresent?b.cloneElement(l,{ref:o}):null},"Presence");function SM(e){const[t,n]=b.useState(),r=b.useRef(null),l=b.useRef(e),o=b.useRef("none"),u=b.useRef(void 0),c=e?"mounted":"unmounted",[h,m]=bM(c,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return b.useEffect(()=>{h==="mounted"?(o.current=u.current??ou(r.current),u.current=void 0):o.current="none"},[h]),ja(()=>{const v=r.current,p=l.current;if(p!==e){const S=o.current,w=ou(v);e?(u.current=w,m("MOUNT")):w==="none"||(v==null?void 0:v.display)==="none"?m("UNMOUNT"):m(p&&S!==w?"ANIMATION_OUT":"UNMOUNT"),l.current=e}},[e,m]),ja(()=>{if(t){let v;const p=t.ownerDocument.defaultView??window,x=Ca(w=>{const C=ou(r.current).includes(CSS.escape(w.animationName));if(w.target===t&&C&&(m("ANIMATION_END"),!l.current)){const A=t.style.animationFillMode;t.style.animationFillMode="forwards",v=p.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=A)})}},"handleAnimationEnd"),S=Ca(w=>{w.target===t&&(o.current=ou(r.current))},"handleAnimationStart");return t.addEventListener("animationstart",S),t.addEventListener("animationcancel",x),t.addEventListener("animationend",x),()=>{p.clearTimeout(v),t.removeEventListener("animationstart",S),t.removeEventListener("animationcancel",x),t.removeEventListener("animationend",x)}}else m("ANIMATION_END")},[t,m]),{isPresent:["mounted","unmountSuspended"].includes(h),ref:b.useCallback(v=>{if(v){const p=getComputedStyle(v);r.current=p,u.current=ou(p)}else r.current=null;n(v)},[])}}Ca(SM,"usePresence");function $0(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}Ca($0,"setRef");function wM(...e){const t=b.useRef(e);return t.current=e,b.useCallback(n=>{const r=t.current;let l=!1;const o=r.map(u=>{const c=$0(u,n);return!l&&typeof c=="function"&&(l=!0),c});if(l)return()=>{for(let u=0;uYB(e,"name",{value:t,configurable:!0}),CM={Automatic:"automatic",Manual:"manual"},mS="Tabs",[XB,Rse]=Vu(mS,[gM]),_M=gM(),[QB,vS]=XB(mS),ZB=b.forwardRef(Gu(function(t,n){const{__scopeTabs:r,value:l,onValueChange:o,defaultValue:u,orientation:c="horizontal",dir:h,activationMode:m=CM.Automatic,...v}=t,p=fS(h),[x,S]=Mv({prop:l,onChange:o,defaultProp:u??"",caller:mS});return f.jsx(QB,{scope:r,baseId:Yr(),value:x,onValueChange:S,orientation:c,dir:p,activationMode:m,children:f.jsx(ln.div,{dir:p,"data-orientation":c,...v,ref:n})})},"Tabs")),WB="TabsList",AM=b.forwardRef(Gu(function(t,n){const{__scopeTabs:r,loop:l=!0,...o}=t,u=vS(WB,r),c=_M(r);return f.jsx(HB,{asChild:!0,...c,orientation:u.orientation,dir:u.dir,loop:l,children:f.jsx(ln.div,{role:"tablist","aria-orientation":u.orientation,...o,ref:n})})},"TabsList")),JB="TabsTrigger",EM=b.forwardRef(Gu(function(t,n){const{__scopeTabs:r,value:l,disabled:o=!1,...u}=t,c=vS(JB,r),h=_M(r),m=gS(c.baseId,l),v=pS(c.baseId,l),p=l===c.value;return f.jsx(GB,{asChild:!0,...h,focusable:!o,active:p,children:f.jsx(ln.button,{type:"button",role:"tab","aria-selected":p,"aria-controls":v,"data-state":p?"active":"inactive","data-disabled":o?"":void 0,disabled:o,id:m,...u,ref:n,onMouseDown:$n(t.onMouseDown,x=>{!o&&x.button===0&&x.ctrlKey===!1?(x.currentTarget.focus(),c.onValueChange(l)):x.preventDefault()}),onKeyDown:$n(t.onKeyDown,x=>{o||x.target!==x.currentTarget||[" ","Enter"].includes(x.key)&&c.onValueChange(l)}),onFocus:$n(t.onFocus,()=>{const x=c.activationMode!==CM.Manual;!p&&!o&&x&&c.onValueChange(l)})})})},"TabsTrigger")),e6="TabsContent",OM=b.forwardRef(Gu(function(t,n){const{__scopeTabs:r,value:l,forceMount:o,children:u,...c}=t,h=vS(e6,r),m=gS(h.baseId,l),v=pS(h.baseId,l),p=l===h.value,x=b.useRef(p);return b.useEffect(()=>{const S=requestAnimationFrame(()=>x.current=!1);return()=>cancelAnimationFrame(S)},[]),f.jsx(Pv,{present:o||p,children:({present:S})=>f.jsx(ln.div,{"data-state":p?"active":"inactive","data-orientation":h.orientation,role:"tabpanel","aria-labelledby":m,hidden:!S,id:v,tabIndex:0,...c,ref:n,style:{...t.style,animationDuration:x.current?"0s":void 0},children:S&&u})})},"TabsContent"));function gS(e,t){return`${e}-trigger-${t}`}Gu(gS,"makeTriggerId");function pS(e,t){return`${e}-content-${t}`}Gu(pS,"makeContentId");const t6=ZB,NM=b.forwardRef(({className:e,...t},n)=>f.jsx(AM,{ref:n,className:Wt("inline-flex h-auto flex-wrap gap-1 rounded-lg bg-secondary p-1 text-muted-foreground",e),...t}));NM.displayName=AM.displayName;const wt=b.forwardRef(({className:e,...t},n)=>f.jsx(EM,{ref:n,className:Wt("inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-2 text-sm font-medium text-zinc-200 transition-all hover:bg-zinc-800/80 hover:text-zinc-50 data-[state=active]:bg-[#f5b700] data-[state=active]:text-[#1a1400] data-[state=active]:shadow data-[state=inactive]:bg-transparent data-[state=inactive]:text-zinc-200 data-[state=inactive]:shadow-none",e),...t}));wt.displayName=EM.displayName;const bt=b.forwardRef(({className:e,...t},n)=>f.jsx(OM,{ref:n,className:Wt("mt-4 focus-visible:outline-none",e),...t}));bt.displayName=OM.displayName;const n6=aS("relative w-full rounded-lg border px-3 py-2 text-sm",{variants:{variant:{default:"border-border bg-secondary text-foreground",destructive:"border-destructive/50 bg-red-950/40 text-red-200",warn:"border-primary/40 bg-amber-950/30 text-amber-100",success:"border-emerald-700/50 bg-emerald-950/30 text-emerald-100"}},defaultVariants:{variant:"default"}});function Bt({className:e,variant:t,...n}){return f.jsx("div",{role:"alert",className:Wt(n6({variant:t}),e),...n})}function ft(e){const t=document.getElementById("toast");t&&(t.textContent=e,t.style.display="block",window.clearTimeout(t._t),t._t=window.setTimeout(()=>{t.style.display="none"},2200))}function NE(){return f.jsx("div",{id:"toast",className:"fixed bottom-6 left-1/2 z-50 hidden max-w-md -translate-x-1/2 rounded-md bg-primary px-4 py-2 text-center font-bold text-zinc-950"})}function ko({value:e}){return e?f.jsx(he,{type:"button",size:"sm",variant:"secondary",className:"ml-1 h-7 px-2 text-xs",onClick:()=>void navigator.clipboard.writeText(e).then(()=>ft("Скопировано")),children:"Копировать"}):null}function r6({a:e}){return f.jsx(Bt,{variant:e.level==="bad"?"destructive":"warn",children:e.accountId?f.jsx("a",{className:"underline underline-offset-2 hover:opacity-90",href:"/admin/?id="+encodeURIComponent(e.accountId),children:e.text}):e.text})}function TM({flash:e}){return e?e.error?f.jsx(Bt,{variant:"destructive",children:e.error}):e.code?f.jsxs(Bt,{variant:"success",children:["Код: ",f.jsx("code",{className:"font-mono tracking-wider",children:e.code})," ",f.jsx(ko,{value:e.code})]}):e.promo?f.jsxs(Bt,{variant:"success",children:["Промо: ",f.jsx("code",{className:"font-mono",children:e.promo})," ",f.jsx(ko,{value:e.promo})]}):e.text?f.jsx(Bt,{children:e.text}):null:null}function an({className:e}){return f.jsx("div",{className:"animate-pulse rounded-md bg-zinc-800 "+(e||"h-8 w-full")})}function i6(){return f.jsxs("main",{className:"mx-auto w-full max-w-5xl space-y-4 px-4 py-8",children:[f.jsx(an,{className:"h-10 w-48"}),f.jsxs("div",{className:"grid grid-cols-2 gap-3 md:grid-cols-4",children:[f.jsx(an,{className:"h-20"}),f.jsx(an,{className:"h-20"}),f.jsx(an,{className:"h-20"}),f.jsx(an,{className:"h-20"})]}),f.jsx(an,{className:"h-40"})]})}function a6({className:e}){return f.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 100 100",className:e,"aria-hidden":"true",children:[f.jsx("rect",{x:"0",y:"0",width:"100",height:"100",rx:"20",fill:"#181B22"}),f.jsxs("g",{transform:"translate(9 9) scale(0.82)",children:[f.jsx("rect",{x:"14",y:"22",width:"72",height:"56",rx:"10",fill:"none",stroke:"#F5B700",strokeWidth:"7"}),f.jsx("path",{d:"M44 41 L59 50 L44 59 Z",fill:"#E8EAF0",stroke:"#E8EAF0",strokeWidth:"4",strokeLinejoin:"round"})]})]})}function RM(){return f.jsxs("div",{className:"flex items-center gap-3",children:[f.jsx(a6,{className:"h-10 w-10 shrink-0"}),f.jsx("h1",{className:"text-2xl font-bold leading-none",children:"OMP Billing"})]})}function MM({status:e}){return e==="expired"?f.jsx(Oe,{variant:"bad",children:"истекла"}):e==="grace"?f.jsx(Oe,{variant:"warn",children:"льготный период"}):e==="expiring"?f.jsx(Oe,{variant:"warn",children:"истекает"}):e==="soon"?f.jsx(Oe,{variant:"warn",children:"до 7 дней"}):e==="unbound"?f.jsx(Oe,{variant:"secondary",children:"без устройства"}):f.jsx(Oe,{variant:"ok",children:"активна"})}function l6({bound:e,limit:t,over:n}){const r=n||e>t;return f.jsxs("span",{className:r?"font-medium text-amber-200":"",children:[e,"/",t,r?" · сверх лимита":""]})}function kv({page:e,pages:t,total:n,onPage:r}){return n===0?null:f.jsxs("div",{className:"mt-3 flex flex-wrap items-center justify-between gap-2 text-sm text-muted-foreground",children:[f.jsxs("span",{children:[n," · стр. ",e," из ",t]}),f.jsxs("div",{className:"flex gap-2",children:[f.jsx(he,{type:"button",size:"sm",variant:"secondary",disabled:e<=1,onClick:()=>r(e-1),children:"Назад"}),f.jsx(he,{type:"button",size:"sm",variant:"secondary",disabled:e>=t,onClick:()=>r(e+1),children:"Дальше"})]})]})}function TE({rows:e,field:t,label:n}){var l,o;const r=Math.max(1,...e.map(u=>u[t]));return f.jsxs("div",{children:[f.jsx("div",{className:"mb-2 text-sm text-muted-foreground",children:n}),f.jsx("div",{className:"flex h-36 items-end gap-px overflow-x-auto",children:e.map(u=>f.jsx("div",{title:u.day+": "+u[t],className:"flex h-full min-w-[6px] flex-1 flex-col justify-end",children:f.jsx("div",{className:"w-full rounded-sm bg-[#f5b700]",style:{height:Math.max(2,Math.round(u[t]/r*128))+"px"}})},u.day))}),f.jsxs("div",{className:"mt-1 flex justify-between text-xs text-muted-foreground",children:[f.jsx("span",{children:((l=e[0])==null?void 0:l.day)||""}),f.jsx("span",{children:((o=e[e.length-1])==null?void 0:o.day)||""})]})]})}async function ot(e,t){const n=await fetch(e,{credentials:"same-origin",headers:{Accept:"application/json",...(t==null?void 0:t.headers)||{}},...t}),l=(n.headers.get("content-type")||"").includes("json")?await n.json():{ok:n.ok,status:n.status};return n.status===401?{...l,auth:!1}:l}async function Qt(e,t,n){return ot(e,{method:"POST",headers:{"content-type":"application/json",Accept:"application/json"},body:JSON.stringify({csrf:t,...n})})}function o6(){const[e,t]=b.useState(!1),[n,r]=b.useState(""),[l,o]=b.useState(null),[u,c]=b.useState("");b.useEffect(()=>{if(!(l!=null&&l.token))return;let m=!1;const v=async()=>{const x=await ot("/admin/login/telegram/status?token="+encodeURIComponent(l.token));if(!m){if(x.status==="ok"||x.ok){location.href="/admin/";return}if(x.status==="denied"){r("Этот Telegram не входит в список администраторов"),o(null),c("");return}if(x.status==="expired"){r("Ссылка устарела - нажмите «Войти через Telegram» ещё раз"),o(null),c("");return}c("Ожидаю подтверждение в Telegram…")}};v();const p=window.setInterval(()=>void v(),2e3);return()=>{m=!0,window.clearInterval(p)}},[l==null?void 0:l.token]);async function h(){t(!0),r(""),c("");const m=await ot("/admin/login/telegram",{method:"POST",headers:{"content-type":"application/json",Accept:"application/json"},body:"{}"});if(t(!1),m.status===403){r("Панель ещё не перезапущена - сервер не знает вход через Telegram.");return}if(!m.ok||!m.token||!m.deepLink){r(m.error||"Не удалось начать вход через Telegram");return}o({token:m.token,deepLink:m.deepLink}),window.open(m.deepLink,"_blank","noopener,noreferrer")}return f.jsx("main",{className:"flex min-h-screen items-center justify-center px-4 py-10",children:f.jsxs("div",{className:"w-full max-w-sm",children:[f.jsxs("div",{className:"mb-6 text-center",children:[f.jsx("div",{className:"flex justify-center",children:f.jsx(RM,{})}),f.jsx("p",{className:"mt-3 text-sm text-muted-foreground",children:"Вход только через Telegram"})]}),n?f.jsx(Bt,{variant:"destructive",className:"mb-4",children:n}):null,u?f.jsx(Bt,{className:"mb-4",children:u}):null,f.jsx(ye,{children:f.jsxs(xe,{className:"space-y-4 pt-6",children:[f.jsx(he,{className:"w-full",disabled:e,onClick:()=>void h(),children:e&&!l?"…":"Войти через Telegram"}),l!=null&&l.deepLink?f.jsxs("p",{className:"text-sm text-muted-foreground",children:["Если бот не открылся:"," ",f.jsx("a",{className:"underline",href:l.deepLink,target:"_blank",rel:"noreferrer",children:"открыть ссылку"})]}):null]})})]})})}const yS=b.forwardRef(({className:e,...t},n)=>f.jsx("textarea",{className:Wt("flex min-h-[80px] w-full rounded-md border border-input bg-secondary px-3 py-2 text-sm text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",e),ref:n,...t}));yS.displayName="Textarea";function s6(e,t){return!t||t==="all"?!0:t==="week"?e.status==="soon"||e.status==="expiring":t==="active"?!!e.active:t==="unbound"?!!e.active&&!(Number(e.bound)>0):e.status===t}function u6(e,t,n=""){return e&&t.includes(e)||n&&e===n?e:t[0]||""}function c6(e){const t=new Map;for(const r of e||[]){const l=r&&r.accountId;if(!l)continue;const o=t.get(l);(!o||(r.paidUntil||0)>(o.paidUntil||0))&&t.set(l,r)}const n=[];for(const r of t.values())(r.status==="soon"||r.status==="expiring")&&r.telegramId&&n.push(r);return n}const f6="Europe/Moscow",d6="МСК",DM=["января","февраля","марта","апреля","мая","июня","июля","августа","сентября","октября","ноября","декабря"];function _r(e){return(e<10?"0":"")+e}function Zf(e){const t=new Intl.DateTimeFormat("en-US",{timeZone:f6,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",hourCycle:"h23"}),n={};for(const l of t.formatToParts(new Date(e)))l.type!=="literal"&&(n[l.type]=l.value);let r=Number(n.hour);return r===24&&(r=0),{year:Number(n.year),month:Number(n.month),day:Number(n.day),hour:r,minute:Number(n.minute),second:Number(n.second)}}function B0(e){const t=Zf(e);return t.year+"-"+_r(t.month)+"-"+_r(t.day)}function h6(e,t){const[n,r,l]=e.split("-").map(Number),o=new Date(Date.UTC(n,r-1,l+t));return o.getUTCFullYear()+"-"+_r(o.getUTCMonth()+1)+"-"+_r(o.getUTCDate())}function m6(e){const t=Zf(e);return _r(t.hour)+":"+_r(t.minute)}function Fo(e){const t=Zf(e);return _r(t.day)+"."+_r(t.month)+"."+t.year+" "+_r(t.hour)+":"+_r(t.minute)}function v6(e){const t=Zf(e);return t.day+" "+DM[t.month-1]+" "+t.year+", "+_r(t.hour)+":"+_r(t.minute)+":"+_r(t.second)+" "+d6}function g6(e,t=Date.now()){const n=B0(e),r=B0(t);if(n===r)return"Сегодня";if(n===h6(r,-1))return"Вчера";const l=Zf(e);return l.day+" "+DM[l.month-1]+" "+l.year}function p6(e,t=Date.now()){const n=[];for(const r of e){const l=r.at||0,o=l>0?B0(l):"none",u=l>0?g6(l,t):"Без даты",c=n[n.length-1];c&&c.key===o?c.items.push(r):n.push({key:o,title:u,items:[r]})}return n}function dt({ms:e,variant:t="datetime",toggle:n=!0}){const[r,l]=b.useState(!1);if(!e)return f.jsx("span",{className:"text-muted-foreground",children:"-"});const o=v6(e),u=t==="time"?m6(e):Fo(e)+" МСК",c=r&&n?o:u;return n?f.jsx("button",{type:"button",className:"inline whitespace-nowrap rounded-sm text-left underline-offset-2 hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",title:o,"aria-label":o,onClick:h=>{h.stopPropagation(),l(m=>!m)},children:f.jsx("time",{dateTime:new Date(e).toISOString(),children:c})}):f.jsx("time",{dateTime:new Date(e).toISOString(),title:o,className:"whitespace-nowrap",children:u})}function zi(e){return e?Fo(e)+" МСК":""}const y6={user:"пользователь",device:"устройство",admin:"админ",system:"система"};function xS(e,t){const n=(t==null?void 0:t.deviceId)||"",r=(t==null?void 0:t.fallback)||"система";if(!e||!e.kind)return n?"устройство · "+n.slice(0,8):r;const l=y6[e.kind]||e.kind,o=e.label?" · "+e.label:"";let u=l+o;const c=n.slice(0,8);return e.kind==="user"&&c&&u.indexOf(c)<0&&(u+=" · устройство "+c),u}function H0(e,t,n){const r=t?"@"+t.replace(/^@/,""):n||"";return r&&e?r+" · "+e:r||e}const x6={pay:"оплата",promo:"промо",activate:"активация",fail:"отказ",admin:"админ",device:"устройство"},b6={bad_code:"неверный код",expired:"подписка истекла",other_device:"чужое устройство",device_limit:"лимит устройств"},S6={grant:"выдача дней",promo_create:"создание промо",bulk_promo:"пакет промо",bulk_issue:"пакет кодов",issue:"выдача кода",login:"вход",login_fail:"неудачный вход",login_cli:"аварийная ссылка",login_telegram_start:"вход через Telegram",logout:"выход",message:"сообщение",support_reply:"ответ поддержки",support_close:"закрытие диалога",unbind:"сброс устройства",settings_save:"сохранение настроек",services_save:"сохранение сервисов",monitor_run:"проверка мониторинга",monitor_config:"интервал мониторинга",password_change:"смена пароля",session_revoke:"завершение сессии",code_reveal:"показ кода",device_revoke:"отзыв устройства",device_clone:"отключение клона",limit_set:"смена лимита устройств",bonus_grant:"выдача бонусных устройств",bonus_remove:"снятие бонусных устройств",days_subtract:"убавление дней",payment_confirm:"подтверждение платежа",payment_reject:"отклонение платежа",swaps_reset:"сброс счётчика смен",ads_config:"настройки рекламы",ads_banner_add:"новый баннер",ads_banner_save:"изменение баннера",ads_banner_remove:"удаление баннера"},w6={bad_label:"неверная метка",duplicate:"повтор уведомления",amount:"неверная сумма",bad_signature:"неверная подпись",ignored:"игнорирован",webhook:"уведомление",no_account:"нет аккаунта",no_subscription:"нет подписки",unaccepted:"ждёт подтверждения",rejected:"отклонён",refunded:"возврат звёзд"},j6={new:"новая подписка",sub:"продление",dev:"доп. устройство"};function C6(e,t){const n=e&&j6[e]||"метка не найдена";return t?n+" · "+t+" ₽":n}function _6(e){return x6[e]||e}function A6(e){return b6[e]||e||"неизвестно"}function E6(e){return S6[e]||e}function PM(e){return w6[e]||e||"проблема"}function kM(e){return e&&e.provider==="stars"?"Звёзды":e&&e.provider==="crypto"?"Крипта"+(e.asset?" "+e.asset:""):"ЮMoney"}function O6(e){return!e||e==="down"?"недоступен":e==="timeout"?"таймаут":e.indexOf("http_")===0?"ошибка HTTP "+e.slice(5):e}function IM(e,t){const n=u=>'"'+String(u??"").replace(/"/g,'""')+'"',r=t.map(u=>u.map(c=>n(c)).join(",")).join(` +`+d.stack}}var Dg=Object.prototype.hasOwnProperty,Pg=e.unstable_scheduleCallback,kg=e.unstable_cancelCallback,jL=e.unstable_shouldYield,CL=e.unstable_requestPaint,dr=e.unstable_now,_L=e.unstable_getCurrentPriorityLevel,Nw=e.unstable_ImmediatePriority,Tw=e.unstable_UserBlockingPriority,Sd=e.unstable_NormalPriority,EL=e.unstable_LowPriority,Rw=e.unstable_IdlePriority,AL=e.log,OL=e.unstable_setDisableYieldValue,oc=null,hr=null;function Ba(i){if(typeof AL=="function"&&OL(i),hr&&typeof hr.setStrictMode=="function")try{hr.setStrictMode(oc,i)}catch{}}var mr=Math.clz32?Math.clz32:RL,NL=Math.log,TL=Math.LN2;function RL(i){return i>>>=0,i===0?32:31-(NL(i)/TL|0)|0}var wd=256,jd=262144,Cd=4194304;function Fl(i){var a=i&42;if(a!==0)return a;switch(i&-i){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 i&-i;case 262144:case 524288:case 1048576:case 2097152:return i&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return i&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return i}}function _d(i,a,s){var d=i.pendingLanes;if(d===0)return 0;var p=0,y=i.suspendedLanes,_=i.pingedLanes;i=i.warmLanes;var M=d&134217727;return M!==0?(d=M&~y,d!==0?p=Fl(d):(_&=M,_!==0?p=Fl(_):s||(s=M&~i,s!==0&&(p=Fl(s))))):(M=d&~y,M!==0?p=Fl(M):_!==0?p=Fl(_):s||(s=d&~i,s!==0&&(p=Fl(s)))),p===0?0:a!==0&&a!==p&&(a&y)===0&&(y=p&-p,s=a&-a,y>=s||y===32&&(s&4194048)!==0)?a:p}function sc(i,a){return(i.pendingLanes&~(i.suspendedLanes&~i.pingedLanes)&a)===0}function Mw(i,a){(a&8)!==0&&(a|=a&32);var s=i.entangledLanes;if(s!==0)for(i=i.entanglements,s&=a;0s;s++)a.push(i);return a}function uc(i,a){i.pendingLanes|=a,a!==268435456&&(i.suspendedLanes=0,i.pingedLanes=0,i.warmLanes=0)}function DL(i,a,s,d,p,y){var _=i.pendingLanes;i.pendingLanes=s,i.suspendedLanes=0,i.pingedLanes=0,i.warmLanes=0,i.expiredLanes&=s,i.entangledLanes&=s,i.errorRecoveryDisabledLanes&=s,i.shellSuspendCounter=0;var M=i.entanglements,L=i.expirationTimes,K=i.hiddenUpdates;for(s=_&~s;0"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),qg=!1;if(Xi)try{var hc={};Object.defineProperty(hc,"passive",{get:function(){qg=!0}}),window.addEventListener("test",hc,hc),window.removeEventListener("test",hc,hc)}catch{qg=!1}var Ha=null,Kg=null,Rd=null;function nj(){if(Rd)return Rd;var i,a=Kg,s=a.length,d,p="value"in Ha?Ha.value:Ha.textContent,y=p.length;for(i=0;i=gc),sj=" ",uj=!1;function cj(i,a){switch(i){case"keyup":return v4.indexOf(a.keyCode)!==-1;case"keydown":return a.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function fj(i){return i=i.detail,typeof i=="object"&&"data"in i?i.data:null}var ms=!1;function p4(i,a){switch(i){case"compositionend":return fj(a);case"keypress":return a.which!==32?null:(uj=!0,sj);case"textInput":return i=a.data,i===sj&&uj?null:i;default:return null}}function y4(i,a){if(ms)return i==="compositionend"||!Wg&&cj(i,a)?(i=nj(),Rd=Kg=Ha=null,ms=!1,i):null;switch(i){case"paste":return null;case"keypress":if(!(a.ctrlKey||a.altKey||a.metaKey)||a.ctrlKey&&a.altKey){if(a.char&&1"u")return null;try{return i.activeElement||i.body}catch{return i.body}}function xj(i){for(;i&&i.firstChild;)i=i.firstChild;return i}function bj(i,a){var s=xj(i);i=0;for(var d;s;){if(s.nodeType===3){if(d=i+s.textContent.length,i<=a&&d>=a)return{node:s,offset:a-i};i=d}e:{for(;s;){if(s.nextSibling){s=s.nextSibling;break e}s=s.parentNode}s=void 0}s=xj(s)}}function Sj(i,a){return i&&a?i===a?!0:i&&i.nodeType===3?!1:a&&a.nodeType===3?Sj(i,a.parentNode):"contains"in i?i.contains(a):i.compareDocumentPosition?!!(i.compareDocumentPosition(a)&16):!1:!1}function wj(i){i=i!=null&&i.ownerDocument!=null&&i.ownerDocument.defaultView!=null?i.ownerDocument.defaultView:window;for(var a=tp(i.document);a instanceof i.HTMLIFrameElement;){try{var s=typeof a.contentWindow.location.href=="string"}catch{s=!1}if(s)i=a.contentWindow;else break;a=tp(i.document)}return a}function np(i){var a=i&&i.nodeName&&i.nodeName.toLowerCase();return a&&(a==="input"&&(i.type==="text"||i.type==="search"||i.type==="tel"||i.type==="url"||i.type==="password")||a==="textarea"||i.contentEditable==="true")}var E4=Xi&&"documentMode"in document&&11>=document.documentMode,vs=null,rp=null,bc=null,ip=!1;function jj(i,a,s){var d=s.window===s?s.document:s.nodeType===9?s:s.ownerDocument;ip||vs==null||vs!==tp(d)||(d=vs,"selectionStart"in d&&np(d)?d={start:d.selectionStart,end:d.selectionEnd}:(d=(d.ownerDocument&&d.ownerDocument.defaultView||window).getSelection(),d={anchorNode:d.anchorNode,anchorOffset:d.anchorOffset,focusNode:d.focusNode,focusOffset:d.focusOffset}),bc&&xc(bc,d)||(bc=d,d=Ih(rp,"onSelect"),0>=_,p-=_,vi=1<<32-mr(a)+p|s<ze?(Yt=Me,Me=null):Yt=Me.sibling;var tt=V(q,Me,X[ze],re);if(tt===null){Me===null&&(Me=Yt);break}i&&Me&&tt.alternate===null&&a(q,Me),H=y(tt,H,ze),Ze===null?we=tt:Ze.sibling=tt,Ze=tt,Me=Yt}if(ze===X.length)return s(q,Me),Ve&&Ji(q,ze),we;if(Me===null){for(;zeze?(Yt=Me,Me=null):Yt=Me.sibling;var hl=V(q,Me,tt.value,re);if(hl===null){Me===null&&(Me=Yt);break}i&&Me&&hl.alternate===null&&a(q,Me),H=y(hl,H,ze),Ze===null?we=hl:Ze.sibling=hl,Ze=hl,Me=Yt}if(tt.done)return s(q,Me),Ve&&Ji(q,ze),we;if(Me===null){for(;!tt.done;ze++,tt=X.next())tt=ae(q,tt.value,re),tt!==null&&(H=y(tt,H,ze),Ze===null?we=tt:Ze.sibling=tt,Ze=tt);return Ve&&Ji(q,ze),we}for(Me=d(Me);!tt.done;ze++,tt=X.next())tt=Q(Me,q,ze,tt.value,re),tt!==null&&(i&&(Yt=tt.alternate,Yt!==null&&Me.delete(Yt.key===null?ze:Yt.key)),H=y(tt,H,ze),Ze===null?we=tt:Ze.sibling=tt,Ze=tt);return i&&Me.forEach(function(p$){return a(q,p$)}),Ve&&Ji(q,ze),we}function Fe(q,H,X,re){if(typeof X=="object"&&X!==null&&X.type===B&&X.key===null&&X.props.ref===void 0&&(X=X.props.children),typeof X=="object"&&X!==null){switch(X.$$typeof){case I:e:{for(var we=X.key;H!==null;){if(H.key===we){if(we=X.type,we===B){if(H.tag===7){s(q,H.sibling),re=p(H,X.props.children),Ya(re,X),re.return=q,q=re;break e}}else if(H.elementType===we||typeof we=="object"&&we!==null&&we.$$typeof===U&&no(we)===H.type){s(q,H.sibling),re=p(H,X.props),Ya(re,X),re.return=q,q=re;break e}s(q,H);break}else a(q,H);H=H.sibling}X.type===B?(re=Xl(X.props.children,q.mode,re,X.key),Ya(re,X),re.return=q,q=re):(re=Bd(X.type,X.key,X.props,null,q.mode,re),Ya(re,X),re.return=q,q=re)}return _(q);case P:e:{for(we=X.key;H!==null;){if(H.key===we)if(H.tag===4&&H.stateNode.containerInfo===X.containerInfo&&H.stateNode.implementation===X.implementation){s(q,H.sibling),re=p(H,X.children||[]),re.return=q,q=re;break e}else{s(q,H);break}else a(q,H);H=H.sibling}re=fp(X,q.mode,re),re.return=q,q=re}return _(q);case U:return X=no(X),Fe(q,H,X,re)}if(ge(X))return pe(q,H,X,re);if(fe(X)){if(we=fe(X),typeof we!="function")throw Error(r(150));return X=we.call(X),Ee(q,H,X,re)}if(typeof X.then=="function")return Fe(q,H,Zd(X),re);if(X.$$typeof===de)return Fe(q,H,Kd(q,X),re);Wd(q,X)}return typeof X=="string"&&X!==""||typeof X=="number"||typeof X=="bigint"?(X=""+X,H!==null&&H.tag===6?(s(q,H.sibling),re=p(H,X),re.return=q,q=re):(s(q,H),re=cp(X,q.mode,re),re.return=q,q=re),_(q)):s(q,H)}return function(q,H,X,re){try{Ec=0;var we=Fe(q,H,X,re);return Cs=null,we}catch(Me){if(Me===js||Me===Xd)throw Me;var Ze=nr(29,Me,null,q.mode);return Ze.lanes=re,Ze.return=q,Ze}finally{}}}var io=Kj(!0),Yj=Kj(!1),Xa=!1;function Sp(i){i.updateQueue={baseState:i.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function wp(i,a){i=i.updateQueue,a.updateQueue===i&&(a.updateQueue={baseState:i.baseState,firstBaseUpdate:i.firstBaseUpdate,lastBaseUpdate:i.lastBaseUpdate,shared:i.shared,callbacks:null})}function Qa(i){return{lane:i,tag:0,payload:null,callback:null,next:null}}function Za(i,a,s){var d=i.updateQueue;if(d===null)return null;if(d=d.shared,(ot&2)!==0){var p=d.pending;return p===null?a.next=a:(a.next=p.next,p.next=a),d.pending=a,a=$d(i),Rj(i,null,s),a}return Ud(i,d,a,s),$d(i)}function Ac(i,a,s){if(a=a.updateQueue,a!==null&&(a=a.shared,(s&4194048)!==0)){var d=a.lanes;d&=i.pendingLanes,s|=d,a.lanes=s,kw(i,s)}}function jp(i,a){var s=i.updateQueue,d=i.alternate;if(d!==null&&(d=d.updateQueue,s===d)){var p=null,y=null;if(s=s.firstBaseUpdate,s!==null){do{var _={lane:s.lane,tag:s.tag,payload:s.payload,callback:null,next:null};y===null?p=y=_:y=y.next=_,s=s.next}while(s!==null);y===null?p=y=a:y=y.next=a}else p=y=a;s={baseState:d.baseState,firstBaseUpdate:p,lastBaseUpdate:y,shared:d.shared,callbacks:d.callbacks},i.updateQueue=s;return}i=s.lastBaseUpdate,i===null?s.firstBaseUpdate=a:i.next=a,s.lastBaseUpdate=a}var Cp=!1;function Oc(){if(Cp){var i=ws;if(i!==null)throw i}}function Nc(i,a,s,d){Cp=!1;var p=i.updateQueue;Xa=!1;var y=p.firstBaseUpdate,_=p.lastBaseUpdate,M=p.shared.pending;if(M!==null){p.shared.pending=null;var L=M,K=L.next;L.next=null,_===null?y=K:_.next=K,_=L;var Z=i.alternate;Z!==null&&(Z=Z.updateQueue,M=Z.lastBaseUpdate,M!==_&&(M===null?Z.firstBaseUpdate=K:M.next=K,Z.lastBaseUpdate=L))}if(y!==null){var ae=p.baseState;_=0,Z=K=L=null,M=y;do{var V=M.lane&-536870913,Q=V!==M.lane;if(Q?(Qe&V)===V:(d&V)===V){V!==0&&V===eo&&(Cp=!0),Z!==null&&(Z=Z.next={lane:0,tag:M.tag,payload:M.payload,callback:null,next:null});e:{var pe=i,Ee=M;V=a;var Fe=s;switch(Ee.tag){case 1:if(pe=Ee.payload,typeof pe=="function"){ae=pe.call(Fe,ae,V);break e}ae=pe;break e;case 3:pe.flags=pe.flags&-65537|128;case 0:if(pe=Ee.payload,V=typeof pe=="function"?pe.call(Fe,ae,V):pe,V==null)break e;ae=D({},ae,V);break e;case 2:Xa=!0}}V=M.callback,V!==null&&(i.flags|=64,Q&&(i.flags|=8192),Q=p.callbacks,Q===null?p.callbacks=[V]:Q.push(V))}else Q={lane:V,tag:M.tag,payload:M.payload,callback:M.callback,next:null},Z===null?(K=Z=Q,L=ae):Z=Z.next=Q,_|=V;if(M=M.next,M===null){if(M=p.shared.pending,M===null)break;Q=M,M=Q.next,Q.next=null,p.lastBaseUpdate=Q,p.shared.pending=null}}while(!0);Z===null&&(L=ae),p.baseState=L,p.firstBaseUpdate=K,p.lastBaseUpdate=Z,y===null&&(p.shared.lanes=0),il|=_,i.lanes=_,i.memoizedState=ae}}function Xj(i,a){if(typeof i!="function")throw Error(r(191,i));i.call(a)}function Qj(i,a){var s=i.callbacks;if(s!==null)for(i.callbacks=null,i=0;iy?y:8;var _=oe.T,M={};M.types=_!==null?_.types:null,oe.T=M,Vp(i,!1,a,s);try{var L=p(),K=oe.S;if(K!==null&&K(M,L),L!==null&&typeof L=="object"&&typeof L.then=="function"){var Z=z4(L,d);Dc(i,a,Z,Sr(i))}else Dc(i,a,d,Sr(i))}catch(ae){Dc(i,a,{then:function(){},status:"rejected",reason:ae},Sr())}finally{J.p=y,_!==null&&M.types!==null&&(_.types=M.types),oe.T=_}}function F4(){}function Hp(i,a,s,d){if(i.tag!==5)throw Error(r(476));var p=OC(i).queue;AC(i,p,a,ct,s===null?F4:function(){return NC(i),s(d)})}function OC(i){var a=i.memoizedState;if(a!==null)return a;a={memoizedState:ct,baseState:ct,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:ra,lastRenderedState:ct},next:null};var s={};return a.next={memoizedState:s,baseState:s,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:ra,lastRenderedState:s},next:null},i.memoizedState=a,i=i.alternate,i!==null&&(i.memoizedState=a),a}function NC(i){var a=OC(i);a.next===null&&(a=i.alternate.memoizedState),Dc(i,a.next.queue,{},Sr())}function Fp(){return jn(qs)}function TC(){return Ht().memoizedState}function RC(){return Ht().memoizedState}function V4(i){for(var a=i.return;a!==null;){switch(a.tag){case 24:case 3:var s=Sr();i=Qa(s);var d=Za(a,i,s);d!==null&&(lr(d,a,s),Ac(d,a,s)),a={cache:pp()},i.payload=a;return}a=a.return}}function G4(i,a,s){var d=Sr();s={lane:d,revertLane:0,gesture:null,action:s,hasEagerState:!1,eagerState:null,next:null},sh(i)?DC(a,s):(s=sp(i,a,s,d),s!==null&&(lr(s,i,d),PC(s,a,d)))}function MC(i,a,s){var d=Sr();Dc(i,a,s,d)}function Dc(i,a,s,d){var p={lane:d,revertLane:0,gesture:null,action:s,hasEagerState:!1,eagerState:null,next:null};if(sh(i))DC(a,p);else{var y=i.alternate;if(i.lanes===0&&(y===null||y.lanes===0)&&(y=a.lastRenderedReducer,y!==null))try{var _=a.lastRenderedState,M=y(_,s);if(p.hasEagerState=!0,p.eagerState=M,gr(M,_))return Ud(i,a,p,0),St===null&&Ld(),!1}catch{}finally{}if(s=sp(i,a,p,d),s!==null)return lr(s,i,d),PC(s,a,d),!0}return!1}function Vp(i,a,s,d){if(d={lane:2,revertLane:Py(),gesture:null,action:d,hasEagerState:!1,eagerState:null,next:null},sh(i)){if(a)throw Error(r(479))}else a=sp(i,s,d,2),a!==null&&lr(a,i,2)}function sh(i){var a=i.alternate;return i===He||a!==null&&a===He}function DC(i,a){_s=th=!0;var s=i.pending;s===null?a.next=a:(a.next=s.next,s.next=a),i.pending=a}function PC(i,a,s){if((s&4194048)!==0){var d=a.lanes;d&=i.pendingLanes,s|=d,a.lanes=s,kw(i,s)}}var uh={readContext:jn,use:ih,useCallback:zt,useContext:zt,useEffect:zt,useImperativeHandle:zt,useLayoutEffect:zt,useInsertionEffect:zt,useMemo:zt,useReducer:zt,useRef:zt,useState:zt,useDebugValue:zt,useDeferredValue:zt,useTransition:zt,useSyncExternalStore:zt,useId:zt,useHostTransitionStatus:zt,useFormState:zt,useActionState:zt,useOptimistic:zt,useMemoCache:zt,useCacheRefresh:zt,useEffectEvent:zt},kC={readContext:jn,use:ih,useCallback:function(i,a){return Gn().memoizedState=[i,a===void 0?null:a],i},useContext:jn,useEffect:yC,useImperativeHandle:function(i,a,s){s=s!=null?s.concat([i]):null,lh(4194308,4,wC.bind(null,a,i),s)},useLayoutEffect:function(i,a){return lh(4194308,4,i,a)},useInsertionEffect:function(i,a){lh(4,2,i,a)},useMemo:function(i,a){var s=Gn();a=a===void 0?null:a;var d=i();if(ao){Ba(!0);try{i()}finally{Ba(!1)}}return s.memoizedState=[d,a],d},useReducer:function(i,a,s){var d=Gn();if(s!==void 0){var p=s(a);if(ao){Ba(!0);try{s(a)}finally{Ba(!1)}}}else p=a;return d.memoizedState=d.baseState=p,i={pending:null,lanes:0,dispatch:null,lastRenderedReducer:i,lastRenderedState:p},d.queue=i,i=i.dispatch=G4.bind(null,He,i),[d.memoizedState,i]},useRef:function(i){var a=Gn();return i={current:i},a.memoizedState=i},useState:function(i){i=zp(i);var a=i.queue,s=MC.bind(null,He,a);return a.dispatch=s,[i.memoizedState,s]},useDebugValue:$p,useDeferredValue:function(i,a){var s=Gn();return Bp(s,i,a)},useTransition:function(){var i=zp(!1);return i=AC.bind(null,He,i.queue,!0,!1),Gn().memoizedState=i,[!1,i]},useSyncExternalStore:function(i,a,s){var d=He,p=Gn();if(Ve){if(s===void 0)throw Error(r(407));s=s()}else{if(s=a(),St===null)throw Error(r(349));(Qe&127)!==0||nC(d,a,s)}p.memoizedState=s;var y={value:s,getSnapshot:a};return p.queue=y,yC(iC.bind(null,d,y,i),[i]),d.flags|=2048,As(9,{destroy:void 0},rC.bind(null,d,y,s,a),null),s},useId:function(){var i=Gn(),a=St.identifierPrefix;if(Ve){var s=gi,d=vi;s=(d&~(1<<32-mr(d)-1)).toString(32)+s,a="_"+a+"R_"+s,s=nh++,0<\/script>",y=y.removeChild(y.firstChild);break;case"select":y=typeof d.is=="string"?_.createElement("select",{is:d.is}):_.createElement("select"),d.multiple?y.multiple=!0:d.size&&(y.size=d.size);break;default:y=typeof d.is=="string"?_.createElement(p,{is:d.is}):_.createElement(p)}}y[wn]=a,y[tr]=d;e:for(_=a.child;_!==null;){if(_.tag===5||_.tag===6)y.appendChild(_.stateNode);else if(_.tag!==4&&_.tag!==27&&_.child!==null){_.child.return=_,_=_.child;continue}if(_===a)break e;for(;_.sibling===null;){if(_.return===null||_.return===a)break e;_=_.return}_.sibling.return=_.return,_=_.sibling}a.stateNode=y;e:switch(An(y,p,d),p){case"button":case"input":case"select":case"textarea":d=!!d.autoFocus;break e;case"img":d=!0;break e;default:d=!1}d&&aa(a)}}return Et(a),a.subtreeFlags&=-33554433,ry(a,a.type,i===null?null:i.memoizedProps,a.pendingProps,s),null;case 6:if(i&&a.stateNode!=null)i.memoizedProps!==d&&aa(a);else{if(typeof d!="string"&&a.stateNode===null)throw Error(r(166));if(i=Ua.current,Ss(a)){if(i=a.stateNode,s=a.memoizedProps,d=null,p=cn,p!==null)switch(p.tag){case 27:case 5:d=p.memoizedProps}i[wn]=a,i=!!(i.nodeValue===s||d!==null&&d.suppressHydrationWarning===!0||iE(i.nodeValue,s)),i||qa(a,!0)}else i=qc(i).createTextNode(d),i[wn]=a,a.stateNode=i}return Et(a),null;case 31:if(s=a.memoizedState,i===null||i.memoizedState!==null){if(d=Ss(a),s!==null){if(i===null){if(!d)throw Error(r(318));if(i=a.memoizedState,i=i!==null?i.dehydrated:null,!i)throw Error(r(557));i[wn]=a}else Ql(),(a.flags&128)===0&&(a.memoizedState=null),a.flags|=4;Et(a),i=!1}else s=mp(),i!==null&&i.memoizedState!==null&&(i.memoizedState.hydrationErrors=s),i=!0;if(!i)return a.flags&256?(pr(a),a):(pr(a),null);if((a.flags&128)!==0)throw Error(r(558))}return Et(a),null;case 13:if(d=a.memoizedState,i===null||i.memoizedState!==null&&i.memoizedState.dehydrated!==null){if(p=Ss(a),d!==null&&d.dehydrated!==null){if(i===null){if(!p)throw Error(r(318));if(p=a.memoizedState,p=p!==null?p.dehydrated:null,!p)throw Error(r(317));p[wn]=a}else Ql(),(a.flags&128)===0&&(a.memoizedState=null),a.flags|=4;Et(a),p=!1}else p=mp(),i!==null&&i.memoizedState!==null&&(i.memoizedState.hydrationErrors=p),p=!0;if(!p)return a.flags&256?(pr(a),a):(pr(a),null)}return pr(a),(a.flags&128)!==0?(a.lanes=s,a):(s=d!==null,i=i!==null&&i.memoizedState!==null,s&&(d=a.child,p=null,d.alternate!==null&&d.alternate.memoizedState!==null&&d.alternate.memoizedState.cachePool!==null&&(p=d.alternate.memoizedState.cachePool.pool),y=null,d.memoizedState!==null&&d.memoizedState.cachePool!==null&&(y=d.memoizedState.cachePool.pool),y!==p&&(d.flags|=2048)),s!==i&&s&&(a.child.flags|=8192),vh(a,a.updateQueue),Et(a),null);case 4:return as(),i===null&&Ly(a.stateNode.containerInfo),a.flags|=67108864,Et(a),null;case 10:return ta(a.type),Et(a),null;case 19:if(Op(a),d=a.memoizedState,d===null)return Et(a),null;if(p=(a.flags&128)!==0,y=d.rendering,y===null)if(p)kc(d,!1);else{if(Lt!==0||i!==null&&(i.flags&128)!==0)for(i=a.child;i!==null;){if(y=eh(i),y!==null){for(a.flags|=128,kc(d,!1),i=y.updateQueue,a.updateQueue=i,vh(a,i),a.subtreeFlags=0,i=s,s=a.child;s!==null;)Mj(s,i),s=s.sibling;return Tc(a,_n.current&1|2),Ve&&Ji(a,d.treeForkCount),a.child}i=i.sibling}d.tail!==null&&dr()>Ah&&(a.flags|=128,p=!0,kc(d,!1),a.lanes=4194304)}else{if(!p)if(i=eh(y),i!==null){if(a.flags|=128,p=!0,i=i.updateQueue,a.updateQueue=i,vh(a,i),kc(d,!0),d.tail===null&&d.tailMode!=="collapsed"&&d.tailMode!=="visible"&&!y.alternate&&!Ve)return Et(a),null}else 2*dr()-d.renderingStartTime>Ah&&s!==536870912&&(a.flags|=128,p=!0,kc(d,!1),a.lanes=4194304);d.isBackwards?(y.sibling=a.child,a.child=y):(i=d.last,i!==null?i.sibling=y:a.child=y,d.last=y)}if(d.tail!==null){i=d.tail;e:{for(s=i;s!==null;){if(s.alternate!==null){s=!1;break e}s=s.sibling}s=!0}return d.rendering=i,d.tail=i.sibling,d.renderingStartTime=dr(),i.sibling=null,y=_n.current,y=p?y&1|2:y&1,d.tailMode==="visible"||d.tailMode==="collapsed"||!s||Ve?Tc(a,y):(s=y,mt(Cn,a),mt(_n,s),kn===null&&(kn=a)),Ve&&Ji(a,d.treeForkCount),i}return Et(a),null;case 22:case 23:return pr(a),Ep(),d=a.memoizedState!==null,i!==null?i.memoizedState!==null!==d&&(a.flags|=8192):d&&(a.flags|=8192),d?(s&536870912)!==0&&(a.flags&128)===0&&(Et(a),a.subtreeFlags&6&&(a.flags|=8192)):Et(a),s=a.updateQueue,s!==null&&vh(a,s.retryQueue),s=null,i!==null&&i.memoizedState!==null&&i.memoizedState.cachePool!==null&&(s=i.memoizedState.cachePool.pool),d=null,a.memoizedState!==null&&a.memoizedState.cachePool!==null&&(d=a.memoizedState.cachePool.pool),d!==s&&(a.flags|=2048),i!==null&&At(to),null;case 24:return s=null,i!==null&&(s=i.memoizedState.cache),a.memoizedState.cache!==s&&(a.flags|=2048),ta(Gt),Et(a),null;case 25:return null;case 30:return a.flags|=33554432,Et(a),null}throw Error(r(156,a.tag))}function W4(i,a){switch(dp(a),a.tag){case 1:return i=a.flags,i&65536?(a.flags=i&-65537|128,a):null;case 3:return ta(Gt),as(),i=a.flags,(i&65536)!==0&&(i&128)===0?(a.flags=i&-65537|128,a):null;case 26:case 27:case 5:return bd(a),null;case 31:if(a.memoizedState!==null){if(pr(a),a.alternate===null)throw Error(r(340));Ql()}return i=a.flags,i&65536?(a.flags=i&-65537|128,a):null;case 13:if(pr(a),i=a.memoizedState,i!==null&&i.dehydrated!==null){if(a.alternate===null)throw Error(r(340));Ql()}return i=a.flags,i&65536?(a.flags=i&-65537|128,a):null;case 19:return Op(a),i=a.flags,i&65536?(a.flags=i&-65537|128,i=a.memoizedState,i!==null&&(i.rendering=null,i.tail=null),a.flags|=4,a):null;case 4:return as(),null;case 10:return ta(a.type),null;case 22:case 23:return pr(a),Ep(),i!==null&&At(to),i=a.flags,i&65536?(a.flags=i&-65537|128,a):null;case 24:return ta(Gt),null;case 25:return null;default:return null}}function l_(i,a){switch(dp(a),a.tag){case 3:ta(Gt),as();break;case 26:case 27:case 5:bd(a);break;case 4:as();break;case 31:a.memoizedState!==null&&pr(a);break;case 13:pr(a);break;case 19:Op(a);break;case 10:ta(a.type);break;case 22:case 23:pr(a),Ep(),i!==null&&At(to);break;case 24:ta(Gt)}}function Ic(i,a){try{var s=a.updateQueue,d=s!==null?s.lastEffect:null;if(d!==null){var p=d.next;s=p;do{if((s.tag&i)===i){d=void 0;var y=s.create,_=s.inst;d=y(),_.destroy=d}s=s.next}while(s!==p)}}catch(M){gt(a,a.return,M)}}function tl(i,a,s){try{var d=a.updateQueue,p=d!==null?d.lastEffect:null;if(p!==null){var y=p.next;d=y;do{if((d.tag&i)===i){var _=d.inst,M=_.destroy;if(M!==void 0){_.destroy=void 0,p=a;var L=s,K=M;try{K()}catch(Z){gt(p,L,Z)}}}d=d.next}while(d!==y)}}catch(Z){gt(a,a.return,Z)}}function o_(i){var a=i.updateQueue;if(a!==null){var s=i.stateNode;try{Qj(a,s)}catch(d){gt(i,i.return,d)}}}function s_(i,a,s){s.props=lo(i.type,i.memoizedProps),s.state=i.memoizedState;try{s.componentWillUnmount()}catch(d){gt(i,a,d)}}function pi(i,a){try{var s=i.ref;if(s!==null){switch(i.tag){case 26:case 27:case 5:var d=i.stateNode;break;case 30:var p=i.stateNode,y=Qi(i.memoizedProps,p);(p.ref===null||p.ref.name!==y)&&(p.ref=vE(y)),d=p.ref;break;case 7:if(i.stateNode===null){var _=new wr(i);g(i.child,!1,HU,_,void 0,void 0),i.stateNode=_}d=i.stateNode;break;default:d=i.stateNode}typeof s=="function"?i.refCleanup=s(d):s.current=d}}catch(M){gt(i,a,M)}}function En(i,a){var s=i.ref,d=i.refCleanup;if(s!==null)if(typeof d=="function")try{d()}catch(p){gt(i,a,p)}finally{i.refCleanup=null,i=i.alternate,i!=null&&(i.refCleanup=null)}else if(typeof s=="function")try{s(null)}catch(p){gt(i,a,p)}else s.current=null}function gh(i,a){if((i.tag===5||i.tag===27||i.tag===6)&&i.alternate===null&&a!==null)for(var s=0;s title"))),An(d,a,s),d[wn]=i,un(d),a=d;break e;case"link":if(y=ME("link","href",p).get(a+(s.href||""))){for(_=0;_Fe&&(_=Fe,Fe=Ee,Ee=_);var q=bj(M,Ee),H=bj(M,Fe);if(q&&H&&(Q.rangeCount!==1||Q.anchorNode!==q.node||Q.anchorOffset!==q.offset||Q.focusNode!==H.node||Q.focusOffset!==H.offset)){var X=ae.createRange();X.setStart(q.node,q.offset),Q.removeAllRanges(),Ee>Fe?(Q.addRange(X),Q.extend(H.node,H.offset)):(X.setEnd(H.node,H.offset),Q.addRange(X))}}}}for(ae=[],Q=M;Q=Q.parentNode;)Q.nodeType===1&&ae.push({element:Q,left:Q.scrollLeft,top:Q.scrollTop});for(typeof M.focus=="function"&&M.focus(),M=0;Ms?32:s,oe.T=null,s=Cy,Cy=null;var y=ii,_=ji;if(Pt=0,co=ii=null,ji=0,(ot&6)!==0)throw Error(r(331));var M=ot;if(ot|=4,R_(y.current),O_(y,y.current,_,s),ot=M,Fc(0,!1),hr&&typeof hr.onPostCommitFiberRoot=="function")try{hr.onPostCommitFiberRoot(oc,y)}catch{}return!0}finally{J.p=p,oe.T=d,q_(i,a)}}function K_(i,a,s){a=Dr(s,a),a=Kp(i.stateNode,a,2),i=Za(i,a,2),i!==null&&(uc(i,2),Ci(i))}function gt(i,a,s){if(i.tag===3)K_(i,i,s);else for(;a!==null;){if(a.tag===3){K_(a,i,s);break}else if(a.tag===1){var d=a.stateNode;if(typeof a.type.getDerivedStateFromError=="function"||typeof d.componentDidCatch=="function"&&(al===null||!al.has(d))){i=Dr(s,i),s=FC(2),d=Za(a,s,2),d!==null&&(VC(s,d,a,i),uc(d,2),Ci(d));break}}a=a.return}}function Ry(i,a,s){var d=i.pingCache;if(d===null){d=i.pingCache=new nU;var p=new Set;d.set(a,p)}else p=d.get(a),p===void 0&&(p=new Set,d.set(a,p));p.has(s)||(Sy=!0,p.add(s),i=cU.bind(null,i,a,s),a.then(i,i))}function cU(i,a,s){var d=i.pingCache;d!==null&&d.delete(a),i.pingedLanes|=i.suspendedLanes&s,i.warmLanes&=~s,St===i&&(Qe&s)===s&&((Lt===4||Lt===3&&(Qe&62914560)===Qe&&300>dr()-Eh)&&(ot&2)===0?Ls(i,0):_h|=s,Ds===Qe&&(Ds=0)),Ci(i)}function Y_(i,a){a===0&&(a=Dw()),i=Yl(i,a),i!==null&&(uc(i,a),Ci(i))}function fU(i){var a=i.memoizedState,s=0;a!==null&&(s=a.retryLane),Y_(i,s)}function dU(i,a){var s=0;switch(i.tag){case 31:case 13:var d=i.stateNode,p=i.memoizedState;p!==null&&(s=p.retryLane);break;case 19:d=i.stateNode;break;case 22:d=i.stateNode._retryCache;break;default:throw Error(r(314))}d!==null&&d.delete(a),Y_(i,s)}function hU(i,a){return Pg(i,a)}var $s=null,Bs=null,My=!1,Ph=!1,Dy=!1,ol=0;function Ci(i){i!==Bs&&i.next===null&&(Bs===null?$s=Bs=i:Bs=Bs.next=i),Ph=!0,My||(My=!0,vU())}function Fc(i,a){if(!Dy&&Ph){Dy=!0;do for(var s=!1,d=$s;d!==null;){if(i!==0){var p=d.pendingLanes;if(p===0)var y=0;else{var _=d.suspendedLanes,M=d.pingedLanes;y=(1<<31-mr(42|i)+1)-1,y&=p&~(_&~M),y=y&201326741?y&201326741|1:y?y|2:0}y!==0&&(s=!0,W_(d,y))}else y=Qe,y=_d(d,d===St?y:0,d.cancelPendingCommit!==null||d.timeoutHandle!==-1),(y&3)===0||sc(d,y)||(s=!0,W_(d,y));d=d.next}while(s);Dy=!1}}function mU(){X_()}function X_(){Ph=My=!1;var i=0;ol!==0&&EU()&&(i=ol);for(var a=dr(),s=null,d=$s;d!==null;){var p=d.next,y=Q_(d,a);y===0?(d.next=null,s===null?$s=p:s.next=p,p===null&&(Bs=s)):(s=d,(i!==0||(y&3)!==0)&&(Ph=!0)),d=p}Pt!==0&&Pt!==5||Fc(i),ol!==0&&(ol=0)}function Q_(i,a){for(var s=i.suspendedLanes,d=i.pingedLanes,p=i.expirationTimes,y=i.pendingLanes&-62914561;0M)break;var Z=L.transferSize,ae=L.initiatorType;Z&&aE(ae)&&(L=L.responseEnd,_+=Z*(LUh){Ee.length=pe;break}X=new Promise(MU.bind(X)),Ee.push(X)}}}if(0"u"?null:document;function OE(i,a,s){var d=Fs;if(d&&typeof a=="string"&&a){var p=Rr(a);p='link[rel="'+i+'"][href="'+p+'"]',typeof s=="string"&&(p+='[crossorigin="'+s+'"]'),AE.has(p)||(AE.add(p),i={rel:i,crossOrigin:s,href:a},d.querySelector(p)===null&&(a=d.createElement("link"),An(a,"link",i),un(a),d.head.appendChild(a)))}}function ZU(i){oa.D(i),OE("dns-prefetch",i,null)}function WU(i,a){oa.C(i,a),OE("preconnect",i,a)}function JU(i,a,s){oa.L(i,a,s);var d=Fs;if(d&&i&&a){var p='link[rel="preload"][as="'+Rr(a)+'"]';a==="image"&&s&&s.imageSrcSet?(p+='[imagesrcset="'+Rr(s.imageSrcSet)+'"]',typeof s.imageSizes=="string"&&(p+='[imagesizes="'+Rr(s.imageSizes)+'"]')):p+='[href="'+Rr(i)+'"]';var y=p;switch(a){case"style":y=Vs(i);break;case"script":y=Gs(i)}if(!(Ur.has(y)||(i=D({rel:"preload",href:a==="image"&&s&&s.imageSrcSet?void 0:i,as:a},s),Ur.set(y,i),d.querySelector(p)!==null||a==="style"&&d.querySelector(Yc(y))||a==="script"&&d.querySelector(Xc(y))))){var _=d.createElement("link");An(_,"link",i),a==="style"&&(_[Ed]=!0,_.onload=_.onerror=function(){Bw(_)}),un(_),d.head.appendChild(_)}}}function e$(i,a){oa.m(i,a);var s=Fs;if(s&&i){var d=a&&typeof a.as=="string"?a.as:"script",p='link[rel="modulepreload"][as="'+Rr(d)+'"][href="'+Rr(i)+'"]',y=p;switch(d){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":y=Gs(i)}if(!Ur.has(y)&&(i=D({rel:"modulepreload",href:i},a),Ur.set(y,i),s.querySelector(p)===null)){switch(d){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(s.querySelector(Xc(y)))return}d=s.createElement("link"),An(d,"link",i),un(d),s.head.appendChild(d)}}}function t$(i,a,s){oa.S(i,a,s);var d=Fs;if(d&&i){var p=ss(d).hoistableStyles,y=Vs(i);a=a||"default";var _=p.get(y);if(!_){var M={loading:0,preload:null};if(_=d.querySelector(Yc(y)))M.loading=5;else{i=D({rel:"stylesheet",href:i,"data-precedence":a},s),(s=Ur.get(y))&&ex(i,s);var L=_=d.createElement("link");un(L),An(L,"link",i),L._p=new Promise(function(K,Z){L.onload=K,L.onerror=Z}),L.addEventListener("load",function(){M.loading|=1}),L.addEventListener("error",function(){M.loading|=2}),M.loading|=4,zh(_,a,d)}_={type:"stylesheet",instance:_,count:1,state:M},p.set(y,_)}}}function n$(i,a){oa.X(i,a);var s=Fs;if(s&&i){var d=ss(s).hoistableScripts,p=Gs(i),y=d.get(p);y||(y=s.querySelector(Xc(p)),y||(i=D({src:i,async:!0},a),(a=Ur.get(p))&&tx(i,a),y=s.createElement("script"),un(y),An(y,"link",i),s.head.appendChild(y)),y={type:"script",instance:y,count:1,state:null},d.set(p,y))}}function r$(i,a){oa.M(i,a);var s=Fs;if(s&&i){var d=ss(s).hoistableScripts,p=Gs(i),y=d.get(p);y||(y=s.querySelector(Xc(p)),y||(i=D({src:i,async:!0,type:"module"},a),(a=Ur.get(p))&&tx(i,a),y=s.createElement("script"),un(y),An(y,"link",i),s.head.appendChild(y)),y={type:"script",instance:y,count:1,state:null},d.set(p,y))}}function NE(i,a,s,d){var p=(p=Ua.current)?Kc(p):null;if(!p)throw Error(r(446));switch(i){case"meta":case"title":return null;case"style":return typeof s.precedence=="string"&&typeof s.href=="string"?(s=Vs(s.href),a=ss(p).hoistableStyles,d=a.get(s),d||(d={type:"style",instance:null,count:0,state:null},a.set(s,d)),d):{type:"void",instance:null,count:0,state:null};case"link":if(s.rel==="stylesheet"&&typeof s.href=="string"&&typeof s.precedence=="string"){i=Vs(s.href);var y=ss(p).hoistableStyles,_=y.get(i);if(_||(p=p.ownerDocument||p,_={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},y.set(i,_),(y=p.querySelector(Yc(i)))?y._p||(_.instance=y,_.state.loading=5):(y=Ur.get(i),y||(y={rel:"preload",as:"style",href:s.href,crossOrigin:s.crossOrigin,integrity:s.integrity,media:s.media,hrefLang:s.hrefLang,referrerPolicy:s.referrerPolicy},Ur.set(i,y)),i$(p,i,y,_.state))),a&&d===null)throw Error(r(528,""));return _}if(a&&d!==null)throw Error(r(529,""));return null;case"script":return a=s.async,s=s.src,typeof s=="string"&&a&&typeof a!="function"&&typeof a!="symbol"?(s=Gs(s),a=ss(p).hoistableScripts,d=a.get(s),d||(d={type:"script",instance:null,count:0,state:null},a.set(s,d)),d):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,i))}}function Vs(i){return'href="'+Rr(i)+'"'}function Yc(i){return'link[rel="stylesheet"]['+i+"]"}function TE(i){return D({},i,{"data-precedence":i.precedence,precedence:null})}function i$(i,a,s,d){if(a=i.querySelector('link[rel="preload"][as="style"]['+a+"]")){if(a[Ed]!==!0){d.loading=1;return}}else a=i.createElement("link"),a[Ed]=!0,a.onload=a.onerror=Bw.bind(null,a),An(a,"link",s),un(a),i.head.appendChild(a);d.preload=a,a.addEventListener("load",function(){return d.loading|=1}),a.addEventListener("error",function(){return d.loading|=2})}function Gs(i){return'[src="'+Rr(i)+'"]'}function Xc(i){return"script[async]"+i}function RE(i,a,s){if(a.count++,a.instance===null)switch(a.type){case"style":var d=i.querySelector('style[data-href~="'+Rr(s.href)+'"]');if(d)return a.instance=d,un(d),d;var p=D({},s,{"data-href":s.href,"data-precedence":s.precedence,href:null,precedence:null});return d=(i.ownerDocument||i).createElement("style"),un(d),An(d,"style",p),zh(d,s.precedence,i),a.instance=d;case"stylesheet":p=Vs(s.href);var y=i.querySelector(Yc(p));if(y)return a.state.loading|=4,a.instance=y,un(y),y;d=TE(s),(p=Ur.get(p))&&ex(d,p),y=(i.ownerDocument||i).createElement("link"),un(y);var _=y;return _._p=new Promise(function(M,L){_.onload=M,_.onerror=L}),An(y,"link",d),a.state.loading|=4,zh(y,s.precedence,i),a.instance=y;case"script":return y=Gs(s.src),(p=i.querySelector(Xc(y)))?(a.instance=p,un(p),p):(d=s,(p=Ur.get(y))&&(d=D({},s),tx(d,p)),i=i.ownerDocument||i,p=i.createElement("script"),un(p),An(p,"link",d),i.head.appendChild(p),a.instance=p);case"void":return null;default:throw Error(r(443,a.type))}else a.type==="stylesheet"&&(a.state.loading&4)===0&&(d=a.instance,a.state.loading|=4,zh(d,s.precedence,i));return a.instance}function zh(i,a,s){for(var d=s.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),p=d.length?d[d.length-1]:null,y=p,_=0;_ title"):null)}function a$(i,a,s){if(s===1||a.itemProp!=null)return!1;switch(i){case"meta":case"title":return!0;case"style":if(typeof a.precedence!="string"||typeof a.href!="string"||a.href==="")break;return!0;case"link":if(typeof a.rel!="string"||typeof a.href!="string"||a.href===""||a.onLoad||a.onError)break;switch(a.rel){case"stylesheet":return i=a.disabled,typeof a.precedence=="string"&&i==null;default:return!0}case"script":if(a.async&&typeof a.async!="function"&&typeof a.async!="symbol"&&!a.onLoad&&!a.onError&&a.src&&typeof a.src=="string")return!0}return!1}function DE(i,a){return i==="img"&&a.src!=null&&a.src!==""&&a.onLoad==null&&a.loading!=="lazy"}function PE(i){return!(i.type==="stylesheet"&&(i.state.loading&3)===0)}function kE(i){return(i.width||100)*(i.height||100)*(typeof devicePixelRatio=="number"?devicePixelRatio:1)*.25}function IE(i,a){typeof a.decode=="function"&&(i.imgCount++,a.complete||(i.imgBytes+=kE(a),i.suspenseyImages.push(a)),i=s$.bind(i),a.decode().then(i,i))}function l$(i,a,s,d){if(s.type==="stylesheet"&&(typeof d.media!="string"||matchMedia(d.media).matches!==!1)&&(s.state.loading&4)===0){if(s.instance===null){var p=Vs(d.href),y=a.querySelector(Yc(p));if(y){a=y._p,a!==null&&typeof a=="object"&&typeof a.then=="function"&&(i.count++,i=Qc.bind(i),a.then(i,i)),s.state.loading|=4,s.instance=y,un(y);return}y=a.ownerDocument||a,d=TE(d),(p=Ur.get(p))&&ex(d,p),y=y.createElement("link"),un(y);var _=y;_._p=new Promise(function(M,L){_.onload=M,_.onerror=L}),An(y,"link",d),s.instance=y}i.stylesheets===null&&(i.stylesheets=new Map),i.stylesheets.set(s,a),(a=s.state.preload)&&(s.state.loading&3)===0&&(i.count++,s=Qc.bind(i),a.addEventListener("load",s),a.addEventListener("error",s))}}var Uh=0;function o$(i,a){return i.stylesheets&&i.count===0&&Bh(i,i.stylesheets),0Uh?50:800)+a);return i.unsuspend=s,function(){i.unsuspend=null,clearTimeout(d),clearTimeout(p)}}:null}function zE(i){if(i.count===0&&(i.imgCount===0||!i.waitingForImages)){if(i.stylesheets)Bh(i,i.stylesheets);else if(i.unsuspend){var a=i.unsuspend;i.unsuspend=null,a()}}}function Qc(){this.count--,zE(this)}function s$(){this.imgCount--,zE(this)}var $h=null;function Bh(i,a){i.stylesheets=null,i.unsuspend!==null&&(i.count++,$h=new Map,a.forEach(u$,i),$h=null,Qc.call(i))}function u$(i,a){if(!(a.state.loading&4)){var s=$h.get(i);if(s)var d=s.get(null);else{s=new Map,$h.set(i,s);for(var p=i.querySelectorAll("link[data-precedence],style[data-precedence]"),y=0;y"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),hx.exports=f5(),hx.exports}var h5=d5();function DR(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var l=e.length;for(t=0;ttypeof e=="boolean"?`${e}`:e===0?"0":e,yA=Ct,lS=(e,t)=>n=>{var r;if((t==null?void 0:t.variants)==null)return yA(e,n==null?void 0:n.class,n==null?void 0:n.className);const{variants:l,defaultVariants:o}=t,u=Object.keys(l).map(m=>{const v=n==null?void 0:n[m],g=o==null?void 0:o[m];if(v===null)return null;const x=pA(v)||pA(g);return l[m][x]}),c=n&&Object.entries(n).reduce((m,v)=>{let[g,x]=v;return x===void 0||(m[g]=x),m},{}),h=t==null||(r=t.compoundVariants)===null||r===void 0?void 0:r.reduce((m,v)=>{let{class:g,className:x,...S}=v;return Object.entries(S).every(w=>{let[j,C]=w;return Array.isArray(C)?C.includes({...o,...c}[j]):{...o,...c}[j]===C})?[...m,g,x]:m},[]);return yA(e,u,h,n==null?void 0:n.class,n==null?void 0:n.className)},m5=(e,t)=>{const n=new Array(e.length+t.length);for(let r=0;r({classGroupId:e,validator:t}),PR=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),zm="-",xA=[],g5="arbitrary..",p5=e=>{const t=x5(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:u=>{if(u.startsWith("[")&&u.endsWith("]"))return y5(u);const c=u.split(zm),h=c[0]===""&&c.length>1?1:0;return kR(c,h,t)},getConflictingClassGroupIds:(u,c)=>{if(c){const h=r[u],m=n[u];return h?m?m5(m,h):h:m||xA}return n[u]||xA}}},kR=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;const l=e[t],o=n.nextPart.get(l);if(o){const m=kR(e,t+1,o);if(m)return m}const u=n.validators;if(u===null)return;const c=t===0?e.join(zm):e.slice(t).join(zm),h=u.length;for(let m=0;me.slice(1,-1).indexOf(":")===-1?void 0:(()=>{const t=e.slice(1,-1),n=t.indexOf(":"),r=t.slice(0,n);return r?g5+r:void 0})(),x5=e=>{const{theme:t,classGroups:n}=e;return b5(n,t)},b5=(e,t)=>{const n=PR();for(const r in e){const l=e[r];oS(l,n,r,t)}return n},oS=(e,t,n,r)=>{const l=e.length;for(let o=0;o{if(typeof e=="string"){w5(e,t,n);return}if(typeof e=="function"){j5(e,t,n,r);return}C5(e,t,n,r)},w5=(e,t,n)=>{const r=e===""?t:IR(t,e);r.classGroupId=n},j5=(e,t,n,r)=>{if(_5(e)){oS(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(v5(n,e))},C5=(e,t,n,r)=>{const l=Object.entries(e),o=l.length;for(let u=0;u{let n=e;const r=t.split(zm),l=r.length;for(let o=0;o"isThemeGetter"in e&&e.isThemeGetter===!0,E5=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null);const l=(o,u)=>{n[o]=u,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(o){let u=n[o];if(u!==void 0)return u;if((u=r[o])!==void 0)return l(o,u),u},set(o,u){o in n?n[o]=u:l(o,u)}}},z0="!",bA=":",A5=[],SA=(e,t,n,r,l)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:l}),O5=e=>{const{prefix:t,experimentalParseClassName:n}=e;let r=l=>{const o=[];let u=0,c=0,h=0,m;const v=l.length;for(let j=0;jh?m-h:void 0;return SA(o,S,x,w)};if(t){const l=t+bA,o=r;r=u=>u.startsWith(l)?o(u.slice(l.length)):SA(A5,!1,u,void 0,!0)}if(n){const l=r;r=o=>n({className:o,parseClassName:l})}return r},N5=e=>{const t=new Map;return e.orderSensitiveModifiers.forEach((n,r)=>{t.set(n,1e6+r)}),n=>{const r=[];let l=[];for(let o=0;o0&&(l.sort(),r.push(...l),l=[]),r.push(u)):l.push(u)}return l.length>0&&(l.sort(),r.push(...l)),r}},T5=e=>({cache:E5(e.cacheSize),parseClassName:O5(e),sortModifiers:N5(e),postfixLookupClassGroupIds:R5(e),...p5(e)}),R5=e=>{const t=Object.create(null),n=e.postfixLookupClassGroups;if(n)for(let r=0;r{const{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:l,sortModifiers:o,postfixLookupClassGroupIds:u}=t,c=[],h=e.trim().split(M5);let m="";for(let v=h.length-1;v>=0;v-=1){const g=h[v],{isExternal:x,modifiers:S,hasImportantModifier:w,baseClassName:j,maybePostfixModifierPosition:C}=n(g);if(x){m=g+(m.length>0?" "+m:m);continue}let E=!!C,N;if(E){const D=j.substring(0,C);N=r(D);const k=N&&u[N]?r(j):void 0;k&&k!==N&&(N=k,E=!1)}else N=r(j);if(!N){if(!E){m=g+(m.length>0?" "+m:m);continue}if(N=r(j),!N){m=g+(m.length>0?" "+m:m);continue}E=!1}const O=S.length===0?"":S.length===1?S[0]:o(S).join(":"),T=w?O+z0:O,R=T+N;if(c.indexOf(R)>-1)continue;c.push(R);const A=l(N,E);for(let D=0;D0?" "+m:m)}return m},P5=(...e)=>{let t=0,n,r,l="";for(;t{if(typeof e=="string")return e;let t,n="";for(let r=0;r{let n,r,l,o;const u=h=>{const m=t.reduce((v,g)=>g(v),e());return n=T5(m),r=n.cache.get,l=n.cache.set,o=c,c(h)},c=h=>{const m=r(h);if(m)return m;const v=D5(h,n);return l(h,v),v};return o=u,(...h)=>o(P5(...h))},I5=[],Jt=e=>{const t=n=>n[e]||I5;return t.isThemeGetter=!0,t.themeKey=e,t},LR=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,UR=/^\((?:(\w[\w-]*):)?(.+)\)$/i,z5=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,L5=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,U5=/\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$/,$5=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix|color|light-dark)\(.+\)$/,B5=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,H5=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,ml=e=>z5.test(e),Ge=e=>!!e&&!Number.isNaN(Number(e)),_i=e=>!!e&&Number.isInteger(Number(e)),px=e=>e.endsWith("%")&&Ge(e.slice(0,-1)),sa=e=>L5.test(e),$R=()=>!0,F5=e=>U5.test(e)&&!$5.test(e),sS=()=>!1,V5=e=>B5.test(e),G5=e=>H5.test(e),q5=e=>!je(e)&&!Ce(e),K5=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)),Y5=e=>Ul(e,FR,sS),je=e=>LR.test(e),ho=e=>Ul(e,VR,F5),wA=e=>Ul(e,nB,Ge),X5=e=>Ul(e,qR,$R),Q5=e=>Ul(e,GR,sS),jA=e=>Ul(e,BR,sS),Z5=e=>Ul(e,HR,G5),Zh=e=>Ul(e,KR,V5),Ce=e=>UR.test(e),nf=e=>Wo(e,VR),W5=e=>Wo(e,GR),CA=e=>Wo(e,BR),J5=e=>Wo(e,FR),eB=e=>Wo(e,HR),Wh=e=>Wo(e,KR,!0),tB=e=>Wo(e,qR,!0),Ul=(e,t,n)=>{const r=LR.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},Wo=(e,t,n=!1)=>{const r=UR.exec(e);return r?r[1]?t(r[1]):n:!1},BR=e=>e==="position"||e==="percentage",HR=e=>e==="image"||e==="url",FR=e=>e==="length"||e==="size"||e==="bg-size",VR=e=>e==="length",nB=e=>e==="number",GR=e=>e==="family-name",qR=e=>e==="number"||e==="weight",KR=e=>e==="shadow",rB=()=>{const e=Jt("color"),t=Jt("font"),n=Jt("text"),r=Jt("font-weight"),l=Jt("tracking"),o=Jt("leading"),u=Jt("breakpoint"),c=Jt("container"),h=Jt("spacing"),m=Jt("radius"),v=Jt("shadow"),g=Jt("inset-shadow"),x=Jt("text-shadow"),S=Jt("drop-shadow"),w=Jt("blur"),j=Jt("perspective"),C=Jt("aspect"),E=Jt("ease"),N=Jt("animate"),O=()=>["auto","avoid","all","avoid-page","page","left","right","column"],T=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],R=()=>[...T(),Ce,je],A=()=>["auto","hidden","clip","visible","scroll"],D=()=>["auto","contain","none"],k=()=>[Ce,je,h],I=()=>[ml,"full","auto",...k()],P=()=>[_i,"none","subgrid",Ce,je],B=()=>["auto",{span:["full",_i,Ce,je]},_i,Ce,je],F=()=>[_i,"auto",Ce,je],se=()=>["auto","min","max","fr",Ce,je],ue=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],de=()=>["start","end","center","stretch","center-safe","end-safe"],G=()=>["auto",...k()],ne=()=>[ml,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...k()],ie=()=>[c,ml,"screen","full","dvw","lvw","svw","min","max","fit",...k()],ce=()=>[ml,"screen","full","lh","dvh","lvh","svh","min","max","fit",...k()],U=()=>[e,Ce,je],Ae=()=>[...T(),CA,jA,{position:[Ce,je]}],ee=()=>["no-repeat",{repeat:["","x","y","space","round"]}],ve=()=>["auto","cover","contain",J5,Y5,{size:[Ce,je]}],z=()=>[px,nf,ho],Y=()=>["","none","full",m,Ce,je],le=()=>["",Ge,nf,ho],fe=()=>["solid","dashed","dotted","double"],De=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],te=()=>[Ge,px,CA,jA],ge=()=>["","none",w,Ce,je],oe=()=>["none",Ge,Ce,je],J=()=>["none",Ge,Ce,je],ct=()=>[Ge,Ce,je],Ke=()=>[ml,"full",...k()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[sa],breakpoint:[sa],color:[$R],container:[sa],"drop-shadow":[sa],ease:["in","out","in-out"],font:[q5],"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",Ge],text:[sa],"text-shadow":[sa],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",ml,je,Ce,C]}],container:["container"],"container-type":[{"@container":["","normal","size",Ce,je]}],"container-named":[K5],columns:[{columns:[Ge,"auto",je,Ce,c]}],"break-after":[{"break-after":O()}],"break-before":[{"break-before":O()}],"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:R()}],overflow:[{overflow:A()}],"overflow-x":[{"overflow-x":A()}],"overflow-y":[{"overflow-y":A()}],overscroll:[{overscroll:D()}],"overscroll-x":[{"overscroll-x":D()}],"overscroll-y":[{"overscroll-y":D()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:I()}],"inset-x":[{"inset-x":I()}],"inset-y":[{"inset-y":I()}],start:[{"inset-s":I(),start:I()}],end:[{"inset-e":I(),end:I()}],"inset-bs":[{"inset-bs":I()}],"inset-be":[{"inset-be":I()}],top:[{top:I()}],right:[{right:I()}],bottom:[{bottom:I()}],left:[{left:I()}],visibility:["visible","invisible","collapse"],z:[{z:[_i,"auto",Ce,je]}],basis:[{basis:[ml,"full","auto",c,...k()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[Ge,ml,"auto","initial","none",je]}],grow:[{grow:["",Ge,Ce,je]}],shrink:[{shrink:["",Ge,Ce,je]}],order:[{order:[_i,"first","last","none",Ce,je]}],"grid-cols":[{"grid-cols":P()}],"col-start-end":[{col:B()}],"col-start":[{"col-start":F()}],"col-end":[{"col-end":F()}],"grid-rows":[{"grid-rows":P()}],"row-start-end":[{row:B()}],"row-start":[{"row-start":F()}],"row-end":[{"row-end":F()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":se()}],"auto-rows":[{"auto-rows":se()}],gap:[{gap:k()}],"gap-x":[{"gap-x":k()}],"gap-y":[{"gap-y":k()}],"justify-content":[{justify:[...ue(),"normal"]}],"justify-items":[{"justify-items":[...de(),"normal"]}],"justify-self":[{"justify-self":["auto",...de()]}],"align-content":[{content:["normal",...ue()]}],"align-items":[{items:[...de(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...de(),{baseline:["","last"]}]}],"place-content":[{"place-content":ue()}],"place-items":[{"place-items":[...de(),"baseline"]}],"place-self":[{"place-self":["auto",...de()]}],p:[{p:k()}],px:[{px:k()}],py:[{py:k()}],ps:[{ps:k()}],pe:[{pe:k()}],pbs:[{pbs:k()}],pbe:[{pbe:k()}],pt:[{pt:k()}],pr:[{pr:k()}],pb:[{pb:k()}],pl:[{pl:k()}],m:[{m:G()}],mx:[{mx:G()}],my:[{my:G()}],ms:[{ms:G()}],me:[{me:G()}],mbs:[{mbs:G()}],mbe:[{mbe:G()}],mt:[{mt:G()}],mr:[{mr:G()}],mb:[{mb:G()}],ml:[{ml:G()}],"space-x":[{"space-x":k()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":k()}],"space-y-reverse":["space-y-reverse"],size:[{size:ne()}],"inline-size":[{inline:["auto",...ie()]}],"min-inline-size":[{"min-inline":["auto",...ie()]}],"max-inline-size":[{"max-inline":["none",...ie()]}],"block-size":[{block:["auto",...ce()]}],"min-block-size":[{"min-block":["auto",...ce()]}],"max-block-size":[{"max-block":["none",...ce()]}],w:[{w:[c,"screen",...ne()]}],"min-w":[{"min-w":[c,"screen","none",...ne()]}],"max-w":[{"max-w":[c,"screen","none","prose",{screen:[u]},...ne()]}],h:[{h:["screen","lh",...ne()]}],"min-h":[{"min-h":["screen","lh","none",...ne()]}],"max-h":[{"max-h":["screen","lh","none",...ne()]}],"font-size":[{text:["base",n,nf,ho]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[r,tB,X5]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",px,je]}],"font-family":[{font:[W5,Q5,t]}],"font-features":[{"font-features":[je]}],"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:[l,Ce,je]}],"line-clamp":[{"line-clamp":[Ge,"none",Ce,wA]}],leading:[{leading:["none",o,...k()]}],"list-image":[{"list-image":["none",Ce,je]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",Ce,je]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:U()}],"text-color":[{text:U()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...fe(),"wavy"]}],"text-decoration-thickness":[{decoration:[Ge,"from-font","auto",Ce,ho]}],"text-decoration-color":[{decoration:U()}],"underline-offset":[{"underline-offset":[Ge,"auto",Ce,je]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:k()}],"tab-size":[{tab:[_i,Ce,je]}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",Ce,je]}],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,je]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:Ae()}],"bg-repeat":[{bg:ee()}],"bg-size":[{bg:ve()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},_i,Ce,je],radial:["",Ce,je],conic:["",_i,Ce,je]},eB,Z5]}],"bg-color":[{bg:U()}],"gradient-from-pos":[{from:z()}],"gradient-via-pos":[{via:z()}],"gradient-to-pos":[{to:z()}],"gradient-from":[{from:U()}],"gradient-via":[{via:U()}],"gradient-to":[{to:U()}],rounded:[{rounded:Y()}],"rounded-s":[{"rounded-s":Y()}],"rounded-e":[{"rounded-e":Y()}],"rounded-t":[{"rounded-t":Y()}],"rounded-r":[{"rounded-r":Y()}],"rounded-b":[{"rounded-b":Y()}],"rounded-l":[{"rounded-l":Y()}],"rounded-ss":[{"rounded-ss":Y()}],"rounded-se":[{"rounded-se":Y()}],"rounded-ee":[{"rounded-ee":Y()}],"rounded-es":[{"rounded-es":Y()}],"rounded-tl":[{"rounded-tl":Y()}],"rounded-tr":[{"rounded-tr":Y()}],"rounded-br":[{"rounded-br":Y()}],"rounded-bl":[{"rounded-bl":Y()}],"border-w":[{border:le()}],"border-w-x":[{"border-x":le()}],"border-w-y":[{"border-y":le()}],"border-w-s":[{"border-s":le()}],"border-w-e":[{"border-e":le()}],"border-w-bs":[{"border-bs":le()}],"border-w-be":[{"border-be":le()}],"border-w-t":[{"border-t":le()}],"border-w-r":[{"border-r":le()}],"border-w-b":[{"border-b":le()}],"border-w-l":[{"border-l":le()}],"divide-x":[{"divide-x":le()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":le()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...fe(),"hidden","none"]}],"divide-style":[{divide:[...fe(),"hidden","none"]}],"border-color":[{border:U()}],"border-color-x":[{"border-x":U()}],"border-color-y":[{"border-y":U()}],"border-color-s":[{"border-s":U()}],"border-color-e":[{"border-e":U()}],"border-color-bs":[{"border-bs":U()}],"border-color-be":[{"border-be":U()}],"border-color-t":[{"border-t":U()}],"border-color-r":[{"border-r":U()}],"border-color-b":[{"border-b":U()}],"border-color-l":[{"border-l":U()}],"divide-color":[{divide:U()}],"outline-style":[{outline:[...fe(),"none","hidden"]}],"outline-offset":[{"outline-offset":[Ge,Ce,je]}],"outline-w":[{outline:["",Ge,nf,ho]}],"outline-color":[{outline:U()}],shadow:[{shadow:["","inner","none",v,Wh,Zh]}],"shadow-color":[{shadow:U()}],"inset-shadow":[{"inset-shadow":["none",g,Wh,Zh]}],"inset-shadow-color":[{"inset-shadow":U()}],"ring-w":[{ring:le()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:U()}],"ring-offset-w":[{"ring-offset":[Ge,ho]}],"ring-offset-color":[{"ring-offset":U()}],"inset-ring-w":[{"inset-ring":le()}],"inset-ring-color":[{"inset-ring":U()}],"text-shadow":[{"text-shadow":["none",x,Wh,Zh]}],"text-shadow-color":[{"text-shadow":U()}],opacity:[{opacity:[Ge,Ce,je]}],"mix-blend":[{"mix-blend":[...De(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":De()}],"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":[Ge]}],"mask-image-linear-from-pos":[{"mask-linear-from":te()}],"mask-image-linear-to-pos":[{"mask-linear-to":te()}],"mask-image-linear-from-color":[{"mask-linear-from":U()}],"mask-image-linear-to-color":[{"mask-linear-to":U()}],"mask-image-t-from-pos":[{"mask-t-from":te()}],"mask-image-t-to-pos":[{"mask-t-to":te()}],"mask-image-t-from-color":[{"mask-t-from":U()}],"mask-image-t-to-color":[{"mask-t-to":U()}],"mask-image-r-from-pos":[{"mask-r-from":te()}],"mask-image-r-to-pos":[{"mask-r-to":te()}],"mask-image-r-from-color":[{"mask-r-from":U()}],"mask-image-r-to-color":[{"mask-r-to":U()}],"mask-image-b-from-pos":[{"mask-b-from":te()}],"mask-image-b-to-pos":[{"mask-b-to":te()}],"mask-image-b-from-color":[{"mask-b-from":U()}],"mask-image-b-to-color":[{"mask-b-to":U()}],"mask-image-l-from-pos":[{"mask-l-from":te()}],"mask-image-l-to-pos":[{"mask-l-to":te()}],"mask-image-l-from-color":[{"mask-l-from":U()}],"mask-image-l-to-color":[{"mask-l-to":U()}],"mask-image-x-from-pos":[{"mask-x-from":te()}],"mask-image-x-to-pos":[{"mask-x-to":te()}],"mask-image-x-from-color":[{"mask-x-from":U()}],"mask-image-x-to-color":[{"mask-x-to":U()}],"mask-image-y-from-pos":[{"mask-y-from":te()}],"mask-image-y-to-pos":[{"mask-y-to":te()}],"mask-image-y-from-color":[{"mask-y-from":U()}],"mask-image-y-to-color":[{"mask-y-to":U()}],"mask-image-radial":[{"mask-radial":[Ce,je]}],"mask-image-radial-from-pos":[{"mask-radial-from":te()}],"mask-image-radial-to-pos":[{"mask-radial-to":te()}],"mask-image-radial-from-color":[{"mask-radial-from":U()}],"mask-image-radial-to-color":[{"mask-radial-to":U()}],"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":T()}],"mask-image-conic-pos":[{"mask-conic":[Ge]}],"mask-image-conic-from-pos":[{"mask-conic-from":te()}],"mask-image-conic-to-pos":[{"mask-conic-to":te()}],"mask-image-conic-from-color":[{"mask-conic-from":U()}],"mask-image-conic-to-color":[{"mask-conic-to":U()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:Ae()}],"mask-repeat":[{mask:ee()}],"mask-size":[{mask:ve()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",Ce,je]}],filter:[{filter:["","none",Ce,je]}],blur:[{blur:ge()}],brightness:[{brightness:[Ge,Ce,je]}],contrast:[{contrast:[Ge,Ce,je]}],"drop-shadow":[{"drop-shadow":["","none",S,Wh,Zh]}],"drop-shadow-color":[{"drop-shadow":U()}],grayscale:[{grayscale:["",Ge,Ce,je]}],"hue-rotate":[{"hue-rotate":[Ge,Ce,je]}],invert:[{invert:["",Ge,Ce,je]}],saturate:[{saturate:[Ge,Ce,je]}],sepia:[{sepia:["",Ge,Ce,je]}],"backdrop-filter":[{"backdrop-filter":["","none",Ce,je]}],"backdrop-blur":[{"backdrop-blur":ge()}],"backdrop-brightness":[{"backdrop-brightness":[Ge,Ce,je]}],"backdrop-contrast":[{"backdrop-contrast":[Ge,Ce,je]}],"backdrop-grayscale":[{"backdrop-grayscale":["",Ge,Ce,je]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[Ge,Ce,je]}],"backdrop-invert":[{"backdrop-invert":["",Ge,Ce,je]}],"backdrop-opacity":[{"backdrop-opacity":[Ge,Ce,je]}],"backdrop-saturate":[{"backdrop-saturate":[Ge,Ce,je]}],"backdrop-sepia":[{"backdrop-sepia":["",Ge,Ce,je]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":k()}],"border-spacing-x":[{"border-spacing-x":k()}],"border-spacing-y":[{"border-spacing-y":k()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",Ce,je]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[Ge,"initial",Ce,je]}],ease:[{ease:["linear","initial",E,Ce,je]}],delay:[{delay:[Ge,Ce,je]}],animate:[{animate:["none",N,Ce,je]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[j,Ce,je]}],"perspective-origin":[{"perspective-origin":R()}],rotate:[{rotate:oe()}],"rotate-x":[{"rotate-x":oe()}],"rotate-y":[{"rotate-y":oe()}],"rotate-z":[{"rotate-z":oe()}],scale:[{scale:J()}],"scale-x":[{"scale-x":J()}],"scale-y":[{"scale-y":J()}],"scale-z":[{"scale-z":J()}],"scale-3d":["scale-3d"],skew:[{skew:ct()}],"skew-x":[{"skew-x":ct()}],"skew-y":[{"skew-y":ct()}],transform:[{transform:[Ce,je,"","none","gpu","cpu"]}],"transform-origin":[{origin:R()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:Ke()}],"translate-x":[{"translate-x":Ke()}],"translate-y":[{"translate-y":Ke()}],"translate-z":[{"translate-z":Ke()}],"translate-none":["translate-none"],zoom:[{zoom:[_i,Ce,je]}],accent:[{accent:U()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:U()}],"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,je]}],"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":U()}],"scrollbar-track-color":[{"scrollbar-track":U()}],"scrollbar-gutter":[{"scrollbar-gutter":["auto","stable","both"]}],"scrollbar-w":[{scrollbar:["auto","thin","none"]}],"scroll-m":[{"scroll-m":k()}],"scroll-mx":[{"scroll-mx":k()}],"scroll-my":[{"scroll-my":k()}],"scroll-ms":[{"scroll-ms":k()}],"scroll-me":[{"scroll-me":k()}],"scroll-mbs":[{"scroll-mbs":k()}],"scroll-mbe":[{"scroll-mbe":k()}],"scroll-mt":[{"scroll-mt":k()}],"scroll-mr":[{"scroll-mr":k()}],"scroll-mb":[{"scroll-mb":k()}],"scroll-ml":[{"scroll-ml":k()}],"scroll-p":[{"scroll-p":k()}],"scroll-px":[{"scroll-px":k()}],"scroll-py":[{"scroll-py":k()}],"scroll-ps":[{"scroll-ps":k()}],"scroll-pe":[{"scroll-pe":k()}],"scroll-pbs":[{"scroll-pbs":k()}],"scroll-pbe":[{"scroll-pbe":k()}],"scroll-pt":[{"scroll-pt":k()}],"scroll-pr":[{"scroll-pr":k()}],"scroll-pb":[{"scroll-pb":k()}],"scroll-pl":[{"scroll-pl":k()}],"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,je]}],fill:[{fill:["none",...U()]}],"stroke-w":[{stroke:[Ge,nf,ho,wA]}],stroke:[{stroke:["none",...U()]}],"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":["start","end","right","left"],"inset-y":["inset-bs","inset-be","top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["ps","pe","pr","pl"],py:["pbs","pbe","pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["ms","me","mr","ml"],my:["mbs","mbe","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-s","border-w-e","border-w-r","border-w-l"],"border-w-y":["border-w-bs","border-w-be","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-s","border-color-e","border-color-r","border-color-l"],"border-color-y":["border-color-bs","border-color-be","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-ms","scroll-me","scroll-mr","scroll-ml"],"scroll-my":["scroll-mbs","scroll-mbe","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-ps","scroll-pe","scroll-pr","scroll-pl"],"scroll-py":["scroll-pbs","scroll-pbe","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"]}},iB=k5(rB);function Zt(...e){return iB(Ct(e))}const aB=lS("inline-flex items-center rounded-md px-2 py-0.5 text-xs font-medium",{variants:{variant:{default:"bg-zinc-800 text-zinc-100 ring-1 ring-zinc-600",secondary:"bg-zinc-800 text-zinc-100 ring-1 ring-zinc-600",count:"bg-zinc-950 text-zinc-50 ring-1 ring-zinc-500",ok:"bg-emerald-950 text-emerald-300 ring-1 ring-emerald-800",bad:"bg-red-950 text-red-200 ring-1 ring-red-800",warn:"bg-amber-950 text-amber-200 ring-1 ring-amber-700"}},defaultVariants:{variant:"default"}});function Oe({className:e,variant:t,...n}){return f.jsx("div",{className:Zt(aB({variant:t}),e),...n})}var lB=Object.defineProperty,uS=(e,t)=>lB(e,"name",{value:t,configurable:!0});function L0(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}uS(L0,"setRef");function Bo(...e){return t=>{let n=!1;const r=e.map(l=>{const o=L0(l,t);return!n&&typeof o=="function"&&(n=!0),o});if(n)return()=>{for(let l=0;loB(e,"name",{value:t,configurable:!0});function Ml(e){const t=b.forwardRef((n,r)=>{let{children:l,...o}=n,u=null,c=!1;const h=[];l=JR(l),b.Children.forEach(l,x=>{var S;if(ZR(x)){c=!0;const w=x;let j="child"in w.props?w.props.child:w.props.children;for(;cS(j)&&typeof Lm=="function";)j=Lm(j._payload);u=cB(w,j),h.push((S=u==null?void 0:u.props)==null?void 0:S.children)}else h.push(x)}),u?u=b.cloneElement(u,void 0,h):!c&&b.Children.count(l)===1&&b.isValidElement(l)&&(u=l);const m=u?QR(u):void 0,v=Kr(r,m);if(!u){if(l||l===0)throw new Error(c?hB(e):dB(e));return l}const g=XR(o,u.props??{});return u.type!==b.Fragment&&(g.ref=r?v:m),b.cloneElement(u,g)});return t.displayName=`${e}.Slot`,t}Nr(Ml,"createSlot");var sB=Ml("Slot"),YR=Symbol.for("radix.slottable");function uB(e){const t=Nr(n=>"child"in n?n.children(n.child):n.children,"Slottable");return t.displayName=`${e}.Slottable`,t.__radixId=YR,t}Nr(uB,"createSlottable");var cB=Nr((e,t)=>"child"in e.props?b.isValidElement(t)?b.cloneElement(t,void 0,e.props.children(t.props.children)):null:b.isValidElement(t)?t:null,"getSlottableElementFromSlottable");function XR(e,t){const n={...t};for(const r in t){const l=e[r],o=t[r];/^on[A-Z]/.test(r)?l&&o?n[r]=(...c)=>{const h=o(...c);return l(...c),h}:l&&(n[r]=l):r==="style"?n[r]={...l,...o}:r==="className"?n[r]=[l,o].filter(Boolean).join(" "):r==="aria-describedby"&&(n[r]=eM(o,l))}return{...e,...n}}Nr(XR,"mergeProps");function QR(e){var r,l;let t=(r=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:r.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=(l=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:l.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}Nr(QR,"getElementRef");function ZR(e){return b.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===YR}Nr(ZR,"isSlottable");var fB=Symbol.for("react.lazy");function cS(e){return e!=null&&typeof e=="object"&&"$$typeof"in e&&e.$$typeof===fB&&"_payload"in e&&WR(e._payload)}Nr(cS,"isLazyComponent");function WR(e){return typeof e=="object"&&e!==null&&"then"in e}Nr(WR,"isPromiseLike");function JR(e){let t=e;for(;cS(t)&&typeof Lm=="function";)t=Lm(t._payload);return t}Nr(JR,"useUnwrappedLazy");function eM(...e){const t=new Set;for(const n of e)if(typeof n=="string")for(const r of String(n).trim().split(/\s+/))r&&t.add(r);return t.size>0?Array.from(t).join(" "):void 0}Nr(eM,"concatAriaDescribedby");var dB=Nr(e=>`${e} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,"createSlotError"),hB=Nr(e=>`${e} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,"createSlottableError"),Lm=Ll[" use ".trim().toString()];const mB=lS("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-semibold transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",outline:"border border-border bg-transparent hover:bg-secondary",ghost:"hover:bg-secondary",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-11 rounded-md px-6",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),he=b.forwardRef(({className:e,variant:t,size:n,asChild:r=!1,...l},o)=>{const u=r?sB:"button";return f.jsx(u,{className:Zt(mB({variant:t,size:n,className:e})),ref:o,...l})});he.displayName="Button";function ye({className:e,...t}){return f.jsx("div",{className:Zt("rounded-lg border border-border bg-card text-card-foreground shadow-sm",e),...t})}function Ne({className:e,...t}){return f.jsx("div",{className:Zt("flex flex-col gap-1.5 p-4",e),...t})}function Te({className:e,...t}){return f.jsx("h3",{className:Zt("text-base font-semibold leading-none",e),...t})}function ht({className:e,...t}){return f.jsx("p",{className:Zt("text-sm text-muted-foreground",e),...t})}function xe({className:e,...t}){return f.jsx("div",{className:Zt("p-4 pt-0",e),...t})}const $e=b.forwardRef(({className:e,type:t,...n},r)=>f.jsx("input",{type:t,className:Zt("flex h-10 w-full rounded-md border border-input bg-secondary px-3 py-2 text-sm text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",e),ref:r,...n}));$e.displayName="Input";var vB=Object.defineProperty,Fu=(e,t)=>vB(e,"name",{value:t,configurable:!0}),tM=!!(typeof window<"u"&&window.document&&window.document.createElement);function $n(e,t,{checkForDefaultPrevented:n=!0}={}){return Fu(function(l){if(e==null||e(l),n===!1||!l||!l.defaultPrevented)return t==null?void 0:t(l)},"handleEvent")}Fu($n,"composeEventHandlers");function gB(e){var t;if(!tM)throw new Error("Cannot access window outside of the DOM");return((t=e==null?void 0:e.ownerDocument)==null?void 0:t.defaultView)??window}Fu(gB,"getOwnerWindow");function U0(e){if(!tM)throw new Error("Cannot access document outside of the DOM");return(e==null?void 0:e.ownerDocument)??document}Fu(U0,"getOwnerDocument");function nM(e,t=!1){const{activeElement:n}=U0(e);if(!(n!=null&&n.nodeName))return null;if(rM(n)&&n.contentDocument)return nM(n.contentDocument.body,t);if(t){const r=n.getAttribute("aria-activedescendant");if(r){const l=U0(n).getElementById(r);if(l)return l}}return n}Fu(nM,"getActiveElement");function rM(e){return e.tagName==="IFRAME"}Fu(rM,"isFrame");var pB=Object.defineProperty,Fr=(e,t)=>pB(e,"name",{value:t,configurable:!0});function yB(e,t){const n=b.createContext(t);n.displayName=e+"Context";const r=Fr(o=>{const{children:u,...c}=o,h=b.useMemo(()=>c,Object.values(c));return f.jsx(n.Provider,{value:h,children:u})},"Provider");r.displayName=e+"Provider";function l(o,u={}){const{optional:c=!1}=u,h=b.useContext(n);if(h)return h;if(t!==void 0)return t;if(!c)throw new Error(`\`${o}\` must be used within \`${e}\``)}return Fr(l,"useContext"),[r,l]}Fr(yB,"createContext");function Vu(e,t=[]){let n=[];function r(o,u){const c=b.createContext(u);c.displayName=o+"Context";const h=n.length;n=[...n,u];const m=Fr(g=>{var E;const{scope:x,children:S,...w}=g,j=((E=x==null?void 0:x[e])==null?void 0:E[h])||c,C=b.useMemo(()=>w,Object.values(w));return f.jsx(j.Provider,{value:C,children:S})},"Provider");m.displayName=o+"Provider";function v(g,x,S={}){var E;const{optional:w=!1}=S,j=((E=x==null?void 0:x[e])==null?void 0:E[h])||c,C=b.useContext(j);if(C)return C;if(u!==void 0)return u;if(!w)throw new Error(`\`${g}\` must be used within \`${o}\``)}return Fr(v,"useContext"),[m,v]}Fr(r,"createContext");const l=Fr(()=>{const o=n.map(u=>b.createContext(u));return Fr(function(c){const h=(c==null?void 0:c[e])||o;return b.useMemo(()=>({[`__scope${e}`]:{...c,[e]:h}}),[c,h])},"useScope")},"createScope");return l.scopeName=e,[r,iM(l,...t)]}Fr(Vu,"createContextScope");function iM(...e){const t=e[0];if(e.length===1)return t;const n=Fr(()=>{const r=e.map(l=>({useScope:l(),scopeName:l.scopeName}));return Fr(function(o){const u=r.reduce((c,{useScope:h,scopeName:m})=>{const g=h(o)[`__scope${m}`];return{...c,...g}},{});return b.useMemo(()=>({[`__scope${t.scopeName}`]:u}),[u])},"useComposedScopes")},"createScope");return n.scopeName=t.scopeName,n}Fr(iM,"composeContextScopes");var ja=globalThis!=null&&globalThis.document?b.useLayoutEffect:()=>{},xB=Object.defineProperty,nn=(e,t)=>xB(e,"name",{value:t,configurable:!0});function aM(e){const t=e+"CollectionProvider",[n,r]=Vu(t),[l,o]=n(t,{collectionRef:{current:null},itemMap:new Map}),u=nn(j=>{const{scope:C,children:E}=j,N=b.useRef(null),O=b.useRef(new Map).current;return f.jsx(l,{scope:C,itemMap:O,collectionRef:N,children:E})},"CollectionProvider");u.displayName=t;const c=e+"CollectionSlot",h=Ml(c),m=b.forwardRef((j,C)=>{const{scope:E,children:N}=j,O=o(c,E),T=Kr(C,O.collectionRef);return f.jsx(h,{ref:T,children:N})});m.displayName=c;const v=e+"CollectionItemSlot",g="data-radix-collection-item",x=Ml(v),S=b.forwardRef((j,C)=>{const{scope:E,children:N,...O}=j,T=b.useRef(null),R=Kr(C,T),A=o(v,E);return b.useEffect(()=>(A.itemMap.set(T,{ref:T,...O}),()=>void A.itemMap.delete(T))),f.jsx(x,{[g]:"",ref:R,children:N})});S.displayName=v;function w(j){const C=o(e+"CollectionConsumer",j);return b.useCallback(()=>{const N=C.collectionRef.current;if(!N)return[];const O=Array.from(N.querySelectorAll(`[${g}]`));return Array.from(C.itemMap.values()).sort((A,D)=>O.indexOf(A.ref.current)-O.indexOf(D.ref.current))},[C.collectionRef,C.itemMap])}return nn(w,"useCollection"),[{Provider:u,Slot:m,ItemSlot:S},w,r]}nn(aM,"createCollection");var _A=new WeakMap,Ft,jr,Jh=(jr=class extends Map{constructor(n){super(n);Ie(this,Ft);be(this,Ft,[...super.keys()]),_A.set(this,!0)}set(n,r){return _A.get(this)&&!this.has(n)&&$(this,Ft).push(n),super.set(n,r),this}insert(n,r,l){const o=this.has(r),u=o?this.size:this.size+1,c=fS(n),h=c>=0?Math.min(c,u-1):Math.max(u+c,0);if(o?$(this,Ft).indexOf(r)===h:h===this.size)return this.set(r,l),this;const m=$(this,Ft).filter(g=>g!==r);m.splice(h,0,r);const v=m.map(g=>[g,g===r?l:this.get(g)]);this.clear();for(const[g,x]of v)this.set(g,x);return this}with(n,r,l){const o=new jr(this);return o.insert(n,r,l),o}before(n){const r=$(this,Ft).indexOf(n)-1;if(!(r<0))return this.entryAt(r)}setBefore(n,r,l){const o=$(this,Ft).indexOf(n);if(o===-1)return this;const u=$(this,Ft).indexOf(r),c=u!==-1&&u=this.size&&(o=this.size-1),this.at(o)}keyFrom(n,r){const l=this.indexOf(n);if(l===-1)return;let o=l+r;return o<0&&(o=0),o>=this.size&&(o=this.size-1),this.keyAt(o)}find(n,r){let l=0;for(const o of this){if(Reflect.apply(n,r,[o,l,this]))return o;l++}}findIndex(n,r){let l=0;for(const o of this){if(Reflect.apply(n,r,[o,l,this]))return l;l++}return-1}filter(n,r){const l=[];let o=0;for(const u of this)Reflect.apply(n,r,[u,o,this])&&l.push(u),o++;return new jr(l)}map(n,r){const l=[];let o=0;for(const u of this)l.push([u[0],Reflect.apply(n,r,[u,o,this])]),o++;return new jr(l)}reduce(...n){const[r,l]=n,o=n.length>1;if(!o&&this.size===0)throw new TypeError("Reduce of empty OrderedDict with no initial value");let u=0,c=l;for(const h of this)u===0&&!o?c=h:c=Reflect.apply(r,this,[c,h,u,this]),u++;return c}reduceRight(...n){const[r,l]=n,o=n.length>1;if(!o&&this.size===0)throw new TypeError("Reduce of empty OrderedDict with no initial value");let u=l;for(let c=this.size-1;c>=0;c--){const h=this.entryAt(c);c===this.size-1&&!o?u=h:u=Reflect.apply(r,this,[u,h,c,this])}return u}sort(n){if(typeof n!="function")throw new TypeError("OrderedDict.sort requires a compare function");const r=[...this.entries()].sort(n);this.clear();for(const[l,o]of r)this.set(l,o);return this}toSorted(n){if(typeof n!="function")throw new TypeError("OrderedDict.toSorted requires a compare function");const r=[...this.entries()].sort(n);return new jr(r)}toReversed(){const n=new jr;for(let r=this.size-1;r>=0;r--){const l=this.keyAt(r),o=this.get(l);n.set(l,o)}return n}toSpliced(...n){const r=[...this.entries()];return r.splice(...n),new jr(r)}slice(n,r){const l=new jr;for(const o of $(this,Ft).slice(n,r))l.set(o,this.get(o));return l}every(n,r){let l=0;for(const o of this){if(!Reflect.apply(n,r,[o,l,this]))return!1;l++}return!0}some(n,r){let l=0;for(const o of this){if(Reflect.apply(n,r,[o,l,this]))return!0;l++}return!1}},Ft=new WeakMap,nn(jr,"OrderedDict"),jr);function Am(e,t){if("at"in Array.prototype)return Array.prototype.at.call(e,t);const n=lM(e,t);return n===-1?void 0:e[n]}nn(Am,"at");function lM(e,t){const n=e.length,r=fS(t),l=r>=0?r:n+r;return l<0||l>=n?-1:l}nn(lM,"toSafeIndex");function fS(e){return e!==e||e===0?0:Math.trunc(e)}nn(fS,"toSafeInteger");function bB(e){const t=e+"CollectionProvider",[n,r]=Vu(t),[l,o]=n(t);l.displayName=e+"CollectionStableContextProvider";const[u,c]=n(t);u.displayName=e+"CollectionStatefulContextProvider";const h=nn(({state:A,...D})=>A?f.jsx(v,{...D,state:A}):f.jsx(m,{...D}),"CollectionProvider");h.displayName=t;const m=nn(A=>{const D=N();return f.jsx(v,{...A,state:D})},"CollectionInit");m.displayName=e+"CollectionInit";const v=nn(A=>{const{scope:D,children:k,state:I}=A,P=b.useRef(null),[B,F]=b.useState(null),se=Kr(P,F),[ue,de]=I,G=b.useRef(new Jh),ne=b.useCallback(()=>{const ie=G.current;return uM(ie)||ie.sort(Om),ie},[]);return b.useEffect(()=>{if(!B)return;const ie=cM(()=>{de(ce=>{const U=ce.toSorted(Om);return U.some(([ee],ve)=>ce.keyAt(ve)!==ee)?U:ce})});return ie.observe(B,{childList:!0,subtree:!0}),()=>{ie.disconnect()}},[B,de]),f.jsx(l,{scope:D,collectionElementRef:se,collectionElementRefObject:P,getCollection:ne,setCollection:de,registryRef:G,children:f.jsx(u,{scope:D,collectionElement:B,collection:ue,children:k})})},"CollectionProviderImpl");v.displayName=e+"CollectionProviderImpl";const g=e+"CollectionSlot",x=Ml(g),S=b.forwardRef((A,D)=>{const{scope:k,children:I}=A,P=o(g,k),B=Kr(D,P.collectionElementRef);return f.jsx(x,{ref:B,children:I})});S.displayName=g;const w=e+"CollectionItemSlot",j="data-radix-collection-item",C=Ml(w),E=b.forwardRef((A,D)=>{const{scope:k,children:I,...P}=A,B=b.useRef(null),F=o(w,k),{setCollection:se,registryRef:ue}=F,de=b.useRef(P);oM(de.current,P)||(de.current=P);const G=de.current,ne=b.useCallback(U=>{const Ae=ue.current;U?Ae.set(U,{...de.current,element:U}):B.current&&Ae.delete(B.current)},[ue]),ie=Kr(D,ne,B);ja(()=>{const U=B.current,Ae=ue.current;U&&Ae.has(U)&&Ae.set(U,{...G,element:U})},[G,ue]);const ce=b.useRef(null);return b.useEffect(()=>{const U=B.current,Ae=ce.current;((Ae==null?void 0:Ae.element)??null)===U&&(!U||(Ae==null?void 0:Ae.itemData)===G)||(ce.current=U?{element:U,itemData:G}:null,se(ee=>{const ve=new Jh(ee);return Ae&&Ae.element!==U&&ve.delete(Ae.element),U&&ve.set(U,{...G,element:U}),ve.sort(Om)}))}),b.useEffect(()=>()=>{const U=ce.current;ce.current=null,U&&se(Ae=>{if(!Ae.has(U.element))return Ae;const ee=new Jh(Ae);return ee.delete(U.element),ee})},[se]),f.jsx(C,{[j]:"",ref:ie,children:I})});E.displayName=w;function N(){return b.useState(new Jh)}nn(N,"useInitCollection");function O(A){const{collection:D}=c(e+"CollectionConsumer",A);return D}nn(O,"useCollection");function T(A){const{getCollection:D}=o(e+"CollectionConsumer",A);return D}return nn(T,"useGetCollection"),[{Provider:h,Slot:S,ItemSlot:E},{createCollectionScope:r,useCollection:O,useGetCollection:T,useInitCollection:N}]}nn(bB,"createCollection");function oM(e,t){if(e===t)return!0;if(typeof e!="object"||typeof t!="object"||e==null||t==null)return!1;const n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(const l of n)if(!Object.prototype.hasOwnProperty.call(t,l)||e[l]!==t[l])return!1;return!0}nn(oM,"shallowEqual");function sM(e,t){return!!(t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_PRECEDING)}nn(sM,"isElementPreceding");function uM(e){let t;for(const n of e.keys()){if(t){const r=t.compareDocumentPosition(n);if(!(r&Node.DOCUMENT_POSITION_DISCONNECTED)&&r&Node.DOCUMENT_POSITION_PRECEDING)return!1}t=n}return!0}nn(uM,"isInDocumentOrder");function Om(e,t){return!e[1].element||!t[1].element?0:sM(e[1].element,t[1].element)?-1:1}nn(Om,"sortByDocumentPosition");function cM(e){return new MutationObserver(n=>{for(const r of n)if(r.type==="childList"){e();return}})}nn(cM,"getChildListObserver");var SB=Object.defineProperty,wB=(e,t)=>SB(e,"name",{value:t,configurable:!0}),jB=Ll[" useId ".trim().toString()]||(()=>{}),CB=0;function Yr(e){const[t,n]=b.useState(jB());return ja(()=>{e||n(r=>r??String(CB++))},[e]),e||(t?`radix-${t}`:"")}wB(Yr,"useId");var Mv=MR(),_B=Object.defineProperty,EB=(e,t)=>_B(e,"name",{value:t,configurable:!0}),AB=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],ln=AB.reduce((e,t)=>{const n=Ml(`Primitive.${t}`),r=b.forwardRef((l,o)=>{const{asChild:u,...c}=l,h=u?n:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),f.jsx(h,{...c,ref:o})});return r.displayName=`Primitive.${t}`,{...e,[t]:r}},{});function fM(e,t){e&&Mv.flushSync(()=>e.dispatchEvent(t))}EB(fM,"dispatchDiscreteCustomEvent");var OB=Object.defineProperty,NB=(e,t)=>OB(e,"name",{value:t,configurable:!0}),EA=Ll[" useInsertionEffect ".trim().toString()];function Ho(e){const t=b.useRef(e);return typeof EA=="function"?EA(()=>{t.current=e}):ja(()=>{t.current=e}),b.useMemo(()=>((...n)=>{var r;return(r=t.current)==null?void 0:r.call(t,...n)}),[])}NB(Ho,"useCallbackRef");var TB=Object.defineProperty,RB=(e,t)=>TB(e,"name",{value:t,configurable:!0}),AA=Ll[" useEffectEvent ".trim().toString()],OA=Ll[" useInsertionEffect ".trim().toString()];function dM(e){if(typeof AA=="function")return AA(e);const t=b.useRef(()=>{throw new Error("Cannot call an event handler while rendering.")});return typeof OA=="function"?OA(()=>{t.current=e}):ja(()=>{t.current=e}),b.useMemo(()=>((...n)=>{var r;return(r=t.current)==null?void 0:r.call(t,...n)}),[])}RB(dM,"useEffectEvent");var MB=Object.defineProperty,Qf=(e,t)=>MB(e,"name",{value:t,configurable:!0}),DB=Ll[" useInsertionEffect ".trim().toString()]||ja;function Dv({prop:e,defaultProp:t,onChange:n=Qf(()=>{},"onChange"),caller:r}){const[l,o,u]=hM({defaultProp:t,onChange:n}),c=e!==void 0,h=c?e:l,m=b.useCallback(v=>{var g;if(c){const x=mM(v)?v(e):v;x!==e&&((g=u.current)==null||g.call(u,x))}else o(v)},[c,e,o,u]);return[h,m]}Qf(Dv,"useControllableState");function hM({defaultProp:e,onChange:t}){const[n,r]=b.useState(e),l=b.useRef(n),o=b.useRef(t);return DB(()=>{o.current=t},[t]),b.useEffect(()=>{var u;l.current!==n&&((u=o.current)==null||u.call(o,n),l.current=n)},[n,l]),[n,r,o]}Qf(hM,"useUncontrolledState");function mM(e){return typeof e=="function"}Qf(mM,"isFunction");var NA=Symbol("RADIX:SYNC_STATE");function PB(e,t,n,r){const{prop:l,defaultProp:o,onChange:u,caller:c}=t,h=l!==void 0,m=dM(u),v=[{...n,state:o}];r&&v.push(r);const[g,x]=b.useReducer((C,E)=>{if(E.type===NA)return{...C,state:E.state};const N=e(C,E);return h&&!Object.is(N.state,C.state)&&m(N.state),N},...v),S=g.state,w=b.useRef(S);b.useEffect(()=>{w.current!==S&&(w.current=S,h||m(S))},[S,w,h]);const j=b.useMemo(()=>l!==void 0?{...g,state:l}:g,[g,l]);return b.useEffect(()=>{h&&!Object.is(l,g.state)&&x({type:NA,state:l})},[l,g.state,h]),[j,x]}Qf(PB,"useControllableStateReducer");var kB=Object.defineProperty,IB=(e,t)=>kB(e,"name",{value:t,configurable:!0}),zB={LTR:"ltr"},LB=b.createContext(void 0);function dS(e){const t=b.useContext(LB);return e||t||zB.LTR}IB(dS,"useDirection");var UB=Object.defineProperty,hS=(e,t)=>UB(e,"name",{value:t,configurable:!0}),yx=!1;function vM(){const[e,t]=b.useState(yx);return b.useEffect(()=>{yx||(yx=!0,t(!0))},[]),e}hS(vM,"useIsHydrated");var gM=Ll[" useSyncExternalStore ".trim().toString()];function pM(){return()=>{}}hS(pM,"subscribe");function yM(){return gM(pM,()=>!0,()=>!1)}hS(yM,"useIsHydratedModern");var $B=typeof gM=="function"?yM:vM,BB=Object.defineProperty,Jo=(e,t)=>BB(e,"name",{value:t,configurable:!0}),xx="rovingFocusGroup.onEntryFocus",HB={bubbles:!1,cancelable:!0},Pv="RovingFocusGroup",[$0,xM,FB]=aM(Pv),[VB,bM]=Vu(Pv,[FB]),TA={Vertical:"vertical",Horizontal:"horizontal"},GB={RTL:"rtl"},[qB,KB]=VB(Pv),YB=b.forwardRef(Jo(function(t,n){return f.jsx($0.Provider,{scope:t.__scopeRovingFocusGroup,children:f.jsx($0.Slot,{scope:t.__scopeRovingFocusGroup,children:f.jsx(XB,{...t,ref:n})})})},"RovingFocusGroup")),XB=b.forwardRef(Jo(function(t,n){const{__scopeRovingFocusGroup:r,orientation:l,loop:o=!1,dir:u,currentTabStopId:c,defaultCurrentTabStopId:h,onCurrentTabStopIdChange:m,onEntryFocus:v,preventScrollOnEntryFocus:g=!1,...x}=t,S=b.useRef(null),w=Kr(n,S),j=dS(u),[C,E]=Dv({prop:c,defaultProp:h??null,onChange:m,caller:Pv}),[N,O]=b.useState(!1),T=Ho(v),R=xM(r),A=b.useRef(!1),[D,k]=b.useState(0);return b.useEffect(()=>{const I=S.current;if(I)return I.addEventListener(xx,T),()=>I.removeEventListener(xx,T)},[T]),f.jsx(qB,{scope:r,orientation:l,dir:j,loop:o,currentTabStopId:C,onItemFocus:b.useCallback(I=>E(I),[E]),onItemShiftTab:b.useCallback(()=>O(!0),[]),onFocusableItemAdd:b.useCallback(()=>k(I=>I+1),[]),onFocusableItemRemove:b.useCallback(()=>k(I=>I-1),[]),children:f.jsx(ln.div,{tabIndex:N||D===0?-1:0,"data-orientation":l,...x,ref:w,style:{outline:"none",...t.style},onMouseDown:$n(t.onMouseDown,()=>{A.current=!0}),onFocus:$n(t.onFocus,I=>{const P=!A.current;if(I.target===I.currentTarget&&P&&!N){const B=new CustomEvent(xx,HB);if(I.currentTarget.dispatchEvent(B),!B.defaultPrevented){const F=R().filter(ne=>ne.focusable),se=F.find(ne=>ne.active),ue=F.find(ne=>ne.id===C),G=[se,ue,...F].filter(Boolean).map(ne=>ne.ref.current);mS(G,g)}}A.current=!1}),onBlur:$n(t.onBlur,()=>O(!1))})})},"RovingFocusGroupImpl")),QB="RovingFocusGroupItem",ZB=b.forwardRef(Jo(function(t,n){const{__scopeRovingFocusGroup:r,focusable:l=!0,active:o=!1,tabStopId:u,children:c,...h}=t,m=Yr(),v=u||m,g=KB(QB,r),x=g.currentTabStopId===v,S=xM(r),{onFocusableItemAdd:w,onFocusableItemRemove:j,currentTabStopId:C}=g,E=$B();return ja(()=>{if(!(!E||!l))return w(),()=>j()},[E,l,w,j]),b.useEffect(()=>{if(!(E||!l))return w(),()=>j()},[E,l,w,j]),f.jsx($0.ItemSlot,{scope:r,id:v,focusable:l,active:o,children:f.jsx(ln.span,{tabIndex:x?0:-1,"data-orientation":g.orientation,...h,ref:n,onMouseDown:$n(t.onMouseDown,N=>{l?g.onItemFocus(v):N.preventDefault()}),onFocus:$n(t.onFocus,()=>g.onItemFocus(v)),onKeyDown:$n(t.onKeyDown,N=>{if(N.key==="Tab"&&N.shiftKey){g.onItemShiftTab();return}if(N.target!==N.currentTarget)return;const O=wM(N,g.orientation,g.dir);if(O!==void 0){if(N.metaKey||N.ctrlKey||N.altKey||N.shiftKey)return;N.preventDefault();let R=S().filter(A=>A.focusable).map(A=>A.ref.current);if(O==="last")R.reverse();else if(O==="prev"||O==="next"){O==="prev"&&R.reverse();const A=R.indexOf(N.currentTarget);R=g.loop?jM(R,A+1):R.slice(A+1)}setTimeout(()=>mS(R))}}),children:typeof c=="function"?c({isCurrentTabStop:x,hasTabStop:C!=null}):c})})},"RovingFocusGroupItem")),WB={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function SM(e,t){return t!==GB.RTL?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}Jo(SM,"getDirectionAwareKey");function wM(e,t,n){const r=SM(e.key,n);if(!(t===TA.Vertical&&["ArrowLeft","ArrowRight"].includes(r))&&!(t===TA.Horizontal&&["ArrowUp","ArrowDown"].includes(r)))return WB[r]}Jo(wM,"getFocusIntent");function mS(e,t=!1){const n=document.activeElement;for(const r of e)if(r===n||(r.focus({preventScroll:t}),document.activeElement!==n))return}Jo(mS,"focusFirst");function jM(e,t){return e.map((n,r)=>e[(t+r)%e.length])}Jo(jM,"wrapArray");var JB=Object.defineProperty,Ca=(e,t)=>JB(e,"name",{value:t,configurable:!0});function CM(e,t){return b.useReducer((n,r)=>t[n][r]??n,e)}Ca(CM,"useStateMachine");var kv=Ca(e=>{const{present:t,children:n}=e,r=_M(t),l=typeof n=="function"?n({present:r.isPresent}):b.Children.only(n),o=EM(r.ref,AM(l));return typeof n=="function"||r.isPresent?b.cloneElement(l,{ref:o}):null},"Presence");function _M(e){const[t,n]=b.useState(),r=b.useRef(null),l=b.useRef(e),o=b.useRef("none"),u=b.useRef(void 0),c=e?"mounted":"unmounted",[h,m]=CM(c,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return b.useEffect(()=>{h==="mounted"?(o.current=u.current??ou(r.current),u.current=void 0):o.current="none"},[h]),ja(()=>{const v=r.current,g=l.current;if(g!==e){const S=o.current,w=ou(v);e?(u.current=w,m("MOUNT")):w==="none"||(v==null?void 0:v.display)==="none"?m("UNMOUNT"):m(g&&S!==w?"ANIMATION_OUT":"UNMOUNT"),l.current=e}},[e,m]),ja(()=>{if(t){let v;const g=t.ownerDocument.defaultView??window,x=Ca(w=>{const C=ou(r.current).includes(CSS.escape(w.animationName));if(w.target===t&&C&&(m("ANIMATION_END"),!l.current)){const E=t.style.animationFillMode;t.style.animationFillMode="forwards",v=g.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=E)})}},"handleAnimationEnd"),S=Ca(w=>{w.target===t&&(o.current=ou(r.current))},"handleAnimationStart");return t.addEventListener("animationstart",S),t.addEventListener("animationcancel",x),t.addEventListener("animationend",x),()=>{g.clearTimeout(v),t.removeEventListener("animationstart",S),t.removeEventListener("animationcancel",x),t.removeEventListener("animationend",x)}}else m("ANIMATION_END")},[t,m]),{isPresent:["mounted","unmountSuspended"].includes(h),ref:b.useCallback(v=>{if(v){const g=getComputedStyle(v);r.current=g,u.current=ou(g)}else r.current=null;n(v)},[])}}Ca(_M,"usePresence");function B0(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}Ca(B0,"setRef");function EM(...e){const t=b.useRef(e);return t.current=e,b.useCallback(n=>{const r=t.current;let l=!1;const o=r.map(u=>{const c=B0(u,n);return!l&&typeof c=="function"&&(l=!0),c});if(l)return()=>{for(let u=0;ue6(e,"name",{value:t,configurable:!0}),OM={Automatic:"automatic",Manual:"manual"},vS="Tabs",[t6,Fse]=Vu(vS,[bM]),NM=bM(),[n6,gS]=t6(vS),r6=b.forwardRef(Gu(function(t,n){const{__scopeTabs:r,value:l,onValueChange:o,defaultValue:u,orientation:c="horizontal",dir:h,activationMode:m=OM.Automatic,...v}=t,g=dS(h),[x,S]=Dv({prop:l,onChange:o,defaultProp:u??"",caller:vS});return f.jsx(n6,{scope:r,baseId:Yr(),value:x,onValueChange:S,orientation:c,dir:g,activationMode:m,children:f.jsx(ln.div,{dir:g,"data-orientation":c,...v,ref:n})})},"Tabs")),i6="TabsList",TM=b.forwardRef(Gu(function(t,n){const{__scopeTabs:r,loop:l=!0,...o}=t,u=gS(i6,r),c=NM(r);return f.jsx(YB,{asChild:!0,...c,orientation:u.orientation,dir:u.dir,loop:l,children:f.jsx(ln.div,{role:"tablist","aria-orientation":u.orientation,...o,ref:n})})},"TabsList")),a6="TabsTrigger",RM=b.forwardRef(Gu(function(t,n){const{__scopeTabs:r,value:l,disabled:o=!1,...u}=t,c=gS(a6,r),h=NM(r),m=pS(c.baseId,l),v=yS(c.baseId,l),g=l===c.value;return f.jsx(ZB,{asChild:!0,...h,focusable:!o,active:g,children:f.jsx(ln.button,{type:"button",role:"tab","aria-selected":g,"aria-controls":v,"data-state":g?"active":"inactive","data-disabled":o?"":void 0,disabled:o,id:m,...u,ref:n,onMouseDown:$n(t.onMouseDown,x=>{!o&&x.button===0&&x.ctrlKey===!1?(x.currentTarget.focus(),c.onValueChange(l)):x.preventDefault()}),onKeyDown:$n(t.onKeyDown,x=>{o||x.target!==x.currentTarget||[" ","Enter"].includes(x.key)&&c.onValueChange(l)}),onFocus:$n(t.onFocus,()=>{const x=c.activationMode!==OM.Manual;!g&&!o&&x&&c.onValueChange(l)})})})},"TabsTrigger")),l6="TabsContent",MM=b.forwardRef(Gu(function(t,n){const{__scopeTabs:r,value:l,forceMount:o,children:u,...c}=t,h=gS(l6,r),m=pS(h.baseId,l),v=yS(h.baseId,l),g=l===h.value,x=b.useRef(g);return b.useEffect(()=>{const S=requestAnimationFrame(()=>x.current=!1);return()=>cancelAnimationFrame(S)},[]),f.jsx(kv,{present:o||g,children:({present:S})=>f.jsx(ln.div,{"data-state":g?"active":"inactive","data-orientation":h.orientation,role:"tabpanel","aria-labelledby":m,hidden:!S,id:v,tabIndex:0,...c,ref:n,style:{...t.style,animationDuration:x.current?"0s":void 0},children:S&&u})})},"TabsContent"));function pS(e,t){return`${e}-trigger-${t}`}Gu(pS,"makeTriggerId");function yS(e,t){return`${e}-content-${t}`}Gu(yS,"makeContentId");const o6=r6,DM=b.forwardRef(({className:e,...t},n)=>f.jsx(TM,{ref:n,className:Zt("inline-flex h-auto flex-wrap gap-1 rounded-lg bg-secondary p-1 text-muted-foreground",e),...t}));DM.displayName=TM.displayName;const wt=b.forwardRef(({className:e,...t},n)=>f.jsx(RM,{ref:n,className:Zt("inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-2 text-sm font-medium text-zinc-200 transition-all hover:bg-zinc-800/80 hover:text-zinc-50 data-[state=active]:bg-[#f5b700] data-[state=active]:text-[#1a1400] data-[state=active]:shadow data-[state=inactive]:bg-transparent data-[state=inactive]:text-zinc-200 data-[state=inactive]:shadow-none",e),...t}));wt.displayName=RM.displayName;const bt=b.forwardRef(({className:e,...t},n)=>f.jsx(MM,{ref:n,className:Zt("mt-4 focus-visible:outline-none",e),...t}));bt.displayName=MM.displayName;const s6=lS("relative w-full rounded-lg border px-3 py-2 text-sm",{variants:{variant:{default:"border-border bg-secondary text-foreground",destructive:"border-destructive/50 bg-red-950/40 text-red-200",warn:"border-primary/40 bg-amber-950/30 text-amber-100",success:"border-emerald-700/50 bg-emerald-950/30 text-emerald-100"}},defaultVariants:{variant:"default"}});function Bt({className:e,variant:t,...n}){return f.jsx("div",{role:"alert",className:Zt(s6({variant:t}),e),...n})}function rt(e){const t=document.getElementById("toast");t&&(t.textContent=e,t.style.display="block",window.clearTimeout(t._t),t._t=window.setTimeout(()=>{t.style.display="none"},2200))}function RA(){return f.jsx("div",{id:"toast",className:"fixed bottom-6 left-1/2 z-50 hidden max-w-md -translate-x-1/2 rounded-md bg-primary px-4 py-2 text-center font-bold text-zinc-950"})}function ko({value:e}){return e?f.jsx(he,{type:"button",size:"sm",variant:"secondary",className:"ml-1 h-7 px-2 text-xs",onClick:()=>void navigator.clipboard.writeText(e).then(()=>rt("Скопировано")),children:"Копировать"}):null}function u6({a:e}){return f.jsx(Bt,{variant:e.level==="bad"?"destructive":"warn",children:e.accountId?f.jsx("a",{className:"underline underline-offset-2 hover:opacity-90",href:"/admin/?id="+encodeURIComponent(e.accountId),children:e.text}):e.text})}function PM({flash:e}){return e?e.error?f.jsx(Bt,{variant:"destructive",children:e.error}):e.code?f.jsxs(Bt,{variant:"success",children:["Код: ",f.jsx("code",{className:"font-mono tracking-wider",children:e.code})," ",f.jsx(ko,{value:e.code})]}):e.promo?f.jsxs(Bt,{variant:"success",children:["Промо: ",f.jsx("code",{className:"font-mono",children:e.promo})," ",f.jsx(ko,{value:e.promo})]}):e.text?f.jsx(Bt,{children:e.text}):null:null}function rn({className:e}){return f.jsx("div",{className:"animate-pulse rounded-md bg-zinc-800 "+(e||"h-8 w-full")})}function c6(){return f.jsxs("main",{className:"mx-auto w-full max-w-5xl space-y-4 px-4 py-8",children:[f.jsx(rn,{className:"h-10 w-48"}),f.jsxs("div",{className:"grid grid-cols-2 gap-3 md:grid-cols-4",children:[f.jsx(rn,{className:"h-20"}),f.jsx(rn,{className:"h-20"}),f.jsx(rn,{className:"h-20"}),f.jsx(rn,{className:"h-20"})]}),f.jsx(rn,{className:"h-40"})]})}function f6({className:e}){return f.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 100 100",className:e,"aria-hidden":"true",children:[f.jsx("rect",{x:"0",y:"0",width:"100",height:"100",rx:"20",fill:"#181B22"}),f.jsxs("g",{transform:"translate(9 9) scale(0.82)",children:[f.jsx("rect",{x:"14",y:"22",width:"72",height:"56",rx:"10",fill:"none",stroke:"#F5B700",strokeWidth:"7"}),f.jsx("path",{d:"M44 41 L59 50 L44 59 Z",fill:"#E8EAF0",stroke:"#E8EAF0",strokeWidth:"4",strokeLinejoin:"round"})]})]})}function kM(){return f.jsxs("div",{className:"flex items-center gap-3",children:[f.jsx(f6,{className:"h-10 w-10 shrink-0"}),f.jsx("h1",{className:"text-2xl font-bold leading-none",children:"OMP Billing"})]})}function IM({status:e}){return e==="expired"?f.jsx(Oe,{variant:"bad",children:"истекла"}):e==="grace"?f.jsx(Oe,{variant:"warn",children:"льготный период"}):e==="expiring"?f.jsx(Oe,{variant:"warn",children:"истекает"}):e==="soon"?f.jsx(Oe,{variant:"warn",children:"до 7 дней"}):e==="unbound"?f.jsx(Oe,{variant:"secondary",children:"без устройства"}):f.jsx(Oe,{variant:"ok",children:"активна"})}function d6({bound:e,limit:t,over:n}){const r=n||e>t;return f.jsxs("span",{className:r?"font-medium text-amber-200":"",children:[e,"/",t,r?" · сверх лимита":""]})}function Iv({page:e,pages:t,total:n,onPage:r}){return n===0?null:f.jsxs("div",{className:"mt-3 flex flex-wrap items-center justify-between gap-2 text-sm text-muted-foreground",children:[f.jsxs("span",{children:[n," · стр. ",e," из ",t]}),f.jsxs("div",{className:"flex gap-2",children:[f.jsx(he,{type:"button",size:"sm",variant:"secondary",disabled:e<=1,onClick:()=>r(e-1),children:"Назад"}),f.jsx(he,{type:"button",size:"sm",variant:"secondary",disabled:e>=t,onClick:()=>r(e+1),children:"Дальше"})]})]})}function MA({rows:e,field:t,label:n}){var l,o;const r=Math.max(1,...e.map(u=>u[t]));return f.jsxs("div",{children:[f.jsx("div",{className:"mb-2 text-sm text-muted-foreground",children:n}),f.jsx("div",{className:"flex h-36 items-end gap-px overflow-x-auto",children:e.map(u=>f.jsx("div",{title:u.day+": "+u[t],className:"flex h-full min-w-[6px] flex-1 flex-col justify-end",children:f.jsx("div",{className:"w-full rounded-sm bg-[#f5b700]",style:{height:Math.max(2,Math.round(u[t]/r*128))+"px"}})},u.day))}),f.jsxs("div",{className:"mt-1 flex justify-between text-xs text-muted-foreground",children:[f.jsx("span",{children:((l=e[0])==null?void 0:l.day)||""}),f.jsx("span",{children:((o=e[e.length-1])==null?void 0:o.day)||""})]})]})}async function st(e,t){const n=await fetch(e,{credentials:"same-origin",headers:{Accept:"application/json",...(t==null?void 0:t.headers)||{}},...t}),l=(n.headers.get("content-type")||"").includes("json")?await n.json():{ok:n.ok,status:n.status};return n.status===401?{...l,auth:!1}:l}async function an(e,t,n){return st(e,{method:"POST",headers:{"content-type":"application/json",Accept:"application/json"},body:JSON.stringify({csrf:t,...n})})}function h6(){const[e,t]=b.useState(!1),[n,r]=b.useState(""),[l,o]=b.useState(null),[u,c]=b.useState("");b.useEffect(()=>{if(!(l!=null&&l.token))return;let m=!1;const v=async()=>{const x=await st("/admin/login/telegram/status?token="+encodeURIComponent(l.token));if(!m){if(x.status==="ok"||x.ok){location.href="/admin/";return}if(x.status==="denied"){r("Этот Telegram не входит в список администраторов"),o(null),c("");return}if(x.status==="expired"){r("Ссылка устарела - нажмите «Войти через Telegram» ещё раз"),o(null),c("");return}c("Ожидаю подтверждение в Telegram…")}};v();const g=window.setInterval(()=>void v(),2e3);return()=>{m=!0,window.clearInterval(g)}},[l==null?void 0:l.token]);async function h(){t(!0),r(""),c("");const m=await st("/admin/login/telegram",{method:"POST",headers:{"content-type":"application/json",Accept:"application/json"},body:"{}"});if(t(!1),m.status===403){r("Панель ещё не перезапущена - сервер не знает вход через Telegram.");return}if(!m.ok||!m.token||!m.deepLink){r(m.error||"Не удалось начать вход через Telegram");return}o({token:m.token,deepLink:m.deepLink}),window.open(m.deepLink,"_blank","noopener,noreferrer")}return f.jsx("main",{className:"flex min-h-screen items-center justify-center px-4 py-10",children:f.jsxs("div",{className:"w-full max-w-sm",children:[f.jsxs("div",{className:"mb-6 text-center",children:[f.jsx("div",{className:"flex justify-center",children:f.jsx(kM,{})}),f.jsx("p",{className:"mt-3 text-sm text-muted-foreground",children:"Вход только через Telegram"})]}),n?f.jsx(Bt,{variant:"destructive",className:"mb-4",children:n}):null,u?f.jsx(Bt,{className:"mb-4",children:u}):null,f.jsx(ye,{children:f.jsxs(xe,{className:"space-y-4 pt-6",children:[f.jsx(he,{className:"w-full",disabled:e,onClick:()=>void h(),children:e&&!l?"…":"Войти через Telegram"}),l!=null&&l.deepLink?f.jsxs("p",{className:"text-sm text-muted-foreground",children:["Если бот не открылся:"," ",f.jsx("a",{className:"underline",href:l.deepLink,target:"_blank",rel:"noreferrer",children:"открыть ссылку"})]}):null]})})]})})}const xS=b.forwardRef(({className:e,...t},n)=>f.jsx("textarea",{className:Zt("flex min-h-[80px] w-full rounded-md border border-input bg-secondary px-3 py-2 text-sm text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",e),ref:n,...t}));xS.displayName="Textarea";function m6(e,t){return!t||t==="all"?!0:t==="week"?e.status==="soon"||e.status==="expiring":t==="active"?!!e.active:t==="unbound"?!!e.active&&!(Number(e.bound)>0):e.status===t}function v6(e,t,n=""){return e&&t.includes(e)||n&&e===n?e:t[0]||""}function g6(e){const t=new Map;for(const r of e||[]){const l=r&&r.accountId;if(!l)continue;const o=t.get(l);(!o||(r.paidUntil||0)>(o.paidUntil||0))&&t.set(l,r)}const n=[];for(const r of t.values())(r.status==="soon"||r.status==="expiring")&&r.telegramId&&n.push(r);return n}const p6="Europe/Moscow",y6="МСК",zM=["января","февраля","марта","апреля","мая","июня","июля","августа","сентября","октября","ноября","декабря"];function _r(e){return(e<10?"0":"")+e}function Zf(e){const t=new Intl.DateTimeFormat("en-US",{timeZone:p6,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",hourCycle:"h23"}),n={};for(const l of t.formatToParts(new Date(e)))l.type!=="literal"&&(n[l.type]=l.value);let r=Number(n.hour);return r===24&&(r=0),{year:Number(n.year),month:Number(n.month),day:Number(n.day),hour:r,minute:Number(n.minute),second:Number(n.second)}}function H0(e){const t=Zf(e);return t.year+"-"+_r(t.month)+"-"+_r(t.day)}function x6(e,t){const[n,r,l]=e.split("-").map(Number),o=new Date(Date.UTC(n,r-1,l+t));return o.getUTCFullYear()+"-"+_r(o.getUTCMonth()+1)+"-"+_r(o.getUTCDate())}function b6(e){const t=Zf(e);return _r(t.hour)+":"+_r(t.minute)}function Fo(e){const t=Zf(e);return _r(t.day)+"."+_r(t.month)+"."+t.year+" "+_r(t.hour)+":"+_r(t.minute)}function S6(e){const t=Zf(e);return t.day+" "+zM[t.month-1]+" "+t.year+", "+_r(t.hour)+":"+_r(t.minute)+":"+_r(t.second)+" "+y6}function w6(e,t=Date.now()){const n=H0(e),r=H0(t);if(n===r)return"Сегодня";if(n===x6(r,-1))return"Вчера";const l=Zf(e);return l.day+" "+zM[l.month-1]+" "+l.year}function j6(e,t=Date.now()){const n=[];for(const r of e){const l=r.at||0,o=l>0?H0(l):"none",u=l>0?w6(l,t):"Без даты",c=n[n.length-1];c&&c.key===o?c.items.push(r):n.push({key:o,title:u,items:[r]})}return n}function dt({ms:e,variant:t="datetime",toggle:n=!0}){const[r,l]=b.useState(!1);if(!e)return f.jsx("span",{className:"text-muted-foreground",children:"-"});const o=S6(e),u=t==="time"?b6(e):Fo(e)+" МСК",c=r&&n?o:u;return n?f.jsx("button",{type:"button",className:"inline whitespace-nowrap rounded-sm text-left underline-offset-2 hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",title:o,"aria-label":o,onClick:h=>{h.stopPropagation(),l(m=>!m)},children:f.jsx("time",{dateTime:new Date(e).toISOString(),children:c})}):f.jsx("time",{dateTime:new Date(e).toISOString(),title:o,className:"whitespace-nowrap",children:u})}function zi(e){return e?Fo(e)+" МСК":""}const C6={user:"пользователь",device:"устройство",admin:"админ",system:"система"};function bS(e,t){const n=(t==null?void 0:t.deviceId)||"",r=(t==null?void 0:t.fallback)||"система";if(!e||!e.kind)return n?"устройство · "+n.slice(0,8):r;const l=C6[e.kind]||e.kind,o=e.label?" · "+e.label:"";let u=l+o;const c=n.slice(0,8);return e.kind==="user"&&c&&u.indexOf(c)<0&&(u+=" · устройство "+c),u}function F0(e,t,n){const r=t?"@"+t.replace(/^@/,""):n||"";return r&&e?r+" · "+e:r||e}const _6={pay:"оплата",promo:"промо",activate:"активация",fail:"отказ",admin:"админ",device:"устройство"},E6={bad_code:"неверный код",expired:"подписка истекла",other_device:"чужое устройство",device_limit:"лимит устройств"},A6={grant:"выдача дней",promo_create:"создание промо",bulk_promo:"пакет промо",bulk_issue:"пакет кодов",issue:"выдача кода",login:"вход",login_fail:"неудачный вход",login_cli:"аварийная ссылка",login_telegram_start:"вход через Telegram",logout:"выход",message:"сообщение",support_reply:"ответ поддержки",support_close:"закрытие диалога",unbind:"сброс устройства",settings_save:"сохранение настроек",services_save:"сохранение сервисов",monitor_run:"проверка мониторинга",monitor_config:"интервал мониторинга",password_change:"смена пароля",session_revoke:"завершение сессии",code_reveal:"показ кода",device_revoke:"отзыв устройства",device_clone:"отключение клона",limit_set:"смена лимита устройств",bonus_grant:"выдача бонусных устройств",bonus_remove:"снятие бонусных устройств",days_subtract:"убавление дней",payment_confirm:"подтверждение платежа",payment_reject:"отклонение платежа",swaps_reset:"сброс счётчика смен",ads_config:"настройки рекламы",ads_banner_add:"новый баннер",ads_banner_save:"изменение баннера",ads_banner_remove:"удаление баннера"},O6={bad_label:"неверная метка",duplicate:"повтор уведомления",amount:"неверная сумма",bad_signature:"неверная подпись",ignored:"игнорирован",webhook:"уведомление",no_account:"нет аккаунта",no_subscription:"нет подписки",unaccepted:"ждёт подтверждения",rejected:"отклонён",refunded:"возврат звёзд"},N6={new:"новая подписка",sub:"продление",dev:"доп. устройство"};function T6(e,t){const n=e&&N6[e]||"метка не найдена";return t?n+" · "+t+" ₽":n}function R6(e){return _6[e]||e}function M6(e){return E6[e]||e||"неизвестно"}function D6(e){return A6[e]||e}function LM(e){return O6[e]||e||"проблема"}function UM(e){return e&&e.provider==="stars"?"Звёзды":e&&e.provider==="crypto"?"Крипта"+(e.asset?" "+e.asset:""):"ЮMoney"}function P6(e){return!e||e==="down"?"недоступен":e==="timeout"?"таймаут":e.indexOf("http_")===0?"ошибка HTTP "+e.slice(5):e}function $M(e,t){const n=u=>'"'+String(u??"").replace(/"/g,'""')+'"',r=t.map(u=>u.map(c=>n(c)).join(",")).join(` `)+` -`,l=new Blob([r],{type:"text/csv;charset=utf-8"}),o=document.createElement("a");o.href=URL.createObjectURL(l),o.download=e,o.click(),URL.revokeObjectURL(o.href)}const N6=[["","Все действия"],["login","Вход"],["grant","Выдача дней"],["issue","Выдача кода"],["promo_create","Промо"],["code_reveal","Показ кода"],["device_revoke","Отзыв устройства"],["device_clone","Отключение клона"],["limit_set","Лимит устройств"],["bonus_grant","Бонусные устройства"],["bonus_remove","Снятие бонуса"],["days_subtract","Убавление дней"],["payment_confirm","Подтверждение платежа"],["payment_reject","Отклонение платежа"],["swaps_reset","Сброс смен"],["message","Сообщение"],["settings_save","Настройки"],["ads_config","Реклама: настройки"],["ads_banner_add","Реклама: новый баннер"],["ads_banner_save","Реклама: изменение баннера"],["ads_banner_remove","Реклама: удаление баннера"]],T6=[["","Все причины"],["bad_code","Неверный код"],["expired","Подписка истекла"],["other_device","Чужое устройство"],["device_limit","Лимит устройств"],["extra_expired","Доп. устройство не продлено"]];function RE(e){const t=Number(e)||0;if(t<1024)return t+" Б";const n=["КБ","МБ","ГБ"];let r=t/1024,l=0;for(;r>=1024&&l{r&&o(r)},[r]),b.useEffect(()=>{const B=t.map(F=>F.telegramId);o(F=>u6(F,B,r||""))},[t,r]);function T(B){if(!O.current)return;const F=A.current,se=N.current;F&&requestAnimationFrame(()=>{requestAnimationFrame(()=>{se?se.scrollIntoView({block:"end"}):F.scrollTop=F.scrollHeight})})}b.useEffect(()=>{if(O.current=!0,!u){h([]),v("");return}let B=!1;async function F(){const ue=await ot("/admin/api/support?telegramId="+encodeURIComponent(u));if(B)return;const de=ue.messages||[];h(G=>R6(G,de)?G:de),v(u)}F();const se=window.setInterval(()=>void F(),2500);return()=>{B=!0,window.clearInterval(se)}},[u]),b.useEffect(()=>{T()},[c,u]);async function R(B){var de,G;B.preventDefault();const F=p.trim();if(!u||!F||S)return;w(!0),C("");const se=await Qt("/admin/support",e,{telegramId:u,text:F});if(w(!1),!se.ok||(de=se.flash)!=null&&de.error){C(((G=se.flash)==null?void 0:G.error)||"Не отправилось");return}x(""),O.current=!0;const ue=await ot("/admin/api/support?telegramId="+encodeURIComponent(u));h(ue.messages||[]),v(u),n()}async function E(){var F,se;if(!u||S||!window.confirm("Завершить диалог? Пользователь получит уведомление в боте."))return;w(!0),C("");const B=await Qt("/admin/support-close",e,{telegramId:u});if(w(!1),!B.ok||(F=B.flash)!=null&&F.error){C(((se=B.flash)==null?void 0:se.error)||"Не завершилось");return}n()}const D=t.find(B=>B.telegramId===u),k=!!u&&m!==u,I=!!r&&u===r&&!t.some(B=>B.telegramId===u);return f.jsxs("div",{className:"grid gap-4 lg:grid-cols-[280px_1fr]",children:[f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Диалоги"}),f.jsx(ht,{children:"Сообщения из бота"})]}),f.jsxs(xe,{className:"space-y-1",children:[t.length===0&&!I?f.jsx("p",{className:"text-sm text-muted-foreground",children:"Пока пусто"}):null,I?f.jsxs("button",{type:"button",className:"block w-full rounded-md bg-muted px-2 py-2 text-left text-sm",onClick:()=>o(r||""),children:[f.jsx("div",{className:"font-medium",children:r}),f.jsx("div",{className:"truncate text-xs text-muted-foreground",children:"диалог из карточки пользователя"})]}):null,t.map(B=>f.jsxs("button",{type:"button",className:"block w-full rounded-md px-2 py-2 text-left text-sm "+(B.telegramId===u?"bg-muted":"hover:bg-muted/60"),onClick:()=>o(B.telegramId),children:[f.jsx("div",{className:"font-medium",children:H0(B.telegramId,B.username,B.name)}),f.jsx("div",{className:"text-xs text-muted-foreground",children:f.jsx(dt,{ms:B.lastAt,toggle:!1})}),f.jsx("div",{className:"truncate text-xs text-muted-foreground",children:B.lastText})]},B.telegramId))]})]}),f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:u?H0(u,D==null?void 0:D.username,D==null?void 0:D.name):"Выберите диалог"}),f.jsx(ht,{children:"Ответ уходит этому пользователю в бота. Ответ на уведомление в Telegram делает то же самое."})]}),f.jsxs(xe,{className:"flex flex-col gap-3",children:[f.jsxs("div",{ref:A,className:"omp-scroll h-80 min-h-0 space-y-2 overflow-y-auto overscroll-contain rounded-md border border-border/60 bg-background/40 p-3",onScroll:()=>{const B=A.current;B&&(O.current=B.scrollHeight-B.scrollTop-B.clientHeight<64)},children:[k?f.jsxs("div",{className:"space-y-2",children:[f.jsx(an,{className:"h-12 w-2/3"}),f.jsx(an,{className:"ml-auto h-12 w-1/2"})]}):null,!k&&c.length===0?f.jsx("p",{className:"text-sm text-muted-foreground",children:u?"Пока нет сообщений":"Выберите диалог слева"}):null,c.map(B=>f.jsxs("div",{className:B.direction==="out"?"text-right":"",children:[f.jsxs("div",{className:"text-xs text-muted-foreground",children:[B.direction==="out"?"Админ":"Пользователь"," · ",f.jsx(dt,{ms:B.at,toggle:!1}),B.via==="panel"?" · панель":""]}),f.jsx("div",{className:"inline-block max-w-[90%] whitespace-pre-wrap rounded-md bg-muted px-3 py-2 text-sm",children:B.text})]},B.id)),f.jsx("div",{ref:N,className:"h-px w-full shrink-0","aria-hidden":!0})]}),j?f.jsx(Bt,{variant:"destructive",children:j}):null,f.jsxs("form",{className:"shrink-0 space-y-2",onSubmit:B=>void R(B),children:[f.jsx(yS,{value:p,onChange:B=>x(B.target.value),placeholder:"Ответ пользователю",rows:3}),f.jsxs("div",{className:"flex flex-wrap gap-2",children:[f.jsx(he,{type:"submit",disabled:S||!u||!p.trim(),children:S?"Отправляю…":"Ответить"}),f.jsx(he,{type:"button",variant:"secondary",disabled:S||!u,onClick:()=>void E(),children:"Завершить диалог"})]})]})]})]})]})}function Wn({className:e,...t}){return f.jsx("div",{className:"relative w-full overflow-auto",children:f.jsx("table",{className:Wt("w-full caption-bottom text-sm",e),...t})})}function Jn({className:e,...t}){return f.jsx("thead",{className:Wt("[&_tr]:border-b",e),...t})}function er({className:e,...t}){return f.jsx("tbody",{className:Wt("[&_tr:last-child]:border-0",e),...t})}function qe({className:e,...t}){return f.jsx("tr",{className:Wt("border-b border-border transition-colors hover:bg-secondary/50",e),...t})}function Se({className:e,...t}){return f.jsx("th",{className:Wt("h-10 px-2 text-left align-middle font-medium text-muted-foreground",e),...t})}function me({className:e,...t}){return f.jsx("td",{className:Wt("p-2 align-middle",e),...t})}const D6=1440*60*1e3;function Dl({label:e,question:t,yes:n,onYes:r,variant:l="secondary",disabled:o}){const[u,c]=b.useState(!1);return u?f.jsxs("span",{className:"inline-flex flex-wrap items-center gap-2 rounded-md border border-amber-700/60 bg-amber-950/30 px-2 py-1 text-sm",children:[f.jsx("span",{children:t}),f.jsx(he,{size:"sm",variant:"destructive",onClick:()=>{c(!1),r()},children:n}),f.jsx(he,{size:"sm",variant:"ghost",onClick:()=>c(!1),children:"Отмена"})]}):f.jsx(he,{size:"sm",variant:l,disabled:o,onClick:()=>c(!0),children:e})}function P6({ms:e}){return e?f.jsx(dt,{ms:e}):f.jsx("span",{className:"text-muted-foreground",children:"не было"})}function k6({user:e}){const t=e.subscription;return!t||!t.overLimit?null:f.jsxs(Bt,{variant:"warn",children:["Устройств больше лимита: привязано ",t.bound," при лимите ",t.deviceLimit,". Устройства сверх лимита (привязанные последними) не работают. Отзовите лишнее или поднимите лимит."]})}function I6({user:e,run:t}){const n=e.subscription,r=e.devices||[],l=n==null?void 0:n.swaps;return f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsxs(Te,{children:["Устройства"," ",n?f.jsxs(Oe,{variant:n.overLimit?"warn":"count",className:"ml-2 align-middle",children:[r.length," из ",n.deviceLimit]}):null]}),f.jsx(ht,{children:"«Последний раз» - поиск, скачивание или проверка подписки с этого устройства (обновляется не чаще раза в 10 минут). IP хранится без последней части. «Отозвать» отвязывает устройство и сразу гасит его токен, для слота выпускается новый код, пользователю уходит сообщение в Telegram."})]}),f.jsxs(xe,{className:"space-y-3",children:[r.length===0?f.jsx("p",{className:"text-sm text-muted-foreground",children:"Привязанных устройств нет"}):null,r.length>0?f.jsxs(Wn,{className:"min-w-[40rem]",children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Устройство"}),f.jsx(Se,{children:"Привязано, МСК"}),f.jsx(Se,{children:"Последний раз, МСК"}),f.jsx(Se,{children:"IP"}),f.jsx(Se,{})]})}),f.jsx(er,{children:r.map(o=>f.jsxs(qe,{children:[f.jsxs(me,{className:"font-mono",children:[o.name?f.jsxs("span",{className:"font-sans",children:[o.name," "]}):null,o.deviceId,"…"," ",o.overLimit?f.jsx(Oe,{variant:"warn",className:"ml-1",children:"сверх лимита, не работает"}):null,o.cloneAt?f.jsxs(Oe,{variant:"warn",className:"ml-1",title:"Использованный ключ этого устройства пришёл повторно. Если это не потеря сети - отзовите устройство.",children:["возможен клон",o.cloneCount&&o.cloneCount>1?" ×"+o.cloneCount:""]}):null,f.jsxs("div",{className:"font-sans text-xs text-muted-foreground",children:[o.auth==="refresh"?"новые токены":"старый токен",o.cloneAt?f.jsxs(f.Fragment,{children:[" · клон: ",f.jsx(dt,{ms:o.cloneAt})]}):null]})]}),f.jsx(me,{className:"whitespace-nowrap",children:f.jsx(dt,{ms:o.boundAt})}),f.jsx(me,{className:"whitespace-nowrap",children:f.jsx(P6,{ms:o.lastSeenAt})}),f.jsx(me,{className:"font-mono text-xs",children:o.lastIp||"-"}),f.jsx(me,{children:f.jsx(Dl,{label:"Отозвать",variant:"destructive",question:f.jsxs(f.Fragment,{children:["Отозвать ",o.deviceId,"…? Поиск на нём перестанет работать сразу, пользователь получит сообщение в Telegram."]}),yes:"Да, отозвать",onYes:()=>void t("/admin/device-revoke",{accountId:e.account.id,deviceRowId:o.id||"",codeId:o.codeId,confirm:"yes"})})})]},o.id||o.codeId))})]}):null,l?f.jsxs("div",{className:"flex flex-wrap items-center gap-2 text-sm",children:[f.jsxs("span",{children:["Смены устройства в боте: ",l.used," из ",l.limit," за 30 дней",l.left<1&&l.nextAt?f.jsxs(f.Fragment,{children:[" · следующая с ",Fo(l.nextAt)," МСК"]}):null,l.resetAt?f.jsxs("span",{className:"text-muted-foreground",children:[" ","· сброшен ",f.jsx(dt,{ms:l.resetAt})]}):null]}),f.jsx(Dl,{label:"Сбросить счётчик",question:"Разрешить пользователю ещё 2 смены прямо сейчас?",yes:"Да, сбросить",disabled:l.used===0,onYes:()=>void t("/admin/swaps-reset",{accountId:e.account.id})})]}):null]})]})}function z6({user:e,run:t}){const n=e.subscription,[r,l]=b.useState(n!=null&&n.limitOverride?String(n.limitOverride):""),[o,u]=b.useState(String((n==null?void 0:n.extraSlots)??0)),[c,h]=b.useState("1"),[m,v]=b.useState(""),[p,x]=b.useState("");if(!n)return null;const S=n.globalBase??2,w=n.bonusSlots??0,j=(r.trim()?Number(r)||0:S)+w+(Number(o)||0),C=j<(n.bound||0),A=n.bonus||[];return f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsxs(Te,{children:["Лимит устройств"," ",f.jsx(Oe,{variant:"count",className:"ml-2 align-middle",children:n.deviceLimit}),n.limitOverride?f.jsx(Oe,{variant:"warn",className:"ml-2 align-middle",children:"индивидуальный лимит"}):null]}),f.jsxs(ht,{children:["Сейчас: ",n.limitText||n.deviceLimit,n.extraSlots?", купленные до "+Fo(n.extraUntil||0)+" МСК":"",". Лимит = база + бонусные + купленные. База - общая из настроек (",S,"), если не задан индивидуальный лимит: он заменяет базу и не меняется, когда меняют общую. Бонусные - бесплатно, навсегда или до даты, в цену продления не входят. Купленные (доп.) - помесячные: выданные здесь действуют до конца оплаченного периода и дальше продлеваются вместе с подпиской."]})]}),f.jsxs(xe,{className:"space-y-4",children:[f.jsxs("div",{className:"flex flex-wrap items-end gap-2",children:[f.jsxs("label",{className:"grid gap-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Индивидуальный лимит"}),f.jsx($e,{className:"w-40",type:"number",min:1,max:20,placeholder:"пусто = общий ("+S+")",value:r,onChange:N=>l(N.target.value)})]}),f.jsxs("label",{className:"grid gap-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Купленные (доп.)"}),f.jsx($e,{className:"w-24",type:"number",min:0,max:20,value:o,onChange:N=>u(N.target.value)})]}),f.jsx(Dl,{label:"Сохранить",variant:"default",question:f.jsxs(f.Fragment,{children:["Лимит станет ",j,r.trim()?" (индивидуальный "+r.trim()+")":" (общая база "+S+")",C?". Привязано "+n.bound+": последние сверх лимита перестанут работать":"",". Сохранить?"]}),yes:"Да, сохранить",onYes:()=>void t("/admin/limit",{accountId:e.account.id,limitOverride:r.trim(),extraSlots:o})})]}),f.jsxs("div",{className:"space-y-2",children:[f.jsx("p",{className:"text-sm font-medium",children:"Бонусные устройства"}),A.length===0?f.jsx("p",{className:"text-sm text-muted-foreground",children:"Нет"}):null,A.length>0?f.jsxs(Wn,{className:"min-w-[36rem]",children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Кол-во"}),f.jsx(Se,{children:"Срок"}),f.jsx(Se,{children:"Причина"}),f.jsx(Se,{children:"Выдано, МСК"}),f.jsx(Se,{})]})}),f.jsx(er,{children:A.map(N=>f.jsxs(qe,{children:[f.jsxs(me,{children:["+",N.count]}),f.jsxs(me,{children:[N.until===null?"навсегда":"до "+Fo(N.until),N.active?null:f.jsx(Oe,{variant:"secondary",className:"ml-1",children:"истёк"})]}),f.jsxs(me,{children:[N.reason||f.jsx("span",{className:"text-muted-foreground",children:"-"}),N.source==="promo"?null:f.jsx("span",{className:"text-xs text-muted-foreground",children:" · вручную"})]}),f.jsx(me,{className:"whitespace-nowrap",children:f.jsx(dt,{ms:N.grantedAt})}),f.jsx(me,{children:f.jsx(Dl,{label:"Снять",question:f.jsxs(f.Fragment,{children:["Снять ",N.count," бонусн. устр.?"]}),yes:"Да, снять",onYes:()=>void t("/admin/bonus-remove",{accountId:e.account.id,bonusId:N.id,confirm:"yes"})})})]},N.id))})]}):null,f.jsxs("div",{className:"flex flex-wrap items-end gap-2",children:[f.jsxs("label",{className:"grid gap-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Устройств"}),f.jsx($e,{className:"w-20",type:"number",min:1,max:20,value:c,onChange:N=>h(N.target.value)})]}),f.jsxs("label",{className:"grid gap-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Дней"}),f.jsx($e,{className:"w-36",type:"number",min:1,max:3650,placeholder:"пусто = навсегда",value:m,onChange:N=>v(N.target.value)})]}),f.jsxs("label",{className:"grid gap-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Причина"}),f.jsx($e,{className:"w-56",maxLength:80,value:p,onChange:N=>x(N.target.value)})]}),f.jsx(he,{size:"sm",onClick:()=>void t("/admin/bonus",{accountId:e.account.id,count:c,days:m.trim(),reason:p}),children:"Выдать бонус"})]})]})]})]})}function L6({user:e,run:t}){const n=e.subscription,[r,l]=b.useState("1");if(!n||!n.paidUntil)return null;const o=Math.floor(Number(r)),u=Number.isFinite(o)&&o>=1&&o<=3650&&String(o)===r.trim(),c=n.paidUntil-(u?o:0)*D6;return f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Убавить дни"}),f.jsx(ht,{children:"Сдвигает окончание назад, например после возврата денег. Если дата уйдёт в прошлое, поиск выключится после льготного периода."})]}),f.jsxs(xe,{className:"flex flex-wrap items-end gap-2",children:[f.jsxs("label",{className:"grid gap-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Дней"}),f.jsx($e,{className:"w-24",type:"number",min:1,max:3650,value:r,onChange:h=>l(h.target.value)})]}),f.jsx(Dl,{label:"Убавить",variant:"destructive",disabled:!u,question:f.jsxs(f.Fragment,{children:["Убавить ",o," дн.? Подписка будет до ",Fo(c)," МСК",c<=Date.now()?" - это уже в прошлом":"","."]}),yes:"Да, убавить",onYes:()=>void t("/admin/subtract",{accountId:e.account.id,days:String(o),confirm:"yes"})})]})]})}function zM({rows:e,run:t,accountId:n,showWho:r}){return e.length?f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsxs(Te,{children:["Ждут подтверждения в ЮMoney"," ",f.jsx(Oe,{variant:"warn",className:"ml-2 align-middle",children:e.length})]}),f.jsx(ht,{children:"ЮMoney держит эти переводы, пока их не примут в кошельке, и подписку они не продлили. Примите перевод в кошельке и нажмите «Подтвердить платёж» - он применится один раз. «Отклонить» - если перевод отклонён или возвращён."})]}),f.jsx(xe,{className:"space-y-3",children:e.map(l=>f.jsxs("div",{className:"space-y-2 rounded-md border border-amber-800/50 px-3 py-2 text-sm",children:[f.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[f.jsx(dt,{ms:l.at}),f.jsxs("span",{className:"font-medium",children:[l.amount||"?"," ₽"]}),f.jsx(Oe,{variant:"count",children:C6(l.kind,l.price)}),r&&l.accountId?f.jsx("a",{className:"text-primary",href:"/admin/?id="+encodeURIComponent(l.accountId),children:l.who||"карточка"}):null,f.jsx("span",{className:"font-mono text-xs text-muted-foreground",children:l.operationId})]}),f.jsxs("div",{className:"flex flex-wrap gap-2",children:[f.jsx(Dl,{label:"Подтвердить платёж",variant:"default",question:f.jsxs(f.Fragment,{children:["Перевод ",l.amount," ₽ принят в кошельке? Подписка продлится сразу, пользователь получит сообщение."]}),yes:"Да, подтвердить",onYes:()=>void t("/admin/payment-confirm",{operationId:l.operationId,accountId:n||"",confirm:"yes"})}),f.jsx(Dl,{label:"Отклонить",question:f.jsxs(f.Fragment,{children:["Убрать платёж ",l.amount," ₽ из ожидания, ничего не продлевая?"]}),yes:"Да, отклонить",onYes:()=>void t("/admin/payment-reject",{operationId:l.operationId,accountId:n||"",confirm:"yes"})})]})]},l.operationId))})]}):null}const xx="omp-grant-days";function U6({user:e,run:t}){var N,O,T,R,E,D,k;const n=e.account.telegramId||"",[r,l]=b.useState(""),[o,u]=b.useState(()=>sessionStorage.getItem(xx)||"30"),[c,h]=b.useState("100"),[m,v]=b.useState({});async function p(I){const P=await ot("/admin/api/reveal?codeId="+encodeURIComponent(I));if(P.auth!==!1){if(!P.formatted){ft("Код уже привязан или скрыт");return}v(B=>({...B,[I]:{formatted:P.formatted||"",openUrl:P.openUrl}}))}}const x=!!((N=e.subscription)!=null&&N.active),S=((O=e.subscription)==null?void 0:O.paidUntil)||0,w=x&&S>0&&S-Date.now()<=1440*60*1e3,j=!!((T=e.subscription)!=null&&T.inGrace),C=e.subscription?j?"grace":x?w?"expiring":"active":"expired":"",A=(e.codes||[]).filter(I=>!I.bound);return f.jsxs("main",{className:"mx-auto w-full max-w-4xl space-y-4 px-4 py-6",children:[f.jsx(he,{variant:"link",className:"px-0",asChild:!0,children:f.jsx("a",{href:"/admin/",children:"← Назад"})}),f.jsx("h1",{className:"text-2xl font-bold",children:"Пользователь"}),f.jsx(TM,{flash:e.flash}),f.jsx(ye,{children:f.jsxs(xe,{className:"space-y-2 pt-6 text-sm",children:[f.jsxs("p",{children:[f.jsx("span",{className:"text-muted-foreground",children:"Идентификатор"})," ",e.account.id," ",f.jsx(ko,{value:e.account.id})]}),f.jsxs("p",{children:[f.jsx("span",{className:"text-muted-foreground",children:"Telegram"})," ",n?f.jsxs(f.Fragment,{children:[f.jsx(Oe,{variant:"ok",children:H0(n,e.account.telegramUsername,e.account.telegramName)})," ",f.jsx(ko,{value:n})]}):"-"]}),f.jsxs("p",{children:[f.jsx("span",{className:"text-muted-foreground",children:"Почта"})," ",e.account.email||"-"]}),f.jsxs("p",{children:[f.jsx("span",{className:"text-muted-foreground",children:"Создан"})," ",f.jsx(dt,{ms:e.account.createdAt})]}),e.subscription?f.jsxs("p",{className:"flex flex-wrap items-center gap-2",children:["Подписка до ",f.jsx(dt,{ms:e.subscription.paidUntil}),f.jsxs("span",{className:"text-muted-foreground",children:["устройств ",e.subscription.bound??0," из ",e.subscription.deviceLimit,e.subscription.limitText?" ("+e.subscription.limitText+")":""]}),f.jsx(MM,{status:C}),(e.subscription.creditRub||0)>0?f.jsxs("span",{className:"text-muted-foreground",children:["зачёт ",e.subscription.creditRub," ₽"]}):null,f.jsx("input",{className:"h-8 w-20 rounded-md border border-input bg-secondary px-2 text-sm",value:c,onChange:I=>h(I.target.value),"aria-label":"Зачёт, рубли"}),f.jsx(he,{variant:"secondary",onClick:()=>{window.confirm("Начислить зачёт "+c+" ₽?")&&t("/admin/api/credit",{accountId:e.account.id,rub:c,confirm:"yes"})},children:"Зачёт"}),j&&e.subscription.accessUntil?f.jsxs("span",{className:"text-muted-foreground",children:["льготный период до ",f.jsx(dt,{ms:e.subscription.accessUntil})]}):null]}):f.jsx("p",{className:"text-muted-foreground",children:"Нет подписки"})]})}),f.jsx(k6,{user:e}),f.jsx(zM,{rows:e.pending||[],run:t,accountId:e.account.id}),e.subscription?f.jsx(I6,{user:e,run:t}):null,f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Написать пользователю"}),f.jsx(ht,{children:n?"Сообщение уйдёт в Telegram-бота и появится во вкладке «Поддержка».":"У аккаунта нет Telegram - сначала нужна привязка в боте."})]}),f.jsx(xe,{className:"space-y-2",children:n?f.jsxs(f.Fragment,{children:[f.jsx(yS,{value:r,onChange:I=>l(I.target.value),placeholder:"Текст сообщения…",rows:4}),f.jsxs("div",{className:"flex flex-wrap gap-2",children:[f.jsx(he,{disabled:!r.trim(),onClick:()=>{const I=r.trim();I&&t("/admin/message",{accountId:e.account.id,text:I}).then(()=>l(""))},children:"Отправить в Telegram"}),f.jsx(he,{variant:"secondary",asChild:!0,children:f.jsx("a",{href:"/admin/?tab=support&tg="+encodeURIComponent(n),children:"Открыть в поддержке"})})]})]}):f.jsx("p",{className:"text-sm text-muted-foreground",children:"Привяжите Telegram в боте или через приложение OMP."})})]}),f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Выдать дни"}),f.jsx(ht,{children:"Число дней сохраняется. Перед отправкой будет подтверждение."})]}),f.jsx(xe,{className:"space-y-3",children:f.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[f.jsx("label",{className:"text-sm text-muted-foreground",htmlFor:"grant-days",children:"Дней"}),f.jsxs("select",{id:"grant-days",className:"h-10 rounded-md border border-input bg-secondary px-3 text-sm",value:o,onChange:I=>{u(I.target.value),sessionStorage.setItem(xx,I.target.value)},children:[f.jsx("option",{value:"1",children:"1"}),f.jsx("option",{value:"7",children:"7"}),f.jsx("option",{value:"30",children:"30"}),f.jsx("option",{value:"90",children:"90"})]}),f.jsx(he,{onClick:()=>{window.confirm("Выдать +"+o+" дн.?")&&(sessionStorage.setItem(xx,o),t("/admin/grant",{accountId:e.account.id,days:o}))},children:"Выдать"})]})})]}),f.jsx(L6,{user:e,run:t},"sub-"+(((R=e.subscription)==null?void 0:R.paidUntil)||0)),f.jsx(z6,{user:e,run:t},"lim-"+(((E=e.subscription)==null?void 0:E.limitOverride)??"")+"-"+(((D=e.subscription)==null?void 0:D.extraSlots)??"")+"-"+(((k=e.subscription)==null?void 0:k.limitText)??"")),f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Свободные коды"}),f.jsx(ht,{children:"Коды ещё не привязанных слотов, открываются кнопкой «Показать». Привязанные - выше, в «Устройствах»."})]}),f.jsxs(xe,{className:"space-y-2",children:[A.length===0?f.jsx("p",{className:"text-muted-foreground",children:"Нет свободных кодов"}):null,A.map(I=>{const P=m[I.id];return f.jsxs("div",{className:"flex flex-wrap items-center gap-2 text-sm",children:[f.jsx("span",{className:"font-mono",children:(P==null?void 0:P.formatted)||(I.bound?"привязан · "+(I.deviceId||""):"скрыт")}),f.jsxs("span",{className:"text-muted-foreground",children:["создан ",f.jsx(dt,{ms:I.createdAt}),I.boundAt?f.jsxs(f.Fragment,{children:[" ","· привязан ",f.jsx(dt,{ms:I.boundAt})]}):null]}),I.bound&&!I.hasPlain&&!P?f.jsx("span",{className:"text-muted-foreground",children:"код стёрт после привязки"}):null,P?f.jsx(ko,{value:P.formatted}):null,I.hasPlain&&!P?f.jsx(he,{size:"sm",variant:"secondary",onClick:()=>void p(I.id),children:"Показать"}):null,P!=null&&P.openUrl?f.jsx(he,{size:"sm",variant:"link",asChild:!0,children:f.jsx("a",{href:P.openUrl,target:"_blank",rel:"noreferrer",children:"Открыть"})}):null]},I.id)})]})]}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Платежи"})}),f.jsxs(xe,{children:[(e.payments||[]).length===0?f.jsx("p",{className:"text-sm text-muted-foreground",children:"Нет платежей"}):null,(e.payments||[]).length>0?f.jsxs(Wn,{className:"min-w-[36rem]",children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Когда, МСК"}),f.jsx(Se,{children:"Зачислено"}),f.jsx(Se,{children:"Способ"}),f.jsx(Se,{children:"Комиссия"}),f.jsx(Se,{children:"Метка"}),f.jsx(Se,{children:"Ошибка"})]})}),f.jsx(er,{children:(e.payments||[]).map((I,P)=>f.jsxs(qe,{children:[f.jsx(me,{className:"whitespace-nowrap",children:f.jsx(dt,{ms:I.at})}),f.jsx(me,{className:"font-mono",children:I.amount||"-"}),f.jsx(me,{children:kM(I)}),f.jsx(me,{className:"font-mono",children:I.fee==null?"-":I.fee}),f.jsx(me,{className:"font-mono text-xs",children:I.label||"-"}),f.jsxs(me,{children:[I.error?f.jsx(Oe,{variant:"bad",children:PM(I.error)}):null,I.provider==="stars"&&!I.error&&I.operationId?f.jsx(Dl,{label:"Вернуть звёзды",question:"Вернуть звёзды этому пользователю? Дни подписки останутся, их можно убавить отдельно.",yes:"Вернуть",variant:"destructive",onYes:()=>void t("/admin/payment-refund",{operationId:I.operationId,accountId:e.account.id,confirm:"yes"})}):null,!I.error&&I.provider!=="stars"?"-":null]})]},P))})]}):null]})]}),f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"История просмотра"}),f.jsx(ht,{children:"Шаги, которые приложение прислало с этого аккаунта. Без диагностики список пуст."})]}),f.jsxs(xe,{children:[(e.watch||[]).length===0?f.jsx("p",{className:"text-sm text-muted-foreground",children:"Нет сигналов"}):null,(e.watch||[]).length>0?f.jsx("ul",{className:"space-y-1 text-sm",children:(e.watch||[]).map((I,P)=>f.jsxs("li",{className:"flex flex-wrap gap-2",children:[f.jsx(dt,{ms:I.at}),f.jsx("span",{children:I.name}),f.jsxs("span",{className:"font-mono text-xs text-muted-foreground",children:[I.version||""," ",I.platform||""]})]},P))}):null]})]})]})}var $6=Object.defineProperty,B6=(e,t)=>$6(e,"name",{value:t,configurable:!0}),LM=b.forwardRef(B6(function(t,n){return f.jsx(ln.label,{...t,ref:n,onMouseDown:r=>{var o;r.target.closest("button, input, select, textarea")||((o=t.onMouseDown)==null||o.call(t,r),!r.defaultPrevented&&r.detail>1&&r.preventDefault())}})},"Label"));const yt=b.forwardRef(({className:e,...t},n)=>f.jsx(LM,{ref:n,className:Wt("text-sm font-medium text-muted-foreground",e),...t}));yt.displayName=LM.displayName;const bS={mine:"«Мои» (сетка, список, компактно)",discoverGrid:"«Обзор»: сетка подборки",discoverRails:"«Обзор»: главная, между рельсами"},SS={phone:"Телефон",androidTv:"Android TV",webos:"webOS"};function UM(e){return e.impressions?(e.clicks/e.impressions*100).toFixed(1).replace(".",",")+"%":"-"}function Lm(e){return e?new Date(e+10800*1e3).toISOString().slice(0,10):""}function H6(e){return new Promise((t,n)=>{const r=new FileReader;r.onload=()=>t(String(r.result||"").replace(/^data:[^,]*,/,"")),r.onerror=()=>n(r.error),r.readAsDataURL(e)})}const wS="h-10 rounded-md border border-input bg-secondary px-3 text-sm text-foreground",$M=["mine","discoverGrid","discoverRails"],BM=["phone","androidTv","webos"],jS=e=>"/v1/ads/img/"+e;function HM(){return Math.random().toString(36).slice(2)+Math.random().toString(36).slice(2)}const F6=()=>({localId:HM(),enabled:!0,title:"",text:"",advertiser:"",erid:"",url:"",image:"",weight:"1",from:"",to:"",platforms:["phone","androidTv","webos"],sections:["mine","discoverGrid","discoverRails"],tvMode:"qr"});function V6(e){return{localId:HM(),id:e.id,enabled:e.enabled,title:e.title,text:e.text,advertiser:e.advertiser,erid:e.erid,url:e.url,image:e.image,weight:String(e.weight),from:Lm(e.from),to:Lm(e.to),platforms:e.platforms,sections:e.sections,tvMode:e.tvMode}}function ME(e,t,n){const r=e.filter(l=>l!==t);return n?r.concat([t]):r}function G6({csrf:e}){const[t,n]=b.useState(null),[r,l]=b.useState(null),[o,u]=b.useState(30),[c,h]=b.useState(null),[m,v]=b.useState(null),[p,x]=b.useState(!1),[S,w]=b.useState(!1),[j,C]=b.useState(""),A=b.useRef(0),N=b.useRef(!1);async function O(E=o,D=!1){const k=await ot("/admin/api/ads?days="+E);k.auth===!1||!k.config||(n(k.config),l(k.stats||null),D||h(k.config))}b.useEffect(()=>{const E=N.current;N.current=!0;let D=!0;return(async()=>{const k=await ot("/admin/api/ads?days="+o);!D||k.auth===!1||!k.config||(n(k.config),l(k.stats||null),h(I=>E&&I?I:k.config))})(),()=>{D=!1}},[o]);async function T(E,D){var k,I;x(!0);try{const P=await Qt(E,e,D);return(k=P.flash)!=null&&k.error?(C(P.flash.error),ft(P.flash.error)):(C(""),(I=P.flash)!=null&&I.text&&ft(P.flash.text)),P}finally{x(!1)}}if(!t||!c)return f.jsx(an,{className:"h-48"});const R=(E,D,k)=>f.jsxs("div",{className:"space-y-1",children:[f.jsx(yt,{htmlFor:"ads-"+E,children:D}),f.jsx($e,{id:"ads-"+E,inputMode:"numeric",value:String(c[E]),onChange:I=>h({...c,[E]:I.target.value})}),f.jsx("p",{className:"text-xs text-muted-foreground",children:k})]});return f.jsxs("div",{className:"space-y-4",children:[f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsxs(Te,{className:"flex flex-wrap items-center gap-2",children:["Реклама",t.enabled?f.jsx(Oe,{variant:"ok",children:"включена"}):f.jsx(Oe,{variant:"secondary",children:"выключена"}),f.jsxs(Oe,{variant:"secondary",children:["баннеров: ",t.banners.length]})]}),f.jsx(ht,{children:"Свои баннеры (прямые рекламодатели и партнёрки). Приложения читают настройки раз в 5 минут: выключатель доходит до всех за это время. Подписчикам и в «Истории», поиске, режиме выбора рекламы нет."})]}),f.jsxs(xe,{className:"space-y-4",children:[f.jsxs("label",{className:"flex items-center gap-2 text-sm font-medium",children:[f.jsx("input",{type:"checkbox",checked:c.enabled,onChange:E=>h({...c,enabled:E.target.checked})}),"Показывать рекламу (общий выключатель)"]}),f.jsxs("div",{className:"grid gap-3 md:grid-cols-3",children:[f.jsxs("div",{className:"space-y-1",children:[f.jsx(yt,{htmlFor:"ads-provider",children:"Источник"}),f.jsxs("select",{id:"ads-provider",className:wS+" w-full",value:c.provider,onChange:E=>h({...c,provider:E.target.value}),children:[f.jsx("option",{value:"house",children:"Свои баннеры"}),f.jsx("option",{value:"yandex",disabled:!0,children:"Яндекс (позже)"})]})]}),R("everyN","Каждая N-я карточка","6-30, по умолчанию 10"),R("firstAfter","Первая не раньше карточки","1-60, по умолчанию 10"),R("afterInstallDays","Дней после установки","0-60: до этого рекламы нет"),R("maxPerScreen","На экране не больше","1-2 рекламы"),R("railsEvery","Главная «Обзора»: после каждых N рельс","2-10, первая после 2-й рельсы"),f.jsxs("div",{className:"space-y-1",children:[f.jsx(yt,{htmlFor:"ads-minver",children:"Минимальная версия приложения"}),f.jsx($e,{id:"ads-minver",placeholder:"например 0.20.5",value:c.minAppVersion,onChange:E=>h({...c,minAppVersion:E.target.value})}),f.jsx("p",{className:"text-xs text-muted-foreground",children:"Пусто: все версии с рекламой"})]})]}),f.jsxs("div",{className:"grid gap-4 md:grid-cols-3",children:[f.jsxs("fieldset",{className:"space-y-1",children:[f.jsx("legend",{className:"mb-1 text-sm font-medium",children:"Разделы"}),$M.map(E=>f.jsxs("label",{className:"flex items-center gap-2 text-sm",children:[f.jsx("input",{type:"checkbox",checked:c.sections[E],onChange:D=>h({...c,sections:{...c.sections,[E]:D.target.checked}})}),bS[E]]},E))]}),f.jsxs("fieldset",{className:"space-y-1",children:[f.jsx("legend",{className:"mb-1 text-sm font-medium",children:"Платформы"}),BM.map(E=>f.jsxs("label",{className:"flex items-center gap-2 text-sm",children:[f.jsx("input",{type:"checkbox",checked:c.platforms[E],onChange:D=>h({...c,platforms:{...c.platforms,[E]:D.target.checked}})}),SS[E]]},E))]}),f.jsxs("fieldset",{className:"space-y-1",children:[f.jsx("legend",{className:"mb-1 text-sm font-medium",children:"Кому не показывать"}),f.jsxs("label",{className:"flex items-center gap-2 text-sm",children:[f.jsx("input",{type:"checkbox",checked:c.hideForSubscribers,onChange:E=>h({...c,hideForSubscribers:E.target.checked})}),"Подписчикам OMP (и в льготный период)"]}),f.jsxs("label",{className:"flex items-center gap-2 text-sm",children:[f.jsx("input",{type:"checkbox",checked:c.tvHideIfLinkedSubscriber,onChange:E=>h({...c,tvHideIfLinkedSubscriber:E.target.checked})}),"ТВ, к которому привязан телефон с подпиской"]})]})]}),c.enabled&&!t.banners.some(E=>E.enabled)?f.jsx(Bt,{variant:"warn",children:"Нет ни одного включённого баннера: приложения рекламу не покажут, пока его нет."}):null,f.jsx(he,{disabled:p,onClick:()=>{const{banners:E,...D}=c;T("/admin/ads/config",D).then(()=>O())},children:"Сохранить настройки рекламы"})]})]}),f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Баннеры"}),f.jsx(ht,{children:"По закону о рекламе на баннере видны пометка «Реклама», рекламодатель и erid (токен ОРД). Без erid баннер не сохраняется. erid добавляется и в ссылку."})]}),f.jsxs(xe,{className:"space-y-3",children:[t.banners.length===0?f.jsx("p",{className:"text-sm text-muted-foreground",children:"Баннеров пока нет"}):null,f.jsx("ul",{className:"space-y-2",children:t.banners.map(E=>f.jsxs("li",{className:"flex flex-wrap items-center gap-3 rounded-md border border-border p-2",children:[f.jsx("img",{src:jS(E.image),alt:"",className:"h-16 w-12 rounded object-cover"}),f.jsxs("div",{className:"min-w-0 flex-1 text-sm",children:[f.jsxs("div",{className:"font-medium",children:[E.title," ",E.enabled?null:f.jsx(Oe,{variant:"secondary",children:"выключен"})]}),f.jsxs("div",{className:"text-xs text-muted-foreground",children:[E.advertiser," · erid ",E.erid," · вес ",E.weight,E.from||E.to?" · "+(Lm(E.from)||"...")+" - "+(Lm(E.to)||"..."):""]})]}),f.jsx(he,{size:"sm",variant:"secondary",onClick:()=>v(V6(E)),children:"Изменить"}),f.jsx(he,{size:"sm",variant:"destructive",disabled:p,onClick:()=>{confirm("Удалить баннер «"+E.title+"»? Статистика по нему останется.")&&T("/admin/ads/banner-remove",{id:E.id,confirm:"yes"}).then(()=>O())},children:"Удалить"})]},E.id))}),m?f.jsx(q6,{draft:m,setDraft:v,busy:p,uploading:S,error:j,onUpload:async E=>{const D=m.localId,k=++A.current;w(!0);try{const I=await H6(E),B=(await T("/admin/ads/image",{mime:E.type,data:I})).extra,F=B&&B.imageId;if(!F||k!==A.current)return;v(se=>se&&se.localId===D?{...se,image:F}:se)}finally{k===A.current&&w(!1)}},onSave:async()=>{const{localId:E,...D}=m;(await T("/admin/ads/banner",{banner:D})).ok&&(v(null),await O())}}):f.jsx(he,{variant:"secondary",onClick:()=>v(F6()),children:"Добавить баннер"})]})]}),f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Предпросмотр"}),f.jsx(ht,{children:"Так ячейка выглядит в каждом виде карточек на телефоне. Размер всегда как у соседних карточек."})]}),f.jsx(xe,{children:f.jsx(K6,{banner:m||t.banners[0]||null})})]}),f.jsx(Y6,{stats:r,days:o,setDays:u})]})}function q6({draft:e,setDraft:t,busy:n,uploading:r,error:l,onUpload:o,onSave:u}){const c=(m,v,p)=>f.jsxs("div",{className:"space-y-1",children:[f.jsx(yt,{htmlFor:"banner-"+m,children:v}),f.jsx($e,{id:"banner-"+m,type:(p==null?void 0:p.type)||"text",maxLength:p==null?void 0:p.max,placeholder:p==null?void 0:p.placeholder,value:e[m],onChange:x=>t({...e,[m]:x.target.value})}),p!=null&&p.hint?f.jsx("p",{className:"text-xs text-muted-foreground",children:p.hint}):null]}),h=!e.erid.trim();return f.jsxs("div",{className:"space-y-3 rounded-md border border-border p-3",children:[f.jsx("div",{className:"text-sm font-medium",children:e.id?"Изменить баннер":"Новый баннер"}),f.jsxs("div",{className:"grid gap-3 md:grid-cols-2",children:[c("title","Заголовок",{max:56,hint:"До 56 знаков"}),c("advertiser","Рекламодатель",{placeholder:"ООО «Ромашка», ИНН ...",hint:"Видно на баннере рядом с пометкой «Реклама»"}),c("text","Текст",{max:140,hint:"До 140 знаков, в виде «список» и между рельсами"}),c("erid","erid (токен ОРД)",{placeholder:"2SDnjc...",hint:"Обязательно. Выдаёт ОРД или партнёрская сеть"}),c("url","Ссылка",{placeholder:"https://...",hint:"На ТВ вместо клика QR-код с этой ссылкой"}),c("weight","Вес",{hint:"1-100: чем больше, тем чаще среди баннеров"}),c("from","Показывать с",{type:"date"}),c("to","Показывать по",{type:"date"})]}),f.jsxs("div",{className:"flex flex-wrap items-center gap-3",children:[e.image?f.jsx("img",{src:jS(e.image),alt:"",className:"h-24 w-16 rounded object-cover"}):f.jsx("div",{className:"flex h-24 w-16 items-center justify-center rounded bg-muted text-xs",children:"нет"}),f.jsxs("div",{className:"space-y-1",children:[f.jsx(yt,{htmlFor:"banner-image",children:"Картинка 2:3 (JPEG, PNG, WebP, до 300 КБ)"}),f.jsx("input",{id:"banner-image",type:"file",accept:"image/jpeg,image/png,image/webp",className:"text-sm",disabled:r,onChange:m=>{const v=m.target.files&&m.target.files[0];v&&o(v)}})]})]}),f.jsxs("div",{className:"grid gap-4 md:grid-cols-3",children:[f.jsxs("fieldset",{className:"space-y-1",children:[f.jsx("legend",{className:"mb-1 text-sm font-medium",children:"Разделы"}),$M.map(m=>f.jsxs("label",{className:"flex items-center gap-2 text-sm",children:[f.jsx("input",{type:"checkbox",checked:e.sections.indexOf(m)>=0,onChange:v=>t({...e,sections:ME(e.sections,m,v.target.checked)})}),bS[m]]},m))]}),f.jsxs("fieldset",{className:"space-y-1",children:[f.jsx("legend",{className:"mb-1 text-sm font-medium",children:"Платформы"}),BM.map(m=>f.jsxs("label",{className:"flex items-center gap-2 text-sm",children:[f.jsx("input",{type:"checkbox",checked:e.platforms.indexOf(m)>=0,onChange:v=>t({...e,platforms:ME(e.platforms,m,v.target.checked)})}),SS[m]]},m))]}),f.jsxs("fieldset",{className:"space-y-1",children:[f.jsx("legend",{className:"mb-1 text-sm font-medium",children:"ТВ"}),f.jsxs("select",{className:wS,value:e.tvMode,"aria-label":"Клик на ТВ",onChange:m=>t({...e,tvMode:m.target.value}),children:[f.jsx("option",{value:"qr",children:"QR-код со ссылкой"}),f.jsx("option",{value:"noclick",children:"Только баннер"})]}),f.jsxs("label",{className:"mt-2 flex items-center gap-2 text-sm",children:[f.jsx("input",{type:"checkbox",checked:e.enabled,onChange:m=>t({...e,enabled:m.target.checked})}),"Баннер включён"]})]})]}),h?f.jsx(Bt,{variant:"warn",children:"Без erid баннер не сохранится: это требование закона о маркировке рекламы."}):null,l?f.jsx(Bt,{variant:"warn",children:l}):null,f.jsxs("div",{className:"flex gap-2",children:[f.jsx(he,{disabled:n||h,onClick:()=>void u(),children:"Сохранить баннер"}),f.jsx(he,{variant:"ghost",onClick:()=>t(null),children:"Отмена"})]})]})}function K6({banner:e}){if(!e)return f.jsx("p",{className:"text-sm text-muted-foreground",children:"Добавьте баннер, чтобы увидеть предпросмотр"});const t=e.image?jS(e.image):"",n=o=>f.jsxs("div",{className:"relative overflow-hidden rounded-lg bg-zinc-800 "+o,style:{aspectRatio:"173 / 240"},children:[t?f.jsx("img",{src:t,alt:"",className:"h-full w-full object-cover"}):null,f.jsx("span",{className:"absolute left-1 top-1 rounded bg-black/70 px-1 text-[10px] font-bold text-amber-300",children:"Реклама"})]}),r=(o,u)=>Array.from({length:o},(c,h)=>f.jsxs("div",{className:"space-y-1",children:[f.jsx("div",{className:"rounded-lg bg-zinc-700/60 "+u,style:{aspectRatio:"173 / 240"}}),f.jsx("div",{className:"h-2 w-3/4 rounded bg-zinc-700/60"})]},h)),l=f.jsxs("div",{className:"min-w-0 space-y-1",children:[n(""),f.jsx("div",{className:"line-clamp-2 text-xs font-semibold",children:e.title||"Заголовок"}),f.jsxs("div",{className:"truncate text-[10px] text-muted-foreground",children:["Реклама · ",e.advertiser||"рекламодатель"]}),f.jsxs("div",{className:"truncate text-[10px] text-muted-foreground",children:["erid: ",e.erid||"..."]})]});return f.jsxs("div",{className:"grid gap-4 md:grid-cols-5",children:[f.jsxs("div",{children:[f.jsx("div",{className:"mb-1 text-xs text-muted-foreground",children:"«Мои»: крупно (2)"}),f.jsxs("div",{className:"grid grid-cols-2 gap-2 rounded-md bg-zinc-950 p-2",children:[r(1,""),l]})]}),f.jsxs("div",{children:[f.jsx("div",{className:"mb-1 text-xs text-muted-foreground",children:"«Мои»: мелко (3)"}),f.jsxs("div",{className:"grid grid-cols-3 gap-1 rounded-md bg-zinc-950 p-2",children:[r(2,""),l]})]}),f.jsxs("div",{children:[f.jsx("div",{className:"mb-1 text-xs text-muted-foreground",children:"«Мои»: список"}),f.jsxs("div",{className:"flex gap-2 rounded-md bg-zinc-950 p-2",children:[n("w-10 shrink-0"),f.jsxs("div",{className:"min-w-0 text-xs",children:[f.jsx("div",{className:"font-semibold",children:e.title||"Заголовок"}),f.jsx("div",{className:"text-muted-foreground",children:e.text}),f.jsxs("div",{className:"text-[10px] text-muted-foreground",children:["Реклама · ",e.advertiser||"рекламодатель"," · erid: ",e.erid||"..."]})]})]})]}),f.jsxs("div",{children:[f.jsx("div",{className:"mb-1 text-xs text-muted-foreground",children:"«Мои»: компактно"}),f.jsxs("div",{className:"rounded-md bg-zinc-950 p-2 text-xs",children:[f.jsx("div",{className:"font-semibold",children:e.title||"Заголовок"}),f.jsxs("div",{className:"text-[10px] text-muted-foreground",children:[f.jsx("span",{className:"rounded bg-amber-300/20 px-1 font-bold text-amber-300",children:"Реклама"})," ",e.advertiser||"рекламодатель"," · erid: ",e.erid||"..."]})]})]}),f.jsxs("div",{children:[f.jsx("div",{className:"mb-1 text-xs text-muted-foreground",children:"«Обзор»: 4 в ряд"}),f.jsxs("div",{className:"grid grid-cols-4 gap-1 rounded-md bg-zinc-950 p-2",children:[r(3,""),l]})]})]})}function Jh({title:e,rows:t,label:n}){return f.jsxs("div",{children:[f.jsx("div",{className:"mb-1 text-sm font-medium",children:e}),t.length===0?f.jsx("p",{className:"text-sm text-muted-foreground",children:"Нет данных"}):f.jsxs(Wn,{children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Что"}),f.jsx(Se,{className:"text-right",children:"Показы"}),f.jsx(Se,{className:"text-right",children:"Клики"}),f.jsx(Se,{className:"text-right",children:"CTR"})]})}),f.jsx(er,{children:t.map(r=>f.jsxs(qe,{children:[f.jsx(me,{children:n?n(r.key,r):r.key}),f.jsx(me,{className:"text-right",children:r.impressions}),f.jsx(me,{className:"text-right",children:r.clicks}),f.jsx(me,{className:"text-right",children:UM(r)})]},r.key))})]})]})}function Y6({stats:e,days:t,setDays:n}){return f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsxs(Te,{className:"flex flex-wrap items-center gap-2",children:["Статистика",f.jsxs("select",{className:wS,value:t,"aria-label":"Период",onChange:r=>n(Number(r.target.value)),children:[f.jsx("option",{value:7,children:"7 дней"}),f.jsx("option",{value:30,children:"30 дней"}),f.jsx("option",{value:90,children:"90 дней"})]})]}),f.jsx(ht,{children:"Показы (ячейка видна наполовину 1 секунду) и клики по дням МСК. Без ID устройств, хранится 90 дней."})]}),f.jsx(xe,{className:"space-y-4",children:e?f.jsxs(f.Fragment,{children:[f.jsx("div",{className:"grid grid-cols-3 gap-3",children:[[e.total.impressions,"показов"],[e.total.clicks,"кликов"],[UM(e.total),"CTR"]].map(([r,l])=>f.jsxs("div",{className:"rounded-md border border-border p-3",children:[f.jsx("div",{className:"text-2xl font-bold",children:r}),f.jsx("div",{className:"text-xs text-muted-foreground",children:l})]},l))}),f.jsxs("div",{className:"grid gap-4 md:grid-cols-3",children:[f.jsx(Jh,{title:"По баннерам",rows:e.byBanner,label:(r,l)=>l.title||l.key}),f.jsx(Jh,{title:"По разделам",rows:e.bySection,label:r=>bS[r]||r}),f.jsx(Jh,{title:"По платформам",rows:e.byPlatform,label:r=>SS[r]||r})]}),f.jsx(Jh,{title:"По дням",rows:e.byDay.filter(r=>r.impressions||r.clicks).reverse().map(r=>({key:r.day,impressions:r.impressions,clicks:r.clicks}))})]}):f.jsx(an,{className:"h-24"})})]})}function DE(e){const t=e||{};return{enabled:t.enabled===!0,yoomoney:t.yoomoney===!0,stars:t.stars===!0,crypto:t.crypto===!0,notifyAll:t.notifyAll===!0,showAmounts:t.showAmounts===!0,amounts:t.amounts||"100,300,500,1000",minRub:String(t.minRub??50),maxRub:String(t.maxRub??1e5),commentMax:String(t.commentMax??200),thanksText:t.thanksText||"Спасибо! Вы поддержали проект OMP.",rubPerStar:String(t.rubPerStar??0),notifyMin:String(t.notifyMin??0)}}function X6(e,t,n){return n?e:t}function Q6(e,t){const n=Object.keys(e);for(let r=0;rDE(e)),[c,h]=b.useState(null),[m,v]=b.useState("all"),[p,x]=b.useState("all"),S=b.useRef(0),w=b.useRef(o);w.current=o;const j=b.useRef({status:m,method:p});j.current={status:m,method:p};const C=c??(t==null?void 0:t.rows)??[],A=t==null?void 0:t.summary,N=(t==null?void 0:t.chart)||[],O=(t==null?void 0:t.top)||[];b.useEffect(()=>{u(P=>X6(P,DE(e),r))},[e,r]);async function T(P=m,B=p){const F=++S.current;if(P==="all"&&B==="all"){const G=PE(F,S.current,null);G!==void 0&&h(G);return}const se=new URLSearchParams;P!=="all"&&se.set("status",P),B!=="all"&&se.set("method",B);const ue=await ot("/admin/api/donations?"+se.toString());if(ue.auth===!1)return;const de=PE(F,S.current,ue.rows||[]);de!==void 0&&h(de)}b.useEffect(()=>{const P=j.current;P.status==="all"&&P.method==="all"||T(P.status,P.method)},[t]);function R(P){l(!0),u(B=>({...B,...P}))}const E=Math.max(1,...N.map(P=>P.rub)),D=[["День",A==null?void 0:A.day],["Неделя",A==null?void 0:A.week],["Месяц",A==null?void 0:A.month]];return f.jsxs("div",{className:"space-y-4",children:[f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Донаты"})}),f.jsxs(xe,{className:"space-y-3",children:[f.jsxs("label",{className:"flex items-center gap-2 text-sm",children:[f.jsx("input",{type:"checkbox",checked:o.enabled,onChange:P=>R({enabled:P.target.checked})}),"Принимать донаты"]}),f.jsxs("div",{className:"flex flex-wrap gap-4 text-sm",children:[f.jsxs("label",{className:"flex items-center gap-2",children:[f.jsx("input",{type:"checkbox",checked:o.yoomoney,onChange:P=>R({yoomoney:P.target.checked})})," ЮMoney"]}),f.jsxs("label",{className:"flex items-center gap-2",children:[f.jsx("input",{type:"checkbox",checked:o.stars,onChange:P=>R({stars:P.target.checked})})," Telegram Stars"]}),f.jsxs("label",{className:"flex items-center gap-2",children:[f.jsx("input",{type:"checkbox",checked:o.crypto,onChange:P=>R({crypto:P.target.checked})})," Crypto Pay"]}),f.jsxs("label",{className:"flex items-center gap-2",children:[f.jsx("input",{type:"checkbox",checked:o.notifyAll,onChange:P=>R({notifyAll:P.target.checked})})," Уведомлять о каждом"]}),f.jsxs("label",{className:"flex items-center gap-2",children:[f.jsx("input",{type:"checkbox",checked:o.showAmounts,onChange:P=>R({showAmounts:P.target.checked})})," Суммы в списке благодарностей"]})]}),f.jsxs("div",{className:"grid gap-3 md:grid-cols-3",children:[f.jsx(Xs,{label:"Кнопки сумм",value:o.amounts,onChange:P=>R({amounts:P})}),f.jsx(Xs,{label:"Минимум, ₽",value:o.minRub,onChange:P=>R({minRub:P})}),f.jsx(Xs,{label:"Максимум, ₽",value:o.maxRub,onChange:P=>R({maxRub:P})}),f.jsx(Xs,{label:"Комментарий, символов",value:o.commentMax,onChange:P=>R({commentMax:P})}),f.jsx(Xs,{label:"₽ за 1 звезду",value:o.rubPerStar,onChange:P=>R({rubPerStar:P})}),f.jsx(Xs,{label:"Порог уведомления, ₽",value:o.notifyMin,onChange:P=>R({notifyMin:P})})]}),f.jsxs("div",{children:[f.jsx(yt,{children:"Текст благодарности"}),f.jsx($e,{value:o.thanksText,onChange:P=>R({thanksText:P.target.value})})]}),f.jsx(he,{type:"button",onClick:()=>{const P=o;n("/admin/donate",{enabled:P.enabled?"true":"false",yoomoney:P.yoomoney?"true":"false",stars:P.stars?"true":"false",crypto:P.crypto?"true":"false",notifyAll:P.notifyAll?"true":"false",showAmounts:P.showAmounts?"true":"false",amounts:P.amounts,minRub:P.minRub,maxRub:P.maxRub,commentMax:P.commentMax,thanksText:P.thanksText,rubPerStar:P.rubPerStar,notifyMin:P.notifyMin}).then(B=>{l(W6(w.current,P,Z6(B)))})},children:"Сохранить"}),f.jsx("p",{className:"text-xs text-muted-foreground",children:"Пока флаг выключен, бот отвечает, что донат недоступен. Донат не продлевает подписку. Секреты ЮMoney, Stars и Crypto Pay берутся из тех же настроек оплаты."})]})]}),f.jsx("div",{className:"grid gap-3 md:grid-cols-3",children:D.map(([P,B])=>f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:P})}),f.jsxs(xe,{className:"text-sm",children:[f.jsx("div",{children:em((B==null?void 0:B.sum)||0)}),f.jsxs("div",{className:"text-muted-foreground",children:[(B==null?void 0:B.count)||0," донатов, средний чек ",em((B==null?void 0:B.average)||0)]})]})]},P))}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"30 дней, МСК"})}),f.jsxs(xe,{children:[f.jsx("div",{className:"flex h-36 items-end gap-px overflow-x-auto",children:N.map(P=>f.jsx("div",{title:P.day+": "+P.rub,className:"flex h-full min-w-[6px] flex-1 flex-col justify-end",children:f.jsx("div",{className:"w-full rounded-sm bg-[#f5b700]",style:{height:Math.max(2,Math.round(P.rub/E*128))+"px"}})},P.day))}),f.jsxs("div",{className:"mt-1 flex justify-between text-xs text-muted-foreground",children:[f.jsx("span",{children:((k=N[0])==null?void 0:k.day)||""}),f.jsx("span",{children:((I=N[N.length-1])==null?void 0:I.day)||""})]})]})]}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Топ"})}),f.jsx(xe,{className:"text-sm",children:O.length?O.map(P=>f.jsxs("div",{children:[P.who,": ",em(P.sum)," (",P.count,")"]},P.who+P.sum)):f.jsx("div",{className:"text-muted-foreground",children:"Пока нет оплаченных донатов"})})]}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Лента"})}),f.jsxs(xe,{className:"space-y-3",children:[f.jsxs("div",{className:"flex flex-wrap gap-2",children:[f.jsxs("select",{className:"rounded-md border bg-background px-2 py-1 text-sm",value:m,onChange:P=>{v(P.target.value),T(P.target.value,p)},children:[f.jsx("option",{value:"all",children:"все статусы"}),f.jsx("option",{value:"paid",children:"оплачен"}),f.jsx("option",{value:"pending",children:"ждёт"}),f.jsx("option",{value:"refunded",children:"возврат"})]}),f.jsxs("select",{className:"rounded-md border bg-background px-2 py-1 text-sm",value:p,onChange:P=>{x(P.target.value),T(m,P.target.value)},children:[f.jsx("option",{value:"all",children:"все способы"}),f.jsx("option",{value:"yoomoney",children:"ЮMoney"}),f.jsx("option",{value:"stars",children:"Stars"}),f.jsx("option",{value:"crypto",children:"Crypto Pay"})]}),f.jsx("a",{className:"text-sm text-primary",href:"/admin/donations.csv"+(m!=="all"||p!=="all"?"?"+new URLSearchParams({...m!=="all"?{status:m}:{},...p!=="all"?{method:p}:{}}).toString():""),children:"CSV"})]}),f.jsxs("div",{className:"overflow-x-auto",children:[f.jsxs("table",{className:"w-full text-left text-sm",children:[f.jsx("thead",{children:f.jsxs("tr",{className:"text-muted-foreground",children:[f.jsx("th",{className:"py-1 pr-2",children:"Время"}),f.jsx("th",{className:"py-1 pr-2",children:"Кто"}),f.jsx("th",{className:"py-1 pr-2",children:"Сумма"}),f.jsx("th",{className:"py-1 pr-2",children:"Способ"}),f.jsx("th",{className:"py-1 pr-2",children:"Комментарий"}),f.jsx("th",{className:"py-1 pr-2",children:"Статус"}),f.jsx("th",{className:"py-1",children:"Действия"})]})}),f.jsx("tbody",{children:C.map(P=>f.jsxs("tr",{className:"border-t border-border",children:[f.jsx("td",{className:"py-1 pr-2 whitespace-nowrap",children:P.atText}),f.jsx("td",{className:"py-1 pr-2",children:P.nameHidden?"имя скрыто":P.who||P.telegramId}),f.jsx("td",{className:"py-1 pr-2",children:em(P.amountRub)}),f.jsx("td",{className:"py-1 pr-2",children:P.method}),f.jsx("td",{className:"py-1 pr-2",children:P.commentHidden?"скрыт":P.comment}),f.jsx("td",{className:"py-1 pr-2",children:P.held&&P.status==="pending"?"ждёт в ЮMoney":J6[P.status]||P.status}),f.jsxs("td",{className:"py-1 space-x-2 whitespace-nowrap",children:[P.held&&P.status==="pending"?f.jsx("button",{type:"button",className:"text-primary",onClick:()=>{window.confirm("Подтвердить удержанный донат? Подписка не продлится.")&&n("/admin/donate/confirm",{id:P.id,confirm:"yes"}).then(()=>T())},children:"Подтвердить"}):null,P.status==="paid"?f.jsx("button",{type:"button",className:"text-primary",onClick:()=>{window.confirm("Отметить возврат? Деньги этой кнопкой не уходят.")&&n("/admin/donate/refund",{id:P.id,confirm:"yes"}).then(()=>T())},children:"Возврат"}):null,f.jsx("button",{type:"button",className:"text-primary",onClick:()=>void n("/admin/donate/hide",{id:P.id,field:"comment"}).then(()=>T()),children:P.commentHidden?"Вернуть комментарий":"Скрыть комментарий"}),f.jsx("button",{type:"button",className:"text-primary",onClick:()=>void n("/admin/donate/hide",{id:P.id,field:"name"}).then(()=>T()),children:P.nameHidden?"Вернуть имя":"Скрыть имя"})]})]},P.id))})]}),C.length?null:f.jsx("div",{className:"py-3 text-sm text-muted-foreground",children:"Пусто"})]})]})]})]})}function Xs({label:e,value:t,onChange:n}){return f.jsxs("label",{className:"block text-sm",children:[f.jsx("span",{className:"mb-1 block text-muted-foreground",children:e}),f.jsx($e,{value:t,onChange:r=>n(r.target.value)})]})}function t8({csrf:e,settings:t,journal:n,run:r}){const[l,o]=b.useState(t||{}),[u,c]=b.useState(n||[]),[h,m]=b.useState(!1),[v,p]=b.useState("");b.useEffect(()=>{o(t||{})},[t]),b.useEffect(()=>{c(n||[])},[n]);const x=async(w,j)=>{var A;const C={...l,...w};m(!0),p("");try{const N={settings:C,...j?{cancelId:j}:{}},O=r?await r(N):await Qt("/admin/referral",e,N);if(!O||O.auth===!1||O.ok===!1||(A=O.flash)!=null&&A.error){p(O&&O.flash&&O.flash.error||"Не сохранилось");return}o(C),j&&c(T=>T.map(R=>R.id===j?{...R,status:"cancelled",reason:"manual"}:R))}catch{p("Не сохранилось")}finally{m(!1)}},S=w=>void x({[w]:!l[w]});return f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Реферальная программа"})}),f.jsxs(xe,{className:"space-y-3",children:[v?f.jsx("p",{className:"text-sm text-destructive",children:v}):null,f.jsx(he,{type:"button",variant:l.enabled?"default":"secondary",disabled:h,onClick:()=>S("enabled"),children:l.enabled?"Программа включена":"Программа выключена"}),f.jsx(yt,{children:"Дни рефереру (макс. 14)"}),f.jsx($e,{defaultValue:String(l.referrerDays??0),onBlur:w=>void x({referrerDays:Number(w.target.value)})}),f.jsx(yt,{children:"Бонусные дни другу (макс. 14)"}),f.jsx($e,{defaultValue:String(l.friendDays??0),onBlur:w=>void x({friendDays:Number(w.target.value)})}),f.jsx(yt,{children:"Процент на баланс"}),f.jsx($e,{defaultValue:String(l.balancePercent??0),onBlur:w=>void x({balancePercent:Number(w.target.value)})}),f.jsx(he,{type:"button",variant:l.tiers?"default":"secondary",disabled:h,onClick:()=>S("tiers"),children:"Уровни 3/5/10"}),f.jsx(he,{type:"button",variant:l.friendDiscount?"default":"secondary",disabled:h,onClick:()=>S("friendDiscount"),children:"Скидка другу"}),f.jsx(he,{type:"button",variant:l.retention?"default":"secondary",disabled:h,onClick:()=>S("retention"),children:"Бонус удержания"}),f.jsxs("p",{className:"text-sm text-muted-foreground",children:["Начисление через ",l.delayDays??7," дн. после оплаты. Годовой лимит ",l.yearlyCap??12," мес. Только при активной подписке реферера и оплате друга."]}),f.jsx("h3",{className:"font-semibold",children:"Журнал"}),u.length===0?f.jsx("p",{className:"text-sm",children:"Начислений нет"}):u.map(w=>f.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[f.jsxs("span",{children:[w.friendId||w.id," · ",w.status," · ",w.days," дн."]}),w.status!=="cancelled"?f.jsx(he,{type:"button",variant:"secondary",disabled:h,onClick:()=>void x({},w.id),children:"Отменить"}):null]},w.id))]})]})}const n8=[["all","Все пункты"],["tech","Только техническое"],["user","Только для пользователей"]],r8={phone:"Телефон",tv:"ТВ",lg:"LG",atv:"Android TV"};function i8(e,t,n){const r=[];return e.forEach(l=>{if(!n&&l.beta)return;const o=l.items.filter(u=>t==="all"?!0:t==="tech"?u.tech:!u.tech);o.length&&r.push({...l,items:o})}),r}function a8(e){return e.unreleased?"Не выпущено":e.version}const l8="h-10 rounded-md border border-input bg-secondary px-3 text-sm text-foreground",kE=12;function o8(){const[e,t]=b.useState(null),[n,r]=b.useState("ru"),[l,o]=b.useState("all"),[u,c]=b.useState(!1),[h,m]=b.useState(kE),[v,p]=b.useState("");b.useEffect(()=>{let j=!1;return ot("/admin/api/changelog").then(C=>{if(!j){if(C.auth===!1){p("Нужен вход");return}t(C)}}).catch(C=>{j||p(C instanceof Error?C.message:"Не удалось загрузить")}),()=>{j=!0}},[]);const x=e?n==="en"&&(e.en||[]).length?e.en||[]:e.ru||[]:[],S=i8(x,l,u),w=x.reduce((j,C)=>j+C.items.filter(A=>A.tech).length,0);return f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Изменения"}),f.jsxs(ht,{children:["Полный CHANGELOG из main на GitHub. Пункты ",f.jsx("code",{children:"[tech]"})," видны только здесь: в приложении, релизе и Telegram их нет."]})]}),f.jsxs(xe,{className:"space-y-3",children:[f.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[f.jsx("select",{className:l8,value:l,"aria-label":"Какие пункты",onChange:j=>o(j.target.value),children:n8.map(([j,C])=>f.jsx("option",{value:j,children:C},j))}),f.jsxs("div",{className:"flex gap-1",role:"group","aria-label":"Язык",children:[f.jsx(he,{size:"sm",variant:n==="ru"?"default":"secondary",onClick:()=>r("ru"),children:"RU"}),f.jsx(he,{size:"sm",variant:n==="en"?"default":"secondary",onClick:()=>r("en"),disabled:!e||!(e.en||[]).length,children:"EN"})]}),f.jsxs("label",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[f.jsx("input",{type:"checkbox",checked:u,onChange:j=>c(j.target.checked)}),"Бета-версии"]}),e!=null&&e.ok?f.jsxs("span",{className:"ml-auto text-xs text-muted-foreground",children:[w," тех. пунктов · загружено ",f.jsx(dt,{ms:n==="en"?e.enFetchedAt:e.fetchedAt})]}):null]}),v?f.jsx(Bt,{variant:"destructive",children:v}):null,e&&!e.ok?f.jsxs(Bt,{variant:"destructive",children:["GitHub не ответил",e.error?": "+e.error:"",". Попробуйте позже."]}):null,e!=null&&e.ok&&e.stale?f.jsxs(Bt,{variant:"warn",children:["Показана сохранённая копия: GitHub не ответил",e.error?" ("+e.error+")":"","."]}):null,e!=null&&e.ok&&n==="en"&&e.enStale?f.jsxs(Bt,{variant:"warn",children:["Английский текст из сохранённой копии",e.enFetchedAt?"":" (не загружался)",": CHANGELOG.en.md не ответил",e.enError?" ("+e.enError+")":"","."]}):null,e===null&&!v?f.jsx(an,{className:"h-24"}):e!=null&&e.ok&&S.length===0?f.jsx("p",{className:"text-sm text-muted-foreground",children:"Пунктов нет"}):f.jsxs("div",{className:"space-y-4",children:[S.slice(0,h).map(j=>f.jsxs("section",{className:"space-y-2",children:[f.jsxs("h3",{className:"flex flex-wrap items-center gap-2 text-base font-semibold",children:[a8(j),j.unreleased?f.jsx(Oe,{variant:"warn",children:"не в релизе"}):null,j.beta?f.jsx(Oe,{variant:"secondary",children:"бета"}):null]}),f.jsx("ul",{className:"space-y-1 text-sm",children:j.items.map((C,A)=>f.jsxs("li",{className:"flex items-start gap-2 rounded-md px-2 py-1 "+(C.tech?"border-l-2 border-amber-500 bg-amber-950/30":"border-l-2 border-transparent"),children:[C.tech?f.jsx(Oe,{variant:"warn",className:"shrink-0",children:"tech"}):null,C.platform?f.jsx(Oe,{variant:"secondary",className:"shrink-0",children:r8[C.platform]||C.platform}):null,f.jsx("span",{className:"min-w-0 flex-1 "+(C.tech?"text-amber-100":""),children:C.text})]},A))})]},j.version)),S.length>h?f.jsxs(he,{variant:"secondary",onClick:()=>m(j=>j+kE),children:["Показать ещё (",S.length-h,")"]}):null]})]})]})}const FM="omp-admin-monitor-view",IE={filter:"all",sort:"status",desc:!1,q:"",open:{}},F0={all:"Все",errors:"Только ошибки",noalert:"Без алерта",code:"Просит код"},V0={status:"Статус",name:"Название",ms:"Время ответа",time:"Время проверки"};function s8(e){try{const t=e?e.getItem(FM):null;if(!t)return{...IE,open:{}};const n=JSON.parse(t),r={};if(n.open&&typeof n.open=="object")for(const[l,o]of Object.entries(n.open))typeof o=="boolean"&&/^[a-z]{1,20}$/.test(l)&&(r[l]=o);return{filter:n.filter&&n.filter in F0?n.filter:"all",sort:n.sort&&n.sort in V0?n.sort:"status",desc:n.desc===!0,q:typeof n.q=="string"?n.q.slice(0,100):"",open:r}}catch{return{...IE,open:{}}}}function u8(e,t){try{e&&e.setItem(FM,JSON.stringify(t))}catch{}}function c8(e){const t=[],n=new Map;for(const r of e){const l=/^(.*):(direct|warp|site)$/.exec(r.id),o=l?l[1]:r.path==="jackett"?r.id:"";if(!o){t.push({key:r.id,kind:"check",name:r.name,target:r.target||"",checks:[r],check:r});continue}let u=n.get(o);u||(u={key:o,kind:"tracker",name:r.name,target:"",checks:[]},n.set(o,u),t.push(u)),u.checks.push(r),r.target&&!u.target&&r.path!=="jackett"&&(u.target=r.target),r.path==="jackett"?u.search=r:l&&l[2]==="direct"?u.direct=r:l&&l[2]==="warp"?u.warp=r:u.site=r}return t}function G0(e){return e.checks.some(t=>t.ok===!1)?!1:e.checks.some(t=>t.ok===!0)?!0:null}const CS=e=>e.ok===!0&&!!e.warn;function VM(e){const t=G0(e);return t===!1?"red":t===null?"none":e.checks.some(CS)?"yellow":"green"}function f8(e){const t=e%10,n=e%100,r=t===1&&n!==11?"жёлтая":t>=2&&t<=4&&(n<12||n>14)?"жёлтые":"жёлтых";return e+" "+r}const d8={red:0,yellow:1,none:2,green:3},zE=e=>d8[VM(e)],LE=e=>Math.max(0,...e.checks.map(t=>Number(t.ms)||0)),UE=e=>Math.max(0,...e.checks.map(t=>Number(t.at)||0));function h8(e,t){const n=e.checks.filter(r=>r.ok===!1);return t==="errors"?n.length>0:t==="code"?e.checks.some(CS):t==="noalert"?n.length>0&&n.every(r=>!r.alert):!0}function m8(e,t){const n=t.trim().toLowerCase();return n?[e.name,e.target,e.key,...e.checks.map(l=>l.detail)].join(" ").toLowerCase().includes(n):!0}function v8(e,t,n){const r=(o,u)=>o.name.localeCompare(u.name,"ru"),l=(o,u)=>t==="name"?r(o,u):t==="ms"?LE(o)-LE(u)||r(o,u):t==="time"?UE(o)-UE(u)||r(o,u):zE(o)-zE(u)||r(o,u);return e.map((o,u)=>({it:o,i:u})).sort((o,u)=>(n?-l(o.it,u.it):l(o.it,u.it))||o.i-u.i).map(o=>o.it)}function g8(e,t,n){const r=n.filter!=="all"||!!n.q.trim(),l=[];e.forEach(u=>{const c=t.filter(C=>C.group===u.id);if(!c.length)return;const h=c8(c),m=c.filter(C=>C.ok===!1).length,v=v8(h.filter(C=>h8(C,n.filter)&&m8(C,n.q)),n.sort,n.desc);if(r&&!v.length)return;const p=n.open[u.id],x=h.filter(C=>G0(C)===!0).length,S=h.filter(C=>G0(C)===null).length,w=h.filter(C=>VM(C)==="yellow").length,j=r?!1:p===void 0?x===h.length:!p;l.push({id:u.id,title:u.title,total:h.length,okCount:x,warned:w,skipped:S,failed:m,folded:j,items:v})});const o=new Map(e.map((u,c)=>[u.id,c]));return l.sort((u,c)=>(u.failed?0:1)-(c.failed?0:1)||(o.get(u.id)||0)-(o.get(c.id)||0))}const p8={queued:"в очереди",running:"проверяется",retry:"ждёт повтора",done:"готово"},GM=b.createContext({states:{},running:!1,pending:[],recheck:()=>{}});function q0({ids:e,red:t,recheckIds:n}){const r=n||e,l=b.useContext(GM),o=e.map(c=>l.states[c]).filter(Boolean),u=r.some(c=>l.pending.includes(c));if(l.running&&o.length){const c=o.includes("running")?"running":o.includes("retry")?"retry":o.includes("queued")?"queued":"done";return f.jsxs(Oe,{variant:c==="done"?"ok":c==="retry"?"warn":"secondary",className:"ml-2 align-middle","data-row-state":c,children:[c==="running"?f.jsx("span",{className:"mr-1 inline-block h-2 w-2 animate-spin rounded-full border border-current border-t-transparent"}):null,p8[c]]})}return!t||!r.length?null:f.jsxs(he,{type:"button",size:"sm",variant:"outline",className:"ml-2 h-7 px-2 text-xs",disabled:l.running||u,title:l.running?"Идёт проверка, дождитесь конца":"Проверить заново только эту строку",onClick:()=>l.recheck(r),"data-recheck":r.join(","),children:[u?f.jsx("span",{className:"mr-1 inline-block h-2 w-2 animate-spin rounded-full border border-current border-t-transparent"}):null,"Перепроверить"]})}const $E={direct:"напрямую",warp:"через WARP",jackett:"через Jackett",internal:"внутр. сеть"};function _S({ok:e,alerted:t,warn:n}){return e===!0&&n?f.jsx(Oe,{variant:"warn","data-status":"code",title:"Сайт отвечает страницей с капчей или проверкой на робота. Человек откроет, алерта нет.",children:"Просит код"}):e===!0?f.jsx(Oe,{variant:"ok",children:"ок"}):e===!1?f.jsx(Oe,{variant:"bad",children:t?"ошибка · в Telegram":"ошибка"}):f.jsx(Oe,{variant:"secondary",children:"-"})}function K0({strip:e,uptime:t}){return f.jsxs("div",{className:"flex items-center gap-2",title:"7 дней, по часам: зелёный - всё ок, красный - была ошибка, серый - нет данных",children:[f.jsx("div",{className:"flex h-3.5 items-stretch overflow-hidden rounded-sm","data-testid":"history-strip",children:e.split("").map((n,r)=>f.jsx("span",{className:"w-[2px] "+(n==="g"?"bg-emerald-600":n==="r"?"bg-red-600":"bg-zinc-800")},r))}),f.jsx("span",{className:"w-12 text-right text-xs text-muted-foreground",children:t==null?"-":t+"%"})]})}function qM({path:e}){return!e||!$E[e]?null:f.jsx(Oe,{variant:"secondary",className:"ml-2 align-middle",children:$E[e]})}function Um(e){return new Date(e).toLocaleTimeString("ru-RU",{timeZone:"Europe/Moscow",hour12:!1})}function KM({row:e}){return e?f.jsxs("span",{className:"text-xs",children:[e.detail||"-",e.ms?f.jsxs("span",{className:"text-muted-foreground",children:[" · ",e.ms," мс"]}):null,e.at?f.jsxs("span",{className:"text-muted-foreground",children:[" · ",Um(e.at)]}):null,e.retried&&e.ok===!1?f.jsx("span",{className:"text-muted-foreground",children:" · повтор через 30 с"}):null,!e.alert&&e.ok===!1?f.jsx("span",{className:"text-muted-foreground",children:" · без алерта"}):null]}):f.jsx("span",{className:"text-muted-foreground",children:"-"})}function BE(){try{return typeof window>"u"?null:window.localStorage}catch{return null}}function y8({rows:e}){return f.jsxs(Wn,{children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{className:"w-28",children:"Статус"}),f.jsx(Se,{children:"Проверка"}),f.jsx(Se,{children:"Результат"}),f.jsx(Se,{className:"w-[240px]",children:"7 дней"})]})}),f.jsx(er,{children:e.map(t=>f.jsxs(qe,{"data-check":t.id,children:[f.jsx(me,{children:f.jsx(_S,{ok:t.ok,alerted:t.alerted,warn:t.warn})}),f.jsxs(me,{className:"font-medium",children:[t.name,t.group==="containers"?null:f.jsx(qM,{path:t.path}),f.jsx(q0,{ids:[t.id],red:t.ok===!1})]}),f.jsxs(me,{children:[f.jsx(KM,{row:t}),t.context?f.jsx("div",{className:"text-xs text-muted-foreground",children:t.context}):null]}),f.jsx(me,{children:f.jsx(K0,{strip:t.history,uptime:t.uptime})})]},t.id))})]})}function bx({row:e}){return e?f.jsxs("div",{className:"space-y-1",children:[f.jsx(_S,{ok:e.ok,alerted:e.alerted,warn:e.warn}),f.jsxs("div",{className:"max-w-[260px] text-xs text-muted-foreground",children:[e.detail,e.ms?" · "+e.ms+" мс":"",e.at?" · "+Um(e.at):""]})]}):f.jsx("span",{className:"text-xs text-muted-foreground",children:"-"})}function x8({rows:e,withSearch:t}){return f.jsxs(Wn,{children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Трекер"}),t?f.jsx(Se,{children:"Поиск через Jackett"}):null,f.jsx(Se,{children:"Сайт напрямую"}),f.jsx(Se,{children:"Сайт через WARP"}),f.jsx(Se,{className:"w-[240px]",children:"7 дней"})]})}),f.jsx(er,{children:e.map(n=>{if(n.kind==="check"&&n.check){const l=n.check;return f.jsxs(qe,{"data-check":l.id,children:[f.jsxs(me,{className:"font-medium",children:[l.name,f.jsx(qM,{path:l.path}),f.jsx(q0,{ids:[l.id],red:l.ok===!1})]}),f.jsxs(me,{colSpan:t?3:2,children:[f.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[f.jsx(_S,{ok:l.ok,alerted:l.alerted,warn:l.warn}),f.jsx(KM,{row:l})]}),l.context?f.jsx("div",{className:"text-xs text-muted-foreground",children:l.context}):null]}),f.jsx(me,{children:f.jsx(K0,{strip:l.history,uptime:l.uptime})})]},n.key)}const r=n.search||n.warp||n.direct||n.site;return f.jsxs(qe,{"data-check":n.key,children:[f.jsxs(me,{className:"font-medium",children:[n.name,f.jsx(q0,{ids:n.checks.map(l=>l.id),red:n.checks.some(l=>l.ok===!1),recheckIds:n.checks.filter(l=>l.ok===!1).map(l=>l.id)}),n.target?f.jsx("div",{className:"text-xs text-muted-foreground",children:n.target}):null]}),t?f.jsx(me,{children:f.jsx(bx,{row:n.search})}):null,f.jsx(me,{children:n.site?f.jsx("span",{className:"text-xs text-muted-foreground",children:n.site.detail}):f.jsx(bx,{row:n.direct})}),f.jsx(me,{children:n.site?null:f.jsx(bx,{row:n.warp})}),f.jsx(me,{children:r?f.jsx(K0,{strip:r.history,uptime:r.uptime}):null})]},n.key)})})]})}function b8({view:e,onToggle:t}){const{id:n,title:r,items:l,failed:o}=e,u=n==="jackett"||n==="jacred",c=r+" "+e.okCount+"/"+e.total+(e.warned?", "+f8(e.warned):"")+(e.skipped?", не проверено: "+e.skipped:""),h=o?f.jsxs(Oe,{variant:"bad",children:["ошибок: ",o]}):e.warned?f.jsxs(Oe,{variant:"warn",children:["просит код: ",e.warned]}):e.skipped?f.jsxs(Oe,{variant:"warn",children:["не проверено: ",e.skipped]}):f.jsx(Oe,{variant:"ok",children:"всё ок"});if(e.folded)return f.jsx(ye,{"data-group":n,"data-folded":"1",children:f.jsxs("button",{type:"button",className:"flex w-full items-center justify-between gap-2 px-6 py-4 text-left",onClick:()=>t(n,!0),"aria-expanded":!1,children:[f.jsxs("span",{className:"font-semibold",children:[f.jsx("span",{className:"mr-2 text-muted-foreground",children:"▸"}),c]}),h]})});const m=l.some(p=>p.kind==="tracker"),v=l.map(p=>p.check);return f.jsxs(ye,{"data-group":n,children:[f.jsxs(Ne,{className:"flex flex-row flex-wrap items-center justify-between gap-2",children:[f.jsx("button",{type:"button",className:"text-left",onClick:()=>t(n,!1),"aria-expanded":!0,children:f.jsxs(Te,{children:[f.jsx("span",{className:"mr-2 text-muted-foreground",children:"▾"}),c]})}),h]}),f.jsxs(xe,{className:"space-y-3",children:[m?f.jsx(x8,{rows:l,withSearch:n==="jackett"}):l.length?f.jsx(y8,{rows:v}):null,u?f.jsx("p",{className:"text-xs text-muted-foreground",children:n==="jackett"?"Поиск через Jackett - тот путь, которым идут пользователи (Jackett сам ходит через WARP и FlareSolverr). Сайт напрямую и через WARP показывает, какой путь закрыт. Алерт: поиск не работает, или сайт не открывается ни напрямую, ни через WARP.":"JacRed берёт базу с sync.jacred.stream, сам на трекеры не ходит. Строки трекеров показывают, открывается ли сайт напрямую и через WARP; алерт - только если ни так, ни так."}):null]})]})}const S8="h-10 rounded-md border border-input bg-secondary px-3 text-sm text-foreground";function w8({prefs:e,setPrefs:t,shown:n}){return f.jsx(ye,{children:f.jsxs(xe,{className:"flex flex-wrap items-end gap-3 pt-6",children:[f.jsxs("div",{className:"space-y-1",children:[f.jsx(yt,{children:"Показать"}),f.jsx("div",{className:"flex gap-1",role:"group","aria-label":"Фильтр",children:Object.keys(F0).map(r=>f.jsx(he,{type:"button",size:"sm",className:"h-10",variant:e.filter===r?"default":"outline","aria-pressed":e.filter===r,title:r==="noalert"?"Красные строки, по которым алерт не уходит (например, сайт закрыт только напрямую)":void 0,onClick:()=>t({...e,filter:r}),children:F0[r]},r))})]}),f.jsxs("div",{className:"space-y-1",children:[f.jsx(yt,{htmlFor:"monitorSearch",children:"Поиск"}),f.jsx($e,{id:"monitorSearch",className:"w-56",placeholder:"название, адрес, ошибка",value:e.q,onChange:r=>t({...e,q:r.target.value})})]}),f.jsxs("div",{className:"space-y-1",children:[f.jsx(yt,{htmlFor:"monitorSort",children:"Сортировка"}),f.jsxs("div",{className:"flex gap-1",children:[f.jsx("select",{id:"monitorSort",className:S8,value:e.sort,onChange:r=>t({...e,sort:r.target.value}),children:Object.keys(V0).map(r=>f.jsx("option",{value:r,children:V0[r]},r))}),f.jsx(he,{type:"button",variant:"outline",className:"w-10 px-0",title:e.desc?"По убыванию":"По возрастанию","aria-label":e.desc?"По убыванию":"По возрастанию",onClick:()=>t({...e,desc:!e.desc}),children:e.desc?"↓":"↑"})]})]}),f.jsxs("div",{className:"text-xs text-muted-foreground",children:["Строк: ",n]})]})})}function j8({data:e,busy:t,interval:n,setInterval:r,onRun:l,onRecheck:o,onSave:u,prefs:c,setPrefs:h,onRowRecheck:m,pending:v}){const p=!!(e!=null&&e.running),x=(e==null?void 0:e.checks)||[],S=x.filter(R=>R.ok===!1).length,w=new Set(x.filter(CS).map(R=>R.id.replace(/:(direct|warp|site)$/,""))).size,j=g8((e==null?void 0:e.groups)||[],x,c),C=j.reduce((R,E)=>R+(E.folded?0:E.items.length),0),A=p&&(e==null?void 0:e.progress)||null,N=p?null:(e==null?void 0:e.lastSummary)||null,O=R=>{var E;return((E=x.find(D=>D.id===R))==null?void 0:E.name)||R},T={states:(A==null?void 0:A.states)||{},running:p,pending:v||[],recheck:m||(()=>{})};return f.jsx(GM.Provider,{value:T,children:f.jsxs("div",{className:"space-y-4",children:[f.jsxs(ye,{children:[f.jsxs(Ne,{className:"flex flex-row flex-wrap items-start justify-between gap-3",children:[f.jsxs("div",{className:"space-y-1",children:[f.jsx(Te,{children:"Мониторинг"}),f.jsxs(ht,{children:[e!=null&&e.lastRun?"Последняя проверка: "+zi(e.lastRun.finishedAt)+(e.lastRun.trigger==="manual"?" (вручную)":e.lastRun.trigger==="recheck"?" (перепроверка)":"")+".":"Проверок ещё не было.",e!=null&&e.scheduled&&(e!=null&&e.nextRunAt)?" Следующая около "+zi(e.nextRunAt)+".":"",e&&!e.scheduled?" Расписание на этом экземпляре выключено, работает только ручная проверка.":""]}),f.jsx(ht,{children:"Перед алертом упавшая проверка повторяется через 30 с. Алерт приходит в Telegram один раз на проблему и ещё раз, когда починилось."})]}),f.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[x.length?S?f.jsxs(Oe,{variant:"bad",children:["ошибок: ",S]}):f.jsx(Oe,{variant:"ok",children:"всё ок"}):null,w?f.jsxs(Oe,{variant:"warn",title:"Сайты, которые отвечают капчей или проверкой на робота (без алерта)",children:["просит код: ",w]}):null,f.jsx(he,{type:"button",disabled:t||p,onClick:l,children:p?"Проверка идёт…":"Проверить сейчас"}),S?f.jsx(he,{type:"button",variant:"secondary",disabled:t||p,onClick:o,title:"Запустить заново только красные проверки, остальные сохраняют последний результат",children:"Перепроверить все ошибки"}):null]})]}),f.jsxs(xe,{className:"space-y-3",children:[A?f.jsxs("div",{className:"space-y-1","data-testid":"monitor-progress",children:[f.jsxs("div",{className:"text-sm",children:["Проверка идёт: ",A.done," из ",A.total,", начата ",Um(A.startedAt)," МСК",A.trigger==="recheck"?" (перепроверка)":"",Object.values(A.states).includes("retry")?", ждёт повтора: "+Object.values(A.states).filter(R=>R==="retry").length:""]}),f.jsx("div",{className:"h-2 w-full max-w-md overflow-hidden rounded bg-zinc-800",children:f.jsx("div",{className:"h-full bg-amber-500 transition-all",style:{width:Math.round(100*A.done/Math.max(1,A.total))+"%"}})})]}):null,N?f.jsxs("div",{className:"text-sm text-muted-foreground","data-testid":"monitor-summary",children:["Готово в ",Um(N.finishedAt)," МСК",N.ids?" ("+N.ids.map(O).join(", ")+")":N.trigger==="recheck"?" (перепроверка ошибок)":"",": проверено ",N.checked,", ошибок ",N.failed,N.retried?", повторено через 30 с: "+N.retried:"",", заняло ",Math.max(1,Math.round((N.finishedAt-N.startedAt)/1e3))," с."]}):null,f.jsxs("form",{className:"flex flex-wrap items-end gap-2",onSubmit:R=>{R.preventDefault(),u()},children:[f.jsxs("div",{className:"space-y-1",children:[f.jsx(yt,{htmlFor:"monitorInterval",children:"Интервал, минут (5-1440)"}),f.jsx($e,{id:"monitorInterval",className:"w-32",inputMode:"numeric",value:n,onChange:R=>r(R.target.value)})]}),f.jsx(he,{type:"submit",variant:"secondary",disabled:t,children:"Сохранить"})]})]})]}),e!=null&&e.error?f.jsx(Bt,{variant:"destructive",children:e.error==="read_only"?"Сервер в режиме только чтения: мониторинг не работает.":"Мониторинг недоступен на этом экземпляре."}):null,!e&&t?f.jsx(an,{className:"h-40"}):null,x.length?f.jsx(w8,{prefs:c,setPrefs:h,shown:C}):null,x.length&&!j.length?f.jsx("p",{className:"text-sm text-muted-foreground",children:"Ничего не найдено."}):null,j.map(R=>f.jsx(b8,{view:R,onToggle:(E,D)=>h({...c,open:{...c.open,[E]:D}})},R.id))]})})}function C8({csrf:e}){const[t,n]=b.useState(null),[r,l]=b.useState(!1),[o,u]=b.useState(""),[c,h]=b.useState(""),m=b.useRef(!1),[v,p]=b.useState([]),[x,S]=b.useState(()=>s8(BE())),w=O=>{S(O),u8(BE(),O)};async function j(){let O;try{O=await ot("/admin/api/monitor")}catch{return h("Нет связи с сервером"),null}if(O.auth===!1)return h("Нужен вход"),null;if(!O.ok)return h(O.error==="read_only"?"Этот экземпляр только для чтения, мониторинг здесь не работает":"Мониторинг недоступен"),null;if(h(""),n(O),u(T=>T||String(O.intervalMin||"")),m.current&&!O.running){const T=O.lastSummary;ft(T?"Проверка завершена: проверено "+T.checked+", ошибок "+T.failed+(T.retried?", повторено через 30 с: "+T.retried:"")+", заняло "+Math.max(1,Math.round((T.finishedAt-T.startedAt)/1e3))+" с":"Проверка завершена")}return O.running||p([]),m.current=!!O.running,O}b.useEffect(()=>{l(!0),j().finally(()=>l(!1))},[]),b.useEffect(()=>{const O=window.setInterval(()=>void j(),t!=null&&t.running?3e3:6e4);return()=>window.clearInterval(O)},[t==null?void 0:t.running]);async function C(O=!1){l(!0);try{const T=await Qt("/admin/monitor/run",e,O?{only:"failed"}:{});if(T.auth===!1)return h("Нужен вход");if(!T.ok){ft(T.error||"Не запущено, обновите страницу");return}ft(O?"Перепроверяю красные проверки":"Проверка запущена, займёт до нескольких минут"),m.current=!0,await j()}catch{ft("Нет связи с сервером")}finally{l(!1)}}async function A(O){p(O);try{const T=await Qt("/admin/monitor/run",e,{ids:O});if(T.auth===!1)return h("Нужен вход");if(!T.ok){p([]),ft(T.error||"Не запущено, обновите страницу");return}m.current=!0,await j()}catch{p([]),ft("Нет связи с сервером")}}async function N(){l(!0);try{const O=await Qt("/admin/monitor/config",e,{intervalMin:o});if(O.auth===!1)return h("Нужен вход");O.ok?(ft("Интервал: "+O.intervalMin+" мин"),u(String(O.intervalMin)),await j()):ft(O.error||"Не сохранено")}catch{ft("Нет связи с сервером")}finally{l(!1)}}return f.jsxs(f.Fragment,{children:[c?f.jsx(Bt,{variant:"destructive",children:c}):null,f.jsx(j8,{data:t,busy:r,interval:o,setInterval:u,onRun:()=>void C(),onRecheck:()=>void C(!0),onSave:()=>void N(),prefs:x,setPrefs:w,onRowRecheck:O=>void A(O),pending:v})]})}function _8(){let e=0;return{next(){return e+=1,e},isCurrent(t){return t===e}}}function A8(e){if(e.auth===!1)return"Нужен вход";const t=e.ms||0;return e.reason==="probe_rate"?"лимит проверки - это лимит кнопки, не сбой DHT":e.reason==="sidecar_rate"?"sidecar занят (429) - это лимит sidecar, не лимит кнопки":e.ok||e.reason==="ok"?"ок, пиров "+(e.peers||0)+", "+t+" мс":e.reason==="not_ready"?"проверка: DHT еще не поднялся ("+t+" мс)":e.reason==="disabled"?"проверка: sidecar выключен ("+t+" мс)":e.reason==="down"?"проверка: sidecar не ответил ("+t+" мс)":e.error==="rate"||e.status===429?"лимит проверки - это лимит кнопки, не сбой DHT":e.status===503?"проверка: sidecar выключен ("+t+" мс)":"проверка не прошла ("+(e.status||0)+", "+t+" мс)"}const E8=2e4;function O8(e){return e==null||e<0?"":e>=1024*1024?Math.round(e/(1024*1024)*10)/10+" МБ":Math.max(1,Math.round(e/1024))+" КБ"}function N8(e){const t=e.sidecar;return!e.configured&&!(t&&t.configured)?f.jsx(Oe,{variant:"secondary",children:"не настроен"}):t&&t.ok?f.jsxs(Oe,{variant:"ok",children:["доступен · ",t.latencyMs||0," мс"]}):f.jsx(Oe,{variant:"bad",children:"не отвечает"})}function T8(e){return e==="up"?"сокет открыт":e==="idle"?"сокет закрыт":""}function R8(e){const t=e&&typeof e.perMinute=="number"?e.perMinute:30;return t<=0?"лимит выключен (0 в настройках)":t+" запросов в минуту на устройство"}function HE({rows:e,field:t,label:n,color:r}){const l=Math.max(1,...e.map(c=>c[t])),o=e[0]?zi(e[0].t):"",u=e.length?zi(e[e.length-1].t):"";return f.jsxs("div",{children:[f.jsx("div",{className:"mb-2 text-sm text-muted-foreground",children:n}),f.jsx("div",{className:"flex h-36 items-end gap-px overflow-x-auto",children:e.map(c=>f.jsx("div",{title:zi(c.t)+": "+c[t],className:"flex h-full min-w-[4px] flex-1 flex-col justify-end",children:f.jsx("div",{className:"w-full rounded-sm",style:{height:Math.max(2,Math.round(c[t]/l*128))+"px",background:r}})},t+":"+c.t))}),f.jsxs("div",{className:"mt-1 flex justify-between text-xs text-muted-foreground",children:[f.jsx("span",{children:o}),f.jsx("span",{children:u})]})]})}function M8({csrf:e}){const[t,n]=b.useState(null),[r,l]=b.useState(""),[o,u]=b.useState(null),[c,h]=b.useState(!1),m=b.useRef(_8()),v=b.useCallback(()=>{const O=m.current.next();return ot("/admin/api/dht").then(T=>{if(m.current.isCurrent(O)){if(T.auth===!1){l("Нужен вход");return}l(""),n(T)}}).catch(T=>{m.current.isCurrent(O)&&l(T instanceof Error?T.message:"Не удалось загрузить DHT")})},[]);b.useEffect(()=>{v();const O=window.setInterval(()=>void v(),E8);return()=>{m.current.next(),window.clearInterval(O)}},[v]);async function p(){h(!0);try{const O=await ot("/admin/api/dht/probe",{method:"POST",headers:{"content-type":"application/json",Accept:"application/json"},body:JSON.stringify({csrf:e})});u(O),await v()}catch(O){u({ok:!1,error:O instanceof Error?O.message:"проверка"})}finally{h(!1)}}const x=t&&t.stats||{},S=x.requests24h||0,w=x.withPeers24h||0,j=x.errors||[],C=x.series||[],A=t&&t.sidecar?O8(t.sidecar.rss):"",N=t&&t.sidecar&&t.sidecar.ok?T8(t.sidecar.dht):"";return f.jsxs("div",{className:"space-y-4",children:[f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[f.jsx(Te,{children:"DHT"}),f.jsxs("div",{className:"flex gap-2",children:[f.jsx(he,{type:"button",size:"sm",variant:"secondary",onClick:()=>void v(),children:"Обновить"}),f.jsx(he,{type:"button",size:"sm",disabled:!e||c,onClick:()=>void p(),children:c?"Проверка...":"Проверить DHT"})]})]})}),f.jsxs(xe,{className:"space-y-3 text-sm",children:[r?f.jsx("p",{className:"text-destructive",children:r}):null,!t&&!r?f.jsx("p",{className:"text-muted-foreground",children:"Загрузка..."}):null,t?f.jsxs(f.Fragment,{children:[f.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[f.jsx("span",{children:"omp-dht-peers"}),N8(t),N?f.jsx("span",{className:"text-muted-foreground",children:N}):null,A?f.jsxs("span",{className:"text-muted-foreground",children:["память ",A]}):null]}),f.jsxs("p",{className:"text-muted-foreground",children:["Лимит: ",R8(t.limit),". Меняется в «Настройках». Обновление само, раз в 20 с."]}),o?f.jsx("p",{children:A8(o)}):null,f.jsxs("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-4",children:[f.jsxs("div",{children:[f.jsx("div",{className:"text-muted-foreground",children:"Запросов за 24 ч"}),f.jsx("div",{className:"text-lg font-semibold",children:S})]}),f.jsxs("div",{children:[f.jsx("div",{className:"text-muted-foreground",children:"С пирами"}),f.jsx("div",{className:"text-lg font-semibold",children:S?x.peersSharePct+"% ("+w+" из "+S+")":"нет запросов"}),f.jsxs("div",{className:"text-muted-foreground",children:["Ошибок за 24 ч: ",x.errors24h||0," (4xx ",x.errors4xx24h||0,", 5xx ",x.errors5xx24h||0,")"]})]}),f.jsxs("div",{children:[f.jsx("div",{className:"text-muted-foreground",children:"Среднее время"}),f.jsx("div",{className:"text-lg font-semibold",children:S?(x.avgMs||0)+" мс":"-"})]}),f.jsxs("div",{children:[f.jsx("div",{className:"text-muted-foreground",children:"p50 / p95 за 24 ч"}),f.jsx("div",{className:"text-lg font-semibold",children:S?(x.p50Ms||0)+" / "+(x.p95Ms||0)+" мс":"-"})]})]}),f.jsx(HE,{rows:C,field:"requests",label:"Запросы за 24 ч, слот 10 мин",color:"#f5b700"}),f.jsx(HE,{rows:C,field:"errors",label:"Ошибки за 24 ч, слот 10 мин",color:"#e11d48"}),f.jsx("p",{className:"text-muted-foreground",children:"429 и причина «лимит» - это лимит биллинга на запросы с устройства, а не сбой сети DHT. Панель не показывает названия торрентов и infohash. Счетчики за 24 часа лежат в Postgres и остаются после перезапуска. Токен, id устройства и infohash по-прежнему не пишутся. «Проверить DHT» зовет sidecar с постоянным тестовым хешем из нулей (это не торрент пользователя) и тоже попадает в счетчики. В таблице ошибок у такой проверки причина «проверка», без самого хеша."})]}):null]})]}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Последние ошибки"})}),j.length===0?f.jsx(xe,{className:"text-sm text-muted-foreground",children:"Ошибок нет"}):f.jsxs(Wn,{children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Время"}),f.jsx(Se,{children:"Код"}),f.jsx(Se,{children:"Причина"})]})}),f.jsx(er,{children:j.map((O,T)=>f.jsxs(qe,{children:[f.jsx(me,{children:zi(O.at)}),f.jsx(me,{children:O.status}),f.jsx(me,{children:O.reason})]},O.at+":"+T))})]})]})]})}const $r="space-y-1";function Sx(e){if(!e)return"0";const t=e/(1024*1024*1024);return(Math.round(t*10)/10).toString()}function D8(e){return e?Math.round(e/(1024*1024))+" МБ":"0 МБ"}function P8(e){return e.status==="disabled"?f.jsx(Oe,{variant:"secondary",children:"выключен"}):e.status==="online"?f.jsx(Oe,{variant:"ok",children:"онлайн"}):f.jsx(Oe,{variant:"bad",children:"нет ответа"})}async function k8(e,t,n){return ot(e,{method:"POST",headers:{"content-type":"application/json",Accept:"application/json"},body:JSON.stringify({csrf:t,...n})})}function I8({csrf:e}){const[t,n]=b.useState(null),[r,l]=b.useState(""),[o,u]=b.useState(""),[c,h]=b.useState(""),[m,v]=b.useState(""),[p,x]=b.useState(""),[S,w]=b.useState("500"),[j,C]=b.useState("0"),[A,N]=b.useState("0"),[O,T]=b.useState("512"),[R,E]=b.useState("0"),[D,k]=b.useState(""),[I,P]=b.useState(""),[B,F]=b.useState(""),[se,ue]=b.useState("");async function de(){const U=await ot("/admin/api/cache");U.auth!==!1&&(n(U),U.prefixMb!==void 0&&T(String(U.prefixMb)),U.prefixPercent!==void 0&&E(String(U.prefixPercent)))}b.useEffect(()=>{de()},[]);async function G(U,Ee){u("");const ee=await k8(U,(t==null?void 0:t.csrf)||e,Ee);ee.auth!==!1&&(ee.token&&l(ee.token),ee.error&&u(ee.error),await de())}const ne=(t==null?void 0:t.enabled)===!0,ie=(t==null?void 0:t.nodes)||[],ce=(t==null?void 0:t.assignments)||[];return f.jsxs("div",{className:"space-y-4",children:[f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Кэш популярных раздач"}),f.jsx(ht,{children:"Узлы держат начало популярных раздач, чтобы воспроизведение начиналось сразу. Пока переключатель выключен, приложение и расчет ничего не меняют."})]}),f.jsxs(xe,{className:"space-y-3",children:[f.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[ne?f.jsx(Oe,{variant:"ok",children:"включено"}):f.jsx(Oe,{variant:"secondary",children:"выключено"}),f.jsx(he,{variant:ne?"secondary":"default",onClick:()=>void G("/admin/cache/settings",{enabled:!ne,prefixMb:O,prefixPercent:R}),children:ne?"Выключить":"Включить"}),f.jsx(he,{variant:"secondary",onClick:()=>void G("/admin/cache/recalc",{}),children:"Пересчитать"})]}),f.jsxs("div",{className:"grid gap-3 sm:grid-cols-2",children:[f.jsxs("div",{className:$r,children:[f.jsx(yt,{children:"Префикс, МБ (0 - брать проценты)"}),f.jsx($e,{value:O,onChange:U=>T(U.target.value)})]}),f.jsxs("div",{className:$r,children:[f.jsx(yt,{children:"Префикс, %"}),f.jsx($e,{value:R,onChange:U=>E(U.target.value)})]})]}),f.jsx(he,{variant:"secondary",onClick:()=>void G("/admin/cache/settings",{enabled:ne,prefixMb:O,prefixPercent:R}),children:"Сохранить префикс"})]})]}),r?f.jsxs(Bt,{children:["Токен узла показывается один раз. Скопируйте его в конфиг сервера и закройте эту строку.",f.jsx("div",{className:"mt-2 break-all font-mono text-sm",children:r}),f.jsx(he,{className:"mt-2",variant:"secondary",onClick:()=>l(""),children:"Скрыть"})]}):null,o?f.jsx(Bt,{children:o}):null,f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Новый узел"})}),f.jsxs(xe,{className:"grid gap-3 sm:grid-cols-2",children:[f.jsxs("div",{className:$r,children:[f.jsx(yt,{children:"Имя"}),f.jsx($e,{value:c,onChange:U=>h(U.target.value)})]}),f.jsxs("div",{className:$r,children:[f.jsx(yt,{children:"Адрес TorrServer"}),f.jsx($e,{value:m,placeholder:"http://cache.example:8090",onChange:U=>v(U.target.value)})]}),f.jsxs("div",{className:$r,children:[f.jsx(yt,{children:"Регион"}),f.jsx($e,{value:p,onChange:U=>x(U.target.value)})]}),f.jsxs("div",{className:$r,children:[f.jsx(yt,{children:"Емкость, ГБ"}),f.jsx($e,{value:S,onChange:U=>w(U.target.value)})]}),f.jsxs("div",{className:$r,children:[f.jsx(yt,{children:"Свой префикс, МБ (0 - общий)"}),f.jsx($e,{value:j,onChange:U=>C(U.target.value)})]}),f.jsxs("div",{className:$r,children:[f.jsx(yt,{children:"Свой префикс, %"}),f.jsx($e,{value:A,onChange:U=>N(U.target.value)})]}),f.jsx(he,{onClick:()=>void G("/admin/cache/node",{name:c,url:m,region:p,capacityGb:S,prefixMb:j,prefixPercent:A}),children:"Добавить и выдать токен"})]})]}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Узлы"})}),f.jsx(xe,{className:"overflow-x-auto",children:f.jsxs(Wn,{children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Имя"}),f.jsx(Se,{children:"Статус"}),f.jsx(Se,{children:"Диск"}),f.jsx(Se,{children:"Heartbeat"}),f.jsx(Se,{children:"Токен"}),f.jsx(Se,{})]})}),f.jsx(er,{children:ie.length===0?f.jsx(qe,{children:f.jsx(me,{colSpan:6,children:"Узлов нет"})}):ie.map(U=>f.jsxs(qe,{children:[f.jsxs(me,{children:[f.jsx("div",{className:"font-medium",children:U.name}),f.jsx("div",{className:"text-xs text-muted-foreground",children:U.url}),f.jsxs("div",{className:"text-xs text-muted-foreground",children:[U.region||"регион не задан"," - ",Sx(U.capacityBytes)," ГБ"]})]}),f.jsxs(me,{children:[P8(U),f.jsx("div",{className:"mt-1 text-xs text-muted-foreground",children:U.torrserverOk?"TorrServer отвечает":"TorrServer молчит"})]}),f.jsxs(me,{children:[Sx(U.diskUsedBytes)," / ",Sx(U.diskTotalBytes)," ГБ"]}),f.jsx(me,{children:U.lastHeartbeat?zi(U.lastHeartbeat):"не было"}),f.jsx(me,{children:U.hasToken?"есть":"отозван"}),f.jsxs(me,{className:"space-x-2 space-y-2",children:[f.jsx(he,{variant:"secondary",onClick:()=>void G("/admin/cache/token",{id:U.id}),children:"Новый токен"}),f.jsx(he,{variant:"secondary",onClick:()=>void G("/admin/cache/token/revoke",{id:U.id}),children:"Отозвать"}),f.jsx(he,{variant:"secondary",onClick:()=>void G("/admin/cache/node/disable",{id:U.id,disabled:!U.disabled}),children:U.disabled?"Включить узел":"Выключить узел"})]})]},U.id))})]})})]}),f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Закрепить раздачу"}),f.jsx(ht,{children:"Пустой магнит означает раздачу по DHT. Ссылку с ключом трекера панель не сохранит."})]}),f.jsxs(xe,{className:"grid gap-3 sm:grid-cols-2",children:[f.jsxs("div",{className:$r,children:[f.jsx(yt,{children:"infohash"}),f.jsx($e,{value:D,onChange:U=>k(U.target.value)})]}),f.jsxs("div",{className:$r,children:[f.jsx(yt,{children:"Название"}),f.jsx($e,{value:I,onChange:U=>P(U.target.value)})]}),f.jsxs("div",{className:$r,children:[f.jsx(yt,{children:"Узел"}),f.jsxs("select",{className:"h-10 rounded-md border border-input bg-secondary px-3 text-sm",value:B,onChange:U=>F(U.target.value),children:[f.jsx("option",{value:"",children:"выберите"}),ie.map(U=>f.jsx("option",{value:U.id,children:U.name},U.id))]})]}),f.jsxs("div",{className:$r,children:[f.jsx(yt,{children:"Магнит"}),f.jsx($e,{value:se,onChange:U=>ue(U.target.value)})]}),f.jsx(he,{onClick:()=>void G("/admin/cache/pin",{infohash:D,title:I,nodeId:B,magnet:se}),children:"Закрепить"})]})]}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Назначения"})}),f.jsx(xe,{className:"overflow-x-auto",children:f.jsxs(Wn,{children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Раздача"}),f.jsx(Se,{children:"Узел"}),f.jsx(Se,{children:"Статус"}),f.jsx(Se,{children:"Префикс"}),f.jsx(Se,{})]})}),f.jsx(er,{children:ce.length===0?f.jsx(qe,{children:f.jsx(me,{colSpan:5,children:"Назначений нет"})}):ce.map(U=>f.jsxs(qe,{children:[f.jsxs(me,{children:[f.jsx("div",{children:U.title||U.infohash}),f.jsx("div",{className:"font-mono text-xs text-muted-foreground",children:U.infohash})]}),f.jsx(me,{children:U.nodeName}),f.jsxs(me,{children:[U.status,U.pinned?" - закреплено":"",U.source==="manual"?" - вручную":"",U.error?" - "+U.error:""]}),f.jsx(me,{children:D8(U.prefixBytes)}),f.jsx(me,{children:f.jsx(he,{variant:"secondary",onClick:()=>void G("/admin/cache/unpin",{id:U.id}),children:"Снять"})})]},U.id))})]})})]})]})}function z8(e){return e==="community"?"зрители":e==="blend"?"смесь":e==="pinned"?"закреп":e==="banned"?"запрет":"сиды"}function L8({csrf:e}){const[t,n]=b.useState(""),[r,l]=b.useState(null),[o,u]=b.useState(!1),c=b.useCallback(async w=>{const j=await ot("/admin/api/watch-rank?q="+encodeURIComponent(w));l(j)},[]);b.useEffect(()=>{c("")},[c]);async function h(w){u(!0),await Qt("/admin/watch-rank",e,{enabled:w}),await c(t),u(!1)}async function m(w,j){u(!0),await Qt("/admin/watch-rank",e,{infohash:w.infohash,pinned:j.pinned!==void 0?j.pinned:w.pinned,banned:j.banned!==void 0?j.banned:w.banned,note:w.note}),await c(t),u(!1)}const v=r&&r.rows?r.rows:[],p=r&&r.voices?r.voices:[],x=r&&r.codecs?r.codecs:[],S=!!(r&&r.enabled);return f.jsxs("div",{className:"space-y-4",children:[f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Подбор раздач"})}),f.jsxs(xe,{className:"space-y-3",children:[f.jsxs("div",{className:"flex flex-wrap items-center gap-3",children:[f.jsx(Oe,{variant:S?"ok":"secondary",children:S?"ранжирование включено":"ранжирование выключено"}),f.jsx(he,{type:"button",disabled:o,onClick:()=>void h(!S),children:S?"Выключить":"Включить"})]}),f.jsx("p",{className:"text-sm text-muted-foreground",children:"Пока нет оценок просмотра, поиск не меняет порядок. Закрепление и запрет действуют сразу. В общие таблицы попадают только хеши и счетчики."}),f.jsxs("form",{className:"flex gap-2",onSubmit:w=>{w.preventDefault(),c(t)},children:[f.jsx($e,{value:t,onChange:w=>n(w.target.value),placeholder:"Название или infohash"}),f.jsx(he,{type:"submit",children:"Найти"})]})]})]}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Раздачи"})}),f.jsx(xe,{children:f.jsxs(Wn,{children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Раздача"}),f.jsx(Se,{children:"Класс"}),f.jsx(Se,{children:"Оценка"}),f.jsx(Se,{children:"Сигналы"}),f.jsx(Se,{})]})}),f.jsxs(er,{children:[v.map(w=>f.jsxs(qe,{children:[f.jsxs(me,{children:[f.jsx("div",{children:w.title||w.titleKey||w.infohash}),f.jsxs("div",{className:"text-xs text-muted-foreground",children:[w.infohash.slice(0,12)," · s",w.season,"e",w.episode," · ",z8(w.reason)]})]}),f.jsx(me,{children:w.deviceClass==="tv"?"ТВ":"Телефон"}),f.jsx(me,{children:Math.round(w.score)}),f.jsxs(me,{children:[w.samples," просм., ",w.completed," до конца, ",w.switched," уходов, кадр ",w.ttffMs&&w.samples?Math.round(w.ttffMs/w.samples):0," мс, ребуфер ",w.rebufferN,", кодек ",w.codecOk,"/",w.codecOk+w.codecFail]}),f.jsxs(me,{className:"space-x-2",children:[f.jsx(he,{type:"button",disabled:o,onClick:()=>void m(w,{pinned:!w.pinned,banned:!1}),children:w.pinned?"Открепить":"Закрепить"}),f.jsx(he,{type:"button",disabled:o,onClick:()=>void m(w,{banned:!w.banned,pinned:!1}),children:w.banned?"Разрешить":"Запретить"})]})]},w.infohash+":"+w.fileIndex+":"+w.deviceClass)),v.length?null:f.jsx(qe,{children:f.jsx(me,{colSpan:5,children:"Пока нет сигналов"})})]})]})})]}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Озвучки и кодеки"})}),f.jsxs(xe,{className:"space-y-2 text-sm",children:[p.slice(0,12).map(w=>f.jsxs("div",{children:[w.titleKey,": ",w.voice," (",w.picks,")"]},w.titleKey+":"+w.voice)),x.map(w=>f.jsxs("div",{children:[w.deviceClass," ",w.codec,": ",w.reports]},w.deviceClass+":"+w.codec)),!p.length&&!x.length?f.jsx("div",{children:"Пока пусто"}):null]})]})]})}function wx(e){return e?Fo(e)+" МСК":""}function U8(e){if(!e)return"Опрос бота: нет данных";if(!e.enabled)return"Опрос бота выключен (BILLING_BOT_POLL=0).";const t=e.lastOkAt?wx(e.lastOkAt):"ещё не было";let n="Конфликт 409 не фиксировался.";if(e.conflictRecent){const r=wx(e.conflictAt);n="Конфликт 409 был недавно"+(r?" ("+r+")":"")+"."}else e.conflictAt&&(n="Последний конфликт 409: "+wx(e.conflictAt)+".");return"Опрос бота: последний успешный getUpdates "+t+". "+n}/** +`,l=new Blob([r],{type:"text/csv;charset=utf-8"}),o=document.createElement("a");o.href=URL.createObjectURL(l),o.download=e,o.click(),URL.revokeObjectURL(o.href)}const k6=[["","Все действия"],["login","Вход"],["grant","Выдача дней"],["issue","Выдача кода"],["promo_create","Промо"],["code_reveal","Показ кода"],["device_revoke","Отзыв устройства"],["device_clone","Отключение клона"],["limit_set","Лимит устройств"],["bonus_grant","Бонусные устройства"],["bonus_remove","Снятие бонуса"],["days_subtract","Убавление дней"],["payment_confirm","Подтверждение платежа"],["payment_reject","Отклонение платежа"],["swaps_reset","Сброс смен"],["message","Сообщение"],["settings_save","Настройки"],["ads_config","Реклама: настройки"],["ads_banner_add","Реклама: новый баннер"],["ads_banner_save","Реклама: изменение баннера"],["ads_banner_remove","Реклама: удаление баннера"]],I6=[["","Все причины"],["bad_code","Неверный код"],["expired","Подписка истекла"],["other_device","Чужое устройство"],["device_limit","Лимит устройств"],["extra_expired","Доп. устройство не продлено"]];function DA(e){const t=Number(e)||0;if(t<1024)return t+" Б";const n=["КБ","МБ","ГБ"];let r=t/1024,l=0;for(;r>=1024&&l{r&&o(r)},[r]),b.useEffect(()=>{const B=t.map(F=>F.telegramId);o(F=>v6(F,B,r||""))},[t,r]);function T(B){if(!O.current)return;const F=E.current,se=N.current;F&&requestAnimationFrame(()=>{requestAnimationFrame(()=>{se?se.scrollIntoView({block:"end"}):F.scrollTop=F.scrollHeight})})}b.useEffect(()=>{if(O.current=!0,!u){h([]),v("");return}let B=!1;async function F(){const ue=await st("/admin/api/support?telegramId="+encodeURIComponent(u));if(B)return;const de=ue.messages||[];h(G=>z6(G,de)?G:de),v(u)}F();const se=window.setInterval(()=>void F(),2500);return()=>{B=!0,window.clearInterval(se)}},[u]),b.useEffect(()=>{T()},[c,u]);async function R(B){var de,G;B.preventDefault();const F=g.trim();if(!u||!F||S)return;w(!0),C("");const se=await an("/admin/support",e,{telegramId:u,text:F});if(w(!1),!se.ok||(de=se.flash)!=null&&de.error){C(((G=se.flash)==null?void 0:G.error)||"Не отправилось");return}x(""),O.current=!0;const ue=await st("/admin/api/support?telegramId="+encodeURIComponent(u));h(ue.messages||[]),v(u),n()}async function A(){var F,se;if(!u||S||!window.confirm("Завершить диалог? Пользователь получит уведомление в боте."))return;w(!0),C("");const B=await an("/admin/support-close",e,{telegramId:u});if(w(!1),!B.ok||(F=B.flash)!=null&&F.error){C(((se=B.flash)==null?void 0:se.error)||"Не завершилось");return}n()}const D=t.find(B=>B.telegramId===u),k=!!u&&m!==u,I=!!r&&u===r&&!t.some(B=>B.telegramId===u);return f.jsxs("div",{className:"grid gap-4 lg:grid-cols-[280px_1fr]",children:[f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Диалоги"}),f.jsx(ht,{children:"Сообщения из бота"})]}),f.jsxs(xe,{className:"space-y-1",children:[t.length===0&&!I?f.jsx("p",{className:"text-sm text-muted-foreground",children:"Пока пусто"}):null,I?f.jsxs("button",{type:"button",className:"block w-full rounded-md bg-muted px-2 py-2 text-left text-sm",onClick:()=>o(r||""),children:[f.jsx("div",{className:"font-medium",children:r}),f.jsx("div",{className:"truncate text-xs text-muted-foreground",children:"диалог из карточки пользователя"})]}):null,t.map(B=>f.jsxs("button",{type:"button",className:"block w-full rounded-md px-2 py-2 text-left text-sm "+(B.telegramId===u?"bg-muted":"hover:bg-muted/60"),onClick:()=>o(B.telegramId),children:[f.jsx("div",{className:"font-medium",children:F0(B.telegramId,B.username,B.name)}),f.jsx("div",{className:"text-xs text-muted-foreground",children:f.jsx(dt,{ms:B.lastAt,toggle:!1})}),f.jsx("div",{className:"truncate text-xs text-muted-foreground",children:B.lastText})]},B.telegramId))]})]}),f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:u?F0(u,D==null?void 0:D.username,D==null?void 0:D.name):"Выберите диалог"}),f.jsx(ht,{children:"Ответ уходит этому пользователю в бота. Ответ на уведомление в Telegram делает то же самое."})]}),f.jsxs(xe,{className:"flex flex-col gap-3",children:[f.jsxs("div",{ref:E,className:"omp-scroll h-80 min-h-0 space-y-2 overflow-y-auto overscroll-contain rounded-md border border-border/60 bg-background/40 p-3",onScroll:()=>{const B=E.current;B&&(O.current=B.scrollHeight-B.scrollTop-B.clientHeight<64)},children:[k?f.jsxs("div",{className:"space-y-2",children:[f.jsx(rn,{className:"h-12 w-2/3"}),f.jsx(rn,{className:"ml-auto h-12 w-1/2"})]}):null,!k&&c.length===0?f.jsx("p",{className:"text-sm text-muted-foreground",children:u?"Пока нет сообщений":"Выберите диалог слева"}):null,c.map(B=>f.jsxs("div",{className:B.direction==="out"?"text-right":"",children:[f.jsxs("div",{className:"text-xs text-muted-foreground",children:[B.direction==="out"?"Админ":"Пользователь"," · ",f.jsx(dt,{ms:B.at,toggle:!1}),B.via==="panel"?" · панель":""]}),f.jsx("div",{className:"inline-block max-w-[90%] whitespace-pre-wrap rounded-md bg-muted px-3 py-2 text-sm",children:B.text})]},B.id)),f.jsx("div",{ref:N,className:"h-px w-full shrink-0","aria-hidden":!0})]}),j?f.jsx(Bt,{variant:"destructive",children:j}):null,f.jsxs("form",{className:"shrink-0 space-y-2",onSubmit:B=>void R(B),children:[f.jsx(xS,{value:g,onChange:B=>x(B.target.value),placeholder:"Ответ пользователю",rows:3}),f.jsxs("div",{className:"flex flex-wrap gap-2",children:[f.jsx(he,{type:"submit",disabled:S||!u||!g.trim(),children:S?"Отправляю…":"Ответить"}),f.jsx(he,{type:"button",variant:"secondary",disabled:S||!u,onClick:()=>void A(),children:"Завершить диалог"})]})]})]})]})]})}function Wn({className:e,...t}){return f.jsx("div",{className:"relative w-full overflow-auto",children:f.jsx("table",{className:Zt("w-full caption-bottom text-sm",e),...t})})}function Jn({className:e,...t}){return f.jsx("thead",{className:Zt("[&_tr]:border-b",e),...t})}function er({className:e,...t}){return f.jsx("tbody",{className:Zt("[&_tr:last-child]:border-0",e),...t})}function qe({className:e,...t}){return f.jsx("tr",{className:Zt("border-b border-border transition-colors hover:bg-secondary/50",e),...t})}function Se({className:e,...t}){return f.jsx("th",{className:Zt("h-10 px-2 text-left align-middle font-medium text-muted-foreground",e),...t})}function me({className:e,...t}){return f.jsx("td",{className:Zt("p-2 align-middle",e),...t})}const U6=1440*60*1e3;function Dl({label:e,question:t,yes:n,onYes:r,variant:l="secondary",disabled:o}){const[u,c]=b.useState(!1);return u?f.jsxs("span",{className:"inline-flex flex-wrap items-center gap-2 rounded-md border border-amber-700/60 bg-amber-950/30 px-2 py-1 text-sm",children:[f.jsx("span",{children:t}),f.jsx(he,{size:"sm",variant:"destructive",onClick:()=>{c(!1),r()},children:n}),f.jsx(he,{size:"sm",variant:"ghost",onClick:()=>c(!1),children:"Отмена"})]}):f.jsx(he,{size:"sm",variant:l,disabled:o,onClick:()=>c(!0),children:e})}function $6({ms:e}){return e?f.jsx(dt,{ms:e}):f.jsx("span",{className:"text-muted-foreground",children:"не было"})}function B6({user:e}){const t=e.subscription;return!t||!t.overLimit?null:f.jsxs(Bt,{variant:"warn",children:["Устройств больше лимита: привязано ",t.bound," при лимите ",t.deviceLimit,". Устройства сверх лимита (привязанные последними) не работают. Отзовите лишнее или поднимите лимит."]})}function H6({user:e,run:t}){const n=e.subscription,r=e.devices||[],l=n==null?void 0:n.swaps;return f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsxs(Te,{children:["Устройства"," ",n?f.jsxs(Oe,{variant:n.overLimit?"warn":"count",className:"ml-2 align-middle",children:[r.length," из ",n.deviceLimit]}):null]}),f.jsx(ht,{children:"«Последний раз» - поиск, скачивание или проверка подписки с этого устройства (обновляется не чаще раза в 10 минут). IP хранится без последней части. «Отозвать» отвязывает устройство и сразу гасит его токен, для слота выпускается новый код, пользователю уходит сообщение в Telegram."})]}),f.jsxs(xe,{className:"space-y-3",children:[r.length===0?f.jsx("p",{className:"text-sm text-muted-foreground",children:"Привязанных устройств нет"}):null,r.length>0?f.jsxs(Wn,{className:"min-w-[40rem]",children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Устройство"}),f.jsx(Se,{children:"Привязано, МСК"}),f.jsx(Se,{children:"Последний раз, МСК"}),f.jsx(Se,{children:"IP"}),f.jsx(Se,{})]})}),f.jsx(er,{children:r.map(o=>f.jsxs(qe,{children:[f.jsxs(me,{className:"font-mono",children:[o.name?f.jsxs("span",{className:"font-sans",children:[o.name," "]}):null,o.deviceId,"…"," ",o.overLimit?f.jsx(Oe,{variant:"warn",className:"ml-1",children:"сверх лимита, не работает"}):null,o.cloneAt?f.jsxs(Oe,{variant:"warn",className:"ml-1",title:"Использованный ключ этого устройства пришёл повторно. Если это не потеря сети - отзовите устройство.",children:["возможен клон",o.cloneCount&&o.cloneCount>1?" ×"+o.cloneCount:""]}):null,f.jsxs("div",{className:"font-sans text-xs text-muted-foreground",children:[o.auth==="refresh"?"новые токены":"старый токен",o.cloneAt?f.jsxs(f.Fragment,{children:[" · клон: ",f.jsx(dt,{ms:o.cloneAt})]}):null]})]}),f.jsx(me,{className:"whitespace-nowrap",children:f.jsx(dt,{ms:o.boundAt})}),f.jsx(me,{className:"whitespace-nowrap",children:f.jsx($6,{ms:o.lastSeenAt})}),f.jsx(me,{className:"font-mono text-xs",children:o.lastIp||"-"}),f.jsx(me,{children:f.jsx(Dl,{label:"Отозвать",variant:"destructive",question:f.jsxs(f.Fragment,{children:["Отозвать ",o.deviceId,"…? Поиск на нём перестанет работать сразу, пользователь получит сообщение в Telegram."]}),yes:"Да, отозвать",onYes:()=>void t("/admin/device-revoke",{accountId:e.account.id,deviceRowId:o.id||"",codeId:o.codeId,confirm:"yes"})})})]},o.id||o.codeId))})]}):null,l?f.jsxs("div",{className:"flex flex-wrap items-center gap-2 text-sm",children:[f.jsxs("span",{children:["Смены устройства в боте: ",l.used," из ",l.limit," за 30 дней",l.left<1&&l.nextAt?f.jsxs(f.Fragment,{children:[" · следующая с ",Fo(l.nextAt)," МСК"]}):null,l.resetAt?f.jsxs("span",{className:"text-muted-foreground",children:[" ","· сброшен ",f.jsx(dt,{ms:l.resetAt})]}):null]}),f.jsx(Dl,{label:"Сбросить счётчик",question:"Разрешить пользователю ещё 2 смены прямо сейчас?",yes:"Да, сбросить",disabled:l.used===0,onYes:()=>void t("/admin/swaps-reset",{accountId:e.account.id})})]}):null]})]})}function F6({user:e,run:t}){const n=e.subscription,[r,l]=b.useState(n!=null&&n.limitOverride?String(n.limitOverride):""),[o,u]=b.useState(String((n==null?void 0:n.extraSlots)??0)),[c,h]=b.useState("1"),[m,v]=b.useState(""),[g,x]=b.useState("");if(!n)return null;const S=n.globalBase??2,w=n.bonusSlots??0,j=(r.trim()?Number(r)||0:S)+w+(Number(o)||0),C=j<(n.bound||0),E=n.bonus||[];return f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsxs(Te,{children:["Лимит устройств"," ",f.jsx(Oe,{variant:"count",className:"ml-2 align-middle",children:n.deviceLimit}),n.limitOverride?f.jsx(Oe,{variant:"warn",className:"ml-2 align-middle",children:"индивидуальный лимит"}):null]}),f.jsxs(ht,{children:["Сейчас: ",n.limitText||n.deviceLimit,n.extraSlots?", купленные до "+Fo(n.extraUntil||0)+" МСК":"",". Лимит = база + бонусные + купленные. База - общая из настроек (",S,"), если не задан индивидуальный лимит: он заменяет базу и не меняется, когда меняют общую. Бонусные - бесплатно, навсегда или до даты, в цену продления не входят. Купленные (доп.) - помесячные: выданные здесь действуют до конца оплаченного периода и дальше продлеваются вместе с подпиской."]})]}),f.jsxs(xe,{className:"space-y-4",children:[f.jsxs("div",{className:"flex flex-wrap items-end gap-2",children:[f.jsxs("label",{className:"grid gap-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Индивидуальный лимит"}),f.jsx($e,{className:"w-40",type:"number",min:1,max:20,placeholder:"пусто = общий ("+S+")",value:r,onChange:N=>l(N.target.value)})]}),f.jsxs("label",{className:"grid gap-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Купленные (доп.)"}),f.jsx($e,{className:"w-24",type:"number",min:0,max:20,value:o,onChange:N=>u(N.target.value)})]}),f.jsx(Dl,{label:"Сохранить",variant:"default",question:f.jsxs(f.Fragment,{children:["Лимит станет ",j,r.trim()?" (индивидуальный "+r.trim()+")":" (общая база "+S+")",C?". Привязано "+n.bound+": последние сверх лимита перестанут работать":"",". Сохранить?"]}),yes:"Да, сохранить",onYes:()=>void t("/admin/limit",{accountId:e.account.id,limitOverride:r.trim(),extraSlots:o})})]}),f.jsxs("div",{className:"space-y-2",children:[f.jsx("p",{className:"text-sm font-medium",children:"Бонусные устройства"}),E.length===0?f.jsx("p",{className:"text-sm text-muted-foreground",children:"Нет"}):null,E.length>0?f.jsxs(Wn,{className:"min-w-[36rem]",children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Кол-во"}),f.jsx(Se,{children:"Срок"}),f.jsx(Se,{children:"Причина"}),f.jsx(Se,{children:"Выдано, МСК"}),f.jsx(Se,{})]})}),f.jsx(er,{children:E.map(N=>f.jsxs(qe,{children:[f.jsxs(me,{children:["+",N.count]}),f.jsxs(me,{children:[N.until===null?"навсегда":"до "+Fo(N.until),N.active?null:f.jsx(Oe,{variant:"secondary",className:"ml-1",children:"истёк"})]}),f.jsxs(me,{children:[N.reason||f.jsx("span",{className:"text-muted-foreground",children:"-"}),N.source==="promo"?null:f.jsx("span",{className:"text-xs text-muted-foreground",children:" · вручную"})]}),f.jsx(me,{className:"whitespace-nowrap",children:f.jsx(dt,{ms:N.grantedAt})}),f.jsx(me,{children:f.jsx(Dl,{label:"Снять",question:f.jsxs(f.Fragment,{children:["Снять ",N.count," бонусн. устр.?"]}),yes:"Да, снять",onYes:()=>void t("/admin/bonus-remove",{accountId:e.account.id,bonusId:N.id,confirm:"yes"})})})]},N.id))})]}):null,f.jsxs("div",{className:"flex flex-wrap items-end gap-2",children:[f.jsxs("label",{className:"grid gap-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Устройств"}),f.jsx($e,{className:"w-20",type:"number",min:1,max:20,value:c,onChange:N=>h(N.target.value)})]}),f.jsxs("label",{className:"grid gap-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Дней"}),f.jsx($e,{className:"w-36",type:"number",min:1,max:3650,placeholder:"пусто = навсегда",value:m,onChange:N=>v(N.target.value)})]}),f.jsxs("label",{className:"grid gap-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Причина"}),f.jsx($e,{className:"w-56",maxLength:80,value:g,onChange:N=>x(N.target.value)})]}),f.jsx(he,{size:"sm",onClick:()=>void t("/admin/bonus",{accountId:e.account.id,count:c,days:m.trim(),reason:g}),children:"Выдать бонус"})]})]})]})]})}function V6({user:e,run:t}){const n=e.subscription,[r,l]=b.useState("1");if(!n||!n.paidUntil)return null;const o=Math.floor(Number(r)),u=Number.isFinite(o)&&o>=1&&o<=3650&&String(o)===r.trim(),c=n.paidUntil-(u?o:0)*U6;return f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Убавить дни"}),f.jsx(ht,{children:"Сдвигает окончание назад, например после возврата денег. Если дата уйдёт в прошлое, поиск выключится после льготного периода."})]}),f.jsxs(xe,{className:"flex flex-wrap items-end gap-2",children:[f.jsxs("label",{className:"grid gap-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Дней"}),f.jsx($e,{className:"w-24",type:"number",min:1,max:3650,value:r,onChange:h=>l(h.target.value)})]}),f.jsx(Dl,{label:"Убавить",variant:"destructive",disabled:!u,question:f.jsxs(f.Fragment,{children:["Убавить ",o," дн.? Подписка будет до ",Fo(c)," МСК",c<=Date.now()?" - это уже в прошлом":"","."]}),yes:"Да, убавить",onYes:()=>void t("/admin/subtract",{accountId:e.account.id,days:String(o),confirm:"yes"})})]})]})}function BM({rows:e,run:t,accountId:n,showWho:r}){return e.length?f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsxs(Te,{children:["Ждут подтверждения в ЮMoney"," ",f.jsx(Oe,{variant:"warn",className:"ml-2 align-middle",children:e.length})]}),f.jsx(ht,{children:"ЮMoney держит эти переводы, пока их не примут в кошельке, и подписку они не продлили. Примите перевод в кошельке и нажмите «Подтвердить платёж» - он применится один раз. «Отклонить» - если перевод отклонён или возвращён."})]}),f.jsx(xe,{className:"space-y-3",children:e.map(l=>f.jsxs("div",{className:"space-y-2 rounded-md border border-amber-800/50 px-3 py-2 text-sm",children:[f.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[f.jsx(dt,{ms:l.at}),f.jsxs("span",{className:"font-medium",children:[l.amount||"?"," ₽"]}),f.jsx(Oe,{variant:"count",children:T6(l.kind,l.price)}),r&&l.accountId?f.jsx("a",{className:"text-primary",href:"/admin/?id="+encodeURIComponent(l.accountId),children:l.who||"карточка"}):null,f.jsx("span",{className:"font-mono text-xs text-muted-foreground",children:l.operationId})]}),f.jsxs("div",{className:"flex flex-wrap gap-2",children:[f.jsx(Dl,{label:"Подтвердить платёж",variant:"default",question:f.jsxs(f.Fragment,{children:["Перевод ",l.amount," ₽ принят в кошельке? Подписка продлится сразу, пользователь получит сообщение."]}),yes:"Да, подтвердить",onYes:()=>void t("/admin/payment-confirm",{operationId:l.operationId,accountId:n||"",confirm:"yes"})}),f.jsx(Dl,{label:"Отклонить",question:f.jsxs(f.Fragment,{children:["Убрать платёж ",l.amount," ₽ из ожидания, ничего не продлевая?"]}),yes:"Да, отклонить",onYes:()=>void t("/admin/payment-reject",{operationId:l.operationId,accountId:n||"",confirm:"yes"})})]})]},l.operationId))})]}):null}const bx="omp-grant-days";function G6({user:e,run:t}){var N,O,T,R,A,D,k;const n=e.account.telegramId||"",[r,l]=b.useState(""),[o,u]=b.useState(()=>sessionStorage.getItem(bx)||"30"),[c,h]=b.useState("100"),[m,v]=b.useState({});async function g(I){const P=await st("/admin/api/reveal?codeId="+encodeURIComponent(I));if(P.auth!==!1){if(!P.formatted){rt("Код уже привязан или скрыт");return}v(B=>({...B,[I]:{formatted:P.formatted||"",openUrl:P.openUrl}}))}}const x=!!((N=e.subscription)!=null&&N.active),S=((O=e.subscription)==null?void 0:O.paidUntil)||0,w=x&&S>0&&S-Date.now()<=1440*60*1e3,j=!!((T=e.subscription)!=null&&T.inGrace),C=e.subscription?j?"grace":x?w?"expiring":"active":"expired":"",E=(e.codes||[]).filter(I=>!I.bound);return f.jsxs("main",{className:"mx-auto w-full max-w-4xl space-y-4 px-4 py-6",children:[f.jsx(he,{variant:"link",className:"px-0",asChild:!0,children:f.jsx("a",{href:"/admin/",children:"← Назад"})}),f.jsx("h1",{className:"text-2xl font-bold",children:"Пользователь"}),f.jsx(PM,{flash:e.flash}),f.jsx(ye,{children:f.jsxs(xe,{className:"space-y-2 pt-6 text-sm",children:[f.jsxs("p",{children:[f.jsx("span",{className:"text-muted-foreground",children:"Идентификатор"})," ",e.account.id," ",f.jsx(ko,{value:e.account.id})]}),f.jsxs("p",{children:[f.jsx("span",{className:"text-muted-foreground",children:"Telegram"})," ",n?f.jsxs(f.Fragment,{children:[f.jsx(Oe,{variant:"ok",children:F0(n,e.account.telegramUsername,e.account.telegramName)})," ",f.jsx(ko,{value:n})]}):"-"]}),f.jsxs("p",{children:[f.jsx("span",{className:"text-muted-foreground",children:"Почта"})," ",e.account.email||"-"]}),f.jsxs("p",{children:[f.jsx("span",{className:"text-muted-foreground",children:"Создан"})," ",f.jsx(dt,{ms:e.account.createdAt})]}),e.subscription?f.jsxs("p",{className:"flex flex-wrap items-center gap-2",children:["Подписка до ",f.jsx(dt,{ms:e.subscription.paidUntil}),f.jsxs("span",{className:"text-muted-foreground",children:["устройств ",e.subscription.bound??0," из ",e.subscription.deviceLimit,e.subscription.limitText?" ("+e.subscription.limitText+")":""]}),f.jsx(IM,{status:C}),(e.subscription.creditRub||0)>0?f.jsxs("span",{className:"text-muted-foreground",children:["зачёт ",e.subscription.creditRub," ₽"]}):null,f.jsx("input",{className:"h-8 w-20 rounded-md border border-input bg-secondary px-2 text-sm",value:c,onChange:I=>h(I.target.value),"aria-label":"Зачёт, рубли"}),f.jsx(he,{variant:"secondary",onClick:()=>{window.confirm("Начислить зачёт "+c+" ₽?")&&t("/admin/api/credit",{accountId:e.account.id,rub:c,confirm:"yes"})},children:"Зачёт"}),j&&e.subscription.accessUntil?f.jsxs("span",{className:"text-muted-foreground",children:["льготный период до ",f.jsx(dt,{ms:e.subscription.accessUntil})]}):null]}):f.jsx("p",{className:"text-muted-foreground",children:"Нет подписки"})]})}),f.jsx(B6,{user:e}),f.jsx(BM,{rows:e.pending||[],run:t,accountId:e.account.id}),e.subscription?f.jsx(H6,{user:e,run:t}):null,f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Написать пользователю"}),f.jsx(ht,{children:n?"Сообщение уйдёт в Telegram-бота и появится во вкладке «Поддержка».":"У аккаунта нет Telegram - сначала нужна привязка в боте."})]}),f.jsx(xe,{className:"space-y-2",children:n?f.jsxs(f.Fragment,{children:[f.jsx(xS,{value:r,onChange:I=>l(I.target.value),placeholder:"Текст сообщения…",rows:4}),f.jsxs("div",{className:"flex flex-wrap gap-2",children:[f.jsx(he,{disabled:!r.trim(),onClick:()=>{const I=r.trim();I&&t("/admin/message",{accountId:e.account.id,text:I}).then(()=>l(""))},children:"Отправить в Telegram"}),f.jsx(he,{variant:"secondary",asChild:!0,children:f.jsx("a",{href:"/admin/?tab=support&tg="+encodeURIComponent(n),children:"Открыть в поддержке"})})]})]}):f.jsx("p",{className:"text-sm text-muted-foreground",children:"Привяжите Telegram в боте или через приложение OMP."})})]}),f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Выдать дни"}),f.jsx(ht,{children:"Число дней сохраняется. Перед отправкой будет подтверждение."})]}),f.jsx(xe,{className:"space-y-3",children:f.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[f.jsx("label",{className:"text-sm text-muted-foreground",htmlFor:"grant-days",children:"Дней"}),f.jsxs("select",{id:"grant-days",className:"h-10 rounded-md border border-input bg-secondary px-3 text-sm",value:o,onChange:I=>{u(I.target.value),sessionStorage.setItem(bx,I.target.value)},children:[f.jsx("option",{value:"1",children:"1"}),f.jsx("option",{value:"7",children:"7"}),f.jsx("option",{value:"30",children:"30"}),f.jsx("option",{value:"90",children:"90"})]}),f.jsx(he,{onClick:()=>{window.confirm("Выдать +"+o+" дн.?")&&(sessionStorage.setItem(bx,o),t("/admin/grant",{accountId:e.account.id,days:o}))},children:"Выдать"})]})})]}),f.jsx(V6,{user:e,run:t},"sub-"+(((R=e.subscription)==null?void 0:R.paidUntil)||0)),f.jsx(F6,{user:e,run:t},"lim-"+(((A=e.subscription)==null?void 0:A.limitOverride)??"")+"-"+(((D=e.subscription)==null?void 0:D.extraSlots)??"")+"-"+(((k=e.subscription)==null?void 0:k.limitText)??"")),f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Свободные коды"}),f.jsx(ht,{children:"Коды ещё не привязанных слотов, открываются кнопкой «Показать». Привязанные - выше, в «Устройствах»."})]}),f.jsxs(xe,{className:"space-y-2",children:[E.length===0?f.jsx("p",{className:"text-muted-foreground",children:"Нет свободных кодов"}):null,E.map(I=>{const P=m[I.id];return f.jsxs("div",{className:"flex flex-wrap items-center gap-2 text-sm",children:[f.jsx("span",{className:"font-mono",children:(P==null?void 0:P.formatted)||(I.bound?"привязан · "+(I.deviceId||""):"скрыт")}),f.jsxs("span",{className:"text-muted-foreground",children:["создан ",f.jsx(dt,{ms:I.createdAt}),I.boundAt?f.jsxs(f.Fragment,{children:[" ","· привязан ",f.jsx(dt,{ms:I.boundAt})]}):null]}),I.bound&&!I.hasPlain&&!P?f.jsx("span",{className:"text-muted-foreground",children:"код стёрт после привязки"}):null,P?f.jsx(ko,{value:P.formatted}):null,I.hasPlain&&!P?f.jsx(he,{size:"sm",variant:"secondary",onClick:()=>void g(I.id),children:"Показать"}):null,P!=null&&P.openUrl?f.jsx(he,{size:"sm",variant:"link",asChild:!0,children:f.jsx("a",{href:P.openUrl,target:"_blank",rel:"noreferrer",children:"Открыть"})}):null]},I.id)})]})]}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Платежи"})}),f.jsxs(xe,{children:[(e.payments||[]).length===0?f.jsx("p",{className:"text-sm text-muted-foreground",children:"Нет платежей"}):null,(e.payments||[]).length>0?f.jsxs(Wn,{className:"min-w-[36rem]",children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Когда, МСК"}),f.jsx(Se,{children:"Зачислено"}),f.jsx(Se,{children:"Способ"}),f.jsx(Se,{children:"Комиссия"}),f.jsx(Se,{children:"Метка"}),f.jsx(Se,{children:"Ошибка"})]})}),f.jsx(er,{children:(e.payments||[]).map((I,P)=>f.jsxs(qe,{children:[f.jsx(me,{className:"whitespace-nowrap",children:f.jsx(dt,{ms:I.at})}),f.jsx(me,{className:"font-mono",children:I.amount||"-"}),f.jsx(me,{children:UM(I)}),f.jsx(me,{className:"font-mono",children:I.fee==null?"-":I.fee}),f.jsx(me,{className:"font-mono text-xs",children:I.label||"-"}),f.jsxs(me,{children:[I.error?f.jsx(Oe,{variant:"bad",children:LM(I.error)}):null,I.provider==="stars"&&!I.error&&I.operationId?f.jsx(Dl,{label:"Вернуть звёзды",question:"Вернуть звёзды этому пользователю? Дни подписки останутся, их можно убавить отдельно.",yes:"Вернуть",variant:"destructive",onYes:()=>void t("/admin/payment-refund",{operationId:I.operationId,accountId:e.account.id,confirm:"yes"})}):null,!I.error&&I.provider!=="stars"?"-":null]})]},P))})]}):null]})]}),f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"История просмотра"}),f.jsx(ht,{children:"Шаги, которые приложение прислало с этого аккаунта. Без диагностики список пуст."})]}),f.jsxs(xe,{children:[(e.watch||[]).length===0?f.jsx("p",{className:"text-sm text-muted-foreground",children:"Нет сигналов"}):null,(e.watch||[]).length>0?f.jsx("ul",{className:"space-y-1 text-sm",children:(e.watch||[]).map((I,P)=>f.jsxs("li",{className:"flex flex-wrap gap-2",children:[f.jsx(dt,{ms:I.at}),f.jsx("span",{children:I.name}),f.jsxs("span",{className:"font-mono text-xs text-muted-foreground",children:[I.version||""," ",I.platform||""]})]},P))}):null]})]})]})}var q6=Object.defineProperty,K6=(e,t)=>q6(e,"name",{value:t,configurable:!0}),HM=b.forwardRef(K6(function(t,n){return f.jsx(ln.label,{...t,ref:n,onMouseDown:r=>{var o;r.target.closest("button, input, select, textarea")||((o=t.onMouseDown)==null||o.call(t,r),!r.defaultPrevented&&r.detail>1&&r.preventDefault())}})},"Label"));const yt=b.forwardRef(({className:e,...t},n)=>f.jsx(HM,{ref:n,className:Zt("text-sm font-medium text-muted-foreground",e),...t}));yt.displayName=HM.displayName;const SS={mine:"«Мои» (сетка, список, компактно)",discoverGrid:"«Обзор»: сетка подборки",discoverRails:"«Обзор»: главная, между рельсами"},wS={phone:"Телефон",androidTv:"Android TV",webos:"webOS"};function FM(e){return e.impressions?(e.clicks/e.impressions*100).toFixed(1).replace(".",",")+"%":"-"}function Um(e){return e?new Date(e+10800*1e3).toISOString().slice(0,10):""}function Y6(e){return new Promise((t,n)=>{const r=new FileReader;r.onload=()=>t(String(r.result||"").replace(/^data:[^,]*,/,"")),r.onerror=()=>n(r.error),r.readAsDataURL(e)})}const jS="h-10 rounded-md border border-input bg-secondary px-3 text-sm text-foreground",VM=["mine","discoverGrid","discoverRails"],GM=["phone","androidTv","webos"],CS=e=>"/v1/ads/img/"+e;function qM(){return Math.random().toString(36).slice(2)+Math.random().toString(36).slice(2)}const X6=()=>({localId:qM(),enabled:!0,title:"",text:"",advertiser:"",erid:"",url:"",image:"",weight:"1",from:"",to:"",platforms:["phone","androidTv","webos"],sections:["mine","discoverGrid","discoverRails"],tvMode:"qr"});function Q6(e){return{localId:qM(),id:e.id,enabled:e.enabled,title:e.title,text:e.text,advertiser:e.advertiser,erid:e.erid,url:e.url,image:e.image,weight:String(e.weight),from:Um(e.from),to:Um(e.to),platforms:e.platforms,sections:e.sections,tvMode:e.tvMode}}function PA(e,t,n){const r=e.filter(l=>l!==t);return n?r.concat([t]):r}function Z6({csrf:e}){const[t,n]=b.useState(null),[r,l]=b.useState(null),[o,u]=b.useState(30),[c,h]=b.useState(null),[m,v]=b.useState(null),[g,x]=b.useState(!1),[S,w]=b.useState(!1),[j,C]=b.useState(""),E=b.useRef(0),N=b.useRef(!1);async function O(A=o,D=!1){const k=await st("/admin/api/ads?days="+A);k.auth===!1||!k.config||(n(k.config),l(k.stats||null),D||h(k.config))}b.useEffect(()=>{const A=N.current;N.current=!0;let D=!0;return(async()=>{const k=await st("/admin/api/ads?days="+o);!D||k.auth===!1||!k.config||(n(k.config),l(k.stats||null),h(I=>A&&I?I:k.config))})(),()=>{D=!1}},[o]);async function T(A,D){var k,I;x(!0);try{const P=await an(A,e,D);return(k=P.flash)!=null&&k.error?(C(P.flash.error),rt(P.flash.error)):(C(""),(I=P.flash)!=null&&I.text&&rt(P.flash.text)),P}finally{x(!1)}}if(!t||!c)return f.jsx(rn,{className:"h-48"});const R=(A,D,k)=>f.jsxs("div",{className:"space-y-1",children:[f.jsx(yt,{htmlFor:"ads-"+A,children:D}),f.jsx($e,{id:"ads-"+A,inputMode:"numeric",value:String(c[A]),onChange:I=>h({...c,[A]:I.target.value})}),f.jsx("p",{className:"text-xs text-muted-foreground",children:k})]});return f.jsxs("div",{className:"space-y-4",children:[f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsxs(Te,{className:"flex flex-wrap items-center gap-2",children:["Реклама",t.enabled?f.jsx(Oe,{variant:"ok",children:"включена"}):f.jsx(Oe,{variant:"secondary",children:"выключена"}),f.jsxs(Oe,{variant:"secondary",children:["баннеров: ",t.banners.length]})]}),f.jsx(ht,{children:"Свои баннеры (прямые рекламодатели и партнёрки). Приложения читают настройки раз в 5 минут: выключатель доходит до всех за это время. Подписчикам и в «Истории», поиске, режиме выбора рекламы нет."})]}),f.jsxs(xe,{className:"space-y-4",children:[f.jsxs("label",{className:"flex items-center gap-2 text-sm font-medium",children:[f.jsx("input",{type:"checkbox",checked:c.enabled,onChange:A=>h({...c,enabled:A.target.checked})}),"Показывать рекламу (общий выключатель)"]}),f.jsxs("div",{className:"grid gap-3 md:grid-cols-3",children:[f.jsxs("div",{className:"space-y-1",children:[f.jsx(yt,{htmlFor:"ads-provider",children:"Источник"}),f.jsxs("select",{id:"ads-provider",className:jS+" w-full",value:c.provider,onChange:A=>h({...c,provider:A.target.value}),children:[f.jsx("option",{value:"house",children:"Свои баннеры"}),f.jsx("option",{value:"yandex",disabled:!0,children:"Яндекс (позже)"})]})]}),R("everyN","Каждая N-я карточка","6-30, по умолчанию 10"),R("firstAfter","Первая не раньше карточки","1-60, по умолчанию 10"),R("afterInstallDays","Дней после установки","0-60: до этого рекламы нет"),R("maxPerScreen","На экране не больше","1-2 рекламы"),R("railsEvery","Главная «Обзора»: после каждых N рельс","2-10, первая после 2-й рельсы"),f.jsxs("div",{className:"space-y-1",children:[f.jsx(yt,{htmlFor:"ads-minver",children:"Минимальная версия приложения"}),f.jsx($e,{id:"ads-minver",placeholder:"например 0.20.5",value:c.minAppVersion,onChange:A=>h({...c,minAppVersion:A.target.value})}),f.jsx("p",{className:"text-xs text-muted-foreground",children:"Пусто: все версии с рекламой"})]})]}),f.jsxs("div",{className:"grid gap-4 md:grid-cols-3",children:[f.jsxs("fieldset",{className:"space-y-1",children:[f.jsx("legend",{className:"mb-1 text-sm font-medium",children:"Разделы"}),VM.map(A=>f.jsxs("label",{className:"flex items-center gap-2 text-sm",children:[f.jsx("input",{type:"checkbox",checked:c.sections[A],onChange:D=>h({...c,sections:{...c.sections,[A]:D.target.checked}})}),SS[A]]},A))]}),f.jsxs("fieldset",{className:"space-y-1",children:[f.jsx("legend",{className:"mb-1 text-sm font-medium",children:"Платформы"}),GM.map(A=>f.jsxs("label",{className:"flex items-center gap-2 text-sm",children:[f.jsx("input",{type:"checkbox",checked:c.platforms[A],onChange:D=>h({...c,platforms:{...c.platforms,[A]:D.target.checked}})}),wS[A]]},A))]}),f.jsxs("fieldset",{className:"space-y-1",children:[f.jsx("legend",{className:"mb-1 text-sm font-medium",children:"Кому не показывать"}),f.jsxs("label",{className:"flex items-center gap-2 text-sm",children:[f.jsx("input",{type:"checkbox",checked:c.hideForSubscribers,onChange:A=>h({...c,hideForSubscribers:A.target.checked})}),"Подписчикам OMP (и в льготный период)"]}),f.jsxs("label",{className:"flex items-center gap-2 text-sm",children:[f.jsx("input",{type:"checkbox",checked:c.tvHideIfLinkedSubscriber,onChange:A=>h({...c,tvHideIfLinkedSubscriber:A.target.checked})}),"ТВ, к которому привязан телефон с подпиской"]})]})]}),c.enabled&&!t.banners.some(A=>A.enabled)?f.jsx(Bt,{variant:"warn",children:"Нет ни одного включённого баннера: приложения рекламу не покажут, пока его нет."}):null,f.jsx(he,{disabled:g,onClick:()=>{const{banners:A,...D}=c;T("/admin/ads/config",D).then(()=>O())},children:"Сохранить настройки рекламы"})]})]}),f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Баннеры"}),f.jsx(ht,{children:"По закону о рекламе на баннере видны пометка «Реклама», рекламодатель и erid (токен ОРД). Без erid баннер не сохраняется. erid добавляется и в ссылку."})]}),f.jsxs(xe,{className:"space-y-3",children:[t.banners.length===0?f.jsx("p",{className:"text-sm text-muted-foreground",children:"Баннеров пока нет"}):null,f.jsx("ul",{className:"space-y-2",children:t.banners.map(A=>f.jsxs("li",{className:"flex flex-wrap items-center gap-3 rounded-md border border-border p-2",children:[f.jsx("img",{src:CS(A.image),alt:"",className:"h-16 w-12 rounded object-cover"}),f.jsxs("div",{className:"min-w-0 flex-1 text-sm",children:[f.jsxs("div",{className:"font-medium",children:[A.title," ",A.enabled?null:f.jsx(Oe,{variant:"secondary",children:"выключен"})]}),f.jsxs("div",{className:"text-xs text-muted-foreground",children:[A.advertiser," · erid ",A.erid," · вес ",A.weight,A.from||A.to?" · "+(Um(A.from)||"...")+" - "+(Um(A.to)||"..."):""]})]}),f.jsx(he,{size:"sm",variant:"secondary",onClick:()=>v(Q6(A)),children:"Изменить"}),f.jsx(he,{size:"sm",variant:"destructive",disabled:g,onClick:()=>{confirm("Удалить баннер «"+A.title+"»? Статистика по нему останется.")&&T("/admin/ads/banner-remove",{id:A.id,confirm:"yes"}).then(()=>O())},children:"Удалить"})]},A.id))}),m?f.jsx(W6,{draft:m,setDraft:v,busy:g,uploading:S,error:j,onUpload:async A=>{const D=m.localId,k=++E.current;w(!0);try{const I=await Y6(A),B=(await T("/admin/ads/image",{mime:A.type,data:I})).extra,F=B&&B.imageId;if(!F||k!==E.current)return;v(se=>se&&se.localId===D?{...se,image:F}:se)}finally{k===E.current&&w(!1)}},onSave:async()=>{const{localId:A,...D}=m;(await T("/admin/ads/banner",{banner:D})).ok&&(v(null),await O())}}):f.jsx(he,{variant:"secondary",onClick:()=>v(X6()),children:"Добавить баннер"})]})]}),f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Предпросмотр"}),f.jsx(ht,{children:"Так ячейка выглядит в каждом виде карточек на телефоне. Размер всегда как у соседних карточек."})]}),f.jsx(xe,{children:f.jsx(J6,{banner:m||t.banners[0]||null})})]}),f.jsx(e8,{stats:r,days:o,setDays:u})]})}function W6({draft:e,setDraft:t,busy:n,uploading:r,error:l,onUpload:o,onSave:u}){const c=(m,v,g)=>f.jsxs("div",{className:"space-y-1",children:[f.jsx(yt,{htmlFor:"banner-"+m,children:v}),f.jsx($e,{id:"banner-"+m,type:(g==null?void 0:g.type)||"text",maxLength:g==null?void 0:g.max,placeholder:g==null?void 0:g.placeholder,value:e[m],onChange:x=>t({...e,[m]:x.target.value})}),g!=null&&g.hint?f.jsx("p",{className:"text-xs text-muted-foreground",children:g.hint}):null]}),h=!e.erid.trim();return f.jsxs("div",{className:"space-y-3 rounded-md border border-border p-3",children:[f.jsx("div",{className:"text-sm font-medium",children:e.id?"Изменить баннер":"Новый баннер"}),f.jsxs("div",{className:"grid gap-3 md:grid-cols-2",children:[c("title","Заголовок",{max:56,hint:"До 56 знаков"}),c("advertiser","Рекламодатель",{placeholder:"ООО «Ромашка», ИНН ...",hint:"Видно на баннере рядом с пометкой «Реклама»"}),c("text","Текст",{max:140,hint:"До 140 знаков, в виде «список» и между рельсами"}),c("erid","erid (токен ОРД)",{placeholder:"2SDnjc...",hint:"Обязательно. Выдаёт ОРД или партнёрская сеть"}),c("url","Ссылка",{placeholder:"https://...",hint:"На ТВ вместо клика QR-код с этой ссылкой"}),c("weight","Вес",{hint:"1-100: чем больше, тем чаще среди баннеров"}),c("from","Показывать с",{type:"date"}),c("to","Показывать по",{type:"date"})]}),f.jsxs("div",{className:"flex flex-wrap items-center gap-3",children:[e.image?f.jsx("img",{src:CS(e.image),alt:"",className:"h-24 w-16 rounded object-cover"}):f.jsx("div",{className:"flex h-24 w-16 items-center justify-center rounded bg-muted text-xs",children:"нет"}),f.jsxs("div",{className:"space-y-1",children:[f.jsx(yt,{htmlFor:"banner-image",children:"Картинка 2:3 (JPEG, PNG, WebP, до 300 КБ)"}),f.jsx("input",{id:"banner-image",type:"file",accept:"image/jpeg,image/png,image/webp",className:"text-sm",disabled:r,onChange:m=>{const v=m.target.files&&m.target.files[0];v&&o(v)}})]})]}),f.jsxs("div",{className:"grid gap-4 md:grid-cols-3",children:[f.jsxs("fieldset",{className:"space-y-1",children:[f.jsx("legend",{className:"mb-1 text-sm font-medium",children:"Разделы"}),VM.map(m=>f.jsxs("label",{className:"flex items-center gap-2 text-sm",children:[f.jsx("input",{type:"checkbox",checked:e.sections.indexOf(m)>=0,onChange:v=>t({...e,sections:PA(e.sections,m,v.target.checked)})}),SS[m]]},m))]}),f.jsxs("fieldset",{className:"space-y-1",children:[f.jsx("legend",{className:"mb-1 text-sm font-medium",children:"Платформы"}),GM.map(m=>f.jsxs("label",{className:"flex items-center gap-2 text-sm",children:[f.jsx("input",{type:"checkbox",checked:e.platforms.indexOf(m)>=0,onChange:v=>t({...e,platforms:PA(e.platforms,m,v.target.checked)})}),wS[m]]},m))]}),f.jsxs("fieldset",{className:"space-y-1",children:[f.jsx("legend",{className:"mb-1 text-sm font-medium",children:"ТВ"}),f.jsxs("select",{className:jS,value:e.tvMode,"aria-label":"Клик на ТВ",onChange:m=>t({...e,tvMode:m.target.value}),children:[f.jsx("option",{value:"qr",children:"QR-код со ссылкой"}),f.jsx("option",{value:"noclick",children:"Только баннер"})]}),f.jsxs("label",{className:"mt-2 flex items-center gap-2 text-sm",children:[f.jsx("input",{type:"checkbox",checked:e.enabled,onChange:m=>t({...e,enabled:m.target.checked})}),"Баннер включён"]})]})]}),h?f.jsx(Bt,{variant:"warn",children:"Без erid баннер не сохранится: это требование закона о маркировке рекламы."}):null,l?f.jsx(Bt,{variant:"warn",children:l}):null,f.jsxs("div",{className:"flex gap-2",children:[f.jsx(he,{disabled:n||h,onClick:()=>void u(),children:"Сохранить баннер"}),f.jsx(he,{variant:"ghost",onClick:()=>t(null),children:"Отмена"})]})]})}function J6({banner:e}){if(!e)return f.jsx("p",{className:"text-sm text-muted-foreground",children:"Добавьте баннер, чтобы увидеть предпросмотр"});const t=e.image?CS(e.image):"",n=o=>f.jsxs("div",{className:"relative overflow-hidden rounded-lg bg-zinc-800 "+o,style:{aspectRatio:"173 / 240"},children:[t?f.jsx("img",{src:t,alt:"",className:"h-full w-full object-cover"}):null,f.jsx("span",{className:"absolute left-1 top-1 rounded bg-black/70 px-1 text-[10px] font-bold text-amber-300",children:"Реклама"})]}),r=(o,u)=>Array.from({length:o},(c,h)=>f.jsxs("div",{className:"space-y-1",children:[f.jsx("div",{className:"rounded-lg bg-zinc-700/60 "+u,style:{aspectRatio:"173 / 240"}}),f.jsx("div",{className:"h-2 w-3/4 rounded bg-zinc-700/60"})]},h)),l=f.jsxs("div",{className:"min-w-0 space-y-1",children:[n(""),f.jsx("div",{className:"line-clamp-2 text-xs font-semibold",children:e.title||"Заголовок"}),f.jsxs("div",{className:"truncate text-[10px] text-muted-foreground",children:["Реклама · ",e.advertiser||"рекламодатель"]}),f.jsxs("div",{className:"truncate text-[10px] text-muted-foreground",children:["erid: ",e.erid||"..."]})]});return f.jsxs("div",{className:"grid gap-4 md:grid-cols-5",children:[f.jsxs("div",{children:[f.jsx("div",{className:"mb-1 text-xs text-muted-foreground",children:"«Мои»: крупно (2)"}),f.jsxs("div",{className:"grid grid-cols-2 gap-2 rounded-md bg-zinc-950 p-2",children:[r(1,""),l]})]}),f.jsxs("div",{children:[f.jsx("div",{className:"mb-1 text-xs text-muted-foreground",children:"«Мои»: мелко (3)"}),f.jsxs("div",{className:"grid grid-cols-3 gap-1 rounded-md bg-zinc-950 p-2",children:[r(2,""),l]})]}),f.jsxs("div",{children:[f.jsx("div",{className:"mb-1 text-xs text-muted-foreground",children:"«Мои»: список"}),f.jsxs("div",{className:"flex gap-2 rounded-md bg-zinc-950 p-2",children:[n("w-10 shrink-0"),f.jsxs("div",{className:"min-w-0 text-xs",children:[f.jsx("div",{className:"font-semibold",children:e.title||"Заголовок"}),f.jsx("div",{className:"text-muted-foreground",children:e.text}),f.jsxs("div",{className:"text-[10px] text-muted-foreground",children:["Реклама · ",e.advertiser||"рекламодатель"," · erid: ",e.erid||"..."]})]})]})]}),f.jsxs("div",{children:[f.jsx("div",{className:"mb-1 text-xs text-muted-foreground",children:"«Мои»: компактно"}),f.jsxs("div",{className:"rounded-md bg-zinc-950 p-2 text-xs",children:[f.jsx("div",{className:"font-semibold",children:e.title||"Заголовок"}),f.jsxs("div",{className:"text-[10px] text-muted-foreground",children:[f.jsx("span",{className:"rounded bg-amber-300/20 px-1 font-bold text-amber-300",children:"Реклама"})," ",e.advertiser||"рекламодатель"," · erid: ",e.erid||"..."]})]})]}),f.jsxs("div",{children:[f.jsx("div",{className:"mb-1 text-xs text-muted-foreground",children:"«Обзор»: 4 в ряд"}),f.jsxs("div",{className:"grid grid-cols-4 gap-1 rounded-md bg-zinc-950 p-2",children:[r(3,""),l]})]})]})}function em({title:e,rows:t,label:n}){return f.jsxs("div",{children:[f.jsx("div",{className:"mb-1 text-sm font-medium",children:e}),t.length===0?f.jsx("p",{className:"text-sm text-muted-foreground",children:"Нет данных"}):f.jsxs(Wn,{children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Что"}),f.jsx(Se,{className:"text-right",children:"Показы"}),f.jsx(Se,{className:"text-right",children:"Клики"}),f.jsx(Se,{className:"text-right",children:"CTR"})]})}),f.jsx(er,{children:t.map(r=>f.jsxs(qe,{children:[f.jsx(me,{children:n?n(r.key,r):r.key}),f.jsx(me,{className:"text-right",children:r.impressions}),f.jsx(me,{className:"text-right",children:r.clicks}),f.jsx(me,{className:"text-right",children:FM(r)})]},r.key))})]})]})}function e8({stats:e,days:t,setDays:n}){return f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsxs(Te,{className:"flex flex-wrap items-center gap-2",children:["Статистика",f.jsxs("select",{className:jS,value:t,"aria-label":"Период",onChange:r=>n(Number(r.target.value)),children:[f.jsx("option",{value:7,children:"7 дней"}),f.jsx("option",{value:30,children:"30 дней"}),f.jsx("option",{value:90,children:"90 дней"})]})]}),f.jsx(ht,{children:"Показы (ячейка видна наполовину 1 секунду) и клики по дням МСК. Без ID устройств, хранится 90 дней."})]}),f.jsx(xe,{className:"space-y-4",children:e?f.jsxs(f.Fragment,{children:[f.jsx("div",{className:"grid grid-cols-3 gap-3",children:[[e.total.impressions,"показов"],[e.total.clicks,"кликов"],[FM(e.total),"CTR"]].map(([r,l])=>f.jsxs("div",{className:"rounded-md border border-border p-3",children:[f.jsx("div",{className:"text-2xl font-bold",children:r}),f.jsx("div",{className:"text-xs text-muted-foreground",children:l})]},l))}),f.jsxs("div",{className:"grid gap-4 md:grid-cols-3",children:[f.jsx(em,{title:"По баннерам",rows:e.byBanner,label:(r,l)=>l.title||l.key}),f.jsx(em,{title:"По разделам",rows:e.bySection,label:r=>SS[r]||r}),f.jsx(em,{title:"По платформам",rows:e.byPlatform,label:r=>wS[r]||r})]}),f.jsx(em,{title:"По дням",rows:e.byDay.filter(r=>r.impressions||r.clicks).reverse().map(r=>({key:r.day,impressions:r.impressions,clicks:r.clicks}))})]}):f.jsx(rn,{className:"h-24"})})]})}function kA(e){const t=e||{};return{enabled:t.enabled===!0,yoomoney:t.yoomoney===!0,stars:t.stars===!0,crypto:t.crypto===!0,notifyAll:t.notifyAll===!0,showAmounts:t.showAmounts===!0,amounts:t.amounts||"100,300,500,1000",minRub:String(t.minRub??50),maxRub:String(t.maxRub??1e5),commentMax:String(t.commentMax??200),thanksText:t.thanksText||"Спасибо! Вы поддержали проект OMP.",rubPerStar:String(t.rubPerStar??0),notifyMin:String(t.notifyMin??0)}}function t8(e,t,n){return n?e:t}function n8(e,t){const n=Object.keys(e);for(let r=0;rkA(e)),[c,h]=b.useState(null),[m,v]=b.useState("all"),[g,x]=b.useState("all"),S=b.useRef(0),w=b.useRef(o);w.current=o;const j=b.useRef({status:m,method:g});j.current={status:m,method:g};const C=c??(t==null?void 0:t.rows)??[],E=t==null?void 0:t.summary,N=(t==null?void 0:t.chart)||[],O=(t==null?void 0:t.top)||[];b.useEffect(()=>{u(P=>t8(P,kA(e),r))},[e,r]);async function T(P=m,B=g){const F=++S.current;if(P==="all"&&B==="all"){const G=IA(F,S.current,null);G!==void 0&&h(G);return}const se=new URLSearchParams;P!=="all"&&se.set("status",P),B!=="all"&&se.set("method",B);const ue=await st("/admin/api/donations?"+se.toString());if(ue.auth===!1)return;const de=IA(F,S.current,ue.rows||[]);de!==void 0&&h(de)}b.useEffect(()=>{const P=j.current;P.status==="all"&&P.method==="all"||T(P.status,P.method)},[t]);function R(P){l(!0),u(B=>({...B,...P}))}const A=Math.max(1,...N.map(P=>P.rub)),D=[["День",E==null?void 0:E.day],["Неделя",E==null?void 0:E.week],["Месяц",E==null?void 0:E.month]];return f.jsxs("div",{className:"space-y-4",children:[f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Донаты"})}),f.jsxs(xe,{className:"space-y-3",children:[f.jsxs("label",{className:"flex items-center gap-2 text-sm",children:[f.jsx("input",{type:"checkbox",checked:o.enabled,onChange:P=>R({enabled:P.target.checked})}),"Принимать донаты"]}),f.jsxs("div",{className:"flex flex-wrap gap-4 text-sm",children:[f.jsxs("label",{className:"flex items-center gap-2",children:[f.jsx("input",{type:"checkbox",checked:o.yoomoney,onChange:P=>R({yoomoney:P.target.checked})})," ЮMoney"]}),f.jsxs("label",{className:"flex items-center gap-2",children:[f.jsx("input",{type:"checkbox",checked:o.stars,onChange:P=>R({stars:P.target.checked})})," Telegram Stars"]}),f.jsxs("label",{className:"flex items-center gap-2",children:[f.jsx("input",{type:"checkbox",checked:o.crypto,onChange:P=>R({crypto:P.target.checked})})," Crypto Pay"]}),f.jsxs("label",{className:"flex items-center gap-2",children:[f.jsx("input",{type:"checkbox",checked:o.notifyAll,onChange:P=>R({notifyAll:P.target.checked})})," Уведомлять о каждом"]}),f.jsxs("label",{className:"flex items-center gap-2",children:[f.jsx("input",{type:"checkbox",checked:o.showAmounts,onChange:P=>R({showAmounts:P.target.checked})})," Суммы в списке благодарностей"]})]}),f.jsxs("div",{className:"grid gap-3 md:grid-cols-3",children:[f.jsx(Xs,{label:"Кнопки сумм",value:o.amounts,onChange:P=>R({amounts:P})}),f.jsx(Xs,{label:"Минимум, ₽",value:o.minRub,onChange:P=>R({minRub:P})}),f.jsx(Xs,{label:"Максимум, ₽",value:o.maxRub,onChange:P=>R({maxRub:P})}),f.jsx(Xs,{label:"Комментарий, символов",value:o.commentMax,onChange:P=>R({commentMax:P})}),f.jsx(Xs,{label:"₽ за 1 звезду",value:o.rubPerStar,onChange:P=>R({rubPerStar:P})}),f.jsx(Xs,{label:"Порог уведомления, ₽",value:o.notifyMin,onChange:P=>R({notifyMin:P})})]}),f.jsxs("div",{children:[f.jsx(yt,{children:"Текст благодарности"}),f.jsx($e,{value:o.thanksText,onChange:P=>R({thanksText:P.target.value})})]}),f.jsx(he,{type:"button",onClick:()=>{const P=o;n("/admin/donate",{enabled:P.enabled?"true":"false",yoomoney:P.yoomoney?"true":"false",stars:P.stars?"true":"false",crypto:P.crypto?"true":"false",notifyAll:P.notifyAll?"true":"false",showAmounts:P.showAmounts?"true":"false",amounts:P.amounts,minRub:P.minRub,maxRub:P.maxRub,commentMax:P.commentMax,thanksText:P.thanksText,rubPerStar:P.rubPerStar,notifyMin:P.notifyMin}).then(B=>{l(i8(w.current,P,r8(B)))})},children:"Сохранить"}),f.jsx("p",{className:"text-xs text-muted-foreground",children:"Пока флаг выключен, бот отвечает, что донат недоступен. Донат не продлевает подписку. Секреты ЮMoney, Stars и Crypto Pay берутся из тех же настроек оплаты."})]})]}),f.jsx("div",{className:"grid gap-3 md:grid-cols-3",children:D.map(([P,B])=>f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:P})}),f.jsxs(xe,{className:"text-sm",children:[f.jsx("div",{children:tm((B==null?void 0:B.sum)||0)}),f.jsxs("div",{className:"text-muted-foreground",children:[(B==null?void 0:B.count)||0," донатов, средний чек ",tm((B==null?void 0:B.average)||0)]})]})]},P))}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"30 дней, МСК"})}),f.jsxs(xe,{children:[f.jsx("div",{className:"flex h-36 items-end gap-px overflow-x-auto",children:N.map(P=>f.jsx("div",{title:P.day+": "+P.rub,className:"flex h-full min-w-[6px] flex-1 flex-col justify-end",children:f.jsx("div",{className:"w-full rounded-sm bg-[#f5b700]",style:{height:Math.max(2,Math.round(P.rub/A*128))+"px"}})},P.day))}),f.jsxs("div",{className:"mt-1 flex justify-between text-xs text-muted-foreground",children:[f.jsx("span",{children:((k=N[0])==null?void 0:k.day)||""}),f.jsx("span",{children:((I=N[N.length-1])==null?void 0:I.day)||""})]})]})]}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Топ"})}),f.jsx(xe,{className:"text-sm",children:O.length?O.map(P=>f.jsxs("div",{children:[P.who,": ",tm(P.sum)," (",P.count,")"]},P.who+P.sum)):f.jsx("div",{className:"text-muted-foreground",children:"Пока нет оплаченных донатов"})})]}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Лента"})}),f.jsxs(xe,{className:"space-y-3",children:[f.jsxs("div",{className:"flex flex-wrap gap-2",children:[f.jsxs("select",{className:"rounded-md border bg-background px-2 py-1 text-sm",value:m,onChange:P=>{v(P.target.value),T(P.target.value,g)},children:[f.jsx("option",{value:"all",children:"все статусы"}),f.jsx("option",{value:"paid",children:"оплачен"}),f.jsx("option",{value:"pending",children:"ждёт"}),f.jsx("option",{value:"refunded",children:"возврат"})]}),f.jsxs("select",{className:"rounded-md border bg-background px-2 py-1 text-sm",value:g,onChange:P=>{x(P.target.value),T(m,P.target.value)},children:[f.jsx("option",{value:"all",children:"все способы"}),f.jsx("option",{value:"yoomoney",children:"ЮMoney"}),f.jsx("option",{value:"stars",children:"Stars"}),f.jsx("option",{value:"crypto",children:"Crypto Pay"})]}),f.jsx("a",{className:"text-sm text-primary",href:"/admin/donations.csv"+(m!=="all"||g!=="all"?"?"+new URLSearchParams({...m!=="all"?{status:m}:{},...g!=="all"?{method:g}:{}}).toString():""),children:"CSV"})]}),f.jsxs("div",{className:"overflow-x-auto",children:[f.jsxs("table",{className:"w-full text-left text-sm",children:[f.jsx("thead",{children:f.jsxs("tr",{className:"text-muted-foreground",children:[f.jsx("th",{className:"py-1 pr-2",children:"Время"}),f.jsx("th",{className:"py-1 pr-2",children:"Кто"}),f.jsx("th",{className:"py-1 pr-2",children:"Сумма"}),f.jsx("th",{className:"py-1 pr-2",children:"Способ"}),f.jsx("th",{className:"py-1 pr-2",children:"Комментарий"}),f.jsx("th",{className:"py-1 pr-2",children:"Статус"}),f.jsx("th",{className:"py-1",children:"Действия"})]})}),f.jsx("tbody",{children:C.map(P=>f.jsxs("tr",{className:"border-t border-border",children:[f.jsx("td",{className:"py-1 pr-2 whitespace-nowrap",children:P.atText}),f.jsx("td",{className:"py-1 pr-2",children:P.nameHidden?"имя скрыто":P.who||P.telegramId}),f.jsx("td",{className:"py-1 pr-2",children:tm(P.amountRub)}),f.jsx("td",{className:"py-1 pr-2",children:P.method}),f.jsx("td",{className:"py-1 pr-2",children:P.commentHidden?"скрыт":P.comment}),f.jsx("td",{className:"py-1 pr-2",children:P.held&&P.status==="pending"?"ждёт в ЮMoney":a8[P.status]||P.status}),f.jsxs("td",{className:"py-1 space-x-2 whitespace-nowrap",children:[P.held&&P.status==="pending"?f.jsx("button",{type:"button",className:"text-primary",onClick:()=>{window.confirm("Подтвердить удержанный донат? Подписка не продлится.")&&n("/admin/donate/confirm",{id:P.id,confirm:"yes"}).then(()=>T())},children:"Подтвердить"}):null,P.status==="paid"?f.jsx("button",{type:"button",className:"text-primary",onClick:()=>{window.confirm("Отметить возврат? Деньги этой кнопкой не уходят.")&&n("/admin/donate/refund",{id:P.id,confirm:"yes"}).then(()=>T())},children:"Возврат"}):null,f.jsx("button",{type:"button",className:"text-primary",onClick:()=>void n("/admin/donate/hide",{id:P.id,field:"comment"}).then(()=>T()),children:P.commentHidden?"Вернуть комментарий":"Скрыть комментарий"}),f.jsx("button",{type:"button",className:"text-primary",onClick:()=>void n("/admin/donate/hide",{id:P.id,field:"name"}).then(()=>T()),children:P.nameHidden?"Вернуть имя":"Скрыть имя"})]})]},P.id))})]}),C.length?null:f.jsx("div",{className:"py-3 text-sm text-muted-foreground",children:"Пусто"})]})]})]})]})}function Xs({label:e,value:t,onChange:n}){return f.jsxs("label",{className:"block text-sm",children:[f.jsx("span",{className:"mb-1 block text-muted-foreground",children:e}),f.jsx($e,{value:t,onChange:r=>n(r.target.value)})]})}function o8({csrf:e,settings:t,journal:n,run:r}){const[l,o]=b.useState(t||{}),[u,c]=b.useState(n||[]),[h,m]=b.useState(!1),[v,g]=b.useState("");b.useEffect(()=>{o(t||{})},[t]),b.useEffect(()=>{c(n||[])},[n]);const x=async(w,j)=>{var E;const C={...l,...w};m(!0),g("");try{const N={settings:C,...j?{cancelId:j}:{}},O=r?await r(N):await an("/admin/referral",e,N);if(!O||O.auth===!1||O.ok===!1||(E=O.flash)!=null&&E.error){g(O&&O.flash&&O.flash.error||"Не сохранилось");return}o(C),j&&c(T=>T.map(R=>R.id===j?{...R,status:"cancelled",reason:"manual"}:R))}catch{g("Не сохранилось")}finally{m(!1)}},S=w=>void x({[w]:!l[w]});return f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Реферальная программа"})}),f.jsxs(xe,{className:"space-y-3",children:[v?f.jsx("p",{className:"text-sm text-destructive",children:v}):null,f.jsx(he,{type:"button",variant:l.enabled?"default":"secondary",disabled:h,onClick:()=>S("enabled"),children:l.enabled?"Программа включена":"Программа выключена"}),f.jsx(yt,{children:"Дни рефереру (макс. 14)"}),f.jsx($e,{defaultValue:String(l.referrerDays??0),onBlur:w=>void x({referrerDays:Number(w.target.value)})}),f.jsx(yt,{children:"Бонусные дни другу (макс. 14)"}),f.jsx($e,{defaultValue:String(l.friendDays??0),onBlur:w=>void x({friendDays:Number(w.target.value)})}),f.jsx(yt,{children:"Процент на баланс"}),f.jsx($e,{defaultValue:String(l.balancePercent??0),onBlur:w=>void x({balancePercent:Number(w.target.value)})}),f.jsx(he,{type:"button",variant:l.tiers?"default":"secondary",disabled:h,onClick:()=>S("tiers"),children:"Уровни 3/5/10"}),f.jsx(he,{type:"button",variant:l.friendDiscount?"default":"secondary",disabled:h,onClick:()=>S("friendDiscount"),children:"Скидка другу"}),f.jsx(he,{type:"button",variant:l.retention?"default":"secondary",disabled:h,onClick:()=>S("retention"),children:"Бонус удержания"}),f.jsxs("p",{className:"text-sm text-muted-foreground",children:["Начисление через ",l.delayDays??7," дн. после оплаты. Годовой лимит ",l.yearlyCap??12," мес. Только при активной подписке реферера и оплате друга."]}),f.jsx("h3",{className:"font-semibold",children:"Журнал"}),u.length===0?f.jsx("p",{className:"text-sm",children:"Начислений нет"}):u.map(w=>f.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[f.jsxs("span",{children:[w.friendId||w.id," · ",w.status," · ",w.days," дн."]}),w.status!=="cancelled"?f.jsx(he,{type:"button",variant:"secondary",disabled:h,onClick:()=>void x({},w.id),children:"Отменить"}):null]},w.id))]})]})}const s8=[["all","Все пункты"],["tech","Только техническое"],["user","Только для пользователей"]],u8={phone:"Телефон",tv:"ТВ",lg:"LG",atv:"Android TV"};function c8(e,t,n){const r=[];return e.forEach(l=>{if(!n&&l.beta)return;const o=l.items.filter(u=>t==="all"?!0:t==="tech"?u.tech:!u.tech);o.length&&r.push({...l,items:o})}),r}function f8(e){return e.unreleased?"Не выпущено":e.version}const d8="h-10 rounded-md border border-input bg-secondary px-3 text-sm text-foreground",zA=12;function h8(){const[e,t]=b.useState(null),[n,r]=b.useState("ru"),[l,o]=b.useState("all"),[u,c]=b.useState(!1),[h,m]=b.useState(zA),[v,g]=b.useState("");b.useEffect(()=>{let j=!1;return st("/admin/api/changelog").then(C=>{if(!j){if(C.auth===!1){g("Нужен вход");return}t(C)}}).catch(C=>{j||g(C instanceof Error?C.message:"Не удалось загрузить")}),()=>{j=!0}},[]);const x=e?n==="en"&&(e.en||[]).length?e.en||[]:e.ru||[]:[],S=c8(x,l,u),w=x.reduce((j,C)=>j+C.items.filter(E=>E.tech).length,0);return f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Изменения"}),f.jsxs(ht,{children:["Полный CHANGELOG из main на GitHub. Пункты ",f.jsx("code",{children:"[tech]"})," видны только здесь: в приложении, релизе и Telegram их нет."]})]}),f.jsxs(xe,{className:"space-y-3",children:[f.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[f.jsx("select",{className:d8,value:l,"aria-label":"Какие пункты",onChange:j=>o(j.target.value),children:s8.map(([j,C])=>f.jsx("option",{value:j,children:C},j))}),f.jsxs("div",{className:"flex gap-1",role:"group","aria-label":"Язык",children:[f.jsx(he,{size:"sm",variant:n==="ru"?"default":"secondary",onClick:()=>r("ru"),children:"RU"}),f.jsx(he,{size:"sm",variant:n==="en"?"default":"secondary",onClick:()=>r("en"),disabled:!e||!(e.en||[]).length,children:"EN"})]}),f.jsxs("label",{className:"flex items-center gap-2 text-sm text-muted-foreground",children:[f.jsx("input",{type:"checkbox",checked:u,onChange:j=>c(j.target.checked)}),"Бета-версии"]}),e!=null&&e.ok?f.jsxs("span",{className:"ml-auto text-xs text-muted-foreground",children:[w," тех. пунктов · загружено ",f.jsx(dt,{ms:n==="en"?e.enFetchedAt:e.fetchedAt})]}):null]}),v?f.jsx(Bt,{variant:"destructive",children:v}):null,e&&!e.ok?f.jsxs(Bt,{variant:"destructive",children:["GitHub не ответил",e.error?": "+e.error:"",". Попробуйте позже."]}):null,e!=null&&e.ok&&e.stale?f.jsxs(Bt,{variant:"warn",children:["Показана сохранённая копия: GitHub не ответил",e.error?" ("+e.error+")":"","."]}):null,e!=null&&e.ok&&n==="en"&&e.enStale?f.jsxs(Bt,{variant:"warn",children:["Английский текст из сохранённой копии",e.enFetchedAt?"":" (не загружался)",": CHANGELOG.en.md не ответил",e.enError?" ("+e.enError+")":"","."]}):null,e===null&&!v?f.jsx(rn,{className:"h-24"}):e!=null&&e.ok&&S.length===0?f.jsx("p",{className:"text-sm text-muted-foreground",children:"Пунктов нет"}):f.jsxs("div",{className:"space-y-4",children:[S.slice(0,h).map(j=>f.jsxs("section",{className:"space-y-2",children:[f.jsxs("h3",{className:"flex flex-wrap items-center gap-2 text-base font-semibold",children:[f8(j),j.unreleased?f.jsx(Oe,{variant:"warn",children:"не в релизе"}):null,j.beta?f.jsx(Oe,{variant:"secondary",children:"бета"}):null]}),f.jsx("ul",{className:"space-y-1 text-sm",children:j.items.map((C,E)=>f.jsxs("li",{className:"flex items-start gap-2 rounded-md px-2 py-1 "+(C.tech?"border-l-2 border-amber-500 bg-amber-950/30":"border-l-2 border-transparent"),children:[C.tech?f.jsx(Oe,{variant:"warn",className:"shrink-0",children:"tech"}):null,C.platform?f.jsx(Oe,{variant:"secondary",className:"shrink-0",children:u8[C.platform]||C.platform}):null,f.jsx("span",{className:"min-w-0 flex-1 "+(C.tech?"text-amber-100":""),children:C.text})]},E))})]},j.version)),S.length>h?f.jsxs(he,{variant:"secondary",onClick:()=>m(j=>j+zA),children:["Показать ещё (",S.length-h,")"]}):null]})]})]})}const m8='a[href], button:not([disabled]), textarea:not([disabled]), input:not([disabled]), select:not([disabled]), [tabindex]:not([tabindex="-1"])';function v8({title:e,onClose:t,children:n}){const r=b.useId(),l=b.useRef(null),o=b.useRef(t);return o.current=t,b.useEffect(()=>{const u=document.activeElement instanceof HTMLElement?document.activeElement:null,c=l.current;c==null||c.focus();const h=v=>{if(v.key==="Escape"){v.preventDefault(),o.current();return}if(v.key!=="Tab"||!c)return;const g=Array.from(c.querySelectorAll(m8));if(!g.length){v.preventDefault();return}const x=g[0],S=g[g.length-1],w=document.activeElement;v.shiftKey&&(w===x||!c.contains(w))?(v.preventDefault(),S.focus()):!v.shiftKey&&w===S&&(v.preventDefault(),x.focus())};document.addEventListener("keydown",h);const m=document.body.style.overflow;return document.body.style.overflow="hidden",()=>{document.removeEventListener("keydown",h),document.body.style.overflow=m,u==null||u.focus()}},[]),f.jsx("div",{className:"fixed inset-0 z-50 flex items-end justify-center bg-black/60 sm:items-center sm:p-4",onClick:()=>o.current(),children:f.jsxs("div",{ref:l,role:"dialog","aria-modal":"true","aria-labelledby":r,tabIndex:-1,className:"flex max-h-[100dvh] w-full flex-col overflow-hidden rounded-t-lg border border-border bg-card shadow-lg outline-none sm:max-h-[85vh] sm:max-w-3xl sm:rounded-lg",onClick:u=>u.stopPropagation(),children:[f.jsxs("div",{className:"flex items-center justify-between gap-3 border-b border-border px-4 py-3",children:[f.jsx("h2",{id:r,className:"min-w-0 truncate text-lg font-semibold",children:e}),f.jsx("button",{type:"button",className:"h-10 shrink-0 rounded-md bg-secondary px-3 text-sm font-semibold text-secondary-foreground",onClick:()=>o.current(),children:"Закрыть"})]}),f.jsx("div",{className:"flex min-h-0 flex-1 flex-col overflow-hidden",children:n})]})})}function g8(e,t){const n=t.trim().toLowerCase();return n?e.split(` +`).filter(r=>r.toLowerCase().indexOf(n)>=0).join(` +`):e}function p8(e){return e.map(n=>{const r=n.ok===!0?"ок":n.ok===!1?"нет":"-",l=n.lastError?" · "+n.lastError:"";return n.name+": "+r+", "+n.latencyMs+" мс"+l}).join(` +`)+` + +`+JSON.stringify(e,null,2)}const y8="h-10 min-w-0 flex-1 rounded-md border border-input bg-background px-3 text-sm text-foreground",LA="h-10 shrink-0 rounded-md bg-secondary px-3 text-sm font-semibold text-secondary-foreground disabled:opacity-50";function Wf({title:e,text:t,onClose:n,onRefresh:r,refreshing:l}){const[o,u]=b.useState(""),c=g8(t,o);return f.jsxs(v8,{title:e,onClose:n,children:[f.jsxs("div",{className:"flex flex-wrap gap-2 border-b border-border px-4 py-3",children:[f.jsx("input",{className:y8,value:o,"aria-label":"Фильтр",placeholder:"Фильтр строк",autoComplete:"off",onChange:h=>u(h.target.value)}),r?f.jsx("button",{type:"button",className:LA,disabled:l,onClick:r,children:l?"Обновление…":"Обновить"}):null,f.jsx("button",{type:"button",className:LA,onClick:()=>{if(!c){rt("Пусто");return}navigator.clipboard.writeText(c).then(()=>rt("Скопировано"),()=>rt("Не скопировалось"))},children:"Копировать"})]}),f.jsx("pre",{className:"min-h-40 flex-1 overflow-auto whitespace-pre-wrap break-words bg-background p-4 font-mono text-xs","aria-busy":l?!0:void 0,children:c||(o.trim()?"Нет строк":"")})]})}const KM="omp-admin-monitor-view",UA={filter:"all",sort:"status",desc:!1,q:"",open:{}},V0={all:"Все",errors:"Только ошибки",noalert:"Без алерта",code:"Просит код"},G0={status:"Статус",name:"Название",ms:"Время ответа",time:"Время проверки"};function x8(e){try{const t=e?e.getItem(KM):null;if(!t)return{...UA,open:{}};const n=JSON.parse(t),r={};if(n.open&&typeof n.open=="object")for(const[l,o]of Object.entries(n.open))typeof o=="boolean"&&/^[a-z]{1,20}$/.test(l)&&(r[l]=o);return{filter:n.filter&&n.filter in V0?n.filter:"all",sort:n.sort&&n.sort in G0?n.sort:"status",desc:n.desc===!0,q:typeof n.q=="string"?n.q.slice(0,100):"",open:r}}catch{return{...UA,open:{}}}}function b8(e,t){try{e&&e.setItem(KM,JSON.stringify(t))}catch{}}function S8(e){const t=[],n=new Map;for(const r of e){const l=/^(.*):(direct|warp|site)$/.exec(r.id),o=l?l[1]:r.path==="jackett"?r.id:"";if(!o){t.push({key:r.id,kind:"check",name:r.name,target:r.target||"",checks:[r],check:r});continue}let u=n.get(o);u||(u={key:o,kind:"tracker",name:r.name,target:"",checks:[]},n.set(o,u),t.push(u)),u.checks.push(r),r.target&&!u.target&&r.path!=="jackett"&&(u.target=r.target),r.path==="jackett"?u.search=r:l&&l[2]==="direct"?u.direct=r:l&&l[2]==="warp"?u.warp=r:u.site=r}return t}function q0(e){return e.checks.some(t=>t.ok===!1)?!1:e.checks.some(t=>t.ok===!0)?!0:null}const _S=e=>e.ok===!0&&!!e.warn;function YM(e){const t=q0(e);return t===!1?"red":t===null?"none":e.checks.some(_S)?"yellow":"green"}function w8(e){const t=e%10,n=e%100,r=t===1&&n!==11?"жёлтая":t>=2&&t<=4&&(n<12||n>14)?"жёлтые":"жёлтых";return e+" "+r}const j8={red:0,yellow:1,none:2,green:3},$A=e=>j8[YM(e)],BA=e=>Math.max(0,...e.checks.map(t=>Number(t.ms)||0)),HA=e=>Math.max(0,...e.checks.map(t=>Number(t.at)||0));function C8(e,t){const n=e.checks.filter(r=>r.ok===!1);return t==="errors"?n.length>0:t==="code"?e.checks.some(_S):t==="noalert"?n.length>0&&n.every(r=>!r.alert):!0}function _8(e,t){const n=t.trim().toLowerCase();return n?[e.name,e.target,e.key,...e.checks.map(l=>l.detail)].join(" ").toLowerCase().includes(n):!0}function E8(e,t,n){const r=(o,u)=>o.name.localeCompare(u.name,"ru"),l=(o,u)=>t==="name"?r(o,u):t==="ms"?BA(o)-BA(u)||r(o,u):t==="time"?HA(o)-HA(u)||r(o,u):$A(o)-$A(u)||r(o,u);return e.map((o,u)=>({it:o,i:u})).sort((o,u)=>(n?-l(o.it,u.it):l(o.it,u.it))||o.i-u.i).map(o=>o.it)}function A8(e,t,n){const r=n.filter!=="all"||!!n.q.trim(),l=[];e.forEach(u=>{const c=t.filter(C=>C.group===u.id);if(!c.length)return;const h=S8(c),m=c.filter(C=>C.ok===!1).length,v=E8(h.filter(C=>C8(C,n.filter)&&_8(C,n.q)),n.sort,n.desc);if(r&&!v.length)return;const g=n.open[u.id],x=h.filter(C=>q0(C)===!0).length,S=h.filter(C=>q0(C)===null).length,w=h.filter(C=>YM(C)==="yellow").length,j=r?!1:g===void 0?x===h.length:!g;l.push({id:u.id,title:u.title,total:h.length,okCount:x,warned:w,skipped:S,failed:m,folded:j,items:v})});const o=new Map(e.map((u,c)=>[u.id,c]));return l.sort((u,c)=>(u.failed?0:1)-(c.failed?0:1)||(o.get(u.id)||0)-(o.get(c.id)||0))}function O8(e){return e===!0?"ок":e===!1?"ошибка":"нет данных"}function N8(e){const t=[e.name,"id: "+e.id,"статус: "+O8(e.ok),"результат: "+(e.detail||"-")];return e.context&&t.push("контекст: "+e.context),t.push("время ответа: "+(e.ms||0)+" мс"),e.path&&t.push("путь: "+e.path),e.target&&t.push("адрес: "+e.target),t.join(` +`)+` + +`+JSON.stringify(e,null,2)}const T8={queued:"в очереди",running:"проверяется",retry:"ждёт повтора",done:"готово"},XM=b.createContext({states:{},running:!1,pending:[],recheck:()=>{}}),QM=b.createContext(()=>{});function ES({row:e}){const t=b.useContext(QM);return f.jsx("button",{type:"button",className:"ml-2 text-xs text-primary underline",onClick:()=>t(e),children:"Подробнее"})}function K0({ids:e,red:t,recheckIds:n}){const r=n||e,l=b.useContext(XM),o=e.map(c=>l.states[c]).filter(Boolean),u=r.some(c=>l.pending.includes(c));if(l.running&&o.length){const c=o.includes("running")?"running":o.includes("retry")?"retry":o.includes("queued")?"queued":"done";return f.jsxs(Oe,{variant:c==="done"?"ok":c==="retry"?"warn":"secondary",className:"ml-2 align-middle","data-row-state":c,children:[c==="running"?f.jsx("span",{className:"mr-1 inline-block h-2 w-2 animate-spin rounded-full border border-current border-t-transparent"}):null,T8[c]]})}return!t||!r.length?null:f.jsxs(he,{type:"button",size:"sm",variant:"outline",className:"ml-2 h-7 px-2 text-xs",disabled:l.running||u,title:l.running?"Идёт проверка, дождитесь конца":"Проверить заново только эту строку",onClick:()=>l.recheck(r),"data-recheck":r.join(","),children:[u?f.jsx("span",{className:"mr-1 inline-block h-2 w-2 animate-spin rounded-full border border-current border-t-transparent"}):null,"Перепроверить"]})}const FA={direct:"напрямую",warp:"через WARP",jackett:"через Jackett",internal:"внутр. сеть"};function AS({ok:e,alerted:t,warn:n}){return e===!0&&n?f.jsx(Oe,{variant:"warn","data-status":"code",title:"Сайт отвечает страницей с капчей или проверкой на робота. Человек откроет, алерта нет.",children:"Просит код"}):e===!0?f.jsx(Oe,{variant:"ok",children:"ок"}):e===!1?f.jsx(Oe,{variant:"bad",children:t?"ошибка · в Telegram":"ошибка"}):f.jsx(Oe,{variant:"secondary",children:"-"})}function Y0({strip:e,uptime:t}){return f.jsxs("div",{className:"flex items-center gap-2",title:"7 дней, по часам: зелёный - всё ок, красный - была ошибка, серый - нет данных",children:[f.jsx("div",{className:"flex h-3.5 items-stretch overflow-hidden rounded-sm","data-testid":"history-strip",children:e.split("").map((n,r)=>f.jsx("span",{className:"w-[2px] "+(n==="g"?"bg-emerald-600":n==="r"?"bg-red-600":"bg-zinc-800")},r))}),f.jsx("span",{className:"w-12 text-right text-xs text-muted-foreground",children:t==null?"-":t+"%"})]})}function ZM({path:e}){return!e||!FA[e]?null:f.jsx(Oe,{variant:"secondary",className:"ml-2 align-middle",children:FA[e]})}function $m(e){return new Date(e).toLocaleTimeString("ru-RU",{timeZone:"Europe/Moscow",hour12:!1})}function WM({row:e}){return e?f.jsxs("span",{className:"text-xs",children:[e.detail||"-",e.ms?f.jsxs("span",{className:"text-muted-foreground",children:[" · ",e.ms," мс"]}):null,e.at?f.jsxs("span",{className:"text-muted-foreground",children:[" · ",$m(e.at)]}):null,e.retried&&e.ok===!1?f.jsx("span",{className:"text-muted-foreground",children:" · повтор через 30 с"}):null,!e.alert&&e.ok===!1?f.jsx("span",{className:"text-muted-foreground",children:" · без алерта"}):null,f.jsx(ES,{row:e})]}):f.jsx("span",{className:"text-muted-foreground",children:"-"})}function VA(){try{return typeof window>"u"?null:window.localStorage}catch{return null}}function R8({rows:e}){return f.jsxs(Wn,{children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{className:"w-28",children:"Статус"}),f.jsx(Se,{children:"Проверка"}),f.jsx(Se,{children:"Результат"}),f.jsx(Se,{className:"w-[240px]",children:"7 дней"})]})}),f.jsx(er,{children:e.map(t=>f.jsxs(qe,{"data-check":t.id,children:[f.jsx(me,{children:f.jsx(AS,{ok:t.ok,alerted:t.alerted,warn:t.warn})}),f.jsxs(me,{className:"font-medium",children:[t.name,t.group==="containers"?null:f.jsx(ZM,{path:t.path}),f.jsx(K0,{ids:[t.id],red:t.ok===!1})]}),f.jsxs(me,{children:[f.jsx(WM,{row:t}),t.context?f.jsx("div",{className:"text-xs text-muted-foreground",children:t.context}):null]}),f.jsx(me,{children:f.jsx(Y0,{strip:t.history,uptime:t.uptime})})]},t.id))})]})}function Sx({row:e}){return e?f.jsxs("div",{className:"space-y-1",children:[f.jsx(AS,{ok:e.ok,alerted:e.alerted,warn:e.warn}),f.jsxs("div",{className:"max-w-[260px] text-xs text-muted-foreground",children:[e.detail,f.jsx(ES,{row:e}),e.ms?" · "+e.ms+" мс":"",e.at?" · "+$m(e.at):""]})]}):f.jsx("span",{className:"text-xs text-muted-foreground",children:"-"})}function M8({rows:e,withSearch:t}){return f.jsxs(Wn,{children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Трекер"}),t?f.jsx(Se,{children:"Поиск через Jackett"}):null,f.jsx(Se,{children:"Сайт напрямую"}),f.jsx(Se,{children:"Сайт через WARP"}),f.jsx(Se,{className:"w-[240px]",children:"7 дней"})]})}),f.jsx(er,{children:e.map(n=>{if(n.kind==="check"&&n.check){const l=n.check;return f.jsxs(qe,{"data-check":l.id,children:[f.jsxs(me,{className:"font-medium",children:[l.name,f.jsx(ZM,{path:l.path}),f.jsx(K0,{ids:[l.id],red:l.ok===!1})]}),f.jsxs(me,{colSpan:t?3:2,children:[f.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[f.jsx(AS,{ok:l.ok,alerted:l.alerted,warn:l.warn}),f.jsx(WM,{row:l})]}),l.context?f.jsx("div",{className:"text-xs text-muted-foreground",children:l.context}):null]}),f.jsx(me,{children:f.jsx(Y0,{strip:l.history,uptime:l.uptime})})]},n.key)}const r=n.search||n.warp||n.direct||n.site;return f.jsxs(qe,{"data-check":n.key,children:[f.jsxs(me,{className:"font-medium",children:[n.name,f.jsx(K0,{ids:n.checks.map(l=>l.id),red:n.checks.some(l=>l.ok===!1),recheckIds:n.checks.filter(l=>l.ok===!1).map(l=>l.id)}),n.target?f.jsx("div",{className:"text-xs text-muted-foreground",children:n.target}):null]}),t?f.jsx(me,{children:f.jsx(Sx,{row:n.search})}):null,f.jsx(me,{children:n.site?f.jsxs("span",{className:"text-xs text-muted-foreground",children:[n.site.detail,f.jsx(ES,{row:n.site})]}):f.jsx(Sx,{row:n.direct})}),f.jsx(me,{children:n.site?null:f.jsx(Sx,{row:n.warp})}),f.jsx(me,{children:r?f.jsx(Y0,{strip:r.history,uptime:r.uptime}):null})]},n.key)})})]})}function D8({view:e,onToggle:t}){const{id:n,title:r,items:l,failed:o}=e,u=n==="jackett"||n==="jacred",c=r+" "+e.okCount+"/"+e.total+(e.warned?", "+w8(e.warned):"")+(e.skipped?", не проверено: "+e.skipped:""),h=o?f.jsxs(Oe,{variant:"bad",children:["ошибок: ",o]}):e.warned?f.jsxs(Oe,{variant:"warn",children:["просит код: ",e.warned]}):e.skipped?f.jsxs(Oe,{variant:"warn",children:["не проверено: ",e.skipped]}):f.jsx(Oe,{variant:"ok",children:"всё ок"});if(e.folded)return f.jsx(ye,{"data-group":n,"data-folded":"1",children:f.jsxs("button",{type:"button",className:"flex w-full items-center justify-between gap-2 px-6 py-4 text-left",onClick:()=>t(n,!0),"aria-expanded":!1,children:[f.jsxs("span",{className:"font-semibold",children:[f.jsx("span",{className:"mr-2 text-muted-foreground",children:"▸"}),c]}),h]})});const m=l.some(g=>g.kind==="tracker"),v=l.map(g=>g.check);return f.jsxs(ye,{"data-group":n,children:[f.jsxs(Ne,{className:"flex flex-row flex-wrap items-center justify-between gap-2",children:[f.jsx("button",{type:"button",className:"text-left",onClick:()=>t(n,!1),"aria-expanded":!0,children:f.jsxs(Te,{children:[f.jsx("span",{className:"mr-2 text-muted-foreground",children:"▾"}),c]})}),h]}),f.jsxs(xe,{className:"space-y-3",children:[m?f.jsx(M8,{rows:l,withSearch:n==="jackett"}):l.length?f.jsx(R8,{rows:v}):null,u?f.jsx("p",{className:"text-xs text-muted-foreground",children:n==="jackett"?"Поиск через Jackett - тот путь, которым идут пользователи (Jackett сам ходит через WARP и FlareSolverr). Сайт напрямую и через WARP показывает, какой путь закрыт. Алерт: поиск не работает, или сайт не открывается ни напрямую, ни через WARP.":"JacRed берёт базу с sync.jacred.stream, сам на трекеры не ходит. Строки трекеров показывают, открывается ли сайт напрямую и через WARP; алерт - только если ни так, ни так."}):null]})]})}const P8="h-10 rounded-md border border-input bg-secondary px-3 text-sm text-foreground";function k8({prefs:e,setPrefs:t,shown:n}){return f.jsx(ye,{children:f.jsxs(xe,{className:"flex flex-wrap items-end gap-3 pt-6",children:[f.jsxs("div",{className:"space-y-1",children:[f.jsx(yt,{children:"Показать"}),f.jsx("div",{className:"flex gap-1",role:"group","aria-label":"Фильтр",children:Object.keys(V0).map(r=>f.jsx(he,{type:"button",size:"sm",className:"h-10",variant:e.filter===r?"default":"outline","aria-pressed":e.filter===r,title:r==="noalert"?"Красные строки, по которым алерт не уходит (например, сайт закрыт только напрямую)":void 0,onClick:()=>t({...e,filter:r}),children:V0[r]},r))})]}),f.jsxs("div",{className:"space-y-1",children:[f.jsx(yt,{htmlFor:"monitorSearch",children:"Поиск"}),f.jsx($e,{id:"monitorSearch",className:"w-56",placeholder:"название, адрес, ошибка",value:e.q,onChange:r=>t({...e,q:r.target.value})})]}),f.jsxs("div",{className:"space-y-1",children:[f.jsx(yt,{htmlFor:"monitorSort",children:"Сортировка"}),f.jsxs("div",{className:"flex gap-1",children:[f.jsx("select",{id:"monitorSort",className:P8,value:e.sort,onChange:r=>t({...e,sort:r.target.value}),children:Object.keys(G0).map(r=>f.jsx("option",{value:r,children:G0[r]},r))}),f.jsx(he,{type:"button",variant:"outline",className:"w-10 px-0",title:e.desc?"По убыванию":"По возрастанию","aria-label":e.desc?"По убыванию":"По возрастанию",onClick:()=>t({...e,desc:!e.desc}),children:e.desc?"↓":"↑"})]})]}),f.jsxs("div",{className:"text-xs text-muted-foreground",children:["Строк: ",n]})]})})}function I8({data:e,busy:t,interval:n,setInterval:r,onRun:l,onRecheck:o,onSave:u,prefs:c,setPrefs:h,onRowRecheck:m,pending:v}){const g=!!(e!=null&&e.running),x=(e==null?void 0:e.checks)||[],S=x.filter(D=>D.ok===!1).length,w=new Set(x.filter(_S).map(D=>D.id.replace(/:(direct|warp|site)$/,""))).size,j=A8((e==null?void 0:e.groups)||[],x,c),C=j.reduce((D,k)=>D+(k.folded?0:k.items.length),0),E=g&&(e==null?void 0:e.progress)||null,N=g?null:(e==null?void 0:e.lastSummary)||null,O=D=>{var k;return((k=x.find(I=>I.id===D))==null?void 0:k.name)||D},T={states:(E==null?void 0:E.states)||{},running:g,pending:v||[],recheck:m||(()=>{})},[R,A]=b.useState(null);return f.jsx(QM.Provider,{value:A,children:f.jsx(XM.Provider,{value:T,children:f.jsxs("div",{className:"space-y-4",children:[f.jsxs(ye,{children:[f.jsxs(Ne,{className:"flex flex-row flex-wrap items-start justify-between gap-3",children:[f.jsxs("div",{className:"space-y-1",children:[f.jsx(Te,{children:"Мониторинг"}),f.jsxs(ht,{children:[e!=null&&e.lastRun?"Последняя проверка: "+zi(e.lastRun.finishedAt)+(e.lastRun.trigger==="manual"?" (вручную)":e.lastRun.trigger==="recheck"?" (перепроверка)":"")+".":"Проверок ещё не было.",e!=null&&e.scheduled&&(e!=null&&e.nextRunAt)?" Следующая около "+zi(e.nextRunAt)+".":"",e&&!e.scheduled?" Расписание на этом экземпляре выключено, работает только ручная проверка.":""]}),f.jsx(ht,{children:"Перед алертом упавшая проверка повторяется через 30 с. Алерт приходит в Telegram один раз на проблему и ещё раз, когда починилось."})]}),f.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[x.length?S?f.jsxs(Oe,{variant:"bad",children:["ошибок: ",S]}):f.jsx(Oe,{variant:"ok",children:"всё ок"}):null,w?f.jsxs(Oe,{variant:"warn",title:"Сайты, которые отвечают капчей или проверкой на робота (без алерта)",children:["просит код: ",w]}):null,f.jsx(he,{type:"button",disabled:t||g,onClick:l,children:g?"Проверка идёт…":"Проверить сейчас"}),S?f.jsx(he,{type:"button",variant:"secondary",disabled:t||g,onClick:o,title:"Запустить заново только красные проверки, остальные сохраняют последний результат",children:"Перепроверить все ошибки"}):null]})]}),f.jsxs(xe,{className:"space-y-3",children:[E?f.jsxs("div",{className:"space-y-1","data-testid":"monitor-progress",children:[f.jsxs("div",{className:"text-sm",children:["Проверка идёт: ",E.done," из ",E.total,", начата ",$m(E.startedAt)," МСК",E.trigger==="recheck"?" (перепроверка)":"",Object.values(E.states).includes("retry")?", ждёт повтора: "+Object.values(E.states).filter(D=>D==="retry").length:""]}),f.jsx("div",{className:"h-2 w-full max-w-md overflow-hidden rounded bg-zinc-800",children:f.jsx("div",{className:"h-full bg-amber-500 transition-all",style:{width:Math.round(100*E.done/Math.max(1,E.total))+"%"}})})]}):null,N?f.jsxs("div",{className:"text-sm text-muted-foreground","data-testid":"monitor-summary",children:["Готово в ",$m(N.finishedAt)," МСК",N.ids?" ("+N.ids.map(O).join(", ")+")":N.trigger==="recheck"?" (перепроверка ошибок)":"",": проверено ",N.checked,", ошибок ",N.failed,N.retried?", повторено через 30 с: "+N.retried:"",", заняло ",Math.max(1,Math.round((N.finishedAt-N.startedAt)/1e3))," с."]}):null,f.jsxs("form",{className:"flex flex-wrap items-end gap-2",onSubmit:D=>{D.preventDefault(),u()},children:[f.jsxs("div",{className:"space-y-1",children:[f.jsx(yt,{htmlFor:"monitorInterval",children:"Интервал, минут (5-1440)"}),f.jsx($e,{id:"monitorInterval",className:"w-32",inputMode:"numeric",value:n,onChange:D=>r(D.target.value)})]}),f.jsx(he,{type:"submit",variant:"secondary",disabled:t,children:"Сохранить"})]})]})]}),e!=null&&e.error?f.jsx(Bt,{variant:"destructive",children:e.error==="read_only"?"Сервер в режиме только чтения: мониторинг не работает.":"Мониторинг недоступен на этом экземпляре."}):null,!e&&t?f.jsx(rn,{className:"h-40"}):null,x.length?f.jsx(k8,{prefs:c,setPrefs:h,shown:C}):null,x.length&&!j.length?f.jsx("p",{className:"text-sm text-muted-foreground",children:"Ничего не найдено."}):null,j.map(D=>f.jsx(D8,{view:D,onToggle:(k,I)=>h({...c,open:{...c.open,[k]:I}})},D.id)),R?f.jsx(Wf,{title:"Проверка "+R.name,text:N8(R),onClose:()=>A(null)}):null]})})})}function z8({csrf:e}){const[t,n]=b.useState(null),[r,l]=b.useState(!1),[o,u]=b.useState(""),[c,h]=b.useState(""),m=b.useRef(!1),[v,g]=b.useState([]),[x,S]=b.useState(()=>x8(VA())),w=O=>{S(O),b8(VA(),O)};async function j(){let O;try{O=await st("/admin/api/monitor")}catch{return h("Нет связи с сервером"),null}if(O.auth===!1)return h("Нужен вход"),null;if(!O.ok)return h(O.error==="read_only"?"Этот экземпляр только для чтения, мониторинг здесь не работает":"Мониторинг недоступен"),null;if(h(""),n(O),u(T=>T||String(O.intervalMin||"")),m.current&&!O.running){const T=O.lastSummary;rt(T?"Проверка завершена: проверено "+T.checked+", ошибок "+T.failed+(T.retried?", повторено через 30 с: "+T.retried:"")+", заняло "+Math.max(1,Math.round((T.finishedAt-T.startedAt)/1e3))+" с":"Проверка завершена")}return O.running||g([]),m.current=!!O.running,O}b.useEffect(()=>{l(!0),j().finally(()=>l(!1))},[]),b.useEffect(()=>{const O=window.setInterval(()=>void j(),t!=null&&t.running?3e3:6e4);return()=>window.clearInterval(O)},[t==null?void 0:t.running]);async function C(O=!1){l(!0);try{const T=await an("/admin/monitor/run",e,O?{only:"failed"}:{});if(T.auth===!1)return h("Нужен вход");if(!T.ok){rt(T.error||"Не запущено, обновите страницу");return}rt(O?"Перепроверяю красные проверки":"Проверка запущена, займёт до нескольких минут"),m.current=!0,await j()}catch{rt("Нет связи с сервером")}finally{l(!1)}}async function E(O){g(O);try{const T=await an("/admin/monitor/run",e,{ids:O});if(T.auth===!1)return h("Нужен вход");if(!T.ok){g([]),rt(T.error||"Не запущено, обновите страницу");return}m.current=!0,await j()}catch{g([]),rt("Нет связи с сервером")}}async function N(){l(!0);try{const O=await an("/admin/monitor/config",e,{intervalMin:o});if(O.auth===!1)return h("Нужен вход");O.ok?(rt("Интервал: "+O.intervalMin+" мин"),u(String(O.intervalMin)),await j()):rt(O.error||"Не сохранено")}catch{rt("Нет связи с сервером")}finally{l(!1)}}return f.jsxs(f.Fragment,{children:[c?f.jsx(Bt,{variant:"destructive",children:c}):null,f.jsx(I8,{data:t,busy:r,interval:o,setInterval:u,onRun:()=>void C(),onRecheck:()=>void C(!0),onSave:()=>void N(),prefs:x,setPrefs:w,onRowRecheck:O=>void E(O),pending:v})]})}function L8(){let e=0;return{next(){return e+=1,e},isCurrent(t){return t===e}}}function GA(e){if(e.auth===!1)return"Нужен вход";const t=e.ms||0;return e.reason==="probe_rate"?"лимит проверки - это лимит кнопки, не сбой DHT":e.reason==="sidecar_rate"?"sidecar занят (429) - это лимит sidecar, не лимит кнопки":e.ok||e.reason==="ok"?"ок, пиров "+(e.peers||0)+", "+t+" мс":e.reason==="not_ready"?"проверка: DHT еще не поднялся ("+t+" мс)":e.reason==="disabled"?"проверка: sidecar выключен ("+t+" мс)":e.reason==="down"?"проверка: sidecar не ответил ("+t+" мс)":e.error==="rate"||e.status===429?"лимит проверки - это лимит кнопки, не сбой DHT":e.status===503?"проверка: sidecar выключен ("+t+" мс)":"проверка не прошла ("+(e.status||0)+", "+t+" мс)"}const U8=2e4;function $8(e){return e==null||e<0?"":e>=1024*1024?Math.round(e/(1024*1024)*10)/10+" МБ":Math.max(1,Math.round(e/1024))+" КБ"}function B8(e){const t=e.sidecar;return!e.configured&&!(t&&t.configured)?f.jsx(Oe,{variant:"secondary",children:"не настроен"}):t&&t.ok?f.jsxs(Oe,{variant:"ok",children:["доступен · ",t.latencyMs||0," мс"]}):f.jsx(Oe,{variant:"bad",children:"не отвечает"})}function H8(e){return e==="up"?"сокет открыт":e==="idle"?"сокет закрыт":""}function F8(e){const t=e&&typeof e.perMinute=="number"?e.perMinute:30;return t<=0?"лимит выключен (0 в настройках)":t+" запросов в минуту на устройство"}function qA({rows:e,field:t,label:n,color:r}){const l=Math.max(1,...e.map(c=>c[t])),o=e[0]?zi(e[0].t):"",u=e.length?zi(e[e.length-1].t):"";return f.jsxs("div",{children:[f.jsx("div",{className:"mb-2 text-sm text-muted-foreground",children:n}),f.jsx("div",{className:"flex h-36 items-end gap-px overflow-x-auto",children:e.map(c=>f.jsx("div",{title:zi(c.t)+": "+c[t],className:"flex h-full min-w-[4px] flex-1 flex-col justify-end",children:f.jsx("div",{className:"w-full rounded-sm",style:{height:Math.max(2,Math.round(c[t]/l*128))+"px",background:r}})},t+":"+c.t))}),f.jsxs("div",{className:"mt-1 flex justify-between text-xs text-muted-foreground",children:[f.jsx("span",{children:o}),f.jsx("span",{children:u})]})]})}function V8({csrf:e}){const[t,n]=b.useState(null),[r,l]=b.useState(""),[o,u]=b.useState(null),[c,h]=b.useState(!1),m=b.useRef(L8()),v=b.useCallback(()=>{const O=m.current.next();return st("/admin/api/dht").then(T=>{if(m.current.isCurrent(O)){if(T.auth===!1){l("Нужен вход");return}l(""),n(T)}}).catch(T=>{m.current.isCurrent(O)&&l(T instanceof Error?T.message:"Не удалось загрузить DHT")})},[]);b.useEffect(()=>{v();const O=window.setInterval(()=>void v(),U8);return()=>{m.current.next(),window.clearInterval(O)}},[v]);async function g(){h(!0);try{const O=await st("/admin/api/dht/probe",{method:"POST",headers:{"content-type":"application/json",Accept:"application/json"},body:JSON.stringify({csrf:e})});u(GA(O)+` + +`+JSON.stringify(O,null,2)),await v()}catch(O){const T={ok:!1,error:O instanceof Error?O.message:"проверка"};u(GA(T)+` + +`+JSON.stringify(T,null,2))}finally{h(!1)}}const x=t&&t.stats||{},S=x.requests24h||0,w=x.withPeers24h||0,j=x.errors||[],C=x.series||[],E=t&&t.sidecar?$8(t.sidecar.rss):"",N=t&&t.sidecar&&t.sidecar.ok?H8(t.sidecar.dht):"";return f.jsxs("div",{className:"space-y-4",children:[f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[f.jsx(Te,{children:"DHT"}),f.jsxs("div",{className:"flex gap-2",children:[f.jsx(he,{type:"button",size:"sm",variant:"secondary",onClick:()=>void v(),children:"Обновить"}),f.jsx(he,{type:"button",size:"sm",disabled:!e||c,onClick:()=>void g(),children:c?"Проверка...":"Проверить DHT"})]})]})}),f.jsxs(xe,{className:"space-y-3 text-sm",children:[r?f.jsx("p",{className:"text-destructive",children:r}):null,!t&&!r?f.jsx("p",{className:"text-muted-foreground",children:"Загрузка..."}):null,t?f.jsxs(f.Fragment,{children:[f.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[f.jsx("span",{children:"omp-dht-peers"}),B8(t),N?f.jsx("span",{className:"text-muted-foreground",children:N}):null,E?f.jsxs("span",{className:"text-muted-foreground",children:["память ",E]}):null]}),f.jsxs("p",{className:"text-muted-foreground",children:["Лимит: ",F8(t.limit),". Меняется в «Настройках». Обновление само, раз в 20 с."]}),o!=null?f.jsx(Wf,{title:"Проверка DHT",text:o,onClose:()=>u(null)}):null,f.jsxs("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-4",children:[f.jsxs("div",{children:[f.jsx("div",{className:"text-muted-foreground",children:"Запросов за 24 ч"}),f.jsx("div",{className:"text-lg font-semibold",children:S})]}),f.jsxs("div",{children:[f.jsx("div",{className:"text-muted-foreground",children:"С пирами"}),f.jsx("div",{className:"text-lg font-semibold",children:S?x.peersSharePct+"% ("+w+" из "+S+")":"нет запросов"}),f.jsxs("div",{className:"text-muted-foreground",children:["Ошибок за 24 ч: ",x.errors24h||0," (4xx ",x.errors4xx24h||0,", 5xx ",x.errors5xx24h||0,")"]})]}),f.jsxs("div",{children:[f.jsx("div",{className:"text-muted-foreground",children:"Среднее время"}),f.jsx("div",{className:"text-lg font-semibold",children:S?(x.avgMs||0)+" мс":"-"})]}),f.jsxs("div",{children:[f.jsx("div",{className:"text-muted-foreground",children:"p50 / p95 за 24 ч"}),f.jsx("div",{className:"text-lg font-semibold",children:S?(x.p50Ms||0)+" / "+(x.p95Ms||0)+" мс":"-"})]})]}),f.jsx(qA,{rows:C,field:"requests",label:"Запросы за 24 ч, слот 10 мин",color:"#f5b700"}),f.jsx(qA,{rows:C,field:"errors",label:"Ошибки за 24 ч, слот 10 мин",color:"#e11d48"}),f.jsx("p",{className:"text-muted-foreground",children:"429 и причина «лимит» - это лимит биллинга на запросы с устройства, а не сбой сети DHT. Панель не показывает названия торрентов и infohash. Счетчики за 24 часа лежат в Postgres и остаются после перезапуска. Токен, id устройства и infohash по-прежнему не пишутся. «Проверить DHT» зовет sidecar с постоянным тестовым хешем из нулей (это не торрент пользователя) и тоже попадает в счетчики. В таблице ошибок у такой проверки причина «проверка», без самого хеша."})]}):null]})]}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Последние ошибки"})}),j.length===0?f.jsx(xe,{className:"text-sm text-muted-foreground",children:"Ошибок нет"}):f.jsxs(Wn,{children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Время"}),f.jsx(Se,{children:"Код"}),f.jsx(Se,{children:"Причина"})]})}),f.jsx(er,{children:j.map((O,T)=>f.jsxs(qe,{children:[f.jsx(me,{children:zi(O.at)}),f.jsx(me,{children:O.status}),f.jsx(me,{children:O.reason})]},O.at+":"+T))})]})]})]})}const $r="space-y-1";function wx(e){if(!e)return"0";const t=e/(1024*1024*1024);return(Math.round(t*10)/10).toString()}function G8(e){return e?Math.round(e/(1024*1024))+" МБ":"0 МБ"}function q8(e){return e.status==="disabled"?f.jsx(Oe,{variant:"secondary",children:"выключен"}):e.status==="online"?f.jsx(Oe,{variant:"ok",children:"онлайн"}):f.jsx(Oe,{variant:"bad",children:"нет ответа"})}async function K8(e,t,n){return st(e,{method:"POST",headers:{"content-type":"application/json",Accept:"application/json"},body:JSON.stringify({csrf:t,...n})})}function Y8({csrf:e}){const[t,n]=b.useState(null),[r,l]=b.useState(""),[o,u]=b.useState(""),[c,h]=b.useState(""),[m,v]=b.useState(""),[g,x]=b.useState(""),[S,w]=b.useState("500"),[j,C]=b.useState("0"),[E,N]=b.useState("0"),[O,T]=b.useState("512"),[R,A]=b.useState("0"),[D,k]=b.useState(""),[I,P]=b.useState(""),[B,F]=b.useState(""),[se,ue]=b.useState("");async function de(){const U=await st("/admin/api/cache");U.auth!==!1&&(n(U),U.prefixMb!==void 0&&T(String(U.prefixMb)),U.prefixPercent!==void 0&&A(String(U.prefixPercent)))}b.useEffect(()=>{de()},[]);async function G(U,Ae){u("");const ee=await K8(U,(t==null?void 0:t.csrf)||e,Ae);ee.auth!==!1&&(ee.token&&l(ee.token),ee.error&&u(ee.error),await de())}const ne=(t==null?void 0:t.enabled)===!0,ie=(t==null?void 0:t.nodes)||[],ce=(t==null?void 0:t.assignments)||[];return f.jsxs("div",{className:"space-y-4",children:[f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Кэш популярных раздач"}),f.jsx(ht,{children:"Узлы держат начало популярных раздач, чтобы воспроизведение начиналось сразу. Пока переключатель выключен, приложение и расчет ничего не меняют."})]}),f.jsxs(xe,{className:"space-y-3",children:[f.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[ne?f.jsx(Oe,{variant:"ok",children:"включено"}):f.jsx(Oe,{variant:"secondary",children:"выключено"}),f.jsx(he,{variant:ne?"secondary":"default",onClick:()=>void G("/admin/cache/settings",{enabled:!ne,prefixMb:O,prefixPercent:R}),children:ne?"Выключить":"Включить"}),f.jsx(he,{variant:"secondary",onClick:()=>void G("/admin/cache/recalc",{}),children:"Пересчитать"})]}),f.jsxs("div",{className:"grid gap-3 sm:grid-cols-2",children:[f.jsxs("div",{className:$r,children:[f.jsx(yt,{children:"Префикс, МБ (0 - брать проценты)"}),f.jsx($e,{value:O,onChange:U=>T(U.target.value)})]}),f.jsxs("div",{className:$r,children:[f.jsx(yt,{children:"Префикс, %"}),f.jsx($e,{value:R,onChange:U=>A(U.target.value)})]})]}),f.jsx(he,{variant:"secondary",onClick:()=>void G("/admin/cache/settings",{enabled:ne,prefixMb:O,prefixPercent:R}),children:"Сохранить префикс"})]})]}),r?f.jsxs(Bt,{children:["Токен узла показывается один раз. Скопируйте его в конфиг сервера и закройте эту строку.",f.jsx("div",{className:"mt-2 break-all font-mono text-sm",children:r}),f.jsx(he,{className:"mt-2",variant:"secondary",onClick:()=>l(""),children:"Скрыть"})]}):null,o?f.jsx(Bt,{children:o}):null,f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Новый узел"})}),f.jsxs(xe,{className:"grid gap-3 sm:grid-cols-2",children:[f.jsxs("div",{className:$r,children:[f.jsx(yt,{children:"Имя"}),f.jsx($e,{value:c,onChange:U=>h(U.target.value)})]}),f.jsxs("div",{className:$r,children:[f.jsx(yt,{children:"Адрес TorrServer"}),f.jsx($e,{value:m,placeholder:"http://cache.example:8090",onChange:U=>v(U.target.value)})]}),f.jsxs("div",{className:$r,children:[f.jsx(yt,{children:"Регион"}),f.jsx($e,{value:g,onChange:U=>x(U.target.value)})]}),f.jsxs("div",{className:$r,children:[f.jsx(yt,{children:"Емкость, ГБ"}),f.jsx($e,{value:S,onChange:U=>w(U.target.value)})]}),f.jsxs("div",{className:$r,children:[f.jsx(yt,{children:"Свой префикс, МБ (0 - общий)"}),f.jsx($e,{value:j,onChange:U=>C(U.target.value)})]}),f.jsxs("div",{className:$r,children:[f.jsx(yt,{children:"Свой префикс, %"}),f.jsx($e,{value:E,onChange:U=>N(U.target.value)})]}),f.jsx(he,{onClick:()=>void G("/admin/cache/node",{name:c,url:m,region:g,capacityGb:S,prefixMb:j,prefixPercent:E}),children:"Добавить и выдать токен"})]})]}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Узлы"})}),f.jsx(xe,{className:"overflow-x-auto",children:f.jsxs(Wn,{children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Имя"}),f.jsx(Se,{children:"Статус"}),f.jsx(Se,{children:"Диск"}),f.jsx(Se,{children:"Heartbeat"}),f.jsx(Se,{children:"Токен"}),f.jsx(Se,{})]})}),f.jsx(er,{children:ie.length===0?f.jsx(qe,{children:f.jsx(me,{colSpan:6,children:"Узлов нет"})}):ie.map(U=>f.jsxs(qe,{children:[f.jsxs(me,{children:[f.jsx("div",{className:"font-medium",children:U.name}),f.jsx("div",{className:"text-xs text-muted-foreground",children:U.url}),f.jsxs("div",{className:"text-xs text-muted-foreground",children:[U.region||"регион не задан"," - ",wx(U.capacityBytes)," ГБ"]})]}),f.jsxs(me,{children:[q8(U),f.jsx("div",{className:"mt-1 text-xs text-muted-foreground",children:U.torrserverOk?"TorrServer отвечает":"TorrServer молчит"})]}),f.jsxs(me,{children:[wx(U.diskUsedBytes)," / ",wx(U.diskTotalBytes)," ГБ"]}),f.jsx(me,{children:U.lastHeartbeat?zi(U.lastHeartbeat):"не было"}),f.jsx(me,{children:U.hasToken?"есть":"отозван"}),f.jsxs(me,{className:"space-x-2 space-y-2",children:[f.jsx(he,{variant:"secondary",onClick:()=>void G("/admin/cache/token",{id:U.id}),children:"Новый токен"}),f.jsx(he,{variant:"secondary",onClick:()=>void G("/admin/cache/token/revoke",{id:U.id}),children:"Отозвать"}),f.jsx(he,{variant:"secondary",onClick:()=>void G("/admin/cache/node/disable",{id:U.id,disabled:!U.disabled}),children:U.disabled?"Включить узел":"Выключить узел"})]})]},U.id))})]})})]}),f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Закрепить раздачу"}),f.jsx(ht,{children:"Пустой магнит означает раздачу по DHT. Ссылку с ключом трекера панель не сохранит."})]}),f.jsxs(xe,{className:"grid gap-3 sm:grid-cols-2",children:[f.jsxs("div",{className:$r,children:[f.jsx(yt,{children:"infohash"}),f.jsx($e,{value:D,onChange:U=>k(U.target.value)})]}),f.jsxs("div",{className:$r,children:[f.jsx(yt,{children:"Название"}),f.jsx($e,{value:I,onChange:U=>P(U.target.value)})]}),f.jsxs("div",{className:$r,children:[f.jsx(yt,{children:"Узел"}),f.jsxs("select",{className:"h-10 rounded-md border border-input bg-secondary px-3 text-sm",value:B,onChange:U=>F(U.target.value),children:[f.jsx("option",{value:"",children:"выберите"}),ie.map(U=>f.jsx("option",{value:U.id,children:U.name},U.id))]})]}),f.jsxs("div",{className:$r,children:[f.jsx(yt,{children:"Магнит"}),f.jsx($e,{value:se,onChange:U=>ue(U.target.value)})]}),f.jsx(he,{onClick:()=>void G("/admin/cache/pin",{infohash:D,title:I,nodeId:B,magnet:se}),children:"Закрепить"})]})]}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Назначения"})}),f.jsx(xe,{className:"overflow-x-auto",children:f.jsxs(Wn,{children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Раздача"}),f.jsx(Se,{children:"Узел"}),f.jsx(Se,{children:"Статус"}),f.jsx(Se,{children:"Префикс"}),f.jsx(Se,{})]})}),f.jsx(er,{children:ce.length===0?f.jsx(qe,{children:f.jsx(me,{colSpan:5,children:"Назначений нет"})}):ce.map(U=>f.jsxs(qe,{children:[f.jsxs(me,{children:[f.jsx("div",{children:U.title||U.infohash}),f.jsx("div",{className:"font-mono text-xs text-muted-foreground",children:U.infohash})]}),f.jsx(me,{children:U.nodeName}),f.jsxs(me,{children:[U.status,U.pinned?" - закреплено":"",U.source==="manual"?" - вручную":"",U.error?" - "+U.error:""]}),f.jsx(me,{children:G8(U.prefixBytes)}),f.jsx(me,{children:f.jsx(he,{variant:"secondary",onClick:()=>void G("/admin/cache/unpin",{id:U.id}),children:"Снять"})})]},U.id))})]})})]})]})}function X8(e){return e==="community"?"зрители":e==="blend"?"смесь":e==="pinned"?"закреп":e==="banned"?"запрет":"сиды"}function Q8({csrf:e}){const[t,n]=b.useState(""),[r,l]=b.useState(null),[o,u]=b.useState(!1),c=b.useCallback(async w=>{const j=await st("/admin/api/watch-rank?q="+encodeURIComponent(w));l(j)},[]);b.useEffect(()=>{c("")},[c]);async function h(w){u(!0),await an("/admin/watch-rank",e,{enabled:w}),await c(t),u(!1)}async function m(w,j){u(!0),await an("/admin/watch-rank",e,{infohash:w.infohash,pinned:j.pinned!==void 0?j.pinned:w.pinned,banned:j.banned!==void 0?j.banned:w.banned,note:w.note}),await c(t),u(!1)}const v=r&&r.rows?r.rows:[],g=r&&r.voices?r.voices:[],x=r&&r.codecs?r.codecs:[],S=!!(r&&r.enabled);return f.jsxs("div",{className:"space-y-4",children:[f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Подбор раздач"})}),f.jsxs(xe,{className:"space-y-3",children:[f.jsxs("div",{className:"flex flex-wrap items-center gap-3",children:[f.jsx(Oe,{variant:S?"ok":"secondary",children:S?"ранжирование включено":"ранжирование выключено"}),f.jsx(he,{type:"button",disabled:o,onClick:()=>void h(!S),children:S?"Выключить":"Включить"})]}),f.jsx("p",{className:"text-sm text-muted-foreground",children:"Пока нет оценок просмотра, поиск не меняет порядок. Закрепление и запрет действуют сразу. В общие таблицы попадают только хеши и счетчики."}),f.jsxs("form",{className:"flex gap-2",onSubmit:w=>{w.preventDefault(),c(t)},children:[f.jsx($e,{value:t,onChange:w=>n(w.target.value),placeholder:"Название или infohash"}),f.jsx(he,{type:"submit",children:"Найти"})]})]})]}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Раздачи"})}),f.jsx(xe,{children:f.jsxs(Wn,{children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Раздача"}),f.jsx(Se,{children:"Класс"}),f.jsx(Se,{children:"Оценка"}),f.jsx(Se,{children:"Сигналы"}),f.jsx(Se,{})]})}),f.jsxs(er,{children:[v.map(w=>f.jsxs(qe,{children:[f.jsxs(me,{children:[f.jsx("div",{children:w.title||w.titleKey||w.infohash}),f.jsxs("div",{className:"text-xs text-muted-foreground",children:[w.infohash.slice(0,12)," · s",w.season,"e",w.episode," · ",X8(w.reason)]})]}),f.jsx(me,{children:w.deviceClass==="tv"?"ТВ":"Телефон"}),f.jsx(me,{children:Math.round(w.score)}),f.jsxs(me,{children:[w.samples," просм., ",w.completed," до конца, ",w.switched," уходов, кадр ",w.ttffMs&&w.samples?Math.round(w.ttffMs/w.samples):0," мс, ребуфер ",w.rebufferN,", кодек ",w.codecOk,"/",w.codecOk+w.codecFail]}),f.jsxs(me,{className:"space-x-2",children:[f.jsx(he,{type:"button",disabled:o,onClick:()=>void m(w,{pinned:!w.pinned,banned:!1}),children:w.pinned?"Открепить":"Закрепить"}),f.jsx(he,{type:"button",disabled:o,onClick:()=>void m(w,{banned:!w.banned,pinned:!1}),children:w.banned?"Разрешить":"Запретить"})]})]},w.infohash+":"+w.fileIndex+":"+w.deviceClass)),v.length?null:f.jsx(qe,{children:f.jsx(me,{colSpan:5,children:"Пока нет сигналов"})})]})]})})]}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Озвучки и кодеки"})}),f.jsxs(xe,{className:"space-y-2 text-sm",children:[g.slice(0,12).map(w=>f.jsxs("div",{children:[w.titleKey,": ",w.voice," (",w.picks,")"]},w.titleKey+":"+w.voice)),x.map(w=>f.jsxs("div",{children:[w.deviceClass," ",w.codec,": ",w.reports]},w.deviceClass+":"+w.codec)),!g.length&&!x.length?f.jsx("div",{children:"Пока пусто"}):null]})]})]})}function jx(e){return e?Fo(e)+" МСК":""}function Z8(e){if(!e)return"Опрос бота: нет данных";if(!e.enabled)return"Опрос бота выключен (BILLING_BOT_POLL=0).";const t=e.lastOkAt?jx(e.lastOkAt):"ещё не было";let n="Конфликт 409 не фиксировался.";if(e.conflictRecent){const r=jx(e.conflictAt);n="Конфликт 409 был недавно"+(r?" ("+r+")":"")+"."}else e.conflictAt&&(n="Последний конфликт 409: "+jx(e.conflictAt)+".");return"Опрос бота: последний успешный getUpdates "+t+". "+n}/** * @license lucide-react v0.487.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const $8=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),B8=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,n,r)=>r?r.toUpperCase():n.toLowerCase()),FE=e=>{const t=B8(e);return t.charAt(0).toUpperCase()+t.slice(1)},YM=(...e)=>e.filter((t,n,r)=>!!t&&t.trim()!==""&&r.indexOf(t)===n).join(" ").trim();/** + */const W8=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),J8=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,n,r)=>r?r.toUpperCase():n.toLowerCase()),KA=e=>{const t=J8(e);return t.charAt(0).toUpperCase()+t.slice(1)},JM=(...e)=>e.filter((t,n,r)=>!!t&&t.trim()!==""&&r.indexOf(t)===n).join(" ").trim();/** * @license lucide-react v0.487.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */var H8={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"};/** + */var eH={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"};/** * @license lucide-react v0.487.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const F8=b.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:l="",children:o,iconNode:u,...c},h)=>b.createElement("svg",{ref:h,...H8,width:t,height:t,stroke:e,strokeWidth:r?Number(n)*24/Number(t):n,className:YM("lucide",l),...c},[...u.map(([m,v])=>b.createElement(m,v)),...Array.isArray(o)?o:[o]]));/** + */const tH=b.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:l="",children:o,iconNode:u,...c},h)=>b.createElement("svg",{ref:h,...eH,width:t,height:t,stroke:e,strokeWidth:r?Number(n)*24/Number(t):n,className:JM("lucide",l),...c},[...u.map(([m,v])=>b.createElement(m,v)),...Array.isArray(o)?o:[o]]));/** * @license lucide-react v0.487.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const qu=(e,t)=>{const n=b.forwardRef(({className:r,...l},o)=>b.createElement(F8,{ref:o,iconNode:t,className:YM(`lucide-${$8(FE(e))}`,`lucide-${e}`,r),...l}));return n.displayName=FE(e),n};/** + */const qu=(e,t)=>{const n=b.forwardRef(({className:r,...l},o)=>b.createElement(tH,{ref:o,iconNode:t,className:JM(`lucide-${W8(KA(e))}`,`lucide-${e}`,r),...l}));return n.displayName=KA(e),n};/** * @license lucide-react v0.487.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const V8=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m4.9 4.9 14.2 14.2",key:"1m5liu"}]],G8=qu("ban",V8);/** + */const nH=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m4.9 4.9 14.2 14.2",key:"1m5liu"}]],rH=qu("ban",nH);/** * @license lucide-react v0.487.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const q8=[["rect",{width:"20",height:"14",x:"2",y:"5",rx:"2",key:"ynyp8z"}],["line",{x1:"2",x2:"22",y1:"10",y2:"10",key:"1b3vmo"}]],K8=qu("credit-card",q8);/** + */const iH=[["rect",{width:"20",height:"14",x:"2",y:"5",rx:"2",key:"ynyp8z"}],["line",{x1:"2",x2:"22",y1:"10",y2:"10",key:"1b3vmo"}]],aH=qu("credit-card",iH);/** * @license lucide-react v0.487.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const Y8=[["path",{d:"m17 2 4 4-4 4",key:"nntrym"}],["path",{d:"M3 11v-1a4 4 0 0 1 4-4h14",key:"84bu3i"}],["path",{d:"m7 22-4-4 4-4",key:"1wqhfi"}],["path",{d:"M21 13v1a4 4 0 0 1-4 4H3",key:"1rx37r"}]],X8=qu("repeat",Y8);/** + */const lH=[["path",{d:"m17 2 4 4-4 4",key:"nntrym"}],["path",{d:"M3 11v-1a4 4 0 0 1 4-4h14",key:"84bu3i"}],["path",{d:"m7 22-4-4 4-4",key:"1wqhfi"}],["path",{d:"M21 13v1a4 4 0 0 1-4 4H3",key:"1rx37r"}]],oH=qu("repeat",lH);/** * @license lucide-react v0.487.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const Q8=[["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"}]],XM=qu("shield",Q8);/** + */const sH=[["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"}]],eD=qu("shield",sH);/** * @license lucide-react v0.487.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const Z8=[["rect",{width:"14",height:"20",x:"5",y:"2",rx:"2",ry:"2",key:"1yt0o3"}],["path",{d:"M12 18h.01",key:"mhygvu"}]],W8=qu("smartphone",Z8);/** + */const uH=[["rect",{width:"14",height:"20",x:"5",y:"2",rx:"2",ry:"2",key:"1yt0o3"}],["path",{d:"M12 18h.01",key:"mhygvu"}]],cH=qu("smartphone",uH);/** * @license lucide-react v0.487.0 - ISC * * This source code is licensed under the ISC license. * See the LICENSE file in the root directory of this source tree. - */const J8=[["path",{d:"M2 9a3 3 0 0 1 0 6v2a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-2a3 3 0 0 1 0-6V7a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2Z",key:"qn84l0"}],["path",{d:"M13 5v2",key:"dyzc3o"}],["path",{d:"M13 17v2",key:"1ont0d"}],["path",{d:"M13 11v2",key:"1wjjxi"}]],eH=qu("ticket",J8),tH="h-10 w-full rounded-md border border-input bg-secondary px-3 text-sm text-foreground sm:w-auto",nH={pay:K8,promo:eH,activate:W8,fail:G8,admin:XM,device:X8};function rH({kind:e}){const t=nH[e]||XM,n=e==="fail"?"bad":e==="pay"?"ok":"count";return f.jsxs(Oe,{variant:n,className:"gap-1",children:[f.jsx(t,{className:"h-3.5 w-3.5","aria-hidden":!0}),_6(e)]})}function iH({events:e}){const[t,n]=b.useState(""),[r,l]=b.useState(1),o=15,u=e.filter(v=>!t||v.kind===t),c=Math.max(1,Math.ceil(u.length/o)),h=u.slice((r-1)*o,r*o),m=p6(h);return f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Лента событий"}),f.jsxs(ht,{className:"space-y-2",children:[f.jsx("p",{children:"Время - МСК. Нажмите на часы, чтобы увидеть секунды."}),f.jsxs("select",{className:tH,value:t,"aria-label":"Тип события",onChange:v=>{l(1),n(v.target.value)},children:[f.jsx("option",{value:"",children:"Все события"}),f.jsx("option",{value:"pay",children:"Оплата"}),f.jsx("option",{value:"promo",children:"Промо"}),f.jsx("option",{value:"activate",children:"Активация"}),f.jsx("option",{value:"fail",children:"Отказ"}),f.jsx("option",{value:"admin",children:"Админ"}),f.jsx("option",{value:"device",children:"Смена устройства"})]})]})]}),f.jsxs(xe,{children:[h.length===0?f.jsx("p",{className:"text-muted-foreground",children:"Пока пусто"}):null,f.jsx("div",{className:"space-y-4",children:m.map(v=>f.jsxs("section",{children:[f.jsx("h3",{className:"sticky top-0 z-10 bg-card py-1 text-sm font-semibold",children:v.title}),f.jsx("ol",{className:"ml-2 border-l border-border",children:v.items.map((p,x)=>f.jsxs("li",{className:"relative pb-4 pl-4",children:[f.jsx("span",{className:"absolute -left-[7px] top-1.5 h-3 w-3 rounded-full border-2 border-primary bg-card","aria-hidden":!0}),f.jsxs("div",{className:"flex flex-wrap items-center gap-x-2 gap-y-1",children:[f.jsx(dt,{ms:p.at,variant:"time"}),f.jsx(rH,{kind:p.kind}),f.jsx("span",{className:"text-sm font-medium",children:xS(p.actor,{deviceId:p.deviceId,fallback:"система"})})]}),f.jsx("p",{className:"mt-1 text-sm",children:p.text}),p.accountId?f.jsx("a",{className:"text-sm text-primary",href:"/admin/?id="+encodeURIComponent(p.accountId),children:"карточка"}):null]},v.key+"-"+x))})]},v.key))}),f.jsx(kv,{page:r,pages:c,total:u.length,onPage:l})]})]})}const Nf="h-10 rounded-md border border-input bg-secondary px-3 text-sm text-foreground";function aH({run:e}){const[t,n]=b.useState(""),[r,l]=b.useState(""),[o,u]=b.useState("telegram"),[c,h]=b.useState("30"),[m,v]=b.useState("1");return f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Выдать код"}),f.jsx(ht,{children:"Дней - срок новой подписки. Если подписка уже есть, код добавляется к ней, дата окончания не меняется."})]}),f.jsxs(xe,{className:"space-y-3",children:[f.jsxs("div",{className:"grid gap-2 md:grid-cols-5",children:[f.jsx($e,{placeholder:"Telegram id",value:t,onChange:p=>n(p.target.value)}),f.jsx($e,{placeholder:"Почта",value:r,onChange:p=>l(p.target.value)}),f.jsxs("select",{className:Nf,value:o,onChange:p=>u(p.target.value),"aria-label":"Куда отправить",children:[f.jsx("option",{value:"telegram",children:"Telegram"}),f.jsx("option",{value:"email",children:"Почта"}),f.jsx("option",{value:"none",children:"Только показать"})]}),f.jsxs("select",{className:Nf,value:c,onChange:p=>h(p.target.value),"aria-label":"Дней",children:[f.jsx("option",{value:"1",children:"1 день"}),f.jsx("option",{value:"7",children:"7 дней"}),f.jsx("option",{value:"30",children:"30 дней"}),f.jsx("option",{value:"90",children:"90 дней"}),f.jsx("option",{value:"365",children:"365 дней"})]}),f.jsx(he,{onClick:()=>void e("/admin/issue",{telegramId:t,email:r,channel:o,days:c}),children:"Выдать"})]}),f.jsxs("div",{className:"flex flex-wrap items-end gap-2",children:[f.jsxs("label",{className:"space-y-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Сколько кодов"}),f.jsx($e,{type:"number",min:1,max:100,value:m,onChange:p=>v(p.target.value)})]}),f.jsx(he,{variant:"secondary",onClick:()=>{const p=Number(m)||1;window.confirm("Создать "+p+" новых кодов на "+c+" дн.?")&&e("/admin/issue-bulk",{count:p,days:c}).then(x=>{var w;const S=((w=x==null?void 0:x.extra)==null?void 0:w.codes)||[];S.length&&(IM("omp-codes.csv",[["код","аккаунт","до"]].concat(S.map(j=>[j.code,j.accountId||"",j.paidUntil?new Date(j.paidUntil).toISOString().slice(0,10):""]))),ft("CSV со кодами скачан"))})},children:"Создать пакетом"})]})]})]})}function lH({run:e,promos:t}){const[n,r]=b.useState(""),[l,o]=b.useState("1"),[u,c]=b.useState("1"),[h,m]=b.useState("1"),[v,p]=b.useState("0"),[x,S]=b.useState(""),[w,j]=b.useState(""),[C,A]=b.useState("0");return f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Промокоды"})}),f.jsxs(xe,{className:"space-y-4",children:[f.jsxs("div",{className:"grid gap-2 md:grid-cols-7",children:[f.jsxs("label",{className:"space-y-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Код"}),f.jsx($e,{placeholder:"пусто = сгенерировать",value:n,onChange:N=>r(N.target.value)})]}),f.jsxs("label",{className:"space-y-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Дней"}),f.jsx($e,{type:"number",value:l,onChange:N=>o(N.target.value)})]}),f.jsxs("label",{className:"space-y-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Бонусных устройств"}),f.jsx($e,{type:"number",min:0,max:20,value:v,onChange:N=>p(N.target.value)})]}),f.jsxs("label",{className:"space-y-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Бонус на дней"}),f.jsx($e,{type:"number",min:0,placeholder:"пусто = навсегда",value:x,onChange:N=>S(N.target.value)})]}),f.jsxs("label",{className:"space-y-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Активаций"}),f.jsx($e,{type:"number",value:u,onChange:N=>c(N.target.value)})]}),f.jsxs("label",{className:"space-y-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Истекает, дней"}),f.jsx($e,{type:"number",min:0,placeholder:"пусто = без срока",value:w,onChange:N=>j(N.target.value)})]}),f.jsxs("label",{className:"space-y-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Скидка, %"}),f.jsx($e,{type:"number",min:0,max:100,value:C,onChange:N=>A(N.target.value)})]}),f.jsxs("label",{className:"space-y-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Количество"}),f.jsx($e,{type:"number",min:1,max:100,value:h,onChange:N=>m(N.target.value)})]}),f.jsx("div",{className:"flex items-end",children:f.jsx(he,{onClick:()=>{const N=Number(h)||1;e("/admin/promo",{code:n,days:l,maxUses:u,count:N,bonusSlots:v,bonusDays:x,expiresDays:w,discountPercent:C}).then(O=>{var R;const T=((R=O==null?void 0:O.extra)==null?void 0:R.promos)||[];T.length>1&&IM("omp-promos-new.csv",[["код","дней","активаций","бонусных устройств","бонус на дней"]].concat(T.map(E=>[E.code,String(E.days),String(E.maxUses),String(E.bonusSlots||0),E.bonusSlots?String(E.bonusDays||0):""])))})},children:"Создать"})})]}),f.jsx("div",{className:"flex flex-wrap gap-3 text-sm",children:f.jsx("a",{className:"text-primary",href:"/admin/promos.csv",children:"Скачать все промокоды (CSV)"})}),f.jsxs(Wn,{className:"min-w-[36rem]",children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Код"}),f.jsx(Se,{children:"Дни"}),f.jsx(Se,{children:"Бонус"}),f.jsx(Se,{children:"Создан"}),f.jsx(Se,{children:"Использования"}),f.jsx(Se,{})]})}),f.jsxs(er,{children:[t.length===0?f.jsx(qe,{children:f.jsx(me,{colSpan:6,className:"text-muted-foreground",children:"Нет промокодов"})}):null,t.map(N=>{const O=N.uses>=N.maxUses;return f.jsxs(qe,{children:[f.jsxs(me,{children:[f.jsx("span",{className:N.revoked?"text-muted-foreground":"font-mono",children:N.code})," ",f.jsx(ko,{value:N.code})]}),f.jsx(me,{children:N.days}),f.jsx(me,{children:N.bonusSlots?"+"+N.bonusSlots+" устр. "+(N.bonusDays?"на "+N.bonusDays+" дн.":"навсегда"):f.jsx("span",{className:"text-muted-foreground",children:"-"})}),f.jsx(me,{className:"whitespace-nowrap",children:f.jsx(dt,{ms:N.createdAt})}),f.jsxs(me,{children:[N.uses,"/",N.maxUses]}),f.jsx(me,{children:N.revoked?f.jsx("span",{className:"text-muted-foreground",children:"отозван"}):O?f.jsx("span",{className:"text-muted-foreground",children:"использован"}):f.jsx(he,{size:"sm",variant:"secondary",onClick:()=>{window.confirm("Отозвать промокод "+N.code+"?")&&e("/admin/promo-revoke",{promoId:N.id})},children:"Отозвать"})})]},N.id)})]})]})]})]})}function oH({subs:e,filter:t,setFilter:n,csrf:r}){const l=e.filter(u=>s6(u,t)),o=c6(e);return f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Подписки"}),f.jsx(ht,{children:f.jsx("span",{className:"flex flex-wrap gap-1",children:[["all","Все"],["active","Активные"],["week","Истекают за 7 дней"],["unbound","Без устройства"],["grace","Льготный период"],["expired","Истекшие"]].map(([u,c])=>f.jsx(he,{size:"sm",variant:t===u?"default":"secondary",onClick:()=>n(u),children:c},u))})})]}),f.jsxs(xe,{className:"space-y-3",children:[f.jsxs("div",{className:"flex flex-wrap gap-3 text-sm",children:[f.jsx("a",{className:"text-primary",href:"/admin/subscriptions.csv",children:"Скачать подписки (CSV)"}),f.jsx("a",{className:"text-primary",href:"/admin/users.csv",children:"Скачать пользователей (CSV)"}),f.jsxs(he,{size:"sm",variant:"secondary",disabled:o.length===0,onClick:()=>{o.length&&window.confirm("Отправить напоминание "+o.length+" пользователям в Telegram?")&&(async()=>{let u=0;for(let c=0;cf.jsxs(qe,{children:[f.jsxs(me,{children:[u.who,f.jsx(ko,{value:u.telegramId})]}),f.jsx(me,{className:"whitespace-nowrap",children:f.jsx(dt,{ms:u.createdAt})}),f.jsx(me,{className:"whitespace-nowrap",children:f.jsx(dt,{ms:u.paidUntil})}),f.jsx(me,{children:f.jsx(MM,{status:u.status})}),f.jsxs(me,{children:[f.jsx(l6,{bound:u.bound,limit:u.deviceLimit,over:u.overLimit}),(u.creditRub||0)>0?f.jsxs("span",{className:"text-xs text-muted-foreground",children:["зачёт ",u.creditRub," ₽"]}):null,u.limitOverride?f.jsx("span",{className:"ml-1 text-xs text-amber-300",title:u.limitText,children:"индивид."}):null]}),f.jsx(me,{children:f.jsx("a",{className:"text-primary",href:"/admin/?id="+encodeURIComponent(u.accountId),children:"карточка"})})]},u.id))]})]})]})]})}function sH({rows:e}){return e.length?f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Проблемы"})}),f.jsx(xe,{children:f.jsx("ul",{className:"space-y-3 text-sm",children:e.map((t,n)=>{const r=[t.amount?t.amount+" ₽":"",t.label||"",t.operationId||""].filter(Boolean);return f.jsxs("li",{className:"rounded-md border border-red-900/50 bg-red-950/30 px-3 py-2",children:[f.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[f.jsx(Oe,{variant:"bad",children:PM(t.kind)}),f.jsx(dt,{ms:t.at})]}),f.jsx("div",{className:"mt-1 break-all text-zinc-100",children:r.length?r.join(" · "):t.text||"Нет подробностей"})]},n)})})})]}):null}function jx(e){if(!e)return"";const t=Math.round(e*1e8)/1e8;return String(t)}function uH({row:e}){const t=e&&e.yoomoney,n=e&&e.stars,r=e&&e.crypto,l=(o,u)=>f.jsxs("div",{children:[f.jsx("div",{className:"text-sm font-medium",children:o}),f.jsx("div",{className:"text-xs text-muted-foreground",children:u.filter(Boolean).join(" · ")})]});return f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Выручка за 30 дней по способам"}),f.jsx(ht,{children:"Рубли звёзд и крипты - цена заказа на момент оплаты. Возврат звёзд в сумму не входит."})]}),f.jsxs(xe,{className:"grid gap-3 sm:grid-cols-3",children:[l("ЮMoney",[Math.round((t==null?void 0:t.rub)||0)+" ₽",((t==null?void 0:t.count)||0)+" оплат"]),l("Звёзды",[Math.round((n==null?void 0:n.stars)||0)+" звёзд",Math.round((n==null?void 0:n.rub)||0)+" ₽",((n==null?void 0:n.count)||0)+" оплат"]),l("Крипта",[r!=null&&r.usdt?jx(r.usdt)+" USDT":"",r!=null&&r.ton?jx(r.ton)+" TON":"",r!=null&&r.btc?jx(r.btc)+" BTC":"",Math.round((r==null?void 0:r.rub)||0)+" ₽",((r==null?void 0:r.count)||0)+" оплат"])]})]})}function cH({home:e}){var C,A,N,O,T,R,E,D,k,I;const[t,n]=b.useState(null),[r,l]=b.useState(0),[o,u]=b.useState(1),[c,h]=b.useState(""),[m,v]=b.useState("30"),[p,x]=b.useState(30),S=20;b.useEffect(()=>{let P=!1;const B=Date.now(),F=m==="all"?0:B-Number(m)*24*60*60*1e3,se=new URLSearchParams({q:c,offset:String((o-1)*S),limit:String(S)});return F&&se.set("from",String(F)),ot("/admin/api/payments?"+se.toString()).then(ue=>{P||ue.auth===!1||(n(ue.payments||[]),l(ue.total||0))}),()=>{P=!0}},[o,c,m]);const w=(e.series||[]).slice(p===30?-30:-90),j=Math.max(1,Math.ceil(r/S));return f.jsxs("div",{className:"space-y-4",children:[f.jsx("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-3",children:[[(A=(C=e.finance)==null?void 0:C.summary)==null?void 0:A.day,"сегодня"],[(O=(N=e.finance)==null?void 0:N.summary)==null?void 0:O.week,"неделя"],[(R=(T=e.finance)==null?void 0:T.summary)==null?void 0:R.month,"месяц"]].map(([P,B])=>f.jsx(ye,{children:f.jsxs(xe,{className:"pt-4",children:[f.jsx("div",{className:"text-2xl font-bold",children:Math.round((P==null?void 0:P.sum)||0)}),f.jsxs("div",{className:"text-xs text-muted-foreground",children:["₽ ",B," · ",(P==null?void 0:P.count)||0]})]})},B))}),f.jsxs(ye,{children:[f.jsxs(Ne,{className:"flex flex-row flex-wrap items-center justify-between gap-2",children:[f.jsx(Te,{children:"Графики"}),f.jsxs("div",{className:"flex gap-2",children:[f.jsx(he,{size:"sm",variant:p===30?"default":"secondary",onClick:()=>x(30),children:"30 дней"}),f.jsx(he,{size:"sm",variant:p===90?"default":"secondary",onClick:()=>x(90),children:"90 дней"})]})]}),f.jsxs(xe,{className:"grid gap-6 lg:grid-cols-2",children:[f.jsx(TE,{rows:w,field:"revenue",label:"Выручка по дням, ₽"}),f.jsx(TE,{rows:w,field:"subs",label:"Новые подписки по дням"})]})]}),f.jsx(uH,{row:(k=(D=(E=e.finance)==null?void 0:E.summary)==null?void 0:D.month)==null?void 0:k.byMethod}),f.jsx("p",{children:f.jsx("a",{className:"text-primary",href:"/admin/finance.csv",children:"Скачать CSV за 30 дней"})}),f.jsx(sH,{rows:((I=e.finance)==null?void 0:I.problems)||[]}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Платежи"})}),f.jsxs(xe,{className:"space-y-3",children:[f.jsxs("div",{className:"flex flex-wrap gap-2",children:[f.jsx($e,{className:"max-w-xs",placeholder:"Поиск: кто, метка, сумма",value:c,onChange:P=>{u(1),h(P.target.value)}}),f.jsxs("select",{className:Nf,value:m,"aria-label":"Период",onChange:P=>{u(1),v(P.target.value)},children:[f.jsx("option",{value:"7",children:"7 дней"}),f.jsx("option",{value:"30",children:"30 дней"}),f.jsx("option",{value:"90",children:"90 дней"}),f.jsx("option",{value:"all",children:"Все"})]})]}),t===null?f.jsxs("div",{className:"space-y-2",children:[f.jsx(an,{className:"h-8"}),f.jsx(an,{className:"h-8"})]}):f.jsxs(Wn,{className:"min-w-[40rem]",children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Когда, МСК"}),f.jsx(Se,{children:"Сумма"}),f.jsx(Se,{children:"Способ"}),f.jsx(Se,{children:"Кто"}),f.jsx(Se,{children:"Метка"})]})}),f.jsxs(er,{children:[t.length===0?f.jsx(qe,{children:f.jsx(me,{colSpan:5,className:"text-muted-foreground",children:"Нет платежей"})}):null,t.map((P,B)=>f.jsxs(qe,{children:[f.jsx(me,{className:"whitespace-nowrap",children:f.jsx(dt,{ms:P.at})}),f.jsx(me,{children:P.amount||"-"}),f.jsx(me,{children:kM(P)}),f.jsx(me,{children:P.accountId?f.jsx("a",{className:"text-primary",href:"/admin/?id="+encodeURIComponent(P.accountId),children:P.who||P.accountId.slice(0,8)}):P.who||"-"}),f.jsx(me,{className:"break-all font-mono text-xs text-muted-foreground",children:P.label||"-"})]},(P.operationId||"")+B))]})]}),f.jsx(kv,{page:o,pages:j,total:r,onPage:u})]})]})]})}const VE=[{title:"Бот",fields:[["botToken","Токен бота"],["botUsername","Имя бота"],["publicOrigin","Публичный адрес"],["adminTelegramIds","Telegram id администраторов"],["adminReaders","Telegram id только для просмотра"],["betaPercent","Процент беты (0-100)"]]},{title:"Платежи",fields:[["yoomoneyWallet","Кошелёк ЮMoney"],["yoomoneySecret","Секрет ЮMoney"],["cryptoPayToken","Токен Crypto Pay"],["cryptoPayTestnetToken","Токен Crypto Pay (testnet)"]]},{title:"Звёзды",fields:[["starsPrice","Подписка, звёзд"],["starsExtra","Доп. устройство, звёзд"]]},{title:"Крипта",fields:[["cryptoUsdt","Подписка, USDT"],["cryptoExtraUsdt","Доп. устройство, USDT"],["cryptoRateUsdt","Курс USDT, ₽ за 1"],["cryptoTon","Подписка, TON"],["cryptoExtraTon","Доп. устройство, TON"],["cryptoRateTon","Курс TON, ₽ за 1"],["cryptoBtc","Подписка, BTC"],["cryptoExtraBtc","Доп. устройство, BTC"],["cryptoRateBtc","Курс BTC, ₽ за 1"]]},{title:"SMTP",fields:[["smtpHost","SMTP-сервер"],["smtpUser","SMTP-логин"],["smtpPass","SMTP-пароль"],["smtpFrom","SMTP-отправитель"]]},{title:"Цены",fields:[["priceRub","Цена, ₽"],["periodDays","Период, дней"],["baseDevices","Базовых устройств в подписке (1-20; кроме индивидуальных лимитов)"],["extraDeviceRub","Доп. устройство, ₽ в месяц"],["graceDays","Льготный период, дней"],["publicPromo","Промокод на пробный день (бот покажет, пока он действует)"]]},{title:"Бэкапы Postgres",fields:[["backupEveryHours","Делать дамп каждые, часов (1-168)"],["backupKeepDays","Хранить дампы, дней (1-365; последний не удаляется)"]]},{title:"DHT",fields:[["dhtPerMinute","Запросов в минуту на устройство (0-1000, 0 выключает, по умолчанию 30)"]]}],GE=new Set(["botToken","yoomoneySecret","cryptoPayToken","cryptoPayTestnetToken","smtpPass","jackettApiKey","jacredApiKey","indexerPass"]);function yf({name:e,label:t,view:n,fallback:r}){const l=n?n.text:r||"не задан";return f.jsxs("div",{className:"space-y-1",children:[f.jsx(yt,{htmlFor:e,children:t}),f.jsx($e,{id:e,value:l,readOnly:!0,disabled:!0}),f.jsxs("p",{className:"text-xs text-muted-foreground",children:["Меняется на сервере: ",n?n.env:"переменная"," в .env, затем перезапуск billing.",n&&n.source==="db"?f.jsx("span",{className:"text-destructive",children:" Сейчас ещё в базе - перенесите в .env."}):null]})]})}function fH({backup:e}){if(!e||!e.enabled)return f.jsx(ht,{children:"Бэкапы Postgres на этом сервере не настроены (нет BILLING_PG_BACKUP_DIR)."});const t=e.last;return f.jsxs(ht,{children:[t?"Последний дамп: "+zi(t.at)+" · "+RE(t.size):"Дампов ещё нет"," · всего "+e.count+" ("+RE(e.totalBytes)+")",e.stale?f.jsx("span",{className:"text-destructive",children:" · бэкап устарел"}):null,e.lastError?f.jsxs("span",{className:"text-destructive",children:[" · ошибка: ",e.lastError]}):null,e.verify?f.jsx("span",{className:e.verify.ok?"":"text-destructive",children:" · проверка архива: "+(e.verify.ok?"список читается":e.verify.error||"ошибка")}):null]})}function dH({run:e,settings:t,storage:n,backup:r,secrets:l}){const[o,u]=b.useState({}),[c,h]=b.useState(!0),[m,v]=b.useState(!1),[p,x]=b.useState(!1),[S,w]=b.useState(!1),[j,C]=b.useState(!1),A=b.useRef(!1),[N,O]=b.useState(null),T=R=>e("/admin/settings",{...o,adminNotify:c?"true":"false",starsEnabled:m?"true":"false",cryptoEnabled:p?"true":"false",cryptoTestnet:S?"true":"false",cryptoNonRu:j?"true":"false",...R?{confirm:"yes"}:{}}).then(E=>{var D;return(D=E==null?void 0:E.flash)!=null&&D.error||(A.current=!1),E});return b.useEffect(()=>{if(A.current)return;const R={};for(const E of VE)for(const[D]of E.fields)GE.has(D)||(R[D]=String(t[D]??""));u(R),h(t.adminNotify!==!1),v(t.starsEnabled===!0),x(t.cryptoEnabled===!0),w(t.cryptoTestnet===!0),C(t.cryptoNonRu===!0)},[t]),f.jsxs("form",{className:"space-y-4",onSubmit:R=>{R.preventDefault();const E=Number(o.baseDevices),D=Number(t.baseDevices);if(Number.isInteger(E)&&E>=1&&Number.isFinite(D)&&Ef.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:R.title}),R.title==="Платежи"?f.jsx(ht,{children:"Кошелёк показывается частично. Чтобы сменить, введите новый номер целиком."}):null,R.title==="Бэкапы Postgres"?f.jsx(fH,{backup:r}):null,R.title==="DHT"?f.jsx(ht,{children:"Лимит кнопки «Проверить сиды»: сколько запросов /v1/dht-peers устройство может сделать за минуту. После сохранения действует это число. Пока поле ни разу не сохраняли, запасной предел берется из BILLING_DHT_DEVICE_MAX."}):null]}),f.jsxs(xe,{className:"grid gap-3 md:grid-cols-2",children:[R.fields.map(([E,D])=>GE.has(E)?f.jsx(yf,{name:E,label:D,view:(l||[]).find(k=>k.key===E),fallback:String(t[E]??"")},E):f.jsxs("div",{className:"space-y-1",children:[f.jsx(yt,{htmlFor:E,children:D}),f.jsx($e,{id:E,value:o[E]||"",onChange:k=>{A.current=!0,u({...o,[E]:k.target.value})}})]},E)),R.title==="Бот"?f.jsxs("label",{className:"flex items-center gap-2 text-sm md:col-span-2",children:[f.jsx("input",{type:"checkbox",checked:c,onChange:E=>{A.current=!0,h(E.target.checked)}}),"Уведомлять администраторов в Telegram (оплата, ошибка оплаты, падение сервиса, новое сообщение поддержки)"]}):null,R.title==="Звёзды"?f.jsxs("label",{className:"flex items-center gap-2 text-sm md:col-span-2",children:[f.jsx("input",{type:"checkbox",checked:m,onChange:E=>{A.current=!0,v(E.target.checked)}}),"Принимать Telegram Stars. По умолчанию выключено. Комиссия сверху не добавляется."]}):null,R.title==="Крипта"?f.jsxs("div",{className:"space-y-2 md:col-span-2",children:[f.jsxs("label",{className:"flex items-center gap-2 text-sm",children:[f.jsx("input",{type:"checkbox",checked:p,onChange:E=>{A.current=!0,x(E.target.checked)}}),"Принимать Crypto Pay (USDT, TON, BTC). По умолчанию выключено."]}),f.jsxs("label",{className:"flex items-center gap-2 text-sm",children:[f.jsx("input",{type:"checkbox",checked:S,onChange:E=>{A.current=!0,w(E.target.checked)}}),"Тестовая сеть Crypto Pay (testnet-pay.crypt.bot). Токен этого режима:"," ",String(S?t.cryptoPayTestnetToken||"не задан":t.cryptoPayToken||"не задан"),"."]}),f.jsxs("label",{className:"flex items-center gap-2 text-sm",children:[f.jsx("input",{type:"checkbox",checked:j,onChange:E=>{A.current=!0,C(E.target.checked)}}),"Только пользователям не из РФ. Без кода страны или с кодом RU ссылка не выдаётся."]})]}):null]})]},R.title)),N?f.jsxs(Bt,{variant:"warn",children:[f.jsxs("p",{children:["Базовых устройств станет ",N.to," (сейчас ",N.from,"). Затронет подписок без индивидуального лимита: ",N.subscriptions,", перестанут работать устройств: ",N.devices," - последние привязанные сверх нового лимита. Ничего не отвязывается, при возврате базы они заработают снова."]}),f.jsxs("div",{className:"mt-2 flex gap-2",children:[f.jsxs(he,{type:"button",size:"sm",variant:"destructive",onClick:()=>{O(null),T(!0)},children:["Да, снизить до ",N.to]}),f.jsx(he,{type:"button",size:"sm",variant:"ghost",onClick:()=>O(null),children:"Отмена"})]})]}):null,f.jsx(he,{type:"submit",children:"Сохранить"})]})}function hH({row:e,checking:t}){return t&&!e?f.jsx(Oe,{variant:"secondary",children:"проверка…"}):e?e.configured?e.ok?f.jsxs(Oe,{variant:"ok",children:["работает · ",e.latencyMs," мс"]}):f.jsx(Oe,{variant:"bad",children:O6(e.error)}):f.jsx(Oe,{variant:"secondary",children:"не настроено"}):f.jsx(Oe,{variant:"secondary",children:"нет данных"})}function qE({csrf:e,settings:t,secrets:n,onSaved:r}){const l=O=>(n||[]).find(T=>T.key===O),[o,u]=b.useState({jackettUrl:String(t.jackettUrl??""),jackettEnabled:t.jackettEnabled!==!1,jacredUrl:String(t.jacredUrl??""),jacredEnabled:t.jacredEnabled!==!1,bitmagnetUrl:String(t.bitmagnetUrl??""),bitmagnetEnabled:t.bitmagnetEnabled===!0,torrserverUrl:String(t.torrserverUrl??""),indexerUser:String(t.indexerUser??"")}),[c,h]=b.useState(null),[m,v]=b.useState(null),[p,x]=b.useState(!1),[S,w]=b.useState(0),[j,C]=b.useState("");b.useEffect(()=>{u({jackettUrl:String(t.jackettUrl??""),jackettEnabled:t.jackettEnabled!==!1,jacredUrl:String(t.jacredUrl??""),jacredEnabled:t.jacredEnabled!==!1,bitmagnetUrl:String(t.bitmagnetUrl??""),bitmagnetEnabled:t.bitmagnetEnabled===!0,torrserverUrl:String(t.torrserverUrl??""),indexerUser:String(t.indexerUser??"")})},[t]);async function A(O){x(!0),C("");try{const T=await ot("/admin/api/services");if(T.auth===!1){C("Нужен вход");return}h(T.services||null),v(T.botPoll||null);const R=Date.now();w(R),O||ft("Сервисы проверены · "+zi(R))}catch(T){C(T instanceof Error?T.message:"Не удалось проверить сервисы")}finally{x(!1)}}b.useEffect(()=>{A(!1)},[]);async function N(O){O.preventDefault(),x(!0),C("");try{if((await Qt("/admin/services",e,{...o,jackettEnabled:o.jackettEnabled?"true":"false",jacredEnabled:o.jacredEnabled?"true":"false",bitmagnetEnabled:o.bitmagnetEnabled?"true":"false"})).auth===!1){C("Нужен вход");return}ft("Сервисы сохранены"),r(),await A(!0)}catch(T){C(T instanceof Error?T.message:"Не удалось сохранить")}finally{x(!1)}}return f.jsxs("div",{className:"space-y-4",children:[f.jsxs(ye,{children:[f.jsxs(Ne,{className:"flex flex-row flex-wrap items-center justify-between gap-2",children:[f.jsxs("div",{children:[f.jsx(Te,{children:"Сервисы VPS"}),f.jsxs(ht,{children:["Ключи только на сервере. Телефон ходит через billing при активной подписке. TorrServer на VPS - для мониторинга, не для пользователей.",S?" Проверено "+zi(S)+".":""]})]}),f.jsx(he,{type:"button",variant:"secondary",disabled:p,onClick:()=>void A(!1),children:p?"Проверка…":"Проверить сейчас"})]}),f.jsxs(xe,{className:"space-y-3",children:[f.jsx(mH,{poll:m}),f.jsx("div",{className:"grid gap-3 lg:grid-cols-3",children:p&&!c?f.jsxs(f.Fragment,{children:[f.jsx(an,{className:"h-24"}),f.jsx(an,{className:"h-24"}),f.jsx(an,{className:"h-24"})]}):f.jsxs(f.Fragment,{children:[f.jsx(tm,{title:"Jackett",row:c==null?void 0:c.jackett,fallback:o.jackettUrl,note:"подписчикам: "+(o.jackettEnabled?"вкл":"выкл"),checking:p}),f.jsx(tm,{title:"JacRed",row:c==null?void 0:c.jacred,fallback:o.jacredUrl,note:"подписчикам: "+(o.jacredEnabled?"вкл":"выкл"),checking:p}),f.jsx(tm,{title:"bitmagnet",row:c==null?void 0:c.bitmagnet,fallback:o.bitmagnetUrl,note:"подписчикам: "+(o.bitmagnetEnabled?"вкл":"выкл"),checking:p}),f.jsx(tm,{title:"TorrServer",row:c==null?void 0:c.torrserver,fallback:o.torrserverUrl,note:"только мониторинг",checking:p})]})})]})]}),f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Настройки сервисов"}),f.jsx(ht,{children:"Ключи и пароль - только для чтения: они в .env на сервере."})]}),f.jsx(xe,{children:f.jsxs("form",{className:"space-y-4",onSubmit:O=>void N(O),children:[f.jsxs("div",{className:"grid gap-3 md:grid-cols-2",children:[f.jsx(rf,{id:"jackettUrl",label:"Адрес Jackett",value:o.jackettUrl,onChange:O=>u({...o,jackettUrl:O}),placeholder:"http://jackett:9117"}),f.jsx(yf,{name:"jackettApiKey",label:"Ключ API Jackett",view:l("jackettApiKey"),fallback:String(t.jackettApiKey??"")}),f.jsx(Cx,{label:"Jackett доступен подписчикам",checked:o.jackettEnabled,onChange:O=>u({...o,jackettEnabled:O})}),f.jsx(rf,{id:"jacredUrl",label:"Адрес JacRed",value:o.jacredUrl,onChange:O=>u({...o,jacredUrl:O}),placeholder:"http://jacred:9117"}),f.jsx(yf,{name:"jacredApiKey",label:"Ключ API JacRed",view:l("jacredApiKey"),fallback:String(t.jacredApiKey??"")}),f.jsx(Cx,{label:"JacRed доступен подписчикам",checked:o.jacredEnabled,onChange:O=>u({...o,jacredEnabled:O})}),f.jsx(rf,{id:"bitmagnetUrl",label:"Адрес bitmagnet",value:o.bitmagnetUrl,onChange:O=>u({...o,bitmagnetUrl:O}),placeholder:"http://127.0.0.1:3333"}),f.jsx(yf,{name:"bitmagnetApiKey",label:"Ключ API bitmagnet",view:l("bitmagnetApiKey"),fallback:String(t.bitmagnetApiKey??"")}),f.jsx(Cx,{label:"bitmagnet доступен подписчикам",checked:o.bitmagnetEnabled,onChange:O=>u({...o,bitmagnetEnabled:O})}),f.jsx(rf,{id:"torrserverUrl",label:"Адрес TorrServer (только мониторинг)",value:o.torrserverUrl,onChange:O=>u({...o,torrserverUrl:O}),placeholder:"http://torrserver:8090",wide:!0}),f.jsx(rf,{id:"indexerUser",label:"Логин basic-авторизации",value:o.indexerUser,onChange:O=>u({...o,indexerUser:O}),placeholder:"omp"}),f.jsx(yf,{name:"indexerPass",label:"Пароль basic-авторизации",view:l("indexerPass"),fallback:String(t.indexerPass??"")})]}),j?f.jsx(Bt,{variant:"destructive",children:j}):null,f.jsx(he,{type:"submit",disabled:p,children:"Сохранить"})]})})]})]})}function mH({poll:e}){const t=!!(e&&e.enabled&&e.conflictRecent);return f.jsxs("p",{className:"flex flex-wrap items-center gap-2 text-sm",children:[f.jsx("span",{children:U8(e)}),e&&e.enabled?t?f.jsx(Oe,{variant:"bad",children:"конфликт 409"}):f.jsx(Oe,{variant:"ok",children:"без конфликта"}):null]})}function tm({title:e,row:t,fallback:n,note:r,checking:l}){return f.jsxs("div",{className:"rounded-md border border-border p-3",children:[f.jsxs("div",{className:"mb-1 flex items-center justify-between gap-2",children:[f.jsx("span",{className:"font-medium",children:e}),f.jsx(hH,{row:t,checking:l})]}),f.jsx("div",{className:"truncate text-xs text-muted-foreground",children:(t==null?void 0:t.url)||n||"-"}),f.jsx("div",{className:"text-xs text-muted-foreground",children:r})]})}function rf({id:e,label:t,value:n,onChange:r,placeholder:l,wide:o}){return f.jsxs("div",{className:"space-y-1 "+(o?"md:col-span-2":""),children:[f.jsx(yt,{htmlFor:e,children:t}),f.jsx($e,{id:e,value:n,placeholder:l,onChange:u=>r(u.target.value)})]})}function Cx({label:e,checked:t,onChange:n}){return f.jsxs("label",{className:"flex items-center gap-2 text-sm md:col-span-2",children:[f.jsx("input",{type:"checkbox",checked:t,onChange:r=>n(r.target.checked)}),e]})}function vH(){const[e,t]=b.useState(""),[n,r]=b.useState(""),[l,o]=b.useState(1),[u,c]=b.useState(null),[h,m]=b.useState(0),v=30;b.useEffect(()=>{let x=!1;const S=new URLSearchParams({q:e,action:n,offset:String((l-1)*v),limit:String(v)});return ot("/admin/api/audit?"+S).then(w=>{x||w.auth===!1||(c(w.audit||[]),m(w.total||0))}),()=>{x=!0}},[e,n,l]);const p=Math.max(1,Math.ceil(h/v));return f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Журнал"})}),f.jsxs(xe,{className:"space-y-3",children:[f.jsxs("div",{className:"flex flex-wrap gap-2",children:[f.jsx($e,{className:"max-w-xs",placeholder:"Поиск",value:e,onChange:x=>{o(1),t(x.target.value)}}),f.jsx("select",{className:Nf,value:n,"aria-label":"Действие",onChange:x=>{o(1),r(x.target.value)},children:N6.map(([x,S])=>f.jsx("option",{value:x,children:S},x||"all"))})]}),u===null?f.jsx(an,{className:"h-24"}):u.length===0?f.jsx("p",{className:"text-sm text-muted-foreground",children:"Записей нет"}):f.jsx("ul",{className:"space-y-1 text-sm",children:u.map((x,S)=>f.jsxs("li",{className:"flex flex-wrap items-baseline gap-x-2 gap-y-1",children:[f.jsx(dt,{ms:x.at}),f.jsx("span",{children:xS(x.actor,{fallback:"админ"})}),f.jsx("span",{children:E6(x.action)}),f.jsx("span",{className:"text-muted-foreground",children:x.detail})]},S))}),f.jsx(kv,{page:l,pages:p,total:h,onPage:o})]})]})}function gH(){const[e,t]=b.useState(""),[n,r]=b.useState(""),[l,o]=b.useState(1),[u,c]=b.useState(null),[h,m]=b.useState(0),v=30;b.useEffect(()=>{let x=!1;const S=new URLSearchParams({reason:e,q:n,offset:String((l-1)*v),limit:String(v)});return ot("/admin/api/fails?"+S).then(w=>{x||w.auth===!1||(c(w.fails||[]),m(w.total||0))}),()=>{x=!0}},[e,n,l]);const p=Math.max(1,Math.ceil(h/v));return f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Неудачные активации"})}),f.jsxs(xe,{className:"space-y-3",children:[f.jsxs("div",{className:"flex flex-wrap gap-2",children:[f.jsx($e,{className:"max-w-xs",placeholder:"Устройство",value:n,onChange:x=>{o(1),r(x.target.value)}}),f.jsx("select",{className:Nf,value:e,"aria-label":"Причина",onChange:x=>{o(1),t(x.target.value)},children:T6.map(([x,S])=>f.jsx("option",{value:x,children:S},x||"all"))})]}),u===null?f.jsx(an,{className:"h-24"}):f.jsxs(Wn,{className:"min-w-[32rem]",children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Когда, МСК"}),f.jsx(Se,{children:"Причина"}),f.jsx(Se,{children:"Устройство"})]})}),f.jsxs(er,{children:[u.length===0?f.jsx(qe,{children:f.jsx(me,{colSpan:3,className:"text-muted-foreground",children:"Отказов нет"})}):null,u.map((x,S)=>f.jsxs(qe,{children:[f.jsx(me,{className:"whitespace-nowrap",children:f.jsx(dt,{ms:x.at})}),f.jsx(me,{children:A6(x.reason)}),f.jsx(me,{className:"font-mono text-xs",children:x.deviceId?x.deviceId.slice(0,8):"-"})]},S))]})]}),f.jsx(kv,{page:l,pages:p,total:h,onPage:o})]})]})}function pH({run:e,sessions:t,sessionId:n}){return f.jsx("div",{className:"space-y-4",children:f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Сессии"}),f.jsx(ht,{children:"Вход только через Telegram. Время - МСК."})]}),f.jsx(xe,{children:f.jsxs(Wn,{className:"min-w-[36rem]",children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Сессия"}),f.jsx(Se,{children:"Кто"}),f.jsx(Se,{children:"Создана"}),f.jsx(Se,{children:"Активность"}),f.jsx(Se,{})]})}),f.jsx(er,{children:t.map(r=>f.jsxs(qe,{children:[f.jsxs(me,{children:[r.id.slice(0,8),"…",r.id===n?" (эта)":""]}),f.jsx(me,{children:xS(r.actor,{fallback:"админ"})}),f.jsx(me,{className:"whitespace-nowrap",children:f.jsx(dt,{ms:r.createdAt})}),f.jsx(me,{className:"whitespace-nowrap",children:f.jsx(dt,{ms:r.lastSeen})}),f.jsx(me,{children:r.id!==n?f.jsx(he,{size:"sm",variant:"secondary",onClick:()=>void e("/admin/session-revoke",{sessionId:r.id}),children:"Завершить"}):null})]},r.id))})]})})]})})}const QM=b.createContext({paused:!1,setPaused:()=>{},mode:"poll",at:0});function Iv(){return b.useContext(QM)}function yH({children:e}){const t=Wb(),[n,r]=b.useState(!1),[l,o]=b.useState("poll"),[u,c]=b.useState(0),h=b.useRef(l);return h.current=l,b.useEffect(()=>{if(n){o("pause");return}let m=!1,v=null,p=0,x=1e3;const S=()=>{c(Date.now()),t.invalidateQueries(),window.dispatchEvent(new Event("omp-admin-live"))},w=()=>{m||(v=new EventSource("/admin/api/events"),v.onopen=()=>{x=1e3,o("live"),c(Date.now())},v.onmessage=()=>{o("live"),S()},v.onerror=()=>{v&&v.close(),o("poll"),!m&&(p=window.setTimeout(w,x),x=Math.min(15e3,x*2))})};return w(),()=>{m=!0,v&&v.close(),window.clearTimeout(p)}},[n,t]),b.useEffect(()=>{if(n)return;const m=window.setInterval(()=>{h.current!=="live"&&window.dispatchEvent(new Event("omp-admin-live"))},12e3);return()=>window.clearInterval(m)},[n]),f.jsx(QM.Provider,{value:{paused:n,setPaused:r,mode:l,at:u},children:e})}function KE(){const{paused:e,setPaused:t,mode:n,at:r}=Iv(),l=n==="pause"?"пауза":n==="live"?"в эфире":"опрос",o=r?new Date(r).toLocaleTimeString("ru-RU",{hour:"2-digit",minute:"2-digit",second:"2-digit"}):"-";return f.jsxs("div",{className:"flex items-center gap-2 text-xs text-muted-foreground",children:[f.jsx("span",{className:n==="live"?"text-primary":"",children:l}),f.jsx("span",{className:"font-mono",children:o}),f.jsx("button",{type:"button",className:"rounded-md border border-border px-2 py-1 text-foreground",onClick:()=>t(!e),children:e?"Продолжить":"Пауза"})]})}var xH=["dangerouslySetInnerHTML","onCopy","onCopyCapture","onCut","onCutCapture","onPaste","onPasteCapture","onCompositionEnd","onCompositionEndCapture","onCompositionStart","onCompositionStartCapture","onCompositionUpdate","onCompositionUpdateCapture","onFocus","onFocusCapture","onBlur","onBlurCapture","onChange","onChangeCapture","onBeforeInput","onBeforeInputCapture","onInput","onInputCapture","onReset","onResetCapture","onSubmit","onSubmitCapture","onInvalid","onInvalidCapture","onLoad","onLoadCapture","onError","onErrorCapture","onKeyDown","onKeyDownCapture","onKeyPress","onKeyPressCapture","onKeyUp","onKeyUpCapture","onAbort","onAbortCapture","onCanPlay","onCanPlayCapture","onCanPlayThrough","onCanPlayThroughCapture","onDurationChange","onDurationChangeCapture","onEmptied","onEmptiedCapture","onEncrypted","onEncryptedCapture","onEnded","onEndedCapture","onLoadedData","onLoadedDataCapture","onLoadedMetadata","onLoadedMetadataCapture","onLoadStart","onLoadStartCapture","onPause","onPauseCapture","onPlay","onPlayCapture","onPlaying","onPlayingCapture","onProgress","onProgressCapture","onRateChange","onRateChangeCapture","onSeeked","onSeekedCapture","onSeeking","onSeekingCapture","onStalled","onStalledCapture","onSuspend","onSuspendCapture","onTimeUpdate","onTimeUpdateCapture","onVolumeChange","onVolumeChangeCapture","onWaiting","onWaitingCapture","onAuxClick","onAuxClickCapture","onClick","onClickCapture","onContextMenu","onContextMenuCapture","onDoubleClick","onDoubleClickCapture","onDrag","onDragCapture","onDragEnd","onDragEndCapture","onDragEnter","onDragEnterCapture","onDragExit","onDragExitCapture","onDragLeave","onDragLeaveCapture","onDragOver","onDragOverCapture","onDragStart","onDragStartCapture","onDrop","onDropCapture","onMouseDown","onMouseDownCapture","onMouseEnter","onMouseLeave","onMouseMove","onMouseMoveCapture","onMouseOut","onMouseOutCapture","onMouseOver","onMouseOverCapture","onMouseUp","onMouseUpCapture","onSelect","onSelectCapture","onTouchCancel","onTouchCancelCapture","onTouchEnd","onTouchEndCapture","onTouchMove","onTouchMoveCapture","onTouchStart","onTouchStartCapture","onPointerDown","onPointerDownCapture","onPointerMove","onPointerMoveCapture","onPointerUp","onPointerUpCapture","onPointerCancel","onPointerCancelCapture","onPointerEnter","onPointerEnterCapture","onPointerLeave","onPointerLeaveCapture","onPointerOver","onPointerOverCapture","onPointerOut","onPointerOutCapture","onGotPointerCapture","onGotPointerCaptureCapture","onLostPointerCapture","onLostPointerCaptureCapture","onScroll","onScrollCapture","onWheel","onWheelCapture","onAnimationStart","onAnimationStartCapture","onAnimationEnd","onAnimationEndCapture","onAnimationIteration","onAnimationIterationCapture","onTransitionEnd","onTransitionEndCapture"];function AS(e){if(typeof e!="string")return!1;var t=xH;return t.includes(e)}var bH=["aria-activedescendant","aria-atomic","aria-autocomplete","aria-busy","aria-checked","aria-colcount","aria-colindex","aria-colspan","aria-controls","aria-current","aria-describedby","aria-details","aria-disabled","aria-errormessage","aria-expanded","aria-flowto","aria-haspopup","aria-hidden","aria-invalid","aria-keyshortcuts","aria-label","aria-labelledby","aria-level","aria-live","aria-modal","aria-multiline","aria-multiselectable","aria-orientation","aria-owns","aria-placeholder","aria-posinset","aria-pressed","aria-readonly","aria-relevant","aria-required","aria-roledescription","aria-rowcount","aria-rowindex","aria-rowspan","aria-selected","aria-setsize","aria-sort","aria-valuemax","aria-valuemin","aria-valuenow","aria-valuetext","className","color","height","id","lang","max","media","method","min","name","style","target","width","role","tabIndex","accentHeight","accumulate","additive","alignmentBaseline","allowReorder","alphabetic","amplitude","arabicForm","ascent","attributeName","attributeType","autoReverse","azimuth","baseFrequency","baselineShift","baseProfile","bbox","begin","bias","by","calcMode","capHeight","clip","clipPath","clipPathUnits","clipRule","colorInterpolation","colorInterpolationFilters","colorProfile","colorRendering","contentScriptType","contentStyleType","cursor","cx","cy","d","decelerate","descent","diffuseConstant","direction","display","divisor","dominantBaseline","dur","dx","dy","edgeMode","elevation","enableBackground","end","exponent","externalResourcesRequired","fill","fillOpacity","fillRule","filter","filterRes","filterUnits","floodColor","floodOpacity","focusable","fontFamily","fontSize","fontSizeAdjust","fontStretch","fontStyle","fontVariant","fontWeight","format","from","fx","fy","g1","g2","glyphName","glyphOrientationHorizontal","glyphOrientationVertical","glyphRef","gradientTransform","gradientUnits","hanging","horizAdvX","horizOriginX","href","ideographic","imageRendering","in2","in","intercept","k1","k2","k3","k4","k","kernelMatrix","kernelUnitLength","kerning","keyPoints","keySplines","keyTimes","lengthAdjust","letterSpacing","lightingColor","limitingConeAngle","local","markerEnd","markerHeight","markerMid","markerStart","markerUnits","markerWidth","mask","maskContentUnits","maskUnits","mathematical","mode","numOctaves","offset","opacity","operator","order","orient","orientation","origin","overflow","overlinePosition","overlineThickness","paintOrder","panose1","pathLength","patternContentUnits","patternTransform","patternUnits","pointerEvents","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","r","radius","refX","refY","renderingIntent","repeatCount","repeatDur","requiredExtensions","requiredFeatures","restart","result","rotate","rx","ry","seed","shapeRendering","slope","spacing","specularConstant","specularExponent","speed","spreadMethod","startOffset","stdDeviation","stemh","stemv","stitchTiles","stopColor","stopOpacity","strikethroughPosition","strikethroughThickness","string","stroke","strokeDasharray","strokeDashoffset","strokeLinecap","strokeLinejoin","strokeMiterlimit","strokeOpacity","strokeWidth","surfaceScale","systemLanguage","tableValues","targetX","targetY","textAnchor","textDecoration","textLength","textRendering","to","transform","u1","u2","underlinePosition","underlineThickness","unicode","unicodeBidi","unicodeRange","unitsPerEm","vAlphabetic","values","vectorEffect","version","vertAdvY","vertOriginX","vertOriginY","vHanging","vIdeographic","viewTarget","visibility","vMathematical","widths","wordSpacing","writingMode","x1","x2","x","xChannelSelector","xHeight","xlinkActuate","xlinkArcrole","xlinkHref","xlinkRole","xlinkShow","xlinkTitle","xlinkType","xmlBase","xmlLang","xmlns","xmlnsXlink","xmlSpace","y1","y2","y","yChannelSelector","z","zoomAndPan","ref","key","angle"],SH=new Set(bH);function ZM(e){return typeof e!="string"?!1:SH.has(e)}function WM(e){return typeof e=="string"&&e.startsWith("data-")}function Bi(e){if(typeof e!="object"||e===null)return{};var t={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(ZM(n)||WM(n))&&(t[n]=e[n]);return t}function zv(e){if(e==null)return null;if(b.isValidElement(e)&&typeof e.props=="object"&&e.props!==null){var t=e.props;return Bi(t)}return typeof e=="object"&&!Array.isArray(e)?Bi(e):null}function Xr(e){var t={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(ZM(n)||WM(n)||AS(n))&&(t[n]=e[n]);return t}function wH(e){return e==null?null:b.isValidElement(e)?Xr(e.props):typeof e=="object"&&!Array.isArray(e)?Xr(e):null}var jH=["children","width","height","viewBox","className","style","title","desc"];function Y0(){return Y0=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var n=e.children,r=e.width,l=e.height,o=e.viewBox,u=e.className,c=e.style,h=e.title,m=e.desc,v=CH(e,jH),p=o||{width:r,height:l,x:0,y:0},x=Ct("recharts-surface",u);return b.createElement("svg",Y0({},Xr(v),{className:x,width:r,height:l,style:c,viewBox:"".concat(p.x," ").concat(p.y," ").concat(p.width," ").concat(p.height),ref:t}),b.createElement("title",null,h),b.createElement("desc",null,m),n)}),AH=["children","className"];function X0(){return X0=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var n=e.children,r=e.className,l=EH(e,AH),o=Ct("recharts-layer",r);return b.createElement("g",X0({className:o},Xr(l),{ref:t}),n)});function Q0(e){return e==="__proto__"}const NH=Object.prototype.hasOwnProperty;function Pu(e,t){return NH.call(e,t)}const TH=/\.|(\[(?:[^[\]]*|(["'])(?:(?!\2)[^\\]|\\.)*?\2)\])/;function eD(e){switch(typeof e){case"number":case"symbol":return!1;case"string":return e===""||e.startsWith(".")||e.endsWith(".")?!1:TH.test(e);default:return!1}}function Lv(e){var t;return typeof e=="string"||typeof e=="symbol"?e:Object.is(e==null||(t=e.valueOf)===null||t===void 0?void 0:t.call(e),-0)?"-0":String(e)}function ES(e){return typeof e=="symbol"||e instanceof Symbol}function tD(e){if(typeof e=="string")return e;if(Array.isArray(e)){let n="";for(let r=0;r0&&(n+=","),n+=tD(e[r]);return n}if(ES(e))return e.toString();const t=e+"";return t==="0"&&Object.is(Number(e),-0)?"-0":t}function RH(e){return e==null?"":tD(e)}function OS(e){if(Array.isArray(e))return e.map(Lv);if(typeof e=="symbol")return[e];e=RH(e);const t=[],n=e.length;if(n===0)return t;let r=0,l="",o="",u=!1,c=!1;const h=/^-?\d+(?:\.\d+)?$/;for(e.charCodeAt(0)===46&&t.push("");r1&&arguments[1]!==void 0?arguments[1]:DH,n=10**t,r=Math.round(e*n)/n;return Object.is(r,-0)?0:r}function Tn(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r{var c=n[u-1];return typeof c=="string"?l+c+o:c!==void 0?l+ga(c)+o:l+o},"")}var Vr=e=>e===0?0:e>0?1:-1,Aa=e=>typeof e=="number"&&e!=+e,Vo=e=>typeof e=="string"&&e.length>1&&e.indexOf("%")===e.length-1,Re=e=>(typeof e=="number"||e instanceof Number)&&!Aa(e),Hi=e=>Re(e)||typeof e=="string",PH=0,Tf=e=>{var t=++PH;return"".concat(e||"").concat(t)},Pl=function(t,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,l=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(!Re(t)&&typeof t!="string")return r;var o;if(Vo(t)){if(n==null)return r;var u=t.indexOf("%");o=n*parseFloat(t.slice(0,u))/100}else o=+t;return Aa(o)&&(o=r),l&&n!=null&&o>n&&(o=n),o},nD=e=>{if(!Array.isArray(e))return!1;for(var t=e.length,n={},r=0;rr&&(typeof t=="function"?t(r):es(r,t))===n)}var yn=e=>e===null||typeof e>"u",NS=e=>yn(e)?e:"".concat(e.charAt(0).toUpperCase()).concat(e.slice(1));function ur(e){return e!=null}function Ku(){}function TS(e){if(e)return{x:e.x,y:e.y,upperWidth:"upperWidth"in e?e.upperWidth:e.width,lowerWidth:"lowerWidth"in e?e.lowerWidth:e.width,width:e.width,height:e.height}}function YE(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function Ai(e){for(var t=1;t{var t=e.viewBox,n=e.position,r=e.offset,l=r===void 0?0:r,o=e.parentViewBox,u=TS(t),c=u.x,h=u.y,m=u.height,v=u.upperWidth,p=u.lowerWidth,x=c,S=c+(v-p)/2,w=(x+S)/2,j=(v+p)/2,C=x+v/2,A=m>=0?1:-1,N=A*l,O=A>0?"end":"start",T=A>0?"start":"end",R=v>=0?1:-1,E=R*l,D=R>0?"end":"start",k=R>0?"start":"end",I=o;if(n==="top"){var P={x:x+v/2,y:h-N,horizontalAnchor:"middle",verticalAnchor:O};return I&&(P.height=Math.max(h-I.y,0),P.width=v),P}if(n==="bottom"){var B={x:S+p/2,y:h+m+N,horizontalAnchor:"middle",verticalAnchor:T};return I&&(B.height=Math.max(I.y+I.height-(h+m),0),B.width=p),B}if(n==="left"){var F={x:w-E,y:h+m/2,horizontalAnchor:D,verticalAnchor:"middle"};return I&&(F.width=Math.max(F.x-I.x,0),F.height=m),F}if(n==="right"){var se={x:w+j+E,y:h+m/2,horizontalAnchor:k,verticalAnchor:"middle"};return I&&(se.width=Math.max(I.x+I.width-se.x,0),se.height=m),se}var ue=I?{width:j,height:m}:{};return n==="insideLeft"?Ai({x:w+E,y:h+m/2,horizontalAnchor:k,verticalAnchor:"middle"},ue):n==="insideRight"?Ai({x:w+j-E,y:h+m/2,horizontalAnchor:D,verticalAnchor:"middle"},ue):n==="insideTop"?Ai({x:x+v/2,y:h+N,horizontalAnchor:"middle",verticalAnchor:T},ue):n==="insideBottom"?Ai({x:S+p/2,y:h+m-N,horizontalAnchor:"middle",verticalAnchor:O},ue):n==="insideTopLeft"?Ai({x:x+E,y:h+N,horizontalAnchor:k,verticalAnchor:T},ue):n==="insideTopRight"?Ai({x:x+v-E,y:h+N,horizontalAnchor:D,verticalAnchor:T},ue):n==="insideBottomLeft"?Ai({x:S+E,y:h+m-N,horizontalAnchor:k,verticalAnchor:O},ue):n==="insideBottomRight"?Ai({x:S+p-E,y:h+m-N,horizontalAnchor:D,verticalAnchor:O},ue):n&&typeof n=="object"&&(Re(n.x)||Vo(n.x))&&(Re(n.y)||Vo(n.y))?Ai({x:c+Pl(n.x,j),y:h+Pl(n.y,m),horizontalAnchor:"end",verticalAnchor:"end"},ue):Ai({x:C,y:h+m/2,horizontalAnchor:"middle",verticalAnchor:"middle"},ue)},UH=["top","left","right","bottom"];function $H(e){return e==null?!1:typeof e=="object"?!0:UH.includes(e)}var BH=b.createContext(null);const xf=Math.PI,Z0=2*xf,yo=1e-6,HH=Z0-yo;function iD(e){this._+=e[0];for(let t=1,n=e.length;t=0))throw new Error(`invalid digits: ${e}`);if(t>15)return iD;const n=10**t;return function(r){this._+=r[0];for(let l=1,o=r.length;lyo)if(!(Math.abs(p*h-m*v)>yo)||!o)this._append`L${this._x1=t},${this._y1=n}`;else{let S=r-u,w=l-c,j=h*h+m*m,C=S*S+w*w,A=Math.sqrt(j),N=Math.sqrt(x),O=o*Math.tan((xf-Math.acos((j+x-C)/(2*A*N)))/2),T=O/N,R=O/A;Math.abs(T-1)>yo&&this._append`L${t+T*v},${n+T*p}`,this._append`A${o},${o},0,0,${+(p*S>v*w)},${this._x1=t+R*h},${this._y1=n+R*m}`}}arc(t,n,r,l,o,u){if(t=+t,n=+n,r=+r,u=!!u,r<0)throw new Error(`negative radius: ${r}`);let c=r*Math.cos(l),h=r*Math.sin(l),m=t+c,v=n+h,p=1^u,x=u?l-o:o-l;if(this._x1===null?this._append`M${m},${v}`:(Math.abs(this._x1-m)>yo||Math.abs(this._y1-v)>yo)&&this._append`L${m},${v}`,!!r){if(x<0&&(x=x%Z0+Z0),x>HH)this._append`A${r},${r},0,1,${p},${t-c},${n-h}A${r},${r},0,1,${p},${this._x1=m},${this._y1=v}`;else if(x>yo){const S=t+r*Math.cos(o),w=n+r*Math.sin(o);if(x>=xf&&this._equal(m,v,S,w)){x/=2;let j=l+x;this._append`A${r},${r},0,${+(x>=xf)},${p},${t+r*Math.cos(j)},${n+r*Math.sin(j)}`}this._append`A${r},${r},0,${+(x>=xf)},${p},${this._x1=S},${this._y1=w}`}}}rect(t,n,r,l){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}h${r=+r}v${+l}h${-r}Z`}toString(){return this._}}function Ut(e){return function(){return e}}const XE=1e-12;function lD(e){let t=3;return e.digits=function(n){if(!arguments.length)return t;if(n==null)t=null;else{const r=Math.floor(n);if(!(r>=0))throw new RangeError(`invalid digits: ${n}`);t=r}return e},()=>new GH(t)}function RS(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function oD(e){this._context=e}oD.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t);break}}};function Uv(e){return new oD(e)}function sD(e){return e[0]}function uD(e){return e[1]}function cD(e,t){var n=Ut(!0),r=null,l=Uv,o=null,u=lD(c);e=typeof e=="function"?e:e===void 0?sD:Ut(e),t=typeof t=="function"?t:t===void 0?uD:Ut(t);function c(h){var m,v=(h=RS(h)).length,p,x=!1,S;for(r==null&&(o=l(S=u())),m=0;m<=v;++m)!(m=S;--w)c.point(O[w],T[w]);c.lineEnd(),c.areaEnd()}A&&(O[x]=+e(C,x,p),T[x]=+t(C,x,p),c.point(r?+r(C,x,p):O[x],n?+n(C,x,p):T[x]))}if(N)return c=null,N+""||null}function v(){return cD().defined(l).curve(u).context(o)}return m.x=function(p){return arguments.length?(e=typeof p=="function"?p:Ut(+p),r=null,m):e},m.x0=function(p){return arguments.length?(e=typeof p=="function"?p:Ut(+p),m):e},m.x1=function(p){return arguments.length?(r=p==null?null:typeof p=="function"?p:Ut(+p),m):r},m.y=function(p){return arguments.length?(t=typeof p=="function"?p:Ut(+p),n=null,m):t},m.y0=function(p){return arguments.length?(t=typeof p=="function"?p:Ut(+p),m):t},m.y1=function(p){return arguments.length?(n=p==null?null:typeof p=="function"?p:Ut(+p),m):n},m.lineX0=m.lineY0=function(){return v().x(e).y(t)},m.lineY1=function(){return v().x(e).y(n)},m.lineX1=function(){return v().x(r).y(t)},m.defined=function(p){return arguments.length?(l=typeof p=="function"?p:Ut(!!p),m):l},m.curve=function(p){return arguments.length?(u=p,o!=null&&(c=u(o)),m):u},m.context=function(p){return arguments.length?(p==null?o=c=null:c=u(o=p),m):o},m}class fD{constructor(t,n){this._context=t,this._x=n}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(t,n){switch(t=+t,n=+n,this._point){case 0:{this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,n,t,n):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+n)/2,t,this._y0,t,n);break}}this._x0=t,this._y0=n}}function qH(e){return new fD(e,!0)}function KH(e){return new fD(e,!1)}function kl(){}function $m(e,t,n){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+n)/6)}function $v(e){this._context=e}$v.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:$m(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:$m(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function YH(e){return new $v(e)}function dD(e){this._context=e}dD.prototype={areaStart:kl,areaEnd:kl,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:$m(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function XH(e){return new dD(e)}function hD(e){this._context=e}hD.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var n=(this._x0+4*this._x1+e)/6,r=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(n,r):this._context.moveTo(n,r);break;case 3:this._point=4;default:$m(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function QH(e){return new hD(e)}function mD(e,t){this._basis=new $v(e),this._beta=t}mD.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var e=this._x,t=this._y,n=e.length-1;if(n>0)for(var r=e[0],l=t[0],o=e[n]-r,u=t[n]-l,c=-1,h;++c<=n;)h=c/n,this._basis.point(this._beta*e[c]+(1-this._beta)*(r+h*o),this._beta*t[c]+(1-this._beta)*(l+h*u));this._x=this._y=null,this._basis.lineEnd()},point:function(e,t){this._x.push(+e),this._y.push(+t)}};(function e(t){function n(r){return t===1?new $v(r):new mD(r,t)}return n.beta=function(r){return e(+r)},n})(.85);function Bm(e,t,n){e._context.bezierCurveTo(e._x1+e._k*(e._x2-e._x0),e._y1+e._k*(e._y2-e._y0),e._x2+e._k*(e._x1-t),e._y2+e._k*(e._y1-n),e._x2,e._y2)}function MS(e,t){this._context=e,this._k=(1-t)/6}MS.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:Bm(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2,this._x1=e,this._y1=t;break;case 2:this._point=3;default:Bm(this,e,t);break}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};(function e(t){function n(r){return new MS(r,t)}return n.tension=function(r){return e(+r)},n})(0);function DS(e,t){this._context=e,this._k=(1-t)/6}DS.prototype={areaStart:kl,areaEnd:kl,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x3=e,this._y3=t;break;case 1:this._point=2,this._context.moveTo(this._x4=e,this._y4=t);break;case 2:this._point=3,this._x5=e,this._y5=t;break;default:Bm(this,e,t);break}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};(function e(t){function n(r){return new DS(r,t)}return n.tension=function(r){return e(+r)},n})(0);function PS(e,t){this._context=e,this._k=(1-t)/6}PS.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Bm(this,e,t);break}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};(function e(t){function n(r){return new PS(r,t)}return n.tension=function(r){return e(+r)},n})(0);function kS(e,t,n){var r=e._x1,l=e._y1,o=e._x2,u=e._y2;if(e._l01_a>XE){var c=2*e._l01_2a+3*e._l01_a*e._l12_a+e._l12_2a,h=3*e._l01_a*(e._l01_a+e._l12_a);r=(r*c-e._x0*e._l12_2a+e._x2*e._l01_2a)/h,l=(l*c-e._y0*e._l12_2a+e._y2*e._l01_2a)/h}if(e._l23_a>XE){var m=2*e._l23_2a+3*e._l23_a*e._l12_a+e._l12_2a,v=3*e._l23_a*(e._l23_a+e._l12_a);o=(o*m+e._x1*e._l23_2a-t*e._l12_2a)/v,u=(u*m+e._y1*e._l23_2a-n*e._l12_2a)/v}e._context.bezierCurveTo(r,l,o,u,e._x2,e._y2)}function vD(e,t){this._context=e,this._alpha=t}vD.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){if(e=+e,t=+t,this._point){var n=this._x2-e,r=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3;default:kS(this,e,t);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};(function e(t){function n(r){return t?new vD(r,t):new MS(r,0)}return n.alpha=function(r){return e(+r)},n})(.5);function gD(e,t){this._context=e,this._alpha=t}gD.prototype={areaStart:kl,areaEnd:kl,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(e,t){if(e=+e,t=+t,this._point){var n=this._x2-e,r=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=e,this._y3=t;break;case 1:this._point=2,this._context.moveTo(this._x4=e,this._y4=t);break;case 2:this._point=3,this._x5=e,this._y5=t;break;default:kS(this,e,t);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};(function e(t){function n(r){return t?new gD(r,t):new DS(r,0)}return n.alpha=function(r){return e(+r)},n})(.5);function pD(e,t){this._context=e,this._alpha=t}pD.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){if(e=+e,t=+t,this._point){var n=this._x2-e,r=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+r*r,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:kS(this,e,t);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};(function e(t){function n(r){return t?new pD(r,t):new PS(r,0)}return n.alpha=function(r){return e(+r)},n})(.5);function yD(e){this._context=e}yD.prototype={areaStart:kl,areaEnd:kl,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(e,t){e=+e,t=+t,this._point?this._context.lineTo(e,t):(this._point=1,this._context.moveTo(e,t))}};function ZH(e){return new yD(e)}function QE(e){return e<0?-1:1}function ZE(e,t,n){var r=e._x1-e._x0,l=t-e._x1,o=(e._y1-e._y0)/(r||l<0&&-0),u=(n-e._y1)/(l||r<0&&-0),c=(o*l+u*r)/(r+l);return(QE(o)+QE(u))*Math.min(Math.abs(o),Math.abs(u),.5*Math.abs(c))||0}function WE(e,t){var n=e._x1-e._x0;return n?(3*(e._y1-e._y0)/n-t)/2:t}function _x(e,t,n){var r=e._x0,l=e._y0,o=e._x1,u=e._y1,c=(o-r)/3;e._context.bezierCurveTo(r+c,l+c*t,o-c,u-c*n,o,u)}function Hm(e){this._context=e}Hm.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:_x(this,this._t0,WE(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){var n=NaN;if(e=+e,t=+t,!(e===this._x1&&t===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,_x(this,WE(this,n=ZE(this,e,t)),n);break;default:_x(this,this._t0,n=ZE(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=n}}};function xD(e){this._context=new bD(e)}(xD.prototype=Object.create(Hm.prototype)).point=function(e,t){Hm.prototype.point.call(this,t,e)};function bD(e){this._context=e}bD.prototype={moveTo:function(e,t){this._context.moveTo(t,e)},closePath:function(){this._context.closePath()},lineTo:function(e,t){this._context.lineTo(t,e)},bezierCurveTo:function(e,t,n,r,l,o){this._context.bezierCurveTo(t,e,r,n,o,l)}};function WH(e){return new Hm(e)}function JH(e){return new xD(e)}function SD(e){this._context=e}SD.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var e=this._x,t=this._y,n=e.length;if(n)if(this._line?this._context.lineTo(e[0],t[0]):this._context.moveTo(e[0],t[0]),n===2)this._context.lineTo(e[1],t[1]);else for(var r=JE(e),l=JE(t),o=0,u=1;u=0;--t)l[t]=(u[t]-l[t+1])/o[t];for(o[n-1]=(e[n]+l[n-1])/2,t=0;t=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var n=this._x*(1-this._t)+e*this._t;this._context.lineTo(n,this._y),this._context.lineTo(n,t)}break}}this._x=e,this._y=t}};function tF(e){return new Bv(e,.5)}function nF(e){return new Bv(e,0)}function rF(e){return new Bv(e,1)}function Go(e,t){if((u=e.length)>1)for(var n=1,r,l,o=e[t[0]],u,c=o.length;n=0;)n[t]=t;return n}function iF(e,t){return e[t]}function aF(e){const t=[];return t.key=e,t}function lF(){var e=Ut([]),t=W0,n=Go,r=iF;function l(o){var u=Array.from(e.apply(this,arguments),aF),c,h=u.length,m=-1,v;for(const p of o)for(c=0,++m;c0){for(var n,r,l=0,o=e[0].length,u;l0){for(var n=0,r=e[t[0]],l,o=r.length;n0)||!((o=(l=e[t[0]]).length)>0))){for(var n=0,r=1,l,o,u;r"radius"in e&&"startAngle"in e&&"endAngle"in e,IS=(e,t)=>{if(!e||typeof e=="function"||typeof e=="boolean")return null;var n=e;if(b.isValidElement(e)&&(n=e.props),typeof n!="object"&&typeof n!="function")return null;var r={};return Object.keys(n).forEach(l=>{AS(l)&&typeof n[l]=="function"&&(r[l]=(o=>n[l](n,o)))}),r},cF=(e,t,n)=>r=>(e(t,n,r),null),fF=(e,t,n)=>{if(e===null||typeof e!="object"&&typeof e!="function")return null;var r=null;return Object.keys(e).forEach(l=>{var o=e[l];AS(l)&&typeof o=="function"&&(r||(r={}),r[l]=cF(o,t,n))}),r};function eO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function dF(e){for(var t=1;t(u[c]===void 0&&r[c]!==void 0&&(u[c]=r[c]),u),n);return o}function gF(e,t){const n=new Map;for(let r=0;r=0}function zS(e){return e!=null&&typeof e!="function"&&yF(e.length)}function xF(e){return function(t){return es(t,e)}}function CD(e){return e==null||typeof e!="object"&&typeof e!="function"}function Io(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}const _D="[object RegExp]",LS="[object String]",US="[object Number]",$S="[object Boolean]",AD="[object Arguments]",ED="[object Symbol]",OD="[object Date]",ND="[object Map]",TD="[object Set]",RD="[object Array]",bF="[object Function]",MD="[object ArrayBuffer]",Om="[object Object]",SF="[object Error]",DD="[object DataView]",PD="[object Uint8Array]",kD="[object Uint8ClampedArray]",ID="[object Uint16Array]",zD="[object Uint32Array]",wF="[object BigUint64Array]",LD="[object Int8Array]",UD="[object Int16Array]",$D="[object Int32Array]",jF="[object BigInt64Array]",BD="[object Float32Array]",HD="[object Float64Array]";function jf(e,t){return e===t||Number.isNaN(e)&&Number.isNaN(t)}function FD(e){return e!==null&&(typeof e=="object"||typeof e=="function")}function VD(e,t,n){return typeof n!="function"?VD(e,t,()=>{}):J0(e,t,function r(l,o,u,c,h,m){const v=n(l,o,u,c,h,m);return v!==void 0?!!v:J0(l,o,r,m,!1)},new Map,!0)}function J0(e,t,n,r,l=!1){if(t===e)return!0;switch(typeof t){case"object":return CF(e,t,n,r,l);case"function":return Object.keys(t).length>0?J0(e,Object.assign({},t),n,r,l):jf(e,t);default:return FD(e)&&l?typeof t=="string"?t==="":!0:jf(e,t)}}function CF(e,t,n,r,l=!1){if(t==null)return!0;if(Array.isArray(t))return GD(e,t,n,r);if(t instanceof Map)return _F(e,t,n,r);if(t instanceof Set)return AF(e,t,n,r);const o=Object.keys(t);if(e==null)return l&&o.length===0;if(l)CD(e)&&(e=Object(e));else{if(Io(t)==="[object Error]")return Io(e)==="[object Error]"&&e.name===t.name&&e.message===t.message;const u=Io(e);if(u!=="[object Object]"&&u!=="[object Arguments]")return!1}if(o.length===0)return!0;if(r!=null&&r.has(t))return r.get(t)===e;r==null||r.set(t,e);try{for(let u=0;u{})}function eb(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.prototype.propertyIsEnumerable.call(e,t))}const tO=typeof globalThis=="object"&&globalThis||typeof window=="object"&&window||typeof self=="object"&&self||typeof global=="object"&&global||(function(){return this})();function tb(e){return typeof tO.Buffer<"u"&&tO.Buffer.isBuffer(e)}function EF(e){return tb(e)}function OF(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function NF(e){return OF(e)}function TF(e,t){return du(e,void 0,e,new Map)}function du(e,t,n,r,l){if(CD(e))return e;if(r.has(e))return r.get(e);if(Array.isArray(e)){const u=new Array(e.length);r.set(e,u);for(let c=0;c{u.set(h,du(c,h,n,r))}),u}if(e instanceof Set){const u=new Set;return r.set(e,u),e.forEach(c=>{u.add(du(c,void 0,n,r))}),u}if(EF(e))return e.subarray();if(NF(e)){const u=new(Object.getPrototypeOf(e)).constructor(e.length);r.set(e,u);for(let c=0;cqD(t,e)}const DF=/^(?:0|[1-9]\d*)$/;function YD(e,t=Number.MAX_SAFE_INTEGER){switch(typeof e){case"number":return Number.isInteger(e)&&e>=0&&e!t||v.kind===t),c=Math.max(1,Math.ceil(u.length/o)),h=u.slice((r-1)*o,r*o),m=j6(h);return f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Лента событий"}),f.jsxs(ht,{className:"space-y-2",children:[f.jsx("p",{children:"Время - МСК. Нажмите на часы, чтобы увидеть секунды."}),f.jsxs("select",{className:hH,value:t,"aria-label":"Тип события",onChange:v=>{l(1),n(v.target.value)},children:[f.jsx("option",{value:"",children:"Все события"}),f.jsx("option",{value:"pay",children:"Оплата"}),f.jsx("option",{value:"promo",children:"Промо"}),f.jsx("option",{value:"activate",children:"Активация"}),f.jsx("option",{value:"fail",children:"Отказ"}),f.jsx("option",{value:"admin",children:"Админ"}),f.jsx("option",{value:"device",children:"Смена устройства"})]})]})]}),f.jsxs(xe,{children:[h.length===0?f.jsx("p",{className:"text-muted-foreground",children:"Пока пусто"}):null,f.jsx("div",{className:"space-y-4",children:m.map(v=>f.jsxs("section",{children:[f.jsx("h3",{className:"sticky top-0 z-10 bg-card py-1 text-sm font-semibold",children:v.title}),f.jsx("ol",{className:"ml-2 border-l border-border",children:v.items.map((g,x)=>f.jsxs("li",{className:"relative pb-4 pl-4",children:[f.jsx("span",{className:"absolute -left-[7px] top-1.5 h-3 w-3 rounded-full border-2 border-primary bg-card","aria-hidden":!0}),f.jsxs("div",{className:"flex flex-wrap items-center gap-x-2 gap-y-1",children:[f.jsx(dt,{ms:g.at,variant:"time"}),f.jsx(vH,{kind:g.kind}),f.jsx("span",{className:"text-sm font-medium",children:bS(g.actor,{deviceId:g.deviceId,fallback:"система"})})]}),f.jsx("p",{className:"mt-1 text-sm",children:g.text}),g.accountId?f.jsx("a",{className:"text-sm text-primary",href:"/admin/?id="+encodeURIComponent(g.accountId),children:"карточка"}):null]},v.key+"-"+x))})]},v.key))}),f.jsx(Iv,{page:r,pages:c,total:u.length,onPage:l})]})]})}const Nf="h-10 rounded-md border border-input bg-secondary px-3 text-sm text-foreground";function pH({run:e}){const[t,n]=b.useState(""),[r,l]=b.useState(""),[o,u]=b.useState("telegram"),[c,h]=b.useState("30"),[m,v]=b.useState("1");return f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Выдать код"}),f.jsx(ht,{children:"Дней - срок новой подписки. Если подписка уже есть, код добавляется к ней, дата окончания не меняется."})]}),f.jsxs(xe,{className:"space-y-3",children:[f.jsxs("div",{className:"grid gap-2 md:grid-cols-5",children:[f.jsx($e,{placeholder:"Telegram id",value:t,onChange:g=>n(g.target.value)}),f.jsx($e,{placeholder:"Почта",value:r,onChange:g=>l(g.target.value)}),f.jsxs("select",{className:Nf,value:o,onChange:g=>u(g.target.value),"aria-label":"Куда отправить",children:[f.jsx("option",{value:"telegram",children:"Telegram"}),f.jsx("option",{value:"email",children:"Почта"}),f.jsx("option",{value:"none",children:"Только показать"})]}),f.jsxs("select",{className:Nf,value:c,onChange:g=>h(g.target.value),"aria-label":"Дней",children:[f.jsx("option",{value:"1",children:"1 день"}),f.jsx("option",{value:"7",children:"7 дней"}),f.jsx("option",{value:"30",children:"30 дней"}),f.jsx("option",{value:"90",children:"90 дней"}),f.jsx("option",{value:"365",children:"365 дней"})]}),f.jsx(he,{onClick:()=>void e("/admin/issue",{telegramId:t,email:r,channel:o,days:c}),children:"Выдать"})]}),f.jsxs("div",{className:"flex flex-wrap items-end gap-2",children:[f.jsxs("label",{className:"space-y-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Сколько кодов"}),f.jsx($e,{type:"number",min:1,max:100,value:m,onChange:g=>v(g.target.value)})]}),f.jsx(he,{variant:"secondary",onClick:()=>{const g=Number(m)||1;window.confirm("Создать "+g+" новых кодов на "+c+" дн.?")&&e("/admin/issue-bulk",{count:g,days:c}).then(x=>{var w;const S=((w=x==null?void 0:x.extra)==null?void 0:w.codes)||[];S.length&&($M("omp-codes.csv",[["код","аккаунт","до"]].concat(S.map(j=>[j.code,j.accountId||"",j.paidUntil?new Date(j.paidUntil).toISOString().slice(0,10):""]))),rt("CSV со кодами скачан"))})},children:"Создать пакетом"})]})]})]})}function yH({run:e,promos:t}){const[n,r]=b.useState(""),[l,o]=b.useState("1"),[u,c]=b.useState("1"),[h,m]=b.useState("1"),[v,g]=b.useState("0"),[x,S]=b.useState(""),[w,j]=b.useState(""),[C,E]=b.useState("0");return f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Промокоды"})}),f.jsxs(xe,{className:"space-y-4",children:[f.jsxs("div",{className:"grid gap-2 md:grid-cols-7",children:[f.jsxs("label",{className:"space-y-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Код"}),f.jsx($e,{placeholder:"пусто = сгенерировать",value:n,onChange:N=>r(N.target.value)})]}),f.jsxs("label",{className:"space-y-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Дней"}),f.jsx($e,{type:"number",value:l,onChange:N=>o(N.target.value)})]}),f.jsxs("label",{className:"space-y-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Бонусных устройств"}),f.jsx($e,{type:"number",min:0,max:20,value:v,onChange:N=>g(N.target.value)})]}),f.jsxs("label",{className:"space-y-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Бонус на дней"}),f.jsx($e,{type:"number",min:0,placeholder:"пусто = навсегда",value:x,onChange:N=>S(N.target.value)})]}),f.jsxs("label",{className:"space-y-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Активаций"}),f.jsx($e,{type:"number",value:u,onChange:N=>c(N.target.value)})]}),f.jsxs("label",{className:"space-y-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Истекает, дней"}),f.jsx($e,{type:"number",min:0,placeholder:"пусто = без срока",value:w,onChange:N=>j(N.target.value)})]}),f.jsxs("label",{className:"space-y-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Скидка, %"}),f.jsx($e,{type:"number",min:0,max:100,value:C,onChange:N=>E(N.target.value)})]}),f.jsxs("label",{className:"space-y-1 text-sm",children:[f.jsx("span",{className:"text-muted-foreground",children:"Количество"}),f.jsx($e,{type:"number",min:1,max:100,value:h,onChange:N=>m(N.target.value)})]}),f.jsx("div",{className:"flex items-end",children:f.jsx(he,{onClick:()=>{const N=Number(h)||1;e("/admin/promo",{code:n,days:l,maxUses:u,count:N,bonusSlots:v,bonusDays:x,expiresDays:w,discountPercent:C}).then(O=>{var R;const T=((R=O==null?void 0:O.extra)==null?void 0:R.promos)||[];T.length>1&&$M("omp-promos-new.csv",[["код","дней","активаций","бонусных устройств","бонус на дней"]].concat(T.map(A=>[A.code,String(A.days),String(A.maxUses),String(A.bonusSlots||0),A.bonusSlots?String(A.bonusDays||0):""])))})},children:"Создать"})})]}),f.jsx("div",{className:"flex flex-wrap gap-3 text-sm",children:f.jsx("a",{className:"text-primary",href:"/admin/promos.csv",children:"Скачать все промокоды (CSV)"})}),f.jsxs(Wn,{className:"min-w-[36rem]",children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Код"}),f.jsx(Se,{children:"Дни"}),f.jsx(Se,{children:"Бонус"}),f.jsx(Se,{children:"Создан"}),f.jsx(Se,{children:"Использования"}),f.jsx(Se,{})]})}),f.jsxs(er,{children:[t.length===0?f.jsx(qe,{children:f.jsx(me,{colSpan:6,className:"text-muted-foreground",children:"Нет промокодов"})}):null,t.map(N=>{const O=N.uses>=N.maxUses;return f.jsxs(qe,{children:[f.jsxs(me,{children:[f.jsx("span",{className:N.revoked?"text-muted-foreground":"font-mono",children:N.code})," ",f.jsx(ko,{value:N.code})]}),f.jsx(me,{children:N.days}),f.jsx(me,{children:N.bonusSlots?"+"+N.bonusSlots+" устр. "+(N.bonusDays?"на "+N.bonusDays+" дн.":"навсегда"):f.jsx("span",{className:"text-muted-foreground",children:"-"})}),f.jsx(me,{className:"whitespace-nowrap",children:f.jsx(dt,{ms:N.createdAt})}),f.jsxs(me,{children:[N.uses,"/",N.maxUses]}),f.jsx(me,{children:N.revoked?f.jsx("span",{className:"text-muted-foreground",children:"отозван"}):O?f.jsx("span",{className:"text-muted-foreground",children:"использован"}):f.jsx(he,{size:"sm",variant:"secondary",onClick:()=>{window.confirm("Отозвать промокод "+N.code+"?")&&e("/admin/promo-revoke",{promoId:N.id})},children:"Отозвать"})})]},N.id)})]})]})]})]})}function xH({subs:e,filter:t,setFilter:n,csrf:r}){const l=e.filter(u=>m6(u,t)),o=g6(e);return f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Подписки"}),f.jsx(ht,{children:f.jsx("span",{className:"flex flex-wrap gap-1",children:[["all","Все"],["active","Активные"],["week","Истекают за 7 дней"],["unbound","Без устройства"],["grace","Льготный период"],["expired","Истекшие"]].map(([u,c])=>f.jsx(he,{size:"sm",variant:t===u?"default":"secondary",onClick:()=>n(u),children:c},u))})})]}),f.jsxs(xe,{className:"space-y-3",children:[f.jsxs("div",{className:"flex flex-wrap gap-3 text-sm",children:[f.jsx("a",{className:"text-primary",href:"/admin/subscriptions.csv",children:"Скачать подписки (CSV)"}),f.jsx("a",{className:"text-primary",href:"/admin/users.csv",children:"Скачать пользователей (CSV)"}),f.jsxs(he,{size:"sm",variant:"secondary",disabled:o.length===0,onClick:()=>{o.length&&window.confirm("Отправить напоминание "+o.length+" пользователям в Telegram?")&&(async()=>{let u=0;for(let c=0;cf.jsxs(qe,{children:[f.jsxs(me,{children:[u.who,f.jsx(ko,{value:u.telegramId})]}),f.jsx(me,{className:"whitespace-nowrap",children:f.jsx(dt,{ms:u.createdAt})}),f.jsx(me,{className:"whitespace-nowrap",children:f.jsx(dt,{ms:u.paidUntil})}),f.jsx(me,{children:f.jsx(IM,{status:u.status})}),f.jsxs(me,{children:[f.jsx(d6,{bound:u.bound,limit:u.deviceLimit,over:u.overLimit}),(u.creditRub||0)>0?f.jsxs("span",{className:"text-xs text-muted-foreground",children:["зачёт ",u.creditRub," ₽"]}):null,u.limitOverride?f.jsx("span",{className:"ml-1 text-xs text-amber-300",title:u.limitText,children:"индивид."}):null]}),f.jsx(me,{children:f.jsx("a",{className:"text-primary",href:"/admin/?id="+encodeURIComponent(u.accountId),children:"карточка"})})]},u.id))]})]})]})]})}function bH({rows:e}){return e.length?f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Проблемы"})}),f.jsx(xe,{children:f.jsx("ul",{className:"space-y-3 text-sm",children:e.map((t,n)=>{const r=[t.amount?t.amount+" ₽":"",t.label||"",t.operationId||""].filter(Boolean);return f.jsxs("li",{className:"rounded-md border border-red-900/50 bg-red-950/30 px-3 py-2",children:[f.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[f.jsx(Oe,{variant:"bad",children:LM(t.kind)}),f.jsx(dt,{ms:t.at})]}),f.jsx("div",{className:"mt-1 break-all text-zinc-100",children:r.length?r.join(" · "):t.text||"Нет подробностей"})]},n)})})})]}):null}function Cx(e){if(!e)return"";const t=Math.round(e*1e8)/1e8;return String(t)}function SH({row:e}){const t=e&&e.yoomoney,n=e&&e.stars,r=e&&e.crypto,l=(o,u)=>f.jsxs("div",{children:[f.jsx("div",{className:"text-sm font-medium",children:o}),f.jsx("div",{className:"text-xs text-muted-foreground",children:u.filter(Boolean).join(" · ")})]});return f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Выручка за 30 дней по способам"}),f.jsx(ht,{children:"Рубли звёзд и крипты - цена заказа на момент оплаты. Возврат звёзд в сумму не входит."})]}),f.jsxs(xe,{className:"grid gap-3 sm:grid-cols-3",children:[l("ЮMoney",[Math.round((t==null?void 0:t.rub)||0)+" ₽",((t==null?void 0:t.count)||0)+" оплат"]),l("Звёзды",[Math.round((n==null?void 0:n.stars)||0)+" звёзд",Math.round((n==null?void 0:n.rub)||0)+" ₽",((n==null?void 0:n.count)||0)+" оплат"]),l("Крипта",[r!=null&&r.usdt?Cx(r.usdt)+" USDT":"",r!=null&&r.ton?Cx(r.ton)+" TON":"",r!=null&&r.btc?Cx(r.btc)+" BTC":"",Math.round((r==null?void 0:r.rub)||0)+" ₽",((r==null?void 0:r.count)||0)+" оплат"])]})]})}function wH({home:e}){var C,E,N,O,T,R,A,D,k,I;const[t,n]=b.useState(null),[r,l]=b.useState(0),[o,u]=b.useState(1),[c,h]=b.useState(""),[m,v]=b.useState("30"),[g,x]=b.useState(30),S=20;b.useEffect(()=>{let P=!1;const B=Date.now(),F=m==="all"?0:B-Number(m)*24*60*60*1e3,se=new URLSearchParams({q:c,offset:String((o-1)*S),limit:String(S)});return F&&se.set("from",String(F)),st("/admin/api/payments?"+se.toString()).then(ue=>{P||ue.auth===!1||(n(ue.payments||[]),l(ue.total||0))}),()=>{P=!0}},[o,c,m]);const w=(e.series||[]).slice(g===30?-30:-90),j=Math.max(1,Math.ceil(r/S));return f.jsxs("div",{className:"space-y-4",children:[f.jsx("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-3",children:[[(E=(C=e.finance)==null?void 0:C.summary)==null?void 0:E.day,"сегодня"],[(O=(N=e.finance)==null?void 0:N.summary)==null?void 0:O.week,"неделя"],[(R=(T=e.finance)==null?void 0:T.summary)==null?void 0:R.month,"месяц"]].map(([P,B])=>f.jsx(ye,{children:f.jsxs(xe,{className:"pt-4",children:[f.jsx("div",{className:"text-2xl font-bold",children:Math.round((P==null?void 0:P.sum)||0)}),f.jsxs("div",{className:"text-xs text-muted-foreground",children:["₽ ",B," · ",(P==null?void 0:P.count)||0]})]})},B))}),f.jsxs(ye,{children:[f.jsxs(Ne,{className:"flex flex-row flex-wrap items-center justify-between gap-2",children:[f.jsx(Te,{children:"Графики"}),f.jsxs("div",{className:"flex gap-2",children:[f.jsx(he,{size:"sm",variant:g===30?"default":"secondary",onClick:()=>x(30),children:"30 дней"}),f.jsx(he,{size:"sm",variant:g===90?"default":"secondary",onClick:()=>x(90),children:"90 дней"})]})]}),f.jsxs(xe,{className:"grid gap-6 lg:grid-cols-2",children:[f.jsx(MA,{rows:w,field:"revenue",label:"Выручка по дням, ₽"}),f.jsx(MA,{rows:w,field:"subs",label:"Новые подписки по дням"})]})]}),f.jsx(SH,{row:(k=(D=(A=e.finance)==null?void 0:A.summary)==null?void 0:D.month)==null?void 0:k.byMethod}),f.jsx("p",{children:f.jsx("a",{className:"text-primary",href:"/admin/finance.csv",children:"Скачать CSV за 30 дней"})}),f.jsx(bH,{rows:((I=e.finance)==null?void 0:I.problems)||[]}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Платежи"})}),f.jsxs(xe,{className:"space-y-3",children:[f.jsxs("div",{className:"flex flex-wrap gap-2",children:[f.jsx($e,{className:"max-w-xs",placeholder:"Поиск: кто, метка, сумма",value:c,onChange:P=>{u(1),h(P.target.value)}}),f.jsxs("select",{className:Nf,value:m,"aria-label":"Период",onChange:P=>{u(1),v(P.target.value)},children:[f.jsx("option",{value:"7",children:"7 дней"}),f.jsx("option",{value:"30",children:"30 дней"}),f.jsx("option",{value:"90",children:"90 дней"}),f.jsx("option",{value:"all",children:"Все"})]})]}),t===null?f.jsxs("div",{className:"space-y-2",children:[f.jsx(rn,{className:"h-8"}),f.jsx(rn,{className:"h-8"})]}):f.jsxs(Wn,{className:"min-w-[40rem]",children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Когда, МСК"}),f.jsx(Se,{children:"Сумма"}),f.jsx(Se,{children:"Способ"}),f.jsx(Se,{children:"Кто"}),f.jsx(Se,{children:"Метка"})]})}),f.jsxs(er,{children:[t.length===0?f.jsx(qe,{children:f.jsx(me,{colSpan:5,className:"text-muted-foreground",children:"Нет платежей"})}):null,t.map((P,B)=>f.jsxs(qe,{children:[f.jsx(me,{className:"whitespace-nowrap",children:f.jsx(dt,{ms:P.at})}),f.jsx(me,{children:P.amount||"-"}),f.jsx(me,{children:UM(P)}),f.jsx(me,{children:P.accountId?f.jsx("a",{className:"text-primary",href:"/admin/?id="+encodeURIComponent(P.accountId),children:P.who||P.accountId.slice(0,8)}):P.who||"-"}),f.jsx(me,{className:"break-all font-mono text-xs text-muted-foreground",children:P.label||"-"})]},(P.operationId||"")+B))]})]}),f.jsx(Iv,{page:o,pages:j,total:r,onPage:u})]})]})]})}const YA=[{title:"Бот",fields:[["botToken","Токен бота"],["botUsername","Имя бота"],["publicOrigin","Публичный адрес"],["adminTelegramIds","Telegram id администраторов"],["adminReaders","Telegram id только для просмотра"],["betaPercent","Процент беты (0-100)"]]},{title:"Платежи",fields:[["yoomoneyWallet","Кошелёк ЮMoney"],["yoomoneySecret","Секрет ЮMoney"],["cryptoPayToken","Токен Crypto Pay"],["cryptoPayTestnetToken","Токен Crypto Pay (testnet)"]]},{title:"Звёзды",fields:[["starsPrice","Подписка, звёзд"],["starsExtra","Доп. устройство, звёзд"]]},{title:"Крипта",fields:[["cryptoUsdt","Подписка, USDT"],["cryptoExtraUsdt","Доп. устройство, USDT"],["cryptoRateUsdt","Курс USDT, ₽ за 1"],["cryptoTon","Подписка, TON"],["cryptoExtraTon","Доп. устройство, TON"],["cryptoRateTon","Курс TON, ₽ за 1"],["cryptoBtc","Подписка, BTC"],["cryptoExtraBtc","Доп. устройство, BTC"],["cryptoRateBtc","Курс BTC, ₽ за 1"]]},{title:"SMTP",fields:[["smtpHost","SMTP-сервер"],["smtpUser","SMTP-логин"],["smtpPass","SMTP-пароль"],["smtpFrom","SMTP-отправитель"]]},{title:"Цены",fields:[["priceRub","Цена, ₽"],["periodDays","Период, дней"],["baseDevices","Базовых устройств в подписке (1-20; кроме индивидуальных лимитов)"],["extraDeviceRub","Доп. устройство, ₽ в месяц"],["graceDays","Льготный период, дней"],["publicPromo","Промокод на пробный день (бот покажет, пока он действует)"]]},{title:"Бэкапы Postgres",fields:[["backupEveryHours","Делать дамп каждые, часов (1-168)"],["backupKeepDays","Хранить дампы, дней (1-365; последний не удаляется)"]]},{title:"DHT",fields:[["dhtPerMinute","Запросов в минуту на устройство (0-1000, 0 выключает, по умолчанию 30)"]]}],XA=new Set(["botToken","yoomoneySecret","cryptoPayToken","cryptoPayTestnetToken","smtpPass","jackettApiKey","jacredApiKey","indexerPass"]);function yf({name:e,label:t,view:n,fallback:r}){const l=n?n.text:r||"не задан";return f.jsxs("div",{className:"space-y-1",children:[f.jsx(yt,{htmlFor:e,children:t}),f.jsx($e,{id:e,value:l,readOnly:!0,disabled:!0}),f.jsxs("p",{className:"text-xs text-muted-foreground",children:["Меняется на сервере: ",n?n.env:"переменная"," в .env, затем перезапуск billing.",n&&n.source==="db"?f.jsx("span",{className:"text-destructive",children:" Сейчас ещё в базе - перенесите в .env."}):null]})]})}function jH({backup:e}){if(!e||!e.enabled)return f.jsx(ht,{children:"Бэкапы Postgres на этом сервере не настроены (нет BILLING_PG_BACKUP_DIR)."});const t=e.last;return f.jsxs(ht,{children:[t?"Последний дамп: "+zi(t.at)+" · "+DA(t.size):"Дампов ещё нет"," · всего "+e.count+" ("+DA(e.totalBytes)+")",e.stale?f.jsx("span",{className:"text-destructive",children:" · бэкап устарел"}):null,e.lastError?f.jsxs("span",{className:"text-destructive",children:[" · ошибка: ",e.lastError]}):null,e.verify?f.jsx("span",{className:e.verify.ok?"":"text-destructive",children:" · проверка архива: "+(e.verify.ok?"список читается":e.verify.error||"ошибка")}):null]})}function CH({run:e,settings:t,storage:n,backup:r,secrets:l}){const[o,u]=b.useState({}),[c,h]=b.useState(!0),[m,v]=b.useState(!1),[g,x]=b.useState(!1),[S,w]=b.useState(!1),[j,C]=b.useState(!1),E=b.useRef(!1),[N,O]=b.useState(null),T=R=>e("/admin/settings",{...o,adminNotify:c?"true":"false",starsEnabled:m?"true":"false",cryptoEnabled:g?"true":"false",cryptoTestnet:S?"true":"false",cryptoNonRu:j?"true":"false",...R?{confirm:"yes"}:{}}).then(A=>{var D;return(D=A==null?void 0:A.flash)!=null&&D.error||(E.current=!1),A});return b.useEffect(()=>{if(E.current)return;const R={};for(const A of YA)for(const[D]of A.fields)XA.has(D)||(R[D]=String(t[D]??""));u(R),h(t.adminNotify!==!1),v(t.starsEnabled===!0),x(t.cryptoEnabled===!0),w(t.cryptoTestnet===!0),C(t.cryptoNonRu===!0)},[t]),f.jsxs("form",{className:"space-y-4",onSubmit:R=>{R.preventDefault();const A=Number(o.baseDevices),D=Number(t.baseDevices);if(Number.isInteger(A)&&A>=1&&Number.isFinite(D)&&Af.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:R.title}),R.title==="Платежи"?f.jsx(ht,{children:"Кошелёк показывается частично. Чтобы сменить, введите новый номер целиком."}):null,R.title==="Бэкапы Postgres"?f.jsx(jH,{backup:r}):null,R.title==="DHT"?f.jsx(ht,{children:"Лимит кнопки «Проверить сиды»: сколько запросов /v1/dht-peers устройство может сделать за минуту. После сохранения действует это число. Пока поле ни разу не сохраняли, запасной предел берется из BILLING_DHT_DEVICE_MAX."}):null]}),f.jsxs(xe,{className:"grid gap-3 md:grid-cols-2",children:[R.fields.map(([A,D])=>XA.has(A)?f.jsx(yf,{name:A,label:D,view:(l||[]).find(k=>k.key===A),fallback:String(t[A]??"")},A):f.jsxs("div",{className:"space-y-1",children:[f.jsx(yt,{htmlFor:A,children:D}),f.jsx($e,{id:A,value:o[A]||"",onChange:k=>{E.current=!0,u({...o,[A]:k.target.value})}})]},A)),R.title==="Бот"?f.jsxs("label",{className:"flex items-center gap-2 text-sm md:col-span-2",children:[f.jsx("input",{type:"checkbox",checked:c,onChange:A=>{E.current=!0,h(A.target.checked)}}),"Уведомлять администраторов в Telegram (оплата, ошибка оплаты, падение сервиса, новое сообщение поддержки)"]}):null,R.title==="Звёзды"?f.jsxs("label",{className:"flex items-center gap-2 text-sm md:col-span-2",children:[f.jsx("input",{type:"checkbox",checked:m,onChange:A=>{E.current=!0,v(A.target.checked)}}),"Принимать Telegram Stars. По умолчанию выключено. Комиссия сверху не добавляется."]}):null,R.title==="Крипта"?f.jsxs("div",{className:"space-y-2 md:col-span-2",children:[f.jsxs("label",{className:"flex items-center gap-2 text-sm",children:[f.jsx("input",{type:"checkbox",checked:g,onChange:A=>{E.current=!0,x(A.target.checked)}}),"Принимать Crypto Pay (USDT, TON, BTC). По умолчанию выключено."]}),f.jsxs("label",{className:"flex items-center gap-2 text-sm",children:[f.jsx("input",{type:"checkbox",checked:S,onChange:A=>{E.current=!0,w(A.target.checked)}}),"Тестовая сеть Crypto Pay (testnet-pay.crypt.bot). Токен этого режима:"," ",String(S?t.cryptoPayTestnetToken||"не задан":t.cryptoPayToken||"не задан"),"."]}),f.jsxs("label",{className:"flex items-center gap-2 text-sm",children:[f.jsx("input",{type:"checkbox",checked:j,onChange:A=>{E.current=!0,C(A.target.checked)}}),"Только пользователям не из РФ. Без кода страны или с кодом RU ссылка не выдаётся."]})]}):null]})]},R.title)),N?f.jsxs(Bt,{variant:"warn",children:[f.jsxs("p",{children:["Базовых устройств станет ",N.to," (сейчас ",N.from,"). Затронет подписок без индивидуального лимита: ",N.subscriptions,", перестанут работать устройств: ",N.devices," - последние привязанные сверх нового лимита. Ничего не отвязывается, при возврате базы они заработают снова."]}),f.jsxs("div",{className:"mt-2 flex gap-2",children:[f.jsxs(he,{type:"button",size:"sm",variant:"destructive",onClick:()=>{O(null),T(!0)},children:["Да, снизить до ",N.to]}),f.jsx(he,{type:"button",size:"sm",variant:"ghost",onClick:()=>O(null),children:"Отмена"})]})]}):null,f.jsx(he,{type:"submit",children:"Сохранить"})]})}function _H({row:e,checking:t}){return t&&!e?f.jsx(Oe,{variant:"secondary",children:"проверка…"}):e?e.configured?e.ok?f.jsxs(Oe,{variant:"ok",children:["работает · ",e.latencyMs," мс"]}):f.jsx(Oe,{variant:"bad",children:P6(e.error)}):f.jsx(Oe,{variant:"secondary",children:"не настроено"}):f.jsx(Oe,{variant:"secondary",children:"нет данных"})}function QA({csrf:e,settings:t,secrets:n,onSaved:r}){const l=O=>(n||[]).find(T=>T.key===O),[o,u]=b.useState({jackettUrl:String(t.jackettUrl??""),jackettEnabled:t.jackettEnabled!==!1,jacredUrl:String(t.jacredUrl??""),jacredEnabled:t.jacredEnabled!==!1,bitmagnetUrl:String(t.bitmagnetUrl??""),bitmagnetEnabled:t.bitmagnetEnabled===!0,torrserverUrl:String(t.torrserverUrl??""),indexerUser:String(t.indexerUser??"")}),[c,h]=b.useState(null),[m,v]=b.useState(null),[g,x]=b.useState(!1),[S,w]=b.useState(0),[j,C]=b.useState("");b.useEffect(()=>{u({jackettUrl:String(t.jackettUrl??""),jackettEnabled:t.jackettEnabled!==!1,jacredUrl:String(t.jacredUrl??""),jacredEnabled:t.jacredEnabled!==!1,bitmagnetUrl:String(t.bitmagnetUrl??""),bitmagnetEnabled:t.bitmagnetEnabled===!0,torrserverUrl:String(t.torrserverUrl??""),indexerUser:String(t.indexerUser??"")})},[t]);async function E(O){x(!0),C("");try{const T=await st("/admin/api/services");if(T.auth===!1){C("Нужен вход");return}h(T.services||null),v(T.botPoll||null);const R=Date.now();w(R),O||rt("Сервисы проверены · "+zi(R))}catch(T){C(T instanceof Error?T.message:"Не удалось проверить сервисы")}finally{x(!1)}}b.useEffect(()=>{E(!1)},[]);async function N(O){O.preventDefault(),x(!0),C("");try{if((await an("/admin/services",e,{...o,jackettEnabled:o.jackettEnabled?"true":"false",jacredEnabled:o.jacredEnabled?"true":"false",bitmagnetEnabled:o.bitmagnetEnabled?"true":"false"})).auth===!1){C("Нужен вход");return}rt("Сервисы сохранены"),r(),await E(!0)}catch(T){C(T instanceof Error?T.message:"Не удалось сохранить")}finally{x(!1)}}return f.jsxs("div",{className:"space-y-4",children:[f.jsxs(ye,{children:[f.jsxs(Ne,{className:"flex flex-row flex-wrap items-center justify-between gap-2",children:[f.jsxs("div",{children:[f.jsx(Te,{children:"Сервисы VPS"}),f.jsxs(ht,{children:["Ключи только на сервере. Телефон ходит через billing при активной подписке. TorrServer на VPS - для мониторинга, не для пользователей.",S?" Проверено "+zi(S)+".":""]})]}),f.jsx(he,{type:"button",variant:"secondary",disabled:g,onClick:()=>void E(!1),children:g?"Проверка…":"Проверить сейчас"})]}),f.jsxs(xe,{className:"space-y-3",children:[f.jsx(EH,{poll:m}),f.jsx("div",{className:"grid gap-3 lg:grid-cols-3",children:g&&!c?f.jsxs(f.Fragment,{children:[f.jsx(rn,{className:"h-24"}),f.jsx(rn,{className:"h-24"}),f.jsx(rn,{className:"h-24"})]}):f.jsxs(f.Fragment,{children:[f.jsx(nm,{title:"Jackett",row:c==null?void 0:c.jackett,fallback:o.jackettUrl,note:"подписчикам: "+(o.jackettEnabled?"вкл":"выкл"),checking:g}),f.jsx(nm,{title:"JacRed",row:c==null?void 0:c.jacred,fallback:o.jacredUrl,note:"подписчикам: "+(o.jacredEnabled?"вкл":"выкл"),checking:g}),f.jsx(nm,{title:"bitmagnet",row:c==null?void 0:c.bitmagnet,fallback:o.bitmagnetUrl,note:"подписчикам: "+(o.bitmagnetEnabled?"вкл":"выкл"),checking:g}),f.jsx(nm,{title:"TorrServer",row:c==null?void 0:c.torrserver,fallback:o.torrserverUrl,note:"только мониторинг",checking:g})]})})]})]}),f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Настройки сервисов"}),f.jsx(ht,{children:"Ключи и пароль - только для чтения: они в .env на сервере."})]}),f.jsx(xe,{children:f.jsxs("form",{className:"space-y-4",onSubmit:O=>void N(O),children:[f.jsxs("div",{className:"grid gap-3 md:grid-cols-2",children:[f.jsx(rf,{id:"jackettUrl",label:"Адрес Jackett",value:o.jackettUrl,onChange:O=>u({...o,jackettUrl:O}),placeholder:"http://jackett:9117"}),f.jsx(yf,{name:"jackettApiKey",label:"Ключ API Jackett",view:l("jackettApiKey"),fallback:String(t.jackettApiKey??"")}),f.jsx(_x,{label:"Jackett доступен подписчикам",checked:o.jackettEnabled,onChange:O=>u({...o,jackettEnabled:O})}),f.jsx(rf,{id:"jacredUrl",label:"Адрес JacRed",value:o.jacredUrl,onChange:O=>u({...o,jacredUrl:O}),placeholder:"http://jacred:9117"}),f.jsx(yf,{name:"jacredApiKey",label:"Ключ API JacRed",view:l("jacredApiKey"),fallback:String(t.jacredApiKey??"")}),f.jsx(_x,{label:"JacRed доступен подписчикам",checked:o.jacredEnabled,onChange:O=>u({...o,jacredEnabled:O})}),f.jsx(rf,{id:"bitmagnetUrl",label:"Адрес bitmagnet",value:o.bitmagnetUrl,onChange:O=>u({...o,bitmagnetUrl:O}),placeholder:"http://127.0.0.1:3333"}),f.jsx(yf,{name:"bitmagnetApiKey",label:"Ключ API bitmagnet",view:l("bitmagnetApiKey"),fallback:String(t.bitmagnetApiKey??"")}),f.jsx(_x,{label:"bitmagnet доступен подписчикам",checked:o.bitmagnetEnabled,onChange:O=>u({...o,bitmagnetEnabled:O})}),f.jsx(rf,{id:"torrserverUrl",label:"Адрес TorrServer (только мониторинг)",value:o.torrserverUrl,onChange:O=>u({...o,torrserverUrl:O}),placeholder:"http://torrserver:8090",wide:!0}),f.jsx(rf,{id:"indexerUser",label:"Логин basic-авторизации",value:o.indexerUser,onChange:O=>u({...o,indexerUser:O}),placeholder:"omp"}),f.jsx(yf,{name:"indexerPass",label:"Пароль basic-авторизации",view:l("indexerPass"),fallback:String(t.indexerPass??"")})]}),j?f.jsx(Bt,{variant:"destructive",children:j}):null,f.jsx(he,{type:"submit",disabled:g,children:"Сохранить"})]})})]})]})}function EH({poll:e}){const t=!!(e&&e.enabled&&e.conflictRecent);return f.jsxs("p",{className:"flex flex-wrap items-center gap-2 text-sm",children:[f.jsx("span",{children:Z8(e)}),e&&e.enabled?t?f.jsx(Oe,{variant:"bad",children:"конфликт 409"}):f.jsx(Oe,{variant:"ok",children:"без конфликта"}):null]})}function nm({title:e,row:t,fallback:n,note:r,checking:l}){return f.jsxs("div",{className:"rounded-md border border-border p-3",children:[f.jsxs("div",{className:"mb-1 flex items-center justify-between gap-2",children:[f.jsx("span",{className:"font-medium",children:e}),f.jsx(_H,{row:t,checking:l})]}),f.jsx("div",{className:"truncate text-xs text-muted-foreground",children:(t==null?void 0:t.url)||n||"-"}),f.jsx("div",{className:"text-xs text-muted-foreground",children:r})]})}function rf({id:e,label:t,value:n,onChange:r,placeholder:l,wide:o}){return f.jsxs("div",{className:"space-y-1 "+(o?"md:col-span-2":""),children:[f.jsx(yt,{htmlFor:e,children:t}),f.jsx($e,{id:e,value:n,placeholder:l,onChange:u=>r(u.target.value)})]})}function _x({label:e,checked:t,onChange:n}){return f.jsxs("label",{className:"flex items-center gap-2 text-sm md:col-span-2",children:[f.jsx("input",{type:"checkbox",checked:t,onChange:r=>n(r.target.checked)}),e]})}function AH(){const[e,t]=b.useState(""),[n,r]=b.useState(""),[l,o]=b.useState(1),[u,c]=b.useState(null),[h,m]=b.useState(0),v=30;b.useEffect(()=>{let x=!1;const S=new URLSearchParams({q:e,action:n,offset:String((l-1)*v),limit:String(v)});return st("/admin/api/audit?"+S).then(w=>{x||w.auth===!1||(c(w.audit||[]),m(w.total||0))}),()=>{x=!0}},[e,n,l]);const g=Math.max(1,Math.ceil(h/v));return f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Журнал"})}),f.jsxs(xe,{className:"space-y-3",children:[f.jsxs("div",{className:"flex flex-wrap gap-2",children:[f.jsx($e,{className:"max-w-xs",placeholder:"Поиск",value:e,onChange:x=>{o(1),t(x.target.value)}}),f.jsx("select",{className:Nf,value:n,"aria-label":"Действие",onChange:x=>{o(1),r(x.target.value)},children:k6.map(([x,S])=>f.jsx("option",{value:x,children:S},x||"all"))})]}),u===null?f.jsx(rn,{className:"h-24"}):u.length===0?f.jsx("p",{className:"text-sm text-muted-foreground",children:"Записей нет"}):f.jsx("ul",{className:"space-y-1 text-sm",children:u.map((x,S)=>f.jsxs("li",{className:"flex flex-wrap items-baseline gap-x-2 gap-y-1",children:[f.jsx(dt,{ms:x.at}),f.jsx("span",{children:bS(x.actor,{fallback:"админ"})}),f.jsx("span",{children:D6(x.action)}),f.jsx("span",{className:"text-muted-foreground",children:x.detail})]},S))}),f.jsx(Iv,{page:l,pages:g,total:h,onPage:o})]})]})}function OH(){const[e,t]=b.useState(""),[n,r]=b.useState(""),[l,o]=b.useState(1),[u,c]=b.useState(null),[h,m]=b.useState(0),v=30;b.useEffect(()=>{let x=!1;const S=new URLSearchParams({reason:e,q:n,offset:String((l-1)*v),limit:String(v)});return st("/admin/api/fails?"+S).then(w=>{x||w.auth===!1||(c(w.fails||[]),m(w.total||0))}),()=>{x=!0}},[e,n,l]);const g=Math.max(1,Math.ceil(h/v));return f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Неудачные активации"})}),f.jsxs(xe,{className:"space-y-3",children:[f.jsxs("div",{className:"flex flex-wrap gap-2",children:[f.jsx($e,{className:"max-w-xs",placeholder:"Устройство",value:n,onChange:x=>{o(1),r(x.target.value)}}),f.jsx("select",{className:Nf,value:e,"aria-label":"Причина",onChange:x=>{o(1),t(x.target.value)},children:I6.map(([x,S])=>f.jsx("option",{value:x,children:S},x||"all"))})]}),u===null?f.jsx(rn,{className:"h-24"}):f.jsxs(Wn,{className:"min-w-[32rem]",children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Когда, МСК"}),f.jsx(Se,{children:"Причина"}),f.jsx(Se,{children:"Устройство"})]})}),f.jsxs(er,{children:[u.length===0?f.jsx(qe,{children:f.jsx(me,{colSpan:3,className:"text-muted-foreground",children:"Отказов нет"})}):null,u.map((x,S)=>f.jsxs(qe,{children:[f.jsx(me,{className:"whitespace-nowrap",children:f.jsx(dt,{ms:x.at})}),f.jsx(me,{children:M6(x.reason)}),f.jsx(me,{className:"font-mono text-xs",children:x.deviceId?x.deviceId.slice(0,8):"-"})]},S))]})]}),f.jsx(Iv,{page:l,pages:g,total:h,onPage:o})]})]})}function NH({run:e,sessions:t,sessionId:n}){return f.jsx("div",{className:"space-y-4",children:f.jsxs(ye,{children:[f.jsxs(Ne,{children:[f.jsx(Te,{children:"Сессии"}),f.jsx(ht,{children:"Вход только через Telegram. Время - МСК."})]}),f.jsx(xe,{children:f.jsxs(Wn,{className:"min-w-[36rem]",children:[f.jsx(Jn,{children:f.jsxs(qe,{children:[f.jsx(Se,{children:"Сессия"}),f.jsx(Se,{children:"Кто"}),f.jsx(Se,{children:"Создана"}),f.jsx(Se,{children:"Активность"}),f.jsx(Se,{})]})}),f.jsx(er,{children:t.map(r=>f.jsxs(qe,{children:[f.jsxs(me,{children:[r.id.slice(0,8),"…",r.id===n?" (эта)":""]}),f.jsx(me,{children:bS(r.actor,{fallback:"админ"})}),f.jsx(me,{className:"whitespace-nowrap",children:f.jsx(dt,{ms:r.createdAt})}),f.jsx(me,{className:"whitespace-nowrap",children:f.jsx(dt,{ms:r.lastSeen})}),f.jsx(me,{children:r.id!==n?f.jsx(he,{size:"sm",variant:"secondary",onClick:()=>void e("/admin/session-revoke",{sessionId:r.id}),children:"Завершить"}):null})]},r.id))})]})})]})})}const tD=b.createContext({paused:!1,setPaused:()=>{},mode:"poll",at:0});function zv(){return b.useContext(tD)}function TH({children:e}){const t=Jb(),[n,r]=b.useState(!1),[l,o]=b.useState("poll"),[u,c]=b.useState(0),h=b.useRef(l);return h.current=l,b.useEffect(()=>{if(n){o("pause");return}let m=!1,v=null,g=0,x=1e3;const S=()=>{c(Date.now()),t.invalidateQueries(),window.dispatchEvent(new Event("omp-admin-live"))},w=()=>{m||(v=new EventSource("/admin/api/events"),v.onopen=()=>{x=1e3,o("live"),c(Date.now())},v.onmessage=()=>{o("live"),S()},v.onerror=()=>{v&&v.close(),o("poll"),!m&&(g=window.setTimeout(w,x),x=Math.min(15e3,x*2))})};return w(),()=>{m=!0,v&&v.close(),window.clearTimeout(g)}},[n,t]),b.useEffect(()=>{if(n)return;const m=window.setInterval(()=>{h.current!=="live"&&window.dispatchEvent(new Event("omp-admin-live"))},12e3);return()=>window.clearInterval(m)},[n]),f.jsx(tD.Provider,{value:{paused:n,setPaused:r,mode:l,at:u},children:e})}function ZA(){const{paused:e,setPaused:t,mode:n,at:r}=zv(),l=n==="pause"?"пауза":n==="live"?"в эфире":"опрос",o=r?new Date(r).toLocaleTimeString("ru-RU",{hour:"2-digit",minute:"2-digit",second:"2-digit"}):"-";return f.jsxs("div",{className:"flex items-center gap-2 text-xs text-muted-foreground",children:[f.jsx("span",{className:n==="live"?"text-primary":"",children:l}),f.jsx("span",{className:"font-mono",children:o}),f.jsx("button",{type:"button",className:"rounded-md border border-border px-2 py-1 text-foreground",onClick:()=>t(!e),children:e?"Продолжить":"Пауза"})]})}var RH=["dangerouslySetInnerHTML","onCopy","onCopyCapture","onCut","onCutCapture","onPaste","onPasteCapture","onCompositionEnd","onCompositionEndCapture","onCompositionStart","onCompositionStartCapture","onCompositionUpdate","onCompositionUpdateCapture","onFocus","onFocusCapture","onBlur","onBlurCapture","onChange","onChangeCapture","onBeforeInput","onBeforeInputCapture","onInput","onInputCapture","onReset","onResetCapture","onSubmit","onSubmitCapture","onInvalid","onInvalidCapture","onLoad","onLoadCapture","onError","onErrorCapture","onKeyDown","onKeyDownCapture","onKeyPress","onKeyPressCapture","onKeyUp","onKeyUpCapture","onAbort","onAbortCapture","onCanPlay","onCanPlayCapture","onCanPlayThrough","onCanPlayThroughCapture","onDurationChange","onDurationChangeCapture","onEmptied","onEmptiedCapture","onEncrypted","onEncryptedCapture","onEnded","onEndedCapture","onLoadedData","onLoadedDataCapture","onLoadedMetadata","onLoadedMetadataCapture","onLoadStart","onLoadStartCapture","onPause","onPauseCapture","onPlay","onPlayCapture","onPlaying","onPlayingCapture","onProgress","onProgressCapture","onRateChange","onRateChangeCapture","onSeeked","onSeekedCapture","onSeeking","onSeekingCapture","onStalled","onStalledCapture","onSuspend","onSuspendCapture","onTimeUpdate","onTimeUpdateCapture","onVolumeChange","onVolumeChangeCapture","onWaiting","onWaitingCapture","onAuxClick","onAuxClickCapture","onClick","onClickCapture","onContextMenu","onContextMenuCapture","onDoubleClick","onDoubleClickCapture","onDrag","onDragCapture","onDragEnd","onDragEndCapture","onDragEnter","onDragEnterCapture","onDragExit","onDragExitCapture","onDragLeave","onDragLeaveCapture","onDragOver","onDragOverCapture","onDragStart","onDragStartCapture","onDrop","onDropCapture","onMouseDown","onMouseDownCapture","onMouseEnter","onMouseLeave","onMouseMove","onMouseMoveCapture","onMouseOut","onMouseOutCapture","onMouseOver","onMouseOverCapture","onMouseUp","onMouseUpCapture","onSelect","onSelectCapture","onTouchCancel","onTouchCancelCapture","onTouchEnd","onTouchEndCapture","onTouchMove","onTouchMoveCapture","onTouchStart","onTouchStartCapture","onPointerDown","onPointerDownCapture","onPointerMove","onPointerMoveCapture","onPointerUp","onPointerUpCapture","onPointerCancel","onPointerCancelCapture","onPointerEnter","onPointerEnterCapture","onPointerLeave","onPointerLeaveCapture","onPointerOver","onPointerOverCapture","onPointerOut","onPointerOutCapture","onGotPointerCapture","onGotPointerCaptureCapture","onLostPointerCapture","onLostPointerCaptureCapture","onScroll","onScrollCapture","onWheel","onWheelCapture","onAnimationStart","onAnimationStartCapture","onAnimationEnd","onAnimationEndCapture","onAnimationIteration","onAnimationIterationCapture","onTransitionEnd","onTransitionEndCapture"];function OS(e){if(typeof e!="string")return!1;var t=RH;return t.includes(e)}var MH=["aria-activedescendant","aria-atomic","aria-autocomplete","aria-busy","aria-checked","aria-colcount","aria-colindex","aria-colspan","aria-controls","aria-current","aria-describedby","aria-details","aria-disabled","aria-errormessage","aria-expanded","aria-flowto","aria-haspopup","aria-hidden","aria-invalid","aria-keyshortcuts","aria-label","aria-labelledby","aria-level","aria-live","aria-modal","aria-multiline","aria-multiselectable","aria-orientation","aria-owns","aria-placeholder","aria-posinset","aria-pressed","aria-readonly","aria-relevant","aria-required","aria-roledescription","aria-rowcount","aria-rowindex","aria-rowspan","aria-selected","aria-setsize","aria-sort","aria-valuemax","aria-valuemin","aria-valuenow","aria-valuetext","className","color","height","id","lang","max","media","method","min","name","style","target","width","role","tabIndex","accentHeight","accumulate","additive","alignmentBaseline","allowReorder","alphabetic","amplitude","arabicForm","ascent","attributeName","attributeType","autoReverse","azimuth","baseFrequency","baselineShift","baseProfile","bbox","begin","bias","by","calcMode","capHeight","clip","clipPath","clipPathUnits","clipRule","colorInterpolation","colorInterpolationFilters","colorProfile","colorRendering","contentScriptType","contentStyleType","cursor","cx","cy","d","decelerate","descent","diffuseConstant","direction","display","divisor","dominantBaseline","dur","dx","dy","edgeMode","elevation","enableBackground","end","exponent","externalResourcesRequired","fill","fillOpacity","fillRule","filter","filterRes","filterUnits","floodColor","floodOpacity","focusable","fontFamily","fontSize","fontSizeAdjust","fontStretch","fontStyle","fontVariant","fontWeight","format","from","fx","fy","g1","g2","glyphName","glyphOrientationHorizontal","glyphOrientationVertical","glyphRef","gradientTransform","gradientUnits","hanging","horizAdvX","horizOriginX","href","ideographic","imageRendering","in2","in","intercept","k1","k2","k3","k4","k","kernelMatrix","kernelUnitLength","kerning","keyPoints","keySplines","keyTimes","lengthAdjust","letterSpacing","lightingColor","limitingConeAngle","local","markerEnd","markerHeight","markerMid","markerStart","markerUnits","markerWidth","mask","maskContentUnits","maskUnits","mathematical","mode","numOctaves","offset","opacity","operator","order","orient","orientation","origin","overflow","overlinePosition","overlineThickness","paintOrder","panose1","pathLength","patternContentUnits","patternTransform","patternUnits","pointerEvents","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","r","radius","refX","refY","renderingIntent","repeatCount","repeatDur","requiredExtensions","requiredFeatures","restart","result","rotate","rx","ry","seed","shapeRendering","slope","spacing","specularConstant","specularExponent","speed","spreadMethod","startOffset","stdDeviation","stemh","stemv","stitchTiles","stopColor","stopOpacity","strikethroughPosition","strikethroughThickness","string","stroke","strokeDasharray","strokeDashoffset","strokeLinecap","strokeLinejoin","strokeMiterlimit","strokeOpacity","strokeWidth","surfaceScale","systemLanguage","tableValues","targetX","targetY","textAnchor","textDecoration","textLength","textRendering","to","transform","u1","u2","underlinePosition","underlineThickness","unicode","unicodeBidi","unicodeRange","unitsPerEm","vAlphabetic","values","vectorEffect","version","vertAdvY","vertOriginX","vertOriginY","vHanging","vIdeographic","viewTarget","visibility","vMathematical","widths","wordSpacing","writingMode","x1","x2","x","xChannelSelector","xHeight","xlinkActuate","xlinkArcrole","xlinkHref","xlinkRole","xlinkShow","xlinkTitle","xlinkType","xmlBase","xmlLang","xmlns","xmlnsXlink","xmlSpace","y1","y2","y","yChannelSelector","z","zoomAndPan","ref","key","angle"],DH=new Set(MH);function nD(e){return typeof e!="string"?!1:DH.has(e)}function rD(e){return typeof e=="string"&&e.startsWith("data-")}function Bi(e){if(typeof e!="object"||e===null)return{};var t={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(nD(n)||rD(n))&&(t[n]=e[n]);return t}function Lv(e){if(e==null)return null;if(b.isValidElement(e)&&typeof e.props=="object"&&e.props!==null){var t=e.props;return Bi(t)}return typeof e=="object"&&!Array.isArray(e)?Bi(e):null}function Xr(e){var t={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(nD(n)||rD(n)||OS(n))&&(t[n]=e[n]);return t}function PH(e){return e==null?null:b.isValidElement(e)?Xr(e.props):typeof e=="object"&&!Array.isArray(e)?Xr(e):null}var kH=["children","width","height","viewBox","className","style","title","desc"];function X0(){return X0=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var n=e.children,r=e.width,l=e.height,o=e.viewBox,u=e.className,c=e.style,h=e.title,m=e.desc,v=IH(e,kH),g=o||{width:r,height:l,x:0,y:0},x=Ct("recharts-surface",u);return b.createElement("svg",X0({},Xr(v),{className:x,width:r,height:l,style:c,viewBox:"".concat(g.x," ").concat(g.y," ").concat(g.width," ").concat(g.height),ref:t}),b.createElement("title",null,h),b.createElement("desc",null,m),n)}),LH=["children","className"];function Q0(){return Q0=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var n=e.children,r=e.className,l=UH(e,LH),o=Ct("recharts-layer",r);return b.createElement("g",Q0({className:o},Xr(l),{ref:t}),n)});function Z0(e){return e==="__proto__"}const BH=Object.prototype.hasOwnProperty;function Pu(e,t){return BH.call(e,t)}const HH=/\.|(\[(?:[^[\]]*|(["'])(?:(?!\2)[^\\]|\\.)*?\2)\])/;function aD(e){switch(typeof e){case"number":case"symbol":return!1;case"string":return e===""||e.startsWith(".")||e.endsWith(".")?!1:HH.test(e);default:return!1}}function Uv(e){var t;return typeof e=="string"||typeof e=="symbol"?e:Object.is(e==null||(t=e.valueOf)===null||t===void 0?void 0:t.call(e),-0)?"-0":String(e)}function NS(e){return typeof e=="symbol"||e instanceof Symbol}function lD(e){if(typeof e=="string")return e;if(Array.isArray(e)){let n="";for(let r=0;r0&&(n+=","),n+=lD(e[r]);return n}if(NS(e))return e.toString();const t=e+"";return t==="0"&&Object.is(Number(e),-0)?"-0":t}function FH(e){return e==null?"":lD(e)}function TS(e){if(Array.isArray(e))return e.map(Uv);if(typeof e=="symbol")return[e];e=FH(e);const t=[],n=e.length;if(n===0)return t;let r=0,l="",o="",u=!1,c=!1;const h=/^-?\d+(?:\.\d+)?$/;for(e.charCodeAt(0)===46&&t.push("");r1&&arguments[1]!==void 0?arguments[1]:GH,n=10**t,r=Math.round(e*n)/n;return Object.is(r,-0)?0:r}function Tn(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r{var c=n[u-1];return typeof c=="string"?l+c+o:c!==void 0?l+ga(c)+o:l+o},"")}var Vr=e=>e===0?0:e>0?1:-1,Ea=e=>typeof e=="number"&&e!=+e,Vo=e=>typeof e=="string"&&e.length>1&&e.indexOf("%")===e.length-1,Re=e=>(typeof e=="number"||e instanceof Number)&&!Ea(e),Hi=e=>Re(e)||typeof e=="string",qH=0,Tf=e=>{var t=++qH;return"".concat(e||"").concat(t)},Pl=function(t,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,l=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(!Re(t)&&typeof t!="string")return r;var o;if(Vo(t)){if(n==null)return r;var u=t.indexOf("%");o=n*parseFloat(t.slice(0,u))/100}else o=+t;return Ea(o)&&(o=r),l&&n!=null&&o>n&&(o=n),o},oD=e=>{if(!Array.isArray(e))return!1;for(var t=e.length,n={},r=0;rr&&(typeof t=="function"?t(r):es(r,t))===n)}var yn=e=>e===null||typeof e>"u",RS=e=>yn(e)?e:"".concat(e.charAt(0).toUpperCase()).concat(e.slice(1));function ur(e){return e!=null}function Ku(){}function MS(e){if(e)return{x:e.x,y:e.y,upperWidth:"upperWidth"in e?e.upperWidth:e.width,lowerWidth:"lowerWidth"in e?e.lowerWidth:e.width,width:e.width,height:e.height}}function WA(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function Ei(e){for(var t=1;t{var t=e.viewBox,n=e.position,r=e.offset,l=r===void 0?0:r,o=e.parentViewBox,u=MS(t),c=u.x,h=u.y,m=u.height,v=u.upperWidth,g=u.lowerWidth,x=c,S=c+(v-g)/2,w=(x+S)/2,j=(v+g)/2,C=x+v/2,E=m>=0?1:-1,N=E*l,O=E>0?"end":"start",T=E>0?"start":"end",R=v>=0?1:-1,A=R*l,D=R>0?"end":"start",k=R>0?"start":"end",I=o;if(n==="top"){var P={x:x+v/2,y:h-N,horizontalAnchor:"middle",verticalAnchor:O};return I&&(P.height=Math.max(h-I.y,0),P.width=v),P}if(n==="bottom"){var B={x:S+g/2,y:h+m+N,horizontalAnchor:"middle",verticalAnchor:T};return I&&(B.height=Math.max(I.y+I.height-(h+m),0),B.width=g),B}if(n==="left"){var F={x:w-A,y:h+m/2,horizontalAnchor:D,verticalAnchor:"middle"};return I&&(F.width=Math.max(F.x-I.x,0),F.height=m),F}if(n==="right"){var se={x:w+j+A,y:h+m/2,horizontalAnchor:k,verticalAnchor:"middle"};return I&&(se.width=Math.max(I.x+I.width-se.x,0),se.height=m),se}var ue=I?{width:j,height:m}:{};return n==="insideLeft"?Ei({x:w+A,y:h+m/2,horizontalAnchor:k,verticalAnchor:"middle"},ue):n==="insideRight"?Ei({x:w+j-A,y:h+m/2,horizontalAnchor:D,verticalAnchor:"middle"},ue):n==="insideTop"?Ei({x:x+v/2,y:h+N,horizontalAnchor:"middle",verticalAnchor:T},ue):n==="insideBottom"?Ei({x:S+g/2,y:h+m-N,horizontalAnchor:"middle",verticalAnchor:O},ue):n==="insideTopLeft"?Ei({x:x+A,y:h+N,horizontalAnchor:k,verticalAnchor:T},ue):n==="insideTopRight"?Ei({x:x+v-A,y:h+N,horizontalAnchor:D,verticalAnchor:T},ue):n==="insideBottomLeft"?Ei({x:S+A,y:h+m-N,horizontalAnchor:k,verticalAnchor:O},ue):n==="insideBottomRight"?Ei({x:S+g-A,y:h+m-N,horizontalAnchor:D,verticalAnchor:O},ue):n&&typeof n=="object"&&(Re(n.x)||Vo(n.x))&&(Re(n.y)||Vo(n.y))?Ei({x:c+Pl(n.x,j),y:h+Pl(n.y,m),horizontalAnchor:"end",verticalAnchor:"end"},ue):Ei({x:C,y:h+m/2,horizontalAnchor:"middle",verticalAnchor:"middle"},ue)},ZH=["top","left","right","bottom"];function WH(e){return e==null?!1:typeof e=="object"?!0:ZH.includes(e)}var JH=b.createContext(null);const xf=Math.PI,W0=2*xf,yo=1e-6,eF=W0-yo;function uD(e){this._+=e[0];for(let t=1,n=e.length;t=0))throw new Error(`invalid digits: ${e}`);if(t>15)return uD;const n=10**t;return function(r){this._+=r[0];for(let l=1,o=r.length;lyo)if(!(Math.abs(g*h-m*v)>yo)||!o)this._append`L${this._x1=t},${this._y1=n}`;else{let S=r-u,w=l-c,j=h*h+m*m,C=S*S+w*w,E=Math.sqrt(j),N=Math.sqrt(x),O=o*Math.tan((xf-Math.acos((j+x-C)/(2*E*N)))/2),T=O/N,R=O/E;Math.abs(T-1)>yo&&this._append`L${t+T*v},${n+T*g}`,this._append`A${o},${o},0,0,${+(g*S>v*w)},${this._x1=t+R*h},${this._y1=n+R*m}`}}arc(t,n,r,l,o,u){if(t=+t,n=+n,r=+r,u=!!u,r<0)throw new Error(`negative radius: ${r}`);let c=r*Math.cos(l),h=r*Math.sin(l),m=t+c,v=n+h,g=1^u,x=u?l-o:o-l;if(this._x1===null?this._append`M${m},${v}`:(Math.abs(this._x1-m)>yo||Math.abs(this._y1-v)>yo)&&this._append`L${m},${v}`,!!r){if(x<0&&(x=x%W0+W0),x>eF)this._append`A${r},${r},0,1,${g},${t-c},${n-h}A${r},${r},0,1,${g},${this._x1=m},${this._y1=v}`;else if(x>yo){const S=t+r*Math.cos(o),w=n+r*Math.sin(o);if(x>=xf&&this._equal(m,v,S,w)){x/=2;let j=l+x;this._append`A${r},${r},0,${+(x>=xf)},${g},${t+r*Math.cos(j)},${n+r*Math.sin(j)}`}this._append`A${r},${r},0,${+(x>=xf)},${g},${this._x1=S},${this._y1=w}`}}}rect(t,n,r,l){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}h${r=+r}v${+l}h${-r}Z`}toString(){return this._}}function Ut(e){return function(){return e}}const JA=1e-12;function fD(e){let t=3;return e.digits=function(n){if(!arguments.length)return t;if(n==null)t=null;else{const r=Math.floor(n);if(!(r>=0))throw new RangeError(`invalid digits: ${n}`);t=r}return e},()=>new rF(t)}function DS(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function dD(e){this._context=e}dD.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t);break}}};function $v(e){return new dD(e)}function hD(e){return e[0]}function mD(e){return e[1]}function vD(e,t){var n=Ut(!0),r=null,l=$v,o=null,u=fD(c);e=typeof e=="function"?e:e===void 0?hD:Ut(e),t=typeof t=="function"?t:t===void 0?mD:Ut(t);function c(h){var m,v=(h=DS(h)).length,g,x=!1,S;for(r==null&&(o=l(S=u())),m=0;m<=v;++m)!(m=S;--w)c.point(O[w],T[w]);c.lineEnd(),c.areaEnd()}E&&(O[x]=+e(C,x,g),T[x]=+t(C,x,g),c.point(r?+r(C,x,g):O[x],n?+n(C,x,g):T[x]))}if(N)return c=null,N+""||null}function v(){return vD().defined(l).curve(u).context(o)}return m.x=function(g){return arguments.length?(e=typeof g=="function"?g:Ut(+g),r=null,m):e},m.x0=function(g){return arguments.length?(e=typeof g=="function"?g:Ut(+g),m):e},m.x1=function(g){return arguments.length?(r=g==null?null:typeof g=="function"?g:Ut(+g),m):r},m.y=function(g){return arguments.length?(t=typeof g=="function"?g:Ut(+g),n=null,m):t},m.y0=function(g){return arguments.length?(t=typeof g=="function"?g:Ut(+g),m):t},m.y1=function(g){return arguments.length?(n=g==null?null:typeof g=="function"?g:Ut(+g),m):n},m.lineX0=m.lineY0=function(){return v().x(e).y(t)},m.lineY1=function(){return v().x(e).y(n)},m.lineX1=function(){return v().x(r).y(t)},m.defined=function(g){return arguments.length?(l=typeof g=="function"?g:Ut(!!g),m):l},m.curve=function(g){return arguments.length?(u=g,o!=null&&(c=u(o)),m):u},m.context=function(g){return arguments.length?(g==null?o=c=null:c=u(o=g),m):o},m}class gD{constructor(t,n){this._context=t,this._x=n}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(t,n){switch(t=+t,n=+n,this._point){case 0:{this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,n,t,n):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+n)/2,t,this._y0,t,n);break}}this._x0=t,this._y0=n}}function iF(e){return new gD(e,!0)}function aF(e){return new gD(e,!1)}function kl(){}function Bm(e,t,n){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+n)/6)}function Bv(e){this._context=e}Bv.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:Bm(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:Bm(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function lF(e){return new Bv(e)}function pD(e){this._context=e}pD.prototype={areaStart:kl,areaEnd:kl,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:Bm(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function oF(e){return new pD(e)}function yD(e){this._context=e}yD.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var n=(this._x0+4*this._x1+e)/6,r=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(n,r):this._context.moveTo(n,r);break;case 3:this._point=4;default:Bm(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function sF(e){return new yD(e)}function xD(e,t){this._basis=new Bv(e),this._beta=t}xD.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var e=this._x,t=this._y,n=e.length-1;if(n>0)for(var r=e[0],l=t[0],o=e[n]-r,u=t[n]-l,c=-1,h;++c<=n;)h=c/n,this._basis.point(this._beta*e[c]+(1-this._beta)*(r+h*o),this._beta*t[c]+(1-this._beta)*(l+h*u));this._x=this._y=null,this._basis.lineEnd()},point:function(e,t){this._x.push(+e),this._y.push(+t)}};(function e(t){function n(r){return t===1?new Bv(r):new xD(r,t)}return n.beta=function(r){return e(+r)},n})(.85);function Hm(e,t,n){e._context.bezierCurveTo(e._x1+e._k*(e._x2-e._x0),e._y1+e._k*(e._y2-e._y0),e._x2+e._k*(e._x1-t),e._y2+e._k*(e._y1-n),e._x2,e._y2)}function PS(e,t){this._context=e,this._k=(1-t)/6}PS.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:Hm(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2,this._x1=e,this._y1=t;break;case 2:this._point=3;default:Hm(this,e,t);break}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};(function e(t){function n(r){return new PS(r,t)}return n.tension=function(r){return e(+r)},n})(0);function kS(e,t){this._context=e,this._k=(1-t)/6}kS.prototype={areaStart:kl,areaEnd:kl,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x3=e,this._y3=t;break;case 1:this._point=2,this._context.moveTo(this._x4=e,this._y4=t);break;case 2:this._point=3,this._x5=e,this._y5=t;break;default:Hm(this,e,t);break}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};(function e(t){function n(r){return new kS(r,t)}return n.tension=function(r){return e(+r)},n})(0);function IS(e,t){this._context=e,this._k=(1-t)/6}IS.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Hm(this,e,t);break}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};(function e(t){function n(r){return new IS(r,t)}return n.tension=function(r){return e(+r)},n})(0);function zS(e,t,n){var r=e._x1,l=e._y1,o=e._x2,u=e._y2;if(e._l01_a>JA){var c=2*e._l01_2a+3*e._l01_a*e._l12_a+e._l12_2a,h=3*e._l01_a*(e._l01_a+e._l12_a);r=(r*c-e._x0*e._l12_2a+e._x2*e._l01_2a)/h,l=(l*c-e._y0*e._l12_2a+e._y2*e._l01_2a)/h}if(e._l23_a>JA){var m=2*e._l23_2a+3*e._l23_a*e._l12_a+e._l12_2a,v=3*e._l23_a*(e._l23_a+e._l12_a);o=(o*m+e._x1*e._l23_2a-t*e._l12_2a)/v,u=(u*m+e._y1*e._l23_2a-n*e._l12_2a)/v}e._context.bezierCurveTo(r,l,o,u,e._x2,e._y2)}function bD(e,t){this._context=e,this._alpha=t}bD.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){if(e=+e,t=+t,this._point){var n=this._x2-e,r=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3;default:zS(this,e,t);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};(function e(t){function n(r){return t?new bD(r,t):new PS(r,0)}return n.alpha=function(r){return e(+r)},n})(.5);function SD(e,t){this._context=e,this._alpha=t}SD.prototype={areaStart:kl,areaEnd:kl,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(e,t){if(e=+e,t=+t,this._point){var n=this._x2-e,r=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=e,this._y3=t;break;case 1:this._point=2,this._context.moveTo(this._x4=e,this._y4=t);break;case 2:this._point=3,this._x5=e,this._y5=t;break;default:zS(this,e,t);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};(function e(t){function n(r){return t?new SD(r,t):new kS(r,0)}return n.alpha=function(r){return e(+r)},n})(.5);function wD(e,t){this._context=e,this._alpha=t}wD.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){if(e=+e,t=+t,this._point){var n=this._x2-e,r=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+r*r,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:zS(this,e,t);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};(function e(t){function n(r){return t?new wD(r,t):new IS(r,0)}return n.alpha=function(r){return e(+r)},n})(.5);function jD(e){this._context=e}jD.prototype={areaStart:kl,areaEnd:kl,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(e,t){e=+e,t=+t,this._point?this._context.lineTo(e,t):(this._point=1,this._context.moveTo(e,t))}};function uF(e){return new jD(e)}function eO(e){return e<0?-1:1}function tO(e,t,n){var r=e._x1-e._x0,l=t-e._x1,o=(e._y1-e._y0)/(r||l<0&&-0),u=(n-e._y1)/(l||r<0&&-0),c=(o*l+u*r)/(r+l);return(eO(o)+eO(u))*Math.min(Math.abs(o),Math.abs(u),.5*Math.abs(c))||0}function nO(e,t){var n=e._x1-e._x0;return n?(3*(e._y1-e._y0)/n-t)/2:t}function Ex(e,t,n){var r=e._x0,l=e._y0,o=e._x1,u=e._y1,c=(o-r)/3;e._context.bezierCurveTo(r+c,l+c*t,o-c,u-c*n,o,u)}function Fm(e){this._context=e}Fm.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:Ex(this,this._t0,nO(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){var n=NaN;if(e=+e,t=+t,!(e===this._x1&&t===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,Ex(this,nO(this,n=tO(this,e,t)),n);break;default:Ex(this,this._t0,n=tO(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=n}}};function CD(e){this._context=new _D(e)}(CD.prototype=Object.create(Fm.prototype)).point=function(e,t){Fm.prototype.point.call(this,t,e)};function _D(e){this._context=e}_D.prototype={moveTo:function(e,t){this._context.moveTo(t,e)},closePath:function(){this._context.closePath()},lineTo:function(e,t){this._context.lineTo(t,e)},bezierCurveTo:function(e,t,n,r,l,o){this._context.bezierCurveTo(t,e,r,n,o,l)}};function cF(e){return new Fm(e)}function fF(e){return new CD(e)}function ED(e){this._context=e}ED.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var e=this._x,t=this._y,n=e.length;if(n)if(this._line?this._context.lineTo(e[0],t[0]):this._context.moveTo(e[0],t[0]),n===2)this._context.lineTo(e[1],t[1]);else for(var r=rO(e),l=rO(t),o=0,u=1;u=0;--t)l[t]=(u[t]-l[t+1])/o[t];for(o[n-1]=(e[n]+l[n-1])/2,t=0;t=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var n=this._x*(1-this._t)+e*this._t;this._context.lineTo(n,this._y),this._context.lineTo(n,t)}break}}this._x=e,this._y=t}};function hF(e){return new Hv(e,.5)}function mF(e){return new Hv(e,0)}function vF(e){return new Hv(e,1)}function Go(e,t){if((u=e.length)>1)for(var n=1,r,l,o=e[t[0]],u,c=o.length;n=0;)n[t]=t;return n}function gF(e,t){return e[t]}function pF(e){const t=[];return t.key=e,t}function yF(){var e=Ut([]),t=J0,n=Go,r=gF;function l(o){var u=Array.from(e.apply(this,arguments),pF),c,h=u.length,m=-1,v;for(const g of o)for(c=0,++m;c0){for(var n,r,l=0,o=e[0].length,u;l0){for(var n=0,r=e[t[0]],l,o=r.length;n0)||!((o=(l=e[t[0]]).length)>0))){for(var n=0,r=1,l,o,u;r"radius"in e&&"startAngle"in e&&"endAngle"in e,LS=(e,t)=>{if(!e||typeof e=="function"||typeof e=="boolean")return null;var n=e;if(b.isValidElement(e)&&(n=e.props),typeof n!="object"&&typeof n!="function")return null;var r={};return Object.keys(n).forEach(l=>{OS(l)&&typeof n[l]=="function"&&(r[l]=(o=>n[l](n,o)))}),r},wF=(e,t,n)=>r=>(e(t,n,r),null),jF=(e,t,n)=>{if(e===null||typeof e!="object"&&typeof e!="function")return null;var r=null;return Object.keys(e).forEach(l=>{var o=e[l];OS(l)&&typeof o=="function"&&(r||(r={}),r[l]=wF(o,t,n))}),r};function iO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function CF(e){for(var t=1;t(u[c]===void 0&&r[c]!==void 0&&(u[c]=r[c]),u),n);return o}function OF(e,t){const n=new Map;for(let r=0;r=0}function US(e){return e!=null&&typeof e!="function"&&TF(e.length)}function RF(e){return function(t){return es(t,e)}}function ND(e){return e==null||typeof e!="object"&&typeof e!="function"}function Io(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}const TD="[object RegExp]",$S="[object String]",BS="[object Number]",HS="[object Boolean]",RD="[object Arguments]",MD="[object Symbol]",DD="[object Date]",PD="[object Map]",kD="[object Set]",ID="[object Array]",MF="[object Function]",zD="[object ArrayBuffer]",Nm="[object Object]",DF="[object Error]",LD="[object DataView]",UD="[object Uint8Array]",$D="[object Uint8ClampedArray]",BD="[object Uint16Array]",HD="[object Uint32Array]",PF="[object BigUint64Array]",FD="[object Int8Array]",VD="[object Int16Array]",GD="[object Int32Array]",kF="[object BigInt64Array]",qD="[object Float32Array]",KD="[object Float64Array]";function jf(e,t){return e===t||Number.isNaN(e)&&Number.isNaN(t)}function YD(e){return e!==null&&(typeof e=="object"||typeof e=="function")}function XD(e,t,n){return typeof n!="function"?XD(e,t,()=>{}):eb(e,t,function r(l,o,u,c,h,m){const v=n(l,o,u,c,h,m);return v!==void 0?!!v:eb(l,o,r,m,!1)},new Map,!0)}function eb(e,t,n,r,l=!1){if(t===e)return!0;switch(typeof t){case"object":return IF(e,t,n,r,l);case"function":return Object.keys(t).length>0?eb(e,Object.assign({},t),n,r,l):jf(e,t);default:return YD(e)&&l?typeof t=="string"?t==="":!0:jf(e,t)}}function IF(e,t,n,r,l=!1){if(t==null)return!0;if(Array.isArray(t))return QD(e,t,n,r);if(t instanceof Map)return zF(e,t,n,r);if(t instanceof Set)return LF(e,t,n,r);const o=Object.keys(t);if(e==null)return l&&o.length===0;if(l)ND(e)&&(e=Object(e));else{if(Io(t)==="[object Error]")return Io(e)==="[object Error]"&&e.name===t.name&&e.message===t.message;const u=Io(e);if(u!=="[object Object]"&&u!=="[object Arguments]")return!1}if(o.length===0)return!0;if(r!=null&&r.has(t))return r.get(t)===e;r==null||r.set(t,e);try{for(let u=0;u{})}function tb(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.prototype.propertyIsEnumerable.call(e,t))}const aO=typeof globalThis=="object"&&globalThis||typeof window=="object"&&window||typeof self=="object"&&self||typeof global=="object"&&global||(function(){return this})();function nb(e){return typeof aO.Buffer<"u"&&aO.Buffer.isBuffer(e)}function UF(e){return nb(e)}function $F(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function BF(e){return $F(e)}function HF(e,t){return du(e,void 0,e,new Map)}function du(e,t,n,r,l){if(ND(e))return e;if(r.has(e))return r.get(e);if(Array.isArray(e)){const u=new Array(e.length);r.set(e,u);for(let c=0;c{u.set(h,du(c,h,n,r))}),u}if(e instanceof Set){const u=new Set;return r.set(e,u),e.forEach(c=>{u.add(du(c,void 0,n,r))}),u}if(UF(e))return e.subarray();if(BF(e)){const u=new(Object.getPrototypeOf(e)).constructor(e.length);r.set(e,u);for(let c=0;cZD(t,e)}const GF=/^(?:0|[1-9]\d*)$/;function JD(e,t=Number.MAX_SAFE_INTEGER){switch(typeof e){case"number":return Number.isInteger(e)&&e>=0&&e"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?m:c;return Nx.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:v,Nx}var iO;function BF(){return iO||(iO=1,Ox.exports=$F()),Ox.exports}/** + */var oO;function WF(){if(oO)return Tx;oO=1;var e=Hu();function t(g,x){return g===x&&(g!==0||1/g===1/x)||g!==g&&x!==x}var n=typeof Object.is=="function"?Object.is:t,r=e.useState,l=e.useEffect,o=e.useLayoutEffect,u=e.useDebugValue;function c(g,x){var S=x(),w=r({inst:{value:S,getSnapshot:x}}),j=w[0].inst,C=w[1];return o(function(){j.value=S,j.getSnapshot=x,h(j)&&C({inst:j})},[g,S,x]),l(function(){return h(j)&&C({inst:j}),g(function(){h(j)&&C({inst:j})})},[g]),u(S),S}function h(g){var x=g.getSnapshot;g=g.value;try{var S=x();return!n(g,S)}catch{return!0}}function m(g,x){return x()}var v=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?m:c;return Tx.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:v,Tx}var sO;function JF(){return sO||(sO=1,Nx.exports=WF()),Nx.exports}/** * @license React * use-sync-external-store-shim/with-selector.production.js * @@ -114,12 +126,12 @@ Error generating stack: `+d.message+` * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var aO;function HF(){if(aO)return Ex;aO=1;var e=Hu(),t=BF();function n(m,v){return m===v&&(m!==0||1/m===1/v)||m!==m&&v!==v}var r=typeof Object.is=="function"?Object.is:n,l=t.useSyncExternalStore,o=e.useRef,u=e.useEffect,c=e.useMemo,h=e.useDebugValue;return Ex.useSyncExternalStoreWithSelector=function(m,v,p,x,S){var w=o(null);if(w.current===null){var j={hasValue:!1,value:null};w.current=j}else j=w.current;w=c(function(){function A(E){if(!N){if(N=!0,O=E,E=x(E),S!==void 0&&j.hasValue){var D=j.value;if(S(D,E))return T=D}return T=E}if(D=T,r(O,E))return D;var k=x(E);return S!==void 0&&S(D,k)?(O=E,D):(O=E,T=k)}var N=!1,O,T,R=p===void 0?null:p;return[function(){return A(v())},R===null?void 0:function(){return A(R())}]},[v,p,x,S]);var C=l(m,w[0],w[1]);return u(function(){j.hasValue=!0,j.value=C},[C]),h(C),C},Ex}var lO;function FF(){return lO||(lO=1,Ax.exports=HF()),Ax.exports}var VF=FF(),BS=b.createContext(null),GF=e=>e,Vt=()=>{var e=b.useContext(BS);return e?e.store.dispatch:GF},Nm=()=>{},qF=()=>Nm,KF=(e,t)=>e===t;function ke(e){var t=b.useContext(BS),n=b.useMemo(()=>t?r=>{if(r!=null)return e(r)}:Nm,[t,e]);return VF.useSyncExternalStoreWithSelector(t?t.subscription.addNestedSub:qF,t?t.store.getState:Nm,t?t.store.getState:Nm,n,KF)}function YF(e,t=`expected a function, instead received ${typeof e}`){if(typeof e!="function")throw new TypeError(t)}function XF(e,t="expected all items to be functions, instead received the following types: "){if(!e.every(n=>typeof n=="function")){const n=e.map(r=>typeof r=="function"?`function ${r.name||"unnamed"}()`:typeof r).join(", ");throw new TypeError(`${t}[${n}]`)}}var oO=e=>Array.isArray(e)?e:[e];function QF(e){const t=Array.isArray(e[0])?e[0]:e;return XF(t,"createSelector expects all input-selectors to be functions, but received the following types: "),t}function ZF(e,t){const n=[],{length:r}=e;for(let l=0;ltypeof WeakRef>"u"?WF:WeakRef,XD=JF(),eV=0,sO=1;function rm(){return{s:eV,v:void 0,o:null,p:null}}function tV(e){return e instanceof XD?e.deref():e}function QD(e,t={}){let n=rm();const{resultEqualityCheck:r}=t;let l,o=0;function u(){let c=n;const{length:h}=arguments;for(let p=0,x=h;p{n=rm(),u.resetResultsCount()},u.resultsCount=()=>o,u.resetResultsCount=()=>{o=0},u}function nV(e,...t){const n=typeof e=="function"?{memoize:e,memoizeOptions:t}:e,r=(...l)=>{let o=0,u=0,c,h={},m=l.pop();typeof m=="object"&&(h=m,m=l.pop()),YF(m,`createSelector expects an output function after the inputs, but received: [${typeof m}]`);const v={...n,...h},{memoize:p,memoizeOptions:x=[],argsMemoize:S=QD,argsMemoizeOptions:w=[]}=v,j=oO(x),C=oO(w),A=QF(l),N=p(function(){return o++,m.apply(null,arguments)},...j),O=S(function(){u++;const R=ZF(A,arguments);return c=N.apply(null,R),c},...C);return Object.assign(O,{resultFunc:m,memoizedResultFunc:N,dependencies:A,dependencyRecomputations:()=>u,resetDependencyRecomputations:()=>{u=0},lastResult:()=>c,recomputations:()=>o,resetRecomputations:()=>{o=0},memoize:p,argsMemoize:S})};return Object.assign(r,{withTypes:()=>r}),r}var W=nV(QD);function rV(e,t=1){const n=[],r=Math.floor(t),l=(o,u)=>{for(let c=0;c{if(e!==t){const r=uO(e),l=uO(t);if(r===l&&r===0){if(et)return n==="desc"?-1:1}return n==="desc"?l-r:r-l}return 0},lV=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,oV=/^\w*$/;function sV(e,t){return Array.isArray(e)?!1:typeof e=="number"||typeof e=="boolean"||e==null||ES(e)?!0:typeof e=="string"&&(oV.test(e)||!lV.test(e))||t!=null}function uV(e,t,n,r){if(e==null)return[];n=n,Array.isArray(e)||(e=zS(e)?Array.from(e):iV(e)),Array.isArray(t)||(t=t==null?[null]:[t]),t.length===0&&(t=[null]),Array.isArray(n)||(n=n==null?[]:[n]),n=n.map(c=>String(c));const l=(c,h)=>{let m=c,v=0;for(;v0&&v===h.length?m:void 0},o=(c,h)=>{if(c==null)return h;if(h!=null)return typeof c=="object"&&"key"in c?Pu(h,c.key)?h[c.key]:l(h,c.path):typeof c=="function"?c(h):Array.isArray(c)?l(h,c):h[c]},u=t.map(c=>(Array.isArray(c)&&c.length===1&&(c=c[0]),c==null||typeof c=="function"||Array.isArray(c)||sV(c)?c:{key:c,path:OS(c)}));return e.map(c=>({original:c,criteria:u.map(h=>o(h,c))})).slice().sort((c,h)=>{for(let m=0;mc.original)}function Hv(e,...t){const n=t.length;return n>1&&nb(e,t[0],t[1])?t=[]:n>2&&nb(t[0],t[1],t[2])&&(t=[t[0]]),uV(e,rV(t),["asc"])}var ZD=e=>e.legend.settings,cV=e=>e.legend.size,fV=e=>e.legend.payload;W([fV,ZD],(e,t)=>{var n=t.itemSorter,r=e.flat(1);return n?Hv(r,n):r});function dV(e,t){return gV(e)||vV(e,t)||mV(e,t)||hV()}function hV(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function mV(e,t){if(e){if(typeof e=="string")return cO(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?cO(e,t):void 0}}function cO(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);nim||Math.abs(e.left-t.left)>im||Math.abs(e.top-t.top)>im||Math.abs(e.width-t.width)>im}function dO(e){var t=e.getBoundingClientRect();return{height:t.height,left:t.left,top:t.top,width:t.width}}function pV(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],t=b.useState({height:0,left:0,top:0,width:0}),n=dV(t,2),r=n[0],l=n[1],o=b.useRef(null),u=b.useRef(r);u.current=r;var c=b.useCallback(h=>{if(o.current!=null&&(o.current.disconnect(),o.current=null),h!=null){var m=dO(h);if(fO(m,u.current)&&l(m),typeof ResizeObserver<"u"){var v=new ResizeObserver(()=>{var p=dO(h);fO(p,u.current)&&l(p)});v.observe(h),o.current=v}}},[...e]);return b.useEffect(()=>()=>{var h;(h=o.current)===null||h===void 0||h.disconnect()},[]),[r,c]}function Nn(e){return`Minified Redux error #${e}; visit https://redux.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var yV=typeof Symbol=="function"&&Symbol.observable||"@@observable",hO=yV,Tx=()=>Math.random().toString(36).substring(7).split("").join("."),xV={INIT:`@@redux/INIT${Tx()}`,REPLACE:`@@redux/REPLACE${Tx()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${Tx()}`},Fm=xV;function HS(e){if(typeof e!="object"||e===null)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||Object.getPrototypeOf(e)===null}function WD(e,t,n){if(typeof e!="function")throw new Error(Nn(2));if(typeof t=="function"&&typeof n=="function"||typeof n=="function"&&typeof arguments[3]=="function")throw new Error(Nn(0));if(typeof t=="function"&&typeof n>"u"&&(n=t,t=void 0),typeof n<"u"){if(typeof n!="function")throw new Error(Nn(1));return n(WD)(e,t)}let r=e,l=t,o=new Map,u=o,c=0,h=!1;function m(){u===o&&(u=new Map,o.forEach((C,A)=>{u.set(A,C)}))}function v(){if(h)throw new Error(Nn(3));return l}function p(C){if(typeof C!="function")throw new Error(Nn(4));if(h)throw new Error(Nn(5));let A=!0;m();const N=c++;return u.set(N,C),function(){if(A){if(h)throw new Error(Nn(6));A=!1,m(),u.delete(N),o=null}}}function x(C){if(!HS(C))throw new Error(Nn(7));if(typeof C.type>"u")throw new Error(Nn(8));if(typeof C.type!="string")throw new Error(Nn(17));if(h)throw new Error(Nn(9));try{h=!0,l=r(l,C)}finally{h=!1}return(o=u).forEach(N=>{N()}),C}function S(C){if(typeof C!="function")throw new Error(Nn(10));r=C,x({type:Fm.REPLACE})}function w(){const C=p;return{subscribe(A){if(typeof A!="object"||A===null)throw new Error(Nn(11));function N(){const T=A;T.next&&T.next(v())}return N(),{unsubscribe:C(N)}},[hO](){return this}}}return x({type:Fm.INIT}),{dispatch:x,subscribe:p,getState:v,replaceReducer:S,[hO]:w}}function bV(e){Object.keys(e).forEach(t=>{const n=e[t];if(typeof n(void 0,{type:Fm.INIT})>"u")throw new Error(Nn(12));if(typeof n(void 0,{type:Fm.PROBE_UNKNOWN_ACTION()})>"u")throw new Error(Nn(13))})}function JD(e){const t=Object.keys(e),n={};for(let o=0;o"u")throw c&&c.type,new Error(Nn(14));m[p]=w,h=h||w!==S}return h=h||r.length!==Object.keys(u).length,h?m:u}}function Vm(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,n)=>(...r)=>t(n(...r)))}function SV(...e){return t=>(n,r)=>{const l=t(n,r);let o=()=>{throw new Error(Nn(15))};const u={getState:l.getState,dispatch:(h,...m)=>o(h,...m)},c=e.map(h=>h(u));return o=Vm(...c)(l.dispatch),{...l,dispatch:o}}}function eP(e){return HS(e)&&"type"in e&&typeof e.type=="string"}var tP=Symbol.for("immer-nothing"),mO=Symbol.for("immer-draftable"),Bn=Symbol.for("immer-state");function si(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var Ar=Object,ku=Ar.getPrototypeOf,Gm="constructor",Fv="prototype",rb="configurable",qm="enumerable",Tm="writable",Rf="value",Ea=e=>!!e&&!!e[Bn];function Qr(e){var t;return e?nP(e)||Gv(e)||!!e[mO]||!!((t=e[Gm])!=null&&t[mO])||qv(e)||Jf(e):!1}var wV=Ar[Fv][Gm].toString(),vO=new WeakMap;function nP(e){if(!e||!FS(e))return!1;const t=ku(e);if(t===null||t===Ar[Fv])return!0;const n=Ar.hasOwnProperty.call(t,Gm)&&t[Gm];if(n===Object)return!0;if(!su(n))return!1;let r=vO.get(n);return r===void 0&&(r=Function.toString.call(n),vO.set(n,r)),r===wV}function Vv(e,t,n=!0){Wf(e)===0?(n?Reflect.ownKeys(e):Ar.keys(e)).forEach(l=>{t(l,e[l],e)}):e.forEach((r,l)=>t(l,r,e))}function Wf(e){const t=e[Bn];return t?t.type_:Gv(e)?1:qv(e)?2:Jf(e)?3:0}var Rx=(e,t,n=Wf(e))=>n===2?e.has(t):Ar[Fv].hasOwnProperty.call(e,t),ib=(e,t,n=Wf(e))=>n===2?e.get(t):e[t],Km=(e,t,n,r=Wf(e))=>{r===2?e.set(t,n):r===3?e.add(n):e[t]=n};function jV(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}var Gv=Array.isArray,qv=e=>e instanceof Map,Jf=e=>e instanceof Set,FS=e=>typeof e=="object",su=e=>typeof e=="function",Mx=e=>typeof e=="boolean";function CV(e){const t=+e;return Number.isInteger(t)&&String(t)===e}var da=e=>e.copy_||e.base_,VS=e=>e.modified_?e.copy_:e.base_;function ab(e,t){if(qv(e))return new Map(e);if(Jf(e))return new Set(e);if(Gv(e))return Array[Fv].slice.call(e);const n=nP(e);if(t===!0||t==="class_only"&&!n){const r=Ar.getOwnPropertyDescriptors(e);delete r[Bn];let l=Reflect.ownKeys(r);for(let o=0;o1&&Ar.defineProperties(e,{set:am,add:am,clear:am,delete:am}),Ar.freeze(e),t&&Vv(e,(n,r)=>{GS(r,!0)},!1)),e}function _V(){si(2)}var am={[Rf]:_V};function Kv(e){return e===null||!FS(e)?!0:Ar.isFrozen(e)}var Ym="MapSet",lb="Patches",gO="ArrayMethods",rP={};function qo(e){const t=rP[e];return t||si(0,e),t}var pO=e=>!!rP[e],Mf,iP=()=>Mf,AV=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:pO(Ym)?qo(Ym):void 0,arrayMethodsPlugin_:pO(gO)?qo(gO):void 0});function yO(e,t){t&&(e.patchPlugin_=qo(lb),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function ob(e){sb(e),e.drafts_.forEach(EV),e.drafts_=null}function sb(e){e===Mf&&(Mf=e.parent_)}var xO=e=>Mf=AV(Mf,e);function EV(e){const t=e[Bn];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function bO(e,t){t.unfinalizedDrafts_=t.drafts_.length;const n=t.drafts_[0];if(e!==void 0&&e!==n){n[Bn].modified_&&(ob(t),si(4)),Qr(e)&&(e=SO(t,e));const{patchPlugin_:l}=t;l&&l.generateReplacementPatches_(n[Bn].base_,e,t)}else e=SO(t,n);return OV(t,e,!0),ob(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==tP?e:void 0}function SO(e,t){if(Kv(t))return t;const n=t[Bn];if(!n)return Xm(t,e.handledSet_,e);if(!Yv(n,e))return t;if(!n.modified_)return n.base_;if(!n.finalized_){const{callbacks_:r}=n;if(r)for(;r.length>0;)r.pop()(e);oP(n,e)}return n.copy_}function OV(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&GS(t,n)}function aP(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var Yv=(e,t)=>e.scope_===t,NV=[];function lP(e,t,n,r){const l=da(e),o=e.type_;if(r!==void 0&&ib(l,r,o)===t){Km(l,r,n,o);return}if(!e.draftLocations_){const c=e.draftLocations_=new Map;Vv(l,(h,m)=>{if(Ea(m)){const v=c.get(m)||[];v.push(h),c.set(m,v)}})}const u=e.draftLocations_.get(t)??NV;for(const c of u)Km(l,c,n,o)}function TV(e,t,n){e.callbacks_.push(function(l){var c;const o=t;if(!o||!Yv(o,l))return;(c=l.mapSetPlugin_)==null||c.fixSetContents(o);const u=VS(o);lP(e,o.draft_??o,u,n),oP(o,l)})}function oP(e,t){var r;if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(((r=e.assigned_)==null?void 0:r.size)??0)>0)){const{patchPlugin_:l}=t;if(l){const o=l.getPath(e);o&&l.generatePatches_(e,o,t)}aP(e)}}function RV(e,t,n){const{scope_:r}=e;if(Ea(n)){const l=n[Bn];Yv(l,r)&&l.callbacks_.push(function(){Rm(e);const u=VS(l);lP(e,n,u,t)})}else Qr(n)&&e.callbacks_.push(function(){const o=da(e);e.type_===3?o.has(n)&&Xm(n,r.handledSet_,r):ib(o,t,e.type_)===n&&r.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&Xm(ib(e.copy_,t,e.type_),r.handledSet_,r)})}function Xm(e,t,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||Ea(e)||t.has(e)||!Qr(e)||Kv(e)||(t.add(e),Vv(e,(r,l)=>{if(Ea(l)){const o=l[Bn];if(Yv(o,n)){const u=VS(o);Km(e,r,u,e.type_),aP(o)}}else Qr(l)&&Xm(l,t,n)})),e}function MV(e,t){const n=Gv(e),r={type_:n?1:0,scope_:t?t.scope_:iP(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let l=r,o=Qm;n&&(l=[r],o=Df);const{revoke:u,proxy:c}=Proxy.revocable(l,o);return r.draft_=c,r.revoke_=u,[c,r]}var Qm={get(e,t){if(t===Bn)return e;let n=e.scope_.arrayMethodsPlugin_;const r=e.type_===1&&typeof t=="string";if(r&&n!=null&&n.isArrayOperationMethod(t))return n.createMethodInterceptor(e,t);const l=da(e);if(!Rx(l,t,e.type_))return PV(e,l,t);const o=l[t];if(e.finalized_||!Qr(o)||r&&e.operationMethod&&(n!=null&&n.isMutatingArrayMethod(e.operationMethod))&&CV(t))return o;if(o===Dx(e.base_,t)||DV(e,t,o)){Rm(e);const u=e.type_===1?+t:t,c=cb(e.scope_,o,e,u);return e.copy_[u]=c}return o},has(e,t){return t in da(e)},ownKeys(e){return Reflect.ownKeys(da(e))},set(e,t,n){const r=sP(da(e),t);if(r!=null&&r.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){const l=Dx(da(e),t),o=l==null?void 0:l[Bn];if(o&&o.base_===n)return e.copy_[t]=n,e.assigned_.delete(t),!0;if(jV(n,l)&&(n!==void 0||Rx(e.base_,t,e.type_)))return!0;Rm(e),ub(e)}return e.copy_[t]===n&&(n!==void 0||Rx(e.copy_,t,e.type_))||Number.isNaN(n)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=n,e.assigned_.set(t,!0),RV(e,t,n)),!0},deleteProperty(e,t){return Rm(e),Dx(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),ub(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const n=da(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{[Tm]:!0,[rb]:e.type_!==1||t!=="length",[qm]:r[qm],[Rf]:n[t]}},defineProperty(){si(11)},getPrototypeOf(e){return ku(e.base_)},setPrototypeOf(){si(12)}},Df={};for(let e in Qm){let t=Qm[e];Df[e]=function(){const n=arguments;return n[0]=n[0][0],t.apply(this,n)}}Df.deleteProperty=function(e,t){return Df.set.call(this,e,t,void 0)};Df.set=function(e,t,n){return Qm.set.call(this,e[0],t,n,e[0])};function Dx(e,t){const n=e[Bn];return(n?da(n):e)[t]}function DV(e,t,n){return e.type_!==1||!e.allIndicesReassigned_||!Qr(n)||n[Bn]?!1:e.baseRefs_.has(n)}function PV(e,t,n){var l;const r=sP(t,n);return r?Rf in r?r[Rf]:(l=r.get)==null?void 0:l.call(e.draft_):void 0}function sP(e,t){if(!(t in e))return;let n=ku(e);for(;n;){const r=Object.getOwnPropertyDescriptor(n,t);if(r)return r;n=ku(n)}}function ub(e){e.modified_||(e.modified_=!0,e.parent_&&ub(e.parent_))}function Rm(e){e.copy_||(e.assigned_=new Map,e.copy_=ab(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var kV=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(n,r,l)=>{if(su(n)&&!su(r)){const u=r;r=n;const c=this;return function(m=u,...v){return c.produce(m,p=>r.call(this,p,...v))}}su(r)||si(6),l!==void 0&&!su(l)&&si(7);let o;if(Qr(n)){const u=xO(this),c=cb(u,n,void 0);let h=!0;try{o=r(c),h=!1}finally{h?ob(u):sb(u)}return yO(u,l),bO(o,u)}else if(!n||!FS(n)){if(o=r(n),o===void 0&&(o=n),o===tP&&(o=void 0),this.autoFreeze_&&GS(o,!0),l){const u=[],c=[];qo(lb).generateReplacementPatches_(n,o,{patches_:u,inversePatches_:c}),l(u,c)}return o}else si(1,n)},this.produceWithPatches=(n,r)=>{if(su(n))return(c,...h)=>this.produceWithPatches(c,m=>n(m,...h));let l,o;return[this.produce(n,r,(c,h)=>{l=c,o=h}),l,o]},Mx(e==null?void 0:e.autoFreeze)&&this.setAutoFreeze(e.autoFreeze);const t=e==null?void 0:e.useStrictShallowCopy;(Mx(t)||t==="class_only")&&this.setUseStrictShallowCopy(t),Mx(e==null?void 0:e.useStrictIteration)&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){Qr(e)||si(8),Ea(e)&&(e=Gr(e));const t=xO(this),n=cb(t,e,void 0);return n[Bn].isManual_=!0,sb(t),n}finishDraft(e,t){const n=e&&e[Bn];(!n||!n.isManual_)&&si(9);const{scope_:r}=n;return yO(r,t),bO(void 0,r)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}setUseStrictIteration(e){this.useStrictIteration_=e}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(e,t){let n;for(n=t.length-1;n>=0;n--){const l=t[n];if(l.path.length===0&&l.op==="replace"){e=l.value;break}}n>-1&&(t=t.slice(n+1));const r=qo(lb).applyPatches_;return Ea(e)?r(e,t):this.produce(e,l=>r(l,t))}};function cb(e,t,n,r){const[l,o]=qv(t)?qo(Ym).proxyMap_(t,n):Jf(t)?qo(Ym).proxySet_(t,n):MV(t,n);return((n==null?void 0:n.scope_)??iP()).drafts_.push(l),o.callbacks_=(n==null?void 0:n.callbacks_)??[],o.key_=r,n&&r!==void 0?TV(n,o,r):o.callbacks_.push(function(h){var v;(v=h.mapSetPlugin_)==null||v.fixSetContents(o);const{patchPlugin_:m}=h;o.modified_&&m&&m.generatePatches_(o,[],h)}),l}function Gr(e){return Ea(e)||si(10,e),uP(e)}function uP(e){if(!Qr(e)||Kv(e))return e;const t=e[Bn];let n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=ab(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=ab(e,!0);const l=n;return Jf(n)&&(n=new Set),Vv(l,(o,u)=>{Km(n,o,uP(u))},r),t&&(t.finalized_=!1),n}var Px=globalThis.Iterator;Px==null||Px.from;var IV=new kV,cP=IV.produce,rt=e=>e;function fP(e){return({dispatch:n,getState:r})=>l=>o=>typeof o=="function"?o(n,r,e):l(o)}var zV=fP(),LV=fP;const UV=typeof window<"u"&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(arguments.length!==0)return typeof arguments[0]=="object"?Vm:Vm.apply(null,arguments)};function Er(e,t){function n(...r){if(t){let l=t(...r);if(!l)throw new Error(cr(0));return{type:e,payload:l.payload,..."meta"in l&&{meta:l.meta},..."error"in l&&{error:l.error}}}return{type:e,payload:r[0]}}return n.toString=()=>`${e}`,n.type=e,n.match=r=>r!=null&&r.type===e&&eP(r),n}var dP=class bf extends Array{constructor(...t){super(...t),Object.setPrototypeOf(this,bf.prototype)}static get[Symbol.species](){return bf}concat(...t){return super.concat.apply(this,t)}prepend(...t){return t.length===1&&Array.isArray(t[0])?new bf(...t[0].concat(this)):new bf(...t.concat(this))}};function wO(e){return Qr(e)?cP(e,()=>{}):e}function lm(e,t,n){return e.has(t)?e.get(t):e.set(t,n(t)).get(t)}function $V(e){return typeof e=="boolean"}const BV=()=>function(t){const{thunk:n=!0,immutableCheck:r=!0,serializableCheck:l=!0,actionCreatorCheck:o=!0}=t??{};let u=new dP;return n&&($V(n)?u.push(zV):u.push(LV(n.extraArgument))),u},hP="RTK_autoBatch",Ot=()=>e=>({payload:e,meta:{[hP]:!0}}),jO=e=>t=>{setTimeout(t,e)},HV=(e,t,n)=>r=>{let l=!1,o,u;const c=()=>{l||(l=!0,t==null||t(o),clearTimeout(u),r())};o=e(c),u=setTimeout(c,n)},mP=(e={type:"raf"})=>t=>(...n)=>{const r=t(...n);let l=!0,o=!1,u=!1;const c=new Set,h=e.type==="tick"?queueMicrotask:e.type==="raf"?typeof window<"u"&&window.requestAnimationFrame?HV(window.requestAnimationFrame,window.cancelAnimationFrame,100):jO(10):e.type==="callback"?e.queueNotification:jO(e.timeout),m=()=>{u=!1,o&&(o=!1,c.forEach(v=>v()))};return Object.assign({},r,{subscribe(v){const p=()=>l&&v(),x=r.subscribe(p);return c.add(v),()=>{x(),c.delete(v)}},dispatch(v){var p;try{return l=!((p=v==null?void 0:v.meta)!=null&&p[hP]),o=!l,o&&(u||(u=!0,h(m))),r.dispatch(v)}finally{l=!0}}})},FV=e=>function(n){const{autoBatch:r=!0}=n??{};let l=new dP(e);return r&&l.push(mP(typeof r=="object"?r:void 0)),l};function VV(e){const t=BV(),{reducer:n=void 0,middleware:r,devTools:l=!0,preloadedState:o=void 0,enhancers:u=void 0}=e||{};let c;if(typeof n=="function")c=n;else if(HS(n))c=JD(n);else throw new Error(cr(1));let h;typeof r=="function"?h=r(t):h=t();let m=Vm;l&&(m=UV({trace:!1,...typeof l=="object"&&l}));const v=SV(...h),p=FV(v);let x=typeof u=="function"?u(p):p();const S=m(...x);return WD(c,o,S)}function vP(e){const t={},n=[];let r;const l={addCase(o,u){const c=typeof o=="string"?o:o.type;if(!c)throw new Error(cr(28));if(c in t)throw new Error(cr(29));return t[c]=u,l},addAsyncThunk(o,u){return u.pending&&(t[o.pending.type]=u.pending),u.rejected&&(t[o.rejected.type]=u.rejected),u.fulfilled&&(t[o.fulfilled.type]=u.fulfilled),u.settled&&n.push({matcher:o.settled,reducer:u.settled}),l},addMatcher(o,u){return n.push({matcher:o,reducer:u}),l},addDefaultCase(o){return r=o,l}};return e(l),[t,n,r]}function GV(e){return typeof e=="function"}function qV(e,t){let[n,r,l]=vP(t),o;if(GV(e))o=()=>wO(e());else{const h=wO(e);o=()=>h}function u(h,m,v){if(Ea(h)){const p=m(h,v);return p===void 0?h:p}else{if(Qr(h))return cP(h,p=>m(p,v));{const p=m(h,v);if(p===void 0){if(h===null)return h;throw new Error(cr(9))}return p}}}function c(h=o(),m){const v=n[m.type];let p;for(const{matcher:x,reducer:S}of r)x(m)&&S&&(p??(p=[])).push(S);if(!v&&!p)return l?u(h,l,m):h;if(v&&(h=u(h,v,m)),p)for(const x of p)h=u(h,x,m);return h}return c.getInitialState=o,c}let KV="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",YV=(e=21)=>{let t="",n=e;for(;n--;)t+=KV[Math.random()*64|0];return t};const XV=Symbol.for("rtk-slice-createasyncthunk");function QV(e,t){return`${e}/${t}`}function ZV({creators:e}={}){var n;const t=(n=e==null?void 0:e.asyncThunk)==null?void 0:n[XV];return function(l){const{name:o,reducerPath:u=o}=l;if(!o)throw new Error(cr(11));const c=(typeof l.reducers=="function"?l.reducers(JV()):l.reducers)||{},h=Object.keys(c),m={sliceCaseReducersByName:{},sliceCaseReducersByType:{},actionCreators:{},sliceMatchers:[]},v={addCase(T,R){const E=typeof T=="string"?T:T.type;if(!E)throw new Error(cr(12));if(E in m.sliceCaseReducersByType)throw new Error(cr(13));return m.sliceCaseReducersByType[E]=R,v},addMatcher(T,R){return m.sliceMatchers.push({matcher:T,reducer:R}),v},exposeAction(T,R){return m.actionCreators[T]=R,v},exposeCaseReducer(T,R){return m.sliceCaseReducersByName[T]=R,v}};h.forEach(T=>{const R=c[T],E={reducerName:T,type:QV(o,T),createNotation:typeof l.reducers=="function"};t9(R)?r9(E,R,v,t):e9(E,R,v)});function p(){const[T={},R=[],E=void 0]=typeof l.extraReducers=="function"?vP(l.extraReducers):[l.extraReducers],D={...T,...m.sliceCaseReducersByType};return qV(l.initialState,k=>{for(let I in D)k.addCase(I,D[I]);for(let I of m.sliceMatchers)k.addMatcher(I.matcher,I.reducer);for(let I of R)k.addMatcher(I.matcher,I.reducer);E&&k.addDefaultCase(E)})}const x=T=>T,S=new Map,w=new WeakMap;let j;function C(T,R){return j||(j=p()),j(T,R)}function A(){return j||(j=p()),j.getInitialState()}function N(T,R=!1){function E(k){let I=k[T];return typeof I>"u"&&R&&(I=lm(w,E,A)),I}function D(k=x){return lm(lm(S,R,()=>new WeakMap),k,()=>{const I={};for(const[P,B]of Object.entries(l.selectors??{}))I[P]=WV(B,k,()=>lm(w,k,A),R);return I})}return{reducerPath:T,getSelectors:D,get selectors(){return D(E)},selectSlice:E}}const O={name:o,reducer:C,actions:m.actionCreators,caseReducers:m.sliceCaseReducersByName,getInitialState:A,...N(u),injectInto(T,{reducerPath:R,...E}={}){const D=R??u;return T.inject({reducerPath:D,reducer:C},E),{...O,...N(D,!0)}}};return O}}function WV(e,t,n,r){function l(o,...u){let c=t(o);return typeof c>"u"&&r&&(c=n()),e(c,...u)}return l.unwrapped=e,l}const Hn=ZV();function JV(){function e(t,n){return{_reducerDefinitionType:"asyncThunk",payloadCreator:t,...n}}return e.withTypes=()=>e,{reducer(t){return Object.assign({[t.name](...n){return t(...n)}}[t.name],{_reducerDefinitionType:"reducer"})},preparedReducer(t,n){return{_reducerDefinitionType:"reducerWithPrepare",prepare:t,reducer:n}},asyncThunk:e}}function e9({type:e,reducerName:t,createNotation:n},r,l){let o,u;if("reducer"in r){if(n&&!n9(r))throw new Error(cr(17));o=r.reducer,u=r.prepare}else o=r;l.addCase(e,o).exposeCaseReducer(t,o).exposeAction(t,u?Er(e,u):Er(e))}function t9(e){return e._reducerDefinitionType==="asyncThunk"}function n9(e){return e._reducerDefinitionType==="reducerWithPrepare"}function r9({type:e,reducerName:t},n,r,l){if(!l)throw new Error(cr(18));const{payloadCreator:o,fulfilled:u,pending:c,rejected:h,settled:m,options:v}=n,p=l(e,o,v);r.exposeAction(t,p),u&&r.addCase(p.fulfilled,u),c&&r.addCase(p.pending,c),h&&r.addCase(p.rejected,h),m&&r.addMatcher(p.settled,m),r.exposeCaseReducer(t,{fulfilled:u||om,pending:c||om,rejected:h||om,settled:m||om})}function om(){}const i9="task",gP="listener",pP="completed",qS="cancelled",a9=`task-${qS}`,l9=`task-${pP}`,fb=`${gP}-${qS}`,o9=`${gP}-${pP}`;var Xv=class{constructor(e){Kh(this,"code");Kh(this,"name","TaskAbortError");Kh(this,"message");this.code=e,this.message=`${i9} ${qS} (reason: ${e})`}};const KS=(e,t)=>{if(typeof e!="function")throw new TypeError(cr(32))},Zm=()=>{},YS=(e,t=Zm)=>(e.catch(t),e),yP=(e,t)=>(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)),zo=e=>{if(e.aborted)throw new Xv(e.reason)};function xP(e,t){let n=Zm;return new Promise((r,l)=>{const o=()=>l(new Xv(e.reason));if(e.aborted){o();return}n=yP(e,o),t.finally(()=>n()).then(r,l)}).finally(()=>{n=Zm})}const s9=async(e,t)=>{try{return await Promise.resolve(),{status:"ok",value:await e()}}catch(n){return{status:n instanceof Xv?"cancelled":"rejected",error:n}}finally{t==null||t()}},Wm=e=>t=>YS(xP(e,t).then(n=>(zo(e),n))),bP=e=>{const t=Wm(e);return n=>{let r;return YS(t(new Promise(l=>{r=setTimeout(l,n)})).finally(()=>clearTimeout(r)))}},{assign:mu}=Object,CO={},Qv="listenerMiddleware",u9=(e,t)=>{const n=r=>yP(e,()=>r.abort(e.reason));return(r,l)=>{KS(r);const o=new AbortController;n(o);const u=s9(async()=>{zo(e),zo(o.signal);const c=await r({pause:Wm(o.signal),delay:bP(o.signal),signal:o.signal});return zo(o.signal),c},()=>o.abort(l9));return l!=null&&l.autoJoin&&t.push(u.catch(Zm)),{result:Wm(e)(u),cancel(){o.abort(a9)}}}},c9=(e,t)=>{const n=async(r,l)=>{zo(t);let o=()=>{};const u=[new Promise((h,m)=>{let v=e({predicate:r,effect:(p,x)=>{x.unsubscribe(),h([p,x.getState(),x.getOriginalState()])}});o=()=>{v(),m()}})];let c;l!=null&&u.push(new Promise(h=>{c=setTimeout(h,l,null)}));try{const h=await xP(t,Promise.race(u));return zo(t),h}finally{clearTimeout(c),o()}};return((r,l)=>YS(n(r,l)))},SP=e=>{let{type:t,actionCreator:n,matcher:r,predicate:l,effect:o}=e;if(t)l=Er(t).match;else if(n)t=n.type,l=n.match;else if(r)l=r;else if(!l)throw new Error(cr(21));return KS(o),{predicate:l,type:t,effect:o}},wP=mu(e=>{const{type:t,predicate:n,effect:r}=SP(e);return{id:YV(),effect:r,type:t,predicate:n,pending:new Set,unsubscribe:()=>{throw new Error(cr(22))}}},{withTypes:()=>wP}),_O=(e,t)=>{const{type:n,effect:r,predicate:l}=SP(t);return Array.from(e.values()).find(o=>(typeof n=="string"?o.type===n:o.predicate===l)&&o.effect===r)},db=e=>{e.pending.forEach(t=>{t.abort(fb)})},f9=(e,t)=>()=>{for(const n of t.keys())db(n);e.clear()},AO=(e,t,n)=>{try{e(t,n)}catch(r){setTimeout(()=>{throw r},0)}},jP=mu(Er(`${Qv}/add`),{withTypes:()=>jP}),d9=Er(`${Qv}/removeAll`),CP=mu(Er(`${Qv}/remove`),{withTypes:()=>CP}),h9=(...e)=>{console.error(`${Qv}/error`,...e)},ed=(e={})=>{const t=new Map,n=new Map,r=A=>{const N=n.get(A)??0;n.set(A,N+1)},l=A=>{const N=n.get(A)??1;N===1?n.delete(A):n.set(A,N-1)},{extra:o,onError:u=h9}=e;KS(u);let c;const h=()=>{if(!c){const A=Array.from(t.values()),N=new Set;let O=!1;for(const T of A)typeof T.type=="string"?N.add(T.type):O=!0;c={entries:A,types:N,anyType:O}}return c},m=A=>{t.has(A.id)||(t.set(A.id,A),c=void 0)},v=A=>(A.unsubscribe=()=>{t.delete(A.id)&&(c=void 0)},m(A),N=>{A.unsubscribe(),N!=null&&N.cancelActive&&db(A)}),p=(A=>{const N=_O(t,A)??wP(A);return v(N)});mu(p,{withTypes:()=>p});const x=A=>{const N=_O(t,A);return N&&(N.unsubscribe(),A.cancelActive&&db(N)),!!N};mu(x,{withTypes:()=>x});const S=async(A,N,O,T)=>{const R=new AbortController,E=c9(p,R.signal),D=[];try{A.pending.add(R),r(A),await Promise.resolve(A.effect(N,mu({},O,{getOriginalState:T,condition:(k,I)=>E(k,I).then(Boolean),take:E,delay:bP(R.signal),pause:Wm(R.signal),extra:o,signal:R.signal,fork:u9(R.signal,D),unsubscribe:A.unsubscribe,subscribe:()=>{m(A)},cancelActiveListeners:()=>{A.pending.forEach((k,I,P)=>{k!==R&&(k.abort(fb),P.delete(k))})},cancel:()=>{R.abort(fb),A.pending.delete(R)},throwIfCancelled:()=>{zo(R.signal)}})))}catch(k){k instanceof Xv||AO(u,k,{raisedBy:"effect"})}finally{await Promise.all(D),R.abort(o9),l(A),A.pending.delete(R)}},w=f9(t,n),j=()=>{w(),c=void 0};return{middleware:A=>N=>O=>{if(!eP(O))return N(O);if(jP.match(O))return p(O.payload);if(d9.match(O)){j();return}if(CP.match(O))return x(O.payload);let T=A.getState();const R=()=>{if(T===CO)throw new Error(cr(23));return T};let E;try{E=N(O);const{entries:D,types:k,anyType:I}=h();if(I||k.has(O.type)){const P=A.getState();for(const B of D){if(typeof B.type=="string"&&B.type!==O.type)continue;let F=!1;try{F=B.predicate(O,P,T)}catch(se){F=!1,AO(u,se,{raisedBy:"predicate"})}F&&S(B,O,A,R)}}}finally{T=CO}return E},startListening:p,stopListening:x,clearListeners:j}};function cr(e){return`Minified Redux Toolkit error #${e}; visit https://redux-toolkit.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var m9={layoutType:"horizontal",width:0,height:0,margin:{top:5,right:5,bottom:5,left:5},scale:1},_P=Hn({name:"chartLayout",initialState:m9,reducers:{setLayout(e,t){e.layoutType=t.payload},setChartSize(e,t){e.width=t.payload.width,e.height=t.payload.height},setMargin(e,t){var n,r,l,o;e.margin.top=(n=t.payload.top)!==null&&n!==void 0?n:0,e.margin.right=(r=t.payload.right)!==null&&r!==void 0?r:0,e.margin.bottom=(l=t.payload.bottom)!==null&&l!==void 0?l:0,e.margin.left=(o=t.payload.left)!==null&&o!==void 0?o:0},setScale(e,t){e.scale=t.payload}}}),Zv=_P.actions,v9=Zv.setMargin,g9=Zv.setLayout,p9=Zv.setChartSize,y9=Zv.setScale,x9=_P.reducer;function AP(e,t,n){return Array.isArray(e)&&e&&t+n!==0?e.slice(t,n+1):e}function it(e){return Number.isFinite(e)}function Fi(e){return typeof e=="number"&&e>0&&Number.isFinite(e)}function EO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function or(e){for(var t=1;t{if(t&&n){var r=n.width,l=n.height,o=t.align,u=t.verticalAlign,c=t.layout,h=t.position,m=t.offset,v=m===void 0?0:m;if(h!=null){if($H(h)){if(h==="top"&&Re(e.top))return or(or({},e),{},{top:e.top+(l||0)+v});if(h==="bottom"&&Re(e.bottom))return or(or({},e),{},{bottom:e.bottom+(l||0)+v});if(h==="left"&&Re(e.left))return or(or({},e),{},{left:e.left+(r||0)+v});if(h==="right"&&Re(e.right))return or(or({},e),{},{right:e.right+(r||0)+v})}return e}if((c==="vertical"||c==="horizontal"&&u==="middle")&&o!=="center"&&Re(e[o]))return or(or({},e),{},{[o]:e[o]+(r||0)});if((c==="horizontal"||c==="vertical"&&o==="center")&&u!=="middle"&&Re(e[u]))return or(or({},e),{},{[u]:e[u]+(l||0)})}return e},Ra=(e,t)=>e==="horizontal"&&t==="xAxis"||e==="vertical"&&t==="yAxis"||e==="centric"&&t==="angleAxis"||e==="radial"&&t==="radiusAxis",EP=(e,t,n,r)=>{if(r)return e.map(c=>c.coordinate);var l,o,u=e.map(c=>(c.coordinate===t&&(l=!0),c.coordinate===n&&(o=!0),c.coordinate));return l||u.push(t),o||u.push(n),u},OP=(e,t,n)=>{if(!e)return null;var r=e.duplicateDomain,l=e.type,o=e.range,u=e.scale,c=e.realScaleType,h=e.isCategorical,m=e.categoricalDomain,v=e.tickCount,p=e.ticks,x=e.niceTicks,S=e.axisType;if(!u)return null;var w=c==="scaleBand"&&u.bandwidth?u.bandwidth()/2:2,j=l==="category"&&u.bandwidth?u.bandwidth()/w:0;if(j=S==="angleAxis"&&o&&o.length>=2?Vr(o[0]-o[1])*2*j:j,p||x){var C=(p||x||[]).map((A,N)=>{var O=r?r.indexOf(A):A,T=u.map(O);return it(T)?{coordinate:T+j,value:A,offset:j,index:N}:null}).filter(ur);return C}return h&&m?m.map((A,N)=>{var O=u.map(A);return it(O)?{coordinate:O+j,value:A,index:N,offset:j}:null}).filter(ur):u.ticks&&v!=null?u.ticks(v).map((A,N)=>{var O=u.map(A);return it(O)?{coordinate:O+j,value:A,index:N,offset:j}:null}).filter(ur):u.domain().map((A,N)=>{var O=u.map(A);return it(O)?{coordinate:O+j,value:r?r[A]:A,index:N,offset:j}:null}).filter(ur)},C9=e=>{var t,n=e.length;if(!(n<=0)){var r=(t=e[0])===null||t===void 0?void 0:t.length;if(!(r==null||r<=0))for(var l=0;l=0?(m[0]=o,o+=x,m[1]=o):(m[0]=u,u+=x,m[1]=u)}}}},_9=e=>{var t,n=e.length;if(!(n<=0)){var r=(t=e[0])===null||t===void 0?void 0:t.length;if(!(r==null||r<=0))for(var l=0;l=0?(h[0]=o,o+=m,h[1]=o):(h[0]=0,h[1]=0)}}}},A9={sign:C9,expand:oF,none:Go,silhouette:sF,wiggle:uF,positive:_9},E9=(e,t,n)=>{var r,l=(r=A9[n])!==null&&r!==void 0?r:Go,o=lF().keys(t).value((c,h)=>Number(pn(c,h,0))).order(W0).offset(l),u=o(e);return u.forEach((c,h)=>{c.forEach((m,v)=>{var p=pn(e[v],t[h],0);Array.isArray(p)&&p.length===2&&Re(p[0])&&Re(p[1])&&(m[0]=p[0],m[1]=p[1])})}),u};function OO(e){var t=e.axis,n=e.ticks,r=e.bandSize,l=e.entry,o=e.index,u=e.dataKey;if(t.type==="category"){if(!t.allowDuplicatedCategory&&t.dataKey&&!yn(l[t.dataKey])){var c=rD(n,"value",l[t.dataKey]);if(c)return c.coordinate+r/2}return n!=null&&n[o]?n[o].coordinate+r/2:null}var h=pn(l,yn(u)?t.dataKey:u),m=t.scale.map(h);return Re(m)?m:null}var O9=e=>{var t=e.flat(2).filter(Re);return[Math.min(...t),Math.max(...t)]},N9=e=>[e[0]===1/0?0:e[0],e[1]===-1/0?0:e[1]],T9=(e,t,n)=>{if(!(e==null||Object.keys(e).length===0))return N9(Object.keys(e).reduce((r,l)=>{var o=e[l];if(!o)return r;var u=o.stackedData,c=u.reduce((h,m)=>{var v=AP(m,t,n),p=O9(v);return!it(p[0])||!it(p[1])?h:[Math.min(h[0],p[0]),Math.max(h[1],p[1])]},[1/0,-1/0]);return[Math.min(c[0],r[0]),Math.max(c[1],r[1])]},[1/0,-1/0]))},NO=/^dataMin[\s]*-[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,TO=/^dataMax[\s]*\+[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,Jm=(e,t,n)=>{if(e&&e.scale&&e.scale.bandwidth){var r=e.scale.bandwidth();if(!n||r>0)return r}if(e&&t&&t.length>=2){for(var l=Hv(t,j=>j.coordinate),o=[],u=0,c=1,h=l.length;cx&&(S=Math.min(w,S));return S===1/0?0:S}return n?void 0:0};function RO(e){var t=e.tooltipEntrySettings,n=e.dataKey,r=e.payload,l=e.value,o=e.name;return or(or({},t),{},{dataKey:n,payload:r,value:l,name:o})}function NP(e,t){if(e!=null)return String(e);if(typeof t=="string")return t}var R9=(e,t)=>{if(t==="horizontal")return e.relativeX;if(t==="vertical")return e.relativeY},M9=(e,t)=>t==="centric"?e.angle:e.radius,Ma=e=>e.layout.width,Da=e=>e.layout.height,D9=e=>e.layout.scale,TP=e=>e.layout.margin,Wv=W(e=>e.cartesianAxis.xAxis,e=>Object.values(e)),Jv=W(e=>e.cartesianAxis.yAxis,e=>Object.values(e)),P9="data-recharts-item-index",k9="data-recharts-item-id",td=60,XS=30;function MO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function sm(e){for(var t=1;te.brush.height;function $9(e){var t=Jv(e);return t.reduce((n,r)=>{if(r.orientation==="left"&&!r.mirror&&!r.hide){var l=typeof r.width=="number"?r.width:td;return n+l}return n},0)}function B9(e){var t=Jv(e);return t.reduce((n,r)=>{if(r.orientation==="right"&&!r.mirror&&!r.hide){var l=typeof r.width=="number"?r.width:td;return n+l}return n},0)}function H9(e){var t=Wv(e);return t.reduce((n,r)=>{if(r.orientation==="top"&&!r.mirror&&!r.hide){var l=typeof r.height=="number"?r.height:XS;return n+l}return n},0)}function F9(e){var t=Wv(e);return t.reduce((n,r)=>{if(r.orientation==="bottom"&&!r.mirror&&!r.hide){var l=typeof r.height=="number"?r.height:XS;return n+l}return n},0)}var Pn=W([Ma,Da,TP,U9,$9,B9,H9,F9,ZD,cV],(e,t,n,r,l,o,u,c,h,m)=>{var v={left:(n.left||0)+l,right:(n.right||0)+o},p={top:(n.top||0)+u,bottom:(n.bottom||0)+c},x=sm(sm({},p),v),S=x.bottom;x.bottom+=r,x=j9(x,h,m);var w=e-x.left-x.right,j=t-x.top-x.bottom;return sm(sm({brushBottom:S},x),{},{width:Math.max(w,0),height:Math.max(j,0)})}),V9=W(Pn,e=>({x:e.left,y:e.top,width:e.width,height:e.height})),RP=W(Ma,Da,(e,t)=>({x:0,y:0,width:e,height:t})),G9=b.createContext(null),fr=()=>b.useContext(G9)!=null,eg=e=>e.brush,tg=W([eg,Pn,TP],(e,t,n)=>({height:e.height,x:Re(e.x)?e.x:t.left,y:Re(e.y)?e.y:t.top+t.height+t.brushBottom-((n==null?void 0:n.bottom)||0),width:Re(e.width)?e.width:t.width}));function q9(e,t,{signal:n,edges:r}={}){let l,o=null;const u=r!=null&&r.includes("leading"),c=r==null||r.includes("trailing"),h=()=>{o!==null&&(e.apply(l,o),l=void 0,o=null)},m=()=>{c&&h(),S()};let v=null;const p=()=>{v!=null&&clearTimeout(v),v=setTimeout(()=>{v=null,m()},t)},x=()=>{v!==null&&(clearTimeout(v),v=null)},S=()=>{x(),l=void 0,o=null},w=()=>{h()},j=function(...C){if(n!=null&&n.aborted)return;l=this,o=C;const A=v==null;p(),u&&A&&h()};return j.schedule=p,j.cancel=S,j.flush=w,n==null||n.addEventListener("abort",S,{once:!0}),j}function K9(e,t=0,n={}){typeof n!="object"&&(n={});const{leading:r=!1,trailing:l=!0,maxWait:o}=n,u=Array(2);r&&(u[0]="leading"),l&&(u[1]="trailing");let c,h=null;const m=q9(function(...x){c=e.apply(this,x),h=null},t,{edges:u}),v=function(...x){return o!=null&&(h===null&&(h=Date.now()),Date.now()-h>=o)?((r||l)&&(c=e.apply(this,x)),h=Date.now(),m.cancel(),m.schedule(),c):(m.apply(this,x),c)},p=()=>(m.flush(),c);return v.cancel=m.cancel,v.flush=p,v}function Y9(e,t=0,n={}){const{leading:r=!0,trailing:l=!0}=n;return K9(e,t,{leading:r,maxWait:t,trailing:l})}var ev=function(t,n){for(var r=arguments.length,l=new Array(r>2?r-2:0),o=2;ol[u++]))}},ki={width:"100%",height:"100%",debounce:0,minWidth:0,initialDimension:{width:-1,height:-1}},MP=(e,t,n)=>{var r=n.width,l=r===void 0?ki.width:r,o=n.height,u=o===void 0?ki.height:o,c=n.aspect,h=n.maxHeight,m=Vo(l)?e:Number(l),v=Vo(u)?t:Number(u);return c&&c>0&&(m?v=m/c:v&&(m=v*c),h&&v!=null&&v>h&&(v=h)),{calculatedWidth:m,calculatedHeight:v}},X9={width:0,height:0,overflow:"visible"},Q9={width:0,overflowX:"visible"},Z9={height:0,overflowY:"visible"},W9={},J9=e=>{var t=e.width,n=e.height,r=Vo(t),l=Vo(n);return r&&l?X9:r?Q9:l?Z9:W9};function eG(e){var t=e.width,n=e.height,r=e.aspect,l=t,o=n;return l===void 0&&o===void 0?(l=ki.width,o=ki.height):l===void 0?l=r&&r>0?void 0:ki.width:o===void 0&&(o=r&&r>0?void 0:ki.height),{width:l,height:o}}var tG=["aspect","initialDimension","width","height","minWidth","minHeight","maxHeight","children","debounce","id","className","onResize","style"];function tv(){return tv=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);n({width:n,height:r}),[n,r]);return dG(l)?b.createElement(DP.Provider,{value:l},t):null}var QS=()=>b.useContext(DP),hG=b.forwardRef((e,t)=>{var n=e.aspect,r=e.initialDimension,l=r===void 0?ki.initialDimension:r,o=e.width,u=e.height,c=e.minWidth,h=c===void 0?ki.minWidth:c,m=e.minHeight,v=e.maxHeight,p=e.children,x=e.debounce,S=x===void 0?ki.debounce:x,w=e.id,j=e.className,C=e.onResize,A=e.style,N=A===void 0?{}:A,O=cG(e,tG),T=b.useRef(null),R=b.useRef();R.current=C,b.useImperativeHandle(t,()=>T.current);var E=b.useState({containerWidth:l.width,containerHeight:l.height}),D=aG(E,2),k=D[0],I=D[1],P=b.useCallback((G,ne)=>{I(ie=>{var ce=Math.round(G),U=Math.round(ne);return ie.containerWidth===ce&&ie.containerHeight===U?ie:{containerWidth:ce,containerHeight:U}})},[]);b.useEffect(()=>{if(T.current==null||typeof ResizeObserver>"u")return Ku;var G=Ee=>{var ee,ve=Ee[0];if(ve!=null){var z=ve.contentRect,Y=z.width,le=z.height;P(Y,le),(ee=R.current)===null||ee===void 0||ee.call(R,Y,le)}};S>0&&(G=Y9(G,S,{trailing:!0,leading:!1}));var ne=new ResizeObserver(G),ie=T.current.getBoundingClientRect(),ce=ie.width,U=ie.height;return P(ce,U),ne.observe(T.current),()=>{ne.disconnect()}},[P,S]);var B=k.containerWidth,F=k.containerHeight;ev(!n||n>0,"The aspect(%s) must be greater than zero.",n);var se=MP(B,F,{width:o,height:u,aspect:n,maxHeight:v}),ue=se.calculatedWidth,de=se.calculatedHeight;return ev(B<0||F<0||ue!=null&&ue>0||de!=null&&de>0,`The width(%s) and height(%s) of chart should be greater than 0, + */var uO;function eV(){if(uO)return Ox;uO=1;var e=Hu(),t=JF();function n(m,v){return m===v&&(m!==0||1/m===1/v)||m!==m&&v!==v}var r=typeof Object.is=="function"?Object.is:n,l=t.useSyncExternalStore,o=e.useRef,u=e.useEffect,c=e.useMemo,h=e.useDebugValue;return Ox.useSyncExternalStoreWithSelector=function(m,v,g,x,S){var w=o(null);if(w.current===null){var j={hasValue:!1,value:null};w.current=j}else j=w.current;w=c(function(){function E(A){if(!N){if(N=!0,O=A,A=x(A),S!==void 0&&j.hasValue){var D=j.value;if(S(D,A))return T=D}return T=A}if(D=T,r(O,A))return D;var k=x(A);return S!==void 0&&S(D,k)?(O=A,D):(O=A,T=k)}var N=!1,O,T,R=g===void 0?null:g;return[function(){return E(v())},R===null?void 0:function(){return E(R())}]},[v,g,x,S]);var C=l(m,w[0],w[1]);return u(function(){j.hasValue=!0,j.value=C},[C]),h(C),C},Ox}var cO;function tV(){return cO||(cO=1,Ax.exports=eV()),Ax.exports}var nV=tV(),FS=b.createContext(null),rV=e=>e,Vt=()=>{var e=b.useContext(FS);return e?e.store.dispatch:rV},Tm=()=>{},iV=()=>Tm,aV=(e,t)=>e===t;function ke(e){var t=b.useContext(FS),n=b.useMemo(()=>t?r=>{if(r!=null)return e(r)}:Tm,[t,e]);return nV.useSyncExternalStoreWithSelector(t?t.subscription.addNestedSub:iV,t?t.store.getState:Tm,t?t.store.getState:Tm,n,aV)}function lV(e,t=`expected a function, instead received ${typeof e}`){if(typeof e!="function")throw new TypeError(t)}function oV(e,t="expected all items to be functions, instead received the following types: "){if(!e.every(n=>typeof n=="function")){const n=e.map(r=>typeof r=="function"?`function ${r.name||"unnamed"}()`:typeof r).join(", ");throw new TypeError(`${t}[${n}]`)}}var fO=e=>Array.isArray(e)?e:[e];function sV(e){const t=Array.isArray(e[0])?e[0]:e;return oV(t,"createSelector expects all input-selectors to be functions, but received the following types: "),t}function uV(e,t){const n=[],{length:r}=e;for(let l=0;ltypeof WeakRef>"u"?cV:WeakRef,eP=fV(),dV=0,dO=1;function im(){return{s:dV,v:void 0,o:null,p:null}}function hV(e){return e instanceof eP?e.deref():e}function tP(e,t={}){let n=im();const{resultEqualityCheck:r}=t;let l,o=0;function u(){let c=n;const{length:h}=arguments;for(let g=0,x=h;g{n=im(),u.resetResultsCount()},u.resultsCount=()=>o,u.resetResultsCount=()=>{o=0},u}function mV(e,...t){const n=typeof e=="function"?{memoize:e,memoizeOptions:t}:e,r=(...l)=>{let o=0,u=0,c,h={},m=l.pop();typeof m=="object"&&(h=m,m=l.pop()),lV(m,`createSelector expects an output function after the inputs, but received: [${typeof m}]`);const v={...n,...h},{memoize:g,memoizeOptions:x=[],argsMemoize:S=tP,argsMemoizeOptions:w=[]}=v,j=fO(x),C=fO(w),E=sV(l),N=g(function(){return o++,m.apply(null,arguments)},...j),O=S(function(){u++;const R=uV(E,arguments);return c=N.apply(null,R),c},...C);return Object.assign(O,{resultFunc:m,memoizedResultFunc:N,dependencies:E,dependencyRecomputations:()=>u,resetDependencyRecomputations:()=>{u=0},lastResult:()=>c,recomputations:()=>o,resetRecomputations:()=>{o=0},memoize:g,argsMemoize:S})};return Object.assign(r,{withTypes:()=>r}),r}var W=mV(tP);function vV(e,t=1){const n=[],r=Math.floor(t),l=(o,u)=>{for(let c=0;c{if(e!==t){const r=hO(e),l=hO(t);if(r===l&&r===0){if(et)return n==="desc"?-1:1}return n==="desc"?l-r:r-l}return 0},yV=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,xV=/^\w*$/;function bV(e,t){return Array.isArray(e)?!1:typeof e=="number"||typeof e=="boolean"||e==null||NS(e)?!0:typeof e=="string"&&(xV.test(e)||!yV.test(e))||t!=null}function SV(e,t,n,r){if(e==null)return[];n=n,Array.isArray(e)||(e=US(e)?Array.from(e):gV(e)),Array.isArray(t)||(t=t==null?[null]:[t]),t.length===0&&(t=[null]),Array.isArray(n)||(n=n==null?[]:[n]),n=n.map(c=>String(c));const l=(c,h)=>{let m=c,v=0;for(;v0&&v===h.length?m:void 0},o=(c,h)=>{if(c==null)return h;if(h!=null)return typeof c=="object"&&"key"in c?Pu(h,c.key)?h[c.key]:l(h,c.path):typeof c=="function"?c(h):Array.isArray(c)?l(h,c):h[c]},u=t.map(c=>(Array.isArray(c)&&c.length===1&&(c=c[0]),c==null||typeof c=="function"||Array.isArray(c)||bV(c)?c:{key:c,path:TS(c)}));return e.map(c=>({original:c,criteria:u.map(h=>o(h,c))})).slice().sort((c,h)=>{for(let m=0;mc.original)}function Fv(e,...t){const n=t.length;return n>1&&rb(e,t[0],t[1])?t=[]:n>2&&rb(t[0],t[1],t[2])&&(t=[t[0]]),SV(e,vV(t),["asc"])}var nP=e=>e.legend.settings,wV=e=>e.legend.size,jV=e=>e.legend.payload;W([jV,nP],(e,t)=>{var n=t.itemSorter,r=e.flat(1);return n?Fv(r,n):r});function CV(e,t){return OV(e)||AV(e,t)||EV(e,t)||_V()}function _V(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function EV(e,t){if(e){if(typeof e=="string")return mO(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?mO(e,t):void 0}}function mO(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);nam||Math.abs(e.left-t.left)>am||Math.abs(e.top-t.top)>am||Math.abs(e.width-t.width)>am}function gO(e){var t=e.getBoundingClientRect();return{height:t.height,left:t.left,top:t.top,width:t.width}}function NV(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],t=b.useState({height:0,left:0,top:0,width:0}),n=CV(t,2),r=n[0],l=n[1],o=b.useRef(null),u=b.useRef(r);u.current=r;var c=b.useCallback(h=>{if(o.current!=null&&(o.current.disconnect(),o.current=null),h!=null){var m=gO(h);if(vO(m,u.current)&&l(m),typeof ResizeObserver<"u"){var v=new ResizeObserver(()=>{var g=gO(h);vO(g,u.current)&&l(g)});v.observe(h),o.current=v}}},[...e]);return b.useEffect(()=>()=>{var h;(h=o.current)===null||h===void 0||h.disconnect()},[]),[r,c]}function Nn(e){return`Minified Redux error #${e}; visit https://redux.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var TV=typeof Symbol=="function"&&Symbol.observable||"@@observable",pO=TV,Rx=()=>Math.random().toString(36).substring(7).split("").join("."),RV={INIT:`@@redux/INIT${Rx()}`,REPLACE:`@@redux/REPLACE${Rx()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${Rx()}`},Vm=RV;function VS(e){if(typeof e!="object"||e===null)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||Object.getPrototypeOf(e)===null}function rP(e,t,n){if(typeof e!="function")throw new Error(Nn(2));if(typeof t=="function"&&typeof n=="function"||typeof n=="function"&&typeof arguments[3]=="function")throw new Error(Nn(0));if(typeof t=="function"&&typeof n>"u"&&(n=t,t=void 0),typeof n<"u"){if(typeof n!="function")throw new Error(Nn(1));return n(rP)(e,t)}let r=e,l=t,o=new Map,u=o,c=0,h=!1;function m(){u===o&&(u=new Map,o.forEach((C,E)=>{u.set(E,C)}))}function v(){if(h)throw new Error(Nn(3));return l}function g(C){if(typeof C!="function")throw new Error(Nn(4));if(h)throw new Error(Nn(5));let E=!0;m();const N=c++;return u.set(N,C),function(){if(E){if(h)throw new Error(Nn(6));E=!1,m(),u.delete(N),o=null}}}function x(C){if(!VS(C))throw new Error(Nn(7));if(typeof C.type>"u")throw new Error(Nn(8));if(typeof C.type!="string")throw new Error(Nn(17));if(h)throw new Error(Nn(9));try{h=!0,l=r(l,C)}finally{h=!1}return(o=u).forEach(N=>{N()}),C}function S(C){if(typeof C!="function")throw new Error(Nn(10));r=C,x({type:Vm.REPLACE})}function w(){const C=g;return{subscribe(E){if(typeof E!="object"||E===null)throw new Error(Nn(11));function N(){const T=E;T.next&&T.next(v())}return N(),{unsubscribe:C(N)}},[pO](){return this}}}return x({type:Vm.INIT}),{dispatch:x,subscribe:g,getState:v,replaceReducer:S,[pO]:w}}function MV(e){Object.keys(e).forEach(t=>{const n=e[t];if(typeof n(void 0,{type:Vm.INIT})>"u")throw new Error(Nn(12));if(typeof n(void 0,{type:Vm.PROBE_UNKNOWN_ACTION()})>"u")throw new Error(Nn(13))})}function iP(e){const t=Object.keys(e),n={};for(let o=0;o"u")throw c&&c.type,new Error(Nn(14));m[g]=w,h=h||w!==S}return h=h||r.length!==Object.keys(u).length,h?m:u}}function Gm(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,n)=>(...r)=>t(n(...r)))}function DV(...e){return t=>(n,r)=>{const l=t(n,r);let o=()=>{throw new Error(Nn(15))};const u={getState:l.getState,dispatch:(h,...m)=>o(h,...m)},c=e.map(h=>h(u));return o=Gm(...c)(l.dispatch),{...l,dispatch:o}}}function aP(e){return VS(e)&&"type"in e&&typeof e.type=="string"}var lP=Symbol.for("immer-nothing"),yO=Symbol.for("immer-draftable"),Bn=Symbol.for("immer-state");function si(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var Er=Object,ku=Er.getPrototypeOf,qm="constructor",Vv="prototype",ib="configurable",Km="enumerable",Rm="writable",Rf="value",Aa=e=>!!e&&!!e[Bn];function Qr(e){var t;return e?oP(e)||qv(e)||!!e[yO]||!!((t=e[qm])!=null&&t[yO])||Kv(e)||ed(e):!1}var PV=Er[Vv][qm].toString(),xO=new WeakMap;function oP(e){if(!e||!GS(e))return!1;const t=ku(e);if(t===null||t===Er[Vv])return!0;const n=Er.hasOwnProperty.call(t,qm)&&t[qm];if(n===Object)return!0;if(!su(n))return!1;let r=xO.get(n);return r===void 0&&(r=Function.toString.call(n),xO.set(n,r)),r===PV}function Gv(e,t,n=!0){Jf(e)===0?(n?Reflect.ownKeys(e):Er.keys(e)).forEach(l=>{t(l,e[l],e)}):e.forEach((r,l)=>t(l,r,e))}function Jf(e){const t=e[Bn];return t?t.type_:qv(e)?1:Kv(e)?2:ed(e)?3:0}var Mx=(e,t,n=Jf(e))=>n===2?e.has(t):Er[Vv].hasOwnProperty.call(e,t),ab=(e,t,n=Jf(e))=>n===2?e.get(t):e[t],Ym=(e,t,n,r=Jf(e))=>{r===2?e.set(t,n):r===3?e.add(n):e[t]=n};function kV(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}var qv=Array.isArray,Kv=e=>e instanceof Map,ed=e=>e instanceof Set,GS=e=>typeof e=="object",su=e=>typeof e=="function",Dx=e=>typeof e=="boolean";function IV(e){const t=+e;return Number.isInteger(t)&&String(t)===e}var da=e=>e.copy_||e.base_,qS=e=>e.modified_?e.copy_:e.base_;function lb(e,t){if(Kv(e))return new Map(e);if(ed(e))return new Set(e);if(qv(e))return Array[Vv].slice.call(e);const n=oP(e);if(t===!0||t==="class_only"&&!n){const r=Er.getOwnPropertyDescriptors(e);delete r[Bn];let l=Reflect.ownKeys(r);for(let o=0;o1&&Er.defineProperties(e,{set:lm,add:lm,clear:lm,delete:lm}),Er.freeze(e),t&&Gv(e,(n,r)=>{KS(r,!0)},!1)),e}function zV(){si(2)}var lm={[Rf]:zV};function Yv(e){return e===null||!GS(e)?!0:Er.isFrozen(e)}var Xm="MapSet",ob="Patches",bO="ArrayMethods",sP={};function qo(e){const t=sP[e];return t||si(0,e),t}var SO=e=>!!sP[e],Mf,uP=()=>Mf,LV=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:SO(Xm)?qo(Xm):void 0,arrayMethodsPlugin_:SO(bO)?qo(bO):void 0});function wO(e,t){t&&(e.patchPlugin_=qo(ob),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function sb(e){ub(e),e.drafts_.forEach(UV),e.drafts_=null}function ub(e){e===Mf&&(Mf=e.parent_)}var jO=e=>Mf=LV(Mf,e);function UV(e){const t=e[Bn];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function CO(e,t){t.unfinalizedDrafts_=t.drafts_.length;const n=t.drafts_[0];if(e!==void 0&&e!==n){n[Bn].modified_&&(sb(t),si(4)),Qr(e)&&(e=_O(t,e));const{patchPlugin_:l}=t;l&&l.generateReplacementPatches_(n[Bn].base_,e,t)}else e=_O(t,n);return $V(t,e,!0),sb(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==lP?e:void 0}function _O(e,t){if(Yv(t))return t;const n=t[Bn];if(!n)return Qm(t,e.handledSet_,e);if(!Xv(n,e))return t;if(!n.modified_)return n.base_;if(!n.finalized_){const{callbacks_:r}=n;if(r)for(;r.length>0;)r.pop()(e);dP(n,e)}return n.copy_}function $V(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&KS(t,n)}function cP(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var Xv=(e,t)=>e.scope_===t,BV=[];function fP(e,t,n,r){const l=da(e),o=e.type_;if(r!==void 0&&ab(l,r,o)===t){Ym(l,r,n,o);return}if(!e.draftLocations_){const c=e.draftLocations_=new Map;Gv(l,(h,m)=>{if(Aa(m)){const v=c.get(m)||[];v.push(h),c.set(m,v)}})}const u=e.draftLocations_.get(t)??BV;for(const c of u)Ym(l,c,n,o)}function HV(e,t,n){e.callbacks_.push(function(l){var c;const o=t;if(!o||!Xv(o,l))return;(c=l.mapSetPlugin_)==null||c.fixSetContents(o);const u=qS(o);fP(e,o.draft_??o,u,n),dP(o,l)})}function dP(e,t){var r;if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(((r=e.assigned_)==null?void 0:r.size)??0)>0)){const{patchPlugin_:l}=t;if(l){const o=l.getPath(e);o&&l.generatePatches_(e,o,t)}cP(e)}}function FV(e,t,n){const{scope_:r}=e;if(Aa(n)){const l=n[Bn];Xv(l,r)&&l.callbacks_.push(function(){Mm(e);const u=qS(l);fP(e,n,u,t)})}else Qr(n)&&e.callbacks_.push(function(){const o=da(e);e.type_===3?o.has(n)&&Qm(n,r.handledSet_,r):ab(o,t,e.type_)===n&&r.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&Qm(ab(e.copy_,t,e.type_),r.handledSet_,r)})}function Qm(e,t,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||Aa(e)||t.has(e)||!Qr(e)||Yv(e)||(t.add(e),Gv(e,(r,l)=>{if(Aa(l)){const o=l[Bn];if(Xv(o,n)){const u=qS(o);Ym(e,r,u,e.type_),cP(o)}}else Qr(l)&&Qm(l,t,n)})),e}function VV(e,t){const n=qv(e),r={type_:n?1:0,scope_:t?t.scope_:uP(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let l=r,o=Zm;n&&(l=[r],o=Df);const{revoke:u,proxy:c}=Proxy.revocable(l,o);return r.draft_=c,r.revoke_=u,[c,r]}var Zm={get(e,t){if(t===Bn)return e;let n=e.scope_.arrayMethodsPlugin_;const r=e.type_===1&&typeof t=="string";if(r&&n!=null&&n.isArrayOperationMethod(t))return n.createMethodInterceptor(e,t);const l=da(e);if(!Mx(l,t,e.type_))return qV(e,l,t);const o=l[t];if(e.finalized_||!Qr(o)||r&&e.operationMethod&&(n!=null&&n.isMutatingArrayMethod(e.operationMethod))&&IV(t))return o;if(o===Px(e.base_,t)||GV(e,t,o)){Mm(e);const u=e.type_===1?+t:t,c=fb(e.scope_,o,e,u);return e.copy_[u]=c}return o},has(e,t){return t in da(e)},ownKeys(e){return Reflect.ownKeys(da(e))},set(e,t,n){const r=hP(da(e),t);if(r!=null&&r.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){const l=Px(da(e),t),o=l==null?void 0:l[Bn];if(o&&o.base_===n)return e.copy_[t]=n,e.assigned_.delete(t),!0;if(kV(n,l)&&(n!==void 0||Mx(e.base_,t,e.type_)))return!0;Mm(e),cb(e)}return e.copy_[t]===n&&(n!==void 0||Mx(e.copy_,t,e.type_))||Number.isNaN(n)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=n,e.assigned_.set(t,!0),FV(e,t,n)),!0},deleteProperty(e,t){return Mm(e),Px(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),cb(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const n=da(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{[Rm]:!0,[ib]:e.type_!==1||t!=="length",[Km]:r[Km],[Rf]:n[t]}},defineProperty(){si(11)},getPrototypeOf(e){return ku(e.base_)},setPrototypeOf(){si(12)}},Df={};for(let e in Zm){let t=Zm[e];Df[e]=function(){const n=arguments;return n[0]=n[0][0],t.apply(this,n)}}Df.deleteProperty=function(e,t){return Df.set.call(this,e,t,void 0)};Df.set=function(e,t,n){return Zm.set.call(this,e[0],t,n,e[0])};function Px(e,t){const n=e[Bn];return(n?da(n):e)[t]}function GV(e,t,n){return e.type_!==1||!e.allIndicesReassigned_||!Qr(n)||n[Bn]?!1:e.baseRefs_.has(n)}function qV(e,t,n){var l;const r=hP(t,n);return r?Rf in r?r[Rf]:(l=r.get)==null?void 0:l.call(e.draft_):void 0}function hP(e,t){if(!(t in e))return;let n=ku(e);for(;n;){const r=Object.getOwnPropertyDescriptor(n,t);if(r)return r;n=ku(n)}}function cb(e){e.modified_||(e.modified_=!0,e.parent_&&cb(e.parent_))}function Mm(e){e.copy_||(e.assigned_=new Map,e.copy_=lb(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var KV=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(n,r,l)=>{if(su(n)&&!su(r)){const u=r;r=n;const c=this;return function(m=u,...v){return c.produce(m,g=>r.call(this,g,...v))}}su(r)||si(6),l!==void 0&&!su(l)&&si(7);let o;if(Qr(n)){const u=jO(this),c=fb(u,n,void 0);let h=!0;try{o=r(c),h=!1}finally{h?sb(u):ub(u)}return wO(u,l),CO(o,u)}else if(!n||!GS(n)){if(o=r(n),o===void 0&&(o=n),o===lP&&(o=void 0),this.autoFreeze_&&KS(o,!0),l){const u=[],c=[];qo(ob).generateReplacementPatches_(n,o,{patches_:u,inversePatches_:c}),l(u,c)}return o}else si(1,n)},this.produceWithPatches=(n,r)=>{if(su(n))return(c,...h)=>this.produceWithPatches(c,m=>n(m,...h));let l,o;return[this.produce(n,r,(c,h)=>{l=c,o=h}),l,o]},Dx(e==null?void 0:e.autoFreeze)&&this.setAutoFreeze(e.autoFreeze);const t=e==null?void 0:e.useStrictShallowCopy;(Dx(t)||t==="class_only")&&this.setUseStrictShallowCopy(t),Dx(e==null?void 0:e.useStrictIteration)&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){Qr(e)||si(8),Aa(e)&&(e=Gr(e));const t=jO(this),n=fb(t,e,void 0);return n[Bn].isManual_=!0,ub(t),n}finishDraft(e,t){const n=e&&e[Bn];(!n||!n.isManual_)&&si(9);const{scope_:r}=n;return wO(r,t),CO(void 0,r)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}setUseStrictIteration(e){this.useStrictIteration_=e}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(e,t){let n;for(n=t.length-1;n>=0;n--){const l=t[n];if(l.path.length===0&&l.op==="replace"){e=l.value;break}}n>-1&&(t=t.slice(n+1));const r=qo(ob).applyPatches_;return Aa(e)?r(e,t):this.produce(e,l=>r(l,t))}};function fb(e,t,n,r){const[l,o]=Kv(t)?qo(Xm).proxyMap_(t,n):ed(t)?qo(Xm).proxySet_(t,n):VV(t,n);return((n==null?void 0:n.scope_)??uP()).drafts_.push(l),o.callbacks_=(n==null?void 0:n.callbacks_)??[],o.key_=r,n&&r!==void 0?HV(n,o,r):o.callbacks_.push(function(h){var v;(v=h.mapSetPlugin_)==null||v.fixSetContents(o);const{patchPlugin_:m}=h;o.modified_&&m&&m.generatePatches_(o,[],h)}),l}function Gr(e){return Aa(e)||si(10,e),mP(e)}function mP(e){if(!Qr(e)||Yv(e))return e;const t=e[Bn];let n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=lb(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=lb(e,!0);const l=n;return ed(n)&&(n=new Set),Gv(l,(o,u)=>{Ym(n,o,mP(u))},r),t&&(t.finalized_=!1),n}var kx=globalThis.Iterator;kx==null||kx.from;var YV=new KV,vP=YV.produce,it=e=>e;function gP(e){return({dispatch:n,getState:r})=>l=>o=>typeof o=="function"?o(n,r,e):l(o)}var XV=gP(),QV=gP;const ZV=typeof window<"u"&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(arguments.length!==0)return typeof arguments[0]=="object"?Gm:Gm.apply(null,arguments)};function Ar(e,t){function n(...r){if(t){let l=t(...r);if(!l)throw new Error(cr(0));return{type:e,payload:l.payload,..."meta"in l&&{meta:l.meta},..."error"in l&&{error:l.error}}}return{type:e,payload:r[0]}}return n.toString=()=>`${e}`,n.type=e,n.match=r=>r!=null&&r.type===e&&aP(r),n}var pP=class bf extends Array{constructor(...t){super(...t),Object.setPrototypeOf(this,bf.prototype)}static get[Symbol.species](){return bf}concat(...t){return super.concat.apply(this,t)}prepend(...t){return t.length===1&&Array.isArray(t[0])?new bf(...t[0].concat(this)):new bf(...t.concat(this))}};function EO(e){return Qr(e)?vP(e,()=>{}):e}function om(e,t,n){return e.has(t)?e.get(t):e.set(t,n(t)).get(t)}function WV(e){return typeof e=="boolean"}const JV=()=>function(t){const{thunk:n=!0,immutableCheck:r=!0,serializableCheck:l=!0,actionCreatorCheck:o=!0}=t??{};let u=new pP;return n&&(WV(n)?u.push(XV):u.push(QV(n.extraArgument))),u},yP="RTK_autoBatch",Ot=()=>e=>({payload:e,meta:{[yP]:!0}}),AO=e=>t=>{setTimeout(t,e)},e9=(e,t,n)=>r=>{let l=!1,o,u;const c=()=>{l||(l=!0,t==null||t(o),clearTimeout(u),r())};o=e(c),u=setTimeout(c,n)},xP=(e={type:"raf"})=>t=>(...n)=>{const r=t(...n);let l=!0,o=!1,u=!1;const c=new Set,h=e.type==="tick"?queueMicrotask:e.type==="raf"?typeof window<"u"&&window.requestAnimationFrame?e9(window.requestAnimationFrame,window.cancelAnimationFrame,100):AO(10):e.type==="callback"?e.queueNotification:AO(e.timeout),m=()=>{u=!1,o&&(o=!1,c.forEach(v=>v()))};return Object.assign({},r,{subscribe(v){const g=()=>l&&v(),x=r.subscribe(g);return c.add(v),()=>{x(),c.delete(v)}},dispatch(v){var g;try{return l=!((g=v==null?void 0:v.meta)!=null&&g[yP]),o=!l,o&&(u||(u=!0,h(m))),r.dispatch(v)}finally{l=!0}}})},t9=e=>function(n){const{autoBatch:r=!0}=n??{};let l=new pP(e);return r&&l.push(xP(typeof r=="object"?r:void 0)),l};function n9(e){const t=JV(),{reducer:n=void 0,middleware:r,devTools:l=!0,preloadedState:o=void 0,enhancers:u=void 0}=e||{};let c;if(typeof n=="function")c=n;else if(VS(n))c=iP(n);else throw new Error(cr(1));let h;typeof r=="function"?h=r(t):h=t();let m=Gm;l&&(m=ZV({trace:!1,...typeof l=="object"&&l}));const v=DV(...h),g=t9(v);let x=typeof u=="function"?u(g):g();const S=m(...x);return rP(c,o,S)}function bP(e){const t={},n=[];let r;const l={addCase(o,u){const c=typeof o=="string"?o:o.type;if(!c)throw new Error(cr(28));if(c in t)throw new Error(cr(29));return t[c]=u,l},addAsyncThunk(o,u){return u.pending&&(t[o.pending.type]=u.pending),u.rejected&&(t[o.rejected.type]=u.rejected),u.fulfilled&&(t[o.fulfilled.type]=u.fulfilled),u.settled&&n.push({matcher:o.settled,reducer:u.settled}),l},addMatcher(o,u){return n.push({matcher:o,reducer:u}),l},addDefaultCase(o){return r=o,l}};return e(l),[t,n,r]}function r9(e){return typeof e=="function"}function i9(e,t){let[n,r,l]=bP(t),o;if(r9(e))o=()=>EO(e());else{const h=EO(e);o=()=>h}function u(h,m,v){if(Aa(h)){const g=m(h,v);return g===void 0?h:g}else{if(Qr(h))return vP(h,g=>m(g,v));{const g=m(h,v);if(g===void 0){if(h===null)return h;throw new Error(cr(9))}return g}}}function c(h=o(),m){const v=n[m.type];let g;for(const{matcher:x,reducer:S}of r)x(m)&&S&&(g??(g=[])).push(S);if(!v&&!g)return l?u(h,l,m):h;if(v&&(h=u(h,v,m)),g)for(const x of g)h=u(h,x,m);return h}return c.getInitialState=o,c}let a9="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",l9=(e=21)=>{let t="",n=e;for(;n--;)t+=a9[Math.random()*64|0];return t};const o9=Symbol.for("rtk-slice-createasyncthunk");function s9(e,t){return`${e}/${t}`}function u9({creators:e}={}){var n;const t=(n=e==null?void 0:e.asyncThunk)==null?void 0:n[o9];return function(l){const{name:o,reducerPath:u=o}=l;if(!o)throw new Error(cr(11));const c=(typeof l.reducers=="function"?l.reducers(f9()):l.reducers)||{},h=Object.keys(c),m={sliceCaseReducersByName:{},sliceCaseReducersByType:{},actionCreators:{},sliceMatchers:[]},v={addCase(T,R){const A=typeof T=="string"?T:T.type;if(!A)throw new Error(cr(12));if(A in m.sliceCaseReducersByType)throw new Error(cr(13));return m.sliceCaseReducersByType[A]=R,v},addMatcher(T,R){return m.sliceMatchers.push({matcher:T,reducer:R}),v},exposeAction(T,R){return m.actionCreators[T]=R,v},exposeCaseReducer(T,R){return m.sliceCaseReducersByName[T]=R,v}};h.forEach(T=>{const R=c[T],A={reducerName:T,type:s9(o,T),createNotation:typeof l.reducers=="function"};h9(R)?v9(A,R,v,t):d9(A,R,v)});function g(){const[T={},R=[],A=void 0]=typeof l.extraReducers=="function"?bP(l.extraReducers):[l.extraReducers],D={...T,...m.sliceCaseReducersByType};return i9(l.initialState,k=>{for(let I in D)k.addCase(I,D[I]);for(let I of m.sliceMatchers)k.addMatcher(I.matcher,I.reducer);for(let I of R)k.addMatcher(I.matcher,I.reducer);A&&k.addDefaultCase(A)})}const x=T=>T,S=new Map,w=new WeakMap;let j;function C(T,R){return j||(j=g()),j(T,R)}function E(){return j||(j=g()),j.getInitialState()}function N(T,R=!1){function A(k){let I=k[T];return typeof I>"u"&&R&&(I=om(w,A,E)),I}function D(k=x){return om(om(S,R,()=>new WeakMap),k,()=>{const I={};for(const[P,B]of Object.entries(l.selectors??{}))I[P]=c9(B,k,()=>om(w,k,E),R);return I})}return{reducerPath:T,getSelectors:D,get selectors(){return D(A)},selectSlice:A}}const O={name:o,reducer:C,actions:m.actionCreators,caseReducers:m.sliceCaseReducersByName,getInitialState:E,...N(u),injectInto(T,{reducerPath:R,...A}={}){const D=R??u;return T.inject({reducerPath:D,reducer:C},A),{...O,...N(D,!0)}}};return O}}function c9(e,t,n,r){function l(o,...u){let c=t(o);return typeof c>"u"&&r&&(c=n()),e(c,...u)}return l.unwrapped=e,l}const Hn=u9();function f9(){function e(t,n){return{_reducerDefinitionType:"asyncThunk",payloadCreator:t,...n}}return e.withTypes=()=>e,{reducer(t){return Object.assign({[t.name](...n){return t(...n)}}[t.name],{_reducerDefinitionType:"reducer"})},preparedReducer(t,n){return{_reducerDefinitionType:"reducerWithPrepare",prepare:t,reducer:n}},asyncThunk:e}}function d9({type:e,reducerName:t,createNotation:n},r,l){let o,u;if("reducer"in r){if(n&&!m9(r))throw new Error(cr(17));o=r.reducer,u=r.prepare}else o=r;l.addCase(e,o).exposeCaseReducer(t,o).exposeAction(t,u?Ar(e,u):Ar(e))}function h9(e){return e._reducerDefinitionType==="asyncThunk"}function m9(e){return e._reducerDefinitionType==="reducerWithPrepare"}function v9({type:e,reducerName:t},n,r,l){if(!l)throw new Error(cr(18));const{payloadCreator:o,fulfilled:u,pending:c,rejected:h,settled:m,options:v}=n,g=l(e,o,v);r.exposeAction(t,g),u&&r.addCase(g.fulfilled,u),c&&r.addCase(g.pending,c),h&&r.addCase(g.rejected,h),m&&r.addMatcher(g.settled,m),r.exposeCaseReducer(t,{fulfilled:u||sm,pending:c||sm,rejected:h||sm,settled:m||sm})}function sm(){}const g9="task",SP="listener",wP="completed",YS="cancelled",p9=`task-${YS}`,y9=`task-${wP}`,db=`${SP}-${YS}`,x9=`${SP}-${wP}`;var Qv=class{constructor(e){Yh(this,"code");Yh(this,"name","TaskAbortError");Yh(this,"message");this.code=e,this.message=`${g9} ${YS} (reason: ${e})`}};const XS=(e,t)=>{if(typeof e!="function")throw new TypeError(cr(32))},Wm=()=>{},QS=(e,t=Wm)=>(e.catch(t),e),jP=(e,t)=>(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)),zo=e=>{if(e.aborted)throw new Qv(e.reason)};function CP(e,t){let n=Wm;return new Promise((r,l)=>{const o=()=>l(new Qv(e.reason));if(e.aborted){o();return}n=jP(e,o),t.finally(()=>n()).then(r,l)}).finally(()=>{n=Wm})}const b9=async(e,t)=>{try{return await Promise.resolve(),{status:"ok",value:await e()}}catch(n){return{status:n instanceof Qv?"cancelled":"rejected",error:n}}finally{t==null||t()}},Jm=e=>t=>QS(CP(e,t).then(n=>(zo(e),n))),_P=e=>{const t=Jm(e);return n=>{let r;return QS(t(new Promise(l=>{r=setTimeout(l,n)})).finally(()=>clearTimeout(r)))}},{assign:mu}=Object,OO={},Zv="listenerMiddleware",S9=(e,t)=>{const n=r=>jP(e,()=>r.abort(e.reason));return(r,l)=>{XS(r);const o=new AbortController;n(o);const u=b9(async()=>{zo(e),zo(o.signal);const c=await r({pause:Jm(o.signal),delay:_P(o.signal),signal:o.signal});return zo(o.signal),c},()=>o.abort(y9));return l!=null&&l.autoJoin&&t.push(u.catch(Wm)),{result:Jm(e)(u),cancel(){o.abort(p9)}}}},w9=(e,t)=>{const n=async(r,l)=>{zo(t);let o=()=>{};const u=[new Promise((h,m)=>{let v=e({predicate:r,effect:(g,x)=>{x.unsubscribe(),h([g,x.getState(),x.getOriginalState()])}});o=()=>{v(),m()}})];let c;l!=null&&u.push(new Promise(h=>{c=setTimeout(h,l,null)}));try{const h=await CP(t,Promise.race(u));return zo(t),h}finally{clearTimeout(c),o()}};return((r,l)=>QS(n(r,l)))},EP=e=>{let{type:t,actionCreator:n,matcher:r,predicate:l,effect:o}=e;if(t)l=Ar(t).match;else if(n)t=n.type,l=n.match;else if(r)l=r;else if(!l)throw new Error(cr(21));return XS(o),{predicate:l,type:t,effect:o}},AP=mu(e=>{const{type:t,predicate:n,effect:r}=EP(e);return{id:l9(),effect:r,type:t,predicate:n,pending:new Set,unsubscribe:()=>{throw new Error(cr(22))}}},{withTypes:()=>AP}),NO=(e,t)=>{const{type:n,effect:r,predicate:l}=EP(t);return Array.from(e.values()).find(o=>(typeof n=="string"?o.type===n:o.predicate===l)&&o.effect===r)},hb=e=>{e.pending.forEach(t=>{t.abort(db)})},j9=(e,t)=>()=>{for(const n of t.keys())hb(n);e.clear()},TO=(e,t,n)=>{try{e(t,n)}catch(r){setTimeout(()=>{throw r},0)}},OP=mu(Ar(`${Zv}/add`),{withTypes:()=>OP}),C9=Ar(`${Zv}/removeAll`),NP=mu(Ar(`${Zv}/remove`),{withTypes:()=>NP}),_9=(...e)=>{console.error(`${Zv}/error`,...e)},td=(e={})=>{const t=new Map,n=new Map,r=E=>{const N=n.get(E)??0;n.set(E,N+1)},l=E=>{const N=n.get(E)??1;N===1?n.delete(E):n.set(E,N-1)},{extra:o,onError:u=_9}=e;XS(u);let c;const h=()=>{if(!c){const E=Array.from(t.values()),N=new Set;let O=!1;for(const T of E)typeof T.type=="string"?N.add(T.type):O=!0;c={entries:E,types:N,anyType:O}}return c},m=E=>{t.has(E.id)||(t.set(E.id,E),c=void 0)},v=E=>(E.unsubscribe=()=>{t.delete(E.id)&&(c=void 0)},m(E),N=>{E.unsubscribe(),N!=null&&N.cancelActive&&hb(E)}),g=(E=>{const N=NO(t,E)??AP(E);return v(N)});mu(g,{withTypes:()=>g});const x=E=>{const N=NO(t,E);return N&&(N.unsubscribe(),E.cancelActive&&hb(N)),!!N};mu(x,{withTypes:()=>x});const S=async(E,N,O,T)=>{const R=new AbortController,A=w9(g,R.signal),D=[];try{E.pending.add(R),r(E),await Promise.resolve(E.effect(N,mu({},O,{getOriginalState:T,condition:(k,I)=>A(k,I).then(Boolean),take:A,delay:_P(R.signal),pause:Jm(R.signal),extra:o,signal:R.signal,fork:S9(R.signal,D),unsubscribe:E.unsubscribe,subscribe:()=>{m(E)},cancelActiveListeners:()=>{E.pending.forEach((k,I,P)=>{k!==R&&(k.abort(db),P.delete(k))})},cancel:()=>{R.abort(db),E.pending.delete(R)},throwIfCancelled:()=>{zo(R.signal)}})))}catch(k){k instanceof Qv||TO(u,k,{raisedBy:"effect"})}finally{await Promise.all(D),R.abort(x9),l(E),E.pending.delete(R)}},w=j9(t,n),j=()=>{w(),c=void 0};return{middleware:E=>N=>O=>{if(!aP(O))return N(O);if(OP.match(O))return g(O.payload);if(C9.match(O)){j();return}if(NP.match(O))return x(O.payload);let T=E.getState();const R=()=>{if(T===OO)throw new Error(cr(23));return T};let A;try{A=N(O);const{entries:D,types:k,anyType:I}=h();if(I||k.has(O.type)){const P=E.getState();for(const B of D){if(typeof B.type=="string"&&B.type!==O.type)continue;let F=!1;try{F=B.predicate(O,P,T)}catch(se){F=!1,TO(u,se,{raisedBy:"predicate"})}F&&S(B,O,E,R)}}}finally{T=OO}return A},startListening:g,stopListening:x,clearListeners:j}};function cr(e){return`Minified Redux Toolkit error #${e}; visit https://redux-toolkit.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var E9={layoutType:"horizontal",width:0,height:0,margin:{top:5,right:5,bottom:5,left:5},scale:1},TP=Hn({name:"chartLayout",initialState:E9,reducers:{setLayout(e,t){e.layoutType=t.payload},setChartSize(e,t){e.width=t.payload.width,e.height=t.payload.height},setMargin(e,t){var n,r,l,o;e.margin.top=(n=t.payload.top)!==null&&n!==void 0?n:0,e.margin.right=(r=t.payload.right)!==null&&r!==void 0?r:0,e.margin.bottom=(l=t.payload.bottom)!==null&&l!==void 0?l:0,e.margin.left=(o=t.payload.left)!==null&&o!==void 0?o:0},setScale(e,t){e.scale=t.payload}}}),Wv=TP.actions,A9=Wv.setMargin,O9=Wv.setLayout,N9=Wv.setChartSize,T9=Wv.setScale,R9=TP.reducer;function RP(e,t,n){return Array.isArray(e)&&e&&t+n!==0?e.slice(t,n+1):e}function at(e){return Number.isFinite(e)}function Fi(e){return typeof e=="number"&&e>0&&Number.isFinite(e)}function RO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function or(e){for(var t=1;t{if(t&&n){var r=n.width,l=n.height,o=t.align,u=t.verticalAlign,c=t.layout,h=t.position,m=t.offset,v=m===void 0?0:m;if(h!=null){if(WH(h)){if(h==="top"&&Re(e.top))return or(or({},e),{},{top:e.top+(l||0)+v});if(h==="bottom"&&Re(e.bottom))return or(or({},e),{},{bottom:e.bottom+(l||0)+v});if(h==="left"&&Re(e.left))return or(or({},e),{},{left:e.left+(r||0)+v});if(h==="right"&&Re(e.right))return or(or({},e),{},{right:e.right+(r||0)+v})}return e}if((c==="vertical"||c==="horizontal"&&u==="middle")&&o!=="center"&&Re(e[o]))return or(or({},e),{},{[o]:e[o]+(r||0)});if((c==="horizontal"||c==="vertical"&&o==="center")&&u!=="middle"&&Re(e[u]))return or(or({},e),{},{[u]:e[u]+(l||0)})}return e},Ra=(e,t)=>e==="horizontal"&&t==="xAxis"||e==="vertical"&&t==="yAxis"||e==="centric"&&t==="angleAxis"||e==="radial"&&t==="radiusAxis",MP=(e,t,n,r)=>{if(r)return e.map(c=>c.coordinate);var l,o,u=e.map(c=>(c.coordinate===t&&(l=!0),c.coordinate===n&&(o=!0),c.coordinate));return l||u.push(t),o||u.push(n),u},DP=(e,t,n)=>{if(!e)return null;var r=e.duplicateDomain,l=e.type,o=e.range,u=e.scale,c=e.realScaleType,h=e.isCategorical,m=e.categoricalDomain,v=e.tickCount,g=e.ticks,x=e.niceTicks,S=e.axisType;if(!u)return null;var w=c==="scaleBand"&&u.bandwidth?u.bandwidth()/2:2,j=l==="category"&&u.bandwidth?u.bandwidth()/w:0;if(j=S==="angleAxis"&&o&&o.length>=2?Vr(o[0]-o[1])*2*j:j,g||x){var C=(g||x||[]).map((E,N)=>{var O=r?r.indexOf(E):E,T=u.map(O);return at(T)?{coordinate:T+j,value:E,offset:j,index:N}:null}).filter(ur);return C}return h&&m?m.map((E,N)=>{var O=u.map(E);return at(O)?{coordinate:O+j,value:E,index:N,offset:j}:null}).filter(ur):u.ticks&&v!=null?u.ticks(v).map((E,N)=>{var O=u.map(E);return at(O)?{coordinate:O+j,value:E,index:N,offset:j}:null}).filter(ur):u.domain().map((E,N)=>{var O=u.map(E);return at(O)?{coordinate:O+j,value:r?r[E]:E,index:N,offset:j}:null}).filter(ur)},I9=e=>{var t,n=e.length;if(!(n<=0)){var r=(t=e[0])===null||t===void 0?void 0:t.length;if(!(r==null||r<=0))for(var l=0;l=0?(m[0]=o,o+=x,m[1]=o):(m[0]=u,u+=x,m[1]=u)}}}},z9=e=>{var t,n=e.length;if(!(n<=0)){var r=(t=e[0])===null||t===void 0?void 0:t.length;if(!(r==null||r<=0))for(var l=0;l=0?(h[0]=o,o+=m,h[1]=o):(h[0]=0,h[1]=0)}}}},L9={sign:I9,expand:xF,none:Go,silhouette:bF,wiggle:SF,positive:z9},U9=(e,t,n)=>{var r,l=(r=L9[n])!==null&&r!==void 0?r:Go,o=yF().keys(t).value((c,h)=>Number(pn(c,h,0))).order(J0).offset(l),u=o(e);return u.forEach((c,h)=>{c.forEach((m,v)=>{var g=pn(e[v],t[h],0);Array.isArray(g)&&g.length===2&&Re(g[0])&&Re(g[1])&&(m[0]=g[0],m[1]=g[1])})}),u};function MO(e){var t=e.axis,n=e.ticks,r=e.bandSize,l=e.entry,o=e.index,u=e.dataKey;if(t.type==="category"){if(!t.allowDuplicatedCategory&&t.dataKey&&!yn(l[t.dataKey])){var c=sD(n,"value",l[t.dataKey]);if(c)return c.coordinate+r/2}return n!=null&&n[o]?n[o].coordinate+r/2:null}var h=pn(l,yn(u)?t.dataKey:u),m=t.scale.map(h);return Re(m)?m:null}var $9=e=>{var t=e.flat(2).filter(Re);return[Math.min(...t),Math.max(...t)]},B9=e=>[e[0]===1/0?0:e[0],e[1]===-1/0?0:e[1]],H9=(e,t,n)=>{if(!(e==null||Object.keys(e).length===0))return B9(Object.keys(e).reduce((r,l)=>{var o=e[l];if(!o)return r;var u=o.stackedData,c=u.reduce((h,m)=>{var v=RP(m,t,n),g=$9(v);return!at(g[0])||!at(g[1])?h:[Math.min(h[0],g[0]),Math.max(h[1],g[1])]},[1/0,-1/0]);return[Math.min(c[0],r[0]),Math.max(c[1],r[1])]},[1/0,-1/0]))},DO=/^dataMin[\s]*-[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,PO=/^dataMax[\s]*\+[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,ev=(e,t,n)=>{if(e&&e.scale&&e.scale.bandwidth){var r=e.scale.bandwidth();if(!n||r>0)return r}if(e&&t&&t.length>=2){for(var l=Fv(t,j=>j.coordinate),o=[],u=0,c=1,h=l.length;cx&&(S=Math.min(w,S));return S===1/0?0:S}return n?void 0:0};function kO(e){var t=e.tooltipEntrySettings,n=e.dataKey,r=e.payload,l=e.value,o=e.name;return or(or({},t),{},{dataKey:n,payload:r,value:l,name:o})}function PP(e,t){if(e!=null)return String(e);if(typeof t=="string")return t}var F9=(e,t)=>{if(t==="horizontal")return e.relativeX;if(t==="vertical")return e.relativeY},V9=(e,t)=>t==="centric"?e.angle:e.radius,Ma=e=>e.layout.width,Da=e=>e.layout.height,G9=e=>e.layout.scale,kP=e=>e.layout.margin,Jv=W(e=>e.cartesianAxis.xAxis,e=>Object.values(e)),eg=W(e=>e.cartesianAxis.yAxis,e=>Object.values(e)),q9="data-recharts-item-index",K9="data-recharts-item-id",nd=60,ZS=30;function IO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function um(e){for(var t=1;te.brush.height;function W9(e){var t=eg(e);return t.reduce((n,r)=>{if(r.orientation==="left"&&!r.mirror&&!r.hide){var l=typeof r.width=="number"?r.width:nd;return n+l}return n},0)}function J9(e){var t=eg(e);return t.reduce((n,r)=>{if(r.orientation==="right"&&!r.mirror&&!r.hide){var l=typeof r.width=="number"?r.width:nd;return n+l}return n},0)}function eG(e){var t=Jv(e);return t.reduce((n,r)=>{if(r.orientation==="top"&&!r.mirror&&!r.hide){var l=typeof r.height=="number"?r.height:ZS;return n+l}return n},0)}function tG(e){var t=Jv(e);return t.reduce((n,r)=>{if(r.orientation==="bottom"&&!r.mirror&&!r.hide){var l=typeof r.height=="number"?r.height:ZS;return n+l}return n},0)}var Pn=W([Ma,Da,kP,Z9,W9,J9,eG,tG,nP,wV],(e,t,n,r,l,o,u,c,h,m)=>{var v={left:(n.left||0)+l,right:(n.right||0)+o},g={top:(n.top||0)+u,bottom:(n.bottom||0)+c},x=um(um({},g),v),S=x.bottom;x.bottom+=r,x=k9(x,h,m);var w=e-x.left-x.right,j=t-x.top-x.bottom;return um(um({brushBottom:S},x),{},{width:Math.max(w,0),height:Math.max(j,0)})}),nG=W(Pn,e=>({x:e.left,y:e.top,width:e.width,height:e.height})),IP=W(Ma,Da,(e,t)=>({x:0,y:0,width:e,height:t})),rG=b.createContext(null),fr=()=>b.useContext(rG)!=null,tg=e=>e.brush,ng=W([tg,Pn,kP],(e,t,n)=>({height:e.height,x:Re(e.x)?e.x:t.left,y:Re(e.y)?e.y:t.top+t.height+t.brushBottom-((n==null?void 0:n.bottom)||0),width:Re(e.width)?e.width:t.width}));function iG(e,t,{signal:n,edges:r}={}){let l,o=null;const u=r!=null&&r.includes("leading"),c=r==null||r.includes("trailing"),h=()=>{o!==null&&(e.apply(l,o),l=void 0,o=null)},m=()=>{c&&h(),S()};let v=null;const g=()=>{v!=null&&clearTimeout(v),v=setTimeout(()=>{v=null,m()},t)},x=()=>{v!==null&&(clearTimeout(v),v=null)},S=()=>{x(),l=void 0,o=null},w=()=>{h()},j=function(...C){if(n!=null&&n.aborted)return;l=this,o=C;const E=v==null;g(),u&&E&&h()};return j.schedule=g,j.cancel=S,j.flush=w,n==null||n.addEventListener("abort",S,{once:!0}),j}function aG(e,t=0,n={}){typeof n!="object"&&(n={});const{leading:r=!1,trailing:l=!0,maxWait:o}=n,u=Array(2);r&&(u[0]="leading"),l&&(u[1]="trailing");let c,h=null;const m=iG(function(...x){c=e.apply(this,x),h=null},t,{edges:u}),v=function(...x){return o!=null&&(h===null&&(h=Date.now()),Date.now()-h>=o)?((r||l)&&(c=e.apply(this,x)),h=Date.now(),m.cancel(),m.schedule(),c):(m.apply(this,x),c)},g=()=>(m.flush(),c);return v.cancel=m.cancel,v.flush=g,v}function lG(e,t=0,n={}){const{leading:r=!0,trailing:l=!0}=n;return aG(e,t,{leading:r,maxWait:t,trailing:l})}var tv=function(t,n){for(var r=arguments.length,l=new Array(r>2?r-2:0),o=2;ol[u++]))}},ki={width:"100%",height:"100%",debounce:0,minWidth:0,initialDimension:{width:-1,height:-1}},zP=(e,t,n)=>{var r=n.width,l=r===void 0?ki.width:r,o=n.height,u=o===void 0?ki.height:o,c=n.aspect,h=n.maxHeight,m=Vo(l)?e:Number(l),v=Vo(u)?t:Number(u);return c&&c>0&&(m?v=m/c:v&&(m=v*c),h&&v!=null&&v>h&&(v=h)),{calculatedWidth:m,calculatedHeight:v}},oG={width:0,height:0,overflow:"visible"},sG={width:0,overflowX:"visible"},uG={height:0,overflowY:"visible"},cG={},fG=e=>{var t=e.width,n=e.height,r=Vo(t),l=Vo(n);return r&&l?oG:r?sG:l?uG:cG};function dG(e){var t=e.width,n=e.height,r=e.aspect,l=t,o=n;return l===void 0&&o===void 0?(l=ki.width,o=ki.height):l===void 0?l=r&&r>0?void 0:ki.width:o===void 0&&(o=r&&r>0?void 0:ki.height),{width:l,height:o}}var hG=["aspect","initialDimension","width","height","minWidth","minHeight","maxHeight","children","debounce","id","className","onResize","style"];function nv(){return nv=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);n({width:n,height:r}),[n,r]);return CG(l)?b.createElement(LP.Provider,{value:l},t):null}var WS=()=>b.useContext(LP),_G=b.forwardRef((e,t)=>{var n=e.aspect,r=e.initialDimension,l=r===void 0?ki.initialDimension:r,o=e.width,u=e.height,c=e.minWidth,h=c===void 0?ki.minWidth:c,m=e.minHeight,v=e.maxHeight,g=e.children,x=e.debounce,S=x===void 0?ki.debounce:x,w=e.id,j=e.className,C=e.onResize,E=e.style,N=E===void 0?{}:E,O=wG(e,hG),T=b.useRef(null),R=b.useRef();R.current=C,b.useImperativeHandle(t,()=>T.current);var A=b.useState({containerWidth:l.width,containerHeight:l.height}),D=pG(A,2),k=D[0],I=D[1],P=b.useCallback((G,ne)=>{I(ie=>{var ce=Math.round(G),U=Math.round(ne);return ie.containerWidth===ce&&ie.containerHeight===U?ie:{containerWidth:ce,containerHeight:U}})},[]);b.useEffect(()=>{if(T.current==null||typeof ResizeObserver>"u")return Ku;var G=Ae=>{var ee,ve=Ae[0];if(ve!=null){var z=ve.contentRect,Y=z.width,le=z.height;P(Y,le),(ee=R.current)===null||ee===void 0||ee.call(R,Y,le)}};S>0&&(G=lG(G,S,{trailing:!0,leading:!1}));var ne=new ResizeObserver(G),ie=T.current.getBoundingClientRect(),ce=ie.width,U=ie.height;return P(ce,U),ne.observe(T.current),()=>{ne.disconnect()}},[P,S]);var B=k.containerWidth,F=k.containerHeight;tv(!n||n>0,"The aspect(%s) must be greater than zero.",n);var se=zP(B,F,{width:o,height:u,aspect:n,maxHeight:v}),ue=se.calculatedWidth,de=se.calculatedHeight;return tv(B<0||F<0||ue!=null&&ue>0||de!=null&&de>0,`The width(%s) and height(%s) of chart should be greater than 0, please check the style of container, or the props width(%s) and height(%s), or add a minWidth(%s) or minHeight(%s) or use aspect(%s) to control the - height and width.`,ue,de,o,u,h,m,n),b.createElement("div",tv({id:w?"".concat(w):void 0,className:Ct("recharts-responsive-container",j),style:PO(PO({},N),{},{width:o,height:u,minWidth:h,minHeight:m,maxHeight:v}),ref:T},O),b.createElement("div",{style:J9({width:o,height:u})},b.createElement(PP,{width:ue,height:de},p)))}),kP=b.forwardRef((e,t)=>{var n=QS();if(Fi(n.width)&&Fi(n.height))return e.children;var r=eG({width:e.width,height:e.height,aspect:e.aspect}),l=r.width,o=r.height,u=MP(void 0,void 0,{width:l,height:o,aspect:e.aspect,maxHeight:e.maxHeight}),c=u.calculatedWidth,h=u.calculatedHeight;return Re(c)&&Re(h)?b.createElement(PP,{width:c,height:h},e.children):b.createElement(hG,tv({},e,{width:l,height:o,ref:t}))}),ng=()=>{var e,t=fr(),n=ke(V9),r=ke(tg),l=(e=ke(eg))===null||e===void 0?void 0:e.padding;return!t||!r||!l?n:{width:r.width-l.left-l.right,height:r.height-l.top-l.bottom,x:l.left,y:l.top}},mG={top:0,bottom:0,left:0,right:0,width:0,height:0,brushBottom:0},IP=()=>{var e;return(e=ke(Pn))!==null&&e!==void 0?e:mG},zP=()=>ke(Ma),LP=()=>ke(Da),It=e=>e.layout.layoutType,Yu=()=>ke(It),UP=()=>{var e=Yu();if(e==="horizontal"||e==="vertical")return e},$P=e=>{var t=e.layout.layoutType;if(t==="centric"||t==="radial")return t},vG=()=>{var e=Yu();return e!==void 0},nd=e=>{var t=Vt(),n=fr(),r=e.width,l=e.height,o=QS(),u=r,c=l;return o&&(u=o.width>0?o.width:r,c=o.height>0?o.height:l),b.useEffect(()=>{!n&&Fi(u)&&Fi(c)&&t(p9({width:u,height:c}))},[t,n,u,c]),null},gG={settings:{layout:"horizontal",align:"center",verticalAlign:"bottom",itemSorter:"value",position:void 0,offset:0},size:{width:0,height:0},payload:[]},BP=Hn({name:"legend",initialState:gG,reducers:{setLegendSize(e,t){e.size.width=t.payload.width,e.size.height=t.payload.height},setLegendSettings(e,t){e.settings.align=t.payload.align,e.settings.layout=t.payload.layout,e.settings.verticalAlign=t.payload.verticalAlign,e.settings.itemSorter=t.payload.itemSorter,e.settings.position=t.payload.position,e.settings.offset=t.payload.offset},addLegendPayload:{reducer(e,t){e.payload.push(rt(t.payload))},prepare:Ot()},replaceLegendPayload:{reducer(e,t){var n=t.payload,r=n.prev,l=n.next,o=Gr(e).payload.indexOf(rt(r));o>-1&&(e.payload[o]=rt(l))},prepare:Ot()},removeLegendPayload:{reducer(e,t){var n=Gr(e).payload.indexOf(rt(t.payload));n>-1&&e.payload.splice(n,1)},prepare:Ot()}}}),rd=BP.actions;rd.setLegendSize;rd.setLegendSettings;var pG=rd.addLegendPayload,yG=rd.replaceLegendPayload,xG=rd.removeLegendPayload,bG=BP.reducer,kx={exports:{}},Ix={};/** + height and width.`,ue,de,o,u,h,m,n),b.createElement("div",nv({id:w?"".concat(w):void 0,className:Ct("recharts-responsive-container",j),style:LO(LO({},N),{},{width:o,height:u,minWidth:h,minHeight:m,maxHeight:v}),ref:T},O),b.createElement("div",{style:fG({width:o,height:u})},b.createElement(UP,{width:ue,height:de},g)))}),$P=b.forwardRef((e,t)=>{var n=WS();if(Fi(n.width)&&Fi(n.height))return e.children;var r=dG({width:e.width,height:e.height,aspect:e.aspect}),l=r.width,o=r.height,u=zP(void 0,void 0,{width:l,height:o,aspect:e.aspect,maxHeight:e.maxHeight}),c=u.calculatedWidth,h=u.calculatedHeight;return Re(c)&&Re(h)?b.createElement(UP,{width:c,height:h},e.children):b.createElement(_G,nv({},e,{width:l,height:o,ref:t}))}),rg=()=>{var e,t=fr(),n=ke(nG),r=ke(ng),l=(e=ke(tg))===null||e===void 0?void 0:e.padding;return!t||!r||!l?n:{width:r.width-l.left-l.right,height:r.height-l.top-l.bottom,x:l.left,y:l.top}},EG={top:0,bottom:0,left:0,right:0,width:0,height:0,brushBottom:0},BP=()=>{var e;return(e=ke(Pn))!==null&&e!==void 0?e:EG},HP=()=>ke(Ma),FP=()=>ke(Da),It=e=>e.layout.layoutType,Yu=()=>ke(It),VP=()=>{var e=Yu();if(e==="horizontal"||e==="vertical")return e},GP=e=>{var t=e.layout.layoutType;if(t==="centric"||t==="radial")return t},AG=()=>{var e=Yu();return e!==void 0},rd=e=>{var t=Vt(),n=fr(),r=e.width,l=e.height,o=WS(),u=r,c=l;return o&&(u=o.width>0?o.width:r,c=o.height>0?o.height:l),b.useEffect(()=>{!n&&Fi(u)&&Fi(c)&&t(N9({width:u,height:c}))},[t,n,u,c]),null},OG={settings:{layout:"horizontal",align:"center",verticalAlign:"bottom",itemSorter:"value",position:void 0,offset:0},size:{width:0,height:0},payload:[]},qP=Hn({name:"legend",initialState:OG,reducers:{setLegendSize(e,t){e.size.width=t.payload.width,e.size.height=t.payload.height},setLegendSettings(e,t){e.settings.align=t.payload.align,e.settings.layout=t.payload.layout,e.settings.verticalAlign=t.payload.verticalAlign,e.settings.itemSorter=t.payload.itemSorter,e.settings.position=t.payload.position,e.settings.offset=t.payload.offset},addLegendPayload:{reducer(e,t){e.payload.push(it(t.payload))},prepare:Ot()},replaceLegendPayload:{reducer(e,t){var n=t.payload,r=n.prev,l=n.next,o=Gr(e).payload.indexOf(it(r));o>-1&&(e.payload[o]=it(l))},prepare:Ot()},removeLegendPayload:{reducer(e,t){var n=Gr(e).payload.indexOf(it(t.payload));n>-1&&e.payload.splice(n,1)},prepare:Ot()}}}),id=qP.actions;id.setLegendSize;id.setLegendSettings;var NG=id.addLegendPayload,TG=id.replaceLegendPayload,RG=id.removeLegendPayload,MG=qP.reducer,Ix={exports:{}},zx={};/** * @license React * use-sync-external-store-with-selector.production.js * @@ -127,54 +139,54 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var IO;function SG(){if(IO)return Ix;IO=1;var e=Hu();function t(h,m){return h===m&&(h!==0||1/h===1/m)||h!==h&&m!==m}var n=typeof Object.is=="function"?Object.is:t,r=e.useSyncExternalStore,l=e.useRef,o=e.useEffect,u=e.useMemo,c=e.useDebugValue;return Ix.useSyncExternalStoreWithSelector=function(h,m,v,p,x){var S=l(null);if(S.current===null){var w={hasValue:!1,value:null};S.current=w}else w=S.current;S=u(function(){function C(R){if(!A){if(A=!0,N=R,R=p(R),x!==void 0&&w.hasValue){var E=w.value;if(x(E,R))return O=E}return O=R}if(E=O,n(N,R))return E;var D=p(R);return x!==void 0&&x(E,D)?(N=R,E):(N=R,O=D)}var A=!1,N,O,T=v===void 0?null:v;return[function(){return C(m())},T===null?void 0:function(){return C(T())}]},[m,v,p,x]);var j=r(h,S[0],S[1]);return o(function(){w.hasValue=!0,w.value=j},[j]),c(j),j},Ix}var zO;function wG(){return zO||(zO=1,kx.exports=SG()),kx.exports}wG();function jG(e){e()}function CG(){let e=null,t=null;return{clear(){e=null,t=null},notify(){jG(()=>{let n=e;for(;n;)n.callback(),n=n.next})},get(){const n=[];let r=e;for(;r;)n.push(r),r=r.next;return n},subscribe(n){let r=!0;const l=t={callback:n,next:null,prev:t};return l.prev?l.prev.next=l:e=l,function(){!r||e===null||(r=!1,l.next?l.next.prev=l.prev:t=l.prev,l.prev?l.prev.next=l.next:e=l.next)}}}}const LO={notify(){},get:()=>[]};function _G(e,t){let n,r=LO,l=0,o=!1;function u(j){v();const C=r.subscribe(j);let A=!1;return()=>{A||(A=!0,C(),p())}}function c(){r.notify()}function h(){w.onStateChange&&w.onStateChange()}function m(){return o}function v(){l++,n||(n=e.subscribe(h),r=CG())}function p(){l--,n&&l===0&&(n(),n=void 0,r.clear(),r=LO)}function x(){o||(o=!0,v())}function S(){o&&(o=!1,p())}const w={addNestedSub:u,notifyNestedSubs:c,handleChangeWrapper:h,isSubscribed:m,trySubscribe:x,tryUnsubscribe:S,getListeners:()=>r};return w}const AG=()=>typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",EG=AG(),OG=()=>typeof navigator<"u"&&navigator.product==="ReactNative",NG=OG(),TG=()=>EG||NG?b.useLayoutEffect:b.useEffect,RG=TG();function UO(e,t){return e===t?e!==0||t!==0||1/e===1/t:e!==e&&t!==t}function MG(e,t){if(UO(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;const n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let l=0;l{const h=_G(l);return{store:l,subscription:h,getServerState:r!=null?()=>r:void 0}},[l,r]),u=b.useMemo(()=>l.getState(),[l]);RG(()=>{const{subscription:h}=o;return h.onStateChange=h.notifyNestedSubs,h.trySubscribe(),u!==l.getState()&&h.notifyNestedSubs(),()=>{h.tryUnsubscribe(),h.onStateChange=void 0}},[o,u]);const c=n||PG;return b.createElement(c.Provider,{value:o},t)}var IG=new Set(["axisLine","tickLine","activeBar","activeDot","activeLabel","activeShape","allowEscapeViewBox","background","cursor","dot","label","line","margin","padding","position","shape","style","tick","wrapperStyle","radius","throttledEvents"]);function zG(e,t){return e==null&&t==null?!0:typeof e=="number"&&typeof t=="number"?e===t||e!==e&&t!==t:e===t}function rg(e,t){var n=new Set([...Object.keys(e),...Object.keys(t)]);for(var r of n)if(IG.has(r)){if(e[r]==null&&t[r]==null)continue;if(!MG(e[r],t[r]))return!1}else if(!zG(e[r],t[r]))return!1;return!0}function hb(){return hb=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);n{var t=e.separator,n=t===void 0?Zs.separator:t,r=e.contentStyle,l=e.itemStyle,o=e.labelStyle,u=o===void 0?Zs.labelStyle:o,c=e.payload,h=e.formatter,m=e.itemSorter,v=e.wrapperClassName,p=e.labelClassName,x=e.label,S=e.labelFormatter,w=e.accessibilityLayer,j=w===void 0?Zs.accessibilityLayer:w,C=()=>{if(c&&c.length){var k={padding:0,margin:0},I=KG(c,m),P=I.map((B,F)=>{if(!B||B.type==="none")return null;var se=B.formatter||h||qG,ue=B.value,de=B.name,G=ue,ne=de;if(se){var ie=se(ue,de,B,F,c);if(Array.isArray(ie)){var ce=BG(ie,2);G=ce[0],ne=ce[1]}else if(ie!=null)G=ie;else return null}var U=af(af({},Zs.itemStyle),{},{color:B.color||Zs.itemStyle.color},l);return b.createElement("li",{className:"recharts-tooltip-item",key:"tooltip-item-".concat(F),style:U},Hi(ne)?b.createElement("span",{className:"recharts-tooltip-item-name"},ne):null,Hi(ne)?b.createElement("span",{className:"recharts-tooltip-item-separator"},n):null,b.createElement("span",{className:"recharts-tooltip-item-value"},G),b.createElement("span",{className:"recharts-tooltip-item-unit"},B.unit||""))});return b.createElement("ul",{className:"recharts-tooltip-item-list",style:k},P)}return null},A=af(af({},Zs.contentStyle),r),N=af({margin:0},u),O=!yn(x),T=O?x:"",R=Ct("recharts-default-tooltip",v),E=Ct("recharts-tooltip-label",p);O&&S&&c!==void 0&&c!==null&&(T=S(x,c));var D=j?{role:"status","aria-live":"assertive"}:{};return b.createElement("div",hb({className:R,style:A},D),b.createElement("p",{className:E,style:N},b.isValidElement(T)?T:"".concat(T)),C())},lf="recharts-tooltip-wrapper",XG={visibility:"hidden"};function QG(e){var t=e.coordinate,n=e.translateX,r=e.translateY;return Ct(lf,{["".concat(lf,"-right")]:Re(n)&&t&&Re(t.x)&&n>=t.x,["".concat(lf,"-left")]:Re(n)&&t&&Re(t.x)&&n=t.y,["".concat(lf,"-top")]:Re(r)&&t&&Re(t.y)&&r0?l:0),p=n[r]+l;if(t[r])return u[r]?v:p;var x=h[r];if(x==null)return 0;if(u[r]){var S=v,w=x;return SC?Math.max(v,x):Math.max(p,x)}function ZG(e){var t=e.translateX,n=e.translateY,r=e.useTranslate3d;return{transform:r?"translate3d(".concat(t,"px, ").concat(n,"px, 0)"):"translate(".concat(t,"px, ").concat(n,"px)")}}function WG(e){var t=e.allowEscapeViewBox,n=e.coordinate,r=e.offsetTop,l=e.offsetLeft,o=e.position,u=e.reverseDirection,c=e.tooltipBox,h=e.useTranslate3d,m=e.viewBox,v,p,x;return c&&c.height>0&&c.width>0&&n?(p=HO({allowEscapeViewBox:t,coordinate:n,key:"x",offset:l,position:o,reverseDirection:u,tooltipDimension:c.width,viewBox:m,viewBoxDimension:m.width}),x=HO({allowEscapeViewBox:t,coordinate:n,key:"y",offset:r,position:o,reverseDirection:u,tooltipDimension:c.height,viewBox:m,viewBoxDimension:m.height}),v=ZG({translateX:p,translateY:x,useTranslate3d:h})):v=XG,{cssProperties:v,cssClasses:QG({translateX:p,translateY:x,coordinate:n})}}var JG=()=>!(typeof window<"u"&&window.document&&window.document.createElement&&window.setTimeout),id={isSsr:JG()};function e7(e,t){return i7(e)||r7(e,t)||n7(e,t)||t7()}function t7(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function n7(e,t){if(e){if(typeof e=="string")return FO(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?FO(e,t):void 0}}function FO(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);nid.isSsr||!window.matchMedia?!1:window.matchMedia("(prefers-reduced-motion: reduce)").matches),t=e7(e,2),n=t[0],r=t[1];return b.useEffect(()=>{if(window.matchMedia){var l=window.matchMedia("(prefers-reduced-motion: reduce)"),o=()=>{r(l.matches)};return l.addEventListener("change",o),()=>{l.removeEventListener("change",o)}}},[]),n}function VO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function Ws(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);n({dismissed:!1,dismissedAtCoordinate:{x:0,y:0}})),m=s7(h,2),v=m[0],p=m[1];b.useEffect(()=>{var A=N=>{if(N.key==="Escape"){var O,T,R,E;p({dismissed:!0,dismissedAtCoordinate:{x:(O=(T=e.coordinate)===null||T===void 0?void 0:T.x)!==null&&O!==void 0?O:0,y:(R=(E=e.coordinate)===null||E===void 0?void 0:E.y)!==null&&R!==void 0?R:0}})}};return document.addEventListener("keydown",A),()=>{document.removeEventListener("keydown",A)}},[(t=e.coordinate)===null||t===void 0?void 0:t.x,(n=e.coordinate)===null||n===void 0?void 0:n.y]),v.dismissed&&(((r=(l=e.coordinate)===null||l===void 0?void 0:l.x)!==null&&r!==void 0?r:0)!==v.dismissedAtCoordinate.x||((o=(u=e.coordinate)===null||u===void 0?void 0:u.y)!==null&&o!==void 0?o:0)!==v.dismissedAtCoordinate.y)&&p(Ws(Ws({},v),{},{dismissed:!1}));var x=WG({allowEscapeViewBox:e.allowEscapeViewBox,coordinate:e.coordinate,offsetLeft:typeof e.offset=="number"?e.offset:e.offset.x,offsetTop:typeof e.offset=="number"?e.offset:e.offset.y,position:e.position,reverseDirection:e.reverseDirection,tooltipBox:e.lastBoundingBox,useTranslate3d:e.useTranslate3d,viewBox:e.viewBox}),S=x.cssClasses,w=x.cssProperties,j=e.hasPortalFromProps?{}:Ws(Ws({transition:h7({prefersReducedMotion:c,isAnimationActive:e.isAnimationActive,active:e.active,animationDuration:e.animationDuration,animationEasing:e.animationEasing})},w),{},{pointerEvents:"none",position:"absolute",top:0,left:0}),C=Ws(Ws({},j),{},{visibility:!v.dismissed&&e.active&&e.hasPayload?"visible":"hidden"},e.wrapperStyle);return b.createElement("div",{xmlns:"http://www.w3.org/1999/xhtml",tabIndex:-1,className:S,style:C,ref:e.innerRef},e.children)}var v7=b.memo(m7),FP=()=>{var e;return(e=ke(t=>t.rootProps.accessibilityLayer))!==null&&e!==void 0?e:!0};function mb(){return mb=Object.assign?Object.assign.bind():function(e){for(var t=1;tit(e.x)&&it(e.y),XO=e=>e.base!=null&&nv(e.base)&&nv(e),of=e=>e.x,sf=e=>e.y,x7=(e,t)=>{if(typeof e=="function")return e;var n="curve".concat(NS(e));if((n==="curveMonotone"||n==="curveBump")&&t){var r=YO["".concat(n).concat(t==="vertical"?"Y":"X")];if(r)return r}return YO[n]||Uv},QO={connectNulls:!1,type:"linear"},b7=e=>{var t=e.type,n=t===void 0?QO.type:t,r=e.points,l=r===void 0?[]:r,o=e.baseLine,u=e.layout,c=e.connectNulls,h=c===void 0?QO.connectNulls:c,m=x7(n,u),v=h?l.filter(nv):l;if(Array.isArray(o)){var p,x=l.map((A,N)=>KO(KO({},A),{},{base:o[N]}));u==="vertical"?p=nm().y(sf).x1(of).x0(A=>A.base.x):p=nm().x(of).y1(sf).y0(A=>A.base.y);var S=p.defined(XO).curve(m),w=h?x.filter(XO):x;return S(w)}var j;u==="vertical"&&Re(o)?j=nm().y(sf).x1(of).x0(o):Re(o)?j=nm().x(of).y1(sf).y0(o):j=cD().x(of).y(sf);var C=j.defined(nv).curve(m);return C(v)},VP=e=>{var t=e.className,n=e.points,r=e.path,l=e.pathRef,o=Yu();if((!n||!n.length)&&!r)return null;var u={type:e.type,points:e.points,baseLine:e.baseLine,layout:e.layout||o,connectNulls:e.connectNulls},c=n&&n.length?b7(u):r;return b.createElement("path",mb({},Bi(e),IS(e),{className:Ct("recharts-curve",t),d:c===null?void 0:c,ref:l}))},S7=["x","y","top","left","width","height","className"];function vb(){return vb=Object.assign?Object.assign.bind():function(e){for(var t=1;t"M".concat(e,",").concat(l,"v").concat(r,"M").concat(o,",").concat(t,"h").concat(n),N7=e=>{var t=e.x,n=t===void 0?0:t,r=e.y,l=r===void 0?0:r,o=e.top,u=o===void 0?0:o,c=e.left,h=c===void 0?0:c,m=e.width,v=m===void 0?0:m,p=e.height,x=p===void 0?0:p,S=e.className,w=A7(e,S7),j=w7({x:n,y:l,top:u,left:h,width:v,height:x},w);return!Re(n)||!Re(l)||!Re(v)||!Re(x)||!Re(u)||!Re(h)?null:b.createElement("path",vb({},Xr(j),{className:Ct("recharts-cross",S),d:O7(n,l,v,x,u,h)}))};function T7(e,t,n,r){var l=r/2;return{stroke:"none",fill:"#ccc",x:e==="horizontal"?t.x-l:n.left+.5,y:e==="horizontal"?n.top+.5:t.y-l,width:e==="horizontal"?r:n.width-1,height:e==="horizontal"?n.height-1:r}}var rv=1e-4,GP=(e,t)=>[0,3*e,3*t-6*e,3*e-3*t+1],qP=(e,t)=>e.map((n,r)=>n*t**r).reduce((n,r)=>n+r),WO=(e,t)=>n=>{var r=GP(e,t);return qP(r,n)},R7=(e,t)=>n=>{var r=GP(e,t),l=[...r.map((o,u)=>o*u).slice(1),0];return qP(l,n)},M7=e=>{var t,n=e.split("(");if(n.length!==2||n[0]!=="cubic-bezier")return null;var r=(t=n[1])===null||t===void 0||(t=t.split(")")[0])===null||t===void 0?void 0:t.split(",");if(r==null||r.length!==4)return null;var l=r.map(o=>parseFloat(o));return[l[0],l[1],l[2],l[3]]},D7=function(){for(var t=arguments.length,n=new Array(t),r=0;r{var l=WO(e,n),o=WO(t,r),u=R7(e,n),c=m=>m>1?1:m<0?0:m,h=m=>{for(var v=m>1?1:m,p=v,x=0;x<8;++x){var S=l(p)-v,w=u(p);if(Math.abs(S-v)0&&arguments[0]!==void 0?arguments[0]:{},n=t.stiff,r=n===void 0?100:n,l=t.damping,o=l===void 0?8:l,u=t.dt,c=u===void 0?16.67:u,h=1,m=[0],v=0,p=0,x=1e4,S=0;S{var N,O,T;if(A<=0)return 0;if(A>=1)return h;var R=A*C,E=Math.floor(R),D=R-E;return((N=m[E])!==null&&N!==void 0?N:0)+(((O=m[E+1])!==null&&O!==void 0?O:0)-((T=m[E])!==null&&T!==void 0?T:0))*D}},I7=e=>{if(typeof e=="string")switch(e){case"ease":case"ease-in-out":case"ease-out":case"ease-in":case"linear":return JO(e);case"spring":return k7();default:if(e.split("(")[0]==="cubic-bezier")return JO(e)}return typeof e=="function"?e:null},z7=(e,t,n)=>{var r,l=o=>{var u=t.tick(o);if(t.getState()==="active"){if(n(t.getInterpolated()),t.getProgress()===1){t.complete(),r=void 0;return}r=e.setTimeout(l,u);return}r=e.setTimeout(l,u)};return r=e.setTimeout(l,0),()=>{var o;return(o=r)===null||o===void 0?void 0:o()}},KP=b.createContext(z7);KP.Provider;function L7(e){var t=b.useContext(KP);return b.useMemo(()=>e??t,[e,t])}function U7(e,t,n){return(t=$7(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function $7(e){var t=B7(e,"string");return typeof t=="symbol"?t:t+""}function B7(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var eN="init",tN="pending",nN="active",H7="completed";function Ux(e){return Math.max(0,e)}class F7{getAnimationStartedTime(){return this.animationStartedTime}getBeginStartedTime(){return this.beginStartedTime}constructor(t){var n;U7(this,"state",eN),this.animationId=t.animationId,this.onAnimationEnd=t.onAnimationEnd,this.animationDuration=Ux(t.animationDuration),this.animationBegin=Ux(t.animationBegin),this.progress=0,this.from=t.from,this.to=t.to,this.easing=t.easing,(n=t.onAnimationStart)===null||n===void 0||n.call(t)}getState(){return this.state}getEasing(){return this.easing}getAnimationDuration(){return this.animationDuration}tick(t){if(this.getState()===eN)return this.state=tN,this.beginStartedTime=t,this.animationBegin;if(this.getState()===tN){if(this.beginStartedTime==null)throw new Error;var n=t-this.beginStartedTime;return n>=this.animationBegin?(this.state=nN,this.animationStartedTime=t,this.nextAnimationUpdate(0)):Ux(this.animationBegin-n)}if(this.getState()===nN){if(this.animationStartedTime==null)throw new Error;var r=t-this.animationStartedTime;return this.setProgress(r/this.animationDuration),this.nextAnimationUpdate(r)}return 0}setProgress(t){this.progress=Math.min(1,Math.max(0,t))}getProgress(){return this.progress}complete(){if(this.progress=1,this.state==="active"){var t;(t=this.onAnimationEnd)===null||t===void 0||t.call(this)}this.state=H7}getFrom(){return this.from}getTo(){return this.to}getAnimationId(){return this.animationId}getAnimationBegin(){return this.animationBegin}}class V7 extends F7{nextAnimationUpdate(){return 0}getInterpolated(){return this.easing(pa(this.getFrom(),this.getTo(),this.getProgress()))}}class G7{setTimeout(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=performance.now(),l=null,o=u=>{u-r>=n?t(u):l=requestAnimationFrame(o)};return l=requestAnimationFrame(o),()=>{l!=null&&cancelAnimationFrame(l)}}}function q7(e,t){return Q7(e)||X7(e,t)||Y7(e,t)||K7()}function K7(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Y7(e,t){if(e){if(typeof e=="string")return rN(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?rN(e,t):void 0}}function rN(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{},onAnimationStart:()=>{}},iN=0,$x=1;function YP(e){var t=Tr(e,Z7),n=t.animationId,r=t.isActive,l=t.canBegin,o=t.duration,u=t.easing,c=t.begin,h=t.onAnimationEnd,m=t.onAnimationStart,v=t.children,p=HP(),x=r==="auto"?!id.isSsr&&!p:r,S=L7(t.animationController),w=b.useState(x?iN:$x),j=q7(w,2),C=j[0],A=j[1];return b.useEffect(()=>{x||A($x)},[x]),b.useEffect(()=>{var N=I7(u);if(!x||!l||N==null)return Ku;var O=new G7,T=new V7({animationId:n,easing:N,animationDuration:o,animationBegin:c,onAnimationStart:m,onAnimationEnd:h,from:iN,to:$x});return S(O,T,A)},[S,n,x,l,o,u,c,m,h]),v(Number(C))}function XP(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"animation-",n=b.useRef(Tf(t)),r=b.useRef(e);return r.current!==e&&(n.current=Tf(t),r.current=e),n.current}var W7=e=>e.replace(/([A-Z])/g,t=>"-".concat(t.toLowerCase())),J7=(e,t,n)=>e.map(r=>"".concat(W7(r)," ").concat(t,"ms ").concat(n)).join(","),eq=["radius"],tq=["radius"],aN,lN,oN,sN,uN,cN,fN,dN,hN,mN;function vN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function gN(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);n{var o=ga(n),u=ga(r),c=Math.min(Math.abs(o)/2,Math.abs(u)/2),h=u>=0?1:-1,m=o>=0?1:-1,v=u>=0&&o>=0||u<0&&o<0?1:0,p;if(c>0&&Array.isArray(l)){for(var x=[0,0,0,0],S=0,w=4;Sc?c:C}p=Tn(aN||(aN=Ei(["M",",",""])),e,t+h*x[0]),x[0]>0&&(p+=Tn(lN||(lN=Ei(["A ",",",",0,0,",",",",",""])),x[0],x[0],v,e+m*x[0],t)),p+=Tn(oN||(oN=Ei(["L ",",",""])),e+n-m*x[1],t),x[1]>0&&(p+=Tn(sN||(sN=Ei(["A ",",",",0,0,",`, - `,",",""])),x[1],x[1],v,e+n,t+h*x[1])),p+=Tn(uN||(uN=Ei(["L ",",",""])),e+n,t+r-h*x[2]),x[2]>0&&(p+=Tn(cN||(cN=Ei(["A ",",",",0,0,",`, - `,",",""])),x[2],x[2],v,e+n-m*x[2],t+r)),p+=Tn(fN||(fN=Ei(["L ",",",""])),e+m*x[3],t+r),x[3]>0&&(p+=Tn(dN||(dN=Ei(["A ",",",",0,0,",`, - `,",",""])),x[3],x[3],v,e,t+r-h*x[3])),p+="Z"}else if(c>0&&l===+l&&l>0){var A=Math.min(c,l);p=Tn(hN||(hN=Ei(["M ",",",` + */var $O;function DG(){if($O)return zx;$O=1;var e=Hu();function t(h,m){return h===m&&(h!==0||1/h===1/m)||h!==h&&m!==m}var n=typeof Object.is=="function"?Object.is:t,r=e.useSyncExternalStore,l=e.useRef,o=e.useEffect,u=e.useMemo,c=e.useDebugValue;return zx.useSyncExternalStoreWithSelector=function(h,m,v,g,x){var S=l(null);if(S.current===null){var w={hasValue:!1,value:null};S.current=w}else w=S.current;S=u(function(){function C(R){if(!E){if(E=!0,N=R,R=g(R),x!==void 0&&w.hasValue){var A=w.value;if(x(A,R))return O=A}return O=R}if(A=O,n(N,R))return A;var D=g(R);return x!==void 0&&x(A,D)?(N=R,A):(N=R,O=D)}var E=!1,N,O,T=v===void 0?null:v;return[function(){return C(m())},T===null?void 0:function(){return C(T())}]},[m,v,g,x]);var j=r(h,S[0],S[1]);return o(function(){w.hasValue=!0,w.value=j},[j]),c(j),j},zx}var BO;function PG(){return BO||(BO=1,Ix.exports=DG()),Ix.exports}PG();function kG(e){e()}function IG(){let e=null,t=null;return{clear(){e=null,t=null},notify(){kG(()=>{let n=e;for(;n;)n.callback(),n=n.next})},get(){const n=[];let r=e;for(;r;)n.push(r),r=r.next;return n},subscribe(n){let r=!0;const l=t={callback:n,next:null,prev:t};return l.prev?l.prev.next=l:e=l,function(){!r||e===null||(r=!1,l.next?l.next.prev=l.prev:t=l.prev,l.prev?l.prev.next=l.next:e=l.next)}}}}const HO={notify(){},get:()=>[]};function zG(e,t){let n,r=HO,l=0,o=!1;function u(j){v();const C=r.subscribe(j);let E=!1;return()=>{E||(E=!0,C(),g())}}function c(){r.notify()}function h(){w.onStateChange&&w.onStateChange()}function m(){return o}function v(){l++,n||(n=e.subscribe(h),r=IG())}function g(){l--,n&&l===0&&(n(),n=void 0,r.clear(),r=HO)}function x(){o||(o=!0,v())}function S(){o&&(o=!1,g())}const w={addNestedSub:u,notifyNestedSubs:c,handleChangeWrapper:h,isSubscribed:m,trySubscribe:x,tryUnsubscribe:S,getListeners:()=>r};return w}const LG=()=>typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",UG=LG(),$G=()=>typeof navigator<"u"&&navigator.product==="ReactNative",BG=$G(),HG=()=>UG||BG?b.useLayoutEffect:b.useEffect,FG=HG();function FO(e,t){return e===t?e!==0||t!==0||1/e===1/t:e!==e&&t!==t}function VG(e,t){if(FO(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;const n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let l=0;l{const h=zG(l);return{store:l,subscription:h,getServerState:r!=null?()=>r:void 0}},[l,r]),u=b.useMemo(()=>l.getState(),[l]);FG(()=>{const{subscription:h}=o;return h.onStateChange=h.notifyNestedSubs,h.trySubscribe(),u!==l.getState()&&h.notifyNestedSubs(),()=>{h.tryUnsubscribe(),h.onStateChange=void 0}},[o,u]);const c=n||qG;return b.createElement(c.Provider,{value:o},t)}var YG=new Set(["axisLine","tickLine","activeBar","activeDot","activeLabel","activeShape","allowEscapeViewBox","background","cursor","dot","label","line","margin","padding","position","shape","style","tick","wrapperStyle","radius","throttledEvents"]);function XG(e,t){return e==null&&t==null?!0:typeof e=="number"&&typeof t=="number"?e===t||e!==e&&t!==t:e===t}function ig(e,t){var n=new Set([...Object.keys(e),...Object.keys(t)]);for(var r of n)if(YG.has(r)){if(e[r]==null&&t[r]==null)continue;if(!VG(e[r],t[r]))return!1}else if(!XG(e[r],t[r]))return!1;return!0}function mb(){return mb=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);n{var t=e.separator,n=t===void 0?Zs.separator:t,r=e.contentStyle,l=e.itemStyle,o=e.labelStyle,u=o===void 0?Zs.labelStyle:o,c=e.payload,h=e.formatter,m=e.itemSorter,v=e.wrapperClassName,g=e.labelClassName,x=e.label,S=e.labelFormatter,w=e.accessibilityLayer,j=w===void 0?Zs.accessibilityLayer:w,C=()=>{if(c&&c.length){var k={padding:0,margin:0},I=a7(c,m),P=I.map((B,F)=>{if(!B||B.type==="none")return null;var se=B.formatter||h||i7,ue=B.value,de=B.name,G=ue,ne=de;if(se){var ie=se(ue,de,B,F,c);if(Array.isArray(ie)){var ce=JG(ie,2);G=ce[0],ne=ce[1]}else if(ie!=null)G=ie;else return null}var U=af(af({},Zs.itemStyle),{},{color:B.color||Zs.itemStyle.color},l);return b.createElement("li",{className:"recharts-tooltip-item",key:"tooltip-item-".concat(F),style:U},Hi(ne)?b.createElement("span",{className:"recharts-tooltip-item-name"},ne):null,Hi(ne)?b.createElement("span",{className:"recharts-tooltip-item-separator"},n):null,b.createElement("span",{className:"recharts-tooltip-item-value"},G),b.createElement("span",{className:"recharts-tooltip-item-unit"},B.unit||""))});return b.createElement("ul",{className:"recharts-tooltip-item-list",style:k},P)}return null},E=af(af({},Zs.contentStyle),r),N=af({margin:0},u),O=!yn(x),T=O?x:"",R=Ct("recharts-default-tooltip",v),A=Ct("recharts-tooltip-label",g);O&&S&&c!==void 0&&c!==null&&(T=S(x,c));var D=j?{role:"status","aria-live":"assertive"}:{};return b.createElement("div",mb({className:R,style:E},D),b.createElement("p",{className:A,style:N},b.isValidElement(T)?T:"".concat(T)),C())},lf="recharts-tooltip-wrapper",o7={visibility:"hidden"};function s7(e){var t=e.coordinate,n=e.translateX,r=e.translateY;return Ct(lf,{["".concat(lf,"-right")]:Re(n)&&t&&Re(t.x)&&n>=t.x,["".concat(lf,"-left")]:Re(n)&&t&&Re(t.x)&&n=t.y,["".concat(lf,"-top")]:Re(r)&&t&&Re(t.y)&&r0?l:0),g=n[r]+l;if(t[r])return u[r]?v:g;var x=h[r];if(x==null)return 0;if(u[r]){var S=v,w=x;return SC?Math.max(v,x):Math.max(g,x)}function u7(e){var t=e.translateX,n=e.translateY,r=e.useTranslate3d;return{transform:r?"translate3d(".concat(t,"px, ").concat(n,"px, 0)"):"translate(".concat(t,"px, ").concat(n,"px)")}}function c7(e){var t=e.allowEscapeViewBox,n=e.coordinate,r=e.offsetTop,l=e.offsetLeft,o=e.position,u=e.reverseDirection,c=e.tooltipBox,h=e.useTranslate3d,m=e.viewBox,v,g,x;return c&&c.height>0&&c.width>0&&n?(g=qO({allowEscapeViewBox:t,coordinate:n,key:"x",offset:l,position:o,reverseDirection:u,tooltipDimension:c.width,viewBox:m,viewBoxDimension:m.width}),x=qO({allowEscapeViewBox:t,coordinate:n,key:"y",offset:r,position:o,reverseDirection:u,tooltipDimension:c.height,viewBox:m,viewBoxDimension:m.height}),v=u7({translateX:g,translateY:x,useTranslate3d:h})):v=o7,{cssProperties:v,cssClasses:s7({translateX:g,translateY:x,coordinate:n})}}var f7=()=>!(typeof window<"u"&&window.document&&window.document.createElement&&window.setTimeout),ad={isSsr:f7()};function d7(e,t){return g7(e)||v7(e,t)||m7(e,t)||h7()}function h7(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function m7(e,t){if(e){if(typeof e=="string")return KO(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?KO(e,t):void 0}}function KO(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);nad.isSsr||!window.matchMedia?!1:window.matchMedia("(prefers-reduced-motion: reduce)").matches),t=d7(e,2),n=t[0],r=t[1];return b.useEffect(()=>{if(window.matchMedia){var l=window.matchMedia("(prefers-reduced-motion: reduce)"),o=()=>{r(l.matches)};return l.addEventListener("change",o),()=>{l.removeEventListener("change",o)}}},[]),n}function YO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function Ws(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);n({dismissed:!1,dismissedAtCoordinate:{x:0,y:0}})),m=b7(h,2),v=m[0],g=m[1];b.useEffect(()=>{var E=N=>{if(N.key==="Escape"){var O,T,R,A;g({dismissed:!0,dismissedAtCoordinate:{x:(O=(T=e.coordinate)===null||T===void 0?void 0:T.x)!==null&&O!==void 0?O:0,y:(R=(A=e.coordinate)===null||A===void 0?void 0:A.y)!==null&&R!==void 0?R:0}})}};return document.addEventListener("keydown",E),()=>{document.removeEventListener("keydown",E)}},[(t=e.coordinate)===null||t===void 0?void 0:t.x,(n=e.coordinate)===null||n===void 0?void 0:n.y]),v.dismissed&&(((r=(l=e.coordinate)===null||l===void 0?void 0:l.x)!==null&&r!==void 0?r:0)!==v.dismissedAtCoordinate.x||((o=(u=e.coordinate)===null||u===void 0?void 0:u.y)!==null&&o!==void 0?o:0)!==v.dismissedAtCoordinate.y)&&g(Ws(Ws({},v),{},{dismissed:!1}));var x=c7({allowEscapeViewBox:e.allowEscapeViewBox,coordinate:e.coordinate,offsetLeft:typeof e.offset=="number"?e.offset:e.offset.x,offsetTop:typeof e.offset=="number"?e.offset:e.offset.y,position:e.position,reverseDirection:e.reverseDirection,tooltipBox:e.lastBoundingBox,useTranslate3d:e.useTranslate3d,viewBox:e.viewBox}),S=x.cssClasses,w=x.cssProperties,j=e.hasPortalFromProps?{}:Ws(Ws({transition:_7({prefersReducedMotion:c,isAnimationActive:e.isAnimationActive,active:e.active,animationDuration:e.animationDuration,animationEasing:e.animationEasing})},w),{},{pointerEvents:"none",position:"absolute",top:0,left:0}),C=Ws(Ws({},j),{},{visibility:!v.dismissed&&e.active&&e.hasPayload?"visible":"hidden"},e.wrapperStyle);return b.createElement("div",{xmlns:"http://www.w3.org/1999/xhtml",tabIndex:-1,className:S,style:C,ref:e.innerRef},e.children)}var A7=b.memo(E7),YP=()=>{var e;return(e=ke(t=>t.rootProps.accessibilityLayer))!==null&&e!==void 0?e:!0};function vb(){return vb=Object.assign?Object.assign.bind():function(e){for(var t=1;tat(e.x)&&at(e.y),JO=e=>e.base!=null&&rv(e.base)&&rv(e),of=e=>e.x,sf=e=>e.y,R7=(e,t)=>{if(typeof e=="function")return e;var n="curve".concat(RS(e));if((n==="curveMonotone"||n==="curveBump")&&t){var r=WO["".concat(n).concat(t==="vertical"?"Y":"X")];if(r)return r}return WO[n]||$v},eN={connectNulls:!1,type:"linear"},M7=e=>{var t=e.type,n=t===void 0?eN.type:t,r=e.points,l=r===void 0?[]:r,o=e.baseLine,u=e.layout,c=e.connectNulls,h=c===void 0?eN.connectNulls:c,m=R7(n,u),v=h?l.filter(rv):l;if(Array.isArray(o)){var g,x=l.map((E,N)=>ZO(ZO({},E),{},{base:o[N]}));u==="vertical"?g=rm().y(sf).x1(of).x0(E=>E.base.x):g=rm().x(of).y1(sf).y0(E=>E.base.y);var S=g.defined(JO).curve(m),w=h?x.filter(JO):x;return S(w)}var j;u==="vertical"&&Re(o)?j=rm().y(sf).x1(of).x0(o):Re(o)?j=rm().x(of).y1(sf).y0(o):j=vD().x(of).y(sf);var C=j.defined(rv).curve(m);return C(v)},XP=e=>{var t=e.className,n=e.points,r=e.path,l=e.pathRef,o=Yu();if((!n||!n.length)&&!r)return null;var u={type:e.type,points:e.points,baseLine:e.baseLine,layout:e.layout||o,connectNulls:e.connectNulls},c=n&&n.length?M7(u):r;return b.createElement("path",vb({},Bi(e),LS(e),{className:Ct("recharts-curve",t),d:c===null?void 0:c,ref:l}))},D7=["x","y","top","left","width","height","className"];function gb(){return gb=Object.assign?Object.assign.bind():function(e){for(var t=1;t"M".concat(e,",").concat(l,"v").concat(r,"M").concat(o,",").concat(t,"h").concat(n),B7=e=>{var t=e.x,n=t===void 0?0:t,r=e.y,l=r===void 0?0:r,o=e.top,u=o===void 0?0:o,c=e.left,h=c===void 0?0:c,m=e.width,v=m===void 0?0:m,g=e.height,x=g===void 0?0:g,S=e.className,w=L7(e,D7),j=P7({x:n,y:l,top:u,left:h,width:v,height:x},w);return!Re(n)||!Re(l)||!Re(v)||!Re(x)||!Re(u)||!Re(h)?null:b.createElement("path",gb({},Xr(j),{className:Ct("recharts-cross",S),d:$7(n,l,v,x,u,h)}))};function H7(e,t,n,r){var l=r/2;return{stroke:"none",fill:"#ccc",x:e==="horizontal"?t.x-l:n.left+.5,y:e==="horizontal"?n.top+.5:t.y-l,width:e==="horizontal"?r:n.width-1,height:e==="horizontal"?n.height-1:r}}var iv=1e-4,QP=(e,t)=>[0,3*e,3*t-6*e,3*e-3*t+1],ZP=(e,t)=>e.map((n,r)=>n*t**r).reduce((n,r)=>n+r),nN=(e,t)=>n=>{var r=QP(e,t);return ZP(r,n)},F7=(e,t)=>n=>{var r=QP(e,t),l=[...r.map((o,u)=>o*u).slice(1),0];return ZP(l,n)},V7=e=>{var t,n=e.split("(");if(n.length!==2||n[0]!=="cubic-bezier")return null;var r=(t=n[1])===null||t===void 0||(t=t.split(")")[0])===null||t===void 0?void 0:t.split(",");if(r==null||r.length!==4)return null;var l=r.map(o=>parseFloat(o));return[l[0],l[1],l[2],l[3]]},G7=function(){for(var t=arguments.length,n=new Array(t),r=0;r{var l=nN(e,n),o=nN(t,r),u=F7(e,n),c=m=>m>1?1:m<0?0:m,h=m=>{for(var v=m>1?1:m,g=v,x=0;x<8;++x){var S=l(g)-v,w=u(g);if(Math.abs(S-v)0&&arguments[0]!==void 0?arguments[0]:{},n=t.stiff,r=n===void 0?100:n,l=t.damping,o=l===void 0?8:l,u=t.dt,c=u===void 0?16.67:u,h=1,m=[0],v=0,g=0,x=1e4,S=0;S{var N,O,T;if(E<=0)return 0;if(E>=1)return h;var R=E*C,A=Math.floor(R),D=R-A;return((N=m[A])!==null&&N!==void 0?N:0)+(((O=m[A+1])!==null&&O!==void 0?O:0)-((T=m[A])!==null&&T!==void 0?T:0))*D}},Y7=e=>{if(typeof e=="string")switch(e){case"ease":case"ease-in-out":case"ease-out":case"ease-in":case"linear":return rN(e);case"spring":return K7();default:if(e.split("(")[0]==="cubic-bezier")return rN(e)}return typeof e=="function"?e:null},X7=(e,t,n)=>{var r,l=o=>{var u=t.tick(o);if(t.getState()==="active"){if(n(t.getInterpolated()),t.getProgress()===1){t.complete(),r=void 0;return}r=e.setTimeout(l,u);return}r=e.setTimeout(l,u)};return r=e.setTimeout(l,0),()=>{var o;return(o=r)===null||o===void 0?void 0:o()}},WP=b.createContext(X7);WP.Provider;function Q7(e){var t=b.useContext(WP);return b.useMemo(()=>e??t,[e,t])}function Z7(e,t,n){return(t=W7(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function W7(e){var t=J7(e,"string");return typeof t=="symbol"?t:t+""}function J7(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var iN="init",aN="pending",lN="active",eq="completed";function $x(e){return Math.max(0,e)}class tq{getAnimationStartedTime(){return this.animationStartedTime}getBeginStartedTime(){return this.beginStartedTime}constructor(t){var n;Z7(this,"state",iN),this.animationId=t.animationId,this.onAnimationEnd=t.onAnimationEnd,this.animationDuration=$x(t.animationDuration),this.animationBegin=$x(t.animationBegin),this.progress=0,this.from=t.from,this.to=t.to,this.easing=t.easing,(n=t.onAnimationStart)===null||n===void 0||n.call(t)}getState(){return this.state}getEasing(){return this.easing}getAnimationDuration(){return this.animationDuration}tick(t){if(this.getState()===iN)return this.state=aN,this.beginStartedTime=t,this.animationBegin;if(this.getState()===aN){if(this.beginStartedTime==null)throw new Error;var n=t-this.beginStartedTime;return n>=this.animationBegin?(this.state=lN,this.animationStartedTime=t,this.nextAnimationUpdate(0)):$x(this.animationBegin-n)}if(this.getState()===lN){if(this.animationStartedTime==null)throw new Error;var r=t-this.animationStartedTime;return this.setProgress(r/this.animationDuration),this.nextAnimationUpdate(r)}return 0}setProgress(t){this.progress=Math.min(1,Math.max(0,t))}getProgress(){return this.progress}complete(){if(this.progress=1,this.state==="active"){var t;(t=this.onAnimationEnd)===null||t===void 0||t.call(this)}this.state=eq}getFrom(){return this.from}getTo(){return this.to}getAnimationId(){return this.animationId}getAnimationBegin(){return this.animationBegin}}class nq extends tq{nextAnimationUpdate(){return 0}getInterpolated(){return this.easing(pa(this.getFrom(),this.getTo(),this.getProgress()))}}class rq{setTimeout(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=performance.now(),l=null,o=u=>{u-r>=n?t(u):l=requestAnimationFrame(o)};return l=requestAnimationFrame(o),()=>{l!=null&&cancelAnimationFrame(l)}}}function iq(e,t){return sq(e)||oq(e,t)||lq(e,t)||aq()}function aq(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function lq(e,t){if(e){if(typeof e=="string")return oN(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?oN(e,t):void 0}}function oN(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{},onAnimationStart:()=>{}},sN=0,Bx=1;function JP(e){var t=Tr(e,uq),n=t.animationId,r=t.isActive,l=t.canBegin,o=t.duration,u=t.easing,c=t.begin,h=t.onAnimationEnd,m=t.onAnimationStart,v=t.children,g=KP(),x=r==="auto"?!ad.isSsr&&!g:r,S=Q7(t.animationController),w=b.useState(x?sN:Bx),j=iq(w,2),C=j[0],E=j[1];return b.useEffect(()=>{x||E(Bx)},[x]),b.useEffect(()=>{var N=Y7(u);if(!x||!l||N==null)return Ku;var O=new rq,T=new nq({animationId:n,easing:N,animationDuration:o,animationBegin:c,onAnimationStart:m,onAnimationEnd:h,from:sN,to:Bx});return S(O,T,E)},[S,n,x,l,o,u,c,m,h]),v(Number(C))}function ek(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"animation-",n=b.useRef(Tf(t)),r=b.useRef(e);return r.current!==e&&(n.current=Tf(t),r.current=e),n.current}var cq=e=>e.replace(/([A-Z])/g,t=>"-".concat(t.toLowerCase())),fq=(e,t,n)=>e.map(r=>"".concat(cq(r)," ").concat(t,"ms ").concat(n)).join(","),dq=["radius"],hq=["radius"],uN,cN,fN,dN,hN,mN,vN,gN,pN,yN;function xN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function bN(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);n{var o=ga(n),u=ga(r),c=Math.min(Math.abs(o)/2,Math.abs(u)/2),h=u>=0?1:-1,m=o>=0?1:-1,v=u>=0&&o>=0||u<0&&o<0?1:0,g;if(c>0&&Array.isArray(l)){for(var x=[0,0,0,0],S=0,w=4;Sc?c:C}g=Tn(uN||(uN=Ai(["M",",",""])),e,t+h*x[0]),x[0]>0&&(g+=Tn(cN||(cN=Ai(["A ",",",",0,0,",",",",",""])),x[0],x[0],v,e+m*x[0],t)),g+=Tn(fN||(fN=Ai(["L ",",",""])),e+n-m*x[1],t),x[1]>0&&(g+=Tn(dN||(dN=Ai(["A ",",",",0,0,",`, + `,",",""])),x[1],x[1],v,e+n,t+h*x[1])),g+=Tn(hN||(hN=Ai(["L ",",",""])),e+n,t+r-h*x[2]),x[2]>0&&(g+=Tn(mN||(mN=Ai(["A ",",",",0,0,",`, + `,",",""])),x[2],x[2],v,e+n-m*x[2],t+r)),g+=Tn(vN||(vN=Ai(["L ",",",""])),e+m*x[3],t+r),x[3]>0&&(g+=Tn(gN||(gN=Ai(["A ",",",",0,0,",`, + `,",",""])),x[3],x[3],v,e,t+r-h*x[3])),g+="Z"}else if(c>0&&l===+l&&l>0){var E=Math.min(c,l);g=Tn(pN||(pN=Ai(["M ",",",` A `,",",",0,0,",",",",",` L `,",",` A `,",",",0,0,",",",",",` L `,",",` A `,",",",0,0,",",",",",` L `,",",` - A `,",",",0,0,",",",","," Z"])),e,t+h*A,A,A,v,e+m*A,t,e+n-m*A,t,A,A,v,e+n,t+h*A,e+n,t+r-h*A,A,A,v,e+n-m*A,t+r,e+m*A,t+r,A,A,v,e,t+r-h*A)}else p=Tn(mN||(mN=Ei(["M ",","," h "," v "," h "," Z"])),e,t,n,r,-n);return p},bN={x:0,y:0,width:0,height:0,radius:0,isAnimationActive:!1,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},fq=e=>{var t=Tr(e,bN),n=b.useRef(null),r=b.useState(-1),l=lq(r,2),o=l[0],u=l[1];b.useEffect(()=>{if(n.current&&n.current.getTotalLength)try{var ie=n.current.getTotalLength();ie&&u(ie)}catch{}},[]);var c=t.x,h=t.y,m=t.width,v=t.height,p=t.radius,x=t.className,S=t.animationEasing,w=t.animationDuration,j=t.animationBegin,C=t.isAnimationActive,A=t.isUpdateAnimationActive,N=b.useRef(m),O=b.useRef(v),T=b.useRef(c),R=b.useRef(h),E=b.useMemo(()=>({x:c,y:h,width:m,height:v,radius:p}),[c,h,m,v,p]),D=XP(E,"rectangle-");if(c!==+c||h!==+h||m!==+m||v!==+v||m===0||v===0)return null;var k=Ct("recharts-rectangle",x);if(!A){var I=Xr(t);I.radius;var P=pN(I,eq);return b.createElement("path",iv({},P,{x:ga(c),y:ga(h),width:ga(m),height:ga(v),radius:typeof p=="number"?p:void 0,className:k,d:xN(c,h,m,v,p)}))}var B=N.current,F=O.current,se=T.current,ue=R.current,de="0px ".concat(o===-1?1:o,"px"),G="".concat(o,"px ").concat(o,"px"),ne=J7(["strokeDasharray"],w,typeof S=="string"?S:bN.animationEasing);return b.createElement(YP,{animationId:D,key:D,canBegin:o>0,duration:w,easing:S,isActive:A,begin:j},ie=>{var ce=pa(B,m,ie),U=pa(F,v,ie),Ee=pa(se,c,ie),ee=pa(ue,h,ie);n.current&&(N.current=ce,O.current=U,T.current=Ee,R.current=ee);var ve;C?ie>0?ve={transition:ne,strokeDasharray:G}:ve={strokeDasharray:de}:ve={strokeDasharray:G};var z=Xr(t);z.radius;var Y=pN(z,tq);return b.createElement("path",iv({},Y,{radius:typeof p=="number"?p:void 0,className:k,d:xN(Ee,ee,ce,U,p),ref:n,style:gN(gN({},ve),t.style)}))})};function SN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function wN(e){for(var t=1;te*180/Math.PI,Dn=(e,t,n,r)=>({x:e+Math.cos(-av*r)*n,y:t+Math.sin(-av*r)*n}),gq=function(t,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{top:0,right:0,bottom:0,left:0};return Math.min(Math.abs(t-(r.left||0)-(r.right||0)),Math.abs(n-(r.top||0)-(r.bottom||0)))/2},pq=(e,t)=>{var n=e.x,r=e.y,l=t.x,o=t.y;return Math.sqrt((n-l)**2+(r-o)**2)},yq=(e,t)=>{var n=e.x,r=e.y,l=t.cx,o=t.cy,u=pq({x:n,y:r},{x:l,y:o});if(u<=0)return{radius:u,angle:0};var c=(n-l)/u,h=Math.acos(c);return r>o&&(h=2*Math.PI-h),{radius:u,angle:vq(h),angleInRadian:h}},xq=e=>{var t=e.startAngle,n=e.endAngle,r=Math.floor(t/360),l=Math.floor(n/360),o=Math.min(r,l);return{startAngle:t-o*360,endAngle:n-o*360}},bq=(e,t)=>{var n=t.startAngle,r=t.endAngle,l=Math.floor(n/360),o=Math.floor(r/360),u=Math.min(l,o);return e+u*360},Sq=(e,t)=>{var n=e.relativeX,r=e.relativeY,l=yq({x:n,y:r},t),o=l.radius,u=l.angle,c=t.innerRadius,h=t.outerRadius;if(oh||o===0)return null;var m=xq(t),v=m.startAngle,p=m.endAngle,x=u,S;if(v<=p){for(;x>p;)x-=360;for(;x=v&&x<=p}else{for(;x>v;)x-=360;for(;x=p&&x<=v}return S?wN(wN({},t),{},{radius:o,angle:bq(x,t)}):null};function QP(e){var t=e.cx,n=e.cy,r=e.radius,l=e.startAngle,o=e.endAngle,u=Dn(t,n,r,l),c=Dn(t,n,r,o);return{points:[u,c],cx:t,cy:n,radius:r,startAngle:l,endAngle:o}}var jN,CN,_N,AN,EN,ON,NN;function gb(){return gb=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var n=Vr(t-e),r=Math.min(Math.abs(t-e),359.999);return n*r},um=e=>{var t=e.cx,n=e.cy,r=e.radius,l=e.angle,o=e.sign,u=e.isExternal,c=e.cornerRadius,h=e.cornerIsExternal,m=c*(u?1:-1)+r,v=Math.asin(c/m)/av,p=h?l:l+o*v,x=Dn(t,n,m,p),S=Dn(t,n,r,p),w=h?l-o*v:l,j=Dn(t,n,m*Math.cos(v*av),w);return{center:x,circleTangency:S,lineTangency:j,theta:v}},ZP=e=>{var t=e.cx,n=e.cy,r=e.innerRadius,l=e.outerRadius,o=e.startAngle,u=e.endAngle,c=wq(o,u),h=o+c,m=Dn(t,n,l,o),v=Dn(t,n,l,h),p=Tn(jN||(jN=wo(["M ",",",` + A `,",",",0,0,",",",","," Z"])),e,t+h*E,E,E,v,e+m*E,t,e+n-m*E,t,E,E,v,e+n,t+h*E,e+n,t+r-h*E,E,E,v,e+n-m*E,t+r,e+m*E,t+r,E,E,v,e,t+r-h*E)}else g=Tn(yN||(yN=Ai(["M ",","," h "," v "," h "," Z"])),e,t,n,r,-n);return g},CN={x:0,y:0,width:0,height:0,radius:0,isAnimationActive:!1,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},jq=e=>{var t=Tr(e,CN),n=b.useRef(null),r=b.useState(-1),l=yq(r,2),o=l[0],u=l[1];b.useEffect(()=>{if(n.current&&n.current.getTotalLength)try{var ie=n.current.getTotalLength();ie&&u(ie)}catch{}},[]);var c=t.x,h=t.y,m=t.width,v=t.height,g=t.radius,x=t.className,S=t.animationEasing,w=t.animationDuration,j=t.animationBegin,C=t.isAnimationActive,E=t.isUpdateAnimationActive,N=b.useRef(m),O=b.useRef(v),T=b.useRef(c),R=b.useRef(h),A=b.useMemo(()=>({x:c,y:h,width:m,height:v,radius:g}),[c,h,m,v,g]),D=ek(A,"rectangle-");if(c!==+c||h!==+h||m!==+m||v!==+v||m===0||v===0)return null;var k=Ct("recharts-rectangle",x);if(!E){var I=Xr(t);I.radius;var P=SN(I,dq);return b.createElement("path",av({},P,{x:ga(c),y:ga(h),width:ga(m),height:ga(v),radius:typeof g=="number"?g:void 0,className:k,d:jN(c,h,m,v,g)}))}var B=N.current,F=O.current,se=T.current,ue=R.current,de="0px ".concat(o===-1?1:o,"px"),G="".concat(o,"px ").concat(o,"px"),ne=fq(["strokeDasharray"],w,typeof S=="string"?S:CN.animationEasing);return b.createElement(JP,{animationId:D,key:D,canBegin:o>0,duration:w,easing:S,isActive:E,begin:j},ie=>{var ce=pa(B,m,ie),U=pa(F,v,ie),Ae=pa(se,c,ie),ee=pa(ue,h,ie);n.current&&(N.current=ce,O.current=U,T.current=Ae,R.current=ee);var ve;C?ie>0?ve={transition:ne,strokeDasharray:G}:ve={strokeDasharray:de}:ve={strokeDasharray:G};var z=Xr(t);z.radius;var Y=SN(z,hq);return b.createElement("path",av({},Y,{radius:typeof g=="number"?g:void 0,className:k,d:jN(Ae,ee,ce,U,g),ref:n,style:bN(bN({},ve),t.style)}))})};function _N(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function EN(e){for(var t=1;te*180/Math.PI,Dn=(e,t,n,r)=>({x:e+Math.cos(-lv*r)*n,y:t+Math.sin(-lv*r)*n}),Oq=function(t,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{top:0,right:0,bottom:0,left:0};return Math.min(Math.abs(t-(r.left||0)-(r.right||0)),Math.abs(n-(r.top||0)-(r.bottom||0)))/2},Nq=(e,t)=>{var n=e.x,r=e.y,l=t.x,o=t.y;return Math.sqrt((n-l)**2+(r-o)**2)},Tq=(e,t)=>{var n=e.x,r=e.y,l=t.cx,o=t.cy,u=Nq({x:n,y:r},{x:l,y:o});if(u<=0)return{radius:u,angle:0};var c=(n-l)/u,h=Math.acos(c);return r>o&&(h=2*Math.PI-h),{radius:u,angle:Aq(h),angleInRadian:h}},Rq=e=>{var t=e.startAngle,n=e.endAngle,r=Math.floor(t/360),l=Math.floor(n/360),o=Math.min(r,l);return{startAngle:t-o*360,endAngle:n-o*360}},Mq=(e,t)=>{var n=t.startAngle,r=t.endAngle,l=Math.floor(n/360),o=Math.floor(r/360),u=Math.min(l,o);return e+u*360},Dq=(e,t)=>{var n=e.relativeX,r=e.relativeY,l=Tq({x:n,y:r},t),o=l.radius,u=l.angle,c=t.innerRadius,h=t.outerRadius;if(oh||o===0)return null;var m=Rq(t),v=m.startAngle,g=m.endAngle,x=u,S;if(v<=g){for(;x>g;)x-=360;for(;x=v&&x<=g}else{for(;x>v;)x-=360;for(;x=g&&x<=v}return S?EN(EN({},t),{},{radius:o,angle:Mq(x,t)}):null};function tk(e){var t=e.cx,n=e.cy,r=e.radius,l=e.startAngle,o=e.endAngle,u=Dn(t,n,r,l),c=Dn(t,n,r,o);return{points:[u,c],cx:t,cy:n,radius:r,startAngle:l,endAngle:o}}var AN,ON,NN,TN,RN,MN,DN;function pb(){return pb=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var n=Vr(t-e),r=Math.min(Math.abs(t-e),359.999);return n*r},cm=e=>{var t=e.cx,n=e.cy,r=e.radius,l=e.angle,o=e.sign,u=e.isExternal,c=e.cornerRadius,h=e.cornerIsExternal,m=c*(u?1:-1)+r,v=Math.asin(c/m)/lv,g=h?l:l+o*v,x=Dn(t,n,m,g),S=Dn(t,n,r,g),w=h?l-o*v:l,j=Dn(t,n,m*Math.cos(v*lv),w);return{center:x,circleTangency:S,lineTangency:j,theta:v}},nk=e=>{var t=e.cx,n=e.cy,r=e.innerRadius,l=e.outerRadius,o=e.startAngle,u=e.endAngle,c=Pq(o,u),h=o+c,m=Dn(t,n,l,o),v=Dn(t,n,l,h),g=Tn(AN||(AN=wo(["M ",",",` A `,",",`,0, `,",",`, `,",",` - `])),m.x,m.y,l,l,+(Math.abs(c)>180),+(o>h),v.x,v.y);if(r>0){var x=Dn(t,n,r,o),S=Dn(t,n,r,h);p+=Tn(CN||(CN=wo(["L ",",",` + `])),m.x,m.y,l,l,+(Math.abs(c)>180),+(o>h),v.x,v.y);if(r>0){var x=Dn(t,n,r,o),S=Dn(t,n,r,h);g+=Tn(ON||(ON=wo(["L ",",",` A `,",",`,0, `,",",`, - `,","," Z"])),S.x,S.y,r,r,+(Math.abs(c)>180),+(o<=h),x.x,x.y)}else p+=Tn(_N||(_N=wo(["L ",","," Z"])),t,n);return p},jq=e=>{var t=e.cx,n=e.cy,r=e.innerRadius,l=e.outerRadius,o=e.cornerRadius,u=e.forceCornerRadius,c=e.cornerIsExternal,h=e.startAngle,m=e.endAngle,v=Vr(m-h),p=um({cx:t,cy:n,radius:l,angle:h,sign:v,cornerRadius:o,cornerIsExternal:c}),x=p.circleTangency,S=p.lineTangency,w=p.theta,j=um({cx:t,cy:n,radius:l,angle:m,sign:-v,cornerRadius:o,cornerIsExternal:c}),C=j.circleTangency,A=j.lineTangency,N=j.theta,O=c?Math.abs(h-m):Math.abs(h-m)-w-N;if(O<0)return u?Tn(AN||(AN=wo(["M ",",",` + `,","," Z"])),S.x,S.y,r,r,+(Math.abs(c)>180),+(o<=h),x.x,x.y)}else g+=Tn(NN||(NN=wo(["L ",","," Z"])),t,n);return g},kq=e=>{var t=e.cx,n=e.cy,r=e.innerRadius,l=e.outerRadius,o=e.cornerRadius,u=e.forceCornerRadius,c=e.cornerIsExternal,h=e.startAngle,m=e.endAngle,v=Vr(m-h),g=cm({cx:t,cy:n,radius:l,angle:h,sign:v,cornerRadius:o,cornerIsExternal:c}),x=g.circleTangency,S=g.lineTangency,w=g.theta,j=cm({cx:t,cy:n,radius:l,angle:m,sign:-v,cornerRadius:o,cornerIsExternal:c}),C=j.circleTangency,E=j.lineTangency,N=j.theta,O=c?Math.abs(h-m):Math.abs(h-m)-w-N;if(O<0)return u?Tn(TN||(TN=wo(["M ",",",` a`,",",",0,0,1,",`,0 a`,",",",0,0,1,",`,0 - `])),S.x,S.y,o,o,o*2,o,o,-o*2):ZP({cx:t,cy:n,innerRadius:r,outerRadius:l,startAngle:h,endAngle:m});var T=Tn(EN||(EN=wo(["M ",",",` + `])),S.x,S.y,o,o,o*2,o,o,-o*2):nk({cx:t,cy:n,innerRadius:r,outerRadius:l,startAngle:h,endAngle:m});var T=Tn(RN||(RN=wo(["M ",",",` A`,",",",0,0,",",",",",` A`,",",",0,",",",",",",",` A`,",",",0,0,",",",",",` - `])),S.x,S.y,o,o,+(v<0),x.x,x.y,l,l,+(O>180),+(v<0),C.x,C.y,o,o,+(v<0),A.x,A.y);if(r>0){var R=um({cx:t,cy:n,radius:r,angle:h,sign:v,isExternal:!0,cornerRadius:o,cornerIsExternal:c}),E=R.circleTangency,D=R.lineTangency,k=R.theta,I=um({cx:t,cy:n,radius:r,angle:m,sign:-v,isExternal:!0,cornerRadius:o,cornerIsExternal:c}),P=I.circleTangency,B=I.lineTangency,F=I.theta,se=c?Math.abs(h-m):Math.abs(h-m)-k-F;if(se<0&&o===0)return"".concat(T,"L").concat(t,",").concat(n,"Z");T+=Tn(ON||(ON=wo(["L",",",` + `])),S.x,S.y,o,o,+(v<0),x.x,x.y,l,l,+(O>180),+(v<0),C.x,C.y,o,o,+(v<0),E.x,E.y);if(r>0){var R=cm({cx:t,cy:n,radius:r,angle:h,sign:v,isExternal:!0,cornerRadius:o,cornerIsExternal:c}),A=R.circleTangency,D=R.lineTangency,k=R.theta,I=cm({cx:t,cy:n,radius:r,angle:m,sign:-v,isExternal:!0,cornerRadius:o,cornerIsExternal:c}),P=I.circleTangency,B=I.lineTangency,F=I.theta,se=c?Math.abs(h-m):Math.abs(h-m)-k-F;if(se<0&&o===0)return"".concat(T,"L").concat(t,",").concat(n,"Z");T+=Tn(MN||(MN=wo(["L",",",` A`,",",",0,0,",",",",",` A`,",",",0,",",",",",",",` - A`,",",",0,0,",",",",","Z"])),B.x,B.y,o,o,+(v<0),P.x,P.y,r,r,+(se>180),+(v>0),E.x,E.y,o,o,+(v<0),D.x,D.y)}else T+=Tn(NN||(NN=wo(["L",",","Z"])),t,n);return T},Cq={cx:0,cy:0,innerRadius:0,outerRadius:0,startAngle:0,endAngle:0,cornerRadius:0,forceCornerRadius:!1,cornerIsExternal:!1},_q=e=>{var t=Tr(e,Cq),n=t.cx,r=t.cy,l=t.innerRadius,o=t.outerRadius,u=t.cornerRadius,c=t.forceCornerRadius,h=t.cornerIsExternal,m=t.startAngle,v=t.endAngle,p=t.className;if(o0&&Math.abs(m-v)<360?j=jq({cx:n,cy:r,innerRadius:l,outerRadius:o,cornerRadius:Math.min(w,S/2),forceCornerRadius:c,cornerIsExternal:h,startAngle:m,endAngle:v}):j=ZP({cx:n,cy:r,innerRadius:l,outerRadius:o,startAngle:m,endAngle:v}),b.createElement("path",gb({},Xr(t),{className:x,d:j}))};function Aq(e,t,n){if(e==="horizontal")return[{x:t.x,y:n.top},{x:t.x,y:n.top+n.height}];if(e==="vertical")return[{x:n.left,y:t.y},{x:n.left+n.width,y:t.y}];if(wD(t)){if(e==="centric"){var r=t.cx,l=t.cy,o=t.innerRadius,u=t.outerRadius,c=t.angle,h=Dn(r,l,o,c),m=Dn(r,l,u,c);return[{x:h.x,y:h.y},{x:m.x,y:m.y}]}return QP(t)}}function Eq(e){return ES(e)?NaN:Number(e)}function Bx(e){return e?(e=Eq(e),e===1/0||e===-1/0?(e<0?-1:1)*Number.MAX_VALUE:e===e?e:0):e===0?e:0}function WP(e,t,n){n&&typeof n!="number"&&nb(e,t,n)&&(t=n=void 0),e=Bx(e),t===void 0?(t=e,e=0):t=Bx(t),n=n===void 0?ee.chartData,JP=W([Gi],e=>{var t=e.chartData!=null?e.chartData.length-1:0;return{chartData:e.chartData,computedData:e.computedData,dataEndIndex:t,dataStartIndex:0}}),ad=(e,t,n,r)=>r?JP(e):Gi(e),Oq=W([ad],e=>{var t=e.chartData,n=e.dataStartIndex,r=e.dataEndIndex;return t!=null?t.slice(n,r+1):[]});W([JP],e=>{var t=e.chartData,n=e.dataStartIndex,r=e.dataEndIndex;return t!=null?t.slice(n,r+1):[]});var Nq=W([Gi],e=>{var t=e.chartData,n=e.dataStartIndex,r=e.dataEndIndex;return t!=null?t.slice(n,r+1):[]});function ZS(e,t){return Dq(e)||Mq(e,t)||Rq(e,t)||Tq()}function Tq(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Rq(e,t){if(e){if(typeof e=="string")return TN(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?TN(e,t):void 0}}function TN(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);ne.e^o.s<0?1:-1;for(r=o.d.length,l=e.d.length,t=0,n=re.d[t]^o.s<0?1:-1;return r===l?0:r>l^o.s<0?1:-1};_e.decimalPlaces=_e.dp=function(){var e=this,t=e.d.length-1,n=(t-e.e)*Nt;if(t=e.d[t],t)for(;t%10==0;t/=10)n--;return n<0?0:n};_e.dividedBy=_e.div=function(e){return Sa(this,new this.constructor(e))};_e.dividedToIntegerBy=_e.idiv=function(e){var t=this,n=t.constructor;return jt(Sa(t,new n(e),0,1),n.precision)};_e.equals=_e.eq=function(e){return!this.cmp(e)};_e.exponent=function(){return Zt(this)};_e.greaterThan=_e.gt=function(e){return this.cmp(e)>0};_e.greaterThanOrEqualTo=_e.gte=function(e){return this.cmp(e)>=0};_e.isInteger=_e.isint=function(){return this.e>this.d.length-2};_e.isNegative=_e.isneg=function(){return this.s<0};_e.isPositive=_e.ispos=function(){return this.s>0};_e.isZero=function(){return this.s===0};_e.lessThan=_e.lt=function(e){return this.cmp(e)<0};_e.lessThanOrEqualTo=_e.lte=function(e){return this.cmp(e)<1};_e.logarithm=_e.log=function(e){var t,n=this,r=n.constructor,l=r.precision,o=l+5;if(e===void 0)e=new r(10);else if(e=new r(e),e.s<1||e.eq(Cr))throw Error(Zr+"NaN");if(n.s<1)throw Error(Zr+(n.s?"NaN":"-Infinity"));return n.eq(Cr)?new r(0):(Dt=!1,t=Sa(Pf(n,o),Pf(e,o),o),Dt=!0,jt(t,l))};_e.minus=_e.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?ik(t,e):nk(t,(e.s=-e.s,e))};_e.modulo=_e.mod=function(e){var t,n=this,r=n.constructor,l=r.precision;if(e=new r(e),!e.s)throw Error(Zr+"NaN");return n.s?(Dt=!1,t=Sa(n,e,0,1).times(e),Dt=!0,n.minus(t)):jt(new r(n),l)};_e.naturalExponential=_e.exp=function(){return rk(this)};_e.naturalLogarithm=_e.ln=function(){return Pf(this)};_e.negated=_e.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e};_e.plus=_e.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?nk(t,e):ik(t,(e.s=-e.s,e))};_e.precision=_e.sd=function(e){var t,n,r,l=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(Lo+e);if(t=Zt(l)+1,r=l.d.length-1,n=r*Nt+1,r=l.d[r],r){for(;r%10==0;r/=10)n--;for(r=l.d[0];r>=10;r/=10)n++}return e&&t>n?t:n};_e.squareRoot=_e.sqrt=function(){var e,t,n,r,l,o,u,c=this,h=c.constructor;if(c.s<1){if(!c.s)return new h(0);throw Error(Zr+"NaN")}for(e=Zt(c),Dt=!1,l=Math.sqrt(+c),l==0||l==1/0?(t=Ii(c.d),(t.length+e)%2==0&&(t+="0"),l=Math.sqrt(t),e=Qu((e+1)/2)-(e<0||e%2),l==1/0?t="5e"+e:(t=l.toExponential(),t=t.slice(0,t.indexOf("e")+1)+e),r=new h(t)):r=new h(l.toString()),n=h.precision,l=u=n+3;;)if(o=r,r=o.plus(Sa(c,o,u+2)).times(.5),Ii(o.d).slice(0,u)===(t=Ii(r.d)).slice(0,u)){if(t=t.slice(u-3,u+1),l==u&&t=="4999"){if(jt(o,n+1,0),o.times(o).eq(c)){r=o;break}}else if(t!="9999")break;u+=4}return Dt=!0,jt(r,n)};_e.times=_e.mul=function(e){var t,n,r,l,o,u,c,h,m,v=this,p=v.constructor,x=v.d,S=(e=new p(e)).d;if(!v.s||!e.s)return new p(0);for(e.s*=v.s,n=v.e+e.e,h=x.length,m=S.length,h=0;){for(t=0,l=h+r;l>r;)c=o[l]+S[r]*x[l-r-1]+t,o[l--]=c%mn|0,t=c/mn|0;o[l]=(o[l]+t)%mn|0}for(;!o[--u];)o.pop();return t?++n:o.shift(),e.d=o,e.e=n,Dt?jt(e,p.precision):e};_e.toDecimalPlaces=_e.todp=function(e,t){var n=this,r=n.constructor;return n=new r(n),e===void 0?n:(Vi(e,0,Xu),t===void 0?t=r.rounding:Vi(t,0,8),jt(n,e+Zt(n)+1,t))};_e.toExponential=function(e,t){var n,r=this,l=r.constructor;return e===void 0?n=Ko(r,!0):(Vi(e,0,Xu),t===void 0?t=l.rounding:Vi(t,0,8),r=jt(new l(r),e+1,t),n=Ko(r,!0,e+1)),n};_e.toFixed=function(e,t){var n,r,l=this,o=l.constructor;return e===void 0?Ko(l):(Vi(e,0,Xu),t===void 0?t=o.rounding:Vi(t,0,8),r=jt(new o(l),e+Zt(l)+1,t),n=Ko(r.abs(),!1,e+Zt(r)+1),l.isneg()&&!l.isZero()?"-"+n:n)};_e.toInteger=_e.toint=function(){var e=this,t=e.constructor;return jt(new t(e),Zt(e)+1,t.rounding)};_e.toNumber=function(){return+this};_e.toPower=_e.pow=function(e){var t,n,r,l,o,u,c=this,h=c.constructor,m=12,v=+(e=new h(e));if(!e.s)return new h(Cr);if(c=new h(c),!c.s){if(e.s<1)throw Error(Zr+"Infinity");return c}if(c.eq(Cr))return c;if(r=h.precision,e.eq(Cr))return jt(c,r);if(t=e.e,n=e.d.length-1,u=t>=n,o=c.s,u){if((n=v<0?-v:v)<=tk){for(l=new h(Cr),t=Math.ceil(r/Nt+4),Dt=!1;n%2&&(l=l.times(c),DN(l.d,t)),n=Qu(n/2),n!==0;)c=c.times(c),DN(c.d,t);return Dt=!0,e.s<0?new h(Cr).div(l):jt(l,r)}}else if(o<0)throw Error(Zr+"NaN");return o=o<0&&e.d[Math.max(t,n)]&1?-1:1,c.s=1,Dt=!1,l=e.times(Pf(c,r+m)),Dt=!0,l=rk(l),l.s=o,l};_e.toPrecision=function(e,t){var n,r,l=this,o=l.constructor;return e===void 0?(n=Zt(l),r=Ko(l,n<=o.toExpNeg||n>=o.toExpPos)):(Vi(e,1,Xu),t===void 0?t=o.rounding:Vi(t,0,8),l=jt(new o(l),e,t),n=Zt(l),r=Ko(l,e<=n||n<=o.toExpNeg,e)),r};_e.toSignificantDigits=_e.tosd=function(e,t){var n=this,r=n.constructor;return e===void 0?(e=r.precision,t=r.rounding):(Vi(e,1,Xu),t===void 0?t=r.rounding:Vi(t,0,8)),jt(new r(n),e,t)};_e.toString=_e.valueOf=_e.val=_e.toJSON=_e[Symbol.for("nodejs.util.inspect.custom")]=function(){var e=this,t=Zt(e),n=e.constructor;return Ko(e,t<=n.toExpNeg||t>=n.toExpPos)};function nk(e,t){var n,r,l,o,u,c,h,m,v=e.constructor,p=v.precision;if(!e.s||!t.s)return t.s||(t=new v(e)),Dt?jt(t,p):t;if(h=e.d,m=t.d,u=e.e,l=t.e,h=h.slice(),o=u-l,o){for(o<0?(r=h,o=-o,c=m.length):(r=m,l=u,c=h.length),u=Math.ceil(p/Nt),c=u>c?u+1:c+1,o>c&&(o=c,r.length=1),r.reverse();o--;)r.push(0);r.reverse()}for(c=h.length,o=m.length,c-o<0&&(o=c,r=m,m=h,h=r),n=0;o;)n=(h[--o]=h[o]+m[o]+n)/mn|0,h[o]%=mn;for(n&&(h.unshift(n),++l),c=h.length;h[--c]==0;)h.pop();return t.d=h,t.e=l,Dt?jt(t,p):t}function Vi(e,t,n){if(e!==~~e||en)throw Error(Lo+e)}function Ii(e){var t,n,r,l=e.length-1,o="",u=e[0];if(l>0){for(o+=u,t=1;tu?1:-1;else for(c=h=0;cl[c]?1:-1;break}return h}function n(r,l,o){for(var u=0;o--;)r[o]-=u,u=r[o]1;)r.shift()}return function(r,l,o,u){var c,h,m,v,p,x,S,w,j,C,A,N,O,T,R,E,D,k,I=r.constructor,P=r.s==l.s?1:-1,B=r.d,F=l.d;if(!r.s)return new I(r);if(!l.s)throw Error(Zr+"Division by zero");for(h=r.e-l.e,D=F.length,R=B.length,S=new I(P),w=S.d=[],m=0;F[m]==(B[m]||0);)++m;if(F[m]>(B[m]||0)&&--h,o==null?N=o=I.precision:u?N=o+(Zt(r)-Zt(l))+1:N=o,N<0)return new I(0);if(N=N/Nt+2|0,m=0,D==1)for(v=0,F=F[0],N++;(m1&&(F=e(F,v),B=e(B,v),D=F.length,R=B.length),T=D,j=B.slice(0,D),C=j.length;C=mn/2&&++E;do v=0,c=t(F,j,D,C),c<0?(A=j[0],D!=C&&(A=A*mn+(j[1]||0)),v=A/E|0,v>1?(v>=mn&&(v=mn-1),p=e(F,v),x=p.length,C=j.length,c=t(p,j,x,C),c==1&&(v--,n(p,D16)throw Error(WS+Zt(e));if(!e.s)return new v(Cr);for(Dt=!1,c=p,u=new v(.03125);e.abs().gte(.1);)e=e.times(u),m+=5;for(r=Math.log(xo(2,m))/Math.LN10*2+5|0,c+=r,n=l=o=new v(Cr),v.precision=c;;){if(l=jt(l.times(e),c),n=n.times(++h),u=o.plus(Sa(l,n,c)),Ii(u.d).slice(0,c)===Ii(o.d).slice(0,c)){for(;m--;)o=jt(o.times(o),c);return v.precision=p,t==null?(Dt=!0,jt(o,p)):o}o=u}}function Zt(e){for(var t=e.e*Nt,n=e.d[0];n>=10;n/=10)t++;return t}function Hx(e,t,n){if(t>e.LN10.sd())throw Dt=!0,n&&(e.precision=n),Error(Zr+"LN10 precision limit exceeded");return jt(new e(e.LN10),t)}function yl(e){for(var t="";e--;)t+="0";return t}function Pf(e,t){var n,r,l,o,u,c,h,m,v,p=1,x=10,S=e,w=S.d,j=S.constructor,C=j.precision;if(S.s<1)throw Error(Zr+(S.s?"NaN":"-Infinity"));if(S.eq(Cr))return new j(0);if(t==null?(Dt=!1,m=C):m=t,S.eq(10))return t==null&&(Dt=!0),Hx(j,m);if(m+=x,j.precision=m,n=Ii(w),r=n.charAt(0),o=Zt(S),Math.abs(o)<15e14){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)S=S.times(e),n=Ii(S.d),r=n.charAt(0),p++;o=Zt(S),r>1?(S=new j("0."+n),o++):S=new j(r+"."+n.slice(1))}else return h=Hx(j,m+2,C).times(o+""),S=Pf(new j(r+"."+n.slice(1)),m-x).plus(h),j.precision=C,t==null?(Dt=!0,jt(S,C)):S;for(c=u=S=Sa(S.minus(Cr),S.plus(Cr),m),v=jt(S.times(S),m),l=3;;){if(u=jt(u.times(v),m),h=c.plus(Sa(u,new j(l),m)),Ii(h.d).slice(0,m)===Ii(c.d).slice(0,m))return c=c.times(2),o!==0&&(c=c.plus(Hx(j,m+2,C).times(o+""))),c=Sa(c,new j(p),m),j.precision=C,t==null?(Dt=!0,jt(c,C)):c;c=h,l+=2}}function MN(e,t){var n,r,l;for((n=t.indexOf("."))>-1&&(t=t.replace(".","")),(r=t.search(/e/i))>0?(n<0&&(n=r),n+=+t.slice(r+1),t=t.substring(0,r)):n<0&&(n=t.length),r=0;t.charCodeAt(r)===48;)++r;for(l=t.length;t.charCodeAt(l-1)===48;)--l;if(t=t.slice(r,l),t){if(l-=r,n=n-r-1,e.e=Qu(n/Nt),e.d=[],r=(n+1)%Nt,n<0&&(r+=Nt),rlv||e.e<-lv))throw Error(WS+n)}else e.s=0,e.e=0,e.d=[0];return e}function jt(e,t,n){var r,l,o,u,c,h,m,v,p=e.d;for(u=1,o=p[0];o>=10;o/=10)u++;if(r=t-u,r<0)r+=Nt,l=t,m=p[v=0];else{if(v=Math.ceil((r+1)/Nt),o=p.length,v>=o)return e;for(m=o=p[v],u=1;o>=10;o/=10)u++;r%=Nt,l=r-Nt+u}if(n!==void 0&&(o=xo(10,u-l-1),c=m/o%10|0,h=t<0||p[v+1]!==void 0||m%o,h=n<4?(c||h)&&(n==0||n==(e.s<0?3:2)):c>5||c==5&&(n==4||h||n==6&&(r>0?l>0?m/xo(10,u-l):0:p[v-1])%10&1||n==(e.s<0?8:7))),t<1||!p[0])return h?(o=Zt(e),p.length=1,t=t-o-1,p[0]=xo(10,(Nt-t%Nt)%Nt),e.e=Qu(-t/Nt)||0):(p.length=1,p[0]=e.e=e.s=0),e;if(r==0?(p.length=v,o=1,v--):(p.length=v+1,o=xo(10,Nt-r),p[v]=l>0?(m/xo(10,u-l)%xo(10,l)|0)*o:0),h)for(;;)if(v==0){(p[0]+=o)==mn&&(p[0]=1,++e.e);break}else{if(p[v]+=o,p[v]!=mn)break;p[v--]=0,o=1}for(r=p.length;p[--r]===0;)p.pop();if(Dt&&(e.e>lv||e.e<-lv))throw Error(WS+Zt(e));return e}function ik(e,t){var n,r,l,o,u,c,h,m,v,p,x=e.constructor,S=x.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new x(e),Dt?jt(t,S):t;if(h=e.d,p=t.d,r=t.e,m=e.e,h=h.slice(),u=m-r,u){for(v=u<0,v?(n=h,u=-u,c=p.length):(n=p,r=m,c=h.length),l=Math.max(Math.ceil(S/Nt),c)+2,u>l&&(u=l,n.length=1),n.reverse(),l=u;l--;)n.push(0);n.reverse()}else{for(l=h.length,c=p.length,v=l0;--l)h[c++]=0;for(l=p.length;l>u;){if(h[--l]0?o=o.charAt(0)+"."+o.slice(1)+yl(r):u>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(l<0?"e":"e+")+l):l<0?(o="0."+yl(-l-1)+o,n&&(r=n-u)>0&&(o+=yl(r))):l>=u?(o+=yl(l+1-u),n&&(r=n-l-1)>0&&(o=o+"."+yl(r))):((r=l+1)0&&(l+1===u&&(o+="."),o+=yl(r))),e.s<0?"-"+o:o}function DN(e,t){if(e.length>t)return e.length=t,!0}function ak(e){var t,n,r;function l(o){var u=this;if(!(u instanceof l))return new l(o);if(u.constructor=l,o instanceof l){u.s=o.s,u.e=o.e,u.d=(o=o.d)?o.slice():o;return}if(typeof o=="number"){if(o*0!==0)throw Error(Lo+o);if(o>0)u.s=1;else if(o<0)o=-o,u.s=-1;else{u.s=0,u.e=0,u.d=[0];return}if(o===~~o&&o<1e7){u.e=0,u.d=[o];return}return MN(u,o.toString())}else if(typeof o!="string")throw Error(Lo+o);if(o.charCodeAt(0)===45?(o=o.slice(1),u.s=-1):u.s=1,Iq.test(o))MN(u,o);else throw Error(Lo+o)}if(l.prototype=_e,l.ROUND_UP=0,l.ROUND_DOWN=1,l.ROUND_CEIL=2,l.ROUND_FLOOR=3,l.ROUND_HALF_UP=4,l.ROUND_HALF_DOWN=5,l.ROUND_HALF_EVEN=6,l.ROUND_HALF_CEIL=7,l.ROUND_HALF_FLOOR=8,l.clone=ak,l.config=l.set=zq,e===void 0&&(e={}),e)for(r=["precision","rounding","toExpNeg","toExpPos","LN10"],t=0;t=l[t+1]&&r<=l[t+2])this[n]=r;else throw Error(Lo+n+": "+r);if((r=e[n="LN10"])!==void 0)if(r==Math.LN10)this[n]=new this(r);else throw Error(Lo+n+": "+r);return this}var JS=ak(kq);Cr=new JS(1);const et=JS;function lk(e){var t;return e===0?t=1:t=Math.floor(new et(e).abs().log(10).toNumber())+1,t}function ok(e,t,n){for(var r=new et(e),l=0,o=[];r.lt(t)&&l<1e5;)o.push(r.toNumber()),r=r.add(n),l++;return o}function kf(e,t){return Bq(e)||$q(e,t)||Uq(e,t)||Lq()}function Lq(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Uq(e,t){if(e){if(typeof e=="string")return PN(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?PN(e,t):void 0}}function PN(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{var t=kf(e,2),n=t[0],r=t[1],l=n,o=r;return n>r&&(l=r,o=n),[l,o]},e1=(e,t,n)=>{if(e.lte(0))return new et(0);var r=lk(e.toNumber()),l=new et(10).pow(r),o=e.div(l),u=r!==1?.05:.1,c=new et(Math.ceil(o.div(u).toNumber())).add(n).mul(u),h=c.mul(l);return t?new et(h.toNumber()):new et(Math.ceil(h.toNumber()))},uk=(e,t,n)=>{var r;if(e.lte(0))return new et(0);var l=[1,2,2.5,5],o=e.toNumber(),u=Math.floor(new et(o).abs().log(10).toNumber()),c=new et(10).pow(u),h=e.div(c).toNumber(),m=l.findIndex(S=>S>=h-1e-10);if(m===-1&&(c=c.mul(10),m=0),m+=n,m>=l.length){var v=Math.floor(m/l.length);m%=l.length,c=c.mul(new et(10).pow(v))}var p=(r=l[m])!==null&&r!==void 0?r:1,x=new et(p).mul(c);return t?x:new et(Math.ceil(x.toNumber()))},Hq=(e,t,n)=>{var r=new et(1),l=new et(e);if(!l.isint()&&n){var o=Math.abs(e);o<1?(r=new et(10).pow(lk(e)-1),l=new et(Math.floor(l.div(r).toNumber())).mul(r)):o>1&&(l=new et(Math.floor(e)))}else e===0?l=new et(Math.floor((t-1)/2)):n||(l=new et(Math.floor(e)));for(var u=Math.floor((t-1)/2),c=[],h=0;h4&&arguments[4]!==void 0?arguments[4]:0,u=arguments.length>5&&arguments[5]!==void 0?arguments[5]:e1;if(!Number.isFinite((n-t)/(r-1)))return{step:new et(0),tickMin:new et(0),tickMax:new et(0)};var c=u(new et(n).sub(t).div(r-1),l,o),h;t<=0&&n>=0?h=new et(0):(h=new et(t).add(n).div(2),h=h.sub(new et(h).mod(c)));var m=Math.ceil(h.sub(t).div(c).toNumber()),v=Math.ceil(new et(n).sub(h).div(c).toNumber()),p=m+v+1;return p>r?ck(t,n,r,l,o+1,u):(p0?v+(r-p):v,m=n>0?m:m+(r-p)),{step:c,tickMin:h.sub(new et(m).mul(c)),tickMax:h.add(new et(v).mul(c))})},kN=function(t){var n=kf(t,2),r=n[0],l=n[1],o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:6,u=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,c=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"auto",h=Math.max(o,2),m=sk([r,l]),v=kf(m,2),p=v[0],x=v[1];if(p===-1/0||x===1/0){var S=x===1/0?[p,...Array(o-1).fill(1/0)]:[...Array(o-1).fill(-1/0),x];return r>l?S.reverse():S}if(p===x)return Hq(p,o,u);var w=c==="snap125"?uk:e1,j=ck(p,x,h,u,0,w),C=j.step,A=j.tickMin,N=j.tickMax,O=ok(A,N.add(new et(.1).mul(C)),C);return r>l?O.reverse():O},IN=function(t,n){var r=kf(t,2),l=r[0],o=r[1],u=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,c=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"auto",h=sk([l,o]),m=kf(h,2),v=m[0],p=m[1];if(v===-1/0||p===1/0)return[l,o];if(v===p)return[v];var x=c==="snap125"?uk:e1,S=Math.max(n,2),w=x(new et(p).sub(v).div(S-1),u,0),j=[...ok(new et(v),new et(p),w),p];if(u===!1){j=j.map(A=>Math.round(A));var C=j.length-1;C>0&&j[C]===j[C-1]&&(j=j.slice(0,C))}return l>o?j.reverse():j},Fq=e=>e.rootProps.barCategoryGap,ig=e=>e.rootProps.stackOffset,fk=e=>e.rootProps.reverseStackOrder,t1=e=>e.options.chartName,n1=e=>e.rootProps.syncId,dk=e=>e.rootProps.syncMethod,r1=e=>e.options.eventEmitter,Qn={grid:-100,barBackground:-50,area:100,cursorRectangle:200,bar:300,line:400,axis:500,scatter:600,activeBar:1e3,cursorLine:1100,activeDot:1200,label:2e3},mo={allowDecimals:!1,allowDataOverflow:!1,angleAxisId:0,reversed:!1,scale:"auto",tick:!0,type:"auto"},Oi={allowDataOverflow:!1,allowDecimals:!1,allowDuplicatedCategory:!0,includeHidden:!1,radiusAxisId:0,reversed:!1,scale:"auto",tick:!0,tickCount:5,type:"auto"},ag=(e,t)=>{if(!(!e||!t))return e!=null&&e.reversed?[t[1],t[0]]:t};function lg(e,t,n){if(n!=="auto")return n;if(e!=null)return Ra(e,t)?"category":"number"}function zN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function ov(e){for(var t=1;t{if(t!=null)return e.polarAxis.angleAxis[t]},i1=W([Kq,$P],(e,t)=>{var n;if(e!=null)return e;var r=(n=lg(t,"angleAxis",LN.type))!==null&&n!==void 0?n:"category";return ov(ov({},LN),{},{type:r})}),Yq=(e,t)=>e.polarAxis.radiusAxis[t],a1=W([Yq,$P],(e,t)=>{var n;if(e!=null)return e;var r=(n=lg(t,"radiusAxis",UN.type))!==null&&n!==void 0?n:"category";return ov(ov({},UN),{},{type:r})}),og=e=>e.polarOptions,l1=W([Ma,Da,Pn],gq),hk=W([og,l1],(e,t)=>{if(e!=null)return Pl(e.innerRadius,t,0)}),mk=W([og,l1],(e,t)=>{if(e!=null)return Pl(e.outerRadius,t,t*.8)}),Xq=e=>{if(e==null)return[0,0];var t=e.startAngle,n=e.endAngle;return[t,n]},vk=W([og],Xq);W([i1,vk],ag);var gk=W([l1,hk,mk],(e,t,n)=>{if(!(e==null||t==null||n==null))return[t,n]});W([a1,gk],ag);var pk=W([It,og,hk,mk,Ma,Da],(e,t,n,r,l,o)=>{if(!(e!=="centric"&&e!=="radial"||t==null||n==null||r==null)){var u=t.cx,c=t.cy,h=t.startAngle,m=t.endAngle;return{cx:Pl(u,l,l/2),cy:Pl(c,o,o/2),innerRadius:n,outerRadius:r,startAngle:h,endAngle:m,clockWise:!1}}}),xn=(e,t)=>t,sg=(e,t,n)=>n;function yk(e){return e==null?void 0:e.id}function xk(e,t,n){var r=t.chartData,l=r===void 0?[]:r,o=n.allowDuplicatedCategory,u=n.dataKey,c=new Map;return e.forEach(h=>{var m,v=(m=h.data)!==null&&m!==void 0?m:l;if(!(v==null||v.length===0)){var p=yk(h);v.forEach((x,S)=>{var w=u==null||o?S:String(pn(x,u,null)),j=pn(x,h.dataKey,0),C;c.has(w)?C=c.get(w):C={},Object.assign(C,{[p]:j}),c.set(w,C)})}}),Array.from(c.values())}function o1(e){return"stackId"in e&&e.stackId!=null&&e.dataKey!=null}var ld=(e,t)=>e===t?!0:e==null||t==null?!1:e[0]===t[0]&&e[1]===t[1];function ug(e,t){return Array.isArray(e)&&Array.isArray(t)&&e.length===0&&t.length===0?!0:e===t}function Qq(e,t){if(e.length===t.length){for(var n=0;n{var t=It(e);return t==="horizontal"?"xAxis":t==="vertical"?"yAxis":t==="centric"?"angleAxis":"radiusAxis"},Zu=e=>e.tooltip.settings.axisId;function s1(e){if(e!=null){var t=e.ticks,n=e.bandwidth,r=e.range(),l=[Math.min(...r),Math.max(...r)];return{domain:()=>e.domain(),range:(function(o){function u(){return o.apply(this,arguments)}return u.toString=function(){return o.toString()},u})(()=>l),rangeMin:()=>l[0],rangeMax:()=>l[1],isInRange(o){var u=l[0],c=l[1];return u<=c?o>=u&&o<=c:o>=c&&o<=u},bandwidth:n?()=>n.call(e):void 0,ticks:t?o=>t.call(e,o):void 0,map:(o,u)=>{var c=e(o);if(c!=null){if(e.bandwidth&&u!==null&&u!==void 0&&u.position){var h=e.bandwidth();switch(u.position){case"middle":c+=h/2;break;case"end":c+=h;break}}return c}}}}}var Zq=(e,t)=>{if(t!=null)switch(e){case"linear":{if(!Li(t)){for(var n,r,l=0;lr)&&(r=o))}return n!==void 0&&r!==void 0?[n,r]:void 0}return t}default:return t}};function Tl(e,t){return e==null||t==null?NaN:et?1:e>=t?0:NaN}function Wq(e,t){return e==null||t==null?NaN:te?1:t>=e?0:NaN}function u1(e){let t,n,r;e.length!==2?(t=Tl,n=(c,h)=>Tl(e(c),h),r=(c,h)=>e(c)-h):(t=e===Tl||e===Wq?e:Jq,n=e,r=e);function l(c,h,m=0,v=c.length){if(m>>1;n(c[p],h)<0?m=p+1:v=p}while(m>>1;n(c[p],h)<=0?m=p+1:v=p}while(mm&&r(c[p-1],h)>-r(c[p],h)?p-1:p}return{left:l,center:u,right:o}}function Jq(){return 0}function bk(e){return e===null?NaN:+e}function*eK(e,t){for(let n of e)n!=null&&(n=+n)>=n&&(yield n)}const tK=u1(Tl),od=tK.right;u1(bk).center;class $N extends Map{constructor(t,n=iK){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:n}}),t!=null)for(const[r,l]of t)this.set(r,l)}get(t){return super.get(BN(this,t))}has(t){return super.has(BN(this,t))}set(t,n){return super.set(nK(this,t),n)}delete(t){return super.delete(rK(this,t))}}function BN({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):n}function nK({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):(e.set(r,n),n)}function rK({_intern:e,_key:t},n){const r=t(n);return e.has(r)&&(n=e.get(r),e.delete(r)),n}function iK(e){return e!==null&&typeof e=="object"?e.valueOf():e}function aK(e=Tl){if(e===Tl)return Sk;if(typeof e!="function")throw new TypeError("compare is not a function");return(t,n)=>{const r=e(t,n);return r||r===0?r:(e(n,n)===0)-(e(t,t)===0)}}function Sk(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(et?1:0)}const lK=Math.sqrt(50),oK=Math.sqrt(10),sK=Math.sqrt(2);function sv(e,t,n){const r=(t-e)/Math.max(0,n),l=Math.floor(Math.log10(r)),o=r/Math.pow(10,l),u=o>=lK?10:o>=oK?5:o>=sK?2:1;let c,h,m;return l<0?(m=Math.pow(10,-l)/u,c=Math.round(e*m),h=Math.round(t*m),c/mt&&--h,m=-m):(m=Math.pow(10,l)*u,c=Math.round(e/m),h=Math.round(t/m),c*mt&&--h),h0))return[];if(e===t)return[e];const r=t=l))return[];const c=o-l+1,h=new Array(c);if(r)if(u<0)for(let m=0;m=r)&&(n=r);return n}function FN(e,t){let n;for(const r of e)r!=null&&(n>r||n===void 0&&r>=r)&&(n=r);return n}function wk(e,t,n=0,r=1/0,l){if(t=Math.floor(t),n=Math.floor(Math.max(0,n)),r=Math.floor(Math.min(e.length-1,r)),!(n<=t&&t<=r))return e;for(l=l===void 0?Sk:aK(l);r>n;){if(r-n>600){const h=r-n+1,m=t-n+1,v=Math.log(h),p=.5*Math.exp(2*v/3),x=.5*Math.sqrt(v*p*(h-p)/h)*(m-h/2<0?-1:1),S=Math.max(n,Math.floor(t-m*p/h+x)),w=Math.min(r,Math.floor(t+(h-m)*p/h+x));wk(e,t,S,w,l)}const o=e[t];let u=n,c=r;for(uf(e,n,t),l(e[r],o)>0&&uf(e,n,r);u0;)--c}l(e[n],o)===0?uf(e,n,c):(++c,uf(e,c,r)),c<=t&&(n=c+1),t<=c&&(r=c-1)}return e}function uf(e,t,n){const r=e[t];e[t]=e[n],e[n]=r}function uK(e,t,n){if(e=Float64Array.from(eK(e)),!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return FN(e);if(t>=1)return HN(e);var r,l=(r-1)*t,o=Math.floor(l),u=HN(wk(e,o).subarray(0,o+1)),c=FN(e.subarray(o+1));return u+(c-u)*(l-o)}}function cK(e,t,n=bk){if(!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return+n(e[0],0,e);if(t>=1)return+n(e[r-1],r-1,e);var r,l=(r-1)*t,o=Math.floor(l),u=+n(e[o],o,e),c=+n(e[o+1],o+1,e);return u+(c-u)*(l-o)}}function fK(e,t,n){e=+e,t=+t,n=(l=arguments.length)<2?(t=e,e=0,1):l<3?1:+n;for(var r=-1,l=Math.max(0,Math.ceil((t-e)/n))|0,o=new Array(l);++r>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?cm(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?cm(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=hK.exec(e))?new gn(t[1],t[2],t[3],1):(t=mK.exec(e))?new gn(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=vK.exec(e))?cm(t[1],t[2],t[3],t[4]):(t=gK.exec(e))?cm(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=pK.exec(e))?QN(t[1],t[2]/100,t[3]/100,1):(t=yK.exec(e))?QN(t[1],t[2]/100,t[3]/100,t[4]):VN.hasOwnProperty(e)?KN(VN[e]):e==="transparent"?new gn(NaN,NaN,NaN,0):null}function KN(e){return new gn(e>>16&255,e>>8&255,e&255,1)}function cm(e,t,n,r){return r<=0&&(e=t=n=NaN),new gn(e,t,n,r)}function c1(e){return e instanceof $l||(e=zf(e)),e?(e=e.rgb(),new gn(e.r,e.g,e.b,e.opacity)):new gn}function bb(e,t,n,r){return arguments.length===1?c1(e):new gn(e,t,n,r??1)}function gn(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}Wu(gn,bb,sd($l,{brighter(e){return e=e==null?Iu:Math.pow(Iu,e),new gn(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Yo:Math.pow(Yo,e),new gn(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new gn(Uo(this.r),Uo(this.g),Uo(this.b),uv(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:YN,formatHex:YN,formatHex8:SK,formatRgb:XN,toString:XN}));function YN(){return`#${jo(this.r)}${jo(this.g)}${jo(this.b)}`}function SK(){return`#${jo(this.r)}${jo(this.g)}${jo(this.b)}${jo((isNaN(this.opacity)?1:this.opacity)*255)}`}function XN(){const e=uv(this.opacity);return`${e===1?"rgb(":"rgba("}${Uo(this.r)}, ${Uo(this.g)}, ${Uo(this.b)}${e===1?")":`, ${e})`}`}function uv(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Uo(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function jo(e){return e=Uo(e),(e<16?"0":"")+e.toString(16)}function QN(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new ui(e,t,n,r)}function jk(e){if(e instanceof ui)return new ui(e.h,e.s,e.l,e.opacity);if(e instanceof $l||(e=zf(e)),!e)return new ui;if(e instanceof ui)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,l=Math.min(t,n,r),o=Math.max(t,n,r),u=NaN,c=o-l,h=(o+l)/2;return c?(t===o?u=(n-r)/c+(n0&&h<1?0:u,new ui(u,c,h,e.opacity)}function wK(e,t,n,r){return arguments.length===1?jk(e):new ui(e,t,n,r??1)}function ui(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}Wu(ui,wK,sd($l,{brighter(e){return e=e==null?Iu:Math.pow(Iu,e),new ui(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Yo:Math.pow(Yo,e),new ui(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,l=2*n-r;return new gn(Fx(e>=240?e-240:e+120,l,r),Fx(e,l,r),Fx(e<120?e+240:e-120,l,r),this.opacity)},clamp(){return new ui(ZN(this.h),fm(this.s),fm(this.l),uv(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=uv(this.opacity);return`${e===1?"hsl(":"hsla("}${ZN(this.h)}, ${fm(this.s)*100}%, ${fm(this.l)*100}%${e===1?")":`, ${e})`}`}}));function ZN(e){return e=(e||0)%360,e<0?e+360:e}function fm(e){return Math.max(0,Math.min(1,e||0))}function Fx(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}const Ck=Math.PI/180,_k=180/Math.PI,cv=18,Ak=.96422,Ek=1,Ok=.82521,Nk=4/29,gu=6/29,Tk=3*gu*gu,jK=gu*gu*gu;function Rk(e){if(e instanceof $i)return new $i(e.l,e.a,e.b,e.opacity);if(e instanceof ya)return Mk(e);e instanceof gn||(e=c1(e));var t=Kx(e.r),n=Kx(e.g),r=Kx(e.b),l=Vx((.2225045*t+.7168786*n+.0606169*r)/Ek),o,u;return t===n&&n===r?o=u=l:(o=Vx((.4360747*t+.3850649*n+.1430804*r)/Ak),u=Vx((.0139322*t+.0971045*n+.7141733*r)/Ok)),new $i(116*l-16,500*(o-l),200*(l-u),e.opacity)}function CK(e,t,n,r){return arguments.length===1?Rk(e):new $i(e,t,n,r??1)}function $i(e,t,n,r){this.l=+e,this.a=+t,this.b=+n,this.opacity=+r}Wu($i,CK,sd($l,{brighter(e){return new $i(this.l+cv*(e??1),this.a,this.b,this.opacity)},darker(e){return new $i(this.l-cv*(e??1),this.a,this.b,this.opacity)},rgb(){var e=(this.l+16)/116,t=isNaN(this.a)?e:e+this.a/500,n=isNaN(this.b)?e:e-this.b/200;return t=Ak*Gx(t),e=Ek*Gx(e),n=Ok*Gx(n),new gn(qx(3.1338561*t-1.6168667*e-.4906146*n),qx(-.9787684*t+1.9161415*e+.033454*n),qx(.0719453*t-.2289914*e+1.4052427*n),this.opacity)}}));function Vx(e){return e>jK?Math.pow(e,1/3):e/Tk+Nk}function Gx(e){return e>gu?e*e*e:Tk*(e-Nk)}function qx(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function Kx(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function _K(e){if(e instanceof ya)return new ya(e.h,e.c,e.l,e.opacity);if(e instanceof $i||(e=Rk(e)),e.a===0&&e.b===0)return new ya(NaN,0()=>e;function Pk(e,t){return function(n){return e+n*t}}function OK(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(r){return Math.pow(e+r*t,n)}}function NK(e,t){var n=t-e;return n?Pk(e,n>180||n<-180?n-360*Math.round(n/360):n):fg(isNaN(e)?t:e)}function TK(e){return(e=+e)==1?pu:function(t,n){return n-t?OK(t,n,e):fg(isNaN(t)?n:t)}}function pu(e,t){var n=t-e;return n?Pk(e,n):fg(isNaN(e)?t:e)}var t2=(function e(t){var n=TK(t);function r(l,o){var u=n((l=bb(l)).r,(o=bb(o)).r),c=n(l.g,o.g),h=n(l.b,o.b),m=pu(l.opacity,o.opacity);return function(v){return l.r=u(v),l.g=c(v),l.b=h(v),l.opacity=m(v),l+""}}return r.gamma=e,r})(1);function RK(e,t){t||(t=[]);var n=e?Math.min(t.length,e.length):0,r=t.slice(),l;return function(o){for(l=0;ln&&(o=t.slice(n,o),c[u]?c[u]+=o:c[++u]=o),(r=r[0])===(l=l[0])?c[u]?c[u]+=l:c[++u]=l:(c[++u]=null,h.push({i:u,x:fv(r,l)})),n=Yx.lastIndex;return n=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)}function dv(e,t){if(!isFinite(e)||e===0)return null;var n=(e=t?e.toExponential(t-1):e.toExponential()).indexOf("e"),r=e.slice(0,n);return[r.length>1?r[0]+r.slice(2):r,+e.slice(n+1)]}function zu(e){return e=dv(Math.abs(e)),e?e[1]:NaN}function VK(e,t){return function(n,r){for(var l=n.length,o=[],u=0,c=e[0],h=0;l>0&&c>0&&(h+c+1>r&&(c=Math.max(1,r-h)),o.push(n.substring(l-=c,l+c)),!((h+=c+1)>r));)c=e[u=(u+1)%e.length];return o.reverse().join(t)}}function GK(e){return function(t){return t.replace(/[0-9]/g,function(n){return e[+n]})}}var qK=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function Uf(e){if(!(t=qK.exec(e)))throw new Error("invalid format: "+e);var t;return new m1({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}Uf.prototype=m1.prototype;function m1(e){this.fill=e.fill===void 0?" ":e.fill+"",this.align=e.align===void 0?">":e.align+"",this.sign=e.sign===void 0?"-":e.sign+"",this.symbol=e.symbol===void 0?"":e.symbol+"",this.zero=!!e.zero,this.width=e.width===void 0?void 0:+e.width,this.comma=!!e.comma,this.precision=e.precision===void 0?void 0:+e.precision,this.trim=!!e.trim,this.type=e.type===void 0?"":e.type+""}m1.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function KK(e){e:for(var t=e.length,n=1,r=-1,l;n0&&(r=0);break}return r>0?e.slice(0,r)+e.slice(l+1):e}var hv;function YK(e,t){var n=dv(e,t);if(!n)return hv=void 0,e.toPrecision(t);var r=n[0],l=n[1],o=l-(hv=Math.max(-8,Math.min(8,Math.floor(l/3)))*3)+1,u=r.length;return o===u?r:o>u?r+new Array(o-u+1).join("0"):o>0?r.slice(0,o)+"."+r.slice(o):"0."+new Array(1-o).join("0")+dv(e,Math.max(0,t+o-1))[0]}function r2(e,t){var n=dv(e,t);if(!n)return e+"";var r=n[0],l=n[1];return l<0?"0."+new Array(-l).join("0")+r:r.length>l+1?r.slice(0,l+1)+"."+r.slice(l+1):r+new Array(l-r.length+2).join("0")}var i2={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:FK,e:(e,t)=>e.toExponential(t),f:(e,t)=>e.toFixed(t),g:(e,t)=>e.toPrecision(t),o:e=>Math.round(e).toString(8),p:(e,t)=>r2(e*100,t),r:r2,s:YK,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function a2(e){return e}var l2=Array.prototype.map,o2=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function XK(e){var t=e.grouping===void 0||e.thousands===void 0?a2:VK(l2.call(e.grouping,Number),e.thousands+""),n=e.currency===void 0?"":e.currency[0]+"",r=e.currency===void 0?"":e.currency[1]+"",l=e.decimal===void 0?".":e.decimal+"",o=e.numerals===void 0?a2:GK(l2.call(e.numerals,String)),u=e.percent===void 0?"%":e.percent+"",c=e.minus===void 0?"−":e.minus+"",h=e.nan===void 0?"NaN":e.nan+"";function m(p,x){p=Uf(p);var S=p.fill,w=p.align,j=p.sign,C=p.symbol,A=p.zero,N=p.width,O=p.comma,T=p.precision,R=p.trim,E=p.type;E==="n"?(O=!0,E="g"):i2[E]||(T===void 0&&(T=12),R=!0,E="g"),(A||S==="0"&&w==="=")&&(A=!0,S="0",w="=");var D=(x&&x.prefix!==void 0?x.prefix:"")+(C==="$"?n:C==="#"&&/[boxX]/.test(E)?"0"+E.toLowerCase():""),k=(C==="$"?r:/[%p]/.test(E)?u:"")+(x&&x.suffix!==void 0?x.suffix:""),I=i2[E],P=/[defgprs%]/.test(E);T=T===void 0?6:/[gprs]/.test(E)?Math.max(1,Math.min(21,T)):Math.max(0,Math.min(20,T));function B(F){var se=D,ue=k,de,G,ne;if(E==="c")ue=I(F)+ue,F="";else{F=+F;var ie=F<0||1/F<0;if(F=isNaN(F)?h:I(Math.abs(F),T),R&&(F=KK(F)),ie&&+F==0&&j!=="+"&&(ie=!1),se=(ie?j==="("?j:c:j==="-"||j==="("?"":j)+se,ue=(E==="s"&&!isNaN(F)&&hv!==void 0?o2[8+hv/3]:"")+ue+(ie&&j==="("?")":""),P){for(de=-1,G=F.length;++dene||ne>57){ue=(ne===46?l+F.slice(de+1):F.slice(de))+ue,F=F.slice(0,de);break}}}O&&!A&&(F=t(F,1/0));var ce=se.length+F.length+ue.length,U=ce>1)+se+F+ue+U.slice(ce);break;default:F=U+se+F+ue;break}return o(F)}return B.toString=function(){return p+""},B}function v(p,x){var S=Math.max(-8,Math.min(8,Math.floor(zu(x)/3)))*3,w=Math.pow(10,-S),j=m((p=Uf(p),p.type="f",p),{suffix:o2[8+S/3]});return function(C){return j(w*C)}}return{format:m,formatPrefix:v}}var dm,v1,Ik;QK({thousands:",",grouping:[3],currency:["$",""]});function QK(e){return dm=XK(e),v1=dm.format,Ik=dm.formatPrefix,dm}function ZK(e){return Math.max(0,-zu(Math.abs(e)))}function WK(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(zu(t)/3)))*3-zu(Math.abs(e)))}function JK(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,zu(t)-zu(e))+1}const Xx=new Date,Qx=new Date;function on(e,t,n,r){function l(o){return e(o=arguments.length===0?new Date:new Date(+o)),o}return l.floor=o=>(e(o=new Date(+o)),o),l.ceil=o=>(e(o=new Date(o-1)),t(o,1),e(o),o),l.round=o=>{const u=l(o),c=l.ceil(o);return o-u(t(o=new Date(+o),u==null?1:Math.floor(u)),o),l.range=(o,u,c)=>{const h=[];if(o=l.ceil(o),c=c==null?1:Math.floor(c),!(o0))return h;let m;do h.push(m=new Date(+o)),t(o,c),e(o);while(mon(u=>{if(u>=u)for(;e(u),!o(u);)u.setTime(u-1)},(u,c)=>{if(u>=u)if(c<0)for(;++c<=0;)for(;t(u,-1),!o(u););else for(;--c>=0;)for(;t(u,1),!o(u););}),n&&(l.count=(o,u)=>(Xx.setTime(+o),Qx.setTime(+u),e(Xx),e(Qx),Math.floor(n(Xx,Qx))),l.every=o=>(o=Math.floor(o),!isFinite(o)||!(o>0)?null:o>1?l.filter(r?u=>r(u)%o===0:u=>l.count(0,u)%o===0):l)),l}const mv=on(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);mv.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?on(t=>{t.setTime(Math.floor(t/e)*e)},(t,n)=>{t.setTime(+t+n*e)},(t,n)=>(n-t)/e):mv);mv.range;const xa=1e3,qr=xa*60,ba=qr*60,Oa=ba*24,g1=Oa*7,s2=Oa*30,Zx=Oa*365,Co=on(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*xa)},(e,t)=>(t-e)/xa,e=>e.getUTCSeconds());Co.range;const p1=on(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*xa)},(e,t)=>{e.setTime(+e+t*qr)},(e,t)=>(t-e)/qr,e=>e.getMinutes());p1.range;const y1=on(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*qr)},(e,t)=>(t-e)/qr,e=>e.getUTCMinutes());y1.range;const x1=on(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*xa-e.getMinutes()*qr)},(e,t)=>{e.setTime(+e+t*ba)},(e,t)=>(t-e)/ba,e=>e.getHours());x1.range;const b1=on(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*ba)},(e,t)=>(t-e)/ba,e=>e.getUTCHours());b1.range;const ud=on(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*qr)/Oa,e=>e.getDate()-1);ud.range;const dg=on(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/Oa,e=>e.getUTCDate()-1);dg.range;const zk=on(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/Oa,e=>Math.floor(e/Oa));zk.range;function ts(e){return on(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(t,n)=>{t.setDate(t.getDate()+n*7)},(t,n)=>(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*qr)/g1)}const hg=ts(0),vv=ts(1),eY=ts(2),tY=ts(3),Lu=ts(4),nY=ts(5),rY=ts(6);hg.range;vv.range;eY.range;tY.range;Lu.range;nY.range;rY.range;function ns(e){return on(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCDate(t.getUTCDate()+n*7)},(t,n)=>(n-t)/g1)}const mg=ns(0),gv=ns(1),iY=ns(2),aY=ns(3),Uu=ns(4),lY=ns(5),oY=ns(6);mg.range;gv.range;iY.range;aY.range;Uu.range;lY.range;oY.range;const S1=on(e=>{e.setDate(1),e.setHours(0,0,0,0)},(e,t)=>{e.setMonth(e.getMonth()+t)},(e,t)=>t.getMonth()-e.getMonth()+(t.getFullYear()-e.getFullYear())*12,e=>e.getMonth());S1.range;const w1=on(e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)},(e,t)=>t.getUTCMonth()-e.getUTCMonth()+(t.getUTCFullYear()-e.getUTCFullYear())*12,e=>e.getUTCMonth());w1.range;const Na=on(e=>{e.setMonth(0,1),e.setHours(0,0,0,0)},(e,t)=>{e.setFullYear(e.getFullYear()+t)},(e,t)=>t.getFullYear()-e.getFullYear(),e=>e.getFullYear());Na.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:on(t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)},(t,n)=>{t.setFullYear(t.getFullYear()+n*e)});Na.range;const Ta=on(e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)},(e,t)=>t.getUTCFullYear()-e.getUTCFullYear(),e=>e.getUTCFullYear());Ta.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:on(t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCFullYear(t.getUTCFullYear()+n*e)});Ta.range;function Lk(e,t,n,r,l,o){const u=[[Co,1,xa],[Co,5,5*xa],[Co,15,15*xa],[Co,30,30*xa],[o,1,qr],[o,5,5*qr],[o,15,15*qr],[o,30,30*qr],[l,1,ba],[l,3,3*ba],[l,6,6*ba],[l,12,12*ba],[r,1,Oa],[r,2,2*Oa],[n,1,g1],[t,1,s2],[t,3,3*s2],[e,1,Zx]];function c(m,v,p){const x=vC).right(u,x);if(S===u.length)return e.every(xb(m/Zx,v/Zx,p));if(S===0)return mv.every(Math.max(xb(m,v,p),1));const[w,j]=u[x/u[S-1][2]53)return null;"w"in J||(J.w=1),"Z"in J?(Ke=Jx(cf(J.y,0,1)),Pe=Ke.getUTCDay(),Ke=Pe>4||Pe===0?gv.ceil(Ke):gv(Ke),Ke=dg.offset(Ke,(J.V-1)*7),J.y=Ke.getUTCFullYear(),J.m=Ke.getUTCMonth(),J.d=Ke.getUTCDate()+(J.w+6)%7):(Ke=Wx(cf(J.y,0,1)),Pe=Ke.getDay(),Ke=Pe>4||Pe===0?vv.ceil(Ke):vv(Ke),Ke=ud.offset(Ke,(J.V-1)*7),J.y=Ke.getFullYear(),J.m=Ke.getMonth(),J.d=Ke.getDate()+(J.w+6)%7)}else("W"in J||"U"in J)&&("w"in J||(J.w="u"in J?J.u%7:"W"in J?1:0),Pe="Z"in J?Jx(cf(J.y,0,1)).getUTCDay():Wx(cf(J.y,0,1)).getDay(),J.m=0,J.d="W"in J?(J.w+6)%7+J.W*7-(Pe+5)%7:J.w+J.U*7-(Pe+6)%7);return"Z"in J?(J.H+=J.Z/100|0,J.M+=J.Z%100,Jx(J)):Wx(J)}}function k(te,ge,oe,J){for(var ut=0,Ke=ge.length,Pe=oe.length,Tt,Et;ut=Pe)return-1;if(Tt=ge.charCodeAt(ut++),Tt===37){if(Tt=ge.charAt(ut++),Et=R[Tt in u2?ge.charAt(ut++):Tt],!Et||(J=Et(te,oe,J))<0)return-1}else if(Tt!=oe.charCodeAt(J++))return-1}return J}function I(te,ge,oe){var J=m.exec(ge.slice(oe));return J?(te.p=v.get(J[0].toLowerCase()),oe+J[0].length):-1}function P(te,ge,oe){var J=S.exec(ge.slice(oe));return J?(te.w=w.get(J[0].toLowerCase()),oe+J[0].length):-1}function B(te,ge,oe){var J=p.exec(ge.slice(oe));return J?(te.w=x.get(J[0].toLowerCase()),oe+J[0].length):-1}function F(te,ge,oe){var J=A.exec(ge.slice(oe));return J?(te.m=N.get(J[0].toLowerCase()),oe+J[0].length):-1}function se(te,ge,oe){var J=j.exec(ge.slice(oe));return J?(te.m=C.get(J[0].toLowerCase()),oe+J[0].length):-1}function ue(te,ge,oe){return k(te,t,ge,oe)}function de(te,ge,oe){return k(te,n,ge,oe)}function G(te,ge,oe){return k(te,r,ge,oe)}function ne(te){return u[te.getDay()]}function ie(te){return o[te.getDay()]}function ce(te){return h[te.getMonth()]}function U(te){return c[te.getMonth()]}function Ee(te){return l[+(te.getHours()>=12)]}function ee(te){return 1+~~(te.getMonth()/3)}function ve(te){return u[te.getUTCDay()]}function z(te){return o[te.getUTCDay()]}function Y(te){return h[te.getUTCMonth()]}function le(te){return c[te.getUTCMonth()]}function fe(te){return l[+(te.getUTCHours()>=12)]}function De(te){return 1+~~(te.getUTCMonth()/3)}return{format:function(te){var ge=E(te+="",O);return ge.toString=function(){return te},ge},parse:function(te){var ge=D(te+="",!1);return ge.toString=function(){return te},ge},utcFormat:function(te){var ge=E(te+="",T);return ge.toString=function(){return te},ge},utcParse:function(te){var ge=D(te+="",!0);return ge.toString=function(){return te},ge}}}var u2={"-":"",_:" ",0:"0"},Sn=/^\s*\d+/,hY=/^%/,mY=/[\\^$*+?|[\]().{}]/g;function at(e,t,n){var r=e<0?"-":"",l=(r?-e:e)+"",o=l.length;return r+(o[t.toLowerCase(),n]))}function gY(e,t,n){var r=Sn.exec(t.slice(n,n+1));return r?(e.w=+r[0],n+r[0].length):-1}function pY(e,t,n){var r=Sn.exec(t.slice(n,n+1));return r?(e.u=+r[0],n+r[0].length):-1}function yY(e,t,n){var r=Sn.exec(t.slice(n,n+2));return r?(e.U=+r[0],n+r[0].length):-1}function xY(e,t,n){var r=Sn.exec(t.slice(n,n+2));return r?(e.V=+r[0],n+r[0].length):-1}function bY(e,t,n){var r=Sn.exec(t.slice(n,n+2));return r?(e.W=+r[0],n+r[0].length):-1}function c2(e,t,n){var r=Sn.exec(t.slice(n,n+4));return r?(e.y=+r[0],n+r[0].length):-1}function f2(e,t,n){var r=Sn.exec(t.slice(n,n+2));return r?(e.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function SY(e,t,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(n,n+6));return r?(e.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function wY(e,t,n){var r=Sn.exec(t.slice(n,n+1));return r?(e.q=r[0]*3-3,n+r[0].length):-1}function jY(e,t,n){var r=Sn.exec(t.slice(n,n+2));return r?(e.m=r[0]-1,n+r[0].length):-1}function d2(e,t,n){var r=Sn.exec(t.slice(n,n+2));return r?(e.d=+r[0],n+r[0].length):-1}function CY(e,t,n){var r=Sn.exec(t.slice(n,n+3));return r?(e.m=0,e.d=+r[0],n+r[0].length):-1}function h2(e,t,n){var r=Sn.exec(t.slice(n,n+2));return r?(e.H=+r[0],n+r[0].length):-1}function _Y(e,t,n){var r=Sn.exec(t.slice(n,n+2));return r?(e.M=+r[0],n+r[0].length):-1}function AY(e,t,n){var r=Sn.exec(t.slice(n,n+2));return r?(e.S=+r[0],n+r[0].length):-1}function EY(e,t,n){var r=Sn.exec(t.slice(n,n+3));return r?(e.L=+r[0],n+r[0].length):-1}function OY(e,t,n){var r=Sn.exec(t.slice(n,n+6));return r?(e.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function NY(e,t,n){var r=hY.exec(t.slice(n,n+1));return r?n+r[0].length:-1}function TY(e,t,n){var r=Sn.exec(t.slice(n));return r?(e.Q=+r[0],n+r[0].length):-1}function RY(e,t,n){var r=Sn.exec(t.slice(n));return r?(e.s=+r[0],n+r[0].length):-1}function m2(e,t){return at(e.getDate(),t,2)}function MY(e,t){return at(e.getHours(),t,2)}function DY(e,t){return at(e.getHours()%12||12,t,2)}function PY(e,t){return at(1+ud.count(Na(e),e),t,3)}function Uk(e,t){return at(e.getMilliseconds(),t,3)}function kY(e,t){return Uk(e,t)+"000"}function IY(e,t){return at(e.getMonth()+1,t,2)}function zY(e,t){return at(e.getMinutes(),t,2)}function LY(e,t){return at(e.getSeconds(),t,2)}function UY(e){var t=e.getDay();return t===0?7:t}function $Y(e,t){return at(hg.count(Na(e)-1,e),t,2)}function $k(e){var t=e.getDay();return t>=4||t===0?Lu(e):Lu.ceil(e)}function BY(e,t){return e=$k(e),at(Lu.count(Na(e),e)+(Na(e).getDay()===4),t,2)}function HY(e){return e.getDay()}function FY(e,t){return at(vv.count(Na(e)-1,e),t,2)}function VY(e,t){return at(e.getFullYear()%100,t,2)}function GY(e,t){return e=$k(e),at(e.getFullYear()%100,t,2)}function qY(e,t){return at(e.getFullYear()%1e4,t,4)}function KY(e,t){var n=e.getDay();return e=n>=4||n===0?Lu(e):Lu.ceil(e),at(e.getFullYear()%1e4,t,4)}function YY(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+at(t/60|0,"0",2)+at(t%60,"0",2)}function v2(e,t){return at(e.getUTCDate(),t,2)}function XY(e,t){return at(e.getUTCHours(),t,2)}function QY(e,t){return at(e.getUTCHours()%12||12,t,2)}function ZY(e,t){return at(1+dg.count(Ta(e),e),t,3)}function Bk(e,t){return at(e.getUTCMilliseconds(),t,3)}function WY(e,t){return Bk(e,t)+"000"}function JY(e,t){return at(e.getUTCMonth()+1,t,2)}function eX(e,t){return at(e.getUTCMinutes(),t,2)}function tX(e,t){return at(e.getUTCSeconds(),t,2)}function nX(e){var t=e.getUTCDay();return t===0?7:t}function rX(e,t){return at(mg.count(Ta(e)-1,e),t,2)}function Hk(e){var t=e.getUTCDay();return t>=4||t===0?Uu(e):Uu.ceil(e)}function iX(e,t){return e=Hk(e),at(Uu.count(Ta(e),e)+(Ta(e).getUTCDay()===4),t,2)}function aX(e){return e.getUTCDay()}function lX(e,t){return at(gv.count(Ta(e)-1,e),t,2)}function oX(e,t){return at(e.getUTCFullYear()%100,t,2)}function sX(e,t){return e=Hk(e),at(e.getUTCFullYear()%100,t,2)}function uX(e,t){return at(e.getUTCFullYear()%1e4,t,4)}function cX(e,t){var n=e.getUTCDay();return e=n>=4||n===0?Uu(e):Uu.ceil(e),at(e.getUTCFullYear()%1e4,t,4)}function fX(){return"+0000"}function g2(){return"%"}function p2(e){return+e}function y2(e){return Math.floor(+e/1e3)}var Js,Fk,j1,Vk;dX({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function dX(e){return Js=dY(e),Fk=Js.format,Js.parse,j1=Js.utcFormat,Vk=Js.utcParse,Js}var Gk="%Y-%m-%dT%H:%M:%S.%LZ";function hX(e){return e.toISOString()}Date.prototype.toISOString||j1(Gk);function mX(e){var t=new Date(e);return isNaN(t)?null:t}+new Date("2000-01-01T00:00:00.000Z")||Vk(Gk);function Wr(e,t){switch(arguments.length){case 0:break;case 1:this.range(e);break;default:this.range(t).domain(e);break}return this}function Pa(e,t){switch(arguments.length){case 0:break;case 1:{typeof e=="function"?this.interpolator(e):this.range(e);break}default:{this.domain(e),typeof t=="function"?this.interpolator(t):this.range(t);break}}return this}const jb=Symbol("implicit");function C1(){var e=new $N,t=[],n=[],r=jb;function l(o){let u=e.get(o);if(u===void 0){if(r!==jb)return r;e.set(o,u=t.push(o)-1)}return n[u%n.length]}return l.domain=function(o){if(!arguments.length)return t.slice();t=[],e=new $N;for(const u of o)e.has(u)||e.set(u,t.push(u)-1);return l},l.range=function(o){return arguments.length?(n=Array.from(o),l):n.slice()},l.unknown=function(o){return arguments.length?(r=o,l):r},l.copy=function(){return C1(t,n).unknown(r)},Wr.apply(l,arguments),l}function _1(){var e=C1().unknown(void 0),t=e.domain,n=e.range,r=0,l=1,o,u,c=!1,h=0,m=0,v=.5;delete e.unknown;function p(){var x=t().length,S=lt&&(n=e,e=t,t=n),function(r){return Math.max(e,Math.min(t,r))}}function yX(e,t,n){var r=e[0],l=e[1],o=t[0],u=t[1];return l2?xX:yX,h=m=null,p}function p(x){return x==null||isNaN(x=+x)?o:(h||(h=c(e.map(r),t,n)))(r(u(x)))}return p.invert=function(x){return u(l((m||(m=c(t,e.map(r),fv)))(x)))},p.domain=function(x){return arguments.length?(e=Array.from(x,pv),v()):e.slice()},p.range=function(x){return arguments.length?(t=Array.from(x),v()):t.slice()},p.rangeRound=function(x){return t=Array.from(x),n=h1,v()},p.clamp=function(x){return arguments.length?(u=x?!0:Zn,v()):u!==Zn},p.interpolate=function(x){return arguments.length?(n=x,v()):n},p.unknown=function(x){return arguments.length?(o=x,p):o},function(x,S){return r=x,l=S,v()}}function A1(){return vg()(Zn,Zn)}function Kk(e,t,n,r){var l=xb(e,t,n),o;switch(r=Uf(r??",f"),r.type){case"s":{var u=Math.max(Math.abs(e),Math.abs(t));return r.precision==null&&!isNaN(o=WK(l,u))&&(r.precision=o),Ik(r,u)}case"":case"e":case"g":case"p":case"r":{r.precision==null&&!isNaN(o=JK(l,Math.max(Math.abs(e),Math.abs(t))))&&(r.precision=o-(r.type==="e"));break}case"f":case"%":{r.precision==null&&!isNaN(o=ZK(l))&&(r.precision=o-(r.type==="%")*2);break}}return v1(r)}function Bl(e){var t=e.domain;return e.ticks=function(n){var r=t();return pb(r[0],r[r.length-1],n??10)},e.tickFormat=function(n,r){var l=t();return Kk(l[0],l[l.length-1],n??10,r)},e.nice=function(n){n==null&&(n=10);var r=t(),l=0,o=r.length-1,u=r[l],c=r[o],h,m,v=10;for(c0;){if(m=yb(u,c,n),m===h)return r[l]=u,r[o]=c,t(r);if(m>0)u=Math.floor(u/m)*m,c=Math.ceil(c/m)*m;else if(m<0)u=Math.ceil(u*m)/m,c=Math.floor(c*m)/m;else break;h=m}return e},e}function Yk(){var e=A1();return e.copy=function(){return cd(e,Yk())},Wr.apply(e,arguments),Bl(e)}function Xk(e){var t;function n(r){return r==null||isNaN(r=+r)?t:r}return n.invert=n,n.domain=n.range=function(r){return arguments.length?(e=Array.from(r,pv),n):e.slice()},n.unknown=function(r){return arguments.length?(t=r,n):t},n.copy=function(){return Xk(e).unknown(t)},e=arguments.length?Array.from(e,pv):[0,1],Bl(n)}function Qk(e,t){e=e.slice();var n=0,r=e.length-1,l=e[n],o=e[r],u;return oMath.pow(e,t)}function CX(e){return e===Math.E?Math.log:e===10&&Math.log10||e===2&&Math.log2||(e=Math.log(e),t=>Math.log(t)/e)}function w2(e){return(t,n)=>-e(-t,n)}function E1(e){const t=e(b2,S2),n=t.domain;let r=10,l,o;function u(){return l=CX(r),o=jX(r),n()[0]<0?(l=w2(l),o=w2(o),e(bX,SX)):e(b2,S2),t}return t.base=function(c){return arguments.length?(r=+c,u()):r},t.domain=function(c){return arguments.length?(n(c),u()):n()},t.ticks=c=>{const h=n();let m=h[0],v=h[h.length-1];const p=v0){for(;x<=S;++x)for(w=1;wv)break;A.push(j)}}else for(;x<=S;++x)for(w=r-1;w>=1;--w)if(j=x>0?w/o(-x):w*o(x),!(jv)break;A.push(j)}A.length*2{if(c==null&&(c=10),h==null&&(h=r===10?"s":","),typeof h!="function"&&(!(r%1)&&(h=Uf(h)).precision==null&&(h.trim=!0),h=v1(h)),c===1/0)return h;const m=Math.max(1,r*c/t.ticks().length);return v=>{let p=v/o(Math.round(l(v)));return p*rn(Qk(n(),{floor:c=>o(Math.floor(l(c))),ceil:c=>o(Math.ceil(l(c)))})),t}function Zk(){const e=E1(vg()).domain([1,10]);return e.copy=()=>cd(e,Zk()).base(e.base()),Wr.apply(e,arguments),e}function j2(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function C2(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function O1(e){var t=1,n=e(j2(t),C2(t));return n.constant=function(r){return arguments.length?e(j2(t=+r),C2(t)):t},Bl(n)}function Wk(){var e=O1(vg());return e.copy=function(){return cd(e,Wk()).constant(e.constant())},Wr.apply(e,arguments)}function _2(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function _X(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function AX(e){return e<0?-e*e:e*e}function N1(e){var t=e(Zn,Zn),n=1;function r(){return n===1?e(Zn,Zn):n===.5?e(_X,AX):e(_2(n),_2(1/n))}return t.exponent=function(l){return arguments.length?(n=+l,r()):n},Bl(t)}function T1(){var e=N1(vg());return e.copy=function(){return cd(e,T1()).exponent(e.exponent())},Wr.apply(e,arguments),e}function EX(){return T1.apply(null,arguments).exponent(.5)}function A2(e){return Math.sign(e)*e*e}function OX(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}function Jk(){var e=A1(),t=[0,1],n=!1,r;function l(o){var u=OX(e(o));return isNaN(u)?r:n?Math.round(u):u}return l.invert=function(o){return e.invert(A2(o))},l.domain=function(o){return arguments.length?(e.domain(o),l):e.domain()},l.range=function(o){return arguments.length?(e.range((t=Array.from(o,pv)).map(A2)),l):t.slice()},l.rangeRound=function(o){return l.range(o).round(!0)},l.round=function(o){return arguments.length?(n=!!o,l):n},l.clamp=function(o){return arguments.length?(e.clamp(o),l):e.clamp()},l.unknown=function(o){return arguments.length?(r=o,l):r},l.copy=function(){return Jk(e.domain(),t).round(n).clamp(e.clamp()).unknown(r)},Wr.apply(l,arguments),Bl(l)}function eI(){var e=[],t=[],n=[],r;function l(){var u=0,c=Math.max(1,t.length);for(n=new Array(c-1);++u0?n[c-1]:e[0],c=n?[r[n-1],t]:[r[m-1],r[m]]},u.unknown=function(h){return arguments.length&&(o=h),u},u.thresholds=function(){return r.slice()},u.copy=function(){return tI().domain([e,t]).range(l).unknown(o)},Wr.apply(Bl(u),arguments)}function nI(){var e=[.5],t=[0,1],n,r=1;function l(o){return o!=null&&o<=o?t[od(e,o,0,r)]:n}return l.domain=function(o){return arguments.length?(e=Array.from(o),r=Math.min(e.length,t.length-1),l):e.slice()},l.range=function(o){return arguments.length?(t=Array.from(o),r=Math.min(e.length,t.length-1),l):t.slice()},l.invertExtent=function(o){var u=t.indexOf(o);return[e[u-1],e[u]]},l.unknown=function(o){return arguments.length?(n=o,l):n},l.copy=function(){return nI().domain(e).range(t).unknown(n)},Wr.apply(l,arguments)}function NX(e){return new Date(e)}function TX(e){return e instanceof Date?+e:Math.round(e)}function R1(e,t,n,r,l,o,u,c,h,m){var v=A1(),p=v.invert,x=v.domain,S=m(".%L"),w=m(":%S"),j=m("%I:%M"),C=m("%I %p"),A=m("%a %d"),N=m("%b %d"),O=m("%B"),T=m("%Y");function R(E){return(h(E)t(l/(e.length-1)))},n.quantiles=function(r){return Array.from({length:r+1},(l,o)=>uK(e,o/r))},n.copy=function(){return lI(t).domain(e)},Pa.apply(n,arguments)}function pg(){var e=0,t=.5,n=1,r=1,l,o,u,c,h,m=Zn,v,p=!1,x;function S(j){return j==null||isNaN(j=+j)?x:(j=.5+((j=+v(j))-o)*(r*j{if(e!=null){var r=e.scale,l=e.type;if(r==="auto")return l==="category"&&n&&(n.indexOf("LineChart")>=0||n.indexOf("AreaChart")>=0||n.indexOf("ComposedChart")>=0&&!t)?"point":l==="category"?"band":"linear";if(typeof r=="string")return zX(r)?r:"point"}};function LX(e,t){for(var n=0,r=e.length,l=e[0]t)?n=o+1:r=o}return n}function dI(e,t){if(e){var n=t??e.domain(),r=n.map(o=>{var u;return(u=e(o))!==null&&u!==void 0?u:0}),l=e.range();if(!(n.length===0||l.length<2))return o=>{var u,c,h=LX(r,o);if(h<=0)return n[0];if(h>=n.length)return n[n.length-1];var m=(u=r[h-1])!==null&&u!==void 0?u:0,v=(c=r[h])!==null&&c!==void 0?c:0;return Math.abs(o-m)<=Math.abs(o-v)?n[h-1]:n[h]}}}function UX(e){if(e!=null)return"invert"in e&&typeof e.invert=="function"?e.invert.bind(e):dI(e,void 0)}function O2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function yv(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);ne.cartesianAxis.xAxis[t],ka=(e,t)=>{var n=mI(e,t);return n??tn},nn={allowDataOverflow:!1,allowDecimals:!0,allowDuplicatedCategory:!0,angle:0,dataKey:void 0,domain:_b,hide:!0,id:0,includeHidden:!1,interval:"preserveEnd",minTickGap:5,mirror:!1,name:void 0,orientation:"left",padding:{top:0,bottom:0},reversed:!1,scale:"auto",tick:!0,tickCount:5,tickFormatter:void 0,ticks:void 0,type:"number",unit:void 0,niceTicks:"auto",width:td},vI=(e,t)=>e.cartesianAxis.yAxis[t],Ia=(e,t)=>{var n=vI(e,t);return n??nn},KX={domain:[0,"auto"],includeHidden:!1,reversed:!1,allowDataOverflow:!1,allowDuplicatedCategory:!1,dataKey:void 0,id:0,name:"",range:[64,64],scale:"auto",type:"number",unit:""},k1=(e,t)=>{var n=e.cartesianAxis.zAxis[t];return n??KX},Fn=(e,t,n)=>{switch(t){case"xAxis":return ka(e,n);case"yAxis":return Ia(e,n);case"zAxis":return k1(e,n);case"angleAxis":return i1(e,n);case"radiusAxis":return a1(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},YX=(e,t,n)=>{switch(t){case"xAxis":return ka(e,n);case"yAxis":return Ia(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},fd=(e,t,n)=>{switch(t){case"xAxis":return ka(e,n);case"yAxis":return Ia(e,n);case"angleAxis":return i1(e,n);case"radiusAxis":return a1(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},gI=e=>e.graphicalItems.cartesianItems.some(t=>t.type==="bar")||e.graphicalItems.polarItems.some(t=>t.type==="radialBar");function pI(e,t){return n=>{switch(e){case"xAxis":return"xAxisId"in n&&n.xAxisId===t;case"yAxis":return"yAxisId"in n&&n.yAxisId===t;case"zAxis":return"zAxisId"in n&&n.zAxisId===t;case"angleAxis":return"angleAxisId"in n&&n.angleAxisId===t;case"radiusAxis":return"radiusAxisId"in n&&n.radiusAxisId===t;default:return!1}}}var yI=e=>e.graphicalItems.cartesianItems,XX=W([xn,sg],pI),xI=(e,t,n)=>e.filter(n).filter(r=>(t==null?void 0:t.includeHidden)===!0?!0:!r.hide),ec=W([yI,Fn,XX],xI,{memoizeOptions:{resultEqualityCheck:ug}}),bI=W([ec],e=>e.filter(t=>t.type==="area"||t.type==="bar").filter(o1)),SI=e=>e.filter(t=>!("stackId"in t)||t.stackId===void 0),QX=W([ec],SI),wI=e=>e.map(t=>t.data).filter(Boolean).flat(1),ZX=W([ec],e=>e.some(t=>!t.data)),jI=W([ec],wI,{memoizeOptions:{resultEqualityCheck:ug}}),CI=(e,t)=>{var n=t.chartData,r=n===void 0?[]:n,l=t.dataStartIndex,o=t.dataEndIndex;return e.length>0?e:r.slice(l,o+1)},I1=W([jI,ad],CI),WX=(e,t,n)=>(t==null?void 0:t.dataKey)!=null?e.map(r=>({value:pn(r,t.dataKey)})):n.length>0?n.map(r=>r.dataKey).flatMap(r=>e.map(l=>({value:pn(l,r)}))):e.map(r=>({value:r})),_I=(e,t,n,r,l,o)=>{var u=r.chartData,c=u===void 0?[]:u,h=r.dataStartIndex,m=r.dataEndIndex,v=WX(e,t,n);if(l&&(t==null?void 0:t.dataKey)!=null&&o.length>0){var p=c.slice(h,m+1),x=p.map(S=>({value:pn(S,t.dataKey)})).filter(S=>S.value!=null);return[...x,...v]}return v},dd=W([I1,Fn,ec,ad,ZX,jI],_I);function yu(e){if(Hi(e)||e instanceof Date){var t=Number(e);if(it(t))return t}}function T2(e){if(Array.isArray(e)){var t=[yu(e[0]),yu(e[1])];return Li(t)?t:void 0}var n=yu(e);if(n!=null)return[n,n]}function fi(e){return e.map(yu).filter(ur)}function JX(e,t){var n=yu(e),r=yu(t);return n==null&&r==null?0:n==null?-1:r==null?1:n-r}var eQ=W([dd],e=>e==null?void 0:e.map(t=>t.value).sort(JX));function AI(e,t){switch(e){case"xAxis":return t.direction==="x";case"yAxis":return t.direction==="y";default:return!1}}function tQ(e,t,n){if(!n)return[];if(!n.length)return[];var r;if(typeof t=="number"&&!Aa(t))r=t;else if(Array.isArray(t)){var l=fi(t);l.length>0&&(r=Math.max(...l))}return r==null?[]:fi(n.flatMap(o=>{var u=pn(e,o.dataKey),c,h;if(Array.isArray(u)){var m=hI(u,2);c=m[0],h=m[1]}else c=h=u;if(!(!it(c)||!it(h)))return[r-c,r+h]}))}var sn=e=>{var t=bn(e),n=Zu(e);return fd(e,t,n)},$u=W([sn],e=>e==null?void 0:e.dataKey),nQ=W([bI,ad,sn],xk),EI=(e,t,n,r)=>{var l={},o=t.reduce((u,c)=>{if(c.stackId==null)return u;var h=u[c.stackId];return h==null&&(h=[]),h.push(c),u[c.stackId]=h,u},l);return Object.fromEntries(Object.entries(o).map(u=>{var c=hI(u,2),h=c[0],m=c[1],v=r?[...m].reverse():m,p=v.map(yk);return[h,{stackedData:E9(e,p,n),graphicalItems:v}]}))},rQ=W([nQ,bI,ig,fk],EI),OI=(e,t,n,r)=>{var l=t.dataStartIndex,o=t.dataEndIndex;if(r==null&&n!=="zAxis")return T9(e,l,o)},iQ=W([Fn],e=>e.allowDataOverflow),z1=e=>{var t;if(e==null||!("domain"in e))return _b;if(e.domain!=null)return e.domain;if("ticks"in e&&e.ticks!=null){if(e.type==="number"){var n=fi(e.ticks);return[Math.min(...n),Math.max(...n)]}if(e.type==="category")return e.ticks.map(String)}return(t=e==null?void 0:e.domain)!==null&&t!==void 0?t:_b},NI=W([Fn],z1),TI=W([NI,iQ],ek),aQ=W([rQ,Gi,xn,TI],OI,{memoizeOptions:{resultEqualityCheck:ld}}),L1=e=>e.errorBars,lQ=(e,t,n)=>e.flatMap(r=>t[r.id]).filter(Boolean).filter(r=>AI(n,r)),xv=function(){for(var t=arguments.length,n=new Array(t),r=0;r5&&arguments[5]!==void 0?arguments[5]:[],c,h;if(r.length>0&&r.forEach(m=>{var v,p=m.data!=null?[...m.data]:u,x=(v=l[m.id])===null||v===void 0?void 0:v.filter(S=>AI(o,S));p.forEach(S=>{var w,j=pn(S,(w=n.dataKey)!==null&&w!==void 0?w:m.dataKey),C=tQ(S,j,x);if(C.length>=2){var A=Math.min(...C),N=Math.max(...C);(c==null||Ah)&&(h=N)}var O=T2(j);O!=null&&(c=c==null?O[0]:Math.min(c,O[0]),h=h==null?O[1]:Math.max(h,O[1]))})}),(n==null?void 0:n.dataKey)!=null&&r.length===0&&t.forEach(m=>{var v=T2(pn(m,n.dataKey));v!=null&&(c=c==null?v[0]:Math.min(c,v[0]),h=h==null?v[1]:Math.max(h,v[1]))}),it(c)&&it(h))return[c,h]},oQ=W([I1,Fn,QX,L1,xn,Oq],RI,{memoizeOptions:{resultEqualityCheck:ld}});function sQ(e){var t=e.value;if(Hi(t)||t instanceof Date)return t}var uQ=(e,t,n)=>{var r=e.map(sQ).filter(l=>l!=null);return n&&(t.dataKey==null||t.allowDuplicatedCategory&&nD(r))?WP(0,e.length):t.allowDuplicatedCategory?r:Array.from(new Set(r))},MI=e=>e.referenceElements.dots,tc=(e,t,n)=>e.filter(r=>r.ifOverflow==="extendDomain").filter(r=>t==="xAxis"?r.xAxisId===n:r.yAxisId===n),cQ=W([MI,xn,sg],tc),DI=e=>e.referenceElements.areas,fQ=W([DI,xn,sg],tc),PI=e=>e.referenceElements.lines,dQ=W([PI,xn,sg],tc),kI=(e,t)=>{if(e!=null){var n=fi(e.map(r=>t==="xAxis"?r.x:r.y));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},hQ=W(cQ,xn,kI),II=(e,t)=>{if(e!=null){var n=fi(e.flatMap(r=>[t==="xAxis"?r.x1:r.y1,t==="xAxis"?r.x2:r.y2]));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},mQ=W([fQ,xn],II);function vQ(e){var t;if(e.x!=null)return fi([e.x]);var n=(t=e.segment)===null||t===void 0?void 0:t.map(r=>r.x);return n==null||n.length===0?[]:fi(n)}function gQ(e){var t;if(e.y!=null)return fi([e.y]);var n=(t=e.segment)===null||t===void 0?void 0:t.map(r=>r.y);return n==null||n.length===0?[]:fi(n)}var zI=(e,t)=>{if(e!=null){var n=e.flatMap(r=>t==="xAxis"?vQ(r):gQ(r));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},pQ=W([dQ,xn],zI),yQ=W(hQ,pQ,mQ,(e,t,n)=>xv(e,n,t)),LI=(e,t,n,r,l,o,u,c,h)=>{if(n!=null)return n;var m=u==="vertical"&&c==="xAxis"||u==="horizontal"&&c==="yAxis",v=m?xv(r,o,l):xv(o,l),p=Pq(t,v,e.allowDataOverflow);return p??(e.allowDataOverflow&&v==null&&h!=null?h:p)},xQ=e=>{if(!(e==null||e.type!=="number"||!("ticks"in e)||e.ticks==null)){var t=fi(e.ticks);if(t.length!==0)return[Math.min(...t),Math.max(...t)]}},bQ=W([Fn],xQ,{memoizeOptions:{resultEqualityCheck:ld}}),SQ=W([Fn,NI,TI,aQ,oQ,yQ,It,xn,bQ],LI,{memoizeOptions:{resultEqualityCheck:ld}}),wQ=[0,1],UI=(e,t,n,r,l,o,u)=>{if(!((e==null||n==null||n.length===0)&&u===void 0)){var c=e.dataKey,h=e.type,m=Ra(t,o);if(m&&c==null){var v;return WP(0,(v=n==null?void 0:n.length)!==null&&v!==void 0?v:0)}return h==="category"?uQ(r,e,m):l==="expand"&&!m?wQ:u}},U1=W([Fn,It,I1,dd,ig,xn,SQ],UI),nc=W([Fn,gI,t1],fI),$I=(e,t,n)=>{var r=t.niceTicks;if(r!=="none"){var l=z1(t),o=Array.isArray(l)&&(l[0]==="auto"||l[1]==="auto");if((r==="snap125"||r==="adaptive")&&t!=null&&t.tickCount&&Li(e)){if(o)return kN(e,t.tickCount,t.allowDecimals,r);if(t.type==="number")return IN(e,t.tickCount,t.allowDecimals,r)}if(r==="auto"&&n==="linear"&&t!=null&&t.tickCount){if(o&&Li(e))return kN(e,t.tickCount,t.allowDecimals,"adaptive");if(t.type==="number"&&Li(e))return IN(e,t.tickCount,t.allowDecimals,"adaptive")}}},$1=W([U1,fd,nc],$I),BI=(e,t,n,r)=>{if(r!=="angleAxis"&&(e==null?void 0:e.type)==="number"&&Li(t)&&Array.isArray(n)&&n.length>0){var l,o,u=t[0],c=(l=n[0])!==null&&l!==void 0?l:0,h=t[1],m=(o=n[n.length-1])!==null&&o!==void 0?o:0;return[Math.min(u,c),Math.max(h,m)]}return t},jQ=W([Fn,U1,$1,xn],BI),CQ=W(dd,Fn,(e,t)=>{if(!(!t||t.type!=="number")){var n=1/0,r=Array.from(fi(e.map(p=>p.value))).sort((p,x)=>p-x),l=r[0],o=r[r.length-1];if(l==null||o==null)return 1/0;var u=o-l;if(u===0)return 1/0;for(var c=0;cl,(e,t,n,r,l)=>{if(!it(e))return 0;var o=t==="vertical"?r.height:r.width;if(l==="gap")return e*o/2;if(l==="no-gap"){var u=Pl(n,e*o),c=e*o/2;return c-u-(c-u)/o*u}return 0}),_Q=(e,t,n)=>{var r=ka(e,t);return r==null||typeof r.padding!="string"?0:HI(e,"xAxis",t,n,r.padding)},AQ=(e,t,n)=>{var r=Ia(e,t);return r==null||typeof r.padding!="string"?0:HI(e,"yAxis",t,n,r.padding)},EQ=W(ka,_Q,(e,t)=>{var n,r;if(e==null)return{left:0,right:0};var l=e.padding;return typeof l=="string"?{left:t,right:t}:{left:((n=l.left)!==null&&n!==void 0?n:0)+t,right:((r=l.right)!==null&&r!==void 0?r:0)+t}}),OQ=W(Ia,AQ,(e,t)=>{var n,r;if(e==null)return{top:0,bottom:0};var l=e.padding;return typeof l=="string"?{top:t,bottom:t}:{top:((n=l.top)!==null&&n!==void 0?n:0)+t,bottom:((r=l.bottom)!==null&&r!==void 0?r:0)+t}}),FI=W([Pn,EQ,tg,eg,(e,t,n)=>n],(e,t,n,r,l)=>{var o=r.padding;return l?[o.left,n.width-o.right]:[e.left+t.left,e.left+e.width-t.right]}),VI=W([Pn,It,OQ,tg,eg,(e,t,n)=>n],(e,t,n,r,l,o)=>{var u=l.padding;return o?[r.height-u.bottom,u.top]:t==="horizontal"?[e.top+e.height-n.bottom,e.top+n.top]:[e.top+n.top,e.top+e.height-n.bottom]}),hd=(e,t,n,r)=>{var l;switch(t){case"xAxis":return FI(e,n,r);case"yAxis":return VI(e,n,r);case"zAxis":return(l=k1(e,n))===null||l===void 0?void 0:l.range;case"angleAxis":return vk(e);case"radiusAxis":return gk(e,n);default:return}},GI=W([Fn,hd],ag),NQ=W([nc,jQ],Zq),B1=W([Fn,nc,NQ,GI],P1),qI=(e,t,n,r)=>{if(!(n==null||n.dataKey==null)){var l=n.type,o=n.scale,u=Ra(e,r);if(u&&(l==="number"||o!=="auto"))return t.map(c=>c.value)}},H1=W([It,dd,fd,xn],qI),yg=W([B1],s1);W([B1],UX);W([B1,eQ],dI);W([ec,L1,xn],lQ);function KI(e,t){return e.idt.id?1:0}var xg=(e,t)=>t,bg=(e,t,n)=>n,TQ=W(Wv,xg,bg,(e,t,n)=>e.filter(r=>r.orientation===t).filter(r=>r.mirror===n).sort(KI)),RQ=W(Jv,xg,bg,(e,t,n)=>e.filter(r=>r.orientation===t).filter(r=>r.mirror===n).sort(KI)),YI=(e,t)=>{var n=typeof t.height=="number"?t.height:XS;return{width:e.width,height:n}},MQ=(e,t)=>{var n=typeof t.width=="number"?t.width:td;return{width:n,height:e.height}},DQ=W(Pn,ka,YI),PQ=(e,t,n)=>{switch(t){case"top":return e.top;case"bottom":return n-e.bottom;default:return 0}},kQ=(e,t,n)=>{switch(t){case"left":return e.left;case"right":return n-e.right;default:return 0}},IQ=W(Da,Pn,TQ,xg,bg,(e,t,n,r,l)=>{var o={},u;return n.forEach(c=>{var h=YI(t,c);u==null&&(u=PQ(t,r,e));var m=r==="top"&&!l||r==="bottom"&&l;o[c.id]=u-Number(m)*h.height,u+=(m?-1:1)*h.height}),o}),zQ=W(Ma,Pn,RQ,xg,bg,(e,t,n,r,l)=>{var o={},u;return n.forEach(c=>{var h=MQ(t,c);u==null&&(u=kQ(t,r,e));var m=r==="left"&&!l||r==="right"&&l;o[c.id]=u-Number(m)*h.width,u+=(m?-1:1)*h.width}),o}),LQ=(e,t)=>{var n=ka(e,t);if(n!=null)return IQ(e,n.orientation,n.mirror)},UQ=W([Pn,ka,LQ,(e,t)=>t],(e,t,n,r)=>{if(t!=null){var l=n==null?void 0:n[r];return l==null?{x:e.left,y:0}:{x:e.left,y:l}}}),$Q=(e,t)=>{var n=Ia(e,t);if(n!=null)return zQ(e,n.orientation,n.mirror)},BQ=W([Pn,Ia,$Q,(e,t)=>t],(e,t,n,r)=>{if(t!=null){var l=n==null?void 0:n[r];return l==null?{x:0,y:e.top}:{x:l,y:e.top}}}),HQ=W(Pn,Ia,(e,t)=>{var n=typeof t.width=="number"?t.width:td;return{width:n,height:e.height}}),XI=(e,t,n,r)=>{if(n!=null){var l=n.allowDuplicatedCategory,o=n.type,u=n.dataKey,c=Ra(e,r),h=t.map(v=>v.value),m=h.filter(v=>v!=null);if(u&&c&&o==="category"&&l&&nD(m))return h}},F1=W([It,dd,Fn,xn],XI),R2=W([It,YX,nc,yg,F1,H1,hd,$1,xn],(e,t,n,r,l,o,u,c,h)=>{if(t!=null){var m=Ra(e,h);return{angle:t.angle,interval:t.interval,minTickGap:t.minTickGap,orientation:t.orientation,tick:t.tick,tickCount:t.tickCount,tickFormatter:t.tickFormatter,ticks:t.ticks,type:t.type,unit:t.unit,axisType:h,categoricalDomain:o,duplicateDomain:l,isCategorical:m,niceTicks:c,range:u,realScaleType:n,scale:r}}}),FQ=(e,t,n,r,l,o,u,c,h)=>{if(!(t==null||r==null)){var m=Ra(e,h),v=t.type,p=t.ticks,x=t.tickCount,S=n==="scaleBand"&&typeof r.bandwidth=="function"?r.bandwidth()/2:2,w=v==="category"&&r.bandwidth?r.bandwidth()/S:0;w=h==="angleAxis"&&o!=null&&o.length>=2?Vr(o[0]-o[1])*2*w:w;var j=p||l;return j?j.map((C,A)=>{var N=u?u.indexOf(C):C,O=r.map(N);return it(O)?{index:A,coordinate:O+w,value:C,offset:w}:null}).filter(ur):m&&c?c.map((C,A)=>{var N=r.map(C);return it(N)?{coordinate:N+w,value:C,index:A,offset:w}:null}).filter(ur):r.ticks?r.ticks(x).map((C,A)=>{var N=r.map(C);return it(N)?{coordinate:N+w,value:C,index:A,offset:w}:null}).filter(ur):r.domain().map((C,A)=>{var N=r.map(C);return it(N)?{coordinate:N+w,value:u?u[C]:C,index:A,offset:w}:null}).filter(ur)}},QI=W([It,fd,nc,yg,$1,hd,F1,H1,xn],FQ),VQ=(e,t,n,r,l,o,u)=>{if(!(t==null||n==null||r==null||r[0]===r[1])){var c=Ra(e,u),h=t.tickCount,m=0;return m=u==="angleAxis"&&(r==null?void 0:r.length)>=2?Vr(r[0]-r[1])*2*m:m,c&&o?o.map((v,p)=>{var x=n.map(v);return it(x)?{coordinate:x+m,value:v,index:p,offset:m}:null}).filter(ur):n.ticks?n.ticks(h).map((v,p)=>{var x=n.map(v);return it(x)?{coordinate:x+m,value:v,index:p,offset:m}:null}).filter(ur):n.domain().map((v,p)=>{var x=n.map(v);return it(x)?{coordinate:x+m,value:l?l[v]:v,index:p,offset:m}:null}).filter(ur)}},ZI=W([It,fd,yg,hd,F1,H1,xn],VQ),WI=W(Fn,yg,(e,t)=>{if(!(e==null||t==null))return yv(yv({},e),{},{scale:t})}),GQ=W([Fn,nc,U1,GI],P1),qQ=W([GQ],s1);W((e,t,n)=>k1(e,n),qQ,(e,t)=>{if(!(e==null||t==null))return yv(yv({},e),{},{scale:t})});var KQ=W([It,Wv,Jv],(e,t,n)=>{switch(e){case"horizontal":return t.some(r=>r.reversed)?"right-to-left":"left-to-right";case"vertical":return n.some(r=>r.reversed)?"bottom-to-top":"top-to-bottom";case"centric":case"radial":return"left-to-right";default:return}}),YQ=(e,t,n)=>{var r;return(r=e.renderedTicks[t])===null||r===void 0?void 0:r[n]};W([YQ],e=>{if(!(!e||e.length===0))return t=>{var n,r=1/0,l=e[0];for(var o of e){var u=Math.abs(o.coordinate-t);ue.options.defaultTooltipEventType,e3=e=>e.options.validateTooltipEventTypes;function t3(e,t,n){if(e==null)return t;var r=e?"axis":"item";return n==null?t:n.includes(r)?r:t}function md(e,t){var n=JI(e),r=e3(e);return t3(t,n,r)}function XQ(e){return ke(t=>md(t,e))}var n3=(e,t)=>{var n,r=Number(t);if(!(Aa(r)||t==null))return r>=0?e==null||(n=e[r])===null||n===void 0?void 0:n.value:void 0},QQ=e=>e.tooltip.settings,bl={active:!1,index:null,dataKey:void 0,graphicalItemId:void 0,coordinate:void 0},ZQ={itemInteraction:{click:bl,hover:bl},axisInteraction:{click:bl,hover:bl},keyboardInteraction:bl,syncInteraction:{active:!1,index:null,dataKey:void 0,label:void 0,coordinate:void 0,sourceViewBox:void 0,graphicalItemId:void 0},tooltipItemPayloads:[],settings:{shared:void 0,trigger:"hover",axisId:0,active:!1,defaultIndex:void 0}},r3=Hn({name:"tooltip",initialState:ZQ,reducers:{addTooltipEntrySettings:{reducer(e,t){e.tooltipItemPayloads.push(rt(t.payload))},prepare:Ot()},replaceTooltipEntrySettings:{reducer(e,t){var n=t.payload,r=n.prev,l=n.next,o=Gr(e).tooltipItemPayloads.indexOf(rt(r));o>-1&&(e.tooltipItemPayloads[o]=rt(l))},prepare:Ot()},removeTooltipEntrySettings:{reducer(e,t){var n=Gr(e).tooltipItemPayloads.indexOf(rt(t.payload));n>-1&&e.tooltipItemPayloads.splice(n,1)},prepare:Ot()},setTooltipSettingsState(e,t){e.settings=t.payload},setActiveMouseOverItemIndex(e,t){e.syncInteraction.active=!1,e.syncInteraction.sourceViewBox=void 0,e.keyboardInteraction.active=!1,e.itemInteraction.hover.active=!0,e.itemInteraction.hover.index=t.payload.activeIndex,e.itemInteraction.hover.dataKey=t.payload.activeDataKey,e.itemInteraction.hover.graphicalItemId=t.payload.activeGraphicalItemId,e.itemInteraction.hover.coordinate=t.payload.activeCoordinate},mouseLeaveChart(e){e.itemInteraction.hover.active=!1,e.axisInteraction.hover.active=!1},mouseLeaveItem(e){e.itemInteraction.hover.active=!1},setActiveClickItemIndex(e,t){e.syncInteraction.active=!1,e.syncInteraction.sourceViewBox=void 0,e.itemInteraction.click.active=!0,e.keyboardInteraction.active=!1,e.itemInteraction.click.index=t.payload.activeIndex,e.itemInteraction.click.dataKey=t.payload.activeDataKey,e.itemInteraction.click.graphicalItemId=t.payload.activeGraphicalItemId,e.itemInteraction.click.coordinate=t.payload.activeCoordinate},setMouseOverAxisIndex(e,t){e.syncInteraction.active=!1,e.syncInteraction.sourceViewBox=void 0,e.axisInteraction.hover.active=!0,e.keyboardInteraction.active=!1,e.axisInteraction.hover.index=t.payload.activeIndex,e.axisInteraction.hover.dataKey=t.payload.activeDataKey,e.axisInteraction.hover.coordinate=t.payload.activeCoordinate},setMouseClickAxisIndex(e,t){e.syncInteraction.active=!1,e.syncInteraction.sourceViewBox=void 0,e.keyboardInteraction.active=!1,e.axisInteraction.click.active=!0,e.axisInteraction.click.index=t.payload.activeIndex,e.axisInteraction.click.dataKey=t.payload.activeDataKey,e.axisInteraction.click.coordinate=t.payload.activeCoordinate},setSyncInteraction(e,t){e.syncInteraction=t.payload},setKeyboardInteraction(e,t){e.keyboardInteraction.active=t.payload.active,e.keyboardInteraction.index=t.payload.activeIndex,e.keyboardInteraction.coordinate=t.payload.activeCoordinate}}}),Jr=r3.actions,WQ=Jr.addTooltipEntrySettings,JQ=Jr.replaceTooltipEntrySettings,eZ=Jr.removeTooltipEntrySettings,tZ=Jr.setTooltipSettingsState,nZ=Jr.setActiveMouseOverItemIndex;Jr.mouseLeaveItem;var i3=Jr.mouseLeaveChart;Jr.setActiveClickItemIndex;var a3=Jr.setMouseOverAxisIndex,rZ=Jr.setMouseClickAxisIndex,Sf=Jr.setSyncInteraction,bv=Jr.setKeyboardInteraction,iZ=r3.reducer;function M2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function hm(e){for(var t=1;t{if(t==null)return bl;var l=sZ(e,t,n);if(l==null)return bl;if(l.active)return l;if(e.keyboardInteraction.active)return e.keyboardInteraction;if(e.syncInteraction.active&&e.syncInteraction.index!=null)return e.syncInteraction;var o=e.settings.active===!0;if(uZ(l)){if(o)return hm(hm({},l),{},{active:!0})}else if(r!=null)return{active:!0,coordinate:void 0,dataKey:void 0,index:r,graphicalItemId:void 0};return hm(hm({},bl),{},{coordinate:l.coordinate})};function cZ(e){if(typeof e=="number")return Number.isFinite(e)?e:void 0;if(e instanceof Date){var t=e.valueOf();return Number.isFinite(t)?t:void 0}var n=Number(e);return Number.isFinite(n)?n:void 0}function fZ(e,t){var n=cZ(e),r=t[0],l=t[1];if(n===void 0)return!1;var o=Math.min(r,l),u=Math.max(r,l);return n>=o&&n<=u}function dZ(e,t,n){if(n==null||t==null)return!0;var r=pn(e,t);return r==null||!Li(n)?!0:fZ(r,n)}var Cf=(e,t,n,r)=>{var l=e==null?void 0:e.index;if(l==null)return null;var o=Number(l);if(!it(o))return l;var u=0,c=1/0;t.length>0&&(c=t.length-1);var h=Math.max(u,Math.min(o,c)),m=t[h];return m==null||dZ(m,n,r)?String(h):null},o3=(e,t,n,r,l,o,u)=>{if(o!=null){var c=u[0],h=c==null?void 0:c.getPosition(o);if(h!=null)return h;var m=l==null?void 0:l[Number(o)];if(m)switch(n){case"horizontal":return{x:m.coordinate,y:(r.top+t)/2};default:return{x:(r.left+e)/2,y:m.coordinate}}}},s3=(e,t,n,r)=>{if(t==="axis")return e.tooltipItemPayloads;if(e.tooltipItemPayloads.length===0)return[];var l;if(n==="hover"?l=e.itemInteraction.hover.graphicalItemId:l=e.itemInteraction.click.graphicalItemId,e.syncInteraction.active&&l==null)return e.tooltipItemPayloads;if(l==null&&(r!=null||e.keyboardInteraction.active)){var o=e.tooltipItemPayloads[0];return o!=null?[o]:[]}return e.tooltipItemPayloads.filter(u=>{var c;return((c=u.settings)===null||c===void 0?void 0:c.graphicalItemId)===l})},u3=e=>e.options.tooltipPayloadSearcher,rc=e=>e.tooltip;function D2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function P2(e){for(var t=1;te(t)}function k2(e){if(typeof e=="string")return e}function xZ(e){if(!(e==null||typeof e!="object")){var t="name"in e?gZ(e.name):void 0,n="unit"in e?pZ(e.unit):void 0,r="dataKey"in e?yZ(e.dataKey):void 0,l="payload"in e?e.payload:void 0,o="color"in e?k2(e.color):void 0,u="fill"in e?k2(e.fill):void 0;return{name:t,unit:n,dataKey:r,payload:l,color:o,fill:u}}}function bZ(e,t){return e??t}var c3=(e,t,n,r,l,o,u)=>{if(!(t==null||o==null)){var c=n.chartData,h=n.computedData,m=n.dataStartIndex,v=n.dataEndIndex,p=[];return e.reduce((x,S)=>{var w,j=S.dataDefinedOnItem,C=S.settings,A=bZ(j,c),N=Array.isArray(A)?AP(A,m,v):A,O=(w=C==null?void 0:C.dataKey)!==null&&w!==void 0?w:r,T=C==null?void 0:C.nameKey,R;if(r&&Array.isArray(N)&&!Array.isArray(N[0])&&u==="axis"?(R=rD(N,r,l),R==null&&(R=o(N,t,h,T))):R=o(N,t,h,T),Array.isArray(R))R.forEach(D=>{var k,I,P=xZ(D),B=P==null?void 0:P.name,F=P==null?void 0:P.dataKey,se=P==null?void 0:P.payload,ue=P2(P2({},C),{},{name:B,unit:P==null?void 0:P.unit,color:(k=P==null?void 0:P.color)!==null&&k!==void 0?k:C==null?void 0:C.color,fill:(I=P==null?void 0:P.fill)!==null&&I!==void 0?I:C==null?void 0:C.fill});x.push(RO({tooltipEntrySettings:ue,dataKey:F,payload:se,value:pn(se,F),name:B==null?void 0:String(B)}))});else{var E;x.push(RO({tooltipEntrySettings:C,dataKey:O,payload:R,value:pn(R,O),name:(E=pn(R,T))!==null&&E!==void 0?E:C==null?void 0:C.name}))}return x},p)}},V1=W([sn,gI,t1],fI),SZ=W([e=>e.graphicalItems.cartesianItems,e=>e.graphicalItems.polarItems],(e,t)=>[...e,...t]),wZ=W([bn,Zu],pI),rs=W([SZ,sn,wZ],xI,{memoizeOptions:{resultEqualityCheck:ug}}),jZ=W([rs],e=>e.filter(o1)),f3=W([rs],wI,{memoizeOptions:{resultEqualityCheck:ug}}),CZ=W([rs],e=>e.some(t=>!t.data)),Xo=W([f3,Gi],CI),_Z=W([jZ,Gi,sn],xk),G1=W([Xo,sn,rs,Gi,CZ,f3],_I),d3=W([sn],z1),AZ=W([sn],e=>e.allowDataOverflow),h3=W([d3,AZ],ek),EZ=W([rs],e=>e.filter(o1)),OZ=W([_Z,EZ,ig,fk],EI),NZ=W([OZ,Gi,bn,h3],OI),TZ=W([rs],SI),RZ=W([Xo,sn,TZ,L1,bn,Nq],RI,{memoizeOptions:{resultEqualityCheck:ld}}),MZ=W([MI,bn,Zu],tc),DZ=W([MZ,bn],kI),PZ=W([DI,bn,Zu],tc),kZ=W([PZ,bn],II),IZ=W([PI,bn,Zu],tc),zZ=W([IZ,bn],zI),LZ=W([DZ,zZ,kZ],xv),UZ=W([sn,d3,h3,NZ,RZ,LZ,It,bn],LI),Bu=W([sn,It,Xo,G1,ig,bn,UZ],UI),$Z=W([Bu,sn,V1],$I),BZ=W([sn,Bu,$Z,bn],BI),m3=e=>{var t=bn(e),n=Zu(e),r=!1;return hd(e,t,n,r)},v3=W([sn,m3],ag),HZ=W([sn,V1,BZ,v3],P1),g3=W([HZ],s1),FZ=W([It,G1,sn,bn],XI),VZ=W([It,G1,sn,bn],qI),GZ=(e,t,n,r,l,o,u,c)=>{if(t){var h=t.type,m=Ra(e,c);if(r){var v=n==="scaleBand"&&r.bandwidth?r.bandwidth()/2:2,p=h==="category"&&r.bandwidth?r.bandwidth()/v:0;return p=c==="angleAxis"&&l!=null&&(l==null?void 0:l.length)>=2?Vr(l[0]-l[1])*2*p:p,m&&u?u.map((x,S)=>{var w=r.map(x);return it(w)?{coordinate:w+p,value:x,index:S,offset:p}:null}).filter(ur):r.domain().map((x,S)=>{var w=r.map(x);return it(w)?{coordinate:w+p,value:o?o[x]:x,index:S,offset:p}:null}).filter(ur)}}},za=W([It,sn,V1,g3,m3,FZ,VZ,bn],GZ),q1=W([JI,e3,QQ],(e,t,n)=>t3(n.shared,e,t)),p3=e=>e.tooltip.settings.trigger,K1=e=>e.tooltip.settings.defaultIndex,vd=W([rc,q1,p3,K1],l3),$f=W([vd,Xo,$u,Bu],Cf),y3=W([za,$f],n3),qZ=W([vd],e=>{if(e)return e.dataKey}),KZ=W([vd],e=>{if(e)return e.graphicalItemId}),x3=W([rc,q1,p3,K1],s3),YZ=W([Ma,Da,It,Pn,za,K1,x3],o3),XZ=W([vd,YZ],(e,t)=>e!=null&&e.coordinate?e.coordinate:t),QZ=W([vd],e=>{var t;return(t=e==null?void 0:e.active)!==null&&t!==void 0?t:!1}),ZZ=W([x3,$f,Gi,$u,y3,u3,q1],c3),WZ=W([ZZ],e=>{if(e!=null){var t=e.map(n=>n.payload).filter(n=>n!=null);return Array.from(new Set(t))}});function I2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function z2(e){for(var t=1;tke(sn),rW=()=>{var e=nW(),t=ke(za),n=ke(g3);return Jm(!e||!n?void 0:z2(z2({},e),{},{scale:n}),t)};function L2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function eu(e){for(var t=1;t{var l=t.find(o=>o&&o.index===n);if(l){if(e==="horizontal")return{x:l.coordinate,y:r.relativeY};if(e==="vertical")return{x:r.relativeX,y:l.coordinate}}return{x:0,y:0}},sW=(e,t,n,r)=>{var l=t.find(m=>m&&m.index===n);if(l){if(e==="centric"){var o=l.coordinate,u=r.radius;return eu(eu(eu({},r),Dn(r.cx,r.cy,u,o)),{},{angle:o,radius:u})}var c=l.coordinate,h=r.angle;return eu(eu(eu({},r),Dn(r.cx,r.cy,c,h)),{},{angle:h,radius:c})}return{angle:0,clockWise:!1,cx:0,cy:0,endAngle:0,innerRadius:0,outerRadius:0,radius:0,startAngle:0,x:0,y:0}};function uW(e,t){var n=e.relativeX,r=e.relativeY;return n>=t.left&&n<=t.left+t.width&&r>=t.top&&r<=t.top+t.height}var b3=(e,t,n,r,l)=>{var o,u=(o=t==null?void 0:t.length)!==null&&o!==void 0?o:0;if(u<=1||e==null)return 0;if(r==="angleAxis"&&l!=null&&Math.abs(Math.abs(l[1]-l[0])-360)<=1e-6)for(var c=l[1]-l[0],h=(de,G,ne)=>[e,e+c,e-c].some(ie=>(ne?ie>=de:ie>de)&&ie<=G),m=0;m0?(v=n[m-1])===null||v===void 0?void 0:v.coordinate:(p=n[u-1])===null||p===void 0?void 0:p.coordinate,C=(x=n[m])===null||x===void 0?void 0:x.coordinate,A=m>=u-1?(S=n[0])===null||S===void 0?void 0:S.coordinate:(w=n[m+1])===null||w===void 0?void 0:w.coordinate,N=void 0;if(!(j==null||C==null||A==null))if(Vr(C-j)!==Vr(A-C)){var O=[];if(Vr(A-C)===Vr(l[1]-l[0])){N=A;var T=C+l[1]-l[0];O[0]=Math.min(T,(T+j)/2),O[1]=Math.max(T,(T+j)/2)}else{N=j;var R=A+l[1]-l[0];O[0]=Math.min(C,(R+C)/2),O[1]=Math.max(C,(R+C)/2)}var E=[Math.min(C,(N+C)/2),Math.max(C,(N+C)/2)];if(h(E[0],E[1],!1)||h(O[0],O[1],!0)){var D;return(D=n[m])===null||D===void 0?void 0:D.index}}else{var k=Math.min(j,A),I=Math.max(j,A);if(h((k+C)/2,(I+C)/2,!1)){var P;return(P=n[m])===null||P===void 0?void 0:P.index}}}else if(t)for(var B=0;B(F.coordinate+ue.coordinate)/2||B>0&&B(F.coordinate+ue.coordinate)/2&&e<=(F.coordinate+se.coordinate)/2)return F.index}}return-1},cW=()=>ke(t1),Y1=(e,t)=>t,S3=(e,t,n)=>n,X1=(e,t,n,r)=>r,fW=W(za,e=>Hv(e,t=>t.coordinate)),Q1=W([rc,Y1,S3,X1],l3),Z1=W([Q1,Xo,$u,Bu],Cf),dW=(e,t,n)=>{if(t!=null){var r=rc(e);return t==="axis"?n==="hover"?r.axisInteraction.hover.dataKey:r.axisInteraction.click.dataKey:n==="hover"?r.itemInteraction.hover.dataKey:r.itemInteraction.click.dataKey}},w3=W([rc,Y1,S3,X1],s3),Sv=W([Ma,Da,It,Pn,za,X1,w3],o3),hW=W([Q1,Sv],(e,t)=>{var n;return(n=e.coordinate)!==null&&n!==void 0?n:t}),j3=W([za,Z1],n3),mW=W([w3,Z1,Gi,$u,j3,u3,Y1],c3),vW=W([Q1,Z1],(e,t)=>({isActive:e.active&&t!=null,activeIndex:t})),gW=(e,t,n,r,l,o,u)=>{if(!(!e||!n||!r||!l)&&uW(e,u)){var c=R9(e,t),h=b3(c,o,l,n,r),m=oW(t,l,h,e);return{activeIndex:String(h),activeCoordinate:m}}},pW=(e,t,n,r,l,o,u)=>{if(!(!e||!r||!l||!o||!n)){var c=Sq(e,n);if(c){var h=M9(c,t),m=b3(h,u,o,r,l),v=sW(t,o,m,c);return{activeIndex:String(m),activeCoordinate:v}}}},yW=(e,t,n,r,l,o,u,c)=>{if(!(!e||!t||!r||!l||!o))return t==="horizontal"||t==="vertical"?gW(e,t,r,l,o,u,c):pW(e,t,n,r,l,o,u)},xW=W(e=>e.zIndex.zIndexMap,(e,t)=>t,(e,t,n)=>n,(e,t,n)=>{if(t!=null){var r=e[t];if(r!=null)return n?r.panoramaElement:r.element}}),bW=W(e=>e.zIndex.zIndexMap,e=>{var t=Object.keys(e).map(r=>parseInt(r,10)).concat(Object.values(Qn)),n=Array.from(new Set(t));return n.sort((r,l)=>r-l)},{memoizeOptions:{resultEqualityCheck:Qq}});function U2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function $2(e){for(var t=1;t$2($2({},e),{},{[t]:{element:void 0,panoramaElement:void 0,consumers:0}}),CW)},AW=new Set(Object.values(Qn));function EW(e){return AW.has(e)}var C3=Hn({name:"zIndex",initialState:_W,reducers:{registerZIndexPortal:{reducer:(e,t)=>{var n=t.payload.zIndex;e.zIndexMap[n]?e.zIndexMap[n].consumers+=1:e.zIndexMap[n]={consumers:1,element:void 0,panoramaElement:void 0}},prepare:Ot()},unregisterZIndexPortal:{reducer:(e,t)=>{var n=t.payload.zIndex;e.zIndexMap[n]&&(e.zIndexMap[n].consumers-=1,e.zIndexMap[n].consumers<=0&&!EW(n)&&delete e.zIndexMap[n])},prepare:Ot()},registerZIndexPortalElement:{reducer:(e,t)=>{var n=t.payload,r=n.zIndex,l=n.element,o=n.isPanorama;e.zIndexMap[r]?o?e.zIndexMap[r].panoramaElement=rt(l):e.zIndexMap[r].element=rt(l):e.zIndexMap[r]={consumers:0,element:o?void 0:rt(l),panoramaElement:o?rt(l):void 0}},prepare:Ot()},unregisterZIndexPortalElement:{reducer:(e,t)=>{var n=t.payload.zIndex;e.zIndexMap[n]&&(t.payload.isPanorama?e.zIndexMap[n].panoramaElement=void 0:e.zIndexMap[n].element=void 0)},prepare:Ot()}}}),Sg=C3.actions,OW=Sg.registerZIndexPortal,e0=Sg.unregisterZIndexPortal,NW=Sg.registerZIndexPortalElement,TW=Sg.unregisterZIndexPortalElement,RW=C3.reducer;function La(e){var t=e.zIndex,n=e.children,r=vG(),l=r&&t!==void 0&&t!==0,o=fr(),u=b.useRef(void 0),c=b.useRef(new Set),h=Vt(),m=ke(p=>xW(p,t,o));if(b.useLayoutEffect(()=>{if(!l){var p=c.current;p.forEach(S=>{h(e0({zIndex:S}))}),p.clear(),u.current=void 0;return}if(c.current.has(t)||(h(OW({zIndex:t})),c.current.add(t)),m){u.current=m;var x=c.current;x.forEach(S=>{S!==t&&(h(e0({zIndex:S})),x.delete(S))})}},[h,t,l,m]),b.useLayoutEffect(()=>{var p=c.current;return()=>{p.forEach(x=>{h(e0({zIndex:x}))}),p.clear()}},[h]),!l)return n;var v=m??u.current;return v?Rv.createPortal(n,v):null}function Ab(){return Ab=Object.assign?Object.assign.bind():function(e){for(var t=1;tb.useContext(_3),t0={exports:{}},H2;function UW(){return H2||(H2=1,(function(e){var t=Object.prototype.hasOwnProperty,n="~";function r(){}Object.create&&(r.prototype=Object.create(null),new r().__proto__||(n=!1));function l(h,m,v){this.fn=h,this.context=m,this.once=v||!1}function o(h,m,v,p,x){if(typeof v!="function")throw new TypeError("The listener must be a function");var S=new l(v,p||h,x),w=n?n+m:m;return h._events[w]?h._events[w].fn?h._events[w]=[h._events[w],S]:h._events[w].push(S):(h._events[w]=S,h._eventsCount++),h}function u(h,m){--h._eventsCount===0?h._events=new r:delete h._events[m]}function c(){this._events=new r,this._eventsCount=0}c.prototype.eventNames=function(){var m=[],v,p;if(this._eventsCount===0)return m;for(p in v=this._events)t.call(v,p)&&m.push(n?p.slice(1):p);return Object.getOwnPropertySymbols?m.concat(Object.getOwnPropertySymbols(v)):m},c.prototype.listeners=function(m){var v=n?n+m:m,p=this._events[v];if(!p)return[];if(p.fn)return[p.fn];for(var x=0,S=p.length,w=new Array(S);x{if(t&&Array.isArray(e)){var n=Number.parseInt(t,10);if(!Aa(n))return e[n]}},FW={chartName:"",tooltipPayloadSearcher:()=>{},eventEmitter:void 0,defaultTooltipEventType:"axis"},A3=Hn({name:"options",initialState:FW,reducers:{createEventEmitter:e=>{e.eventEmitter==null&&(e.eventEmitter=Symbol("rechartsEventEmitter"))}}}),VW=A3.reducer,GW=A3.actions.createEventEmitter;function qW(e){return e.tooltip.syncInteraction}var KW={chartData:void 0,computedData:void 0,dataStartIndex:0,dataEndIndex:0},E3=Hn({name:"chartData",initialState:KW,reducers:{setChartData(e,t){if(e.chartData=rt(t.payload),t.payload==null){e.dataStartIndex=0,e.dataEndIndex=0;return}t.payload.length>0&&e.dataEndIndex!==t.payload.length-1&&(e.dataEndIndex=t.payload.length-1)},setComputedData(e,t){e.computedData=t.payload},setDataStartEndIndexes(e,t){var n=t.payload,r=n.startIndex,l=n.endIndex;r!=null&&(e.dataStartIndex=r),l!=null&&(e.dataEndIndex=l)}}}),W1=E3.actions,V2=W1.setChartData,YW=W1.setDataStartEndIndexes;W1.setComputedData;var XW=E3.reducer,QW=["x","y"];function G2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function tu(e){for(var t=1;th.rootProps.className);b.useEffect(()=>{if(e==null)return Ku;var h=(m,v,p)=>{if(t!==p&&e===m){if(v.payload.active===!1){n(Sf({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:void 0,graphicalItemId:void 0}));return}if(r==="index"){var x;if(u&&v!==null&&v!==void 0&&(x=v.payload)!==null&&x!==void 0&&x.coordinate&&v.payload.sourceViewBox){var S=v.payload.coordinate,w=S.x,j=S.y,C=eJ(S,QW),A=v.payload.sourceViewBox,N=A.x,O=A.y,T=A.width,R=A.height,E=tu(tu({},C),{},{x:u.x+(T?(w-N)/T:0)*u.width,y:u.y+(R?(j-O)/R:0)*u.height});n(tu(tu({},v),{},{payload:tu(tu({},v.payload),{},{coordinate:E})}))}else n(v);return}if(l!=null){var D;if(typeof r=="function"){var k={activeTooltipIndex:v.payload.index==null?void 0:Number(v.payload.index),isTooltipActive:v.payload.active,activeIndex:v.payload.index==null?void 0:Number(v.payload.index),activeLabel:v.payload.label,activeDataKey:v.payload.dataKey,activeCoordinate:v.payload.coordinate},I=r(l,k);D=l[I]}else r==="value"&&(D=l.find(ne=>String(ne.value)===v.payload.label));var P=v.payload.coordinate;if(P==null||u==null){n(Sf({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:void 0,graphicalItemId:void 0}));return}if(D==null){n(Sf({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:v.payload.sourceViewBox,graphicalItemId:void 0}));return}var B=P.x,F=P.y,se=Math.min(B,u.x+u.width),ue=Math.min(F,u.y+u.height),de={x:o==="horizontal"?D.coordinate:se,y:o==="horizontal"?ue:D.coordinate},G=Sf({active:v.payload.active,coordinate:de,dataKey:v.payload.dataKey,index:String(D.index),label:v.payload.label,sourceViewBox:v.payload.sourceViewBox,graphicalItemId:v.payload.graphicalItemId});n(G)}}};return Bf.on(Eb,h),()=>{Bf.off(Eb,h)}},[c,n,t,e,r,l,o,u])}function rJ(){var e=ke(n1),t=ke(r1),n=Vt();b.useEffect(()=>{if(e==null)return Ku;var r=(l,o,u)=>{t!==u&&e===l&&n(YW(o))};return Bf.on(F2,r),()=>{Bf.off(F2,r)}},[n,t,e])}function iJ(){var e=Vt();b.useEffect(()=>{e(GW())},[e]),nJ(),rJ()}function aJ(e,t,n,r,l,o){var u=ke(w=>dW(w,e,t)),c=ke(KZ),h=ke(r1),m=ke(n1),v=ke(dk),p=ke(qW),x=(p==null?void 0:p.sourceViewBox)!=null,S=ng();b.useEffect(()=>{if(!x&&m!=null&&h!=null){var w=Sf({active:o,coordinate:n,dataKey:u,index:l,label:typeof r=="number"?String(r):r,sourceViewBox:S,graphicalItemId:c});Bf.emit(Eb,m,w,h)}},[x,n,u,c,l,r,h,m,v,o,S])}function q2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function K2(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);n{D(tZ({shared:N,trigger:O,axisId:E,active:l,defaultIndex:k}))},[D,N,O,E,l,k]);var I=ng(),P=FP(),B=XQ(N),F=(t=ke(oe=>vW(oe,B,O,k)))!==null&&t!==void 0?t:{},se=F.activeIndex,ue=F.isActive,de=ke(oe=>mW(oe,B,O,k)),G=ke(oe=>j3(oe,B,O,k)),ne=ke(oe=>hW(oe,B,O,k)),ie=de,ce=LW(),U=(n=l??ue)!==null&&n!==void 0?n:!1,Ee=pV([ie,U]),ee=uJ(Ee,2),ve=ee[0],z=ee[1],Y=B==="axis"?G:void 0;aJ(B,O,ne,Y,se,U);var le=R??ce;if(le==null||I==null||B==null)return null;var fe=ie??X2;U||(fe=X2),m&&fe.length&&(fe=UF(fe.filter(oe=>oe.value!=null&&(oe.hide!==!0||r.includeHidden)),x,mJ));var De=fe.length>0,te=K2(K2({},r),{},{payload:fe,label:Y,active:U,activeIndex:se,coordinate:ne,accessibilityLayer:P}),ge=b.createElement(v7,{allowEscapeViewBox:o,animationDuration:u,animationEasing:c,isAnimationActive:v,active:U,coordinate:ne,hasPayload:De,offset:p,position:S,reverseDirection:w,useTranslate3d:j,viewBox:I,wrapperStyle:C,lastBoundingBox:ve,innerRef:z,hasPortalFromProps:!!R},vJ(h,te));return b.createElement(b.Fragment,null,Rv.createPortal(ge,le),U&&b.createElement(zW,{cursor:A,tooltipEventType:B,coordinate:ne,payload:fe,index:se}))}function pJ(e,t,n){return(t=yJ(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function yJ(e){var t=xJ(e,"string");return typeof t=="symbol"?t:t+""}function xJ(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}class bJ{constructor(t){pJ(this,"cache",new Map),this.maxSize=t}get(t){var n=this.cache.get(t);return n!==void 0&&(this.cache.delete(t),this.cache.set(t,n)),n}set(t,n){if(this.cache.has(t))this.cache.delete(t);else if(this.cache.size>=this.maxSize){var r=this.cache.keys().next().value;r!=null&&this.cache.delete(r)}this.cache.set(t,n)}clear(){this.cache.clear()}size(){return this.cache.size}}function Q2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function SJ(e){for(var t=1;t{try{var n=document.getElementById(W2);n||(n=document.createElement("span"),n.setAttribute("id",W2),n.setAttribute("aria-hidden","true"),document.body.appendChild(n)),Object.assign(n.style,AJ,t),n.textContent="".concat(e);var r=n.getBoundingClientRect();return{width:r.width,height:r.height}}catch{return{width:0,height:0}}},_f=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(t==null||id.isSsr)return{width:0,height:0};if(!N3.enableCache)return J2(t,n);var r=EJ(t,n),l=Z2.get(r);if(l)return l;var o=J2(t,n);return Z2.set(r,o),o},T3;function wv(e,t){return RJ(e)||TJ(e,t)||NJ(e,t)||OJ()}function OJ(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function NJ(e,t){if(e){if(typeof e=="string")return eT(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?eT(e,t):void 0}}function eT(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);ne.length)&&(t=e.length);for(var n=0,r=Array(t);n{var t=e.children,n=e.breakAll,r=e.style;try{var l=[];yn(t)||(n?l=t.toString().split(""):l=t.toString().split(M3));var o=l.map(c=>({word:c,width:_f(c,r).width})),u=n?0:_f(" ",r).width;return{wordsWithComputedWidth:o,spaceWidth:u}}catch{return null}};function P3(e){return e==="start"||e==="middle"||e==="end"||e==="inherit"}function ZJ(e){return yn(e)||typeof e=="string"||typeof e=="number"||typeof e=="boolean"}var k3=(e,t,n,r)=>e.reduce((l,o)=>{var u=o.word,c=o.width,h=l[l.length-1];if(h&&c!=null&&(t==null||r||h.width+c+ne.reduce((t,n)=>t.width>n.width?t:n),WJ="…",oT=(e,t,n,r,l,o,u,c)=>{var h=e.slice(0,t),m=D3({breakAll:n,style:r,children:h+WJ});if(!m)return[!1,[]];var v=k3(m.wordsWithComputedWidth,o,u,c),p=v.length>l||I3(v).width>Number(o);return[p,v]},JJ=(e,t,n,r,l)=>{var o=e.maxLines,u=e.children,c=e.style,h=e.breakAll,m=Re(o),v=String(u),p=k3(t,r,n,l);if(!m||l)return p;var x=p.length>o||I3(p).width>Number(r);if(!x)return p;for(var S=0,w=v.length-1,j=0,C;S<=w&&j<=v.length-1;){var A=Math.floor((S+w)/2),N=A-1,O=oT(v,N,h,c,o,r,n,l),T=aT(O,2),R=T[0],E=T[1],D=oT(v,A,h,c,o,r,n,l),k=aT(D,1),I=k[0];if(!R&&!I&&(S=A+1),R&&I&&(w=A-1),!R&&I){C=E;break}j++}return C||p},sT=e=>{var t=yn(e)?[]:e.toString().split(M3);return[{words:t,width:void 0}]},eee=e=>{var t=e.width,n=e.scaleToFit,r=e.children,l=e.style,o=e.breakAll,u=e.maxLines;if((t||n)&&!id.isSsr){var c,h,m=D3({breakAll:o,children:r,style:l});if(m){var v=m.wordsWithComputedWidth,p=m.spaceWidth;c=v,h=p}else return sT(r);return JJ({breakAll:o,children:r,maxLines:u,style:l},c,h,t,!!n)}return sT(r)},z3="#808080",tee={angle:0,breakAll:!1,capHeight:"0.71em",fill:z3,lineHeight:"1em",scaleToFit:!1,textAnchor:"start",verticalAnchor:"end",x:0,y:0},J1=b.forwardRef((e,t)=>{var n=Tr(e,tee),r=n.x,l=n.y,o=n.lineHeight,u=n.capHeight,c=n.fill,h=n.scaleToFit,m=n.textAnchor,v=n.verticalAnchor,p=iT(n,VJ),x=b.useMemo(()=>eee({breakAll:p.breakAll,children:p.children,maxLines:p.maxLines,scaleToFit:h,style:p.style,width:p.width}),[p.breakAll,p.children,p.maxLines,h,p.style,p.width]),S=p.dx,w=p.dy,j=p.angle,C=p.className,A=p.breakAll,N=iT(p,GJ);if(!Hi(r)||!Hi(l)||x.length===0)return null;var O=Number(r)+(Re(S)?S:0),T=Number(l)+(Re(w)?w:0);if(!it(O)||!it(T))return null;var R;switch(v){case"start":R=n0("calc(".concat(u,")"));break;case"middle":R=n0("calc(".concat((x.length-1)/2," * -").concat(o," + (").concat(u," / 2))"));break;default:R=n0("calc(".concat(x.length-1," * -").concat(o,")"));break}var E=[],D=x[0];if(h&&D!=null){var k=D.width,I=p.width;E.push("scale(".concat(Re(I)&&Re(k)?I/k:1,")"))}return j&&E.push("rotate(".concat(j,", ").concat(O,", ").concat(T,")")),E.length&&(N.transform=E.join(" ")),b.createElement("text",Ob({},Xr(N),{ref:t,x:O,y:T,className:Ct("recharts-text",C),textAnchor:m,fill:c.includes("url")?z3:c}),x.map((P,B)=>{var F=P.words.join(A?"":" ");return b.createElement("tspan",{x:O,dy:B===0?R:o,key:"".concat(F,"-").concat(B)},F)}))});J1.displayName="Text";var nee=["labelRef"],ree=["content"];function uT(e,t){if(e==null)return{};var n,r,l=iee(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var t=e.x,n=e.y,r=e.upperWidth,l=e.lowerWidth,o=e.width,u=e.height,c=e.children,h=b.useMemo(()=>({x:t,y:n,upperWidth:r,lowerWidth:l,width:o,height:u}),[t,n,r,l,o,u]);return b.createElement(L3.Provider,{value:h},c)},U3=()=>{var e=b.useContext(L3),t=ng();return e||(t?TS(t):void 0)},uee=b.createContext(null),cee=()=>{var e=b.useContext(uee),t=ke(pk);return e||t},fee=e=>{var t=e.value,n=e.formatter,r=yn(e.children)?t:e.children;return typeof n=="function"?n(r):r},wg=e=>e!=null&&typeof e=="function",dee=(e,t)=>{var n=Vr(t-e),r=Math.min(Math.abs(t-e),360);return n*r},hee=(e,t,n,r,l)=>{var o=e.offset,u=e.className,c=l.cx,h=l.cy,m=l.innerRadius,v=l.outerRadius,p=l.startAngle,x=l.endAngle,S=l.clockWise,w=(m+v)/2,j=dee(p,x),C=j>=0?1:-1,A,N;switch(t){case"insideStart":A=p+C*o,N=S;break;case"insideEnd":A=x-C*o,N=!S;break;case"end":A=x+C*o,N=S;break;default:throw new Error("Unsupported position ".concat(t))}N=j<=0?N:!N;var O=Dn(c,h,w,A),T=Dn(c,h,w,A+(N?1:-1)*359),R="M".concat(O.x,",").concat(O.y,` + A`,",",",0,0,",",",",","Z"])),B.x,B.y,o,o,+(v<0),P.x,P.y,r,r,+(se>180),+(v>0),A.x,A.y,o,o,+(v<0),D.x,D.y)}else T+=Tn(DN||(DN=wo(["L",",","Z"])),t,n);return T},Iq={cx:0,cy:0,innerRadius:0,outerRadius:0,startAngle:0,endAngle:0,cornerRadius:0,forceCornerRadius:!1,cornerIsExternal:!1},zq=e=>{var t=Tr(e,Iq),n=t.cx,r=t.cy,l=t.innerRadius,o=t.outerRadius,u=t.cornerRadius,c=t.forceCornerRadius,h=t.cornerIsExternal,m=t.startAngle,v=t.endAngle,g=t.className;if(o0&&Math.abs(m-v)<360?j=kq({cx:n,cy:r,innerRadius:l,outerRadius:o,cornerRadius:Math.min(w,S/2),forceCornerRadius:c,cornerIsExternal:h,startAngle:m,endAngle:v}):j=nk({cx:n,cy:r,innerRadius:l,outerRadius:o,startAngle:m,endAngle:v}),b.createElement("path",pb({},Xr(t),{className:x,d:j}))};function Lq(e,t,n){if(e==="horizontal")return[{x:t.x,y:n.top},{x:t.x,y:n.top+n.height}];if(e==="vertical")return[{x:n.left,y:t.y},{x:n.left+n.width,y:t.y}];if(AD(t)){if(e==="centric"){var r=t.cx,l=t.cy,o=t.innerRadius,u=t.outerRadius,c=t.angle,h=Dn(r,l,o,c),m=Dn(r,l,u,c);return[{x:h.x,y:h.y},{x:m.x,y:m.y}]}return tk(t)}}function Uq(e){return NS(e)?NaN:Number(e)}function Hx(e){return e?(e=Uq(e),e===1/0||e===-1/0?(e<0?-1:1)*Number.MAX_VALUE:e===e?e:0):e===0?e:0}function rk(e,t,n){n&&typeof n!="number"&&rb(e,t,n)&&(t=n=void 0),e=Hx(e),t===void 0?(t=e,e=0):t=Hx(t),n=n===void 0?ee.chartData,ik=W([Gi],e=>{var t=e.chartData!=null?e.chartData.length-1:0;return{chartData:e.chartData,computedData:e.computedData,dataEndIndex:t,dataStartIndex:0}}),ld=(e,t,n,r)=>r?ik(e):Gi(e),$q=W([ld],e=>{var t=e.chartData,n=e.dataStartIndex,r=e.dataEndIndex;return t!=null?t.slice(n,r+1):[]});W([ik],e=>{var t=e.chartData,n=e.dataStartIndex,r=e.dataEndIndex;return t!=null?t.slice(n,r+1):[]});var Bq=W([Gi],e=>{var t=e.chartData,n=e.dataStartIndex,r=e.dataEndIndex;return t!=null?t.slice(n,r+1):[]});function JS(e,t){return Gq(e)||Vq(e,t)||Fq(e,t)||Hq()}function Hq(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Fq(e,t){if(e){if(typeof e=="string")return PN(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?PN(e,t):void 0}}function PN(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);ne.e^o.s<0?1:-1;for(r=o.d.length,l=e.d.length,t=0,n=re.d[t]^o.s<0?1:-1;return r===l?0:r>l^o.s<0?1:-1};_e.decimalPlaces=_e.dp=function(){var e=this,t=e.d.length-1,n=(t-e.e)*Nt;if(t=e.d[t],t)for(;t%10==0;t/=10)n--;return n<0?0:n};_e.dividedBy=_e.div=function(e){return Sa(this,new this.constructor(e))};_e.dividedToIntegerBy=_e.idiv=function(e){var t=this,n=t.constructor;return jt(Sa(t,new n(e),0,1),n.precision)};_e.equals=_e.eq=function(e){return!this.cmp(e)};_e.exponent=function(){return Qt(this)};_e.greaterThan=_e.gt=function(e){return this.cmp(e)>0};_e.greaterThanOrEqualTo=_e.gte=function(e){return this.cmp(e)>=0};_e.isInteger=_e.isint=function(){return this.e>this.d.length-2};_e.isNegative=_e.isneg=function(){return this.s<0};_e.isPositive=_e.ispos=function(){return this.s>0};_e.isZero=function(){return this.s===0};_e.lessThan=_e.lt=function(e){return this.cmp(e)<0};_e.lessThanOrEqualTo=_e.lte=function(e){return this.cmp(e)<1};_e.logarithm=_e.log=function(e){var t,n=this,r=n.constructor,l=r.precision,o=l+5;if(e===void 0)e=new r(10);else if(e=new r(e),e.s<1||e.eq(Cr))throw Error(Zr+"NaN");if(n.s<1)throw Error(Zr+(n.s?"NaN":"-Infinity"));return n.eq(Cr)?new r(0):(Dt=!1,t=Sa(Pf(n,o),Pf(e,o),o),Dt=!0,jt(t,l))};_e.minus=_e.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?uk(t,e):ok(t,(e.s=-e.s,e))};_e.modulo=_e.mod=function(e){var t,n=this,r=n.constructor,l=r.precision;if(e=new r(e),!e.s)throw Error(Zr+"NaN");return n.s?(Dt=!1,t=Sa(n,e,0,1).times(e),Dt=!0,n.minus(t)):jt(new r(n),l)};_e.naturalExponential=_e.exp=function(){return sk(this)};_e.naturalLogarithm=_e.ln=function(){return Pf(this)};_e.negated=_e.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e};_e.plus=_e.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?ok(t,e):uk(t,(e.s=-e.s,e))};_e.precision=_e.sd=function(e){var t,n,r,l=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(Lo+e);if(t=Qt(l)+1,r=l.d.length-1,n=r*Nt+1,r=l.d[r],r){for(;r%10==0;r/=10)n--;for(r=l.d[0];r>=10;r/=10)n++}return e&&t>n?t:n};_e.squareRoot=_e.sqrt=function(){var e,t,n,r,l,o,u,c=this,h=c.constructor;if(c.s<1){if(!c.s)return new h(0);throw Error(Zr+"NaN")}for(e=Qt(c),Dt=!1,l=Math.sqrt(+c),l==0||l==1/0?(t=Ii(c.d),(t.length+e)%2==0&&(t+="0"),l=Math.sqrt(t),e=Qu((e+1)/2)-(e<0||e%2),l==1/0?t="5e"+e:(t=l.toExponential(),t=t.slice(0,t.indexOf("e")+1)+e),r=new h(t)):r=new h(l.toString()),n=h.precision,l=u=n+3;;)if(o=r,r=o.plus(Sa(c,o,u+2)).times(.5),Ii(o.d).slice(0,u)===(t=Ii(r.d)).slice(0,u)){if(t=t.slice(u-3,u+1),l==u&&t=="4999"){if(jt(o,n+1,0),o.times(o).eq(c)){r=o;break}}else if(t!="9999")break;u+=4}return Dt=!0,jt(r,n)};_e.times=_e.mul=function(e){var t,n,r,l,o,u,c,h,m,v=this,g=v.constructor,x=v.d,S=(e=new g(e)).d;if(!v.s||!e.s)return new g(0);for(e.s*=v.s,n=v.e+e.e,h=x.length,m=S.length,h=0;){for(t=0,l=h+r;l>r;)c=o[l]+S[r]*x[l-r-1]+t,o[l--]=c%mn|0,t=c/mn|0;o[l]=(o[l]+t)%mn|0}for(;!o[--u];)o.pop();return t?++n:o.shift(),e.d=o,e.e=n,Dt?jt(e,g.precision):e};_e.toDecimalPlaces=_e.todp=function(e,t){var n=this,r=n.constructor;return n=new r(n),e===void 0?n:(Vi(e,0,Xu),t===void 0?t=r.rounding:Vi(t,0,8),jt(n,e+Qt(n)+1,t))};_e.toExponential=function(e,t){var n,r=this,l=r.constructor;return e===void 0?n=Ko(r,!0):(Vi(e,0,Xu),t===void 0?t=l.rounding:Vi(t,0,8),r=jt(new l(r),e+1,t),n=Ko(r,!0,e+1)),n};_e.toFixed=function(e,t){var n,r,l=this,o=l.constructor;return e===void 0?Ko(l):(Vi(e,0,Xu),t===void 0?t=o.rounding:Vi(t,0,8),r=jt(new o(l),e+Qt(l)+1,t),n=Ko(r.abs(),!1,e+Qt(r)+1),l.isneg()&&!l.isZero()?"-"+n:n)};_e.toInteger=_e.toint=function(){var e=this,t=e.constructor;return jt(new t(e),Qt(e)+1,t.rounding)};_e.toNumber=function(){return+this};_e.toPower=_e.pow=function(e){var t,n,r,l,o,u,c=this,h=c.constructor,m=12,v=+(e=new h(e));if(!e.s)return new h(Cr);if(c=new h(c),!c.s){if(e.s<1)throw Error(Zr+"Infinity");return c}if(c.eq(Cr))return c;if(r=h.precision,e.eq(Cr))return jt(c,r);if(t=e.e,n=e.d.length-1,u=t>=n,o=c.s,u){if((n=v<0?-v:v)<=lk){for(l=new h(Cr),t=Math.ceil(r/Nt+4),Dt=!1;n%2&&(l=l.times(c),zN(l.d,t)),n=Qu(n/2),n!==0;)c=c.times(c),zN(c.d,t);return Dt=!0,e.s<0?new h(Cr).div(l):jt(l,r)}}else if(o<0)throw Error(Zr+"NaN");return o=o<0&&e.d[Math.max(t,n)]&1?-1:1,c.s=1,Dt=!1,l=e.times(Pf(c,r+m)),Dt=!0,l=sk(l),l.s=o,l};_e.toPrecision=function(e,t){var n,r,l=this,o=l.constructor;return e===void 0?(n=Qt(l),r=Ko(l,n<=o.toExpNeg||n>=o.toExpPos)):(Vi(e,1,Xu),t===void 0?t=o.rounding:Vi(t,0,8),l=jt(new o(l),e,t),n=Qt(l),r=Ko(l,e<=n||n<=o.toExpNeg,e)),r};_e.toSignificantDigits=_e.tosd=function(e,t){var n=this,r=n.constructor;return e===void 0?(e=r.precision,t=r.rounding):(Vi(e,1,Xu),t===void 0?t=r.rounding:Vi(t,0,8)),jt(new r(n),e,t)};_e.toString=_e.valueOf=_e.val=_e.toJSON=_e[Symbol.for("nodejs.util.inspect.custom")]=function(){var e=this,t=Qt(e),n=e.constructor;return Ko(e,t<=n.toExpNeg||t>=n.toExpPos)};function ok(e,t){var n,r,l,o,u,c,h,m,v=e.constructor,g=v.precision;if(!e.s||!t.s)return t.s||(t=new v(e)),Dt?jt(t,g):t;if(h=e.d,m=t.d,u=e.e,l=t.e,h=h.slice(),o=u-l,o){for(o<0?(r=h,o=-o,c=m.length):(r=m,l=u,c=h.length),u=Math.ceil(g/Nt),c=u>c?u+1:c+1,o>c&&(o=c,r.length=1),r.reverse();o--;)r.push(0);r.reverse()}for(c=h.length,o=m.length,c-o<0&&(o=c,r=m,m=h,h=r),n=0;o;)n=(h[--o]=h[o]+m[o]+n)/mn|0,h[o]%=mn;for(n&&(h.unshift(n),++l),c=h.length;h[--c]==0;)h.pop();return t.d=h,t.e=l,Dt?jt(t,g):t}function Vi(e,t,n){if(e!==~~e||en)throw Error(Lo+e)}function Ii(e){var t,n,r,l=e.length-1,o="",u=e[0];if(l>0){for(o+=u,t=1;tu?1:-1;else for(c=h=0;cl[c]?1:-1;break}return h}function n(r,l,o){for(var u=0;o--;)r[o]-=u,u=r[o]1;)r.shift()}return function(r,l,o,u){var c,h,m,v,g,x,S,w,j,C,E,N,O,T,R,A,D,k,I=r.constructor,P=r.s==l.s?1:-1,B=r.d,F=l.d;if(!r.s)return new I(r);if(!l.s)throw Error(Zr+"Division by zero");for(h=r.e-l.e,D=F.length,R=B.length,S=new I(P),w=S.d=[],m=0;F[m]==(B[m]||0);)++m;if(F[m]>(B[m]||0)&&--h,o==null?N=o=I.precision:u?N=o+(Qt(r)-Qt(l))+1:N=o,N<0)return new I(0);if(N=N/Nt+2|0,m=0,D==1)for(v=0,F=F[0],N++;(m1&&(F=e(F,v),B=e(B,v),D=F.length,R=B.length),T=D,j=B.slice(0,D),C=j.length;C=mn/2&&++A;do v=0,c=t(F,j,D,C),c<0?(E=j[0],D!=C&&(E=E*mn+(j[1]||0)),v=E/A|0,v>1?(v>=mn&&(v=mn-1),g=e(F,v),x=g.length,C=j.length,c=t(g,j,x,C),c==1&&(v--,n(g,D16)throw Error(e1+Qt(e));if(!e.s)return new v(Cr);for(Dt=!1,c=g,u=new v(.03125);e.abs().gte(.1);)e=e.times(u),m+=5;for(r=Math.log(xo(2,m))/Math.LN10*2+5|0,c+=r,n=l=o=new v(Cr),v.precision=c;;){if(l=jt(l.times(e),c),n=n.times(++h),u=o.plus(Sa(l,n,c)),Ii(u.d).slice(0,c)===Ii(o.d).slice(0,c)){for(;m--;)o=jt(o.times(o),c);return v.precision=g,t==null?(Dt=!0,jt(o,g)):o}o=u}}function Qt(e){for(var t=e.e*Nt,n=e.d[0];n>=10;n/=10)t++;return t}function Fx(e,t,n){if(t>e.LN10.sd())throw Dt=!0,n&&(e.precision=n),Error(Zr+"LN10 precision limit exceeded");return jt(new e(e.LN10),t)}function yl(e){for(var t="";e--;)t+="0";return t}function Pf(e,t){var n,r,l,o,u,c,h,m,v,g=1,x=10,S=e,w=S.d,j=S.constructor,C=j.precision;if(S.s<1)throw Error(Zr+(S.s?"NaN":"-Infinity"));if(S.eq(Cr))return new j(0);if(t==null?(Dt=!1,m=C):m=t,S.eq(10))return t==null&&(Dt=!0),Fx(j,m);if(m+=x,j.precision=m,n=Ii(w),r=n.charAt(0),o=Qt(S),Math.abs(o)<15e14){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)S=S.times(e),n=Ii(S.d),r=n.charAt(0),g++;o=Qt(S),r>1?(S=new j("0."+n),o++):S=new j(r+"."+n.slice(1))}else return h=Fx(j,m+2,C).times(o+""),S=Pf(new j(r+"."+n.slice(1)),m-x).plus(h),j.precision=C,t==null?(Dt=!0,jt(S,C)):S;for(c=u=S=Sa(S.minus(Cr),S.plus(Cr),m),v=jt(S.times(S),m),l=3;;){if(u=jt(u.times(v),m),h=c.plus(Sa(u,new j(l),m)),Ii(h.d).slice(0,m)===Ii(c.d).slice(0,m))return c=c.times(2),o!==0&&(c=c.plus(Fx(j,m+2,C).times(o+""))),c=Sa(c,new j(g),m),j.precision=C,t==null?(Dt=!0,jt(c,C)):c;c=h,l+=2}}function IN(e,t){var n,r,l;for((n=t.indexOf("."))>-1&&(t=t.replace(".","")),(r=t.search(/e/i))>0?(n<0&&(n=r),n+=+t.slice(r+1),t=t.substring(0,r)):n<0&&(n=t.length),r=0;t.charCodeAt(r)===48;)++r;for(l=t.length;t.charCodeAt(l-1)===48;)--l;if(t=t.slice(r,l),t){if(l-=r,n=n-r-1,e.e=Qu(n/Nt),e.d=[],r=(n+1)%Nt,n<0&&(r+=Nt),rov||e.e<-ov))throw Error(e1+n)}else e.s=0,e.e=0,e.d=[0];return e}function jt(e,t,n){var r,l,o,u,c,h,m,v,g=e.d;for(u=1,o=g[0];o>=10;o/=10)u++;if(r=t-u,r<0)r+=Nt,l=t,m=g[v=0];else{if(v=Math.ceil((r+1)/Nt),o=g.length,v>=o)return e;for(m=o=g[v],u=1;o>=10;o/=10)u++;r%=Nt,l=r-Nt+u}if(n!==void 0&&(o=xo(10,u-l-1),c=m/o%10|0,h=t<0||g[v+1]!==void 0||m%o,h=n<4?(c||h)&&(n==0||n==(e.s<0?3:2)):c>5||c==5&&(n==4||h||n==6&&(r>0?l>0?m/xo(10,u-l):0:g[v-1])%10&1||n==(e.s<0?8:7))),t<1||!g[0])return h?(o=Qt(e),g.length=1,t=t-o-1,g[0]=xo(10,(Nt-t%Nt)%Nt),e.e=Qu(-t/Nt)||0):(g.length=1,g[0]=e.e=e.s=0),e;if(r==0?(g.length=v,o=1,v--):(g.length=v+1,o=xo(10,Nt-r),g[v]=l>0?(m/xo(10,u-l)%xo(10,l)|0)*o:0),h)for(;;)if(v==0){(g[0]+=o)==mn&&(g[0]=1,++e.e);break}else{if(g[v]+=o,g[v]!=mn)break;g[v--]=0,o=1}for(r=g.length;g[--r]===0;)g.pop();if(Dt&&(e.e>ov||e.e<-ov))throw Error(e1+Qt(e));return e}function uk(e,t){var n,r,l,o,u,c,h,m,v,g,x=e.constructor,S=x.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new x(e),Dt?jt(t,S):t;if(h=e.d,g=t.d,r=t.e,m=e.e,h=h.slice(),u=m-r,u){for(v=u<0,v?(n=h,u=-u,c=g.length):(n=g,r=m,c=h.length),l=Math.max(Math.ceil(S/Nt),c)+2,u>l&&(u=l,n.length=1),n.reverse(),l=u;l--;)n.push(0);n.reverse()}else{for(l=h.length,c=g.length,v=l0;--l)h[c++]=0;for(l=g.length;l>u;){if(h[--l]0?o=o.charAt(0)+"."+o.slice(1)+yl(r):u>1&&(o=o.charAt(0)+"."+o.slice(1)),o=o+(l<0?"e":"e+")+l):l<0?(o="0."+yl(-l-1)+o,n&&(r=n-u)>0&&(o+=yl(r))):l>=u?(o+=yl(l+1-u),n&&(r=n-l-1)>0&&(o=o+"."+yl(r))):((r=l+1)0&&(l+1===u&&(o+="."),o+=yl(r))),e.s<0?"-"+o:o}function zN(e,t){if(e.length>t)return e.length=t,!0}function ck(e){var t,n,r;function l(o){var u=this;if(!(u instanceof l))return new l(o);if(u.constructor=l,o instanceof l){u.s=o.s,u.e=o.e,u.d=(o=o.d)?o.slice():o;return}if(typeof o=="number"){if(o*0!==0)throw Error(Lo+o);if(o>0)u.s=1;else if(o<0)o=-o,u.s=-1;else{u.s=0,u.e=0,u.d=[0];return}if(o===~~o&&o<1e7){u.e=0,u.d=[o];return}return IN(u,o.toString())}else if(typeof o!="string")throw Error(Lo+o);if(o.charCodeAt(0)===45?(o=o.slice(1),u.s=-1):u.s=1,Yq.test(o))IN(u,o);else throw Error(Lo+o)}if(l.prototype=_e,l.ROUND_UP=0,l.ROUND_DOWN=1,l.ROUND_CEIL=2,l.ROUND_FLOOR=3,l.ROUND_HALF_UP=4,l.ROUND_HALF_DOWN=5,l.ROUND_HALF_EVEN=6,l.ROUND_HALF_CEIL=7,l.ROUND_HALF_FLOOR=8,l.clone=ck,l.config=l.set=Xq,e===void 0&&(e={}),e)for(r=["precision","rounding","toExpNeg","toExpPos","LN10"],t=0;t=l[t+1]&&r<=l[t+2])this[n]=r;else throw Error(Lo+n+": "+r);if((r=e[n="LN10"])!==void 0)if(r==Math.LN10)this[n]=new this(r);else throw Error(Lo+n+": "+r);return this}var t1=ck(Kq);Cr=new t1(1);const et=t1;function fk(e){var t;return e===0?t=1:t=Math.floor(new et(e).abs().log(10).toNumber())+1,t}function dk(e,t,n){for(var r=new et(e),l=0,o=[];r.lt(t)&&l<1e5;)o.push(r.toNumber()),r=r.add(n),l++;return o}function kf(e,t){return Jq(e)||Wq(e,t)||Zq(e,t)||Qq()}function Qq(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Zq(e,t){if(e){if(typeof e=="string")return LN(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?LN(e,t):void 0}}function LN(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{var t=kf(e,2),n=t[0],r=t[1],l=n,o=r;return n>r&&(l=r,o=n),[l,o]},n1=(e,t,n)=>{if(e.lte(0))return new et(0);var r=fk(e.toNumber()),l=new et(10).pow(r),o=e.div(l),u=r!==1?.05:.1,c=new et(Math.ceil(o.div(u).toNumber())).add(n).mul(u),h=c.mul(l);return t?new et(h.toNumber()):new et(Math.ceil(h.toNumber()))},mk=(e,t,n)=>{var r;if(e.lte(0))return new et(0);var l=[1,2,2.5,5],o=e.toNumber(),u=Math.floor(new et(o).abs().log(10).toNumber()),c=new et(10).pow(u),h=e.div(c).toNumber(),m=l.findIndex(S=>S>=h-1e-10);if(m===-1&&(c=c.mul(10),m=0),m+=n,m>=l.length){var v=Math.floor(m/l.length);m%=l.length,c=c.mul(new et(10).pow(v))}var g=(r=l[m])!==null&&r!==void 0?r:1,x=new et(g).mul(c);return t?x:new et(Math.ceil(x.toNumber()))},eK=(e,t,n)=>{var r=new et(1),l=new et(e);if(!l.isint()&&n){var o=Math.abs(e);o<1?(r=new et(10).pow(fk(e)-1),l=new et(Math.floor(l.div(r).toNumber())).mul(r)):o>1&&(l=new et(Math.floor(e)))}else e===0?l=new et(Math.floor((t-1)/2)):n||(l=new et(Math.floor(e)));for(var u=Math.floor((t-1)/2),c=[],h=0;h4&&arguments[4]!==void 0?arguments[4]:0,u=arguments.length>5&&arguments[5]!==void 0?arguments[5]:n1;if(!Number.isFinite((n-t)/(r-1)))return{step:new et(0),tickMin:new et(0),tickMax:new et(0)};var c=u(new et(n).sub(t).div(r-1),l,o),h;t<=0&&n>=0?h=new et(0):(h=new et(t).add(n).div(2),h=h.sub(new et(h).mod(c)));var m=Math.ceil(h.sub(t).div(c).toNumber()),v=Math.ceil(new et(n).sub(h).div(c).toNumber()),g=m+v+1;return g>r?vk(t,n,r,l,o+1,u):(g0?v+(r-g):v,m=n>0?m:m+(r-g)),{step:c,tickMin:h.sub(new et(m).mul(c)),tickMax:h.add(new et(v).mul(c))})},UN=function(t){var n=kf(t,2),r=n[0],l=n[1],o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:6,u=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,c=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"auto",h=Math.max(o,2),m=hk([r,l]),v=kf(m,2),g=v[0],x=v[1];if(g===-1/0||x===1/0){var S=x===1/0?[g,...Array(o-1).fill(1/0)]:[...Array(o-1).fill(-1/0),x];return r>l?S.reverse():S}if(g===x)return eK(g,o,u);var w=c==="snap125"?mk:n1,j=vk(g,x,h,u,0,w),C=j.step,E=j.tickMin,N=j.tickMax,O=dk(E,N.add(new et(.1).mul(C)),C);return r>l?O.reverse():O},$N=function(t,n){var r=kf(t,2),l=r[0],o=r[1],u=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,c=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"auto",h=hk([l,o]),m=kf(h,2),v=m[0],g=m[1];if(v===-1/0||g===1/0)return[l,o];if(v===g)return[v];var x=c==="snap125"?mk:n1,S=Math.max(n,2),w=x(new et(g).sub(v).div(S-1),u,0),j=[...dk(new et(v),new et(g),w),g];if(u===!1){j=j.map(E=>Math.round(E));var C=j.length-1;C>0&&j[C]===j[C-1]&&(j=j.slice(0,C))}return l>o?j.reverse():j},tK=e=>e.rootProps.barCategoryGap,ag=e=>e.rootProps.stackOffset,gk=e=>e.rootProps.reverseStackOrder,r1=e=>e.options.chartName,i1=e=>e.rootProps.syncId,pk=e=>e.rootProps.syncMethod,a1=e=>e.options.eventEmitter,Qn={grid:-100,barBackground:-50,area:100,cursorRectangle:200,bar:300,line:400,axis:500,scatter:600,activeBar:1e3,cursorLine:1100,activeDot:1200,label:2e3},mo={allowDecimals:!1,allowDataOverflow:!1,angleAxisId:0,reversed:!1,scale:"auto",tick:!0,type:"auto"},Oi={allowDataOverflow:!1,allowDecimals:!1,allowDuplicatedCategory:!0,includeHidden:!1,radiusAxisId:0,reversed:!1,scale:"auto",tick:!0,tickCount:5,type:"auto"},lg=(e,t)=>{if(!(!e||!t))return e!=null&&e.reversed?[t[1],t[0]]:t};function og(e,t,n){if(n!=="auto")return n;if(e!=null)return Ra(e,t)?"category":"number"}function BN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function sv(e){for(var t=1;t{if(t!=null)return e.polarAxis.angleAxis[t]},l1=W([aK,GP],(e,t)=>{var n;if(e!=null)return e;var r=(n=og(t,"angleAxis",HN.type))!==null&&n!==void 0?n:"category";return sv(sv({},HN),{},{type:r})}),lK=(e,t)=>e.polarAxis.radiusAxis[t],o1=W([lK,GP],(e,t)=>{var n;if(e!=null)return e;var r=(n=og(t,"radiusAxis",FN.type))!==null&&n!==void 0?n:"category";return sv(sv({},FN),{},{type:r})}),sg=e=>e.polarOptions,s1=W([Ma,Da,Pn],Oq),yk=W([sg,s1],(e,t)=>{if(e!=null)return Pl(e.innerRadius,t,0)}),xk=W([sg,s1],(e,t)=>{if(e!=null)return Pl(e.outerRadius,t,t*.8)}),oK=e=>{if(e==null)return[0,0];var t=e.startAngle,n=e.endAngle;return[t,n]},bk=W([sg],oK);W([l1,bk],lg);var Sk=W([s1,yk,xk],(e,t,n)=>{if(!(e==null||t==null||n==null))return[t,n]});W([o1,Sk],lg);var wk=W([It,sg,yk,xk,Ma,Da],(e,t,n,r,l,o)=>{if(!(e!=="centric"&&e!=="radial"||t==null||n==null||r==null)){var u=t.cx,c=t.cy,h=t.startAngle,m=t.endAngle;return{cx:Pl(u,l,l/2),cy:Pl(c,o,o/2),innerRadius:n,outerRadius:r,startAngle:h,endAngle:m,clockWise:!1}}}),xn=(e,t)=>t,ug=(e,t,n)=>n;function jk(e){return e==null?void 0:e.id}function Ck(e,t,n){var r=t.chartData,l=r===void 0?[]:r,o=n.allowDuplicatedCategory,u=n.dataKey,c=new Map;return e.forEach(h=>{var m,v=(m=h.data)!==null&&m!==void 0?m:l;if(!(v==null||v.length===0)){var g=jk(h);v.forEach((x,S)=>{var w=u==null||o?S:String(pn(x,u,null)),j=pn(x,h.dataKey,0),C;c.has(w)?C=c.get(w):C={},Object.assign(C,{[g]:j}),c.set(w,C)})}}),Array.from(c.values())}function u1(e){return"stackId"in e&&e.stackId!=null&&e.dataKey!=null}var od=(e,t)=>e===t?!0:e==null||t==null?!1:e[0]===t[0]&&e[1]===t[1];function cg(e,t){return Array.isArray(e)&&Array.isArray(t)&&e.length===0&&t.length===0?!0:e===t}function sK(e,t){if(e.length===t.length){for(var n=0;n{var t=It(e);return t==="horizontal"?"xAxis":t==="vertical"?"yAxis":t==="centric"?"angleAxis":"radiusAxis"},Zu=e=>e.tooltip.settings.axisId;function c1(e){if(e!=null){var t=e.ticks,n=e.bandwidth,r=e.range(),l=[Math.min(...r),Math.max(...r)];return{domain:()=>e.domain(),range:(function(o){function u(){return o.apply(this,arguments)}return u.toString=function(){return o.toString()},u})(()=>l),rangeMin:()=>l[0],rangeMax:()=>l[1],isInRange(o){var u=l[0],c=l[1];return u<=c?o>=u&&o<=c:o>=c&&o<=u},bandwidth:n?()=>n.call(e):void 0,ticks:t?o=>t.call(e,o):void 0,map:(o,u)=>{var c=e(o);if(c!=null){if(e.bandwidth&&u!==null&&u!==void 0&&u.position){var h=e.bandwidth();switch(u.position){case"middle":c+=h/2;break;case"end":c+=h;break}}return c}}}}}var uK=(e,t)=>{if(t!=null)switch(e){case"linear":{if(!Li(t)){for(var n,r,l=0;lr)&&(r=o))}return n!==void 0&&r!==void 0?[n,r]:void 0}return t}default:return t}};function Tl(e,t){return e==null||t==null?NaN:et?1:e>=t?0:NaN}function cK(e,t){return e==null||t==null?NaN:te?1:t>=e?0:NaN}function f1(e){let t,n,r;e.length!==2?(t=Tl,n=(c,h)=>Tl(e(c),h),r=(c,h)=>e(c)-h):(t=e===Tl||e===cK?e:fK,n=e,r=e);function l(c,h,m=0,v=c.length){if(m>>1;n(c[g],h)<0?m=g+1:v=g}while(m>>1;n(c[g],h)<=0?m=g+1:v=g}while(mm&&r(c[g-1],h)>-r(c[g],h)?g-1:g}return{left:l,center:u,right:o}}function fK(){return 0}function _k(e){return e===null?NaN:+e}function*dK(e,t){for(let n of e)n!=null&&(n=+n)>=n&&(yield n)}const hK=f1(Tl),sd=hK.right;f1(_k).center;class VN extends Map{constructor(t,n=gK){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:n}}),t!=null)for(const[r,l]of t)this.set(r,l)}get(t){return super.get(GN(this,t))}has(t){return super.has(GN(this,t))}set(t,n){return super.set(mK(this,t),n)}delete(t){return super.delete(vK(this,t))}}function GN({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):n}function mK({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):(e.set(r,n),n)}function vK({_intern:e,_key:t},n){const r=t(n);return e.has(r)&&(n=e.get(r),e.delete(r)),n}function gK(e){return e!==null&&typeof e=="object"?e.valueOf():e}function pK(e=Tl){if(e===Tl)return Ek;if(typeof e!="function")throw new TypeError("compare is not a function");return(t,n)=>{const r=e(t,n);return r||r===0?r:(e(n,n)===0)-(e(t,t)===0)}}function Ek(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(et?1:0)}const yK=Math.sqrt(50),xK=Math.sqrt(10),bK=Math.sqrt(2);function uv(e,t,n){const r=(t-e)/Math.max(0,n),l=Math.floor(Math.log10(r)),o=r/Math.pow(10,l),u=o>=yK?10:o>=xK?5:o>=bK?2:1;let c,h,m;return l<0?(m=Math.pow(10,-l)/u,c=Math.round(e*m),h=Math.round(t*m),c/mt&&--h,m=-m):(m=Math.pow(10,l)*u,c=Math.round(e/m),h=Math.round(t/m),c*mt&&--h),h0))return[];if(e===t)return[e];const r=t=l))return[];const c=o-l+1,h=new Array(c);if(r)if(u<0)for(let m=0;m=r)&&(n=r);return n}function KN(e,t){let n;for(const r of e)r!=null&&(n>r||n===void 0&&r>=r)&&(n=r);return n}function Ak(e,t,n=0,r=1/0,l){if(t=Math.floor(t),n=Math.floor(Math.max(0,n)),r=Math.floor(Math.min(e.length-1,r)),!(n<=t&&t<=r))return e;for(l=l===void 0?Ek:pK(l);r>n;){if(r-n>600){const h=r-n+1,m=t-n+1,v=Math.log(h),g=.5*Math.exp(2*v/3),x=.5*Math.sqrt(v*g*(h-g)/h)*(m-h/2<0?-1:1),S=Math.max(n,Math.floor(t-m*g/h+x)),w=Math.min(r,Math.floor(t+(h-m)*g/h+x));Ak(e,t,S,w,l)}const o=e[t];let u=n,c=r;for(uf(e,n,t),l(e[r],o)>0&&uf(e,n,r);u0;)--c}l(e[n],o)===0?uf(e,n,c):(++c,uf(e,c,r)),c<=t&&(n=c+1),t<=c&&(r=c-1)}return e}function uf(e,t,n){const r=e[t];e[t]=e[n],e[n]=r}function SK(e,t,n){if(e=Float64Array.from(dK(e)),!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return KN(e);if(t>=1)return qN(e);var r,l=(r-1)*t,o=Math.floor(l),u=qN(Ak(e,o).subarray(0,o+1)),c=KN(e.subarray(o+1));return u+(c-u)*(l-o)}}function wK(e,t,n=_k){if(!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return+n(e[0],0,e);if(t>=1)return+n(e[r-1],r-1,e);var r,l=(r-1)*t,o=Math.floor(l),u=+n(e[o],o,e),c=+n(e[o+1],o+1,e);return u+(c-u)*(l-o)}}function jK(e,t,n){e=+e,t=+t,n=(l=arguments.length)<2?(t=e,e=0,1):l<3?1:+n;for(var r=-1,l=Math.max(0,Math.ceil((t-e)/n))|0,o=new Array(l);++r>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?fm(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?fm(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=_K.exec(e))?new gn(t[1],t[2],t[3],1):(t=EK.exec(e))?new gn(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=AK.exec(e))?fm(t[1],t[2],t[3],t[4]):(t=OK.exec(e))?fm(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=NK.exec(e))?e2(t[1],t[2]/100,t[3]/100,1):(t=TK.exec(e))?e2(t[1],t[2]/100,t[3]/100,t[4]):YN.hasOwnProperty(e)?ZN(YN[e]):e==="transparent"?new gn(NaN,NaN,NaN,0):null}function ZN(e){return new gn(e>>16&255,e>>8&255,e&255,1)}function fm(e,t,n,r){return r<=0&&(e=t=n=NaN),new gn(e,t,n,r)}function d1(e){return e instanceof $l||(e=zf(e)),e?(e=e.rgb(),new gn(e.r,e.g,e.b,e.opacity)):new gn}function Sb(e,t,n,r){return arguments.length===1?d1(e):new gn(e,t,n,r??1)}function gn(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}Wu(gn,Sb,ud($l,{brighter(e){return e=e==null?Iu:Math.pow(Iu,e),new gn(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Yo:Math.pow(Yo,e),new gn(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new gn(Uo(this.r),Uo(this.g),Uo(this.b),cv(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:WN,formatHex:WN,formatHex8:DK,formatRgb:JN,toString:JN}));function WN(){return`#${jo(this.r)}${jo(this.g)}${jo(this.b)}`}function DK(){return`#${jo(this.r)}${jo(this.g)}${jo(this.b)}${jo((isNaN(this.opacity)?1:this.opacity)*255)}`}function JN(){const e=cv(this.opacity);return`${e===1?"rgb(":"rgba("}${Uo(this.r)}, ${Uo(this.g)}, ${Uo(this.b)}${e===1?")":`, ${e})`}`}function cv(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Uo(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function jo(e){return e=Uo(e),(e<16?"0":"")+e.toString(16)}function e2(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new ui(e,t,n,r)}function Ok(e){if(e instanceof ui)return new ui(e.h,e.s,e.l,e.opacity);if(e instanceof $l||(e=zf(e)),!e)return new ui;if(e instanceof ui)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,l=Math.min(t,n,r),o=Math.max(t,n,r),u=NaN,c=o-l,h=(o+l)/2;return c?(t===o?u=(n-r)/c+(n0&&h<1?0:u,new ui(u,c,h,e.opacity)}function PK(e,t,n,r){return arguments.length===1?Ok(e):new ui(e,t,n,r??1)}function ui(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}Wu(ui,PK,ud($l,{brighter(e){return e=e==null?Iu:Math.pow(Iu,e),new ui(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Yo:Math.pow(Yo,e),new ui(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,l=2*n-r;return new gn(Vx(e>=240?e-240:e+120,l,r),Vx(e,l,r),Vx(e<120?e+240:e-120,l,r),this.opacity)},clamp(){return new ui(t2(this.h),dm(this.s),dm(this.l),cv(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=cv(this.opacity);return`${e===1?"hsl(":"hsla("}${t2(this.h)}, ${dm(this.s)*100}%, ${dm(this.l)*100}%${e===1?")":`, ${e})`}`}}));function t2(e){return e=(e||0)%360,e<0?e+360:e}function dm(e){return Math.max(0,Math.min(1,e||0))}function Vx(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}const Nk=Math.PI/180,Tk=180/Math.PI,fv=18,Rk=.96422,Mk=1,Dk=.82521,Pk=4/29,gu=6/29,kk=3*gu*gu,kK=gu*gu*gu;function Ik(e){if(e instanceof $i)return new $i(e.l,e.a,e.b,e.opacity);if(e instanceof ya)return zk(e);e instanceof gn||(e=d1(e));var t=Yx(e.r),n=Yx(e.g),r=Yx(e.b),l=Gx((.2225045*t+.7168786*n+.0606169*r)/Mk),o,u;return t===n&&n===r?o=u=l:(o=Gx((.4360747*t+.3850649*n+.1430804*r)/Rk),u=Gx((.0139322*t+.0971045*n+.7141733*r)/Dk)),new $i(116*l-16,500*(o-l),200*(l-u),e.opacity)}function IK(e,t,n,r){return arguments.length===1?Ik(e):new $i(e,t,n,r??1)}function $i(e,t,n,r){this.l=+e,this.a=+t,this.b=+n,this.opacity=+r}Wu($i,IK,ud($l,{brighter(e){return new $i(this.l+fv*(e??1),this.a,this.b,this.opacity)},darker(e){return new $i(this.l-fv*(e??1),this.a,this.b,this.opacity)},rgb(){var e=(this.l+16)/116,t=isNaN(this.a)?e:e+this.a/500,n=isNaN(this.b)?e:e-this.b/200;return t=Rk*qx(t),e=Mk*qx(e),n=Dk*qx(n),new gn(Kx(3.1338561*t-1.6168667*e-.4906146*n),Kx(-.9787684*t+1.9161415*e+.033454*n),Kx(.0719453*t-.2289914*e+1.4052427*n),this.opacity)}}));function Gx(e){return e>kK?Math.pow(e,1/3):e/kk+Pk}function qx(e){return e>gu?e*e*e:kk*(e-Pk)}function Kx(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function Yx(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function zK(e){if(e instanceof ya)return new ya(e.h,e.c,e.l,e.opacity);if(e instanceof $i||(e=Ik(e)),e.a===0&&e.b===0)return new ya(NaN,0()=>e;function Uk(e,t){return function(n){return e+n*t}}function $K(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(r){return Math.pow(e+r*t,n)}}function BK(e,t){var n=t-e;return n?Uk(e,n>180||n<-180?n-360*Math.round(n/360):n):dg(isNaN(e)?t:e)}function HK(e){return(e=+e)==1?pu:function(t,n){return n-t?$K(t,n,e):dg(isNaN(t)?n:t)}}function pu(e,t){var n=t-e;return n?Uk(e,n):dg(isNaN(e)?t:e)}var a2=(function e(t){var n=HK(t);function r(l,o){var u=n((l=Sb(l)).r,(o=Sb(o)).r),c=n(l.g,o.g),h=n(l.b,o.b),m=pu(l.opacity,o.opacity);return function(v){return l.r=u(v),l.g=c(v),l.b=h(v),l.opacity=m(v),l+""}}return r.gamma=e,r})(1);function FK(e,t){t||(t=[]);var n=e?Math.min(t.length,e.length):0,r=t.slice(),l;return function(o){for(l=0;ln&&(o=t.slice(n,o),c[u]?c[u]+=o:c[++u]=o),(r=r[0])===(l=l[0])?c[u]?c[u]+=l:c[++u]=l:(c[++u]=null,h.push({i:u,x:dv(r,l)})),n=Xx.lastIndex;return n=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)}function hv(e,t){if(!isFinite(e)||e===0)return null;var n=(e=t?e.toExponential(t-1):e.toExponential()).indexOf("e"),r=e.slice(0,n);return[r.length>1?r[0]+r.slice(2):r,+e.slice(n+1)]}function zu(e){return e=hv(Math.abs(e)),e?e[1]:NaN}function nY(e,t){return function(n,r){for(var l=n.length,o=[],u=0,c=e[0],h=0;l>0&&c>0&&(h+c+1>r&&(c=Math.max(1,r-h)),o.push(n.substring(l-=c,l+c)),!((h+=c+1)>r));)c=e[u=(u+1)%e.length];return o.reverse().join(t)}}function rY(e){return function(t){return t.replace(/[0-9]/g,function(n){return e[+n]})}}var iY=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function Uf(e){if(!(t=iY.exec(e)))throw new Error("invalid format: "+e);var t;return new g1({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}Uf.prototype=g1.prototype;function g1(e){this.fill=e.fill===void 0?" ":e.fill+"",this.align=e.align===void 0?">":e.align+"",this.sign=e.sign===void 0?"-":e.sign+"",this.symbol=e.symbol===void 0?"":e.symbol+"",this.zero=!!e.zero,this.width=e.width===void 0?void 0:+e.width,this.comma=!!e.comma,this.precision=e.precision===void 0?void 0:+e.precision,this.trim=!!e.trim,this.type=e.type===void 0?"":e.type+""}g1.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function aY(e){e:for(var t=e.length,n=1,r=-1,l;n0&&(r=0);break}return r>0?e.slice(0,r)+e.slice(l+1):e}var mv;function lY(e,t){var n=hv(e,t);if(!n)return mv=void 0,e.toPrecision(t);var r=n[0],l=n[1],o=l-(mv=Math.max(-8,Math.min(8,Math.floor(l/3)))*3)+1,u=r.length;return o===u?r:o>u?r+new Array(o-u+1).join("0"):o>0?r.slice(0,o)+"."+r.slice(o):"0."+new Array(1-o).join("0")+hv(e,Math.max(0,t+o-1))[0]}function o2(e,t){var n=hv(e,t);if(!n)return e+"";var r=n[0],l=n[1];return l<0?"0."+new Array(-l).join("0")+r:r.length>l+1?r.slice(0,l+1)+"."+r.slice(l+1):r+new Array(l-r.length+2).join("0")}var s2={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:tY,e:(e,t)=>e.toExponential(t),f:(e,t)=>e.toFixed(t),g:(e,t)=>e.toPrecision(t),o:e=>Math.round(e).toString(8),p:(e,t)=>o2(e*100,t),r:o2,s:lY,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function u2(e){return e}var c2=Array.prototype.map,f2=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function oY(e){var t=e.grouping===void 0||e.thousands===void 0?u2:nY(c2.call(e.grouping,Number),e.thousands+""),n=e.currency===void 0?"":e.currency[0]+"",r=e.currency===void 0?"":e.currency[1]+"",l=e.decimal===void 0?".":e.decimal+"",o=e.numerals===void 0?u2:rY(c2.call(e.numerals,String)),u=e.percent===void 0?"%":e.percent+"",c=e.minus===void 0?"−":e.minus+"",h=e.nan===void 0?"NaN":e.nan+"";function m(g,x){g=Uf(g);var S=g.fill,w=g.align,j=g.sign,C=g.symbol,E=g.zero,N=g.width,O=g.comma,T=g.precision,R=g.trim,A=g.type;A==="n"?(O=!0,A="g"):s2[A]||(T===void 0&&(T=12),R=!0,A="g"),(E||S==="0"&&w==="=")&&(E=!0,S="0",w="=");var D=(x&&x.prefix!==void 0?x.prefix:"")+(C==="$"?n:C==="#"&&/[boxX]/.test(A)?"0"+A.toLowerCase():""),k=(C==="$"?r:/[%p]/.test(A)?u:"")+(x&&x.suffix!==void 0?x.suffix:""),I=s2[A],P=/[defgprs%]/.test(A);T=T===void 0?6:/[gprs]/.test(A)?Math.max(1,Math.min(21,T)):Math.max(0,Math.min(20,T));function B(F){var se=D,ue=k,de,G,ne;if(A==="c")ue=I(F)+ue,F="";else{F=+F;var ie=F<0||1/F<0;if(F=isNaN(F)?h:I(Math.abs(F),T),R&&(F=aY(F)),ie&&+F==0&&j!=="+"&&(ie=!1),se=(ie?j==="("?j:c:j==="-"||j==="("?"":j)+se,ue=(A==="s"&&!isNaN(F)&&mv!==void 0?f2[8+mv/3]:"")+ue+(ie&&j==="("?")":""),P){for(de=-1,G=F.length;++dene||ne>57){ue=(ne===46?l+F.slice(de+1):F.slice(de))+ue,F=F.slice(0,de);break}}}O&&!E&&(F=t(F,1/0));var ce=se.length+F.length+ue.length,U=ce>1)+se+F+ue+U.slice(ce);break;default:F=U+se+F+ue;break}return o(F)}return B.toString=function(){return g+""},B}function v(g,x){var S=Math.max(-8,Math.min(8,Math.floor(zu(x)/3)))*3,w=Math.pow(10,-S),j=m((g=Uf(g),g.type="f",g),{suffix:f2[8+S/3]});return function(C){return j(w*C)}}return{format:m,formatPrefix:v}}var hm,p1,Bk;sY({thousands:",",grouping:[3],currency:["$",""]});function sY(e){return hm=oY(e),p1=hm.format,Bk=hm.formatPrefix,hm}function uY(e){return Math.max(0,-zu(Math.abs(e)))}function cY(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(zu(t)/3)))*3-zu(Math.abs(e)))}function fY(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,zu(t)-zu(e))+1}const Qx=new Date,Zx=new Date;function on(e,t,n,r){function l(o){return e(o=arguments.length===0?new Date:new Date(+o)),o}return l.floor=o=>(e(o=new Date(+o)),o),l.ceil=o=>(e(o=new Date(o-1)),t(o,1),e(o),o),l.round=o=>{const u=l(o),c=l.ceil(o);return o-u(t(o=new Date(+o),u==null?1:Math.floor(u)),o),l.range=(o,u,c)=>{const h=[];if(o=l.ceil(o),c=c==null?1:Math.floor(c),!(o0))return h;let m;do h.push(m=new Date(+o)),t(o,c),e(o);while(mon(u=>{if(u>=u)for(;e(u),!o(u);)u.setTime(u-1)},(u,c)=>{if(u>=u)if(c<0)for(;++c<=0;)for(;t(u,-1),!o(u););else for(;--c>=0;)for(;t(u,1),!o(u););}),n&&(l.count=(o,u)=>(Qx.setTime(+o),Zx.setTime(+u),e(Qx),e(Zx),Math.floor(n(Qx,Zx))),l.every=o=>(o=Math.floor(o),!isFinite(o)||!(o>0)?null:o>1?l.filter(r?u=>r(u)%o===0:u=>l.count(0,u)%o===0):l)),l}const vv=on(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);vv.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?on(t=>{t.setTime(Math.floor(t/e)*e)},(t,n)=>{t.setTime(+t+n*e)},(t,n)=>(n-t)/e):vv);vv.range;const xa=1e3,qr=xa*60,ba=qr*60,Oa=ba*24,y1=Oa*7,d2=Oa*30,Wx=Oa*365,Co=on(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*xa)},(e,t)=>(t-e)/xa,e=>e.getUTCSeconds());Co.range;const x1=on(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*xa)},(e,t)=>{e.setTime(+e+t*qr)},(e,t)=>(t-e)/qr,e=>e.getMinutes());x1.range;const b1=on(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*qr)},(e,t)=>(t-e)/qr,e=>e.getUTCMinutes());b1.range;const S1=on(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*xa-e.getMinutes()*qr)},(e,t)=>{e.setTime(+e+t*ba)},(e,t)=>(t-e)/ba,e=>e.getHours());S1.range;const w1=on(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*ba)},(e,t)=>(t-e)/ba,e=>e.getUTCHours());w1.range;const cd=on(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*qr)/Oa,e=>e.getDate()-1);cd.range;const hg=on(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/Oa,e=>e.getUTCDate()-1);hg.range;const Hk=on(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/Oa,e=>Math.floor(e/Oa));Hk.range;function ts(e){return on(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(t,n)=>{t.setDate(t.getDate()+n*7)},(t,n)=>(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*qr)/y1)}const mg=ts(0),gv=ts(1),dY=ts(2),hY=ts(3),Lu=ts(4),mY=ts(5),vY=ts(6);mg.range;gv.range;dY.range;hY.range;Lu.range;mY.range;vY.range;function ns(e){return on(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCDate(t.getUTCDate()+n*7)},(t,n)=>(n-t)/y1)}const vg=ns(0),pv=ns(1),gY=ns(2),pY=ns(3),Uu=ns(4),yY=ns(5),xY=ns(6);vg.range;pv.range;gY.range;pY.range;Uu.range;yY.range;xY.range;const j1=on(e=>{e.setDate(1),e.setHours(0,0,0,0)},(e,t)=>{e.setMonth(e.getMonth()+t)},(e,t)=>t.getMonth()-e.getMonth()+(t.getFullYear()-e.getFullYear())*12,e=>e.getMonth());j1.range;const C1=on(e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)},(e,t)=>t.getUTCMonth()-e.getUTCMonth()+(t.getUTCFullYear()-e.getUTCFullYear())*12,e=>e.getUTCMonth());C1.range;const Na=on(e=>{e.setMonth(0,1),e.setHours(0,0,0,0)},(e,t)=>{e.setFullYear(e.getFullYear()+t)},(e,t)=>t.getFullYear()-e.getFullYear(),e=>e.getFullYear());Na.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:on(t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)},(t,n)=>{t.setFullYear(t.getFullYear()+n*e)});Na.range;const Ta=on(e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)},(e,t)=>t.getUTCFullYear()-e.getUTCFullYear(),e=>e.getUTCFullYear());Ta.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:on(t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCFullYear(t.getUTCFullYear()+n*e)});Ta.range;function Fk(e,t,n,r,l,o){const u=[[Co,1,xa],[Co,5,5*xa],[Co,15,15*xa],[Co,30,30*xa],[o,1,qr],[o,5,5*qr],[o,15,15*qr],[o,30,30*qr],[l,1,ba],[l,3,3*ba],[l,6,6*ba],[l,12,12*ba],[r,1,Oa],[r,2,2*Oa],[n,1,y1],[t,1,d2],[t,3,3*d2],[e,1,Wx]];function c(m,v,g){const x=vC).right(u,x);if(S===u.length)return e.every(bb(m/Wx,v/Wx,g));if(S===0)return vv.every(Math.max(bb(m,v,g),1));const[w,j]=u[x/u[S-1][2]53)return null;"w"in J||(J.w=1),"Z"in J?(Ke=e0(cf(J.y,0,1)),Pe=Ke.getUTCDay(),Ke=Pe>4||Pe===0?pv.ceil(Ke):pv(Ke),Ke=hg.offset(Ke,(J.V-1)*7),J.y=Ke.getUTCFullYear(),J.m=Ke.getUTCMonth(),J.d=Ke.getUTCDate()+(J.w+6)%7):(Ke=Jx(cf(J.y,0,1)),Pe=Ke.getDay(),Ke=Pe>4||Pe===0?gv.ceil(Ke):gv(Ke),Ke=cd.offset(Ke,(J.V-1)*7),J.y=Ke.getFullYear(),J.m=Ke.getMonth(),J.d=Ke.getDate()+(J.w+6)%7)}else("W"in J||"U"in J)&&("w"in J||(J.w="u"in J?J.u%7:"W"in J?1:0),Pe="Z"in J?e0(cf(J.y,0,1)).getUTCDay():Jx(cf(J.y,0,1)).getDay(),J.m=0,J.d="W"in J?(J.w+6)%7+J.W*7-(Pe+5)%7:J.w+J.U*7-(Pe+6)%7);return"Z"in J?(J.H+=J.Z/100|0,J.M+=J.Z%100,e0(J)):Jx(J)}}function k(te,ge,oe,J){for(var ct=0,Ke=ge.length,Pe=oe.length,Tt,At;ct=Pe)return-1;if(Tt=ge.charCodeAt(ct++),Tt===37){if(Tt=ge.charAt(ct++),At=R[Tt in h2?ge.charAt(ct++):Tt],!At||(J=At(te,oe,J))<0)return-1}else if(Tt!=oe.charCodeAt(J++))return-1}return J}function I(te,ge,oe){var J=m.exec(ge.slice(oe));return J?(te.p=v.get(J[0].toLowerCase()),oe+J[0].length):-1}function P(te,ge,oe){var J=S.exec(ge.slice(oe));return J?(te.w=w.get(J[0].toLowerCase()),oe+J[0].length):-1}function B(te,ge,oe){var J=g.exec(ge.slice(oe));return J?(te.w=x.get(J[0].toLowerCase()),oe+J[0].length):-1}function F(te,ge,oe){var J=E.exec(ge.slice(oe));return J?(te.m=N.get(J[0].toLowerCase()),oe+J[0].length):-1}function se(te,ge,oe){var J=j.exec(ge.slice(oe));return J?(te.m=C.get(J[0].toLowerCase()),oe+J[0].length):-1}function ue(te,ge,oe){return k(te,t,ge,oe)}function de(te,ge,oe){return k(te,n,ge,oe)}function G(te,ge,oe){return k(te,r,ge,oe)}function ne(te){return u[te.getDay()]}function ie(te){return o[te.getDay()]}function ce(te){return h[te.getMonth()]}function U(te){return c[te.getMonth()]}function Ae(te){return l[+(te.getHours()>=12)]}function ee(te){return 1+~~(te.getMonth()/3)}function ve(te){return u[te.getUTCDay()]}function z(te){return o[te.getUTCDay()]}function Y(te){return h[te.getUTCMonth()]}function le(te){return c[te.getUTCMonth()]}function fe(te){return l[+(te.getUTCHours()>=12)]}function De(te){return 1+~~(te.getUTCMonth()/3)}return{format:function(te){var ge=A(te+="",O);return ge.toString=function(){return te},ge},parse:function(te){var ge=D(te+="",!1);return ge.toString=function(){return te},ge},utcFormat:function(te){var ge=A(te+="",T);return ge.toString=function(){return te},ge},utcParse:function(te){var ge=D(te+="",!0);return ge.toString=function(){return te},ge}}}var h2={"-":"",_:" ",0:"0"},Sn=/^\s*\d+/,_Y=/^%/,EY=/[\\^$*+?|[\]().{}]/g;function lt(e,t,n){var r=e<0?"-":"",l=(r?-e:e)+"",o=l.length;return r+(o[t.toLowerCase(),n]))}function OY(e,t,n){var r=Sn.exec(t.slice(n,n+1));return r?(e.w=+r[0],n+r[0].length):-1}function NY(e,t,n){var r=Sn.exec(t.slice(n,n+1));return r?(e.u=+r[0],n+r[0].length):-1}function TY(e,t,n){var r=Sn.exec(t.slice(n,n+2));return r?(e.U=+r[0],n+r[0].length):-1}function RY(e,t,n){var r=Sn.exec(t.slice(n,n+2));return r?(e.V=+r[0],n+r[0].length):-1}function MY(e,t,n){var r=Sn.exec(t.slice(n,n+2));return r?(e.W=+r[0],n+r[0].length):-1}function m2(e,t,n){var r=Sn.exec(t.slice(n,n+4));return r?(e.y=+r[0],n+r[0].length):-1}function v2(e,t,n){var r=Sn.exec(t.slice(n,n+2));return r?(e.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function DY(e,t,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(n,n+6));return r?(e.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function PY(e,t,n){var r=Sn.exec(t.slice(n,n+1));return r?(e.q=r[0]*3-3,n+r[0].length):-1}function kY(e,t,n){var r=Sn.exec(t.slice(n,n+2));return r?(e.m=r[0]-1,n+r[0].length):-1}function g2(e,t,n){var r=Sn.exec(t.slice(n,n+2));return r?(e.d=+r[0],n+r[0].length):-1}function IY(e,t,n){var r=Sn.exec(t.slice(n,n+3));return r?(e.m=0,e.d=+r[0],n+r[0].length):-1}function p2(e,t,n){var r=Sn.exec(t.slice(n,n+2));return r?(e.H=+r[0],n+r[0].length):-1}function zY(e,t,n){var r=Sn.exec(t.slice(n,n+2));return r?(e.M=+r[0],n+r[0].length):-1}function LY(e,t,n){var r=Sn.exec(t.slice(n,n+2));return r?(e.S=+r[0],n+r[0].length):-1}function UY(e,t,n){var r=Sn.exec(t.slice(n,n+3));return r?(e.L=+r[0],n+r[0].length):-1}function $Y(e,t,n){var r=Sn.exec(t.slice(n,n+6));return r?(e.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function BY(e,t,n){var r=_Y.exec(t.slice(n,n+1));return r?n+r[0].length:-1}function HY(e,t,n){var r=Sn.exec(t.slice(n));return r?(e.Q=+r[0],n+r[0].length):-1}function FY(e,t,n){var r=Sn.exec(t.slice(n));return r?(e.s=+r[0],n+r[0].length):-1}function y2(e,t){return lt(e.getDate(),t,2)}function VY(e,t){return lt(e.getHours(),t,2)}function GY(e,t){return lt(e.getHours()%12||12,t,2)}function qY(e,t){return lt(1+cd.count(Na(e),e),t,3)}function Vk(e,t){return lt(e.getMilliseconds(),t,3)}function KY(e,t){return Vk(e,t)+"000"}function YY(e,t){return lt(e.getMonth()+1,t,2)}function XY(e,t){return lt(e.getMinutes(),t,2)}function QY(e,t){return lt(e.getSeconds(),t,2)}function ZY(e){var t=e.getDay();return t===0?7:t}function WY(e,t){return lt(mg.count(Na(e)-1,e),t,2)}function Gk(e){var t=e.getDay();return t>=4||t===0?Lu(e):Lu.ceil(e)}function JY(e,t){return e=Gk(e),lt(Lu.count(Na(e),e)+(Na(e).getDay()===4),t,2)}function eX(e){return e.getDay()}function tX(e,t){return lt(gv.count(Na(e)-1,e),t,2)}function nX(e,t){return lt(e.getFullYear()%100,t,2)}function rX(e,t){return e=Gk(e),lt(e.getFullYear()%100,t,2)}function iX(e,t){return lt(e.getFullYear()%1e4,t,4)}function aX(e,t){var n=e.getDay();return e=n>=4||n===0?Lu(e):Lu.ceil(e),lt(e.getFullYear()%1e4,t,4)}function lX(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+lt(t/60|0,"0",2)+lt(t%60,"0",2)}function x2(e,t){return lt(e.getUTCDate(),t,2)}function oX(e,t){return lt(e.getUTCHours(),t,2)}function sX(e,t){return lt(e.getUTCHours()%12||12,t,2)}function uX(e,t){return lt(1+hg.count(Ta(e),e),t,3)}function qk(e,t){return lt(e.getUTCMilliseconds(),t,3)}function cX(e,t){return qk(e,t)+"000"}function fX(e,t){return lt(e.getUTCMonth()+1,t,2)}function dX(e,t){return lt(e.getUTCMinutes(),t,2)}function hX(e,t){return lt(e.getUTCSeconds(),t,2)}function mX(e){var t=e.getUTCDay();return t===0?7:t}function vX(e,t){return lt(vg.count(Ta(e)-1,e),t,2)}function Kk(e){var t=e.getUTCDay();return t>=4||t===0?Uu(e):Uu.ceil(e)}function gX(e,t){return e=Kk(e),lt(Uu.count(Ta(e),e)+(Ta(e).getUTCDay()===4),t,2)}function pX(e){return e.getUTCDay()}function yX(e,t){return lt(pv.count(Ta(e)-1,e),t,2)}function xX(e,t){return lt(e.getUTCFullYear()%100,t,2)}function bX(e,t){return e=Kk(e),lt(e.getUTCFullYear()%100,t,2)}function SX(e,t){return lt(e.getUTCFullYear()%1e4,t,4)}function wX(e,t){var n=e.getUTCDay();return e=n>=4||n===0?Uu(e):Uu.ceil(e),lt(e.getUTCFullYear()%1e4,t,4)}function jX(){return"+0000"}function b2(){return"%"}function S2(e){return+e}function w2(e){return Math.floor(+e/1e3)}var Js,Yk,_1,Xk;CX({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function CX(e){return Js=CY(e),Yk=Js.format,Js.parse,_1=Js.utcFormat,Xk=Js.utcParse,Js}var Qk="%Y-%m-%dT%H:%M:%S.%LZ";function _X(e){return e.toISOString()}Date.prototype.toISOString||_1(Qk);function EX(e){var t=new Date(e);return isNaN(t)?null:t}+new Date("2000-01-01T00:00:00.000Z")||Xk(Qk);function Wr(e,t){switch(arguments.length){case 0:break;case 1:this.range(e);break;default:this.range(t).domain(e);break}return this}function Pa(e,t){switch(arguments.length){case 0:break;case 1:{typeof e=="function"?this.interpolator(e):this.range(e);break}default:{this.domain(e),typeof t=="function"?this.interpolator(t):this.range(t);break}}return this}const Cb=Symbol("implicit");function E1(){var e=new VN,t=[],n=[],r=Cb;function l(o){let u=e.get(o);if(u===void 0){if(r!==Cb)return r;e.set(o,u=t.push(o)-1)}return n[u%n.length]}return l.domain=function(o){if(!arguments.length)return t.slice();t=[],e=new VN;for(const u of o)e.has(u)||e.set(u,t.push(u)-1);return l},l.range=function(o){return arguments.length?(n=Array.from(o),l):n.slice()},l.unknown=function(o){return arguments.length?(r=o,l):r},l.copy=function(){return E1(t,n).unknown(r)},Wr.apply(l,arguments),l}function A1(){var e=E1().unknown(void 0),t=e.domain,n=e.range,r=0,l=1,o,u,c=!1,h=0,m=0,v=.5;delete e.unknown;function g(){var x=t().length,S=lt&&(n=e,e=t,t=n),function(r){return Math.max(e,Math.min(t,r))}}function TX(e,t,n){var r=e[0],l=e[1],o=t[0],u=t[1];return l2?RX:TX,h=m=null,g}function g(x){return x==null||isNaN(x=+x)?o:(h||(h=c(e.map(r),t,n)))(r(u(x)))}return g.invert=function(x){return u(l((m||(m=c(t,e.map(r),dv)))(x)))},g.domain=function(x){return arguments.length?(e=Array.from(x,yv),v()):e.slice()},g.range=function(x){return arguments.length?(t=Array.from(x),v()):t.slice()},g.rangeRound=function(x){return t=Array.from(x),n=v1,v()},g.clamp=function(x){return arguments.length?(u=x?!0:Zn,v()):u!==Zn},g.interpolate=function(x){return arguments.length?(n=x,v()):n},g.unknown=function(x){return arguments.length?(o=x,g):o},function(x,S){return r=x,l=S,v()}}function O1(){return gg()(Zn,Zn)}function Wk(e,t,n,r){var l=bb(e,t,n),o;switch(r=Uf(r??",f"),r.type){case"s":{var u=Math.max(Math.abs(e),Math.abs(t));return r.precision==null&&!isNaN(o=cY(l,u))&&(r.precision=o),Bk(r,u)}case"":case"e":case"g":case"p":case"r":{r.precision==null&&!isNaN(o=fY(l,Math.max(Math.abs(e),Math.abs(t))))&&(r.precision=o-(r.type==="e"));break}case"f":case"%":{r.precision==null&&!isNaN(o=uY(l))&&(r.precision=o-(r.type==="%")*2);break}}return p1(r)}function Bl(e){var t=e.domain;return e.ticks=function(n){var r=t();return yb(r[0],r[r.length-1],n??10)},e.tickFormat=function(n,r){var l=t();return Wk(l[0],l[l.length-1],n??10,r)},e.nice=function(n){n==null&&(n=10);var r=t(),l=0,o=r.length-1,u=r[l],c=r[o],h,m,v=10;for(c0;){if(m=xb(u,c,n),m===h)return r[l]=u,r[o]=c,t(r);if(m>0)u=Math.floor(u/m)*m,c=Math.ceil(c/m)*m;else if(m<0)u=Math.ceil(u*m)/m,c=Math.floor(c*m)/m;else break;h=m}return e},e}function Jk(){var e=O1();return e.copy=function(){return fd(e,Jk())},Wr.apply(e,arguments),Bl(e)}function eI(e){var t;function n(r){return r==null||isNaN(r=+r)?t:r}return n.invert=n,n.domain=n.range=function(r){return arguments.length?(e=Array.from(r,yv),n):e.slice()},n.unknown=function(r){return arguments.length?(t=r,n):t},n.copy=function(){return eI(e).unknown(t)},e=arguments.length?Array.from(e,yv):[0,1],Bl(n)}function tI(e,t){e=e.slice();var n=0,r=e.length-1,l=e[n],o=e[r],u;return oMath.pow(e,t)}function IX(e){return e===Math.E?Math.log:e===10&&Math.log10||e===2&&Math.log2||(e=Math.log(e),t=>Math.log(t)/e)}function E2(e){return(t,n)=>-e(-t,n)}function N1(e){const t=e(C2,_2),n=t.domain;let r=10,l,o;function u(){return l=IX(r),o=kX(r),n()[0]<0?(l=E2(l),o=E2(o),e(MX,DX)):e(C2,_2),t}return t.base=function(c){return arguments.length?(r=+c,u()):r},t.domain=function(c){return arguments.length?(n(c),u()):n()},t.ticks=c=>{const h=n();let m=h[0],v=h[h.length-1];const g=v0){for(;x<=S;++x)for(w=1;wv)break;E.push(j)}}else for(;x<=S;++x)for(w=r-1;w>=1;--w)if(j=x>0?w/o(-x):w*o(x),!(jv)break;E.push(j)}E.length*2{if(c==null&&(c=10),h==null&&(h=r===10?"s":","),typeof h!="function"&&(!(r%1)&&(h=Uf(h)).precision==null&&(h.trim=!0),h=p1(h)),c===1/0)return h;const m=Math.max(1,r*c/t.ticks().length);return v=>{let g=v/o(Math.round(l(v)));return g*rn(tI(n(),{floor:c=>o(Math.floor(l(c))),ceil:c=>o(Math.ceil(l(c)))})),t}function nI(){const e=N1(gg()).domain([1,10]);return e.copy=()=>fd(e,nI()).base(e.base()),Wr.apply(e,arguments),e}function A2(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function O2(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function T1(e){var t=1,n=e(A2(t),O2(t));return n.constant=function(r){return arguments.length?e(A2(t=+r),O2(t)):t},Bl(n)}function rI(){var e=T1(gg());return e.copy=function(){return fd(e,rI()).constant(e.constant())},Wr.apply(e,arguments)}function N2(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function zX(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function LX(e){return e<0?-e*e:e*e}function R1(e){var t=e(Zn,Zn),n=1;function r(){return n===1?e(Zn,Zn):n===.5?e(zX,LX):e(N2(n),N2(1/n))}return t.exponent=function(l){return arguments.length?(n=+l,r()):n},Bl(t)}function M1(){var e=R1(gg());return e.copy=function(){return fd(e,M1()).exponent(e.exponent())},Wr.apply(e,arguments),e}function UX(){return M1.apply(null,arguments).exponent(.5)}function T2(e){return Math.sign(e)*e*e}function $X(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}function iI(){var e=O1(),t=[0,1],n=!1,r;function l(o){var u=$X(e(o));return isNaN(u)?r:n?Math.round(u):u}return l.invert=function(o){return e.invert(T2(o))},l.domain=function(o){return arguments.length?(e.domain(o),l):e.domain()},l.range=function(o){return arguments.length?(e.range((t=Array.from(o,yv)).map(T2)),l):t.slice()},l.rangeRound=function(o){return l.range(o).round(!0)},l.round=function(o){return arguments.length?(n=!!o,l):n},l.clamp=function(o){return arguments.length?(e.clamp(o),l):e.clamp()},l.unknown=function(o){return arguments.length?(r=o,l):r},l.copy=function(){return iI(e.domain(),t).round(n).clamp(e.clamp()).unknown(r)},Wr.apply(l,arguments),Bl(l)}function aI(){var e=[],t=[],n=[],r;function l(){var u=0,c=Math.max(1,t.length);for(n=new Array(c-1);++u0?n[c-1]:e[0],c=n?[r[n-1],t]:[r[m-1],r[m]]},u.unknown=function(h){return arguments.length&&(o=h),u},u.thresholds=function(){return r.slice()},u.copy=function(){return lI().domain([e,t]).range(l).unknown(o)},Wr.apply(Bl(u),arguments)}function oI(){var e=[.5],t=[0,1],n,r=1;function l(o){return o!=null&&o<=o?t[sd(e,o,0,r)]:n}return l.domain=function(o){return arguments.length?(e=Array.from(o),r=Math.min(e.length,t.length-1),l):e.slice()},l.range=function(o){return arguments.length?(t=Array.from(o),r=Math.min(e.length,t.length-1),l):t.slice()},l.invertExtent=function(o){var u=t.indexOf(o);return[e[u-1],e[u]]},l.unknown=function(o){return arguments.length?(n=o,l):n},l.copy=function(){return oI().domain(e).range(t).unknown(n)},Wr.apply(l,arguments)}function BX(e){return new Date(e)}function HX(e){return e instanceof Date?+e:Math.round(e)}function D1(e,t,n,r,l,o,u,c,h,m){var v=O1(),g=v.invert,x=v.domain,S=m(".%L"),w=m(":%S"),j=m("%I:%M"),C=m("%I %p"),E=m("%a %d"),N=m("%b %d"),O=m("%B"),T=m("%Y");function R(A){return(h(A)t(l/(e.length-1)))},n.quantiles=function(r){return Array.from({length:r+1},(l,o)=>SK(e,o/r))},n.copy=function(){return fI(t).domain(e)},Pa.apply(n,arguments)}function yg(){var e=0,t=.5,n=1,r=1,l,o,u,c,h,m=Zn,v,g=!1,x;function S(j){return j==null||isNaN(j=+j)?x:(j=.5+((j=+v(j))-o)*(r*j{if(e!=null){var r=e.scale,l=e.type;if(r==="auto")return l==="category"&&n&&(n.indexOf("LineChart")>=0||n.indexOf("AreaChart")>=0||n.indexOf("ComposedChart")>=0&&!t)?"point":l==="category"?"band":"linear";if(typeof r=="string")return XX(r)?r:"point"}};function QX(e,t){for(var n=0,r=e.length,l=e[0]t)?n=o+1:r=o}return n}function pI(e,t){if(e){var n=t??e.domain(),r=n.map(o=>{var u;return(u=e(o))!==null&&u!==void 0?u:0}),l=e.range();if(!(n.length===0||l.length<2))return o=>{var u,c,h=QX(r,o);if(h<=0)return n[0];if(h>=n.length)return n[n.length-1];var m=(u=r[h-1])!==null&&u!==void 0?u:0,v=(c=r[h])!==null&&c!==void 0?c:0;return Math.abs(o-m)<=Math.abs(o-v)?n[h-1]:n[h]}}}function ZX(e){if(e!=null)return"invert"in e&&typeof e.invert=="function"?e.invert.bind(e):pI(e,void 0)}function M2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function xv(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);ne.cartesianAxis.xAxis[t],ka=(e,t)=>{var n=xI(e,t);return n??en},tn={allowDataOverflow:!1,allowDecimals:!0,allowDuplicatedCategory:!0,angle:0,dataKey:void 0,domain:Eb,hide:!0,id:0,includeHidden:!1,interval:"preserveEnd",minTickGap:5,mirror:!1,name:void 0,orientation:"left",padding:{top:0,bottom:0},reversed:!1,scale:"auto",tick:!0,tickCount:5,tickFormatter:void 0,ticks:void 0,type:"number",unit:void 0,niceTicks:"auto",width:nd},bI=(e,t)=>e.cartesianAxis.yAxis[t],Ia=(e,t)=>{var n=bI(e,t);return n??tn},aQ={domain:[0,"auto"],includeHidden:!1,reversed:!1,allowDataOverflow:!1,allowDuplicatedCategory:!1,dataKey:void 0,id:0,name:"",range:[64,64],scale:"auto",type:"number",unit:""},z1=(e,t)=>{var n=e.cartesianAxis.zAxis[t];return n??aQ},Fn=(e,t,n)=>{switch(t){case"xAxis":return ka(e,n);case"yAxis":return Ia(e,n);case"zAxis":return z1(e,n);case"angleAxis":return l1(e,n);case"radiusAxis":return o1(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},lQ=(e,t,n)=>{switch(t){case"xAxis":return ka(e,n);case"yAxis":return Ia(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},dd=(e,t,n)=>{switch(t){case"xAxis":return ka(e,n);case"yAxis":return Ia(e,n);case"angleAxis":return l1(e,n);case"radiusAxis":return o1(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},SI=e=>e.graphicalItems.cartesianItems.some(t=>t.type==="bar")||e.graphicalItems.polarItems.some(t=>t.type==="radialBar");function wI(e,t){return n=>{switch(e){case"xAxis":return"xAxisId"in n&&n.xAxisId===t;case"yAxis":return"yAxisId"in n&&n.yAxisId===t;case"zAxis":return"zAxisId"in n&&n.zAxisId===t;case"angleAxis":return"angleAxisId"in n&&n.angleAxisId===t;case"radiusAxis":return"radiusAxisId"in n&&n.radiusAxisId===t;default:return!1}}}var jI=e=>e.graphicalItems.cartesianItems,oQ=W([xn,ug],wI),CI=(e,t,n)=>e.filter(n).filter(r=>(t==null?void 0:t.includeHidden)===!0?!0:!r.hide),ec=W([jI,Fn,oQ],CI,{memoizeOptions:{resultEqualityCheck:cg}}),_I=W([ec],e=>e.filter(t=>t.type==="area"||t.type==="bar").filter(u1)),EI=e=>e.filter(t=>!("stackId"in t)||t.stackId===void 0),sQ=W([ec],EI),AI=e=>e.map(t=>t.data).filter(Boolean).flat(1),uQ=W([ec],e=>e.some(t=>!t.data)),OI=W([ec],AI,{memoizeOptions:{resultEqualityCheck:cg}}),NI=(e,t)=>{var n=t.chartData,r=n===void 0?[]:n,l=t.dataStartIndex,o=t.dataEndIndex;return e.length>0?e:r.slice(l,o+1)},L1=W([OI,ld],NI),cQ=(e,t,n)=>(t==null?void 0:t.dataKey)!=null?e.map(r=>({value:pn(r,t.dataKey)})):n.length>0?n.map(r=>r.dataKey).flatMap(r=>e.map(l=>({value:pn(l,r)}))):e.map(r=>({value:r})),TI=(e,t,n,r,l,o)=>{var u=r.chartData,c=u===void 0?[]:u,h=r.dataStartIndex,m=r.dataEndIndex,v=cQ(e,t,n);if(l&&(t==null?void 0:t.dataKey)!=null&&o.length>0){var g=c.slice(h,m+1),x=g.map(S=>({value:pn(S,t.dataKey)})).filter(S=>S.value!=null);return[...x,...v]}return v},hd=W([L1,Fn,ec,ld,uQ,OI],TI);function yu(e){if(Hi(e)||e instanceof Date){var t=Number(e);if(at(t))return t}}function P2(e){if(Array.isArray(e)){var t=[yu(e[0]),yu(e[1])];return Li(t)?t:void 0}var n=yu(e);if(n!=null)return[n,n]}function fi(e){return e.map(yu).filter(ur)}function fQ(e,t){var n=yu(e),r=yu(t);return n==null&&r==null?0:n==null?-1:r==null?1:n-r}var dQ=W([hd],e=>e==null?void 0:e.map(t=>t.value).sort(fQ));function RI(e,t){switch(e){case"xAxis":return t.direction==="x";case"yAxis":return t.direction==="y";default:return!1}}function hQ(e,t,n){if(!n)return[];if(!n.length)return[];var r;if(typeof t=="number"&&!Ea(t))r=t;else if(Array.isArray(t)){var l=fi(t);l.length>0&&(r=Math.max(...l))}return r==null?[]:fi(n.flatMap(o=>{var u=pn(e,o.dataKey),c,h;if(Array.isArray(u)){var m=yI(u,2);c=m[0],h=m[1]}else c=h=u;if(!(!at(c)||!at(h)))return[r-c,r+h]}))}var sn=e=>{var t=bn(e),n=Zu(e);return dd(e,t,n)},$u=W([sn],e=>e==null?void 0:e.dataKey),mQ=W([_I,ld,sn],Ck),MI=(e,t,n,r)=>{var l={},o=t.reduce((u,c)=>{if(c.stackId==null)return u;var h=u[c.stackId];return h==null&&(h=[]),h.push(c),u[c.stackId]=h,u},l);return Object.fromEntries(Object.entries(o).map(u=>{var c=yI(u,2),h=c[0],m=c[1],v=r?[...m].reverse():m,g=v.map(jk);return[h,{stackedData:U9(e,g,n),graphicalItems:v}]}))},vQ=W([mQ,_I,ag,gk],MI),DI=(e,t,n,r)=>{var l=t.dataStartIndex,o=t.dataEndIndex;if(r==null&&n!=="zAxis")return H9(e,l,o)},gQ=W([Fn],e=>e.allowDataOverflow),U1=e=>{var t;if(e==null||!("domain"in e))return Eb;if(e.domain!=null)return e.domain;if("ticks"in e&&e.ticks!=null){if(e.type==="number"){var n=fi(e.ticks);return[Math.min(...n),Math.max(...n)]}if(e.type==="category")return e.ticks.map(String)}return(t=e==null?void 0:e.domain)!==null&&t!==void 0?t:Eb},PI=W([Fn],U1),kI=W([PI,gQ],ak),pQ=W([vQ,Gi,xn,kI],DI,{memoizeOptions:{resultEqualityCheck:od}}),$1=e=>e.errorBars,yQ=(e,t,n)=>e.flatMap(r=>t[r.id]).filter(Boolean).filter(r=>RI(n,r)),bv=function(){for(var t=arguments.length,n=new Array(t),r=0;r5&&arguments[5]!==void 0?arguments[5]:[],c,h;if(r.length>0&&r.forEach(m=>{var v,g=m.data!=null?[...m.data]:u,x=(v=l[m.id])===null||v===void 0?void 0:v.filter(S=>RI(o,S));g.forEach(S=>{var w,j=pn(S,(w=n.dataKey)!==null&&w!==void 0?w:m.dataKey),C=hQ(S,j,x);if(C.length>=2){var E=Math.min(...C),N=Math.max(...C);(c==null||Eh)&&(h=N)}var O=P2(j);O!=null&&(c=c==null?O[0]:Math.min(c,O[0]),h=h==null?O[1]:Math.max(h,O[1]))})}),(n==null?void 0:n.dataKey)!=null&&r.length===0&&t.forEach(m=>{var v=P2(pn(m,n.dataKey));v!=null&&(c=c==null?v[0]:Math.min(c,v[0]),h=h==null?v[1]:Math.max(h,v[1]))}),at(c)&&at(h))return[c,h]},xQ=W([L1,Fn,sQ,$1,xn,$q],II,{memoizeOptions:{resultEqualityCheck:od}});function bQ(e){var t=e.value;if(Hi(t)||t instanceof Date)return t}var SQ=(e,t,n)=>{var r=e.map(bQ).filter(l=>l!=null);return n&&(t.dataKey==null||t.allowDuplicatedCategory&&oD(r))?rk(0,e.length):t.allowDuplicatedCategory?r:Array.from(new Set(r))},zI=e=>e.referenceElements.dots,tc=(e,t,n)=>e.filter(r=>r.ifOverflow==="extendDomain").filter(r=>t==="xAxis"?r.xAxisId===n:r.yAxisId===n),wQ=W([zI,xn,ug],tc),LI=e=>e.referenceElements.areas,jQ=W([LI,xn,ug],tc),UI=e=>e.referenceElements.lines,CQ=W([UI,xn,ug],tc),$I=(e,t)=>{if(e!=null){var n=fi(e.map(r=>t==="xAxis"?r.x:r.y));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},_Q=W(wQ,xn,$I),BI=(e,t)=>{if(e!=null){var n=fi(e.flatMap(r=>[t==="xAxis"?r.x1:r.y1,t==="xAxis"?r.x2:r.y2]));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},EQ=W([jQ,xn],BI);function AQ(e){var t;if(e.x!=null)return fi([e.x]);var n=(t=e.segment)===null||t===void 0?void 0:t.map(r=>r.x);return n==null||n.length===0?[]:fi(n)}function OQ(e){var t;if(e.y!=null)return fi([e.y]);var n=(t=e.segment)===null||t===void 0?void 0:t.map(r=>r.y);return n==null||n.length===0?[]:fi(n)}var HI=(e,t)=>{if(e!=null){var n=e.flatMap(r=>t==="xAxis"?AQ(r):OQ(r));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},NQ=W([CQ,xn],HI),TQ=W(_Q,NQ,EQ,(e,t,n)=>bv(e,n,t)),FI=(e,t,n,r,l,o,u,c,h)=>{if(n!=null)return n;var m=u==="vertical"&&c==="xAxis"||u==="horizontal"&&c==="yAxis",v=m?bv(r,o,l):bv(o,l),g=qq(t,v,e.allowDataOverflow);return g??(e.allowDataOverflow&&v==null&&h!=null?h:g)},RQ=e=>{if(!(e==null||e.type!=="number"||!("ticks"in e)||e.ticks==null)){var t=fi(e.ticks);if(t.length!==0)return[Math.min(...t),Math.max(...t)]}},MQ=W([Fn],RQ,{memoizeOptions:{resultEqualityCheck:od}}),DQ=W([Fn,PI,kI,pQ,xQ,TQ,It,xn,MQ],FI,{memoizeOptions:{resultEqualityCheck:od}}),PQ=[0,1],VI=(e,t,n,r,l,o,u)=>{if(!((e==null||n==null||n.length===0)&&u===void 0)){var c=e.dataKey,h=e.type,m=Ra(t,o);if(m&&c==null){var v;return rk(0,(v=n==null?void 0:n.length)!==null&&v!==void 0?v:0)}return h==="category"?SQ(r,e,m):l==="expand"&&!m?PQ:u}},B1=W([Fn,It,L1,hd,ag,xn,DQ],VI),nc=W([Fn,SI,r1],gI),GI=(e,t,n)=>{var r=t.niceTicks;if(r!=="none"){var l=U1(t),o=Array.isArray(l)&&(l[0]==="auto"||l[1]==="auto");if((r==="snap125"||r==="adaptive")&&t!=null&&t.tickCount&&Li(e)){if(o)return UN(e,t.tickCount,t.allowDecimals,r);if(t.type==="number")return $N(e,t.tickCount,t.allowDecimals,r)}if(r==="auto"&&n==="linear"&&t!=null&&t.tickCount){if(o&&Li(e))return UN(e,t.tickCount,t.allowDecimals,"adaptive");if(t.type==="number"&&Li(e))return $N(e,t.tickCount,t.allowDecimals,"adaptive")}}},H1=W([B1,dd,nc],GI),qI=(e,t,n,r)=>{if(r!=="angleAxis"&&(e==null?void 0:e.type)==="number"&&Li(t)&&Array.isArray(n)&&n.length>0){var l,o,u=t[0],c=(l=n[0])!==null&&l!==void 0?l:0,h=t[1],m=(o=n[n.length-1])!==null&&o!==void 0?o:0;return[Math.min(u,c),Math.max(h,m)]}return t},kQ=W([Fn,B1,H1,xn],qI),IQ=W(hd,Fn,(e,t)=>{if(!(!t||t.type!=="number")){var n=1/0,r=Array.from(fi(e.map(g=>g.value))).sort((g,x)=>g-x),l=r[0],o=r[r.length-1];if(l==null||o==null)return 1/0;var u=o-l;if(u===0)return 1/0;for(var c=0;cl,(e,t,n,r,l)=>{if(!at(e))return 0;var o=t==="vertical"?r.height:r.width;if(l==="gap")return e*o/2;if(l==="no-gap"){var u=Pl(n,e*o),c=e*o/2;return c-u-(c-u)/o*u}return 0}),zQ=(e,t,n)=>{var r=ka(e,t);return r==null||typeof r.padding!="string"?0:KI(e,"xAxis",t,n,r.padding)},LQ=(e,t,n)=>{var r=Ia(e,t);return r==null||typeof r.padding!="string"?0:KI(e,"yAxis",t,n,r.padding)},UQ=W(ka,zQ,(e,t)=>{var n,r;if(e==null)return{left:0,right:0};var l=e.padding;return typeof l=="string"?{left:t,right:t}:{left:((n=l.left)!==null&&n!==void 0?n:0)+t,right:((r=l.right)!==null&&r!==void 0?r:0)+t}}),$Q=W(Ia,LQ,(e,t)=>{var n,r;if(e==null)return{top:0,bottom:0};var l=e.padding;return typeof l=="string"?{top:t,bottom:t}:{top:((n=l.top)!==null&&n!==void 0?n:0)+t,bottom:((r=l.bottom)!==null&&r!==void 0?r:0)+t}}),YI=W([Pn,UQ,ng,tg,(e,t,n)=>n],(e,t,n,r,l)=>{var o=r.padding;return l?[o.left,n.width-o.right]:[e.left+t.left,e.left+e.width-t.right]}),XI=W([Pn,It,$Q,ng,tg,(e,t,n)=>n],(e,t,n,r,l,o)=>{var u=l.padding;return o?[r.height-u.bottom,u.top]:t==="horizontal"?[e.top+e.height-n.bottom,e.top+n.top]:[e.top+n.top,e.top+e.height-n.bottom]}),md=(e,t,n,r)=>{var l;switch(t){case"xAxis":return YI(e,n,r);case"yAxis":return XI(e,n,r);case"zAxis":return(l=z1(e,n))===null||l===void 0?void 0:l.range;case"angleAxis":return bk(e);case"radiusAxis":return Sk(e,n);default:return}},QI=W([Fn,md],lg),BQ=W([nc,kQ],uK),F1=W([Fn,nc,BQ,QI],I1),ZI=(e,t,n,r)=>{if(!(n==null||n.dataKey==null)){var l=n.type,o=n.scale,u=Ra(e,r);if(u&&(l==="number"||o!=="auto"))return t.map(c=>c.value)}},V1=W([It,hd,dd,xn],ZI),xg=W([F1],c1);W([F1],ZX);W([F1,dQ],pI);W([ec,$1,xn],yQ);function WI(e,t){return e.idt.id?1:0}var bg=(e,t)=>t,Sg=(e,t,n)=>n,HQ=W(Jv,bg,Sg,(e,t,n)=>e.filter(r=>r.orientation===t).filter(r=>r.mirror===n).sort(WI)),FQ=W(eg,bg,Sg,(e,t,n)=>e.filter(r=>r.orientation===t).filter(r=>r.mirror===n).sort(WI)),JI=(e,t)=>{var n=typeof t.height=="number"?t.height:ZS;return{width:e.width,height:n}},VQ=(e,t)=>{var n=typeof t.width=="number"?t.width:nd;return{width:n,height:e.height}},GQ=W(Pn,ka,JI),qQ=(e,t,n)=>{switch(t){case"top":return e.top;case"bottom":return n-e.bottom;default:return 0}},KQ=(e,t,n)=>{switch(t){case"left":return e.left;case"right":return n-e.right;default:return 0}},YQ=W(Da,Pn,HQ,bg,Sg,(e,t,n,r,l)=>{var o={},u;return n.forEach(c=>{var h=JI(t,c);u==null&&(u=qQ(t,r,e));var m=r==="top"&&!l||r==="bottom"&&l;o[c.id]=u-Number(m)*h.height,u+=(m?-1:1)*h.height}),o}),XQ=W(Ma,Pn,FQ,bg,Sg,(e,t,n,r,l)=>{var o={},u;return n.forEach(c=>{var h=VQ(t,c);u==null&&(u=KQ(t,r,e));var m=r==="left"&&!l||r==="right"&&l;o[c.id]=u-Number(m)*h.width,u+=(m?-1:1)*h.width}),o}),QQ=(e,t)=>{var n=ka(e,t);if(n!=null)return YQ(e,n.orientation,n.mirror)},ZQ=W([Pn,ka,QQ,(e,t)=>t],(e,t,n,r)=>{if(t!=null){var l=n==null?void 0:n[r];return l==null?{x:e.left,y:0}:{x:e.left,y:l}}}),WQ=(e,t)=>{var n=Ia(e,t);if(n!=null)return XQ(e,n.orientation,n.mirror)},JQ=W([Pn,Ia,WQ,(e,t)=>t],(e,t,n,r)=>{if(t!=null){var l=n==null?void 0:n[r];return l==null?{x:0,y:e.top}:{x:l,y:e.top}}}),eZ=W(Pn,Ia,(e,t)=>{var n=typeof t.width=="number"?t.width:nd;return{width:n,height:e.height}}),e3=(e,t,n,r)=>{if(n!=null){var l=n.allowDuplicatedCategory,o=n.type,u=n.dataKey,c=Ra(e,r),h=t.map(v=>v.value),m=h.filter(v=>v!=null);if(u&&c&&o==="category"&&l&&oD(m))return h}},G1=W([It,hd,Fn,xn],e3),k2=W([It,lQ,nc,xg,G1,V1,md,H1,xn],(e,t,n,r,l,o,u,c,h)=>{if(t!=null){var m=Ra(e,h);return{angle:t.angle,interval:t.interval,minTickGap:t.minTickGap,orientation:t.orientation,tick:t.tick,tickCount:t.tickCount,tickFormatter:t.tickFormatter,ticks:t.ticks,type:t.type,unit:t.unit,axisType:h,categoricalDomain:o,duplicateDomain:l,isCategorical:m,niceTicks:c,range:u,realScaleType:n,scale:r}}}),tZ=(e,t,n,r,l,o,u,c,h)=>{if(!(t==null||r==null)){var m=Ra(e,h),v=t.type,g=t.ticks,x=t.tickCount,S=n==="scaleBand"&&typeof r.bandwidth=="function"?r.bandwidth()/2:2,w=v==="category"&&r.bandwidth?r.bandwidth()/S:0;w=h==="angleAxis"&&o!=null&&o.length>=2?Vr(o[0]-o[1])*2*w:w;var j=g||l;return j?j.map((C,E)=>{var N=u?u.indexOf(C):C,O=r.map(N);return at(O)?{index:E,coordinate:O+w,value:C,offset:w}:null}).filter(ur):m&&c?c.map((C,E)=>{var N=r.map(C);return at(N)?{coordinate:N+w,value:C,index:E,offset:w}:null}).filter(ur):r.ticks?r.ticks(x).map((C,E)=>{var N=r.map(C);return at(N)?{coordinate:N+w,value:C,index:E,offset:w}:null}).filter(ur):r.domain().map((C,E)=>{var N=r.map(C);return at(N)?{coordinate:N+w,value:u?u[C]:C,index:E,offset:w}:null}).filter(ur)}},t3=W([It,dd,nc,xg,H1,md,G1,V1,xn],tZ),nZ=(e,t,n,r,l,o,u)=>{if(!(t==null||n==null||r==null||r[0]===r[1])){var c=Ra(e,u),h=t.tickCount,m=0;return m=u==="angleAxis"&&(r==null?void 0:r.length)>=2?Vr(r[0]-r[1])*2*m:m,c&&o?o.map((v,g)=>{var x=n.map(v);return at(x)?{coordinate:x+m,value:v,index:g,offset:m}:null}).filter(ur):n.ticks?n.ticks(h).map((v,g)=>{var x=n.map(v);return at(x)?{coordinate:x+m,value:v,index:g,offset:m}:null}).filter(ur):n.domain().map((v,g)=>{var x=n.map(v);return at(x)?{coordinate:x+m,value:l?l[v]:v,index:g,offset:m}:null}).filter(ur)}},n3=W([It,dd,xg,md,G1,V1,xn],nZ),r3=W(Fn,xg,(e,t)=>{if(!(e==null||t==null))return xv(xv({},e),{},{scale:t})}),rZ=W([Fn,nc,B1,QI],I1),iZ=W([rZ],c1);W((e,t,n)=>z1(e,n),iZ,(e,t)=>{if(!(e==null||t==null))return xv(xv({},e),{},{scale:t})});var aZ=W([It,Jv,eg],(e,t,n)=>{switch(e){case"horizontal":return t.some(r=>r.reversed)?"right-to-left":"left-to-right";case"vertical":return n.some(r=>r.reversed)?"bottom-to-top":"top-to-bottom";case"centric":case"radial":return"left-to-right";default:return}}),lZ=(e,t,n)=>{var r;return(r=e.renderedTicks[t])===null||r===void 0?void 0:r[n]};W([lZ],e=>{if(!(!e||e.length===0))return t=>{var n,r=1/0,l=e[0];for(var o of e){var u=Math.abs(o.coordinate-t);ue.options.defaultTooltipEventType,a3=e=>e.options.validateTooltipEventTypes;function l3(e,t,n){if(e==null)return t;var r=e?"axis":"item";return n==null?t:n.includes(r)?r:t}function vd(e,t){var n=i3(e),r=a3(e);return l3(t,n,r)}function oZ(e){return ke(t=>vd(t,e))}var o3=(e,t)=>{var n,r=Number(t);if(!(Ea(r)||t==null))return r>=0?e==null||(n=e[r])===null||n===void 0?void 0:n.value:void 0},sZ=e=>e.tooltip.settings,bl={active:!1,index:null,dataKey:void 0,graphicalItemId:void 0,coordinate:void 0},uZ={itemInteraction:{click:bl,hover:bl},axisInteraction:{click:bl,hover:bl},keyboardInteraction:bl,syncInteraction:{active:!1,index:null,dataKey:void 0,label:void 0,coordinate:void 0,sourceViewBox:void 0,graphicalItemId:void 0},tooltipItemPayloads:[],settings:{shared:void 0,trigger:"hover",axisId:0,active:!1,defaultIndex:void 0}},s3=Hn({name:"tooltip",initialState:uZ,reducers:{addTooltipEntrySettings:{reducer(e,t){e.tooltipItemPayloads.push(it(t.payload))},prepare:Ot()},replaceTooltipEntrySettings:{reducer(e,t){var n=t.payload,r=n.prev,l=n.next,o=Gr(e).tooltipItemPayloads.indexOf(it(r));o>-1&&(e.tooltipItemPayloads[o]=it(l))},prepare:Ot()},removeTooltipEntrySettings:{reducer(e,t){var n=Gr(e).tooltipItemPayloads.indexOf(it(t.payload));n>-1&&e.tooltipItemPayloads.splice(n,1)},prepare:Ot()},setTooltipSettingsState(e,t){e.settings=t.payload},setActiveMouseOverItemIndex(e,t){e.syncInteraction.active=!1,e.syncInteraction.sourceViewBox=void 0,e.keyboardInteraction.active=!1,e.itemInteraction.hover.active=!0,e.itemInteraction.hover.index=t.payload.activeIndex,e.itemInteraction.hover.dataKey=t.payload.activeDataKey,e.itemInteraction.hover.graphicalItemId=t.payload.activeGraphicalItemId,e.itemInteraction.hover.coordinate=t.payload.activeCoordinate},mouseLeaveChart(e){e.itemInteraction.hover.active=!1,e.axisInteraction.hover.active=!1},mouseLeaveItem(e){e.itemInteraction.hover.active=!1},setActiveClickItemIndex(e,t){e.syncInteraction.active=!1,e.syncInteraction.sourceViewBox=void 0,e.itemInteraction.click.active=!0,e.keyboardInteraction.active=!1,e.itemInteraction.click.index=t.payload.activeIndex,e.itemInteraction.click.dataKey=t.payload.activeDataKey,e.itemInteraction.click.graphicalItemId=t.payload.activeGraphicalItemId,e.itemInteraction.click.coordinate=t.payload.activeCoordinate},setMouseOverAxisIndex(e,t){e.syncInteraction.active=!1,e.syncInteraction.sourceViewBox=void 0,e.axisInteraction.hover.active=!0,e.keyboardInteraction.active=!1,e.axisInteraction.hover.index=t.payload.activeIndex,e.axisInteraction.hover.dataKey=t.payload.activeDataKey,e.axisInteraction.hover.coordinate=t.payload.activeCoordinate},setMouseClickAxisIndex(e,t){e.syncInteraction.active=!1,e.syncInteraction.sourceViewBox=void 0,e.keyboardInteraction.active=!1,e.axisInteraction.click.active=!0,e.axisInteraction.click.index=t.payload.activeIndex,e.axisInteraction.click.dataKey=t.payload.activeDataKey,e.axisInteraction.click.coordinate=t.payload.activeCoordinate},setSyncInteraction(e,t){e.syncInteraction=t.payload},setKeyboardInteraction(e,t){e.keyboardInteraction.active=t.payload.active,e.keyboardInteraction.index=t.payload.activeIndex,e.keyboardInteraction.coordinate=t.payload.activeCoordinate}}}),Jr=s3.actions,cZ=Jr.addTooltipEntrySettings,fZ=Jr.replaceTooltipEntrySettings,dZ=Jr.removeTooltipEntrySettings,hZ=Jr.setTooltipSettingsState,mZ=Jr.setActiveMouseOverItemIndex;Jr.mouseLeaveItem;var u3=Jr.mouseLeaveChart;Jr.setActiveClickItemIndex;var c3=Jr.setMouseOverAxisIndex,vZ=Jr.setMouseClickAxisIndex,Sf=Jr.setSyncInteraction,Sv=Jr.setKeyboardInteraction,gZ=s3.reducer;function I2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function mm(e){for(var t=1;t{if(t==null)return bl;var l=bZ(e,t,n);if(l==null)return bl;if(l.active)return l;if(e.keyboardInteraction.active)return e.keyboardInteraction;if(e.syncInteraction.active&&e.syncInteraction.index!=null)return e.syncInteraction;var o=e.settings.active===!0;if(SZ(l)){if(o)return mm(mm({},l),{},{active:!0})}else if(r!=null)return{active:!0,coordinate:void 0,dataKey:void 0,index:r,graphicalItemId:void 0};return mm(mm({},bl),{},{coordinate:l.coordinate})};function wZ(e){if(typeof e=="number")return Number.isFinite(e)?e:void 0;if(e instanceof Date){var t=e.valueOf();return Number.isFinite(t)?t:void 0}var n=Number(e);return Number.isFinite(n)?n:void 0}function jZ(e,t){var n=wZ(e),r=t[0],l=t[1];if(n===void 0)return!1;var o=Math.min(r,l),u=Math.max(r,l);return n>=o&&n<=u}function CZ(e,t,n){if(n==null||t==null)return!0;var r=pn(e,t);return r==null||!Li(n)?!0:jZ(r,n)}var Cf=(e,t,n,r)=>{var l=e==null?void 0:e.index;if(l==null)return null;var o=Number(l);if(!at(o))return l;var u=0,c=1/0;t.length>0&&(c=t.length-1);var h=Math.max(u,Math.min(o,c)),m=t[h];return m==null||CZ(m,n,r)?String(h):null},d3=(e,t,n,r,l,o,u)=>{if(o!=null){var c=u[0],h=c==null?void 0:c.getPosition(o);if(h!=null)return h;var m=l==null?void 0:l[Number(o)];if(m)switch(n){case"horizontal":return{x:m.coordinate,y:(r.top+t)/2};default:return{x:(r.left+e)/2,y:m.coordinate}}}},h3=(e,t,n,r)=>{if(t==="axis")return e.tooltipItemPayloads;if(e.tooltipItemPayloads.length===0)return[];var l;if(n==="hover"?l=e.itemInteraction.hover.graphicalItemId:l=e.itemInteraction.click.graphicalItemId,e.syncInteraction.active&&l==null)return e.tooltipItemPayloads;if(l==null&&(r!=null||e.keyboardInteraction.active)){var o=e.tooltipItemPayloads[0];return o!=null?[o]:[]}return e.tooltipItemPayloads.filter(u=>{var c;return((c=u.settings)===null||c===void 0?void 0:c.graphicalItemId)===l})},m3=e=>e.options.tooltipPayloadSearcher,rc=e=>e.tooltip;function z2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function L2(e){for(var t=1;te(t)}function U2(e){if(typeof e=="string")return e}function RZ(e){if(!(e==null||typeof e!="object")){var t="name"in e?OZ(e.name):void 0,n="unit"in e?NZ(e.unit):void 0,r="dataKey"in e?TZ(e.dataKey):void 0,l="payload"in e?e.payload:void 0,o="color"in e?U2(e.color):void 0,u="fill"in e?U2(e.fill):void 0;return{name:t,unit:n,dataKey:r,payload:l,color:o,fill:u}}}function MZ(e,t){return e??t}var v3=(e,t,n,r,l,o,u)=>{if(!(t==null||o==null)){var c=n.chartData,h=n.computedData,m=n.dataStartIndex,v=n.dataEndIndex,g=[];return e.reduce((x,S)=>{var w,j=S.dataDefinedOnItem,C=S.settings,E=MZ(j,c),N=Array.isArray(E)?RP(E,m,v):E,O=(w=C==null?void 0:C.dataKey)!==null&&w!==void 0?w:r,T=C==null?void 0:C.nameKey,R;if(r&&Array.isArray(N)&&!Array.isArray(N[0])&&u==="axis"?(R=sD(N,r,l),R==null&&(R=o(N,t,h,T))):R=o(N,t,h,T),Array.isArray(R))R.forEach(D=>{var k,I,P=RZ(D),B=P==null?void 0:P.name,F=P==null?void 0:P.dataKey,se=P==null?void 0:P.payload,ue=L2(L2({},C),{},{name:B,unit:P==null?void 0:P.unit,color:(k=P==null?void 0:P.color)!==null&&k!==void 0?k:C==null?void 0:C.color,fill:(I=P==null?void 0:P.fill)!==null&&I!==void 0?I:C==null?void 0:C.fill});x.push(kO({tooltipEntrySettings:ue,dataKey:F,payload:se,value:pn(se,F),name:B==null?void 0:String(B)}))});else{var A;x.push(kO({tooltipEntrySettings:C,dataKey:O,payload:R,value:pn(R,O),name:(A=pn(R,T))!==null&&A!==void 0?A:C==null?void 0:C.name}))}return x},g)}},q1=W([sn,SI,r1],gI),DZ=W([e=>e.graphicalItems.cartesianItems,e=>e.graphicalItems.polarItems],(e,t)=>[...e,...t]),PZ=W([bn,Zu],wI),rs=W([DZ,sn,PZ],CI,{memoizeOptions:{resultEqualityCheck:cg}}),kZ=W([rs],e=>e.filter(u1)),g3=W([rs],AI,{memoizeOptions:{resultEqualityCheck:cg}}),IZ=W([rs],e=>e.some(t=>!t.data)),Xo=W([g3,Gi],NI),zZ=W([kZ,Gi,sn],Ck),K1=W([Xo,sn,rs,Gi,IZ,g3],TI),p3=W([sn],U1),LZ=W([sn],e=>e.allowDataOverflow),y3=W([p3,LZ],ak),UZ=W([rs],e=>e.filter(u1)),$Z=W([zZ,UZ,ag,gk],MI),BZ=W([$Z,Gi,bn,y3],DI),HZ=W([rs],EI),FZ=W([Xo,sn,HZ,$1,bn,Bq],II,{memoizeOptions:{resultEqualityCheck:od}}),VZ=W([zI,bn,Zu],tc),GZ=W([VZ,bn],$I),qZ=W([LI,bn,Zu],tc),KZ=W([qZ,bn],BI),YZ=W([UI,bn,Zu],tc),XZ=W([YZ,bn],HI),QZ=W([GZ,XZ,KZ],bv),ZZ=W([sn,p3,y3,BZ,FZ,QZ,It,bn],FI),Bu=W([sn,It,Xo,K1,ag,bn,ZZ],VI),WZ=W([Bu,sn,q1],GI),JZ=W([sn,Bu,WZ,bn],qI),x3=e=>{var t=bn(e),n=Zu(e),r=!1;return md(e,t,n,r)},b3=W([sn,x3],lg),eW=W([sn,q1,JZ,b3],I1),S3=W([eW],c1),tW=W([It,K1,sn,bn],e3),nW=W([It,K1,sn,bn],ZI),rW=(e,t,n,r,l,o,u,c)=>{if(t){var h=t.type,m=Ra(e,c);if(r){var v=n==="scaleBand"&&r.bandwidth?r.bandwidth()/2:2,g=h==="category"&&r.bandwidth?r.bandwidth()/v:0;return g=c==="angleAxis"&&l!=null&&(l==null?void 0:l.length)>=2?Vr(l[0]-l[1])*2*g:g,m&&u?u.map((x,S)=>{var w=r.map(x);return at(w)?{coordinate:w+g,value:x,index:S,offset:g}:null}).filter(ur):r.domain().map((x,S)=>{var w=r.map(x);return at(w)?{coordinate:w+g,value:o?o[x]:x,index:S,offset:g}:null}).filter(ur)}}},za=W([It,sn,q1,S3,x3,tW,nW,bn],rW),Y1=W([i3,a3,sZ],(e,t,n)=>l3(n.shared,e,t)),w3=e=>e.tooltip.settings.trigger,X1=e=>e.tooltip.settings.defaultIndex,gd=W([rc,Y1,w3,X1],f3),$f=W([gd,Xo,$u,Bu],Cf),j3=W([za,$f],o3),iW=W([gd],e=>{if(e)return e.dataKey}),aW=W([gd],e=>{if(e)return e.graphicalItemId}),C3=W([rc,Y1,w3,X1],h3),lW=W([Ma,Da,It,Pn,za,X1,C3],d3),oW=W([gd,lW],(e,t)=>e!=null&&e.coordinate?e.coordinate:t),sW=W([gd],e=>{var t;return(t=e==null?void 0:e.active)!==null&&t!==void 0?t:!1}),uW=W([C3,$f,Gi,$u,j3,m3,Y1],v3),cW=W([uW],e=>{if(e!=null){var t=e.map(n=>n.payload).filter(n=>n!=null);return Array.from(new Set(t))}});function $2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function B2(e){for(var t=1;tke(sn),vW=()=>{var e=mW(),t=ke(za),n=ke(S3);return ev(!e||!n?void 0:B2(B2({},e),{},{scale:n}),t)};function H2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function eu(e){for(var t=1;t{var l=t.find(o=>o&&o.index===n);if(l){if(e==="horizontal")return{x:l.coordinate,y:r.relativeY};if(e==="vertical")return{x:r.relativeX,y:l.coordinate}}return{x:0,y:0}},bW=(e,t,n,r)=>{var l=t.find(m=>m&&m.index===n);if(l){if(e==="centric"){var o=l.coordinate,u=r.radius;return eu(eu(eu({},r),Dn(r.cx,r.cy,u,o)),{},{angle:o,radius:u})}var c=l.coordinate,h=r.angle;return eu(eu(eu({},r),Dn(r.cx,r.cy,c,h)),{},{angle:h,radius:c})}return{angle:0,clockWise:!1,cx:0,cy:0,endAngle:0,innerRadius:0,outerRadius:0,radius:0,startAngle:0,x:0,y:0}};function SW(e,t){var n=e.relativeX,r=e.relativeY;return n>=t.left&&n<=t.left+t.width&&r>=t.top&&r<=t.top+t.height}var _3=(e,t,n,r,l)=>{var o,u=(o=t==null?void 0:t.length)!==null&&o!==void 0?o:0;if(u<=1||e==null)return 0;if(r==="angleAxis"&&l!=null&&Math.abs(Math.abs(l[1]-l[0])-360)<=1e-6)for(var c=l[1]-l[0],h=(de,G,ne)=>[e,e+c,e-c].some(ie=>(ne?ie>=de:ie>de)&&ie<=G),m=0;m0?(v=n[m-1])===null||v===void 0?void 0:v.coordinate:(g=n[u-1])===null||g===void 0?void 0:g.coordinate,C=(x=n[m])===null||x===void 0?void 0:x.coordinate,E=m>=u-1?(S=n[0])===null||S===void 0?void 0:S.coordinate:(w=n[m+1])===null||w===void 0?void 0:w.coordinate,N=void 0;if(!(j==null||C==null||E==null))if(Vr(C-j)!==Vr(E-C)){var O=[];if(Vr(E-C)===Vr(l[1]-l[0])){N=E;var T=C+l[1]-l[0];O[0]=Math.min(T,(T+j)/2),O[1]=Math.max(T,(T+j)/2)}else{N=j;var R=E+l[1]-l[0];O[0]=Math.min(C,(R+C)/2),O[1]=Math.max(C,(R+C)/2)}var A=[Math.min(C,(N+C)/2),Math.max(C,(N+C)/2)];if(h(A[0],A[1],!1)||h(O[0],O[1],!0)){var D;return(D=n[m])===null||D===void 0?void 0:D.index}}else{var k=Math.min(j,E),I=Math.max(j,E);if(h((k+C)/2,(I+C)/2,!1)){var P;return(P=n[m])===null||P===void 0?void 0:P.index}}}else if(t)for(var B=0;B(F.coordinate+ue.coordinate)/2||B>0&&B(F.coordinate+ue.coordinate)/2&&e<=(F.coordinate+se.coordinate)/2)return F.index}}return-1},wW=()=>ke(r1),Q1=(e,t)=>t,E3=(e,t,n)=>n,Z1=(e,t,n,r)=>r,jW=W(za,e=>Fv(e,t=>t.coordinate)),W1=W([rc,Q1,E3,Z1],f3),J1=W([W1,Xo,$u,Bu],Cf),CW=(e,t,n)=>{if(t!=null){var r=rc(e);return t==="axis"?n==="hover"?r.axisInteraction.hover.dataKey:r.axisInteraction.click.dataKey:n==="hover"?r.itemInteraction.hover.dataKey:r.itemInteraction.click.dataKey}},A3=W([rc,Q1,E3,Z1],h3),wv=W([Ma,Da,It,Pn,za,Z1,A3],d3),_W=W([W1,wv],(e,t)=>{var n;return(n=e.coordinate)!==null&&n!==void 0?n:t}),O3=W([za,J1],o3),EW=W([A3,J1,Gi,$u,O3,m3,Q1],v3),AW=W([W1,J1],(e,t)=>({isActive:e.active&&t!=null,activeIndex:t})),OW=(e,t,n,r,l,o,u)=>{if(!(!e||!n||!r||!l)&&SW(e,u)){var c=F9(e,t),h=_3(c,o,l,n,r),m=xW(t,l,h,e);return{activeIndex:String(h),activeCoordinate:m}}},NW=(e,t,n,r,l,o,u)=>{if(!(!e||!r||!l||!o||!n)){var c=Dq(e,n);if(c){var h=V9(c,t),m=_3(h,u,o,r,l),v=bW(t,o,m,c);return{activeIndex:String(m),activeCoordinate:v}}}},TW=(e,t,n,r,l,o,u,c)=>{if(!(!e||!t||!r||!l||!o))return t==="horizontal"||t==="vertical"?OW(e,t,r,l,o,u,c):NW(e,t,n,r,l,o,u)},RW=W(e=>e.zIndex.zIndexMap,(e,t)=>t,(e,t,n)=>n,(e,t,n)=>{if(t!=null){var r=e[t];if(r!=null)return n?r.panoramaElement:r.element}}),MW=W(e=>e.zIndex.zIndexMap,e=>{var t=Object.keys(e).map(r=>parseInt(r,10)).concat(Object.values(Qn)),n=Array.from(new Set(t));return n.sort((r,l)=>r-l)},{memoizeOptions:{resultEqualityCheck:sK}});function F2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function V2(e){for(var t=1;tV2(V2({},e),{},{[t]:{element:void 0,panoramaElement:void 0,consumers:0}}),IW)},LW=new Set(Object.values(Qn));function UW(e){return LW.has(e)}var N3=Hn({name:"zIndex",initialState:zW,reducers:{registerZIndexPortal:{reducer:(e,t)=>{var n=t.payload.zIndex;e.zIndexMap[n]?e.zIndexMap[n].consumers+=1:e.zIndexMap[n]={consumers:1,element:void 0,panoramaElement:void 0}},prepare:Ot()},unregisterZIndexPortal:{reducer:(e,t)=>{var n=t.payload.zIndex;e.zIndexMap[n]&&(e.zIndexMap[n].consumers-=1,e.zIndexMap[n].consumers<=0&&!UW(n)&&delete e.zIndexMap[n])},prepare:Ot()},registerZIndexPortalElement:{reducer:(e,t)=>{var n=t.payload,r=n.zIndex,l=n.element,o=n.isPanorama;e.zIndexMap[r]?o?e.zIndexMap[r].panoramaElement=it(l):e.zIndexMap[r].element=it(l):e.zIndexMap[r]={consumers:0,element:o?void 0:it(l),panoramaElement:o?it(l):void 0}},prepare:Ot()},unregisterZIndexPortalElement:{reducer:(e,t)=>{var n=t.payload.zIndex;e.zIndexMap[n]&&(t.payload.isPanorama?e.zIndexMap[n].panoramaElement=void 0:e.zIndexMap[n].element=void 0)},prepare:Ot()}}}),wg=N3.actions,$W=wg.registerZIndexPortal,t0=wg.unregisterZIndexPortal,BW=wg.registerZIndexPortalElement,HW=wg.unregisterZIndexPortalElement,FW=N3.reducer;function La(e){var t=e.zIndex,n=e.children,r=AG(),l=r&&t!==void 0&&t!==0,o=fr(),u=b.useRef(void 0),c=b.useRef(new Set),h=Vt(),m=ke(g=>RW(g,t,o));if(b.useLayoutEffect(()=>{if(!l){var g=c.current;g.forEach(S=>{h(t0({zIndex:S}))}),g.clear(),u.current=void 0;return}if(c.current.has(t)||(h($W({zIndex:t})),c.current.add(t)),m){u.current=m;var x=c.current;x.forEach(S=>{S!==t&&(h(t0({zIndex:S})),x.delete(S))})}},[h,t,l,m]),b.useLayoutEffect(()=>{var g=c.current;return()=>{g.forEach(x=>{h(t0({zIndex:x}))}),g.clear()}},[h]),!l)return n;var v=m??u.current;return v?Mv.createPortal(n,v):null}function Ab(){return Ab=Object.assign?Object.assign.bind():function(e){for(var t=1;tb.useContext(T3),n0={exports:{}},q2;function ZW(){return q2||(q2=1,(function(e){var t=Object.prototype.hasOwnProperty,n="~";function r(){}Object.create&&(r.prototype=Object.create(null),new r().__proto__||(n=!1));function l(h,m,v){this.fn=h,this.context=m,this.once=v||!1}function o(h,m,v,g,x){if(typeof v!="function")throw new TypeError("The listener must be a function");var S=new l(v,g||h,x),w=n?n+m:m;return h._events[w]?h._events[w].fn?h._events[w]=[h._events[w],S]:h._events[w].push(S):(h._events[w]=S,h._eventsCount++),h}function u(h,m){--h._eventsCount===0?h._events=new r:delete h._events[m]}function c(){this._events=new r,this._eventsCount=0}c.prototype.eventNames=function(){var m=[],v,g;if(this._eventsCount===0)return m;for(g in v=this._events)t.call(v,g)&&m.push(n?g.slice(1):g);return Object.getOwnPropertySymbols?m.concat(Object.getOwnPropertySymbols(v)):m},c.prototype.listeners=function(m){var v=n?n+m:m,g=this._events[v];if(!g)return[];if(g.fn)return[g.fn];for(var x=0,S=g.length,w=new Array(S);x{if(t&&Array.isArray(e)){var n=Number.parseInt(t,10);if(!Ea(n))return e[n]}},tJ={chartName:"",tooltipPayloadSearcher:()=>{},eventEmitter:void 0,defaultTooltipEventType:"axis"},R3=Hn({name:"options",initialState:tJ,reducers:{createEventEmitter:e=>{e.eventEmitter==null&&(e.eventEmitter=Symbol("rechartsEventEmitter"))}}}),nJ=R3.reducer,rJ=R3.actions.createEventEmitter;function iJ(e){return e.tooltip.syncInteraction}var aJ={chartData:void 0,computedData:void 0,dataStartIndex:0,dataEndIndex:0},M3=Hn({name:"chartData",initialState:aJ,reducers:{setChartData(e,t){if(e.chartData=it(t.payload),t.payload==null){e.dataStartIndex=0,e.dataEndIndex=0;return}t.payload.length>0&&e.dataEndIndex!==t.payload.length-1&&(e.dataEndIndex=t.payload.length-1)},setComputedData(e,t){e.computedData=t.payload},setDataStartEndIndexes(e,t){var n=t.payload,r=n.startIndex,l=n.endIndex;r!=null&&(e.dataStartIndex=r),l!=null&&(e.dataEndIndex=l)}}}),ew=M3.actions,Y2=ew.setChartData,lJ=ew.setDataStartEndIndexes;ew.setComputedData;var oJ=M3.reducer,sJ=["x","y"];function X2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function tu(e){for(var t=1;th.rootProps.className);b.useEffect(()=>{if(e==null)return Ku;var h=(m,v,g)=>{if(t!==g&&e===m){if(v.payload.active===!1){n(Sf({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:void 0,graphicalItemId:void 0}));return}if(r==="index"){var x;if(u&&v!==null&&v!==void 0&&(x=v.payload)!==null&&x!==void 0&&x.coordinate&&v.payload.sourceViewBox){var S=v.payload.coordinate,w=S.x,j=S.y,C=dJ(S,sJ),E=v.payload.sourceViewBox,N=E.x,O=E.y,T=E.width,R=E.height,A=tu(tu({},C),{},{x:u.x+(T?(w-N)/T:0)*u.width,y:u.y+(R?(j-O)/R:0)*u.height});n(tu(tu({},v),{},{payload:tu(tu({},v.payload),{},{coordinate:A})}))}else n(v);return}if(l!=null){var D;if(typeof r=="function"){var k={activeTooltipIndex:v.payload.index==null?void 0:Number(v.payload.index),isTooltipActive:v.payload.active,activeIndex:v.payload.index==null?void 0:Number(v.payload.index),activeLabel:v.payload.label,activeDataKey:v.payload.dataKey,activeCoordinate:v.payload.coordinate},I=r(l,k);D=l[I]}else r==="value"&&(D=l.find(ne=>String(ne.value)===v.payload.label));var P=v.payload.coordinate;if(P==null||u==null){n(Sf({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:void 0,graphicalItemId:void 0}));return}if(D==null){n(Sf({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:v.payload.sourceViewBox,graphicalItemId:void 0}));return}var B=P.x,F=P.y,se=Math.min(B,u.x+u.width),ue=Math.min(F,u.y+u.height),de={x:o==="horizontal"?D.coordinate:se,y:o==="horizontal"?ue:D.coordinate},G=Sf({active:v.payload.active,coordinate:de,dataKey:v.payload.dataKey,index:String(D.index),label:v.payload.label,sourceViewBox:v.payload.sourceViewBox,graphicalItemId:v.payload.graphicalItemId});n(G)}}};return Bf.on(Ob,h),()=>{Bf.off(Ob,h)}},[c,n,t,e,r,l,o,u])}function vJ(){var e=ke(i1),t=ke(a1),n=Vt();b.useEffect(()=>{if(e==null)return Ku;var r=(l,o,u)=>{t!==u&&e===l&&n(lJ(o))};return Bf.on(K2,r),()=>{Bf.off(K2,r)}},[n,t,e])}function gJ(){var e=Vt();b.useEffect(()=>{e(rJ())},[e]),mJ(),vJ()}function pJ(e,t,n,r,l,o){var u=ke(w=>CW(w,e,t)),c=ke(aW),h=ke(a1),m=ke(i1),v=ke(pk),g=ke(iJ),x=(g==null?void 0:g.sourceViewBox)!=null,S=rg();b.useEffect(()=>{if(!x&&m!=null&&h!=null){var w=Sf({active:o,coordinate:n,dataKey:u,index:l,label:typeof r=="number"?String(r):r,sourceViewBox:S,graphicalItemId:c});Bf.emit(Ob,m,w,h)}},[x,n,u,c,l,r,h,m,v,o,S])}function Q2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function Z2(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);n{D(hZ({shared:N,trigger:O,axisId:A,active:l,defaultIndex:k}))},[D,N,O,A,l,k]);var I=rg(),P=YP(),B=oZ(N),F=(t=ke(oe=>AW(oe,B,O,k)))!==null&&t!==void 0?t:{},se=F.activeIndex,ue=F.isActive,de=ke(oe=>EW(oe,B,O,k)),G=ke(oe=>O3(oe,B,O,k)),ne=ke(oe=>_W(oe,B,O,k)),ie=de,ce=QW(),U=(n=l??ue)!==null&&n!==void 0?n:!1,Ae=NV([ie,U]),ee=SJ(Ae,2),ve=ee[0],z=ee[1],Y=B==="axis"?G:void 0;pJ(B,O,ne,Y,se,U);var le=R??ce;if(le==null||I==null||B==null)return null;var fe=ie??J2;U||(fe=J2),m&&fe.length&&(fe=ZF(fe.filter(oe=>oe.value!=null&&(oe.hide!==!0||r.includeHidden)),x,EJ));var De=fe.length>0,te=Z2(Z2({},r),{},{payload:fe,label:Y,active:U,activeIndex:se,coordinate:ne,accessibilityLayer:P}),ge=b.createElement(A7,{allowEscapeViewBox:o,animationDuration:u,animationEasing:c,isAnimationActive:v,active:U,coordinate:ne,hasPayload:De,offset:g,position:S,reverseDirection:w,useTranslate3d:j,viewBox:I,wrapperStyle:C,lastBoundingBox:ve,innerRef:z,hasPortalFromProps:!!R},AJ(h,te));return b.createElement(b.Fragment,null,Mv.createPortal(ge,le),U&&b.createElement(XW,{cursor:E,tooltipEventType:B,coordinate:ne,payload:fe,index:se}))}function NJ(e,t,n){return(t=TJ(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function TJ(e){var t=RJ(e,"string");return typeof t=="symbol"?t:t+""}function RJ(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}class MJ{constructor(t){NJ(this,"cache",new Map),this.maxSize=t}get(t){var n=this.cache.get(t);return n!==void 0&&(this.cache.delete(t),this.cache.set(t,n)),n}set(t,n){if(this.cache.has(t))this.cache.delete(t);else if(this.cache.size>=this.maxSize){var r=this.cache.keys().next().value;r!=null&&this.cache.delete(r)}this.cache.set(t,n)}clear(){this.cache.clear()}size(){return this.cache.size}}function eT(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function DJ(e){for(var t=1;t{try{var n=document.getElementById(nT);n||(n=document.createElement("span"),n.setAttribute("id",nT),n.setAttribute("aria-hidden","true"),document.body.appendChild(n)),Object.assign(n.style,LJ,t),n.textContent="".concat(e);var r=n.getBoundingClientRect();return{width:r.width,height:r.height}}catch{return{width:0,height:0}}},_f=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(t==null||ad.isSsr)return{width:0,height:0};if(!P3.enableCache)return rT(t,n);var r=UJ(t,n),l=tT.get(r);if(l)return l;var o=rT(t,n);return tT.set(r,o),o},k3;function jv(e,t){return FJ(e)||HJ(e,t)||BJ(e,t)||$J()}function $J(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function BJ(e,t){if(e){if(typeof e=="string")return iT(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?iT(e,t):void 0}}function iT(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);ne.length)&&(t=e.length);for(var n=0,r=Array(t);n{var t=e.children,n=e.breakAll,r=e.style;try{var l=[];yn(t)||(n?l=t.toString().split(""):l=t.toString().split(z3));var o=l.map(c=>({word:c,width:_f(c,r).width})),u=n?0:_f(" ",r).width;return{wordsWithComputedWidth:o,spaceWidth:u}}catch{return null}};function U3(e){return e==="start"||e==="middle"||e==="end"||e==="inherit"}function uee(e){return yn(e)||typeof e=="string"||typeof e=="number"||typeof e=="boolean"}var $3=(e,t,n,r)=>e.reduce((l,o)=>{var u=o.word,c=o.width,h=l[l.length-1];if(h&&c!=null&&(t==null||r||h.width+c+ne.reduce((t,n)=>t.width>n.width?t:n),cee="…",fT=(e,t,n,r,l,o,u,c)=>{var h=e.slice(0,t),m=L3({breakAll:n,style:r,children:h+cee});if(!m)return[!1,[]];var v=$3(m.wordsWithComputedWidth,o,u,c),g=v.length>l||B3(v).width>Number(o);return[g,v]},fee=(e,t,n,r,l)=>{var o=e.maxLines,u=e.children,c=e.style,h=e.breakAll,m=Re(o),v=String(u),g=$3(t,r,n,l);if(!m||l)return g;var x=g.length>o||B3(g).width>Number(r);if(!x)return g;for(var S=0,w=v.length-1,j=0,C;S<=w&&j<=v.length-1;){var E=Math.floor((S+w)/2),N=E-1,O=fT(v,N,h,c,o,r,n,l),T=uT(O,2),R=T[0],A=T[1],D=fT(v,E,h,c,o,r,n,l),k=uT(D,1),I=k[0];if(!R&&!I&&(S=E+1),R&&I&&(w=E-1),!R&&I){C=A;break}j++}return C||g},dT=e=>{var t=yn(e)?[]:e.toString().split(z3);return[{words:t,width:void 0}]},dee=e=>{var t=e.width,n=e.scaleToFit,r=e.children,l=e.style,o=e.breakAll,u=e.maxLines;if((t||n)&&!ad.isSsr){var c,h,m=L3({breakAll:o,children:r,style:l});if(m){var v=m.wordsWithComputedWidth,g=m.spaceWidth;c=v,h=g}else return dT(r);return fee({breakAll:o,children:r,maxLines:u,style:l},c,h,t,!!n)}return dT(r)},H3="#808080",hee={angle:0,breakAll:!1,capHeight:"0.71em",fill:H3,lineHeight:"1em",scaleToFit:!1,textAnchor:"start",verticalAnchor:"end",x:0,y:0},tw=b.forwardRef((e,t)=>{var n=Tr(e,hee),r=n.x,l=n.y,o=n.lineHeight,u=n.capHeight,c=n.fill,h=n.scaleToFit,m=n.textAnchor,v=n.verticalAnchor,g=sT(n,nee),x=b.useMemo(()=>dee({breakAll:g.breakAll,children:g.children,maxLines:g.maxLines,scaleToFit:h,style:g.style,width:g.width}),[g.breakAll,g.children,g.maxLines,h,g.style,g.width]),S=g.dx,w=g.dy,j=g.angle,C=g.className,E=g.breakAll,N=sT(g,ree);if(!Hi(r)||!Hi(l)||x.length===0)return null;var O=Number(r)+(Re(S)?S:0),T=Number(l)+(Re(w)?w:0);if(!at(O)||!at(T))return null;var R;switch(v){case"start":R=r0("calc(".concat(u,")"));break;case"middle":R=r0("calc(".concat((x.length-1)/2," * -").concat(o," + (").concat(u," / 2))"));break;default:R=r0("calc(".concat(x.length-1," * -").concat(o,")"));break}var A=[],D=x[0];if(h&&D!=null){var k=D.width,I=g.width;A.push("scale(".concat(Re(I)&&Re(k)?I/k:1,")"))}return j&&A.push("rotate(".concat(j,", ").concat(O,", ").concat(T,")")),A.length&&(N.transform=A.join(" ")),b.createElement("text",Nb({},Xr(N),{ref:t,x:O,y:T,className:Ct("recharts-text",C),textAnchor:m,fill:c.includes("url")?H3:c}),x.map((P,B)=>{var F=P.words.join(E?"":" ");return b.createElement("tspan",{x:O,dy:B===0?R:o,key:"".concat(F,"-").concat(B)},F)}))});tw.displayName="Text";var mee=["labelRef"],vee=["content"];function hT(e,t){if(e==null)return{};var n,r,l=gee(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var t=e.x,n=e.y,r=e.upperWidth,l=e.lowerWidth,o=e.width,u=e.height,c=e.children,h=b.useMemo(()=>({x:t,y:n,upperWidth:r,lowerWidth:l,width:o,height:u}),[t,n,r,l,o,u]);return b.createElement(F3.Provider,{value:h},c)},V3=()=>{var e=b.useContext(F3),t=rg();return e||(t?MS(t):void 0)},See=b.createContext(null),wee=()=>{var e=b.useContext(See),t=ke(wk);return e||t},jee=e=>{var t=e.value,n=e.formatter,r=yn(e.children)?t:e.children;return typeof n=="function"?n(r):r},jg=e=>e!=null&&typeof e=="function",Cee=(e,t)=>{var n=Vr(t-e),r=Math.min(Math.abs(t-e),360);return n*r},_ee=(e,t,n,r,l)=>{var o=e.offset,u=e.className,c=l.cx,h=l.cy,m=l.innerRadius,v=l.outerRadius,g=l.startAngle,x=l.endAngle,S=l.clockWise,w=(m+v)/2,j=Cee(g,x),C=j>=0?1:-1,E,N;switch(t){case"insideStart":E=g+C*o,N=S;break;case"insideEnd":E=x-C*o,N=!S;break;case"end":E=x+C*o,N=S;break;default:throw new Error("Unsupported position ".concat(t))}N=j<=0?N:!N;var O=Dn(c,h,w,E),T=Dn(c,h,w,E+(N?1:-1)*359),R="M".concat(O.x,",").concat(O.y,` A`).concat(w,",").concat(w,",0,1,").concat(N?0:1,`, - `).concat(T.x,",").concat(T.y),E=yn(e.id)?Tf("recharts-radial-line-"):e.id;return b.createElement("text",va({},r,{dominantBaseline:"central",className:Ct("recharts-radial-bar-label",u)}),b.createElement("defs",null,b.createElement("path",{id:E,d:R})),b.createElement("textPath",{xlinkHref:"#".concat(E)},n))},mee=(e,t,n)=>{var r=e.cx,l=e.cy,o=e.innerRadius,u=e.outerRadius,c=e.startAngle,h=e.endAngle,m=(c+h)/2;if(n==="outside"){var v=Dn(r,l,u+t,m),p=v.x,x=v.y;return{x:p,y:x,textAnchor:p>=r?"start":"end",verticalAnchor:"middle"}}if(n==="center")return{x:r,y:l,textAnchor:"middle",verticalAnchor:"middle"};if(n==="centerTop")return{x:r,y:l,textAnchor:"middle",verticalAnchor:"start"};if(n==="centerBottom")return{x:r,y:l,textAnchor:"middle",verticalAnchor:"end"};var S=(o+u)/2,w=Dn(r,l,S,m),j=w.x,C=w.y;return{x:j,y:C,textAnchor:"middle",verticalAnchor:"middle"}},uu=e=>e!=null&&"cx"in e&&Re(e.cx),vee={angle:0,offset:5,zIndex:Qn.label,position:"middle",textBreakAll:!1};function gee(e){if(!uu(e))return e;var t=e.cx,n=e.cy,r=e.outerRadius,l=r*2;return{x:t-r,y:n-r,width:l,upperWidth:l,lowerWidth:l,height:l}}function xl(e){var t,n,r=Tr(e,vee),l=r.viewBox,o=r.parentViewBox,u=r.position,c=r.value,h=r.children,m=r.content,v=r.className,p=v===void 0?"":v,x=r.textBreakAll,S=r.labelRef,w=cee(),j=U3(),C=u==="center"?j:w??j,A,N,O;l==null?A=C:uu(l)?A=l:A=TS(l);var T=gee(A);if(!A||yn(c)&&yn(h)&&!b.isValidElement(m)&&typeof m!="function")return null;var R=uu(A)&&(u==="insideStart"||u==="insideEnd"||u==="end");if(uu(A))R||(O=mee(A,r.offset,r.position));else if(T){var E=LH({viewBox:T,position:u,offset:r.offset,parentViewBox:uu(o)?void 0:o});O=bo(bo({x:E.x,y:E.y,textAnchor:E.horizontalAnchor,verticalAnchor:E.verticalAnchor},E.width!==void 0?{width:E.width}:{}),E.height!==void 0?{height:E.height}:{})}var D=bo(bo(bo(bo({},((t=O)===null||t===void 0?void 0:t.x)!==void 0?{x:O.x}:{}),((n=O)===null||n===void 0?void 0:n.y)!==void 0?{y:O.y}:{}),r),{},{viewBox:A});if(b.isValidElement(m)){D.labelRef;var k=uT(D,nee);return b.cloneElement(m,k)}if(typeof m=="function"){D.content;var I=uT(D,ree);if(N=b.createElement(m,I),b.isValidElement(N))return N}else N=fee(r);var P=Xr(r);return R&&uu(A)?hee(r,u,N,P,A):O==null?null:b.createElement(La,{zIndex:r.zIndex},b.createElement(J1,va({ref:S,className:Ct("recharts-label",p)},P,O,{textAnchor:P3(P.textAnchor)?P.textAnchor:O.textAnchor,breakAll:x}),N))}xl.displayName="Label";var pee=(e,t,n)=>{if(!e)return null;var r={viewBox:t,labelRef:n};return e===!0?b.createElement(xl,va({key:"label-implicit"},r)):Hi(e)?b.createElement(xl,va({key:"label-implicit",value:e},r)):b.isValidElement(e)?e.type===xl?b.cloneElement(e,bo({key:"label-implicit"},r)):b.createElement(xl,va({key:"label-implicit",content:e},r)):wg(e)?b.createElement(xl,va({key:"label-implicit",content:e},r)):e&&typeof e=="object"?b.createElement(xl,va({},e,{key:"label-implicit"},r)):null};function yee(e){var t=e.label,n=e.labelRef,r=U3();return pee(t,r,n)||null}var xee=["valueAccessor"],bee=["dataKey","clockWise","id","textBreakAll","zIndex"];function jv(){return jv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var t=Array.isArray(e.value)?e.value[e.value.length-1]:e.value;if(ZJ(t))return t},$3=b.createContext(void 0),jee=$3.Provider,B3=b.createContext(void 0);B3.Provider;function Cee(){return b.useContext($3)}function _ee(){return b.useContext(B3)}function Mm(e){var t=e.valueAccessor,n=t===void 0?wee:t,r=fT(e,xee),l=r.dataKey;r.clockWise;var o=r.id,u=r.textBreakAll,c=r.zIndex,h=fT(r,bee),m=Cee(),v=_ee(),p=m||v;return!p||!p.length?null:b.createElement(La,{zIndex:c??Qn.label},b.createElement(_a,{className:"recharts-label-list"},p.map((x,S)=>{var w,j=yn(l)?n(x,S):pn(x.payload,l),C=yn(o)?{}:{id:"".concat(o,"-").concat(S)};return b.createElement(xl,jv({key:"label-".concat(S)},Xr(x),h,C,{fill:(w=r.fill)!==null&&w!==void 0?w:x.fill,parentViewBox:x.parentViewBox,value:j,textBreakAll:u,viewBox:x.viewBox,index:S,zIndex:0}))})))}Mm.displayName="LabelList";function Aee(e){var t=e.label;return t?t===!0?b.createElement(Mm,{key:"labelList-implicit"}):b.isValidElement(t)||wg(t)?b.createElement(Mm,{key:"labelList-implicit",content:t}):typeof t=="object"?b.createElement(Mm,jv({key:"labelList-implicit"},t,{type:String(t.type)})):null:null}function Nb(){return Nb=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var t=e.cx,n=e.cy,r=e.r,l=e.className,o=Ct("recharts-dot",l);return Re(t)&&Re(n)&&Re(r)?b.createElement("circle",Nb({},Bi(e),IS(e),{className:o,cx:t,cy:n,r})):null},Eee={radiusAxis:{},angleAxis:{}},F3=Hn({name:"polarAxis",initialState:Eee,reducers:{addRadiusAxis(e,t){e.radiusAxis[t.payload.id]=rt(t.payload)},removeRadiusAxis(e,t){delete e.radiusAxis[t.payload.id]},addAngleAxis(e,t){e.angleAxis[t.payload.id]=rt(t.payload)},removeAngleAxis(e,t){delete e.angleAxis[t.payload.id]}}}),jg=F3.actions;jg.addRadiusAxis;jg.removeRadiusAxis;jg.addAngleAxis;jg.removeAngleAxis;var Oee=F3.reducer;function Nee(e){return e&&typeof e=="object"&&"className"in e&&typeof e.className=="string"?e.className:""}var V3=e=>e&&typeof e=="object"&&"clipDot"in e?!!e.clipDot:!0;function dT(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function hT(e){for(var t=1;t{r||(l.current===null?n(WQ(t)):l.current!==t&&n(JQ({prev:l.current,next:t})),l.current=t)},[t,n,r]),b.useLayoutEffect(()=>()=>{l.current&&(n(eZ(l.current)),l.current=null)},[n]),null}function Uee(e){var t=e.legendPayload,n=Vt(),r=fr(),l=b.useRef(null);return b.useLayoutEffect(()=>{r||(l.current===null?n(pG(t)):l.current!==t&&n(yG({prev:l.current,next:t})),l.current=t)},[n,r,t]),b.useLayoutEffect(()=>()=>{l.current&&(n(xG(l.current)),l.current=null)},[n]),null}function $ee(e,t){return Vee(e)||Fee(e,t)||Hee(e,t)||Bee()}function Bee(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Hee(e,t){if(e){if(typeof e=="string")return mT(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?mT(e,t):void 0}}function mT(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n2&&arguments[2]!==void 0?arguments[2]:[],r=[];for(var l of n)r.push({status:"removed",prev:l});for(var o=0;oe[Math.floor(o*n)]);return tw(r,t)}function Kee(e,t){var n=t.map((r,l)=>e[l]);return tw(n,t)}function Yee(e,t){for(var n=new Map,r=0;r{var S=n(p,x);if(S!=null){var w=r.get(S);if(w!==void 0)return l.add(S),w}}),u=[];for(var c of r){var h=$ee(c,2),m=h[0],v=h[1];l.has(m)||u.push(v)}return tw(o,t,u)}function Qee(e,t,n){return t==null?null:e==null?t.map(r=>({status:"added",next:r})):n===ew?qee(e,t):n===Gee?Kee(e,t):Xee(e,t,n)}function Zee(e,t){var n=b.useRef(e),r=b.useRef(t.current),l=b.useRef(!0);n.current!==e&&(n.current=e,r.current=t.current,l.current=!1);var o=b.useCallback(function(u,c){var h=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(c===0){l.current=!0;return}c===1&&(r.current=u),c>0&&l.current&&h&&(t.current=u)},[t]);return{startValue:r.current,syncStepValue:o}}function Wee(e,t){return nte(e)||tte(e,t)||ete(e,t)||Jee()}function Jee(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ete(e,t){if(e){if(typeof e=="string")return vT(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?vT(e,t):void 0}}function vT(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{typeof e=="function"&&e(),o(!0)},[e]),c=b.useCallback(()=>{typeof t=="function"&&t(),o(!1)},[t]);return{isAnimating:l,handleAnimationStart:u,handleAnimationEnd:c}}function ite(e){var t,n=e.animationInput,r=e.animationIdPrefix,l=e.items,o=e.previousItemsRef,u=e.isAnimationActive,c=e.animationBegin,h=e.animationDuration,m=e.animationEasing,v=e.onAnimationStart,p=e.onAnimationEnd,x=e.animationInterpolateFn,S=e.animationMatchBy,w=e.shouldUpdatePreviousRef,j=e.children,C=e.layout,A=XP(n,r),N=Zee(A,o),O=(t=N.startValue)!==null&&t!==void 0?t:null,T=Qee(O,l,S??ew);return b.createElement(YP,{animationId:A,begin:c,duration:h,isActive:u,easing:m,onAnimationEnd:p,onAnimationStart:v,key:A},R=>{var E=O==null,D=l==null?l:x(T,R,C),k=w?w(R):R>0;return N.syncStepValue(D,R,k),D==null?null:j(D,R,E)})}var r0;function ate(e,t){return ute(e)||ste(e,t)||ote(e,t)||lte()}function lte(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ote(e,t){if(e){if(typeof e=="string")return gT(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?gT(e,t):void 0}}function gT(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{var e=b.useState(()=>Tf("uid-")),t=ate(e,1),n=t[0];return n},fte=(r0=Ll.useId)!==null&&r0!==void 0?r0:cte;function dte(e,t){var n=fte();return t||(e?"".concat(e,"-").concat(n):n)}var hte=b.createContext(void 0),mte=e=>{var t=e.id,n=e.type,r=e.children,l=dte("recharts-".concat(n),t);return b.createElement(hte.Provider,{value:l},r(l))},vte={cartesianItems:[],polarItems:[]},q3=Hn({name:"graphicalItems",initialState:vte,reducers:{addCartesianGraphicalItem:{reducer(e,t){e.cartesianItems.push(rt(t.payload))},prepare:Ot()},replaceCartesianGraphicalItem:{reducer(e,t){var n=t.payload,r=n.prev,l=n.next,o=Gr(e).cartesianItems.indexOf(rt(r));o>-1&&(e.cartesianItems[o]=rt(l))},prepare:Ot()},removeCartesianGraphicalItem:{reducer(e,t){var n=Gr(e).cartesianItems.indexOf(rt(t.payload));n>-1&&e.cartesianItems.splice(n,1)},prepare:Ot()},addPolarGraphicalItem:{reducer(e,t){e.polarItems.push(rt(t.payload))},prepare:Ot()},removePolarGraphicalItem:{reducer(e,t){var n=Gr(e).polarItems.indexOf(rt(t.payload));n>-1&&e.polarItems.splice(n,1)},prepare:Ot()},replacePolarGraphicalItem:{reducer(e,t){var n=t.payload,r=n.prev,l=n.next,o=Gr(e).polarItems.indexOf(rt(r));o>-1&&(e.polarItems[o]=rt(l))},prepare:Ot()}}}),ic=q3.actions,gte=ic.addCartesianGraphicalItem,pte=ic.replaceCartesianGraphicalItem,yte=ic.removeCartesianGraphicalItem;ic.addPolarGraphicalItem;ic.removePolarGraphicalItem;ic.replacePolarGraphicalItem;var xte=q3.reducer,bte=e=>{var t=Vt(),n=b.useRef(null);return b.useLayoutEffect(()=>{n.current===null?t(gte(e)):n.current!==e&&t(pte({prev:n.current,next:e})),n.current=e},[t,e]),b.useLayoutEffect(()=>()=>{n.current&&(t(yte(n.current)),n.current=null)},[t]),null},Ste=b.memo(bte),wte=["points"];function pT(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function i0(e){for(var t=1;t{var A,N,O=i0(i0(i0({r:3},u),x),{},{index:C,cx:(A=j.x)!==null&&A!==void 0?A:void 0,cy:(N=j.y)!==null&&N!==void 0?N:void 0,dataKey:o,value:j.value,payload:j.payload,points:t});return b.createElement(Ote,{key:"dot-".concat(C),option:n,dotProps:O,className:l})}),w={};return c&&h!=null&&(w.clipPath="url(#clipPath-".concat(p?"":"dots-").concat(h,")")),b.createElement(La,{zIndex:v},b.createElement(_a,Cv({className:r},w),S))}function yT(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function vm(e){for(var t=1;t({top:e.top,bottom:e.bottom,left:e.left,right:e.right})),Gte=W([Vte,Ma,Da],(e,t,n)=>{if(!(!e||t==null||n==null))return{x:e.left,y:e.top,width:Math.max(0,t-e.left-e.right),height:Math.max(0,n-e.top-e.bottom)}}),nw=()=>ke(Gte),qte=()=>ke(WZ);function xT(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function a0(e){for(var t=1;t{var t=e.point,n=e.childIndex,r=e.mainColor,l=e.activeDot,o=e.dataKey,u=e.clipPath;if(l===!1||t.x==null||t.y==null)return null;var c={index:n,dataKey:o,cx:t.x,cy:t.y,r:4,fill:r??"none",strokeWidth:2,stroke:"#fff",payload:t.payload,value:t.value},h=a0(a0(a0({},c),zv(l)),IS(l)),m;return b.isValidElement(l)?m=b.cloneElement(l,h):typeof l=="function"?m=l(h):m=b.createElement(H3,h),b.createElement(_a,{className:"recharts-active-dot",clipPath:u},m)};function Zte(e){var t=e.points,n=e.mainColor,r=e.activeDot,l=e.itemDataKey,o=e.clipPath,u=e.zIndex,c=u===void 0?Qn.activeDot:u,h=ke($f),m=qte();if(t==null||m==null)return null;var v=t.find(p=>m.includes(p.payload));return yn(v)?null:b.createElement(La,{zIndex:c},b.createElement(Qte,{point:v,childIndex:Number(h),mainColor:n,dataKey:l,activeDot:r,clipPath:o}))}var Wte=e=>{var t=e.chartData,n=Vt(),r=fr();return b.useEffect(()=>r?()=>{}:(n(V2(t)),()=>{n(V2(void 0))}),[t,n,r]),null},bT={x:0,y:0,width:0,height:0,padding:{top:0,right:0,bottom:0,left:0}},Y3=Hn({name:"brush",initialState:bT,reducers:{setBrushSettings(e,t){return t.payload==null?bT:t.payload}}});Y3.actions.setBrushSettings;var Jte=Y3.reducer;function ene(e){return(e%180+180)%180}var tne=function(t){var n=t.width,r=t.height,l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,o=ene(l),u=o*Math.PI/180,c=Math.atan(r/n),h=u>c&&u{e.dots.push(t.payload)},removeDot:(e,t)=>{var n=Gr(e).dots.findIndex(r=>r===t.payload);n!==-1&&e.dots.splice(n,1)},addArea:(e,t)=>{e.areas.push(t.payload)},removeArea:(e,t)=>{var n=Gr(e).areas.findIndex(r=>r===t.payload);n!==-1&&e.areas.splice(n,1)},addLine:(e,t)=>{e.lines.push(rt(t.payload))},removeLine:(e,t)=>{var n=Gr(e).lines.findIndex(r=>r===t.payload);n!==-1&&e.lines.splice(n,1)}}}),ac=X3.actions;ac.addDot;ac.removeDot;ac.addArea;ac.removeArea;ac.addLine;ac.removeLine;var rne=X3.reducer;function ine(e,t){return sne(e)||one(e,t)||lne(e,t)||ane()}function ane(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function lne(e,t){if(e){if(typeof e=="string")return ST(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ST(e,t):void 0}}function ST(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{var t=e.children,n=b.useState("".concat(Tf("recharts"),"-clip")),r=ine(n,1),l=r[0],o=nw();if(o==null)return null;var u=o.x,c=o.y,h=o.width,m=o.height;return b.createElement(une.Provider,{value:l},b.createElement("defs",null,b.createElement("clipPath",{id:l},b.createElement("rect",{x:u,y:c,height:m,width:h}))),t)};function fne(){}function wT(e){if(!e||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);return t===null||t===Object.prototype||Object.getPrototypeOf(t)===null?Object.prototype.toString.call(e)==="[object Object]":!1}function dne(e,t,n){return wf(e,t,void 0,void 0,void 0,void 0,n)}function wf(e,t,n,r,l,o,u){const c=u(e,t,n,r,l,o);if(c!==void 0)return c;if(typeof e==typeof t)switch(typeof e){case"bigint":case"string":case"boolean":case"symbol":case"undefined":return e===t;case"number":return e===t||Object.is(e,t);case"function":return e===t;case"object":return Af(e,t,o,u)}return Af(e,t,o,u)}function Af(e,t,n,r){var l;if(Object.is(e,t))return!0;let o=Io(e),u=Io(t);if(o==="[object Arguments]"&&(o=Om),u==="[object Arguments]"&&(u=Om),o!==u)return!1;switch(o){case LS:return e.toString()===t.toString();case US:{const m=e.valueOf(),v=t.valueOf();return jf(m,v)}case $S:case OD:case ED:return Object.is(e.valueOf(),t.valueOf());case _D:return e.source===t.source&&e.flags===t.flags;case bF:return e===t}n=(l=n)!==null&&l!==void 0?l:new Map;const c=n.get(e),h=n.get(t);if(c!=null&&h!=null)return c===t;n.set(e,t),n.set(t,e);try{switch(o){case ND:if(e.size!==t.size)return!1;for(const[m,v]of e.entries())if(!t.has(m)||!wf(v,t.get(m),m,e,t,n,r))return!1;return!0;case TD:{if(e.size!==t.size)return!1;const m=Array.from(e.values()),v=Array.from(t.values());for(let p=0;pwf(x,w,void 0,e,t,n,r));if(S===-1)return!1;v.splice(S,1)}return!0}case RD:case PD:case kD:case ID:case zD:case wF:case LD:case UD:case $D:case jF:case BD:case HD:if(tb(e)!==tb(t)||e.length!==t.length)return!1;for(let m=0;me*l)return!1;var o=n();return e*(t-e*o/2-r)>=0&&e*(t+e*o/2-l)<=0}function gne(e,t){return Q3(e,t+1)}function pne(e,t,n,r,l){for(var o=(r||[]).slice(),u=t.start,c=t.end,h=0,m=1,v=u,p=function(){var w=r==null?void 0:r[h];if(w===void 0)return{v:Q3(r,m)};var j=h,C,A=()=>(C===void 0&&(C=n(w,j)),C),N=w.coordinate,O=h===0||Hf(e,N,A,v,c);O||(h=0,v=u,m+=1),O&&(v=N+e*(A()/2+l),h+=m)},x;m<=o.length;)if(x=p(),x)return x.v;return[]}function yne(e,t,n,r,l){var o=(r||[]).slice(),u=o.length;if(u===0)return[];for(var c=t.start,h=t.end,m=1;m<=u;m++){for(var v=(u-1)%m,p=c,x=!0,S=function(){var T=r[j];if(T==null)return 0;var R=j,E,D=()=>(E===void 0&&(E=n(T,R)),E),k=T.coordinate,I=j===v||Hf(e,k,D,p,h);if(!I)return x=!1,1;I&&(p=k+e*(D()/2+l))},w,j=v;j(j===void 0&&(j=n(S,x)),j);if(x===u-1){var A=e*(w.coordinate+e*C()/2-h);o[x]=w=Ln(Ln({},w),{},{tickCoord:A>0?w.coordinate-A*e:w.coordinate})}else o[x]=w=Ln(Ln({},w),{},{tickCoord:w.coordinate});if(w.tickCoord!=null){var N=Hf(e,w.tickCoord,C,c,h);N&&(h=w.tickCoord-e*(C()/2+l),o[x]=Ln(Ln({},w),{},{isShow:!0}))}},v=u-1;v>=0;v--)m(v);return o}function jne(e,t,n,r,l,o){var u=(r||[]).slice(),c=u.length,h=t.start,m=t.end;if(o){var v=r[c-1];if(v!=null){var p=n(v,c-1),x=e*(v.coordinate+e*p/2-m);if(u[c-1]=v=Ln(Ln({},v),{},{tickCoord:x>0?v.coordinate-x*e:v.coordinate}),v.tickCoord!=null){var S=Hf(e,v.tickCoord,()=>p,h,m);S&&(m=v.tickCoord-e*(p/2+l),u[c-1]=Ln(Ln({},v),{},{isShow:!0}))}}}for(var w=o?c-1:c,j=function(N){var O=u[N];if(O==null)return 1;var T=O,R,E=()=>(R===void 0&&(R=n(O,N)),R);if(N===0){var D=e*(T.coordinate-e*E()/2-h);u[N]=T=Ln(Ln({},T),{},{tickCoord:D<0?T.coordinate-D*e:T.coordinate})}else u[N]=T=Ln(Ln({},T),{},{tickCoord:T.coordinate});if(T.tickCoord!=null){var k=Hf(e,T.tickCoord,E,h,m);k&&(h=T.tickCoord+e*(E()/2+l),u[N]=Ln(Ln({},T),{},{isShow:!0}))}},C=0;C{var D=typeof m=="function"?m(R.value,E):R.value;return w==="width"?mne(_f(D,{fontSize:t,letterSpacing:n}),j,p):_f(D,{fontSize:t,letterSpacing:n})[w]},A=l[0],N=l[1],O=l.length>=2&&A!=null&&N!=null?Vr(N.coordinate-A.coordinate):1,T=vne(o,O,w);return h==="equidistantPreserveStart"?pne(O,T,C,l,u):h==="equidistantPreserveEnd"?yne(O,T,C,l,u):(h==="preserveStart"||h==="preserveStartEnd"?S=jne(O,T,C,l,u,h==="preserveStartEnd"):S=wne(O,T,C,l,u),S.filter(R=>R.isShow))}var Cne=e=>{var t=e.ticks,n=e.label,r=e.labelGapWithTick,l=r,o=e.tickSize,u=o===void 0?0:o,c=e.tickMargin,h=c===void 0?0:c,m=0;if(t){Array.from(t).forEach(S=>{if(S){var w=S.getBoundingClientRect();w.width>m&&(m=w.width)}});var v=n?n.getBoundingClientRect().width:0,p=u+h,x=m+p+v+(n?l:0);return Math.round(x)}return 0},_ne=e=>{var t=e.ticks,n=e.label,r=e.labelGapWithTick,l=r,o=e.tickSize,u=o===void 0?0:o,c=e.tickMargin,h=c===void 0?0:c,m=0;if(t){Array.from(t).forEach(S=>{if(S){var w=S.getBoundingClientRect();w.height>m&&(m=w.height)}});var v=n?n.getBoundingClientRect().height:0,p=u+h,x=m+p+v+(n?l:0);return Math.round(x)}return 0},Ane={xAxis:{},yAxis:{}},Z3=Hn({name:"renderedTicks",initialState:Ane,reducers:{setRenderedTicks:(e,t)=>{var n=t.payload,r=n.axisType,l=n.axisId,o=n.ticks;e[r][l]=rt(o)},removeRenderedTicks:(e,t)=>{var n=t.payload,r=n.axisType,l=n.axisId;delete e[r][l]}}}),W3=Z3.actions,Ene=W3.setRenderedTicks,One=W3.removeRenderedTicks,Nne=Z3.reducer,Tne=["axisLine","width","height","className","hide","ticks","axisType","axisId"];function CT(e,t){return Pne(e)||Dne(e,t)||Mne(e,t)||Rne()}function Rne(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Mne(e,t){if(e){if(typeof e=="string")return _T(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_T(e,t):void 0}}function _T(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{if(!(r==null||n==null)){var u=t.map(h=>({value:h.value,coordinate:h.coordinate,offset:h.offset,index:h.index})),c=o.current;c!=null&&c.axisId===r&&c.axisType===n&&hne(c.ticks,u)||(o.current={ticks:u,axisId:r,axisType:n},l(Ene({ticks:u,axisId:r,axisType:n})))}},[l,t,r,n]),b.useEffect(()=>r==null||n==null?Ku:()=>{l(One({axisId:r,axisType:n}))},[l,r,n]),null}var qne=b.forwardRef((e,t)=>{var n=e.ticks,r=n===void 0?[]:n,l=e.tick,o=e.tickLine,u=e.stroke,c=e.tickFormatter,h=e.unit,m=e.padding,v=e.tickTextProps,p=e.orientation,x=e.mirror,S=e.x,w=e.y,j=e.width,C=e.height,A=e.tickSize,N=e.tickMargin,O=e.fontSize,T=e.letterSpacing,R=e.getTicksConfig,E=e.events,D=e.axisType,k=e.axisId,I=rw($t($t({},R),{},{ticks:r}),O,T),P=Bi(R),B=zv(l),F=P3(P.textAnchor)?P.textAnchor:Hne(p,x),se=Fne(p,x),ue={};typeof o=="object"&&(ue=o);var de=$t($t({},P),{},{fill:"none"},ue),G=I.map(ce=>$t({entry:ce},Bne(ce,S,w,j,C,p,A,x,N))),ne=G.map(ce=>{var U=ce.entry,Ee=ce.line;return b.createElement(_a,{className:"recharts-cartesian-axis-tick",key:"tick-".concat(U.value,"-").concat(U.coordinate,"-").concat(U.tickCoord)},o&&b.createElement("line",Qo({},de,Ee,{className:Ct("recharts-cartesian-axis-tick-line",es(o,"className"))})))}),ie=G.map((ce,U)=>{var Ee,ee,ve=ce.entry,z=ce.tick,Y=$t($t($t($t({verticalAnchor:se},P),{},{textAnchor:F,stroke:"none",fill:u},z),{},{index:U,payload:ve,visibleTicksCount:I.length,tickFormatter:c,padding:m},v),{},{angle:(Ee=(ee=v==null?void 0:v.angle)!==null&&ee!==void 0?ee:P.angle)!==null&&Ee!==void 0?Ee:0}),le=$t($t({},Y),B);return b.createElement(_a,Qo({className:"recharts-cartesian-axis-tick-label",key:"tick-label-".concat(ve.value,"-").concat(ve.coordinate,"-").concat(ve.tickCoord)},fF(E,ve,U)),l&&b.createElement(Vne,{option:l,tickProps:le,value:"".concat(typeof c=="function"?c(ve.value,U):ve.value).concat(h||"")}))});return b.createElement("g",{className:"recharts-cartesian-axis-ticks recharts-".concat(D,"-ticks")},b.createElement(Gne,{ticks:I,axisId:k,axisType:D}),ie.length>0&&b.createElement(La,{zIndex:Qn.label},b.createElement("g",{className:"recharts-cartesian-axis-tick-labels recharts-".concat(D,"-tick-labels"),ref:t},ie)),ne.length>0&&b.createElement("g",{className:"recharts-cartesian-axis-tick-lines recharts-".concat(D,"-tick-lines")},ne))}),Kne=b.forwardRef((e,t)=>{var n=e.axisLine,r=e.width,l=e.height,o=e.className,u=e.hide,c=e.ticks,h=e.axisType,m=e.axisId,v=kne(e,Tne),p=b.useState(""),x=CT(p,2),S=x[0],w=x[1],j=b.useState(""),C=CT(j,2),A=C[0],N=C[1],O=b.useRef(null);b.useImperativeHandle(t,()=>({getCalculatedWidth:()=>{var R;return Cne({ticks:O.current,label:(R=e.labelRef)===null||R===void 0?void 0:R.current,labelGapWithTick:5,tickSize:e.tickSize,tickMargin:e.tickMargin})},getCalculatedHeight:()=>{var R;return _ne({ticks:O.current,label:(R=e.labelRef)===null||R===void 0?void 0:R.current,labelGapWithTick:5,tickSize:e.tickSize,tickMargin:e.tickMargin})}}));var T=b.useCallback(R=>{if(R){var E=R.getElementsByClassName("recharts-cartesian-axis-tick-value");O.current=E;var D=E[0];if(D){var k=window.getComputedStyle(D),I=k.fontSize,P=k.letterSpacing;(I!==S||P!==A)&&(w(I),N(P))}}},[S,A]);return u||r!=null&&r<=0||l!=null&&l<=0?null:b.createElement(La,{zIndex:e.zIndex},b.createElement(_a,{className:Ct("recharts-cartesian-axis",o)},b.createElement($ne,{x:e.x,y:e.y,width:r,height:l,orientation:e.orientation,mirror:e.mirror,axisLine:n,otherSvgProps:Bi(e)}),b.createElement(qne,{ref:T,axisType:h,events:v,fontSize:S,getTicksConfig:e,height:e.height,letterSpacing:A,mirror:e.mirror,orientation:e.orientation,padding:e.padding,stroke:e.stroke,tick:e.tick,tickFormatter:e.tickFormatter,tickLine:e.tickLine,tickMargin:e.tickMargin,tickSize:e.tickSize,tickTextProps:e.tickTextProps,ticks:c,unit:e.unit,width:e.width,x:e.x,y:e.y,axisId:m}),b.createElement(see,{x:e.x,y:e.y,width:e.width,height:e.height,lowerWidth:e.width,upperWidth:e.width},b.createElement(yee,{label:e.label,labelRef:e.labelRef}),e.children)))}),iw=b.forwardRef((e,t)=>{var n=Tr(e,wa);return b.createElement(Kne,Qo({},n,{ref:t}))});iw.displayName="CartesianAxis";var Yne={grid:{stroke:"#ccc",fill:"none"}},J3=b.createContext(Yne);J3.Provider;var Xne=()=>b.useContext(J3),Qne=["x1","y1","x2","y2","key"],Zne=["offset"],Wne=["xAxisId","yAxisId"],Jne=["xAxisId","yAxisId"];function ET(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function Un(e){for(var t=1;t{var t=e.fill;if(!t||t==="none")return null;var n=e.fillOpacity,r=e.x,l=e.y,o=e.width,u=e.height,c=e.ry;return b.createElement("rect",{x:r,y:l,ry:c,width:o,height:u,stroke:"none",fill:t,fillOpacity:n,className:"recharts-cartesian-grid-bg"})};function ez(e){var t=e.option,n=e.lineItemProps,r;if(b.isValidElement(t))r=b.cloneElement(t,n);else if(typeof t=="function")r=t(n);else{var l,o=n.x1,u=n.y1,c=n.x2,h=n.y2,m=n.key,v=_v(n,Qne),p=(l=Bi(v))!==null&&l!==void 0?l:{};p.offset;var x=_v(p,Zne),S=Array.isArray(x.strokeDasharray)?x.strokeDasharray.join(","):x.strokeDasharray;r=b.createElement("line",_o({},x,{strokeDasharray:S,x1:o,y1:u,x2:c,y2:h,fill:"none",key:m}))}return r}function are(e){var t=e.x,n=e.width,r=e.horizontal,l=r===void 0?!0:r,o=e.horizontalPoints;if(!l||!o||!o.length)return null;e.xAxisId,e.yAxisId;var u=_v(e,Wne),c=o.map((h,m)=>{var v=Un(Un({},u),{},{x1:t,y1:h,x2:t+n,y2:h,key:"line-".concat(m),index:m});return b.createElement(ez,{key:"line-".concat(m),option:l,lineItemProps:v})});return b.createElement("g",{className:"recharts-cartesian-grid-horizontal"},c)}function lre(e){var t=e.y,n=e.height,r=e.vertical,l=r===void 0?!0:r,o=e.verticalPoints;if(!l||!o||!o.length)return null;e.xAxisId,e.yAxisId;var u=_v(e,Jne),c=o.map((h,m)=>{var v=Un(Un({},u),{},{x1:h,y1:t,x2:h,y2:t+n,key:"line-".concat(m),index:m});return b.createElement(ez,{option:l,lineItemProps:v,key:"line-".concat(m)})});return b.createElement("g",{className:"recharts-cartesian-grid-vertical"},c)}function ore(e){var t=e.horizontalFill,n=e.fillOpacity,r=e.x,l=e.y,o=e.width,u=e.height,c=e.horizontalPoints,h=e.horizontal,m=h===void 0?!0:h;if(!m||!t||!t.length||c==null)return null;var v=c.map(x=>Math.round(x+l-l)).sort((x,S)=>x-S);l!==v[0]&&v.unshift(0);var p=v.map((x,S)=>{var w=v[S+1],j=w==null,C=j?l+u-x:w-x;if(C<=0)return null;var A=S%t.length;return b.createElement("rect",{key:"react-".concat(S),y:x,x:r,height:C,width:o,stroke:"none",fill:t[A],fillOpacity:n,className:"recharts-cartesian-grid-bg"})});return b.createElement("g",{className:"recharts-cartesian-gridstripes-horizontal"},p)}function sre(e){var t=e.vertical,n=t===void 0?!0:t,r=e.verticalFill,l=e.fillOpacity,o=e.x,u=e.y,c=e.width,h=e.height,m=e.verticalPoints;if(!n||!r||!r.length)return null;var v=m.map(x=>Math.round(x+o-o)).sort((x,S)=>x-S);o!==v[0]&&v.unshift(0);var p=v.map((x,S)=>{var w=v[S+1],j=w==null,C=j?o+c-x:w-x;if(C<=0)return null;var A=S%r.length;return b.createElement("rect",{key:"react-".concat(S),x,y:u,width:C,height:h,stroke:"none",fill:r[A],fillOpacity:l,className:"recharts-cartesian-grid-bg"})});return b.createElement("g",{className:"recharts-cartesian-gridstripes-vertical"},p)}var ure=(e,t)=>{var n=e.xAxis,r=e.width,l=e.height,o=e.offset;return EP(rw(Un(Un(Un({},wa),n),{},{ticks:OP(n),viewBox:{x:0,y:0,width:r,height:l}})),o.left,o.left+o.width,t)},cre=(e,t)=>{var n=e.yAxis,r=e.width,l=e.height,o=e.offset;return EP(rw(Un(Un(Un({},wa),n),{},{ticks:OP(n),viewBox:{x:0,y:0,width:r,height:l}})),o.top,o.top+o.height,t)},fre={horizontal:!0,vertical:!0,horizontalPoints:[],verticalPoints:[],verticalFill:[],horizontalFill:[],xAxisId:0,yAxisId:0,syncWithTicks:!1,zIndex:Qn.grid};function aw(e){var t,n,r,l,o,u,c=zP(),h=LP(),m=IP(),v=Un(Un({},Tr(e,fre)),{},{x:Re(e.x)?e.x:m.left,y:Re(e.y)?e.y:m.top,width:Re(e.width)?e.width:m.width,height:Re(e.height)?e.height:m.height}),p=v.xAxisId,x=v.yAxisId,S=v.x,w=v.y,j=v.width,C=v.height,A=v.syncWithTicks,N=v.horizontalValues,O=v.verticalValues,T=fr(),R=ke(ne=>R2(ne,"xAxis",p,T)),E=ke(ne=>R2(ne,"yAxis",x,T)),D=Xne(),k={stroke:(t=v.stroke)!==null&&t!==void 0?t:D.grid.stroke,strokeWidth:(n=v.strokeWidth)!==null&&n!==void 0?n:D.grid.strokeWidth,strokeOpacity:(r=v.strokeOpacity)!==null&&r!==void 0?r:D.grid.strokeOpacity,strokeDasharray:(l=v.strokeDasharray)!==null&&l!==void 0?l:D.grid.strokeDasharray};if(!Fi(j)||!Fi(C)||!Re(S)||!Re(w))return null;var I=v.verticalCoordinatesGenerator||ure,P=v.horizontalCoordinatesGenerator||cre,B=v.horizontalPoints,F=v.verticalPoints;if((!B||!B.length)&&typeof P=="function"){var se=N&&N.length,ue=P({yAxis:E?Un(Un({},E),{},{ticks:se?N:E.ticks}):void 0,width:c??j,height:h??C,offset:m},se?!0:A);ev(Array.isArray(ue),"horizontalCoordinatesGenerator should return Array but instead it returned [".concat(typeof ue,"]")),Array.isArray(ue)&&(B=ue)}if((!F||!F.length)&&typeof I=="function"){var de=O&&O.length,G=I({xAxis:R?Un(Un({},R),{},{ticks:de?O:R.ticks}):void 0,width:c??j,height:h??C,offset:m},de?!0:A);ev(Array.isArray(G),"verticalCoordinatesGenerator should return Array but instead it returned [".concat(typeof G,"]")),Array.isArray(G)&&(F=G)}return b.createElement(La,{zIndex:v.zIndex},b.createElement("g",{className:"recharts-cartesian-grid"},b.createElement(ire,{fill:(o=v.fill)!==null&&o!==void 0?o:D.grid.fill,fillOpacity:(u=v.fillOpacity)!==null&&u!==void 0?u:D.grid.fillOpacity,x:v.x,y:v.y,width:v.width,height:v.height,ry:v.ry}),b.createElement(ore,_o({},v,{horizontalPoints:B})),b.createElement(sre,_o({},v,{verticalPoints:F})),b.createElement(are,_o({},v,k,{offset:m,horizontalPoints:B,xAxis:R,yAxis:E})),b.createElement(lre,_o({},v,k,{offset:m,verticalPoints:F,xAxis:R,yAxis:E}))))}aw.displayName="CartesianGrid";var dre=["animationElapsedTime","isAnimating","isEntrance","visibleLength","strokeDasharray","connectNulls"];function Tb(){return Tb=Object.assign?Object.assign.bind():function(e){for(var t=1;tS+w,0);if(!l)return tz(t,e);for(var o=Math.floor(e/l),u=e%l,c=[],h=0,m=0;hu){c=[...r.slice(0,h),u-m];break}}var x=c.length%2===0?[0,t]:[t];return[...pre(r,o),...c,...x].map(S=>"".concat(S,"px")).join(", ")}function xre(e,t,n){if(e){var r="".concat(e).split(/[,\s]+/gim).map(l=>parseFloat(l));return yre(n,t,r)}return tz(t,n)}function bre(e){e.animationElapsedTime,e.isAnimating,e.isEntrance;var t=e.visibleLength,n=e.strokeDasharray,r=e.connectNulls,l=hre(e,dre),o=r??!1,u;if(t!=null){var c,h=l.pathRef,m=vre((c=h==null?void 0:h.current)!==null&&c!==void 0?c:null);u=xre(n,m,t)}else n!=null&&(u=String(n));return b.createElement(VP,Tb({},l,{connectNulls:o,strokeDasharray:u}))}function Sre(e){var t=b.useRef(0),n=b.useRef(0),r=b.useRef(!1),l=b.useRef(e);return l.current!==e&&(t.current=n.current,l.current=e),b.useCallback((o,u)=>{if(r.current)return null;var c=Math.min(ga(t.current+o*u),u);return o>0&&u>0&&(n.current=Math.max(n.current,c),c>=u)?(r.current=!0,null):c},[])}var wre={},nz=Hn({name:"errorBars",initialState:wre,reducers:{addErrorBar:(e,t)=>{var n=t.payload,r=n.itemId,l=n.errorBar;e[r]||(e[r]=[]),e[r].push(l)},replaceErrorBar:(e,t)=>{var n=t.payload,r=n.itemId,l=n.prev,o=n.next;e[r]&&(e[r]=e[r].map(u=>u.dataKey===l.dataKey&&u.direction===l.direction?o:u))},removeErrorBar:(e,t)=>{var n=t.payload,r=n.itemId,l=n.errorBar;e[r]&&(e[r]=e[r].filter(o=>o.dataKey!==l.dataKey||o.direction!==l.direction))}}}),lw=nz.actions;lw.addErrorBar;lw.replaceErrorBar;lw.removeErrorBar;var jre=nz.reducer,Cre=["children"];function _re(e,t){if(e==null)return{};var n,r,l=Are(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r({x:0,y:0,value:0}),errorBarOffset:0},Ore=b.createContext(Ere);function Nre(e){var t=e.children,n=_re(e,Cre);return b.createElement(Ore.Provider,{value:n},t)}function rz(e,t){var n,r,l=ke(m=>ka(m,e)),o=ke(m=>Ia(m,t)),u=(n=l==null?void 0:l.allowDataOverflow)!==null&&n!==void 0?n:tn.allowDataOverflow,c=(r=o==null?void 0:o.allowDataOverflow)!==null&&r!==void 0?r:nn.allowDataOverflow,h=u||c;return{needClip:h,needClipX:u,needClipY:c}}function Tre(e){var t=e.xAxisId,n=e.yAxisId,r=e.clipPathId,l=nw(),o=rz(t,n),u=o.needClipX,c=o.needClipY,h=o.needClip,m=ke(O=>FI(O,t,!1)),v=ke(O=>VI(O,n,!1));if(!h||!l)return null;var p=l.x,x=l.y,S=l.width,w=l.height,j=u&&m?Math.min(m[0],m[1]):p-S/2,C=c&&v?Math.min(v[0],v[1]):x-w/2,A=u&&m?Math.abs(m[1]-m[0]):S*2,N=c&&v?Math.abs(v[1]-v[0]):w*2;return b.createElement("clipPath",{id:"clipPath-".concat(r)},b.createElement("rect",{x:j,y:C,width:A,height:N}))}var iz=(e,t,n,r)=>WI(e,"xAxis",t,r),az=(e,t,n,r)=>ZI(e,"xAxis",t,r),lz=(e,t,n,r)=>WI(e,"yAxis",n,r),oz=(e,t,n,r)=>ZI(e,"yAxis",n,r),Rre=W([It,iz,lz,az,oz],(e,t,n,r,l)=>Ra(e,"xAxis")?Jm(t,r,!1):Jm(n,l,!1)),Mre=(e,t,n,r,l)=>l;function Dre(e){return e.type==="line"}var Pre=W([yI,Mre],(e,t)=>e.filter(Dre).find(n=>n.id===t)),kre=W([It,iz,lz,az,oz,Pre,Rre,ad],(e,t,n,r,l,o,u,c)=>{var h=c.chartData,m=c.dataStartIndex,v=c.dataEndIndex;if(!(o==null||t==null||n==null||r==null||l==null||r.length===0||l.length===0||u==null||e!=="horizontal"&&e!=="vertical")){var p=o.dataKey,x=o.data,S;if(x!=null&&x.length>0?S=x:S=h==null?void 0:h.slice(m,v+1),S!=null)return rie({layout:e,xAxis:t,yAxis:n,xAxisTicks:r,yAxisTicks:l,dataKey:p,bandSize:u,displayedData:S})}});function Ire(e){var t=zv(e),n=3,r=2;if(t!=null){var l=t.r,o=t.strokeWidth,u=Number(l),c=Number(o);return(Number.isNaN(u)||u<0)&&(u=n),(Number.isNaN(c)||c<0)&&(c=r),{r:u,strokeWidth:c}}return{r:n,strokeWidth:r}}var zre=["id"],Lre=["type","layout","connectNulls","needClip","shape","strokeDasharray"],Ure=["activeDot","animateNewValues","animationBegin","animationDuration","animationEasing","connectNulls","dot","hide","isAnimationActive","label","legendType","xAxisId","yAxisId","id"];function Av(){return Av=Object.assign?Object.assign.bind():function(e){for(var t=1;t0?t/n:0}var qre=(e,t)=>{if(e==null)return[];if(t===1)return e.flatMap(c=>c.status==="removed"?[]:[c.next]);var n=Gre(e),r=[];for(var l of e)if(l.status==="matched")r.push(Di(Di({},l.next),{},{x:pa(l.prev.x,l.next.x,t),y:pa(l.prev.y,l.next.y,t)}));else if(l.status==="added")if(l.next.x!=null){var o=l.next.x-n;r.push(Di(Di({},l.next),{},{x:pa(o,l.next.x,t),y:l.next.y}))}else r.push(l.next);else if(l.status==="removed"&&l.prev.x!=null){var u=l.prev.x+n;r.push(Di(Di({},l.prev),{},{x:pa(l.prev.x,u,t),y:l.prev.y}))}return r},sw={activeDot:!0,animateNewValues:!0,animationBegin:0,animationDuration:1500,animationEasing:"ease",animationInterpolateFn:qre,animationMatchBy:ew,connectNulls:!1,dot:!0,fill:"#fff",hide:!1,isAnimationActive:"auto",label:!1,legendType:"line",shape:bre,stroke:"#3182bd",strokeWidth:1,xAxisId:0,yAxisId:0,zIndex:Qn.line,type:"linear"},Kre=e=>{var t=e.dataKey,n=e.name,r=e.stroke,l=e.legendType,o=e.hide;return[{inactive:o,dataKey:t,type:l,color:r,value:NP(n,t),payload:e}]},Yre=b.memo(e=>{var t=e.dataKey,n=e.data,r=e.stroke,l=e.strokeWidth,o=e.fill,u=e.name,c=e.hide,h=e.unit,m=e.formatter,v=e.tooltipType,p=e.id,x={dataDefinedOnItem:n,getPosition:Ku,settings:{stroke:r,strokeWidth:l,fill:o,dataKey:t,nameKey:void 0,name:NP(u,t),hide:c,type:v,color:r,unit:h,formatter:m,graphicalItemId:p}};return b.createElement(Lee,{tooltipEntrySettings:x})});function Xre(e){var t=e.clipPathId,n=e.points,r=e.props,l=r.dot,o=r.dataKey,u=r.needClip;r.id;var c=ow(r,zre),h=Bi(c);return b.createElement(Tte,{points:n,dot:l,className:"recharts-line-dots",dotClassName:"recharts-line-dot",dataKey:o,baseProps:h,needClip:u,clipPathId:t})}function Qre(e){var t=e.showLabels,n=e.children,r=e.points,l=b.useMemo(()=>r==null?void 0:r.map(o=>{var u,c,h={x:(u=o.x)!==null&&u!==void 0?u:0,y:(c=o.y)!==null&&c!==void 0?c:0,width:0,lowerWidth:0,upperWidth:0,height:0};return Di(Di({},h),{},{value:o.value,payload:o.payload,viewBox:h,parentViewBox:void 0,fill:void 0})}),[r]);return b.createElement(jee,{value:t?l:void 0},n)}function Zre(e){var t=e.clipPathId,n=e.pathRef,r=e.points,l=e.props,o=e.animationElapsedTime,u=e.isAnimating,c=e.isEntrance,h=e.visibleLength,m=l.type,v=l.layout,p=l.connectNulls,x=l.needClip,S=l.shape,w=l.strokeDasharray,j=ow(l,Lre),C=Di(Di({},Xr(j)),{},{fill:"none",className:"recharts-line-curve",clipPath:x?"url(#clipPath-".concat(t,")"):void 0,points:r,type:m,layout:v,connectNulls:p,strokeDasharray:w??l.strokeDasharray,pathRef:n,animationElapsedTime:o,isAnimating:u,isEntrance:l.animateNewValues?c:!1,visibleLength:h});return b.createElement(b.Fragment,null,(r==null?void 0:r.length)>1&&b.createElement(zee,{option:S,DefaultShape:sw.shape,shapeProps:C}),b.createElement(Xre,{points:r,clipPathId:t,props:l}))}function Wre(e){var t=e.clipPathId,n=e.props,r=e.pathRef,l=e.previousPointsRef,o=n.points,u=n.isAnimationActive,c=n.animationBegin,h=n.animationDuration,m=n.animationEasing,v=n.animationMatchBy,p=n.animationInterpolateFn,x=n.layout,S=Vre(r.current),w=rte(n.onAnimationStart,n.onAnimationEnd),j=w.isAnimating,C=w.handleAnimationStart,A=w.handleAnimationEnd,N=!j,O=Sre(o),T=b.useCallback(R=>R>0&&S>0,[S]);return b.createElement(Qre,{points:o,showLabels:N},n.children,b.createElement(ite,{animationInput:o,animationIdPrefix:"recharts-line-",items:o,previousItemsRef:l,isAnimationActive:u,animationBegin:c,animationDuration:h,animationEasing:m,onAnimationStart:C,onAnimationEnd:A,animationInterpolateFn:p,animationMatchBy:v,shouldUpdatePreviousRef:T,layout:x},(R,E,D)=>{var k=j||E<1,I=k?O(E,S):null;return b.createElement(Zre,{props:n,points:R,clipPathId:t,pathRef:r,animationElapsedTime:E,isAnimating:k,isEntrance:D,visibleLength:I})}),b.createElement(Aee,{label:n.label}))}function Jre(e){var t=e.clipPathId,n=e.props,r=b.useRef(null),l=b.useRef(null);return b.createElement(Wre,{props:n,clipPathId:t,previousPointsRef:r,pathRef:l})}var eie=(e,t)=>{var n,r;return{x:(n=e.x)!==null&&n!==void 0?n:void 0,y:(r=e.y)!==null&&r!==void 0?r:void 0,value:e.value,errorVal:pn(e.payload,t)}};class tie extends b.Component{render(){var t=this.props,n=t.hide,r=t.dot,l=t.points,o=t.className,u=t.xAxisId,c=t.yAxisId,h=t.top,m=t.left,v=t.width,p=t.height,x=t.id,S=t.needClip,w=t.zIndex;if(n)return null;var j=Ct("recharts-line",o),C=x,A=Ire(r),N=A.r,O=A.strokeWidth,T=V3(r),R=N*2+O,E=S?"url(#clipPath-".concat(T?"":"dots-").concat(C,")"):void 0;return b.createElement(La,{zIndex:w},b.createElement(_a,{className:j},S&&b.createElement("defs",null,b.createElement(Tre,{clipPathId:C,xAxisId:u,yAxisId:c}),!T&&b.createElement("clipPath",{id:"clipPath-dots-".concat(C)},b.createElement("rect",{x:m-R/2,y:h-R/2,width:v+R,height:p+R}))),b.createElement(Nre,{xAxisId:u,yAxisId:c,data:l,dataPointFormatter:eie,errorBarOffset:0},b.createElement(Jre,{props:this.props,clipPathId:C}))),b.createElement(Zte,{activeDot:this.props.activeDot,points:l,mainColor:this.props.stroke,itemDataKey:this.props.dataKey,clipPath:E}))}}function nie(e){var t=Tr(e,sw),n=t.activeDot,r=t.animateNewValues,l=t.animationBegin,o=t.animationDuration,u=t.animationEasing,c=t.connectNulls,h=t.dot,m=t.hide,v=t.isAnimationActive,p=t.label,x=t.legendType,S=t.xAxisId,w=t.yAxisId,j=t.id,C=ow(t,Ure),A=rz(S,w),N=A.needClip,O=nw(),T=Yu(),R=fr(),E=ke(B=>kre(B,S,w,R,j));if(T!=="horizontal"&&T!=="vertical"||E==null||O==null)return null;var D=O.height,k=O.width,I=O.x,P=O.y;return b.createElement(tie,Av({},C,{id:j,connectNulls:c,dot:h,activeDot:n,animateNewValues:r,animationBegin:l,animationDuration:o,animationEasing:u,isAnimationActive:v,hide:m,label:p,legendType:x,xAxisId:S,yAxisId:w,points:E,layout:T,height:D,width:k,left:I,top:P,needClip:N}))}function rie(e){var t=e.layout,n=e.xAxis,r=e.yAxis,l=e.xAxisTicks,o=e.yAxisTicks,u=e.dataKey,c=e.bandSize,h=e.displayedData;return h.map((m,v)=>{var p=pn(m,u);if(t==="horizontal"){var x=OO({axis:n,ticks:l,bandSize:c,entry:m,index:v}),S=yn(p)?null:r.scale.map(p);return{x,y:S??null,value:p,payload:m}}var w=yn(p)?null:n.scale.map(p),j=OO({axis:r,ticks:o,bandSize:c,entry:m,index:v});return w==null||j==null?null:{x:w,y:j,value:p,payload:m}}).filter(Boolean)}function iie(e){var t=Tr(e,sw),n=fr();return b.createElement(mte,{id:t.id,type:"line"},r=>b.createElement(b.Fragment,null,b.createElement(Uee,{legendPayload:Kre(t)}),b.createElement(Yre,{dataKey:t.dataKey,data:t.data,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,formatter:t.formatter,tooltipType:t.tooltipType,id:r}),b.createElement(Ste,{type:"line",id:r,data:t.data,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,dataKey:t.dataKey,hide:t.hide,isPanorama:n}),b.createElement(nie,Av({},t,{id:r}))))}var uw=b.memo(iie,rg);uw.displayName="Line";var aie=["domain","range"],lie=["domain","range"];function NT(e,t){if(e==null)return{};var n,r,l=oie(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{if(u!=null)return MT(MT({},o),{},{type:u})},[o,u]);return b.useLayoutEffect(()=>{c!=null&&(n.current===null?t(kte(c)):n.current!==c&&t(Ite({prev:n.current,next:c})),n.current=c)},[c,t]),b.useLayoutEffect(()=>()=>{n.current&&(t(zte(n.current)),n.current=null)},[t]),null}var gie=e=>{var t=e.xAxisId,n=e.className,r=e.height,l=e.label,o=b.useRef(null),u=b.useRef(null),c=ke(RP),h=fr(),m=Vt(),v="xAxis",p=ke(A=>QI(A,v,t,h)),x=ke(A=>DQ(A,t)),S=ke(A=>UQ(A,t)),w=ke(A=>mI(A,t));if(b.useLayoutEffect(()=>{if(!(r!=="auto"||!x||wg(l)||b.isValidElement(l)||w==null)){var A=o.current;if(A){var N=A.getCalculatedHeight();Math.round(x.height)!==Math.round(N)&&m(Hte({id:t,height:N}))}}},[p,x,m,l,t,r,w]),x==null||S==null||w==null)return null;e.dangerouslySetInnerHTML,e.ticks,e.scale;var j=Mb(e,uie);w.id,w.scale;var C=Mb(w,cie);return b.createElement(iw,Rb({},j,C,{ref:o,labelRef:u,x:S.x,y:S.y,width:x.width,height:x.height,className:Ct("recharts-".concat(v," ").concat(v),n),viewBox:c,ticks:p,axisType:v,axisId:t}))},pie={allowDataOverflow:tn.allowDataOverflow,allowDecimals:tn.allowDecimals,allowDuplicatedCategory:tn.allowDuplicatedCategory,angle:tn.angle,axisLine:wa.axisLine,height:tn.height,hide:!1,includeHidden:tn.includeHidden,interval:tn.interval,label:!1,minTickGap:tn.minTickGap,mirror:tn.mirror,orientation:tn.orientation,padding:tn.padding,reversed:tn.reversed,scale:tn.scale,tick:tn.tick,tickCount:tn.tickCount,tickLine:wa.tickLine,tickSize:wa.tickSize,type:tn.type,niceTicks:tn.niceTicks,xAxisId:0},yie=e=>{var t=Tr(e,pie);return b.createElement(b.Fragment,null,b.createElement(vie,{allowDataOverflow:t.allowDataOverflow,allowDecimals:t.allowDecimals,allowDuplicatedCategory:t.allowDuplicatedCategory,angle:t.angle,dataKey:t.dataKey,domain:t.domain,height:t.height,hide:t.hide,id:t.xAxisId,includeHidden:t.includeHidden,interval:t.interval,minTickGap:t.minTickGap,mirror:t.mirror,name:t.name,orientation:t.orientation,padding:t.padding,reversed:t.reversed,scale:t.scale,tick:t.tick,tickCount:t.tickCount,tickFormatter:t.tickFormatter,ticks:t.ticks,type:t.type,unit:t.unit,niceTicks:t.niceTicks}),b.createElement(gie,t))},cw=b.memo(yie,sz);cw.displayName="XAxis";var xie=["type"],bie=["dangerouslySetInnerHTML","ticks","scale"],Sie=["id","scale"];function Db(){return Db=Object.assign?Object.assign.bind():function(e){for(var t=1;t{if(u!=null)return PT(PT({},o),{},{type:u})},[u,o]);return b.useLayoutEffect(()=>{c!=null&&(n.current===null?t(Lte(c)):n.current!==c&&t(Ute({prev:n.current,next:c})),n.current=c)},[c,t]),b.useLayoutEffect(()=>()=>{n.current&&(t($te(n.current)),n.current=null)},[t]),null}function Eie(e){var t=e.yAxisId,n=e.className,r=e.width,l=e.label,o=b.useRef(null),u=b.useRef(null),c=ke(RP),h=fr(),m=Vt(),v="yAxis",p=ke(A=>HQ(A,t)),x=ke(A=>BQ(A,t)),S=ke(A=>QI(A,v,t,h)),w=ke(A=>vI(A,t));if(b.useLayoutEffect(()=>{if(!(r!=="auto"||!p||wg(l)||b.isValidElement(l)||w==null)){var A=o.current;if(A){var N=A.getCalculatedWidth();Math.round(p.width)!==Math.round(N)&&m(Bte({id:t,width:N}))}}},[S,p,m,l,t,r,w]),p==null||x==null||w==null)return null;e.dangerouslySetInnerHTML,e.ticks,e.scale;var j=Pb(e,bie);w.id,w.scale;var C=Pb(w,Sie);return b.createElement(iw,Db({},j,C,{ref:o,labelRef:u,x:x.x,y:x.y,tickTextProps:r==="auto"?{width:void 0}:{width:r},width:p.width,height:p.height,className:Ct("recharts-".concat(v," ").concat(v),n),viewBox:c,ticks:S,axisType:v,axisId:t}))}var Oie={allowDataOverflow:nn.allowDataOverflow,allowDecimals:nn.allowDecimals,allowDuplicatedCategory:nn.allowDuplicatedCategory,angle:nn.angle,axisLine:wa.axisLine,hide:!1,includeHidden:nn.includeHidden,interval:nn.interval,label:!1,minTickGap:nn.minTickGap,mirror:nn.mirror,orientation:nn.orientation,padding:nn.padding,reversed:nn.reversed,scale:nn.scale,tick:nn.tick,tickCount:nn.tickCount,tickLine:wa.tickLine,tickSize:wa.tickSize,type:nn.type,niceTicks:nn.niceTicks,width:nn.width,yAxisId:0},Nie=e=>{var t=Tr(e,Oie);return b.createElement(b.Fragment,null,b.createElement(Aie,{interval:t.interval,id:t.yAxisId,scale:t.scale,type:t.type,domain:t.domain,allowDataOverflow:t.allowDataOverflow,dataKey:t.dataKey,allowDuplicatedCategory:t.allowDuplicatedCategory,allowDecimals:t.allowDecimals,tickCount:t.tickCount,padding:t.padding,includeHidden:t.includeHidden,reversed:t.reversed,ticks:t.ticks,width:t.width,orientation:t.orientation,mirror:t.mirror,hide:t.hide,unit:t.unit,name:t.name,angle:t.angle,minTickGap:t.minTickGap,tick:t.tick,tickFormatter:t.tickFormatter,niceTicks:t.niceTicks}),b.createElement(Eie,t))},fw=b.memo(Nie,sz);fw.displayName="YAxis";var Tie=(e,t)=>t,dw=W([Tie,It,pk,bn,v3,za,fW,Pn],yW);function Rie(e){return"getBBox"in e.currentTarget&&typeof e.currentTarget.getBBox=="function"}function hw(e){var t=e.currentTarget.getBoundingClientRect(),n,r;if(Rie(e)){var l=e.currentTarget.getBBox();n=l.width>0?t.width/l.width:1,r=l.height>0?t.height/l.height:1}else{var o=e.currentTarget;n=o.offsetWidth>0?t.width/o.offsetWidth:1,r=o.offsetHeight>0?t.height/o.offsetHeight:1}var u=(c,h)=>({relativeX:Math.round((c-t.left)/n),relativeY:Math.round((h-t.top)/r)});return"touches"in e?Array.from(e.touches).map(c=>u(c.clientX,c.clientY)):u(e.clientX,e.clientY)}var uz=Er("mouseClick"),cz=ed();cz.startListening({actionCreator:uz,effect:(e,t)=>{var n=e.payload,r=dw(t.getState(),hw(n));(r==null?void 0:r.activeIndex)!=null&&t.dispatch(rZ({activeIndex:r.activeIndex,activeDataKey:void 0,activeCoordinate:r.activeCoordinate}))}});var kb=Er("mouseMove"),fz=ed(),nu=null,vo=null,l0=null;fz.startListening({actionCreator:kb,effect:(e,t)=>{var n=e.payload,r=t.getState(),l=r.eventSettings,o=l.throttleDelay,u=l.throttledEvents,c=u==="all"||(u==null?void 0:u.includes("mousemove"));nu!==null&&(cancelAnimationFrame(nu),nu=null),vo!==null&&(typeof o!="number"||!c)&&(clearTimeout(vo),vo=null),l0=hw(n);var h=()=>{var m=t.getState(),v=md(m,m.tooltip.settings.shared);if(!l0){nu=null,vo=null;return}if(v==="axis"){var p=dw(m,l0);(p==null?void 0:p.activeIndex)!=null?t.dispatch(a3({activeIndex:p.activeIndex,activeDataKey:void 0,activeCoordinate:p.activeCoordinate})):t.dispatch(i3())}nu=null,vo=null};if(!c){h();return}o==="raf"?nu=requestAnimationFrame(h):typeof o=="number"&&vo===null&&(vo=setTimeout(h,o))}});function Mie(e,t){return t instanceof HTMLElement?"HTMLElement <".concat(t.tagName,' class="').concat(t.className,'">'):t===window?"global.window":e==="children"&&typeof t=="object"&&t!==null?"<>":t}var kT={accessibilityLayer:!0,barCategoryGap:"10%",barGap:4,barSize:void 0,className:void 0,maxBarSize:void 0,stackOffset:"none",syncId:void 0,syncMethod:"index",baseValue:void 0,reverseStackOrder:!1},dz=Hn({name:"rootProps",initialState:kT,reducers:{updateOptions:(e,t)=>{var n;e.accessibilityLayer=t.payload.accessibilityLayer,e.barCategoryGap=t.payload.barCategoryGap,e.barGap=(n=t.payload.barGap)!==null&&n!==void 0?n:kT.barGap,e.barSize=t.payload.barSize,e.maxBarSize=t.payload.maxBarSize,e.stackOffset=t.payload.stackOffset,e.syncId=t.payload.syncId,e.syncMethod=t.payload.syncMethod,e.className=t.payload.className,e.baseValue=t.payload.baseValue,e.reverseStackOrder=t.payload.reverseStackOrder}}}),Die=dz.reducer,Pie=dz.actions.updateOptions,kie=null,Iie={updatePolarOptions:(e,t)=>e===null?t.payload:(e.startAngle=t.payload.startAngle,e.endAngle=t.payload.endAngle,e.cx=t.payload.cx,e.cy=t.payload.cy,e.innerRadius=t.payload.innerRadius,e.outerRadius=t.payload.outerRadius,e)},hz=Hn({name:"polarOptions",initialState:kie,reducers:Iie});hz.actions.updatePolarOptions;var zie=hz.reducer,mz=Er("keyDown"),vz=Er("focus"),gz=Er("blur"),Cg=ed(),ru=null,go=null,gm=null;Cg.startListening({actionCreator:mz,effect:(e,t)=>{gm=e.payload,ru!==null&&(cancelAnimationFrame(ru),ru=null);var n=t.getState(),r=n.eventSettings,l=r.throttleDelay,o=r.throttledEvents,u=o==="all"||o.includes("keydown");go!==null&&(typeof l!="number"||!u)&&(clearTimeout(go),go=null);var c=()=>{try{var h=t.getState(),m=h.rootProps.accessibilityLayer!==!1;if(!m)return;var v=h.tooltip.keyboardInteraction,p=gm;if(p!=="ArrowRight"&&p!=="ArrowLeft"&&p!=="Enter")return;var x=Cf(v,Xo(h),$u(h),Bu(h)),S=x==null?-1:Number(x),w=!Number.isFinite(S)||S<0,j=za(h),C=Xo(h),A=md(h,h.tooltip.settings.shared);if(p==="Enter"){if(w)return;var N=Sv(h,A,"hover",String(v.index));t.dispatch(bv({active:!v.active,activeIndex:v.index,activeCoordinate:N}));return}var O=KQ(h),T=O==="left-to-right"?1:-1,R=p==="ArrowRight"?1:-1,E;if(w){var D=$u(h),k=Bu(h),I=R*T,P=de=>({active:!1,index:String(de),dataKey:void 0,graphicalItemId:void 0,coordinate:void 0});if(E=-1,I>0){for(var B=0;B=0;F--)if(Cf(P(F),C,D,k)!=null){E=F;break}if(E<0)return}else{E=S+R*T;var se=(j==null?void 0:j.length)||C.length;if(se===0||E>=se||E<0)return}var ue=Sv(h,A,"hover",String(E));t.dispatch(bv({active:!0,activeIndex:E.toString(),activeCoordinate:ue}))}finally{ru=null,go=null}};if(!u){c();return}l==="raf"?ru=requestAnimationFrame(c):typeof l=="number"&&go===null&&(c(),gm=null,go=setTimeout(()=>{gm?c():(go=null,ru=null)},l))}});Cg.startListening({actionCreator:vz,effect:(e,t)=>{var n=t.getState(),r=n.rootProps.accessibilityLayer!==!1;if(r){var l=n.tooltip.keyboardInteraction;if(!l.active&&l.index==null){var o="0",u=md(n,n.tooltip.settings.shared),c=Sv(n,u,"hover",String(o));t.dispatch(bv({active:!0,activeIndex:o,activeCoordinate:c}))}}}});Cg.startListening({actionCreator:gz,effect:(e,t)=>{var n=t.getState(),r=n.rootProps.accessibilityLayer!==!1;if(r){var l=n.tooltip.keyboardInteraction;l.active&&t.dispatch(bv({active:!1,activeIndex:l.index,activeCoordinate:l.coordinate}))}}});function pz(e){e.persist();var t=e.currentTarget;return new Proxy(e,{get:(n,r)=>{if(r==="currentTarget")return t;var l=Reflect.get(n,r);return typeof l=="function"?l.bind(n):l}})}var Br=Er("externalEvent"),yz=ed(),pm=new Map,hf=new Map,o0=new Map;yz.startListening({actionCreator:Br,effect:(e,t)=>{var n=e.payload,r=n.handler,l=n.reactEvent;if(r!=null){var o=l.type,u=pz(l);o0.set(o,{handler:r,reactEvent:u});var c=pm.get(o);c!==void 0&&(cancelAnimationFrame(c),pm.delete(o));var h=t.getState(),m=h.eventSettings,v=m.throttleDelay,p=m.throttledEvents,x=p,S=x==="all"||(x==null?void 0:x.includes(o)),w=hf.get(o);w!==void 0&&(typeof v!="number"||!S)&&(clearTimeout(w),hf.delete(o));var j=()=>{var N=o0.get(o);try{if(!N)return;var O=N.handler,T=N.reactEvent,R=t.getState(),E={activeCoordinate:XZ(R),activeDataKey:qZ(R),activeIndex:$f(R),activeLabel:y3(R),activeTooltipIndex:$f(R),isTooltipActive:QZ(R)};O&&O(E,T)}finally{pm.delete(o),hf.delete(o),o0.delete(o)}};if(!S){j();return}if(v==="raf"){var C=requestAnimationFrame(j);pm.set(o,C)}else if(typeof v=="number"){if(!hf.has(o)){j();var A=setTimeout(j,v);hf.set(o,A)}}else j()}}});var Lie=W([rc],e=>e.tooltipItemPayloads),Uie=W([Lie,(e,t)=>t,(e,t,n)=>n],(e,t,n)=>{if(t!=null){var r=e.find(o=>o.settings.graphicalItemId===n);if(r!=null){var l=r.getPosition;if(l!=null)return l(t)}}}),xz=Er("touchMove"),bz=ed(),po=null,vl=null,IT=null,mf=null;bz.startListening({actionCreator:xz,effect:(e,t)=>{var n=e.payload;if(!(n.touches==null||n.touches.length===0)){mf=pz(n);var r=t.getState(),l=r.eventSettings,o=l.throttleDelay,u=l.throttledEvents,c=u==="all"||u.includes("touchmove");po!==null&&(cancelAnimationFrame(po),po=null),vl!==null&&(typeof o!="number"||!c)&&(clearTimeout(vl),vl=null),IT=Array.from(n.touches).map(m=>hw({clientX:m.clientX,clientY:m.clientY,currentTarget:n.currentTarget}));var h=()=>{if(mf!=null){var m=t.getState(),v=md(m,m.tooltip.settings.shared);if(v==="axis"){var p,x=(p=IT)===null||p===void 0?void 0:p[0];if(x==null){po=null,vl=null;return}var S=dw(m,x);(S==null?void 0:S.activeIndex)!=null&&t.dispatch(a3({activeIndex:S.activeIndex,activeDataKey:void 0,activeCoordinate:S.activeCoordinate}))}else if(v==="item"){var w,j=mf.touches[0];if(document.elementFromPoint==null||j==null)return;var C=document.elementFromPoint(j.clientX,j.clientY);if(!C||!C.getAttribute)return;var A=C.getAttribute(P9),N=(w=C.getAttribute(k9))!==null&&w!==void 0?w:void 0,O=rs(m).find(E=>E.id===N);if(A==null||O==null||N==null)return;var T=O.dataKey,R=Uie(m,A,N);t.dispatch(nZ({activeDataKey:T,activeIndex:A,activeCoordinate:R,activeGraphicalItemId:N}))}po=null,vl=null}};if(!c){h();return}o==="raf"?po=requestAnimationFrame(h):typeof o=="number"&&vl===null&&(h(),mf=null,vl=setTimeout(()=>{mf?h():(vl=null,po=null)},o))}}});var Sz={throttleDelay:"raf",throttledEvents:["mousemove","touchmove","pointermove","scroll","wheel"]},wz=Hn({name:"eventSettings",initialState:Sz,reducers:{setEventSettings:(e,t)=>{t.payload.throttleDelay!=null&&(e.throttleDelay=t.payload.throttleDelay),t.payload.throttledEvents!=null&&(e.throttledEvents=rt(t.payload.throttledEvents))}}}),$ie=wz.actions.setEventSettings,Bie=wz.reducer,Hie=JD({brush:Jte,cartesianAxis:Fte,chartData:XW,errorBars:jre,eventSettings:Bie,graphicalItems:xte,layout:x9,legend:bG,options:VW,polarAxis:Oee,polarOptions:zie,referenceElements:rne,renderedTicks:Nne,rootProps:Die,tooltip:iZ,zIndex:RW}),Fie=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"Chart";return VV({reducer:Hie,preloadedState:t,middleware:r=>{var l;return r({serializableCheck:!1,immutableCheck:!["commonjs","es6","production"].includes((l="es6")!==null&&l!==void 0?l:"")}).concat([cz.middleware,fz.middleware,Cg.middleware,yz.middleware,bz.middleware])},enhancers:r=>{var l=r;return typeof r=="function"&&(l=r()),l.concat(mP({type:"raf"}))},devTools:{serialize:{replacer:Mie},name:"recharts-".concat(n)}})};function Vie(e){var t=e.preloadedState,n=e.children,r=e.reduxStoreName,l=fr(),o=b.useRef(null);if(l)return n;o.current==null&&(o.current=Fie(t,r));var u=BS;return b.createElement(kG,{context:u,store:o.current},n)}function Gie(e){var t=e.layout,n=e.margin,r=Vt(),l=fr();return b.useEffect(()=>{l||(r(g9(t)),r(v9(n)))},[r,l,t,n]),null}var qie=b.memo(Gie,rg);function Kie(e){var t=Vt();return b.useEffect(()=>{t(Pie(e))},[t,e]),null}var Yie=e=>{var t=Vt();return b.useEffect(()=>{t($ie(e))},[t,e]),null},Xie=b.memo(Yie,rg);function zT(e){var t=e.zIndex,n=e.isPanorama,r=b.useRef(null),l=Vt();return b.useLayoutEffect(()=>(r.current&&l(NW({zIndex:t,element:r.current,isPanorama:n})),()=>{l(TW({zIndex:t,isPanorama:n}))}),[l,t,n]),b.createElement("g",{tabIndex:-1,ref:r,className:"recharts-zIndex-layer_".concat(t)})}function LT(e){var t=e.children,n=e.isPanorama,r=ke(bW);if(!r||r.length===0)return t;var l=r.filter(u=>u<0),o=r.filter(u=>u>0);return b.createElement(b.Fragment,null,l.map(u=>b.createElement(zT,{key:u,zIndex:u,isPanorama:n})),t,o.map(u=>b.createElement(zT,{key:u,zIndex:u,isPanorama:n})))}var Qie=["children"];function Zie(e,t){if(e==null)return{};var n,r,l=Wie(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var n=zP(),r=LP(),l=FP();if(!Fi(n)||!Fi(r))return null;var o=e.children,u=e.otherAttributes,c=e.title,h=e.desc,m,v;return u!=null&&(typeof u.tabIndex=="number"?m=u.tabIndex:m=l?0:void 0,typeof u.role=="string"?v=u.role:v=l?"application":void 0),b.createElement(JM,Ev({},u,{title:c,desc:h,role:v,tabIndex:m,width:n,height:r,style:Jie,ref:t}),o)}),tae=e=>{var t=e.children,n=ke(tg);if(!n)return null;var r=n.width,l=n.height,o=n.y,u=n.x;return b.createElement(JM,{width:r,height:l,x:u,y:o},t)},UT=b.forwardRef((e,t)=>{var n=e.children,r=Zie(e,Qie),l=fr();return l?b.createElement(tae,null,b.createElement(LT,{isPanorama:!0},n)):b.createElement(eae,Ev({ref:t},r),b.createElement(LT,{isPanorama:!1},n))});function nae(e,t){return lae(e)||aae(e,t)||iae(e,t)||rae()}function rae(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. -In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function iae(e,t){if(e){if(typeof e=="string")return $T(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?$T(e,t):void 0}}function $T(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{if(r!=null){var u=r.getBoundingClientRect(),c=u.width/r.offsetWidth;it(c)&&c!==o&&e(y9(c))}},[r,e,o]),l}function BT(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function sae(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);n(iJ(),null);function Nv(e){if(typeof e=="number")return e;if(typeof e=="string"){var t=parseFloat(e);if(!Number.isNaN(t))return t}return 0}var pae=b.forwardRef((e,t)=>{var n,r,l=b.useRef(null),o=b.useState({containerWidth:Nv((n=e.style)===null||n===void 0?void 0:n.width),containerHeight:Nv((r=e.style)===null||r===void 0?void 0:r.height)}),u=Ov(o,2),c=u[0],h=u[1],m=b.useCallback((p,x)=>{h(S=>{var w=Math.round(p),j=Math.round(x);return S.containerWidth===w&&S.containerHeight===j?S:{containerWidth:w,containerHeight:j}})},[]),v=b.useCallback(p=>{if(typeof t=="function"&&t(p),l.current!=null&&(l.current.disconnect(),l.current=null),p!=null&&typeof ResizeObserver<"u"){var x=p.getBoundingClientRect(),S=x.width,w=x.height;m(S,w);var j=A=>{var N=A[0];if(N!=null){var O=N.contentRect,T=O.width,R=O.height;m(T,R)}},C=new ResizeObserver(j);C.observe(p),l.current=C}},[t,m]);return b.useEffect(()=>()=>{var p=l.current;p!=null&&p.disconnect()},[m]),b.createElement(b.Fragment,null,b.createElement(nd,{width:c.containerWidth,height:c.containerHeight}),b.createElement("div",Rl({ref:v},e)))}),yae=b.forwardRef((e,t)=>{var n=e.width,r=e.height,l=b.useState({containerWidth:Nv(n),containerHeight:Nv(r)}),o=Ov(l,2),u=o[0],c=o[1],h=b.useCallback((v,p)=>{c(x=>{var S=Math.round(v),w=Math.round(p);return x.containerWidth===S&&x.containerHeight===w?x:{containerWidth:S,containerHeight:w}})},[]),m=b.useCallback(v=>{if(typeof t=="function"&&t(v),v!=null){var p=v.getBoundingClientRect(),x=p.width,S=p.height;h(x,S)}},[t,h]);return b.createElement(b.Fragment,null,b.createElement(nd,{width:u.containerWidth,height:u.containerHeight}),b.createElement("div",Rl({ref:m},e)))}),xae=b.forwardRef((e,t)=>{var n=e.width,r=e.height;return b.createElement(b.Fragment,null,b.createElement(nd,{width:n,height:r}),b.createElement("div",Rl({ref:t},e)))}),bae=b.forwardRef((e,t)=>{var n=e.width,r=e.height;return typeof n=="string"||typeof r=="string"?b.createElement(yae,Rl({},e,{ref:t})):typeof n=="number"&&typeof r=="number"?b.createElement(xae,Rl({},e,{width:n,height:r,ref:t})):b.createElement(b.Fragment,null,b.createElement(nd,{width:n,height:r}),b.createElement("div",Rl({ref:t},e)))});function Sae(e){return e?pae:bae}var wae=b.forwardRef((e,t)=>{var n=e.children,r=e.className,l=e.height,o=e.onClick,u=e.onContextMenu,c=e.onDoubleClick,h=e.onMouseDown,m=e.onMouseEnter,v=e.onMouseLeave,p=e.onMouseMove,x=e.onMouseUp,S=e.onTouchEnd,w=e.onTouchMove,j=e.onTouchStart,C=e.style,A=e.width,N=e.responsive,O=e.dispatchTouchEvents,T=O===void 0?!0:O,R=b.useRef(null),E=Vt(),D=b.useState(null),k=Ov(D,2),I=k[0],P=k[1],B=b.useState(null),F=Ov(B,2),se=F[0],ue=F[1],de=oae(),G=QS(),ne=(G==null?void 0:G.width)>0?G.width:A,ie=(G==null?void 0:G.height)>0?G.height:l,ce=b.useCallback(Pe=>{de(Pe),typeof t=="function"&&t(Pe),P(Pe),ue(Pe),Pe!=null&&(R.current=Pe)},[de,t,P,ue]),U=b.useCallback(Pe=>{E(uz(Pe)),E(Br({handler:o,reactEvent:Pe}))},[E,o]),Ee=b.useCallback(Pe=>{E(kb(Pe)),E(Br({handler:m,reactEvent:Pe}))},[E,m]),ee=b.useCallback(Pe=>{E(i3()),E(Br({handler:v,reactEvent:Pe}))},[E,v]),ve=b.useCallback(Pe=>{E(kb(Pe)),E(Br({handler:p,reactEvent:Pe}))},[E,p]),z=b.useCallback(()=>{E(vz())},[E]),Y=b.useCallback(()=>{E(gz())},[E]),le=b.useCallback(Pe=>{E(mz(Pe.key))},[E]),fe=b.useCallback(Pe=>{E(Br({handler:u,reactEvent:Pe}))},[E,u]),De=b.useCallback(Pe=>{E(Br({handler:c,reactEvent:Pe}))},[E,c]),te=b.useCallback(Pe=>{E(Br({handler:h,reactEvent:Pe}))},[E,h]),ge=b.useCallback(Pe=>{E(Br({handler:x,reactEvent:Pe}))},[E,x]),oe=b.useCallback(Pe=>{E(Br({handler:j,reactEvent:Pe}))},[E,j]),J=b.useCallback(Pe=>{T&&E(xz(Pe)),E(Br({handler:w,reactEvent:Pe}))},[E,T,w]),ut=b.useCallback(Pe=>{E(Br({handler:S,reactEvent:Pe}))},[E,S]),Ke=Sae(N);return b.createElement(_3.Provider,{value:I},b.createElement(BH.Provider,{value:se},b.createElement(Ke,{width:ne??(C==null?void 0:C.width),height:ie??(C==null?void 0:C.height),className:Ct("recharts-wrapper",r),style:sae({position:"relative",cursor:"default",width:ne,height:ie},C),onClick:U,onContextMenu:fe,onDoubleClick:De,onFocus:z,onBlur:Y,onKeyDown:le,onMouseDown:te,onMouseEnter:Ee,onMouseLeave:ee,onMouseMove:ve,onMouseUp:ge,onTouchEnd:ut,onTouchMove:J,onTouchStart:oe,ref:ce},b.createElement(gae,null),n)))}),jae=["width","height","responsive","children","className","style","compact","title","desc"];function Cae(e,t){if(e==null)return{};var n,r,l=_ae(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var n=e.width,r=e.height,l=e.responsive,o=e.children,u=e.className,c=e.style,h=e.compact,m=e.title,v=e.desc,p=Cae(e,jae),x=Bi(p);return h?b.createElement(b.Fragment,null,b.createElement(nd,{width:n,height:r}),b.createElement(UT,{otherAttributes:x,title:m,desc:v},o)):b.createElement(wae,{className:u,style:c,width:n,height:r,responsive:l??!1,onClick:e.onClick,onMouseLeave:e.onMouseLeave,onMouseEnter:e.onMouseEnter,onMouseMove:e.onMouseMove,onMouseDown:e.onMouseDown,onMouseUp:e.onMouseUp,onContextMenu:e.onContextMenu,onDoubleClick:e.onDoubleClick,onTouchStart:e.onTouchStart,onTouchMove:e.onTouchMove,onTouchEnd:e.onTouchEnd},b.createElement(UT,{otherAttributes:x,title:m,desc:v,ref:t},b.createElement(cne,null,o)))});function Ib(){return Ib=Object.assign?Object.assign.bind():function(e){for(var t=1;tb.createElement(Dae,{chartName:"LineChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:Pae,tooltipPayloadSearcher:HW,categoricalChartProps:e,ref:t}));/** + `).concat(T.x,",").concat(T.y),A=yn(e.id)?Tf("recharts-radial-line-"):e.id;return b.createElement("text",va({},r,{dominantBaseline:"central",className:Ct("recharts-radial-bar-label",u)}),b.createElement("defs",null,b.createElement("path",{id:A,d:R})),b.createElement("textPath",{xlinkHref:"#".concat(A)},n))},Eee=(e,t,n)=>{var r=e.cx,l=e.cy,o=e.innerRadius,u=e.outerRadius,c=e.startAngle,h=e.endAngle,m=(c+h)/2;if(n==="outside"){var v=Dn(r,l,u+t,m),g=v.x,x=v.y;return{x:g,y:x,textAnchor:g>=r?"start":"end",verticalAnchor:"middle"}}if(n==="center")return{x:r,y:l,textAnchor:"middle",verticalAnchor:"middle"};if(n==="centerTop")return{x:r,y:l,textAnchor:"middle",verticalAnchor:"start"};if(n==="centerBottom")return{x:r,y:l,textAnchor:"middle",verticalAnchor:"end"};var S=(o+u)/2,w=Dn(r,l,S,m),j=w.x,C=w.y;return{x:j,y:C,textAnchor:"middle",verticalAnchor:"middle"}},uu=e=>e!=null&&"cx"in e&&Re(e.cx),Aee={angle:0,offset:5,zIndex:Qn.label,position:"middle",textBreakAll:!1};function Oee(e){if(!uu(e))return e;var t=e.cx,n=e.cy,r=e.outerRadius,l=r*2;return{x:t-r,y:n-r,width:l,upperWidth:l,lowerWidth:l,height:l}}function xl(e){var t,n,r=Tr(e,Aee),l=r.viewBox,o=r.parentViewBox,u=r.position,c=r.value,h=r.children,m=r.content,v=r.className,g=v===void 0?"":v,x=r.textBreakAll,S=r.labelRef,w=wee(),j=V3(),C=u==="center"?j:w??j,E,N,O;l==null?E=C:uu(l)?E=l:E=MS(l);var T=Oee(E);if(!E||yn(c)&&yn(h)&&!b.isValidElement(m)&&typeof m!="function")return null;var R=uu(E)&&(u==="insideStart"||u==="insideEnd"||u==="end");if(uu(E))R||(O=Eee(E,r.offset,r.position));else if(T){var A=QH({viewBox:T,position:u,offset:r.offset,parentViewBox:uu(o)?void 0:o});O=bo(bo({x:A.x,y:A.y,textAnchor:A.horizontalAnchor,verticalAnchor:A.verticalAnchor},A.width!==void 0?{width:A.width}:{}),A.height!==void 0?{height:A.height}:{})}var D=bo(bo(bo(bo({},((t=O)===null||t===void 0?void 0:t.x)!==void 0?{x:O.x}:{}),((n=O)===null||n===void 0?void 0:n.y)!==void 0?{y:O.y}:{}),r),{},{viewBox:E});if(b.isValidElement(m)){D.labelRef;var k=hT(D,mee);return b.cloneElement(m,k)}if(typeof m=="function"){D.content;var I=hT(D,vee);if(N=b.createElement(m,I),b.isValidElement(N))return N}else N=jee(r);var P=Xr(r);return R&&uu(E)?_ee(r,u,N,P,E):O==null?null:b.createElement(La,{zIndex:r.zIndex},b.createElement(tw,va({ref:S,className:Ct("recharts-label",g)},P,O,{textAnchor:U3(P.textAnchor)?P.textAnchor:O.textAnchor,breakAll:x}),N))}xl.displayName="Label";var Nee=(e,t,n)=>{if(!e)return null;var r={viewBox:t,labelRef:n};return e===!0?b.createElement(xl,va({key:"label-implicit"},r)):Hi(e)?b.createElement(xl,va({key:"label-implicit",value:e},r)):b.isValidElement(e)?e.type===xl?b.cloneElement(e,bo({key:"label-implicit"},r)):b.createElement(xl,va({key:"label-implicit",content:e},r)):jg(e)?b.createElement(xl,va({key:"label-implicit",content:e},r)):e&&typeof e=="object"?b.createElement(xl,va({},e,{key:"label-implicit"},r)):null};function Tee(e){var t=e.label,n=e.labelRef,r=V3();return Nee(t,r,n)||null}var Ree=["valueAccessor"],Mee=["dataKey","clockWise","id","textBreakAll","zIndex"];function Cv(){return Cv=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var t=Array.isArray(e.value)?e.value[e.value.length-1]:e.value;if(uee(t))return t},G3=b.createContext(void 0),kee=G3.Provider,q3=b.createContext(void 0);q3.Provider;function Iee(){return b.useContext(G3)}function zee(){return b.useContext(q3)}function Dm(e){var t=e.valueAccessor,n=t===void 0?Pee:t,r=vT(e,Ree),l=r.dataKey;r.clockWise;var o=r.id,u=r.textBreakAll,c=r.zIndex,h=vT(r,Mee),m=Iee(),v=zee(),g=m||v;return!g||!g.length?null:b.createElement(La,{zIndex:c??Qn.label},b.createElement(_a,{className:"recharts-label-list"},g.map((x,S)=>{var w,j=yn(l)?n(x,S):pn(x.payload,l),C=yn(o)?{}:{id:"".concat(o,"-").concat(S)};return b.createElement(xl,Cv({key:"label-".concat(S)},Xr(x),h,C,{fill:(w=r.fill)!==null&&w!==void 0?w:x.fill,parentViewBox:x.parentViewBox,value:j,textBreakAll:u,viewBox:x.viewBox,index:S,zIndex:0}))})))}Dm.displayName="LabelList";function Lee(e){var t=e.label;return t?t===!0?b.createElement(Dm,{key:"labelList-implicit"}):b.isValidElement(t)||jg(t)?b.createElement(Dm,{key:"labelList-implicit",content:t}):typeof t=="object"?b.createElement(Dm,Cv({key:"labelList-implicit"},t,{type:String(t.type)})):null:null}function Tb(){return Tb=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var t=e.cx,n=e.cy,r=e.r,l=e.className,o=Ct("recharts-dot",l);return Re(t)&&Re(n)&&Re(r)?b.createElement("circle",Tb({},Bi(e),LS(e),{className:o,cx:t,cy:n,r})):null},Uee={radiusAxis:{},angleAxis:{}},Y3=Hn({name:"polarAxis",initialState:Uee,reducers:{addRadiusAxis(e,t){e.radiusAxis[t.payload.id]=it(t.payload)},removeRadiusAxis(e,t){delete e.radiusAxis[t.payload.id]},addAngleAxis(e,t){e.angleAxis[t.payload.id]=it(t.payload)},removeAngleAxis(e,t){delete e.angleAxis[t.payload.id]}}}),Cg=Y3.actions;Cg.addRadiusAxis;Cg.removeRadiusAxis;Cg.addAngleAxis;Cg.removeAngleAxis;var $ee=Y3.reducer;function Bee(e){return e&&typeof e=="object"&&"className"in e&&typeof e.className=="string"?e.className:""}var X3=e=>e&&typeof e=="object"&&"clipDot"in e?!!e.clipDot:!0;function gT(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function pT(e){for(var t=1;t{r||(l.current===null?n(cZ(t)):l.current!==t&&n(fZ({prev:l.current,next:t})),l.current=t)},[t,n,r]),b.useLayoutEffect(()=>()=>{l.current&&(n(dZ(l.current)),l.current=null)},[n]),null}function Zee(e){var t=e.legendPayload,n=Vt(),r=fr(),l=b.useRef(null);return b.useLayoutEffect(()=>{r||(l.current===null?n(NG(t)):l.current!==t&&n(TG({prev:l.current,next:t})),l.current=t)},[n,r,t]),b.useLayoutEffect(()=>()=>{l.current&&(n(RG(l.current)),l.current=null)},[n]),null}function Wee(e,t){return nte(e)||tte(e,t)||ete(e,t)||Jee()}function Jee(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ete(e,t){if(e){if(typeof e=="string")return yT(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?yT(e,t):void 0}}function yT(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n2&&arguments[2]!==void 0?arguments[2]:[],r=[];for(var l of n)r.push({status:"removed",prev:l});for(var o=0;oe[Math.floor(o*n)]);return rw(r,t)}function ate(e,t){var n=t.map((r,l)=>e[l]);return rw(n,t)}function lte(e,t){for(var n=new Map,r=0;r{var S=n(g,x);if(S!=null){var w=r.get(S);if(w!==void 0)return l.add(S),w}}),u=[];for(var c of r){var h=Wee(c,2),m=h[0],v=h[1];l.has(m)||u.push(v)}return rw(o,t,u)}function ste(e,t,n){return t==null?null:e==null?t.map(r=>({status:"added",next:r})):n===nw?ite(e,t):n===rte?ate(e,t):ote(e,t,n)}function ute(e,t){var n=b.useRef(e),r=b.useRef(t.current),l=b.useRef(!0);n.current!==e&&(n.current=e,r.current=t.current,l.current=!1);var o=b.useCallback(function(u,c){var h=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(c===0){l.current=!0;return}c===1&&(r.current=u),c>0&&l.current&&h&&(t.current=u)},[t]);return{startValue:r.current,syncStepValue:o}}function cte(e,t){return mte(e)||hte(e,t)||dte(e,t)||fte()}function fte(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function dte(e,t){if(e){if(typeof e=="string")return xT(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?xT(e,t):void 0}}function xT(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{typeof e=="function"&&e(),o(!0)},[e]),c=b.useCallback(()=>{typeof t=="function"&&t(),o(!1)},[t]);return{isAnimating:l,handleAnimationStart:u,handleAnimationEnd:c}}function gte(e){var t,n=e.animationInput,r=e.animationIdPrefix,l=e.items,o=e.previousItemsRef,u=e.isAnimationActive,c=e.animationBegin,h=e.animationDuration,m=e.animationEasing,v=e.onAnimationStart,g=e.onAnimationEnd,x=e.animationInterpolateFn,S=e.animationMatchBy,w=e.shouldUpdatePreviousRef,j=e.children,C=e.layout,E=ek(n,r),N=ute(E,o),O=(t=N.startValue)!==null&&t!==void 0?t:null,T=ste(O,l,S??nw);return b.createElement(JP,{animationId:E,begin:c,duration:h,isActive:u,easing:m,onAnimationEnd:g,onAnimationStart:v,key:E},R=>{var A=O==null,D=l==null?l:x(T,R,C),k=w?w(R):R>0;return N.syncStepValue(D,R,k),D==null?null:j(D,R,A)})}var i0;function pte(e,t){return Ste(e)||bte(e,t)||xte(e,t)||yte()}function yte(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function xte(e,t){if(e){if(typeof e=="string")return bT(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?bT(e,t):void 0}}function bT(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{var e=b.useState(()=>Tf("uid-")),t=pte(e,1),n=t[0];return n},jte=(i0=Ll.useId)!==null&&i0!==void 0?i0:wte;function Cte(e,t){var n=jte();return t||(e?"".concat(e,"-").concat(n):n)}var _te=b.createContext(void 0),Ete=e=>{var t=e.id,n=e.type,r=e.children,l=Cte("recharts-".concat(n),t);return b.createElement(_te.Provider,{value:l},r(l))},Ate={cartesianItems:[],polarItems:[]},Z3=Hn({name:"graphicalItems",initialState:Ate,reducers:{addCartesianGraphicalItem:{reducer(e,t){e.cartesianItems.push(it(t.payload))},prepare:Ot()},replaceCartesianGraphicalItem:{reducer(e,t){var n=t.payload,r=n.prev,l=n.next,o=Gr(e).cartesianItems.indexOf(it(r));o>-1&&(e.cartesianItems[o]=it(l))},prepare:Ot()},removeCartesianGraphicalItem:{reducer(e,t){var n=Gr(e).cartesianItems.indexOf(it(t.payload));n>-1&&e.cartesianItems.splice(n,1)},prepare:Ot()},addPolarGraphicalItem:{reducer(e,t){e.polarItems.push(it(t.payload))},prepare:Ot()},removePolarGraphicalItem:{reducer(e,t){var n=Gr(e).polarItems.indexOf(it(t.payload));n>-1&&e.polarItems.splice(n,1)},prepare:Ot()},replacePolarGraphicalItem:{reducer(e,t){var n=t.payload,r=n.prev,l=n.next,o=Gr(e).polarItems.indexOf(it(r));o>-1&&(e.polarItems[o]=it(l))},prepare:Ot()}}}),ic=Z3.actions,Ote=ic.addCartesianGraphicalItem,Nte=ic.replaceCartesianGraphicalItem,Tte=ic.removeCartesianGraphicalItem;ic.addPolarGraphicalItem;ic.removePolarGraphicalItem;ic.replacePolarGraphicalItem;var Rte=Z3.reducer,Mte=e=>{var t=Vt(),n=b.useRef(null);return b.useLayoutEffect(()=>{n.current===null?t(Ote(e)):n.current!==e&&t(Nte({prev:n.current,next:e})),n.current=e},[t,e]),b.useLayoutEffect(()=>()=>{n.current&&(t(Tte(n.current)),n.current=null)},[t]),null},Dte=b.memo(Mte),Pte=["points"];function ST(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function a0(e){for(var t=1;t{var E,N,O=a0(a0(a0({r:3},u),x),{},{index:C,cx:(E=j.x)!==null&&E!==void 0?E:void 0,cy:(N=j.y)!==null&&N!==void 0?N:void 0,dataKey:o,value:j.value,payload:j.payload,points:t});return b.createElement($te,{key:"dot-".concat(C),option:n,dotProps:O,className:l})}),w={};return c&&h!=null&&(w.clipPath="url(#clipPath-".concat(g?"":"dots-").concat(h,")")),b.createElement(La,{zIndex:v},b.createElement(_a,_v({className:r},w),S))}function wT(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function gm(e){for(var t=1;t({top:e.top,bottom:e.bottom,left:e.left,right:e.right})),rne=W([nne,Ma,Da],(e,t,n)=>{if(!(!e||t==null||n==null))return{x:e.left,y:e.top,width:Math.max(0,t-e.left-e.right),height:Math.max(0,n-e.top-e.bottom)}}),iw=()=>ke(rne),ine=()=>ke(cW);function jT(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function l0(e){for(var t=1;t{var t=e.point,n=e.childIndex,r=e.mainColor,l=e.activeDot,o=e.dataKey,u=e.clipPath;if(l===!1||t.x==null||t.y==null)return null;var c={index:n,dataKey:o,cx:t.x,cy:t.y,r:4,fill:r??"none",strokeWidth:2,stroke:"#fff",payload:t.payload,value:t.value},h=l0(l0(l0({},c),Lv(l)),LS(l)),m;return b.isValidElement(l)?m=b.cloneElement(l,h):typeof l=="function"?m=l(h):m=b.createElement(K3,h),b.createElement(_a,{className:"recharts-active-dot",clipPath:u},m)};function une(e){var t=e.points,n=e.mainColor,r=e.activeDot,l=e.itemDataKey,o=e.clipPath,u=e.zIndex,c=u===void 0?Qn.activeDot:u,h=ke($f),m=ine();if(t==null||m==null)return null;var v=t.find(g=>m.includes(g.payload));return yn(v)?null:b.createElement(La,{zIndex:c},b.createElement(sne,{point:v,childIndex:Number(h),mainColor:n,dataKey:l,activeDot:r,clipPath:o}))}var cne=e=>{var t=e.chartData,n=Vt(),r=fr();return b.useEffect(()=>r?()=>{}:(n(Y2(t)),()=>{n(Y2(void 0))}),[t,n,r]),null},CT={x:0,y:0,width:0,height:0,padding:{top:0,right:0,bottom:0,left:0}},J3=Hn({name:"brush",initialState:CT,reducers:{setBrushSettings(e,t){return t.payload==null?CT:t.payload}}});J3.actions.setBrushSettings;var fne=J3.reducer;function dne(e){return(e%180+180)%180}var hne=function(t){var n=t.width,r=t.height,l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,o=dne(l),u=o*Math.PI/180,c=Math.atan(r/n),h=u>c&&u{e.dots.push(t.payload)},removeDot:(e,t)=>{var n=Gr(e).dots.findIndex(r=>r===t.payload);n!==-1&&e.dots.splice(n,1)},addArea:(e,t)=>{e.areas.push(t.payload)},removeArea:(e,t)=>{var n=Gr(e).areas.findIndex(r=>r===t.payload);n!==-1&&e.areas.splice(n,1)},addLine:(e,t)=>{e.lines.push(it(t.payload))},removeLine:(e,t)=>{var n=Gr(e).lines.findIndex(r=>r===t.payload);n!==-1&&e.lines.splice(n,1)}}}),ac=ez.actions;ac.addDot;ac.removeDot;ac.addArea;ac.removeArea;ac.addLine;ac.removeLine;var vne=ez.reducer;function gne(e,t){return bne(e)||xne(e,t)||yne(e,t)||pne()}function pne(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function yne(e,t){if(e){if(typeof e=="string")return _T(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_T(e,t):void 0}}function _T(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{var t=e.children,n=b.useState("".concat(Tf("recharts"),"-clip")),r=gne(n,1),l=r[0],o=iw();if(o==null)return null;var u=o.x,c=o.y,h=o.width,m=o.height;return b.createElement(Sne.Provider,{value:l},b.createElement("defs",null,b.createElement("clipPath",{id:l},b.createElement("rect",{x:u,y:c,height:m,width:h}))),t)};function jne(){}function ET(e){if(!e||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);return t===null||t===Object.prototype||Object.getPrototypeOf(t)===null?Object.prototype.toString.call(e)==="[object Object]":!1}function Cne(e,t,n){return wf(e,t,void 0,void 0,void 0,void 0,n)}function wf(e,t,n,r,l,o,u){const c=u(e,t,n,r,l,o);if(c!==void 0)return c;if(typeof e==typeof t)switch(typeof e){case"bigint":case"string":case"boolean":case"symbol":case"undefined":return e===t;case"number":return e===t||Object.is(e,t);case"function":return e===t;case"object":return Ef(e,t,o,u)}return Ef(e,t,o,u)}function Ef(e,t,n,r){var l;if(Object.is(e,t))return!0;let o=Io(e),u=Io(t);if(o==="[object Arguments]"&&(o=Nm),u==="[object Arguments]"&&(u=Nm),o!==u)return!1;switch(o){case $S:return e.toString()===t.toString();case BS:{const m=e.valueOf(),v=t.valueOf();return jf(m,v)}case HS:case DD:case MD:return Object.is(e.valueOf(),t.valueOf());case TD:return e.source===t.source&&e.flags===t.flags;case MF:return e===t}n=(l=n)!==null&&l!==void 0?l:new Map;const c=n.get(e),h=n.get(t);if(c!=null&&h!=null)return c===t;n.set(e,t),n.set(t,e);try{switch(o){case PD:if(e.size!==t.size)return!1;for(const[m,v]of e.entries())if(!t.has(m)||!wf(v,t.get(m),m,e,t,n,r))return!1;return!0;case kD:{if(e.size!==t.size)return!1;const m=Array.from(e.values()),v=Array.from(t.values());for(let g=0;gwf(x,w,void 0,e,t,n,r));if(S===-1)return!1;v.splice(S,1)}return!0}case ID:case UD:case $D:case BD:case HD:case PF:case FD:case VD:case GD:case kF:case qD:case KD:if(nb(e)!==nb(t)||e.length!==t.length)return!1;for(let m=0;me*l)return!1;var o=n();return e*(t-e*o/2-r)>=0&&e*(t+e*o/2-l)<=0}function One(e,t){return tz(e,t+1)}function Nne(e,t,n,r,l){for(var o=(r||[]).slice(),u=t.start,c=t.end,h=0,m=1,v=u,g=function(){var w=r==null?void 0:r[h];if(w===void 0)return{v:tz(r,m)};var j=h,C,E=()=>(C===void 0&&(C=n(w,j)),C),N=w.coordinate,O=h===0||Hf(e,N,E,v,c);O||(h=0,v=u,m+=1),O&&(v=N+e*(E()/2+l),h+=m)},x;m<=o.length;)if(x=g(),x)return x.v;return[]}function Tne(e,t,n,r,l){var o=(r||[]).slice(),u=o.length;if(u===0)return[];for(var c=t.start,h=t.end,m=1;m<=u;m++){for(var v=(u-1)%m,g=c,x=!0,S=function(){var T=r[j];if(T==null)return 0;var R=j,A,D=()=>(A===void 0&&(A=n(T,R)),A),k=T.coordinate,I=j===v||Hf(e,k,D,g,h);if(!I)return x=!1,1;I&&(g=k+e*(D()/2+l))},w,j=v;j(j===void 0&&(j=n(S,x)),j);if(x===u-1){var E=e*(w.coordinate+e*C()/2-h);o[x]=w=Ln(Ln({},w),{},{tickCoord:E>0?w.coordinate-E*e:w.coordinate})}else o[x]=w=Ln(Ln({},w),{},{tickCoord:w.coordinate});if(w.tickCoord!=null){var N=Hf(e,w.tickCoord,C,c,h);N&&(h=w.tickCoord-e*(C()/2+l),o[x]=Ln(Ln({},w),{},{isShow:!0}))}},v=u-1;v>=0;v--)m(v);return o}function kne(e,t,n,r,l,o){var u=(r||[]).slice(),c=u.length,h=t.start,m=t.end;if(o){var v=r[c-1];if(v!=null){var g=n(v,c-1),x=e*(v.coordinate+e*g/2-m);if(u[c-1]=v=Ln(Ln({},v),{},{tickCoord:x>0?v.coordinate-x*e:v.coordinate}),v.tickCoord!=null){var S=Hf(e,v.tickCoord,()=>g,h,m);S&&(m=v.tickCoord-e*(g/2+l),u[c-1]=Ln(Ln({},v),{},{isShow:!0}))}}}for(var w=o?c-1:c,j=function(N){var O=u[N];if(O==null)return 1;var T=O,R,A=()=>(R===void 0&&(R=n(O,N)),R);if(N===0){var D=e*(T.coordinate-e*A()/2-h);u[N]=T=Ln(Ln({},T),{},{tickCoord:D<0?T.coordinate-D*e:T.coordinate})}else u[N]=T=Ln(Ln({},T),{},{tickCoord:T.coordinate});if(T.tickCoord!=null){var k=Hf(e,T.tickCoord,A,h,m);k&&(h=T.tickCoord+e*(A()/2+l),u[N]=Ln(Ln({},T),{},{isShow:!0}))}},C=0;C{var D=typeof m=="function"?m(R.value,A):R.value;return w==="width"?Ene(_f(D,{fontSize:t,letterSpacing:n}),j,g):_f(D,{fontSize:t,letterSpacing:n})[w]},E=l[0],N=l[1],O=l.length>=2&&E!=null&&N!=null?Vr(N.coordinate-E.coordinate):1,T=Ane(o,O,w);return h==="equidistantPreserveStart"?Nne(O,T,C,l,u):h==="equidistantPreserveEnd"?Tne(O,T,C,l,u):(h==="preserveStart"||h==="preserveStartEnd"?S=kne(O,T,C,l,u,h==="preserveStartEnd"):S=Pne(O,T,C,l,u),S.filter(R=>R.isShow))}var Ine=e=>{var t=e.ticks,n=e.label,r=e.labelGapWithTick,l=r,o=e.tickSize,u=o===void 0?0:o,c=e.tickMargin,h=c===void 0?0:c,m=0;if(t){Array.from(t).forEach(S=>{if(S){var w=S.getBoundingClientRect();w.width>m&&(m=w.width)}});var v=n?n.getBoundingClientRect().width:0,g=u+h,x=m+g+v+(n?l:0);return Math.round(x)}return 0},zne=e=>{var t=e.ticks,n=e.label,r=e.labelGapWithTick,l=r,o=e.tickSize,u=o===void 0?0:o,c=e.tickMargin,h=c===void 0?0:c,m=0;if(t){Array.from(t).forEach(S=>{if(S){var w=S.getBoundingClientRect();w.height>m&&(m=w.height)}});var v=n?n.getBoundingClientRect().height:0,g=u+h,x=m+g+v+(n?l:0);return Math.round(x)}return 0},Lne={xAxis:{},yAxis:{}},nz=Hn({name:"renderedTicks",initialState:Lne,reducers:{setRenderedTicks:(e,t)=>{var n=t.payload,r=n.axisType,l=n.axisId,o=n.ticks;e[r][l]=it(o)},removeRenderedTicks:(e,t)=>{var n=t.payload,r=n.axisType,l=n.axisId;delete e[r][l]}}}),rz=nz.actions,Une=rz.setRenderedTicks,$ne=rz.removeRenderedTicks,Bne=nz.reducer,Hne=["axisLine","width","height","className","hide","ticks","axisType","axisId"];function OT(e,t){return qne(e)||Gne(e,t)||Vne(e,t)||Fne()}function Fne(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Vne(e,t){if(e){if(typeof e=="string")return NT(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?NT(e,t):void 0}}function NT(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{if(!(r==null||n==null)){var u=t.map(h=>({value:h.value,coordinate:h.coordinate,offset:h.offset,index:h.index})),c=o.current;c!=null&&c.axisId===r&&c.axisType===n&&_ne(c.ticks,u)||(o.current={ticks:u,axisId:r,axisType:n},l(Une({ticks:u,axisId:r,axisType:n})))}},[l,t,r,n]),b.useEffect(()=>r==null||n==null?Ku:()=>{l($ne({axisId:r,axisType:n}))},[l,r,n]),null}var ire=b.forwardRef((e,t)=>{var n=e.ticks,r=n===void 0?[]:n,l=e.tick,o=e.tickLine,u=e.stroke,c=e.tickFormatter,h=e.unit,m=e.padding,v=e.tickTextProps,g=e.orientation,x=e.mirror,S=e.x,w=e.y,j=e.width,C=e.height,E=e.tickSize,N=e.tickMargin,O=e.fontSize,T=e.letterSpacing,R=e.getTicksConfig,A=e.events,D=e.axisType,k=e.axisId,I=aw($t($t({},R),{},{ticks:r}),O,T),P=Bi(R),B=Lv(l),F=U3(P.textAnchor)?P.textAnchor:ere(g,x),se=tre(g,x),ue={};typeof o=="object"&&(ue=o);var de=$t($t({},P),{},{fill:"none"},ue),G=I.map(ce=>$t({entry:ce},Jne(ce,S,w,j,C,g,E,x,N))),ne=G.map(ce=>{var U=ce.entry,Ae=ce.line;return b.createElement(_a,{className:"recharts-cartesian-axis-tick",key:"tick-".concat(U.value,"-").concat(U.coordinate,"-").concat(U.tickCoord)},o&&b.createElement("line",Qo({},de,Ae,{className:Ct("recharts-cartesian-axis-tick-line",es(o,"className"))})))}),ie=G.map((ce,U)=>{var Ae,ee,ve=ce.entry,z=ce.tick,Y=$t($t($t($t({verticalAnchor:se},P),{},{textAnchor:F,stroke:"none",fill:u},z),{},{index:U,payload:ve,visibleTicksCount:I.length,tickFormatter:c,padding:m},v),{},{angle:(Ae=(ee=v==null?void 0:v.angle)!==null&&ee!==void 0?ee:P.angle)!==null&&Ae!==void 0?Ae:0}),le=$t($t({},Y),B);return b.createElement(_a,Qo({className:"recharts-cartesian-axis-tick-label",key:"tick-label-".concat(ve.value,"-").concat(ve.coordinate,"-").concat(ve.tickCoord)},jF(A,ve,U)),l&&b.createElement(nre,{option:l,tickProps:le,value:"".concat(typeof c=="function"?c(ve.value,U):ve.value).concat(h||"")}))});return b.createElement("g",{className:"recharts-cartesian-axis-ticks recharts-".concat(D,"-ticks")},b.createElement(rre,{ticks:I,axisId:k,axisType:D}),ie.length>0&&b.createElement(La,{zIndex:Qn.label},b.createElement("g",{className:"recharts-cartesian-axis-tick-labels recharts-".concat(D,"-tick-labels"),ref:t},ie)),ne.length>0&&b.createElement("g",{className:"recharts-cartesian-axis-tick-lines recharts-".concat(D,"-tick-lines")},ne))}),are=b.forwardRef((e,t)=>{var n=e.axisLine,r=e.width,l=e.height,o=e.className,u=e.hide,c=e.ticks,h=e.axisType,m=e.axisId,v=Kne(e,Hne),g=b.useState(""),x=OT(g,2),S=x[0],w=x[1],j=b.useState(""),C=OT(j,2),E=C[0],N=C[1],O=b.useRef(null);b.useImperativeHandle(t,()=>({getCalculatedWidth:()=>{var R;return Ine({ticks:O.current,label:(R=e.labelRef)===null||R===void 0?void 0:R.current,labelGapWithTick:5,tickSize:e.tickSize,tickMargin:e.tickMargin})},getCalculatedHeight:()=>{var R;return zne({ticks:O.current,label:(R=e.labelRef)===null||R===void 0?void 0:R.current,labelGapWithTick:5,tickSize:e.tickSize,tickMargin:e.tickMargin})}}));var T=b.useCallback(R=>{if(R){var A=R.getElementsByClassName("recharts-cartesian-axis-tick-value");O.current=A;var D=A[0];if(D){var k=window.getComputedStyle(D),I=k.fontSize,P=k.letterSpacing;(I!==S||P!==E)&&(w(I),N(P))}}},[S,E]);return u||r!=null&&r<=0||l!=null&&l<=0?null:b.createElement(La,{zIndex:e.zIndex},b.createElement(_a,{className:Ct("recharts-cartesian-axis",o)},b.createElement(Wne,{x:e.x,y:e.y,width:r,height:l,orientation:e.orientation,mirror:e.mirror,axisLine:n,otherSvgProps:Bi(e)}),b.createElement(ire,{ref:T,axisType:h,events:v,fontSize:S,getTicksConfig:e,height:e.height,letterSpacing:E,mirror:e.mirror,orientation:e.orientation,padding:e.padding,stroke:e.stroke,tick:e.tick,tickFormatter:e.tickFormatter,tickLine:e.tickLine,tickMargin:e.tickMargin,tickSize:e.tickSize,tickTextProps:e.tickTextProps,ticks:c,unit:e.unit,width:e.width,x:e.x,y:e.y,axisId:m}),b.createElement(bee,{x:e.x,y:e.y,width:e.width,height:e.height,lowerWidth:e.width,upperWidth:e.width},b.createElement(Tee,{label:e.label,labelRef:e.labelRef}),e.children)))}),lw=b.forwardRef((e,t)=>{var n=Tr(e,wa);return b.createElement(are,Qo({},n,{ref:t}))});lw.displayName="CartesianAxis";var lre={grid:{stroke:"#ccc",fill:"none"}},iz=b.createContext(lre);iz.Provider;var ore=()=>b.useContext(iz),sre=["x1","y1","x2","y2","key"],ure=["offset"],cre=["xAxisId","yAxisId"],fre=["xAxisId","yAxisId"];function RT(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function Un(e){for(var t=1;t{var t=e.fill;if(!t||t==="none")return null;var n=e.fillOpacity,r=e.x,l=e.y,o=e.width,u=e.height,c=e.ry;return b.createElement("rect",{x:r,y:l,ry:c,width:o,height:u,stroke:"none",fill:t,fillOpacity:n,className:"recharts-cartesian-grid-bg"})};function az(e){var t=e.option,n=e.lineItemProps,r;if(b.isValidElement(t))r=b.cloneElement(t,n);else if(typeof t=="function")r=t(n);else{var l,o=n.x1,u=n.y1,c=n.x2,h=n.y2,m=n.key,v=Ev(n,sre),g=(l=Bi(v))!==null&&l!==void 0?l:{};g.offset;var x=Ev(g,ure),S=Array.isArray(x.strokeDasharray)?x.strokeDasharray.join(","):x.strokeDasharray;r=b.createElement("line",_o({},x,{strokeDasharray:S,x1:o,y1:u,x2:c,y2:h,fill:"none",key:m}))}return r}function pre(e){var t=e.x,n=e.width,r=e.horizontal,l=r===void 0?!0:r,o=e.horizontalPoints;if(!l||!o||!o.length)return null;e.xAxisId,e.yAxisId;var u=Ev(e,cre),c=o.map((h,m)=>{var v=Un(Un({},u),{},{x1:t,y1:h,x2:t+n,y2:h,key:"line-".concat(m),index:m});return b.createElement(az,{key:"line-".concat(m),option:l,lineItemProps:v})});return b.createElement("g",{className:"recharts-cartesian-grid-horizontal"},c)}function yre(e){var t=e.y,n=e.height,r=e.vertical,l=r===void 0?!0:r,o=e.verticalPoints;if(!l||!o||!o.length)return null;e.xAxisId,e.yAxisId;var u=Ev(e,fre),c=o.map((h,m)=>{var v=Un(Un({},u),{},{x1:h,y1:t,x2:h,y2:t+n,key:"line-".concat(m),index:m});return b.createElement(az,{option:l,lineItemProps:v,key:"line-".concat(m)})});return b.createElement("g",{className:"recharts-cartesian-grid-vertical"},c)}function xre(e){var t=e.horizontalFill,n=e.fillOpacity,r=e.x,l=e.y,o=e.width,u=e.height,c=e.horizontalPoints,h=e.horizontal,m=h===void 0?!0:h;if(!m||!t||!t.length||c==null)return null;var v=c.map(x=>Math.round(x+l-l)).sort((x,S)=>x-S);l!==v[0]&&v.unshift(0);var g=v.map((x,S)=>{var w=v[S+1],j=w==null,C=j?l+u-x:w-x;if(C<=0)return null;var E=S%t.length;return b.createElement("rect",{key:"react-".concat(S),y:x,x:r,height:C,width:o,stroke:"none",fill:t[E],fillOpacity:n,className:"recharts-cartesian-grid-bg"})});return b.createElement("g",{className:"recharts-cartesian-gridstripes-horizontal"},g)}function bre(e){var t=e.vertical,n=t===void 0?!0:t,r=e.verticalFill,l=e.fillOpacity,o=e.x,u=e.y,c=e.width,h=e.height,m=e.verticalPoints;if(!n||!r||!r.length)return null;var v=m.map(x=>Math.round(x+o-o)).sort((x,S)=>x-S);o!==v[0]&&v.unshift(0);var g=v.map((x,S)=>{var w=v[S+1],j=w==null,C=j?o+c-x:w-x;if(C<=0)return null;var E=S%r.length;return b.createElement("rect",{key:"react-".concat(S),x,y:u,width:C,height:h,stroke:"none",fill:r[E],fillOpacity:l,className:"recharts-cartesian-grid-bg"})});return b.createElement("g",{className:"recharts-cartesian-gridstripes-vertical"},g)}var Sre=(e,t)=>{var n=e.xAxis,r=e.width,l=e.height,o=e.offset;return MP(aw(Un(Un(Un({},wa),n),{},{ticks:DP(n),viewBox:{x:0,y:0,width:r,height:l}})),o.left,o.left+o.width,t)},wre=(e,t)=>{var n=e.yAxis,r=e.width,l=e.height,o=e.offset;return MP(aw(Un(Un(Un({},wa),n),{},{ticks:DP(n),viewBox:{x:0,y:0,width:r,height:l}})),o.top,o.top+o.height,t)},jre={horizontal:!0,vertical:!0,horizontalPoints:[],verticalPoints:[],verticalFill:[],horizontalFill:[],xAxisId:0,yAxisId:0,syncWithTicks:!1,zIndex:Qn.grid};function ow(e){var t,n,r,l,o,u,c=HP(),h=FP(),m=BP(),v=Un(Un({},Tr(e,jre)),{},{x:Re(e.x)?e.x:m.left,y:Re(e.y)?e.y:m.top,width:Re(e.width)?e.width:m.width,height:Re(e.height)?e.height:m.height}),g=v.xAxisId,x=v.yAxisId,S=v.x,w=v.y,j=v.width,C=v.height,E=v.syncWithTicks,N=v.horizontalValues,O=v.verticalValues,T=fr(),R=ke(ne=>k2(ne,"xAxis",g,T)),A=ke(ne=>k2(ne,"yAxis",x,T)),D=ore(),k={stroke:(t=v.stroke)!==null&&t!==void 0?t:D.grid.stroke,strokeWidth:(n=v.strokeWidth)!==null&&n!==void 0?n:D.grid.strokeWidth,strokeOpacity:(r=v.strokeOpacity)!==null&&r!==void 0?r:D.grid.strokeOpacity,strokeDasharray:(l=v.strokeDasharray)!==null&&l!==void 0?l:D.grid.strokeDasharray};if(!Fi(j)||!Fi(C)||!Re(S)||!Re(w))return null;var I=v.verticalCoordinatesGenerator||Sre,P=v.horizontalCoordinatesGenerator||wre,B=v.horizontalPoints,F=v.verticalPoints;if((!B||!B.length)&&typeof P=="function"){var se=N&&N.length,ue=P({yAxis:A?Un(Un({},A),{},{ticks:se?N:A.ticks}):void 0,width:c??j,height:h??C,offset:m},se?!0:E);tv(Array.isArray(ue),"horizontalCoordinatesGenerator should return Array but instead it returned [".concat(typeof ue,"]")),Array.isArray(ue)&&(B=ue)}if((!F||!F.length)&&typeof I=="function"){var de=O&&O.length,G=I({xAxis:R?Un(Un({},R),{},{ticks:de?O:R.ticks}):void 0,width:c??j,height:h??C,offset:m},de?!0:E);tv(Array.isArray(G),"verticalCoordinatesGenerator should return Array but instead it returned [".concat(typeof G,"]")),Array.isArray(G)&&(F=G)}return b.createElement(La,{zIndex:v.zIndex},b.createElement("g",{className:"recharts-cartesian-grid"},b.createElement(gre,{fill:(o=v.fill)!==null&&o!==void 0?o:D.grid.fill,fillOpacity:(u=v.fillOpacity)!==null&&u!==void 0?u:D.grid.fillOpacity,x:v.x,y:v.y,width:v.width,height:v.height,ry:v.ry}),b.createElement(xre,_o({},v,{horizontalPoints:B})),b.createElement(bre,_o({},v,{verticalPoints:F})),b.createElement(pre,_o({},v,k,{offset:m,horizontalPoints:B,xAxis:R,yAxis:A})),b.createElement(yre,_o({},v,k,{offset:m,verticalPoints:F,xAxis:R,yAxis:A}))))}ow.displayName="CartesianGrid";var Cre=["animationElapsedTime","isAnimating","isEntrance","visibleLength","strokeDasharray","connectNulls"];function Rb(){return Rb=Object.assign?Object.assign.bind():function(e){for(var t=1;tS+w,0);if(!l)return lz(t,e);for(var o=Math.floor(e/l),u=e%l,c=[],h=0,m=0;hu){c=[...r.slice(0,h),u-m];break}}var x=c.length%2===0?[0,t]:[t];return[...Nre(r,o),...c,...x].map(S=>"".concat(S,"px")).join(", ")}function Rre(e,t,n){if(e){var r="".concat(e).split(/[,\s]+/gim).map(l=>parseFloat(l));return Tre(n,t,r)}return lz(t,n)}function Mre(e){e.animationElapsedTime,e.isAnimating,e.isEntrance;var t=e.visibleLength,n=e.strokeDasharray,r=e.connectNulls,l=_re(e,Cre),o=r??!1,u;if(t!=null){var c,h=l.pathRef,m=Are((c=h==null?void 0:h.current)!==null&&c!==void 0?c:null);u=Rre(n,m,t)}else n!=null&&(u=String(n));return b.createElement(XP,Rb({},l,{connectNulls:o,strokeDasharray:u}))}function Dre(e){var t=b.useRef(0),n=b.useRef(0),r=b.useRef(!1),l=b.useRef(e);return l.current!==e&&(t.current=n.current,l.current=e),b.useCallback((o,u)=>{if(r.current)return null;var c=Math.min(ga(t.current+o*u),u);return o>0&&u>0&&(n.current=Math.max(n.current,c),c>=u)?(r.current=!0,null):c},[])}var Pre={},oz=Hn({name:"errorBars",initialState:Pre,reducers:{addErrorBar:(e,t)=>{var n=t.payload,r=n.itemId,l=n.errorBar;e[r]||(e[r]=[]),e[r].push(l)},replaceErrorBar:(e,t)=>{var n=t.payload,r=n.itemId,l=n.prev,o=n.next;e[r]&&(e[r]=e[r].map(u=>u.dataKey===l.dataKey&&u.direction===l.direction?o:u))},removeErrorBar:(e,t)=>{var n=t.payload,r=n.itemId,l=n.errorBar;e[r]&&(e[r]=e[r].filter(o=>o.dataKey!==l.dataKey||o.direction!==l.direction))}}}),sw=oz.actions;sw.addErrorBar;sw.replaceErrorBar;sw.removeErrorBar;var kre=oz.reducer,Ire=["children"];function zre(e,t){if(e==null)return{};var n,r,l=Lre(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r({x:0,y:0,value:0}),errorBarOffset:0},$re=b.createContext(Ure);function Bre(e){var t=e.children,n=zre(e,Ire);return b.createElement($re.Provider,{value:n},t)}function sz(e,t){var n,r,l=ke(m=>ka(m,e)),o=ke(m=>Ia(m,t)),u=(n=l==null?void 0:l.allowDataOverflow)!==null&&n!==void 0?n:en.allowDataOverflow,c=(r=o==null?void 0:o.allowDataOverflow)!==null&&r!==void 0?r:tn.allowDataOverflow,h=u||c;return{needClip:h,needClipX:u,needClipY:c}}function Hre(e){var t=e.xAxisId,n=e.yAxisId,r=e.clipPathId,l=iw(),o=sz(t,n),u=o.needClipX,c=o.needClipY,h=o.needClip,m=ke(O=>YI(O,t,!1)),v=ke(O=>XI(O,n,!1));if(!h||!l)return null;var g=l.x,x=l.y,S=l.width,w=l.height,j=u&&m?Math.min(m[0],m[1]):g-S/2,C=c&&v?Math.min(v[0],v[1]):x-w/2,E=u&&m?Math.abs(m[1]-m[0]):S*2,N=c&&v?Math.abs(v[1]-v[0]):w*2;return b.createElement("clipPath",{id:"clipPath-".concat(r)},b.createElement("rect",{x:j,y:C,width:E,height:N}))}var uz=(e,t,n,r)=>r3(e,"xAxis",t,r),cz=(e,t,n,r)=>n3(e,"xAxis",t,r),fz=(e,t,n,r)=>r3(e,"yAxis",n,r),dz=(e,t,n,r)=>n3(e,"yAxis",n,r),Fre=W([It,uz,fz,cz,dz],(e,t,n,r,l)=>Ra(e,"xAxis")?ev(t,r,!1):ev(n,l,!1)),Vre=(e,t,n,r,l)=>l;function Gre(e){return e.type==="line"}var qre=W([jI,Vre],(e,t)=>e.filter(Gre).find(n=>n.id===t)),Kre=W([It,uz,fz,cz,dz,qre,Fre,ld],(e,t,n,r,l,o,u,c)=>{var h=c.chartData,m=c.dataStartIndex,v=c.dataEndIndex;if(!(o==null||t==null||n==null||r==null||l==null||r.length===0||l.length===0||u==null||e!=="horizontal"&&e!=="vertical")){var g=o.dataKey,x=o.data,S;if(x!=null&&x.length>0?S=x:S=h==null?void 0:h.slice(m,v+1),S!=null)return vie({layout:e,xAxis:t,yAxis:n,xAxisTicks:r,yAxisTicks:l,dataKey:g,bandSize:u,displayedData:S})}});function Yre(e){var t=Lv(e),n=3,r=2;if(t!=null){var l=t.r,o=t.strokeWidth,u=Number(l),c=Number(o);return(Number.isNaN(u)||u<0)&&(u=n),(Number.isNaN(c)||c<0)&&(c=r),{r:u,strokeWidth:c}}return{r:n,strokeWidth:r}}var Xre=["id"],Qre=["type","layout","connectNulls","needClip","shape","strokeDasharray"],Zre=["activeDot","animateNewValues","animationBegin","animationDuration","animationEasing","connectNulls","dot","hide","isAnimationActive","label","legendType","xAxisId","yAxisId","id"];function Av(){return Av=Object.assign?Object.assign.bind():function(e){for(var t=1;t0?t/n:0}var iie=(e,t)=>{if(e==null)return[];if(t===1)return e.flatMap(c=>c.status==="removed"?[]:[c.next]);var n=rie(e),r=[];for(var l of e)if(l.status==="matched")r.push(Di(Di({},l.next),{},{x:pa(l.prev.x,l.next.x,t),y:pa(l.prev.y,l.next.y,t)}));else if(l.status==="added")if(l.next.x!=null){var o=l.next.x-n;r.push(Di(Di({},l.next),{},{x:pa(o,l.next.x,t),y:l.next.y}))}else r.push(l.next);else if(l.status==="removed"&&l.prev.x!=null){var u=l.prev.x+n;r.push(Di(Di({},l.prev),{},{x:pa(l.prev.x,u,t),y:l.prev.y}))}return r},cw={activeDot:!0,animateNewValues:!0,animationBegin:0,animationDuration:1500,animationEasing:"ease",animationInterpolateFn:iie,animationMatchBy:nw,connectNulls:!1,dot:!0,fill:"#fff",hide:!1,isAnimationActive:"auto",label:!1,legendType:"line",shape:Mre,stroke:"#3182bd",strokeWidth:1,xAxisId:0,yAxisId:0,zIndex:Qn.line,type:"linear"},aie=e=>{var t=e.dataKey,n=e.name,r=e.stroke,l=e.legendType,o=e.hide;return[{inactive:o,dataKey:t,type:l,color:r,value:PP(n,t),payload:e}]},lie=b.memo(e=>{var t=e.dataKey,n=e.data,r=e.stroke,l=e.strokeWidth,o=e.fill,u=e.name,c=e.hide,h=e.unit,m=e.formatter,v=e.tooltipType,g=e.id,x={dataDefinedOnItem:n,getPosition:Ku,settings:{stroke:r,strokeWidth:l,fill:o,dataKey:t,nameKey:void 0,name:PP(u,t),hide:c,type:v,color:r,unit:h,formatter:m,graphicalItemId:g}};return b.createElement(Qee,{tooltipEntrySettings:x})});function oie(e){var t=e.clipPathId,n=e.points,r=e.props,l=r.dot,o=r.dataKey,u=r.needClip;r.id;var c=uw(r,Xre),h=Bi(c);return b.createElement(Hte,{points:n,dot:l,className:"recharts-line-dots",dotClassName:"recharts-line-dot",dataKey:o,baseProps:h,needClip:u,clipPathId:t})}function sie(e){var t=e.showLabels,n=e.children,r=e.points,l=b.useMemo(()=>r==null?void 0:r.map(o=>{var u,c,h={x:(u=o.x)!==null&&u!==void 0?u:0,y:(c=o.y)!==null&&c!==void 0?c:0,width:0,lowerWidth:0,upperWidth:0,height:0};return Di(Di({},h),{},{value:o.value,payload:o.payload,viewBox:h,parentViewBox:void 0,fill:void 0})}),[r]);return b.createElement(kee,{value:t?l:void 0},n)}function uie(e){var t=e.clipPathId,n=e.pathRef,r=e.points,l=e.props,o=e.animationElapsedTime,u=e.isAnimating,c=e.isEntrance,h=e.visibleLength,m=l.type,v=l.layout,g=l.connectNulls,x=l.needClip,S=l.shape,w=l.strokeDasharray,j=uw(l,Qre),C=Di(Di({},Xr(j)),{},{fill:"none",className:"recharts-line-curve",clipPath:x?"url(#clipPath-".concat(t,")"):void 0,points:r,type:m,layout:v,connectNulls:g,strokeDasharray:w??l.strokeDasharray,pathRef:n,animationElapsedTime:o,isAnimating:u,isEntrance:l.animateNewValues?c:!1,visibleLength:h});return b.createElement(b.Fragment,null,(r==null?void 0:r.length)>1&&b.createElement(Xee,{option:S,DefaultShape:cw.shape,shapeProps:C}),b.createElement(oie,{points:r,clipPathId:t,props:l}))}function cie(e){var t=e.clipPathId,n=e.props,r=e.pathRef,l=e.previousPointsRef,o=n.points,u=n.isAnimationActive,c=n.animationBegin,h=n.animationDuration,m=n.animationEasing,v=n.animationMatchBy,g=n.animationInterpolateFn,x=n.layout,S=nie(r.current),w=vte(n.onAnimationStart,n.onAnimationEnd),j=w.isAnimating,C=w.handleAnimationStart,E=w.handleAnimationEnd,N=!j,O=Dre(o),T=b.useCallback(R=>R>0&&S>0,[S]);return b.createElement(sie,{points:o,showLabels:N},n.children,b.createElement(gte,{animationInput:o,animationIdPrefix:"recharts-line-",items:o,previousItemsRef:l,isAnimationActive:u,animationBegin:c,animationDuration:h,animationEasing:m,onAnimationStart:C,onAnimationEnd:E,animationInterpolateFn:g,animationMatchBy:v,shouldUpdatePreviousRef:T,layout:x},(R,A,D)=>{var k=j||A<1,I=k?O(A,S):null;return b.createElement(uie,{props:n,points:R,clipPathId:t,pathRef:r,animationElapsedTime:A,isAnimating:k,isEntrance:D,visibleLength:I})}),b.createElement(Lee,{label:n.label}))}function fie(e){var t=e.clipPathId,n=e.props,r=b.useRef(null),l=b.useRef(null);return b.createElement(cie,{props:n,clipPathId:t,previousPointsRef:r,pathRef:l})}var die=(e,t)=>{var n,r;return{x:(n=e.x)!==null&&n!==void 0?n:void 0,y:(r=e.y)!==null&&r!==void 0?r:void 0,value:e.value,errorVal:pn(e.payload,t)}};class hie extends b.Component{render(){var t=this.props,n=t.hide,r=t.dot,l=t.points,o=t.className,u=t.xAxisId,c=t.yAxisId,h=t.top,m=t.left,v=t.width,g=t.height,x=t.id,S=t.needClip,w=t.zIndex;if(n)return null;var j=Ct("recharts-line",o),C=x,E=Yre(r),N=E.r,O=E.strokeWidth,T=X3(r),R=N*2+O,A=S?"url(#clipPath-".concat(T?"":"dots-").concat(C,")"):void 0;return b.createElement(La,{zIndex:w},b.createElement(_a,{className:j},S&&b.createElement("defs",null,b.createElement(Hre,{clipPathId:C,xAxisId:u,yAxisId:c}),!T&&b.createElement("clipPath",{id:"clipPath-dots-".concat(C)},b.createElement("rect",{x:m-R/2,y:h-R/2,width:v+R,height:g+R}))),b.createElement(Bre,{xAxisId:u,yAxisId:c,data:l,dataPointFormatter:die,errorBarOffset:0},b.createElement(fie,{props:this.props,clipPathId:C}))),b.createElement(une,{activeDot:this.props.activeDot,points:l,mainColor:this.props.stroke,itemDataKey:this.props.dataKey,clipPath:A}))}}function mie(e){var t=Tr(e,cw),n=t.activeDot,r=t.animateNewValues,l=t.animationBegin,o=t.animationDuration,u=t.animationEasing,c=t.connectNulls,h=t.dot,m=t.hide,v=t.isAnimationActive,g=t.label,x=t.legendType,S=t.xAxisId,w=t.yAxisId,j=t.id,C=uw(t,Zre),E=sz(S,w),N=E.needClip,O=iw(),T=Yu(),R=fr(),A=ke(B=>Kre(B,S,w,R,j));if(T!=="horizontal"&&T!=="vertical"||A==null||O==null)return null;var D=O.height,k=O.width,I=O.x,P=O.y;return b.createElement(hie,Av({},C,{id:j,connectNulls:c,dot:h,activeDot:n,animateNewValues:r,animationBegin:l,animationDuration:o,animationEasing:u,isAnimationActive:v,hide:m,label:g,legendType:x,xAxisId:S,yAxisId:w,points:A,layout:T,height:D,width:k,left:I,top:P,needClip:N}))}function vie(e){var t=e.layout,n=e.xAxis,r=e.yAxis,l=e.xAxisTicks,o=e.yAxisTicks,u=e.dataKey,c=e.bandSize,h=e.displayedData;return h.map((m,v)=>{var g=pn(m,u);if(t==="horizontal"){var x=MO({axis:n,ticks:l,bandSize:c,entry:m,index:v}),S=yn(g)?null:r.scale.map(g);return{x,y:S??null,value:g,payload:m}}var w=yn(g)?null:n.scale.map(g),j=MO({axis:r,ticks:o,bandSize:c,entry:m,index:v});return w==null||j==null?null:{x:w,y:j,value:g,payload:m}}).filter(Boolean)}function gie(e){var t=Tr(e,cw),n=fr();return b.createElement(Ete,{id:t.id,type:"line"},r=>b.createElement(b.Fragment,null,b.createElement(Zee,{legendPayload:aie(t)}),b.createElement(lie,{dataKey:t.dataKey,data:t.data,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,formatter:t.formatter,tooltipType:t.tooltipType,id:r}),b.createElement(Dte,{type:"line",id:r,data:t.data,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,dataKey:t.dataKey,hide:t.hide,isPanorama:n}),b.createElement(mie,Av({},t,{id:r}))))}var fw=b.memo(gie,ig);fw.displayName="Line";var pie=["domain","range"],yie=["domain","range"];function DT(e,t){if(e==null)return{};var n,r,l=xie(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{if(u!=null)return IT(IT({},o),{},{type:u})},[o,u]);return b.useLayoutEffect(()=>{c!=null&&(n.current===null?t(Kte(c)):n.current!==c&&t(Yte({prev:n.current,next:c})),n.current=c)},[c,t]),b.useLayoutEffect(()=>()=>{n.current&&(t(Xte(n.current)),n.current=null)},[t]),null}var Oie=e=>{var t=e.xAxisId,n=e.className,r=e.height,l=e.label,o=b.useRef(null),u=b.useRef(null),c=ke(IP),h=fr(),m=Vt(),v="xAxis",g=ke(E=>t3(E,v,t,h)),x=ke(E=>GQ(E,t)),S=ke(E=>ZQ(E,t)),w=ke(E=>xI(E,t));if(b.useLayoutEffect(()=>{if(!(r!=="auto"||!x||jg(l)||b.isValidElement(l)||w==null)){var E=o.current;if(E){var N=E.getCalculatedHeight();Math.round(x.height)!==Math.round(N)&&m(ene({id:t,height:N}))}}},[g,x,m,l,t,r,w]),x==null||S==null||w==null)return null;e.dangerouslySetInnerHTML,e.ticks,e.scale;var j=Db(e,Sie);w.id,w.scale;var C=Db(w,wie);return b.createElement(lw,Mb({},j,C,{ref:o,labelRef:u,x:S.x,y:S.y,width:x.width,height:x.height,className:Ct("recharts-".concat(v," ").concat(v),n),viewBox:c,ticks:g,axisType:v,axisId:t}))},Nie={allowDataOverflow:en.allowDataOverflow,allowDecimals:en.allowDecimals,allowDuplicatedCategory:en.allowDuplicatedCategory,angle:en.angle,axisLine:wa.axisLine,height:en.height,hide:!1,includeHidden:en.includeHidden,interval:en.interval,label:!1,minTickGap:en.minTickGap,mirror:en.mirror,orientation:en.orientation,padding:en.padding,reversed:en.reversed,scale:en.scale,tick:en.tick,tickCount:en.tickCount,tickLine:wa.tickLine,tickSize:wa.tickSize,type:en.type,niceTicks:en.niceTicks,xAxisId:0},Tie=e=>{var t=Tr(e,Nie);return b.createElement(b.Fragment,null,b.createElement(Aie,{allowDataOverflow:t.allowDataOverflow,allowDecimals:t.allowDecimals,allowDuplicatedCategory:t.allowDuplicatedCategory,angle:t.angle,dataKey:t.dataKey,domain:t.domain,height:t.height,hide:t.hide,id:t.xAxisId,includeHidden:t.includeHidden,interval:t.interval,minTickGap:t.minTickGap,mirror:t.mirror,name:t.name,orientation:t.orientation,padding:t.padding,reversed:t.reversed,scale:t.scale,tick:t.tick,tickCount:t.tickCount,tickFormatter:t.tickFormatter,ticks:t.ticks,type:t.type,unit:t.unit,niceTicks:t.niceTicks}),b.createElement(Oie,t))},dw=b.memo(Tie,hz);dw.displayName="XAxis";var Rie=["type"],Mie=["dangerouslySetInnerHTML","ticks","scale"],Die=["id","scale"];function Pb(){return Pb=Object.assign?Object.assign.bind():function(e){for(var t=1;t{if(u!=null)return LT(LT({},o),{},{type:u})},[u,o]);return b.useLayoutEffect(()=>{c!=null&&(n.current===null?t(Qte(c)):n.current!==c&&t(Zte({prev:n.current,next:c})),n.current=c)},[c,t]),b.useLayoutEffect(()=>()=>{n.current&&(t(Wte(n.current)),n.current=null)},[t]),null}function Uie(e){var t=e.yAxisId,n=e.className,r=e.width,l=e.label,o=b.useRef(null),u=b.useRef(null),c=ke(IP),h=fr(),m=Vt(),v="yAxis",g=ke(E=>eZ(E,t)),x=ke(E=>JQ(E,t)),S=ke(E=>t3(E,v,t,h)),w=ke(E=>bI(E,t));if(b.useLayoutEffect(()=>{if(!(r!=="auto"||!g||jg(l)||b.isValidElement(l)||w==null)){var E=o.current;if(E){var N=E.getCalculatedWidth();Math.round(g.width)!==Math.round(N)&&m(Jte({id:t,width:N}))}}},[S,g,m,l,t,r,w]),g==null||x==null||w==null)return null;e.dangerouslySetInnerHTML,e.ticks,e.scale;var j=kb(e,Mie);w.id,w.scale;var C=kb(w,Die);return b.createElement(lw,Pb({},j,C,{ref:o,labelRef:u,x:x.x,y:x.y,tickTextProps:r==="auto"?{width:void 0}:{width:r},width:g.width,height:g.height,className:Ct("recharts-".concat(v," ").concat(v),n),viewBox:c,ticks:S,axisType:v,axisId:t}))}var $ie={allowDataOverflow:tn.allowDataOverflow,allowDecimals:tn.allowDecimals,allowDuplicatedCategory:tn.allowDuplicatedCategory,angle:tn.angle,axisLine:wa.axisLine,hide:!1,includeHidden:tn.includeHidden,interval:tn.interval,label:!1,minTickGap:tn.minTickGap,mirror:tn.mirror,orientation:tn.orientation,padding:tn.padding,reversed:tn.reversed,scale:tn.scale,tick:tn.tick,tickCount:tn.tickCount,tickLine:wa.tickLine,tickSize:wa.tickSize,type:tn.type,niceTicks:tn.niceTicks,width:tn.width,yAxisId:0},Bie=e=>{var t=Tr(e,$ie);return b.createElement(b.Fragment,null,b.createElement(Lie,{interval:t.interval,id:t.yAxisId,scale:t.scale,type:t.type,domain:t.domain,allowDataOverflow:t.allowDataOverflow,dataKey:t.dataKey,allowDuplicatedCategory:t.allowDuplicatedCategory,allowDecimals:t.allowDecimals,tickCount:t.tickCount,padding:t.padding,includeHidden:t.includeHidden,reversed:t.reversed,ticks:t.ticks,width:t.width,orientation:t.orientation,mirror:t.mirror,hide:t.hide,unit:t.unit,name:t.name,angle:t.angle,minTickGap:t.minTickGap,tick:t.tick,tickFormatter:t.tickFormatter,niceTicks:t.niceTicks}),b.createElement(Uie,t))},hw=b.memo(Bie,hz);hw.displayName="YAxis";var Hie=(e,t)=>t,mw=W([Hie,It,wk,bn,b3,za,jW,Pn],TW);function Fie(e){return"getBBox"in e.currentTarget&&typeof e.currentTarget.getBBox=="function"}function vw(e){var t=e.currentTarget.getBoundingClientRect(),n,r;if(Fie(e)){var l=e.currentTarget.getBBox();n=l.width>0?t.width/l.width:1,r=l.height>0?t.height/l.height:1}else{var o=e.currentTarget;n=o.offsetWidth>0?t.width/o.offsetWidth:1,r=o.offsetHeight>0?t.height/o.offsetHeight:1}var u=(c,h)=>({relativeX:Math.round((c-t.left)/n),relativeY:Math.round((h-t.top)/r)});return"touches"in e?Array.from(e.touches).map(c=>u(c.clientX,c.clientY)):u(e.clientX,e.clientY)}var mz=Ar("mouseClick"),vz=td();vz.startListening({actionCreator:mz,effect:(e,t)=>{var n=e.payload,r=mw(t.getState(),vw(n));(r==null?void 0:r.activeIndex)!=null&&t.dispatch(vZ({activeIndex:r.activeIndex,activeDataKey:void 0,activeCoordinate:r.activeCoordinate}))}});var Ib=Ar("mouseMove"),gz=td(),nu=null,vo=null,o0=null;gz.startListening({actionCreator:Ib,effect:(e,t)=>{var n=e.payload,r=t.getState(),l=r.eventSettings,o=l.throttleDelay,u=l.throttledEvents,c=u==="all"||(u==null?void 0:u.includes("mousemove"));nu!==null&&(cancelAnimationFrame(nu),nu=null),vo!==null&&(typeof o!="number"||!c)&&(clearTimeout(vo),vo=null),o0=vw(n);var h=()=>{var m=t.getState(),v=vd(m,m.tooltip.settings.shared);if(!o0){nu=null,vo=null;return}if(v==="axis"){var g=mw(m,o0);(g==null?void 0:g.activeIndex)!=null?t.dispatch(c3({activeIndex:g.activeIndex,activeDataKey:void 0,activeCoordinate:g.activeCoordinate})):t.dispatch(u3())}nu=null,vo=null};if(!c){h();return}o==="raf"?nu=requestAnimationFrame(h):typeof o=="number"&&vo===null&&(vo=setTimeout(h,o))}});function Vie(e,t){return t instanceof HTMLElement?"HTMLElement <".concat(t.tagName,' class="').concat(t.className,'">'):t===window?"global.window":e==="children"&&typeof t=="object"&&t!==null?"<>":t}var UT={accessibilityLayer:!0,barCategoryGap:"10%",barGap:4,barSize:void 0,className:void 0,maxBarSize:void 0,stackOffset:"none",syncId:void 0,syncMethod:"index",baseValue:void 0,reverseStackOrder:!1},pz=Hn({name:"rootProps",initialState:UT,reducers:{updateOptions:(e,t)=>{var n;e.accessibilityLayer=t.payload.accessibilityLayer,e.barCategoryGap=t.payload.barCategoryGap,e.barGap=(n=t.payload.barGap)!==null&&n!==void 0?n:UT.barGap,e.barSize=t.payload.barSize,e.maxBarSize=t.payload.maxBarSize,e.stackOffset=t.payload.stackOffset,e.syncId=t.payload.syncId,e.syncMethod=t.payload.syncMethod,e.className=t.payload.className,e.baseValue=t.payload.baseValue,e.reverseStackOrder=t.payload.reverseStackOrder}}}),Gie=pz.reducer,qie=pz.actions.updateOptions,Kie=null,Yie={updatePolarOptions:(e,t)=>e===null?t.payload:(e.startAngle=t.payload.startAngle,e.endAngle=t.payload.endAngle,e.cx=t.payload.cx,e.cy=t.payload.cy,e.innerRadius=t.payload.innerRadius,e.outerRadius=t.payload.outerRadius,e)},yz=Hn({name:"polarOptions",initialState:Kie,reducers:Yie});yz.actions.updatePolarOptions;var Xie=yz.reducer,xz=Ar("keyDown"),bz=Ar("focus"),Sz=Ar("blur"),_g=td(),ru=null,go=null,pm=null;_g.startListening({actionCreator:xz,effect:(e,t)=>{pm=e.payload,ru!==null&&(cancelAnimationFrame(ru),ru=null);var n=t.getState(),r=n.eventSettings,l=r.throttleDelay,o=r.throttledEvents,u=o==="all"||o.includes("keydown");go!==null&&(typeof l!="number"||!u)&&(clearTimeout(go),go=null);var c=()=>{try{var h=t.getState(),m=h.rootProps.accessibilityLayer!==!1;if(!m)return;var v=h.tooltip.keyboardInteraction,g=pm;if(g!=="ArrowRight"&&g!=="ArrowLeft"&&g!=="Enter")return;var x=Cf(v,Xo(h),$u(h),Bu(h)),S=x==null?-1:Number(x),w=!Number.isFinite(S)||S<0,j=za(h),C=Xo(h),E=vd(h,h.tooltip.settings.shared);if(g==="Enter"){if(w)return;var N=wv(h,E,"hover",String(v.index));t.dispatch(Sv({active:!v.active,activeIndex:v.index,activeCoordinate:N}));return}var O=aZ(h),T=O==="left-to-right"?1:-1,R=g==="ArrowRight"?1:-1,A;if(w){var D=$u(h),k=Bu(h),I=R*T,P=de=>({active:!1,index:String(de),dataKey:void 0,graphicalItemId:void 0,coordinate:void 0});if(A=-1,I>0){for(var B=0;B=0;F--)if(Cf(P(F),C,D,k)!=null){A=F;break}if(A<0)return}else{A=S+R*T;var se=(j==null?void 0:j.length)||C.length;if(se===0||A>=se||A<0)return}var ue=wv(h,E,"hover",String(A));t.dispatch(Sv({active:!0,activeIndex:A.toString(),activeCoordinate:ue}))}finally{ru=null,go=null}};if(!u){c();return}l==="raf"?ru=requestAnimationFrame(c):typeof l=="number"&&go===null&&(c(),pm=null,go=setTimeout(()=>{pm?c():(go=null,ru=null)},l))}});_g.startListening({actionCreator:bz,effect:(e,t)=>{var n=t.getState(),r=n.rootProps.accessibilityLayer!==!1;if(r){var l=n.tooltip.keyboardInteraction;if(!l.active&&l.index==null){var o="0",u=vd(n,n.tooltip.settings.shared),c=wv(n,u,"hover",String(o));t.dispatch(Sv({active:!0,activeIndex:o,activeCoordinate:c}))}}}});_g.startListening({actionCreator:Sz,effect:(e,t)=>{var n=t.getState(),r=n.rootProps.accessibilityLayer!==!1;if(r){var l=n.tooltip.keyboardInteraction;l.active&&t.dispatch(Sv({active:!1,activeIndex:l.index,activeCoordinate:l.coordinate}))}}});function wz(e){e.persist();var t=e.currentTarget;return new Proxy(e,{get:(n,r)=>{if(r==="currentTarget")return t;var l=Reflect.get(n,r);return typeof l=="function"?l.bind(n):l}})}var Br=Ar("externalEvent"),jz=td(),ym=new Map,hf=new Map,s0=new Map;jz.startListening({actionCreator:Br,effect:(e,t)=>{var n=e.payload,r=n.handler,l=n.reactEvent;if(r!=null){var o=l.type,u=wz(l);s0.set(o,{handler:r,reactEvent:u});var c=ym.get(o);c!==void 0&&(cancelAnimationFrame(c),ym.delete(o));var h=t.getState(),m=h.eventSettings,v=m.throttleDelay,g=m.throttledEvents,x=g,S=x==="all"||(x==null?void 0:x.includes(o)),w=hf.get(o);w!==void 0&&(typeof v!="number"||!S)&&(clearTimeout(w),hf.delete(o));var j=()=>{var N=s0.get(o);try{if(!N)return;var O=N.handler,T=N.reactEvent,R=t.getState(),A={activeCoordinate:oW(R),activeDataKey:iW(R),activeIndex:$f(R),activeLabel:j3(R),activeTooltipIndex:$f(R),isTooltipActive:sW(R)};O&&O(A,T)}finally{ym.delete(o),hf.delete(o),s0.delete(o)}};if(!S){j();return}if(v==="raf"){var C=requestAnimationFrame(j);ym.set(o,C)}else if(typeof v=="number"){if(!hf.has(o)){j();var E=setTimeout(j,v);hf.set(o,E)}}else j()}}});var Qie=W([rc],e=>e.tooltipItemPayloads),Zie=W([Qie,(e,t)=>t,(e,t,n)=>n],(e,t,n)=>{if(t!=null){var r=e.find(o=>o.settings.graphicalItemId===n);if(r!=null){var l=r.getPosition;if(l!=null)return l(t)}}}),Cz=Ar("touchMove"),_z=td(),po=null,vl=null,$T=null,mf=null;_z.startListening({actionCreator:Cz,effect:(e,t)=>{var n=e.payload;if(!(n.touches==null||n.touches.length===0)){mf=wz(n);var r=t.getState(),l=r.eventSettings,o=l.throttleDelay,u=l.throttledEvents,c=u==="all"||u.includes("touchmove");po!==null&&(cancelAnimationFrame(po),po=null),vl!==null&&(typeof o!="number"||!c)&&(clearTimeout(vl),vl=null),$T=Array.from(n.touches).map(m=>vw({clientX:m.clientX,clientY:m.clientY,currentTarget:n.currentTarget}));var h=()=>{if(mf!=null){var m=t.getState(),v=vd(m,m.tooltip.settings.shared);if(v==="axis"){var g,x=(g=$T)===null||g===void 0?void 0:g[0];if(x==null){po=null,vl=null;return}var S=mw(m,x);(S==null?void 0:S.activeIndex)!=null&&t.dispatch(c3({activeIndex:S.activeIndex,activeDataKey:void 0,activeCoordinate:S.activeCoordinate}))}else if(v==="item"){var w,j=mf.touches[0];if(document.elementFromPoint==null||j==null)return;var C=document.elementFromPoint(j.clientX,j.clientY);if(!C||!C.getAttribute)return;var E=C.getAttribute(q9),N=(w=C.getAttribute(K9))!==null&&w!==void 0?w:void 0,O=rs(m).find(A=>A.id===N);if(E==null||O==null||N==null)return;var T=O.dataKey,R=Zie(m,E,N);t.dispatch(mZ({activeDataKey:T,activeIndex:E,activeCoordinate:R,activeGraphicalItemId:N}))}po=null,vl=null}};if(!c){h();return}o==="raf"?po=requestAnimationFrame(h):typeof o=="number"&&vl===null&&(h(),mf=null,vl=setTimeout(()=>{mf?h():(vl=null,po=null)},o))}}});var Ez={throttleDelay:"raf",throttledEvents:["mousemove","touchmove","pointermove","scroll","wheel"]},Az=Hn({name:"eventSettings",initialState:Ez,reducers:{setEventSettings:(e,t)=>{t.payload.throttleDelay!=null&&(e.throttleDelay=t.payload.throttleDelay),t.payload.throttledEvents!=null&&(e.throttledEvents=it(t.payload.throttledEvents))}}}),Wie=Az.actions.setEventSettings,Jie=Az.reducer,eae=iP({brush:fne,cartesianAxis:tne,chartData:oJ,errorBars:kre,eventSettings:Jie,graphicalItems:Rte,layout:R9,legend:MG,options:nJ,polarAxis:$ee,polarOptions:Xie,referenceElements:vne,renderedTicks:Bne,rootProps:Gie,tooltip:gZ,zIndex:FW}),tae=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"Chart";return n9({reducer:eae,preloadedState:t,middleware:r=>{var l;return r({serializableCheck:!1,immutableCheck:!["commonjs","es6","production"].includes((l="es6")!==null&&l!==void 0?l:"")}).concat([vz.middleware,gz.middleware,_g.middleware,jz.middleware,_z.middleware])},enhancers:r=>{var l=r;return typeof r=="function"&&(l=r()),l.concat(xP({type:"raf"}))},devTools:{serialize:{replacer:Vie},name:"recharts-".concat(n)}})};function nae(e){var t=e.preloadedState,n=e.children,r=e.reduxStoreName,l=fr(),o=b.useRef(null);if(l)return n;o.current==null&&(o.current=tae(t,r));var u=FS;return b.createElement(KG,{context:u,store:o.current},n)}function rae(e){var t=e.layout,n=e.margin,r=Vt(),l=fr();return b.useEffect(()=>{l||(r(O9(t)),r(A9(n)))},[r,l,t,n]),null}var iae=b.memo(rae,ig);function aae(e){var t=Vt();return b.useEffect(()=>{t(qie(e))},[t,e]),null}var lae=e=>{var t=Vt();return b.useEffect(()=>{t(Wie(e))},[t,e]),null},oae=b.memo(lae,ig);function BT(e){var t=e.zIndex,n=e.isPanorama,r=b.useRef(null),l=Vt();return b.useLayoutEffect(()=>(r.current&&l(BW({zIndex:t,element:r.current,isPanorama:n})),()=>{l(HW({zIndex:t,isPanorama:n}))}),[l,t,n]),b.createElement("g",{tabIndex:-1,ref:r,className:"recharts-zIndex-layer_".concat(t)})}function HT(e){var t=e.children,n=e.isPanorama,r=ke(MW);if(!r||r.length===0)return t;var l=r.filter(u=>u<0),o=r.filter(u=>u>0);return b.createElement(b.Fragment,null,l.map(u=>b.createElement(BT,{key:u,zIndex:u,isPanorama:n})),t,o.map(u=>b.createElement(BT,{key:u,zIndex:u,isPanorama:n})))}var sae=["children"];function uae(e,t){if(e==null)return{};var n,r,l=cae(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var n=HP(),r=FP(),l=YP();if(!Fi(n)||!Fi(r))return null;var o=e.children,u=e.otherAttributes,c=e.title,h=e.desc,m,v;return u!=null&&(typeof u.tabIndex=="number"?m=u.tabIndex:m=l?0:void 0,typeof u.role=="string"?v=u.role:v=l?"application":void 0),b.createElement(iD,Ov({},u,{title:c,desc:h,role:v,tabIndex:m,width:n,height:r,style:fae,ref:t}),o)}),hae=e=>{var t=e.children,n=ke(ng);if(!n)return null;var r=n.width,l=n.height,o=n.y,u=n.x;return b.createElement(iD,{width:r,height:l,x:u,y:o},t)},FT=b.forwardRef((e,t)=>{var n=e.children,r=uae(e,sae),l=fr();return l?b.createElement(hae,null,b.createElement(HT,{isPanorama:!0},n)):b.createElement(dae,Ov({ref:t},r),b.createElement(HT,{isPanorama:!1},n))});function mae(e,t){return yae(e)||pae(e,t)||gae(e,t)||vae()}function vae(){throw new TypeError(`Invalid attempt to destructure non-iterable instance. +In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function gae(e,t){if(e){if(typeof e=="string")return VT(e,t);var n={}.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?VT(e,t):void 0}}function VT(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n{if(r!=null){var u=r.getBoundingClientRect(),c=u.width/r.offsetWidth;at(c)&&c!==o&&e(T9(c))}},[r,e,o]),l}function GT(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function bae(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=Array(t);n(gJ(),null);function Tv(e){if(typeof e=="number")return e;if(typeof e=="string"){var t=parseFloat(e);if(!Number.isNaN(t))return t}return 0}var Nae=b.forwardRef((e,t)=>{var n,r,l=b.useRef(null),o=b.useState({containerWidth:Tv((n=e.style)===null||n===void 0?void 0:n.width),containerHeight:Tv((r=e.style)===null||r===void 0?void 0:r.height)}),u=Nv(o,2),c=u[0],h=u[1],m=b.useCallback((g,x)=>{h(S=>{var w=Math.round(g),j=Math.round(x);return S.containerWidth===w&&S.containerHeight===j?S:{containerWidth:w,containerHeight:j}})},[]),v=b.useCallback(g=>{if(typeof t=="function"&&t(g),l.current!=null&&(l.current.disconnect(),l.current=null),g!=null&&typeof ResizeObserver<"u"){var x=g.getBoundingClientRect(),S=x.width,w=x.height;m(S,w);var j=E=>{var N=E[0];if(N!=null){var O=N.contentRect,T=O.width,R=O.height;m(T,R)}},C=new ResizeObserver(j);C.observe(g),l.current=C}},[t,m]);return b.useEffect(()=>()=>{var g=l.current;g!=null&&g.disconnect()},[m]),b.createElement(b.Fragment,null,b.createElement(rd,{width:c.containerWidth,height:c.containerHeight}),b.createElement("div",Rl({ref:v},e)))}),Tae=b.forwardRef((e,t)=>{var n=e.width,r=e.height,l=b.useState({containerWidth:Tv(n),containerHeight:Tv(r)}),o=Nv(l,2),u=o[0],c=o[1],h=b.useCallback((v,g)=>{c(x=>{var S=Math.round(v),w=Math.round(g);return x.containerWidth===S&&x.containerHeight===w?x:{containerWidth:S,containerHeight:w}})},[]),m=b.useCallback(v=>{if(typeof t=="function"&&t(v),v!=null){var g=v.getBoundingClientRect(),x=g.width,S=g.height;h(x,S)}},[t,h]);return b.createElement(b.Fragment,null,b.createElement(rd,{width:u.containerWidth,height:u.containerHeight}),b.createElement("div",Rl({ref:m},e)))}),Rae=b.forwardRef((e,t)=>{var n=e.width,r=e.height;return b.createElement(b.Fragment,null,b.createElement(rd,{width:n,height:r}),b.createElement("div",Rl({ref:t},e)))}),Mae=b.forwardRef((e,t)=>{var n=e.width,r=e.height;return typeof n=="string"||typeof r=="string"?b.createElement(Tae,Rl({},e,{ref:t})):typeof n=="number"&&typeof r=="number"?b.createElement(Rae,Rl({},e,{width:n,height:r,ref:t})):b.createElement(b.Fragment,null,b.createElement(rd,{width:n,height:r}),b.createElement("div",Rl({ref:t},e)))});function Dae(e){return e?Nae:Mae}var Pae=b.forwardRef((e,t)=>{var n=e.children,r=e.className,l=e.height,o=e.onClick,u=e.onContextMenu,c=e.onDoubleClick,h=e.onMouseDown,m=e.onMouseEnter,v=e.onMouseLeave,g=e.onMouseMove,x=e.onMouseUp,S=e.onTouchEnd,w=e.onTouchMove,j=e.onTouchStart,C=e.style,E=e.width,N=e.responsive,O=e.dispatchTouchEvents,T=O===void 0?!0:O,R=b.useRef(null),A=Vt(),D=b.useState(null),k=Nv(D,2),I=k[0],P=k[1],B=b.useState(null),F=Nv(B,2),se=F[0],ue=F[1],de=xae(),G=WS(),ne=(G==null?void 0:G.width)>0?G.width:E,ie=(G==null?void 0:G.height)>0?G.height:l,ce=b.useCallback(Pe=>{de(Pe),typeof t=="function"&&t(Pe),P(Pe),ue(Pe),Pe!=null&&(R.current=Pe)},[de,t,P,ue]),U=b.useCallback(Pe=>{A(mz(Pe)),A(Br({handler:o,reactEvent:Pe}))},[A,o]),Ae=b.useCallback(Pe=>{A(Ib(Pe)),A(Br({handler:m,reactEvent:Pe}))},[A,m]),ee=b.useCallback(Pe=>{A(u3()),A(Br({handler:v,reactEvent:Pe}))},[A,v]),ve=b.useCallback(Pe=>{A(Ib(Pe)),A(Br({handler:g,reactEvent:Pe}))},[A,g]),z=b.useCallback(()=>{A(bz())},[A]),Y=b.useCallback(()=>{A(Sz())},[A]),le=b.useCallback(Pe=>{A(xz(Pe.key))},[A]),fe=b.useCallback(Pe=>{A(Br({handler:u,reactEvent:Pe}))},[A,u]),De=b.useCallback(Pe=>{A(Br({handler:c,reactEvent:Pe}))},[A,c]),te=b.useCallback(Pe=>{A(Br({handler:h,reactEvent:Pe}))},[A,h]),ge=b.useCallback(Pe=>{A(Br({handler:x,reactEvent:Pe}))},[A,x]),oe=b.useCallback(Pe=>{A(Br({handler:j,reactEvent:Pe}))},[A,j]),J=b.useCallback(Pe=>{T&&A(Cz(Pe)),A(Br({handler:w,reactEvent:Pe}))},[A,T,w]),ct=b.useCallback(Pe=>{A(Br({handler:S,reactEvent:Pe}))},[A,S]),Ke=Dae(N);return b.createElement(T3.Provider,{value:I},b.createElement(JH.Provider,{value:se},b.createElement(Ke,{width:ne??(C==null?void 0:C.width),height:ie??(C==null?void 0:C.height),className:Ct("recharts-wrapper",r),style:bae({position:"relative",cursor:"default",width:ne,height:ie},C),onClick:U,onContextMenu:fe,onDoubleClick:De,onFocus:z,onBlur:Y,onKeyDown:le,onMouseDown:te,onMouseEnter:Ae,onMouseLeave:ee,onMouseMove:ve,onMouseUp:ge,onTouchEnd:ct,onTouchMove:J,onTouchStart:oe,ref:ce},b.createElement(Oae,null),n)))}),kae=["width","height","responsive","children","className","style","compact","title","desc"];function Iae(e,t){if(e==null)return{};var n,r,l=zae(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r{var n=e.width,r=e.height,l=e.responsive,o=e.children,u=e.className,c=e.style,h=e.compact,m=e.title,v=e.desc,g=Iae(e,kae),x=Bi(g);return h?b.createElement(b.Fragment,null,b.createElement(rd,{width:n,height:r}),b.createElement(FT,{otherAttributes:x,title:m,desc:v},o)):b.createElement(Pae,{className:u,style:c,width:n,height:r,responsive:l??!1,onClick:e.onClick,onMouseLeave:e.onMouseLeave,onMouseEnter:e.onMouseEnter,onMouseMove:e.onMouseMove,onMouseDown:e.onMouseDown,onMouseUp:e.onMouseUp,onContextMenu:e.onContextMenu,onDoubleClick:e.onDoubleClick,onTouchStart:e.onTouchStart,onTouchMove:e.onTouchMove,onTouchEnd:e.onTouchEnd},b.createElement(FT,{otherAttributes:x,title:m,desc:v,ref:t},b.createElement(wne,null,o)))});function zb(){return zb=Object.assign?Object.assign.bind():function(e){for(var t=1;tb.createElement(Gae,{chartName:"LineChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:qae,tooltipPayloadSearcher:eJ,categoricalChartProps:e,ref:t}));/** * table-core * * Copyright (c) TanStack @@ -183,10 +195,10 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho * LICENSE.md file in the root directory of this source tree. * * @license MIT - */function Nl(e,t){return typeof e=="function"?e(t):e}function Or(e,t){return n=>{t.setState(r=>({...r,[e]:Nl(n,r[e])}))}}function _g(e){return e instanceof Function}function kae(e){return Array.isArray(e)&&e.every(t=>typeof t=="number")}function Iae(e,t){const n=[],r=l=>{l.forEach(o=>{n.push(o);const u=t(o);u!=null&&u.length&&r(u)})};return r(e),n}function Le(e,t,n){let r=[],l;return o=>{let u;n.key&&n.debug&&(u=Date.now());const c=e(o);if(!(c.length!==r.length||c.some((v,p)=>r[p]!==v)))return l;r=c;let m;if(n.key&&n.debug&&(m=Date.now()),l=t(...c),n==null||n.onChange==null||n.onChange(l),n.key&&n.debug&&n!=null&&n.debug()){const v=Math.round((Date.now()-u)*100)/100,p=Math.round((Date.now()-m)*100)/100,x=p/16,S=(w,j)=>{for(w=String(w);w.length{t.setState(r=>({...r,[e]:Nl(n,r[e])}))}}function Eg(e){return e instanceof Function}function Kae(e){return Array.isArray(e)&&e.every(t=>typeof t=="number")}function Yae(e,t){const n=[],r=l=>{l.forEach(o=>{n.push(o);const u=t(o);u!=null&&u.length&&r(u)})};return r(e),n}function Le(e,t,n){let r=[],l;return o=>{let u;n.key&&n.debug&&(u=Date.now());const c=e(o);if(!(c.length!==r.length||c.some((v,g)=>r[g]!==v)))return l;r=c;let m;if(n.key&&n.debug&&(m=Date.now()),l=t(...c),n==null||n.onChange==null||n.onChange(l),n.key&&n.debug&&n!=null&&n.debug()){const v=Math.round((Date.now()-u)*100)/100,g=Math.round((Date.now()-m)*100)/100,x=g/16,S=(w,j)=>{for(w=String(w);w.length{var l;return(l=e==null?void 0:e.debugAll)!=null?l:e[t]},key:!1,onChange:r}}function zae(e,t,n,r){const l=()=>{var u;return(u=o.getValue())!=null?u:e.options.renderFallbackValue},o={id:`${t.id}_${n.id}`,row:t,column:n,getValue:()=>t.getValue(r),renderValue:l,getContext:Le(()=>[e,n,t,o],(u,c,h,m)=>({table:u,column:c,row:h,cell:m,getValue:m.getValue,renderValue:m.renderValue}),Ue(e.options,"debugCells"))};return e._features.forEach(u=>{u.createCell==null||u.createCell(o,n,t,e)},{}),o}function Lae(e,t,n,r){var l,o;const c={...e._getDefaultColumnDef(),...t},h=c.accessorKey;let m=(l=(o=c.id)!=null?o:h?typeof String.prototype.replaceAll=="function"?h.replaceAll(".","_"):h.replace(/\./g,"_"):void 0)!=null?l:typeof c.header=="string"?c.header:void 0,v;if(c.accessorFn?v=c.accessorFn:h&&(h.includes(".")?v=x=>{let S=x;for(const j of h.split(".")){var w;S=(w=S)==null?void 0:w[j]}return S}:v=x=>x[c.accessorKey]),!m)throw new Error;let p={id:`${String(m)}`,accessorFn:v,parent:r,depth:n,columnDef:c,columns:[],getFlatColumns:Le(()=>[!0],()=>{var x;return[p,...(x=p.columns)==null?void 0:x.flatMap(S=>S.getFlatColumns())]},Ue(e.options,"debugColumns")),getLeafColumns:Le(()=>[e._getOrderColumnsFn()],x=>{var S;if((S=p.columns)!=null&&S.length){let w=p.columns.flatMap(j=>j.getLeafColumns());return x(w)}return[p]},Ue(e.options,"debugColumns"))};for(const x of e._features)x.createColumn==null||x.createColumn(p,e);return p}const In="debugHeaders";function VT(e,t,n){var r;let o={id:(r=n.id)!=null?r:t.id,column:t,index:n.index,isPlaceholder:!!n.isPlaceholder,placeholderId:n.placeholderId,depth:n.depth,subHeaders:[],colSpan:0,rowSpan:0,headerGroup:null,getLeafHeaders:()=>{const u=[],c=h=>{h.subHeaders&&h.subHeaders.length&&h.subHeaders.map(c),u.push(h)};return c(o),u},getContext:()=>({table:e,header:o,column:t})};return e._features.forEach(u=>{u.createHeader==null||u.createHeader(o,e)}),o}const Uae={createTable:e=>{e.getHeaderGroups=Le(()=>[e.getAllColumns(),e.getVisibleLeafColumns(),e.getState().columnPinning.left,e.getState().columnPinning.right],(t,n,r,l)=>{var o,u;const c=(o=r==null?void 0:r.map(p=>n.find(x=>x.id===p)).filter(Boolean))!=null?o:[],h=(u=l==null?void 0:l.map(p=>n.find(x=>x.id===p)).filter(Boolean))!=null?u:[],m=n.filter(p=>!(r!=null&&r.includes(p.id))&&!(l!=null&&l.includes(p.id)));return ym(t,[...c,...m,...h],e)},Ue(e.options,In)),e.getCenterHeaderGroups=Le(()=>[e.getAllColumns(),e.getVisibleLeafColumns(),e.getState().columnPinning.left,e.getState().columnPinning.right],(t,n,r,l)=>(n=n.filter(o=>!(r!=null&&r.includes(o.id))&&!(l!=null&&l.includes(o.id))),ym(t,n,e,"center")),Ue(e.options,In)),e.getLeftHeaderGroups=Le(()=>[e.getAllColumns(),e.getVisibleLeafColumns(),e.getState().columnPinning.left],(t,n,r)=>{var l;const o=(l=r==null?void 0:r.map(u=>n.find(c=>c.id===u)).filter(Boolean))!=null?l:[];return ym(t,o,e,"left")},Ue(e.options,In)),e.getRightHeaderGroups=Le(()=>[e.getAllColumns(),e.getVisibleLeafColumns(),e.getState().columnPinning.right],(t,n,r)=>{var l;const o=(l=r==null?void 0:r.map(u=>n.find(c=>c.id===u)).filter(Boolean))!=null?l:[];return ym(t,o,e,"right")},Ue(e.options,In)),e.getFooterGroups=Le(()=>[e.getHeaderGroups()],t=>[...t].reverse(),Ue(e.options,In)),e.getLeftFooterGroups=Le(()=>[e.getLeftHeaderGroups()],t=>[...t].reverse(),Ue(e.options,In)),e.getCenterFooterGroups=Le(()=>[e.getCenterHeaderGroups()],t=>[...t].reverse(),Ue(e.options,In)),e.getRightFooterGroups=Le(()=>[e.getRightHeaderGroups()],t=>[...t].reverse(),Ue(e.options,In)),e.getFlatHeaders=Le(()=>[e.getHeaderGroups()],t=>t.map(n=>n.headers).flat(),Ue(e.options,In)),e.getLeftFlatHeaders=Le(()=>[e.getLeftHeaderGroups()],t=>t.map(n=>n.headers).flat(),Ue(e.options,In)),e.getCenterFlatHeaders=Le(()=>[e.getCenterHeaderGroups()],t=>t.map(n=>n.headers).flat(),Ue(e.options,In)),e.getRightFlatHeaders=Le(()=>[e.getRightHeaderGroups()],t=>t.map(n=>n.headers).flat(),Ue(e.options,In)),e.getCenterLeafHeaders=Le(()=>[e.getCenterFlatHeaders()],t=>t.filter(n=>{var r;return!((r=n.subHeaders)!=null&&r.length)}),Ue(e.options,In)),e.getLeftLeafHeaders=Le(()=>[e.getLeftFlatHeaders()],t=>t.filter(n=>{var r;return!((r=n.subHeaders)!=null&&r.length)}),Ue(e.options,In)),e.getRightLeafHeaders=Le(()=>[e.getRightFlatHeaders()],t=>t.filter(n=>{var r;return!((r=n.subHeaders)!=null&&r.length)}),Ue(e.options,In)),e.getLeafHeaders=Le(()=>[e.getLeftHeaderGroups(),e.getCenterHeaderGroups(),e.getRightHeaderGroups()],(t,n,r)=>{var l,o,u,c,h,m;return[...(l=(o=t[0])==null?void 0:o.headers)!=null?l:[],...(u=(c=n[0])==null?void 0:c.headers)!=null?u:[],...(h=(m=r[0])==null?void 0:m.headers)!=null?h:[]].map(v=>v.getLeafHeaders()).flat()},Ue(e.options,In))}};function ym(e,t,n,r){var l,o;let u=0;const c=function(x,S){S===void 0&&(S=1),u=Math.max(u,S),x.filter(w=>w.getIsVisible()).forEach(w=>{var j;(j=w.columns)!=null&&j.length&&c(w.columns,S+1)},0)};c(e);let h=[];const m=(x,S)=>{const w={depth:S,id:[r,`${S}`].filter(Boolean).join("_"),headers:[]},j=[];x.forEach(C=>{const A=[...j].reverse()[0],N=C.column.depth===w.depth;let O,T=!1;if(N&&C.column.parent?O=C.column.parent:(O=C.column,T=!0),A&&(A==null?void 0:A.column)===O)A.subHeaders.push(C);else{const R=VT(n,O,{id:[r,S,O.id,C==null?void 0:C.id].filter(Boolean).join("_"),isPlaceholder:T,placeholderId:T?`${j.filter(E=>E.column===O).length}`:void 0,depth:S,index:j.length});R.subHeaders.push(C),j.push(R)}w.headers.push(C),C.headerGroup=w}),h.push(w),S>0&&m(j,S-1)},v=t.map((x,S)=>VT(n,x,{depth:u,index:S}));m(v,u-1),h.reverse();const p=x=>x.filter(w=>w.column.getIsVisible()).map(w=>{let j=0,C=0,A=[0];w.subHeaders&&w.subHeaders.length?(A=[],p(w.subHeaders).forEach(O=>{let{colSpan:T,rowSpan:R}=O;j+=T,A.push(R)})):j=1;const N=Math.min(...A);return C=C+N,w.colSpan=j,w.rowSpan=C,{colSpan:j,rowSpan:C}});return p((l=(o=h[0])==null?void 0:o.headers)!=null?l:[]),h}const mw=(e,t,n,r,l,o,u)=>{let c={id:t,index:r,original:n,depth:l,parentId:u,_valuesCache:{},_uniqueValuesCache:{},getValue:h=>{if(c._valuesCache.hasOwnProperty(h))return c._valuesCache[h];const m=e.getColumn(h);if(m!=null&&m.accessorFn)return c._valuesCache[h]=m.accessorFn(c.original,r),c._valuesCache[h]},getUniqueValues:h=>{if(c._uniqueValuesCache.hasOwnProperty(h))return c._uniqueValuesCache[h];const m=e.getColumn(h);if(m!=null&&m.accessorFn)return m.columnDef.getUniqueValues?(c._uniqueValuesCache[h]=m.columnDef.getUniqueValues(c.original,r),c._uniqueValuesCache[h]):(c._uniqueValuesCache[h]=[c.getValue(h)],c._uniqueValuesCache[h])},renderValue:h=>{var m;return(m=c.getValue(h))!=null?m:e.options.renderFallbackValue},subRows:[],getLeafRows:()=>Iae(c.subRows,h=>h.subRows),getParentRow:()=>c.parentId?e.getRow(c.parentId,!0):void 0,getParentRows:()=>{let h=[],m=c;for(;;){const v=m.getParentRow();if(!v)break;h.push(v),m=v}return h.reverse()},getAllCells:Le(()=>[e.getAllLeafColumns()],h=>h.map(m=>zae(e,c,m,m.id)),Ue(e.options,"debugRows")),_getAllCellsByColumnId:Le(()=>[c.getAllCells()],h=>h.reduce((m,v)=>(m[v.column.id]=v,m),{}),Ue(e.options,"debugRows"))};for(let h=0;h{e._getFacetedRowModel=t.options.getFacetedRowModel&&t.options.getFacetedRowModel(t,e.id),e.getFacetedRowModel=()=>e._getFacetedRowModel?e._getFacetedRowModel():t.getPreFilteredRowModel(),e._getFacetedUniqueValues=t.options.getFacetedUniqueValues&&t.options.getFacetedUniqueValues(t,e.id),e.getFacetedUniqueValues=()=>e._getFacetedUniqueValues?e._getFacetedUniqueValues():new Map,e._getFacetedMinMaxValues=t.options.getFacetedMinMaxValues&&t.options.getFacetedMinMaxValues(t,e.id),e.getFacetedMinMaxValues=()=>{if(e._getFacetedMinMaxValues)return e._getFacetedMinMaxValues()}}},Cz=(e,t,n)=>{var r,l;const o=n==null||(r=n.toString())==null?void 0:r.toLowerCase();return!!(!((l=e.getValue(t))==null||(l=l.toString())==null||(l=l.toLowerCase())==null)&&l.includes(o))};Cz.autoRemove=e=>ci(e);const _z=(e,t,n)=>{var r;return!!(!((r=e.getValue(t))==null||(r=r.toString())==null)&&r.includes(n))};_z.autoRemove=e=>ci(e);const Az=(e,t,n)=>{var r;return((r=e.getValue(t))==null||(r=r.toString())==null?void 0:r.toLowerCase())===(n==null?void 0:n.toLowerCase())};Az.autoRemove=e=>ci(e);const Ez=(e,t,n)=>{var r;return(r=e.getValue(t))==null?void 0:r.includes(n)};Ez.autoRemove=e=>ci(e);const Oz=(e,t,n)=>!n.some(r=>{var l;return!((l=e.getValue(t))!=null&&l.includes(r))});Oz.autoRemove=e=>ci(e)||!(e!=null&&e.length);const Nz=(e,t,n)=>n.some(r=>{var l;return(l=e.getValue(t))==null?void 0:l.includes(r)});Nz.autoRemove=e=>ci(e)||!(e!=null&&e.length);const Tz=(e,t,n)=>e.getValue(t)===n;Tz.autoRemove=e=>ci(e);const Rz=(e,t,n)=>e.getValue(t)==n;Rz.autoRemove=e=>ci(e);const vw=(e,t,n)=>{let[r,l]=n;const o=e.getValue(t);return o>=r&&o<=l};vw.resolveFilterValue=e=>{let[t,n]=e,r=typeof t!="number"?parseFloat(t):t,l=typeof n!="number"?parseFloat(n):n,o=t===null||Number.isNaN(r)?-1/0:r,u=n===null||Number.isNaN(l)?1/0:l;if(o>u){const c=o;o=u,u=c}return[o,u]};vw.autoRemove=e=>ci(e)||ci(e[0])&&ci(e[1]);const ca={includesString:Cz,includesStringSensitive:_z,equalsString:Az,arrIncludes:Ez,arrIncludesAll:Oz,arrIncludesSome:Nz,equals:Tz,weakEquals:Rz,inNumberRange:vw};function ci(e){return e==null||e===""}const Bae={getDefaultColumnDef:()=>({filterFn:"auto"}),getInitialState:e=>({columnFilters:[],...e}),getDefaultOptions:e=>({onColumnFiltersChange:Or("columnFilters",e),filterFromLeafRows:!1,maxLeafRowFilterDepth:100}),createColumn:(e,t)=>{e.getAutoFilterFn=()=>{const n=t.getCoreRowModel().flatRows[0],r=n==null?void 0:n.getValue(e.id);return typeof r=="string"?ca.includesString:typeof r=="number"?ca.inNumberRange:typeof r=="boolean"||r!==null&&typeof r=="object"?ca.equals:Array.isArray(r)?ca.arrIncludes:ca.weakEquals},e.getFilterFn=()=>{var n,r;return _g(e.columnDef.filterFn)?e.columnDef.filterFn:e.columnDef.filterFn==="auto"?e.getAutoFilterFn():(n=(r=t.options.filterFns)==null?void 0:r[e.columnDef.filterFn])!=null?n:ca[e.columnDef.filterFn]},e.getCanFilter=()=>{var n,r,l;return((n=e.columnDef.enableColumnFilter)!=null?n:!0)&&((r=t.options.enableColumnFilters)!=null?r:!0)&&((l=t.options.enableFilters)!=null?l:!0)&&!!e.accessorFn},e.getIsFiltered=()=>e.getFilterIndex()>-1,e.getFilterValue=()=>{var n;return(n=t.getState().columnFilters)==null||(n=n.find(r=>r.id===e.id))==null?void 0:n.value},e.getFilterIndex=()=>{var n,r;return(n=(r=t.getState().columnFilters)==null?void 0:r.findIndex(l=>l.id===e.id))!=null?n:-1},e.setFilterValue=n=>{t.setColumnFilters(r=>{const l=e.getFilterFn(),o=r==null?void 0:r.find(v=>v.id===e.id),u=Nl(n,o?o.value:void 0);if(GT(l,u,e)){var c;return(c=r==null?void 0:r.filter(v=>v.id!==e.id))!=null?c:[]}const h={id:e.id,value:u};if(o){var m;return(m=r==null?void 0:r.map(v=>v.id===e.id?h:v))!=null?m:[]}return r!=null&&r.length?[...r,h]:[h]})}},createRow:(e,t)=>{e.columnFilters={},e.columnFiltersMeta={}},createTable:e=>{e.setColumnFilters=t=>{const n=e.getAllLeafColumns(),r=l=>{var o;return(o=Nl(t,l))==null?void 0:o.filter(u=>{const c=n.find(h=>h.id===u.id);if(c){const h=c.getFilterFn();if(GT(h,u.value,c))return!1}return!0})};e.options.onColumnFiltersChange==null||e.options.onColumnFiltersChange(r)},e.resetColumnFilters=t=>{var n,r;e.setColumnFilters(t?[]:(n=(r=e.initialState)==null?void 0:r.columnFilters)!=null?n:[])},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 GT(e,t,n){return(e&&e.autoRemove?e.autoRemove(t,n):!1)||typeof t>"u"||typeof t=="string"&&!t}const Hae=(e,t,n)=>n.reduce((r,l)=>{const o=l.getValue(e);return r+(typeof o=="number"?o:0)},0),Fae=(e,t,n)=>{let r;return n.forEach(l=>{const o=l.getValue(e);o!=null&&(r>o||r===void 0&&o>=o)&&(r=o)}),r},Vae=(e,t,n)=>{let r;return n.forEach(l=>{const o=l.getValue(e);o!=null&&(r=o)&&(r=o)}),r},Gae=(e,t,n)=>{let r,l;return n.forEach(o=>{const u=o.getValue(e);u!=null&&(r===void 0?u>=u&&(r=l=u):(r>u&&(r=u),l{let n=0,r=0;if(t.forEach(l=>{let o=l.getValue(e);o!=null&&(o=+o)>=o&&(++n,r+=o)}),n)return r/n},Kae=(e,t)=>{if(!t.length)return;const n=t.map(o=>o.getValue(e));if(!kae(n))return;if(n.length===1)return n[0];const r=Math.floor(n.length/2),l=n.sort((o,u)=>o-u);return n.length%2!==0?l[r]:(l[r-1]+l[r])/2},Yae=(e,t)=>Array.from(new Set(t.map(n=>n.getValue(e))).values()),Xae=(e,t)=>new Set(t.map(n=>n.getValue(e))).size,Qae=(e,t)=>t.length,s0={sum:Hae,min:Fae,max:Vae,extent:Gae,mean:qae,median:Kae,unique:Yae,uniqueCount:Xae,count:Qae},Zae={getDefaultColumnDef:()=>({aggregatedCell:e=>{var t,n;return(t=(n=e.getValue())==null||n.toString==null?void 0:n.toString())!=null?t:null},aggregationFn:"auto"}),getInitialState:e=>({grouping:[],...e}),getDefaultOptions:e=>({onGroupingChange:Or("grouping",e),groupedColumnMode:"reorder"}),createColumn:(e,t)=>{e.toggleGrouping=()=>{t.setGrouping(n=>n!=null&&n.includes(e.id)?n.filter(r=>r!==e.id):[...n??[],e.id])},e.getCanGroup=()=>{var n,r;return((n=e.columnDef.enableGrouping)!=null?n:!0)&&((r=t.options.enableGrouping)!=null?r:!0)&&(!!e.accessorFn||!!e.columnDef.getGroupingValue)},e.getIsGrouped=()=>{var n;return(n=t.getState().grouping)==null?void 0:n.includes(e.id)},e.getGroupedIndex=()=>{var n;return(n=t.getState().grouping)==null?void 0:n.indexOf(e.id)},e.getToggleGroupingHandler=()=>{const n=e.getCanGroup();return()=>{n&&e.toggleGrouping()}},e.getAutoAggregationFn=()=>{const n=t.getCoreRowModel().flatRows[0],r=n==null?void 0:n.getValue(e.id);if(typeof r=="number")return s0.sum;if(Object.prototype.toString.call(r)==="[object Date]")return s0.extent},e.getAggregationFn=()=>{var n,r;if(!e)throw new Error;return _g(e.columnDef.aggregationFn)?e.columnDef.aggregationFn:e.columnDef.aggregationFn==="auto"?e.getAutoAggregationFn():(n=(r=t.options.aggregationFns)==null?void 0:r[e.columnDef.aggregationFn])!=null?n:s0[e.columnDef.aggregationFn]}},createTable:e=>{e.setGrouping=t=>e.options.onGroupingChange==null?void 0:e.options.onGroupingChange(t),e.resetGrouping=t=>{var n,r;e.setGrouping(t?[]:(n=(r=e.initialState)==null?void 0:r.grouping)!=null?n:[])},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,t)=>{e.getIsGrouped=()=>!!e.groupingColumnId,e.getGroupingValue=n=>{if(e._groupingValuesCache.hasOwnProperty(n))return e._groupingValuesCache[n];const r=t.getColumn(n);return r!=null&&r.columnDef.getGroupingValue?(e._groupingValuesCache[n]=r.columnDef.getGroupingValue(e.original),e._groupingValuesCache[n]):e.getValue(n)},e._groupingValuesCache={}},createCell:(e,t,n,r)=>{e.getIsGrouped=()=>t.getIsGrouped()&&t.id===n.groupingColumnId,e.getIsPlaceholder=()=>!e.getIsGrouped()&&t.getIsGrouped(),e.getIsAggregated=()=>{var l;return!e.getIsGrouped()&&!e.getIsPlaceholder()&&!!((l=n.subRows)!=null&&l.length)}}};function Wae(e,t,n){if(!(t!=null&&t.length)||!n)return e;const r=e.filter(o=>!t.includes(o.id));return n==="remove"?r:[...t.map(o=>e.find(u=>u.id===o)).filter(Boolean),...r]}const Jae={getInitialState:e=>({columnOrder:[],...e}),getDefaultOptions:e=>({onColumnOrderChange:Or("columnOrder",e)}),createColumn:(e,t)=>{e.getIndex=Le(n=>[Ef(t,n)],n=>n.findIndex(r=>r.id===e.id),Ue(t.options,"debugColumns")),e.getIsFirstColumn=n=>{var r;return((r=Ef(t,n)[0])==null?void 0:r.id)===e.id},e.getIsLastColumn=n=>{var r;const l=Ef(t,n);return((r=l[l.length-1])==null?void 0:r.id)===e.id}},createTable:e=>{e.setColumnOrder=t=>e.options.onColumnOrderChange==null?void 0:e.options.onColumnOrderChange(t),e.resetColumnOrder=t=>{var n;e.setColumnOrder(t?[]:(n=e.initialState.columnOrder)!=null?n:[])},e._getOrderColumnsFn=Le(()=>[e.getState().columnOrder,e.getState().grouping,e.options.groupedColumnMode],(t,n,r)=>l=>{let o=[];if(!(t!=null&&t.length))o=l;else{const u=[...t],c=[...l];for(;c.length&&u.length;){const h=u.shift(),m=c.findIndex(v=>v.id===h);m>-1&&o.push(c.splice(m,1)[0])}o=[...o,...c]}return Wae(o,n,r)},Ue(e.options,"debugTable"))}},u0=()=>({left:[],right:[]}),ele={getInitialState:e=>({columnPinning:u0(),...e}),getDefaultOptions:e=>({onColumnPinningChange:Or("columnPinning",e)}),createColumn:(e,t)=>{e.pin=n=>{const r=e.getLeafColumns().map(l=>l.id).filter(Boolean);t.setColumnPinning(l=>{var o,u;if(n==="right"){var c,h;return{left:((c=l==null?void 0:l.left)!=null?c:[]).filter(p=>!(r!=null&&r.includes(p))),right:[...((h=l==null?void 0:l.right)!=null?h:[]).filter(p=>!(r!=null&&r.includes(p))),...r]}}if(n==="left"){var m,v;return{left:[...((m=l==null?void 0:l.left)!=null?m:[]).filter(p=>!(r!=null&&r.includes(p))),...r],right:((v=l==null?void 0:l.right)!=null?v:[]).filter(p=>!(r!=null&&r.includes(p)))}}return{left:((o=l==null?void 0:l.left)!=null?o:[]).filter(p=>!(r!=null&&r.includes(p))),right:((u=l==null?void 0:l.right)!=null?u:[]).filter(p=>!(r!=null&&r.includes(p)))}})},e.getCanPin=()=>e.getLeafColumns().some(r=>{var l,o,u;return((l=r.columnDef.enablePinning)!=null?l:!0)&&((o=(u=t.options.enableColumnPinning)!=null?u:t.options.enablePinning)!=null?o:!0)}),e.getIsPinned=()=>{const n=e.getLeafColumns().map(c=>c.id),{left:r,right:l}=t.getState().columnPinning,o=n.some(c=>r==null?void 0:r.includes(c)),u=n.some(c=>l==null?void 0:l.includes(c));return o?"left":u?"right":!1},e.getPinnedIndex=()=>{var n,r;const l=e.getIsPinned();return l?(n=(r=t.getState().columnPinning)==null||(r=r[l])==null?void 0:r.indexOf(e.id))!=null?n:-1:0}},createRow:(e,t)=>{e.getCenterVisibleCells=Le(()=>[e._getAllVisibleCells(),t.getState().columnPinning.left,t.getState().columnPinning.right],(n,r,l)=>{const o=[...r??[],...l??[]];return n.filter(u=>!o.includes(u.column.id))},Ue(t.options,"debugRows")),e.getLeftVisibleCells=Le(()=>[e._getAllVisibleCells(),t.getState().columnPinning.left],(n,r)=>(r??[]).map(o=>n.find(u=>u.column.id===o)).filter(Boolean).map(o=>({...o,position:"left"})),Ue(t.options,"debugRows")),e.getRightVisibleCells=Le(()=>[e._getAllVisibleCells(),t.getState().columnPinning.right],(n,r)=>(r??[]).map(o=>n.find(u=>u.column.id===o)).filter(Boolean).map(o=>({...o,position:"right"})),Ue(t.options,"debugRows"))},createTable:e=>{e.setColumnPinning=t=>e.options.onColumnPinningChange==null?void 0:e.options.onColumnPinningChange(t),e.resetColumnPinning=t=>{var n,r;return e.setColumnPinning(t?u0():(n=(r=e.initialState)==null?void 0:r.columnPinning)!=null?n:u0())},e.getIsSomeColumnsPinned=t=>{var n;const r=e.getState().columnPinning;if(!t){var l,o;return!!((l=r.left)!=null&&l.length||(o=r.right)!=null&&o.length)}return!!((n=r[t])!=null&&n.length)},e.getLeftLeafColumns=Le(()=>[e.getAllLeafColumns(),e.getState().columnPinning.left],(t,n)=>(n??[]).map(r=>t.find(l=>l.id===r)).filter(Boolean),Ue(e.options,"debugColumns")),e.getRightLeafColumns=Le(()=>[e.getAllLeafColumns(),e.getState().columnPinning.right],(t,n)=>(n??[]).map(r=>t.find(l=>l.id===r)).filter(Boolean),Ue(e.options,"debugColumns")),e.getCenterLeafColumns=Le(()=>[e.getAllLeafColumns(),e.getState().columnPinning.left,e.getState().columnPinning.right],(t,n,r)=>{const l=[...n??[],...r??[]];return t.filter(o=>!l.includes(o.id))},Ue(e.options,"debugColumns"))}};function tle(e){return e||(typeof document<"u"?document:null)}const xm={size:150,minSize:20,maxSize:Number.MAX_SAFE_INTEGER},c0=()=>({startOffset:null,startSize:null,deltaOffset:null,deltaPercentage:null,isResizingColumn:!1,columnSizingStart:[]}),nle={getDefaultColumnDef:()=>xm,getInitialState:e=>({columnSizing:{},columnSizingInfo:c0(),...e}),getDefaultOptions:e=>({columnResizeMode:"onEnd",columnResizeDirection:"ltr",onColumnSizingChange:Or("columnSizing",e),onColumnSizingInfoChange:Or("columnSizingInfo",e)}),createColumn:(e,t)=>{e.getSize=()=>{var n,r,l;const o=t.getState().columnSizing[e.id];return Math.min(Math.max((n=e.columnDef.minSize)!=null?n:xm.minSize,(r=o??e.columnDef.size)!=null?r:xm.size),(l=e.columnDef.maxSize)!=null?l:xm.maxSize)},e.getStart=Le(n=>[n,Ef(t,n),t.getState().columnSizing],(n,r)=>r.slice(0,e.getIndex(n)).reduce((l,o)=>l+o.getSize(),0),Ue(t.options,"debugColumns")),e.getAfter=Le(n=>[n,Ef(t,n),t.getState().columnSizing],(n,r)=>r.slice(e.getIndex(n)+1).reduce((l,o)=>l+o.getSize(),0),Ue(t.options,"debugColumns")),e.resetSize=()=>{t.setColumnSizing(n=>{let{[e.id]:r,...l}=n;return l})},e.getCanResize=()=>{var n,r;return((n=e.columnDef.enableResizing)!=null?n:!0)&&((r=t.options.enableColumnResizing)!=null?r:!0)},e.getIsResizing=()=>t.getState().columnSizingInfo.isResizingColumn===e.id},createHeader:(e,t)=>{e.getSize=()=>{let n=0;const r=l=>{if(l.subHeaders.length)l.subHeaders.forEach(r);else{var o;n+=(o=l.column.getSize())!=null?o:0}};return r(e),n},e.getStart=()=>{if(e.index>0){const n=e.headerGroup.headers[e.index-1];return n.getStart()+n.getSize()}return 0},e.getResizeHandler=n=>{const r=t.getColumn(e.column.id),l=r==null?void 0:r.getCanResize();return o=>{if(!r||!l||(o.persist==null||o.persist(),f0(o)&&o.touches&&o.touches.length>1))return;const u=e.getSize(),c=e?e.getLeafHeaders().map(A=>[A.column.id,A.column.getSize()]):[[r.id,r.getSize()]],h=f0(o)?Math.round(o.touches[0].clientX):o.clientX,m={},v=(A,N)=>{typeof N=="number"&&(t.setColumnSizingInfo(O=>{var T,R;const E=t.options.columnResizeDirection==="rtl"?-1:1,D=(N-((T=O==null?void 0:O.startOffset)!=null?T:0))*E,k=Math.max(D/((R=O==null?void 0:O.startSize)!=null?R:0),-.999999);return O.columnSizingStart.forEach(I=>{let[P,B]=I;m[P]=Math.round(Math.max(B+B*k,0)*100)/100}),{...O,deltaOffset:D,deltaPercentage:k}}),(t.options.columnResizeMode==="onChange"||A==="end")&&t.setColumnSizing(O=>({...O,...m})))},p=A=>v("move",A),x=A=>{v("end",A),t.setColumnSizingInfo(N=>({...N,isResizingColumn:!1,startOffset:null,startSize:null,deltaOffset:null,deltaPercentage:null,columnSizingStart:[]}))},S=tle(n),w={moveHandler:A=>p(A.clientX),upHandler:A=>{S==null||S.removeEventListener("mousemove",w.moveHandler),S==null||S.removeEventListener("mouseup",w.upHandler),x(A.clientX)}},j={moveHandler:A=>(A.cancelable&&(A.preventDefault(),A.stopPropagation()),p(A.touches[0].clientX),!1),upHandler:A=>{var N;S==null||S.removeEventListener("touchmove",j.moveHandler),S==null||S.removeEventListener("touchend",j.upHandler),A.cancelable&&(A.preventDefault(),A.stopPropagation()),x((N=A.touches[0])==null?void 0:N.clientX)}},C=rle()?{passive:!1}:!1;f0(o)?(S==null||S.addEventListener("touchmove",j.moveHandler,C),S==null||S.addEventListener("touchend",j.upHandler,C)):(S==null||S.addEventListener("mousemove",w.moveHandler,C),S==null||S.addEventListener("mouseup",w.upHandler,C)),t.setColumnSizingInfo(A=>({...A,startOffset:h,startSize:u,deltaOffset:0,deltaPercentage:0,columnSizingStart:c,isResizingColumn:r.id}))}}},createTable:e=>{e.setColumnSizing=t=>e.options.onColumnSizingChange==null?void 0:e.options.onColumnSizingChange(t),e.setColumnSizingInfo=t=>e.options.onColumnSizingInfoChange==null?void 0:e.options.onColumnSizingInfoChange(t),e.resetColumnSizing=t=>{var n;e.setColumnSizing(t?{}:(n=e.initialState.columnSizing)!=null?n:{})},e.resetHeaderSizeInfo=t=>{var n;e.setColumnSizingInfo(t?c0():(n=e.initialState.columnSizingInfo)!=null?n:c0())},e.getTotalSize=()=>{var t,n;return(t=(n=e.getHeaderGroups()[0])==null?void 0:n.headers.reduce((r,l)=>r+l.getSize(),0))!=null?t:0},e.getLeftTotalSize=()=>{var t,n;return(t=(n=e.getLeftHeaderGroups()[0])==null?void 0:n.headers.reduce((r,l)=>r+l.getSize(),0))!=null?t:0},e.getCenterTotalSize=()=>{var t,n;return(t=(n=e.getCenterHeaderGroups()[0])==null?void 0:n.headers.reduce((r,l)=>r+l.getSize(),0))!=null?t:0},e.getRightTotalSize=()=>{var t,n;return(t=(n=e.getRightHeaderGroups()[0])==null?void 0:n.headers.reduce((r,l)=>r+l.getSize(),0))!=null?t:0}}};let bm=null;function rle(){if(typeof bm=="boolean")return bm;let e=!1;try{const t={get passive(){return e=!0,!1}},n=()=>{};window.addEventListener("test",n,t),window.removeEventListener("test",n)}catch{e=!1}return bm=e,bm}function f0(e){return e.type==="touchstart"}const ile={getInitialState:e=>({columnVisibility:{},...e}),getDefaultOptions:e=>({onColumnVisibilityChange:Or("columnVisibility",e)}),createColumn:(e,t)=>{e.toggleVisibility=n=>{e.getCanHide()&&t.setColumnVisibility(r=>({...r,[e.id]:n??!e.getIsVisible()}))},e.getIsVisible=()=>{var n,r;const l=e.columns;return(n=l.length?l.some(o=>o.getIsVisible()):(r=t.getState().columnVisibility)==null?void 0:r[e.id])!=null?n:!0},e.getCanHide=()=>{var n,r;return((n=e.columnDef.enableHiding)!=null?n:!0)&&((r=t.options.enableHiding)!=null?r:!0)},e.getToggleVisibilityHandler=()=>n=>{e.toggleVisibility==null||e.toggleVisibility(n.target.checked)}},createRow:(e,t)=>{e._getAllVisibleCells=Le(()=>[e.getAllCells(),t.getState().columnVisibility],n=>n.filter(r=>r.column.getIsVisible()),Ue(t.options,"debugRows")),e.getVisibleCells=Le(()=>[e.getLeftVisibleCells(),e.getCenterVisibleCells(),e.getRightVisibleCells()],(n,r,l)=>[...n,...r,...l],Ue(t.options,"debugRows"))},createTable:e=>{const t=(n,r)=>Le(()=>[r(),r().filter(l=>l.getIsVisible()).map(l=>l.id).join("_")],l=>l.filter(o=>o.getIsVisible==null?void 0:o.getIsVisible()),Ue(e.options,"debugColumns"));e.getVisibleFlatColumns=t("getVisibleFlatColumns",()=>e.getAllFlatColumns()),e.getVisibleLeafColumns=t("getVisibleLeafColumns",()=>e.getAllLeafColumns()),e.getLeftVisibleLeafColumns=t("getLeftVisibleLeafColumns",()=>e.getLeftLeafColumns()),e.getRightVisibleLeafColumns=t("getRightVisibleLeafColumns",()=>e.getRightLeafColumns()),e.getCenterVisibleLeafColumns=t("getCenterVisibleLeafColumns",()=>e.getCenterLeafColumns()),e.setColumnVisibility=n=>e.options.onColumnVisibilityChange==null?void 0:e.options.onColumnVisibilityChange(n),e.resetColumnVisibility=n=>{var r;e.setColumnVisibility(n?{}:(r=e.initialState.columnVisibility)!=null?r:{})},e.toggleAllColumnsVisible=n=>{var r;n=(r=n)!=null?r:!e.getIsAllColumnsVisible(),e.setColumnVisibility(e.getAllLeafColumns().reduce((l,o)=>({...l,[o.id]:n||!(o.getCanHide!=null&&o.getCanHide())}),{}))},e.getIsAllColumnsVisible=()=>!e.getAllLeafColumns().some(n=>!(n.getIsVisible!=null&&n.getIsVisible())),e.getIsSomeColumnsVisible=()=>e.getAllLeafColumns().some(n=>n.getIsVisible==null?void 0:n.getIsVisible()),e.getToggleAllColumnsVisibilityHandler=()=>n=>{var r;e.toggleAllColumnsVisible((r=n.target)==null?void 0:r.checked)}}};function Ef(e,t){return t?t==="center"?e.getCenterVisibleLeafColumns():t==="left"?e.getLeftVisibleLeafColumns():e.getRightVisibleLeafColumns():e.getVisibleLeafColumns()}const ale={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()}}},lle={getInitialState:e=>({globalFilter:void 0,...e}),getDefaultOptions:e=>({onGlobalFilterChange:Or("globalFilter",e),globalFilterFn:"auto",getColumnCanGlobalFilter:t=>{var n;const r=(n=e.getCoreRowModel().flatRows[0])==null||(n=n._getAllCellsByColumnId()[t.id])==null?void 0:n.getValue();return typeof r=="string"||typeof r=="number"}}),createColumn:(e,t)=>{e.getCanGlobalFilter=()=>{var n,r,l,o;return((n=e.columnDef.enableGlobalFilter)!=null?n:!0)&&((r=t.options.enableGlobalFilter)!=null?r:!0)&&((l=t.options.enableFilters)!=null?l:!0)&&((o=t.options.getColumnCanGlobalFilter==null?void 0:t.options.getColumnCanGlobalFilter(e))!=null?o:!0)&&!!e.accessorFn}},createTable:e=>{e.getGlobalAutoFilterFn=()=>ca.includesString,e.getGlobalFilterFn=()=>{var t,n;const{globalFilterFn:r}=e.options;return _g(r)?r:r==="auto"?e.getGlobalAutoFilterFn():(t=(n=e.options.filterFns)==null?void 0:n[r])!=null?t:ca[r]},e.setGlobalFilter=t=>{e.options.onGlobalFilterChange==null||e.options.onGlobalFilterChange(t)},e.resetGlobalFilter=t=>{e.setGlobalFilter(t?void 0:e.initialState.globalFilter)}}},ole={getInitialState:e=>({expanded:{},...e}),getDefaultOptions:e=>({onExpandedChange:Or("expanded",e),paginateExpandedRows:!0}),createTable:e=>{let t=!1,n=!1;e._autoResetExpanded=()=>{var r,l;if(!t){e._queue(()=>{t=!0});return}if((r=(l=e.options.autoResetAll)!=null?l:e.options.autoResetExpanded)!=null?r:!e.options.manualExpanding){if(n)return;n=!0,e._queue(()=>{e.resetExpanded(),n=!1})}},e.setExpanded=r=>e.options.onExpandedChange==null?void 0:e.options.onExpandedChange(r),e.toggleAllRowsExpanded=r=>{r??!e.getIsAllRowsExpanded()?e.setExpanded(!0):e.setExpanded({})},e.resetExpanded=r=>{var l,o;e.setExpanded(r?{}:(l=(o=e.initialState)==null?void 0:o.expanded)!=null?l:{})},e.getCanSomeRowsExpand=()=>e.getPrePaginationRowModel().flatRows.some(r=>r.getCanExpand()),e.getToggleAllRowsExpandedHandler=()=>r=>{r.persist==null||r.persist(),e.toggleAllRowsExpanded()},e.getIsSomeRowsExpanded=()=>{const r=e.getState().expanded;return r===!0||Object.values(r).some(Boolean)},e.getIsAllRowsExpanded=()=>{const r=e.getState().expanded;return typeof r=="boolean"?r===!0:!(!Object.keys(r).length||e.getRowModel().flatRows.some(l=>!l.getIsExpanded()))},e.getExpandedDepth=()=>{let r=0;return(e.getState().expanded===!0?Object.keys(e.getRowModel().rowsById):Object.keys(e.getState().expanded)).forEach(o=>{const u=o.split(".");r=Math.max(r,u.length)}),r},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,t)=>{e.toggleExpanded=n=>{t.setExpanded(r=>{var l;const o=r===!0?!0:!!(r!=null&&r[e.id]);let u={};if(r===!0?Object.keys(t.getRowModel().rowsById).forEach(c=>{u[c]=!0}):u=r,n=(l=n)!=null?l:!o,!o&&n)return{...u,[e.id]:!0};if(o&&!n){const{[e.id]:c,...h}=u;return h}return r})},e.getIsExpanded=()=>{var n;const r=t.getState().expanded;return!!((n=t.options.getIsRowExpanded==null?void 0:t.options.getIsRowExpanded(e))!=null?n:r===!0||r!=null&&r[e.id])},e.getCanExpand=()=>{var n,r,l;return(n=t.options.getRowCanExpand==null?void 0:t.options.getRowCanExpand(e))!=null?n:((r=t.options.enableExpanding)!=null?r:!0)&&!!((l=e.subRows)!=null&&l.length)},e.getIsAllParentsExpanded=()=>{let n=!0,r=e;for(;n&&r.parentId;)r=t.getRow(r.parentId,!0),n=r.getIsExpanded();return n},e.getToggleExpandedHandler=()=>{const n=e.getCanExpand();return()=>{n&&e.toggleExpanded()}}}},zb=0,Lb=10,d0=()=>({pageIndex:zb,pageSize:Lb}),sle={getInitialState:e=>({...e,pagination:{...d0(),...e==null?void 0:e.pagination}}),getDefaultOptions:e=>({onPaginationChange:Or("pagination",e)}),createTable:e=>{let t=!1,n=!1;e._autoResetPageIndex=()=>{var r,l;if(!t){e._queue(()=>{t=!0});return}if((r=(l=e.options.autoResetAll)!=null?l:e.options.autoResetPageIndex)!=null?r:!e.options.manualPagination){if(n)return;n=!0,e._queue(()=>{e.resetPageIndex(),n=!1})}},e.setPagination=r=>{const l=o=>Nl(r,o);return e.options.onPaginationChange==null?void 0:e.options.onPaginationChange(l)},e.resetPagination=r=>{var l;e.setPagination(r?d0():(l=e.initialState.pagination)!=null?l:d0())},e.setPageIndex=r=>{e.setPagination(l=>{let o=Nl(r,l.pageIndex);const u=typeof e.options.pageCount>"u"||e.options.pageCount===-1?Number.MAX_SAFE_INTEGER:e.options.pageCount-1;return o=Math.max(0,Math.min(o,u)),{...l,pageIndex:o}})},e.resetPageIndex=r=>{var l,o;e.setPageIndex(r?zb:(l=(o=e.initialState)==null||(o=o.pagination)==null?void 0:o.pageIndex)!=null?l:zb)},e.resetPageSize=r=>{var l,o;e.setPageSize(r?Lb:(l=(o=e.initialState)==null||(o=o.pagination)==null?void 0:o.pageSize)!=null?l:Lb)},e.setPageSize=r=>{e.setPagination(l=>{const o=Math.max(1,Nl(r,l.pageSize)),u=l.pageSize*l.pageIndex,c=Math.floor(u/o);return{...l,pageIndex:c,pageSize:o}})},e.setPageCount=r=>e.setPagination(l=>{var o;let u=Nl(r,(o=e.options.pageCount)!=null?o:-1);return typeof u=="number"&&(u=Math.max(-1,u)),{...l,pageCount:u}}),e.getPageOptions=Le(()=>[e.getPageCount()],r=>{let l=[];return r&&r>0&&(l=[...new Array(r)].fill(null).map((o,u)=>u)),l},Ue(e.options,"debugTable")),e.getCanPreviousPage=()=>e.getState().pagination.pageIndex>0,e.getCanNextPage=()=>{const{pageIndex:r}=e.getState().pagination,l=e.getPageCount();return l===-1?!0:l===0?!1:re.setPageIndex(r=>r-1),e.nextPage=()=>e.setPageIndex(r=>r+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 r;return(r=e.options.pageCount)!=null?r:Math.ceil(e.getRowCount()/e.getState().pagination.pageSize)},e.getRowCount=()=>{var r;return(r=e.options.rowCount)!=null?r:e.getPrePaginationRowModel().rows.length}}},h0=()=>({top:[],bottom:[]}),ule={getInitialState:e=>({rowPinning:h0(),...e}),getDefaultOptions:e=>({onRowPinningChange:Or("rowPinning",e)}),createRow:(e,t)=>{e.pin=(n,r,l)=>{const o=r?e.getLeafRows().map(h=>{let{id:m}=h;return m}):[],u=l?e.getParentRows().map(h=>{let{id:m}=h;return m}):[],c=new Set([...u,e.id,...o]);t.setRowPinning(h=>{var m,v;if(n==="bottom"){var p,x;return{top:((p=h==null?void 0:h.top)!=null?p:[]).filter(j=>!(c!=null&&c.has(j))),bottom:[...((x=h==null?void 0:h.bottom)!=null?x:[]).filter(j=>!(c!=null&&c.has(j))),...Array.from(c)]}}if(n==="top"){var S,w;return{top:[...((S=h==null?void 0:h.top)!=null?S:[]).filter(j=>!(c!=null&&c.has(j))),...Array.from(c)],bottom:((w=h==null?void 0:h.bottom)!=null?w:[]).filter(j=>!(c!=null&&c.has(j)))}}return{top:((m=h==null?void 0:h.top)!=null?m:[]).filter(j=>!(c!=null&&c.has(j))),bottom:((v=h==null?void 0:h.bottom)!=null?v:[]).filter(j=>!(c!=null&&c.has(j)))}})},e.getCanPin=()=>{var n;const{enableRowPinning:r,enablePinning:l}=t.options;return typeof r=="function"?r(e):(n=r??l)!=null?n:!0},e.getIsPinned=()=>{const n=[e.id],{top:r,bottom:l}=t.getState().rowPinning,o=n.some(c=>r==null?void 0:r.includes(c)),u=n.some(c=>l==null?void 0:l.includes(c));return o?"top":u?"bottom":!1},e.getPinnedIndex=()=>{var n,r;const l=e.getIsPinned();if(!l)return-1;const o=(n=l==="top"?t.getTopRows():t.getBottomRows())==null?void 0:n.map(u=>{let{id:c}=u;return c});return(r=o==null?void 0:o.indexOf(e.id))!=null?r:-1}},createTable:e=>{e.setRowPinning=t=>e.options.onRowPinningChange==null?void 0:e.options.onRowPinningChange(t),e.resetRowPinning=t=>{var n,r;return e.setRowPinning(t?h0():(n=(r=e.initialState)==null?void 0:r.rowPinning)!=null?n:h0())},e.getIsSomeRowsPinned=t=>{var n;const r=e.getState().rowPinning;if(!t){var l,o;return!!((l=r.top)!=null&&l.length||(o=r.bottom)!=null&&o.length)}return!!((n=r[t])!=null&&n.length)},e._getPinnedRows=(t,n,r)=>{var l;return((l=e.options.keepPinnedRows)==null||l?(n??[]).map(u=>{const c=e.getRow(u,!0);return c.getIsAllParentsExpanded()?c:null}):(n??[]).map(u=>t.find(c=>c.id===u))).filter(Boolean).map(u=>({...u,position:r}))},e.getTopRows=Le(()=>[e.getRowModel().rows,e.getState().rowPinning.top],(t,n)=>e._getPinnedRows(t,n,"top"),Ue(e.options,"debugRows")),e.getBottomRows=Le(()=>[e.getRowModel().rows,e.getState().rowPinning.bottom],(t,n)=>e._getPinnedRows(t,n,"bottom"),Ue(e.options,"debugRows")),e.getCenterRows=Le(()=>[e.getRowModel().rows,e.getState().rowPinning.top,e.getState().rowPinning.bottom],(t,n,r)=>{const l=new Set([...n??[],...r??[]]);return t.filter(o=>!l.has(o.id))},Ue(e.options,"debugRows"))}},cle={getInitialState:e=>({rowSelection:{},...e}),getDefaultOptions:e=>({onRowSelectionChange:Or("rowSelection",e),enableRowSelection:!0,enableMultiRowSelection:!0,enableSubRowSelection:!0}),createTable:e=>{e.setRowSelection=t=>e.options.onRowSelectionChange==null?void 0:e.options.onRowSelectionChange(t),e.resetRowSelection=t=>{var n;return e.setRowSelection(t?{}:(n=e.initialState.rowSelection)!=null?n:{})},e.toggleAllRowsSelected=t=>{e.setRowSelection(n=>{t=typeof t<"u"?t:!e.getIsAllRowsSelected();const r={...n},l=e.getPreGroupedRowModel().flatRows;return t?l.forEach(o=>{o.getCanSelect()&&(r[o.id]=!0)}):l.forEach(o=>{delete r[o.id]}),r})},e.toggleAllPageRowsSelected=t=>e.setRowSelection(n=>{const r=typeof t<"u"?t:!e.getIsAllPageRowsSelected(),l={...n};return e.getRowModel().rows.forEach(o=>{Ub(l,o.id,r,!0,e)}),l}),e.getPreSelectedRowModel=()=>e.getCoreRowModel(),e.getSelectedRowModel=Le(()=>[e.getState().rowSelection,e.getCoreRowModel()],(t,n)=>Object.keys(t).length?m0(e,n):{rows:[],flatRows:[],rowsById:{}},Ue(e.options,"debugTable")),e.getFilteredSelectedRowModel=Le(()=>[e.getState().rowSelection,e.getFilteredRowModel()],(t,n)=>Object.keys(t).length?m0(e,n):{rows:[],flatRows:[],rowsById:{}},Ue(e.options,"debugTable")),e.getGroupedSelectedRowModel=Le(()=>[e.getState().rowSelection,e.getSortedRowModel()],(t,n)=>Object.keys(t).length?m0(e,n):{rows:[],flatRows:[],rowsById:{}},Ue(e.options,"debugTable")),e.getIsAllRowsSelected=()=>{const t=e.getFilteredRowModel().flatRows,{rowSelection:n}=e.getState();let r=!!(t.length&&Object.keys(n).length);return r&&t.some(l=>l.getCanSelect()&&!n[l.id])&&(r=!1),r},e.getIsAllPageRowsSelected=()=>{const t=e.getPaginationRowModel().flatRows.filter(l=>l.getCanSelect()),{rowSelection:n}=e.getState();let r=!!t.length;return r&&t.some(l=>!n[l.id])&&(r=!1),r},e.getIsSomeRowsSelected=()=>{var t;const n=Object.keys((t=e.getState().rowSelection)!=null?t:{}).length;return n>0&&n{const t=e.getPaginationRowModel().flatRows;return e.getIsAllPageRowsSelected()?!1:t.filter(n=>n.getCanSelect()).some(n=>n.getIsSelected()||n.getIsSomeSelected())},e.getToggleAllRowsSelectedHandler=()=>t=>{e.toggleAllRowsSelected(t.target.checked)},e.getToggleAllPageRowsSelectedHandler=()=>t=>{e.toggleAllPageRowsSelected(t.target.checked)}},createRow:(e,t)=>{e.toggleSelected=(n,r)=>{const l=e.getIsSelected();t.setRowSelection(o=>{var u;if(n=typeof n<"u"?n:!l,e.getCanSelect()&&l===n)return o;const c={...o};return Ub(c,e.id,n,(u=r==null?void 0:r.selectChildren)!=null?u:!0,t),c})},e.getIsSelected=()=>{const{rowSelection:n}=t.getState();return gw(e,n)},e.getIsSomeSelected=()=>{const{rowSelection:n}=t.getState();return $b(e,n)==="some"},e.getIsAllSubRowsSelected=()=>{const{rowSelection:n}=t.getState();return $b(e,n)==="all"},e.getCanSelect=()=>{var n;return typeof t.options.enableRowSelection=="function"?t.options.enableRowSelection(e):(n=t.options.enableRowSelection)!=null?n:!0},e.getCanSelectSubRows=()=>{var n;return typeof t.options.enableSubRowSelection=="function"?t.options.enableSubRowSelection(e):(n=t.options.enableSubRowSelection)!=null?n:!0},e.getCanMultiSelect=()=>{var n;return typeof t.options.enableMultiRowSelection=="function"?t.options.enableMultiRowSelection(e):(n=t.options.enableMultiRowSelection)!=null?n:!0},e.getToggleSelectedHandler=()=>{const n=e.getCanSelect();return r=>{var l;n&&e.toggleSelected((l=r.target)==null?void 0:l.checked)}}}},Ub=(e,t,n,r,l)=>{var o;const u=l.getRow(t,!0);n?(u.getCanMultiSelect()||Object.keys(e).forEach(c=>delete e[c]),u.getCanSelect()&&(e[t]=!0)):delete e[t],r&&(o=u.subRows)!=null&&o.length&&u.getCanSelectSubRows()&&u.subRows.forEach(c=>Ub(e,c.id,n,r,l))};function m0(e,t){const n=e.getState().rowSelection,r=[],l={},o=function(u,c){return u.map(h=>{var m;const v=gw(h,n);if(v&&(r.push(h),l[h.id]=h),(m=h.subRows)!=null&&m.length&&(h={...h,subRows:o(h.subRows)}),v)return h}).filter(Boolean)};return{rows:o(t.rows),flatRows:r,rowsById:l}}function gw(e,t){var n;return(n=t[e.id])!=null?n:!1}function $b(e,t,n){var r;if(!((r=e.subRows)!=null&&r.length))return!1;let l=!0,o=!1;return e.subRows.forEach(u=>{if(!(o&&!l)&&(u.getCanSelect()&&(gw(u,t)?o=!0:l=!1),u.subRows&&u.subRows.length)){const c=$b(u,t);c==="all"?o=!0:(c==="some"&&(o=!0),l=!1)}}),l?"all":o?"some":!1}const Bb=/([0-9]+)/gm,fle=(e,t,n)=>Mz(Il(e.getValue(n)).toLowerCase(),Il(t.getValue(n)).toLowerCase()),dle=(e,t,n)=>Mz(Il(e.getValue(n)),Il(t.getValue(n))),hle=(e,t,n)=>pw(Il(e.getValue(n)).toLowerCase(),Il(t.getValue(n)).toLowerCase()),mle=(e,t,n)=>pw(Il(e.getValue(n)),Il(t.getValue(n))),vle=(e,t,n)=>{const r=e.getValue(n),l=t.getValue(n);return r>l?1:rpw(e.getValue(n),t.getValue(n));function pw(e,t){return e===t?0:e>t?1:-1}function Il(e){return typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?"":String(e):typeof e=="string"?e:""}function Mz(e,t){const n=e.split(Bb).filter(Boolean),r=t.split(Bb).filter(Boolean);for(;n.length&&r.length;){const l=n.shift(),o=r.shift(),u=parseInt(l,10),c=parseInt(o,10),h=[u,c].sort();if(isNaN(h[0])){if(l>o)return 1;if(o>l)return-1;continue}if(isNaN(h[1]))return isNaN(u)?-1:1;if(u>c)return 1;if(c>u)return-1}return n.length-r.length}const vf={alphanumeric:fle,alphanumericCaseSensitive:dle,text:hle,textCaseSensitive:mle,datetime:vle,basic:gle},ple={getInitialState:e=>({sorting:[],...e}),getDefaultColumnDef:()=>({sortingFn:"auto",sortUndefined:1}),getDefaultOptions:e=>({onSortingChange:Or("sorting",e),isMultiSortEvent:t=>t.shiftKey}),createColumn:(e,t)=>{e.getAutoSortingFn=()=>{const n=t.getFilteredRowModel().flatRows.slice(10);let r=!1;for(const l of n){const o=l==null?void 0:l.getValue(e.id);if(Object.prototype.toString.call(o)==="[object Date]")return vf.datetime;if(typeof o=="string"&&(r=!0,o.split(Bb).length>1))return vf.alphanumeric}return r?vf.text:vf.basic},e.getAutoSortDir=()=>{const n=t.getFilteredRowModel().flatRows[0];return typeof(n==null?void 0:n.getValue(e.id))=="string"?"asc":"desc"},e.getSortingFn=()=>{var n,r;if(!e)throw new Error;return _g(e.columnDef.sortingFn)?e.columnDef.sortingFn:e.columnDef.sortingFn==="auto"?e.getAutoSortingFn():(n=(r=t.options.sortingFns)==null?void 0:r[e.columnDef.sortingFn])!=null?n:vf[e.columnDef.sortingFn]},e.toggleSorting=(n,r)=>{const l=e.getNextSortingOrder(),o=typeof n<"u"&&n!==null;t.setSorting(u=>{const c=u==null?void 0:u.find(S=>S.id===e.id),h=u==null?void 0:u.findIndex(S=>S.id===e.id);let m=[],v,p=o?n:l==="desc";if(u!=null&&u.length&&e.getCanMultiSort()&&r?c?v="toggle":v="add":u!=null&&u.length&&h!==u.length-1?v="replace":c?v="toggle":v="replace",v==="toggle"&&(o||l||(v="remove")),v==="add"){var x;m=[...u,{id:e.id,desc:p}],m.splice(0,m.length-((x=t.options.maxMultiSortColCount)!=null?x:Number.MAX_SAFE_INTEGER))}else v==="toggle"?m=u.map(S=>S.id===e.id?{...S,desc:p}:S):v==="remove"?m=u.filter(S=>S.id!==e.id):m=[{id:e.id,desc:p}];return m})},e.getFirstSortDir=()=>{var n,r;return((n=(r=e.columnDef.sortDescFirst)!=null?r:t.options.sortDescFirst)!=null?n:e.getAutoSortDir()==="desc")?"desc":"asc"},e.getNextSortingOrder=n=>{var r,l;const o=e.getFirstSortDir(),u=e.getIsSorted();return u?u!==o&&((r=t.options.enableSortingRemoval)==null||r)&&(!(n&&(l=t.options.enableMultiRemove)!=null)||l)?!1:u==="desc"?"asc":"desc":o},e.getCanSort=()=>{var n,r;return((n=e.columnDef.enableSorting)!=null?n:!0)&&((r=t.options.enableSorting)!=null?r:!0)&&!!e.accessorFn},e.getCanMultiSort=()=>{var n,r;return(n=(r=e.columnDef.enableMultiSort)!=null?r:t.options.enableMultiSort)!=null?n:!!e.accessorFn},e.getIsSorted=()=>{var n;const r=(n=t.getState().sorting)==null?void 0:n.find(l=>l.id===e.id);return r?r.desc?"desc":"asc":!1},e.getSortIndex=()=>{var n,r;return(n=(r=t.getState().sorting)==null?void 0:r.findIndex(l=>l.id===e.id))!=null?n:-1},e.clearSorting=()=>{t.setSorting(n=>n!=null&&n.length?n.filter(r=>r.id!==e.id):[])},e.getToggleSortingHandler=()=>{const n=e.getCanSort();return r=>{n&&(r.persist==null||r.persist(),e.toggleSorting==null||e.toggleSorting(void 0,e.getCanMultiSort()?t.options.isMultiSortEvent==null?void 0:t.options.isMultiSortEvent(r):!1))}}},createTable:e=>{e.setSorting=t=>e.options.onSortingChange==null?void 0:e.options.onSortingChange(t),e.resetSorting=t=>{var n,r;e.setSorting(t?[]:(n=(r=e.initialState)==null?void 0:r.sorting)!=null?n:[])},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())}},yle=[Uae,ile,Jae,ele,$ae,Bae,ale,lle,ple,Zae,ole,sle,ule,cle,nle];function xle(e){var t,n;const r=[...yle,...(t=e._features)!=null?t:[]];let l={_features:r};const o=l._features.reduce((x,S)=>Object.assign(x,S.getDefaultOptions==null?void 0:S.getDefaultOptions(l)),{}),u=x=>l.options.mergeOptions?l.options.mergeOptions(o,x):{...o,...x};let h={...{},...(n=e.initialState)!=null?n:{}};l._features.forEach(x=>{var S;h=(S=x.getInitialState==null?void 0:x.getInitialState(h))!=null?S:h});const m=[];let v=!1;const p={_features:r,options:{...o,...e},initialState:h,_queue:x=>{m.push(x),v||(v=!0,Promise.resolve().then(()=>{for(;m.length;)m.shift()();v=!1}).catch(S=>setTimeout(()=>{throw S})))},reset:()=>{l.setState(l.initialState)},setOptions:x=>{const S=Nl(x,l.options);l.options=u(S)},getState:()=>l.options.state,setState:x=>{l.options.onStateChange==null||l.options.onStateChange(x)},_getRowId:(x,S,w)=>{var j;return(j=l.options.getRowId==null?void 0:l.options.getRowId(x,S,w))!=null?j:`${w?[w.id,S].join("."):S}`},getCoreRowModel:()=>(l._getCoreRowModel||(l._getCoreRowModel=l.options.getCoreRowModel(l)),l._getCoreRowModel()),getRowModel:()=>l.getPaginationRowModel(),getRow:(x,S)=>{let w=(S?l.getPrePaginationRowModel():l.getRowModel()).rowsById[x];if(!w&&(w=l.getCoreRowModel().rowsById[x],!w))throw new Error;return w},_getDefaultColumnDef:Le(()=>[l.options.defaultColumn],x=>{var S;return x=(S=x)!=null?S:{},{header:w=>{const j=w.header.column.columnDef;return j.accessorKey?j.accessorKey:j.accessorFn?j.id:null},cell:w=>{var j,C;return(j=(C=w.renderValue())==null||C.toString==null?void 0:C.toString())!=null?j:null},...l._features.reduce((w,j)=>Object.assign(w,j.getDefaultColumnDef==null?void 0:j.getDefaultColumnDef()),{}),...x}},Ue(e,"debugColumns")),_getColumnDefs:()=>l.options.columns,getAllColumns:Le(()=>[l._getColumnDefs()],x=>{const S=function(w,j,C){return C===void 0&&(C=0),w.map(A=>{const N=Lae(l,A,C,j),O=A;return N.columns=O.columns?S(O.columns,N,C+1):[],N})};return S(x)},Ue(e,"debugColumns")),getAllFlatColumns:Le(()=>[l.getAllColumns()],x=>x.flatMap(S=>S.getFlatColumns()),Ue(e,"debugColumns")),_getAllFlatColumnsById:Le(()=>[l.getAllFlatColumns()],x=>x.reduce((S,w)=>(S[w.id]=w,S),{}),Ue(e,"debugColumns")),getAllLeafColumns:Le(()=>[l.getAllColumns(),l._getOrderColumnsFn()],(x,S)=>{let w=x.flatMap(j=>j.getLeafColumns());return S(w)},Ue(e,"debugColumns")),getColumn:x=>l._getAllFlatColumnsById()[x]};Object.assign(l,p);for(let x=0;xLe(()=>[e.options.data],t=>{const n={rows:[],flatRows:[],rowsById:{}},r=function(l,o,u){o===void 0&&(o=0);const c=[];for(let m=0;me._autoResetPageIndex()))}function Sle(e,t,n){return n.options.filterFromLeafRows?wle(e,t,n):jle(e,t,n)}function wle(e,t,n){var r;const l=[],o={},u=(r=n.options.maxLeafRowFilterDepth)!=null?r:100,c=function(h,m){m===void 0&&(m=0);const v=[];for(let x=0;xLe(()=>[e.getPreFilteredRowModel(),e.getState().columnFilters,e.getState().globalFilter],(t,n,r)=>{if(!t.rows.length||!(n!=null&&n.length)&&!r){for(let x=0;x{var S;const w=e.getColumn(x.id);if(!w)return;const j=w.getFilterFn();j&&l.push({id:x.id,filterFn:j,resolvedValue:(S=j.resolveFilterValue==null?void 0:j.resolveFilterValue(x.value))!=null?S:x.value})});const u=(n??[]).map(x=>x.id),c=e.getGlobalFilterFn(),h=e.getAllLeafColumns().filter(x=>x.getCanGlobalFilter());r&&c&&h.length&&(u.push("__global__"),h.forEach(x=>{var S;o.push({id:x.id,filterFn:c,resolvedValue:(S=c.resolveFilterValue==null?void 0:c.resolveFilterValue(r))!=null?S:r})}));let m,v;for(let x=0;x{S.columnFiltersMeta[j]=C})}if(o.length){for(let w=0;w{S.columnFiltersMeta[j]=C})){S.columnFilters.__global__=!0;break}}S.columnFilters.__global__!==!0&&(S.columnFilters.__global__=!1)}}const p=x=>{for(let S=0;Se._autoResetPageIndex()))}function _le(){return e=>Le(()=>[e.getState().sorting,e.getPreSortedRowModel()],(t,n)=>{if(!n.rows.length||!(t!=null&&t.length))return n;const r=e.getState().sorting,l=[],o=r.filter(h=>{var m;return(m=e.getColumn(h.id))==null?void 0:m.getCanSort()}),u={};o.forEach(h=>{const m=e.getColumn(h.id);m&&(u[h.id]={sortUndefined:m.columnDef.sortUndefined,invertSorting:m.columnDef.invertSorting,sortingFn:m.getSortingFn()})});const c=h=>{const m=h.map(v=>({...v}));return m.sort((v,p)=>{for(let S=0;S{var p;l.push(v),(p=v.subRows)!=null&&p.length&&(v.subRows=c(v.subRows))}),m};return{rows:c(n.rows),flatRows:l,rowsById:n.rowsById}},Ue(e.options,"debugTable","getSortedRowModel",()=>e._autoResetPageIndex()))}/** + color: hsl(${Math.max(0,Math.min(120-120*x,120))}deg 100% 31%);`,n==null?void 0:n.key)}return l}}function Ue(e,t,n,r){return{debug:()=>{var l;return(l=e==null?void 0:e.debugAll)!=null?l:e[t]},key:!1,onChange:r}}function Xae(e,t,n,r){const l=()=>{var u;return(u=o.getValue())!=null?u:e.options.renderFallbackValue},o={id:`${t.id}_${n.id}`,row:t,column:n,getValue:()=>t.getValue(r),renderValue:l,getContext:Le(()=>[e,n,t,o],(u,c,h,m)=>({table:u,column:c,row:h,cell:m,getValue:m.getValue,renderValue:m.renderValue}),Ue(e.options,"debugCells"))};return e._features.forEach(u=>{u.createCell==null||u.createCell(o,n,t,e)},{}),o}function Qae(e,t,n,r){var l,o;const c={...e._getDefaultColumnDef(),...t},h=c.accessorKey;let m=(l=(o=c.id)!=null?o:h?typeof String.prototype.replaceAll=="function"?h.replaceAll(".","_"):h.replace(/\./g,"_"):void 0)!=null?l:typeof c.header=="string"?c.header:void 0,v;if(c.accessorFn?v=c.accessorFn:h&&(h.includes(".")?v=x=>{let S=x;for(const j of h.split(".")){var w;S=(w=S)==null?void 0:w[j]}return S}:v=x=>x[c.accessorKey]),!m)throw new Error;let g={id:`${String(m)}`,accessorFn:v,parent:r,depth:n,columnDef:c,columns:[],getFlatColumns:Le(()=>[!0],()=>{var x;return[g,...(x=g.columns)==null?void 0:x.flatMap(S=>S.getFlatColumns())]},Ue(e.options,"debugColumns")),getLeafColumns:Le(()=>[e._getOrderColumnsFn()],x=>{var S;if((S=g.columns)!=null&&S.length){let w=g.columns.flatMap(j=>j.getLeafColumns());return x(w)}return[g]},Ue(e.options,"debugColumns"))};for(const x of e._features)x.createColumn==null||x.createColumn(g,e);return g}const In="debugHeaders";function YT(e,t,n){var r;let o={id:(r=n.id)!=null?r:t.id,column:t,index:n.index,isPlaceholder:!!n.isPlaceholder,placeholderId:n.placeholderId,depth:n.depth,subHeaders:[],colSpan:0,rowSpan:0,headerGroup:null,getLeafHeaders:()=>{const u=[],c=h=>{h.subHeaders&&h.subHeaders.length&&h.subHeaders.map(c),u.push(h)};return c(o),u},getContext:()=>({table:e,header:o,column:t})};return e._features.forEach(u=>{u.createHeader==null||u.createHeader(o,e)}),o}const Zae={createTable:e=>{e.getHeaderGroups=Le(()=>[e.getAllColumns(),e.getVisibleLeafColumns(),e.getState().columnPinning.left,e.getState().columnPinning.right],(t,n,r,l)=>{var o,u;const c=(o=r==null?void 0:r.map(g=>n.find(x=>x.id===g)).filter(Boolean))!=null?o:[],h=(u=l==null?void 0:l.map(g=>n.find(x=>x.id===g)).filter(Boolean))!=null?u:[],m=n.filter(g=>!(r!=null&&r.includes(g.id))&&!(l!=null&&l.includes(g.id)));return xm(t,[...c,...m,...h],e)},Ue(e.options,In)),e.getCenterHeaderGroups=Le(()=>[e.getAllColumns(),e.getVisibleLeafColumns(),e.getState().columnPinning.left,e.getState().columnPinning.right],(t,n,r,l)=>(n=n.filter(o=>!(r!=null&&r.includes(o.id))&&!(l!=null&&l.includes(o.id))),xm(t,n,e,"center")),Ue(e.options,In)),e.getLeftHeaderGroups=Le(()=>[e.getAllColumns(),e.getVisibleLeafColumns(),e.getState().columnPinning.left],(t,n,r)=>{var l;const o=(l=r==null?void 0:r.map(u=>n.find(c=>c.id===u)).filter(Boolean))!=null?l:[];return xm(t,o,e,"left")},Ue(e.options,In)),e.getRightHeaderGroups=Le(()=>[e.getAllColumns(),e.getVisibleLeafColumns(),e.getState().columnPinning.right],(t,n,r)=>{var l;const o=(l=r==null?void 0:r.map(u=>n.find(c=>c.id===u)).filter(Boolean))!=null?l:[];return xm(t,o,e,"right")},Ue(e.options,In)),e.getFooterGroups=Le(()=>[e.getHeaderGroups()],t=>[...t].reverse(),Ue(e.options,In)),e.getLeftFooterGroups=Le(()=>[e.getLeftHeaderGroups()],t=>[...t].reverse(),Ue(e.options,In)),e.getCenterFooterGroups=Le(()=>[e.getCenterHeaderGroups()],t=>[...t].reverse(),Ue(e.options,In)),e.getRightFooterGroups=Le(()=>[e.getRightHeaderGroups()],t=>[...t].reverse(),Ue(e.options,In)),e.getFlatHeaders=Le(()=>[e.getHeaderGroups()],t=>t.map(n=>n.headers).flat(),Ue(e.options,In)),e.getLeftFlatHeaders=Le(()=>[e.getLeftHeaderGroups()],t=>t.map(n=>n.headers).flat(),Ue(e.options,In)),e.getCenterFlatHeaders=Le(()=>[e.getCenterHeaderGroups()],t=>t.map(n=>n.headers).flat(),Ue(e.options,In)),e.getRightFlatHeaders=Le(()=>[e.getRightHeaderGroups()],t=>t.map(n=>n.headers).flat(),Ue(e.options,In)),e.getCenterLeafHeaders=Le(()=>[e.getCenterFlatHeaders()],t=>t.filter(n=>{var r;return!((r=n.subHeaders)!=null&&r.length)}),Ue(e.options,In)),e.getLeftLeafHeaders=Le(()=>[e.getLeftFlatHeaders()],t=>t.filter(n=>{var r;return!((r=n.subHeaders)!=null&&r.length)}),Ue(e.options,In)),e.getRightLeafHeaders=Le(()=>[e.getRightFlatHeaders()],t=>t.filter(n=>{var r;return!((r=n.subHeaders)!=null&&r.length)}),Ue(e.options,In)),e.getLeafHeaders=Le(()=>[e.getLeftHeaderGroups(),e.getCenterHeaderGroups(),e.getRightHeaderGroups()],(t,n,r)=>{var l,o,u,c,h,m;return[...(l=(o=t[0])==null?void 0:o.headers)!=null?l:[],...(u=(c=n[0])==null?void 0:c.headers)!=null?u:[],...(h=(m=r[0])==null?void 0:m.headers)!=null?h:[]].map(v=>v.getLeafHeaders()).flat()},Ue(e.options,In))}};function xm(e,t,n,r){var l,o;let u=0;const c=function(x,S){S===void 0&&(S=1),u=Math.max(u,S),x.filter(w=>w.getIsVisible()).forEach(w=>{var j;(j=w.columns)!=null&&j.length&&c(w.columns,S+1)},0)};c(e);let h=[];const m=(x,S)=>{const w={depth:S,id:[r,`${S}`].filter(Boolean).join("_"),headers:[]},j=[];x.forEach(C=>{const E=[...j].reverse()[0],N=C.column.depth===w.depth;let O,T=!1;if(N&&C.column.parent?O=C.column.parent:(O=C.column,T=!0),E&&(E==null?void 0:E.column)===O)E.subHeaders.push(C);else{const R=YT(n,O,{id:[r,S,O.id,C==null?void 0:C.id].filter(Boolean).join("_"),isPlaceholder:T,placeholderId:T?`${j.filter(A=>A.column===O).length}`:void 0,depth:S,index:j.length});R.subHeaders.push(C),j.push(R)}w.headers.push(C),C.headerGroup=w}),h.push(w),S>0&&m(j,S-1)},v=t.map((x,S)=>YT(n,x,{depth:u,index:S}));m(v,u-1),h.reverse();const g=x=>x.filter(w=>w.column.getIsVisible()).map(w=>{let j=0,C=0,E=[0];w.subHeaders&&w.subHeaders.length?(E=[],g(w.subHeaders).forEach(O=>{let{colSpan:T,rowSpan:R}=O;j+=T,E.push(R)})):j=1;const N=Math.min(...E);return C=C+N,w.colSpan=j,w.rowSpan=C,{colSpan:j,rowSpan:C}});return g((l=(o=h[0])==null?void 0:o.headers)!=null?l:[]),h}const gw=(e,t,n,r,l,o,u)=>{let c={id:t,index:r,original:n,depth:l,parentId:u,_valuesCache:{},_uniqueValuesCache:{},getValue:h=>{if(c._valuesCache.hasOwnProperty(h))return c._valuesCache[h];const m=e.getColumn(h);if(m!=null&&m.accessorFn)return c._valuesCache[h]=m.accessorFn(c.original,r),c._valuesCache[h]},getUniqueValues:h=>{if(c._uniqueValuesCache.hasOwnProperty(h))return c._uniqueValuesCache[h];const m=e.getColumn(h);if(m!=null&&m.accessorFn)return m.columnDef.getUniqueValues?(c._uniqueValuesCache[h]=m.columnDef.getUniqueValues(c.original,r),c._uniqueValuesCache[h]):(c._uniqueValuesCache[h]=[c.getValue(h)],c._uniqueValuesCache[h])},renderValue:h=>{var m;return(m=c.getValue(h))!=null?m:e.options.renderFallbackValue},subRows:[],getLeafRows:()=>Yae(c.subRows,h=>h.subRows),getParentRow:()=>c.parentId?e.getRow(c.parentId,!0):void 0,getParentRows:()=>{let h=[],m=c;for(;;){const v=m.getParentRow();if(!v)break;h.push(v),m=v}return h.reverse()},getAllCells:Le(()=>[e.getAllLeafColumns()],h=>h.map(m=>Xae(e,c,m,m.id)),Ue(e.options,"debugRows")),_getAllCellsByColumnId:Le(()=>[c.getAllCells()],h=>h.reduce((m,v)=>(m[v.column.id]=v,m),{}),Ue(e.options,"debugRows"))};for(let h=0;h{e._getFacetedRowModel=t.options.getFacetedRowModel&&t.options.getFacetedRowModel(t,e.id),e.getFacetedRowModel=()=>e._getFacetedRowModel?e._getFacetedRowModel():t.getPreFilteredRowModel(),e._getFacetedUniqueValues=t.options.getFacetedUniqueValues&&t.options.getFacetedUniqueValues(t,e.id),e.getFacetedUniqueValues=()=>e._getFacetedUniqueValues?e._getFacetedUniqueValues():new Map,e._getFacetedMinMaxValues=t.options.getFacetedMinMaxValues&&t.options.getFacetedMinMaxValues(t,e.id),e.getFacetedMinMaxValues=()=>{if(e._getFacetedMinMaxValues)return e._getFacetedMinMaxValues()}}},Nz=(e,t,n)=>{var r,l;const o=n==null||(r=n.toString())==null?void 0:r.toLowerCase();return!!(!((l=e.getValue(t))==null||(l=l.toString())==null||(l=l.toLowerCase())==null)&&l.includes(o))};Nz.autoRemove=e=>ci(e);const Tz=(e,t,n)=>{var r;return!!(!((r=e.getValue(t))==null||(r=r.toString())==null)&&r.includes(n))};Tz.autoRemove=e=>ci(e);const Rz=(e,t,n)=>{var r;return((r=e.getValue(t))==null||(r=r.toString())==null?void 0:r.toLowerCase())===(n==null?void 0:n.toLowerCase())};Rz.autoRemove=e=>ci(e);const Mz=(e,t,n)=>{var r;return(r=e.getValue(t))==null?void 0:r.includes(n)};Mz.autoRemove=e=>ci(e);const Dz=(e,t,n)=>!n.some(r=>{var l;return!((l=e.getValue(t))!=null&&l.includes(r))});Dz.autoRemove=e=>ci(e)||!(e!=null&&e.length);const Pz=(e,t,n)=>n.some(r=>{var l;return(l=e.getValue(t))==null?void 0:l.includes(r)});Pz.autoRemove=e=>ci(e)||!(e!=null&&e.length);const kz=(e,t,n)=>e.getValue(t)===n;kz.autoRemove=e=>ci(e);const Iz=(e,t,n)=>e.getValue(t)==n;Iz.autoRemove=e=>ci(e);const pw=(e,t,n)=>{let[r,l]=n;const o=e.getValue(t);return o>=r&&o<=l};pw.resolveFilterValue=e=>{let[t,n]=e,r=typeof t!="number"?parseFloat(t):t,l=typeof n!="number"?parseFloat(n):n,o=t===null||Number.isNaN(r)?-1/0:r,u=n===null||Number.isNaN(l)?1/0:l;if(o>u){const c=o;o=u,u=c}return[o,u]};pw.autoRemove=e=>ci(e)||ci(e[0])&&ci(e[1]);const ca={includesString:Nz,includesStringSensitive:Tz,equalsString:Rz,arrIncludes:Mz,arrIncludesAll:Dz,arrIncludesSome:Pz,equals:kz,weakEquals:Iz,inNumberRange:pw};function ci(e){return e==null||e===""}const Jae={getDefaultColumnDef:()=>({filterFn:"auto"}),getInitialState:e=>({columnFilters:[],...e}),getDefaultOptions:e=>({onColumnFiltersChange:Or("columnFilters",e),filterFromLeafRows:!1,maxLeafRowFilterDepth:100}),createColumn:(e,t)=>{e.getAutoFilterFn=()=>{const n=t.getCoreRowModel().flatRows[0],r=n==null?void 0:n.getValue(e.id);return typeof r=="string"?ca.includesString:typeof r=="number"?ca.inNumberRange:typeof r=="boolean"||r!==null&&typeof r=="object"?ca.equals:Array.isArray(r)?ca.arrIncludes:ca.weakEquals},e.getFilterFn=()=>{var n,r;return Eg(e.columnDef.filterFn)?e.columnDef.filterFn:e.columnDef.filterFn==="auto"?e.getAutoFilterFn():(n=(r=t.options.filterFns)==null?void 0:r[e.columnDef.filterFn])!=null?n:ca[e.columnDef.filterFn]},e.getCanFilter=()=>{var n,r,l;return((n=e.columnDef.enableColumnFilter)!=null?n:!0)&&((r=t.options.enableColumnFilters)!=null?r:!0)&&((l=t.options.enableFilters)!=null?l:!0)&&!!e.accessorFn},e.getIsFiltered=()=>e.getFilterIndex()>-1,e.getFilterValue=()=>{var n;return(n=t.getState().columnFilters)==null||(n=n.find(r=>r.id===e.id))==null?void 0:n.value},e.getFilterIndex=()=>{var n,r;return(n=(r=t.getState().columnFilters)==null?void 0:r.findIndex(l=>l.id===e.id))!=null?n:-1},e.setFilterValue=n=>{t.setColumnFilters(r=>{const l=e.getFilterFn(),o=r==null?void 0:r.find(v=>v.id===e.id),u=Nl(n,o?o.value:void 0);if(XT(l,u,e)){var c;return(c=r==null?void 0:r.filter(v=>v.id!==e.id))!=null?c:[]}const h={id:e.id,value:u};if(o){var m;return(m=r==null?void 0:r.map(v=>v.id===e.id?h:v))!=null?m:[]}return r!=null&&r.length?[...r,h]:[h]})}},createRow:(e,t)=>{e.columnFilters={},e.columnFiltersMeta={}},createTable:e=>{e.setColumnFilters=t=>{const n=e.getAllLeafColumns(),r=l=>{var o;return(o=Nl(t,l))==null?void 0:o.filter(u=>{const c=n.find(h=>h.id===u.id);if(c){const h=c.getFilterFn();if(XT(h,u.value,c))return!1}return!0})};e.options.onColumnFiltersChange==null||e.options.onColumnFiltersChange(r)},e.resetColumnFilters=t=>{var n,r;e.setColumnFilters(t?[]:(n=(r=e.initialState)==null?void 0:r.columnFilters)!=null?n:[])},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 XT(e,t,n){return(e&&e.autoRemove?e.autoRemove(t,n):!1)||typeof t>"u"||typeof t=="string"&&!t}const ele=(e,t,n)=>n.reduce((r,l)=>{const o=l.getValue(e);return r+(typeof o=="number"?o:0)},0),tle=(e,t,n)=>{let r;return n.forEach(l=>{const o=l.getValue(e);o!=null&&(r>o||r===void 0&&o>=o)&&(r=o)}),r},nle=(e,t,n)=>{let r;return n.forEach(l=>{const o=l.getValue(e);o!=null&&(r=o)&&(r=o)}),r},rle=(e,t,n)=>{let r,l;return n.forEach(o=>{const u=o.getValue(e);u!=null&&(r===void 0?u>=u&&(r=l=u):(r>u&&(r=u),l{let n=0,r=0;if(t.forEach(l=>{let o=l.getValue(e);o!=null&&(o=+o)>=o&&(++n,r+=o)}),n)return r/n},ale=(e,t)=>{if(!t.length)return;const n=t.map(o=>o.getValue(e));if(!Kae(n))return;if(n.length===1)return n[0];const r=Math.floor(n.length/2),l=n.sort((o,u)=>o-u);return n.length%2!==0?l[r]:(l[r-1]+l[r])/2},lle=(e,t)=>Array.from(new Set(t.map(n=>n.getValue(e))).values()),ole=(e,t)=>new Set(t.map(n=>n.getValue(e))).size,sle=(e,t)=>t.length,u0={sum:ele,min:tle,max:nle,extent:rle,mean:ile,median:ale,unique:lle,uniqueCount:ole,count:sle},ule={getDefaultColumnDef:()=>({aggregatedCell:e=>{var t,n;return(t=(n=e.getValue())==null||n.toString==null?void 0:n.toString())!=null?t:null},aggregationFn:"auto"}),getInitialState:e=>({grouping:[],...e}),getDefaultOptions:e=>({onGroupingChange:Or("grouping",e),groupedColumnMode:"reorder"}),createColumn:(e,t)=>{e.toggleGrouping=()=>{t.setGrouping(n=>n!=null&&n.includes(e.id)?n.filter(r=>r!==e.id):[...n??[],e.id])},e.getCanGroup=()=>{var n,r;return((n=e.columnDef.enableGrouping)!=null?n:!0)&&((r=t.options.enableGrouping)!=null?r:!0)&&(!!e.accessorFn||!!e.columnDef.getGroupingValue)},e.getIsGrouped=()=>{var n;return(n=t.getState().grouping)==null?void 0:n.includes(e.id)},e.getGroupedIndex=()=>{var n;return(n=t.getState().grouping)==null?void 0:n.indexOf(e.id)},e.getToggleGroupingHandler=()=>{const n=e.getCanGroup();return()=>{n&&e.toggleGrouping()}},e.getAutoAggregationFn=()=>{const n=t.getCoreRowModel().flatRows[0],r=n==null?void 0:n.getValue(e.id);if(typeof r=="number")return u0.sum;if(Object.prototype.toString.call(r)==="[object Date]")return u0.extent},e.getAggregationFn=()=>{var n,r;if(!e)throw new Error;return Eg(e.columnDef.aggregationFn)?e.columnDef.aggregationFn:e.columnDef.aggregationFn==="auto"?e.getAutoAggregationFn():(n=(r=t.options.aggregationFns)==null?void 0:r[e.columnDef.aggregationFn])!=null?n:u0[e.columnDef.aggregationFn]}},createTable:e=>{e.setGrouping=t=>e.options.onGroupingChange==null?void 0:e.options.onGroupingChange(t),e.resetGrouping=t=>{var n,r;e.setGrouping(t?[]:(n=(r=e.initialState)==null?void 0:r.grouping)!=null?n:[])},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,t)=>{e.getIsGrouped=()=>!!e.groupingColumnId,e.getGroupingValue=n=>{if(e._groupingValuesCache.hasOwnProperty(n))return e._groupingValuesCache[n];const r=t.getColumn(n);return r!=null&&r.columnDef.getGroupingValue?(e._groupingValuesCache[n]=r.columnDef.getGroupingValue(e.original),e._groupingValuesCache[n]):e.getValue(n)},e._groupingValuesCache={}},createCell:(e,t,n,r)=>{e.getIsGrouped=()=>t.getIsGrouped()&&t.id===n.groupingColumnId,e.getIsPlaceholder=()=>!e.getIsGrouped()&&t.getIsGrouped(),e.getIsAggregated=()=>{var l;return!e.getIsGrouped()&&!e.getIsPlaceholder()&&!!((l=n.subRows)!=null&&l.length)}}};function cle(e,t,n){if(!(t!=null&&t.length)||!n)return e;const r=e.filter(o=>!t.includes(o.id));return n==="remove"?r:[...t.map(o=>e.find(u=>u.id===o)).filter(Boolean),...r]}const fle={getInitialState:e=>({columnOrder:[],...e}),getDefaultOptions:e=>({onColumnOrderChange:Or("columnOrder",e)}),createColumn:(e,t)=>{e.getIndex=Le(n=>[Af(t,n)],n=>n.findIndex(r=>r.id===e.id),Ue(t.options,"debugColumns")),e.getIsFirstColumn=n=>{var r;return((r=Af(t,n)[0])==null?void 0:r.id)===e.id},e.getIsLastColumn=n=>{var r;const l=Af(t,n);return((r=l[l.length-1])==null?void 0:r.id)===e.id}},createTable:e=>{e.setColumnOrder=t=>e.options.onColumnOrderChange==null?void 0:e.options.onColumnOrderChange(t),e.resetColumnOrder=t=>{var n;e.setColumnOrder(t?[]:(n=e.initialState.columnOrder)!=null?n:[])},e._getOrderColumnsFn=Le(()=>[e.getState().columnOrder,e.getState().grouping,e.options.groupedColumnMode],(t,n,r)=>l=>{let o=[];if(!(t!=null&&t.length))o=l;else{const u=[...t],c=[...l];for(;c.length&&u.length;){const h=u.shift(),m=c.findIndex(v=>v.id===h);m>-1&&o.push(c.splice(m,1)[0])}o=[...o,...c]}return cle(o,n,r)},Ue(e.options,"debugTable"))}},c0=()=>({left:[],right:[]}),dle={getInitialState:e=>({columnPinning:c0(),...e}),getDefaultOptions:e=>({onColumnPinningChange:Or("columnPinning",e)}),createColumn:(e,t)=>{e.pin=n=>{const r=e.getLeafColumns().map(l=>l.id).filter(Boolean);t.setColumnPinning(l=>{var o,u;if(n==="right"){var c,h;return{left:((c=l==null?void 0:l.left)!=null?c:[]).filter(g=>!(r!=null&&r.includes(g))),right:[...((h=l==null?void 0:l.right)!=null?h:[]).filter(g=>!(r!=null&&r.includes(g))),...r]}}if(n==="left"){var m,v;return{left:[...((m=l==null?void 0:l.left)!=null?m:[]).filter(g=>!(r!=null&&r.includes(g))),...r],right:((v=l==null?void 0:l.right)!=null?v:[]).filter(g=>!(r!=null&&r.includes(g)))}}return{left:((o=l==null?void 0:l.left)!=null?o:[]).filter(g=>!(r!=null&&r.includes(g))),right:((u=l==null?void 0:l.right)!=null?u:[]).filter(g=>!(r!=null&&r.includes(g)))}})},e.getCanPin=()=>e.getLeafColumns().some(r=>{var l,o,u;return((l=r.columnDef.enablePinning)!=null?l:!0)&&((o=(u=t.options.enableColumnPinning)!=null?u:t.options.enablePinning)!=null?o:!0)}),e.getIsPinned=()=>{const n=e.getLeafColumns().map(c=>c.id),{left:r,right:l}=t.getState().columnPinning,o=n.some(c=>r==null?void 0:r.includes(c)),u=n.some(c=>l==null?void 0:l.includes(c));return o?"left":u?"right":!1},e.getPinnedIndex=()=>{var n,r;const l=e.getIsPinned();return l?(n=(r=t.getState().columnPinning)==null||(r=r[l])==null?void 0:r.indexOf(e.id))!=null?n:-1:0}},createRow:(e,t)=>{e.getCenterVisibleCells=Le(()=>[e._getAllVisibleCells(),t.getState().columnPinning.left,t.getState().columnPinning.right],(n,r,l)=>{const o=[...r??[],...l??[]];return n.filter(u=>!o.includes(u.column.id))},Ue(t.options,"debugRows")),e.getLeftVisibleCells=Le(()=>[e._getAllVisibleCells(),t.getState().columnPinning.left],(n,r)=>(r??[]).map(o=>n.find(u=>u.column.id===o)).filter(Boolean).map(o=>({...o,position:"left"})),Ue(t.options,"debugRows")),e.getRightVisibleCells=Le(()=>[e._getAllVisibleCells(),t.getState().columnPinning.right],(n,r)=>(r??[]).map(o=>n.find(u=>u.column.id===o)).filter(Boolean).map(o=>({...o,position:"right"})),Ue(t.options,"debugRows"))},createTable:e=>{e.setColumnPinning=t=>e.options.onColumnPinningChange==null?void 0:e.options.onColumnPinningChange(t),e.resetColumnPinning=t=>{var n,r;return e.setColumnPinning(t?c0():(n=(r=e.initialState)==null?void 0:r.columnPinning)!=null?n:c0())},e.getIsSomeColumnsPinned=t=>{var n;const r=e.getState().columnPinning;if(!t){var l,o;return!!((l=r.left)!=null&&l.length||(o=r.right)!=null&&o.length)}return!!((n=r[t])!=null&&n.length)},e.getLeftLeafColumns=Le(()=>[e.getAllLeafColumns(),e.getState().columnPinning.left],(t,n)=>(n??[]).map(r=>t.find(l=>l.id===r)).filter(Boolean),Ue(e.options,"debugColumns")),e.getRightLeafColumns=Le(()=>[e.getAllLeafColumns(),e.getState().columnPinning.right],(t,n)=>(n??[]).map(r=>t.find(l=>l.id===r)).filter(Boolean),Ue(e.options,"debugColumns")),e.getCenterLeafColumns=Le(()=>[e.getAllLeafColumns(),e.getState().columnPinning.left,e.getState().columnPinning.right],(t,n,r)=>{const l=[...n??[],...r??[]];return t.filter(o=>!l.includes(o.id))},Ue(e.options,"debugColumns"))}};function hle(e){return e||(typeof document<"u"?document:null)}const bm={size:150,minSize:20,maxSize:Number.MAX_SAFE_INTEGER},f0=()=>({startOffset:null,startSize:null,deltaOffset:null,deltaPercentage:null,isResizingColumn:!1,columnSizingStart:[]}),mle={getDefaultColumnDef:()=>bm,getInitialState:e=>({columnSizing:{},columnSizingInfo:f0(),...e}),getDefaultOptions:e=>({columnResizeMode:"onEnd",columnResizeDirection:"ltr",onColumnSizingChange:Or("columnSizing",e),onColumnSizingInfoChange:Or("columnSizingInfo",e)}),createColumn:(e,t)=>{e.getSize=()=>{var n,r,l;const o=t.getState().columnSizing[e.id];return Math.min(Math.max((n=e.columnDef.minSize)!=null?n:bm.minSize,(r=o??e.columnDef.size)!=null?r:bm.size),(l=e.columnDef.maxSize)!=null?l:bm.maxSize)},e.getStart=Le(n=>[n,Af(t,n),t.getState().columnSizing],(n,r)=>r.slice(0,e.getIndex(n)).reduce((l,o)=>l+o.getSize(),0),Ue(t.options,"debugColumns")),e.getAfter=Le(n=>[n,Af(t,n),t.getState().columnSizing],(n,r)=>r.slice(e.getIndex(n)+1).reduce((l,o)=>l+o.getSize(),0),Ue(t.options,"debugColumns")),e.resetSize=()=>{t.setColumnSizing(n=>{let{[e.id]:r,...l}=n;return l})},e.getCanResize=()=>{var n,r;return((n=e.columnDef.enableResizing)!=null?n:!0)&&((r=t.options.enableColumnResizing)!=null?r:!0)},e.getIsResizing=()=>t.getState().columnSizingInfo.isResizingColumn===e.id},createHeader:(e,t)=>{e.getSize=()=>{let n=0;const r=l=>{if(l.subHeaders.length)l.subHeaders.forEach(r);else{var o;n+=(o=l.column.getSize())!=null?o:0}};return r(e),n},e.getStart=()=>{if(e.index>0){const n=e.headerGroup.headers[e.index-1];return n.getStart()+n.getSize()}return 0},e.getResizeHandler=n=>{const r=t.getColumn(e.column.id),l=r==null?void 0:r.getCanResize();return o=>{if(!r||!l||(o.persist==null||o.persist(),d0(o)&&o.touches&&o.touches.length>1))return;const u=e.getSize(),c=e?e.getLeafHeaders().map(E=>[E.column.id,E.column.getSize()]):[[r.id,r.getSize()]],h=d0(o)?Math.round(o.touches[0].clientX):o.clientX,m={},v=(E,N)=>{typeof N=="number"&&(t.setColumnSizingInfo(O=>{var T,R;const A=t.options.columnResizeDirection==="rtl"?-1:1,D=(N-((T=O==null?void 0:O.startOffset)!=null?T:0))*A,k=Math.max(D/((R=O==null?void 0:O.startSize)!=null?R:0),-.999999);return O.columnSizingStart.forEach(I=>{let[P,B]=I;m[P]=Math.round(Math.max(B+B*k,0)*100)/100}),{...O,deltaOffset:D,deltaPercentage:k}}),(t.options.columnResizeMode==="onChange"||E==="end")&&t.setColumnSizing(O=>({...O,...m})))},g=E=>v("move",E),x=E=>{v("end",E),t.setColumnSizingInfo(N=>({...N,isResizingColumn:!1,startOffset:null,startSize:null,deltaOffset:null,deltaPercentage:null,columnSizingStart:[]}))},S=hle(n),w={moveHandler:E=>g(E.clientX),upHandler:E=>{S==null||S.removeEventListener("mousemove",w.moveHandler),S==null||S.removeEventListener("mouseup",w.upHandler),x(E.clientX)}},j={moveHandler:E=>(E.cancelable&&(E.preventDefault(),E.stopPropagation()),g(E.touches[0].clientX),!1),upHandler:E=>{var N;S==null||S.removeEventListener("touchmove",j.moveHandler),S==null||S.removeEventListener("touchend",j.upHandler),E.cancelable&&(E.preventDefault(),E.stopPropagation()),x((N=E.touches[0])==null?void 0:N.clientX)}},C=vle()?{passive:!1}:!1;d0(o)?(S==null||S.addEventListener("touchmove",j.moveHandler,C),S==null||S.addEventListener("touchend",j.upHandler,C)):(S==null||S.addEventListener("mousemove",w.moveHandler,C),S==null||S.addEventListener("mouseup",w.upHandler,C)),t.setColumnSizingInfo(E=>({...E,startOffset:h,startSize:u,deltaOffset:0,deltaPercentage:0,columnSizingStart:c,isResizingColumn:r.id}))}}},createTable:e=>{e.setColumnSizing=t=>e.options.onColumnSizingChange==null?void 0:e.options.onColumnSizingChange(t),e.setColumnSizingInfo=t=>e.options.onColumnSizingInfoChange==null?void 0:e.options.onColumnSizingInfoChange(t),e.resetColumnSizing=t=>{var n;e.setColumnSizing(t?{}:(n=e.initialState.columnSizing)!=null?n:{})},e.resetHeaderSizeInfo=t=>{var n;e.setColumnSizingInfo(t?f0():(n=e.initialState.columnSizingInfo)!=null?n:f0())},e.getTotalSize=()=>{var t,n;return(t=(n=e.getHeaderGroups()[0])==null?void 0:n.headers.reduce((r,l)=>r+l.getSize(),0))!=null?t:0},e.getLeftTotalSize=()=>{var t,n;return(t=(n=e.getLeftHeaderGroups()[0])==null?void 0:n.headers.reduce((r,l)=>r+l.getSize(),0))!=null?t:0},e.getCenterTotalSize=()=>{var t,n;return(t=(n=e.getCenterHeaderGroups()[0])==null?void 0:n.headers.reduce((r,l)=>r+l.getSize(),0))!=null?t:0},e.getRightTotalSize=()=>{var t,n;return(t=(n=e.getRightHeaderGroups()[0])==null?void 0:n.headers.reduce((r,l)=>r+l.getSize(),0))!=null?t:0}}};let Sm=null;function vle(){if(typeof Sm=="boolean")return Sm;let e=!1;try{const t={get passive(){return e=!0,!1}},n=()=>{};window.addEventListener("test",n,t),window.removeEventListener("test",n)}catch{e=!1}return Sm=e,Sm}function d0(e){return e.type==="touchstart"}const gle={getInitialState:e=>({columnVisibility:{},...e}),getDefaultOptions:e=>({onColumnVisibilityChange:Or("columnVisibility",e)}),createColumn:(e,t)=>{e.toggleVisibility=n=>{e.getCanHide()&&t.setColumnVisibility(r=>({...r,[e.id]:n??!e.getIsVisible()}))},e.getIsVisible=()=>{var n,r;const l=e.columns;return(n=l.length?l.some(o=>o.getIsVisible()):(r=t.getState().columnVisibility)==null?void 0:r[e.id])!=null?n:!0},e.getCanHide=()=>{var n,r;return((n=e.columnDef.enableHiding)!=null?n:!0)&&((r=t.options.enableHiding)!=null?r:!0)},e.getToggleVisibilityHandler=()=>n=>{e.toggleVisibility==null||e.toggleVisibility(n.target.checked)}},createRow:(e,t)=>{e._getAllVisibleCells=Le(()=>[e.getAllCells(),t.getState().columnVisibility],n=>n.filter(r=>r.column.getIsVisible()),Ue(t.options,"debugRows")),e.getVisibleCells=Le(()=>[e.getLeftVisibleCells(),e.getCenterVisibleCells(),e.getRightVisibleCells()],(n,r,l)=>[...n,...r,...l],Ue(t.options,"debugRows"))},createTable:e=>{const t=(n,r)=>Le(()=>[r(),r().filter(l=>l.getIsVisible()).map(l=>l.id).join("_")],l=>l.filter(o=>o.getIsVisible==null?void 0:o.getIsVisible()),Ue(e.options,"debugColumns"));e.getVisibleFlatColumns=t("getVisibleFlatColumns",()=>e.getAllFlatColumns()),e.getVisibleLeafColumns=t("getVisibleLeafColumns",()=>e.getAllLeafColumns()),e.getLeftVisibleLeafColumns=t("getLeftVisibleLeafColumns",()=>e.getLeftLeafColumns()),e.getRightVisibleLeafColumns=t("getRightVisibleLeafColumns",()=>e.getRightLeafColumns()),e.getCenterVisibleLeafColumns=t("getCenterVisibleLeafColumns",()=>e.getCenterLeafColumns()),e.setColumnVisibility=n=>e.options.onColumnVisibilityChange==null?void 0:e.options.onColumnVisibilityChange(n),e.resetColumnVisibility=n=>{var r;e.setColumnVisibility(n?{}:(r=e.initialState.columnVisibility)!=null?r:{})},e.toggleAllColumnsVisible=n=>{var r;n=(r=n)!=null?r:!e.getIsAllColumnsVisible(),e.setColumnVisibility(e.getAllLeafColumns().reduce((l,o)=>({...l,[o.id]:n||!(o.getCanHide!=null&&o.getCanHide())}),{}))},e.getIsAllColumnsVisible=()=>!e.getAllLeafColumns().some(n=>!(n.getIsVisible!=null&&n.getIsVisible())),e.getIsSomeColumnsVisible=()=>e.getAllLeafColumns().some(n=>n.getIsVisible==null?void 0:n.getIsVisible()),e.getToggleAllColumnsVisibilityHandler=()=>n=>{var r;e.toggleAllColumnsVisible((r=n.target)==null?void 0:r.checked)}}};function Af(e,t){return t?t==="center"?e.getCenterVisibleLeafColumns():t==="left"?e.getLeftVisibleLeafColumns():e.getRightVisibleLeafColumns():e.getVisibleLeafColumns()}const ple={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()}}},yle={getInitialState:e=>({globalFilter:void 0,...e}),getDefaultOptions:e=>({onGlobalFilterChange:Or("globalFilter",e),globalFilterFn:"auto",getColumnCanGlobalFilter:t=>{var n;const r=(n=e.getCoreRowModel().flatRows[0])==null||(n=n._getAllCellsByColumnId()[t.id])==null?void 0:n.getValue();return typeof r=="string"||typeof r=="number"}}),createColumn:(e,t)=>{e.getCanGlobalFilter=()=>{var n,r,l,o;return((n=e.columnDef.enableGlobalFilter)!=null?n:!0)&&((r=t.options.enableGlobalFilter)!=null?r:!0)&&((l=t.options.enableFilters)!=null?l:!0)&&((o=t.options.getColumnCanGlobalFilter==null?void 0:t.options.getColumnCanGlobalFilter(e))!=null?o:!0)&&!!e.accessorFn}},createTable:e=>{e.getGlobalAutoFilterFn=()=>ca.includesString,e.getGlobalFilterFn=()=>{var t,n;const{globalFilterFn:r}=e.options;return Eg(r)?r:r==="auto"?e.getGlobalAutoFilterFn():(t=(n=e.options.filterFns)==null?void 0:n[r])!=null?t:ca[r]},e.setGlobalFilter=t=>{e.options.onGlobalFilterChange==null||e.options.onGlobalFilterChange(t)},e.resetGlobalFilter=t=>{e.setGlobalFilter(t?void 0:e.initialState.globalFilter)}}},xle={getInitialState:e=>({expanded:{},...e}),getDefaultOptions:e=>({onExpandedChange:Or("expanded",e),paginateExpandedRows:!0}),createTable:e=>{let t=!1,n=!1;e._autoResetExpanded=()=>{var r,l;if(!t){e._queue(()=>{t=!0});return}if((r=(l=e.options.autoResetAll)!=null?l:e.options.autoResetExpanded)!=null?r:!e.options.manualExpanding){if(n)return;n=!0,e._queue(()=>{e.resetExpanded(),n=!1})}},e.setExpanded=r=>e.options.onExpandedChange==null?void 0:e.options.onExpandedChange(r),e.toggleAllRowsExpanded=r=>{r??!e.getIsAllRowsExpanded()?e.setExpanded(!0):e.setExpanded({})},e.resetExpanded=r=>{var l,o;e.setExpanded(r?{}:(l=(o=e.initialState)==null?void 0:o.expanded)!=null?l:{})},e.getCanSomeRowsExpand=()=>e.getPrePaginationRowModel().flatRows.some(r=>r.getCanExpand()),e.getToggleAllRowsExpandedHandler=()=>r=>{r.persist==null||r.persist(),e.toggleAllRowsExpanded()},e.getIsSomeRowsExpanded=()=>{const r=e.getState().expanded;return r===!0||Object.values(r).some(Boolean)},e.getIsAllRowsExpanded=()=>{const r=e.getState().expanded;return typeof r=="boolean"?r===!0:!(!Object.keys(r).length||e.getRowModel().flatRows.some(l=>!l.getIsExpanded()))},e.getExpandedDepth=()=>{let r=0;return(e.getState().expanded===!0?Object.keys(e.getRowModel().rowsById):Object.keys(e.getState().expanded)).forEach(o=>{const u=o.split(".");r=Math.max(r,u.length)}),r},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,t)=>{e.toggleExpanded=n=>{t.setExpanded(r=>{var l;const o=r===!0?!0:!!(r!=null&&r[e.id]);let u={};if(r===!0?Object.keys(t.getRowModel().rowsById).forEach(c=>{u[c]=!0}):u=r,n=(l=n)!=null?l:!o,!o&&n)return{...u,[e.id]:!0};if(o&&!n){const{[e.id]:c,...h}=u;return h}return r})},e.getIsExpanded=()=>{var n;const r=t.getState().expanded;return!!((n=t.options.getIsRowExpanded==null?void 0:t.options.getIsRowExpanded(e))!=null?n:r===!0||r!=null&&r[e.id])},e.getCanExpand=()=>{var n,r,l;return(n=t.options.getRowCanExpand==null?void 0:t.options.getRowCanExpand(e))!=null?n:((r=t.options.enableExpanding)!=null?r:!0)&&!!((l=e.subRows)!=null&&l.length)},e.getIsAllParentsExpanded=()=>{let n=!0,r=e;for(;n&&r.parentId;)r=t.getRow(r.parentId,!0),n=r.getIsExpanded();return n},e.getToggleExpandedHandler=()=>{const n=e.getCanExpand();return()=>{n&&e.toggleExpanded()}}}},Lb=0,Ub=10,h0=()=>({pageIndex:Lb,pageSize:Ub}),ble={getInitialState:e=>({...e,pagination:{...h0(),...e==null?void 0:e.pagination}}),getDefaultOptions:e=>({onPaginationChange:Or("pagination",e)}),createTable:e=>{let t=!1,n=!1;e._autoResetPageIndex=()=>{var r,l;if(!t){e._queue(()=>{t=!0});return}if((r=(l=e.options.autoResetAll)!=null?l:e.options.autoResetPageIndex)!=null?r:!e.options.manualPagination){if(n)return;n=!0,e._queue(()=>{e.resetPageIndex(),n=!1})}},e.setPagination=r=>{const l=o=>Nl(r,o);return e.options.onPaginationChange==null?void 0:e.options.onPaginationChange(l)},e.resetPagination=r=>{var l;e.setPagination(r?h0():(l=e.initialState.pagination)!=null?l:h0())},e.setPageIndex=r=>{e.setPagination(l=>{let o=Nl(r,l.pageIndex);const u=typeof e.options.pageCount>"u"||e.options.pageCount===-1?Number.MAX_SAFE_INTEGER:e.options.pageCount-1;return o=Math.max(0,Math.min(o,u)),{...l,pageIndex:o}})},e.resetPageIndex=r=>{var l,o;e.setPageIndex(r?Lb:(l=(o=e.initialState)==null||(o=o.pagination)==null?void 0:o.pageIndex)!=null?l:Lb)},e.resetPageSize=r=>{var l,o;e.setPageSize(r?Ub:(l=(o=e.initialState)==null||(o=o.pagination)==null?void 0:o.pageSize)!=null?l:Ub)},e.setPageSize=r=>{e.setPagination(l=>{const o=Math.max(1,Nl(r,l.pageSize)),u=l.pageSize*l.pageIndex,c=Math.floor(u/o);return{...l,pageIndex:c,pageSize:o}})},e.setPageCount=r=>e.setPagination(l=>{var o;let u=Nl(r,(o=e.options.pageCount)!=null?o:-1);return typeof u=="number"&&(u=Math.max(-1,u)),{...l,pageCount:u}}),e.getPageOptions=Le(()=>[e.getPageCount()],r=>{let l=[];return r&&r>0&&(l=[...new Array(r)].fill(null).map((o,u)=>u)),l},Ue(e.options,"debugTable")),e.getCanPreviousPage=()=>e.getState().pagination.pageIndex>0,e.getCanNextPage=()=>{const{pageIndex:r}=e.getState().pagination,l=e.getPageCount();return l===-1?!0:l===0?!1:re.setPageIndex(r=>r-1),e.nextPage=()=>e.setPageIndex(r=>r+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 r;return(r=e.options.pageCount)!=null?r:Math.ceil(e.getRowCount()/e.getState().pagination.pageSize)},e.getRowCount=()=>{var r;return(r=e.options.rowCount)!=null?r:e.getPrePaginationRowModel().rows.length}}},m0=()=>({top:[],bottom:[]}),Sle={getInitialState:e=>({rowPinning:m0(),...e}),getDefaultOptions:e=>({onRowPinningChange:Or("rowPinning",e)}),createRow:(e,t)=>{e.pin=(n,r,l)=>{const o=r?e.getLeafRows().map(h=>{let{id:m}=h;return m}):[],u=l?e.getParentRows().map(h=>{let{id:m}=h;return m}):[],c=new Set([...u,e.id,...o]);t.setRowPinning(h=>{var m,v;if(n==="bottom"){var g,x;return{top:((g=h==null?void 0:h.top)!=null?g:[]).filter(j=>!(c!=null&&c.has(j))),bottom:[...((x=h==null?void 0:h.bottom)!=null?x:[]).filter(j=>!(c!=null&&c.has(j))),...Array.from(c)]}}if(n==="top"){var S,w;return{top:[...((S=h==null?void 0:h.top)!=null?S:[]).filter(j=>!(c!=null&&c.has(j))),...Array.from(c)],bottom:((w=h==null?void 0:h.bottom)!=null?w:[]).filter(j=>!(c!=null&&c.has(j)))}}return{top:((m=h==null?void 0:h.top)!=null?m:[]).filter(j=>!(c!=null&&c.has(j))),bottom:((v=h==null?void 0:h.bottom)!=null?v:[]).filter(j=>!(c!=null&&c.has(j)))}})},e.getCanPin=()=>{var n;const{enableRowPinning:r,enablePinning:l}=t.options;return typeof r=="function"?r(e):(n=r??l)!=null?n:!0},e.getIsPinned=()=>{const n=[e.id],{top:r,bottom:l}=t.getState().rowPinning,o=n.some(c=>r==null?void 0:r.includes(c)),u=n.some(c=>l==null?void 0:l.includes(c));return o?"top":u?"bottom":!1},e.getPinnedIndex=()=>{var n,r;const l=e.getIsPinned();if(!l)return-1;const o=(n=l==="top"?t.getTopRows():t.getBottomRows())==null?void 0:n.map(u=>{let{id:c}=u;return c});return(r=o==null?void 0:o.indexOf(e.id))!=null?r:-1}},createTable:e=>{e.setRowPinning=t=>e.options.onRowPinningChange==null?void 0:e.options.onRowPinningChange(t),e.resetRowPinning=t=>{var n,r;return e.setRowPinning(t?m0():(n=(r=e.initialState)==null?void 0:r.rowPinning)!=null?n:m0())},e.getIsSomeRowsPinned=t=>{var n;const r=e.getState().rowPinning;if(!t){var l,o;return!!((l=r.top)!=null&&l.length||(o=r.bottom)!=null&&o.length)}return!!((n=r[t])!=null&&n.length)},e._getPinnedRows=(t,n,r)=>{var l;return((l=e.options.keepPinnedRows)==null||l?(n??[]).map(u=>{const c=e.getRow(u,!0);return c.getIsAllParentsExpanded()?c:null}):(n??[]).map(u=>t.find(c=>c.id===u))).filter(Boolean).map(u=>({...u,position:r}))},e.getTopRows=Le(()=>[e.getRowModel().rows,e.getState().rowPinning.top],(t,n)=>e._getPinnedRows(t,n,"top"),Ue(e.options,"debugRows")),e.getBottomRows=Le(()=>[e.getRowModel().rows,e.getState().rowPinning.bottom],(t,n)=>e._getPinnedRows(t,n,"bottom"),Ue(e.options,"debugRows")),e.getCenterRows=Le(()=>[e.getRowModel().rows,e.getState().rowPinning.top,e.getState().rowPinning.bottom],(t,n,r)=>{const l=new Set([...n??[],...r??[]]);return t.filter(o=>!l.has(o.id))},Ue(e.options,"debugRows"))}},wle={getInitialState:e=>({rowSelection:{},...e}),getDefaultOptions:e=>({onRowSelectionChange:Or("rowSelection",e),enableRowSelection:!0,enableMultiRowSelection:!0,enableSubRowSelection:!0}),createTable:e=>{e.setRowSelection=t=>e.options.onRowSelectionChange==null?void 0:e.options.onRowSelectionChange(t),e.resetRowSelection=t=>{var n;return e.setRowSelection(t?{}:(n=e.initialState.rowSelection)!=null?n:{})},e.toggleAllRowsSelected=t=>{e.setRowSelection(n=>{t=typeof t<"u"?t:!e.getIsAllRowsSelected();const r={...n},l=e.getPreGroupedRowModel().flatRows;return t?l.forEach(o=>{o.getCanSelect()&&(r[o.id]=!0)}):l.forEach(o=>{delete r[o.id]}),r})},e.toggleAllPageRowsSelected=t=>e.setRowSelection(n=>{const r=typeof t<"u"?t:!e.getIsAllPageRowsSelected(),l={...n};return e.getRowModel().rows.forEach(o=>{$b(l,o.id,r,!0,e)}),l}),e.getPreSelectedRowModel=()=>e.getCoreRowModel(),e.getSelectedRowModel=Le(()=>[e.getState().rowSelection,e.getCoreRowModel()],(t,n)=>Object.keys(t).length?v0(e,n):{rows:[],flatRows:[],rowsById:{}},Ue(e.options,"debugTable")),e.getFilteredSelectedRowModel=Le(()=>[e.getState().rowSelection,e.getFilteredRowModel()],(t,n)=>Object.keys(t).length?v0(e,n):{rows:[],flatRows:[],rowsById:{}},Ue(e.options,"debugTable")),e.getGroupedSelectedRowModel=Le(()=>[e.getState().rowSelection,e.getSortedRowModel()],(t,n)=>Object.keys(t).length?v0(e,n):{rows:[],flatRows:[],rowsById:{}},Ue(e.options,"debugTable")),e.getIsAllRowsSelected=()=>{const t=e.getFilteredRowModel().flatRows,{rowSelection:n}=e.getState();let r=!!(t.length&&Object.keys(n).length);return r&&t.some(l=>l.getCanSelect()&&!n[l.id])&&(r=!1),r},e.getIsAllPageRowsSelected=()=>{const t=e.getPaginationRowModel().flatRows.filter(l=>l.getCanSelect()),{rowSelection:n}=e.getState();let r=!!t.length;return r&&t.some(l=>!n[l.id])&&(r=!1),r},e.getIsSomeRowsSelected=()=>{var t;const n=Object.keys((t=e.getState().rowSelection)!=null?t:{}).length;return n>0&&n{const t=e.getPaginationRowModel().flatRows;return e.getIsAllPageRowsSelected()?!1:t.filter(n=>n.getCanSelect()).some(n=>n.getIsSelected()||n.getIsSomeSelected())},e.getToggleAllRowsSelectedHandler=()=>t=>{e.toggleAllRowsSelected(t.target.checked)},e.getToggleAllPageRowsSelectedHandler=()=>t=>{e.toggleAllPageRowsSelected(t.target.checked)}},createRow:(e,t)=>{e.toggleSelected=(n,r)=>{const l=e.getIsSelected();t.setRowSelection(o=>{var u;if(n=typeof n<"u"?n:!l,e.getCanSelect()&&l===n)return o;const c={...o};return $b(c,e.id,n,(u=r==null?void 0:r.selectChildren)!=null?u:!0,t),c})},e.getIsSelected=()=>{const{rowSelection:n}=t.getState();return yw(e,n)},e.getIsSomeSelected=()=>{const{rowSelection:n}=t.getState();return Bb(e,n)==="some"},e.getIsAllSubRowsSelected=()=>{const{rowSelection:n}=t.getState();return Bb(e,n)==="all"},e.getCanSelect=()=>{var n;return typeof t.options.enableRowSelection=="function"?t.options.enableRowSelection(e):(n=t.options.enableRowSelection)!=null?n:!0},e.getCanSelectSubRows=()=>{var n;return typeof t.options.enableSubRowSelection=="function"?t.options.enableSubRowSelection(e):(n=t.options.enableSubRowSelection)!=null?n:!0},e.getCanMultiSelect=()=>{var n;return typeof t.options.enableMultiRowSelection=="function"?t.options.enableMultiRowSelection(e):(n=t.options.enableMultiRowSelection)!=null?n:!0},e.getToggleSelectedHandler=()=>{const n=e.getCanSelect();return r=>{var l;n&&e.toggleSelected((l=r.target)==null?void 0:l.checked)}}}},$b=(e,t,n,r,l)=>{var o;const u=l.getRow(t,!0);n?(u.getCanMultiSelect()||Object.keys(e).forEach(c=>delete e[c]),u.getCanSelect()&&(e[t]=!0)):delete e[t],r&&(o=u.subRows)!=null&&o.length&&u.getCanSelectSubRows()&&u.subRows.forEach(c=>$b(e,c.id,n,r,l))};function v0(e,t){const n=e.getState().rowSelection,r=[],l={},o=function(u,c){return u.map(h=>{var m;const v=yw(h,n);if(v&&(r.push(h),l[h.id]=h),(m=h.subRows)!=null&&m.length&&(h={...h,subRows:o(h.subRows)}),v)return h}).filter(Boolean)};return{rows:o(t.rows),flatRows:r,rowsById:l}}function yw(e,t){var n;return(n=t[e.id])!=null?n:!1}function Bb(e,t,n){var r;if(!((r=e.subRows)!=null&&r.length))return!1;let l=!0,o=!1;return e.subRows.forEach(u=>{if(!(o&&!l)&&(u.getCanSelect()&&(yw(u,t)?o=!0:l=!1),u.subRows&&u.subRows.length)){const c=Bb(u,t);c==="all"?o=!0:(c==="some"&&(o=!0),l=!1)}}),l?"all":o?"some":!1}const Hb=/([0-9]+)/gm,jle=(e,t,n)=>zz(Il(e.getValue(n)).toLowerCase(),Il(t.getValue(n)).toLowerCase()),Cle=(e,t,n)=>zz(Il(e.getValue(n)),Il(t.getValue(n))),_le=(e,t,n)=>xw(Il(e.getValue(n)).toLowerCase(),Il(t.getValue(n)).toLowerCase()),Ele=(e,t,n)=>xw(Il(e.getValue(n)),Il(t.getValue(n))),Ale=(e,t,n)=>{const r=e.getValue(n),l=t.getValue(n);return r>l?1:rxw(e.getValue(n),t.getValue(n));function xw(e,t){return e===t?0:e>t?1:-1}function Il(e){return typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?"":String(e):typeof e=="string"?e:""}function zz(e,t){const n=e.split(Hb).filter(Boolean),r=t.split(Hb).filter(Boolean);for(;n.length&&r.length;){const l=n.shift(),o=r.shift(),u=parseInt(l,10),c=parseInt(o,10),h=[u,c].sort();if(isNaN(h[0])){if(l>o)return 1;if(o>l)return-1;continue}if(isNaN(h[1]))return isNaN(u)?-1:1;if(u>c)return 1;if(c>u)return-1}return n.length-r.length}const vf={alphanumeric:jle,alphanumericCaseSensitive:Cle,text:_le,textCaseSensitive:Ele,datetime:Ale,basic:Ole},Nle={getInitialState:e=>({sorting:[],...e}),getDefaultColumnDef:()=>({sortingFn:"auto",sortUndefined:1}),getDefaultOptions:e=>({onSortingChange:Or("sorting",e),isMultiSortEvent:t=>t.shiftKey}),createColumn:(e,t)=>{e.getAutoSortingFn=()=>{const n=t.getFilteredRowModel().flatRows.slice(10);let r=!1;for(const l of n){const o=l==null?void 0:l.getValue(e.id);if(Object.prototype.toString.call(o)==="[object Date]")return vf.datetime;if(typeof o=="string"&&(r=!0,o.split(Hb).length>1))return vf.alphanumeric}return r?vf.text:vf.basic},e.getAutoSortDir=()=>{const n=t.getFilteredRowModel().flatRows[0];return typeof(n==null?void 0:n.getValue(e.id))=="string"?"asc":"desc"},e.getSortingFn=()=>{var n,r;if(!e)throw new Error;return Eg(e.columnDef.sortingFn)?e.columnDef.sortingFn:e.columnDef.sortingFn==="auto"?e.getAutoSortingFn():(n=(r=t.options.sortingFns)==null?void 0:r[e.columnDef.sortingFn])!=null?n:vf[e.columnDef.sortingFn]},e.toggleSorting=(n,r)=>{const l=e.getNextSortingOrder(),o=typeof n<"u"&&n!==null;t.setSorting(u=>{const c=u==null?void 0:u.find(S=>S.id===e.id),h=u==null?void 0:u.findIndex(S=>S.id===e.id);let m=[],v,g=o?n:l==="desc";if(u!=null&&u.length&&e.getCanMultiSort()&&r?c?v="toggle":v="add":u!=null&&u.length&&h!==u.length-1?v="replace":c?v="toggle":v="replace",v==="toggle"&&(o||l||(v="remove")),v==="add"){var x;m=[...u,{id:e.id,desc:g}],m.splice(0,m.length-((x=t.options.maxMultiSortColCount)!=null?x:Number.MAX_SAFE_INTEGER))}else v==="toggle"?m=u.map(S=>S.id===e.id?{...S,desc:g}:S):v==="remove"?m=u.filter(S=>S.id!==e.id):m=[{id:e.id,desc:g}];return m})},e.getFirstSortDir=()=>{var n,r;return((n=(r=e.columnDef.sortDescFirst)!=null?r:t.options.sortDescFirst)!=null?n:e.getAutoSortDir()==="desc")?"desc":"asc"},e.getNextSortingOrder=n=>{var r,l;const o=e.getFirstSortDir(),u=e.getIsSorted();return u?u!==o&&((r=t.options.enableSortingRemoval)==null||r)&&(!(n&&(l=t.options.enableMultiRemove)!=null)||l)?!1:u==="desc"?"asc":"desc":o},e.getCanSort=()=>{var n,r;return((n=e.columnDef.enableSorting)!=null?n:!0)&&((r=t.options.enableSorting)!=null?r:!0)&&!!e.accessorFn},e.getCanMultiSort=()=>{var n,r;return(n=(r=e.columnDef.enableMultiSort)!=null?r:t.options.enableMultiSort)!=null?n:!!e.accessorFn},e.getIsSorted=()=>{var n;const r=(n=t.getState().sorting)==null?void 0:n.find(l=>l.id===e.id);return r?r.desc?"desc":"asc":!1},e.getSortIndex=()=>{var n,r;return(n=(r=t.getState().sorting)==null?void 0:r.findIndex(l=>l.id===e.id))!=null?n:-1},e.clearSorting=()=>{t.setSorting(n=>n!=null&&n.length?n.filter(r=>r.id!==e.id):[])},e.getToggleSortingHandler=()=>{const n=e.getCanSort();return r=>{n&&(r.persist==null||r.persist(),e.toggleSorting==null||e.toggleSorting(void 0,e.getCanMultiSort()?t.options.isMultiSortEvent==null?void 0:t.options.isMultiSortEvent(r):!1))}}},createTable:e=>{e.setSorting=t=>e.options.onSortingChange==null?void 0:e.options.onSortingChange(t),e.resetSorting=t=>{var n,r;e.setSorting(t?[]:(n=(r=e.initialState)==null?void 0:r.sorting)!=null?n:[])},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())}},Tle=[Zae,gle,fle,dle,Wae,Jae,ple,yle,Nle,ule,xle,ble,Sle,wle,mle];function Rle(e){var t,n;const r=[...Tle,...(t=e._features)!=null?t:[]];let l={_features:r};const o=l._features.reduce((x,S)=>Object.assign(x,S.getDefaultOptions==null?void 0:S.getDefaultOptions(l)),{}),u=x=>l.options.mergeOptions?l.options.mergeOptions(o,x):{...o,...x};let h={...{},...(n=e.initialState)!=null?n:{}};l._features.forEach(x=>{var S;h=(S=x.getInitialState==null?void 0:x.getInitialState(h))!=null?S:h});const m=[];let v=!1;const g={_features:r,options:{...o,...e},initialState:h,_queue:x=>{m.push(x),v||(v=!0,Promise.resolve().then(()=>{for(;m.length;)m.shift()();v=!1}).catch(S=>setTimeout(()=>{throw S})))},reset:()=>{l.setState(l.initialState)},setOptions:x=>{const S=Nl(x,l.options);l.options=u(S)},getState:()=>l.options.state,setState:x=>{l.options.onStateChange==null||l.options.onStateChange(x)},_getRowId:(x,S,w)=>{var j;return(j=l.options.getRowId==null?void 0:l.options.getRowId(x,S,w))!=null?j:`${w?[w.id,S].join("."):S}`},getCoreRowModel:()=>(l._getCoreRowModel||(l._getCoreRowModel=l.options.getCoreRowModel(l)),l._getCoreRowModel()),getRowModel:()=>l.getPaginationRowModel(),getRow:(x,S)=>{let w=(S?l.getPrePaginationRowModel():l.getRowModel()).rowsById[x];if(!w&&(w=l.getCoreRowModel().rowsById[x],!w))throw new Error;return w},_getDefaultColumnDef:Le(()=>[l.options.defaultColumn],x=>{var S;return x=(S=x)!=null?S:{},{header:w=>{const j=w.header.column.columnDef;return j.accessorKey?j.accessorKey:j.accessorFn?j.id:null},cell:w=>{var j,C;return(j=(C=w.renderValue())==null||C.toString==null?void 0:C.toString())!=null?j:null},...l._features.reduce((w,j)=>Object.assign(w,j.getDefaultColumnDef==null?void 0:j.getDefaultColumnDef()),{}),...x}},Ue(e,"debugColumns")),_getColumnDefs:()=>l.options.columns,getAllColumns:Le(()=>[l._getColumnDefs()],x=>{const S=function(w,j,C){return C===void 0&&(C=0),w.map(E=>{const N=Qae(l,E,C,j),O=E;return N.columns=O.columns?S(O.columns,N,C+1):[],N})};return S(x)},Ue(e,"debugColumns")),getAllFlatColumns:Le(()=>[l.getAllColumns()],x=>x.flatMap(S=>S.getFlatColumns()),Ue(e,"debugColumns")),_getAllFlatColumnsById:Le(()=>[l.getAllFlatColumns()],x=>x.reduce((S,w)=>(S[w.id]=w,S),{}),Ue(e,"debugColumns")),getAllLeafColumns:Le(()=>[l.getAllColumns(),l._getOrderColumnsFn()],(x,S)=>{let w=x.flatMap(j=>j.getLeafColumns());return S(w)},Ue(e,"debugColumns")),getColumn:x=>l._getAllFlatColumnsById()[x]};Object.assign(l,g);for(let x=0;xLe(()=>[e.options.data],t=>{const n={rows:[],flatRows:[],rowsById:{}},r=function(l,o,u){o===void 0&&(o=0);const c=[];for(let m=0;me._autoResetPageIndex()))}function Dle(e,t,n){return n.options.filterFromLeafRows?Ple(e,t,n):kle(e,t,n)}function Ple(e,t,n){var r;const l=[],o={},u=(r=n.options.maxLeafRowFilterDepth)!=null?r:100,c=function(h,m){m===void 0&&(m=0);const v=[];for(let x=0;xLe(()=>[e.getPreFilteredRowModel(),e.getState().columnFilters,e.getState().globalFilter],(t,n,r)=>{if(!t.rows.length||!(n!=null&&n.length)&&!r){for(let x=0;x{var S;const w=e.getColumn(x.id);if(!w)return;const j=w.getFilterFn();j&&l.push({id:x.id,filterFn:j,resolvedValue:(S=j.resolveFilterValue==null?void 0:j.resolveFilterValue(x.value))!=null?S:x.value})});const u=(n??[]).map(x=>x.id),c=e.getGlobalFilterFn(),h=e.getAllLeafColumns().filter(x=>x.getCanGlobalFilter());r&&c&&h.length&&(u.push("__global__"),h.forEach(x=>{var S;o.push({id:x.id,filterFn:c,resolvedValue:(S=c.resolveFilterValue==null?void 0:c.resolveFilterValue(r))!=null?S:r})}));let m,v;for(let x=0;x{S.columnFiltersMeta[j]=C})}if(o.length){for(let w=0;w{S.columnFiltersMeta[j]=C})){S.columnFilters.__global__=!0;break}}S.columnFilters.__global__!==!0&&(S.columnFilters.__global__=!1)}}const g=x=>{for(let S=0;Se._autoResetPageIndex()))}function zle(){return e=>Le(()=>[e.getState().sorting,e.getPreSortedRowModel()],(t,n)=>{if(!n.rows.length||!(t!=null&&t.length))return n;const r=e.getState().sorting,l=[],o=r.filter(h=>{var m;return(m=e.getColumn(h.id))==null?void 0:m.getCanSort()}),u={};o.forEach(h=>{const m=e.getColumn(h.id);m&&(u[h.id]={sortUndefined:m.columnDef.sortUndefined,invertSorting:m.columnDef.invertSorting,sortingFn:m.getSortingFn()})});const c=h=>{const m=h.map(v=>({...v}));return m.sort((v,g)=>{for(let S=0;S{var g;l.push(v),(g=v.subRows)!=null&&g.length&&(v.subRows=c(v.subRows))}),m};return{rows:c(n.rows),flatRows:l,rowsById:n.rowsById}},Ue(e.options,"debugTable","getSortedRowModel",()=>e._autoResetPageIndex()))}/** * react-table * * Copyright (c) TanStack @@ -195,10 +207,9 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho * LICENSE.md file in the root directory of this source tree. * * @license MIT - */function qT(e,t){return e?Ale(e)?b.createElement(e,t):e:null}function Ale(e){return Ele(e)||typeof e=="function"||Ole(e)}function Ele(e){return typeof e=="function"&&(()=>{const t=Object.getPrototypeOf(e);return t.prototype&&t.prototype.isReactComponent})()}function Ole(e){return typeof e=="object"&&typeof e.$$typeof=="symbol"&&["react.memo","react.forward_ref"].includes(e.$$typeof.description)}function Nle(e){const t={state:{},onStateChange:()=>{},renderFallbackValue:null,...e},[n]=b.useState(()=>({current:xle(t)})),[r,l]=b.useState(()=>n.current.initialState);return n.current.setOptions(o=>({...o,...e,state:{...r,...e.state},onStateChange:u=>{l(u),e.onStateChange==null||e.onStateChange(u)}})),n.current}function Tle(e,t){const n=t.map(o=>o.map(u=>'"'+String(u??"").replace(/"/g,'""')+'"').join(",")).join(` -`),r=new Blob(["\uFEFF"+n],{type:"text/csv;charset=utf-8"}),l=document.createElement("a");l.href=URL.createObjectURL(r),l.download=e,l.click(),URL.revokeObjectURL(l.href)}function Dz({name:e,rows:t,columns:n,search:r,bulk:l,onRow:o}){const[u,c]=b.useState([]),[h,m]=b.useState(""),[v,p]=b.useState({}),[x,S]=b.useState({}),[w,j]=b.useState(!1),C=r&&h.trim()?t.filter(T=>r(T,h.trim().toLowerCase())):t,A=Nle({data:C,columns:n,state:{sorting:u,columnVisibility:v,rowSelection:x},onSortingChange:c,onColumnVisibilityChange:p,onRowSelectionChange:S,enableRowSelection:!0,getCoreRowModel:ble(),getSortedRowModel:_le(),getFilteredRowModel:Cle(),getRowId:(T,R)=>String(T.id||R)}),N=A.getSelectedRowModel().rows.map(T=>T.original);function O(T){const R=A.getVisibleLeafColumns(),E=R.map(k=>String(k.columnDef.header||k.id)),D=T.map(k=>R.map(I=>{const P=I.accessorFn?I.accessorFn(k,0):"";return P==null?"":String(P)}));Tle(e+".csv",[E].concat(D))}return f.jsxs("div",{className:"space-y-2",children:[f.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[f.jsx($e,{value:h,onChange:T=>m(T.target.value),placeholder:"Фильтр",className:"max-w-xs"}),f.jsx(he,{variant:"secondary",onClick:()=>j(T=>!T),children:"Столбцы"}),f.jsx(he,{variant:"secondary",onClick:()=>O(N.length?N:C),children:"CSV"}),(l||[]).map(T=>f.jsx(he,{variant:"secondary",disabled:!N.length,onClick:()=>T.run(N),children:T.label},T.label)),f.jsx("span",{className:"text-xs text-muted-foreground",children:C.length})]}),w?f.jsx("div",{className:"flex flex-wrap gap-3 text-sm",children:A.getAllLeafColumns().map(T=>f.jsxs("label",{className:"flex items-center gap-1",children:[f.jsx("input",{type:"checkbox",checked:T.getIsVisible(),onChange:()=>T.toggleVisibility()}),String(T.columnDef.header||T.id)]},T.id))}):null,f.jsx("div",{className:"overflow-x-auto rounded-md border border-border",children:f.jsxs("table",{className:"w-full text-sm",children:[f.jsx("thead",{className:"bg-card",children:A.getHeaderGroups().map(T=>f.jsxs("tr",{children:[f.jsx("th",{className:"w-8 px-2 py-2",children:f.jsx("input",{type:"checkbox",checked:A.getIsAllRowsSelected(),onChange:A.getToggleAllRowsSelectedHandler(),"aria-label":"Выбрать все"})}),T.headers.map(R=>f.jsx("th",{className:"px-2 py-2 text-left font-medium text-muted-foreground",children:R.isPlaceholder?null:f.jsxs("button",{type:"button",className:"inline-flex items-center gap-1",onClick:R.column.getToggleSortingHandler(),children:[qT(R.column.columnDef.header,R.getContext()),R.column.getIsSorted()==="asc"?" ↑":R.column.getIsSorted()==="desc"?" ↓":""]})},R.id))]},T.id))}),f.jsxs("tbody",{children:[A.getRowModel().rows.map(T=>f.jsxs("tr",{className:"cursor-pointer border-t border-border hover:bg-secondary",onClick:()=>o&&o(T.original),children:[f.jsx("td",{className:"px-2 py-1",onClick:R=>R.stopPropagation(),children:f.jsx("input",{type:"checkbox",checked:T.getIsSelected(),onChange:T.getToggleSelectedHandler(),"aria-label":"Выбрать строку"})}),T.getVisibleCells().map(R=>f.jsx("td",{className:"px-2 py-1 align-top",children:qT(R.column.columnDef.cell,R.getContext())},R.id))]},T.id)),A.getRowModel().rows.length===0?f.jsx("tr",{children:f.jsx("td",{className:"px-2 py-4 text-muted-foreground",colSpan:n.length+1,children:"Пусто"})}):null]})]})})]})}function KT({rows:e}){const t=e||[];return t.length?f.jsx("div",{className:"h-16 w-full",children:f.jsx(kP,{width:"100%",height:"100%",children:f.jsxs(jz,{data:t,children:[f.jsx(aw,{stroke:"#31342C",vertical:!1}),f.jsx(cw,{dataKey:"t",hide:!0}),f.jsx(fw,{hide:!0}),f.jsx(O3,{contentStyle:{background:"#181A15",border:"1px solid #31342C",color:"#F2F2E9"}}),f.jsx(uw,{type:"monotone",dataKey:"v",stroke:"#F9C400",dot:!1,strokeWidth:1.5})]})})}):f.jsx("div",{className:"text-xs text-muted-foreground",children:"Нет точек"})}function Pz({title:e,onClose:t,children:n}){return f.jsx("div",{className:"fixed inset-0 z-40 flex justify-end bg-black/50",onClick:t,children:f.jsxs("aside",{className:"h-full w-full max-w-md overflow-auto border-l border-border bg-card p-4",onClick:r=>r.stopPropagation(),children:[f.jsxs("div",{className:"mb-3 flex items-center justify-between",children:[f.jsx("h2",{className:"text-lg font-semibold",children:e}),f.jsx(he,{variant:"secondary",onClick:t,children:"Закрыть"})]}),n]})})}function Rle({data:e,csrf:t}){const n=(e==null?void 0:e.health)||[];return f.jsxs("div",{className:"space-y-3",children:[f.jsxs("div",{className:"grid grid-cols-2 gap-2 lg:grid-cols-4",children:[f.jsx(ye,{children:f.jsxs(xe,{className:"pt-4",children:[f.jsx("div",{className:"text-2xl font-semibold",children:(e==null?void 0:e.online)??"-"}),f.jsx("div",{className:"text-xs text-muted-foreground",children:"устройств онлайн"})]})}),f.jsx(ye,{children:f.jsxs(xe,{className:"pt-4",children:[f.jsx("div",{className:"text-2xl font-semibold",children:(e==null?void 0:e.errors)??"-"}),f.jsx("div",{className:"text-xs text-muted-foreground",children:"ошибок за 24 ч"})]})}),f.jsx(ye,{children:f.jsxs(xe,{className:"pt-4",children:[f.jsx("div",{className:"text-xs text-muted-foreground",children:"оплаты, 24 ч"}),f.jsx(KT,{rows:e==null?void 0:e.spark24})]})}),f.jsx(ye,{children:f.jsxs(xe,{className:"pt-4",children:[f.jsx("div",{className:"text-xs text-muted-foreground",children:"оплаты, 7 дн."}),f.jsx(KT,{rows:e==null?void 0:e.spark7})]})})]}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Сервисы"})}),f.jsxs(xe,{className:"grid gap-2 md:grid-cols-2",children:[n.map(r=>f.jsxs("div",{className:"flex items-center justify-between rounded-md border border-border px-3 py-2",children:[f.jsxs("div",{children:[f.jsx("div",{className:"font-medium",children:r.name}),f.jsxs("div",{className:"font-mono text-xs text-muted-foreground",children:[r.latencyMs," мс · успех ",r.success==null?"-":r.success+"%",r.lastError?" · "+r.lastError:""]})]}),f.jsx(Oe,{variant:r.ok?"ok":r.ok===!1?"bad":"warn",children:r.ok?"ок":r.ok===!1?"нет":"-"})]},r.name)),f.jsx(he,{variant:"secondary",onClick:()=>void Qt("/admin/api/sources/check",t,{}).then(r=>{var l;return ft(r.ok?"Проверено":((l=r.flash)==null?void 0:l.error)||"Не вышло")}),children:"Проверить источники"})]})]})]})}function Mle({users:e,go:t}){const[n,r]=b.useState(null);return f.jsxs(f.Fragment,{children:[f.jsx(Dz,{name:"omp-users-view",rows:e,search:(l,o)=>(l.who+" "+l.telegramId+" "+l.email+" "+l.id).toLowerCase().indexOf(o)>=0,onRow:r,bulk:[{label:"Открыть первого",run:l=>l[0]&&t(l[0].id)}],columns:[{accessorKey:"who",header:"Кто"},{accessorKey:"telegramId",header:"Telegram",cell:({getValue:l})=>f.jsx("span",{className:"font-mono text-xs",children:String(l()||"-")})},{accessorKey:"email",header:"Почта"},{accessorKey:"active",header:"Подписка",cell:({getValue:l})=>l()?"активна":"нет"}]}),n?f.jsxs(Pz,{title:n.who,onClose:()=>r(null),children:[f.jsx("p",{className:"font-mono text-xs text-muted-foreground",children:n.id}),f.jsxs("p",{className:"mt-2",children:["Telegram ",n.telegramId||"-"]}),f.jsxs("p",{children:["Почта ",n.email||"-"]}),f.jsx(he,{className:"mt-3",onClick:()=>t(n.id),children:"Карточка"})]}):null]})}function Dle({rows:e}){const[t,n]=b.useState(null);return f.jsxs(f.Fragment,{children:[f.jsx(Dz,{name:"omp-devices",rows:e,search:(r,l)=>(r.deviceId+" "+r.name+" "+r.who+" "+r.version).toLowerCase().indexOf(l)>=0,onRow:n,columns:[{accessorKey:"deviceId",header:"ID",cell:({getValue:r})=>f.jsx("span",{className:"font-mono text-xs",children:String(r()||"")})},{accessorKey:"name",header:"Имя"},{accessorKey:"who",header:"Аккаунт"},{accessorKey:"online",header:"Сеть",cell:({getValue:r})=>r()?"онлайн":"офлайн"},{accessorKey:"version",header:"Версия"},{accessorKey:"platform",header:"Платформа"},{accessorKey:"lastSeenAt",header:"Был",cell:({getValue:r})=>f.jsx(dt,{ms:Number(r())||0})}]}),t?f.jsxs(Pz,{title:t.name||t.deviceId,onClose:()=>n(null),children:[f.jsx("p",{className:"font-mono text-xs",children:t.deviceId}),f.jsx("p",{className:"mt-2",children:t.online?"Сейчас онлайн":"Офлайн"}),f.jsxs("p",{children:["Версия ",t.version||"-"," · ",t.platform||"-"]}),t.accountId?f.jsx(he,{className:"mt-3",onClick:()=>location.href="/admin/?id="+encodeURIComponent(t.accountId),children:"Аккаунт"}):null]}):null]})}function Ple({data:e,csrf:t}){const n=(e==null?void 0:e.sources)||[];return f.jsxs("div",{className:"space-y-2",children:[n.map(r=>f.jsx(ye,{children:f.jsxs(xe,{className:"flex flex-wrap items-center justify-between gap-2 pt-4",children:[f.jsxs("div",{children:[f.jsx("div",{className:"font-medium",children:r.name}),f.jsxs("div",{className:"font-mono text-xs text-muted-foreground",children:[r.latencyMs," мс · успех ",r.success==null?"-":r.success+"%"," · проб ",r.samples??0,r.lastError?" · "+r.lastError:""]})]}),f.jsxs("div",{className:"flex gap-2",children:[f.jsx(Oe,{variant:r.ok?"ok":"bad",children:r.enabled===!1?"выкл":r.ok?"ок":"нет"}),r.name!=="torrserver"?f.jsx(he,{variant:"secondary",onClick:()=>{const l=r.enabled===!1;!l&&!window.confirm("Выключить "+r.name+"?")||Qt("/admin/api/sources/toggle",t,{source:r.name,enabled:l,confirm:l?"":"yes"}).then(()=>ft(l?"Включено":"Выключено"))},children:r.enabled===!1?"Включить":"Выключить"}):null]})]})},r.name)),f.jsx(he,{onClick:()=>void Qt("/admin/api/sources/check",t,{}).then(()=>ft("Проверено")),children:"Проверить сейчас"})]})}function kle({data:e}){var r,l;const t=((r=e==null?void 0:e.funnel)==null?void 0:r.steps)||[],n=(l=e==null?void 0:e.funnel)==null?void 0:l.estimated;return f.jsxs("div",{className:"space-y-3",children:[f.jsx("div",{className:"grid gap-2 md:grid-cols-5",children:t.map(o=>f.jsx(ye,{children:f.jsxs(xe,{className:"pt-4",children:[f.jsx("div",{className:"text-xs text-muted-foreground",children:o.label}),f.jsx("div",{className:"text-2xl font-semibold",children:o.users}),f.jsx("div",{className:"text-xs text-muted-foreground",children:o.conversion==null?"первый шаг":o.conversion+"% от прошлого"})]})},o.name))}),n?f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Оценка по биллингу"})}),f.jsxs(xe,{className:"text-sm text-muted-foreground",children:[n.note,". Установки ",n.install,", входы ",n.login,", пробные ",n.trial,", оплаты ",n.payment,", продления ",n.renewal,"."]})]}):null]})}function Ile({data:e}){const t=e==null?void 0:e.revenue;return t?f.jsxs("div",{className:"space-y-3",children:[f.jsxs("div",{className:"grid gap-2 md:grid-cols-3",children:[f.jsx(ye,{children:f.jsxs(xe,{className:"pt-4",children:[f.jsx("div",{className:"text-xs text-muted-foreground",children:"30 дней"}),f.jsxs("div",{className:"text-2xl font-semibold",children:[t.monthSum," ₽"]}),f.jsxs("div",{className:"text-xs text-muted-foreground",children:[t.monthN," оплат"]})]})}),f.jsx(ye,{children:f.jsxs(xe,{className:"pt-4",children:[f.jsx("div",{className:"text-xs text-muted-foreground",children:"Отток 30 дней"}),f.jsxs("div",{className:"text-2xl font-semibold",children:[t.churn.rate,"%"]}),f.jsxs("div",{className:"text-xs text-muted-foreground",children:["истекло ",t.churn.expired,", ещё живы ",t.churn.active]})]})}),f.jsx(ye,{children:f.jsxs(xe,{className:"pt-4",children:[f.jsx("div",{className:"text-xs text-muted-foreground",children:"Продления на неделе"}),f.jsx("div",{className:"text-2xl font-semibold",children:t.forecast.due}),f.jsxs("div",{className:"text-xs text-muted-foreground",children:["около ",t.forecast.sum," ₽ при цене ",t.forecast.price," ₽"]})]})})]}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"По дням"})}),f.jsx(xe,{className:"h-48",children:f.jsx(kP,{width:"100%",height:"100%",children:f.jsxs(jz,{data:t.byDay,children:[f.jsx(aw,{stroke:"#31342C"}),f.jsx(cw,{dataKey:"t",stroke:"#B3B8A8",tick:{fontSize:11}}),f.jsx(fw,{stroke:"#B3B8A8",tick:{fontSize:11}}),f.jsx(O3,{contentStyle:{background:"#181A15",border:"1px solid #31342C"}}),f.jsx(uw,{type:"monotone",dataKey:"v",stroke:"#F9C400",dot:!1})]})})})]}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"По месяцам"})}),f.jsx(xe,{className:"space-y-1 text-sm",children:t.byMonth.map(n=>f.jsxs("div",{className:"flex justify-between font-mono",children:[f.jsx("span",{children:n.month}),f.jsxs("span",{children:[Math.round(n.sum)," ₽ · ",n.n]})]},n.month))})]})]}):null}function zle({csrf:e}){const{paused:t}=Iv(),[n,r]=b.useState(""),o=Tv({queryKey:["nuc"],refetchInterval:t?!1:15e3,queryFn:()=>ot("/admin/api/nuc")}).data;return f.jsxs("div",{className:"space-y-3",children:[f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Хост"})}),f.jsxs(xe,{className:"text-sm",children:[o!=null&&o.disk?f.jsxs("p",{children:["Диск ",o.disk.path,": свободно ",o.disk.ratio,"% (",Math.round(o.disk.free/1024/1024/1024)," ГБ)"]}):f.jsx("p",{className:"text-muted-foreground",children:"Диск с этого контейнера не виден"}),o!=null&&o.host?f.jsxs("p",{children:["CPU ",o.host.cpus," · RAM ",Math.round(o.host.mem/1024/1024/1024)," ГБ"]}):f.jsx("p",{className:"text-muted-foreground",children:(o==null?void 0:o.error)||"Сводка хоста недоступна"})]})]}),((o==null?void 0:o.containers)||[]).map(u=>f.jsx(ye,{children:f.jsxs(xe,{className:"flex flex-wrap items-center justify-between gap-2 pt-4",children:[f.jsxs("div",{children:[f.jsx("div",{className:"font-medium",children:u.name}),f.jsxs("div",{className:"font-mono text-xs text-muted-foreground",children:[u.state," · ",u.status," · CPU ",u.cpu==null?"-":u.cpu+"%"," · RAM ",u.mem==null?"-":Math.round(u.mem/1024/1024)+" МБ"]})]}),f.jsxs("div",{className:"flex gap-2",children:[f.jsx(he,{variant:"secondary",onClick:()=>void fetch("/admin/api/nuc/logs?name="+encodeURIComponent(u.name),{credentials:"same-origin"}).then(c=>c.json()).then(c=>r(u.name+` -`+(c.lines||c.error||""))),children:"Лог"}),u.restart?f.jsx(he,{variant:"secondary",onClick:()=>{window.confirm("Перезапустить "+u.name+"?")&&Qt("/admin/api/nuc/restart",e,{name:u.name,confirm:"yes"}).then(c=>ft(c.ok?"Перезапущен":"Не вышло"))},children:"Перезапуск"}):null]})]})},u.id)),n?f.jsx("pre",{className:"max-h-80 overflow-auto rounded-md border border-border bg-background p-3 font-mono text-xs",children:n}):null]})}function Lle({rows:e,csrf:t}){return e.length?f.jsx("div",{className:"space-y-2",children:e.map(n=>f.jsxs("div",{className:"flex items-center justify-between gap-2 rounded-md border border-border px-3 py-2",children:[f.jsxs("span",{className:"font-mono text-xs",children:[n.id.slice(0,8)," · ",f.jsx(dt,{ms:n.at})]}),f.jsx(he,{variant:"secondary",onClick:()=>{window.confirm("Откатить настройки к этому снимку? Секреты не меняются.")&&Qt("/admin/api/rollback",t,{id:n.id,confirm:"yes"}).then(r=>ft(r.ok?"Откат выполнен":"Не вышло"))},children:"Откатить"})]},n.id))}):f.jsx("p",{className:"text-sm text-muted-foreground",children:"Снимков настроек ещё нет. Они появятся после сохранения настроек."})}function Ule({csrf:e}){var o;const{paused:t}=Iv(),n=Wb(),l=((o=Tv({queryKey:["crashes"],refetchInterval:t?!1:15e3,queryFn:()=>ot("/admin/api/crashes")}).data)==null?void 0:o.groups)||[];return f.jsxs("div",{className:"space-y-2",children:[l.length===0?f.jsx("p",{className:"text-sm text-muted-foreground",children:"Сбоев нет"}):null,l.map(u=>f.jsx(ye,{children:f.jsx(xe,{className:"space-y-2 pt-4",children:f.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[f.jsxs("div",{children:[f.jsx("div",{className:"font-medium",children:u.title}),f.jsxs("div",{className:"font-mono text-xs text-muted-foreground",children:[u.id," · ",u.count," · устройств ",u.devices," · ",u.status,u.regression?" · регрессия":""," · ",f.jsx(dt,{ms:u.lastAt})]}),f.jsx("div",{className:"text-xs text-muted-foreground",children:(u.versions||[]).join(", ")})]}),f.jsxs("div",{className:"flex flex-wrap gap-2",children:[f.jsx("a",{className:"text-sm text-primary",href:"/admin/api/crashes/log?id="+encodeURIComponent(u.id),children:"Лог"}),f.jsx(he,{variant:"secondary",onClick:()=>void ot("/admin/api/crashes/draft?id="+encodeURIComponent(u.id)).then(c=>{navigator.clipboard.writeText(c.text||""),ft("Текст issue скопирован")}),children:"Текст issue"}),["progress","fixed","ignored"].map(c=>f.jsx(he,{variant:"secondary",onClick:()=>{window.confirm("Поставить статус "+c+"?")&&Qt("/admin/api/crashes/status",e,{id:u.id,status:c,confirm:"yes"}).then(()=>n.invalidateQueries({queryKey:["crashes"]}))},children:c==="progress"?"В работе":c==="fixed"?"Исправлен":"Игнор"},c))]})]})})},u.id))]})}function $le({csrf:e}){const[t,n]=b.useState(""),[r,l]=b.useState("all"),[o,u]=b.useState(null),c=b.useRef(0);return f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Рассылка в бот"})}),f.jsxs(xe,{className:"space-y-3",children:[f.jsx("textarea",{className:"min-h-28 w-full rounded-md border border-border bg-background p-2 text-sm",value:t,onChange:h=>{c.current+=1,u(null),n(h.target.value)},placeholder:"Текст сообщения"}),f.jsxs("select",{className:"h-10 rounded-md border border-border bg-secondary px-2",value:r,onChange:h=>{c.current+=1,u(null),l(h.target.value)},"aria-label":"Кому",children:[f.jsx("option",{value:"all",children:"Все с Telegram"}),f.jsx("option",{value:"active",children:"Активная подписка"}),f.jsx("option",{value:"lapsed",children:"Без активной подписки"})]}),f.jsxs("div",{className:"flex gap-2",children:[f.jsx(he,{variant:"secondary",onClick:()=>{const h=++c.current;Qt("/admin/api/broadcast/preview",e,{text:t,segment:r}).then(m=>{if(h!==c.current)return;const v=m;if(!v.ok||!v.id){ft("Не удалось");return}u({id:v.id,count:v.count||0}),ft("Получателей: "+(v.count||0))})},children:"Предпросмотр"}),f.jsx(he,{disabled:!o,onClick:()=>{o&&window.confirm("Отправить "+o.count+" сообщений? Это нельзя отменить.")&&Qt("/admin/api/broadcast/send",e,{id:o.id,confirm:"yes"}).then(h=>{ft(h.ok?"Отправлено":"Не отправлено"),u(null)})},children:"Отправить"})]}),o?f.jsxs("p",{className:"text-sm text-muted-foreground",children:["Черновик на ",o.count,". Само по себе ничего не уходит."]}):null]})]})}function Ble({data:e}){const t=(e==null?void 0:e.versions)||[];return f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Версии приложений"})}),f.jsxs(xe,{className:"space-y-1 text-sm",children:[f.jsxs("p",{className:"text-muted-foreground",children:["Бета сейчас: ",(e==null?void 0:e.betaPercent)??100,"% устройств, которые сами включили бету."]}),t.length===0?f.jsx("p",{children:"Пока нет сигналов версии."}):null,t.map(n=>f.jsxs("div",{className:"flex justify-between font-mono",children:[f.jsx("span",{children:n.label}),f.jsx("span",{children:n.count})]},n.label))]})]})}function Hle(){var n;const t=((n=Tv({queryKey:["logins"],queryFn:()=>ot("/admin/api/logins")}).data)==null?void 0:n.rows)||[];return f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Входы в админку"})}),f.jsxs(xe,{className:"space-y-1 text-sm",children:[t.length===0?f.jsx("p",{className:"text-muted-foreground",children:"Записей нет"}):null,t.map((r,l)=>f.jsxs("div",{className:"font-mono text-xs",children:[f.jsx(dt,{ms:r.at})," ",r.result," ",r.ip||"-"," ",r.telegramId||""," ",r.ua||""]},l))]})]})}var YT=1,Fle=.9,Vle=.8,Gle=.17,v0=.1,g0=.999,qle=.9999,Kle=.99,Yle=/[\\\/_+.#"@\[\(\{&]/,Xle=/[\\\/_+.#"@\[\(\{&]/g,Qle=/[\s-]/,kz=/[\s-]/g;function Hb(e,t,n,r,l,o,u){if(o===t.length)return l===e.length?YT:Kle;var c=`${l},${o}`;if(u[c]!==void 0)return u[c];for(var h=r.charAt(o),m=n.indexOf(h,l),v=0,p,x,S,w;m>=0;)p=Hb(e,t,n,r,m+1,o+1,u),p>v&&(m===l?p*=YT:Yle.test(e.charAt(m-1))?(p*=Vle,S=e.slice(l,m-1).match(Xle),S&&l>0&&(p*=Math.pow(g0,S.length))):Qle.test(e.charAt(m-1))?(p*=Fle,w=e.slice(l,m-1).match(kz),w&&l>0&&(p*=Math.pow(g0,w.length))):(p*=Gle,l>0&&(p*=Math.pow(g0,m-l))),e.charAt(m)!==t.charAt(o)&&(p*=qle)),(pp&&(p=x*v0)),p>v&&(v=p),m=n.indexOf(h,m+1);return u[c]=v,v}function XT(e){return e.toLowerCase().replace(kz," ")}function Zle(e,t,n){return e=n&&n.length>0?`${e+" "+n.join(" ")}`:e,Hb(e,t,XT(e),XT(t),0,0,{})}var Wle=Object.defineProperty,vn=(e,t)=>Wle(e,"name",{value:t,configurable:!0}),Fb="dismissableLayer.update",Jle="dismissableLayer.pointerDownOutside",eoe="dismissableLayer.focusOutside",QT,Iz=b.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),toe=b.forwardRef(vn(function(t,n){const{disableOutsidePointerEvents:r=!1,deferPointerDownOutside:l=!1,onEscapeKeyDown:o,onPointerDownOutside:u,onFocusOutside:c,onInteractOutside:h,onDismiss:m,...v}=t,p=b.useContext(Iz),[x,S]=b.useState(null),w=(x==null?void 0:x.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,j]=b.useState({}),C=Kr(n,S),A=Array.from(p.layers),[N]=[...p.layersWithOutsidePointerEventsDisabled].slice(-1),O=N?A.indexOf(N):-1,T=x?A.indexOf(x):-1,R=p.layersWithOutsidePointerEventsDisabled.size>0,E=T>=O,D=b.useRef(!1),k=Lz(F=>{u==null||u(F),h==null||h(F),F.defaultPrevented||m==null||m()},{ownerDocument:w,deferPointerDownOutside:l,isDeferredPointerDownOutsideRef:D,dismissableSurfaces:p.dismissableSurfaces,shouldHandlePointerDownOutside:b.useCallback(F=>{if(!(F instanceof Node))return!1;const se=[...p.branches].some(ue=>ue.contains(F));return E&&!se},[p.branches,E])}),I=Uz(F=>{if(l&&D.current)return;const se=F.target;[...p.branches].some(de=>de.contains(se))||(c==null||c(F),h==null||h(F),F.defaultPrevented||m==null||m())},w),P=x?T===A.length-1:!1,B=Ho(F=>{F.key==="Escape"&&(o==null||o(F),!F.defaultPrevented&&m&&(F.preventDefault(),m()))});return b.useEffect(()=>{if(P)return w.addEventListener("keydown",B,{capture:!0}),()=>w.removeEventListener("keydown",B,{capture:!0})},[w,P,B]),b.useEffect(()=>{if(x)return r&&(p.layersWithOutsidePointerEventsDisabled.size===0&&(QT=w.body.style.pointerEvents,w.body.style.pointerEvents="none"),p.layersWithOutsidePointerEventsDisabled.add(x)),p.layers.add(x),Vb(),()=>{r&&(p.layersWithOutsidePointerEventsDisabled.delete(x),p.layersWithOutsidePointerEventsDisabled.size===0&&(w.body.style.pointerEvents=QT))}},[x,w,r,p]),b.useEffect(()=>()=>{x&&(p.layers.delete(x),p.layersWithOutsidePointerEventsDisabled.delete(x),Vb())},[x,p]),b.useEffect(()=>{const F=vn(()=>j({}),"handleUpdate");return document.addEventListener(Fb,F),()=>document.removeEventListener(Fb,F)},[]),f.jsx(ln.div,{...v,ref:C,style:{pointerEvents:R?E?"auto":"none":void 0,...t.style},onFocusCapture:$n(t.onFocusCapture,I.onFocusCapture),onBlurCapture:$n(t.onBlurCapture,I.onBlurCapture),onPointerDownCapture:$n(t.onPointerDownCapture,k.onPointerDownCapture)})},"DismissableLayer"));function zz(){const e=b.useContext(Iz),[t,n]=b.useState(null);return b.useEffect(()=>{if(t)return e.dismissableSurfaces.add(t),()=>{e.dismissableSurfaces.delete(t)}},[t,e.dismissableSurfaces]),n}vn(zz,"useDismissableLayerSurface");var noe=vn(()=>!0,"IS_TRUE");function Lz(e,t){const{ownerDocument:n=globalThis==null?void 0:globalThis.document,deferPointerDownOutside:r=!1,isDeferredPointerDownOutsideRef:l,dismissableSurfaces:o,shouldHandlePointerDownOutside:u=noe}=t,c=Ho(e),h=b.useRef(!1),m=b.useRef(!1),v=b.useRef(new Map),p=b.useRef(()=>{});return b.useEffect(()=>{function x(){m.current=!1,l.current=!1,v.current.clear()}vn(x,"resetOutsideInteraction");function S(){return Array.from(v.current.values()).some(Boolean)}vn(S,"isOutsideInteractionIntercepted");function w(O){if(!m.current)return;const T=O.target;T instanceof Node&&[...o].some(E=>E.contains(T))||v.current.set(O.type,!0),O.type==="click"&&window.setTimeout(()=>{m.current&&p.current()},0)}vn(w,"handleInteractionCapture");function j(O){m.current&&v.current.set(O.type,!1)}vn(j,"handleInteractionBubble");const C=vn(O=>{if(O.target&&!h.current){let T=function(){n.removeEventListener("click",p.current);const E=S();x(),E||yw(Jle,c,R,{discrete:!0})};if(vn(T,"handleAndDispatchPointerDownOutsideEvent"),!u(O.target)){n.removeEventListener("click",p.current),x(),h.current=!1;return}const R={originalEvent:O};m.current=!0,l.current=r&&O.button===0,v.current.clear(),!r||O.button!==0?T():(n.removeEventListener("click",p.current),p.current=T,n.addEventListener("click",p.current,{once:!0}))}else n.removeEventListener("click",p.current),x();h.current=!1},"handlePointerDown"),A=["pointerup","mousedown","mouseup","touchstart","touchend","click"];for(const O of A)n.addEventListener(O,w,!0),n.addEventListener(O,j);const N=window.setTimeout(()=>{n.addEventListener("pointerdown",C)},0);return()=>{window.clearTimeout(N),n.removeEventListener("pointerdown",C),n.removeEventListener("click",p.current);for(const O of A)n.removeEventListener(O,w,!0),n.removeEventListener(O,j)}},[n,c,r,l,o,u]),{onPointerDownCapture:vn(()=>h.current=!0,"onPointerDownCapture")}}vn(Lz,"usePointerDownOutside");function Uz(e,t=globalThis==null?void 0:globalThis.document){const n=Ho(e),r=b.useRef(!1);return b.useEffect(()=>{const l=vn(o=>{o.target&&!r.current&&yw(eoe,n,{originalEvent:o},{discrete:!1})},"handleFocus");return t.addEventListener("focusin",l),()=>t.removeEventListener("focusin",l)},[t,n]),{onFocusCapture:vn(()=>r.current=!0,"onFocusCapture"),onBlurCapture:vn(()=>r.current=!1,"onBlurCapture")}}vn(Uz,"useFocusOutside");function Vb(){const e=new CustomEvent(Fb);document.dispatchEvent(e)}vn(Vb,"dispatchUpdate");function yw(e,t,n,{discrete:r}){const l=n.originalEvent.target,o=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&l.addEventListener(e,t,{once:!0}),r?oM(l,o):l.dispatchEvent(o)}vn(yw,"handleAndDispatchCustomEvent");var roe=Object.defineProperty,Xt=(e,t)=>roe(e,"name",{value:t,configurable:!0}),p0="focusScope.autoFocusOnMount",y0="focusScope.autoFocusOnUnmount",ZT={bubbles:!1,cancelable:!0},ioe=b.forwardRef(Xt(function(t,n){const{loop:r=!1,trapped:l=!1,branches:o,onMountAutoFocus:u,onUnmountAutoFocus:c,...h}=t,[m,v]=b.useState(null),p=Ho(u),x=Ho(c),S=b.useRef(null),w=Kr(n,v),j=b.useRef(o);b.useEffect(()=>{j.current=o});const C=b.useCallback(O=>{var T;return O?m!=null&&m.contains(O)?!0:!!((T=j.current)!=null&&T.some(R=>R.contains(O))):!1},[m]),A=b.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;b.useEffect(()=>{if(l){let O=function(D){if(A.paused||!m)return;const k=D.target;C(k)?S.current=k:fa(S.current,{select:!0})},T=function(D){if(A.paused||!m)return;const k=D.relatedTarget;k!==null&&(C(k)||fa(S.current,{select:!0}))},R=function(D){if(document.activeElement===document.body)for(const I of D)I.removedNodes.length>0&&fa(m)};Xt(O,"handleFocusIn"),Xt(T,"handleFocusOut"),Xt(R,"handleMutations"),document.addEventListener("focusin",O),document.addEventListener("focusout",T);const E=new MutationObserver(R);return m&&E.observe(m,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",O),document.removeEventListener("focusout",T),E.disconnect()}}},[l,m,A.paused,C]),b.useEffect(()=>{if(m){WT.add(A);const O=document.activeElement;if(!m.contains(O)){const R=new CustomEvent(p0,ZT);m.addEventListener(p0,p),m.dispatchEvent(R),R.defaultPrevented||(Fz(Yz(xw(m)),{select:!0}),document.activeElement===O&&fa(m))}return()=>{m.removeEventListener(p0,p);const R=m.ownerDocument,E=CustomEvent;setTimeout(()=>{const D=new E(y0,ZT);m.addEventListener(y0,x),m.dispatchEvent(D),D.defaultPrevented||fa(O??R.body,{select:!0}),m.removeEventListener(y0,x),WT.remove(A)},0)}}},[m,p,x,A]);const N=b.useCallback(O=>{if(!r&&!l||A.paused)return;const T=O.key==="Tab"&&!O.altKey&&!O.ctrlKey&&!O.metaKey,R=document.activeElement;if(T&&R){const E=O.currentTarget,[D,k]=Vz(E);D&&k?!O.shiftKey&&R===k?(O.preventDefault(),r&&fa(D,{select:!0})):O.shiftKey&&R===D&&(O.preventDefault(),r&&fa(k,{select:!0})):R===E&&O.preventDefault()}},[r,l,A.paused]);return f.jsx(ln.div,{tabIndex:-1,...h,ref:w,onKeyDown:N})},"FocusScope")),$z=b.createContext(null);function Bz({registry:e,children:t}){return e?f.jsx($z.Provider,{value:e,children:t}):t}Xt(Bz,"FocusScopeBranchProvider");function Hz(){const[e,t]=b.useState([]),n=b.useMemo(()=>({add:Xt(r=>t(l=>l.includes(r)?l:[...l,r]),"add"),remove:Xt(r=>t(l=>l.filter(o=>o!==r)),"remove")}),[]);return{nodes:e,registry:n}}Xt(Hz,"useFocusScopeBranchRegistry");function aoe(e){const t=b.useContext($z);b.useEffect(()=>{if(!(!e||!t))return t.add(e),()=>t.remove(e)},[e,t])}Xt(aoe,"useFocusScopeBranch");function Fz(e,{select:t=!1}={}){const n=document.activeElement;for(const r of e)if(fa(r,{select:t}),document.activeElement!==n)return}Xt(Fz,"focusFirst");function Vz(e){const t=xw(e),n=Gb(t,e),r=Gb(t.reverse(),e);return[n,r]}Xt(Vz,"getTabbableEdges");function xw(e){const t=[],r=e.ownerDocument.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:Xt(l=>{const o=l.tagName==="INPUT"&&l.type==="hidden";return l.disabled||l.hidden||o?NodeFilter.FILTER_SKIP:l.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP},"acceptNode")});for(;r.nextNode();)t.push(r.currentNode);return t}Xt(xw,"getTabbableCandidates");function Gb(e,t){const n=typeof t.checkVisibility=="function"&&t.checkVisibility({checkVisibilityCSS:!0});for(const r of e)if(!(n?!r.checkVisibility({checkVisibilityCSS:!0}):Gz(r,{upTo:t})))return r}Xt(Gb,"findVisible");function Gz(e,{upTo:t}){if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1}Xt(Gz,"isHidden");function qz(e){return e.tagName==="INPUT"&&typeof e.select=="function"}Xt(qz,"isSelectableInput");function fa(e,{select:t=!1}={}){if(e&&e.focus){const r=(e.ownerDocument??document).activeElement;e.focus({preventScroll:!0}),e!==r&&qz(e)&&t&&e.select()}}Xt(fa,"focus");var WT=Kz();function Kz(){let e=[];return{add(t){const n=e[0];t!==n&&(n==null||n.pause()),e=qb(e,t),e.unshift(t)},remove(t){var n;e=qb(e,t),(n=e[0])==null||n.resume()}}}Xt(Kz,"createFocusScopesStack");function qb(e,t){const n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}Xt(qb,"arrayRemove");function Yz(e){return e.filter(t=>t.tagName!=="A")}Xt(Yz,"removeLinks");var loe=Object.defineProperty,ooe=(e,t)=>loe(e,"name",{value:t,configurable:!0}),soe=b.forwardRef(ooe(function(t,n){var h;const{container:r,...l}=t,[o,u]=b.useState(!1);ja(()=>u(!0),[]);const c=r||o&&((h=globalThis==null?void 0:globalThis.document)==null?void 0:h.body);return c?Rv.createPortal(f.jsx(ln.div,{...l,ref:n}),c):null},"Portal")),uoe=Object.defineProperty,bw=(e,t)=>uoe(e,"name",{value:t,configurable:!0}),Sm=0,Ni=null;function coe(e){return Sw(),e.children}bw(coe,"FocusGuards");function Sw(){b.useEffect(()=>{Ni||(Ni={start:Kb(),end:Kb()});const{start:e,end:t}=Ni;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement("afterbegin",e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement("beforeend",t),Sm++,()=>{Sm===1&&(Ni==null||Ni.start.remove(),Ni==null||Ni.end.remove(),Ni=null),Sm=Math.max(0,Sm-1)}},[])}bw(Sw,"useFocusGuards");function Kb(){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}bw(Kb,"createFocusGuard");var Pi=function(){return Pi=Object.assign||function(t){for(var n,r=1,l=arguments.length;r"u")return Eoe;var t=Ooe(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},Toe=Wz(),xu="data-scroll-locked",Roe=function(e,t,n,r){var l=e.left,o=e.top,u=e.right,c=e.gap;return n===void 0&&(n="margin"),` - .`.concat(doe,` { + */function QT(e,t){return e?Lle(e)?b.createElement(e,t):e:null}function Lle(e){return Ule(e)||typeof e=="function"||$le(e)}function Ule(e){return typeof e=="function"&&(()=>{const t=Object.getPrototypeOf(e);return t.prototype&&t.prototype.isReactComponent})()}function $le(e){return typeof e=="object"&&typeof e.$$typeof=="symbol"&&["react.memo","react.forward_ref"].includes(e.$$typeof.description)}function Ble(e){const t={state:{},onStateChange:()=>{},renderFallbackValue:null,...e},[n]=b.useState(()=>({current:Rle(t)})),[r,l]=b.useState(()=>n.current.initialState);return n.current.setOptions(o=>({...o,...e,state:{...r,...e.state},onStateChange:u=>{l(u),e.onStateChange==null||e.onStateChange(u)}})),n.current}function Hle(e,t){const n=t.map(o=>o.map(u=>'"'+String(u??"").replace(/"/g,'""')+'"').join(",")).join(` +`),r=new Blob(["\uFEFF"+n],{type:"text/csv;charset=utf-8"}),l=document.createElement("a");l.href=URL.createObjectURL(r),l.download=e,l.click(),URL.revokeObjectURL(l.href)}function Lz({name:e,rows:t,columns:n,search:r,bulk:l,onRow:o}){const[u,c]=b.useState([]),[h,m]=b.useState(""),[v,g]=b.useState({}),[x,S]=b.useState({}),[w,j]=b.useState(!1),C=r&&h.trim()?t.filter(T=>r(T,h.trim().toLowerCase())):t,E=Ble({data:C,columns:n,state:{sorting:u,columnVisibility:v,rowSelection:x},onSortingChange:c,onColumnVisibilityChange:g,onRowSelectionChange:S,enableRowSelection:!0,getCoreRowModel:Mle(),getSortedRowModel:zle(),getFilteredRowModel:Ile(),getRowId:(T,R)=>String(T.id||R)}),N=E.getSelectedRowModel().rows.map(T=>T.original);function O(T){const R=E.getVisibleLeafColumns(),A=R.map(k=>String(k.columnDef.header||k.id)),D=T.map(k=>R.map(I=>{const P=I.accessorFn?I.accessorFn(k,0):"";return P==null?"":String(P)}));Hle(e+".csv",[A].concat(D))}return f.jsxs("div",{className:"space-y-2",children:[f.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[f.jsx($e,{value:h,onChange:T=>m(T.target.value),placeholder:"Фильтр",className:"max-w-xs"}),f.jsx(he,{variant:"secondary",onClick:()=>j(T=>!T),children:"Столбцы"}),f.jsx(he,{variant:"secondary",onClick:()=>O(N.length?N:C),children:"CSV"}),(l||[]).map(T=>f.jsx(he,{variant:"secondary",disabled:!N.length,onClick:()=>T.run(N),children:T.label},T.label)),f.jsx("span",{className:"text-xs text-muted-foreground",children:C.length})]}),w?f.jsx("div",{className:"flex flex-wrap gap-3 text-sm",children:E.getAllLeafColumns().map(T=>f.jsxs("label",{className:"flex items-center gap-1",children:[f.jsx("input",{type:"checkbox",checked:T.getIsVisible(),onChange:()=>T.toggleVisibility()}),String(T.columnDef.header||T.id)]},T.id))}):null,f.jsx("div",{className:"overflow-x-auto rounded-md border border-border",children:f.jsxs("table",{className:"w-full text-sm",children:[f.jsx("thead",{className:"bg-card",children:E.getHeaderGroups().map(T=>f.jsxs("tr",{children:[f.jsx("th",{className:"w-8 px-2 py-2",children:f.jsx("input",{type:"checkbox",checked:E.getIsAllRowsSelected(),onChange:E.getToggleAllRowsSelectedHandler(),"aria-label":"Выбрать все"})}),T.headers.map(R=>f.jsx("th",{className:"px-2 py-2 text-left font-medium text-muted-foreground",children:R.isPlaceholder?null:f.jsxs("button",{type:"button",className:"inline-flex items-center gap-1",onClick:R.column.getToggleSortingHandler(),children:[QT(R.column.columnDef.header,R.getContext()),R.column.getIsSorted()==="asc"?" ↑":R.column.getIsSorted()==="desc"?" ↓":""]})},R.id))]},T.id))}),f.jsxs("tbody",{children:[E.getRowModel().rows.map(T=>f.jsxs("tr",{className:"cursor-pointer border-t border-border hover:bg-secondary",onClick:()=>o&&o(T.original),children:[f.jsx("td",{className:"px-2 py-1",onClick:R=>R.stopPropagation(),children:f.jsx("input",{type:"checkbox",checked:T.getIsSelected(),onChange:T.getToggleSelectedHandler(),"aria-label":"Выбрать строку"})}),T.getVisibleCells().map(R=>f.jsx("td",{className:"px-2 py-1 align-top",children:QT(R.column.columnDef.cell,R.getContext())},R.id))]},T.id)),E.getRowModel().rows.length===0?f.jsx("tr",{children:f.jsx("td",{className:"px-2 py-4 text-muted-foreground",colSpan:n.length+1,children:"Пусто"})}):null]})]})})]})}function ZT({rows:e}){const t=e||[];return t.length?f.jsx("div",{className:"h-16 w-full",children:f.jsx($P,{width:"100%",height:"100%",children:f.jsxs(Oz,{data:t,children:[f.jsx(ow,{stroke:"#31342C",vertical:!1}),f.jsx(dw,{dataKey:"t",hide:!0}),f.jsx(hw,{hide:!0}),f.jsx(D3,{contentStyle:{background:"#181A15",border:"1px solid #31342C",color:"#F2F2E9"}}),f.jsx(fw,{type:"monotone",dataKey:"v",stroke:"#F9C400",dot:!1,strokeWidth:1.5})]})})}):f.jsx("div",{className:"text-xs text-muted-foreground",children:"Нет точек"})}function Uz({title:e,onClose:t,children:n}){return f.jsx("div",{className:"fixed inset-0 z-40 flex justify-end bg-black/50",onClick:t,children:f.jsxs("aside",{className:"h-full w-full max-w-md overflow-auto border-l border-border bg-card p-4",onClick:r=>r.stopPropagation(),children:[f.jsxs("div",{className:"mb-3 flex items-center justify-between",children:[f.jsx("h2",{className:"text-lg font-semibold",children:e}),f.jsx(he,{variant:"secondary",onClick:t,children:"Закрыть"})]}),n]})})}function Fle({data:e,csrf:t}){const n=(e==null?void 0:e.health)||[];return f.jsxs("div",{className:"space-y-3",children:[f.jsxs("div",{className:"grid grid-cols-2 gap-2 lg:grid-cols-4",children:[f.jsx(ye,{children:f.jsxs(xe,{className:"pt-4",children:[f.jsx("div",{className:"text-2xl font-semibold",children:(e==null?void 0:e.online)??"-"}),f.jsx("div",{className:"text-xs text-muted-foreground",children:"устройств онлайн"})]})}),f.jsx(ye,{children:f.jsxs(xe,{className:"pt-4",children:[f.jsx("div",{className:"text-2xl font-semibold",children:(e==null?void 0:e.errors)??"-"}),f.jsx("div",{className:"text-xs text-muted-foreground",children:"ошибок за 24 ч"})]})}),f.jsx(ye,{children:f.jsxs(xe,{className:"pt-4",children:[f.jsx("div",{className:"text-xs text-muted-foreground",children:"оплаты, 24 ч"}),f.jsx(ZT,{rows:e==null?void 0:e.spark24})]})}),f.jsx(ye,{children:f.jsxs(xe,{className:"pt-4",children:[f.jsx("div",{className:"text-xs text-muted-foreground",children:"оплаты, 7 дн."}),f.jsx(ZT,{rows:e==null?void 0:e.spark7})]})})]}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Сервисы"})}),f.jsxs(xe,{className:"grid gap-2 md:grid-cols-2",children:[n.map(r=>f.jsxs("div",{className:"flex items-center justify-between rounded-md border border-border px-3 py-2",children:[f.jsxs("div",{children:[f.jsx("div",{className:"font-medium",children:r.name}),f.jsxs("div",{className:"font-mono text-xs text-muted-foreground",children:[r.latencyMs," мс · успех ",r.success==null?"-":r.success+"%",r.lastError?" · "+r.lastError:""]})]}),f.jsx(Oe,{variant:r.ok?"ok":r.ok===!1?"bad":"warn",children:r.ok?"ок":r.ok===!1?"нет":"-"})]},r.name)),f.jsx($z,{csrf:t,label:"Проверить источники"})]})]})]})}function Vle({users:e,go:t}){const[n,r]=b.useState(null);return f.jsxs(f.Fragment,{children:[f.jsx(Lz,{name:"omp-users-view",rows:e,search:(l,o)=>(l.who+" "+l.telegramId+" "+l.email+" "+l.id).toLowerCase().indexOf(o)>=0,onRow:r,bulk:[{label:"Открыть первого",run:l=>l[0]&&t(l[0].id)}],columns:[{accessorKey:"who",header:"Кто"},{accessorKey:"telegramId",header:"Telegram",cell:({getValue:l})=>f.jsx("span",{className:"font-mono text-xs",children:String(l()||"-")})},{accessorKey:"email",header:"Почта"},{accessorKey:"active",header:"Подписка",cell:({getValue:l})=>l()?"активна":"нет"}]}),n?f.jsxs(Uz,{title:n.who,onClose:()=>r(null),children:[f.jsx("p",{className:"font-mono text-xs text-muted-foreground",children:n.id}),f.jsxs("p",{className:"mt-2",children:["Telegram ",n.telegramId||"-"]}),f.jsxs("p",{children:["Почта ",n.email||"-"]}),f.jsx(he,{className:"mt-3",onClick:()=>t(n.id),children:"Карточка"})]}):null]})}function Gle({rows:e}){const[t,n]=b.useState(null);return f.jsxs(f.Fragment,{children:[f.jsx(Lz,{name:"omp-devices",rows:e,search:(r,l)=>(r.deviceId+" "+r.name+" "+r.who+" "+r.version).toLowerCase().indexOf(l)>=0,onRow:n,columns:[{accessorKey:"deviceId",header:"ID",cell:({getValue:r})=>f.jsx("span",{className:"font-mono text-xs",children:String(r()||"")})},{accessorKey:"name",header:"Имя"},{accessorKey:"who",header:"Аккаунт"},{accessorKey:"online",header:"Сеть",cell:({getValue:r})=>r()?"онлайн":"офлайн"},{accessorKey:"version",header:"Версия"},{accessorKey:"platform",header:"Платформа"},{accessorKey:"lastSeenAt",header:"Был",cell:({getValue:r})=>f.jsx(dt,{ms:Number(r())||0})}]}),t?f.jsxs(Uz,{title:t.name||t.deviceId,onClose:()=>n(null),children:[f.jsx("p",{className:"font-mono text-xs",children:t.deviceId}),f.jsx("p",{className:"mt-2",children:t.online?"Сейчас онлайн":"Офлайн"}),f.jsxs("p",{children:["Версия ",t.version||"-"," · ",t.platform||"-"]}),t.accountId?f.jsx(he,{className:"mt-3",onClick:()=>location.href="/admin/?id="+encodeURIComponent(t.accountId),children:"Аккаунт"}):null]}):null]})}function qle({data:e,csrf:t}){const n=(e==null?void 0:e.sources)||[];return f.jsxs("div",{className:"space-y-2",children:[n.map(r=>f.jsx(ye,{children:f.jsxs(xe,{className:"flex flex-wrap items-center justify-between gap-2 pt-4",children:[f.jsxs("div",{children:[f.jsx("div",{className:"font-medium",children:r.name}),f.jsxs("div",{className:"font-mono text-xs text-muted-foreground",children:[r.latencyMs," мс · успех ",r.success==null?"-":r.success+"%"," · проб ",r.samples??0,r.lastError?" · "+r.lastError:""]})]}),f.jsxs("div",{className:"flex gap-2",children:[f.jsx(Oe,{variant:r.ok?"ok":"bad",children:r.enabled===!1?"выкл":r.ok?"ок":"нет"}),r.name!=="torrserver"?f.jsx(he,{variant:"secondary",onClick:()=>{const l=r.enabled===!1;!l&&!window.confirm("Выключить "+r.name+"?")||an("/admin/api/sources/toggle",t,{source:r.name,enabled:l,confirm:l?"":"yes"}).then(()=>rt(l?"Включено":"Выключено"))},children:r.enabled===!1?"Включить":"Выключить"}):null]})]})},r.name)),f.jsx($z,{csrf:t,label:"Проверить сейчас"})]})}function Kle({data:e}){var r,l;const t=((r=e==null?void 0:e.funnel)==null?void 0:r.steps)||[],n=(l=e==null?void 0:e.funnel)==null?void 0:l.estimated;return f.jsxs("div",{className:"space-y-3",children:[f.jsx("div",{className:"grid gap-2 md:grid-cols-5",children:t.map(o=>f.jsx(ye,{children:f.jsxs(xe,{className:"pt-4",children:[f.jsx("div",{className:"text-xs text-muted-foreground",children:o.label}),f.jsx("div",{className:"text-2xl font-semibold",children:o.users}),f.jsx("div",{className:"text-xs text-muted-foreground",children:o.conversion==null?"первый шаг":o.conversion+"% от прошлого"})]})},o.name))}),n?f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Оценка по биллингу"})}),f.jsxs(xe,{className:"text-sm text-muted-foreground",children:[n.note,". Установки ",n.install,", входы ",n.login,", пробные ",n.trial,", оплаты ",n.payment,", продления ",n.renewal,"."]})]}):null]})}function Yle({data:e}){const t=e==null?void 0:e.revenue;return t?f.jsxs("div",{className:"space-y-3",children:[f.jsxs("div",{className:"grid gap-2 md:grid-cols-3",children:[f.jsx(ye,{children:f.jsxs(xe,{className:"pt-4",children:[f.jsx("div",{className:"text-xs text-muted-foreground",children:"30 дней"}),f.jsxs("div",{className:"text-2xl font-semibold",children:[t.monthSum," ₽"]}),f.jsxs("div",{className:"text-xs text-muted-foreground",children:[t.monthN," оплат"]})]})}),f.jsx(ye,{children:f.jsxs(xe,{className:"pt-4",children:[f.jsx("div",{className:"text-xs text-muted-foreground",children:"Отток 30 дней"}),f.jsxs("div",{className:"text-2xl font-semibold",children:[t.churn.rate,"%"]}),f.jsxs("div",{className:"text-xs text-muted-foreground",children:["истекло ",t.churn.expired,", ещё живы ",t.churn.active]})]})}),f.jsx(ye,{children:f.jsxs(xe,{className:"pt-4",children:[f.jsx("div",{className:"text-xs text-muted-foreground",children:"Продления на неделе"}),f.jsx("div",{className:"text-2xl font-semibold",children:t.forecast.due}),f.jsxs("div",{className:"text-xs text-muted-foreground",children:["около ",t.forecast.sum," ₽ при цене ",t.forecast.price," ₽"]})]})})]}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"По дням"})}),f.jsx(xe,{className:"h-48",children:f.jsx($P,{width:"100%",height:"100%",children:f.jsxs(Oz,{data:t.byDay,children:[f.jsx(ow,{stroke:"#31342C"}),f.jsx(dw,{dataKey:"t",stroke:"#B3B8A8",tick:{fontSize:11}}),f.jsx(hw,{stroke:"#B3B8A8",tick:{fontSize:11}}),f.jsx(D3,{contentStyle:{background:"#181A15",border:"1px solid #31342C"}}),f.jsx(fw,{type:"monotone",dataKey:"v",stroke:"#F9C400",dot:!1})]})})})]}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"По месяцам"})}),f.jsx(xe,{className:"space-y-1 text-sm",children:t.byMonth.map(n=>f.jsxs("div",{className:"flex justify-between font-mono",children:[f.jsx("span",{children:n.month}),f.jsxs("span",{children:[Math.round(n.sum)," ₽ · ",n.n]})]},n.month))})]})]}):null}function $z({csrf:e,label:t}){const[n,r]=b.useState(null);return f.jsxs(f.Fragment,{children:[f.jsx(he,{variant:"secondary",onClick:()=>void an("/admin/api/sources/check",e,{}).then(l=>{var u;const o=l.health;if(!l.ok||!o){rt(l.ok?"Проверено":((u=l.flash)==null?void 0:u.error)||"Не вышло");return}r(p8(o))}),children:t}),n!=null?f.jsx(Wf,{title:"Проверка источников",text:n,onClose:()=>r(null)}):null]})}function Xle({csrf:e}){const{paused:t}=zv(),[n,r]=b.useState(null),o=Rv({queryKey:["nuc"],refetchInterval:t?!1:15e3,queryFn:()=>st("/admin/api/nuc")}).data;return f.jsxs("div",{className:"space-y-3",children:[f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Хост"})}),f.jsxs(xe,{className:"text-sm",children:[o!=null&&o.disk?f.jsxs("p",{children:["Диск ",o.disk.path,": свободно ",o.disk.ratio,"% (",Math.round(o.disk.free/1024/1024/1024)," ГБ)"]}):f.jsx("p",{className:"text-muted-foreground",children:"Диск с этого контейнера не виден"}),o!=null&&o.host?f.jsxs("p",{children:["CPU ",o.host.cpus," · RAM ",Math.round(o.host.mem/1024/1024/1024)," ГБ"]}):f.jsx("p",{className:"text-muted-foreground",children:(o==null?void 0:o.error)||"Сводка хоста недоступна"})]})]}),((o==null?void 0:o.containers)||[]).map(c=>f.jsx(ye,{children:f.jsxs(xe,{className:"flex flex-wrap items-center justify-between gap-2 pt-4",children:[f.jsxs("div",{children:[f.jsx("div",{className:"font-medium",children:c.name}),f.jsxs("div",{className:"font-mono text-xs text-muted-foreground",children:[c.state," · ",c.status," · CPU ",c.cpu==null?"-":c.cpu+"%"," · RAM ",c.mem==null?"-":Math.round(c.mem/1024/1024)+" МБ"]})]}),f.jsxs("div",{className:"flex gap-2",children:[f.jsx(he,{variant:"secondary",onClick:()=>void u(c.name),children:"Лог"}),c.restart?f.jsx(he,{variant:"secondary",onClick:()=>{window.confirm("Перезапустить "+c.name+"?")&&an("/admin/api/nuc/restart",e,{name:c.name,confirm:"yes"}).then(h=>rt(h.ok?"Перезапущен":"Не вышло"))},children:"Перезапуск"}):null]})]})},c.id)),n?f.jsx(Wf,{title:"Лог "+n.name,text:n.text,refreshing:n.refreshing,onRefresh:()=>void u(n.name),onClose:()=>r(null)}):null]});async function u(c){r(h=>({name:c,text:h&&h.name===c?h.text:"",refreshing:!0}));try{const m=await(await fetch("/admin/api/nuc/logs?name="+encodeURIComponent(c),{credentials:"same-origin"})).json();r({name:c,text:m.lines||m.error||"",refreshing:!1})}catch{r({name:c,text:"логи недоступны",refreshing:!1})}}}function Qle({rows:e,csrf:t}){return e.length?f.jsx("div",{className:"space-y-2",children:e.map(n=>f.jsxs("div",{className:"flex items-center justify-between gap-2 rounded-md border border-border px-3 py-2",children:[f.jsxs("span",{className:"font-mono text-xs",children:[n.id.slice(0,8)," · ",f.jsx(dt,{ms:n.at})]}),f.jsx(he,{variant:"secondary",onClick:()=>{window.confirm("Откатить настройки к этому снимку? Секреты не меняются.")&&an("/admin/api/rollback",t,{id:n.id,confirm:"yes"}).then(r=>rt(r.ok?"Откат выполнен":"Не вышло"))},children:"Откатить"})]},n.id))}):f.jsx("p",{className:"text-sm text-muted-foreground",children:"Снимков настроек ещё нет. Они появятся после сохранения настроек."})}function Zle({csrf:e}){var h;const{paused:t}=zv(),n=Jb(),l=((h=Rv({queryKey:["crashes"],refetchInterval:t?!1:15e3,queryFn:()=>st("/admin/api/crashes")}).data)==null?void 0:h.groups)||[],[o,u]=b.useState(null);async function c(m){u({title:m.title,text:""});try{const v=await fetch("/admin/api/crashes/log?id="+encodeURIComponent(m.id),{credentials:"same-origin"});u({title:m.title,text:await v.text()})}catch{u({title:m.title,text:"лог недоступен"})}}return f.jsxs("div",{className:"space-y-2",children:[l.length===0?f.jsx("p",{className:"text-sm text-muted-foreground",children:"Сбоев нет"}):null,l.map(m=>f.jsx(ye,{children:f.jsx(xe,{className:"space-y-2 pt-4",children:f.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[f.jsxs("div",{children:[f.jsx("div",{className:"font-medium",children:m.title}),f.jsxs("div",{className:"font-mono text-xs text-muted-foreground",children:[m.id," · ",m.count," · устройств ",m.devices," · ",m.status,m.regression?" · регрессия":""," · ",f.jsx(dt,{ms:m.lastAt})]}),f.jsx("div",{className:"text-xs text-muted-foreground",children:(m.versions||[]).join(", ")})]}),f.jsxs("div",{className:"flex flex-wrap gap-2",children:[f.jsx(he,{variant:"secondary",onClick:()=>void c(m),children:"Лог"}),f.jsx(he,{variant:"secondary",onClick:()=>void st("/admin/api/crashes/draft?id="+encodeURIComponent(m.id)).then(v=>{navigator.clipboard.writeText(v.text||""),rt("Текст issue скопирован")}),children:"Текст issue"}),["progress","fixed","ignored"].map(v=>f.jsx(he,{variant:"secondary",onClick:()=>{window.confirm("Поставить статус "+v+"?")&&an("/admin/api/crashes/status",e,{id:m.id,status:v,confirm:"yes"}).then(()=>n.invalidateQueries({queryKey:["crashes"]}))},children:v==="progress"?"В работе":v==="fixed"?"Исправлен":"Игнор"},v))]})]})})},m.id)),o?f.jsx(Wf,{title:"Сбой: "+o.title,text:o.text,onClose:()=>u(null)}):null]})}function Wle({csrf:e}){const[t,n]=b.useState(""),[r,l]=b.useState("all"),[o,u]=b.useState(null),c=b.useRef(0);return f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Рассылка в бот"})}),f.jsxs(xe,{className:"space-y-3",children:[f.jsx("textarea",{className:"min-h-28 w-full rounded-md border border-border bg-background p-2 text-sm",value:t,onChange:h=>{c.current+=1,u(null),n(h.target.value)},placeholder:"Текст сообщения"}),f.jsxs("select",{className:"h-10 rounded-md border border-border bg-secondary px-2",value:r,onChange:h=>{c.current+=1,u(null),l(h.target.value)},"aria-label":"Кому",children:[f.jsx("option",{value:"all",children:"Все с Telegram"}),f.jsx("option",{value:"active",children:"Активная подписка"}),f.jsx("option",{value:"lapsed",children:"Без активной подписки"})]}),f.jsxs("div",{className:"flex gap-2",children:[f.jsx(he,{variant:"secondary",onClick:()=>{const h=++c.current;an("/admin/api/broadcast/preview",e,{text:t,segment:r}).then(m=>{if(h!==c.current)return;const v=m;if(!v.ok||!v.id){rt("Не удалось");return}u({id:v.id,count:v.count||0}),rt("Получателей: "+(v.count||0))})},children:"Предпросмотр"}),f.jsx(he,{disabled:!o,onClick:()=>{o&&window.confirm("Отправить "+o.count+" сообщений? Это нельзя отменить.")&&an("/admin/api/broadcast/send",e,{id:o.id,confirm:"yes"}).then(h=>{rt(h.ok?"Отправлено":"Не отправлено"),u(null)})},children:"Отправить"})]}),o?f.jsxs("p",{className:"text-sm text-muted-foreground",children:["Черновик на ",o.count,". Само по себе ничего не уходит."]}):null]})]})}function Jle({data:e}){const t=(e==null?void 0:e.versions)||[];return f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Версии приложений"})}),f.jsxs(xe,{className:"space-y-1 text-sm",children:[f.jsxs("p",{className:"text-muted-foreground",children:["Бета сейчас: ",(e==null?void 0:e.betaPercent)??100,"% устройств, которые сами включили бету."]}),t.length===0?f.jsx("p",{children:"Пока нет сигналов версии."}):null,t.map(n=>f.jsxs("div",{className:"flex justify-between font-mono",children:[f.jsx("span",{children:n.label}),f.jsx("span",{children:n.count})]},n.label))]})]})}function eoe(){var n;const t=((n=Rv({queryKey:["logins"],queryFn:()=>st("/admin/api/logins")}).data)==null?void 0:n.rows)||[];return f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Входы в админку"})}),f.jsxs(xe,{className:"space-y-1 text-sm",children:[t.length===0?f.jsx("p",{className:"text-muted-foreground",children:"Записей нет"}):null,t.map((r,l)=>f.jsxs("div",{className:"font-mono text-xs",children:[f.jsx(dt,{ms:r.at})," ",r.result," ",r.ip||"-"," ",r.telegramId||""," ",r.ua||""]},l))]})]})}var WT=1,toe=.9,noe=.8,roe=.17,g0=.1,p0=.999,ioe=.9999,aoe=.99,loe=/[\\\/_+.#"@\[\(\{&]/,ooe=/[\\\/_+.#"@\[\(\{&]/g,soe=/[\s-]/,Bz=/[\s-]/g;function Fb(e,t,n,r,l,o,u){if(o===t.length)return l===e.length?WT:aoe;var c=`${l},${o}`;if(u[c]!==void 0)return u[c];for(var h=r.charAt(o),m=n.indexOf(h,l),v=0,g,x,S,w;m>=0;)g=Fb(e,t,n,r,m+1,o+1,u),g>v&&(m===l?g*=WT:loe.test(e.charAt(m-1))?(g*=noe,S=e.slice(l,m-1).match(ooe),S&&l>0&&(g*=Math.pow(p0,S.length))):soe.test(e.charAt(m-1))?(g*=toe,w=e.slice(l,m-1).match(Bz),w&&l>0&&(g*=Math.pow(p0,w.length))):(g*=roe,l>0&&(g*=Math.pow(p0,m-l))),e.charAt(m)!==t.charAt(o)&&(g*=ioe)),(gg&&(g=x*g0)),g>v&&(v=g),m=n.indexOf(h,m+1);return u[c]=v,v}function JT(e){return e.toLowerCase().replace(Bz," ")}function uoe(e,t,n){return e=n&&n.length>0?`${e+" "+n.join(" ")}`:e,Fb(e,t,JT(e),JT(t),0,0,{})}var coe=Object.defineProperty,vn=(e,t)=>coe(e,"name",{value:t,configurable:!0}),Vb="dismissableLayer.update",foe="dismissableLayer.pointerDownOutside",doe="dismissableLayer.focusOutside",eR,Hz=b.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),hoe=b.forwardRef(vn(function(t,n){const{disableOutsidePointerEvents:r=!1,deferPointerDownOutside:l=!1,onEscapeKeyDown:o,onPointerDownOutside:u,onFocusOutside:c,onInteractOutside:h,onDismiss:m,...v}=t,g=b.useContext(Hz),[x,S]=b.useState(null),w=(x==null?void 0:x.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,j]=b.useState({}),C=Kr(n,S),E=Array.from(g.layers),[N]=[...g.layersWithOutsidePointerEventsDisabled].slice(-1),O=N?E.indexOf(N):-1,T=x?E.indexOf(x):-1,R=g.layersWithOutsidePointerEventsDisabled.size>0,A=T>=O,D=b.useRef(!1),k=Vz(F=>{u==null||u(F),h==null||h(F),F.defaultPrevented||m==null||m()},{ownerDocument:w,deferPointerDownOutside:l,isDeferredPointerDownOutsideRef:D,dismissableSurfaces:g.dismissableSurfaces,shouldHandlePointerDownOutside:b.useCallback(F=>{if(!(F instanceof Node))return!1;const se=[...g.branches].some(ue=>ue.contains(F));return A&&!se},[g.branches,A])}),I=Gz(F=>{if(l&&D.current)return;const se=F.target;[...g.branches].some(de=>de.contains(se))||(c==null||c(F),h==null||h(F),F.defaultPrevented||m==null||m())},w),P=x?T===E.length-1:!1,B=Ho(F=>{F.key==="Escape"&&(o==null||o(F),!F.defaultPrevented&&m&&(F.preventDefault(),m()))});return b.useEffect(()=>{if(P)return w.addEventListener("keydown",B,{capture:!0}),()=>w.removeEventListener("keydown",B,{capture:!0})},[w,P,B]),b.useEffect(()=>{if(x)return r&&(g.layersWithOutsidePointerEventsDisabled.size===0&&(eR=w.body.style.pointerEvents,w.body.style.pointerEvents="none"),g.layersWithOutsidePointerEventsDisabled.add(x)),g.layers.add(x),Gb(),()=>{r&&(g.layersWithOutsidePointerEventsDisabled.delete(x),g.layersWithOutsidePointerEventsDisabled.size===0&&(w.body.style.pointerEvents=eR))}},[x,w,r,g]),b.useEffect(()=>()=>{x&&(g.layers.delete(x),g.layersWithOutsidePointerEventsDisabled.delete(x),Gb())},[x,g]),b.useEffect(()=>{const F=vn(()=>j({}),"handleUpdate");return document.addEventListener(Vb,F),()=>document.removeEventListener(Vb,F)},[]),f.jsx(ln.div,{...v,ref:C,style:{pointerEvents:R?A?"auto":"none":void 0,...t.style},onFocusCapture:$n(t.onFocusCapture,I.onFocusCapture),onBlurCapture:$n(t.onBlurCapture,I.onBlurCapture),onPointerDownCapture:$n(t.onPointerDownCapture,k.onPointerDownCapture)})},"DismissableLayer"));function Fz(){const e=b.useContext(Hz),[t,n]=b.useState(null);return b.useEffect(()=>{if(t)return e.dismissableSurfaces.add(t),()=>{e.dismissableSurfaces.delete(t)}},[t,e.dismissableSurfaces]),n}vn(Fz,"useDismissableLayerSurface");var moe=vn(()=>!0,"IS_TRUE");function Vz(e,t){const{ownerDocument:n=globalThis==null?void 0:globalThis.document,deferPointerDownOutside:r=!1,isDeferredPointerDownOutsideRef:l,dismissableSurfaces:o,shouldHandlePointerDownOutside:u=moe}=t,c=Ho(e),h=b.useRef(!1),m=b.useRef(!1),v=b.useRef(new Map),g=b.useRef(()=>{});return b.useEffect(()=>{function x(){m.current=!1,l.current=!1,v.current.clear()}vn(x,"resetOutsideInteraction");function S(){return Array.from(v.current.values()).some(Boolean)}vn(S,"isOutsideInteractionIntercepted");function w(O){if(!m.current)return;const T=O.target;T instanceof Node&&[...o].some(A=>A.contains(T))||v.current.set(O.type,!0),O.type==="click"&&window.setTimeout(()=>{m.current&&g.current()},0)}vn(w,"handleInteractionCapture");function j(O){m.current&&v.current.set(O.type,!1)}vn(j,"handleInteractionBubble");const C=vn(O=>{if(O.target&&!h.current){let T=function(){n.removeEventListener("click",g.current);const A=S();x(),A||bw(foe,c,R,{discrete:!0})};if(vn(T,"handleAndDispatchPointerDownOutsideEvent"),!u(O.target)){n.removeEventListener("click",g.current),x(),h.current=!1;return}const R={originalEvent:O};m.current=!0,l.current=r&&O.button===0,v.current.clear(),!r||O.button!==0?T():(n.removeEventListener("click",g.current),g.current=T,n.addEventListener("click",g.current,{once:!0}))}else n.removeEventListener("click",g.current),x();h.current=!1},"handlePointerDown"),E=["pointerup","mousedown","mouseup","touchstart","touchend","click"];for(const O of E)n.addEventListener(O,w,!0),n.addEventListener(O,j);const N=window.setTimeout(()=>{n.addEventListener("pointerdown",C)},0);return()=>{window.clearTimeout(N),n.removeEventListener("pointerdown",C),n.removeEventListener("click",g.current);for(const O of E)n.removeEventListener(O,w,!0),n.removeEventListener(O,j)}},[n,c,r,l,o,u]),{onPointerDownCapture:vn(()=>h.current=!0,"onPointerDownCapture")}}vn(Vz,"usePointerDownOutside");function Gz(e,t=globalThis==null?void 0:globalThis.document){const n=Ho(e),r=b.useRef(!1);return b.useEffect(()=>{const l=vn(o=>{o.target&&!r.current&&bw(doe,n,{originalEvent:o},{discrete:!1})},"handleFocus");return t.addEventListener("focusin",l),()=>t.removeEventListener("focusin",l)},[t,n]),{onFocusCapture:vn(()=>r.current=!0,"onFocusCapture"),onBlurCapture:vn(()=>r.current=!1,"onBlurCapture")}}vn(Gz,"useFocusOutside");function Gb(){const e=new CustomEvent(Vb);document.dispatchEvent(e)}vn(Gb,"dispatchUpdate");function bw(e,t,n,{discrete:r}){const l=n.originalEvent.target,o=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&l.addEventListener(e,t,{once:!0}),r?fM(l,o):l.dispatchEvent(o)}vn(bw,"handleAndDispatchCustomEvent");var voe=Object.defineProperty,Xt=(e,t)=>voe(e,"name",{value:t,configurable:!0}),y0="focusScope.autoFocusOnMount",x0="focusScope.autoFocusOnUnmount",tR={bubbles:!1,cancelable:!0},goe=b.forwardRef(Xt(function(t,n){const{loop:r=!1,trapped:l=!1,branches:o,onMountAutoFocus:u,onUnmountAutoFocus:c,...h}=t,[m,v]=b.useState(null),g=Ho(u),x=Ho(c),S=b.useRef(null),w=Kr(n,v),j=b.useRef(o);b.useEffect(()=>{j.current=o});const C=b.useCallback(O=>{var T;return O?m!=null&&m.contains(O)?!0:!!((T=j.current)!=null&&T.some(R=>R.contains(O))):!1},[m]),E=b.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;b.useEffect(()=>{if(l){let O=function(D){if(E.paused||!m)return;const k=D.target;C(k)?S.current=k:fa(S.current,{select:!0})},T=function(D){if(E.paused||!m)return;const k=D.relatedTarget;k!==null&&(C(k)||fa(S.current,{select:!0}))},R=function(D){if(document.activeElement===document.body)for(const I of D)I.removedNodes.length>0&&fa(m)};Xt(O,"handleFocusIn"),Xt(T,"handleFocusOut"),Xt(R,"handleMutations"),document.addEventListener("focusin",O),document.addEventListener("focusout",T);const A=new MutationObserver(R);return m&&A.observe(m,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",O),document.removeEventListener("focusout",T),A.disconnect()}}},[l,m,E.paused,C]),b.useEffect(()=>{if(m){nR.add(E);const O=document.activeElement;if(!m.contains(O)){const R=new CustomEvent(y0,tR);m.addEventListener(y0,g),m.dispatchEvent(R),R.defaultPrevented||(Xz(eL(Sw(m)),{select:!0}),document.activeElement===O&&fa(m))}return()=>{m.removeEventListener(y0,g);const R=m.ownerDocument,A=CustomEvent;setTimeout(()=>{const D=new A(x0,tR);m.addEventListener(x0,x),m.dispatchEvent(D),D.defaultPrevented||fa(O??R.body,{select:!0}),m.removeEventListener(x0,x),nR.remove(E)},0)}}},[m,g,x,E]);const N=b.useCallback(O=>{if(!r&&!l||E.paused)return;const T=O.key==="Tab"&&!O.altKey&&!O.ctrlKey&&!O.metaKey,R=document.activeElement;if(T&&R){const A=O.currentTarget,[D,k]=Qz(A);D&&k?!O.shiftKey&&R===k?(O.preventDefault(),r&&fa(D,{select:!0})):O.shiftKey&&R===D&&(O.preventDefault(),r&&fa(k,{select:!0})):R===A&&O.preventDefault()}},[r,l,E.paused]);return f.jsx(ln.div,{tabIndex:-1,...h,ref:w,onKeyDown:N})},"FocusScope")),qz=b.createContext(null);function Kz({registry:e,children:t}){return e?f.jsx(qz.Provider,{value:e,children:t}):t}Xt(Kz,"FocusScopeBranchProvider");function Yz(){const[e,t]=b.useState([]),n=b.useMemo(()=>({add:Xt(r=>t(l=>l.includes(r)?l:[...l,r]),"add"),remove:Xt(r=>t(l=>l.filter(o=>o!==r)),"remove")}),[]);return{nodes:e,registry:n}}Xt(Yz,"useFocusScopeBranchRegistry");function poe(e){const t=b.useContext(qz);b.useEffect(()=>{if(!(!e||!t))return t.add(e),()=>t.remove(e)},[e,t])}Xt(poe,"useFocusScopeBranch");function Xz(e,{select:t=!1}={}){const n=document.activeElement;for(const r of e)if(fa(r,{select:t}),document.activeElement!==n)return}Xt(Xz,"focusFirst");function Qz(e){const t=Sw(e),n=qb(t,e),r=qb(t.reverse(),e);return[n,r]}Xt(Qz,"getTabbableEdges");function Sw(e){const t=[],r=e.ownerDocument.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:Xt(l=>{const o=l.tagName==="INPUT"&&l.type==="hidden";return l.disabled||l.hidden||o?NodeFilter.FILTER_SKIP:l.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP},"acceptNode")});for(;r.nextNode();)t.push(r.currentNode);return t}Xt(Sw,"getTabbableCandidates");function qb(e,t){const n=typeof t.checkVisibility=="function"&&t.checkVisibility({checkVisibilityCSS:!0});for(const r of e)if(!(n?!r.checkVisibility({checkVisibilityCSS:!0}):Zz(r,{upTo:t})))return r}Xt(qb,"findVisible");function Zz(e,{upTo:t}){if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1}Xt(Zz,"isHidden");function Wz(e){return e.tagName==="INPUT"&&typeof e.select=="function"}Xt(Wz,"isSelectableInput");function fa(e,{select:t=!1}={}){if(e&&e.focus){const r=(e.ownerDocument??document).activeElement;e.focus({preventScroll:!0}),e!==r&&Wz(e)&&t&&e.select()}}Xt(fa,"focus");var nR=Jz();function Jz(){let e=[];return{add(t){const n=e[0];t!==n&&(n==null||n.pause()),e=Kb(e,t),e.unshift(t)},remove(t){var n;e=Kb(e,t),(n=e[0])==null||n.resume()}}}Xt(Jz,"createFocusScopesStack");function Kb(e,t){const n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}Xt(Kb,"arrayRemove");function eL(e){return e.filter(t=>t.tagName!=="A")}Xt(eL,"removeLinks");var yoe=Object.defineProperty,xoe=(e,t)=>yoe(e,"name",{value:t,configurable:!0}),boe=b.forwardRef(xoe(function(t,n){var h;const{container:r,...l}=t,[o,u]=b.useState(!1);ja(()=>u(!0),[]);const c=r||o&&((h=globalThis==null?void 0:globalThis.document)==null?void 0:h.body);return c?Mv.createPortal(f.jsx(ln.div,{...l,ref:n}),c):null},"Portal")),Soe=Object.defineProperty,ww=(e,t)=>Soe(e,"name",{value:t,configurable:!0}),wm=0,Ni=null;function woe(e){return jw(),e.children}ww(woe,"FocusGuards");function jw(){b.useEffect(()=>{Ni||(Ni={start:Yb(),end:Yb()});const{start:e,end:t}=Ni;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement("afterbegin",e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement("beforeend",t),wm++,()=>{wm===1&&(Ni==null||Ni.start.remove(),Ni==null||Ni.end.remove(),Ni=null),wm=Math.max(0,wm-1)}},[])}ww(jw,"useFocusGuards");function Yb(){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}ww(Yb,"createFocusGuard");var Pi=function(){return Pi=Object.assign||function(t){for(var n,r=1,l=arguments.length;r"u")return Uoe;var t=$oe(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},Hoe=iL(),xu="data-scroll-locked",Foe=function(e,t,n,r){var l=e.left,o=e.top,u=e.right,c=e.gap;return n===void 0&&(n="margin"),` + .`.concat(Coe,` { overflow: hidden `).concat(r,`; padding-right: `).concat(c,"px ").concat(r,`; } @@ -215,26 +226,26 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho `),n==="padding"&&"padding-right: ".concat(c,"px ").concat(r,";")].filter(Boolean).join(""),` } - .`).concat(Dm,` { + .`).concat(Pm,` { right: `).concat(c,"px ").concat(r,`; } - .`).concat(Pm,` { + .`).concat(km,` { margin-right: `).concat(c,"px ").concat(r,`; } - .`).concat(Dm," .").concat(Dm,` { + .`).concat(Pm," .").concat(Pm,` { right: 0 `).concat(r,`; } - .`).concat(Pm," .").concat(Pm,` { + .`).concat(km," .").concat(km,` { margin-right: 0 `).concat(r,`; } body[`).concat(xu,`] { - `).concat(hoe,": ").concat(c,`px; + `).concat(_oe,": ").concat(c,`px; } -`)},eR=function(){var e=parseInt(document.body.getAttribute(xu)||"0",10);return isFinite(e)?e:0},Moe=function(){b.useEffect(function(){return document.body.setAttribute(xu,(eR()+1).toString()),function(){var e=eR()-1;e<=0?document.body.removeAttribute(xu):document.body.setAttribute(xu,e.toString())}},[])},Doe=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,l=r===void 0?"margin":r;Moe();var o=b.useMemo(function(){return Noe(l)},[l]);return b.createElement(Toe,{styles:Roe(o,!t,l,n?"":"!important")})},Yb=!1;if(typeof window<"u")try{var wm=Object.defineProperty({},"passive",{get:function(){return Yb=!0,!0}});window.addEventListener("test",wm,wm),window.removeEventListener("test",wm,wm)}catch{Yb=!1}var iu=Yb?{passive:!1}:!1,Poe=function(e){return e.tagName==="TEXTAREA"},Jz=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[t]!=="hidden"&&!(n.overflowY===n.overflowX&&!Poe(e)&&n[t]==="visible")},koe=function(e){return Jz(e,"overflowY")},Ioe=function(e){return Jz(e,"overflowX")},tR=function(e,t){var n=t.ownerDocument,r=t;do{typeof ShadowRoot<"u"&&r instanceof ShadowRoot&&(r=r.host);var l=eL(e,r);if(l){var o=tL(e,r),u=o[1],c=o[2];if(u>c)return!0}r=r.parentNode}while(r&&r!==n.body);return!1},zoe=function(e){var t=e.scrollTop,n=e.scrollHeight,r=e.clientHeight;return[t,n,r]},Loe=function(e){var t=e.scrollLeft,n=e.scrollWidth,r=e.clientWidth;return[t,n,r]},eL=function(e,t){return e==="v"?koe(t):Ioe(t)},tL=function(e,t){return e==="v"?zoe(t):Loe(t)},Uoe=function(e,t){return e==="h"&&t==="rtl"?-1:1},$oe=function(e,t,n,r,l){var o=Uoe(e,window.getComputedStyle(t).direction),u=o*r,c=n.target,h=t.contains(c),m=!1,v=u>0,p=0,x=0;do{if(!c)break;var S=tL(e,c),w=S[0],j=S[1],C=S[2],A=j-C-o*w;(w||A)&&eL(e,c)&&(p+=A,x+=w);var N=c.parentNode;c=N&&N.nodeType===Node.DOCUMENT_FRAGMENT_NODE?N.host:N}while(!h&&c!==document.body||h&&(t.contains(c)||t===c));return(v&&Math.abs(p)<1||!v&&Math.abs(x)<1)&&(m=!0),m},jm=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},nR=function(e){return[e.deltaX,e.deltaY]},rR=function(e){return e&&"current"in e?e.current:e},Boe=function(e,t){return e[0]===t[0]&&e[1]===t[1]},Hoe=function(e){return` +`)},iR=function(){var e=parseInt(document.body.getAttribute(xu)||"0",10);return isFinite(e)?e:0},Voe=function(){b.useEffect(function(){return document.body.setAttribute(xu,(iR()+1).toString()),function(){var e=iR()-1;e<=0?document.body.removeAttribute(xu):document.body.setAttribute(xu,e.toString())}},[])},Goe=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,l=r===void 0?"margin":r;Voe();var o=b.useMemo(function(){return Boe(l)},[l]);return b.createElement(Hoe,{styles:Foe(o,!t,l,n?"":"!important")})},Xb=!1;if(typeof window<"u")try{var jm=Object.defineProperty({},"passive",{get:function(){return Xb=!0,!0}});window.addEventListener("test",jm,jm),window.removeEventListener("test",jm,jm)}catch{Xb=!1}var iu=Xb?{passive:!1}:!1,qoe=function(e){return e.tagName==="TEXTAREA"},aL=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[t]!=="hidden"&&!(n.overflowY===n.overflowX&&!qoe(e)&&n[t]==="visible")},Koe=function(e){return aL(e,"overflowY")},Yoe=function(e){return aL(e,"overflowX")},aR=function(e,t){var n=t.ownerDocument,r=t;do{typeof ShadowRoot<"u"&&r instanceof ShadowRoot&&(r=r.host);var l=lL(e,r);if(l){var o=oL(e,r),u=o[1],c=o[2];if(u>c)return!0}r=r.parentNode}while(r&&r!==n.body);return!1},Xoe=function(e){var t=e.scrollTop,n=e.scrollHeight,r=e.clientHeight;return[t,n,r]},Qoe=function(e){var t=e.scrollLeft,n=e.scrollWidth,r=e.clientWidth;return[t,n,r]},lL=function(e,t){return e==="v"?Koe(t):Yoe(t)},oL=function(e,t){return e==="v"?Xoe(t):Qoe(t)},Zoe=function(e,t){return e==="h"&&t==="rtl"?-1:1},Woe=function(e,t,n,r,l){var o=Zoe(e,window.getComputedStyle(t).direction),u=o*r,c=n.target,h=t.contains(c),m=!1,v=u>0,g=0,x=0;do{if(!c)break;var S=oL(e,c),w=S[0],j=S[1],C=S[2],E=j-C-o*w;(w||E)&&lL(e,c)&&(g+=E,x+=w);var N=c.parentNode;c=N&&N.nodeType===Node.DOCUMENT_FRAGMENT_NODE?N.host:N}while(!h&&c!==document.body||h&&(t.contains(c)||t===c));return(v&&Math.abs(g)<1||!v&&Math.abs(x)<1)&&(m=!0),m},Cm=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},lR=function(e){return[e.deltaX,e.deltaY]},oR=function(e){return e&&"current"in e?e.current:e},Joe=function(e,t){return e[0]===t[0]&&e[1]===t[1]},ese=function(e){return` .block-interactivity-`.concat(e,` {pointer-events: none;} .allow-interactivity-`).concat(e,` {pointer-events: all;} -`)},Foe=0,au=[];function Voe(e){var t=b.useRef([]),n=b.useRef([0,0]),r=b.useRef(),l=b.useState(Foe++)[0],o=b.useState(Wz)[0],u=b.useRef(e);b.useEffect(function(){u.current=e},[e]),b.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(l));var j=foe([e.lockRef.current],(e.shards||[]).map(rR),!0).filter(Boolean);return j.forEach(function(C){return C.classList.add("allow-interactivity-".concat(l))}),function(){document.body.classList.remove("block-interactivity-".concat(l)),j.forEach(function(C){return C.classList.remove("allow-interactivity-".concat(l))})}}},[e.inert,e.lockRef.current,e.shards]);var c=b.useCallback(function(j,C){if("touches"in j&&j.touches.length===2||j.type==="wheel"&&j.ctrlKey)return!u.current.allowPinchZoom;var A=jm(j),N=n.current,O="deltaX"in j?j.deltaX:N[0]-A[0],T="deltaY"in j?j.deltaY:N[1]-A[1],R,E=j.target,D=Math.abs(O)>Math.abs(T)?"h":"v";if("touches"in j&&D==="h"&&E.type==="range")return!1;var k=window.getSelection(),I=k&&k.anchorNode,P=I?I===E||I.contains(E):!1;if(P)return!1;var B=tR(D,E);if(!B)return!0;if(B?R=D:(R=D==="v"?"h":"v",B=tR(D,E)),!B)return!1;if(!r.current&&"changedTouches"in j&&(O||T)&&(r.current=R),!R)return!0;var F=r.current||R;return $oe(F,C,j,F==="h"?O:T)},[]),h=b.useCallback(function(j){var C=j;if(!(!au.length||au[au.length-1]!==o)){var A="deltaY"in C?nR(C):jm(C),N=t.current.filter(function(R){return R.name===C.type&&(R.target===C.target||C.target===R.shadowParent)&&Boe(R.delta,A)})[0];if(N&&N.should){C.cancelable&&C.preventDefault();return}if(!N){var O=(u.current.shards||[]).map(rR).filter(Boolean).filter(function(R){return R.contains(C.target)}),T=O.length>0?c(C,O[0]):!u.current.noIsolation;T&&C.cancelable&&C.preventDefault()}}},[]),m=b.useCallback(function(j,C,A,N){var O={name:j,delta:C,target:A,should:N,shadowParent:Goe(A)};t.current.push(O),setTimeout(function(){t.current=t.current.filter(function(T){return T!==O})},1)},[]),v=b.useCallback(function(j){n.current=jm(j),r.current=void 0},[]),p=b.useCallback(function(j){m(j.type,nR(j),j.target,c(j,e.lockRef.current))},[]),x=b.useCallback(function(j){m(j.type,jm(j),j.target,c(j,e.lockRef.current))},[]);b.useEffect(function(){return au.push(o),e.setCallbacks({onScrollCapture:p,onWheelCapture:p,onTouchMoveCapture:x}),document.addEventListener("wheel",h,iu),document.addEventListener("touchmove",h,iu),document.addEventListener("touchstart",v,iu),function(){au=au.filter(function(j){return j!==o}),document.removeEventListener("wheel",h,iu),document.removeEventListener("touchmove",h,iu),document.removeEventListener("touchstart",v,iu)}},[]);var S=e.removeScrollBar,w=e.inert;return b.createElement(b.Fragment,null,w?b.createElement(o,{styles:Hoe(l)}):null,S?b.createElement(Doe,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function Goe(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const qoe=boe(Zz,Voe);var nL=b.forwardRef(function(e,t){return b.createElement(Ag,Pi({},e,{ref:t,sideCar:qoe}))});nL.classNames=Ag.classNames;var Koe=function(e){if(typeof document>"u")return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},lu=new WeakMap,Cm=new WeakMap,_m={},w0=0,rL=function(e){return e&&(e.host||rL(e.parentNode))},Yoe=function(e,t){return t.map(function(n){if(e.contains(n))return n;var r=rL(n);return r&&e.contains(r)?r:(console.error("aria-hidden",n,"in not contained inside",e,". Doing nothing"),null)}).filter(function(n){return!!n})},Xoe=function(e,t,n,r){var l=Yoe(t,Array.isArray(e)?e:[e]);_m[n]||(_m[n]=new WeakMap);var o=_m[n],u=[],c=new Set,h=new Set(l),m=function(p){!p||c.has(p)||(c.add(p),m(p.parentNode))};l.forEach(m);var v=function(p){!p||h.has(p)||Array.prototype.forEach.call(p.children,function(x){if(c.has(x))v(x);else try{var S=x.getAttribute(r),w=S!==null&&S!=="false",j=(lu.get(x)||0)+1,C=(o.get(x)||0)+1;lu.set(x,j),o.set(x,C),u.push(x),j===1&&w&&Cm.set(x,!0),C===1&&x.setAttribute(n,"true"),w||x.setAttribute(r,"true")}catch(A){console.error("aria-hidden: cannot operate on ",x,A)}})};return v(t),c.clear(),w0++,function(){u.forEach(function(p){var x=lu.get(p)-1,S=o.get(p)-1;lu.set(p,x),o.set(p,S),x||(Cm.has(p)||p.removeAttribute(r),Cm.delete(p)),S||p.removeAttribute(n)}),w0--,w0||(lu=new WeakMap,lu=new WeakMap,Cm=new WeakMap,_m={})}},Qoe=function(e,t,n){n===void 0&&(n="data-aria-hidden");var r=Array.from(Array.isArray(e)?e:[e]),l=Koe(e);return l?(r.push.apply(r,Array.from(l.querySelectorAll("[aria-live], script"))),Xoe(r,l,n,"aria-hidden")):function(){return null}},Zoe=Object.defineProperty,qi=(e,t)=>Zoe(e,"name",{value:t,configurable:!0}),ww="Dialog",[iL,Mse]=Vu(ww),[Woe,is]=iL(ww),Joe=qi(e=>{const{__scopeDialog:t,children:n,open:r,defaultOpen:l,onOpenChange:o,modal:u=!0}=e,c=b.useRef(null),h=b.useRef(null),{nodes:m,registry:v}=Hz(),[p,x]=Mv({prop:r,defaultProp:l??!1,onChange:o,caller:ww}),[S,w]=b.useState(0),[j,C]=b.useState(0);return f.jsx(Woe,{scope:t,triggerRef:c,contentRef:h,contentId:Yr(),titleId:Yr(),descriptionId:Yr(),titlePresent:S>0,descriptionPresent:j>0,setTitleCount:w,setDescriptionCount:C,open:p,onOpenChange:x,onOpenToggle:b.useCallback(()=>x(A=>!A),[x]),modal:u,branchNodes:m,branchRegistry:v,children:n})},"Dialog"),aL="DialogPortal",[ese,lL]=iL(aL,{forceMount:void 0}),tse=qi(e=>{const{__scopeDialog:t,forceMount:n,children:r,container:l}=e,o=is(aL,t);return f.jsx(ese,{scope:t,forceMount:n,children:b.Children.map(r,u=>f.jsx(Pv,{present:n||o.open,children:f.jsx(soe,{asChild:!0,container:l,children:u})}))})},"DialogPortal"),Xb="DialogOverlay",nse=b.forwardRef(qi(function(t,n){const r=lL(Xb,t.__scopeDialog),{forceMount:l=r.forceMount,...o}=t,u=is(Xb,t.__scopeDialog);return u.modal?f.jsx(Pv,{present:l||u.open,children:f.jsx(ise,{...o,ref:n})}):null},"DialogOverlay")),rse=Ml("DialogOverlay.RemoveScroll"),ise=b.forwardRef(qi(function(t,n){const{__scopeDialog:r,...l}=t,o=is(Xb,r),u=zz(),c=Kr(n,u);return f.jsx(nL,{as:rse,allowPinchZoom:!0,shards:b.useMemo(()=>[o.contentRef,...o.branchNodes.map(h=>({current:h}))],[o.contentRef,o.branchNodes]),children:f.jsx(ln.div,{"data-state":jw(o.open),...l,ref:c,style:{pointerEvents:"auto",...l.style}})})},"DialogOverlayImpl")),Ff="DialogContent",ase=b.forwardRef(qi(function(t,n){const r=lL(Ff,t.__scopeDialog),{forceMount:l=r.forceMount,...o}=t,u=is(Ff,t.__scopeDialog);return f.jsx(Pv,{present:l||u.open,children:u.modal?f.jsx(lse,{...o,ref:n}):f.jsx(ose,{...o,ref:n})})},"DialogContent")),lse=b.forwardRef(qi(function(t,n){const r=is(Ff,t.__scopeDialog),l=b.useRef(null),o=Kr(n,r.contentRef,l);return b.useEffect(()=>{const u=l.current;if(u)return Qoe(u)},[]),f.jsx(oL,{...t,ref:o,trapFocus:r.open,disableOutsidePointerEvents:r.open,onCloseAutoFocus:$n(t.onCloseAutoFocus,u=>{var c;u.preventDefault(),(c=r.triggerRef.current)==null||c.focus()}),onPointerDownOutside:$n(t.onPointerDownOutside,u=>{const c=u.detail.originalEvent,h=c.button===0&&c.ctrlKey===!0;(c.button===2||h)&&u.preventDefault()}),onFocusOutside:$n(t.onFocusOutside,u=>u.preventDefault())})},"DialogContentModal")),ose=b.forwardRef(qi(function(t,n){const r=is(Ff,t.__scopeDialog),l=b.useRef(!1),o=b.useRef(!1);return f.jsx(oL,{...t,ref:n,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:u=>{var c,h;(c=t.onCloseAutoFocus)==null||c.call(t,u),u.defaultPrevented||(l.current||(h=r.triggerRef.current)==null||h.focus(),u.preventDefault()),l.current=!1,o.current=!1},onInteractOutside:u=>{var m,v;(m=t.onInteractOutside)==null||m.call(t,u),u.defaultPrevented||(l.current=!0,u.detail.originalEvent.type==="pointerdown"&&(o.current=!0));const c=u.target;((v=r.triggerRef.current)==null?void 0:v.contains(c))&&u.preventDefault(),u.detail.originalEvent.type==="focusin"&&o.current&&u.preventDefault()}})},"DialogContentNonModal")),oL=b.forwardRef(qi(function(t,n){const{__scopeDialog:r,trapFocus:l,onOpenAutoFocus:o,onCloseAutoFocus:u,"aria-describedby":c,children:h,...m}=t,v=is(Ff,r);return Sw(),f.jsx(Bz,{registry:v.branchRegistry,children:f.jsx(ioe,{asChild:!0,loop:!0,trapped:l,branches:v.branchNodes,onMountAutoFocus:o,onUnmountAutoFocus:u,children:f.jsx(toe,{role:"dialog",id:v.contentId,"aria-labelledby":v.titlePresent?v.titleId:void 0,"aria-describedby":v.descriptionPresent?sL(c,v.descriptionId):c,"data-state":jw(v.open),...m,ref:n,deferPointerDownOutside:!0,onDismiss:()=>v.onOpenChange(!1),children:h})})})},"DialogContentImpl"));function sL(...e){const t=new Set;for(const n of e)if(typeof n=="string")for(const r of String(n).trim().split(/\s+/))r&&t.add(r);return t.size>0?Array.from(t).join(" "):void 0}qi(sL,"concatAriaDescribedby");function jw(e){return e?"open":"closed"}qi(jw,"getState");var gf='[cmdk-group=""]',j0='[cmdk-group-items=""]',sse='[cmdk-group-heading=""]',uL='[cmdk-item=""]',iR=`${uL}:not([aria-disabled="true"])`,Qb="cmdk-item-select",cu="data-value",use=(e,t,n)=>Zle(e,t,n),cL=b.createContext(void 0),gd=()=>b.useContext(cL),fL=b.createContext(void 0),Cw=()=>b.useContext(fL),dL=b.createContext(void 0),hL=b.forwardRef((e,t)=>{let n=fu(()=>{var ee,ve;return{search:"",value:(ve=(ee=e.value)!=null?ee:e.defaultValue)!=null?ve:"",selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}}}),r=fu(()=>new Set),l=fu(()=>new Map),o=fu(()=>new Map),u=fu(()=>new Set),c=mL(e),{label:h,children:m,value:v,onValueChange:p,filter:x,shouldFilter:S,loop:w,disablePointerSelection:j=!1,vimBindings:C=!0,...A}=e,N=Yr(),O=Yr(),T=Yr(),R=b.useRef(null),E=bse();Zo(()=>{if(v!==void 0){let ee=v.trim();n.current.value=ee,D.emit()}},[v]),Zo(()=>{E(6,se)},[]);let D=b.useMemo(()=>({subscribe:ee=>(u.current.add(ee),()=>u.current.delete(ee)),snapshot:()=>n.current,setState:(ee,ve,z)=>{var Y,le,fe,De;if(!Object.is(n.current[ee],ve)){if(n.current[ee]=ve,ee==="search")F(),P(),E(1,B);else if(ee==="value"){if(document.activeElement.hasAttribute("cmdk-input")||document.activeElement.hasAttribute("cmdk-root")){let te=document.getElementById(T);te?te.focus():(Y=document.getElementById(N))==null||Y.focus()}if(E(7,()=>{var te;n.current.selectedItemId=(te=ue())==null?void 0:te.id,D.emit()}),z||E(5,se),((le=c.current)==null?void 0:le.value)!==void 0){let te=ve??"";(De=(fe=c.current).onValueChange)==null||De.call(fe,te);return}}D.emit()}},emit:()=>{u.current.forEach(ee=>ee())}}),[]),k=b.useMemo(()=>({value:(ee,ve,z)=>{var Y;ve!==((Y=o.current.get(ee))==null?void 0:Y.value)&&(o.current.set(ee,{value:ve,keywords:z}),n.current.filtered.items.set(ee,I(ve,z)),E(2,()=>{P(),D.emit()}))},item:(ee,ve)=>(r.current.add(ee),ve&&(l.current.has(ve)?l.current.get(ve).add(ee):l.current.set(ve,new Set([ee]))),E(3,()=>{F(),P(),n.current.value||B(),D.emit()}),()=>{o.current.delete(ee),r.current.delete(ee),n.current.filtered.items.delete(ee);let z=ue();E(4,()=>{F(),(z==null?void 0:z.getAttribute("id"))===ee&&B(),D.emit()})}),group:ee=>(l.current.has(ee)||l.current.set(ee,new Set),()=>{o.current.delete(ee),l.current.delete(ee)}),filter:()=>c.current.shouldFilter,label:h||e["aria-label"],getDisablePointerSelection:()=>c.current.disablePointerSelection,listId:N,inputId:T,labelId:O,listInnerRef:R}),[]);function I(ee,ve){var z,Y;let le=(Y=(z=c.current)==null?void 0:z.filter)!=null?Y:use;return ee?le(ee,n.current.search,ve):0}function P(){if(!n.current.search||c.current.shouldFilter===!1)return;let ee=n.current.filtered.items,ve=[];n.current.filtered.groups.forEach(Y=>{let le=l.current.get(Y),fe=0;le.forEach(De=>{let te=ee.get(De);fe=Math.max(te,fe)}),ve.push([Y,fe])});let z=R.current;de().sort((Y,le)=>{var fe,De;let te=Y.getAttribute("id"),ge=le.getAttribute("id");return((fe=ee.get(ge))!=null?fe:0)-((De=ee.get(te))!=null?De:0)}).forEach(Y=>{let le=Y.closest(j0);le?le.appendChild(Y.parentElement===le?Y:Y.closest(`${j0} > *`)):z.appendChild(Y.parentElement===z?Y:Y.closest(`${j0} > *`))}),ve.sort((Y,le)=>le[1]-Y[1]).forEach(Y=>{var le;let fe=(le=R.current)==null?void 0:le.querySelector(`${gf}[${cu}="${encodeURIComponent(Y[0])}"]`);fe==null||fe.parentElement.appendChild(fe)})}function B(){let ee=de().find(z=>z.getAttribute("aria-disabled")!=="true"),ve=ee==null?void 0:ee.getAttribute(cu);D.setState("value",ve||void 0)}function F(){var ee,ve,z,Y;if(!n.current.search||c.current.shouldFilter===!1){n.current.filtered.count=r.current.size;return}n.current.filtered.groups=new Set;let le=0;for(let fe of r.current){let De=(ve=(ee=o.current.get(fe))==null?void 0:ee.value)!=null?ve:"",te=(Y=(z=o.current.get(fe))==null?void 0:z.keywords)!=null?Y:[],ge=I(De,te);n.current.filtered.items.set(fe,ge),ge>0&&le++}for(let[fe,De]of l.current)for(let te of De)if(n.current.filtered.items.get(te)>0){n.current.filtered.groups.add(fe);break}n.current.filtered.count=le}function se(){var ee,ve,z;let Y=ue();Y&&(((ee=Y.parentElement)==null?void 0:ee.firstChild)===Y&&((z=(ve=Y.closest(gf))==null?void 0:ve.querySelector(sse))==null||z.scrollIntoView({block:"nearest"})),Y.scrollIntoView({block:"nearest"}))}function ue(){var ee;return(ee=R.current)==null?void 0:ee.querySelector(`${uL}[aria-selected="true"]`)}function de(){var ee;return Array.from(((ee=R.current)==null?void 0:ee.querySelectorAll(iR))||[])}function G(ee){let ve=de()[ee];ve&&D.setState("value",ve.getAttribute(cu))}function ne(ee){var ve;let z=ue(),Y=de(),le=Y.findIndex(De=>De===z),fe=Y[le+ee];(ve=c.current)!=null&&ve.loop&&(fe=le+ee<0?Y[Y.length-1]:le+ee===Y.length?Y[0]:Y[le+ee]),fe&&D.setState("value",fe.getAttribute(cu))}function ie(ee){let ve=ue(),z=ve==null?void 0:ve.closest(gf),Y;for(;z&&!Y;)z=ee>0?yse(z,gf):xse(z,gf),Y=z==null?void 0:z.querySelector(iR);Y?D.setState("value",Y.getAttribute(cu)):ne(ee)}let ce=()=>G(de().length-1),U=ee=>{ee.preventDefault(),ee.metaKey?ce():ee.altKey?ie(1):ne(1)},Ee=ee=>{ee.preventDefault(),ee.metaKey?G(0):ee.altKey?ie(-1):ne(-1)};return b.createElement(ln.div,{ref:t,tabIndex:-1,...A,"cmdk-root":"",onKeyDown:ee=>{var ve;(ve=A.onKeyDown)==null||ve.call(A,ee);let z=ee.nativeEvent.isComposing||ee.keyCode===229;if(!(ee.defaultPrevented||z))switch(ee.key){case"n":case"j":{C&&ee.ctrlKey&&U(ee);break}case"ArrowDown":{U(ee);break}case"p":case"k":{C&&ee.ctrlKey&&Ee(ee);break}case"ArrowUp":{Ee(ee);break}case"Home":{ee.preventDefault(),G(0);break}case"End":{ee.preventDefault(),ce();break}case"Enter":{ee.preventDefault();let Y=ue();if(Y){let le=new Event(Qb);Y.dispatchEvent(le)}}}}},b.createElement("label",{"cmdk-label":"",htmlFor:k.inputId,id:k.labelId,style:wse},h),Eg(e,ee=>b.createElement(fL.Provider,{value:D},b.createElement(cL.Provider,{value:k},ee))))}),cse=b.forwardRef((e,t)=>{var n,r;let l=Yr(),o=b.useRef(null),u=b.useContext(dL),c=gd(),h=mL(e),m=(r=(n=h.current)==null?void 0:n.forceMount)!=null?r:u==null?void 0:u.forceMount;Zo(()=>{if(!m)return c.item(l,u==null?void 0:u.id)},[m]);let v=vL(l,o,[e.value,e.children,o],e.keywords),p=Cw(),x=zl(E=>E.value&&E.value===v.current),S=zl(E=>m||c.filter()===!1?!0:E.search?E.filtered.items.get(l)>0:!0);b.useEffect(()=>{let E=o.current;if(!(!E||e.disabled))return E.addEventListener(Qb,w),()=>E.removeEventListener(Qb,w)},[S,e.onSelect,e.disabled]);function w(){var E,D;j(),(D=(E=h.current).onSelect)==null||D.call(E,v.current)}function j(){p.setState("value",v.current,!0)}if(!S)return null;let{disabled:C,value:A,onSelect:N,forceMount:O,keywords:T,...R}=e;return b.createElement(ln.div,{ref:Bo(o,t),...R,id:l,"cmdk-item":"",role:"option","aria-disabled":!!C,"aria-selected":!!x,"data-disabled":!!C,"data-selected":!!x,onPointerMove:C||c.getDisablePointerSelection()?void 0:j,onClick:C?void 0:w},e.children)}),fse=b.forwardRef((e,t)=>{let{heading:n,children:r,forceMount:l,...o}=e,u=Yr(),c=b.useRef(null),h=b.useRef(null),m=Yr(),v=gd(),p=zl(S=>l||v.filter()===!1?!0:S.search?S.filtered.groups.has(u):!0);Zo(()=>v.group(u),[]),vL(u,c,[e.value,e.heading,h]);let x=b.useMemo(()=>({id:u,forceMount:l}),[l]);return b.createElement(ln.div,{ref:Bo(c,t),...o,"cmdk-group":"",role:"presentation",hidden:p?void 0:!0},n&&b.createElement("div",{ref:h,"cmdk-group-heading":"","aria-hidden":!0,id:m},n),Eg(e,S=>b.createElement("div",{"cmdk-group-items":"",role:"group","aria-labelledby":n?m:void 0},b.createElement(dL.Provider,{value:x},S))))}),dse=b.forwardRef((e,t)=>{let{alwaysRender:n,...r}=e,l=b.useRef(null),o=zl(u=>!u.search);return!n&&!o?null:b.createElement(ln.div,{ref:Bo(l,t),...r,"cmdk-separator":"",role:"separator"})}),hse=b.forwardRef((e,t)=>{let{onValueChange:n,...r}=e,l=e.value!=null,o=Cw(),u=zl(m=>m.search),c=zl(m=>m.selectedItemId),h=gd();return b.useEffect(()=>{e.value!=null&&o.setState("search",e.value)},[e.value]),b.createElement(ln.input,{ref:t,...r,"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":c,id:h.inputId,type:"text",value:l?e.value:u,onChange:m=>{l||o.setState("search",m.target.value),n==null||n(m.target.value)}})}),mse=b.forwardRef((e,t)=>{let{children:n,label:r="Suggestions",...l}=e,o=b.useRef(null),u=b.useRef(null),c=zl(m=>m.selectedItemId),h=gd();return b.useEffect(()=>{if(u.current&&o.current){let m=u.current,v=o.current,p,x=new ResizeObserver(()=>{p=requestAnimationFrame(()=>{let S=m.offsetHeight;v.style.setProperty("--cmdk-list-height",S.toFixed(1)+"px")})});return x.observe(m),()=>{cancelAnimationFrame(p),x.unobserve(m)}}},[]),b.createElement(ln.div,{ref:Bo(o,t),...l,"cmdk-list":"",role:"listbox",tabIndex:-1,"aria-activedescendant":c,"aria-label":r,id:h.listId},Eg(e,m=>b.createElement("div",{ref:Bo(u,h.listInnerRef),"cmdk-list-sizer":""},m)))}),vse=b.forwardRef((e,t)=>{let{open:n,onOpenChange:r,overlayClassName:l,contentClassName:o,container:u,...c}=e;return b.createElement(Joe,{open:n,onOpenChange:r},b.createElement(tse,{container:u},b.createElement(nse,{"cmdk-overlay":"",className:l}),b.createElement(ase,{"aria-label":e.label,"cmdk-dialog":"",className:o},b.createElement(hL,{ref:t,...c}))))}),gse=b.forwardRef((e,t)=>zl(n=>n.filtered.count===0)?b.createElement(ln.div,{ref:t,...e,"cmdk-empty":"",role:"presentation"}):null),pse=b.forwardRef((e,t)=>{let{progress:n,children:r,label:l="Loading...",...o}=e;return b.createElement(ln.div,{ref:t,...o,"cmdk-loading":"",role:"progressbar","aria-valuenow":n,"aria-valuemin":0,"aria-valuemax":100,"aria-label":l},Eg(e,u=>b.createElement("div",{"aria-hidden":!0},u)))}),gl=Object.assign(hL,{List:mse,Item:cse,Input:hse,Group:fse,Separator:dse,Dialog:vse,Empty:gse,Loading:pse});function yse(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return n;n=n.nextElementSibling}}function xse(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return n;n=n.previousElementSibling}}function mL(e){let t=b.useRef(e);return Zo(()=>{t.current=e}),t}var Zo=typeof window>"u"?b.useEffect:b.useLayoutEffect;function fu(e){let t=b.useRef();return t.current===void 0&&(t.current=e()),t}function zl(e){let t=Cw(),n=()=>e(t.snapshot());return b.useSyncExternalStore(t.subscribe,n,n)}function vL(e,t,n,r=[]){let l=b.useRef(),o=gd();return Zo(()=>{var u;let c=(()=>{var m;for(let v of n){if(typeof v=="string")return v.trim();if(typeof v=="object"&&"current"in v)return v.current?(m=v.current.textContent)==null?void 0:m.trim():l.current}})(),h=r.map(m=>m.trim());o.value(e,c,h),(u=t.current)==null||u.setAttribute(cu,c),l.current=c}),l}var bse=()=>{let[e,t]=b.useState(),n=fu(()=>new Map);return Zo(()=>{n.current.forEach(r=>r()),n.current=new Map},[e]),(r,l)=>{n.current.set(r,l),t({})}};function Sse(e){let t=e.type;return typeof t=="function"?t(e.props):"render"in t?t.render(e.props):e}function Eg({asChild:e,children:t},n){return e&&b.isValidElement(t)?b.cloneElement(Sse(t),{ref:t.ref},n(t.props.children)):n(t)}var wse={position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0"};const jse=[["home","Обзор"],["users","Пользователи"],["subs","Подписки и оплаты"],["devices","Устройства"],["sources","Источники поиска"],["rank","Подбор раздач"],["cache","Кэш"],["funnel","Воронка"],["revenue","Выручка"],["nuc","NUC"],["support","Поддержка"],["promos","Промо"],["fails","Отказы"],["audit","Журнал"],["ads","Реклама"],["referral","Рефералы"],["services","Сервисы"],["dht","DHT"],["monitor","Мониторинг"],["changes","Изменения"],["settings","Настройки"],["security","Доступ"],["crashes","Сбои"],["broadcast","Рассылка"],["versions","Версии"]].map(([e,t])=>({id:e,label:t}));function Cse({open:e,onOpen:t,go:n}){const[r,l]=b.useState(""),[o,u]=b.useState([]);return b.useEffect(()=>{const c=h=>{(h.ctrlKey||h.metaKey)&&h.key.toLowerCase()==="k"&&(h.preventDefault(),t(!e))};return window.addEventListener("keydown",c),()=>window.removeEventListener("keydown",c)},[e,t]),b.useEffect(()=>{if(!e||r.trim().length<2){u([]);return}let c=!1;const h=window.setTimeout(()=>{ot("/admin/api/search?q="+encodeURIComponent(r.trim())).then(m=>{c||u(m.hits||[])})},180);return()=>{c=!0,window.clearTimeout(h)}},[r,e]),e?f.jsx("div",{className:"fixed inset-0 z-50 flex items-start justify-center bg-black/60 px-4 pt-[12vh]",onClick:()=>t(!1),children:f.jsx("div",{className:"w-full max-w-xl rounded-lg border border-border bg-card shadow-xl",onClick:c=>c.stopPropagation(),children:f.jsxs(gl,{label:"Поиск",shouldFilter:!1,children:[f.jsx(gl.Input,{value:r,onValueChange:l,placeholder:"Аккаунт, устройство, платёж, раздача",autoFocus:!0}),f.jsxs(gl.List,{className:"max-h-80 overflow-auto p-2",children:[f.jsx(gl.Empty,{className:"px-2 py-3 text-sm text-muted-foreground",children:"Ничего не найдено"}),f.jsx(gl.Group,{heading:"Экраны",children:jse.filter(c=>!r.trim()||c.label.toLowerCase().indexOf(r.trim().toLowerCase())>=0).map(c=>f.jsx(gl.Item,{value:c.label,onSelect:()=>{n(c.id),t(!1)},children:c.label},c.id))}),o.length?f.jsx(gl.Group,{heading:"Данные",children:o.map(c=>f.jsxs(gl.Item,{value:c.kind+" "+c.title,onSelect:()=>{if(c.href.indexOf("tab=")>=0){const h=new URL(c.href,location.origin).searchParams.get("tab");h&&n(h)}c.href.indexOf("id=")>=0&&(location.href=c.href),t(!1)},children:[f.jsx("span",{className:"mr-2 text-xs uppercase text-muted-foreground",children:c.kind}),c.title]},c.kind+c.id))}):null]})]})})}):null}const _se=[{title:"Обзор",items:[["home","Обзор"],["users","Пользователи"],["subs","Подписки и оплаты"],["devices","Устройства"]]},{title:"Сеть",items:[["sources","Источники"],["rank","Подбор"],["cache","Кэш"],["nuc","NUC"]]},{title:"Деньги",items:[["funnel","Воронка"],["revenue","Выручка"],["finance","Финансы"],["donations","Донаты"],["promos","Промо"],["referral","Рефералы"]]},{title:"Работа",items:[["support","Поддержка"],["fails","Отказы"],["ads","Реклама"],["services","Сервисы"],["dht","DHT"],["monitor","Мониторинг"],["changes","Изменения"]]},{title:"Система",items:[["settings","Настройки"],["audit","Журнал"],["security","Доступ"],["crashes","Сбои"],["broadcast","Рассылка"],["versions","Версии"]]}];function Ase(e,t){return Tv({queryKey:["desk"],enabled:e,refetchInterval:t?!1:12e3,queryFn:()=>ot("/admin/api/desk")})}function Ese({alerts:e}){const t=e||[];return f.jsxs(ye,{id:"alerts",children:[f.jsx(Ne,{children:f.jsxs(Te,{children:["Предупреждения"," ",t.length>0?f.jsx(Oe,{variant:"count",className:"ml-2 align-middle",children:t.length}):null]})}),t.length===0?f.jsx(xe,{className:"text-sm text-muted-foreground",children:"Алертов нет"}):f.jsx(xe,{className:"space-y-2",children:t.map((n,r)=>f.jsx(r6,{a:n},r))})]})}function Ose(){var k,I,P,B,F,se,ue,de;const[e,t]=b.useState(null),[n,r]=b.useState(null),[l,o]=b.useState(null),u=b.useMemo(()=>new URLSearchParams(location.search),[]),[c,h]=b.useState(()=>u.get("tab")||"home"),[m,v]=b.useState("all"),[p,x]=b.useState(""),[S,w]=b.useState(!1),[j,C]=b.useState(!1),A=u.get("tg")||"",N=Iv(),O=Ase(e===!0&&!l,N.paused);async function T(){const G=new URLSearchParams(location.search).get("id");if(G){const ie=await ot("/admin/api/user?id="+encodeURIComponent(G));if(ie.auth===!1){t(!1);return}if(ie.error){o(null),t(!0);const ce=await ot("/admin/api/home");r(ce);return}o(ie),t(!0);return}const ne=await ot("/admin/api/home");if(ne.auth===!1){t(!1);return}r(ne),o(null),t(!0)}b.useEffect(()=>{T()},[]),b.useEffect(()=>{const G=()=>void T();return window.addEventListener("omp-admin-live",G),()=>window.removeEventListener("omp-admin-live",G)},[]),b.useEffect(()=>{if(e!==!0||c!=="support"||l)return;let G=!1;const ne=window.setInterval(()=>{ot("/admin/api/home").then(ie=>{if(!G){if(ie.auth===!1){t(!1);return}r(ce=>ce&&{...ce,support:ie.support||[]})}})},3e3);return()=>{G=!0,window.clearInterval(ne)}},[e,c,l]);async function R(G,ne={}){var U,Ee,ee;const ie=(l==null?void 0:l.csrf)||(n==null?void 0:n.csrf)||"",ce=await Qt(G,ie,ne);if(ce.auth===!1)return t(!1),ce;if(G==="/admin/logout")return location.href="/admin/",ce;if(ce.redirect){const z=new URL(ce.redirect,location.origin).searchParams.get("id")||"",Y=new URLSearchParams(location.search).get("id")||"";if(z!==Y)return location.href=ce.redirect,ce}return await T(),(U=ce.flash)!=null&&U.error?ft(ce.flash.error):(Ee=ce.flash)!=null&&Ee.text?ft(ce.flash.text):(ee=ce.flash)!=null&&ee.promo&&ft("Промокод создан"),ce}if(e===null)return f.jsx(i6,{});if(e===!1)return f.jsx(o6,{});if(l)return f.jsxs(f.Fragment,{children:[f.jsxs("div",{className:"mx-auto flex max-w-[1200px] items-center justify-between px-4 py-3",children:[f.jsx(KE,{}),f.jsx(he,{variant:"secondary",onClick:()=>location.href="/admin/",children:"К списку"})]}),f.jsx(U6,{user:l,run:R}),f.jsx(NE,{})]});const E=n||{},D=O.data&&O.data.auth!==!1?O.data:void 0;return f.jsxs("main",{className:"min-h-screen lg:flex",children:[f.jsxs("aside",{className:(S?"block":"hidden")+" w-full border-b border-border bg-card lg:block lg:w-56 lg:shrink-0 lg:border-b-0 lg:border-r",children:[f.jsx("div",{className:"px-3 py-3",children:f.jsx(RM,{})}),f.jsx("nav",{className:"px-2 pb-4",children:_se.map(G=>f.jsxs("div",{className:"mb-3",children:[f.jsx("div",{className:"px-2 py-1 text-[11px] uppercase tracking-wide text-muted-foreground",children:G.title}),G.items.map(([ne,ie])=>f.jsxs("button",{type:"button",className:"block w-full rounded-md px-2 py-1.5 text-left text-sm "+(c===ne?"bg-primary text-primary-foreground":"text-foreground hover:bg-secondary"),onClick:()=>{h(ne),w(!1)},children:[ie,ne==="support"&&(E.support||[]).length>0?" "+(E.support||[]).length:""]},ne))]},G.title))})]}),f.jsxs("div",{className:"min-w-0 flex-1 space-y-4 px-4 py-4",children:[f.jsxs("header",{className:"flex flex-wrap items-center justify-between gap-3",children:[f.jsxs("div",{className:"flex items-center gap-2",children:[f.jsx(he,{variant:"secondary",className:"lg:hidden",onClick:()=>w(G=>!G),children:"Меню"}),f.jsx(he,{variant:"secondary",onClick:()=>C(!0),children:"Поиск"}),f.jsx("span",{className:"text-xs text-muted-foreground",children:"Ctrl+K"})]}),f.jsxs("div",{className:"flex items-center gap-3",children:[f.jsx(KE,{}),f.jsx("span",{className:"text-xs text-muted-foreground",children:(D==null?void 0:D.role)==="read"?"только просмотр":"полный доступ"}),f.jsx(he,{variant:"secondary",onClick:()=>void R("/admin/logout"),children:"Выйти"})]})]}),f.jsx(Cse,{open:j,onOpen:C,go:h}),f.jsx(TM,{flash:E.flash}),f.jsxs(t6,{value:c,onValueChange:h,children:[f.jsxs(NM,{className:"hidden",children:[f.jsxs(wt,{value:"home",children:["Главная",(E.alerts||[]).length>0?f.jsx(Oe,{variant:"count",className:"ml-2",children:(E.alerts||[]).length}):null]}),f.jsxs(wt,{value:"support",children:["Поддержка",(E.support||[]).length>0?f.jsx(Oe,{variant:"count",className:"ml-2",children:(E.support||[]).length}):null]}),f.jsx(wt,{value:"subs",children:"Подписки"}),f.jsx(wt,{value:"finance",children:"Финансы"}),f.jsx(wt,{value:"promos",children:"Промо"}),f.jsx(wt,{value:"fails",children:"Отказы"}),f.jsx(wt,{value:"audit",children:"Журнал"}),f.jsx(wt,{value:"ads",children:"Реклама"}),f.jsx(wt,{value:"referral",children:"Рефералы"}),f.jsx(wt,{value:"services",children:"Сервисы"}),f.jsx(wt,{value:"cache",children:"Кэш"}),f.jsx(wt,{value:"dht",children:"DHT"}),f.jsx(wt,{value:"monitor",children:"Мониторинг"}),f.jsx(wt,{value:"changes",children:"Изменения"}),f.jsx(wt,{value:"settings",children:"Настройки"}),f.jsx(wt,{value:"security",children:"Доступ"}),f.jsx(wt,{value:"users",children:"Пользователи"}),f.jsx(wt,{value:"devices",children:"Устройства"}),f.jsx(wt,{value:"sources",children:"Источники"}),f.jsx(wt,{value:"rank",children:"Подбор"}),f.jsx(wt,{value:"funnel",children:"Воронка"}),f.jsx(wt,{value:"revenue",children:"Выручка"}),f.jsx(wt,{value:"nuc",children:"NUC"}),f.jsx(wt,{value:"crashes",children:"Сбои"}),f.jsx(wt,{value:"broadcast",children:"Рассылка"}),f.jsx(wt,{value:"versions",children:"Версии"})]}),f.jsx(bt,{value:"support",children:f.jsx(M6,{csrf:E.csrf,threads:E.support||[],onSent:()=>void T(),initialTelegramId:A})}),f.jsxs(bt,{value:"home",className:"space-y-4",children:[f.jsx(Rle,{data:D,csrf:E.csrf||""}),f.jsx("div",{className:"grid grid-cols-2 gap-3 md:grid-cols-3 lg:grid-cols-6",children:[[((k=E.stats)==null?void 0:k.accounts)??0,"аккаунтов"],[((I=E.stats)==null?void 0:I.activeSubs)??0,"активных"],[((P=E.stats)==null?void 0:P.payments30)??0,"оплат / 30 дн."],[Math.round(((B=E.stats)==null?void 0:B.revenue30)||0),"₽ / 30 дн."],[((F=E.stats)==null?void 0:F.devicesRefresh)==null?"-":E.stats.devicesRefresh,"новые токены"],[((se=E.stats)==null?void 0:se.devicesLegacy)==null?"-":E.stats.devicesLegacy,"старые токены"]].map(([G,ne])=>f.jsx(ye,{children:f.jsxs(xe,{className:"pt-4",children:[f.jsx("div",{className:"text-2xl font-bold",children:G}),f.jsx("div",{className:"text-xs text-muted-foreground",children:ne})]})},ne))}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Найти"})}),f.jsx(xe,{children:f.jsxs("form",{className:"flex flex-col gap-2 sm:flex-row",onSubmit:G=>{G.preventDefault(),R("/admin/find",{q:p})},children:[f.jsx($e,{placeholder:"Telegram / почта / код / идентификатор",value:p,onChange:G=>x(G.target.value)}),f.jsx(he,{type:"submit",children:"Найти"})]})})]}),f.jsx(Ese,{alerts:E.alerts}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Быстрое промо"})}),f.jsxs(xe,{className:"flex flex-wrap gap-2",children:[f.jsx(he,{onClick:()=>void R("/admin/promo",{days:1,maxUses:1}),children:"1 день × 1"}),f.jsx(he,{variant:"secondary",onClick:()=>void R("/admin/promo",{days:7,maxUses:10}),children:"7 дней × 10"}),f.jsx(he,{variant:"secondary",onClick:()=>void R("/admin/promo",{days:30,maxUses:1}),children:"30 дней × 1"})]})]}),f.jsx(aH,{run:R}),f.jsx(iH,{events:E.events||[]})]}),f.jsx(bt,{value:"users",children:f.jsx(Mle,{users:(D==null?void 0:D.users)||[],go:G=>location.href="/admin/?id="+encodeURIComponent(G)})}),f.jsx(bt,{value:"devices",children:f.jsx(Dle,{rows:(D==null?void 0:D.devices)||[]})}),f.jsxs(bt,{value:"sources",className:"space-y-4",children:[f.jsx(Ple,{data:D,csrf:E.csrf||""}),f.jsx(qE,{csrf:E.csrf||"",settings:E.settings||{},secrets:E.secrets,onSaved:()=>void T()})]}),f.jsx(bt,{value:"rank",children:c==="rank"?f.jsx(L8,{csrf:E.csrf||""}):null}),f.jsx(bt,{value:"funnel",children:f.jsx(kle,{data:D})}),f.jsx(bt,{value:"revenue",children:f.jsx(Ile,{data:D})}),f.jsx(bt,{value:"nuc",children:f.jsx(zle,{csrf:E.csrf||""})}),f.jsx(bt,{value:"subs",children:f.jsx(oH,{subs:E.subscriptions||[],filter:m,setFilter:v,csrf:E.csrf||""})}),f.jsxs(bt,{value:"finance",className:"space-y-4",children:[f.jsx(zM,{rows:E.pending||[],run:R,showWho:!0}),f.jsx(cH,{home:E})]}),f.jsx(bt,{value:"promos",children:f.jsx(lH,{run:R,promos:E.promos||[]})}),f.jsx(bt,{value:"fails",children:f.jsx(gH,{})}),f.jsxs(bt,{value:"audit",className:"space-y-4",children:[f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Откат настройки"})}),f.jsx(xe,{children:f.jsx(Lle,{rows:(D==null?void 0:D.rollbacks)||[],csrf:E.csrf||""})})]}),f.jsx(vH,{})]}),f.jsx(bt,{value:"changes",children:f.jsx(o8,{})}),f.jsx(bt,{value:"settings",children:f.jsx(dH,{run:R,settings:E.settings||{},storage:E.storage,backup:E.backup,secrets:E.secrets})}),f.jsx(bt,{value:"ads",children:c==="ads"?f.jsx(G6,{csrf:E.csrf||""}):null}),f.jsx(bt,{value:"donations",children:f.jsx(e8,{settings:(ue=E.settings)==null?void 0:ue.donate,report:E.donations,run:R})}),f.jsx(bt,{value:"referral",children:f.jsx(t8,{csrf:E.csrf||"",settings:(de=E.settings)==null?void 0:de.referral,journal:E.referralJournal,run:G=>R("/admin/referral",G)})}),f.jsx(bt,{value:"services",children:f.jsx(qE,{csrf:E.csrf||"",settings:E.settings||{},secrets:E.secrets,onSaved:()=>void T()})}),f.jsx(bt,{value:"cache",children:c==="cache"?f.jsx(I8,{csrf:E.csrf||""}):null}),f.jsx(bt,{value:"dht",children:c==="dht"?f.jsx(M8,{csrf:E.csrf||""}):null}),f.jsx(bt,{value:"monitor",children:f.jsx(C8,{csrf:E.csrf||""})}),f.jsxs(bt,{value:"security",className:"space-y-4",children:[f.jsx(pH,{run:R,sessions:E.sessions||[],sessionId:E.sessionId||""}),f.jsx(Hle,{})]}),f.jsx(bt,{value:"crashes",children:f.jsx(Ule,{csrf:E.csrf||""})}),f.jsx(bt,{value:"broadcast",children:f.jsx($le,{csrf:E.csrf||""})}),f.jsx(bt,{value:"versions",children:f.jsx(Ble,{data:D})})]}),f.jsx(NE,{})]})]})}const Nse=new V$({defaultOptions:{queries:{retry:1,refetchOnWindowFocus:!1}}});o5.createRoot(document.getElementById("root")).render(f.jsx(b.StrictMode,{children:f.jsx(x$,{client:Nse,children:f.jsx(yH,{children:f.jsx(Ose,{})})})})); +`)},tse=0,au=[];function nse(e){var t=b.useRef([]),n=b.useRef([0,0]),r=b.useRef(),l=b.useState(tse++)[0],o=b.useState(iL)[0],u=b.useRef(e);b.useEffect(function(){u.current=e},[e]),b.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(l));var j=joe([e.lockRef.current],(e.shards||[]).map(oR),!0).filter(Boolean);return j.forEach(function(C){return C.classList.add("allow-interactivity-".concat(l))}),function(){document.body.classList.remove("block-interactivity-".concat(l)),j.forEach(function(C){return C.classList.remove("allow-interactivity-".concat(l))})}}},[e.inert,e.lockRef.current,e.shards]);var c=b.useCallback(function(j,C){if("touches"in j&&j.touches.length===2||j.type==="wheel"&&j.ctrlKey)return!u.current.allowPinchZoom;var E=Cm(j),N=n.current,O="deltaX"in j?j.deltaX:N[0]-E[0],T="deltaY"in j?j.deltaY:N[1]-E[1],R,A=j.target,D=Math.abs(O)>Math.abs(T)?"h":"v";if("touches"in j&&D==="h"&&A.type==="range")return!1;var k=window.getSelection(),I=k&&k.anchorNode,P=I?I===A||I.contains(A):!1;if(P)return!1;var B=aR(D,A);if(!B)return!0;if(B?R=D:(R=D==="v"?"h":"v",B=aR(D,A)),!B)return!1;if(!r.current&&"changedTouches"in j&&(O||T)&&(r.current=R),!R)return!0;var F=r.current||R;return Woe(F,C,j,F==="h"?O:T)},[]),h=b.useCallback(function(j){var C=j;if(!(!au.length||au[au.length-1]!==o)){var E="deltaY"in C?lR(C):Cm(C),N=t.current.filter(function(R){return R.name===C.type&&(R.target===C.target||C.target===R.shadowParent)&&Joe(R.delta,E)})[0];if(N&&N.should){C.cancelable&&C.preventDefault();return}if(!N){var O=(u.current.shards||[]).map(oR).filter(Boolean).filter(function(R){return R.contains(C.target)}),T=O.length>0?c(C,O[0]):!u.current.noIsolation;T&&C.cancelable&&C.preventDefault()}}},[]),m=b.useCallback(function(j,C,E,N){var O={name:j,delta:C,target:E,should:N,shadowParent:rse(E)};t.current.push(O),setTimeout(function(){t.current=t.current.filter(function(T){return T!==O})},1)},[]),v=b.useCallback(function(j){n.current=Cm(j),r.current=void 0},[]),g=b.useCallback(function(j){m(j.type,lR(j),j.target,c(j,e.lockRef.current))},[]),x=b.useCallback(function(j){m(j.type,Cm(j),j.target,c(j,e.lockRef.current))},[]);b.useEffect(function(){return au.push(o),e.setCallbacks({onScrollCapture:g,onWheelCapture:g,onTouchMoveCapture:x}),document.addEventListener("wheel",h,iu),document.addEventListener("touchmove",h,iu),document.addEventListener("touchstart",v,iu),function(){au=au.filter(function(j){return j!==o}),document.removeEventListener("wheel",h,iu),document.removeEventListener("touchmove",h,iu),document.removeEventListener("touchstart",v,iu)}},[]);var S=e.removeScrollBar,w=e.inert;return b.createElement(b.Fragment,null,w?b.createElement(o,{styles:ese(l)}):null,S?b.createElement(Goe,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function rse(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const ise=Moe(rL,nse);var sL=b.forwardRef(function(e,t){return b.createElement(Ag,Pi({},e,{ref:t,sideCar:ise}))});sL.classNames=Ag.classNames;var ase=function(e){if(typeof document>"u")return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},lu=new WeakMap,_m=new WeakMap,Em={},j0=0,uL=function(e){return e&&(e.host||uL(e.parentNode))},lse=function(e,t){return t.map(function(n){if(e.contains(n))return n;var r=uL(n);return r&&e.contains(r)?r:(console.error("aria-hidden",n,"in not contained inside",e,". Doing nothing"),null)}).filter(function(n){return!!n})},ose=function(e,t,n,r){var l=lse(t,Array.isArray(e)?e:[e]);Em[n]||(Em[n]=new WeakMap);var o=Em[n],u=[],c=new Set,h=new Set(l),m=function(g){!g||c.has(g)||(c.add(g),m(g.parentNode))};l.forEach(m);var v=function(g){!g||h.has(g)||Array.prototype.forEach.call(g.children,function(x){if(c.has(x))v(x);else try{var S=x.getAttribute(r),w=S!==null&&S!=="false",j=(lu.get(x)||0)+1,C=(o.get(x)||0)+1;lu.set(x,j),o.set(x,C),u.push(x),j===1&&w&&_m.set(x,!0),C===1&&x.setAttribute(n,"true"),w||x.setAttribute(r,"true")}catch(E){console.error("aria-hidden: cannot operate on ",x,E)}})};return v(t),c.clear(),j0++,function(){u.forEach(function(g){var x=lu.get(g)-1,S=o.get(g)-1;lu.set(g,x),o.set(g,S),x||(_m.has(g)||g.removeAttribute(r),_m.delete(g)),S||g.removeAttribute(n)}),j0--,j0||(lu=new WeakMap,lu=new WeakMap,_m=new WeakMap,Em={})}},sse=function(e,t,n){n===void 0&&(n="data-aria-hidden");var r=Array.from(Array.isArray(e)?e:[e]),l=ase(e);return l?(r.push.apply(r,Array.from(l.querySelectorAll("[aria-live], script"))),ose(r,l,n,"aria-hidden")):function(){return null}},use=Object.defineProperty,qi=(e,t)=>use(e,"name",{value:t,configurable:!0}),Cw="Dialog",[cL,Vse]=Vu(Cw),[cse,is]=cL(Cw),fse=qi(e=>{const{__scopeDialog:t,children:n,open:r,defaultOpen:l,onOpenChange:o,modal:u=!0}=e,c=b.useRef(null),h=b.useRef(null),{nodes:m,registry:v}=Yz(),[g,x]=Dv({prop:r,defaultProp:l??!1,onChange:o,caller:Cw}),[S,w]=b.useState(0),[j,C]=b.useState(0);return f.jsx(cse,{scope:t,triggerRef:c,contentRef:h,contentId:Yr(),titleId:Yr(),descriptionId:Yr(),titlePresent:S>0,descriptionPresent:j>0,setTitleCount:w,setDescriptionCount:C,open:g,onOpenChange:x,onOpenToggle:b.useCallback(()=>x(E=>!E),[x]),modal:u,branchNodes:m,branchRegistry:v,children:n})},"Dialog"),fL="DialogPortal",[dse,dL]=cL(fL,{forceMount:void 0}),hse=qi(e=>{const{__scopeDialog:t,forceMount:n,children:r,container:l}=e,o=is(fL,t);return f.jsx(dse,{scope:t,forceMount:n,children:b.Children.map(r,u=>f.jsx(kv,{present:n||o.open,children:f.jsx(boe,{asChild:!0,container:l,children:u})}))})},"DialogPortal"),Qb="DialogOverlay",mse=b.forwardRef(qi(function(t,n){const r=dL(Qb,t.__scopeDialog),{forceMount:l=r.forceMount,...o}=t,u=is(Qb,t.__scopeDialog);return u.modal?f.jsx(kv,{present:l||u.open,children:f.jsx(gse,{...o,ref:n})}):null},"DialogOverlay")),vse=Ml("DialogOverlay.RemoveScroll"),gse=b.forwardRef(qi(function(t,n){const{__scopeDialog:r,...l}=t,o=is(Qb,r),u=Fz(),c=Kr(n,u);return f.jsx(sL,{as:vse,allowPinchZoom:!0,shards:b.useMemo(()=>[o.contentRef,...o.branchNodes.map(h=>({current:h}))],[o.contentRef,o.branchNodes]),children:f.jsx(ln.div,{"data-state":_w(o.open),...l,ref:c,style:{pointerEvents:"auto",...l.style}})})},"DialogOverlayImpl")),Ff="DialogContent",pse=b.forwardRef(qi(function(t,n){const r=dL(Ff,t.__scopeDialog),{forceMount:l=r.forceMount,...o}=t,u=is(Ff,t.__scopeDialog);return f.jsx(kv,{present:l||u.open,children:u.modal?f.jsx(yse,{...o,ref:n}):f.jsx(xse,{...o,ref:n})})},"DialogContent")),yse=b.forwardRef(qi(function(t,n){const r=is(Ff,t.__scopeDialog),l=b.useRef(null),o=Kr(n,r.contentRef,l);return b.useEffect(()=>{const u=l.current;if(u)return sse(u)},[]),f.jsx(hL,{...t,ref:o,trapFocus:r.open,disableOutsidePointerEvents:r.open,onCloseAutoFocus:$n(t.onCloseAutoFocus,u=>{var c;u.preventDefault(),(c=r.triggerRef.current)==null||c.focus()}),onPointerDownOutside:$n(t.onPointerDownOutside,u=>{const c=u.detail.originalEvent,h=c.button===0&&c.ctrlKey===!0;(c.button===2||h)&&u.preventDefault()}),onFocusOutside:$n(t.onFocusOutside,u=>u.preventDefault())})},"DialogContentModal")),xse=b.forwardRef(qi(function(t,n){const r=is(Ff,t.__scopeDialog),l=b.useRef(!1),o=b.useRef(!1);return f.jsx(hL,{...t,ref:n,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:u=>{var c,h;(c=t.onCloseAutoFocus)==null||c.call(t,u),u.defaultPrevented||(l.current||(h=r.triggerRef.current)==null||h.focus(),u.preventDefault()),l.current=!1,o.current=!1},onInteractOutside:u=>{var m,v;(m=t.onInteractOutside)==null||m.call(t,u),u.defaultPrevented||(l.current=!0,u.detail.originalEvent.type==="pointerdown"&&(o.current=!0));const c=u.target;((v=r.triggerRef.current)==null?void 0:v.contains(c))&&u.preventDefault(),u.detail.originalEvent.type==="focusin"&&o.current&&u.preventDefault()}})},"DialogContentNonModal")),hL=b.forwardRef(qi(function(t,n){const{__scopeDialog:r,trapFocus:l,onOpenAutoFocus:o,onCloseAutoFocus:u,"aria-describedby":c,children:h,...m}=t,v=is(Ff,r);return jw(),f.jsx(Kz,{registry:v.branchRegistry,children:f.jsx(goe,{asChild:!0,loop:!0,trapped:l,branches:v.branchNodes,onMountAutoFocus:o,onUnmountAutoFocus:u,children:f.jsx(hoe,{role:"dialog",id:v.contentId,"aria-labelledby":v.titlePresent?v.titleId:void 0,"aria-describedby":v.descriptionPresent?mL(c,v.descriptionId):c,"data-state":_w(v.open),...m,ref:n,deferPointerDownOutside:!0,onDismiss:()=>v.onOpenChange(!1),children:h})})})},"DialogContentImpl"));function mL(...e){const t=new Set;for(const n of e)if(typeof n=="string")for(const r of String(n).trim().split(/\s+/))r&&t.add(r);return t.size>0?Array.from(t).join(" "):void 0}qi(mL,"concatAriaDescribedby");function _w(e){return e?"open":"closed"}qi(_w,"getState");var gf='[cmdk-group=""]',C0='[cmdk-group-items=""]',bse='[cmdk-group-heading=""]',vL='[cmdk-item=""]',sR=`${vL}:not([aria-disabled="true"])`,Zb="cmdk-item-select",cu="data-value",Sse=(e,t,n)=>uoe(e,t,n),gL=b.createContext(void 0),pd=()=>b.useContext(gL),pL=b.createContext(void 0),Ew=()=>b.useContext(pL),yL=b.createContext(void 0),xL=b.forwardRef((e,t)=>{let n=fu(()=>{var ee,ve;return{search:"",value:(ve=(ee=e.value)!=null?ee:e.defaultValue)!=null?ve:"",selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}}}),r=fu(()=>new Set),l=fu(()=>new Map),o=fu(()=>new Map),u=fu(()=>new Set),c=bL(e),{label:h,children:m,value:v,onValueChange:g,filter:x,shouldFilter:S,loop:w,disablePointerSelection:j=!1,vimBindings:C=!0,...E}=e,N=Yr(),O=Yr(),T=Yr(),R=b.useRef(null),A=Mse();Zo(()=>{if(v!==void 0){let ee=v.trim();n.current.value=ee,D.emit()}},[v]),Zo(()=>{A(6,se)},[]);let D=b.useMemo(()=>({subscribe:ee=>(u.current.add(ee),()=>u.current.delete(ee)),snapshot:()=>n.current,setState:(ee,ve,z)=>{var Y,le,fe,De;if(!Object.is(n.current[ee],ve)){if(n.current[ee]=ve,ee==="search")F(),P(),A(1,B);else if(ee==="value"){if(document.activeElement.hasAttribute("cmdk-input")||document.activeElement.hasAttribute("cmdk-root")){let te=document.getElementById(T);te?te.focus():(Y=document.getElementById(N))==null||Y.focus()}if(A(7,()=>{var te;n.current.selectedItemId=(te=ue())==null?void 0:te.id,D.emit()}),z||A(5,se),((le=c.current)==null?void 0:le.value)!==void 0){let te=ve??"";(De=(fe=c.current).onValueChange)==null||De.call(fe,te);return}}D.emit()}},emit:()=>{u.current.forEach(ee=>ee())}}),[]),k=b.useMemo(()=>({value:(ee,ve,z)=>{var Y;ve!==((Y=o.current.get(ee))==null?void 0:Y.value)&&(o.current.set(ee,{value:ve,keywords:z}),n.current.filtered.items.set(ee,I(ve,z)),A(2,()=>{P(),D.emit()}))},item:(ee,ve)=>(r.current.add(ee),ve&&(l.current.has(ve)?l.current.get(ve).add(ee):l.current.set(ve,new Set([ee]))),A(3,()=>{F(),P(),n.current.value||B(),D.emit()}),()=>{o.current.delete(ee),r.current.delete(ee),n.current.filtered.items.delete(ee);let z=ue();A(4,()=>{F(),(z==null?void 0:z.getAttribute("id"))===ee&&B(),D.emit()})}),group:ee=>(l.current.has(ee)||l.current.set(ee,new Set),()=>{o.current.delete(ee),l.current.delete(ee)}),filter:()=>c.current.shouldFilter,label:h||e["aria-label"],getDisablePointerSelection:()=>c.current.disablePointerSelection,listId:N,inputId:T,labelId:O,listInnerRef:R}),[]);function I(ee,ve){var z,Y;let le=(Y=(z=c.current)==null?void 0:z.filter)!=null?Y:Sse;return ee?le(ee,n.current.search,ve):0}function P(){if(!n.current.search||c.current.shouldFilter===!1)return;let ee=n.current.filtered.items,ve=[];n.current.filtered.groups.forEach(Y=>{let le=l.current.get(Y),fe=0;le.forEach(De=>{let te=ee.get(De);fe=Math.max(te,fe)}),ve.push([Y,fe])});let z=R.current;de().sort((Y,le)=>{var fe,De;let te=Y.getAttribute("id"),ge=le.getAttribute("id");return((fe=ee.get(ge))!=null?fe:0)-((De=ee.get(te))!=null?De:0)}).forEach(Y=>{let le=Y.closest(C0);le?le.appendChild(Y.parentElement===le?Y:Y.closest(`${C0} > *`)):z.appendChild(Y.parentElement===z?Y:Y.closest(`${C0} > *`))}),ve.sort((Y,le)=>le[1]-Y[1]).forEach(Y=>{var le;let fe=(le=R.current)==null?void 0:le.querySelector(`${gf}[${cu}="${encodeURIComponent(Y[0])}"]`);fe==null||fe.parentElement.appendChild(fe)})}function B(){let ee=de().find(z=>z.getAttribute("aria-disabled")!=="true"),ve=ee==null?void 0:ee.getAttribute(cu);D.setState("value",ve||void 0)}function F(){var ee,ve,z,Y;if(!n.current.search||c.current.shouldFilter===!1){n.current.filtered.count=r.current.size;return}n.current.filtered.groups=new Set;let le=0;for(let fe of r.current){let De=(ve=(ee=o.current.get(fe))==null?void 0:ee.value)!=null?ve:"",te=(Y=(z=o.current.get(fe))==null?void 0:z.keywords)!=null?Y:[],ge=I(De,te);n.current.filtered.items.set(fe,ge),ge>0&&le++}for(let[fe,De]of l.current)for(let te of De)if(n.current.filtered.items.get(te)>0){n.current.filtered.groups.add(fe);break}n.current.filtered.count=le}function se(){var ee,ve,z;let Y=ue();Y&&(((ee=Y.parentElement)==null?void 0:ee.firstChild)===Y&&((z=(ve=Y.closest(gf))==null?void 0:ve.querySelector(bse))==null||z.scrollIntoView({block:"nearest"})),Y.scrollIntoView({block:"nearest"}))}function ue(){var ee;return(ee=R.current)==null?void 0:ee.querySelector(`${vL}[aria-selected="true"]`)}function de(){var ee;return Array.from(((ee=R.current)==null?void 0:ee.querySelectorAll(sR))||[])}function G(ee){let ve=de()[ee];ve&&D.setState("value",ve.getAttribute(cu))}function ne(ee){var ve;let z=ue(),Y=de(),le=Y.findIndex(De=>De===z),fe=Y[le+ee];(ve=c.current)!=null&&ve.loop&&(fe=le+ee<0?Y[Y.length-1]:le+ee===Y.length?Y[0]:Y[le+ee]),fe&&D.setState("value",fe.getAttribute(cu))}function ie(ee){let ve=ue(),z=ve==null?void 0:ve.closest(gf),Y;for(;z&&!Y;)z=ee>0?Tse(z,gf):Rse(z,gf),Y=z==null?void 0:z.querySelector(sR);Y?D.setState("value",Y.getAttribute(cu)):ne(ee)}let ce=()=>G(de().length-1),U=ee=>{ee.preventDefault(),ee.metaKey?ce():ee.altKey?ie(1):ne(1)},Ae=ee=>{ee.preventDefault(),ee.metaKey?G(0):ee.altKey?ie(-1):ne(-1)};return b.createElement(ln.div,{ref:t,tabIndex:-1,...E,"cmdk-root":"",onKeyDown:ee=>{var ve;(ve=E.onKeyDown)==null||ve.call(E,ee);let z=ee.nativeEvent.isComposing||ee.keyCode===229;if(!(ee.defaultPrevented||z))switch(ee.key){case"n":case"j":{C&&ee.ctrlKey&&U(ee);break}case"ArrowDown":{U(ee);break}case"p":case"k":{C&&ee.ctrlKey&&Ae(ee);break}case"ArrowUp":{Ae(ee);break}case"Home":{ee.preventDefault(),G(0);break}case"End":{ee.preventDefault(),ce();break}case"Enter":{ee.preventDefault();let Y=ue();if(Y){let le=new Event(Zb);Y.dispatchEvent(le)}}}}},b.createElement("label",{"cmdk-label":"",htmlFor:k.inputId,id:k.labelId,style:Pse},h),Og(e,ee=>b.createElement(pL.Provider,{value:D},b.createElement(gL.Provider,{value:k},ee))))}),wse=b.forwardRef((e,t)=>{var n,r;let l=Yr(),o=b.useRef(null),u=b.useContext(yL),c=pd(),h=bL(e),m=(r=(n=h.current)==null?void 0:n.forceMount)!=null?r:u==null?void 0:u.forceMount;Zo(()=>{if(!m)return c.item(l,u==null?void 0:u.id)},[m]);let v=SL(l,o,[e.value,e.children,o],e.keywords),g=Ew(),x=zl(A=>A.value&&A.value===v.current),S=zl(A=>m||c.filter()===!1?!0:A.search?A.filtered.items.get(l)>0:!0);b.useEffect(()=>{let A=o.current;if(!(!A||e.disabled))return A.addEventListener(Zb,w),()=>A.removeEventListener(Zb,w)},[S,e.onSelect,e.disabled]);function w(){var A,D;j(),(D=(A=h.current).onSelect)==null||D.call(A,v.current)}function j(){g.setState("value",v.current,!0)}if(!S)return null;let{disabled:C,value:E,onSelect:N,forceMount:O,keywords:T,...R}=e;return b.createElement(ln.div,{ref:Bo(o,t),...R,id:l,"cmdk-item":"",role:"option","aria-disabled":!!C,"aria-selected":!!x,"data-disabled":!!C,"data-selected":!!x,onPointerMove:C||c.getDisablePointerSelection()?void 0:j,onClick:C?void 0:w},e.children)}),jse=b.forwardRef((e,t)=>{let{heading:n,children:r,forceMount:l,...o}=e,u=Yr(),c=b.useRef(null),h=b.useRef(null),m=Yr(),v=pd(),g=zl(S=>l||v.filter()===!1?!0:S.search?S.filtered.groups.has(u):!0);Zo(()=>v.group(u),[]),SL(u,c,[e.value,e.heading,h]);let x=b.useMemo(()=>({id:u,forceMount:l}),[l]);return b.createElement(ln.div,{ref:Bo(c,t),...o,"cmdk-group":"",role:"presentation",hidden:g?void 0:!0},n&&b.createElement("div",{ref:h,"cmdk-group-heading":"","aria-hidden":!0,id:m},n),Og(e,S=>b.createElement("div",{"cmdk-group-items":"",role:"group","aria-labelledby":n?m:void 0},b.createElement(yL.Provider,{value:x},S))))}),Cse=b.forwardRef((e,t)=>{let{alwaysRender:n,...r}=e,l=b.useRef(null),o=zl(u=>!u.search);return!n&&!o?null:b.createElement(ln.div,{ref:Bo(l,t),...r,"cmdk-separator":"",role:"separator"})}),_se=b.forwardRef((e,t)=>{let{onValueChange:n,...r}=e,l=e.value!=null,o=Ew(),u=zl(m=>m.search),c=zl(m=>m.selectedItemId),h=pd();return b.useEffect(()=>{e.value!=null&&o.setState("search",e.value)},[e.value]),b.createElement(ln.input,{ref:t,...r,"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":c,id:h.inputId,type:"text",value:l?e.value:u,onChange:m=>{l||o.setState("search",m.target.value),n==null||n(m.target.value)}})}),Ese=b.forwardRef((e,t)=>{let{children:n,label:r="Suggestions",...l}=e,o=b.useRef(null),u=b.useRef(null),c=zl(m=>m.selectedItemId),h=pd();return b.useEffect(()=>{if(u.current&&o.current){let m=u.current,v=o.current,g,x=new ResizeObserver(()=>{g=requestAnimationFrame(()=>{let S=m.offsetHeight;v.style.setProperty("--cmdk-list-height",S.toFixed(1)+"px")})});return x.observe(m),()=>{cancelAnimationFrame(g),x.unobserve(m)}}},[]),b.createElement(ln.div,{ref:Bo(o,t),...l,"cmdk-list":"",role:"listbox",tabIndex:-1,"aria-activedescendant":c,"aria-label":r,id:h.listId},Og(e,m=>b.createElement("div",{ref:Bo(u,h.listInnerRef),"cmdk-list-sizer":""},m)))}),Ase=b.forwardRef((e,t)=>{let{open:n,onOpenChange:r,overlayClassName:l,contentClassName:o,container:u,...c}=e;return b.createElement(fse,{open:n,onOpenChange:r},b.createElement(hse,{container:u},b.createElement(mse,{"cmdk-overlay":"",className:l}),b.createElement(pse,{"aria-label":e.label,"cmdk-dialog":"",className:o},b.createElement(xL,{ref:t,...c}))))}),Ose=b.forwardRef((e,t)=>zl(n=>n.filtered.count===0)?b.createElement(ln.div,{ref:t,...e,"cmdk-empty":"",role:"presentation"}):null),Nse=b.forwardRef((e,t)=>{let{progress:n,children:r,label:l="Loading...",...o}=e;return b.createElement(ln.div,{ref:t,...o,"cmdk-loading":"",role:"progressbar","aria-valuenow":n,"aria-valuemin":0,"aria-valuemax":100,"aria-label":l},Og(e,u=>b.createElement("div",{"aria-hidden":!0},u)))}),gl=Object.assign(xL,{List:Ese,Item:wse,Input:_se,Group:jse,Separator:Cse,Dialog:Ase,Empty:Ose,Loading:Nse});function Tse(e,t){let n=e.nextElementSibling;for(;n;){if(n.matches(t))return n;n=n.nextElementSibling}}function Rse(e,t){let n=e.previousElementSibling;for(;n;){if(n.matches(t))return n;n=n.previousElementSibling}}function bL(e){let t=b.useRef(e);return Zo(()=>{t.current=e}),t}var Zo=typeof window>"u"?b.useEffect:b.useLayoutEffect;function fu(e){let t=b.useRef();return t.current===void 0&&(t.current=e()),t}function zl(e){let t=Ew(),n=()=>e(t.snapshot());return b.useSyncExternalStore(t.subscribe,n,n)}function SL(e,t,n,r=[]){let l=b.useRef(),o=pd();return Zo(()=>{var u;let c=(()=>{var m;for(let v of n){if(typeof v=="string")return v.trim();if(typeof v=="object"&&"current"in v)return v.current?(m=v.current.textContent)==null?void 0:m.trim():l.current}})(),h=r.map(m=>m.trim());o.value(e,c,h),(u=t.current)==null||u.setAttribute(cu,c),l.current=c}),l}var Mse=()=>{let[e,t]=b.useState(),n=fu(()=>new Map);return Zo(()=>{n.current.forEach(r=>r()),n.current=new Map},[e]),(r,l)=>{n.current.set(r,l),t({})}};function Dse(e){let t=e.type;return typeof t=="function"?t(e.props):"render"in t?t.render(e.props):e}function Og({asChild:e,children:t},n){return e&&b.isValidElement(t)?b.cloneElement(Dse(t),{ref:t.ref},n(t.props.children)):n(t)}var Pse={position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0"};const kse=[["home","Обзор"],["users","Пользователи"],["subs","Подписки и оплаты"],["devices","Устройства"],["sources","Источники поиска"],["rank","Подбор раздач"],["cache","Кэш"],["funnel","Воронка"],["revenue","Выручка"],["nuc","NUC"],["support","Поддержка"],["promos","Промо"],["fails","Отказы"],["audit","Журнал"],["ads","Реклама"],["referral","Рефералы"],["services","Сервисы"],["dht","DHT"],["monitor","Мониторинг"],["changes","Изменения"],["settings","Настройки"],["security","Доступ"],["crashes","Сбои"],["broadcast","Рассылка"],["versions","Версии"]].map(([e,t])=>({id:e,label:t}));function Ise({open:e,onOpen:t,go:n}){const[r,l]=b.useState(""),[o,u]=b.useState([]);return b.useEffect(()=>{const c=h=>{(h.ctrlKey||h.metaKey)&&h.key.toLowerCase()==="k"&&(h.preventDefault(),t(!e))};return window.addEventListener("keydown",c),()=>window.removeEventListener("keydown",c)},[e,t]),b.useEffect(()=>{if(!e||r.trim().length<2){u([]);return}let c=!1;const h=window.setTimeout(()=>{st("/admin/api/search?q="+encodeURIComponent(r.trim())).then(m=>{c||u(m.hits||[])})},180);return()=>{c=!0,window.clearTimeout(h)}},[r,e]),e?f.jsx("div",{className:"fixed inset-0 z-50 flex items-start justify-center bg-black/60 px-4 pt-[12vh]",onClick:()=>t(!1),children:f.jsx("div",{className:"w-full max-w-xl rounded-lg border border-border bg-card shadow-xl",onClick:c=>c.stopPropagation(),children:f.jsxs(gl,{label:"Поиск",shouldFilter:!1,children:[f.jsx(gl.Input,{value:r,onValueChange:l,placeholder:"Аккаунт, устройство, платёж, раздача",autoFocus:!0}),f.jsxs(gl.List,{className:"max-h-80 overflow-auto p-2",children:[f.jsx(gl.Empty,{className:"px-2 py-3 text-sm text-muted-foreground",children:"Ничего не найдено"}),f.jsx(gl.Group,{heading:"Экраны",children:kse.filter(c=>!r.trim()||c.label.toLowerCase().indexOf(r.trim().toLowerCase())>=0).map(c=>f.jsx(gl.Item,{value:c.label,onSelect:()=>{n(c.id),t(!1)},children:c.label},c.id))}),o.length?f.jsx(gl.Group,{heading:"Данные",children:o.map(c=>f.jsxs(gl.Item,{value:c.kind+" "+c.title,onSelect:()=>{if(c.href.indexOf("tab=")>=0){const h=new URL(c.href,location.origin).searchParams.get("tab");h&&n(h)}c.href.indexOf("id=")>=0&&(location.href=c.href),t(!1)},children:[f.jsx("span",{className:"mr-2 text-xs uppercase text-muted-foreground",children:c.kind}),c.title]},c.kind+c.id))}):null]})]})})}):null}const zse=[{title:"Обзор",items:[["home","Обзор"],["users","Пользователи"],["subs","Подписки и оплаты"],["devices","Устройства"]]},{title:"Сеть",items:[["sources","Источники"],["rank","Подбор"],["cache","Кэш"],["nuc","NUC"]]},{title:"Деньги",items:[["funnel","Воронка"],["revenue","Выручка"],["finance","Финансы"],["donations","Донаты"],["promos","Промо"],["referral","Рефералы"]]},{title:"Работа",items:[["support","Поддержка"],["fails","Отказы"],["ads","Реклама"],["services","Сервисы"],["dht","DHT"],["monitor","Мониторинг"],["changes","Изменения"]]},{title:"Система",items:[["settings","Настройки"],["audit","Журнал"],["security","Доступ"],["crashes","Сбои"],["broadcast","Рассылка"],["versions","Версии"]]}];function Lse(e,t){return Rv({queryKey:["desk"],enabled:e,refetchInterval:t?!1:12e3,queryFn:()=>st("/admin/api/desk")})}function Use({alerts:e}){const t=e||[];return f.jsxs(ye,{id:"alerts",children:[f.jsx(Ne,{children:f.jsxs(Te,{children:["Предупреждения"," ",t.length>0?f.jsx(Oe,{variant:"count",className:"ml-2 align-middle",children:t.length}):null]})}),t.length===0?f.jsx(xe,{className:"text-sm text-muted-foreground",children:"Алертов нет"}):f.jsx(xe,{className:"space-y-2",children:t.map((n,r)=>f.jsx(u6,{a:n},r))})]})}function $se(){var k,I,P,B,F,se,ue,de;const[e,t]=b.useState(null),[n,r]=b.useState(null),[l,o]=b.useState(null),u=b.useMemo(()=>new URLSearchParams(location.search),[]),[c,h]=b.useState(()=>u.get("tab")||"home"),[m,v]=b.useState("all"),[g,x]=b.useState(""),[S,w]=b.useState(!1),[j,C]=b.useState(!1),E=u.get("tg")||"",N=zv(),O=Lse(e===!0&&!l,N.paused);async function T(){const G=new URLSearchParams(location.search).get("id");if(G){const ie=await st("/admin/api/user?id="+encodeURIComponent(G));if(ie.auth===!1){t(!1);return}if(ie.error){o(null),t(!0);const ce=await st("/admin/api/home");r(ce);return}o(ie),t(!0);return}const ne=await st("/admin/api/home");if(ne.auth===!1){t(!1);return}r(ne),o(null),t(!0)}b.useEffect(()=>{T()},[]),b.useEffect(()=>{const G=()=>void T();return window.addEventListener("omp-admin-live",G),()=>window.removeEventListener("omp-admin-live",G)},[]),b.useEffect(()=>{if(e!==!0||c!=="support"||l)return;let G=!1;const ne=window.setInterval(()=>{st("/admin/api/home").then(ie=>{if(!G){if(ie.auth===!1){t(!1);return}r(ce=>ce&&{...ce,support:ie.support||[]})}})},3e3);return()=>{G=!0,window.clearInterval(ne)}},[e,c,l]);async function R(G,ne={}){var U,Ae,ee;const ie=(l==null?void 0:l.csrf)||(n==null?void 0:n.csrf)||"",ce=await an(G,ie,ne);if(ce.auth===!1)return t(!1),ce;if(G==="/admin/logout")return location.href="/admin/",ce;if(ce.redirect){const z=new URL(ce.redirect,location.origin).searchParams.get("id")||"",Y=new URLSearchParams(location.search).get("id")||"";if(z!==Y)return location.href=ce.redirect,ce}return await T(),(U=ce.flash)!=null&&U.error?rt(ce.flash.error):(Ae=ce.flash)!=null&&Ae.text?rt(ce.flash.text):(ee=ce.flash)!=null&&ee.promo&&rt("Промокод создан"),ce}if(e===null)return f.jsx(c6,{});if(e===!1)return f.jsx(h6,{});if(l)return f.jsxs(f.Fragment,{children:[f.jsxs("div",{className:"mx-auto flex max-w-[1200px] items-center justify-between px-4 py-3",children:[f.jsx(ZA,{}),f.jsx(he,{variant:"secondary",onClick:()=>location.href="/admin/",children:"К списку"})]}),f.jsx(G6,{user:l,run:R}),f.jsx(RA,{})]});const A=n||{},D=O.data&&O.data.auth!==!1?O.data:void 0;return f.jsxs("main",{className:"min-h-screen lg:flex",children:[f.jsxs("aside",{className:(S?"block":"hidden")+" w-full border-b border-border bg-card lg:block lg:w-56 lg:shrink-0 lg:border-b-0 lg:border-r",children:[f.jsx("div",{className:"px-3 py-3",children:f.jsx(kM,{})}),f.jsx("nav",{className:"px-2 pb-4",children:zse.map(G=>f.jsxs("div",{className:"mb-3",children:[f.jsx("div",{className:"px-2 py-1 text-[11px] uppercase tracking-wide text-muted-foreground",children:G.title}),G.items.map(([ne,ie])=>f.jsxs("button",{type:"button",className:"block w-full rounded-md px-2 py-1.5 text-left text-sm "+(c===ne?"bg-primary text-primary-foreground":"text-foreground hover:bg-secondary"),onClick:()=>{h(ne),w(!1)},children:[ie,ne==="support"&&(A.support||[]).length>0?" "+(A.support||[]).length:""]},ne))]},G.title))})]}),f.jsxs("div",{className:"min-w-0 flex-1 space-y-4 px-4 py-4",children:[f.jsxs("header",{className:"flex flex-wrap items-center justify-between gap-3",children:[f.jsxs("div",{className:"flex items-center gap-2",children:[f.jsx(he,{variant:"secondary",className:"lg:hidden",onClick:()=>w(G=>!G),children:"Меню"}),f.jsx(he,{variant:"secondary",onClick:()=>C(!0),children:"Поиск"}),f.jsx("span",{className:"text-xs text-muted-foreground",children:"Ctrl+K"})]}),f.jsxs("div",{className:"flex items-center gap-3",children:[f.jsx(ZA,{}),f.jsx("span",{className:"text-xs text-muted-foreground",children:(D==null?void 0:D.role)==="read"?"только просмотр":"полный доступ"}),f.jsx(he,{variant:"secondary",onClick:()=>void R("/admin/logout"),children:"Выйти"})]})]}),f.jsx(Ise,{open:j,onOpen:C,go:h}),f.jsx(PM,{flash:A.flash}),f.jsxs(o6,{value:c,onValueChange:h,children:[f.jsxs(DM,{className:"hidden",children:[f.jsxs(wt,{value:"home",children:["Главная",(A.alerts||[]).length>0?f.jsx(Oe,{variant:"count",className:"ml-2",children:(A.alerts||[]).length}):null]}),f.jsxs(wt,{value:"support",children:["Поддержка",(A.support||[]).length>0?f.jsx(Oe,{variant:"count",className:"ml-2",children:(A.support||[]).length}):null]}),f.jsx(wt,{value:"subs",children:"Подписки"}),f.jsx(wt,{value:"finance",children:"Финансы"}),f.jsx(wt,{value:"promos",children:"Промо"}),f.jsx(wt,{value:"fails",children:"Отказы"}),f.jsx(wt,{value:"audit",children:"Журнал"}),f.jsx(wt,{value:"ads",children:"Реклама"}),f.jsx(wt,{value:"referral",children:"Рефералы"}),f.jsx(wt,{value:"services",children:"Сервисы"}),f.jsx(wt,{value:"cache",children:"Кэш"}),f.jsx(wt,{value:"dht",children:"DHT"}),f.jsx(wt,{value:"monitor",children:"Мониторинг"}),f.jsx(wt,{value:"changes",children:"Изменения"}),f.jsx(wt,{value:"settings",children:"Настройки"}),f.jsx(wt,{value:"security",children:"Доступ"}),f.jsx(wt,{value:"users",children:"Пользователи"}),f.jsx(wt,{value:"devices",children:"Устройства"}),f.jsx(wt,{value:"sources",children:"Источники"}),f.jsx(wt,{value:"rank",children:"Подбор"}),f.jsx(wt,{value:"funnel",children:"Воронка"}),f.jsx(wt,{value:"revenue",children:"Выручка"}),f.jsx(wt,{value:"nuc",children:"NUC"}),f.jsx(wt,{value:"crashes",children:"Сбои"}),f.jsx(wt,{value:"broadcast",children:"Рассылка"}),f.jsx(wt,{value:"versions",children:"Версии"})]}),f.jsx(bt,{value:"support",children:f.jsx(L6,{csrf:A.csrf,threads:A.support||[],onSent:()=>void T(),initialTelegramId:E})}),f.jsxs(bt,{value:"home",className:"space-y-4",children:[f.jsx(Fle,{data:D,csrf:A.csrf||""}),f.jsx("div",{className:"grid grid-cols-2 gap-3 md:grid-cols-3 lg:grid-cols-6",children:[[((k=A.stats)==null?void 0:k.accounts)??0,"аккаунтов"],[((I=A.stats)==null?void 0:I.activeSubs)??0,"активных"],[((P=A.stats)==null?void 0:P.payments30)??0,"оплат / 30 дн."],[Math.round(((B=A.stats)==null?void 0:B.revenue30)||0),"₽ / 30 дн."],[((F=A.stats)==null?void 0:F.devicesRefresh)==null?"-":A.stats.devicesRefresh,"новые токены"],[((se=A.stats)==null?void 0:se.devicesLegacy)==null?"-":A.stats.devicesLegacy,"старые токены"]].map(([G,ne])=>f.jsx(ye,{children:f.jsxs(xe,{className:"pt-4",children:[f.jsx("div",{className:"text-2xl font-bold",children:G}),f.jsx("div",{className:"text-xs text-muted-foreground",children:ne})]})},ne))}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Найти"})}),f.jsx(xe,{children:f.jsxs("form",{className:"flex flex-col gap-2 sm:flex-row",onSubmit:G=>{G.preventDefault(),R("/admin/find",{q:g})},children:[f.jsx($e,{placeholder:"Telegram / почта / код / идентификатор",value:g,onChange:G=>x(G.target.value)}),f.jsx(he,{type:"submit",children:"Найти"})]})})]}),f.jsx(Use,{alerts:A.alerts}),f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Быстрое промо"})}),f.jsxs(xe,{className:"flex flex-wrap gap-2",children:[f.jsx(he,{onClick:()=>void R("/admin/promo",{days:1,maxUses:1}),children:"1 день × 1"}),f.jsx(he,{variant:"secondary",onClick:()=>void R("/admin/promo",{days:7,maxUses:10}),children:"7 дней × 10"}),f.jsx(he,{variant:"secondary",onClick:()=>void R("/admin/promo",{days:30,maxUses:1}),children:"30 дней × 1"})]})]}),f.jsx(pH,{run:R}),f.jsx(gH,{events:A.events||[]})]}),f.jsx(bt,{value:"users",children:f.jsx(Vle,{users:(D==null?void 0:D.users)||[],go:G=>location.href="/admin/?id="+encodeURIComponent(G)})}),f.jsx(bt,{value:"devices",children:f.jsx(Gle,{rows:(D==null?void 0:D.devices)||[]})}),f.jsxs(bt,{value:"sources",className:"space-y-4",children:[f.jsx(qle,{data:D,csrf:A.csrf||""}),f.jsx(QA,{csrf:A.csrf||"",settings:A.settings||{},secrets:A.secrets,onSaved:()=>void T()})]}),f.jsx(bt,{value:"rank",children:c==="rank"?f.jsx(Q8,{csrf:A.csrf||""}):null}),f.jsx(bt,{value:"funnel",children:f.jsx(Kle,{data:D})}),f.jsx(bt,{value:"revenue",children:f.jsx(Yle,{data:D})}),f.jsx(bt,{value:"nuc",children:f.jsx(Xle,{csrf:A.csrf||""})}),f.jsx(bt,{value:"subs",children:f.jsx(xH,{subs:A.subscriptions||[],filter:m,setFilter:v,csrf:A.csrf||""})}),f.jsxs(bt,{value:"finance",className:"space-y-4",children:[f.jsx(BM,{rows:A.pending||[],run:R,showWho:!0}),f.jsx(wH,{home:A})]}),f.jsx(bt,{value:"promos",children:f.jsx(yH,{run:R,promos:A.promos||[]})}),f.jsx(bt,{value:"fails",children:f.jsx(OH,{})}),f.jsxs(bt,{value:"audit",className:"space-y-4",children:[f.jsxs(ye,{children:[f.jsx(Ne,{children:f.jsx(Te,{children:"Откат настройки"})}),f.jsx(xe,{children:f.jsx(Qle,{rows:(D==null?void 0:D.rollbacks)||[],csrf:A.csrf||""})})]}),f.jsx(AH,{})]}),f.jsx(bt,{value:"changes",children:f.jsx(h8,{})}),f.jsx(bt,{value:"settings",children:f.jsx(CH,{run:R,settings:A.settings||{},storage:A.storage,backup:A.backup,secrets:A.secrets})}),f.jsx(bt,{value:"ads",children:c==="ads"?f.jsx(Z6,{csrf:A.csrf||""}):null}),f.jsx(bt,{value:"donations",children:f.jsx(l8,{settings:(ue=A.settings)==null?void 0:ue.donate,report:A.donations,run:R})}),f.jsx(bt,{value:"referral",children:f.jsx(o8,{csrf:A.csrf||"",settings:(de=A.settings)==null?void 0:de.referral,journal:A.referralJournal,run:G=>R("/admin/referral",G)})}),f.jsx(bt,{value:"services",children:f.jsx(QA,{csrf:A.csrf||"",settings:A.settings||{},secrets:A.secrets,onSaved:()=>void T()})}),f.jsx(bt,{value:"cache",children:c==="cache"?f.jsx(Y8,{csrf:A.csrf||""}):null}),f.jsx(bt,{value:"dht",children:c==="dht"?f.jsx(V8,{csrf:A.csrf||""}):null}),f.jsx(bt,{value:"monitor",children:f.jsx(z8,{csrf:A.csrf||""})}),f.jsxs(bt,{value:"security",className:"space-y-4",children:[f.jsx(NH,{run:R,sessions:A.sessions||[],sessionId:A.sessionId||""}),f.jsx(eoe,{})]}),f.jsx(bt,{value:"crashes",children:f.jsx(Zle,{csrf:A.csrf||""})}),f.jsx(bt,{value:"broadcast",children:f.jsx(Wle,{csrf:A.csrf||""})}),f.jsx(bt,{value:"versions",children:f.jsx(Jle,{data:D})})]}),f.jsx(RA,{})]})]})}const Bse=new Q$({defaultOptions:{queries:{retry:1,refetchOnWindowFocus:!1}}});h5.createRoot(document.getElementById("root")).render(f.jsx(b.StrictMode,{children:f.jsx(_$,{client:Bse,children:f.jsx(TH,{children:f.jsx($se,{})})})})); diff --git a/ops/billing/public/index.html b/ops/billing/public/index.html index 090aceab8..6ee2def01 100644 --- a/ops/billing/public/index.html +++ b/ops/billing/public/index.html @@ -8,8 +8,8 @@ - - + +
diff --git a/ops/billing/test/adminLog.test.ts b/ops/billing/test/adminLog.test.ts new file mode 100644 index 000000000..8d8c92329 --- /dev/null +++ b/ops/billing/test/adminLog.test.ts @@ -0,0 +1,18 @@ +import { describe, expect, it } from 'vitest'; +import { filterLogLines, healthReport } from '../admin/src/lib/logText.ts'; + +describe('admin log text', () => { + it('keeps every line until a filter is typed', () => { + const text = 'alpha\nBeta error\ngamma'; + expect(filterLogLines(text, '')).toBe(text); + expect(filterLogLines(text, ' ')).toBe(text); + expect(filterLogLines(text, 'ERR')).toBe('Beta error'); + expect(filterLogLines(text, 'нет')).toBe(''); + }); + + it('puts a source check into lines and JSON', () => { + const text = healthReport([{ name: 'jackett', ok: false, latencyMs: 12, lastError: 'timeout' }]); + expect(text).toContain('jackett: нет, 12 мс · timeout'); + expect(text).toContain('"name": "jackett"'); + }); +}); diff --git a/ops/billing/test/adminModal.test.tsx b/ops/billing/test/adminModal.test.tsx new file mode 100644 index 000000000..093d5000a --- /dev/null +++ b/ops/billing/test/adminModal.test.tsx @@ -0,0 +1,119 @@ +/** @vitest-environment jsdom */ +import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; +import { act } from 'react'; +import { createRoot, type Root } from 'react-dom/client'; +import { createElement, type ReactNode } from 'react'; +import { QueryClient, QueryClientProvider } from '@tanstack/react-query'; +import { Modal } from '../admin/src/components/modal.tsx'; +import { LogDialog } from '../admin/src/components/logDialog.tsx'; +import { NucDesk } from '../admin/src/panels/DeskViews.tsx'; + +(globalThis as { IS_REACT_ACT_ENVIRONMENT?: boolean }).IS_REACT_ACT_ENVIRONMENT = true; + +let root: Root; +let app: HTMLElement; + +function render(node: ReactNode) { + act(() => { + root.render(node); + }); +} + +async function settle() { + await act(async () => { + await new Promise((r) => setTimeout(r, 30)); + }); +} + +beforeEach(() => { + document.body.innerHTML = '
'; + app = document.getElementById('app')!; + root = createRoot(app); +}); + +afterEach(() => { + act(() => root.unmount()); + vi.unstubAllGlobals(); +}); + +describe('admin modal', () => { + it('names the window, closes on Esc and keeps Tab inside', () => { + const onClose = vi.fn(); + render( + createElement(Modal, { title: 'Лог omp-billing', onClose }, createElement('button', { type: 'button' }, 'Раз'), createElement('button', { type: 'button' }, 'Два')), + ); + const dialog = document.querySelector('[role="dialog"]') as HTMLElement; + expect(dialog.getAttribute('aria-modal')).toBe('true'); + expect(dialog.getAttribute('aria-labelledby')).toBeTruthy(); + expect(document.getElementById(dialog.getAttribute('aria-labelledby') || '')?.textContent).toBe('Лог omp-billing'); + expect(document.activeElement).toBe(dialog); + expect(document.body.style.overflow).toBe('hidden'); + const buttons = Array.from(dialog.querySelectorAll('button')); + buttons[buttons.length - 1].focus(); + dialog.dispatchEvent(new KeyboardEvent('keydown', { key: 'Tab', bubbles: true })); + expect(document.activeElement).toBe(buttons[0]); + document.dispatchEvent(new KeyboardEvent('keydown', { key: 'Escape', bubbles: true })); + expect(onClose).toHaveBeenCalledOnce(); + }); + + it('filters, refreshes and copies the log', async () => { + const write = vi.fn().mockResolvedValue(undefined); + Object.defineProperty(navigator, 'clipboard', { value: { writeText: write }, configurable: true }); + const onRefresh = vi.fn(); + render(createElement(LogDialog, { title: 'Лог omp-caddy', text: 'one\nERROR two\nthree', onClose: () => {}, onRefresh })); + const dialog = document.querySelector('[role="dialog"]') as HTMLElement; + const pre = dialog.querySelector('pre')!; + expect(pre.textContent).toContain('ERROR two'); + const filter = dialog.querySelector('input') as HTMLInputElement; + const setValue = Object.getOwnPropertyDescriptor(HTMLInputElement.prototype, 'value')?.set; + await act(async () => { + setValue?.call(filter, 'error'); + filter.dispatchEvent(new Event('input', { bubbles: true })); + }); + expect(pre.textContent).toBe('ERROR two'); + (dialog.querySelector('button') as HTMLButtonElement).click(); + expect(onRefresh).not.toHaveBeenCalled(); + const refresh = Array.from(dialog.querySelectorAll('button')).find((b) => b.textContent === 'Обновить')!; + refresh.click(); + expect(onRefresh).toHaveBeenCalledOnce(); + const copy = Array.from(dialog.querySelectorAll('button')).find((b) => b.textContent === 'Копировать')!; + await act(async () => { + copy.click(); + await Promise.resolve(); + }); + expect(write).toHaveBeenCalledWith('ERROR two'); + expect(document.getElementById('toast')?.textContent).toBe('Скопировано'); + }); + + it('opens NUC logs over the page', async () => { + const fetchMock = vi.fn(async (input: RequestInfo | URL) => { + const path = typeof input === 'string' ? input : input instanceof URL ? input.toString() : input.url; + if (path.indexOf('/admin/api/nuc/logs') >= 0) { + return { ok: true, headers: { get: () => 'application/json' }, json: async () => ({ ok: true, lines: 'boot\nready' }) }; + } + return { + ok: true, + headers: { get: () => 'application/json' }, + json: async () => ({ + containers: [{ id: 'abc', name: 'omp-billing', state: 'running', status: 'Up', cpu: 1, mem: 1048576, restart: false }], + }), + }; + }); + vi.stubGlobal('fetch', fetchMock); + const client = new QueryClient({ defaultOptions: { queries: { retry: false } } }); + render(createElement(QueryClientProvider, { client }, createElement(NucDesk, { csrf: 'tok' }))); + await settle(); + expect(app.textContent).toContain('omp-billing'); + const logButton = Array.from(app.querySelectorAll('button')).find((b) => b.textContent === 'Лог')!; + await act(async () => { + logButton.click(); + await Promise.resolve(); + await Promise.resolve(); + }); + await settle(); + const dialog = document.querySelector('[role="dialog"]') as HTMLElement; + expect(dialog.textContent).toContain('Лог omp-billing'); + expect(dialog.querySelector('pre')?.textContent).toContain('boot'); + expect(Array.from(document.querySelectorAll('pre')).every((node) => dialog.contains(node))).toBe(true); + }); +}); diff --git a/ops/billing/test/monitorView.test.ts b/ops/billing/test/monitorView.test.ts index e4b42d056..f4433595e 100644 --- a/ops/billing/test/monitorView.test.ts +++ b/ops/billing/test/monitorView.test.ts @@ -1,5 +1,5 @@ import { describe, expect, it } from 'vitest'; -import { buildView, DEFAULT_PREFS, FILTER_TEXT, groupItems, itemState, yellowText, loadPrefs, matchesFilter, matchesQuery, PREFS_KEY, savePrefs, sortItems, type MonitorCheck, type MonitorPrefs } from '../admin/src/lib/monitorView.ts'; +import { buildView, DEFAULT_PREFS, FILTER_TEXT, groupItems, itemState, monitorDetailText, yellowText, loadPrefs, matchesFilter, matchesQuery, PREFS_KEY, savePrefs, sortItems, type MonitorCheck, type MonitorPrefs } from '../admin/src/lib/monitorView.ts'; function c(id: string, group: string, ok: boolean | null, extra: Partial = {}): MonitorCheck { return { id, group, name: id, path: '', ok, detail: ok === false ? 'таймаут' : 'ок', ms: 10, at: 1000, alert: true, history: '', uptime: null, ...extra }; @@ -130,4 +130,14 @@ describe('monitor tab view', () => { expect([1, 2, 5, 11, 21, 22].map(yellowText)).toEqual(['1 жёлтая', '2 жёлтые', '5 жёлтых', '11 жёлтых', '21 жёлтая', '22 жёлтые']); expect(loadPrefs({ getItem: () => JSON.stringify({ filter: 'code' }), setItem: () => {} }).filter).toBe('code'); }); + + it('detail text keeps the result and the raw check', () => { + const row = c('postgres', 'infra', false, { name: 'Postgres', detail: 'нет связи', context: 'timeout', ms: 40, path: 'direct', target: 'db' }); + const text = monitorDetailText(row); + expect(text).toContain('Postgres'); + expect(text).toContain('статус: ошибка'); + expect(text).toContain('результат: нет связи'); + expect(text).toContain('контекст: timeout'); + expect(text).toContain('"id": "postgres"'); + }); }); diff --git a/ops/billing/vitest.config.ts b/ops/billing/vitest.config.ts index b6fab0f02..64c24a63f 100644 --- a/ops/billing/vitest.config.ts +++ b/ops/billing/vitest.config.ts @@ -1,4 +1,4 @@ -import { readdirSync, readFileSync } from 'node:fs'; +import { existsSync, readdirSync, readFileSync } from 'node:fs'; import path from 'node:path'; import { fileURLToPath } from 'node:url'; import { defineConfig } from 'vitest/config'; @@ -12,16 +12,31 @@ const testDir = path.join(root, 'ops/billing/test'); * missing URL is an error instead of a skip. */ function include(): string[] { - if (process.env.BILLING_TEST_DATABASE_URL) return ['ops/billing/test/**/*.test.ts']; + const react = path.join(root, 'ops/billing/admin/node_modules/react/package.json'); + const globs = ['ops/billing/test/**/*.test.ts']; + // The admin window test needs the admin React install. The root `npm test` job does not install it. + if (existsSync(react)) globs.push('ops/billing/test/**/*.test.tsx'); + if (process.env.BILLING_TEST_DATABASE_URL) return globs; if (process.env.BILLING_TEST_REQUIRE_PG === '1') throw new Error('billing tests need Postgres: set BILLING_TEST_DATABASE_URL'); const needsPg = /from '\.\/pg'|serve\.mjs|BILLING_TEST_DATABASE_URL/; - const files = readdirSync(testDir).filter((f) => f.endsWith('.test.ts') && !needsPg.test(readFileSync(path.join(testDir, f), 'utf8'))); + const files = readdirSync(testDir).filter((f) => { + if (f.endsWith('.test.tsx') && !existsSync(react)) return false; + return (f.endsWith('.test.ts') || f.endsWith('.test.tsx')) && !needsPg.test(readFileSync(path.join(testDir, f), 'utf8')); + }); process.stderr.write('billing: no BILLING_TEST_DATABASE_URL, the Postgres tests are skipped (' + files.length + ' files run)\n'); return files.map((f) => 'ops/billing/test/' + f); } export default defineConfig({ root, + resolve: { + alias: { + '@': path.join(root, 'ops/billing/admin/src'), + react: path.join(root, 'ops/billing/admin/node_modules/react'), + 'react-dom': path.join(root, 'ops/billing/admin/node_modules/react-dom'), + '@tanstack/react-query': path.join(root, 'ops/billing/admin/node_modules/@tanstack/react-query'), + }, + }, test: { environment: 'node', include: include(),