mirror of
https://github.com/thegeneralist01/archivr
synced 2026-07-21 18:55:36 +02:00
* feat: uBlock Origin Lite integration for ad-blocking during WebPage captures
- singlefile.rs: when ARCHIVR_UBLOCK=true and ARCHIVR_UBLOCK_EXT is set,
archivr owns Chrome's lifecycle (--headless=new, --remote-debugging-port,
--load-extension); single-file connects via --browser-server instead of
launching its own Chrome. Falls back to old behaviour with ublock_skipped=true
when the ext path is missing or invalid.
- capture.rs: thread ublock_skipped through CaptureResult
- database.rs: add notes_json TEXT column to capture_jobs (DDL + idempotent
ALTER TABLE migration); update_capture_job_status gains notes_json param
- archive.rs: expose notes_json in CaptureJobSummary
- routes.rs: store {"ublock_skipped":true} in notes_json on completed captures
- ToastStack.jsx: warning toast variant (toast--warning) with Details expander
and Ignore button
- CaptureDialog.jsx: fire warning toast when poll result has ublock_skipped
- App.jsx: sessionStorage-backed Ignore suppression for ublock warnings
- styles.css: .toast--warning (amber left border) + .toast-warning-detail
- flake.nix: ublockLite derivation fetches uBOLite_2026.705.2152.chromium.zip
(pinned SHA256) from uBlockOrigin/uBOL-home; sets ARCHIVR_UBLOCK_EXT in both
archivr and archivr-server wrappers
Env vars:
ARCHIVR_UBLOCK=true (default) — enable uBlock during WebPage captures
ARCHIVR_UBLOCK_EXT — path to unpacked uBOL extension dir (set by Nix)
* feat: Extensions settings tab + capture dialog redesign with Advanced options
Settings/Extensions tab (admin-only):
- New 'Extensions' tab between Cookies and Storage
- ExtensionsTab component: shows uBlock Origin Lite card with pill toggle
- Reads ublock_enabled from instance settings; patch via existing PATCH endpoint
- Shows ublock_ext_available status from server (whether ARCHIVR_UBLOCK_EXT is set)
Instance settings:
- Add ublock_enabled BOOLEAN (default true) to instance_settings auth DB table
- Idempotent ALTER TABLE migration in initialize_auth_schema()
- get/update_instance_settings include ublock_enabled
- GET /api/admin/instance-settings now also returns ublock_ext_available (computed
from ARCHIVR_UBLOCK_EXT env var at request time)
- PATCH /api/admin/instance-settings accepts ublock_enabled
Per-capture override:
- CaptureBody gains ublock_enabled: Option<bool>
- CaptureConfig gains ublock_enabled: Option<bool>
- singlefile::save() gains ublock_enabled_override: Option<bool> param
- Capture handler resolves: body override > global instance setting > env var
- submitCapture(aid, loc, qual, extensions) in api.js passes ublock_enabled
Capture dialog redesign:
- Archive button: full-width, 13px padding, min-width 220px, primary CTA
- Cancel: full-width but text-style, below Archive
- ‹Advanced options› chevron toggle (rotates on open)
- Expanded panel shows uBlock toggle for this capture session
- Loads global ublock_enabled default from instance settings on mount
Styles:
- .ext-toggle pill switch (44×24 and 36×20 small variant)
- .ext-card for Settings Extensions tab
- .capture-advanced + .capture-advanced-panel + .capture-chevron
- .capture-ext-row / .capture-ext-label / .capture-ext-name / .capture-ext-desc
- .form-hint utility class
* fix: remove ublock_enabled from INSERT OR IGNORE in DDL batch
The INSERT ran before the ALTER TABLE migration added the column,
causing 'table instance_settings has no column named ublock_enabled'
on existing databases. The INSERT OR IGNORE for the default row only
needs the original columns; the migration's DEFAULT 1 handles the
new column for existing and new rows alike.
* feat: Reader mode via Mozilla Readability.js
Adds an opt-in 'Reader mode' advanced option to the capture dialog.
When enabled, Readability.js is injected as a browser script during
SingleFile capture; it fires on single-file-on-before-capture-start,
replaces the page body with the distilled article content, injects a
clean typographic stylesheet, and adds a header with title/byline/site.
Falls back silently if Readability fails (e.g. non-article pages).
- vendor/readability/Readability.js Apache 2.0, Mozilla, v0.6.0
- singlefile.rs: embed READABILITY_JS + READER_MODE_WRAPPER_JS via
include_str!; write both to temp dir when reader_mode is true;
base_single_file_cmd now accepts &[&Path] for multiple --browser-script
- capture.rs: CaptureConfig.reader_mode: bool
- routes.rs: CaptureBody.reader_mode: Option<bool> (defaults false)
- api.js: submitCapture passes reader_mode in payload
- CaptureDialog.jsx: Reader mode toggle in Advanced options (off by default)
* fix: diagnose single-file no-output-file error + prevent stdout dumping
- Add --dump-content=false to every single-file invocation to prevent
the Docker-detection heuristic from routing HTML to stdout instead of
the output file (the heuristic can trigger in some macOS environments)
- Improve the no-output-file error message to include: temp dir contents,
stderr, and first 200 chars of stdout — this gives enough context to
diagnose any remaining cause without re-running
* fix: switch uBlock loading from --browser-server to --browser-args
The --browser-server (CDP) path caused 'Unexpected server response: 404'
on macOS Chrome because simple-cdp's WebSocket upgrade to the debugger
endpoint failed after Chrome started — likely a version-specific CDP
endpoint shape mismatch.
New approach: single-file always manages Chrome. When ARCHIVR_UBLOCK_EXT
is set, --headless=new, --load-extension, and --disable-extensions-except
are injected via --browser-args. single-file's browser.js prefix-strips
its own conflicting flags before appending ours, so --headless=new
overrides the default --headless (enabling extension support in headless).
Removes allocate_free_port, wait_for_chrome_ready, run_single_file_with_server
(all dead code now). Docblock updated to reflect actual behaviour and notes
the --single-process caveat: uBOL's declarativeNetRequest static rulesets
are expected to work (network-stack level, not service-worker), but this
has not been mechanically verified under --single-process.
Smoke tested on macOS (this machine): capture with --load-extension + all
three browser-scripts (strip, Readability, reader-mode wrapper) produces
output file correctly. Ad-blocking verification deferred to manual test
with a tracker-heavy URL.
* fix: use correct single-file hook event (single-file-on-before-capture-request)
Prior scripts listened on 'single-file-on-before-capture-start' which
does not exist in single-file-core 1.1.49. The real hook is:
single-file-on-before-capture-request (dispatched by initUserScriptHandler
after receiving single-file-user-script-init; userScriptEnabled defaults
to true in args.js so it always fires when --browser-script is passed)
Changes:
- strip-scripts: -start -> -request (no preventDefault needed; synchronous)
- READER_MODE_SCRIPT: -start -> -request; add 'installed' meta marker at
script-evaluation time so artifact inspection can distinguish 'script
not injected' / 'hook never fired' / 'Readability parse failed'
* fix: correct singlefile.rs docstring (scripts.js concatenates, not isolates)
* fix: dispatch single-file-user-script-init so request hook fires
single-file's initUserScriptHandler (in single-file-bootstrap.js) listens
for 'single-file-user-script-init' and only then installs
_singleFile_waitForUserScript. Without that dispatch our scripts'
'single-file-on-before-capture-request' listeners were never reached,
so neither strip-scripts nor reader-mode Readability applied.
Dispatch the init event at the top of strip-scripts (always present) and
redundantly in READER_MODE_SCRIPT. Verified end-to-end: artifact for
run_b3181d6d276e4e56a1a6c356ef9bbe8f has
meta content="applied", max-width:680px CSS, 0 script tags.
* feat: cookie consent extension support (ARCHIVR_COOKIE_EXT)
Mirrors the uBlock Origin Lite integration exactly:
Backend:
- singlefile.rs: resolve_cookie_ext_config() reads ARCHIVR_COOKIE_CONSENT
(default true) + ARCHIVR_COOKIE_EXT path; extension paths comma-joined
into --load-extension / --disable-extensions-except so uBlock and cookie
ext can coexist; SaveResult.cookie_ext_skipped tracks miss
- database.rs: cookie_ext_enabled column on instance_settings (DEFAULT 1);
idempotent ALTER TABLE migration; get/update wired through
- capture.rs: CaptureConfig.cookie_ext_enabled: Option<bool>; threaded to
singlefile::save(); cookie_ext_skipped surfaced in CaptureResult
- routes.rs: CaptureBody + UpdateInstanceSettingsBody get cookie_ext_enabled;
capture handler resolves effective value (body overrides global); notes_json
only includes skipped fields that are true; GET instance-settings includes
cookie_ext_available from env path check
Frontend:
- api.js: submitCapture forwards cookie_ext_enabled
- SettingsView.jsx: 'I Still Don't Care About Cookies' card in Extensions
tab; always-active toggle (user can disable even when ext not installed);
amber 'Not configured' hint + ARCHIVR_COOKIE_EXT guidance when unavailable
- CaptureDialog.jsx: 'Block cookie banners' toggle in Advanced options;
always shown with amber hint when ext not configured; defaults from
global setting
Operator setup: download + unzip the extension from GitHub releases, set
ARCHIVR_COOKIE_EXT=/path/to/unpacked/ext. No Node daemon needed.
* fix: surface cookie_ext_skipped warning toast in CaptureDialog
* feat: package istilldontcareaboutcookies in flake, wire ARCHIVR_COOKIE_EXT
Add isdcac derivation mirroring ublockLite:
- Fetches ISDCAC-chrome-source.zip v1.1.9 from GitHub releases
- Validates manifest.json at extension root before install (guard against
nested-folder zip regressions in future releases)
- Sets ARCHIVR_COOKIE_EXT in both archivr and archivr_server wrappers
Verified: nix build .#archivr-server and .#archivr both succeed;
wrapper scripts export correct store paths; manifest.json present at root.
* fix: gate consent-overlay cleanup on cookie_ext; reset overflow; narrow selectors
- Strip overflow:hidden from body/html only when cookie_ext is active for
the capture — prevents mutating legitimate pages when the feature is off
- Remove .fc-dialog (Google Funding Choices), .qc-cmp2-*, .sp-message-container,
#sp-cc, #usercentrics-root as fallback for CMPs the extension misses
- Removed overbroad [class^="uc-"] and [id^="usercentrics"] selectors
that could match real page content
* fix: remove ad placeholders when uBlock active; kept height causes blank gap
uBlock Origin Lite blocks ad network requests but first-party placeholder
elements (ins.adsbygoogle, #aswift_* iframe hosts) retain their computed
height (e.g. 280px for a top banner), leaving a large blank space at the
top of captured pages.
Gate cleanup on ublock_ext.is_some(): remove ins.adsbygoogle, aswift_*
iframes, and google_ads_* iframes before SingleFile serialises. Also
collapse the parent container if it becomes empty after removal.
* fix: walk up to .top-ad/.google-auto-placed ancestor before removing ad slot
Removing only the inner ins.adsbygoogle left the outer .container.top-ad
wrapper (with pb-4 padding) in the layout, preserving the blank gap.
Now walk up via closest() to the nearest ad-slot container class before
removal so the whole slot including padding collapses.
40 lines
219 KiB
JavaScript
40 lines
219 KiB
JavaScript
(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 s of l)if(s.type==="childList")for(const a of s.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&r(a)}).observe(document,{childList:!0,subtree:!0});function n(l){const s={};return l.integrity&&(s.integrity=l.integrity),l.referrerPolicy&&(s.referrerPolicy=l.referrerPolicy),l.crossOrigin==="use-credentials"?s.credentials="include":l.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function r(l){if(l.ep)return;l.ep=!0;const s=n(l);fetch(l.href,s)}})();var wo={exports:{}},yl={},ko={exports:{}},U={};/**
|
||
* @license React
|
||
* react.production.min.js
|
||
*
|
||
* Copyright (c) Facebook, Inc. and its affiliates.
|
||
*
|
||
* This source code is licensed under the MIT license found in the
|
||
* LICENSE file in the root directory of this source tree.
|
||
*/var pr=Symbol.for("react.element"),Bc=Symbol.for("react.portal"),Vc=Symbol.for("react.fragment"),Wc=Symbol.for("react.strict_mode"),Hc=Symbol.for("react.profiler"),Qc=Symbol.for("react.provider"),Kc=Symbol.for("react.context"),bc=Symbol.for("react.forward_ref"),Jc=Symbol.for("react.suspense"),Xc=Symbol.for("react.memo"),Yc=Symbol.for("react.lazy"),sa=Symbol.iterator;function Gc(e){return e===null||typeof e!="object"?null:(e=sa&&e[sa]||e["@@iterator"],typeof e=="function"?e:null)}var So={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},jo=Object.assign,No={};function Nn(e,t,n){this.props=e,this.context=t,this.refs=No,this.updater=n||So}Nn.prototype.isReactComponent={};Nn.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};Nn.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function Co(){}Co.prototype=Nn.prototype;function ci(e,t,n){this.props=e,this.context=t,this.refs=No,this.updater=n||So}var di=ci.prototype=new Co;di.constructor=ci;jo(di,Nn.prototype);di.isPureReactComponent=!0;var ia=Array.isArray,_o=Object.prototype.hasOwnProperty,fi={current:null},Eo={key:!0,ref:!0,__self:!0,__source:!0};function To(e,t,n){var r,l={},s=null,a=null;if(t!=null)for(r in t.ref!==void 0&&(a=t.ref),t.key!==void 0&&(s=""+t.key),t)_o.call(t,r)&&!Eo.hasOwnProperty(r)&&(l[r]=t[r]);var o=arguments.length-2;if(o===1)l.children=n;else if(1<o){for(var u=Array(o),c=0;c<o;c++)u[c]=arguments[c+2];l.children=u}if(e&&e.defaultProps)for(r in o=e.defaultProps,o)l[r]===void 0&&(l[r]=o[r]);return{$$typeof:pr,type:e,key:s,ref:a,props:l,_owner:fi.current}}function qc(e,t){return{$$typeof:pr,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}function pi(e){return typeof e=="object"&&e!==null&&e.$$typeof===pr}function Zc(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,function(n){return t[n]})}var aa=/\/+/g;function Al(e,t){return typeof e=="object"&&e!==null&&e.key!=null?Zc(""+e.key):t.toString(36)}function Mr(e,t,n,r,l){var s=typeof e;(s==="undefined"||s==="boolean")&&(e=null);var a=!1;if(e===null)a=!0;else switch(s){case"string":case"number":a=!0;break;case"object":switch(e.$$typeof){case pr:case Bc:a=!0}}if(a)return a=e,l=l(a),e=r===""?"."+Al(a,0):r,ia(l)?(n="",e!=null&&(n=e.replace(aa,"$&/")+"/"),Mr(l,t,n,"",function(c){return c})):l!=null&&(pi(l)&&(l=qc(l,n+(!l.key||a&&a.key===l.key?"":(""+l.key).replace(aa,"$&/")+"/")+e)),t.push(l)),1;if(a=0,r=r===""?".":r+":",ia(e))for(var o=0;o<e.length;o++){s=e[o];var u=r+Al(s,o);a+=Mr(s,t,n,u,l)}else if(u=Gc(e),typeof u=="function")for(e=u.call(e),o=0;!(s=e.next()).done;)s=s.value,u=r+Al(s,o++),a+=Mr(s,t,n,u,l);else if(s==="object")throw t=String(e),Error("Objects are not valid as a React child (found: "+(t==="[object Object]"?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.");return a}function xr(e,t,n){if(e==null)return e;var r=[],l=0;return Mr(e,r,"","",function(s){return t.call(n,s,l++)}),r}function ed(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(n){(e._status===0||e._status===-1)&&(e._status=1,e._result=n)},function(n){(e._status===0||e._status===-1)&&(e._status=2,e._result=n)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var Ce={current:null},Fr={transition:null},td={ReactCurrentDispatcher:Ce,ReactCurrentBatchConfig:Fr,ReactCurrentOwner:fi};function Po(){throw Error("act(...) is not supported in production builds of React.")}U.Children={map:xr,forEach:function(e,t,n){xr(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return xr(e,function(){t++}),t},toArray:function(e){return xr(e,function(t){return t})||[]},only:function(e){if(!pi(e))throw Error("React.Children.only expected to receive a single React element child.");return e}};U.Component=Nn;U.Fragment=Vc;U.Profiler=Hc;U.PureComponent=ci;U.StrictMode=Wc;U.Suspense=Jc;U.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=td;U.act=Po;U.cloneElement=function(e,t,n){if(e==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var r=jo({},e.props),l=e.key,s=e.ref,a=e._owner;if(t!=null){if(t.ref!==void 0&&(s=t.ref,a=fi.current),t.key!==void 0&&(l=""+t.key),e.type&&e.type.defaultProps)var o=e.type.defaultProps;for(u in t)_o.call(t,u)&&!Eo.hasOwnProperty(u)&&(r[u]=t[u]===void 0&&o!==void 0?o[u]:t[u])}var u=arguments.length-2;if(u===1)r.children=n;else if(1<u){o=Array(u);for(var c=0;c<u;c++)o[c]=arguments[c+2];r.children=o}return{$$typeof:pr,type:e.type,key:l,ref:s,props:r,_owner:a}};U.createContext=function(e){return e={$$typeof:Kc,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},e.Provider={$$typeof:Qc,_context:e},e.Consumer=e};U.createElement=To;U.createFactory=function(e){var t=To.bind(null,e);return t.type=e,t};U.createRef=function(){return{current:null}};U.forwardRef=function(e){return{$$typeof:bc,render:e}};U.isValidElement=pi;U.lazy=function(e){return{$$typeof:Yc,_payload:{_status:-1,_result:e},_init:ed}};U.memo=function(e,t){return{$$typeof:Xc,type:e,compare:t===void 0?null:t}};U.startTransition=function(e){var t=Fr.transition;Fr.transition={};try{e()}finally{Fr.transition=t}};U.unstable_act=Po;U.useCallback=function(e,t){return Ce.current.useCallback(e,t)};U.useContext=function(e){return Ce.current.useContext(e)};U.useDebugValue=function(){};U.useDeferredValue=function(e){return Ce.current.useDeferredValue(e)};U.useEffect=function(e,t){return Ce.current.useEffect(e,t)};U.useId=function(){return Ce.current.useId()};U.useImperativeHandle=function(e,t,n){return Ce.current.useImperativeHandle(e,t,n)};U.useInsertionEffect=function(e,t){return Ce.current.useInsertionEffect(e,t)};U.useLayoutEffect=function(e,t){return Ce.current.useLayoutEffect(e,t)};U.useMemo=function(e,t){return Ce.current.useMemo(e,t)};U.useReducer=function(e,t,n){return Ce.current.useReducer(e,t,n)};U.useRef=function(e){return Ce.current.useRef(e)};U.useState=function(e){return Ce.current.useState(e)};U.useSyncExternalStore=function(e,t,n){return Ce.current.useSyncExternalStore(e,t,n)};U.useTransition=function(){return Ce.current.useTransition()};U.version="18.3.1";ko.exports=U;var h=ko.exports;/**
|
||
* @license React
|
||
* react-jsx-runtime.production.min.js
|
||
*
|
||
* Copyright (c) Facebook, Inc. and its affiliates.
|
||
*
|
||
* This source code is licensed under the MIT license found in the
|
||
* LICENSE file in the root directory of this source tree.
|
||
*/var nd=h,rd=Symbol.for("react.element"),ld=Symbol.for("react.fragment"),sd=Object.prototype.hasOwnProperty,id=nd.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,ad={key:!0,ref:!0,__self:!0,__source:!0};function Lo(e,t,n){var r,l={},s=null,a=null;n!==void 0&&(s=""+n),t.key!==void 0&&(s=""+t.key),t.ref!==void 0&&(a=t.ref);for(r in t)sd.call(t,r)&&!ad.hasOwnProperty(r)&&(l[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps,t)l[r]===void 0&&(l[r]=t[r]);return{$$typeof:rd,type:e,key:s,ref:a,props:l,_owner:id.current}}yl.Fragment=ld;yl.jsx=Lo;yl.jsxs=Lo;wo.exports=yl;var i=wo.exports,Ro={exports:{}},Ie={},zo={exports:{}},Do={};/**
|
||
* @license React
|
||
* scheduler.production.min.js
|
||
*
|
||
* Copyright (c) Facebook, Inc. and its affiliates.
|
||
*
|
||
* This source code is licensed under the MIT license found in the
|
||
* LICENSE file in the root directory of this source tree.
|
||
*/(function(e){function t(P,p){var C=P.length;P.push(p);e:for(;0<C;){var M=C-1>>>1,R=P[M];if(0<l(R,p))P[M]=p,P[C]=R,C=M;else break e}}function n(P){return P.length===0?null:P[0]}function r(P){if(P.length===0)return null;var p=P[0],C=P.pop();if(C!==p){P[0]=C;e:for(var M=0,R=P.length,B=R>>>1;M<B;){var A=2*(M+1)-1,V=P[A],W=A+1,re=P[W];if(0>l(V,C))W<R&&0>l(re,V)?(P[M]=re,P[W]=C,M=W):(P[M]=V,P[A]=C,M=A);else if(W<R&&0>l(re,C))P[M]=re,P[W]=C,M=W;else break e}}return p}function l(P,p){var C=P.sortIndex-p.sortIndex;return C!==0?C:P.id-p.id}if(typeof performance=="object"&&typeof performance.now=="function"){var s=performance;e.unstable_now=function(){return s.now()}}else{var a=Date,o=a.now();e.unstable_now=function(){return a.now()-o}}var u=[],c=[],y=1,m=null,g=3,x=!1,k=!1,S=!1,D=typeof setTimeout=="function"?setTimeout:null,f=typeof clearTimeout=="function"?clearTimeout:null,d=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function v(P){for(var p=n(c);p!==null;){if(p.callback===null)r(c);else if(p.startTime<=P)r(c),p.sortIndex=p.expirationTime,t(u,p);else break;p=n(c)}}function w(P){if(S=!1,v(P),!k)if(n(u)!==null)k=!0,Ee(j);else{var p=n(c);p!==null&&he(w,p.startTime-P)}}function j(P,p){k=!1,S&&(S=!1,f(N),N=-1),x=!0;var C=g;try{for(v(p),m=n(u);m!==null&&(!(m.expirationTime>p)||P&&!J());){var M=m.callback;if(typeof M=="function"){m.callback=null,g=m.priorityLevel;var R=M(m.expirationTime<=p);p=e.unstable_now(),typeof R=="function"?m.callback=R:m===n(u)&&r(u),v(p)}else r(u);m=n(u)}if(m!==null)var B=!0;else{var A=n(c);A!==null&&he(w,A.startTime-p),B=!1}return B}finally{m=null,g=C,x=!1}}var E=!1,T=null,N=-1,F=5,$=-1;function J(){return!(e.unstable_now()-$<F)}function se(){if(T!==null){var P=e.unstable_now();$=P;var p=!0;try{p=T(!0,P)}finally{p?O():(E=!1,T=null)}}else E=!1}var O;if(typeof d=="function")O=function(){d(se)};else if(typeof MessageChannel<"u"){var K=new MessageChannel,ye=K.port2;K.port1.onmessage=se,O=function(){ye.postMessage(null)}}else O=function(){D(se,0)};function Ee(P){T=P,E||(E=!0,O())}function he(P,p){N=D(function(){P(e.unstable_now())},p)}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(P){P.callback=null},e.unstable_continueExecution=function(){k||x||(k=!0,Ee(j))},e.unstable_forceFrameRate=function(P){0>P||125<P?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):F=0<P?Math.floor(1e3/P):5},e.unstable_getCurrentPriorityLevel=function(){return g},e.unstable_getFirstCallbackNode=function(){return n(u)},e.unstable_next=function(P){switch(g){case 1:case 2:case 3:var p=3;break;default:p=g}var C=g;g=p;try{return P()}finally{g=C}},e.unstable_pauseExecution=function(){},e.unstable_requestPaint=function(){},e.unstable_runWithPriority=function(P,p){switch(P){case 1:case 2:case 3:case 4:case 5:break;default:P=3}var C=g;g=P;try{return p()}finally{g=C}},e.unstable_scheduleCallback=function(P,p,C){var M=e.unstable_now();switch(typeof C=="object"&&C!==null?(C=C.delay,C=typeof C=="number"&&0<C?M+C:M):C=M,P){case 1:var R=-1;break;case 2:R=250;break;case 5:R=1073741823;break;case 4:R=1e4;break;default:R=5e3}return R=C+R,P={id:y++,callback:p,priorityLevel:P,startTime:C,expirationTime:R,sortIndex:-1},C>M?(P.sortIndex=C,t(c,P),n(u)===null&&P===n(c)&&(S?(f(N),N=-1):S=!0,he(w,C-M))):(P.sortIndex=R,t(u,P),k||x||(k=!0,Ee(j))),P},e.unstable_shouldYield=J,e.unstable_wrapCallback=function(P){var p=g;return function(){var C=g;g=p;try{return P.apply(this,arguments)}finally{g=C}}}})(Do);zo.exports=Do;var od=zo.exports;/**
|
||
* @license React
|
||
* react-dom.production.min.js
|
||
*
|
||
* Copyright (c) Facebook, Inc. and its affiliates.
|
||
*
|
||
* This source code is licensed under the MIT license found in the
|
||
* LICENSE file in the root directory of this source tree.
|
||
*/var ud=h,Fe=od;function _(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var Oo=new Set,Yn={};function Xt(e,t){vn(e,t),vn(e+"Capture",t)}function vn(e,t){for(Yn[e]=t,e=0;e<t.length;e++)Oo.add(t[e])}var dt=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),ms=Object.prototype.hasOwnProperty,cd=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,oa={},ua={};function dd(e){return ms.call(ua,e)?!0:ms.call(oa,e)?!1:cd.test(e)?ua[e]=!0:(oa[e]=!0,!1)}function fd(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return r?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function pd(e,t,n,r){if(t===null||typeof t>"u"||fd(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function _e(e,t,n,r,l,s,a){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=l,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=s,this.removeEmptyString=a}var ve={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){ve[e]=new _e(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];ve[t]=new _e(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){ve[e]=new _e(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){ve[e]=new _e(e,2,!1,e,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){ve[e]=new _e(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){ve[e]=new _e(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){ve[e]=new _e(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){ve[e]=new _e(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){ve[e]=new _e(e,5,!1,e.toLowerCase(),null,!1,!1)});var hi=/[\-:]([a-z])/g;function mi(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(hi,mi);ve[t]=new _e(t,1,!1,e,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(hi,mi);ve[t]=new _e(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(hi,mi);ve[t]=new _e(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){ve[e]=new _e(e,1,!1,e.toLowerCase(),null,!1,!1)});ve.xlinkHref=new _e("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){ve[e]=new _e(e,1,!1,e.toLowerCase(),null,!0,!0)});function gi(e,t,n,r){var l=ve.hasOwnProperty(t)?ve[t]:null;(l!==null?l.type!==0:r||!(2<t.length)||t[0]!=="o"&&t[0]!=="O"||t[1]!=="n"&&t[1]!=="N")&&(pd(t,n,l,r)&&(n=null),r||l===null?dd(t)&&(n===null?e.removeAttribute(t):e.setAttribute(t,""+n)):l.mustUseProperty?e[l.propertyName]=n===null?l.type===3?!1:"":n:(t=l.attributeName,r=l.attributeNamespace,n===null?e.removeAttribute(t):(l=l.type,n=l===3||l===4&&n===!0?"":""+n,r?e.setAttributeNS(r,t,n):e.setAttribute(t,n))))}var mt=ud.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,wr=Symbol.for("react.element"),qt=Symbol.for("react.portal"),Zt=Symbol.for("react.fragment"),vi=Symbol.for("react.strict_mode"),gs=Symbol.for("react.profiler"),$o=Symbol.for("react.provider"),Mo=Symbol.for("react.context"),yi=Symbol.for("react.forward_ref"),vs=Symbol.for("react.suspense"),ys=Symbol.for("react.suspense_list"),xi=Symbol.for("react.memo"),vt=Symbol.for("react.lazy"),Fo=Symbol.for("react.offscreen"),ca=Symbol.iterator;function En(e){return e===null||typeof e!="object"?null:(e=ca&&e[ca]||e["@@iterator"],typeof e=="function"?e:null)}var ne=Object.assign,Ul;function Mn(e){if(Ul===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);Ul=t&&t[1]||""}return`
|
||
`+Ul+e}var Bl=!1;function Vl(e,t){if(!e||Bl)return"";Bl=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(t,[])}catch(c){var r=c}Reflect.construct(e,[],t)}else{try{t.call()}catch(c){r=c}e.call(t.prototype)}else{try{throw Error()}catch(c){r=c}e()}}catch(c){if(c&&r&&typeof c.stack=="string"){for(var l=c.stack.split(`
|
||
`),s=r.stack.split(`
|
||
`),a=l.length-1,o=s.length-1;1<=a&&0<=o&&l[a]!==s[o];)o--;for(;1<=a&&0<=o;a--,o--)if(l[a]!==s[o]){if(a!==1||o!==1)do if(a--,o--,0>o||l[a]!==s[o]){var u=`
|
||
`+l[a].replace(" at new "," at ");return e.displayName&&u.includes("<anonymous>")&&(u=u.replace("<anonymous>",e.displayName)),u}while(1<=a&&0<=o);break}}}finally{Bl=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?Mn(e):""}function hd(e){switch(e.tag){case 5:return Mn(e.type);case 16:return Mn("Lazy");case 13:return Mn("Suspense");case 19:return Mn("SuspenseList");case 0:case 2:case 15:return e=Vl(e.type,!1),e;case 11:return e=Vl(e.type.render,!1),e;case 1:return e=Vl(e.type,!0),e;default:return""}}function xs(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case Zt:return"Fragment";case qt:return"Portal";case gs:return"Profiler";case vi:return"StrictMode";case vs:return"Suspense";case ys:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case Mo:return(e.displayName||"Context")+".Consumer";case $o:return(e._context.displayName||"Context")+".Provider";case yi:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case xi:return t=e.displayName||null,t!==null?t:xs(e.type)||"Memo";case vt:t=e._payload,e=e._init;try{return xs(e(t))}catch{}}return null}function md(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return xs(t);case 8:return t===vi?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function Rt(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function Io(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function gd(e){var t=Io(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var l=n.get,s=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return l.call(this)},set:function(a){r=""+a,s.call(this,a)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(a){r=""+a},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function kr(e){e._valueTracker||(e._valueTracker=gd(e))}function Ao(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=Io(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function Jr(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function ws(e,t){var n=t.checked;return ne({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function da(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=Rt(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function Uo(e,t){t=t.checked,t!=null&&gi(e,"checked",t,!1)}function ks(e,t){Uo(e,t);var n=Rt(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?Ss(e,t.type,n):t.hasOwnProperty("defaultValue")&&Ss(e,t.type,Rt(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function fa(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function Ss(e,t,n){(t!=="number"||Jr(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var Fn=Array.isArray;function dn(e,t,n,r){if(e=e.options,t){t={};for(var l=0;l<n.length;l++)t["$"+n[l]]=!0;for(n=0;n<e.length;n++)l=t.hasOwnProperty("$"+e[n].value),e[n].selected!==l&&(e[n].selected=l),l&&r&&(e[n].defaultSelected=!0)}else{for(n=""+Rt(n),t=null,l=0;l<e.length;l++){if(e[l].value===n){e[l].selected=!0,r&&(e[l].defaultSelected=!0);return}t!==null||e[l].disabled||(t=e[l])}t!==null&&(t.selected=!0)}}function js(e,t){if(t.dangerouslySetInnerHTML!=null)throw Error(_(91));return ne({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function pa(e,t){var n=t.value;if(n==null){if(n=t.children,t=t.defaultValue,n!=null){if(t!=null)throw Error(_(92));if(Fn(n)){if(1<n.length)throw Error(_(93));n=n[0]}t=n}t==null&&(t=""),n=t}e._wrapperState={initialValue:Rt(n)}}function Bo(e,t){var n=Rt(t.value),r=Rt(t.defaultValue);n!=null&&(n=""+n,n!==e.value&&(e.value=n),t.defaultValue==null&&e.defaultValue!==n&&(e.defaultValue=n)),r!=null&&(e.defaultValue=""+r)}function ha(e){var t=e.textContent;t===e._wrapperState.initialValue&&t!==""&&t!==null&&(e.value=t)}function Vo(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function Ns(e,t){return e==null||e==="http://www.w3.org/1999/xhtml"?Vo(t):e==="http://www.w3.org/2000/svg"&&t==="foreignObject"?"http://www.w3.org/1999/xhtml":e}var Sr,Wo=function(e){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(t,n,r,l){MSApp.execUnsafeLocalFunction(function(){return e(t,n,r,l)})}:e}(function(e,t){if(e.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in e)e.innerHTML=t;else{for(Sr=Sr||document.createElement("div"),Sr.innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=Sr.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function Gn(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Bn={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},vd=["Webkit","ms","Moz","O"];Object.keys(Bn).forEach(function(e){vd.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Bn[t]=Bn[e]})});function Ho(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||Bn.hasOwnProperty(e)&&Bn[e]?(""+t).trim():t+"px"}function Qo(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,l=Ho(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,l):e[n]=l}}var yd=ne({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function Cs(e,t){if(t){if(yd[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(_(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(_(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(_(61))}if(t.style!=null&&typeof t.style!="object")throw Error(_(62))}}function _s(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var Es=null;function wi(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var Ts=null,fn=null,pn=null;function ma(e){if(e=gr(e)){if(typeof Ts!="function")throw Error(_(280));var t=e.stateNode;t&&(t=jl(t),Ts(e.stateNode,e.type,t))}}function Ko(e){fn?pn?pn.push(e):pn=[e]:fn=e}function bo(){if(fn){var e=fn,t=pn;if(pn=fn=null,ma(e),t)for(e=0;e<t.length;e++)ma(t[e])}}function Jo(e,t){return e(t)}function Xo(){}var Wl=!1;function Yo(e,t,n){if(Wl)return e(t,n);Wl=!0;try{return Jo(e,t,n)}finally{Wl=!1,(fn!==null||pn!==null)&&(Xo(),bo())}}function qn(e,t){var n=e.stateNode;if(n===null)return null;var r=jl(n);if(r===null)return null;n=r[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(r=!r.disabled)||(e=e.type,r=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!r;break e;default:e=!1}if(e)return null;if(n&&typeof n!="function")throw Error(_(231,t,typeof n));return n}var Ps=!1;if(dt)try{var Tn={};Object.defineProperty(Tn,"passive",{get:function(){Ps=!0}}),window.addEventListener("test",Tn,Tn),window.removeEventListener("test",Tn,Tn)}catch{Ps=!1}function xd(e,t,n,r,l,s,a,o,u){var c=Array.prototype.slice.call(arguments,3);try{t.apply(n,c)}catch(y){this.onError(y)}}var Vn=!1,Xr=null,Yr=!1,Ls=null,wd={onError:function(e){Vn=!0,Xr=e}};function kd(e,t,n,r,l,s,a,o,u){Vn=!1,Xr=null,xd.apply(wd,arguments)}function Sd(e,t,n,r,l,s,a,o,u){if(kd.apply(this,arguments),Vn){if(Vn){var c=Xr;Vn=!1,Xr=null}else throw Error(_(198));Yr||(Yr=!0,Ls=c)}}function Yt(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function Go(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function ga(e){if(Yt(e)!==e)throw Error(_(188))}function jd(e){var t=e.alternate;if(!t){if(t=Yt(e),t===null)throw Error(_(188));return t!==e?null:e}for(var n=e,r=t;;){var l=n.return;if(l===null)break;var s=l.alternate;if(s===null){if(r=l.return,r!==null){n=r;continue}break}if(l.child===s.child){for(s=l.child;s;){if(s===n)return ga(l),e;if(s===r)return ga(l),t;s=s.sibling}throw Error(_(188))}if(n.return!==r.return)n=l,r=s;else{for(var a=!1,o=l.child;o;){if(o===n){a=!0,n=l,r=s;break}if(o===r){a=!0,r=l,n=s;break}o=o.sibling}if(!a){for(o=s.child;o;){if(o===n){a=!0,n=s,r=l;break}if(o===r){a=!0,r=s,n=l;break}o=o.sibling}if(!a)throw Error(_(189))}}if(n.alternate!==r)throw Error(_(190))}if(n.tag!==3)throw Error(_(188));return n.stateNode.current===n?e:t}function qo(e){return e=jd(e),e!==null?Zo(e):null}function Zo(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){var t=Zo(e);if(t!==null)return t;e=e.sibling}return null}var eu=Fe.unstable_scheduleCallback,va=Fe.unstable_cancelCallback,Nd=Fe.unstable_shouldYield,Cd=Fe.unstable_requestPaint,ie=Fe.unstable_now,_d=Fe.unstable_getCurrentPriorityLevel,ki=Fe.unstable_ImmediatePriority,tu=Fe.unstable_UserBlockingPriority,Gr=Fe.unstable_NormalPriority,Ed=Fe.unstable_LowPriority,nu=Fe.unstable_IdlePriority,xl=null,rt=null;function Td(e){if(rt&&typeof rt.onCommitFiberRoot=="function")try{rt.onCommitFiberRoot(xl,e,void 0,(e.current.flags&128)===128)}catch{}}var Ge=Math.clz32?Math.clz32:Rd,Pd=Math.log,Ld=Math.LN2;function Rd(e){return e>>>=0,e===0?32:31-(Pd(e)/Ld|0)|0}var jr=64,Nr=4194304;function In(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function qr(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,l=e.suspendedLanes,s=e.pingedLanes,a=n&268435455;if(a!==0){var o=a&~l;o!==0?r=In(o):(s&=a,s!==0&&(r=In(s)))}else a=n&~l,a!==0?r=In(a):s!==0&&(r=In(s));if(r===0)return 0;if(t!==0&&t!==r&&!(t&l)&&(l=r&-r,s=t&-t,l>=s||l===16&&(s&4194240)!==0))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0<t;)n=31-Ge(t),l=1<<n,r|=e[n],t&=~l;return r}function zd(e,t){switch(e){case 1:case 2:case 4:return t+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Dd(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,l=e.expirationTimes,s=e.pendingLanes;0<s;){var a=31-Ge(s),o=1<<a,u=l[a];u===-1?(!(o&n)||o&r)&&(l[a]=zd(o,t)):u<=t&&(e.expiredLanes|=o),s&=~o}}function Rs(e){return e=e.pendingLanes&-1073741825,e!==0?e:e&1073741824?1073741824:0}function ru(){var e=jr;return jr<<=1,!(jr&4194240)&&(jr=64),e}function Hl(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function hr(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Ge(t),e[t]=n}function Od(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0<n;){var l=31-Ge(n),s=1<<l;t[l]=0,r[l]=-1,e[l]=-1,n&=~s}}function Si(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-Ge(n),l=1<<r;l&t|e[r]&t&&(e[r]|=t),n&=~l}}var X=0;function lu(e){return e&=-e,1<e?4<e?e&268435455?16:536870912:4:1}var su,ji,iu,au,ou,zs=!1,Cr=[],jt=null,Nt=null,Ct=null,Zn=new Map,er=new Map,xt=[],$d="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function ya(e,t){switch(e){case"focusin":case"focusout":jt=null;break;case"dragenter":case"dragleave":Nt=null;break;case"mouseover":case"mouseout":Ct=null;break;case"pointerover":case"pointerout":Zn.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":er.delete(t.pointerId)}}function Pn(e,t,n,r,l,s){return e===null||e.nativeEvent!==s?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:s,targetContainers:[l]},t!==null&&(t=gr(t),t!==null&&ji(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,l!==null&&t.indexOf(l)===-1&&t.push(l),e)}function Md(e,t,n,r,l){switch(t){case"focusin":return jt=Pn(jt,e,t,n,r,l),!0;case"dragenter":return Nt=Pn(Nt,e,t,n,r,l),!0;case"mouseover":return Ct=Pn(Ct,e,t,n,r,l),!0;case"pointerover":var s=l.pointerId;return Zn.set(s,Pn(Zn.get(s)||null,e,t,n,r,l)),!0;case"gotpointercapture":return s=l.pointerId,er.set(s,Pn(er.get(s)||null,e,t,n,r,l)),!0}return!1}function uu(e){var t=It(e.target);if(t!==null){var n=Yt(t);if(n!==null){if(t=n.tag,t===13){if(t=Go(n),t!==null){e.blockedOn=t,ou(e.priority,function(){iu(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function Ir(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=Ds(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n);Es=r,n.target.dispatchEvent(r),Es=null}else return t=gr(n),t!==null&&ji(t),e.blockedOn=n,!1;t.shift()}return!0}function xa(e,t,n){Ir(e)&&n.delete(t)}function Fd(){zs=!1,jt!==null&&Ir(jt)&&(jt=null),Nt!==null&&Ir(Nt)&&(Nt=null),Ct!==null&&Ir(Ct)&&(Ct=null),Zn.forEach(xa),er.forEach(xa)}function Ln(e,t){e.blockedOn===t&&(e.blockedOn=null,zs||(zs=!0,Fe.unstable_scheduleCallback(Fe.unstable_NormalPriority,Fd)))}function tr(e){function t(l){return Ln(l,e)}if(0<Cr.length){Ln(Cr[0],e);for(var n=1;n<Cr.length;n++){var r=Cr[n];r.blockedOn===e&&(r.blockedOn=null)}}for(jt!==null&&Ln(jt,e),Nt!==null&&Ln(Nt,e),Ct!==null&&Ln(Ct,e),Zn.forEach(t),er.forEach(t),n=0;n<xt.length;n++)r=xt[n],r.blockedOn===e&&(r.blockedOn=null);for(;0<xt.length&&(n=xt[0],n.blockedOn===null);)uu(n),n.blockedOn===null&&xt.shift()}var hn=mt.ReactCurrentBatchConfig,Zr=!0;function Id(e,t,n,r){var l=X,s=hn.transition;hn.transition=null;try{X=1,Ni(e,t,n,r)}finally{X=l,hn.transition=s}}function Ad(e,t,n,r){var l=X,s=hn.transition;hn.transition=null;try{X=4,Ni(e,t,n,r)}finally{X=l,hn.transition=s}}function Ni(e,t,n,r){if(Zr){var l=Ds(e,t,n,r);if(l===null)es(e,t,r,el,n),ya(e,r);else if(Md(l,e,t,n,r))r.stopPropagation();else if(ya(e,r),t&4&&-1<$d.indexOf(e)){for(;l!==null;){var s=gr(l);if(s!==null&&su(s),s=Ds(e,t,n,r),s===null&&es(e,t,r,el,n),s===l)break;l=s}l!==null&&r.stopPropagation()}else es(e,t,r,null,n)}}var el=null;function Ds(e,t,n,r){if(el=null,e=wi(r),e=It(e),e!==null)if(t=Yt(e),t===null)e=null;else if(n=t.tag,n===13){if(e=Go(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return el=e,null}function cu(e){switch(e){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(_d()){case ki:return 1;case tu:return 4;case Gr:case Ed:return 16;case nu:return 536870912;default:return 16}default:return 16}}var kt=null,Ci=null,Ar=null;function du(){if(Ar)return Ar;var e,t=Ci,n=t.length,r,l="value"in kt?kt.value:kt.textContent,s=l.length;for(e=0;e<n&&t[e]===l[e];e++);var a=n-e;for(r=1;r<=a&&t[n-r]===l[s-r];r++);return Ar=l.slice(e,1<r?1-r:void 0)}function Ur(e){var t=e.keyCode;return"charCode"in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function _r(){return!0}function wa(){return!1}function Ae(e){function t(n,r,l,s,a){this._reactName=n,this._targetInst=l,this.type=r,this.nativeEvent=s,this.target=a,this.currentTarget=null;for(var o in e)e.hasOwnProperty(o)&&(n=e[o],this[o]=n?n(s):s[o]);return this.isDefaultPrevented=(s.defaultPrevented!=null?s.defaultPrevented:s.returnValue===!1)?_r:wa,this.isPropagationStopped=wa,this}return ne(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var n=this.nativeEvent;n&&(n.preventDefault?n.preventDefault():typeof n.returnValue!="unknown"&&(n.returnValue=!1),this.isDefaultPrevented=_r)},stopPropagation:function(){var n=this.nativeEvent;n&&(n.stopPropagation?n.stopPropagation():typeof n.cancelBubble!="unknown"&&(n.cancelBubble=!0),this.isPropagationStopped=_r)},persist:function(){},isPersistent:_r}),t}var Cn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},_i=Ae(Cn),mr=ne({},Cn,{view:0,detail:0}),Ud=Ae(mr),Ql,Kl,Rn,wl=ne({},mr,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Ei,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==Rn&&(Rn&&e.type==="mousemove"?(Ql=e.screenX-Rn.screenX,Kl=e.screenY-Rn.screenY):Kl=Ql=0,Rn=e),Ql)},movementY:function(e){return"movementY"in e?e.movementY:Kl}}),ka=Ae(wl),Bd=ne({},wl,{dataTransfer:0}),Vd=Ae(Bd),Wd=ne({},mr,{relatedTarget:0}),bl=Ae(Wd),Hd=ne({},Cn,{animationName:0,elapsedTime:0,pseudoElement:0}),Qd=Ae(Hd),Kd=ne({},Cn,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),bd=Ae(Kd),Jd=ne({},Cn,{data:0}),Sa=Ae(Jd),Xd={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},Yd={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},Gd={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function qd(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=Gd[e])?!!t[e]:!1}function Ei(){return qd}var Zd=ne({},mr,{key:function(e){if(e.key){var t=Xd[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=Ur(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?Yd[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Ei,charCode:function(e){return e.type==="keypress"?Ur(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?Ur(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),ef=Ae(Zd),tf=ne({},wl,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),ja=Ae(tf),nf=ne({},mr,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Ei}),rf=Ae(nf),lf=ne({},Cn,{propertyName:0,elapsedTime:0,pseudoElement:0}),sf=Ae(lf),af=ne({},wl,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),of=Ae(af),uf=[9,13,27,32],Ti=dt&&"CompositionEvent"in window,Wn=null;dt&&"documentMode"in document&&(Wn=document.documentMode);var cf=dt&&"TextEvent"in window&&!Wn,fu=dt&&(!Ti||Wn&&8<Wn&&11>=Wn),Na=" ",Ca=!1;function pu(e,t){switch(e){case"keyup":return uf.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function hu(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var en=!1;function df(e,t){switch(e){case"compositionend":return hu(t);case"keypress":return t.which!==32?null:(Ca=!0,Na);case"textInput":return e=t.data,e===Na&&Ca?null:e;default:return null}}function ff(e,t){if(en)return e==="compositionend"||!Ti&&pu(e,t)?(e=du(),Ar=Ci=kt=null,en=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return fu&&t.locale!=="ko"?null:t.data;default:return null}}var pf={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function _a(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!pf[e.type]:t==="textarea"}function mu(e,t,n,r){Ko(r),t=tl(t,"onChange"),0<t.length&&(n=new _i("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var Hn=null,nr=null;function hf(e){_u(e,0)}function kl(e){var t=rn(e);if(Ao(t))return e}function mf(e,t){if(e==="change")return t}var gu=!1;if(dt){var Jl;if(dt){var Xl="oninput"in document;if(!Xl){var Ea=document.createElement("div");Ea.setAttribute("oninput","return;"),Xl=typeof Ea.oninput=="function"}Jl=Xl}else Jl=!1;gu=Jl&&(!document.documentMode||9<document.documentMode)}function Ta(){Hn&&(Hn.detachEvent("onpropertychange",vu),nr=Hn=null)}function vu(e){if(e.propertyName==="value"&&kl(nr)){var t=[];mu(t,nr,e,wi(e)),Yo(hf,t)}}function gf(e,t,n){e==="focusin"?(Ta(),Hn=t,nr=n,Hn.attachEvent("onpropertychange",vu)):e==="focusout"&&Ta()}function vf(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return kl(nr)}function yf(e,t){if(e==="click")return kl(t)}function xf(e,t){if(e==="input"||e==="change")return kl(t)}function wf(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var Ze=typeof Object.is=="function"?Object.is:wf;function rr(e,t){if(Ze(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var l=n[r];if(!ms.call(t,l)||!Ze(e[l],t[l]))return!1}return!0}function Pa(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function La(e,t){var n=Pa(e);e=0;for(var r;n;){if(n.nodeType===3){if(r=e+n.textContent.length,e<=t&&r>=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=Pa(n)}}function yu(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?yu(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function xu(){for(var e=window,t=Jr();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=Jr(e.document)}return t}function Pi(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function kf(e){var t=xu(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&yu(n.ownerDocument.documentElement,n)){if(r!==null&&Pi(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var l=n.textContent.length,s=Math.min(r.start,l);r=r.end===void 0?s:Math.min(r.end,l),!e.extend&&s>r&&(l=r,r=s,s=l),l=La(n,s);var a=La(n,r);l&&a&&(e.rangeCount!==1||e.anchorNode!==l.node||e.anchorOffset!==l.offset||e.focusNode!==a.node||e.focusOffset!==a.offset)&&(t=t.createRange(),t.setStart(l.node,l.offset),e.removeAllRanges(),s>r?(e.addRange(t),e.extend(a.node,a.offset)):(t.setEnd(a.node,a.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n<t.length;n++)e=t[n],e.element.scrollLeft=e.left,e.element.scrollTop=e.top}}var Sf=dt&&"documentMode"in document&&11>=document.documentMode,tn=null,Os=null,Qn=null,$s=!1;function Ra(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;$s||tn==null||tn!==Jr(r)||(r=tn,"selectionStart"in r&&Pi(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),Qn&&rr(Qn,r)||(Qn=r,r=tl(Os,"onSelect"),0<r.length&&(t=new _i("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=tn)))}function Er(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var nn={animationend:Er("Animation","AnimationEnd"),animationiteration:Er("Animation","AnimationIteration"),animationstart:Er("Animation","AnimationStart"),transitionend:Er("Transition","TransitionEnd")},Yl={},wu={};dt&&(wu=document.createElement("div").style,"AnimationEvent"in window||(delete nn.animationend.animation,delete nn.animationiteration.animation,delete nn.animationstart.animation),"TransitionEvent"in window||delete nn.transitionend.transition);function Sl(e){if(Yl[e])return Yl[e];if(!nn[e])return e;var t=nn[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in wu)return Yl[e]=t[n];return e}var ku=Sl("animationend"),Su=Sl("animationiteration"),ju=Sl("animationstart"),Nu=Sl("transitionend"),Cu=new Map,za="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function Dt(e,t){Cu.set(e,t),Xt(t,[e])}for(var Gl=0;Gl<za.length;Gl++){var ql=za[Gl],jf=ql.toLowerCase(),Nf=ql[0].toUpperCase()+ql.slice(1);Dt(jf,"on"+Nf)}Dt(ku,"onAnimationEnd");Dt(Su,"onAnimationIteration");Dt(ju,"onAnimationStart");Dt("dblclick","onDoubleClick");Dt("focusin","onFocus");Dt("focusout","onBlur");Dt(Nu,"onTransitionEnd");vn("onMouseEnter",["mouseout","mouseover"]);vn("onMouseLeave",["mouseout","mouseover"]);vn("onPointerEnter",["pointerout","pointerover"]);vn("onPointerLeave",["pointerout","pointerover"]);Xt("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));Xt("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));Xt("onBeforeInput",["compositionend","keypress","textInput","paste"]);Xt("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));Xt("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));Xt("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var An="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Cf=new Set("cancel close invalid load scroll toggle".split(" ").concat(An));function Da(e,t,n){var r=e.type||"unknown-event";e.currentTarget=n,Sd(r,t,void 0,e),e.currentTarget=null}function _u(e,t){t=(t&4)!==0;for(var n=0;n<e.length;n++){var r=e[n],l=r.event;r=r.listeners;e:{var s=void 0;if(t)for(var a=r.length-1;0<=a;a--){var o=r[a],u=o.instance,c=o.currentTarget;if(o=o.listener,u!==s&&l.isPropagationStopped())break e;Da(l,o,c),s=u}else for(a=0;a<r.length;a++){if(o=r[a],u=o.instance,c=o.currentTarget,o=o.listener,u!==s&&l.isPropagationStopped())break e;Da(l,o,c),s=u}}}if(Yr)throw e=Ls,Yr=!1,Ls=null,e}function G(e,t){var n=t[Us];n===void 0&&(n=t[Us]=new Set);var r=e+"__bubble";n.has(r)||(Eu(t,e,2,!1),n.add(r))}function Zl(e,t,n){var r=0;t&&(r|=4),Eu(n,e,r,t)}var Tr="_reactListening"+Math.random().toString(36).slice(2);function lr(e){if(!e[Tr]){e[Tr]=!0,Oo.forEach(function(n){n!=="selectionchange"&&(Cf.has(n)||Zl(n,!1,e),Zl(n,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[Tr]||(t[Tr]=!0,Zl("selectionchange",!1,t))}}function Eu(e,t,n,r){switch(cu(t)){case 1:var l=Id;break;case 4:l=Ad;break;default:l=Ni}n=l.bind(null,t,n,e),l=void 0,!Ps||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(l=!0),r?l!==void 0?e.addEventListener(t,n,{capture:!0,passive:l}):e.addEventListener(t,n,!0):l!==void 0?e.addEventListener(t,n,{passive:l}):e.addEventListener(t,n,!1)}function es(e,t,n,r,l){var s=r;if(!(t&1)&&!(t&2)&&r!==null)e:for(;;){if(r===null)return;var a=r.tag;if(a===3||a===4){var o=r.stateNode.containerInfo;if(o===l||o.nodeType===8&&o.parentNode===l)break;if(a===4)for(a=r.return;a!==null;){var u=a.tag;if((u===3||u===4)&&(u=a.stateNode.containerInfo,u===l||u.nodeType===8&&u.parentNode===l))return;a=a.return}for(;o!==null;){if(a=It(o),a===null)return;if(u=a.tag,u===5||u===6){r=s=a;continue e}o=o.parentNode}}r=r.return}Yo(function(){var c=s,y=wi(n),m=[];e:{var g=Cu.get(e);if(g!==void 0){var x=_i,k=e;switch(e){case"keypress":if(Ur(n)===0)break e;case"keydown":case"keyup":x=ef;break;case"focusin":k="focus",x=bl;break;case"focusout":k="blur",x=bl;break;case"beforeblur":case"afterblur":x=bl;break;case"click":if(n.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":x=ka;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":x=Vd;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":x=rf;break;case ku:case Su:case ju:x=Qd;break;case Nu:x=sf;break;case"scroll":x=Ud;break;case"wheel":x=of;break;case"copy":case"cut":case"paste":x=bd;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":x=ja}var S=(t&4)!==0,D=!S&&e==="scroll",f=S?g!==null?g+"Capture":null:g;S=[];for(var d=c,v;d!==null;){v=d;var w=v.stateNode;if(v.tag===5&&w!==null&&(v=w,f!==null&&(w=qn(d,f),w!=null&&S.push(sr(d,w,v)))),D)break;d=d.return}0<S.length&&(g=new x(g,k,null,n,y),m.push({event:g,listeners:S}))}}if(!(t&7)){e:{if(g=e==="mouseover"||e==="pointerover",x=e==="mouseout"||e==="pointerout",g&&n!==Es&&(k=n.relatedTarget||n.fromElement)&&(It(k)||k[ft]))break e;if((x||g)&&(g=y.window===y?y:(g=y.ownerDocument)?g.defaultView||g.parentWindow:window,x?(k=n.relatedTarget||n.toElement,x=c,k=k?It(k):null,k!==null&&(D=Yt(k),k!==D||k.tag!==5&&k.tag!==6)&&(k=null)):(x=null,k=c),x!==k)){if(S=ka,w="onMouseLeave",f="onMouseEnter",d="mouse",(e==="pointerout"||e==="pointerover")&&(S=ja,w="onPointerLeave",f="onPointerEnter",d="pointer"),D=x==null?g:rn(x),v=k==null?g:rn(k),g=new S(w,d+"leave",x,n,y),g.target=D,g.relatedTarget=v,w=null,It(y)===c&&(S=new S(f,d+"enter",k,n,y),S.target=v,S.relatedTarget=D,w=S),D=w,x&&k)t:{for(S=x,f=k,d=0,v=S;v;v=Gt(v))d++;for(v=0,w=f;w;w=Gt(w))v++;for(;0<d-v;)S=Gt(S),d--;for(;0<v-d;)f=Gt(f),v--;for(;d--;){if(S===f||f!==null&&S===f.alternate)break t;S=Gt(S),f=Gt(f)}S=null}else S=null;x!==null&&Oa(m,g,x,S,!1),k!==null&&D!==null&&Oa(m,D,k,S,!0)}}e:{if(g=c?rn(c):window,x=g.nodeName&&g.nodeName.toLowerCase(),x==="select"||x==="input"&&g.type==="file")var j=mf;else if(_a(g))if(gu)j=xf;else{j=vf;var E=gf}else(x=g.nodeName)&&x.toLowerCase()==="input"&&(g.type==="checkbox"||g.type==="radio")&&(j=yf);if(j&&(j=j(e,c))){mu(m,j,n,y);break e}E&&E(e,g,c),e==="focusout"&&(E=g._wrapperState)&&E.controlled&&g.type==="number"&&Ss(g,"number",g.value)}switch(E=c?rn(c):window,e){case"focusin":(_a(E)||E.contentEditable==="true")&&(tn=E,Os=c,Qn=null);break;case"focusout":Qn=Os=tn=null;break;case"mousedown":$s=!0;break;case"contextmenu":case"mouseup":case"dragend":$s=!1,Ra(m,n,y);break;case"selectionchange":if(Sf)break;case"keydown":case"keyup":Ra(m,n,y)}var T;if(Ti)e:{switch(e){case"compositionstart":var N="onCompositionStart";break e;case"compositionend":N="onCompositionEnd";break e;case"compositionupdate":N="onCompositionUpdate";break e}N=void 0}else en?pu(e,n)&&(N="onCompositionEnd"):e==="keydown"&&n.keyCode===229&&(N="onCompositionStart");N&&(fu&&n.locale!=="ko"&&(en||N!=="onCompositionStart"?N==="onCompositionEnd"&&en&&(T=du()):(kt=y,Ci="value"in kt?kt.value:kt.textContent,en=!0)),E=tl(c,N),0<E.length&&(N=new Sa(N,e,null,n,y),m.push({event:N,listeners:E}),T?N.data=T:(T=hu(n),T!==null&&(N.data=T)))),(T=cf?df(e,n):ff(e,n))&&(c=tl(c,"onBeforeInput"),0<c.length&&(y=new Sa("onBeforeInput","beforeinput",null,n,y),m.push({event:y,listeners:c}),y.data=T))}_u(m,t)})}function sr(e,t,n){return{instance:e,listener:t,currentTarget:n}}function tl(e,t){for(var n=t+"Capture",r=[];e!==null;){var l=e,s=l.stateNode;l.tag===5&&s!==null&&(l=s,s=qn(e,n),s!=null&&r.unshift(sr(e,s,l)),s=qn(e,t),s!=null&&r.push(sr(e,s,l))),e=e.return}return r}function Gt(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5);return e||null}function Oa(e,t,n,r,l){for(var s=t._reactName,a=[];n!==null&&n!==r;){var o=n,u=o.alternate,c=o.stateNode;if(u!==null&&u===r)break;o.tag===5&&c!==null&&(o=c,l?(u=qn(n,s),u!=null&&a.unshift(sr(n,u,o))):l||(u=qn(n,s),u!=null&&a.push(sr(n,u,o)))),n=n.return}a.length!==0&&e.push({event:t,listeners:a})}var _f=/\r\n?/g,Ef=/\u0000|\uFFFD/g;function $a(e){return(typeof e=="string"?e:""+e).replace(_f,`
|
||
`).replace(Ef,"")}function Pr(e,t,n){if(t=$a(t),$a(e)!==t&&n)throw Error(_(425))}function nl(){}var Ms=null,Fs=null;function Is(e,t){return e==="textarea"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var As=typeof setTimeout=="function"?setTimeout:void 0,Tf=typeof clearTimeout=="function"?clearTimeout:void 0,Ma=typeof Promise=="function"?Promise:void 0,Pf=typeof queueMicrotask=="function"?queueMicrotask:typeof Ma<"u"?function(e){return Ma.resolve(null).then(e).catch(Lf)}:As;function Lf(e){setTimeout(function(){throw e})}function ts(e,t){var n=t,r=0;do{var l=n.nextSibling;if(e.removeChild(n),l&&l.nodeType===8)if(n=l.data,n==="/$"){if(r===0){e.removeChild(l),tr(t);return}r--}else n!=="$"&&n!=="$?"&&n!=="$!"||r++;n=l}while(n);tr(t)}function _t(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t==="$"||t==="$!"||t==="$?")break;if(t==="/$")return null}}return e}function Fa(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="$"||n==="$!"||n==="$?"){if(t===0)return e;t--}else n==="/$"&&t++}e=e.previousSibling}return null}var _n=Math.random().toString(36).slice(2),nt="__reactFiber$"+_n,ir="__reactProps$"+_n,ft="__reactContainer$"+_n,Us="__reactEvents$"+_n,Rf="__reactListeners$"+_n,zf="__reactHandles$"+_n;function It(e){var t=e[nt];if(t)return t;for(var n=e.parentNode;n;){if(t=n[ft]||n[nt]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=Fa(e);e!==null;){if(n=e[nt])return n;e=Fa(e)}return t}e=n,n=e.parentNode}return null}function gr(e){return e=e[nt]||e[ft],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function rn(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(_(33))}function jl(e){return e[ir]||null}var Bs=[],ln=-1;function Ot(e){return{current:e}}function q(e){0>ln||(e.current=Bs[ln],Bs[ln]=null,ln--)}function Y(e,t){ln++,Bs[ln]=e.current,e.current=t}var zt={},Se=Ot(zt),Le=Ot(!1),Ht=zt;function yn(e,t){var n=e.type.contextTypes;if(!n)return zt;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var l={},s;for(s in n)l[s]=t[s];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=l),l}function Re(e){return e=e.childContextTypes,e!=null}function rl(){q(Le),q(Se)}function Ia(e,t,n){if(Se.current!==zt)throw Error(_(168));Y(Se,t),Y(Le,n)}function Tu(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var l in r)if(!(l in t))throw Error(_(108,md(e)||"Unknown",l));return ne({},n,r)}function ll(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||zt,Ht=Se.current,Y(Se,e),Y(Le,Le.current),!0}function Aa(e,t,n){var r=e.stateNode;if(!r)throw Error(_(169));n?(e=Tu(e,t,Ht),r.__reactInternalMemoizedMergedChildContext=e,q(Le),q(Se),Y(Se,e)):q(Le),Y(Le,n)}var at=null,Nl=!1,ns=!1;function Pu(e){at===null?at=[e]:at.push(e)}function Df(e){Nl=!0,Pu(e)}function $t(){if(!ns&&at!==null){ns=!0;var e=0,t=X;try{var n=at;for(X=1;e<n.length;e++){var r=n[e];do r=r(!0);while(r!==null)}at=null,Nl=!1}catch(l){throw at!==null&&(at=at.slice(e+1)),eu(ki,$t),l}finally{X=t,ns=!1}}return null}var sn=[],an=0,sl=null,il=0,Be=[],Ve=0,Qt=null,ot=1,ut="";function Mt(e,t){sn[an++]=il,sn[an++]=sl,sl=e,il=t}function Lu(e,t,n){Be[Ve++]=ot,Be[Ve++]=ut,Be[Ve++]=Qt,Qt=e;var r=ot;e=ut;var l=32-Ge(r)-1;r&=~(1<<l),n+=1;var s=32-Ge(t)+l;if(30<s){var a=l-l%5;s=(r&(1<<a)-1).toString(32),r>>=a,l-=a,ot=1<<32-Ge(t)+l|n<<l|r,ut=s+e}else ot=1<<s|n<<l|r,ut=e}function Li(e){e.return!==null&&(Mt(e,1),Lu(e,1,0))}function Ri(e){for(;e===sl;)sl=sn[--an],sn[an]=null,il=sn[--an],sn[an]=null;for(;e===Qt;)Qt=Be[--Ve],Be[Ve]=null,ut=Be[--Ve],Be[Ve]=null,ot=Be[--Ve],Be[Ve]=null}var Me=null,$e=null,Z=!1,Ye=null;function Ru(e,t){var n=We(5,null,null,0);n.elementType="DELETED",n.stateNode=t,n.return=e,t=e.deletions,t===null?(e.deletions=[n],e.flags|=16):t.push(n)}function Ua(e,t){switch(e.tag){case 5:var n=e.type;return t=t.nodeType!==1||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t,t!==null?(e.stateNode=t,Me=e,$e=_t(t.firstChild),!0):!1;case 6:return t=e.pendingProps===""||t.nodeType!==3?null:t,t!==null?(e.stateNode=t,Me=e,$e=null,!0):!1;case 13:return t=t.nodeType!==8?null:t,t!==null?(n=Qt!==null?{id:ot,overflow:ut}:null,e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},n=We(18,null,null,0),n.stateNode=t,n.return=e,e.child=n,Me=e,$e=null,!0):!1;default:return!1}}function Vs(e){return(e.mode&1)!==0&&(e.flags&128)===0}function Ws(e){if(Z){var t=$e;if(t){var n=t;if(!Ua(e,t)){if(Vs(e))throw Error(_(418));t=_t(n.nextSibling);var r=Me;t&&Ua(e,t)?Ru(r,n):(e.flags=e.flags&-4097|2,Z=!1,Me=e)}}else{if(Vs(e))throw Error(_(418));e.flags=e.flags&-4097|2,Z=!1,Me=e}}}function Ba(e){for(e=e.return;e!==null&&e.tag!==5&&e.tag!==3&&e.tag!==13;)e=e.return;Me=e}function Lr(e){if(e!==Me)return!1;if(!Z)return Ba(e),Z=!0,!1;var t;if((t=e.tag!==3)&&!(t=e.tag!==5)&&(t=e.type,t=t!=="head"&&t!=="body"&&!Is(e.type,e.memoizedProps)),t&&(t=$e)){if(Vs(e))throw zu(),Error(_(418));for(;t;)Ru(e,t),t=_t(t.nextSibling)}if(Ba(e),e.tag===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(_(317));e:{for(e=e.nextSibling,t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="/$"){if(t===0){$e=_t(e.nextSibling);break e}t--}else n!=="$"&&n!=="$!"&&n!=="$?"||t++}e=e.nextSibling}$e=null}}else $e=Me?_t(e.stateNode.nextSibling):null;return!0}function zu(){for(var e=$e;e;)e=_t(e.nextSibling)}function xn(){$e=Me=null,Z=!1}function zi(e){Ye===null?Ye=[e]:Ye.push(e)}var Of=mt.ReactCurrentBatchConfig;function zn(e,t,n){if(e=n.ref,e!==null&&typeof e!="function"&&typeof e!="object"){if(n._owner){if(n=n._owner,n){if(n.tag!==1)throw Error(_(309));var r=n.stateNode}if(!r)throw Error(_(147,e));var l=r,s=""+e;return t!==null&&t.ref!==null&&typeof t.ref=="function"&&t.ref._stringRef===s?t.ref:(t=function(a){var o=l.refs;a===null?delete o[s]:o[s]=a},t._stringRef=s,t)}if(typeof e!="string")throw Error(_(284));if(!n._owner)throw Error(_(290,e))}return e}function Rr(e,t){throw e=Object.prototype.toString.call(t),Error(_(31,e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function Va(e){var t=e._init;return t(e._payload)}function Du(e){function t(f,d){if(e){var v=f.deletions;v===null?(f.deletions=[d],f.flags|=16):v.push(d)}}function n(f,d){if(!e)return null;for(;d!==null;)t(f,d),d=d.sibling;return null}function r(f,d){for(f=new Map;d!==null;)d.key!==null?f.set(d.key,d):f.set(d.index,d),d=d.sibling;return f}function l(f,d){return f=Lt(f,d),f.index=0,f.sibling=null,f}function s(f,d,v){return f.index=v,e?(v=f.alternate,v!==null?(v=v.index,v<d?(f.flags|=2,d):v):(f.flags|=2,d)):(f.flags|=1048576,d)}function a(f){return e&&f.alternate===null&&(f.flags|=2),f}function o(f,d,v,w){return d===null||d.tag!==6?(d=us(v,f.mode,w),d.return=f,d):(d=l(d,v),d.return=f,d)}function u(f,d,v,w){var j=v.type;return j===Zt?y(f,d,v.props.children,w,v.key):d!==null&&(d.elementType===j||typeof j=="object"&&j!==null&&j.$$typeof===vt&&Va(j)===d.type)?(w=l(d,v.props),w.ref=zn(f,d,v),w.return=f,w):(w=br(v.type,v.key,v.props,null,f.mode,w),w.ref=zn(f,d,v),w.return=f,w)}function c(f,d,v,w){return d===null||d.tag!==4||d.stateNode.containerInfo!==v.containerInfo||d.stateNode.implementation!==v.implementation?(d=cs(v,f.mode,w),d.return=f,d):(d=l(d,v.children||[]),d.return=f,d)}function y(f,d,v,w,j){return d===null||d.tag!==7?(d=Wt(v,f.mode,w,j),d.return=f,d):(d=l(d,v),d.return=f,d)}function m(f,d,v){if(typeof d=="string"&&d!==""||typeof d=="number")return d=us(""+d,f.mode,v),d.return=f,d;if(typeof d=="object"&&d!==null){switch(d.$$typeof){case wr:return v=br(d.type,d.key,d.props,null,f.mode,v),v.ref=zn(f,null,d),v.return=f,v;case qt:return d=cs(d,f.mode,v),d.return=f,d;case vt:var w=d._init;return m(f,w(d._payload),v)}if(Fn(d)||En(d))return d=Wt(d,f.mode,v,null),d.return=f,d;Rr(f,d)}return null}function g(f,d,v,w){var j=d!==null?d.key:null;if(typeof v=="string"&&v!==""||typeof v=="number")return j!==null?null:o(f,d,""+v,w);if(typeof v=="object"&&v!==null){switch(v.$$typeof){case wr:return v.key===j?u(f,d,v,w):null;case qt:return v.key===j?c(f,d,v,w):null;case vt:return j=v._init,g(f,d,j(v._payload),w)}if(Fn(v)||En(v))return j!==null?null:y(f,d,v,w,null);Rr(f,v)}return null}function x(f,d,v,w,j){if(typeof w=="string"&&w!==""||typeof w=="number")return f=f.get(v)||null,o(d,f,""+w,j);if(typeof w=="object"&&w!==null){switch(w.$$typeof){case wr:return f=f.get(w.key===null?v:w.key)||null,u(d,f,w,j);case qt:return f=f.get(w.key===null?v:w.key)||null,c(d,f,w,j);case vt:var E=w._init;return x(f,d,v,E(w._payload),j)}if(Fn(w)||En(w))return f=f.get(v)||null,y(d,f,w,j,null);Rr(d,w)}return null}function k(f,d,v,w){for(var j=null,E=null,T=d,N=d=0,F=null;T!==null&&N<v.length;N++){T.index>N?(F=T,T=null):F=T.sibling;var $=g(f,T,v[N],w);if($===null){T===null&&(T=F);break}e&&T&&$.alternate===null&&t(f,T),d=s($,d,N),E===null?j=$:E.sibling=$,E=$,T=F}if(N===v.length)return n(f,T),Z&&Mt(f,N),j;if(T===null){for(;N<v.length;N++)T=m(f,v[N],w),T!==null&&(d=s(T,d,N),E===null?j=T:E.sibling=T,E=T);return Z&&Mt(f,N),j}for(T=r(f,T);N<v.length;N++)F=x(T,f,N,v[N],w),F!==null&&(e&&F.alternate!==null&&T.delete(F.key===null?N:F.key),d=s(F,d,N),E===null?j=F:E.sibling=F,E=F);return e&&T.forEach(function(J){return t(f,J)}),Z&&Mt(f,N),j}function S(f,d,v,w){var j=En(v);if(typeof j!="function")throw Error(_(150));if(v=j.call(v),v==null)throw Error(_(151));for(var E=j=null,T=d,N=d=0,F=null,$=v.next();T!==null&&!$.done;N++,$=v.next()){T.index>N?(F=T,T=null):F=T.sibling;var J=g(f,T,$.value,w);if(J===null){T===null&&(T=F);break}e&&T&&J.alternate===null&&t(f,T),d=s(J,d,N),E===null?j=J:E.sibling=J,E=J,T=F}if($.done)return n(f,T),Z&&Mt(f,N),j;if(T===null){for(;!$.done;N++,$=v.next())$=m(f,$.value,w),$!==null&&(d=s($,d,N),E===null?j=$:E.sibling=$,E=$);return Z&&Mt(f,N),j}for(T=r(f,T);!$.done;N++,$=v.next())$=x(T,f,N,$.value,w),$!==null&&(e&&$.alternate!==null&&T.delete($.key===null?N:$.key),d=s($,d,N),E===null?j=$:E.sibling=$,E=$);return e&&T.forEach(function(se){return t(f,se)}),Z&&Mt(f,N),j}function D(f,d,v,w){if(typeof v=="object"&&v!==null&&v.type===Zt&&v.key===null&&(v=v.props.children),typeof v=="object"&&v!==null){switch(v.$$typeof){case wr:e:{for(var j=v.key,E=d;E!==null;){if(E.key===j){if(j=v.type,j===Zt){if(E.tag===7){n(f,E.sibling),d=l(E,v.props.children),d.return=f,f=d;break e}}else if(E.elementType===j||typeof j=="object"&&j!==null&&j.$$typeof===vt&&Va(j)===E.type){n(f,E.sibling),d=l(E,v.props),d.ref=zn(f,E,v),d.return=f,f=d;break e}n(f,E);break}else t(f,E);E=E.sibling}v.type===Zt?(d=Wt(v.props.children,f.mode,w,v.key),d.return=f,f=d):(w=br(v.type,v.key,v.props,null,f.mode,w),w.ref=zn(f,d,v),w.return=f,f=w)}return a(f);case qt:e:{for(E=v.key;d!==null;){if(d.key===E)if(d.tag===4&&d.stateNode.containerInfo===v.containerInfo&&d.stateNode.implementation===v.implementation){n(f,d.sibling),d=l(d,v.children||[]),d.return=f,f=d;break e}else{n(f,d);break}else t(f,d);d=d.sibling}d=cs(v,f.mode,w),d.return=f,f=d}return a(f);case vt:return E=v._init,D(f,d,E(v._payload),w)}if(Fn(v))return k(f,d,v,w);if(En(v))return S(f,d,v,w);Rr(f,v)}return typeof v=="string"&&v!==""||typeof v=="number"?(v=""+v,d!==null&&d.tag===6?(n(f,d.sibling),d=l(d,v),d.return=f,f=d):(n(f,d),d=us(v,f.mode,w),d.return=f,f=d),a(f)):n(f,d)}return D}var wn=Du(!0),Ou=Du(!1),al=Ot(null),ol=null,on=null,Di=null;function Oi(){Di=on=ol=null}function $i(e){var t=al.current;q(al),e._currentValue=t}function Hs(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,r!==null&&(r.childLanes|=t)):r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t),e===n)break;e=e.return}}function mn(e,t){ol=e,Di=on=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(Pe=!0),e.firstContext=null)}function Qe(e){var t=e._currentValue;if(Di!==e)if(e={context:e,memoizedValue:t,next:null},on===null){if(ol===null)throw Error(_(308));on=e,ol.dependencies={lanes:0,firstContext:e}}else on=on.next=e;return t}var At=null;function Mi(e){At===null?At=[e]:At.push(e)}function $u(e,t,n,r){var l=t.interleaved;return l===null?(n.next=n,Mi(t)):(n.next=l.next,l.next=n),t.interleaved=n,pt(e,r)}function pt(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}var yt=!1;function Fi(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Mu(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function ct(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Et(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,Q&2){var l=r.pending;return l===null?t.next=t:(t.next=l.next,l.next=t),r.pending=t,pt(e,n)}return l=r.interleaved,l===null?(t.next=t,Mi(r)):(t.next=l.next,l.next=t),r.interleaved=t,pt(e,n)}function Br(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194240)!==0)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Si(e,n)}}function Wa(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var l=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var a={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};s===null?l=s=a:s=s.next=a,n=n.next}while(n!==null);s===null?l=s=t:s=s.next=t}else l=s=t;n={baseState:r.baseState,firstBaseUpdate:l,lastBaseUpdate:s,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function ul(e,t,n,r){var l=e.updateQueue;yt=!1;var s=l.firstBaseUpdate,a=l.lastBaseUpdate,o=l.shared.pending;if(o!==null){l.shared.pending=null;var u=o,c=u.next;u.next=null,a===null?s=c:a.next=c,a=u;var y=e.alternate;y!==null&&(y=y.updateQueue,o=y.lastBaseUpdate,o!==a&&(o===null?y.firstBaseUpdate=c:o.next=c,y.lastBaseUpdate=u))}if(s!==null){var m=l.baseState;a=0,y=c=u=null,o=s;do{var g=o.lane,x=o.eventTime;if((r&g)===g){y!==null&&(y=y.next={eventTime:x,lane:0,tag:o.tag,payload:o.payload,callback:o.callback,next:null});e:{var k=e,S=o;switch(g=t,x=n,S.tag){case 1:if(k=S.payload,typeof k=="function"){m=k.call(x,m,g);break e}m=k;break e;case 3:k.flags=k.flags&-65537|128;case 0:if(k=S.payload,g=typeof k=="function"?k.call(x,m,g):k,g==null)break e;m=ne({},m,g);break e;case 2:yt=!0}}o.callback!==null&&o.lane!==0&&(e.flags|=64,g=l.effects,g===null?l.effects=[o]:g.push(o))}else x={eventTime:x,lane:g,tag:o.tag,payload:o.payload,callback:o.callback,next:null},y===null?(c=y=x,u=m):y=y.next=x,a|=g;if(o=o.next,o===null){if(o=l.shared.pending,o===null)break;g=o,o=g.next,g.next=null,l.lastBaseUpdate=g,l.shared.pending=null}}while(!0);if(y===null&&(u=m),l.baseState=u,l.firstBaseUpdate=c,l.lastBaseUpdate=y,t=l.shared.interleaved,t!==null){l=t;do a|=l.lane,l=l.next;while(l!==t)}else s===null&&(l.shared.lanes=0);bt|=a,e.lanes=a,e.memoizedState=m}}function Ha(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;t<e.length;t++){var r=e[t],l=r.callback;if(l!==null){if(r.callback=null,r=n,typeof l!="function")throw Error(_(191,l));l.call(r)}}}var vr={},lt=Ot(vr),ar=Ot(vr),or=Ot(vr);function Ut(e){if(e===vr)throw Error(_(174));return e}function Ii(e,t){switch(Y(or,t),Y(ar,e),Y(lt,vr),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:Ns(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=Ns(t,e)}q(lt),Y(lt,t)}function kn(){q(lt),q(ar),q(or)}function Fu(e){Ut(or.current);var t=Ut(lt.current),n=Ns(t,e.type);t!==n&&(Y(ar,e),Y(lt,n))}function Ai(e){ar.current===e&&(q(lt),q(ar))}var ee=Ot(0);function cl(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||n.data==="$?"||n.data==="$!"))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==void 0){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var rs=[];function Ui(){for(var e=0;e<rs.length;e++)rs[e]._workInProgressVersionPrimary=null;rs.length=0}var Vr=mt.ReactCurrentDispatcher,ls=mt.ReactCurrentBatchConfig,Kt=0,te=null,oe=null,de=null,dl=!1,Kn=!1,ur=0,$f=0;function xe(){throw Error(_(321))}function Bi(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!Ze(e[n],t[n]))return!1;return!0}function Vi(e,t,n,r,l,s){if(Kt=s,te=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,Vr.current=e===null||e.memoizedState===null?Af:Uf,e=n(r,l),Kn){s=0;do{if(Kn=!1,ur=0,25<=s)throw Error(_(301));s+=1,de=oe=null,t.updateQueue=null,Vr.current=Bf,e=n(r,l)}while(Kn)}if(Vr.current=fl,t=oe!==null&&oe.next!==null,Kt=0,de=oe=te=null,dl=!1,t)throw Error(_(300));return e}function Wi(){var e=ur!==0;return ur=0,e}function tt(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return de===null?te.memoizedState=de=e:de=de.next=e,de}function Ke(){if(oe===null){var e=te.alternate;e=e!==null?e.memoizedState:null}else e=oe.next;var t=de===null?te.memoizedState:de.next;if(t!==null)de=t,oe=e;else{if(e===null)throw Error(_(310));oe=e,e={memoizedState:oe.memoizedState,baseState:oe.baseState,baseQueue:oe.baseQueue,queue:oe.queue,next:null},de===null?te.memoizedState=de=e:de=de.next=e}return de}function cr(e,t){return typeof t=="function"?t(e):t}function ss(e){var t=Ke(),n=t.queue;if(n===null)throw Error(_(311));n.lastRenderedReducer=e;var r=oe,l=r.baseQueue,s=n.pending;if(s!==null){if(l!==null){var a=l.next;l.next=s.next,s.next=a}r.baseQueue=l=s,n.pending=null}if(l!==null){s=l.next,r=r.baseState;var o=a=null,u=null,c=s;do{var y=c.lane;if((Kt&y)===y)u!==null&&(u=u.next={lane:0,action:c.action,hasEagerState:c.hasEagerState,eagerState:c.eagerState,next:null}),r=c.hasEagerState?c.eagerState:e(r,c.action);else{var m={lane:y,action:c.action,hasEagerState:c.hasEagerState,eagerState:c.eagerState,next:null};u===null?(o=u=m,a=r):u=u.next=m,te.lanes|=y,bt|=y}c=c.next}while(c!==null&&c!==s);u===null?a=r:u.next=o,Ze(r,t.memoizedState)||(Pe=!0),t.memoizedState=r,t.baseState=a,t.baseQueue=u,n.lastRenderedState=r}if(e=n.interleaved,e!==null){l=e;do s=l.lane,te.lanes|=s,bt|=s,l=l.next;while(l!==e)}else l===null&&(n.lanes=0);return[t.memoizedState,n.dispatch]}function is(e){var t=Ke(),n=t.queue;if(n===null)throw Error(_(311));n.lastRenderedReducer=e;var r=n.dispatch,l=n.pending,s=t.memoizedState;if(l!==null){n.pending=null;var a=l=l.next;do s=e(s,a.action),a=a.next;while(a!==l);Ze(s,t.memoizedState)||(Pe=!0),t.memoizedState=s,t.baseQueue===null&&(t.baseState=s),n.lastRenderedState=s}return[s,r]}function Iu(){}function Au(e,t){var n=te,r=Ke(),l=t(),s=!Ze(r.memoizedState,l);if(s&&(r.memoizedState=l,Pe=!0),r=r.queue,Hi(Vu.bind(null,n,r,e),[e]),r.getSnapshot!==t||s||de!==null&&de.memoizedState.tag&1){if(n.flags|=2048,dr(9,Bu.bind(null,n,r,l,t),void 0,null),fe===null)throw Error(_(349));Kt&30||Uu(n,t,l)}return l}function Uu(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=te.updateQueue,t===null?(t={lastEffect:null,stores:null},te.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function Bu(e,t,n,r){t.value=n,t.getSnapshot=r,Wu(t)&&Hu(e)}function Vu(e,t,n){return n(function(){Wu(t)&&Hu(e)})}function Wu(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!Ze(e,n)}catch{return!0}}function Hu(e){var t=pt(e,1);t!==null&&qe(t,e,1,-1)}function Qa(e){var t=tt();return typeof e=="function"&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:cr,lastRenderedState:e},t.queue=e,e=e.dispatch=If.bind(null,te,e),[t.memoizedState,e]}function dr(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},t=te.updateQueue,t===null?(t={lastEffect:null,stores:null},te.updateQueue=t,t.lastEffect=e.next=e):(n=t.lastEffect,n===null?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e)),e}function Qu(){return Ke().memoizedState}function Wr(e,t,n,r){var l=tt();te.flags|=e,l.memoizedState=dr(1|t,n,void 0,r===void 0?null:r)}function Cl(e,t,n,r){var l=Ke();r=r===void 0?null:r;var s=void 0;if(oe!==null){var a=oe.memoizedState;if(s=a.destroy,r!==null&&Bi(r,a.deps)){l.memoizedState=dr(t,n,s,r);return}}te.flags|=e,l.memoizedState=dr(1|t,n,s,r)}function Ka(e,t){return Wr(8390656,8,e,t)}function Hi(e,t){return Cl(2048,8,e,t)}function Ku(e,t){return Cl(4,2,e,t)}function bu(e,t){return Cl(4,4,e,t)}function Ju(e,t){if(typeof t=="function")return e=e(),t(e),function(){t(null)};if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function Xu(e,t,n){return n=n!=null?n.concat([e]):null,Cl(4,4,Ju.bind(null,t,e),n)}function Qi(){}function Yu(e,t){var n=Ke();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&Bi(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function Gu(e,t){var n=Ke();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&Bi(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function qu(e,t,n){return Kt&21?(Ze(n,t)||(n=ru(),te.lanes|=n,bt|=n,e.baseState=!0),t):(e.baseState&&(e.baseState=!1,Pe=!0),e.memoizedState=n)}function Mf(e,t){var n=X;X=n!==0&&4>n?n:4,e(!0);var r=ls.transition;ls.transition={};try{e(!1),t()}finally{X=n,ls.transition=r}}function Zu(){return Ke().memoizedState}function Ff(e,t,n){var r=Pt(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},ec(e))tc(t,n);else if(n=$u(e,t,n,r),n!==null){var l=Ne();qe(n,e,r,l),nc(n,t,r)}}function If(e,t,n){var r=Pt(e),l={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(ec(e))tc(t,l);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var a=t.lastRenderedState,o=s(a,n);if(l.hasEagerState=!0,l.eagerState=o,Ze(o,a)){var u=t.interleaved;u===null?(l.next=l,Mi(t)):(l.next=u.next,u.next=l),t.interleaved=l;return}}catch{}finally{}n=$u(e,t,l,r),n!==null&&(l=Ne(),qe(n,e,r,l),nc(n,t,r))}}function ec(e){var t=e.alternate;return e===te||t!==null&&t===te}function tc(e,t){Kn=dl=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function nc(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Si(e,n)}}var fl={readContext:Qe,useCallback:xe,useContext:xe,useEffect:xe,useImperativeHandle:xe,useInsertionEffect:xe,useLayoutEffect:xe,useMemo:xe,useReducer:xe,useRef:xe,useState:xe,useDebugValue:xe,useDeferredValue:xe,useTransition:xe,useMutableSource:xe,useSyncExternalStore:xe,useId:xe,unstable_isNewReconciler:!1},Af={readContext:Qe,useCallback:function(e,t){return tt().memoizedState=[e,t===void 0?null:t],e},useContext:Qe,useEffect:Ka,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,Wr(4194308,4,Ju.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Wr(4194308,4,e,t)},useInsertionEffect:function(e,t){return Wr(4,2,e,t)},useMemo:function(e,t){var n=tt();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=tt();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=Ff.bind(null,te,e),[r.memoizedState,e]},useRef:function(e){var t=tt();return e={current:e},t.memoizedState=e},useState:Qa,useDebugValue:Qi,useDeferredValue:function(e){return tt().memoizedState=e},useTransition:function(){var e=Qa(!1),t=e[0];return e=Mf.bind(null,e[1]),tt().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=te,l=tt();if(Z){if(n===void 0)throw Error(_(407));n=n()}else{if(n=t(),fe===null)throw Error(_(349));Kt&30||Uu(r,t,n)}l.memoizedState=n;var s={value:n,getSnapshot:t};return l.queue=s,Ka(Vu.bind(null,r,s,e),[e]),r.flags|=2048,dr(9,Bu.bind(null,r,s,n,t),void 0,null),n},useId:function(){var e=tt(),t=fe.identifierPrefix;if(Z){var n=ut,r=ot;n=(r&~(1<<32-Ge(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=ur++,0<n&&(t+="H"+n.toString(32)),t+=":"}else n=$f++,t=":"+t+"r"+n.toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},Uf={readContext:Qe,useCallback:Yu,useContext:Qe,useEffect:Hi,useImperativeHandle:Xu,useInsertionEffect:Ku,useLayoutEffect:bu,useMemo:Gu,useReducer:ss,useRef:Qu,useState:function(){return ss(cr)},useDebugValue:Qi,useDeferredValue:function(e){var t=Ke();return qu(t,oe.memoizedState,e)},useTransition:function(){var e=ss(cr)[0],t=Ke().memoizedState;return[e,t]},useMutableSource:Iu,useSyncExternalStore:Au,useId:Zu,unstable_isNewReconciler:!1},Bf={readContext:Qe,useCallback:Yu,useContext:Qe,useEffect:Hi,useImperativeHandle:Xu,useInsertionEffect:Ku,useLayoutEffect:bu,useMemo:Gu,useReducer:is,useRef:Qu,useState:function(){return is(cr)},useDebugValue:Qi,useDeferredValue:function(e){var t=Ke();return oe===null?t.memoizedState=e:qu(t,oe.memoizedState,e)},useTransition:function(){var e=is(cr)[0],t=Ke().memoizedState;return[e,t]},useMutableSource:Iu,useSyncExternalStore:Au,useId:Zu,unstable_isNewReconciler:!1};function Je(e,t){if(e&&e.defaultProps){t=ne({},t),e=e.defaultProps;for(var n in e)t[n]===void 0&&(t[n]=e[n]);return t}return t}function Qs(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:ne({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var _l={isMounted:function(e){return(e=e._reactInternals)?Yt(e)===e:!1},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=Ne(),l=Pt(e),s=ct(r,l);s.payload=t,n!=null&&(s.callback=n),t=Et(e,s,l),t!==null&&(qe(t,e,l,r),Br(t,e,l))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=Ne(),l=Pt(e),s=ct(r,l);s.tag=1,s.payload=t,n!=null&&(s.callback=n),t=Et(e,s,l),t!==null&&(qe(t,e,l,r),Br(t,e,l))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=Ne(),r=Pt(e),l=ct(n,r);l.tag=2,t!=null&&(l.callback=t),t=Et(e,l,r),t!==null&&(qe(t,e,r,n),Br(t,e,r))}};function ba(e,t,n,r,l,s,a){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(r,s,a):t.prototype&&t.prototype.isPureReactComponent?!rr(n,r)||!rr(l,s):!0}function rc(e,t,n){var r=!1,l=zt,s=t.contextType;return typeof s=="object"&&s!==null?s=Qe(s):(l=Re(t)?Ht:Se.current,r=t.contextTypes,s=(r=r!=null)?yn(e,l):zt),t=new t(n,s),e.memoizedState=t.state!==null&&t.state!==void 0?t.state:null,t.updater=_l,e.stateNode=t,t._reactInternals=e,r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=l,e.__reactInternalMemoizedMaskedChildContext=s),t}function Ja(e,t,n,r){e=t.state,typeof t.componentWillReceiveProps=="function"&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps=="function"&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&_l.enqueueReplaceState(t,t.state,null)}function Ks(e,t,n,r){var l=e.stateNode;l.props=n,l.state=e.memoizedState,l.refs={},Fi(e);var s=t.contextType;typeof s=="object"&&s!==null?l.context=Qe(s):(s=Re(t)?Ht:Se.current,l.context=yn(e,s)),l.state=e.memoizedState,s=t.getDerivedStateFromProps,typeof s=="function"&&(Qs(e,t,s,n),l.state=e.memoizedState),typeof t.getDerivedStateFromProps=="function"||typeof l.getSnapshotBeforeUpdate=="function"||typeof l.UNSAFE_componentWillMount!="function"&&typeof l.componentWillMount!="function"||(t=l.state,typeof l.componentWillMount=="function"&&l.componentWillMount(),typeof l.UNSAFE_componentWillMount=="function"&&l.UNSAFE_componentWillMount(),t!==l.state&&_l.enqueueReplaceState(l,l.state,null),ul(e,n,l,r),l.state=e.memoizedState),typeof l.componentDidMount=="function"&&(e.flags|=4194308)}function Sn(e,t){try{var n="",r=t;do n+=hd(r),r=r.return;while(r);var l=n}catch(s){l=`
|
||
Error generating stack: `+s.message+`
|
||
`+s.stack}return{value:e,source:t,stack:l,digest:null}}function as(e,t,n){return{value:e,source:null,stack:n??null,digest:t??null}}function bs(e,t){try{console.error(t.value)}catch(n){setTimeout(function(){throw n})}}var Vf=typeof WeakMap=="function"?WeakMap:Map;function lc(e,t,n){n=ct(-1,n),n.tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){hl||(hl=!0,ri=r),bs(e,t)},n}function sc(e,t,n){n=ct(-1,n),n.tag=3;var r=e.type.getDerivedStateFromError;if(typeof r=="function"){var l=t.value;n.payload=function(){return r(l)},n.callback=function(){bs(e,t)}}var s=e.stateNode;return s!==null&&typeof s.componentDidCatch=="function"&&(n.callback=function(){bs(e,t),typeof r!="function"&&(Tt===null?Tt=new Set([this]):Tt.add(this));var a=t.stack;this.componentDidCatch(t.value,{componentStack:a!==null?a:""})}),n}function Xa(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new Vf;var l=new Set;r.set(t,l)}else l=r.get(t),l===void 0&&(l=new Set,r.set(t,l));l.has(n)||(l.add(n),e=np.bind(null,e,t,n),t.then(e,e))}function Ya(e){do{var t;if((t=e.tag===13)&&(t=e.memoizedState,t=t!==null?t.dehydrated!==null:!0),t)return e;e=e.return}while(e!==null);return null}function Ga(e,t,n,r,l){return e.mode&1?(e.flags|=65536,e.lanes=l,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,n.tag===1&&(n.alternate===null?n.tag=17:(t=ct(-1,1),t.tag=2,Et(n,t,1))),n.lanes|=1),e)}var Wf=mt.ReactCurrentOwner,Pe=!1;function je(e,t,n,r){t.child=e===null?Ou(t,null,n,r):wn(t,e.child,n,r)}function qa(e,t,n,r,l){n=n.render;var s=t.ref;return mn(t,l),r=Vi(e,t,n,r,s,l),n=Wi(),e!==null&&!Pe?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~l,ht(e,t,l)):(Z&&n&&Li(t),t.flags|=1,je(e,t,r,l),t.child)}function Za(e,t,n,r,l){if(e===null){var s=n.type;return typeof s=="function"&&!Zi(s)&&s.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=s,ic(e,t,s,r,l)):(e=br(n.type,null,r,t,t.mode,l),e.ref=t.ref,e.return=t,t.child=e)}if(s=e.child,!(e.lanes&l)){var a=s.memoizedProps;if(n=n.compare,n=n!==null?n:rr,n(a,r)&&e.ref===t.ref)return ht(e,t,l)}return t.flags|=1,e=Lt(s,r),e.ref=t.ref,e.return=t,t.child=e}function ic(e,t,n,r,l){if(e!==null){var s=e.memoizedProps;if(rr(s,r)&&e.ref===t.ref)if(Pe=!1,t.pendingProps=r=s,(e.lanes&l)!==0)e.flags&131072&&(Pe=!0);else return t.lanes=e.lanes,ht(e,t,l)}return Js(e,t,n,r,l)}function ac(e,t,n){var r=t.pendingProps,l=r.children,s=e!==null?e.memoizedState:null;if(r.mode==="hidden")if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},Y(cn,Oe),Oe|=n;else{if(!(n&1073741824))return e=s!==null?s.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,Y(cn,Oe),Oe|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=s!==null?s.baseLanes:n,Y(cn,Oe),Oe|=r}else s!==null?(r=s.baseLanes|n,t.memoizedState=null):r=n,Y(cn,Oe),Oe|=r;return je(e,t,l,n),t.child}function oc(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function Js(e,t,n,r,l){var s=Re(n)?Ht:Se.current;return s=yn(t,s),mn(t,l),n=Vi(e,t,n,r,s,l),r=Wi(),e!==null&&!Pe?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~l,ht(e,t,l)):(Z&&r&&Li(t),t.flags|=1,je(e,t,n,l),t.child)}function eo(e,t,n,r,l){if(Re(n)){var s=!0;ll(t)}else s=!1;if(mn(t,l),t.stateNode===null)Hr(e,t),rc(t,n,r),Ks(t,n,r,l),r=!0;else if(e===null){var a=t.stateNode,o=t.memoizedProps;a.props=o;var u=a.context,c=n.contextType;typeof c=="object"&&c!==null?c=Qe(c):(c=Re(n)?Ht:Se.current,c=yn(t,c));var y=n.getDerivedStateFromProps,m=typeof y=="function"||typeof a.getSnapshotBeforeUpdate=="function";m||typeof a.UNSAFE_componentWillReceiveProps!="function"&&typeof a.componentWillReceiveProps!="function"||(o!==r||u!==c)&&Ja(t,a,r,c),yt=!1;var g=t.memoizedState;a.state=g,ul(t,r,a,l),u=t.memoizedState,o!==r||g!==u||Le.current||yt?(typeof y=="function"&&(Qs(t,n,y,r),u=t.memoizedState),(o=yt||ba(t,n,o,r,g,u,c))?(m||typeof a.UNSAFE_componentWillMount!="function"&&typeof a.componentWillMount!="function"||(typeof a.componentWillMount=="function"&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount=="function"&&a.UNSAFE_componentWillMount()),typeof a.componentDidMount=="function"&&(t.flags|=4194308)):(typeof a.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=u),a.props=r,a.state=u,a.context=c,r=o):(typeof a.componentDidMount=="function"&&(t.flags|=4194308),r=!1)}else{a=t.stateNode,Mu(e,t),o=t.memoizedProps,c=t.type===t.elementType?o:Je(t.type,o),a.props=c,m=t.pendingProps,g=a.context,u=n.contextType,typeof u=="object"&&u!==null?u=Qe(u):(u=Re(n)?Ht:Se.current,u=yn(t,u));var x=n.getDerivedStateFromProps;(y=typeof x=="function"||typeof a.getSnapshotBeforeUpdate=="function")||typeof a.UNSAFE_componentWillReceiveProps!="function"&&typeof a.componentWillReceiveProps!="function"||(o!==m||g!==u)&&Ja(t,a,r,u),yt=!1,g=t.memoizedState,a.state=g,ul(t,r,a,l);var k=t.memoizedState;o!==m||g!==k||Le.current||yt?(typeof x=="function"&&(Qs(t,n,x,r),k=t.memoizedState),(c=yt||ba(t,n,c,r,g,k,u)||!1)?(y||typeof a.UNSAFE_componentWillUpdate!="function"&&typeof a.componentWillUpdate!="function"||(typeof a.componentWillUpdate=="function"&&a.componentWillUpdate(r,k,u),typeof a.UNSAFE_componentWillUpdate=="function"&&a.UNSAFE_componentWillUpdate(r,k,u)),typeof a.componentDidUpdate=="function"&&(t.flags|=4),typeof a.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof a.componentDidUpdate!="function"||o===e.memoizedProps&&g===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!="function"||o===e.memoizedProps&&g===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=k),a.props=r,a.state=k,a.context=u,r=c):(typeof a.componentDidUpdate!="function"||o===e.memoizedProps&&g===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!="function"||o===e.memoizedProps&&g===e.memoizedState||(t.flags|=1024),r=!1)}return Xs(e,t,n,r,s,l)}function Xs(e,t,n,r,l,s){oc(e,t);var a=(t.flags&128)!==0;if(!r&&!a)return l&&Aa(t,n,!1),ht(e,t,s);r=t.stateNode,Wf.current=t;var o=a&&typeof n.getDerivedStateFromError!="function"?null:r.render();return t.flags|=1,e!==null&&a?(t.child=wn(t,e.child,null,s),t.child=wn(t,null,o,s)):je(e,t,o,s),t.memoizedState=r.state,l&&Aa(t,n,!0),t.child}function uc(e){var t=e.stateNode;t.pendingContext?Ia(e,t.pendingContext,t.pendingContext!==t.context):t.context&&Ia(e,t.context,!1),Ii(e,t.containerInfo)}function to(e,t,n,r,l){return xn(),zi(l),t.flags|=256,je(e,t,n,r),t.child}var Ys={dehydrated:null,treeContext:null,retryLane:0};function Gs(e){return{baseLanes:e,cachePool:null,transitions:null}}function cc(e,t,n){var r=t.pendingProps,l=ee.current,s=!1,a=(t.flags&128)!==0,o;if((o=a)||(o=e!==null&&e.memoizedState===null?!1:(l&2)!==0),o?(s=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(l|=1),Y(ee,l&1),e===null)return Ws(t),e=t.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?(t.mode&1?e.data==="$!"?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(a=r.children,e=r.fallback,s?(r=t.mode,s=t.child,a={mode:"hidden",children:a},!(r&1)&&s!==null?(s.childLanes=0,s.pendingProps=a):s=Pl(a,r,0,null),e=Wt(e,r,n,null),s.return=t,e.return=t,s.sibling=e,t.child=s,t.child.memoizedState=Gs(n),t.memoizedState=Ys,e):Ki(t,a));if(l=e.memoizedState,l!==null&&(o=l.dehydrated,o!==null))return Hf(e,t,a,r,o,l,n);if(s){s=r.fallback,a=t.mode,l=e.child,o=l.sibling;var u={mode:"hidden",children:r.children};return!(a&1)&&t.child!==l?(r=t.child,r.childLanes=0,r.pendingProps=u,t.deletions=null):(r=Lt(l,u),r.subtreeFlags=l.subtreeFlags&14680064),o!==null?s=Lt(o,s):(s=Wt(s,a,n,null),s.flags|=2),s.return=t,r.return=t,r.sibling=s,t.child=r,r=s,s=t.child,a=e.child.memoizedState,a=a===null?Gs(n):{baseLanes:a.baseLanes|n,cachePool:null,transitions:a.transitions},s.memoizedState=a,s.childLanes=e.childLanes&~n,t.memoizedState=Ys,r}return s=e.child,e=s.sibling,r=Lt(s,{mode:"visible",children:r.children}),!(t.mode&1)&&(r.lanes=n),r.return=t,r.sibling=null,e!==null&&(n=t.deletions,n===null?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=r,t.memoizedState=null,r}function Ki(e,t){return t=Pl({mode:"visible",children:t},e.mode,0,null),t.return=e,e.child=t}function zr(e,t,n,r){return r!==null&&zi(r),wn(t,e.child,null,n),e=Ki(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function Hf(e,t,n,r,l,s,a){if(n)return t.flags&256?(t.flags&=-257,r=as(Error(_(422))),zr(e,t,a,r)):t.memoizedState!==null?(t.child=e.child,t.flags|=128,null):(s=r.fallback,l=t.mode,r=Pl({mode:"visible",children:r.children},l,0,null),s=Wt(s,l,a,null),s.flags|=2,r.return=t,s.return=t,r.sibling=s,t.child=r,t.mode&1&&wn(t,e.child,null,a),t.child.memoizedState=Gs(a),t.memoizedState=Ys,s);if(!(t.mode&1))return zr(e,t,a,null);if(l.data==="$!"){if(r=l.nextSibling&&l.nextSibling.dataset,r)var o=r.dgst;return r=o,s=Error(_(419)),r=as(s,r,void 0),zr(e,t,a,r)}if(o=(a&e.childLanes)!==0,Pe||o){if(r=fe,r!==null){switch(a&-a){case 4:l=2;break;case 16:l=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:l=32;break;case 536870912:l=268435456;break;default:l=0}l=l&(r.suspendedLanes|a)?0:l,l!==0&&l!==s.retryLane&&(s.retryLane=l,pt(e,l),qe(r,e,l,-1))}return qi(),r=as(Error(_(421))),zr(e,t,a,r)}return l.data==="$?"?(t.flags|=128,t.child=e.child,t=rp.bind(null,e),l._reactRetry=t,null):(e=s.treeContext,$e=_t(l.nextSibling),Me=t,Z=!0,Ye=null,e!==null&&(Be[Ve++]=ot,Be[Ve++]=ut,Be[Ve++]=Qt,ot=e.id,ut=e.overflow,Qt=t),t=Ki(t,r.children),t.flags|=4096,t)}function no(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),Hs(e.return,t,n)}function os(e,t,n,r,l){var s=e.memoizedState;s===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:l}:(s.isBackwards=t,s.rendering=null,s.renderingStartTime=0,s.last=r,s.tail=n,s.tailMode=l)}function dc(e,t,n){var r=t.pendingProps,l=r.revealOrder,s=r.tail;if(je(e,t,r.children,n),r=ee.current,r&2)r=r&1|2,t.flags|=128;else{if(e!==null&&e.flags&128)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&no(e,n,t);else if(e.tag===19)no(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(Y(ee,r),!(t.mode&1))t.memoizedState=null;else switch(l){case"forwards":for(n=t.child,l=null;n!==null;)e=n.alternate,e!==null&&cl(e)===null&&(l=n),n=n.sibling;n=l,n===null?(l=t.child,t.child=null):(l=n.sibling,n.sibling=null),os(t,!1,l,n,s);break;case"backwards":for(n=null,l=t.child,t.child=null;l!==null;){if(e=l.alternate,e!==null&&cl(e)===null){t.child=l;break}e=l.sibling,l.sibling=n,n=l,l=e}os(t,!0,n,null,s);break;case"together":os(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function Hr(e,t){!(t.mode&1)&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function ht(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),bt|=t.lanes,!(n&t.childLanes))return null;if(e!==null&&t.child!==e.child)throw Error(_(153));if(t.child!==null){for(e=t.child,n=Lt(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=Lt(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function Qf(e,t,n){switch(t.tag){case 3:uc(t),xn();break;case 5:Fu(t);break;case 1:Re(t.type)&&ll(t);break;case 4:Ii(t,t.stateNode.containerInfo);break;case 10:var r=t.type._context,l=t.memoizedProps.value;Y(al,r._currentValue),r._currentValue=l;break;case 13:if(r=t.memoizedState,r!==null)return r.dehydrated!==null?(Y(ee,ee.current&1),t.flags|=128,null):n&t.child.childLanes?cc(e,t,n):(Y(ee,ee.current&1),e=ht(e,t,n),e!==null?e.sibling:null);Y(ee,ee.current&1);break;case 19:if(r=(n&t.childLanes)!==0,e.flags&128){if(r)return dc(e,t,n);t.flags|=128}if(l=t.memoizedState,l!==null&&(l.rendering=null,l.tail=null,l.lastEffect=null),Y(ee,ee.current),r)break;return null;case 22:case 23:return t.lanes=0,ac(e,t,n)}return ht(e,t,n)}var fc,qs,pc,hc;fc=function(e,t){for(var n=t.child;n!==null;){if(n.tag===5||n.tag===6)e.appendChild(n.stateNode);else if(n.tag!==4&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}};qs=function(){};pc=function(e,t,n,r){var l=e.memoizedProps;if(l!==r){e=t.stateNode,Ut(lt.current);var s=null;switch(n){case"input":l=ws(e,l),r=ws(e,r),s=[];break;case"select":l=ne({},l,{value:void 0}),r=ne({},r,{value:void 0}),s=[];break;case"textarea":l=js(e,l),r=js(e,r),s=[];break;default:typeof l.onClick!="function"&&typeof r.onClick=="function"&&(e.onclick=nl)}Cs(n,r);var a;n=null;for(c in l)if(!r.hasOwnProperty(c)&&l.hasOwnProperty(c)&&l[c]!=null)if(c==="style"){var o=l[c];for(a in o)o.hasOwnProperty(a)&&(n||(n={}),n[a]="")}else c!=="dangerouslySetInnerHTML"&&c!=="children"&&c!=="suppressContentEditableWarning"&&c!=="suppressHydrationWarning"&&c!=="autoFocus"&&(Yn.hasOwnProperty(c)?s||(s=[]):(s=s||[]).push(c,null));for(c in r){var u=r[c];if(o=l!=null?l[c]:void 0,r.hasOwnProperty(c)&&u!==o&&(u!=null||o!=null))if(c==="style")if(o){for(a in o)!o.hasOwnProperty(a)||u&&u.hasOwnProperty(a)||(n||(n={}),n[a]="");for(a in u)u.hasOwnProperty(a)&&o[a]!==u[a]&&(n||(n={}),n[a]=u[a])}else n||(s||(s=[]),s.push(c,n)),n=u;else c==="dangerouslySetInnerHTML"?(u=u?u.__html:void 0,o=o?o.__html:void 0,u!=null&&o!==u&&(s=s||[]).push(c,u)):c==="children"?typeof u!="string"&&typeof u!="number"||(s=s||[]).push(c,""+u):c!=="suppressContentEditableWarning"&&c!=="suppressHydrationWarning"&&(Yn.hasOwnProperty(c)?(u!=null&&c==="onScroll"&&G("scroll",e),s||o===u||(s=[])):(s=s||[]).push(c,u))}n&&(s=s||[]).push("style",n);var c=s;(t.updateQueue=c)&&(t.flags|=4)}};hc=function(e,t,n,r){n!==r&&(t.flags|=4)};function Dn(e,t){if(!Z)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function we(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var l=e.child;l!==null;)n|=l.lanes|l.childLanes,r|=l.subtreeFlags&14680064,r|=l.flags&14680064,l.return=e,l=l.sibling;else for(l=e.child;l!==null;)n|=l.lanes|l.childLanes,r|=l.subtreeFlags,r|=l.flags,l.return=e,l=l.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function Kf(e,t,n){var r=t.pendingProps;switch(Ri(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return we(t),null;case 1:return Re(t.type)&&rl(),we(t),null;case 3:return r=t.stateNode,kn(),q(Le),q(Se),Ui(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),(e===null||e.child===null)&&(Lr(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,Ye!==null&&(ii(Ye),Ye=null))),qs(e,t),we(t),null;case 5:Ai(t);var l=Ut(or.current);if(n=t.type,e!==null&&t.stateNode!=null)pc(e,t,n,r,l),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(t.stateNode===null)throw Error(_(166));return we(t),null}if(e=Ut(lt.current),Lr(t)){r=t.stateNode,n=t.type;var s=t.memoizedProps;switch(r[nt]=t,r[ir]=s,e=(t.mode&1)!==0,n){case"dialog":G("cancel",r),G("close",r);break;case"iframe":case"object":case"embed":G("load",r);break;case"video":case"audio":for(l=0;l<An.length;l++)G(An[l],r);break;case"source":G("error",r);break;case"img":case"image":case"link":G("error",r),G("load",r);break;case"details":G("toggle",r);break;case"input":da(r,s),G("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!s.multiple},G("invalid",r);break;case"textarea":pa(r,s),G("invalid",r)}Cs(n,s),l=null;for(var a in s)if(s.hasOwnProperty(a)){var o=s[a];a==="children"?typeof o=="string"?r.textContent!==o&&(s.suppressHydrationWarning!==!0&&Pr(r.textContent,o,e),l=["children",o]):typeof o=="number"&&r.textContent!==""+o&&(s.suppressHydrationWarning!==!0&&Pr(r.textContent,o,e),l=["children",""+o]):Yn.hasOwnProperty(a)&&o!=null&&a==="onScroll"&&G("scroll",r)}switch(n){case"input":kr(r),fa(r,s,!0);break;case"textarea":kr(r),ha(r);break;case"select":case"option":break;default:typeof s.onClick=="function"&&(r.onclick=nl)}r=l,t.updateQueue=r,r!==null&&(t.flags|=4)}else{a=l.nodeType===9?l:l.ownerDocument,e==="http://www.w3.org/1999/xhtml"&&(e=Vo(n)),e==="http://www.w3.org/1999/xhtml"?n==="script"?(e=a.createElement("div"),e.innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=a.createElement(n,{is:r.is}):(e=a.createElement(n),n==="select"&&(a=e,r.multiple?a.multiple=!0:r.size&&(a.size=r.size))):e=a.createElementNS(e,n),e[nt]=t,e[ir]=r,fc(e,t,!1,!1),t.stateNode=e;e:{switch(a=_s(n,r),n){case"dialog":G("cancel",e),G("close",e),l=r;break;case"iframe":case"object":case"embed":G("load",e),l=r;break;case"video":case"audio":for(l=0;l<An.length;l++)G(An[l],e);l=r;break;case"source":G("error",e),l=r;break;case"img":case"image":case"link":G("error",e),G("load",e),l=r;break;case"details":G("toggle",e),l=r;break;case"input":da(e,r),l=ws(e,r),G("invalid",e);break;case"option":l=r;break;case"select":e._wrapperState={wasMultiple:!!r.multiple},l=ne({},r,{value:void 0}),G("invalid",e);break;case"textarea":pa(e,r),l=js(e,r),G("invalid",e);break;default:l=r}Cs(n,l),o=l;for(s in o)if(o.hasOwnProperty(s)){var u=o[s];s==="style"?Qo(e,u):s==="dangerouslySetInnerHTML"?(u=u?u.__html:void 0,u!=null&&Wo(e,u)):s==="children"?typeof u=="string"?(n!=="textarea"||u!=="")&&Gn(e,u):typeof u=="number"&&Gn(e,""+u):s!=="suppressContentEditableWarning"&&s!=="suppressHydrationWarning"&&s!=="autoFocus"&&(Yn.hasOwnProperty(s)?u!=null&&s==="onScroll"&&G("scroll",e):u!=null&&gi(e,s,u,a))}switch(n){case"input":kr(e),fa(e,r,!1);break;case"textarea":kr(e),ha(e);break;case"option":r.value!=null&&e.setAttribute("value",""+Rt(r.value));break;case"select":e.multiple=!!r.multiple,s=r.value,s!=null?dn(e,!!r.multiple,s,!1):r.defaultValue!=null&&dn(e,!!r.multiple,r.defaultValue,!0);break;default:typeof l.onClick=="function"&&(e.onclick=nl)}switch(n){case"button":case"input":case"select":case"textarea":r=!!r.autoFocus;break e;case"img":r=!0;break e;default:r=!1}}r&&(t.flags|=4)}t.ref!==null&&(t.flags|=512,t.flags|=2097152)}return we(t),null;case 6:if(e&&t.stateNode!=null)hc(e,t,e.memoizedProps,r);else{if(typeof r!="string"&&t.stateNode===null)throw Error(_(166));if(n=Ut(or.current),Ut(lt.current),Lr(t)){if(r=t.stateNode,n=t.memoizedProps,r[nt]=t,(s=r.nodeValue!==n)&&(e=Me,e!==null))switch(e.tag){case 3:Pr(r.nodeValue,n,(e.mode&1)!==0);break;case 5:e.memoizedProps.suppressHydrationWarning!==!0&&Pr(r.nodeValue,n,(e.mode&1)!==0)}s&&(t.flags|=4)}else r=(n.nodeType===9?n:n.ownerDocument).createTextNode(r),r[nt]=t,t.stateNode=r}return we(t),null;case 13:if(q(ee),r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(Z&&$e!==null&&t.mode&1&&!(t.flags&128))zu(),xn(),t.flags|=98560,s=!1;else if(s=Lr(t),r!==null&&r.dehydrated!==null){if(e===null){if(!s)throw Error(_(318));if(s=t.memoizedState,s=s!==null?s.dehydrated:null,!s)throw Error(_(317));s[nt]=t}else xn(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;we(t),s=!1}else Ye!==null&&(ii(Ye),Ye=null),s=!0;if(!s)return t.flags&65536?t:null}return t.flags&128?(t.lanes=n,t):(r=r!==null,r!==(e!==null&&e.memoizedState!==null)&&r&&(t.child.flags|=8192,t.mode&1&&(e===null||ee.current&1?ue===0&&(ue=3):qi())),t.updateQueue!==null&&(t.flags|=4),we(t),null);case 4:return kn(),qs(e,t),e===null&&lr(t.stateNode.containerInfo),we(t),null;case 10:return $i(t.type._context),we(t),null;case 17:return Re(t.type)&&rl(),we(t),null;case 19:if(q(ee),s=t.memoizedState,s===null)return we(t),null;if(r=(t.flags&128)!==0,a=s.rendering,a===null)if(r)Dn(s,!1);else{if(ue!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(a=cl(e),a!==null){for(t.flags|=128,Dn(s,!1),r=a.updateQueue,r!==null&&(t.updateQueue=r,t.flags|=4),t.subtreeFlags=0,r=n,n=t.child;n!==null;)s=n,e=r,s.flags&=14680066,a=s.alternate,a===null?(s.childLanes=0,s.lanes=e,s.child=null,s.subtreeFlags=0,s.memoizedProps=null,s.memoizedState=null,s.updateQueue=null,s.dependencies=null,s.stateNode=null):(s.childLanes=a.childLanes,s.lanes=a.lanes,s.child=a.child,s.subtreeFlags=0,s.deletions=null,s.memoizedProps=a.memoizedProps,s.memoizedState=a.memoizedState,s.updateQueue=a.updateQueue,s.type=a.type,e=a.dependencies,s.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return Y(ee,ee.current&1|2),t.child}e=e.sibling}s.tail!==null&&ie()>jn&&(t.flags|=128,r=!0,Dn(s,!1),t.lanes=4194304)}else{if(!r)if(e=cl(a),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),Dn(s,!0),s.tail===null&&s.tailMode==="hidden"&&!a.alternate&&!Z)return we(t),null}else 2*ie()-s.renderingStartTime>jn&&n!==1073741824&&(t.flags|=128,r=!0,Dn(s,!1),t.lanes=4194304);s.isBackwards?(a.sibling=t.child,t.child=a):(n=s.last,n!==null?n.sibling=a:t.child=a,s.last=a)}return s.tail!==null?(t=s.tail,s.rendering=t,s.tail=t.sibling,s.renderingStartTime=ie(),t.sibling=null,n=ee.current,Y(ee,r?n&1|2:n&1),t):(we(t),null);case 22:case 23:return Gi(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?Oe&1073741824&&(we(t),t.subtreeFlags&6&&(t.flags|=8192)):we(t),null;case 24:return null;case 25:return null}throw Error(_(156,t.tag))}function bf(e,t){switch(Ri(t),t.tag){case 1:return Re(t.type)&&rl(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return kn(),q(Le),q(Se),Ui(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return Ai(t),null;case 13:if(q(ee),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(_(340));xn()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return q(ee),null;case 4:return kn(),null;case 10:return $i(t.type._context),null;case 22:case 23:return Gi(),null;case 24:return null;default:return null}}var Dr=!1,ke=!1,Jf=typeof WeakSet=="function"?WeakSet:Set,z=null;function un(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){le(e,t,r)}else n.current=null}function Zs(e,t,n){try{n()}catch(r){le(e,t,r)}}var ro=!1;function Xf(e,t){if(Ms=Zr,e=xu(),Pi(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var l=r.anchorOffset,s=r.focusNode;r=r.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var a=0,o=-1,u=-1,c=0,y=0,m=e,g=null;t:for(;;){for(var x;m!==n||l!==0&&m.nodeType!==3||(o=a+l),m!==s||r!==0&&m.nodeType!==3||(u=a+r),m.nodeType===3&&(a+=m.nodeValue.length),(x=m.firstChild)!==null;)g=m,m=x;for(;;){if(m===e)break t;if(g===n&&++c===l&&(o=a),g===s&&++y===r&&(u=a),(x=m.nextSibling)!==null)break;m=g,g=m.parentNode}m=x}n=o===-1||u===-1?null:{start:o,end:u}}else n=null}n=n||{start:0,end:0}}else n=null;for(Fs={focusedElem:e,selectionRange:n},Zr=!1,z=t;z!==null;)if(t=z,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,z=e;else for(;z!==null;){t=z;try{var k=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(k!==null){var S=k.memoizedProps,D=k.memoizedState,f=t.stateNode,d=f.getSnapshotBeforeUpdate(t.elementType===t.type?S:Je(t.type,S),D);f.__reactInternalSnapshotBeforeUpdate=d}break;case 3:var v=t.stateNode.containerInfo;v.nodeType===1?v.textContent="":v.nodeType===9&&v.documentElement&&v.removeChild(v.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(_(163))}}catch(w){le(t,t.return,w)}if(e=t.sibling,e!==null){e.return=t.return,z=e;break}z=t.return}return k=ro,ro=!1,k}function bn(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var l=r=r.next;do{if((l.tag&e)===e){var s=l.destroy;l.destroy=void 0,s!==void 0&&Zs(t,n,s)}l=l.next}while(l!==r)}}function El(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function ei(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function mc(e){var t=e.alternate;t!==null&&(e.alternate=null,mc(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[nt],delete t[ir],delete t[Us],delete t[Rf],delete t[zf])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function gc(e){return e.tag===5||e.tag===3||e.tag===4}function lo(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||gc(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function ti(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=nl));else if(r!==4&&(e=e.child,e!==null))for(ti(e,t,n),e=e.sibling;e!==null;)ti(e,t,n),e=e.sibling}function ni(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(ni(e,t,n),e=e.sibling;e!==null;)ni(e,t,n),e=e.sibling}var me=null,Xe=!1;function gt(e,t,n){for(n=n.child;n!==null;)vc(e,t,n),n=n.sibling}function vc(e,t,n){if(rt&&typeof rt.onCommitFiberUnmount=="function")try{rt.onCommitFiberUnmount(xl,n)}catch{}switch(n.tag){case 5:ke||un(n,t);case 6:var r=me,l=Xe;me=null,gt(e,t,n),me=r,Xe=l,me!==null&&(Xe?(e=me,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):me.removeChild(n.stateNode));break;case 18:me!==null&&(Xe?(e=me,n=n.stateNode,e.nodeType===8?ts(e.parentNode,n):e.nodeType===1&&ts(e,n),tr(e)):ts(me,n.stateNode));break;case 4:r=me,l=Xe,me=n.stateNode.containerInfo,Xe=!0,gt(e,t,n),me=r,Xe=l;break;case 0:case 11:case 14:case 15:if(!ke&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){l=r=r.next;do{var s=l,a=s.destroy;s=s.tag,a!==void 0&&(s&2||s&4)&&Zs(n,t,a),l=l.next}while(l!==r)}gt(e,t,n);break;case 1:if(!ke&&(un(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(o){le(n,t,o)}gt(e,t,n);break;case 21:gt(e,t,n);break;case 22:n.mode&1?(ke=(r=ke)||n.memoizedState!==null,gt(e,t,n),ke=r):gt(e,t,n);break;default:gt(e,t,n)}}function so(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new Jf),t.forEach(function(r){var l=lp.bind(null,e,r);n.has(r)||(n.add(r),r.then(l,l))})}}function be(e,t){var n=t.deletions;if(n!==null)for(var r=0;r<n.length;r++){var l=n[r];try{var s=e,a=t,o=a;e:for(;o!==null;){switch(o.tag){case 5:me=o.stateNode,Xe=!1;break e;case 3:me=o.stateNode.containerInfo,Xe=!0;break e;case 4:me=o.stateNode.containerInfo,Xe=!0;break e}o=o.return}if(me===null)throw Error(_(160));vc(s,a,l),me=null,Xe=!1;var u=l.alternate;u!==null&&(u.return=null),l.return=null}catch(c){le(l,t,c)}}if(t.subtreeFlags&12854)for(t=t.child;t!==null;)yc(t,e),t=t.sibling}function yc(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(be(t,e),et(e),r&4){try{bn(3,e,e.return),El(3,e)}catch(S){le(e,e.return,S)}try{bn(5,e,e.return)}catch(S){le(e,e.return,S)}}break;case 1:be(t,e),et(e),r&512&&n!==null&&un(n,n.return);break;case 5:if(be(t,e),et(e),r&512&&n!==null&&un(n,n.return),e.flags&32){var l=e.stateNode;try{Gn(l,"")}catch(S){le(e,e.return,S)}}if(r&4&&(l=e.stateNode,l!=null)){var s=e.memoizedProps,a=n!==null?n.memoizedProps:s,o=e.type,u=e.updateQueue;if(e.updateQueue=null,u!==null)try{o==="input"&&s.type==="radio"&&s.name!=null&&Uo(l,s),_s(o,a);var c=_s(o,s);for(a=0;a<u.length;a+=2){var y=u[a],m=u[a+1];y==="style"?Qo(l,m):y==="dangerouslySetInnerHTML"?Wo(l,m):y==="children"?Gn(l,m):gi(l,y,m,c)}switch(o){case"input":ks(l,s);break;case"textarea":Bo(l,s);break;case"select":var g=l._wrapperState.wasMultiple;l._wrapperState.wasMultiple=!!s.multiple;var x=s.value;x!=null?dn(l,!!s.multiple,x,!1):g!==!!s.multiple&&(s.defaultValue!=null?dn(l,!!s.multiple,s.defaultValue,!0):dn(l,!!s.multiple,s.multiple?[]:"",!1))}l[ir]=s}catch(S){le(e,e.return,S)}}break;case 6:if(be(t,e),et(e),r&4){if(e.stateNode===null)throw Error(_(162));l=e.stateNode,s=e.memoizedProps;try{l.nodeValue=s}catch(S){le(e,e.return,S)}}break;case 3:if(be(t,e),et(e),r&4&&n!==null&&n.memoizedState.isDehydrated)try{tr(t.containerInfo)}catch(S){le(e,e.return,S)}break;case 4:be(t,e),et(e);break;case 13:be(t,e),et(e),l=e.child,l.flags&8192&&(s=l.memoizedState!==null,l.stateNode.isHidden=s,!s||l.alternate!==null&&l.alternate.memoizedState!==null||(Xi=ie())),r&4&&so(e);break;case 22:if(y=n!==null&&n.memoizedState!==null,e.mode&1?(ke=(c=ke)||y,be(t,e),ke=c):be(t,e),et(e),r&8192){if(c=e.memoizedState!==null,(e.stateNode.isHidden=c)&&!y&&e.mode&1)for(z=e,y=e.child;y!==null;){for(m=z=y;z!==null;){switch(g=z,x=g.child,g.tag){case 0:case 11:case 14:case 15:bn(4,g,g.return);break;case 1:un(g,g.return);var k=g.stateNode;if(typeof k.componentWillUnmount=="function"){r=g,n=g.return;try{t=r,k.props=t.memoizedProps,k.state=t.memoizedState,k.componentWillUnmount()}catch(S){le(r,n,S)}}break;case 5:un(g,g.return);break;case 22:if(g.memoizedState!==null){ao(m);continue}}x!==null?(x.return=g,z=x):ao(m)}y=y.sibling}e:for(y=null,m=e;;){if(m.tag===5){if(y===null){y=m;try{l=m.stateNode,c?(s=l.style,typeof s.setProperty=="function"?s.setProperty("display","none","important"):s.display="none"):(o=m.stateNode,u=m.memoizedProps.style,a=u!=null&&u.hasOwnProperty("display")?u.display:null,o.style.display=Ho("display",a))}catch(S){le(e,e.return,S)}}}else if(m.tag===6){if(y===null)try{m.stateNode.nodeValue=c?"":m.memoizedProps}catch(S){le(e,e.return,S)}}else if((m.tag!==22&&m.tag!==23||m.memoizedState===null||m===e)&&m.child!==null){m.child.return=m,m=m.child;continue}if(m===e)break e;for(;m.sibling===null;){if(m.return===null||m.return===e)break e;y===m&&(y=null),m=m.return}y===m&&(y=null),m.sibling.return=m.return,m=m.sibling}}break;case 19:be(t,e),et(e),r&4&&so(e);break;case 21:break;default:be(t,e),et(e)}}function et(e){var t=e.flags;if(t&2){try{e:{for(var n=e.return;n!==null;){if(gc(n)){var r=n;break e}n=n.return}throw Error(_(160))}switch(r.tag){case 5:var l=r.stateNode;r.flags&32&&(Gn(l,""),r.flags&=-33);var s=lo(e);ni(e,s,l);break;case 3:case 4:var a=r.stateNode.containerInfo,o=lo(e);ti(e,o,a);break;default:throw Error(_(161))}}catch(u){le(e,e.return,u)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function Yf(e,t,n){z=e,xc(e)}function xc(e,t,n){for(var r=(e.mode&1)!==0;z!==null;){var l=z,s=l.child;if(l.tag===22&&r){var a=l.memoizedState!==null||Dr;if(!a){var o=l.alternate,u=o!==null&&o.memoizedState!==null||ke;o=Dr;var c=ke;if(Dr=a,(ke=u)&&!c)for(z=l;z!==null;)a=z,u=a.child,a.tag===22&&a.memoizedState!==null?oo(l):u!==null?(u.return=a,z=u):oo(l);for(;s!==null;)z=s,xc(s),s=s.sibling;z=l,Dr=o,ke=c}io(e)}else l.subtreeFlags&8772&&s!==null?(s.return=l,z=s):io(e)}}function io(e){for(;z!==null;){var t=z;if(t.flags&8772){var n=t.alternate;try{if(t.flags&8772)switch(t.tag){case 0:case 11:case 15:ke||El(5,t);break;case 1:var r=t.stateNode;if(t.flags&4&&!ke)if(n===null)r.componentDidMount();else{var l=t.elementType===t.type?n.memoizedProps:Je(t.type,n.memoizedProps);r.componentDidUpdate(l,n.memoizedState,r.__reactInternalSnapshotBeforeUpdate)}var s=t.updateQueue;s!==null&&Ha(t,s,r);break;case 3:var a=t.updateQueue;if(a!==null){if(n=null,t.child!==null)switch(t.child.tag){case 5:n=t.child.stateNode;break;case 1:n=t.child.stateNode}Ha(t,a,n)}break;case 5:var o=t.stateNode;if(n===null&&t.flags&4){n=o;var u=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":u.autoFocus&&n.focus();break;case"img":u.src&&(n.src=u.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(t.memoizedState===null){var c=t.alternate;if(c!==null){var y=c.memoizedState;if(y!==null){var m=y.dehydrated;m!==null&&tr(m)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(_(163))}ke||t.flags&512&&ei(t)}catch(g){le(t,t.return,g)}}if(t===e){z=null;break}if(n=t.sibling,n!==null){n.return=t.return,z=n;break}z=t.return}}function ao(e){for(;z!==null;){var t=z;if(t===e){z=null;break}var n=t.sibling;if(n!==null){n.return=t.return,z=n;break}z=t.return}}function oo(e){for(;z!==null;){var t=z;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{El(4,t)}catch(u){le(t,n,u)}break;case 1:var r=t.stateNode;if(typeof r.componentDidMount=="function"){var l=t.return;try{r.componentDidMount()}catch(u){le(t,l,u)}}var s=t.return;try{ei(t)}catch(u){le(t,s,u)}break;case 5:var a=t.return;try{ei(t)}catch(u){le(t,a,u)}}}catch(u){le(t,t.return,u)}if(t===e){z=null;break}var o=t.sibling;if(o!==null){o.return=t.return,z=o;break}z=t.return}}var Gf=Math.ceil,pl=mt.ReactCurrentDispatcher,bi=mt.ReactCurrentOwner,He=mt.ReactCurrentBatchConfig,Q=0,fe=null,ae=null,ge=0,Oe=0,cn=Ot(0),ue=0,fr=null,bt=0,Tl=0,Ji=0,Jn=null,Te=null,Xi=0,jn=1/0,it=null,hl=!1,ri=null,Tt=null,Or=!1,St=null,ml=0,Xn=0,li=null,Qr=-1,Kr=0;function Ne(){return Q&6?ie():Qr!==-1?Qr:Qr=ie()}function Pt(e){return e.mode&1?Q&2&&ge!==0?ge&-ge:Of.transition!==null?(Kr===0&&(Kr=ru()),Kr):(e=X,e!==0||(e=window.event,e=e===void 0?16:cu(e.type)),e):1}function qe(e,t,n,r){if(50<Xn)throw Xn=0,li=null,Error(_(185));hr(e,n,r),(!(Q&2)||e!==fe)&&(e===fe&&(!(Q&2)&&(Tl|=n),ue===4&&wt(e,ge)),ze(e,r),n===1&&Q===0&&!(t.mode&1)&&(jn=ie()+500,Nl&&$t()))}function ze(e,t){var n=e.callbackNode;Dd(e,t);var r=qr(e,e===fe?ge:0);if(r===0)n!==null&&va(n),e.callbackNode=null,e.callbackPriority=0;else if(t=r&-r,e.callbackPriority!==t){if(n!=null&&va(n),t===1)e.tag===0?Df(uo.bind(null,e)):Pu(uo.bind(null,e)),Pf(function(){!(Q&6)&&$t()}),n=null;else{switch(lu(r)){case 1:n=ki;break;case 4:n=tu;break;case 16:n=Gr;break;case 536870912:n=nu;break;default:n=Gr}n=Ec(n,wc.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function wc(e,t){if(Qr=-1,Kr=0,Q&6)throw Error(_(327));var n=e.callbackNode;if(gn()&&e.callbackNode!==n)return null;var r=qr(e,e===fe?ge:0);if(r===0)return null;if(r&30||r&e.expiredLanes||t)t=gl(e,r);else{t=r;var l=Q;Q|=2;var s=Sc();(fe!==e||ge!==t)&&(it=null,jn=ie()+500,Vt(e,t));do try{ep();break}catch(o){kc(e,o)}while(!0);Oi(),pl.current=s,Q=l,ae!==null?t=0:(fe=null,ge=0,t=ue)}if(t!==0){if(t===2&&(l=Rs(e),l!==0&&(r=l,t=si(e,l))),t===1)throw n=fr,Vt(e,0),wt(e,r),ze(e,ie()),n;if(t===6)wt(e,r);else{if(l=e.current.alternate,!(r&30)&&!qf(l)&&(t=gl(e,r),t===2&&(s=Rs(e),s!==0&&(r=s,t=si(e,s))),t===1))throw n=fr,Vt(e,0),wt(e,r),ze(e,ie()),n;switch(e.finishedWork=l,e.finishedLanes=r,t){case 0:case 1:throw Error(_(345));case 2:Ft(e,Te,it);break;case 3:if(wt(e,r),(r&130023424)===r&&(t=Xi+500-ie(),10<t)){if(qr(e,0)!==0)break;if(l=e.suspendedLanes,(l&r)!==r){Ne(),e.pingedLanes|=e.suspendedLanes&l;break}e.timeoutHandle=As(Ft.bind(null,e,Te,it),t);break}Ft(e,Te,it);break;case 4:if(wt(e,r),(r&4194240)===r)break;for(t=e.eventTimes,l=-1;0<r;){var a=31-Ge(r);s=1<<a,a=t[a],a>l&&(l=a),r&=~s}if(r=l,r=ie()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*Gf(r/1960))-r,10<r){e.timeoutHandle=As(Ft.bind(null,e,Te,it),r);break}Ft(e,Te,it);break;case 5:Ft(e,Te,it);break;default:throw Error(_(329))}}}return ze(e,ie()),e.callbackNode===n?wc.bind(null,e):null}function si(e,t){var n=Jn;return e.current.memoizedState.isDehydrated&&(Vt(e,t).flags|=256),e=gl(e,t),e!==2&&(t=Te,Te=n,t!==null&&ii(t)),e}function ii(e){Te===null?Te=e:Te.push.apply(Te,e)}function qf(e){for(var t=e;;){if(t.flags&16384){var n=t.updateQueue;if(n!==null&&(n=n.stores,n!==null))for(var r=0;r<n.length;r++){var l=n[r],s=l.getSnapshot;l=l.value;try{if(!Ze(s(),l))return!1}catch{return!1}}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function wt(e,t){for(t&=~Ji,t&=~Tl,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-Ge(t),r=1<<n;e[n]=-1,t&=~r}}function uo(e){if(Q&6)throw Error(_(327));gn();var t=qr(e,0);if(!(t&1))return ze(e,ie()),null;var n=gl(e,t);if(e.tag!==0&&n===2){var r=Rs(e);r!==0&&(t=r,n=si(e,r))}if(n===1)throw n=fr,Vt(e,0),wt(e,t),ze(e,ie()),n;if(n===6)throw Error(_(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,Ft(e,Te,it),ze(e,ie()),null}function Yi(e,t){var n=Q;Q|=1;try{return e(t)}finally{Q=n,Q===0&&(jn=ie()+500,Nl&&$t())}}function Jt(e){St!==null&&St.tag===0&&!(Q&6)&&gn();var t=Q;Q|=1;var n=He.transition,r=X;try{if(He.transition=null,X=1,e)return e()}finally{X=r,He.transition=n,Q=t,!(Q&6)&&$t()}}function Gi(){Oe=cn.current,q(cn)}function Vt(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(n!==-1&&(e.timeoutHandle=-1,Tf(n)),ae!==null)for(n=ae.return;n!==null;){var r=n;switch(Ri(r),r.tag){case 1:r=r.type.childContextTypes,r!=null&&rl();break;case 3:kn(),q(Le),q(Se),Ui();break;case 5:Ai(r);break;case 4:kn();break;case 13:q(ee);break;case 19:q(ee);break;case 10:$i(r.type._context);break;case 22:case 23:Gi()}n=n.return}if(fe=e,ae=e=Lt(e.current,null),ge=Oe=t,ue=0,fr=null,Ji=Tl=bt=0,Te=Jn=null,At!==null){for(t=0;t<At.length;t++)if(n=At[t],r=n.interleaved,r!==null){n.interleaved=null;var l=r.next,s=n.pending;if(s!==null){var a=s.next;s.next=l,r.next=a}n.pending=r}At=null}return e}function kc(e,t){do{var n=ae;try{if(Oi(),Vr.current=fl,dl){for(var r=te.memoizedState;r!==null;){var l=r.queue;l!==null&&(l.pending=null),r=r.next}dl=!1}if(Kt=0,de=oe=te=null,Kn=!1,ur=0,bi.current=null,n===null||n.return===null){ue=1,fr=t,ae=null;break}e:{var s=e,a=n.return,o=n,u=t;if(t=ge,o.flags|=32768,u!==null&&typeof u=="object"&&typeof u.then=="function"){var c=u,y=o,m=y.tag;if(!(y.mode&1)&&(m===0||m===11||m===15)){var g=y.alternate;g?(y.updateQueue=g.updateQueue,y.memoizedState=g.memoizedState,y.lanes=g.lanes):(y.updateQueue=null,y.memoizedState=null)}var x=Ya(a);if(x!==null){x.flags&=-257,Ga(x,a,o,s,t),x.mode&1&&Xa(s,c,t),t=x,u=c;var k=t.updateQueue;if(k===null){var S=new Set;S.add(u),t.updateQueue=S}else k.add(u);break e}else{if(!(t&1)){Xa(s,c,t),qi();break e}u=Error(_(426))}}else if(Z&&o.mode&1){var D=Ya(a);if(D!==null){!(D.flags&65536)&&(D.flags|=256),Ga(D,a,o,s,t),zi(Sn(u,o));break e}}s=u=Sn(u,o),ue!==4&&(ue=2),Jn===null?Jn=[s]:Jn.push(s),s=a;do{switch(s.tag){case 3:s.flags|=65536,t&=-t,s.lanes|=t;var f=lc(s,u,t);Wa(s,f);break e;case 1:o=u;var d=s.type,v=s.stateNode;if(!(s.flags&128)&&(typeof d.getDerivedStateFromError=="function"||v!==null&&typeof v.componentDidCatch=="function"&&(Tt===null||!Tt.has(v)))){s.flags|=65536,t&=-t,s.lanes|=t;var w=sc(s,o,t);Wa(s,w);break e}}s=s.return}while(s!==null)}Nc(n)}catch(j){t=j,ae===n&&n!==null&&(ae=n=n.return);continue}break}while(!0)}function Sc(){var e=pl.current;return pl.current=fl,e===null?fl:e}function qi(){(ue===0||ue===3||ue===2)&&(ue=4),fe===null||!(bt&268435455)&&!(Tl&268435455)||wt(fe,ge)}function gl(e,t){var n=Q;Q|=2;var r=Sc();(fe!==e||ge!==t)&&(it=null,Vt(e,t));do try{Zf();break}catch(l){kc(e,l)}while(!0);if(Oi(),Q=n,pl.current=r,ae!==null)throw Error(_(261));return fe=null,ge=0,ue}function Zf(){for(;ae!==null;)jc(ae)}function ep(){for(;ae!==null&&!Nd();)jc(ae)}function jc(e){var t=_c(e.alternate,e,Oe);e.memoizedProps=e.pendingProps,t===null?Nc(e):ae=t,bi.current=null}function Nc(e){var t=e;do{var n=t.alternate;if(e=t.return,t.flags&32768){if(n=bf(n,t),n!==null){n.flags&=32767,ae=n;return}if(e!==null)e.flags|=32768,e.subtreeFlags=0,e.deletions=null;else{ue=6,ae=null;return}}else if(n=Kf(n,t,Oe),n!==null){ae=n;return}if(t=t.sibling,t!==null){ae=t;return}ae=t=e}while(t!==null);ue===0&&(ue=5)}function Ft(e,t,n){var r=X,l=He.transition;try{He.transition=null,X=1,tp(e,t,n,r)}finally{He.transition=l,X=r}return null}function tp(e,t,n,r){do gn();while(St!==null);if(Q&6)throw Error(_(327));n=e.finishedWork;var l=e.finishedLanes;if(n===null)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(_(177));e.callbackNode=null,e.callbackPriority=0;var s=n.lanes|n.childLanes;if(Od(e,s),e===fe&&(ae=fe=null,ge=0),!(n.subtreeFlags&2064)&&!(n.flags&2064)||Or||(Or=!0,Ec(Gr,function(){return gn(),null})),s=(n.flags&15990)!==0,n.subtreeFlags&15990||s){s=He.transition,He.transition=null;var a=X;X=1;var o=Q;Q|=4,bi.current=null,Xf(e,n),yc(n,e),kf(Fs),Zr=!!Ms,Fs=Ms=null,e.current=n,Yf(n),Cd(),Q=o,X=a,He.transition=s}else e.current=n;if(Or&&(Or=!1,St=e,ml=l),s=e.pendingLanes,s===0&&(Tt=null),Td(n.stateNode),ze(e,ie()),t!==null)for(r=e.onRecoverableError,n=0;n<t.length;n++)l=t[n],r(l.value,{componentStack:l.stack,digest:l.digest});if(hl)throw hl=!1,e=ri,ri=null,e;return ml&1&&e.tag!==0&&gn(),s=e.pendingLanes,s&1?e===li?Xn++:(Xn=0,li=e):Xn=0,$t(),null}function gn(){if(St!==null){var e=lu(ml),t=He.transition,n=X;try{if(He.transition=null,X=16>e?16:e,St===null)var r=!1;else{if(e=St,St=null,ml=0,Q&6)throw Error(_(331));var l=Q;for(Q|=4,z=e.current;z!==null;){var s=z,a=s.child;if(z.flags&16){var o=s.deletions;if(o!==null){for(var u=0;u<o.length;u++){var c=o[u];for(z=c;z!==null;){var y=z;switch(y.tag){case 0:case 11:case 15:bn(8,y,s)}var m=y.child;if(m!==null)m.return=y,z=m;else for(;z!==null;){y=z;var g=y.sibling,x=y.return;if(mc(y),y===c){z=null;break}if(g!==null){g.return=x,z=g;break}z=x}}}var k=s.alternate;if(k!==null){var S=k.child;if(S!==null){k.child=null;do{var D=S.sibling;S.sibling=null,S=D}while(S!==null)}}z=s}}if(s.subtreeFlags&2064&&a!==null)a.return=s,z=a;else e:for(;z!==null;){if(s=z,s.flags&2048)switch(s.tag){case 0:case 11:case 15:bn(9,s,s.return)}var f=s.sibling;if(f!==null){f.return=s.return,z=f;break e}z=s.return}}var d=e.current;for(z=d;z!==null;){a=z;var v=a.child;if(a.subtreeFlags&2064&&v!==null)v.return=a,z=v;else e:for(a=d;z!==null;){if(o=z,o.flags&2048)try{switch(o.tag){case 0:case 11:case 15:El(9,o)}}catch(j){le(o,o.return,j)}if(o===a){z=null;break e}var w=o.sibling;if(w!==null){w.return=o.return,z=w;break e}z=o.return}}if(Q=l,$t(),rt&&typeof rt.onPostCommitFiberRoot=="function")try{rt.onPostCommitFiberRoot(xl,e)}catch{}r=!0}return r}finally{X=n,He.transition=t}}return!1}function co(e,t,n){t=Sn(n,t),t=lc(e,t,1),e=Et(e,t,1),t=Ne(),e!==null&&(hr(e,1,t),ze(e,t))}function le(e,t,n){if(e.tag===3)co(e,e,n);else for(;t!==null;){if(t.tag===3){co(t,e,n);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof r.componentDidCatch=="function"&&(Tt===null||!Tt.has(r))){e=Sn(n,e),e=sc(t,e,1),t=Et(t,e,1),e=Ne(),t!==null&&(hr(t,1,e),ze(t,e));break}}t=t.return}}function np(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),t=Ne(),e.pingedLanes|=e.suspendedLanes&n,fe===e&&(ge&n)===n&&(ue===4||ue===3&&(ge&130023424)===ge&&500>ie()-Xi?Vt(e,0):Ji|=n),ze(e,t)}function Cc(e,t){t===0&&(e.mode&1?(t=Nr,Nr<<=1,!(Nr&130023424)&&(Nr=4194304)):t=1);var n=Ne();e=pt(e,t),e!==null&&(hr(e,t,n),ze(e,n))}function rp(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),Cc(e,n)}function lp(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,l=e.memoizedState;l!==null&&(n=l.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(_(314))}r!==null&&r.delete(t),Cc(e,n)}var _c;_c=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||Le.current)Pe=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return Pe=!1,Qf(e,t,n);Pe=!!(e.flags&131072)}else Pe=!1,Z&&t.flags&1048576&&Lu(t,il,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;Hr(e,t),e=t.pendingProps;var l=yn(t,Se.current);mn(t,n),l=Vi(null,t,r,e,l,n);var s=Wi();return t.flags|=1,typeof l=="object"&&l!==null&&typeof l.render=="function"&&l.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,Re(r)?(s=!0,ll(t)):s=!1,t.memoizedState=l.state!==null&&l.state!==void 0?l.state:null,Fi(t),l.updater=_l,t.stateNode=l,l._reactInternals=t,Ks(t,r,e,n),t=Xs(null,t,r,!0,s,n)):(t.tag=0,Z&&s&&Li(t),je(null,t,l,n),t=t.child),t;case 16:r=t.elementType;e:{switch(Hr(e,t),e=t.pendingProps,l=r._init,r=l(r._payload),t.type=r,l=t.tag=ip(r),e=Je(r,e),l){case 0:t=Js(null,t,r,e,n);break e;case 1:t=eo(null,t,r,e,n);break e;case 11:t=qa(null,t,r,e,n);break e;case 14:t=Za(null,t,r,Je(r.type,e),n);break e}throw Error(_(306,r,""))}return t;case 0:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:Je(r,l),Js(e,t,r,l,n);case 1:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:Je(r,l),eo(e,t,r,l,n);case 3:e:{if(uc(t),e===null)throw Error(_(387));r=t.pendingProps,s=t.memoizedState,l=s.element,Mu(e,t),ul(t,r,null,n);var a=t.memoizedState;if(r=a.element,s.isDehydrated)if(s={element:r,isDehydrated:!1,cache:a.cache,pendingSuspenseBoundaries:a.pendingSuspenseBoundaries,transitions:a.transitions},t.updateQueue.baseState=s,t.memoizedState=s,t.flags&256){l=Sn(Error(_(423)),t),t=to(e,t,r,n,l);break e}else if(r!==l){l=Sn(Error(_(424)),t),t=to(e,t,r,n,l);break e}else for($e=_t(t.stateNode.containerInfo.firstChild),Me=t,Z=!0,Ye=null,n=Ou(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(xn(),r===l){t=ht(e,t,n);break e}je(e,t,r,n)}t=t.child}return t;case 5:return Fu(t),e===null&&Ws(t),r=t.type,l=t.pendingProps,s=e!==null?e.memoizedProps:null,a=l.children,Is(r,l)?a=null:s!==null&&Is(r,s)&&(t.flags|=32),oc(e,t),je(e,t,a,n),t.child;case 6:return e===null&&Ws(t),null;case 13:return cc(e,t,n);case 4:return Ii(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=wn(t,null,r,n):je(e,t,r,n),t.child;case 11:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:Je(r,l),qa(e,t,r,l,n);case 7:return je(e,t,t.pendingProps,n),t.child;case 8:return je(e,t,t.pendingProps.children,n),t.child;case 12:return je(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,l=t.pendingProps,s=t.memoizedProps,a=l.value,Y(al,r._currentValue),r._currentValue=a,s!==null)if(Ze(s.value,a)){if(s.children===l.children&&!Le.current){t=ht(e,t,n);break e}}else for(s=t.child,s!==null&&(s.return=t);s!==null;){var o=s.dependencies;if(o!==null){a=s.child;for(var u=o.firstContext;u!==null;){if(u.context===r){if(s.tag===1){u=ct(-1,n&-n),u.tag=2;var c=s.updateQueue;if(c!==null){c=c.shared;var y=c.pending;y===null?u.next=u:(u.next=y.next,y.next=u),c.pending=u}}s.lanes|=n,u=s.alternate,u!==null&&(u.lanes|=n),Hs(s.return,n,t),o.lanes|=n;break}u=u.next}}else if(s.tag===10)a=s.type===t.type?null:s.child;else if(s.tag===18){if(a=s.return,a===null)throw Error(_(341));a.lanes|=n,o=a.alternate,o!==null&&(o.lanes|=n),Hs(a,n,t),a=s.sibling}else a=s.child;if(a!==null)a.return=s;else for(a=s;a!==null;){if(a===t){a=null;break}if(s=a.sibling,s!==null){s.return=a.return,a=s;break}a=a.return}s=a}je(e,t,l.children,n),t=t.child}return t;case 9:return l=t.type,r=t.pendingProps.children,mn(t,n),l=Qe(l),r=r(l),t.flags|=1,je(e,t,r,n),t.child;case 14:return r=t.type,l=Je(r,t.pendingProps),l=Je(r.type,l),Za(e,t,r,l,n);case 15:return ic(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:Je(r,l),Hr(e,t),t.tag=1,Re(r)?(e=!0,ll(t)):e=!1,mn(t,n),rc(t,r,l),Ks(t,r,l,n),Xs(null,t,r,!0,e,n);case 19:return dc(e,t,n);case 22:return ac(e,t,n)}throw Error(_(156,t.tag))};function Ec(e,t){return eu(e,t)}function sp(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function We(e,t,n,r){return new sp(e,t,n,r)}function Zi(e){return e=e.prototype,!(!e||!e.isReactComponent)}function ip(e){if(typeof e=="function")return Zi(e)?1:0;if(e!=null){if(e=e.$$typeof,e===yi)return 11;if(e===xi)return 14}return 2}function Lt(e,t){var n=e.alternate;return n===null?(n=We(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function br(e,t,n,r,l,s){var a=2;if(r=e,typeof e=="function")Zi(e)&&(a=1);else if(typeof e=="string")a=5;else e:switch(e){case Zt:return Wt(n.children,l,s,t);case vi:a=8,l|=8;break;case gs:return e=We(12,n,t,l|2),e.elementType=gs,e.lanes=s,e;case vs:return e=We(13,n,t,l),e.elementType=vs,e.lanes=s,e;case ys:return e=We(19,n,t,l),e.elementType=ys,e.lanes=s,e;case Fo:return Pl(n,l,s,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case $o:a=10;break e;case Mo:a=9;break e;case yi:a=11;break e;case xi:a=14;break e;case vt:a=16,r=null;break e}throw Error(_(130,e==null?e:typeof e,""))}return t=We(a,n,t,l),t.elementType=e,t.type=r,t.lanes=s,t}function Wt(e,t,n,r){return e=We(7,e,r,t),e.lanes=n,e}function Pl(e,t,n,r){return e=We(22,e,r,t),e.elementType=Fo,e.lanes=n,e.stateNode={isHidden:!1},e}function us(e,t,n){return e=We(6,e,null,t),e.lanes=n,e}function cs(e,t,n){return t=We(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function ap(e,t,n,r,l){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Hl(0),this.expirationTimes=Hl(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Hl(0),this.identifierPrefix=r,this.onRecoverableError=l,this.mutableSourceEagerHydrationData=null}function ea(e,t,n,r,l,s,a,o,u){return e=new ap(e,t,n,o,u),t===1?(t=1,s===!0&&(t|=8)):t=0,s=We(3,null,null,t),e.current=s,s.stateNode=e,s.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Fi(s),e}function op(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:qt,key:r==null?null:""+r,children:e,containerInfo:t,implementation:n}}function Tc(e){if(!e)return zt;e=e._reactInternals;e:{if(Yt(e)!==e||e.tag!==1)throw Error(_(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(Re(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(t!==null);throw Error(_(171))}if(e.tag===1){var n=e.type;if(Re(n))return Tu(e,n,t)}return t}function Pc(e,t,n,r,l,s,a,o,u){return e=ea(n,r,!0,e,l,s,a,o,u),e.context=Tc(null),n=e.current,r=Ne(),l=Pt(n),s=ct(r,l),s.callback=t??null,Et(n,s,l),e.current.lanes=l,hr(e,l,r),ze(e,r),e}function Ll(e,t,n,r){var l=t.current,s=Ne(),a=Pt(l);return n=Tc(n),t.context===null?t.context=n:t.pendingContext=n,t=ct(s,a),t.payload={element:e},r=r===void 0?null:r,r!==null&&(t.callback=r),e=Et(l,t,a),e!==null&&(qe(e,l,a,s),Br(e,l,a)),a}function vl(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return e.child.stateNode;default:return e.child.stateNode}}function fo(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function ta(e,t){fo(e,t),(e=e.alternate)&&fo(e,t)}function up(){return null}var Lc=typeof reportError=="function"?reportError:function(e){console.error(e)};function na(e){this._internalRoot=e}Rl.prototype.render=na.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(_(409));Ll(e,t,null,null)};Rl.prototype.unmount=na.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;Jt(function(){Ll(null,e,null,null)}),t[ft]=null}};function Rl(e){this._internalRoot=e}Rl.prototype.unstable_scheduleHydration=function(e){if(e){var t=au();e={blockedOn:null,target:e,priority:t};for(var n=0;n<xt.length&&t!==0&&t<xt[n].priority;n++);xt.splice(n,0,e),n===0&&uu(e)}};function ra(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function zl(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11&&(e.nodeType!==8||e.nodeValue!==" react-mount-point-unstable "))}function po(){}function cp(e,t,n,r,l){if(l){if(typeof r=="function"){var s=r;r=function(){var c=vl(a);s.call(c)}}var a=Pc(t,r,e,0,null,!1,!1,"",po);return e._reactRootContainer=a,e[ft]=a.current,lr(e.nodeType===8?e.parentNode:e),Jt(),a}for(;l=e.lastChild;)e.removeChild(l);if(typeof r=="function"){var o=r;r=function(){var c=vl(u);o.call(c)}}var u=ea(e,0,!1,null,null,!1,!1,"",po);return e._reactRootContainer=u,e[ft]=u.current,lr(e.nodeType===8?e.parentNode:e),Jt(function(){Ll(t,u,n,r)}),u}function Dl(e,t,n,r,l){var s=n._reactRootContainer;if(s){var a=s;if(typeof l=="function"){var o=l;l=function(){var u=vl(a);o.call(u)}}Ll(t,a,e,l)}else a=cp(n,t,e,l,r);return vl(a)}su=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=In(t.pendingLanes);n!==0&&(Si(t,n|1),ze(t,ie()),!(Q&6)&&(jn=ie()+500,$t()))}break;case 13:Jt(function(){var r=pt(e,1);if(r!==null){var l=Ne();qe(r,e,1,l)}}),ta(e,1)}};ji=function(e){if(e.tag===13){var t=pt(e,134217728);if(t!==null){var n=Ne();qe(t,e,134217728,n)}ta(e,134217728)}};iu=function(e){if(e.tag===13){var t=Pt(e),n=pt(e,t);if(n!==null){var r=Ne();qe(n,e,t,r)}ta(e,t)}};au=function(){return X};ou=function(e,t){var n=X;try{return X=e,t()}finally{X=n}};Ts=function(e,t,n){switch(t){case"input":if(ks(e,n),t=n.name,n.type==="radio"&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var l=jl(r);if(!l)throw Error(_(90));Ao(r),ks(r,l)}}}break;case"textarea":Bo(e,n);break;case"select":t=n.value,t!=null&&dn(e,!!n.multiple,t,!1)}};Jo=Yi;Xo=Jt;var dp={usingClientEntryPoint:!1,Events:[gr,rn,jl,Ko,bo,Yi]},On={findFiberByHostInstance:It,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},fp={bundleType:On.bundleType,version:On.version,rendererPackageName:On.rendererPackageName,rendererConfig:On.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:mt.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return e=qo(e),e===null?null:e.stateNode},findFiberByHostInstance:On.findFiberByHostInstance||up,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var $r=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!$r.isDisabled&&$r.supportsFiber)try{xl=$r.inject(fp),rt=$r}catch{}}Ie.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=dp;Ie.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!ra(t))throw Error(_(200));return op(e,t,null,n)};Ie.createRoot=function(e,t){if(!ra(e))throw Error(_(299));var n=!1,r="",l=Lc;return t!=null&&(t.unstable_strictMode===!0&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onRecoverableError!==void 0&&(l=t.onRecoverableError)),t=ea(e,1,!1,null,null,n,!1,r,l),e[ft]=t.current,lr(e.nodeType===8?e.parentNode:e),new na(t)};Ie.findDOMNode=function(e){if(e==null)return null;if(e.nodeType===1)return e;var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(_(188)):(e=Object.keys(e).join(","),Error(_(268,e)));return e=qo(t),e=e===null?null:e.stateNode,e};Ie.flushSync=function(e){return Jt(e)};Ie.hydrate=function(e,t,n){if(!zl(t))throw Error(_(200));return Dl(null,e,t,!0,n)};Ie.hydrateRoot=function(e,t,n){if(!ra(e))throw Error(_(405));var r=n!=null&&n.hydratedSources||null,l=!1,s="",a=Lc;if(n!=null&&(n.unstable_strictMode===!0&&(l=!0),n.identifierPrefix!==void 0&&(s=n.identifierPrefix),n.onRecoverableError!==void 0&&(a=n.onRecoverableError)),t=Pc(t,null,e,1,n??null,l,!1,s,a),e[ft]=t.current,lr(e),r)for(e=0;e<r.length;e++)n=r[e],l=n._getVersion,l=l(n._source),t.mutableSourceEagerHydrationData==null?t.mutableSourceEagerHydrationData=[n,l]:t.mutableSourceEagerHydrationData.push(n,l);return new Rl(t)};Ie.render=function(e,t,n){if(!zl(t))throw Error(_(200));return Dl(null,e,t,!1,n)};Ie.unmountComponentAtNode=function(e){if(!zl(e))throw Error(_(40));return e._reactRootContainer?(Jt(function(){Dl(null,null,e,!1,function(){e._reactRootContainer=null,e[ft]=null})}),!0):!1};Ie.unstable_batchedUpdates=Yi;Ie.unstable_renderSubtreeIntoContainer=function(e,t,n,r){if(!zl(n))throw Error(_(200));if(e==null||e._reactInternals===void 0)throw Error(_(38));return Dl(e,t,n,!1,r)};Ie.version="18.3.1-next-f1338f8080-20240426";function Rc(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(Rc)}catch(e){console.error(e)}}Rc(),Ro.exports=Ie;var pp=Ro.exports,zc,ho=pp;zc=ho.createRoot,ho.hydrateRoot;async function pe(e){const t=await fetch(e);if(!t.ok)throw new Error(`${t.status} ${t.statusText}`);return t.json()}async function hp(){return pe("/api/archives")}async function mp(e){return pe(`/api/archives/${e}/entries`)}async function gp(e,t,n){const r=new URLSearchParams;return t&&r.set("q",t),n&&r.set("tag",n),pe(`/api/archives/${e}/entries/search?${r}`)}async function vp(e,t){return pe(`/api/archives/${e}/entries/${t}`)}async function yp(e,t,n){const r=await fetch(`/api/archives/${e}/entries/${t}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:n??null})});if(!r.ok)throw new Error(await r.text())}async function ds(e,t){return pe(`/api/archives/${e}/entries/${t}/tags`)}async function xp(e,t,n){const r=await fetch(`/api/archives/${e}/entries/${t}/tags`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({tag_path:n})});if(!r.ok)throw new Error(`Failed to add tag (${r.status})`)}async function wp(e,t,n){const r=await fetch(`/api/archives/${e}/entries/${t}/tags/${n}`,{method:"DELETE"});if(!r.ok)throw new Error(`Remove failed (${r.status})`)}async function kp(e,t){const n=await fetch(`/api/archives/${e}/entries/${t}`,{method:"DELETE"});if(!n.ok)throw new Error(`Delete failed (${n.status})`)}async function Sp(e,t,n){const r=await fetch(`/api/archives/${e}/tags/${t}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:n})});if(!r.ok)throw new Error(await r.text());return r.json()}async function jp(e,t){const n=await fetch(`/api/archives/${e}/tags/${t}`,{method:"DELETE"});if(!n.ok)throw new Error(await n.text())}async function mo(e){return pe(`/api/archives/${e}/runs`)}async function fs(e){return pe(`/api/archives/${e}/tags`)}async function Np(e,t,n=null,r=null){const l={locator:t};n&&n!=="best"&&(l.quality=n),r&&(typeof r.ublock_enabled=="boolean"&&(l.ublock_enabled=r.ublock_enabled),typeof r.reader_mode=="boolean"&&(l.reader_mode=r.reader_mode),typeof r.cookie_ext_enabled=="boolean"&&(l.cookie_ext_enabled=r.cookie_ext_enabled));const s=await fetch(`/api/archives/${e}/captures`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(l)});if(!s.ok){const a=await s.json().catch(()=>({}));throw new Error(a.error||`HTTP ${s.status}`)}return s.json()}async function Cp(e,t){return pe(`/api/archives/${e}/captures/probe?locator=${encodeURIComponent(t)}`)}async function _p(e,t){return pe(`/api/archives/${e}/capture_jobs/${t}`)}async function Ep(){return(await(await fetch("/api/auth/setup")).json()).setup_required===!0}async function Tp(e,t){const n=await fetch("/api/auth/setup",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({username:e,password:t})});if(!n.ok)throw new Error((await n.json()).error||"Setup failed");return n.json()}async function Pp(e,t){const n=await fetch("/api/auth/login",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({username:e,password:t})});if(!n.ok)throw new Error((await n.json()).error||"Login failed");return n.json()}async function Lp(){await fetch("/api/auth/logout",{method:"POST"})}async function Rp(){const e=await fetch("/api/auth/me");return e.status===401?null:e.json()}async function zp(e){const t=await fetch("/api/auth/me",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({display_name:e})});if(!t.ok)throw new Error(await t.text())}async function Dp(e){const t=await fetch("/api/auth/me",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok)throw new Error(await t.text())}async function Op(e,t){const n=await fetch("/api/auth/me",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({current_password:e,new_password:t})});if(!n.ok){let r=await n.text();try{r=JSON.parse(r).error??r}catch{}throw new Error(r)}}async function $p(){return pe("/api/auth/tokens")}async function Mp(e){const t=await fetch("/api/auth/tokens",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:e})});if(!t.ok)throw new Error(await t.text());return t.json()}async function Fp(e){const t=await fetch(`/api/auth/tokens/${e}`,{method:"DELETE"});if(!t.ok)throw new Error(await t.text())}async function la(){return pe("/api/admin/instance-settings")}async function ai(e){const t=await fetch("/api/admin/instance-settings",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok)throw new Error(await t.text())}async function Ip(){return pe("/api/admin/users")}async function Ap(e,t,n){const r=await fetch("/api/admin/users",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({username:e,password:t,email:n||void 0})});if(!r.ok){const l=await r.json().catch(()=>({}));throw new Error(l.error||`HTTP ${r.status}`)}return r.json()}async function Up(e,t){const n=await fetch(`/api/admin/users/${e}/status`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({status:t})});if(!n.ok){const r=await n.json().catch(()=>({}));throw new Error(r.error||`HTTP ${n.status}`)}return n.json()}async function Bp(){return pe("/api/admin/roles")}async function Vp(e,t){const n=await fetch("/api/admin/roles",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({slug:e,name:t})});if(!n.ok){const r=await n.json().catch(()=>({}));throw new Error(r.error||`HTTP ${n.status}`)}return n.json()}async function Wp(e){return pe(`/api/archives/${e}/collections`)}async function Hp(e,t,n,r=2){const l=await fetch(`/api/archives/${e}/collections`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({name:t,slug:n,default_visibility_bits:r})});if(!l.ok){const s=await l.json().catch(()=>({error:l.statusText}));throw new Error(s.error||l.statusText)}return l.json()}async function Qp(e,t){return pe(`/api/archives/${e}/collections/${t}`)}async function Kp(e,t,n,r=2){const l=await fetch(`/api/archives/${e}/collections/${t}/entries`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({entry_uid:n,visibility_bits:r})});if(!l.ok){const s=await l.json().catch(()=>({error:l.statusText}));throw new Error(s.error||l.statusText)}}async function bp(e,t,n){const r=await fetch(`/api/archives/${e}/collections/${t}/entries/${n}`,{method:"DELETE"});if(!r.ok){const l=await r.json().catch(()=>({error:r.statusText}));throw new Error(l.error||r.statusText)}}async function Jp(e,t,n,r){const l=await fetch(`/api/archives/${e}/collections/${t}/entries/${n}`,{method:"PATCH",headers:{"content-type":"application/json"},body:JSON.stringify({visibility_bits:r})});if(!l.ok){const s=await l.json().catch(()=>({error:l.statusText}));throw new Error(s.error||l.statusText)}}async function Xp(e,t){return pe(`/api/archives/${e}/entries/${t}/collections`)}async function go(e,t,n){const r=await fetch(`/api/archives/${e}/collections/${t}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});if(!r.ok){const l=await r.json().catch(()=>({}));throw new Error(l.error??r.statusText)}}async function Yp(e,t){const n=await fetch(`/api/archives/${e}/collections/${t}`,{method:"DELETE"});if(!n.ok){const r=await n.json().catch(()=>({}));throw new Error(r.error??n.statusText)}}async function Gp(e){return pe(`/api/archives/${e}/blob-cleanup`)}async function qp(e){const t=await fetch(`/api/archives/${e}/blob-cleanup`,{method:"DELETE"});if(!t.ok){const n=await t.json().catch(()=>({}));throw new Error(n.error??t.statusText)}return t.json()}async function Zp(){return pe("/api/admin/cookie-rules")}async function eh(e,t,n){const r=await fetch("/api/admin/cookie-rules",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({url_pattern:e||null,pattern_kind:t,cookies_json:n})});if(!r.ok){const l=await r.json().catch(()=>({}));throw new Error(l.message||`HTTP ${r.status}`)}return r.json()}async function th(e,t){const n=await fetch(`/api/admin/cookie-rules/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!n.ok){const r=await n.json().catch(()=>({}));throw new Error(r.message||`HTTP ${n.status}`)}}async function nh(e){const t=await fetch(`/api/admin/cookie-rules/${e}`,{method:"DELETE"});if(!t.ok){const n=await t.json().catch(()=>({}));throw new Error(n.message||`HTTP ${t.status}`)}}const rh=window.fetch;window.fetch=async(...e)=>{var n;const t=await rh(...e);return t.status===401&&((typeof e[0]=="string"?e[0]:((n=e[0])==null?void 0:n.url)??"").includes("/api/auth/")||window.dispatchEvent(new CustomEvent("auth:expired"))),t};function lh({onLogin:e}){const[t,n]=h.useState(""),[r,l]=h.useState(""),[s,a]=h.useState(null),[o,u]=h.useState(!1);async function c(y){y.preventDefault(),a(null),u(!0);try{const m=await Pp(t,r);e(m)}catch(m){a(m.message)}finally{u(!1)}}return i.jsx("div",{className:"login-page",children:i.jsxs("div",{className:"login-card",children:[i.jsx("h1",{className:"login-brand",children:"Archivr"}),i.jsx("p",{className:"login-tagline",children:"Sign in to your archive"}),i.jsxs("form",{onSubmit:c,children:[i.jsxs("div",{className:"login-field",children:[i.jsx("label",{className:"login-label",htmlFor:"login-username",children:"Username"}),i.jsx("input",{className:"login-input",id:"login-username",type:"text",value:t,onChange:y=>n(y.target.value),autoFocus:!0,required:!0,autoComplete:"username"})]}),i.jsxs("div",{className:"login-field",children:[i.jsx("label",{className:"login-label",htmlFor:"login-password",children:"Password"}),i.jsx("input",{className:"login-input",id:"login-password",type:"password",value:r,onChange:y=>l(y.target.value),required:!0,autoComplete:"current-password"})]}),s&&i.jsx("p",{className:"login-error",children:s}),i.jsx("button",{className:"login-submit",type:"submit",disabled:o,children:o?"Signing in…":"Sign in"})]})]})})}function sh({onComplete:e}){const[t,n]=h.useState(""),[r,l]=h.useState(""),[s,a]=h.useState(""),[o,u]=h.useState(null),[c,y]=h.useState(!1);async function m(g){if(g.preventDefault(),r!==s){u("Passwords do not match");return}if(r.length<8){u("Password must be at least 8 characters");return}u(null),y(!0);try{await Tp(t,r),e()}catch(x){u(x.message)}finally{y(!1)}}return i.jsx("div",{className:"setup-page",children:i.jsxs("div",{className:"setup-card",children:[i.jsx("h1",{className:"setup-brand",children:"Archivr"}),i.jsx("p",{className:"setup-tagline",children:"Create your owner account to get started."}),i.jsxs("form",{onSubmit:m,children:[i.jsxs("div",{className:"setup-field",children:[i.jsx("label",{className:"setup-label",htmlFor:"setup-username",children:"Username"}),i.jsx("input",{className:"setup-input",id:"setup-username",type:"text",value:t,onChange:g=>n(g.target.value),autoFocus:!0,required:!0,autoComplete:"username"})]}),i.jsxs("div",{className:"setup-field",children:[i.jsx("label",{className:"setup-label",htmlFor:"setup-password",children:"Password"}),i.jsx("input",{className:"setup-input",id:"setup-password",type:"password",value:r,onChange:g=>l(g.target.value),required:!0,autoComplete:"new-password"})]}),i.jsxs("div",{className:"setup-field",children:[i.jsx("label",{className:"setup-label",htmlFor:"setup-confirm",children:"Confirm password"}),i.jsx("input",{className:"setup-input",id:"setup-confirm",type:"password",value:s,onChange:g=>a(g.target.value),required:!0,autoComplete:"new-password"})]}),o&&i.jsx("p",{className:"setup-error",children:o}),i.jsx("button",{className:"setup-submit",type:"submit",disabled:c,children:c?"Creating account…":"Create account"})]})]})})}function ih({archives:e,archiveId:t,onArchiveChange:n,view:r,onViewChange:l,onCaptureClick:s}){const{currentUser:a,setCurrentUser:o}=h.useContext(Ol)??{},[u,c]=h.useState(!1);async function y(){c(!0),await Lp(),o(null),window.location.reload()}return i.jsxs("header",{className:"topbar",children:[i.jsx("div",{className:"brand",children:"Archivr"}),i.jsx("div",{className:"switcher",children:i.jsx("select",{"aria-label":"Select archive",value:t??"",onChange:m=>n(m.target.value),children:e.map(m=>i.jsx("option",{value:m.id,children:m.label},m.id))})}),i.jsx("nav",{className:"nav","aria-label":"Primary",children:["archive","tags","collections","runs","admin","settings"].map(m=>i.jsx("button",{className:`nav-link${r===m?" is-active":""}`,onClick:()=>l(m),children:m.charAt(0).toUpperCase()+m.slice(1)},m))}),i.jsx("button",{className:"capture-button",onClick:s,children:"Capture"}),a&&i.jsxs("div",{className:"user-menu",children:[i.jsx("span",{className:"user-name",children:a.display_name||a.username}),i.jsx("button",{className:"logout-btn",onClick:y,disabled:u,children:u?"Logging out…":"Log out"})]})]})}let oi=1;function Dc(e){const t=e.trim(),n=t.toLowerCase();for(const r of["yt:","youtube:"])if(n.startsWith(r)){const l=n.slice(r.length);return l.startsWith("video/")||l.startsWith("short/")||l.startsWith("shorts/")}if(n.startsWith("ytm:"))return!n.slice(4).startsWith("playlist/");for(const r of["x:","twitter:","tweet:"])if(n.startsWith(r))return n.slice(r.length).startsWith("media:");if(n.startsWith("spotify:"))return!1;if(n.startsWith("instagram:")||n.startsWith("facebook:")||n.startsWith("tiktok:")||n.startsWith("reddit:")||n.startsWith("snapchat:"))return!0;if(n.startsWith("http://")||n.startsWith("https://")){if(/^https?:\/\/music\.youtube\.com\/watch/.test(n)||/^https?:\/\/(?:www\.)?(?:youtu\.be\/[0-9A-Za-z_-]+|youtube\.com\/watch\?v=[0-9A-Za-z_-]+|youtube\.com\/shorts\/[0-9A-Za-z_-]+)/.test(t)||n.startsWith("https://x.com/")||n.startsWith("http://x.com/")||/^https?:\/\/(?:www\.)?instagram\.com\//.test(n)||/^https?:\/\/(?:www\.)?facebook\.com\//.test(n)||n.startsWith("https://fb.watch/")||n.startsWith("http://fb.watch/")||/^https?:\/\/(?:www\.)?tiktok\.com\//.test(n)||/^https?:\/\/(?:www\.)?reddit\.com\//.test(n)||n.startsWith("https://redd.it/")||n.startsWith("http://redd.it/")||/^https?:\/\/(?:www\.)?snapchat\.com\//.test(n))return!0;if(n.startsWith("https://open.spotify.com/")||n.startsWith("http://open.spotify.com/"))return!1}return!1}function $n(e=""){return{id:oi++,locator:e,quality:"best",probeState:"idle",probeQualities:null,probeHasAudio:!1,status:"idle",error:null,jobUid:null,archiveId:null}}function vo(e){return e.some(t=>t.status==="submitting"||t.status==="running")}function ah({open:e,archiveId:t,onClose:n,onCaptured:r,onToast:l}){const s=h.useRef(null),a=h.useRef(!0),o=h.useRef(new Map),u=h.useRef(new Map),c=h.useRef(t);h.useEffect(()=>{c.current=t},[t]);const y=h.useRef(r),m=h.useRef(l);h.useEffect(()=>{y.current=r},[r]),h.useEffect(()=>{m.current=l},[l]);const[g,x]=h.useState(()=>{try{const p=JSON.parse(sessionStorage.getItem("captureItems")||"null");if(Array.isArray(p)&&p.length>0)return p.forEach(C=>{C.id>=oi&&(oi=C.id+1)}),p}catch{}return[$n()]});h.useEffect(()=>{sessionStorage.setItem("captureItems",JSON.stringify(g))},[g]);const[k,S]=h.useState(!1),[D,f]=h.useState(null),[d,v]=h.useState(null),[w,j]=h.useState(!0);h.useEffect(()=>{la().then(p=>{v(p),j(p.cookie_ext_enabled??!0)}).catch(()=>v({}))},[]);const E=D!==null?D:(d==null?void 0:d.ublock_enabled)??!0,[T,N]=h.useState(!1);h.useEffect(()=>{["captureDialogLocator","captureDialogError","captureDialogBusy","captureDialogJobStatus","captureDialogJobUid"].forEach(p=>sessionStorage.removeItem(p)),x(p=>p.map(C=>C.status==="submitting"?{...C,status:"idle",error:null}:C)),g.forEach(p=>{p.status==="running"&&p.jobUid&&p.archiveId&&!o.current.has(p.jobUid)&&F(p.id,p.jobUid,p.locator,p.archiveId)})},[]),h.useEffect(()=>{const p=s.current;if(!p)return;const C=()=>{u.current.forEach(M=>clearTimeout(M)),u.current.clear(),n()};return p.addEventListener("close",C),()=>p.removeEventListener("close",C)},[n]),h.useEffect(()=>{const p=s.current;p&&(e?(!a.current&&!vo(g)&&x([$n()]),a.current=!1,p.open||p.showModal()):(u.current.forEach(C=>clearTimeout(C)),u.current.clear(),p.open&&p.close()))},[e]),h.useEffect(()=>()=>{o.current.forEach(p=>clearInterval(p)),u.current.forEach(p=>clearTimeout(p))},[]);function F(p,C,M,R){if(o.current.has(C))return;const B=setInterval(async()=>{try{const A=await _p(R,C);if(A.status==="completed"){clearInterval(o.current.get(C)),o.current.delete(C),x(V=>V.map(W=>W.id===p?{...W,status:"completed"}:W)),setTimeout(()=>{x(V=>{const W=V.filter(re=>re.id!==p);return W.length===0?[$n()]:W})},1400),y.current();try{const V=A.notes_json?JSON.parse(A.notes_json):null;(V!=null&&V.ublock_skipped||V!=null&&V.cookie_ext_skipped)&&m.current(null,M,"warning")}catch{}}else if(A.status==="failed"){clearInterval(o.current.get(C)),o.current.delete(C);const V=A.error_text||"Capture failed.";x(W=>W.map(re=>re.id===p?{...re,status:"failed",error:V}:re)),m.current(V,M)}}catch(A){clearInterval(o.current.get(C)),o.current.delete(C);const V=A.message||"Network error";x(W=>W.map(re=>re.id===p?{...re,status:"failed",error:V}:re)),m.current(V,M)}},500);o.current.set(C,B)}async function $(p){if(!p.locator.trim())return;const C=t,M=p.locator.trim(),R=p.quality||"best";x(B=>B.map(A=>A.id===p.id?{...A,status:"submitting",error:null}:A));try{const A=await Np(C,M,R,{ublock_enabled:E,reader_mode:T,cookie_ext_enabled:w});x(V=>V.map(W=>W.id===p.id?{...W,status:"running",jobUid:A.job_uid,archiveId:C}:W)),F(p.id,A.job_uid,M,C)}catch(B){const A=B.message||"Submission failed.";x(V=>V.map(W=>W.id===p.id?{...W,status:"failed",error:A}:W)),m.current(A,M)}}function J(){g.filter(C=>C.status==="idle"&&C.locator.trim()).forEach(C=>$(C))}function se(){x(p=>[...p,$n()])}function O(p){clearTimeout(u.current.get(p)),u.current.delete(p),x(C=>{const M=C.filter(R=>R.id!==p);return M.length===0?[$n()]:M})}function K(p){x(C=>C.map(M=>M.id===p?{...M,status:"idle",error:null}:M))}function ye(p,C){if(clearTimeout(u.current.get(p)),x(R=>R.map(B=>B.id===p?{...B,locator:C,probeState:"idle",probeQualities:null,probeHasAudio:!1,quality:"best"}:B)),!Dc(C))return;const M=setTimeout(async()=>{u.current.delete(p),x(R=>R.map(B=>B.id===p?{...B,probeState:"probing"}:B));try{const R=await Cp(c.current,C.trim());x(B=>B.map(A=>{if(A.id!==p||A.locator!==C)return A;const V=R.qualities??[],W=R.has_audio??!1,re=V.length===0&&W?"audio":"best";return{...A,probeState:"done",probeQualities:V,probeHasAudio:W,quality:re}}))}catch{x(R=>R.map(B=>B.id===p?{...B,probeState:"idle",probeQualities:null}:B))}},600);u.current.set(p,M)}function Ee(p,C){x(M=>M.map(R=>R.id===p?{...R,quality:C}:R))}const he=g.filter(p=>p.status==="idle"&&p.locator.trim()).length,P=vo(g);return i.jsx("dialog",{ref:s,className:"capture-dialog",children:i.jsxs("div",{className:"capture-dialog-inner",children:[i.jsxs("div",{className:"capture-dialog-header",children:[i.jsx("h2",{className:"capture-dialog-title",children:"Capture"}),i.jsx("button",{type:"button",className:"capture-dialog-close",onClick:()=>{var p;return(p=s.current)==null?void 0:p.close()},"aria-label":"Close",children:i.jsxs("svg",{viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",children:[i.jsx("line",{x1:"3",y1:"3",x2:"13",y2:"13"}),i.jsx("line",{x1:"13",y1:"3",x2:"3",y2:"13"})]})})]}),i.jsx("div",{className:"capture-rows",children:g.map((p,C)=>i.jsx(oh,{item:p,autoFocus:C===g.length-1&&p.status==="idle",onLocatorChange:M=>ye(p.id,M),onQualityChange:M=>Ee(p.id,M),onRemove:()=>O(p.id),onReset:()=>K(p.id),onSubmit:J},p.id))}),i.jsxs("button",{type:"button",className:"capture-add-row",onClick:se,children:[i.jsxs("svg",{viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",children:[i.jsx("line",{x1:"8",y1:"2",x2:"8",y2:"14"}),i.jsx("line",{x1:"2",y1:"8",x2:"14",y2:"8"})]}),"Add another"]}),i.jsxs("div",{className:"capture-advanced",children:[i.jsxs("button",{type:"button",className:"capture-advanced-toggle",onClick:()=>S(p=>!p),"aria-expanded":k,children:[i.jsx("svg",{className:`capture-chevron${k?" capture-chevron--open":""}`,viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:i.jsx("polyline",{points:"4 6 8 10 12 6"})}),"Advanced options"]}),k&&i.jsxs("div",{className:"capture-advanced-panel",children:[i.jsxs("label",{className:"capture-ext-row",children:[i.jsxs("span",{className:"capture-ext-label",children:[i.jsx("span",{className:"capture-ext-name",children:"uBlock Origin Lite"}),i.jsx("span",{className:"capture-ext-desc",children:"Block ads during this capture"})]}),i.jsx("button",{type:"button",role:"switch","aria-checked":E,className:`ext-toggle ext-toggle--sm${E?" ext-toggle--on":""}`,onClick:()=>f(p=>p===null?!E:!p),"aria-label":"Toggle uBlock for this capture",children:i.jsx("span",{className:"ext-toggle-knob"})})]}),i.jsxs("label",{className:"capture-ext-row",style:{marginTop:8},children:[i.jsxs("span",{className:"capture-ext-label",children:[i.jsx("span",{className:"capture-ext-name",children:"Block cookie banners"}),i.jsx("span",{className:"capture-ext-desc",children:"Dismiss cookie consent banners during this capture"}),!(d!=null&&d.cookie_ext_available)&&i.jsxs("span",{className:"capture-ext-hint",children:["Not configured — set ",i.jsx("code",{children:"ARCHIVR_COOKIE_EXT"})]})]}),i.jsx("button",{type:"button",role:"switch","aria-checked":w,className:`ext-toggle ext-toggle--sm${w?" ext-toggle--on":""}`,onClick:()=>j(p=>!p),"aria-label":"Toggle cookie banner blocking for this capture",children:i.jsx("span",{className:"ext-toggle-knob"})})]}),i.jsxs("label",{className:"capture-ext-row",style:{marginTop:8},children:[i.jsxs("span",{className:"capture-ext-label",children:[i.jsx("span",{className:"capture-ext-name",children:"Reader mode"}),i.jsx("span",{className:"capture-ext-desc",children:"Distil to article text via Readability (off by default)"})]}),i.jsx("button",{type:"button",role:"switch","aria-checked":T,className:`ext-toggle ext-toggle--sm${T?" ext-toggle--on":""}`,onClick:()=>N(p=>!p),"aria-label":"Toggle reader mode for this capture",children:i.jsx("span",{className:"ext-toggle-knob"})})]})]})]}),i.jsxs("div",{className:"capture-actions",children:[i.jsx("button",{type:"button",className:"capture-submit",onClick:J,disabled:he===0,children:he>1?`Archive ${he}`:"Archive"}),i.jsx("button",{type:"button",className:"capture-cancel",onClick:()=>{var p;return(p=s.current)==null?void 0:p.close()},children:P?"Close":"Cancel"})]})]})})}function oh({item:e,autoFocus:t,onLocatorChange:n,onQualityChange:r,onRemove:l,onReset:s,onSubmit:a}){const o=h.useRef(null),u=e.status==="submitting"||e.status==="running";h.useEffect(()=>{var y;t&&e.status==="idle"&&((y=o.current)==null||y.focus())},[t]);const c=(()=>{if(e.status==="completed"||u||!Dc(e.locator))return null;if(e.probeState==="probing")return i.jsx("span",{className:"capture-quality-probing","aria-label":"Checking available qualities",children:"…"});if(e.probeState==="done"){const y=e.probeQualities??[],m=e.probeHasAudio??!1;return y.length===0&&!m?i.jsx("span",{className:"capture-quality-hint",children:"No media detected"}):y.length===0&&m?i.jsx("select",{className:"capture-quality",value:"audio",onChange:g=>r(g.target.value),"aria-label":"Video quality",children:i.jsx("option",{value:"audio",children:"Audio only"})}):i.jsxs("select",{className:"capture-quality",value:e.quality||"best",onChange:g=>r(g.target.value),"aria-label":"Video quality",children:[i.jsx("option",{value:"best",children:"Best quality"}),y.map(g=>i.jsx("option",{value:g,children:g},g)),m&&i.jsx("option",{value:"audio",children:"Audio only"})]})}return null})();return i.jsxs("div",{className:`capture-row capture-row--${e.status}`,children:[i.jsxs("div",{className:"capture-row-main",children:[i.jsx(uh,{status:e.status}),i.jsx("input",{ref:o,className:"capture-input",type:"text",placeholder:"https://… · yt:ID · ytm:ID · tweet:ID · x:ID",value:e.locator,onChange:y=>n(y.target.value),onKeyDown:y=>{y.key==="Enter"&&a()},disabled:u||e.status==="completed",autoComplete:"off",spellCheck:!1}),c,e.status==="failed"&&i.jsx("button",{type:"button",className:"capture-row-action",onClick:s,title:"Retry",children:i.jsxs("svg",{viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[i.jsx("path",{d:"M13 2.5A7 7 0 1 1 6.5 1"}),i.jsx("polyline",{points:"6.5 1 4 3.5 6.5 6"})]})}),!u&&e.status!=="completed"&&e.status!=="failed"&&i.jsx("button",{type:"button",className:"capture-row-action capture-row-remove",onClick:l,"aria-label":"Remove",children:i.jsxs("svg",{viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",children:[i.jsx("line",{x1:"3",y1:"3",x2:"13",y2:"13"}),i.jsx("line",{x1:"13",y1:"3",x2:"3",y2:"13"})]})})]}),e.error&&i.jsx("p",{className:"capture-row-error",children:e.error})]})}function uh({status:e}){return e==="submitting"||e==="running"?i.jsx("span",{className:"cap-dot cap-dot--running","aria-label":"Running",children:i.jsx("span",{className:"cap-spinner"})}):e==="completed"?i.jsx("span",{className:"cap-dot cap-dot--ok","aria-label":"Done",children:"✓"}):e==="failed"?i.jsx("span",{className:"cap-dot cap-dot--err","aria-label":"Failed",children:"✕"}):i.jsx("span",{className:"cap-dot cap-dot--idle","aria-hidden":"true"})}function ui(e){if(!e)return"0 B";const t=["B","KB","MB","GB"];let n=e,r=0;for(;n>=1024&&r<t.length-1;)n/=1024,r+=1;return`${n.toFixed(r===0?0:1)} ${t[r]}`}function ch(e){return e&&e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,'"').replace(/'/g,"'").replace(/'/g,"'")}function Bt(e){return ch(e)??""}function Oc(e){if(!e)return"";const t=new Date(e);if(isNaN(t))return e;const n=r=>String(r).padStart(2,"0");return`${t.getUTCFullYear()}-${n(t.getUTCMonth()+1)}-${n(t.getUTCDate())} ${n(t.getUTCHours())}:${n(t.getUTCMinutes())}`}const yo={youtube:'<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="#FF0000" d="M23.5 6.2a3 3 0 0 0-2.1-2.1C19.5 3.6 12 3.6 12 3.6s-7.5 0-9.4.5A3 3 0 0 0 .5 6.2C0 8.1 0 12 0 12s0 3.9.5 5.8a3 3 0 0 0 2.1 2.1c1.9.5 9.4.5 9.4.5s7.5 0 9.4-.5a3 3 0 0 0 2.1-2.1C24 15.9 24 12 24 12s0-3.9-.5-5.8z"/><polygon fill="#fff" points="9.6,15.6 15.8,12 9.6,8.4"/></svg>',youtube_music:'<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><circle cx="12" cy="12" r="12" fill="#FF0000"/><polygon fill="#fff" points="9.6,15.6 15.8,12 9.6,8.4"/></svg>',spotify:'<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><circle cx="12" cy="12" r="12" fill="#1DB954"/><path fill="#fff" d="M17.9 10.9c-3.2-1.9-8.5-2.1-11.6-1.1-.5.1-1-.2-1.1-.6-.1-.5.2-1 .6-1.1 3.5-1.1 9.4-.9 13 1.3.4.2.6.8.3 1.2-.2.5-.8.6-1.2.3zm-.1 2.9c-.2.4-.7.5-1.1.3-2.7-1.6-6.7-2.1-9.9-1.1-.4.1-.9-.1-1-.5-.1-.4.1-.9.5-1 3.6-1.1 8-.5 11.1 1.3.4.2.5.7.4 1zm-1.3 2.8c-.2.3-.6.4-.9.2-2.3-1.4-5.2-1.7-8.6-.9-.3.1-.7-.1-.8-.5-.1-.3.1-.7.4-.8 3.7-.9 7-.5 9.6 1 .4.2.5.6.3.9z"/></svg>',x:'<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M18.2 2h3.3l-7.2 8.2L23 22h-6.6l-5.2-6.8L5 22H1.7l7.7-8.8L1 2h6.8l4.7 6.2zm-1.1 18h1.8L6.9 3.9H5z"/></svg>',instagram:'<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><defs><linearGradient id="ig" x1="0%" y1="100%" x2="100%" y2="0%"><stop offset="0%" stop-color="#f09433"/><stop offset="25%" stop-color="#e6683c"/><stop offset="50%" stop-color="#dc2743"/><stop offset="75%" stop-color="#cc2366"/><stop offset="100%" stop-color="#bc1888"/></linearGradient></defs><rect width="24" height="24" rx="5" fill="url(#ig)"/><rect x="2.5" y="2.5" width="19" height="19" rx="4" fill="none" stroke="#fff" stroke-width="1.5"/><circle cx="12" cy="12" r="4" fill="none" stroke="#fff" stroke-width="1.5"/><circle cx="17.5" cy="6.5" r="1" fill="#fff"/></svg>',facebook:'<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><rect width="24" height="24" rx="4" fill="#1877F2"/><path fill="#fff" d="M16 8h-2c-.6 0-1 .4-1 1v2h3l-.4 3H13v8h-3v-8H8v-3h2V9a4 4 0 0 1 4-4h2v3z"/></svg>',tiktok:'<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M19.6 5.4a4.8 4.8 0 0 1-4.8-4.8h-3v14.7a2 2 0 1 1-2-2l.1-3a5 5 0 1 0 4.9 5V8.4a8 8 0 0 0 4.8 1.6V6.7a4.8 4.8 0 0 1-0-.2l0 0 .1.9z" fill="#000"/><path d="M18.6 4.4a4.8 4.8 0 0 1-4.8-4.8h-3v14.7a2 2 0 1 1-2-2l.1-3a5 5 0 1 0 4.9 5V7.4a8 8 0 0 0 4.8 1.6V5.7" fill="none" stroke="#69C9D0" stroke-width="1.5"/></svg>',reddit:'<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><circle cx="12" cy="12" r="12" fill="#FF4500"/><path fill="#fff" d="M20 12a2 2 0 0 0-2-2 2 2 0 0 0-1.3.5c-1.3-.9-3-.9-4.6-.9l.8-3.7 2.6.5a1.4 1.4 0 1 0 1.4-1.3 1.4 1.4 0 0 0-1.3.8l-2.9-.5a.3.3 0 0 0-.4.3l-.9 4.1c-1.6 0-3.1.1-4.3.9A2 2 0 0 0 4 12a2 2 0 0 0 1 1.7 3.3 3.3 0 0 0 0 .5c0 2.6 3 4.8 6.8 4.8s6.8-2.1 6.8-4.8a3.3 3.3 0 0 0 0-.5A2 2 0 0 0 20 12zm-13.6 1a1.1 1.1 0 1 1 1.1 1.1A1.1 1.1 0 0 1 6.4 13zm6.2 3.1a3.5 3.5 0 0 1-2.3.7 3.5 3.5 0 0 1-2.3-.7.3.3 0 0 1 .4-.4 3 3 0 0 0 1.9.5 3 3 0 0 0 1.9-.5.3.3 0 0 1 .4.4zm-.3-2a1.1 1.1 0 1 1 1.1-1.1A1.1 1.1 0 0 1 12.3 14.1z"/></svg>',snapchat:'<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><rect width="24" height="24" rx="4" fill="#FFFC00"/><path d="M12 3.5c-2.4 0-4.4 2-4.4 4.4v1.3l-.8.1c-.3 0-.5.2-.5.5s.3.5.6.6c.3.1.5.3.5.8 0 .3-.1.5-.3.7-.6.8-1.5 1.3-2.2 1.4-.1.7.7 1 1.7 1.2.1.6.3.8.8.8.6 0 1.1.4 2.7.4 1.5 0 2.1-.4 2.7-.4.5 0 .7-.2.8-.8 1-.2 1.8-.5 1.7-1.2-.7-.1-1.6-.6-2.2-1.4-.2-.2-.3-.4-.3-.7 0-.5.2-.7.5-.8.3-.1.6-.3.6-.6s-.2-.5-.5-.5l-.8-.1V7.9C16.4 5.5 14.4 3.5 12 3.5z"/></svg>',local:'<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="none" stroke="#666" stroke-width="1.5" stroke-linejoin="round" d="M4 4h7l2 2h7v14H4z"/></svg>',web:'<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><circle cx="12" cy="12" r="10" fill="none" stroke="#555" stroke-width="1.5"/><ellipse cx="12" cy="12" rx="4" ry="10" fill="none" stroke="#555" stroke-width="1.5"/><line x1="2" y1="9" x2="22" y2="9" stroke="#555" stroke-width="1.5"/><line x1="2" y1="15" x2="22" y2="15" stroke="#555" stroke-width="1.5"/></svg>',other:'<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><circle cx="12" cy="12" r="10" fill="none" stroke="#999" stroke-width="1.5"/><text x="12" y="16" text-anchor="middle" font-size="12" fill="#999">?</text></svg>'};function $c(e){return yo[e]??yo.other}function Mc(e){return e.split("/").map(t=>t?t.split("-").map(n=>n.charAt(0).toUpperCase()+n.slice(1)).join(" "):"").join("/")}function dh({entry:e,archiveId:t,isSelected:n,onSelect:r}){const[l,s]=h.useState(!1),o=e.source_kind==="web"&&e.entity_kind==="page"&&e.has_favicon&&t&&!l?i.jsx("img",{src:`/api/archives/${t}/entries/${e.entry_uid}/favicon`,width:"16",height:"16",alt:"",onError:()=>s(!0),style:{objectFit:"contain"}}):i.jsx("span",{dangerouslySetInnerHTML:{__html:$c(e.source_kind)}});return i.jsxs("div",{className:n?"is-selected":void 0,tabIndex:0,"data-entry-uid":e.entry_uid,onClick:r,onKeyDown:u=>{u.key==="Enter"&&r()},children:[i.jsx("div",{className:"col-added",children:Oc(e.archived_at)}),i.jsxs("div",{className:"col-title",children:[i.jsx("span",{className:"source-icon",children:o}),i.jsx("span",{className:"entry-title",children:Bt(e.title)||Bt(e.entry_uid)})]}),i.jsx("div",{className:"col-type",children:i.jsx("span",{className:"type-pill",children:Bt(e.entity_kind)})}),i.jsxs("div",{className:"col-size",children:[i.jsx("span",{className:"size-total",children:ui(e.total_artifact_bytes)}),e.cached_bytes>0&&e.total_artifact_bytes>0&&i.jsxs("span",{className:"size-cached-pct",title:`${ui(e.cached_bytes)} already on disk from an earlier entry`,children:[Math.round(e.cached_bytes/e.total_artifact_bytes*100),"% cached"]})]}),i.jsx("div",{className:"url-cell col-url",children:Bt(e.original_url)})]})}function fh({entries:e,selectedEntryUid:t,onSelectEntry:n,archiveId:r}){return i.jsx("section",{id:"archive-view",className:"view is-active",children:i.jsxs("div",{className:"entry-table",children:[i.jsxs("div",{className:"entry-header-row",children:[i.jsx("div",{className:"col-added",children:"Added"}),i.jsx("div",{className:"col-title",children:"Title"}),i.jsx("div",{className:"col-type",children:"Type"}),i.jsx("div",{className:"col-size",children:"Size"}),i.jsx("div",{className:"col-url",children:"Original URL"})]}),i.jsx("div",{id:"entries-body",children:e.map(l=>i.jsx(dh,{entry:l,archiveId:r,isSelected:l.entry_uid===t,onSelect:()=>n(l)},l.entry_uid))})]})})}function ph(e){if(!e)return"—";try{return new Date(e).toLocaleString(void 0,{year:"numeric",month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}catch{return e}}function hh({status:e}){const t=e==="completed"?"run-status--completed":e==="failed"?"run-status--failed":e==="in_progress"?"run-status--in-progress":"",n=e?e.replace(/_/g," "):"—";return i.jsx("span",{className:`run-status ${t}`,children:n})}function mh({runs:e}){const[t,n]=h.useState(null);function r(l){n(s=>s===l?null:l)}return i.jsx("section",{id:"runs-view",className:"view is-active",children:i.jsxs("table",{className:"entry-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Started"}),i.jsx("th",{children:"Status"}),i.jsx("th",{children:"Requested"}),i.jsx("th",{children:"Completed"}),i.jsx("th",{children:"Failed"})]})}),i.jsx("tbody",{children:e.length===0?i.jsx("tr",{children:i.jsx("td",{colSpan:5,style:{color:"var(--muted)",padding:"24px 16px",textAlign:"center"},children:"No runs yet."})}):e.map(l=>{const s=l.status==="failed"&&l.error_summary,a=t===l.run_uid;return[i.jsxs("tr",{className:s?"run-row run-row--failed":"run-row",onClick:s?()=>r(l.run_uid):void 0,title:s?a?"Click to hide error":"Click to view error":void 0,children:[i.jsx("td",{children:ph(l.started_at)}),i.jsxs("td",{children:[i.jsx(hh,{status:l.status}),s&&i.jsx("span",{className:"run-expand-hint","aria-hidden":"true",children:a?"▴":"▾"})]}),i.jsx("td",{children:l.requested_count??"—"}),i.jsx("td",{children:l.completed_count??"—"}),i.jsx("td",{children:l.failed_count??"—"})]},l.run_uid),s&&a&&i.jsx("tr",{className:"run-error-row",children:i.jsx("td",{colSpan:5,children:i.jsx("pre",{className:"run-error-detail",children:l.error_summary})})},`${l.run_uid}-detail`)]})})]})})}const gh=4;function vh({archives:e}){const{currentUser:t}=h.useContext(Ol)??{},n=t&&(t.role_bits&gh)!==0,[r,l]=h.useState("users"),[s,a]=h.useState([]),[o,u]=h.useState([]),[c,y]=h.useState(!1),[m,g]=h.useState(null),[x,k]=h.useState(""),[S,D]=h.useState(""),[f,d]=h.useState(""),[v,w]=h.useState(null),[j,E]=h.useState(!1),[T,N]=h.useState(""),[F,$]=h.useState(""),[J,se]=h.useState(null),[O,K]=h.useState(!1),ye=h.useCallback(async()=>{if(n){y(!0),g(null);try{const[p,C]=await Promise.all([Ip(),Bp()]);a(p),u(C)}catch(p){g(p.message)}finally{y(!1)}}},[n]);h.useEffect(()=>{ye()},[ye]);async function Ee(p){const C=p.status==="active"?"disabled":"active";try{await Up(p.user_uid,C),a(M=>M.map(R=>R.user_uid===p.user_uid?{...R,status:C}:R))}catch(M){g(M.message)}}async function he(p){if(p.preventDefault(),!x.trim()||!S){w("Username and password required");return}E(!0),w(null);try{await Ap(x.trim(),S,f.trim()||void 0),k(""),D(""),d(""),await ye()}catch(C){w(C.message)}finally{E(!1)}}async function P(p){if(p.preventDefault(),!T.trim()||!F.trim()){se("Slug and name required");return}K(!0),se(null);try{await Vp(T.trim(),F.trim()),N(""),$(""),await ye()}catch(C){se(C.message)}finally{K(!1)}}return n?i.jsxs("section",{id:"admin-view",className:"view admin-view is-active",children:[i.jsx("h1",{children:"Admin"}),i.jsxs("div",{className:"view-tabs",children:[i.jsx("button",{className:`view-tab${r==="users"?" is-active":""}`,onClick:()=>l("users"),children:"Users"}),i.jsx("button",{className:`view-tab${r==="roles"?" is-active":""}`,onClick:()=>l("roles"),children:"Roles"}),i.jsx("button",{className:`view-tab${r==="archives"?" is-active":""}`,onClick:()=>l("archives"),children:"Archives"})]}),m&&i.jsx("div",{className:"form-msg form-msg--err",children:m}),r==="users"&&i.jsxs("div",{className:"admin-section",children:[i.jsx("h2",{children:"Users"}),c?i.jsx("p",{className:"muted",children:"Loading…"}):i.jsxs("table",{className:"admin-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Username"}),i.jsx("th",{children:"Email"}),i.jsx("th",{children:"Roles"}),i.jsx("th",{children:"Status"}),i.jsx("th",{children:"Actions"})]})}),i.jsx("tbody",{children:s.map(p=>i.jsxs("tr",{className:p.status==="disabled"?"admin-row-disabled":"",children:[i.jsx("td",{children:p.username}),i.jsx("td",{className:"muted",children:p.email||"—"}),i.jsx("td",{children:p.role_slugs.join(", ")||"—"}),i.jsx("td",{children:i.jsx("span",{className:`status-badge status-${p.status}`,children:p.status})}),i.jsx("td",{children:i.jsx("button",{className:"admin-action-btn",onClick:()=>Ee(p),children:p.status==="active"?"Ban":"Unban"})})]},p.user_uid))})]}),i.jsx("h3",{children:"Create User"}),i.jsxs("form",{className:"admin-form",onSubmit:he,children:[i.jsx("input",{className:"admin-input",placeholder:"Username",value:x,onChange:p=>k(p.target.value),required:!0}),i.jsx("input",{className:"admin-input",type:"password",placeholder:"Password (min 8 chars)",value:S,onChange:p=>D(p.target.value),required:!0}),i.jsx("input",{className:"admin-input",type:"email",placeholder:"Email (optional)",value:f,onChange:p=>d(p.target.value)}),v&&i.jsx("div",{className:"form-msg form-msg--err",children:v}),i.jsx("button",{className:"btn-primary",type:"submit",disabled:j,children:j?"Creating…":"Create User"})]})]}),r==="roles"&&i.jsxs("div",{className:"admin-section",children:[i.jsx("h2",{children:"Roles"}),c?i.jsx("p",{className:"muted",children:"Loading…"}):i.jsxs("table",{className:"admin-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Slug"}),i.jsx("th",{children:"Name"}),i.jsx("th",{children:"Level"}),i.jsx("th",{children:"Bit"}),i.jsx("th",{children:"Built-in"})]})}),i.jsx("tbody",{children:o.map(p=>i.jsxs("tr",{children:[i.jsx("td",{children:i.jsx("code",{children:p.slug})}),i.jsx("td",{children:p.name}),i.jsx("td",{children:p.level}),i.jsx("td",{children:p.bit_position}),i.jsx("td",{children:p.is_builtin?"✓":""})]},p.role_uid))})]}),i.jsx("h3",{children:"Create Custom Role"}),i.jsxs("form",{className:"admin-form",onSubmit:P,children:[i.jsx("input",{className:"admin-input",placeholder:"Slug (e.g. moderator)",value:T,onChange:p=>N(p.target.value),required:!0}),i.jsx("input",{className:"admin-input",placeholder:"Display Name (e.g. Moderator)",value:F,onChange:p=>$(p.target.value),required:!0}),J&&i.jsx("div",{className:"form-msg form-msg--err",children:J}),i.jsx("button",{className:"btn-primary",type:"submit",disabled:O,children:O?"Creating…":"Create Role"})]})]}),r==="archives"&&i.jsxs("div",{className:"admin-section",children:[i.jsx("h2",{children:"Mounted Archives"}),i.jsx("div",{className:"admin-list",children:e.map(p=>i.jsxs("div",{className:"admin-archive",children:[i.jsx("strong",{children:p.label}),i.jsx("div",{className:"muted",children:p.archive_path})]},p.id))})]})]}):i.jsxs("section",{id:"admin-view",className:"view admin-view is-active",children:[i.jsx("h1",{children:"Admin"}),i.jsx("p",{className:"muted",children:"You need admin privileges to access this panel."}),i.jsx("h2",{children:"Mounted Archives"}),i.jsx("div",{className:"admin-list",children:e.map(p=>i.jsxs("div",{className:"admin-archive",children:[i.jsx("strong",{children:p.label}),i.jsx("div",{className:"muted",children:p.archive_path})]},p.id))})]})}function Fc({node:e,archiveId:t,tagFilter:n,onTagFilterSet:r,onViewChange:l,onTagRenamed:s,onTagDeleted:a,onTagsRefresh:o,humanizeTags:u}){var w;const c=n===e.tag.full_path,[y,m]=h.useState(!1),[g,x]=h.useState(""),k=h.useRef(!1);function S(){if(y)return;const j=c?null:e.tag.full_path;r(j),l("archive")}function D(j){j.stopPropagation(),x(e.tag.slug),m(!0)}async function f(){const j=g.trim();if(!j||j===e.tag.slug){m(!1);return}try{const E=await Sp(t,e.tag.tag_uid,j);s(e.tag.full_path,E.full_path),o()}catch{}finally{m(!1)}}async function d(j){var T;j.stopPropagation();const E=((T=e.children)==null?void 0:T.length)>0?`Delete tag "${e.tag.full_path}" and all its child tags? This cannot be undone.`:`Delete tag "${e.tag.full_path}"? This cannot be undone.`;if(window.confirm(E))try{await jp(t,e.tag.tag_uid),a(e.tag.full_path),o()}catch{}}const v={archiveId:t,tagFilter:n,onTagFilterSet:r,onViewChange:l,onTagRenamed:s,onTagDeleted:a,onTagsRefresh:o,humanizeTags:u};return i.jsxs("li",{children:[i.jsxs("div",{className:"tag-node-row",children:[y?i.jsx("input",{className:"tag-rename-input",autoFocus:!0,value:g,onChange:j=>x(j.target.value),onKeyDown:j=>{j.key==="Enter"&&j.currentTarget.blur(),j.key==="Escape"&&(k.current=!0,j.currentTarget.blur())},onBlur:()=>{k.current?(k.current=!1,m(!1)):f()}}):i.jsxs("button",{className:`tag-node-btn${c?" is-active":""}`,title:e.tag.full_path,onClick:S,onDoubleClick:D,children:[u?e.tag.name:e.tag.slug,i.jsx("svg",{className:"edit-icon",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",onClick:j=>{j.stopPropagation(),D(j)},children:i.jsx("path",{d:"M11.5 2.5a1.5 1.5 0 0 1 2 2L5 13l-3 1 1-3 8.5-8.5z"})})]}),i.jsx("button",{className:"remove tag-node-delete",title:`Delete tag ${e.tag.full_path}`,onClick:d,"aria-label":`Delete tag ${e.tag.full_path}`,children:"×"})]}),((w=e.children)==null?void 0:w.length)>0&&i.jsx("div",{className:"tag-children",children:i.jsx("ul",{className:"tag-tree-list",children:e.children.map(j=>i.jsx(Fc,{node:j,...v},j.tag.tag_uid))})})]})}function yh({archiveId:e,tagNodes:t,tagFilter:n,onTagFilterSet:r,onViewChange:l,onTagRenamed:s,onTagDeleted:a,onTagsRefresh:o,humanizeTags:u}){return i.jsx("section",{id:"tags-view",className:"view is-active",children:i.jsxs("div",{className:"tag-tree",children:[i.jsxs("div",{className:"tag-tree-header",children:[i.jsx("span",{className:"tag-tree-title",children:"Tags"}),n&&i.jsxs("span",{className:"tag-tree-active",children:["Filtering: ",n]})]}),t.length===0?i.jsx("p",{className:"muted",style:{padding:"8px 0"},children:"No tags yet."}):i.jsx("ul",{className:"tag-tree-list",children:t.map(c=>i.jsx(Fc,{node:c,archiveId:e,tagFilter:n,onTagFilterSet:r,onViewChange:l,onTagRenamed:s,onTagDeleted:a,onTagsRefresh:o,humanizeTags:u},c.tag.tag_uid))})]})})}const Un=[{value:0,label:"Private"},{value:2,label:"Users only"},{value:3,label:"Public"}],xh=e=>{var t;return((t=Un.find(n=>n.value===e))==null?void 0:t.label)??String(e)};function wh({archiveId:e}){const[t,n]=h.useState([]),[r,l]=h.useState(!1),[s,a]=h.useState(null),[o,u]=h.useState(null),[c,y]=h.useState(null),[m,g]=h.useState(!1),[x,k]=h.useState(null),[S,D]=h.useState(""),[f,d]=h.useState(""),[v,w]=h.useState(2),[j,E]=h.useState(!1),[T,N]=h.useState(null),[F,$]=h.useState(""),[J,se]=h.useState(2),[O,K]=h.useState(!1),[ye,Ee]=h.useState(null),[he,P]=h.useState(!1),[p,C]=h.useState(""),M=h.useRef(null),R=t.find(L=>L.collection_uid===o)??null,B=(R==null?void 0:R.slug)==="_default_",A=h.useCallback(async()=>{if(e){l(!0),a(null);try{const L=await Wp(e);n(L)}catch(L){a(L.message)}finally{l(!1)}}},[e]),V=h.useCallback(async L=>{if(!L){y(null);return}g(!0),k(null);try{const H=await Qp(e,L);y(H)}catch(H){k(H.message)}finally{g(!1)}},[e]);h.useEffect(()=>{A()},[A]),h.useEffect(()=>{V(o)},[o,V]),h.useEffect(()=>{he&&M.current&&M.current.focus()},[he]);async function W(L){L.preventDefault();const H=S.trim(),De=f.trim();if(!(!H||!De)){E(!0),N(null);try{const st=await Hp(e,H,De,v);D(""),d(""),w(2),await A(),u(st.collection_uid)}catch(st){N(st.message)}finally{E(!1)}}}async function re(){const L=p.trim();if(!L||!R){P(!1);return}try{await go(e,R.collection_uid,{name:L}),await A(),y(H=>H&&{...H,name:L})}catch(H){a(H.message)}finally{P(!1)}}async function yr(L){if(R)try{await go(e,R.collection_uid,{default_visibility_bits:L}),await A(),y(H=>H&&{...H,default_visibility_bits:L})}catch(H){a(H.message)}}async function $l(){if(R&&window.confirm(`Delete collection "${R.name}"? Entries will not be deleted.`))try{await Yp(e,R.collection_uid),u(null),y(null),await A()}catch(L){a(L.message)}}async function Ml(L){L.preventDefault();const H=F.trim();if(!(!H||!R)){K(!0),Ee(null);try{await Kp(e,R.collection_uid,H,J),$(""),await V(R.collection_uid)}catch(De){Ee(De.message)}finally{K(!1)}}}async function Fl(L){if(R)try{await bp(e,R.collection_uid,L),await V(R.collection_uid)}catch(H){k(H.message)}}async function Il(L,H){if(R)try{await Jp(e,R.collection_uid,L,H),y(De=>De&&{...De,entries:De.entries.map(st=>st.entry_uid===L?{...st,collection_visibility_bits:H}:st)})}catch(De){k(De.message)}}return e?i.jsxs("div",{className:"collections-view",children:[i.jsx("h2",{className:"collections-heading",children:"Collections"}),r&&i.jsx("div",{className:"muted",children:"Loading…"}),s&&i.jsxs("div",{className:"collections-error",children:[s," ",i.jsx("button",{onClick:()=>a(null),className:"coll-dismiss",children:"×"})]}),i.jsxs("div",{className:"collections-layout",children:[i.jsxs("div",{className:"collections-sidebar",children:[t.map(L=>i.jsxs("button",{className:`coll-sidebar-row${o===L.collection_uid?" is-active":""}`,onClick:()=>u(L.collection_uid),children:[i.jsx("span",{className:"coll-row-name",children:L.name}),i.jsx("span",{className:"coll-row-meta",children:xh(L.default_visibility_bits)})]},L.collection_uid)),t.length===0&&!r&&i.jsx("div",{className:"muted",style:{padding:"8px 12px"},children:"No collections yet."})]}),R?i.jsxs("div",{className:"coll-detail",children:[i.jsxs("div",{className:"coll-detail-header",children:[he?i.jsx("input",{ref:M,className:"coll-rename-input",value:p,onChange:L=>C(L.target.value),onBlur:re,onKeyDown:L=>{L.key==="Enter"&&re(),L.key==="Escape"&&P(!1)}}):i.jsxs("h3",{className:`coll-detail-name${B?"":" coll-detail-name--editable"}`,title:B?void 0:"Click to rename",onClick:()=>{B||(C(R.name),P(!0))},children:[(c==null?void 0:c.name)??R.name,!B&&i.jsx("span",{className:"coll-edit-hint",children:" ✎"})]}),!B&&i.jsx("button",{className:"coll-delete-btn",onClick:$l,title:"Delete collection",children:"Delete"})]}),i.jsxs("div",{className:"coll-detail-vis",children:[i.jsx("span",{className:"coll-vis-label",children:"Default visibility"}),i.jsx("select",{className:"coll-vis-select",value:(c==null?void 0:c.default_visibility_bits)??R.default_visibility_bits,onChange:L=>yr(Number(L.target.value)),disabled:B,children:Un.map(L=>i.jsx("option",{value:L.value,children:L.label},L.value))})]}),i.jsxs("div",{className:"coll-entries-section",children:[i.jsx("div",{className:"coll-section-heading",children:"Entries"}),m&&i.jsx("div",{className:"muted",children:"Loading…"}),x&&i.jsx("div",{className:"collections-error",children:x}),!m&&c&&(c.entries.length===0?i.jsx("div",{className:"muted",children:"No entries in this collection."}):i.jsx("ul",{className:"coll-entries-list",children:c.entries.map(L=>i.jsxs("li",{className:"coll-entry-row",children:[i.jsxs("div",{className:"coll-entry-info",children:[i.jsx("span",{className:"coll-entry-title",children:L.title||L.entry_uid}),i.jsx("span",{className:"coll-entry-kind muted",children:L.source_kind})]}),i.jsxs("div",{className:"coll-entry-actions",children:[i.jsx("select",{className:"coll-entry-vis-select",value:L.collection_visibility_bits,onChange:H=>Il(L.entry_uid,Number(H.target.value)),children:Un.map(H=>i.jsx("option",{value:H.value,children:H.label},H.value))}),!B&&i.jsx("button",{className:"coll-entry-remove",onClick:()=>Fl(L.entry_uid),title:"Remove from collection",children:"×"})]})]},L.entry_uid))}))]}),!B&&i.jsxs("form",{className:"coll-add-entry-form",onSubmit:Ml,children:[i.jsx("div",{className:"coll-section-heading",children:"Add entry"}),i.jsxs("div",{className:"coll-add-entry-row",children:[i.jsx("input",{className:"coll-add-entry-input",type:"text",value:F,onChange:L=>$(L.target.value),placeholder:"entry_uid",required:!0}),i.jsx("select",{className:"coll-vis-select",value:J,onChange:L=>se(Number(L.target.value)),children:Un.map(L=>i.jsx("option",{value:L.value,children:L.label},L.value))}),i.jsx("button",{className:"coll-add-btn",type:"submit",disabled:O,children:O?"…":"Add"})]}),ye&&i.jsx("div",{className:"collections-error",style:{marginTop:4},children:ye})]})]}):i.jsx("div",{className:"coll-detail coll-detail--empty",children:i.jsx("div",{className:"muted",children:"Select a collection to view details."})})]}),i.jsxs("details",{className:"coll-create-details",children:[i.jsx("summary",{children:"+ Create collection"}),i.jsxs("form",{className:"coll-create-form",onSubmit:W,children:[i.jsxs("div",{className:"form-field",children:[i.jsx("label",{className:"form-label",htmlFor:"coll-name",children:"Name"}),i.jsx("input",{className:"capture-input",id:"coll-name",type:"text",value:S,onChange:L=>{D(L.target.value),f||d(L.target.value.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,""))},placeholder:"My Collection",required:!0})]}),i.jsxs("div",{className:"form-field",children:[i.jsx("label",{className:"form-label",htmlFor:"coll-slug",children:"Slug"}),i.jsx("input",{className:"capture-input",id:"coll-slug",type:"text",value:f,onChange:L=>d(L.target.value),placeholder:"my-collection",required:!0})]}),i.jsxs("div",{className:"form-field",children:[i.jsx("label",{className:"form-label",htmlFor:"coll-vis",children:"Default visibility"}),i.jsx("select",{className:"capture-input",id:"coll-vis",style:{height:42},value:v,onChange:L=>w(Number(L.target.value)),children:Un.map(L=>i.jsx("option",{value:L.value,children:L.label},L.value))})]}),T&&i.jsx("div",{className:"collections-error",children:T}),i.jsx("button",{className:"btn-primary",type:"submit",disabled:j,children:j?"Creating…":"Create collection"})]})]})]}):i.jsx("div",{className:"view-placeholder",children:"Select an archive."})}const kh=4;function Sh({tab:e,onTabChange:t,archiveId:n}){const{currentUser:r,setCurrentUser:l}=h.useContext(Ol)??{},s=r&&(r.role_bits&kh)!==0,a=["profile","tokens",...s?["instance","cookies","extensions","storage"]:[]],o={profile:"Profile",tokens:"API Tokens",instance:"Instance",cookies:"Cookies",extensions:"Extensions",storage:"Storage"};return i.jsxs("section",{className:"admin-view",children:[i.jsx("h1",{children:"Settings"}),i.jsx("div",{className:"view-tabs",children:a.map(u=>i.jsx("button",{className:`view-tab${e===u?" is-active":""}`,onClick:()=>t(u),children:o[u]},u))}),e==="profile"&&i.jsx(jh,{currentUser:r,setCurrentUser:l}),e==="tokens"&&i.jsx(Nh,{}),e==="instance"&&s&&i.jsx(Ch,{}),e==="cookies"&&s&&i.jsx(Eh,{}),e==="extensions"&&s&&i.jsx(Th,{}),e==="storage"&&s&&i.jsx(_h,{archiveId:n})]})}function jh({currentUser:e,setCurrentUser:t}){const[n,r]=h.useState((e==null?void 0:e.display_name)??""),[l,s]=h.useState(!1),[a,o]=h.useState(null),[u,c]=h.useState(""),[y,m]=h.useState(""),[g,x]=h.useState(""),[k,S]=h.useState(!1),[D,f]=h.useState(null);async function d(w){w.preventDefault(),s(!0),o(null);try{await zp(n),t(j=>({...j,display_name:n||null})),o({ok:!0,text:"Saved."})}catch(j){o({ok:!1,text:j.message})}finally{s(!1)}}async function v(w){if(w.preventDefault(),y!==g){f({ok:!1,text:"Passwords do not match."});return}S(!0),f(null);try{await Op(u,y),c(""),m(""),x(""),f({ok:!0,text:"Password changed."})}catch(j){f({ok:!1,text:j.message})}finally{S(!1)}}return i.jsxs("div",{style:{maxWidth:440},children:[i.jsxs("div",{className:"form-section",children:[i.jsx("h2",{children:"Display Name"}),i.jsxs("form",{onSubmit:d,children:[i.jsxs("div",{className:"form-field",children:[i.jsx("label",{className:"form-label",htmlFor:"display-name",children:"Name shown in the UI"}),i.jsx("input",{className:"field-input",id:"display-name",placeholder:(e==null?void 0:e.username)??"",value:n,onChange:w=>r(w.target.value)})]}),a&&i.jsx("div",{className:`form-msg form-msg--${a.ok?"ok":"err"}`,children:a.text}),i.jsx("button",{className:"btn-primary",type:"submit",disabled:l,children:l?"Saving…":"Save"})]})]}),i.jsxs("div",{className:"form-section",children:[i.jsx("h2",{children:"Display Preferences"}),i.jsxs("label",{className:"checkbox-row",children:[i.jsx("input",{type:"checkbox",checked:(e==null?void 0:e.humanize_slugs)??!1,onChange:async w=>{const j=w.target.checked;try{await Dp({humanize_slugs:j}),t(E=>({...E,humanize_slugs:j}))}catch{}}}),i.jsx("span",{className:"form-label",style:{margin:0},children:"Humanize tag display"})]}),i.jsx("p",{className:"muted",style:{fontSize:13,margin:"4px 0 0"},children:'When on, tag paths show as "X / Articles" instead of "x/articles".'})]}),i.jsxs("div",{className:"form-section",children:[i.jsx("h2",{children:"Change Password"}),i.jsxs("form",{onSubmit:v,children:[i.jsxs("div",{className:"form-field",children:[i.jsx("label",{className:"form-label",htmlFor:"cur-pw",children:"Current password"}),i.jsx("input",{className:"field-input",id:"cur-pw",type:"password",value:u,onChange:w=>c(w.target.value),required:!0})]}),i.jsxs("div",{className:"form-field",children:[i.jsx("label",{className:"form-label",htmlFor:"new-pw",children:"New password"}),i.jsx("input",{className:"field-input",id:"new-pw",type:"password",value:y,onChange:w=>m(w.target.value),required:!0})]}),i.jsxs("div",{className:"form-field",children:[i.jsx("label",{className:"form-label",htmlFor:"confirm-pw",children:"Confirm new password"}),i.jsx("input",{className:"field-input",id:"confirm-pw",type:"password",value:g,onChange:w=>x(w.target.value),required:!0})]}),D&&i.jsx("div",{className:`form-msg form-msg--${D.ok?"ok":"err"}`,children:D.text}),i.jsx("button",{className:"btn-primary",type:"submit",disabled:k,children:k?"Changing…":"Change Password"})]})]})]})}function Nh(){const[e,t]=h.useState([]),[n,r]=h.useState(!0),[l,s]=h.useState(null),[a,o]=h.useState(""),[u,c]=h.useState(!1),[y,m]=h.useState(null),g=h.useCallback(async()=>{r(!0),s(null);try{t(await $p())}catch(S){s(S.message)}finally{r(!1)}},[]);h.useEffect(()=>{g()},[g]);async function x(S){if(S.preventDefault(),!!a.trim()){c(!0);try{const D=await Mp(a.trim());m(D),o(""),g()}catch(D){s(D.message)}finally{c(!1)}}}async function k(S){try{await Fp(S),t(D=>D.filter(f=>f.token_uid!==S))}catch(D){s(D.message)}}return i.jsx("div",{style:{maxWidth:600},children:i.jsxs("div",{className:"form-section",children:[i.jsx("h2",{children:"API Tokens"}),y&&i.jsxs("div",{className:"token-banner",children:[i.jsx("strong",{children:"Token created."})," Copy it now — it won't be shown again.",i.jsx("code",{children:y.raw_token}),i.jsx("button",{className:"token-dismiss",onClick:()=>m(null),children:"Dismiss"})]}),i.jsxs("form",{className:"token-create-row",onSubmit:x,children:[i.jsx("input",{className:"field-input field-input--flex",placeholder:"Token name",value:a,onChange:S=>o(S.target.value),required:!0}),i.jsx("button",{className:"btn-primary",type:"submit",disabled:u,children:u?"Creating…":"Create token"})]}),l&&i.jsx("div",{className:"form-msg form-msg--err",children:l}),n?i.jsx("div",{className:"muted",children:"Loading…"}):i.jsxs("div",{children:[e.length===0&&i.jsx("div",{className:"muted",children:"No tokens yet."}),e.map(S=>i.jsxs("div",{className:"token-row",children:[i.jsxs("div",{className:"token-row-info",children:[i.jsx("strong",{children:S.name}),i.jsxs("div",{className:"muted",children:["Created ",S.created_at.slice(0,10),S.last_used_at&&` · Last used ${S.last_used_at.slice(0,10)}`]})]}),i.jsx("button",{className:"btn-danger",style:{fontSize:12,padding:"4px 10px"},onClick:()=>k(S.token_uid),children:"Revoke"})]},S.token_uid))]})]})})}function Ch(){const[e,t]=h.useState(null),[n,r]=h.useState(!0),[l,s]=h.useState(null),[a,o]=h.useState(!1),[u,c]=h.useState(null);h.useEffect(()=>{(async()=>{try{t(await la())}catch(m){s(m.message)}finally{r(!1)}})()},[]);async function y(m){m.preventDefault(),o(!0),c(null);try{await ai(e),c({ok:!0,text:"Saved."})}catch(g){c({ok:!1,text:g.message})}finally{o(!1)}}return n?i.jsx("div",{className:"muted",children:"Loading…"}):l?i.jsx("div",{className:"form-msg form-msg--err",children:l}):e?i.jsx("div",{style:{maxWidth:440},children:i.jsxs("div",{className:"form-section",children:[i.jsx("h2",{children:"Instance Settings"}),i.jsxs("form",{onSubmit:y,children:[[["public_index_enabled","Public index (unauthenticated browsing)"],["public_entry_content_enabled","Public entry content"],["open_registration_enabled","Open registration"]].map(([m,g])=>i.jsxs("label",{className:"checkbox-row",children:[i.jsx("input",{type:"checkbox",checked:!!e[m],onChange:x=>t(k=>({...k,[m]:x.target.checked}))}),g]},m)),i.jsxs("div",{className:"form-field",style:{marginTop:4},children:[i.jsx("label",{className:"form-label",children:"Default entry visibility"}),i.jsxs("select",{className:"field-input",value:e.default_entry_visibility,onChange:m=>t(g=>({...g,default_entry_visibility:Number(m.target.value)})),children:[i.jsx("option",{value:0,children:"Private"}),i.jsx("option",{value:2,children:"Unlisted"}),i.jsx("option",{value:3,children:"Public"})]})]}),u&&i.jsx("div",{className:`form-msg form-msg--${u.ok?"ok":"err"}`,children:u.text}),i.jsx("button",{className:"btn-primary",type:"submit",disabled:a,children:a?"Saving…":"Save Settings"})]})]})}):null}function ps(e){if(e===0)return"0 B";const t=["B","KB","MB","GB","TB"],n=Math.floor(Math.log(e)/Math.log(1024));return`${(e/Math.pow(1024,n)).toFixed(n===0?0:1)} ${t[n]}`}function _h({archiveId:e}){const[t,n]=h.useState("idle"),[r,l]=h.useState(null),[s,a]=h.useState(null),[o,u]=h.useState(null);function c(){n("idle"),l(null),a(null),u(null)}async function y(){n("scanning"),u(null),l(null);try{const x=await Gp(e);l(x),n("scanned")}catch(x){u(x.message),n("error")}}async function m(){n("deleting"),u(null);try{const x=await qp(e);a(x),n("done")}catch(x){u(x.message),n("error")}}const g=r&&r.deletable_files===0&&r.orphaned_blob_rows===0;return i.jsx("div",{style:{maxWidth:440},children:i.jsxs("div",{className:"form-section",children:[i.jsx("h2",{children:"Orphan Cleanup"}),i.jsxs("p",{className:"muted",style:{marginBottom:16},children:["Scan for blob files and database records that are no longer referenced by any archive entry and safely delete them."," ",i.jsx("strong",{children:"Cleanup is blocked while captures are running."})]}),!e&&i.jsx("div",{className:"muted",children:"No archive selected."}),e&&t==="idle"&&i.jsx("button",{className:"btn-ghost",onClick:y,children:"Scan for orphaned blobs"}),t==="scanning"&&i.jsx("div",{className:"muted",children:"Scanning…"}),t==="scanned"&&r&&g&&i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"form-msg form-msg--ok",children:"Archive is clean — nothing to remove."}),i.jsx("button",{className:"btn-ghost",style:{marginTop:10},onClick:c,children:"Done"})]}),t==="scanned"&&r&&!g&&i.jsxs("div",{children:[i.jsxs("div",{style:{marginBottom:14,lineHeight:1.6},children:["Found ",i.jsx("strong",{children:r.deletable_files})," unreferenced file",r.deletable_files!==1?"s":""," ","and ",i.jsx("strong",{children:r.orphaned_blob_rows})," orphaned DB record",r.orphaned_blob_rows!==1?"s":""," ","— ",i.jsx("strong",{children:ps(r.total_bytes)})," recoverable."]}),i.jsxs("div",{style:{display:"flex",gap:8},children:[i.jsxs("button",{className:"btn-danger",onClick:m,children:["Delete (",ps(r.total_bytes),")"]}),i.jsx("button",{className:"btn-ghost",onClick:c,children:"Cancel"})]})]}),t==="deleting"&&i.jsx("div",{className:"muted",children:"Deleting…"}),t==="done"&&s&&i.jsxs("div",{children:[i.jsxs("div",{className:"form-msg form-msg--ok",children:["Freed ",i.jsx("strong",{children:ps(s.freed_bytes)})," ","— removed ",s.deleted_files," file",s.deleted_files!==1?"s":""," ","and ",s.deleted_blob_rows," DB record",s.deleted_blob_rows!==1?"s":"","."]}),s.errors&&s.errors.length>0&&i.jsxs("div",{className:"form-msg form-msg--err",style:{marginTop:6},children:[s.errors.length," file",s.errors.length!==1?"s":""," could not be deleted."]}),i.jsx("button",{className:"btn-ghost",style:{marginTop:10},onClick:c,children:"Scan again"})]}),t==="error"&&i.jsxs("div",{children:[i.jsx("div",{className:"form-msg form-msg--err",children:o}),i.jsx("button",{className:"btn-ghost",style:{marginTop:10},onClick:c,children:"Try again"})]})]})})}function Eh(){const[e,t]=h.useState(null),[n,r]=h.useState(!0),[l,s]=h.useState(null),[a,o]=h.useState("global"),[u,c]=h.useState(""),[y,m]=h.useState("{}"),[g,x]=h.useState(null),[k,S]=h.useState(!1),[D,f]=h.useState({});h.useEffect(()=>{d()},[]);async function d(){r(!0),s(null);try{t(await Zp())}catch(N){s(N.message)}finally{r(!1)}}async function v(N){N.preventDefault();try{JSON.parse(y)}catch{x({ok:!1,text:'cookies must be valid JSON, e.g. {"session": "abc"}'});return}S(!0),x(null);try{await eh(a==="global"?null:u.trim(),a,y),c(""),m("{}"),o("global"),x({ok:!0,text:"Rule added."}),await d()}catch(F){x({ok:!1,text:F.message})}finally{S(!1)}}async function w(N){try{await nh(N),await d()}catch(F){s(F.message)}}function j(N){f(F=>({...F,[N.rule_uid]:{cookiesInput:N.cookies_json,saving:!1,msg:null}}))}function E(N){f(F=>{const $={...F};return delete $[N],$})}async function T(N){const F=D[N.rule_uid];try{JSON.parse(F.cookiesInput)}catch{f($=>({...$,[N.rule_uid]:{...$[N.rule_uid],msg:{ok:!1,text:"Invalid JSON"}}}));return}f($=>({...$,[N.rule_uid]:{...$[N.rule_uid],saving:!0,msg:null}}));try{await th(N.rule_uid,{cookies_json:F.cookiesInput}),E(N.rule_uid),await d()}catch($){f(J=>({...J,[N.rule_uid]:{...J[N.rule_uid],saving:!1,msg:{ok:!1,text:$.message}}}))}}return n?i.jsx("div",{className:"muted",children:"Loading…"}):l?i.jsx("div",{className:"form-msg form-msg--err",children:l}):i.jsx("div",{style:{maxWidth:560},children:i.jsxs("div",{className:"form-section",children:[i.jsx("h2",{children:"Cookie Rules"}),i.jsx("p",{className:"muted",style:{marginBottom:12},children:"Cookies are injected into every capture network request (yt-dlp, HTTP downloads, web-page snapshots). Global rules apply to all URLs; wildcard and regex rules apply only to matching URLs."}),e&&e.length>0?i.jsxs("table",{className:"data-table",style:{width:"100%",marginBottom:16},children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Pattern"}),i.jsx("th",{children:"Cookies"}),i.jsx("th",{style:{width:100},children:"Actions"})]})}),i.jsx("tbody",{children:e.map(N=>{const F=D[N.rule_uid],$=N.url_pattern?i.jsxs(i.Fragment,{children:[i.jsxs("span",{className:"muted",children:[N.pattern_kind,":"]})," ",i.jsx("code",{children:N.url_pattern})]}):i.jsx("span",{className:"muted",children:"global (all URLs)"});return i.jsxs("tr",{children:[i.jsx("td",{children:$}),i.jsx("td",{children:F?i.jsxs(i.Fragment,{children:[i.jsx("textarea",{className:"field-input",style:{fontFamily:"monospace",fontSize:12,width:"100%",minHeight:60},value:F.cookiesInput,onChange:J=>f(se=>({...se,[N.rule_uid]:{...se[N.rule_uid],cookiesInput:J.target.value}}))}),F.msg&&i.jsx("div",{className:`form-msg form-msg--${F.msg.ok?"ok":"err"}`,children:F.msg.text}),i.jsxs("div",{style:{display:"flex",gap:8,marginTop:4},children:[i.jsx("button",{className:"btn-primary",style:{fontSize:12,padding:"2px 8px"},disabled:F.saving,onClick:()=>T(N),children:F.saving?"Saving…":"Save"}),i.jsx("button",{className:"btn-secondary",style:{fontSize:12,padding:"2px 8px"},onClick:()=>E(N.rule_uid),children:"Cancel"})]})]}):i.jsx("code",{style:{fontSize:12,wordBreak:"break-all"},children:N.cookies_json})}),i.jsx("td",{children:!F&&i.jsxs("div",{style:{display:"flex",gap:6},children:[i.jsx("button",{className:"btn-secondary",style:{fontSize:12,padding:"2px 8px"},onClick:()=>j(N),children:"Edit"}),i.jsx("button",{className:"btn-danger",style:{fontSize:12,padding:"2px 8px"},onClick:()=>w(N.rule_uid),children:"Del"})]})})]},N.rule_uid)})})]}):i.jsx("p",{className:"muted",style:{marginBottom:16},children:"No cookie rules defined."}),i.jsx("h3",{style:{marginBottom:8},children:"Add Rule"}),i.jsxs("form",{onSubmit:v,children:[i.jsxs("div",{className:"form-field",children:[i.jsx("label",{className:"form-label",children:"Pattern type"}),i.jsxs("select",{className:"field-input",value:a,onChange:N=>o(N.target.value),children:[i.jsx("option",{value:"global",children:"Global (all URLs)"}),i.jsx("option",{value:"wildcard",children:"Wildcard (e.g. *.youtube.com)"}),i.jsx("option",{value:"regex",children:"Regex (matched against full URL)"})]})]}),a!=="global"&&i.jsxs("div",{className:"form-field",children:[i.jsx("label",{className:"form-label",children:a==="wildcard"?"URL/hostname pattern":"Regex pattern"}),i.jsx("input",{className:"field-input",type:"text",value:u,onChange:N=>c(N.target.value),placeholder:a==="wildcard"?"*.youtube.com or https://example.com/*":".*\\.youtube\\.com.*",required:!0})]}),i.jsxs("div",{className:"form-field",children:[i.jsx("label",{className:"form-label",children:"Cookies (JSON object)"}),i.jsx("textarea",{className:"field-input",style:{fontFamily:"monospace",fontSize:13,minHeight:70},value:y,onChange:N=>m(N.target.value),placeholder:'{"SESSION": "abc123", "token": "xyz"}',required:!0})]}),g&&i.jsx("div",{className:`form-msg form-msg--${g.ok?"ok":"err"}`,children:g.text}),i.jsx("button",{className:"btn-primary",type:"submit",disabled:k,children:k?"Adding…":"Add Rule"})]})]})})}function Th(){const[e,t]=h.useState(null),[n,r]=h.useState(!0),[l,s]=h.useState(!1),[a,o]=h.useState(null);h.useEffect(()=>{(async()=>{try{t(await la())}catch(k){o({ok:!1,text:k.message})}finally{r(!1)}})()},[]);async function u(k){s(!0),o(null);try{await ai({ublock_enabled:k}),t(S=>({...S,ublock_enabled:k})),o({ok:!0,text:"Saved."})}catch(S){o({ok:!1,text:S.message})}finally{s(!1)}}async function c(k){s(!0),o(null);try{await ai({cookie_ext_enabled:k}),t(S=>({...S,cookie_ext_enabled:k})),o({ok:!0,text:"Saved."})}catch(S){o({ok:!1,text:S.message})}finally{s(!1)}}if(n)return i.jsx("div",{className:"muted",children:"Loading\\u2026"});const y=(e==null?void 0:e.ublock_ext_available)??!1,m=(e==null?void 0:e.ublock_enabled)??!0,g=(e==null?void 0:e.cookie_ext_available)??!1,x=(e==null?void 0:e.cookie_ext_enabled)??!0;return i.jsx("div",{style:{maxWidth:560},children:i.jsxs("div",{className:"form-section",children:[i.jsx("h2",{children:"Extensions"}),i.jsx("p",{className:"form-hint",style:{marginBottom:20},children:"Extensions run inside the browser during WebPage captures and can block ads, accept cookie banners, and more. Changes take effect on the next capture."}),i.jsx("div",{className:"ext-card",children:i.jsxs("div",{className:"ext-card-header",children:[i.jsxs("div",{className:"ext-card-info",children:[i.jsx("span",{className:"ext-card-name",children:"uBlock Origin Lite"}),i.jsx("span",{className:"ext-card-desc",children:"Blocks ads, trackers, and other page clutter during archiving via Chrome’s declarativeNetRequest API (Manifest V3)."}),!y&&i.jsxs("span",{className:"ext-card-hint",children:["Not configured — set ",i.jsx("code",{children:"ARCHIVR_UBLOCK_EXT"})," to the unpacked extension directory to enable."]})]}),i.jsx("button",{type:"button",role:"switch","aria-checked":m,className:`ext-toggle${m?" ext-toggle--on":""}`,onClick:()=>u(!m),disabled:l,"aria-label":"Toggle uBlock Origin Lite",children:i.jsx("span",{className:"ext-toggle-knob"})})]})}),i.jsx("div",{className:"ext-card",children:i.jsxs("div",{className:"ext-card-header",children:[i.jsxs("div",{className:"ext-card-info",children:[i.jsx("span",{className:"ext-card-name",children:"I Still Don’t Care About Cookies"}),i.jsx("span",{className:"ext-card-desc",children:"Dismiss cookie consent banners during archiving."}),!g&&i.jsxs("span",{className:"ext-card-hint",children:["Not configured — set ",i.jsx("code",{children:"ARCHIVR_COOKIE_EXT"})," to the unpacked extension directory to enable."]})]}),i.jsx("button",{type:"button",role:"switch","aria-checked":x,className:`ext-toggle${x?" ext-toggle--on":""}`,onClick:()=>c(!x),disabled:l,"aria-label":"Toggle I Still Don't Care About Cookies",children:i.jsx("span",{className:"ext-toggle-knob"})})]})}),a&&i.jsx("div",{className:`form-msg form-msg--${a.ok?"ok":"err"}`,children:a.text})]})})}const xo={0:"Private",1:"Public",2:"Users only",3:"Public"},Ph=()=>i.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:i.jsx("path",{d:"M7 17 17 7M9 7h8v8"})});function Lh({archiveId:e,selectedEntry:t,onTagFilterSet:n,tagNodes:r,onTagsRefresh:l,onEntryTitleChange:s,onEntryDeleted:a,humanizeTags:o}){const[u,c]=h.useState(null),[y,m]=h.useState([]),[g,x]=h.useState(""),[k,S]=h.useState([]),[D,f]=h.useState(""),d=h.useRef(0),v=h.useRef(!1),[w,j]=h.useState(!1),[E,T]=h.useState("");h.useEffect(()=>{if(!t||!e){c(null),m([]),S([]);return}j(!1),T(""),v.current=!1;const O=++d.current;c(null),m([]),Promise.all([vp(e,t.entry_uid),ds(e,t.entry_uid),Xp(e,t.entry_uid)]).then(([K,ye,Ee])=>{O===d.current&&(c(K),m(ye),S(Ee))}).catch(()=>{})},[t,e]);async function N(){const O=E.trim()||null;try{await yp(e,t.entry_uid,O),c(K=>K&&{...K,summary:{...K.summary,title:O}}),s==null||s(t.entry_uid,O)}catch{}finally{j(!1)}}async function F(){const O=g.trim();if(!(!O||!t))try{await xp(e,t.entry_uid,O),x(""),f("");const K=await ds(e,t.entry_uid);m(K),l()}catch(K){f(K.message)}}async function $(O){try{await wp(e,t.entry_uid,O);const K=await ds(e,t.entry_uid);m(K),l()}catch{}}async function J(){if(!(!t||!e)&&window.confirm("Delete this entry? This cannot be undone."))try{await kp(e,t.entry_uid),a==null||a(t.entry_uid)}catch{}}const se=u?[["Added",Oc(u.summary.archived_at)],["Source",u.summary.source_kind],["Type",u.summary.entity_kind],["Visibility",xo[u.summary.visibility]??u.summary.visibility],["Root",u.structured_root_relpath]]:[];return i.jsxs("aside",{className:"context-rail",children:[i.jsx("div",{className:"rail-eyebrow",children:"Context"}),t?u?i.jsxs(i.Fragment,{children:[w?i.jsx("input",{className:"rail-title-input",autoFocus:!0,value:E,onChange:O=>T(O.target.value),onKeyDown:O=>{O.key==="Enter"&&O.currentTarget.blur(),O.key==="Escape"&&(v.current=!0,O.currentTarget.blur())},onBlur:()=>{v.current?j(!1):N(),v.current=!1}}):i.jsxs("h2",{className:"rail-title rail-title--editable",title:"Click to rename",onClick:()=>{T(u.summary.title??""),j(!0)},children:[Bt(u.summary.title)||Bt(u.summary.entry_uid),i.jsx("svg",{className:"edit-icon",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:i.jsx("path",{d:"M11.5 2.5a1.5 1.5 0 0 1 2 2L5 13l-3 1 1-3 8.5-8.5z"})})]}),u.summary.original_url&&i.jsxs("a",{className:"url-tile",href:u.summary.original_url,target:"_blank",rel:"noopener noreferrer",children:[i.jsx("span",{className:"ico",dangerouslySetInnerHTML:{__html:$c(u.summary.source_kind)}}),i.jsx("span",{className:"u-text",children:u.summary.original_url}),i.jsx("span",{className:"ext",children:i.jsx(Ph,{})})]}),i.jsx("div",{className:"meta-list",children:se.filter(([,O])=>O!=null&&O!=="").map(([O,K])=>i.jsxs("div",{className:"meta-item",children:[i.jsx("span",{className:"meta-k",children:O}),i.jsx("span",{className:`meta-v${O==="Root"?" mono":""}`,children:Bt(K)})]},O))}),u.artifacts.length>0&&i.jsxs("div",{className:"rail-section",children:[i.jsxs("div",{className:"rail-section-heading",children:["Artifacts ",i.jsx("span",{className:"num",children:u.artifacts.length})]}),i.jsx("ul",{className:"artifact-list",children:u.artifacts.map((O,K)=>i.jsx("li",{children:i.jsxs("a",{href:`/api/archives/${e}/entries/${u.summary.entry_uid}/artifacts/${K}`,target:"_blank",rel:"noopener noreferrer",className:"artifact-link",children:[i.jsx("span",{className:"artifact-name",children:O.artifact_role.replace(/_/g," ")}),i.jsx("span",{className:"artifact-size",children:O.byte_size!=null?ui(O.byte_size):"—"})]})},K))})]})]}):i.jsx("p",{className:"tags-empty",children:"Loading…"}):i.jsx("p",{className:"tags-empty",children:"Select an entry."}),t&&i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"rail-section",children:[i.jsx("div",{className:"rail-section-heading",children:"Tags"}),y.length===0?i.jsx("p",{className:"tags-empty",children:"No tags yet."}):i.jsx("div",{className:"tags-wrap",children:y.map(O=>i.jsxs("span",{className:"tag-pill",title:O.full_path,children:[o?Mc(O.full_path):O.full_path,i.jsx("button",{className:"remove",title:`Remove tag ${O.full_path}`,onClick:()=>$(O.tag_uid),children:"×"})]},O.tag_uid))}),D&&i.jsx("p",{className:"form-msg form-msg--err",style:{margin:"0 0 8px"},children:D}),i.jsxs("div",{className:"tag-input-wrap",children:[i.jsx("span",{className:"hash",children:"/"}),i.jsx("input",{className:"tag-input",type:"text",placeholder:"science/cs",autoComplete:"off",value:g,onChange:O=>x(O.target.value),onKeyDown:O=>{O.key==="Enter"&&F()}}),i.jsx("button",{className:"tag-add-btn",onClick:F,children:"Add"})]})]}),k.length>0&&i.jsxs("div",{className:"rail-section",children:[i.jsx("div",{className:"rail-section-heading",children:"Collections"}),k.map(O=>i.jsxs("div",{className:"coll-row",children:[i.jsx("span",{className:"coll-name",children:O.collection_uid}),i.jsx("span",{className:"vis-badge",children:xo[O.visibility_bits]??`bits:${O.visibility_bits}`})]},O.collection_uid))]}),i.jsx("div",{className:"rail-delete-zone",children:i.jsx("button",{className:"rail-delete-btn",onClick:J,children:"Delete entry"})})]})]})}const Rh=7e3;function zh({toasts:e,onDismiss:t,onIgnoreUblock:n}){return e.length?i.jsx("div",{className:"toast-stack",role:"log","aria-live":"polite","aria-label":"Notifications",children:e.map(r=>i.jsx(Dh,{toast:r,onDismiss:t,onIgnoreUblock:n},r.id))}):null}function Dh({toast:e,onDismiss:t,onIgnoreUblock:n}){const[r,l]=h.useState(!1),s=e.type==="warning";h.useEffect(()=>{if(r)return;const o=setTimeout(()=>t(e.id),Rh);return()=>clearTimeout(o)},[r,e.id,t]);const a=e.locator?e.locator.length>48?e.locator.slice(0,45)+"…":e.locator:null;return s?i.jsxs("div",{className:"toast toast--warning",role:"alert","aria-atomic":"true",children:[i.jsxs("div",{className:"toast-top",children:[i.jsx("span",{className:"toast-icon","aria-hidden":"true",children:"⚠"}),i.jsxs("div",{className:"toast-body",children:[i.jsx("span",{className:"toast-headline",children:"Ad-blocking unavailable"}),a&&i.jsx("span",{className:"toast-locator",children:a})]}),i.jsxs("div",{className:"toast-btns",children:[i.jsx("button",{type:"button",className:"toast-view-btn",onClick:()=>l(o=>!o),"aria-expanded":r,children:r?"Hide":"Details"}),i.jsx("button",{type:"button",className:"toast-view-btn toast-ignore-btn",onClick:()=>{n==null||n(),t(e.id)},children:"Ignore"}),i.jsx("button",{type:"button",className:"toast-dismiss",onClick:()=>t(e.id),"aria-label":"Dismiss",children:"×"})]})]}),r&&i.jsx("p",{className:"toast-warning-detail",children:e.text||"ARCHIVR_UBLOCK=true but ARCHIVR_UBLOCK_EXT is not set or the path is invalid. The page was captured without ad-blocking. Set ARCHIVR_UBLOCK_EXT to the unpacked uBlock Origin Lite extension directory to enable ad-blocking, or set ARCHIVR_UBLOCK=false to silence this warning."})]}):i.jsxs("div",{className:"toast toast--error",role:"alert","aria-atomic":"true",children:[i.jsxs("div",{className:"toast-top",children:[i.jsx("span",{className:"toast-icon","aria-hidden":"true",children:"✕"}),i.jsxs("div",{className:"toast-body",children:[i.jsx("span",{className:"toast-headline",children:"Capture failed"}),a&&i.jsx("span",{className:"toast-locator",children:a})]}),i.jsxs("div",{className:"toast-btns",children:[e.text&&i.jsx("button",{type:"button",className:"toast-view-btn",onClick:()=>l(o=>!o),children:r?"Hide":"View error"}),i.jsx("button",{type:"button",className:"toast-dismiss",onClick:()=>t(e.id),"aria-label":"Dismiss",children:"×"})]})]}),r&&e.text&&i.jsx("pre",{className:"toast-error-detail",children:e.text})]})}const Ol=h.createContext(null),Oh=["archive","tags","collections","runs","admin","settings"],$h=["profile","tokens","instance","storage"];function hs(){const e=window.location.pathname.split("/").filter(Boolean),t=Oh.includes(e[0])?e[0]:"archive",n=t==="settings"&&$h.includes(e[1])?e[1]:"profile";return{view:t,settingsTab:n}}function Mh(e,t){return e==="archive"?"/":e==="settings"?`/settings/${t}`:`/${e}`}function Fh(){const[e,t]=h.useState("loading"),[n,r]=h.useState(null);h.useEffect(()=>{(async()=>{if(await Ep()){t("setup");return}const b=await Rp();if(!b){t("login");return}r(b),t("authenticated")})()},[]),h.useEffect(()=>{const I=()=>{r(null),t("login")};return window.addEventListener("auth:expired",I),()=>window.removeEventListener("auth:expired",I)},[]),h.useEffect(()=>{const I=()=>{const{view:b,settingsTab:ce}=hs();f(b),v(ce)};return window.addEventListener("popstate",I),()=>window.removeEventListener("popstate",I)},[]);const[l,s]=h.useState([]),[a,o]=h.useState(null),[u,c]=h.useState([]),[y,m]=h.useState(null),[g,x]=h.useState(null),[k,S]=h.useState(null),[D,f]=h.useState(()=>hs().view),[d,v]=h.useState(()=>hs().settingsTab),[w,j]=h.useState(""),[E,T]=h.useState(""),[N,F]=h.useState(!1),[$,J]=h.useState([]),[se,O]=h.useState([]),[K,ye]=h.useState(()=>sessionStorage.getItem("captureDialogOpen")==="true"),[Ee,he]=h.useState([]),P=h.useRef(0),[p,C]=h.useState(()=>sessionStorage.getItem("ublockWarningIgnored")==="true"),M=(n==null?void 0:n.humanize_slugs)??!1;h.useEffect(()=>{sessionStorage.setItem("captureDialogOpen",K)},[K]);const R=h.useCallback(async(I,b,ce)=>{if(I){F(!0);try{let Ue;b||ce?Ue=await gp(I,b,ce):Ue=await mp(I),c(Ue),T(Ue.length===0?"No results":`${Ue.length} result${Ue.length===1?"":"s"}`)}catch{c([]),T("Search failed. Try again.")}finally{F(!1)}}},[]);h.useEffect(()=>{e==="authenticated"&&hp().then(I=>{if(s(I),I.length>0){const b=I[0].id;o(b)}})},[e]),h.useEffect(()=>{a&&(S(null),x(null),m(null),Promise.all([R(a,"",null),mo(a).then(J),fs(a).then(O)]))},[a]),h.useEffect(()=>{if(a===null)return;const I=setTimeout(()=>{R(a,w,k)},300);return()=>clearTimeout(I)},[w,a]),h.useEffect(()=>{a!==null&&(k!==null&&f("archive"),R(a,w,k))},[k,a]);const B=h.useCallback(I=>{o(I)},[]),A=h.useCallback(I=>{f(I),I==="tags"&&a&&fs(a).then(O)},[a]);h.useEffect(()=>{const I=Mh(D,d);window.location.pathname!==I&&history.pushState(null,"",I)},[D,d]);const V=h.useCallback(I=>{m(I?I.entry_uid:null),x(I)},[]),W=h.useCallback(I=>{S(I)},[]),re=h.useCallback(()=>{S(null)},[]),yr=h.useCallback(()=>{a&&fs(a).then(O)},[a]),$l=h.useCallback((I,b)=>{k===I?S(b):k!=null&&k.startsWith(I+"/")&&S(b+k.slice(I.length))},[k]),Ml=h.useCallback(I=>{(k===I||k!=null&&k.startsWith(I+"/"))&&S(null)},[k]),Fl=h.useCallback((I,b)=>{c(ce=>ce.map(Ue=>Ue.entry_uid===I?{...Ue,title:b}:Ue)),x(ce=>ce&&ce.entry_uid===I?{...ce,title:b}:ce)},[]),Il=h.useCallback(I=>{c(b=>b.filter(ce=>ce.entry_uid!==I)),x(b=>(b==null?void 0:b.entry_uid)===I?null:b),m(b=>b===I?null:b)},[]),L=h.useCallback(()=>{ye(!0)},[]),H=h.useCallback(()=>{ye(!1)},[]),De=h.useCallback(()=>{a&&Promise.all([R(a,w,k),mo(a).then(J)])},[a,w,k,R]),st=h.useCallback((I,b,ce="error")=>{if(ce==="warning"&&p)return;const Ue=++P.current;he(Uc=>[...Uc,{id:Ue,text:I,locator:b,type:ce}])},[p]),Ic=h.useCallback(I=>{he(b=>b.filter(ce=>ce.id!==I))},[]),Ac=h.useCallback(()=>{sessionStorage.setItem("ublockWarningIgnored","true"),C(!0),he(I=>I.filter(b=>b.type!=="warning"))},[]);return e==="loading"?i.jsx("div",{className:"auth-loading",children:"Loading\\u2026"}):e==="setup"?i.jsx(sh,{onComplete:()=>t("login")}):e==="login"?i.jsx(lh,{onLogin:I=>{r(I),t("authenticated")}}):i.jsx(Ol.Provider,{value:{currentUser:n,setCurrentUser:r},children:i.jsxs(i.Fragment,{children:[i.jsx(ih,{archives:l,archiveId:a,onArchiveChange:B,view:D,onViewChange:A,onCaptureClick:L}),i.jsxs("main",{className:"app-shell",children:[i.jsxs("div",{className:"workspace",children:[D==="archive"&&i.jsxs("div",{className:"toolbar",children:[i.jsxs("div",{className:"search-field",children:[i.jsx("span",{className:"ico","aria-hidden":"true",children:i.jsxs("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",children:[i.jsx("circle",{cx:"11",cy:"11",r:"7"}),i.jsx("line",{x1:"16.5",y1:"16.5",x2:"21",y2:"21"})]})}),i.jsx("input",{className:"search-input",type:"search","aria-label":"Search archive","aria-busy":N,placeholder:"Search titles, URLs, types, tags…",value:w,onChange:I=>j(I.target.value)}),i.jsx("span",{className:"kbd",children:"⌘K"})]}),i.jsxs("span",{className:"result-count",children:[E&&i.jsxs(i.Fragment,{children:[i.jsx("b",{children:E.split(" ")[0]})," ",E.split(" ").slice(1).join(" ")]}),k&&i.jsxs("button",{className:"tag-filter-badge",onClick:re,children:["× ",M?Mc(k):k]})]})]}),D==="archive"&&i.jsx(fh,{entries:u,selectedEntryUid:y,onSelectEntry:V,archiveId:a,tagFilter:k,onClearTagFilter:re,searchQuery:w,onSearchChange:j,resultCount:E,searchBusy:N}),D==="runs"&&i.jsx(mh,{runs:$}),D==="admin"&&i.jsx(vh,{archives:l}),D==="tags"&&i.jsx(yh,{archiveId:a,tagNodes:se,tagFilter:k,onTagFilterSet:W,onViewChange:A,onTagRenamed:$l,onTagDeleted:Ml,onTagsRefresh:yr,humanizeTags:M}),D==="collections"&&i.jsx(wh,{archiveId:a}),D==="settings"&&i.jsx(Sh,{tab:d,onTabChange:v,archiveId:a})]}),i.jsx(Lh,{archiveId:a,selectedEntry:g,onTagFilterSet:W,tagNodes:se,onTagsRefresh:yr,onEntryTitleChange:Fl,onEntryDeleted:Il,humanizeTags:M})]}),i.jsx(ah,{open:K,archiveId:a,onClose:H,onCaptured:De,onToast:st}),i.jsx(zh,{toasts:Ee,onDismiss:Ic,onIgnoreUblock:Ac})]})})}zc(document.getElementById("root")).render(i.jsx(h.StrictMode,{children:i.jsx(Fh,{})}));
|