projax 3.3.11 → 3.3.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -37,9 +37,11 @@ const electron_1 = require("electron");
37
37
  const path = __importStar(require("path"));
38
38
  const fs = __importStar(require("fs"));
39
39
  const child_process_1 = require("child_process");
40
+ const tail_1 = require("tail");
40
41
  const core_1 = require("./core");
41
42
  let mainWindow = null;
42
43
  let apiProcess = null;
44
+ const logWatchers = new Map();
43
45
  // Prevent multiple instances
44
46
  const gotTheLock = electron_1.app.requestSingleInstanceLock();
45
47
  if (!gotTheLock) {
@@ -633,3 +635,76 @@ electron_1.ipcMain.on('open-external-url', (event, url) => {
633
635
  console.error('Error opening external URL:', error);
634
636
  }
635
637
  });
638
+ // Watch process output
639
+ electron_1.ipcMain.handle('watch-process-output', async (_, pid) => {
640
+ try {
641
+ // Try bundled path first
642
+ const bundledScriptRunnerPath = path.join(__dirname, '..', 'script-runner.js');
643
+ const localScriptRunnerPath = path.join(__dirname, '..', '..', 'cli', 'dist', 'script-runner.js');
644
+ let scriptRunnerPath;
645
+ if (fs.existsSync(bundledScriptRunnerPath)) {
646
+ scriptRunnerPath = bundledScriptRunnerPath;
647
+ }
648
+ else {
649
+ scriptRunnerPath = localScriptRunnerPath;
650
+ }
651
+ const { getRunningProcessesClean } = await Promise.resolve(`${scriptRunnerPath}`).then(s => __importStar(require(s)));
652
+ const processes = await getRunningProcessesClean();
653
+ const process = processes.find((p) => p.pid === pid);
654
+ if (!process || !process.logFile) {
655
+ throw new Error(`Process ${pid} not found or has no log file`);
656
+ }
657
+ if (!fs.existsSync(process.logFile)) {
658
+ throw new Error(`Log file not found: ${process.logFile}`);
659
+ }
660
+ // Stop any existing watcher for this PID
661
+ if (logWatchers.has(pid)) {
662
+ const existingWatcher = logWatchers.get(pid);
663
+ existingWatcher.unwatch();
664
+ logWatchers.delete(pid);
665
+ }
666
+ // Read existing content first
667
+ try {
668
+ const existingContent = fs.readFileSync(process.logFile, 'utf-8');
669
+ if (existingContent && mainWindow) {
670
+ mainWindow.webContents.send('process-output', { pid, data: existingContent });
671
+ }
672
+ }
673
+ catch (error) {
674
+ console.error('Error reading existing log content:', error);
675
+ }
676
+ // Create a tail watcher for the log file
677
+ const tail = new tail_1.Tail(process.logFile, {
678
+ fromBeginning: false,
679
+ follow: true,
680
+ useWatchFile: true,
681
+ });
682
+ tail.on('line', (data) => {
683
+ if (mainWindow) {
684
+ mainWindow.webContents.send('process-output', { pid, data: data + '\n' });
685
+ }
686
+ });
687
+ tail.on('error', (error) => {
688
+ console.error(`Tail error for PID ${pid}:`, error);
689
+ if (mainWindow) {
690
+ mainWindow.webContents.send('process-output', { pid, data: `\n[Error reading log: ${error.message}]\n` });
691
+ }
692
+ });
693
+ logWatchers.set(pid, tail);
694
+ return { success: true };
695
+ }
696
+ catch (error) {
697
+ console.error('Error watching process output:', error);
698
+ throw error;
699
+ }
700
+ });
701
+ // Unwatch process output
702
+ electron_1.ipcMain.handle('unwatch-process-output', async (_, pid) => {
703
+ if (logWatchers.has(pid)) {
704
+ const watcher = logWatchers.get(pid);
705
+ watcher.unwatch();
706
+ logWatchers.delete(pid);
707
+ return { success: true };
708
+ }
709
+ return { success: false };
710
+ });
@@ -91,4 +91,26 @@ export interface ElectronAPI {
91
91
  };
92
92
  }) => Promise<void>;
93
93
  openExternal: (url: string) => void;
94
+ watchProcessOutput: (pid: number) => Promise<{
95
+ success: boolean;
96
+ }>;
97
+ unwatchProcessOutput: (pid: number) => Promise<{
98
+ success: boolean;
99
+ }>;
100
+ onProcessOutput: (callback: (event: any, data: {
101
+ pid: number;
102
+ data: string;
103
+ }) => void) => void;
104
+ onProcessExit: (callback: (event: any, data: {
105
+ pid: number;
106
+ code: number;
107
+ }) => void) => void;
108
+ removeProcessOutputListener: (callback: (event: any, data: {
109
+ pid: number;
110
+ data: string;
111
+ }) => void) => void;
112
+ removeProcessExitListener: (callback: (event: any, data: {
113
+ pid: number;
114
+ code: number;
115
+ }) => void) => void;
94
116
  }
@@ -28,4 +28,10 @@ electron_1.contextBridge.exposeInMainWorld('electronAPI', {
28
28
  openExternal: (url) => electron_1.ipcRenderer.send('open-external-url', url),
29
29
  getSettings: () => electron_1.ipcRenderer.invoke('get-settings'),
30
30
  saveSettings: (settings) => electron_1.ipcRenderer.invoke('save-settings', settings),
31
+ watchProcessOutput: (pid) => electron_1.ipcRenderer.invoke('watch-process-output', pid),
32
+ unwatchProcessOutput: (pid) => electron_1.ipcRenderer.invoke('unwatch-process-output', pid),
33
+ onProcessOutput: (callback) => electron_1.ipcRenderer.on('process-output', callback),
34
+ onProcessExit: (callback) => electron_1.ipcRenderer.on('process-exit', callback),
35
+ removeProcessOutputListener: (callback) => electron_1.ipcRenderer.removeListener('process-output', callback),
36
+ removeProcessExitListener: (callback) => electron_1.ipcRenderer.removeListener('process-exit', callback),
31
37
  });
@@ -0,0 +1,62 @@
1
+ (function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))r(i);new MutationObserver(i=>{for(const o of i)if(o.type==="childList")for(const l of o.addedNodes)l.tagName==="LINK"&&l.rel==="modulepreload"&&r(l)}).observe(document,{childList:!0,subtree:!0});function n(i){const o={};return i.integrity&&(o.integrity=i.integrity),i.referrerPolicy&&(o.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?o.credentials="include":i.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function r(i){if(i.ep)return;i.ep=!0;const o=n(i);fetch(i.href,o)}})();function Ja(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function Rf(e){if(e.__esModule)return e;var t=e.default;if(typeof t=="function"){var n=function r(){return this instanceof r?Reflect.construct(t,arguments,this.constructor):t.apply(this,arguments)};n.prototype=t.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(e).forEach(function(r){var i=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(n,r,i.get?i:{enumerable:!0,get:function(){return e[r]}})}),n}var ba={exports:{}},Wi={},qa={exports:{}},F={};/**
2
+ * @license React
3
+ * react.production.min.js
4
+ *
5
+ * Copyright (c) Facebook, Inc. and its affiliates.
6
+ *
7
+ * This source code is licensed under the MIT license found in the
8
+ * LICENSE file in the root directory of this source tree.
9
+ */var zr=Symbol.for("react.element"),Tf=Symbol.for("react.portal"),Mf=Symbol.for("react.fragment"),Of=Symbol.for("react.strict_mode"),Lf=Symbol.for("react.profiler"),If=Symbol.for("react.provider"),Af=Symbol.for("react.context"),Ff=Symbol.for("react.forward_ref"),Wf=Symbol.for("react.suspense"),Uf=Symbol.for("react.memo"),Hf=Symbol.for("react.lazy"),Ls=Symbol.iterator;function Bf(e){return e===null||typeof e!="object"?null:(e=Ls&&e[Ls]||e["@@iterator"],typeof e=="function"?e:null)}var eu={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},tu=Object.assign,nu={};function Wn(e,t,n){this.props=e,this.context=t,this.refs=nu,this.updater=n||eu}Wn.prototype.isReactComponent={};Wn.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")};Wn.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function ru(){}ru.prototype=Wn.prototype;function Rl(e,t,n){this.props=e,this.context=t,this.refs=nu,this.updater=n||eu}var Tl=Rl.prototype=new ru;Tl.constructor=Rl;tu(Tl,Wn.prototype);Tl.isPureReactComponent=!0;var Is=Array.isArray,iu=Object.prototype.hasOwnProperty,Ml={current:null},ou={key:!0,ref:!0,__self:!0,__source:!0};function lu(e,t,n){var r,i={},o=null,l=null;if(t!=null)for(r in t.ref!==void 0&&(l=t.ref),t.key!==void 0&&(o=""+t.key),t)iu.call(t,r)&&!ou.hasOwnProperty(r)&&(i[r]=t[r]);var s=arguments.length-2;if(s===1)i.children=n;else if(1<s){for(var a=Array(s),u=0;u<s;u++)a[u]=arguments[u+2];i.children=a}if(e&&e.defaultProps)for(r in s=e.defaultProps,s)i[r]===void 0&&(i[r]=s[r]);return{$$typeof:zr,type:e,key:o,ref:l,props:i,_owner:Ml.current}}function $f(e,t){return{$$typeof:zr,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}function Ol(e){return typeof e=="object"&&e!==null&&e.$$typeof===zr}function Vf(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,function(n){return t[n]})}var As=/\/+/g;function lo(e,t){return typeof e=="object"&&e!==null&&e.key!=null?Vf(""+e.key):t.toString(36)}function ri(e,t,n,r,i){var o=typeof e;(o==="undefined"||o==="boolean")&&(e=null);var l=!1;if(e===null)l=!0;else switch(o){case"string":case"number":l=!0;break;case"object":switch(e.$$typeof){case zr:case Tf:l=!0}}if(l)return l=e,i=i(l),e=r===""?"."+lo(l,0):r,Is(i)?(n="",e!=null&&(n=e.replace(As,"$&/")+"/"),ri(i,t,n,"",function(u){return u})):i!=null&&(Ol(i)&&(i=$f(i,n+(!i.key||l&&l.key===i.key?"":(""+i.key).replace(As,"$&/")+"/")+e)),t.push(i)),1;if(l=0,r=r===""?".":r+":",Is(e))for(var s=0;s<e.length;s++){o=e[s];var a=r+lo(o,s);l+=ri(o,t,n,a,i)}else if(a=Bf(e),typeof a=="function")for(e=a.call(e),s=0;!(o=e.next()).done;)o=o.value,a=r+lo(o,s++),l+=ri(o,t,n,a,i);else if(o==="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 l}function Lr(e,t,n){if(e==null)return e;var r=[],i=0;return ri(e,r,"","",function(o){return t.call(n,o,i++)}),r}function Xf(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 De={current:null},ii={transition:null},Qf={ReactCurrentDispatcher:De,ReactCurrentBatchConfig:ii,ReactCurrentOwner:Ml};function su(){throw Error("act(...) is not supported in production builds of React.")}F.Children={map:Lr,forEach:function(e,t,n){Lr(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return Lr(e,function(){t++}),t},toArray:function(e){return Lr(e,function(t){return t})||[]},only:function(e){if(!Ol(e))throw Error("React.Children.only expected to receive a single React element child.");return e}};F.Component=Wn;F.Fragment=Mf;F.Profiler=Lf;F.PureComponent=Rl;F.StrictMode=Of;F.Suspense=Wf;F.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Qf;F.act=su;F.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=tu({},e.props),i=e.key,o=e.ref,l=e._owner;if(t!=null){if(t.ref!==void 0&&(o=t.ref,l=Ml.current),t.key!==void 0&&(i=""+t.key),e.type&&e.type.defaultProps)var s=e.type.defaultProps;for(a in t)iu.call(t,a)&&!ou.hasOwnProperty(a)&&(r[a]=t[a]===void 0&&s!==void 0?s[a]:t[a])}var a=arguments.length-2;if(a===1)r.children=n;else if(1<a){s=Array(a);for(var u=0;u<a;u++)s[u]=arguments[u+2];r.children=s}return{$$typeof:zr,type:e.type,key:i,ref:o,props:r,_owner:l}};F.createContext=function(e){return e={$$typeof:Af,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},e.Provider={$$typeof:If,_context:e},e.Consumer=e};F.createElement=lu;F.createFactory=function(e){var t=lu.bind(null,e);return t.type=e,t};F.createRef=function(){return{current:null}};F.forwardRef=function(e){return{$$typeof:Ff,render:e}};F.isValidElement=Ol;F.lazy=function(e){return{$$typeof:Hf,_payload:{_status:-1,_result:e},_init:Xf}};F.memo=function(e,t){return{$$typeof:Uf,type:e,compare:t===void 0?null:t}};F.startTransition=function(e){var t=ii.transition;ii.transition={};try{e()}finally{ii.transition=t}};F.unstable_act=su;F.useCallback=function(e,t){return De.current.useCallback(e,t)};F.useContext=function(e){return De.current.useContext(e)};F.useDebugValue=function(){};F.useDeferredValue=function(e){return De.current.useDeferredValue(e)};F.useEffect=function(e,t){return De.current.useEffect(e,t)};F.useId=function(){return De.current.useId()};F.useImperativeHandle=function(e,t,n){return De.current.useImperativeHandle(e,t,n)};F.useInsertionEffect=function(e,t){return De.current.useInsertionEffect(e,t)};F.useLayoutEffect=function(e,t){return De.current.useLayoutEffect(e,t)};F.useMemo=function(e,t){return De.current.useMemo(e,t)};F.useReducer=function(e,t,n){return De.current.useReducer(e,t,n)};F.useRef=function(e){return De.current.useRef(e)};F.useState=function(e){return De.current.useState(e)};F.useSyncExternalStore=function(e,t,n){return De.current.useSyncExternalStore(e,t,n)};F.useTransition=function(){return De.current.useTransition()};F.version="18.3.1";qa.exports=F;var _=qa.exports;const Ll=Ja(_);/**
10
+ * @license React
11
+ * react-jsx-runtime.production.min.js
12
+ *
13
+ * Copyright (c) Facebook, Inc. and its affiliates.
14
+ *
15
+ * This source code is licensed under the MIT license found in the
16
+ * LICENSE file in the root directory of this source tree.
17
+ */var Yf=_,Kf=Symbol.for("react.element"),Gf=Symbol.for("react.fragment"),Zf=Object.prototype.hasOwnProperty,Jf=Yf.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,bf={key:!0,ref:!0,__self:!0,__source:!0};function au(e,t,n){var r,i={},o=null,l=null;n!==void 0&&(o=""+n),t.key!==void 0&&(o=""+t.key),t.ref!==void 0&&(l=t.ref);for(r in t)Zf.call(t,r)&&!bf.hasOwnProperty(r)&&(i[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps,t)i[r]===void 0&&(i[r]=t[r]);return{$$typeof:Kf,type:e,key:o,ref:l,props:i,_owner:Jf.current}}Wi.Fragment=Gf;Wi.jsx=au;Wi.jsxs=au;ba.exports=Wi;var d=ba.exports,Ao={},uu={exports:{}},Xe={},cu={exports:{}},fu={};/**
18
+ * @license React
19
+ * scheduler.production.min.js
20
+ *
21
+ * Copyright (c) Facebook, Inc. and its affiliates.
22
+ *
23
+ * This source code is licensed under the MIT license found in the
24
+ * LICENSE file in the root directory of this source tree.
25
+ */(function(e){function t(z,O){var R=z.length;z.push(O);e:for(;0<R;){var Y=R-1>>>1,ne=z[Y];if(0<i(ne,O))z[Y]=O,z[R]=ne,R=Y;else break e}}function n(z){return z.length===0?null:z[0]}function r(z){if(z.length===0)return null;var O=z[0],R=z.pop();if(R!==O){z[0]=R;e:for(var Y=0,ne=z.length,L=ne>>>1;Y<L;){var M=2*(Y+1)-1,W=z[M],U=M+1,le=z[U];if(0>i(W,R))U<ne&&0>i(le,W)?(z[Y]=le,z[U]=R,Y=U):(z[Y]=W,z[M]=R,Y=M);else if(U<ne&&0>i(le,R))z[Y]=le,z[U]=R,Y=U;else break e}}return O}function i(z,O){var R=z.sortIndex-O.sortIndex;return R!==0?R:z.id-O.id}if(typeof performance=="object"&&typeof performance.now=="function"){var o=performance;e.unstable_now=function(){return o.now()}}else{var l=Date,s=l.now();e.unstable_now=function(){return l.now()-s}}var a=[],u=[],m=1,h=null,g=3,S=!1,w=!1,y=!1,D=typeof setTimeout=="function"?setTimeout:null,p=typeof clearTimeout=="function"?clearTimeout:null,c=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function f(z){for(var O=n(u);O!==null;){if(O.callback===null)r(u);else if(O.startTime<=z)r(u),O.sortIndex=O.expirationTime,t(a,O);else break;O=n(u)}}function v(z){if(y=!1,f(z),!w)if(n(a)!==null)w=!0,b(x);else{var O=n(u);O!==null&&Ce(v,O.startTime-z)}}function x(z,O){w=!1,y&&(y=!1,p(C),C=-1),S=!0;var R=g;try{for(f(O),h=n(a);h!==null&&(!(h.expirationTime>O)||z&&!$());){var Y=h.callback;if(typeof Y=="function"){h.callback=null,g=h.priorityLevel;var ne=Y(h.expirationTime<=O);O=e.unstable_now(),typeof ne=="function"?h.callback=ne:h===n(a)&&r(a),f(O)}else r(a);h=n(a)}if(h!==null)var L=!0;else{var M=n(u);M!==null&&Ce(v,M.startTime-O),L=!1}return L}finally{h=null,g=R,S=!1}}var N=!1,E=null,C=-1,I=5,T=-1;function $(){return!(e.unstable_now()-T<I)}function H(){if(E!==null){var z=e.unstable_now();T=z;var O=!0;try{O=E(!0,z)}finally{O?Q():(N=!1,E=null)}}else N=!1}var Q;if(typeof c=="function")Q=function(){c(H)};else if(typeof MessageChannel<"u"){var ue=new MessageChannel,pe=ue.port2;ue.port1.onmessage=H,Q=function(){pe.postMessage(null)}}else Q=function(){D(H,0)};function b(z){E=z,N||(N=!0,Q())}function Ce(z,O){C=D(function(){z(e.unstable_now())},O)}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(z){z.callback=null},e.unstable_continueExecution=function(){w||S||(w=!0,b(x))},e.unstable_forceFrameRate=function(z){0>z||125<z?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):I=0<z?Math.floor(1e3/z):5},e.unstable_getCurrentPriorityLevel=function(){return g},e.unstable_getFirstCallbackNode=function(){return n(a)},e.unstable_next=function(z){switch(g){case 1:case 2:case 3:var O=3;break;default:O=g}var R=g;g=O;try{return z()}finally{g=R}},e.unstable_pauseExecution=function(){},e.unstable_requestPaint=function(){},e.unstable_runWithPriority=function(z,O){switch(z){case 1:case 2:case 3:case 4:case 5:break;default:z=3}var R=g;g=z;try{return O()}finally{g=R}},e.unstable_scheduleCallback=function(z,O,R){var Y=e.unstable_now();switch(typeof R=="object"&&R!==null?(R=R.delay,R=typeof R=="number"&&0<R?Y+R:Y):R=Y,z){case 1:var ne=-1;break;case 2:ne=250;break;case 5:ne=1073741823;break;case 4:ne=1e4;break;default:ne=5e3}return ne=R+ne,z={id:m++,callback:O,priorityLevel:z,startTime:R,expirationTime:ne,sortIndex:-1},R>Y?(z.sortIndex=R,t(u,z),n(a)===null&&z===n(u)&&(y?(p(C),C=-1):y=!0,Ce(v,R-Y))):(z.sortIndex=ne,t(a,z),w||S||(w=!0,b(x))),z},e.unstable_shouldYield=$,e.unstable_wrapCallback=function(z){var O=g;return function(){var R=g;g=O;try{return z.apply(this,arguments)}finally{g=R}}}})(fu);cu.exports=fu;var qf=cu.exports;/**
26
+ * @license React
27
+ * react-dom.production.min.js
28
+ *
29
+ * Copyright (c) Facebook, Inc. and its affiliates.
30
+ *
31
+ * This source code is licensed under the MIT license found in the
32
+ * LICENSE file in the root directory of this source tree.
33
+ */var ed=_,Ve=qf;function P(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 du=new Set,cr={};function an(e,t){Tn(e,t),Tn(e+"Capture",t)}function Tn(e,t){for(cr[e]=t,e=0;e<t.length;e++)du.add(t[e])}var xt=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Fo=Object.prototype.hasOwnProperty,td=/^[: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]*$/,Fs={},Ws={};function nd(e){return Fo.call(Ws,e)?!0:Fo.call(Fs,e)?!1:td.test(e)?Ws[e]=!0:(Fs[e]=!0,!1)}function rd(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 id(e,t,n,r){if(t===null||typeof t>"u"||rd(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 Re(e,t,n,r,i,o,l){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=i,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=o,this.removeEmptyString=l}var we={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){we[e]=new Re(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];we[t]=new Re(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){we[e]=new Re(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){we[e]=new Re(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){we[e]=new Re(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){we[e]=new Re(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){we[e]=new Re(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){we[e]=new Re(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){we[e]=new Re(e,5,!1,e.toLowerCase(),null,!1,!1)});var Il=/[\-:]([a-z])/g;function Al(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(Il,Al);we[t]=new Re(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(Il,Al);we[t]=new Re(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(Il,Al);we[t]=new Re(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){we[e]=new Re(e,1,!1,e.toLowerCase(),null,!1,!1)});we.xlinkHref=new Re("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){we[e]=new Re(e,1,!1,e.toLowerCase(),null,!0,!0)});function Fl(e,t,n,r){var i=we.hasOwnProperty(t)?we[t]:null;(i!==null?i.type!==0:r||!(2<t.length)||t[0]!=="o"&&t[0]!=="O"||t[1]!=="n"&&t[1]!=="N")&&(id(t,n,i,r)&&(n=null),r||i===null?nd(t)&&(n===null?e.removeAttribute(t):e.setAttribute(t,""+n)):i.mustUseProperty?e[i.propertyName]=n===null?i.type===3?!1:"":n:(t=i.attributeName,r=i.attributeNamespace,n===null?e.removeAttribute(t):(i=i.type,n=i===3||i===4&&n===!0?"":""+n,r?e.setAttributeNS(r,t,n):e.setAttribute(t,n))))}var Pt=ed.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,Ir=Symbol.for("react.element"),pn=Symbol.for("react.portal"),hn=Symbol.for("react.fragment"),Wl=Symbol.for("react.strict_mode"),Wo=Symbol.for("react.profiler"),pu=Symbol.for("react.provider"),hu=Symbol.for("react.context"),Ul=Symbol.for("react.forward_ref"),Uo=Symbol.for("react.suspense"),Ho=Symbol.for("react.suspense_list"),Hl=Symbol.for("react.memo"),Dt=Symbol.for("react.lazy"),mu=Symbol.for("react.offscreen"),Us=Symbol.iterator;function Bn(e){return e===null||typeof e!="object"?null:(e=Us&&e[Us]||e["@@iterator"],typeof e=="function"?e:null)}var te=Object.assign,so;function Jn(e){if(so===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);so=t&&t[1]||""}return`
34
+ `+so+e}var ao=!1;function uo(e,t){if(!e||ao)return"";ao=!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(u){var r=u}Reflect.construct(e,[],t)}else{try{t.call()}catch(u){r=u}e.call(t.prototype)}else{try{throw Error()}catch(u){r=u}e()}}catch(u){if(u&&r&&typeof u.stack=="string"){for(var i=u.stack.split(`
35
+ `),o=r.stack.split(`
36
+ `),l=i.length-1,s=o.length-1;1<=l&&0<=s&&i[l]!==o[s];)s--;for(;1<=l&&0<=s;l--,s--)if(i[l]!==o[s]){if(l!==1||s!==1)do if(l--,s--,0>s||i[l]!==o[s]){var a=`
37
+ `+i[l].replace(" at new "," at ");return e.displayName&&a.includes("<anonymous>")&&(a=a.replace("<anonymous>",e.displayName)),a}while(1<=l&&0<=s);break}}}finally{ao=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?Jn(e):""}function od(e){switch(e.tag){case 5:return Jn(e.type);case 16:return Jn("Lazy");case 13:return Jn("Suspense");case 19:return Jn("SuspenseList");case 0:case 2:case 15:return e=uo(e.type,!1),e;case 11:return e=uo(e.type.render,!1),e;case 1:return e=uo(e.type,!0),e;default:return""}}function Bo(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 hn:return"Fragment";case pn:return"Portal";case Wo:return"Profiler";case Wl:return"StrictMode";case Uo:return"Suspense";case Ho:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case hu:return(e.displayName||"Context")+".Consumer";case pu:return(e._context.displayName||"Context")+".Provider";case Ul:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case Hl:return t=e.displayName||null,t!==null?t:Bo(e.type)||"Memo";case Dt:t=e._payload,e=e._init;try{return Bo(e(t))}catch{}}return null}function ld(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 Bo(t);case 8:return t===Wl?"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 Vt(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function gu(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function sd(e){var t=gu(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 i=n.get,o=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(l){r=""+l,o.call(this,l)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(l){r=""+l},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function Ar(e){e._valueTracker||(e._valueTracker=sd(e))}function vu(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=gu(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function mi(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 $o(e,t){var n=t.checked;return te({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function Hs(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=Vt(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 yu(e,t){t=t.checked,t!=null&&Fl(e,"checked",t,!1)}function Vo(e,t){yu(e,t);var n=Vt(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")?Xo(e,t.type,n):t.hasOwnProperty("defaultValue")&&Xo(e,t.type,Vt(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function Bs(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 Xo(e,t,n){(t!=="number"||mi(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var bn=Array.isArray;function Cn(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i<n.length;i++)t["$"+n[i]]=!0;for(n=0;n<e.length;n++)i=t.hasOwnProperty("$"+e[n].value),e[n].selected!==i&&(e[n].selected=i),i&&r&&(e[n].defaultSelected=!0)}else{for(n=""+Vt(n),t=null,i=0;i<e.length;i++){if(e[i].value===n){e[i].selected=!0,r&&(e[i].defaultSelected=!0);return}t!==null||e[i].disabled||(t=e[i])}t!==null&&(t.selected=!0)}}function Qo(e,t){if(t.dangerouslySetInnerHTML!=null)throw Error(P(91));return te({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function $s(e,t){var n=t.value;if(n==null){if(n=t.children,t=t.defaultValue,n!=null){if(t!=null)throw Error(P(92));if(bn(n)){if(1<n.length)throw Error(P(93));n=n[0]}t=n}t==null&&(t=""),n=t}e._wrapperState={initialValue:Vt(n)}}function wu(e,t){var n=Vt(t.value),r=Vt(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 Vs(e){var t=e.textContent;t===e._wrapperState.initialValue&&t!==""&&t!==null&&(e.value=t)}function Su(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 Yo(e,t){return e==null||e==="http://www.w3.org/1999/xhtml"?Su(t):e==="http://www.w3.org/2000/svg"&&t==="foreignObject"?"http://www.w3.org/1999/xhtml":e}var Fr,xu=function(e){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(t,n,r,i){MSApp.execUnsafeLocalFunction(function(){return e(t,n,r,i)})}:e}(function(e,t){if(e.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in e)e.innerHTML=t;else{for(Fr=Fr||document.createElement("div"),Fr.innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=Fr.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function fr(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var tr={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},ad=["Webkit","ms","Moz","O"];Object.keys(tr).forEach(function(e){ad.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),tr[t]=tr[e]})});function ku(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||tr.hasOwnProperty(e)&&tr[e]?(""+t).trim():t+"px"}function Eu(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,i=ku(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,i):e[n]=i}}var ud=te({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 Ko(e,t){if(t){if(ud[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(P(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(P(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(P(61))}if(t.style!=null&&typeof t.style!="object")throw Error(P(62))}}function Go(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 Zo=null;function Bl(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var Jo=null,zn=null,_n=null;function Xs(e){if(e=Dr(e)){if(typeof Jo!="function")throw Error(P(280));var t=e.stateNode;t&&(t=Vi(t),Jo(e.stateNode,e.type,t))}}function Nu(e){zn?_n?_n.push(e):_n=[e]:zn=e}function Pu(){if(zn){var e=zn,t=_n;if(_n=zn=null,Xs(e),t)for(e=0;e<t.length;e++)Xs(t[e])}}function Cu(e,t){return e(t)}function zu(){}var co=!1;function _u(e,t,n){if(co)return e(t,n);co=!0;try{return Cu(e,t,n)}finally{co=!1,(zn!==null||_n!==null)&&(zu(),Pu())}}function dr(e,t){var n=e.stateNode;if(n===null)return null;var r=Vi(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(P(231,t,typeof n));return n}var bo=!1;if(xt)try{var $n={};Object.defineProperty($n,"passive",{get:function(){bo=!0}}),window.addEventListener("test",$n,$n),window.removeEventListener("test",$n,$n)}catch{bo=!1}function cd(e,t,n,r,i,o,l,s,a){var u=Array.prototype.slice.call(arguments,3);try{t.apply(n,u)}catch(m){this.onError(m)}}var nr=!1,gi=null,vi=!1,qo=null,fd={onError:function(e){nr=!0,gi=e}};function dd(e,t,n,r,i,o,l,s,a){nr=!1,gi=null,cd.apply(fd,arguments)}function pd(e,t,n,r,i,o,l,s,a){if(dd.apply(this,arguments),nr){if(nr){var u=gi;nr=!1,gi=null}else throw Error(P(198));vi||(vi=!0,qo=u)}}function un(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 ju(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 Qs(e){if(un(e)!==e)throw Error(P(188))}function hd(e){var t=e.alternate;if(!t){if(t=un(e),t===null)throw Error(P(188));return t!==e?null:e}for(var n=e,r=t;;){var i=n.return;if(i===null)break;var o=i.alternate;if(o===null){if(r=i.return,r!==null){n=r;continue}break}if(i.child===o.child){for(o=i.child;o;){if(o===n)return Qs(i),e;if(o===r)return Qs(i),t;o=o.sibling}throw Error(P(188))}if(n.return!==r.return)n=i,r=o;else{for(var l=!1,s=i.child;s;){if(s===n){l=!0,n=i,r=o;break}if(s===r){l=!0,r=i,n=o;break}s=s.sibling}if(!l){for(s=o.child;s;){if(s===n){l=!0,n=o,r=i;break}if(s===r){l=!0,r=o,n=i;break}s=s.sibling}if(!l)throw Error(P(189))}}if(n.alternate!==r)throw Error(P(190))}if(n.tag!==3)throw Error(P(188));return n.stateNode.current===n?e:t}function Du(e){return e=hd(e),e!==null?Ru(e):null}function Ru(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){var t=Ru(e);if(t!==null)return t;e=e.sibling}return null}var Tu=Ve.unstable_scheduleCallback,Ys=Ve.unstable_cancelCallback,md=Ve.unstable_shouldYield,gd=Ve.unstable_requestPaint,oe=Ve.unstable_now,vd=Ve.unstable_getCurrentPriorityLevel,$l=Ve.unstable_ImmediatePriority,Mu=Ve.unstable_UserBlockingPriority,yi=Ve.unstable_NormalPriority,yd=Ve.unstable_LowPriority,Ou=Ve.unstable_IdlePriority,Ui=null,ft=null;function wd(e){if(ft&&typeof ft.onCommitFiberRoot=="function")try{ft.onCommitFiberRoot(Ui,e,void 0,(e.current.flags&128)===128)}catch{}}var it=Math.clz32?Math.clz32:kd,Sd=Math.log,xd=Math.LN2;function kd(e){return e>>>=0,e===0?32:31-(Sd(e)/xd|0)|0}var Wr=64,Ur=4194304;function qn(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 wi(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,i=e.suspendedLanes,o=e.pingedLanes,l=n&268435455;if(l!==0){var s=l&~i;s!==0?r=qn(s):(o&=l,o!==0&&(r=qn(o)))}else l=n&~i,l!==0?r=qn(l):o!==0&&(r=qn(o));if(r===0)return 0;if(t!==0&&t!==r&&!(t&i)&&(i=r&-r,o=t&-t,i>=o||i===16&&(o&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-it(t),i=1<<n,r|=e[n],t&=~i;return r}function Ed(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 Nd(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,o=e.pendingLanes;0<o;){var l=31-it(o),s=1<<l,a=i[l];a===-1?(!(s&n)||s&r)&&(i[l]=Ed(s,t)):a<=t&&(e.expiredLanes|=s),o&=~s}}function el(e){return e=e.pendingLanes&-1073741825,e!==0?e:e&1073741824?1073741824:0}function Lu(){var e=Wr;return Wr<<=1,!(Wr&4194240)&&(Wr=64),e}function fo(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function _r(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-it(t),e[t]=n}function Pd(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 i=31-it(n),o=1<<i;t[i]=0,r[i]=-1,e[i]=-1,n&=~o}}function Vl(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-it(n),i=1<<r;i&t|e[r]&t&&(e[r]|=t),n&=~i}}var X=0;function Iu(e){return e&=-e,1<e?4<e?e&268435455?16:536870912:4:1}var Au,Xl,Fu,Wu,Uu,tl=!1,Hr=[],It=null,At=null,Ft=null,pr=new Map,hr=new Map,Tt=[],Cd="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 Ks(e,t){switch(e){case"focusin":case"focusout":It=null;break;case"dragenter":case"dragleave":At=null;break;case"mouseover":case"mouseout":Ft=null;break;case"pointerover":case"pointerout":pr.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":hr.delete(t.pointerId)}}function Vn(e,t,n,r,i,o){return e===null||e.nativeEvent!==o?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:o,targetContainers:[i]},t!==null&&(t=Dr(t),t!==null&&Xl(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,i!==null&&t.indexOf(i)===-1&&t.push(i),e)}function zd(e,t,n,r,i){switch(t){case"focusin":return It=Vn(It,e,t,n,r,i),!0;case"dragenter":return At=Vn(At,e,t,n,r,i),!0;case"mouseover":return Ft=Vn(Ft,e,t,n,r,i),!0;case"pointerover":var o=i.pointerId;return pr.set(o,Vn(pr.get(o)||null,e,t,n,r,i)),!0;case"gotpointercapture":return o=i.pointerId,hr.set(o,Vn(hr.get(o)||null,e,t,n,r,i)),!0}return!1}function Hu(e){var t=Jt(e.target);if(t!==null){var n=un(t);if(n!==null){if(t=n.tag,t===13){if(t=ju(n),t!==null){e.blockedOn=t,Uu(e.priority,function(){Fu(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 oi(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=nl(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n);Zo=r,n.target.dispatchEvent(r),Zo=null}else return t=Dr(n),t!==null&&Xl(t),e.blockedOn=n,!1;t.shift()}return!0}function Gs(e,t,n){oi(e)&&n.delete(t)}function _d(){tl=!1,It!==null&&oi(It)&&(It=null),At!==null&&oi(At)&&(At=null),Ft!==null&&oi(Ft)&&(Ft=null),pr.forEach(Gs),hr.forEach(Gs)}function Xn(e,t){e.blockedOn===t&&(e.blockedOn=null,tl||(tl=!0,Ve.unstable_scheduleCallback(Ve.unstable_NormalPriority,_d)))}function mr(e){function t(i){return Xn(i,e)}if(0<Hr.length){Xn(Hr[0],e);for(var n=1;n<Hr.length;n++){var r=Hr[n];r.blockedOn===e&&(r.blockedOn=null)}}for(It!==null&&Xn(It,e),At!==null&&Xn(At,e),Ft!==null&&Xn(Ft,e),pr.forEach(t),hr.forEach(t),n=0;n<Tt.length;n++)r=Tt[n],r.blockedOn===e&&(r.blockedOn=null);for(;0<Tt.length&&(n=Tt[0],n.blockedOn===null);)Hu(n),n.blockedOn===null&&Tt.shift()}var jn=Pt.ReactCurrentBatchConfig,Si=!0;function jd(e,t,n,r){var i=X,o=jn.transition;jn.transition=null;try{X=1,Ql(e,t,n,r)}finally{X=i,jn.transition=o}}function Dd(e,t,n,r){var i=X,o=jn.transition;jn.transition=null;try{X=4,Ql(e,t,n,r)}finally{X=i,jn.transition=o}}function Ql(e,t,n,r){if(Si){var i=nl(e,t,n,r);if(i===null)ko(e,t,r,xi,n),Ks(e,r);else if(zd(i,e,t,n,r))r.stopPropagation();else if(Ks(e,r),t&4&&-1<Cd.indexOf(e)){for(;i!==null;){var o=Dr(i);if(o!==null&&Au(o),o=nl(e,t,n,r),o===null&&ko(e,t,r,xi,n),o===i)break;i=o}i!==null&&r.stopPropagation()}else ko(e,t,r,null,n)}}var xi=null;function nl(e,t,n,r){if(xi=null,e=Bl(r),e=Jt(e),e!==null)if(t=un(e),t===null)e=null;else if(n=t.tag,n===13){if(e=ju(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 xi=e,null}function Bu(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(vd()){case $l:return 1;case Mu:return 4;case yi:case yd:return 16;case Ou:return 536870912;default:return 16}default:return 16}}var Ot=null,Yl=null,li=null;function $u(){if(li)return li;var e,t=Yl,n=t.length,r,i="value"in Ot?Ot.value:Ot.textContent,o=i.length;for(e=0;e<n&&t[e]===i[e];e++);var l=n-e;for(r=1;r<=l&&t[n-r]===i[o-r];r++);return li=i.slice(e,1<r?1-r:void 0)}function si(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 Br(){return!0}function Zs(){return!1}function Qe(e){function t(n,r,i,o,l){this._reactName=n,this._targetInst=i,this.type=r,this.nativeEvent=o,this.target=l,this.currentTarget=null;for(var s in e)e.hasOwnProperty(s)&&(n=e[s],this[s]=n?n(o):o[s]);return this.isDefaultPrevented=(o.defaultPrevented!=null?o.defaultPrevented:o.returnValue===!1)?Br:Zs,this.isPropagationStopped=Zs,this}return te(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=Br)},stopPropagation:function(){var n=this.nativeEvent;n&&(n.stopPropagation?n.stopPropagation():typeof n.cancelBubble!="unknown"&&(n.cancelBubble=!0),this.isPropagationStopped=Br)},persist:function(){},isPersistent:Br}),t}var Un={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Kl=Qe(Un),jr=te({},Un,{view:0,detail:0}),Rd=Qe(jr),po,ho,Qn,Hi=te({},jr,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Gl,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!==Qn&&(Qn&&e.type==="mousemove"?(po=e.screenX-Qn.screenX,ho=e.screenY-Qn.screenY):ho=po=0,Qn=e),po)},movementY:function(e){return"movementY"in e?e.movementY:ho}}),Js=Qe(Hi),Td=te({},Hi,{dataTransfer:0}),Md=Qe(Td),Od=te({},jr,{relatedTarget:0}),mo=Qe(Od),Ld=te({},Un,{animationName:0,elapsedTime:0,pseudoElement:0}),Id=Qe(Ld),Ad=te({},Un,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),Fd=Qe(Ad),Wd=te({},Un,{data:0}),bs=Qe(Wd),Ud={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},Hd={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"},Bd={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function $d(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=Bd[e])?!!t[e]:!1}function Gl(){return $d}var Vd=te({},jr,{key:function(e){if(e.key){var t=Ud[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=si(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?Hd[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Gl,charCode:function(e){return e.type==="keypress"?si(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?si(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),Xd=Qe(Vd),Qd=te({},Hi,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),qs=Qe(Qd),Yd=te({},jr,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Gl}),Kd=Qe(Yd),Gd=te({},Un,{propertyName:0,elapsedTime:0,pseudoElement:0}),Zd=Qe(Gd),Jd=te({},Hi,{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}),bd=Qe(Jd),qd=[9,13,27,32],Zl=xt&&"CompositionEvent"in window,rr=null;xt&&"documentMode"in document&&(rr=document.documentMode);var ep=xt&&"TextEvent"in window&&!rr,Vu=xt&&(!Zl||rr&&8<rr&&11>=rr),ea=" ",ta=!1;function Xu(e,t){switch(e){case"keyup":return qd.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Qu(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var mn=!1;function tp(e,t){switch(e){case"compositionend":return Qu(t);case"keypress":return t.which!==32?null:(ta=!0,ea);case"textInput":return e=t.data,e===ea&&ta?null:e;default:return null}}function np(e,t){if(mn)return e==="compositionend"||!Zl&&Xu(e,t)?(e=$u(),li=Yl=Ot=null,mn=!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 Vu&&t.locale!=="ko"?null:t.data;default:return null}}var rp={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 na(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!rp[e.type]:t==="textarea"}function Yu(e,t,n,r){Nu(r),t=ki(t,"onChange"),0<t.length&&(n=new Kl("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var ir=null,gr=null;function ip(e){ic(e,0)}function Bi(e){var t=yn(e);if(vu(t))return e}function op(e,t){if(e==="change")return t}var Ku=!1;if(xt){var go;if(xt){var vo="oninput"in document;if(!vo){var ra=document.createElement("div");ra.setAttribute("oninput","return;"),vo=typeof ra.oninput=="function"}go=vo}else go=!1;Ku=go&&(!document.documentMode||9<document.documentMode)}function ia(){ir&&(ir.detachEvent("onpropertychange",Gu),gr=ir=null)}function Gu(e){if(e.propertyName==="value"&&Bi(gr)){var t=[];Yu(t,gr,e,Bl(e)),_u(ip,t)}}function lp(e,t,n){e==="focusin"?(ia(),ir=t,gr=n,ir.attachEvent("onpropertychange",Gu)):e==="focusout"&&ia()}function sp(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return Bi(gr)}function ap(e,t){if(e==="click")return Bi(t)}function up(e,t){if(e==="input"||e==="change")return Bi(t)}function cp(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var lt=typeof Object.is=="function"?Object.is:cp;function vr(e,t){if(lt(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 i=n[r];if(!Fo.call(t,i)||!lt(e[i],t[i]))return!1}return!0}function oa(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function la(e,t){var n=oa(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=oa(n)}}function Zu(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Zu(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Ju(){for(var e=window,t=mi();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=mi(e.document)}return t}function Jl(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 fp(e){var t=Ju(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&Zu(n.ownerDocument.documentElement,n)){if(r!==null&&Jl(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 i=n.textContent.length,o=Math.min(r.start,i);r=r.end===void 0?o:Math.min(r.end,i),!e.extend&&o>r&&(i=r,r=o,o=i),i=la(n,o);var l=la(n,r);i&&l&&(e.rangeCount!==1||e.anchorNode!==i.node||e.anchorOffset!==i.offset||e.focusNode!==l.node||e.focusOffset!==l.offset)&&(t=t.createRange(),t.setStart(i.node,i.offset),e.removeAllRanges(),o>r?(e.addRange(t),e.extend(l.node,l.offset)):(t.setEnd(l.node,l.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 dp=xt&&"documentMode"in document&&11>=document.documentMode,gn=null,rl=null,or=null,il=!1;function sa(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;il||gn==null||gn!==mi(r)||(r=gn,"selectionStart"in r&&Jl(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}),or&&vr(or,r)||(or=r,r=ki(rl,"onSelect"),0<r.length&&(t=new Kl("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=gn)))}function $r(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var vn={animationend:$r("Animation","AnimationEnd"),animationiteration:$r("Animation","AnimationIteration"),animationstart:$r("Animation","AnimationStart"),transitionend:$r("Transition","TransitionEnd")},yo={},bu={};xt&&(bu=document.createElement("div").style,"AnimationEvent"in window||(delete vn.animationend.animation,delete vn.animationiteration.animation,delete vn.animationstart.animation),"TransitionEvent"in window||delete vn.transitionend.transition);function $i(e){if(yo[e])return yo[e];if(!vn[e])return e;var t=vn[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in bu)return yo[e]=t[n];return e}var qu=$i("animationend"),ec=$i("animationiteration"),tc=$i("animationstart"),nc=$i("transitionend"),rc=new Map,aa="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 Qt(e,t){rc.set(e,t),an(t,[e])}for(var wo=0;wo<aa.length;wo++){var So=aa[wo],pp=So.toLowerCase(),hp=So[0].toUpperCase()+So.slice(1);Qt(pp,"on"+hp)}Qt(qu,"onAnimationEnd");Qt(ec,"onAnimationIteration");Qt(tc,"onAnimationStart");Qt("dblclick","onDoubleClick");Qt("focusin","onFocus");Qt("focusout","onBlur");Qt(nc,"onTransitionEnd");Tn("onMouseEnter",["mouseout","mouseover"]);Tn("onMouseLeave",["mouseout","mouseover"]);Tn("onPointerEnter",["pointerout","pointerover"]);Tn("onPointerLeave",["pointerout","pointerover"]);an("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));an("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));an("onBeforeInput",["compositionend","keypress","textInput","paste"]);an("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));an("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));an("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var er="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(" "),mp=new Set("cancel close invalid load scroll toggle".split(" ").concat(er));function ua(e,t,n){var r=e.type||"unknown-event";e.currentTarget=n,pd(r,t,void 0,e),e.currentTarget=null}function ic(e,t){t=(t&4)!==0;for(var n=0;n<e.length;n++){var r=e[n],i=r.event;r=r.listeners;e:{var o=void 0;if(t)for(var l=r.length-1;0<=l;l--){var s=r[l],a=s.instance,u=s.currentTarget;if(s=s.listener,a!==o&&i.isPropagationStopped())break e;ua(i,s,u),o=a}else for(l=0;l<r.length;l++){if(s=r[l],a=s.instance,u=s.currentTarget,s=s.listener,a!==o&&i.isPropagationStopped())break e;ua(i,s,u),o=a}}}if(vi)throw e=qo,vi=!1,qo=null,e}function G(e,t){var n=t[ul];n===void 0&&(n=t[ul]=new Set);var r=e+"__bubble";n.has(r)||(oc(t,e,2,!1),n.add(r))}function xo(e,t,n){var r=0;t&&(r|=4),oc(n,e,r,t)}var Vr="_reactListening"+Math.random().toString(36).slice(2);function yr(e){if(!e[Vr]){e[Vr]=!0,du.forEach(function(n){n!=="selectionchange"&&(mp.has(n)||xo(n,!1,e),xo(n,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[Vr]||(t[Vr]=!0,xo("selectionchange",!1,t))}}function oc(e,t,n,r){switch(Bu(t)){case 1:var i=jd;break;case 4:i=Dd;break;default:i=Ql}n=i.bind(null,t,n,e),i=void 0,!bo||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(i=!0),r?i!==void 0?e.addEventListener(t,n,{capture:!0,passive:i}):e.addEventListener(t,n,!0):i!==void 0?e.addEventListener(t,n,{passive:i}):e.addEventListener(t,n,!1)}function ko(e,t,n,r,i){var o=r;if(!(t&1)&&!(t&2)&&r!==null)e:for(;;){if(r===null)return;var l=r.tag;if(l===3||l===4){var s=r.stateNode.containerInfo;if(s===i||s.nodeType===8&&s.parentNode===i)break;if(l===4)for(l=r.return;l!==null;){var a=l.tag;if((a===3||a===4)&&(a=l.stateNode.containerInfo,a===i||a.nodeType===8&&a.parentNode===i))return;l=l.return}for(;s!==null;){if(l=Jt(s),l===null)return;if(a=l.tag,a===5||a===6){r=o=l;continue e}s=s.parentNode}}r=r.return}_u(function(){var u=o,m=Bl(n),h=[];e:{var g=rc.get(e);if(g!==void 0){var S=Kl,w=e;switch(e){case"keypress":if(si(n)===0)break e;case"keydown":case"keyup":S=Xd;break;case"focusin":w="focus",S=mo;break;case"focusout":w="blur",S=mo;break;case"beforeblur":case"afterblur":S=mo;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":S=Js;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":S=Md;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":S=Kd;break;case qu:case ec:case tc:S=Id;break;case nc:S=Zd;break;case"scroll":S=Rd;break;case"wheel":S=bd;break;case"copy":case"cut":case"paste":S=Fd;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":S=qs}var y=(t&4)!==0,D=!y&&e==="scroll",p=y?g!==null?g+"Capture":null:g;y=[];for(var c=u,f;c!==null;){f=c;var v=f.stateNode;if(f.tag===5&&v!==null&&(f=v,p!==null&&(v=dr(c,p),v!=null&&y.push(wr(c,v,f)))),D)break;c=c.return}0<y.length&&(g=new S(g,w,null,n,m),h.push({event:g,listeners:y}))}}if(!(t&7)){e:{if(g=e==="mouseover"||e==="pointerover",S=e==="mouseout"||e==="pointerout",g&&n!==Zo&&(w=n.relatedTarget||n.fromElement)&&(Jt(w)||w[kt]))break e;if((S||g)&&(g=m.window===m?m:(g=m.ownerDocument)?g.defaultView||g.parentWindow:window,S?(w=n.relatedTarget||n.toElement,S=u,w=w?Jt(w):null,w!==null&&(D=un(w),w!==D||w.tag!==5&&w.tag!==6)&&(w=null)):(S=null,w=u),S!==w)){if(y=Js,v="onMouseLeave",p="onMouseEnter",c="mouse",(e==="pointerout"||e==="pointerover")&&(y=qs,v="onPointerLeave",p="onPointerEnter",c="pointer"),D=S==null?g:yn(S),f=w==null?g:yn(w),g=new y(v,c+"leave",S,n,m),g.target=D,g.relatedTarget=f,v=null,Jt(m)===u&&(y=new y(p,c+"enter",w,n,m),y.target=f,y.relatedTarget=D,v=y),D=v,S&&w)t:{for(y=S,p=w,c=0,f=y;f;f=fn(f))c++;for(f=0,v=p;v;v=fn(v))f++;for(;0<c-f;)y=fn(y),c--;for(;0<f-c;)p=fn(p),f--;for(;c--;){if(y===p||p!==null&&y===p.alternate)break t;y=fn(y),p=fn(p)}y=null}else y=null;S!==null&&ca(h,g,S,y,!1),w!==null&&D!==null&&ca(h,D,w,y,!0)}}e:{if(g=u?yn(u):window,S=g.nodeName&&g.nodeName.toLowerCase(),S==="select"||S==="input"&&g.type==="file")var x=op;else if(na(g))if(Ku)x=up;else{x=sp;var N=lp}else(S=g.nodeName)&&S.toLowerCase()==="input"&&(g.type==="checkbox"||g.type==="radio")&&(x=ap);if(x&&(x=x(e,u))){Yu(h,x,n,m);break e}N&&N(e,g,u),e==="focusout"&&(N=g._wrapperState)&&N.controlled&&g.type==="number"&&Xo(g,"number",g.value)}switch(N=u?yn(u):window,e){case"focusin":(na(N)||N.contentEditable==="true")&&(gn=N,rl=u,or=null);break;case"focusout":or=rl=gn=null;break;case"mousedown":il=!0;break;case"contextmenu":case"mouseup":case"dragend":il=!1,sa(h,n,m);break;case"selectionchange":if(dp)break;case"keydown":case"keyup":sa(h,n,m)}var E;if(Zl)e:{switch(e){case"compositionstart":var C="onCompositionStart";break e;case"compositionend":C="onCompositionEnd";break e;case"compositionupdate":C="onCompositionUpdate";break e}C=void 0}else mn?Xu(e,n)&&(C="onCompositionEnd"):e==="keydown"&&n.keyCode===229&&(C="onCompositionStart");C&&(Vu&&n.locale!=="ko"&&(mn||C!=="onCompositionStart"?C==="onCompositionEnd"&&mn&&(E=$u()):(Ot=m,Yl="value"in Ot?Ot.value:Ot.textContent,mn=!0)),N=ki(u,C),0<N.length&&(C=new bs(C,e,null,n,m),h.push({event:C,listeners:N}),E?C.data=E:(E=Qu(n),E!==null&&(C.data=E)))),(E=ep?tp(e,n):np(e,n))&&(u=ki(u,"onBeforeInput"),0<u.length&&(m=new bs("onBeforeInput","beforeinput",null,n,m),h.push({event:m,listeners:u}),m.data=E))}ic(h,t)})}function wr(e,t,n){return{instance:e,listener:t,currentTarget:n}}function ki(e,t){for(var n=t+"Capture",r=[];e!==null;){var i=e,o=i.stateNode;i.tag===5&&o!==null&&(i=o,o=dr(e,n),o!=null&&r.unshift(wr(e,o,i)),o=dr(e,t),o!=null&&r.push(wr(e,o,i))),e=e.return}return r}function fn(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5);return e||null}function ca(e,t,n,r,i){for(var o=t._reactName,l=[];n!==null&&n!==r;){var s=n,a=s.alternate,u=s.stateNode;if(a!==null&&a===r)break;s.tag===5&&u!==null&&(s=u,i?(a=dr(n,o),a!=null&&l.unshift(wr(n,a,s))):i||(a=dr(n,o),a!=null&&l.push(wr(n,a,s)))),n=n.return}l.length!==0&&e.push({event:t,listeners:l})}var gp=/\r\n?/g,vp=/\u0000|\uFFFD/g;function fa(e){return(typeof e=="string"?e:""+e).replace(gp,`
38
+ `).replace(vp,"")}function Xr(e,t,n){if(t=fa(t),fa(e)!==t&&n)throw Error(P(425))}function Ei(){}var ol=null,ll=null;function sl(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 al=typeof setTimeout=="function"?setTimeout:void 0,yp=typeof clearTimeout=="function"?clearTimeout:void 0,da=typeof Promise=="function"?Promise:void 0,wp=typeof queueMicrotask=="function"?queueMicrotask:typeof da<"u"?function(e){return da.resolve(null).then(e).catch(Sp)}:al;function Sp(e){setTimeout(function(){throw e})}function Eo(e,t){var n=t,r=0;do{var i=n.nextSibling;if(e.removeChild(n),i&&i.nodeType===8)if(n=i.data,n==="/$"){if(r===0){e.removeChild(i),mr(t);return}r--}else n!=="$"&&n!=="$?"&&n!=="$!"||r++;n=i}while(n);mr(t)}function Wt(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 pa(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 Hn=Math.random().toString(36).slice(2),ct="__reactFiber$"+Hn,Sr="__reactProps$"+Hn,kt="__reactContainer$"+Hn,ul="__reactEvents$"+Hn,xp="__reactListeners$"+Hn,kp="__reactHandles$"+Hn;function Jt(e){var t=e[ct];if(t)return t;for(var n=e.parentNode;n;){if(t=n[kt]||n[ct]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=pa(e);e!==null;){if(n=e[ct])return n;e=pa(e)}return t}e=n,n=e.parentNode}return null}function Dr(e){return e=e[ct]||e[kt],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function yn(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(P(33))}function Vi(e){return e[Sr]||null}var cl=[],wn=-1;function Yt(e){return{current:e}}function Z(e){0>wn||(e.current=cl[wn],cl[wn]=null,wn--)}function K(e,t){wn++,cl[wn]=e.current,e.current=t}var Xt={},Pe=Yt(Xt),Le=Yt(!1),nn=Xt;function Mn(e,t){var n=e.type.contextTypes;if(!n)return Xt;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var i={},o;for(o in n)i[o]=t[o];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=i),i}function Ie(e){return e=e.childContextTypes,e!=null}function Ni(){Z(Le),Z(Pe)}function ha(e,t,n){if(Pe.current!==Xt)throw Error(P(168));K(Pe,t),K(Le,n)}function lc(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var i in r)if(!(i in t))throw Error(P(108,ld(e)||"Unknown",i));return te({},n,r)}function Pi(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Xt,nn=Pe.current,K(Pe,e),K(Le,Le.current),!0}function ma(e,t,n){var r=e.stateNode;if(!r)throw Error(P(169));n?(e=lc(e,t,nn),r.__reactInternalMemoizedMergedChildContext=e,Z(Le),Z(Pe),K(Pe,e)):Z(Le),K(Le,n)}var vt=null,Xi=!1,No=!1;function sc(e){vt===null?vt=[e]:vt.push(e)}function Ep(e){Xi=!0,sc(e)}function Kt(){if(!No&&vt!==null){No=!0;var e=0,t=X;try{var n=vt;for(X=1;e<n.length;e++){var r=n[e];do r=r(!0);while(r!==null)}vt=null,Xi=!1}catch(i){throw vt!==null&&(vt=vt.slice(e+1)),Tu($l,Kt),i}finally{X=t,No=!1}}return null}var Sn=[],xn=0,Ci=null,zi=0,Ye=[],Ke=0,rn=null,yt=1,wt="";function Gt(e,t){Sn[xn++]=zi,Sn[xn++]=Ci,Ci=e,zi=t}function ac(e,t,n){Ye[Ke++]=yt,Ye[Ke++]=wt,Ye[Ke++]=rn,rn=e;var r=yt;e=wt;var i=32-it(r)-1;r&=~(1<<i),n+=1;var o=32-it(t)+i;if(30<o){var l=i-i%5;o=(r&(1<<l)-1).toString(32),r>>=l,i-=l,yt=1<<32-it(t)+i|n<<i|r,wt=o+e}else yt=1<<o|n<<i|r,wt=e}function bl(e){e.return!==null&&(Gt(e,1),ac(e,1,0))}function ql(e){for(;e===Ci;)Ci=Sn[--xn],Sn[xn]=null,zi=Sn[--xn],Sn[xn]=null;for(;e===rn;)rn=Ye[--Ke],Ye[Ke]=null,wt=Ye[--Ke],Ye[Ke]=null,yt=Ye[--Ke],Ye[Ke]=null}var Be=null,He=null,J=!1,rt=null;function uc(e,t){var n=Ge(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 ga(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,Be=e,He=Wt(t.firstChild),!0):!1;case 6:return t=e.pendingProps===""||t.nodeType!==3?null:t,t!==null?(e.stateNode=t,Be=e,He=null,!0):!1;case 13:return t=t.nodeType!==8?null:t,t!==null?(n=rn!==null?{id:yt,overflow:wt}:null,e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},n=Ge(18,null,null,0),n.stateNode=t,n.return=e,e.child=n,Be=e,He=null,!0):!1;default:return!1}}function fl(e){return(e.mode&1)!==0&&(e.flags&128)===0}function dl(e){if(J){var t=He;if(t){var n=t;if(!ga(e,t)){if(fl(e))throw Error(P(418));t=Wt(n.nextSibling);var r=Be;t&&ga(e,t)?uc(r,n):(e.flags=e.flags&-4097|2,J=!1,Be=e)}}else{if(fl(e))throw Error(P(418));e.flags=e.flags&-4097|2,J=!1,Be=e}}}function va(e){for(e=e.return;e!==null&&e.tag!==5&&e.tag!==3&&e.tag!==13;)e=e.return;Be=e}function Qr(e){if(e!==Be)return!1;if(!J)return va(e),J=!0,!1;var t;if((t=e.tag!==3)&&!(t=e.tag!==5)&&(t=e.type,t=t!=="head"&&t!=="body"&&!sl(e.type,e.memoizedProps)),t&&(t=He)){if(fl(e))throw cc(),Error(P(418));for(;t;)uc(e,t),t=Wt(t.nextSibling)}if(va(e),e.tag===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(P(317));e:{for(e=e.nextSibling,t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="/$"){if(t===0){He=Wt(e.nextSibling);break e}t--}else n!=="$"&&n!=="$!"&&n!=="$?"||t++}e=e.nextSibling}He=null}}else He=Be?Wt(e.stateNode.nextSibling):null;return!0}function cc(){for(var e=He;e;)e=Wt(e.nextSibling)}function On(){He=Be=null,J=!1}function es(e){rt===null?rt=[e]:rt.push(e)}var Np=Pt.ReactCurrentBatchConfig;function Yn(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(P(309));var r=n.stateNode}if(!r)throw Error(P(147,e));var i=r,o=""+e;return t!==null&&t.ref!==null&&typeof t.ref=="function"&&t.ref._stringRef===o?t.ref:(t=function(l){var s=i.refs;l===null?delete s[o]:s[o]=l},t._stringRef=o,t)}if(typeof e!="string")throw Error(P(284));if(!n._owner)throw Error(P(290,e))}return e}function Yr(e,t){throw e=Object.prototype.toString.call(t),Error(P(31,e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function ya(e){var t=e._init;return t(e._payload)}function fc(e){function t(p,c){if(e){var f=p.deletions;f===null?(p.deletions=[c],p.flags|=16):f.push(c)}}function n(p,c){if(!e)return null;for(;c!==null;)t(p,c),c=c.sibling;return null}function r(p,c){for(p=new Map;c!==null;)c.key!==null?p.set(c.key,c):p.set(c.index,c),c=c.sibling;return p}function i(p,c){return p=$t(p,c),p.index=0,p.sibling=null,p}function o(p,c,f){return p.index=f,e?(f=p.alternate,f!==null?(f=f.index,f<c?(p.flags|=2,c):f):(p.flags|=2,c)):(p.flags|=1048576,c)}function l(p){return e&&p.alternate===null&&(p.flags|=2),p}function s(p,c,f,v){return c===null||c.tag!==6?(c=Ro(f,p.mode,v),c.return=p,c):(c=i(c,f),c.return=p,c)}function a(p,c,f,v){var x=f.type;return x===hn?m(p,c,f.props.children,v,f.key):c!==null&&(c.elementType===x||typeof x=="object"&&x!==null&&x.$$typeof===Dt&&ya(x)===c.type)?(v=i(c,f.props),v.ref=Yn(p,c,f),v.return=p,v):(v=hi(f.type,f.key,f.props,null,p.mode,v),v.ref=Yn(p,c,f),v.return=p,v)}function u(p,c,f,v){return c===null||c.tag!==4||c.stateNode.containerInfo!==f.containerInfo||c.stateNode.implementation!==f.implementation?(c=To(f,p.mode,v),c.return=p,c):(c=i(c,f.children||[]),c.return=p,c)}function m(p,c,f,v,x){return c===null||c.tag!==7?(c=tn(f,p.mode,v,x),c.return=p,c):(c=i(c,f),c.return=p,c)}function h(p,c,f){if(typeof c=="string"&&c!==""||typeof c=="number")return c=Ro(""+c,p.mode,f),c.return=p,c;if(typeof c=="object"&&c!==null){switch(c.$$typeof){case Ir:return f=hi(c.type,c.key,c.props,null,p.mode,f),f.ref=Yn(p,null,c),f.return=p,f;case pn:return c=To(c,p.mode,f),c.return=p,c;case Dt:var v=c._init;return h(p,v(c._payload),f)}if(bn(c)||Bn(c))return c=tn(c,p.mode,f,null),c.return=p,c;Yr(p,c)}return null}function g(p,c,f,v){var x=c!==null?c.key:null;if(typeof f=="string"&&f!==""||typeof f=="number")return x!==null?null:s(p,c,""+f,v);if(typeof f=="object"&&f!==null){switch(f.$$typeof){case Ir:return f.key===x?a(p,c,f,v):null;case pn:return f.key===x?u(p,c,f,v):null;case Dt:return x=f._init,g(p,c,x(f._payload),v)}if(bn(f)||Bn(f))return x!==null?null:m(p,c,f,v,null);Yr(p,f)}return null}function S(p,c,f,v,x){if(typeof v=="string"&&v!==""||typeof v=="number")return p=p.get(f)||null,s(c,p,""+v,x);if(typeof v=="object"&&v!==null){switch(v.$$typeof){case Ir:return p=p.get(v.key===null?f:v.key)||null,a(c,p,v,x);case pn:return p=p.get(v.key===null?f:v.key)||null,u(c,p,v,x);case Dt:var N=v._init;return S(p,c,f,N(v._payload),x)}if(bn(v)||Bn(v))return p=p.get(f)||null,m(c,p,v,x,null);Yr(c,v)}return null}function w(p,c,f,v){for(var x=null,N=null,E=c,C=c=0,I=null;E!==null&&C<f.length;C++){E.index>C?(I=E,E=null):I=E.sibling;var T=g(p,E,f[C],v);if(T===null){E===null&&(E=I);break}e&&E&&T.alternate===null&&t(p,E),c=o(T,c,C),N===null?x=T:N.sibling=T,N=T,E=I}if(C===f.length)return n(p,E),J&&Gt(p,C),x;if(E===null){for(;C<f.length;C++)E=h(p,f[C],v),E!==null&&(c=o(E,c,C),N===null?x=E:N.sibling=E,N=E);return J&&Gt(p,C),x}for(E=r(p,E);C<f.length;C++)I=S(E,p,C,f[C],v),I!==null&&(e&&I.alternate!==null&&E.delete(I.key===null?C:I.key),c=o(I,c,C),N===null?x=I:N.sibling=I,N=I);return e&&E.forEach(function($){return t(p,$)}),J&&Gt(p,C),x}function y(p,c,f,v){var x=Bn(f);if(typeof x!="function")throw Error(P(150));if(f=x.call(f),f==null)throw Error(P(151));for(var N=x=null,E=c,C=c=0,I=null,T=f.next();E!==null&&!T.done;C++,T=f.next()){E.index>C?(I=E,E=null):I=E.sibling;var $=g(p,E,T.value,v);if($===null){E===null&&(E=I);break}e&&E&&$.alternate===null&&t(p,E),c=o($,c,C),N===null?x=$:N.sibling=$,N=$,E=I}if(T.done)return n(p,E),J&&Gt(p,C),x;if(E===null){for(;!T.done;C++,T=f.next())T=h(p,T.value,v),T!==null&&(c=o(T,c,C),N===null?x=T:N.sibling=T,N=T);return J&&Gt(p,C),x}for(E=r(p,E);!T.done;C++,T=f.next())T=S(E,p,C,T.value,v),T!==null&&(e&&T.alternate!==null&&E.delete(T.key===null?C:T.key),c=o(T,c,C),N===null?x=T:N.sibling=T,N=T);return e&&E.forEach(function(H){return t(p,H)}),J&&Gt(p,C),x}function D(p,c,f,v){if(typeof f=="object"&&f!==null&&f.type===hn&&f.key===null&&(f=f.props.children),typeof f=="object"&&f!==null){switch(f.$$typeof){case Ir:e:{for(var x=f.key,N=c;N!==null;){if(N.key===x){if(x=f.type,x===hn){if(N.tag===7){n(p,N.sibling),c=i(N,f.props.children),c.return=p,p=c;break e}}else if(N.elementType===x||typeof x=="object"&&x!==null&&x.$$typeof===Dt&&ya(x)===N.type){n(p,N.sibling),c=i(N,f.props),c.ref=Yn(p,N,f),c.return=p,p=c;break e}n(p,N);break}else t(p,N);N=N.sibling}f.type===hn?(c=tn(f.props.children,p.mode,v,f.key),c.return=p,p=c):(v=hi(f.type,f.key,f.props,null,p.mode,v),v.ref=Yn(p,c,f),v.return=p,p=v)}return l(p);case pn:e:{for(N=f.key;c!==null;){if(c.key===N)if(c.tag===4&&c.stateNode.containerInfo===f.containerInfo&&c.stateNode.implementation===f.implementation){n(p,c.sibling),c=i(c,f.children||[]),c.return=p,p=c;break e}else{n(p,c);break}else t(p,c);c=c.sibling}c=To(f,p.mode,v),c.return=p,p=c}return l(p);case Dt:return N=f._init,D(p,c,N(f._payload),v)}if(bn(f))return w(p,c,f,v);if(Bn(f))return y(p,c,f,v);Yr(p,f)}return typeof f=="string"&&f!==""||typeof f=="number"?(f=""+f,c!==null&&c.tag===6?(n(p,c.sibling),c=i(c,f),c.return=p,p=c):(n(p,c),c=Ro(f,p.mode,v),c.return=p,p=c),l(p)):n(p,c)}return D}var Ln=fc(!0),dc=fc(!1),_i=Yt(null),ji=null,kn=null,ts=null;function ns(){ts=kn=ji=null}function rs(e){var t=_i.current;Z(_i),e._currentValue=t}function pl(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 Dn(e,t){ji=e,ts=kn=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(Oe=!0),e.firstContext=null)}function Je(e){var t=e._currentValue;if(ts!==e)if(e={context:e,memoizedValue:t,next:null},kn===null){if(ji===null)throw Error(P(308));kn=e,ji.dependencies={lanes:0,firstContext:e}}else kn=kn.next=e;return t}var bt=null;function is(e){bt===null?bt=[e]:bt.push(e)}function pc(e,t,n,r){var i=t.interleaved;return i===null?(n.next=n,is(t)):(n.next=i.next,i.next=n),t.interleaved=n,Et(e,r)}function Et(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 Rt=!1;function os(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function hc(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 St(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Ut(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,B&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,Et(e,n)}return i=r.interleaved,i===null?(t.next=t,is(r)):(t.next=i.next,i.next=t),r.interleaved=t,Et(e,n)}function ai(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,Vl(e,n)}}function wa(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,o=null;if(n=n.firstBaseUpdate,n!==null){do{var l={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};o===null?i=o=l:o=o.next=l,n=n.next}while(n!==null);o===null?i=o=t:o=o.next=t}else i=o=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:o,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 Di(e,t,n,r){var i=e.updateQueue;Rt=!1;var o=i.firstBaseUpdate,l=i.lastBaseUpdate,s=i.shared.pending;if(s!==null){i.shared.pending=null;var a=s,u=a.next;a.next=null,l===null?o=u:l.next=u,l=a;var m=e.alternate;m!==null&&(m=m.updateQueue,s=m.lastBaseUpdate,s!==l&&(s===null?m.firstBaseUpdate=u:s.next=u,m.lastBaseUpdate=a))}if(o!==null){var h=i.baseState;l=0,m=u=a=null,s=o;do{var g=s.lane,S=s.eventTime;if((r&g)===g){m!==null&&(m=m.next={eventTime:S,lane:0,tag:s.tag,payload:s.payload,callback:s.callback,next:null});e:{var w=e,y=s;switch(g=t,S=n,y.tag){case 1:if(w=y.payload,typeof w=="function"){h=w.call(S,h,g);break e}h=w;break e;case 3:w.flags=w.flags&-65537|128;case 0:if(w=y.payload,g=typeof w=="function"?w.call(S,h,g):w,g==null)break e;h=te({},h,g);break e;case 2:Rt=!0}}s.callback!==null&&s.lane!==0&&(e.flags|=64,g=i.effects,g===null?i.effects=[s]:g.push(s))}else S={eventTime:S,lane:g,tag:s.tag,payload:s.payload,callback:s.callback,next:null},m===null?(u=m=S,a=h):m=m.next=S,l|=g;if(s=s.next,s===null){if(s=i.shared.pending,s===null)break;g=s,s=g.next,g.next=null,i.lastBaseUpdate=g,i.shared.pending=null}}while(!0);if(m===null&&(a=h),i.baseState=a,i.firstBaseUpdate=u,i.lastBaseUpdate=m,t=i.shared.interleaved,t!==null){i=t;do l|=i.lane,i=i.next;while(i!==t)}else o===null&&(i.shared.lanes=0);ln|=l,e.lanes=l,e.memoizedState=h}}function Sa(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;t<e.length;t++){var r=e[t],i=r.callback;if(i!==null){if(r.callback=null,r=n,typeof i!="function")throw Error(P(191,i));i.call(r)}}}var Rr={},dt=Yt(Rr),xr=Yt(Rr),kr=Yt(Rr);function qt(e){if(e===Rr)throw Error(P(174));return e}function ls(e,t){switch(K(kr,t),K(xr,e),K(dt,Rr),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:Yo(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=Yo(t,e)}Z(dt),K(dt,t)}function In(){Z(dt),Z(xr),Z(kr)}function mc(e){qt(kr.current);var t=qt(dt.current),n=Yo(t,e.type);t!==n&&(K(xr,e),K(dt,n))}function ss(e){xr.current===e&&(Z(dt),Z(xr))}var q=Yt(0);function Ri(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 Po=[];function as(){for(var e=0;e<Po.length;e++)Po[e]._workInProgressVersionPrimary=null;Po.length=0}var ui=Pt.ReactCurrentDispatcher,Co=Pt.ReactCurrentBatchConfig,on=0,ee=null,fe=null,he=null,Ti=!1,lr=!1,Er=0,Pp=0;function xe(){throw Error(P(321))}function us(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!lt(e[n],t[n]))return!1;return!0}function cs(e,t,n,r,i,o){if(on=o,ee=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,ui.current=e===null||e.memoizedState===null?jp:Dp,e=n(r,i),lr){o=0;do{if(lr=!1,Er=0,25<=o)throw Error(P(301));o+=1,he=fe=null,t.updateQueue=null,ui.current=Rp,e=n(r,i)}while(lr)}if(ui.current=Mi,t=fe!==null&&fe.next!==null,on=0,he=fe=ee=null,Ti=!1,t)throw Error(P(300));return e}function fs(){var e=Er!==0;return Er=0,e}function at(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return he===null?ee.memoizedState=he=e:he=he.next=e,he}function be(){if(fe===null){var e=ee.alternate;e=e!==null?e.memoizedState:null}else e=fe.next;var t=he===null?ee.memoizedState:he.next;if(t!==null)he=t,fe=e;else{if(e===null)throw Error(P(310));fe=e,e={memoizedState:fe.memoizedState,baseState:fe.baseState,baseQueue:fe.baseQueue,queue:fe.queue,next:null},he===null?ee.memoizedState=he=e:he=he.next=e}return he}function Nr(e,t){return typeof t=="function"?t(e):t}function zo(e){var t=be(),n=t.queue;if(n===null)throw Error(P(311));n.lastRenderedReducer=e;var r=fe,i=r.baseQueue,o=n.pending;if(o!==null){if(i!==null){var l=i.next;i.next=o.next,o.next=l}r.baseQueue=i=o,n.pending=null}if(i!==null){o=i.next,r=r.baseState;var s=l=null,a=null,u=o;do{var m=u.lane;if((on&m)===m)a!==null&&(a=a.next={lane:0,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),r=u.hasEagerState?u.eagerState:e(r,u.action);else{var h={lane:m,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null};a===null?(s=a=h,l=r):a=a.next=h,ee.lanes|=m,ln|=m}u=u.next}while(u!==null&&u!==o);a===null?l=r:a.next=s,lt(r,t.memoizedState)||(Oe=!0),t.memoizedState=r,t.baseState=l,t.baseQueue=a,n.lastRenderedState=r}if(e=n.interleaved,e!==null){i=e;do o=i.lane,ee.lanes|=o,ln|=o,i=i.next;while(i!==e)}else i===null&&(n.lanes=0);return[t.memoizedState,n.dispatch]}function _o(e){var t=be(),n=t.queue;if(n===null)throw Error(P(311));n.lastRenderedReducer=e;var r=n.dispatch,i=n.pending,o=t.memoizedState;if(i!==null){n.pending=null;var l=i=i.next;do o=e(o,l.action),l=l.next;while(l!==i);lt(o,t.memoizedState)||(Oe=!0),t.memoizedState=o,t.baseQueue===null&&(t.baseState=o),n.lastRenderedState=o}return[o,r]}function gc(){}function vc(e,t){var n=ee,r=be(),i=t(),o=!lt(r.memoizedState,i);if(o&&(r.memoizedState=i,Oe=!0),r=r.queue,ds(Sc.bind(null,n,r,e),[e]),r.getSnapshot!==t||o||he!==null&&he.memoizedState.tag&1){if(n.flags|=2048,Pr(9,wc.bind(null,n,r,i,t),void 0,null),me===null)throw Error(P(349));on&30||yc(n,t,i)}return i}function yc(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=ee.updateQueue,t===null?(t={lastEffect:null,stores:null},ee.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function wc(e,t,n,r){t.value=n,t.getSnapshot=r,xc(t)&&kc(e)}function Sc(e,t,n){return n(function(){xc(t)&&kc(e)})}function xc(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!lt(e,n)}catch{return!0}}function kc(e){var t=Et(e,1);t!==null&&ot(t,e,1,-1)}function xa(e){var t=at();return typeof e=="function"&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Nr,lastRenderedState:e},t.queue=e,e=e.dispatch=_p.bind(null,ee,e),[t.memoizedState,e]}function Pr(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},t=ee.updateQueue,t===null?(t={lastEffect:null,stores:null},ee.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 Ec(){return be().memoizedState}function ci(e,t,n,r){var i=at();ee.flags|=e,i.memoizedState=Pr(1|t,n,void 0,r===void 0?null:r)}function Qi(e,t,n,r){var i=be();r=r===void 0?null:r;var o=void 0;if(fe!==null){var l=fe.memoizedState;if(o=l.destroy,r!==null&&us(r,l.deps)){i.memoizedState=Pr(t,n,o,r);return}}ee.flags|=e,i.memoizedState=Pr(1|t,n,o,r)}function ka(e,t){return ci(8390656,8,e,t)}function ds(e,t){return Qi(2048,8,e,t)}function Nc(e,t){return Qi(4,2,e,t)}function Pc(e,t){return Qi(4,4,e,t)}function Cc(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 zc(e,t,n){return n=n!=null?n.concat([e]):null,Qi(4,4,Cc.bind(null,t,e),n)}function ps(){}function _c(e,t){var n=be();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&us(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function jc(e,t){var n=be();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&us(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function Dc(e,t,n){return on&21?(lt(n,t)||(n=Lu(),ee.lanes|=n,ln|=n,e.baseState=!0),t):(e.baseState&&(e.baseState=!1,Oe=!0),e.memoizedState=n)}function Cp(e,t){var n=X;X=n!==0&&4>n?n:4,e(!0);var r=Co.transition;Co.transition={};try{e(!1),t()}finally{X=n,Co.transition=r}}function Rc(){return be().memoizedState}function zp(e,t,n){var r=Bt(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},Tc(e))Mc(t,n);else if(n=pc(e,t,n,r),n!==null){var i=je();ot(n,e,r,i),Oc(n,t,r)}}function _p(e,t,n){var r=Bt(e),i={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(Tc(e))Mc(t,i);else{var o=e.alternate;if(e.lanes===0&&(o===null||o.lanes===0)&&(o=t.lastRenderedReducer,o!==null))try{var l=t.lastRenderedState,s=o(l,n);if(i.hasEagerState=!0,i.eagerState=s,lt(s,l)){var a=t.interleaved;a===null?(i.next=i,is(t)):(i.next=a.next,a.next=i),t.interleaved=i;return}}catch{}finally{}n=pc(e,t,i,r),n!==null&&(i=je(),ot(n,e,r,i),Oc(n,t,r))}}function Tc(e){var t=e.alternate;return e===ee||t!==null&&t===ee}function Mc(e,t){lr=Ti=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Oc(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Vl(e,n)}}var Mi={readContext:Je,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},jp={readContext:Je,useCallback:function(e,t){return at().memoizedState=[e,t===void 0?null:t],e},useContext:Je,useEffect:ka,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,ci(4194308,4,Cc.bind(null,t,e),n)},useLayoutEffect:function(e,t){return ci(4194308,4,e,t)},useInsertionEffect:function(e,t){return ci(4,2,e,t)},useMemo:function(e,t){var n=at();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=at();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=zp.bind(null,ee,e),[r.memoizedState,e]},useRef:function(e){var t=at();return e={current:e},t.memoizedState=e},useState:xa,useDebugValue:ps,useDeferredValue:function(e){return at().memoizedState=e},useTransition:function(){var e=xa(!1),t=e[0];return e=Cp.bind(null,e[1]),at().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=ee,i=at();if(J){if(n===void 0)throw Error(P(407));n=n()}else{if(n=t(),me===null)throw Error(P(349));on&30||yc(r,t,n)}i.memoizedState=n;var o={value:n,getSnapshot:t};return i.queue=o,ka(Sc.bind(null,r,o,e),[e]),r.flags|=2048,Pr(9,wc.bind(null,r,o,n,t),void 0,null),n},useId:function(){var e=at(),t=me.identifierPrefix;if(J){var n=wt,r=yt;n=(r&~(1<<32-it(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=Er++,0<n&&(t+="H"+n.toString(32)),t+=":"}else n=Pp++,t=":"+t+"r"+n.toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},Dp={readContext:Je,useCallback:_c,useContext:Je,useEffect:ds,useImperativeHandle:zc,useInsertionEffect:Nc,useLayoutEffect:Pc,useMemo:jc,useReducer:zo,useRef:Ec,useState:function(){return zo(Nr)},useDebugValue:ps,useDeferredValue:function(e){var t=be();return Dc(t,fe.memoizedState,e)},useTransition:function(){var e=zo(Nr)[0],t=be().memoizedState;return[e,t]},useMutableSource:gc,useSyncExternalStore:vc,useId:Rc,unstable_isNewReconciler:!1},Rp={readContext:Je,useCallback:_c,useContext:Je,useEffect:ds,useImperativeHandle:zc,useInsertionEffect:Nc,useLayoutEffect:Pc,useMemo:jc,useReducer:_o,useRef:Ec,useState:function(){return _o(Nr)},useDebugValue:ps,useDeferredValue:function(e){var t=be();return fe===null?t.memoizedState=e:Dc(t,fe.memoizedState,e)},useTransition:function(){var e=_o(Nr)[0],t=be().memoizedState;return[e,t]},useMutableSource:gc,useSyncExternalStore:vc,useId:Rc,unstable_isNewReconciler:!1};function tt(e,t){if(e&&e.defaultProps){t=te({},t),e=e.defaultProps;for(var n in e)t[n]===void 0&&(t[n]=e[n]);return t}return t}function hl(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:te({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var Yi={isMounted:function(e){return(e=e._reactInternals)?un(e)===e:!1},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=je(),i=Bt(e),o=St(r,i);o.payload=t,n!=null&&(o.callback=n),t=Ut(e,o,i),t!==null&&(ot(t,e,i,r),ai(t,e,i))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=je(),i=Bt(e),o=St(r,i);o.tag=1,o.payload=t,n!=null&&(o.callback=n),t=Ut(e,o,i),t!==null&&(ot(t,e,i,r),ai(t,e,i))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=je(),r=Bt(e),i=St(n,r);i.tag=2,t!=null&&(i.callback=t),t=Ut(e,i,r),t!==null&&(ot(t,e,r,n),ai(t,e,r))}};function Ea(e,t,n,r,i,o,l){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(r,o,l):t.prototype&&t.prototype.isPureReactComponent?!vr(n,r)||!vr(i,o):!0}function Lc(e,t,n){var r=!1,i=Xt,o=t.contextType;return typeof o=="object"&&o!==null?o=Je(o):(i=Ie(t)?nn:Pe.current,r=t.contextTypes,o=(r=r!=null)?Mn(e,i):Xt),t=new t(n,o),e.memoizedState=t.state!==null&&t.state!==void 0?t.state:null,t.updater=Yi,e.stateNode=t,t._reactInternals=e,r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=i,e.__reactInternalMemoizedMaskedChildContext=o),t}function Na(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&&Yi.enqueueReplaceState(t,t.state,null)}function ml(e,t,n,r){var i=e.stateNode;i.props=n,i.state=e.memoizedState,i.refs={},os(e);var o=t.contextType;typeof o=="object"&&o!==null?i.context=Je(o):(o=Ie(t)?nn:Pe.current,i.context=Mn(e,o)),i.state=e.memoizedState,o=t.getDerivedStateFromProps,typeof o=="function"&&(hl(e,t,o,n),i.state=e.memoizedState),typeof t.getDerivedStateFromProps=="function"||typeof i.getSnapshotBeforeUpdate=="function"||typeof i.UNSAFE_componentWillMount!="function"&&typeof i.componentWillMount!="function"||(t=i.state,typeof i.componentWillMount=="function"&&i.componentWillMount(),typeof i.UNSAFE_componentWillMount=="function"&&i.UNSAFE_componentWillMount(),t!==i.state&&Yi.enqueueReplaceState(i,i.state,null),Di(e,n,i,r),i.state=e.memoizedState),typeof i.componentDidMount=="function"&&(e.flags|=4194308)}function An(e,t){try{var n="",r=t;do n+=od(r),r=r.return;while(r);var i=n}catch(o){i=`
39
+ Error generating stack: `+o.message+`
40
+ `+o.stack}return{value:e,source:t,stack:i,digest:null}}function jo(e,t,n){return{value:e,source:null,stack:n??null,digest:t??null}}function gl(e,t){try{console.error(t.value)}catch(n){setTimeout(function(){throw n})}}var Tp=typeof WeakMap=="function"?WeakMap:Map;function Ic(e,t,n){n=St(-1,n),n.tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){Li||(Li=!0,Cl=r),gl(e,t)},n}function Ac(e,t,n){n=St(-1,n),n.tag=3;var r=e.type.getDerivedStateFromError;if(typeof r=="function"){var i=t.value;n.payload=function(){return r(i)},n.callback=function(){gl(e,t)}}var o=e.stateNode;return o!==null&&typeof o.componentDidCatch=="function"&&(n.callback=function(){gl(e,t),typeof r!="function"&&(Ht===null?Ht=new Set([this]):Ht.add(this));var l=t.stack;this.componentDidCatch(t.value,{componentStack:l!==null?l:""})}),n}function Pa(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new Tp;var i=new Set;r.set(t,i)}else i=r.get(t),i===void 0&&(i=new Set,r.set(t,i));i.has(n)||(i.add(n),e=Qp.bind(null,e,t,n),t.then(e,e))}function Ca(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 za(e,t,n,r,i){return e.mode&1?(e.flags|=65536,e.lanes=i,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=St(-1,1),t.tag=2,Ut(n,t,1))),n.lanes|=1),e)}var Mp=Pt.ReactCurrentOwner,Oe=!1;function _e(e,t,n,r){t.child=e===null?dc(t,null,n,r):Ln(t,e.child,n,r)}function _a(e,t,n,r,i){n=n.render;var o=t.ref;return Dn(t,i),r=cs(e,t,n,r,o,i),n=fs(),e!==null&&!Oe?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,Nt(e,t,i)):(J&&n&&bl(t),t.flags|=1,_e(e,t,r,i),t.child)}function ja(e,t,n,r,i){if(e===null){var o=n.type;return typeof o=="function"&&!xs(o)&&o.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=o,Fc(e,t,o,r,i)):(e=hi(n.type,null,r,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}if(o=e.child,!(e.lanes&i)){var l=o.memoizedProps;if(n=n.compare,n=n!==null?n:vr,n(l,r)&&e.ref===t.ref)return Nt(e,t,i)}return t.flags|=1,e=$t(o,r),e.ref=t.ref,e.return=t,t.child=e}function Fc(e,t,n,r,i){if(e!==null){var o=e.memoizedProps;if(vr(o,r)&&e.ref===t.ref)if(Oe=!1,t.pendingProps=r=o,(e.lanes&i)!==0)e.flags&131072&&(Oe=!0);else return t.lanes=e.lanes,Nt(e,t,i)}return vl(e,t,n,r,i)}function Wc(e,t,n){var r=t.pendingProps,i=r.children,o=e!==null?e.memoizedState:null;if(r.mode==="hidden")if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},K(Nn,Ue),Ue|=n;else{if(!(n&1073741824))return e=o!==null?o.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,K(Nn,Ue),Ue|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=o!==null?o.baseLanes:n,K(Nn,Ue),Ue|=r}else o!==null?(r=o.baseLanes|n,t.memoizedState=null):r=n,K(Nn,Ue),Ue|=r;return _e(e,t,i,n),t.child}function Uc(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function vl(e,t,n,r,i){var o=Ie(n)?nn:Pe.current;return o=Mn(t,o),Dn(t,i),n=cs(e,t,n,r,o,i),r=fs(),e!==null&&!Oe?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,Nt(e,t,i)):(J&&r&&bl(t),t.flags|=1,_e(e,t,n,i),t.child)}function Da(e,t,n,r,i){if(Ie(n)){var o=!0;Pi(t)}else o=!1;if(Dn(t,i),t.stateNode===null)fi(e,t),Lc(t,n,r),ml(t,n,r,i),r=!0;else if(e===null){var l=t.stateNode,s=t.memoizedProps;l.props=s;var a=l.context,u=n.contextType;typeof u=="object"&&u!==null?u=Je(u):(u=Ie(n)?nn:Pe.current,u=Mn(t,u));var m=n.getDerivedStateFromProps,h=typeof m=="function"||typeof l.getSnapshotBeforeUpdate=="function";h||typeof l.UNSAFE_componentWillReceiveProps!="function"&&typeof l.componentWillReceiveProps!="function"||(s!==r||a!==u)&&Na(t,l,r,u),Rt=!1;var g=t.memoizedState;l.state=g,Di(t,r,l,i),a=t.memoizedState,s!==r||g!==a||Le.current||Rt?(typeof m=="function"&&(hl(t,n,m,r),a=t.memoizedState),(s=Rt||Ea(t,n,s,r,g,a,u))?(h||typeof l.UNSAFE_componentWillMount!="function"&&typeof l.componentWillMount!="function"||(typeof l.componentWillMount=="function"&&l.componentWillMount(),typeof l.UNSAFE_componentWillMount=="function"&&l.UNSAFE_componentWillMount()),typeof l.componentDidMount=="function"&&(t.flags|=4194308)):(typeof l.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=a),l.props=r,l.state=a,l.context=u,r=s):(typeof l.componentDidMount=="function"&&(t.flags|=4194308),r=!1)}else{l=t.stateNode,hc(e,t),s=t.memoizedProps,u=t.type===t.elementType?s:tt(t.type,s),l.props=u,h=t.pendingProps,g=l.context,a=n.contextType,typeof a=="object"&&a!==null?a=Je(a):(a=Ie(n)?nn:Pe.current,a=Mn(t,a));var S=n.getDerivedStateFromProps;(m=typeof S=="function"||typeof l.getSnapshotBeforeUpdate=="function")||typeof l.UNSAFE_componentWillReceiveProps!="function"&&typeof l.componentWillReceiveProps!="function"||(s!==h||g!==a)&&Na(t,l,r,a),Rt=!1,g=t.memoizedState,l.state=g,Di(t,r,l,i);var w=t.memoizedState;s!==h||g!==w||Le.current||Rt?(typeof S=="function"&&(hl(t,n,S,r),w=t.memoizedState),(u=Rt||Ea(t,n,u,r,g,w,a)||!1)?(m||typeof l.UNSAFE_componentWillUpdate!="function"&&typeof l.componentWillUpdate!="function"||(typeof l.componentWillUpdate=="function"&&l.componentWillUpdate(r,w,a),typeof l.UNSAFE_componentWillUpdate=="function"&&l.UNSAFE_componentWillUpdate(r,w,a)),typeof l.componentDidUpdate=="function"&&(t.flags|=4),typeof l.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof l.componentDidUpdate!="function"||s===e.memoizedProps&&g===e.memoizedState||(t.flags|=4),typeof l.getSnapshotBeforeUpdate!="function"||s===e.memoizedProps&&g===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=w),l.props=r,l.state=w,l.context=a,r=u):(typeof l.componentDidUpdate!="function"||s===e.memoizedProps&&g===e.memoizedState||(t.flags|=4),typeof l.getSnapshotBeforeUpdate!="function"||s===e.memoizedProps&&g===e.memoizedState||(t.flags|=1024),r=!1)}return yl(e,t,n,r,o,i)}function yl(e,t,n,r,i,o){Uc(e,t);var l=(t.flags&128)!==0;if(!r&&!l)return i&&ma(t,n,!1),Nt(e,t,o);r=t.stateNode,Mp.current=t;var s=l&&typeof n.getDerivedStateFromError!="function"?null:r.render();return t.flags|=1,e!==null&&l?(t.child=Ln(t,e.child,null,o),t.child=Ln(t,null,s,o)):_e(e,t,s,o),t.memoizedState=r.state,i&&ma(t,n,!0),t.child}function Hc(e){var t=e.stateNode;t.pendingContext?ha(e,t.pendingContext,t.pendingContext!==t.context):t.context&&ha(e,t.context,!1),ls(e,t.containerInfo)}function Ra(e,t,n,r,i){return On(),es(i),t.flags|=256,_e(e,t,n,r),t.child}var wl={dehydrated:null,treeContext:null,retryLane:0};function Sl(e){return{baseLanes:e,cachePool:null,transitions:null}}function Bc(e,t,n){var r=t.pendingProps,i=q.current,o=!1,l=(t.flags&128)!==0,s;if((s=l)||(s=e!==null&&e.memoizedState===null?!1:(i&2)!==0),s?(o=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(i|=1),K(q,i&1),e===null)return dl(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):(l=r.children,e=r.fallback,o?(r=t.mode,o=t.child,l={mode:"hidden",children:l},!(r&1)&&o!==null?(o.childLanes=0,o.pendingProps=l):o=Zi(l,r,0,null),e=tn(e,r,n,null),o.return=t,e.return=t,o.sibling=e,t.child=o,t.child.memoizedState=Sl(n),t.memoizedState=wl,e):hs(t,l));if(i=e.memoizedState,i!==null&&(s=i.dehydrated,s!==null))return Op(e,t,l,r,s,i,n);if(o){o=r.fallback,l=t.mode,i=e.child,s=i.sibling;var a={mode:"hidden",children:r.children};return!(l&1)&&t.child!==i?(r=t.child,r.childLanes=0,r.pendingProps=a,t.deletions=null):(r=$t(i,a),r.subtreeFlags=i.subtreeFlags&14680064),s!==null?o=$t(s,o):(o=tn(o,l,n,null),o.flags|=2),o.return=t,r.return=t,r.sibling=o,t.child=r,r=o,o=t.child,l=e.child.memoizedState,l=l===null?Sl(n):{baseLanes:l.baseLanes|n,cachePool:null,transitions:l.transitions},o.memoizedState=l,o.childLanes=e.childLanes&~n,t.memoizedState=wl,r}return o=e.child,e=o.sibling,r=$t(o,{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 hs(e,t){return t=Zi({mode:"visible",children:t},e.mode,0,null),t.return=e,e.child=t}function Kr(e,t,n,r){return r!==null&&es(r),Ln(t,e.child,null,n),e=hs(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function Op(e,t,n,r,i,o,l){if(n)return t.flags&256?(t.flags&=-257,r=jo(Error(P(422))),Kr(e,t,l,r)):t.memoizedState!==null?(t.child=e.child,t.flags|=128,null):(o=r.fallback,i=t.mode,r=Zi({mode:"visible",children:r.children},i,0,null),o=tn(o,i,l,null),o.flags|=2,r.return=t,o.return=t,r.sibling=o,t.child=r,t.mode&1&&Ln(t,e.child,null,l),t.child.memoizedState=Sl(l),t.memoizedState=wl,o);if(!(t.mode&1))return Kr(e,t,l,null);if(i.data==="$!"){if(r=i.nextSibling&&i.nextSibling.dataset,r)var s=r.dgst;return r=s,o=Error(P(419)),r=jo(o,r,void 0),Kr(e,t,l,r)}if(s=(l&e.childLanes)!==0,Oe||s){if(r=me,r!==null){switch(l&-l){case 4:i=2;break;case 16:i=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:i=32;break;case 536870912:i=268435456;break;default:i=0}i=i&(r.suspendedLanes|l)?0:i,i!==0&&i!==o.retryLane&&(o.retryLane=i,Et(e,i),ot(r,e,i,-1))}return Ss(),r=jo(Error(P(421))),Kr(e,t,l,r)}return i.data==="$?"?(t.flags|=128,t.child=e.child,t=Yp.bind(null,e),i._reactRetry=t,null):(e=o.treeContext,He=Wt(i.nextSibling),Be=t,J=!0,rt=null,e!==null&&(Ye[Ke++]=yt,Ye[Ke++]=wt,Ye[Ke++]=rn,yt=e.id,wt=e.overflow,rn=t),t=hs(t,r.children),t.flags|=4096,t)}function Ta(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),pl(e.return,t,n)}function Do(e,t,n,r,i){var o=e.memoizedState;o===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:i}:(o.isBackwards=t,o.rendering=null,o.renderingStartTime=0,o.last=r,o.tail=n,o.tailMode=i)}function $c(e,t,n){var r=t.pendingProps,i=r.revealOrder,o=r.tail;if(_e(e,t,r.children,n),r=q.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&&Ta(e,n,t);else if(e.tag===19)Ta(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(K(q,r),!(t.mode&1))t.memoizedState=null;else switch(i){case"forwards":for(n=t.child,i=null;n!==null;)e=n.alternate,e!==null&&Ri(e)===null&&(i=n),n=n.sibling;n=i,n===null?(i=t.child,t.child=null):(i=n.sibling,n.sibling=null),Do(t,!1,i,n,o);break;case"backwards":for(n=null,i=t.child,t.child=null;i!==null;){if(e=i.alternate,e!==null&&Ri(e)===null){t.child=i;break}e=i.sibling,i.sibling=n,n=i,i=e}Do(t,!0,n,null,o);break;case"together":Do(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function fi(e,t){!(t.mode&1)&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function Nt(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),ln|=t.lanes,!(n&t.childLanes))return null;if(e!==null&&t.child!==e.child)throw Error(P(153));if(t.child!==null){for(e=t.child,n=$t(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=$t(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function Lp(e,t,n){switch(t.tag){case 3:Hc(t),On();break;case 5:mc(t);break;case 1:Ie(t.type)&&Pi(t);break;case 4:ls(t,t.stateNode.containerInfo);break;case 10:var r=t.type._context,i=t.memoizedProps.value;K(_i,r._currentValue),r._currentValue=i;break;case 13:if(r=t.memoizedState,r!==null)return r.dehydrated!==null?(K(q,q.current&1),t.flags|=128,null):n&t.child.childLanes?Bc(e,t,n):(K(q,q.current&1),e=Nt(e,t,n),e!==null?e.sibling:null);K(q,q.current&1);break;case 19:if(r=(n&t.childLanes)!==0,e.flags&128){if(r)return $c(e,t,n);t.flags|=128}if(i=t.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),K(q,q.current),r)break;return null;case 22:case 23:return t.lanes=0,Wc(e,t,n)}return Nt(e,t,n)}var Vc,xl,Xc,Qc;Vc=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}};xl=function(){};Xc=function(e,t,n,r){var i=e.memoizedProps;if(i!==r){e=t.stateNode,qt(dt.current);var o=null;switch(n){case"input":i=$o(e,i),r=$o(e,r),o=[];break;case"select":i=te({},i,{value:void 0}),r=te({},r,{value:void 0}),o=[];break;case"textarea":i=Qo(e,i),r=Qo(e,r),o=[];break;default:typeof i.onClick!="function"&&typeof r.onClick=="function"&&(e.onclick=Ei)}Ko(n,r);var l;n=null;for(u in i)if(!r.hasOwnProperty(u)&&i.hasOwnProperty(u)&&i[u]!=null)if(u==="style"){var s=i[u];for(l in s)s.hasOwnProperty(l)&&(n||(n={}),n[l]="")}else u!=="dangerouslySetInnerHTML"&&u!=="children"&&u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&u!=="autoFocus"&&(cr.hasOwnProperty(u)?o||(o=[]):(o=o||[]).push(u,null));for(u in r){var a=r[u];if(s=i!=null?i[u]:void 0,r.hasOwnProperty(u)&&a!==s&&(a!=null||s!=null))if(u==="style")if(s){for(l in s)!s.hasOwnProperty(l)||a&&a.hasOwnProperty(l)||(n||(n={}),n[l]="");for(l in a)a.hasOwnProperty(l)&&s[l]!==a[l]&&(n||(n={}),n[l]=a[l])}else n||(o||(o=[]),o.push(u,n)),n=a;else u==="dangerouslySetInnerHTML"?(a=a?a.__html:void 0,s=s?s.__html:void 0,a!=null&&s!==a&&(o=o||[]).push(u,a)):u==="children"?typeof a!="string"&&typeof a!="number"||(o=o||[]).push(u,""+a):u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&(cr.hasOwnProperty(u)?(a!=null&&u==="onScroll"&&G("scroll",e),o||s===a||(o=[])):(o=o||[]).push(u,a))}n&&(o=o||[]).push("style",n);var u=o;(t.updateQueue=u)&&(t.flags|=4)}};Qc=function(e,t,n,r){n!==r&&(t.flags|=4)};function Kn(e,t){if(!J)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 ke(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags&14680064,r|=i.flags&14680064,i.return=e,i=i.sibling;else for(i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags,r|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function Ip(e,t,n){var r=t.pendingProps;switch(ql(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return ke(t),null;case 1:return Ie(t.type)&&Ni(),ke(t),null;case 3:return r=t.stateNode,In(),Z(Le),Z(Pe),as(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),(e===null||e.child===null)&&(Qr(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,rt!==null&&(jl(rt),rt=null))),xl(e,t),ke(t),null;case 5:ss(t);var i=qt(kr.current);if(n=t.type,e!==null&&t.stateNode!=null)Xc(e,t,n,r,i),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(t.stateNode===null)throw Error(P(166));return ke(t),null}if(e=qt(dt.current),Qr(t)){r=t.stateNode,n=t.type;var o=t.memoizedProps;switch(r[ct]=t,r[Sr]=o,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(i=0;i<er.length;i++)G(er[i],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":Hs(r,o),G("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!o.multiple},G("invalid",r);break;case"textarea":$s(r,o),G("invalid",r)}Ko(n,o),i=null;for(var l in o)if(o.hasOwnProperty(l)){var s=o[l];l==="children"?typeof s=="string"?r.textContent!==s&&(o.suppressHydrationWarning!==!0&&Xr(r.textContent,s,e),i=["children",s]):typeof s=="number"&&r.textContent!==""+s&&(o.suppressHydrationWarning!==!0&&Xr(r.textContent,s,e),i=["children",""+s]):cr.hasOwnProperty(l)&&s!=null&&l==="onScroll"&&G("scroll",r)}switch(n){case"input":Ar(r),Bs(r,o,!0);break;case"textarea":Ar(r),Vs(r);break;case"select":case"option":break;default:typeof o.onClick=="function"&&(r.onclick=Ei)}r=i,t.updateQueue=r,r!==null&&(t.flags|=4)}else{l=i.nodeType===9?i:i.ownerDocument,e==="http://www.w3.org/1999/xhtml"&&(e=Su(n)),e==="http://www.w3.org/1999/xhtml"?n==="script"?(e=l.createElement("div"),e.innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=l.createElement(n,{is:r.is}):(e=l.createElement(n),n==="select"&&(l=e,r.multiple?l.multiple=!0:r.size&&(l.size=r.size))):e=l.createElementNS(e,n),e[ct]=t,e[Sr]=r,Vc(e,t,!1,!1),t.stateNode=e;e:{switch(l=Go(n,r),n){case"dialog":G("cancel",e),G("close",e),i=r;break;case"iframe":case"object":case"embed":G("load",e),i=r;break;case"video":case"audio":for(i=0;i<er.length;i++)G(er[i],e);i=r;break;case"source":G("error",e),i=r;break;case"img":case"image":case"link":G("error",e),G("load",e),i=r;break;case"details":G("toggle",e),i=r;break;case"input":Hs(e,r),i=$o(e,r),G("invalid",e);break;case"option":i=r;break;case"select":e._wrapperState={wasMultiple:!!r.multiple},i=te({},r,{value:void 0}),G("invalid",e);break;case"textarea":$s(e,r),i=Qo(e,r),G("invalid",e);break;default:i=r}Ko(n,i),s=i;for(o in s)if(s.hasOwnProperty(o)){var a=s[o];o==="style"?Eu(e,a):o==="dangerouslySetInnerHTML"?(a=a?a.__html:void 0,a!=null&&xu(e,a)):o==="children"?typeof a=="string"?(n!=="textarea"||a!=="")&&fr(e,a):typeof a=="number"&&fr(e,""+a):o!=="suppressContentEditableWarning"&&o!=="suppressHydrationWarning"&&o!=="autoFocus"&&(cr.hasOwnProperty(o)?a!=null&&o==="onScroll"&&G("scroll",e):a!=null&&Fl(e,o,a,l))}switch(n){case"input":Ar(e),Bs(e,r,!1);break;case"textarea":Ar(e),Vs(e);break;case"option":r.value!=null&&e.setAttribute("value",""+Vt(r.value));break;case"select":e.multiple=!!r.multiple,o=r.value,o!=null?Cn(e,!!r.multiple,o,!1):r.defaultValue!=null&&Cn(e,!!r.multiple,r.defaultValue,!0);break;default:typeof i.onClick=="function"&&(e.onclick=Ei)}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 ke(t),null;case 6:if(e&&t.stateNode!=null)Qc(e,t,e.memoizedProps,r);else{if(typeof r!="string"&&t.stateNode===null)throw Error(P(166));if(n=qt(kr.current),qt(dt.current),Qr(t)){if(r=t.stateNode,n=t.memoizedProps,r[ct]=t,(o=r.nodeValue!==n)&&(e=Be,e!==null))switch(e.tag){case 3:Xr(r.nodeValue,n,(e.mode&1)!==0);break;case 5:e.memoizedProps.suppressHydrationWarning!==!0&&Xr(r.nodeValue,n,(e.mode&1)!==0)}o&&(t.flags|=4)}else r=(n.nodeType===9?n:n.ownerDocument).createTextNode(r),r[ct]=t,t.stateNode=r}return ke(t),null;case 13:if(Z(q),r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(J&&He!==null&&t.mode&1&&!(t.flags&128))cc(),On(),t.flags|=98560,o=!1;else if(o=Qr(t),r!==null&&r.dehydrated!==null){if(e===null){if(!o)throw Error(P(318));if(o=t.memoizedState,o=o!==null?o.dehydrated:null,!o)throw Error(P(317));o[ct]=t}else On(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;ke(t),o=!1}else rt!==null&&(jl(rt),rt=null),o=!0;if(!o)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||q.current&1?de===0&&(de=3):Ss())),t.updateQueue!==null&&(t.flags|=4),ke(t),null);case 4:return In(),xl(e,t),e===null&&yr(t.stateNode.containerInfo),ke(t),null;case 10:return rs(t.type._context),ke(t),null;case 17:return Ie(t.type)&&Ni(),ke(t),null;case 19:if(Z(q),o=t.memoizedState,o===null)return ke(t),null;if(r=(t.flags&128)!==0,l=o.rendering,l===null)if(r)Kn(o,!1);else{if(de!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(l=Ri(e),l!==null){for(t.flags|=128,Kn(o,!1),r=l.updateQueue,r!==null&&(t.updateQueue=r,t.flags|=4),t.subtreeFlags=0,r=n,n=t.child;n!==null;)o=n,e=r,o.flags&=14680066,l=o.alternate,l===null?(o.childLanes=0,o.lanes=e,o.child=null,o.subtreeFlags=0,o.memoizedProps=null,o.memoizedState=null,o.updateQueue=null,o.dependencies=null,o.stateNode=null):(o.childLanes=l.childLanes,o.lanes=l.lanes,o.child=l.child,o.subtreeFlags=0,o.deletions=null,o.memoizedProps=l.memoizedProps,o.memoizedState=l.memoizedState,o.updateQueue=l.updateQueue,o.type=l.type,e=l.dependencies,o.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return K(q,q.current&1|2),t.child}e=e.sibling}o.tail!==null&&oe()>Fn&&(t.flags|=128,r=!0,Kn(o,!1),t.lanes=4194304)}else{if(!r)if(e=Ri(l),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),Kn(o,!0),o.tail===null&&o.tailMode==="hidden"&&!l.alternate&&!J)return ke(t),null}else 2*oe()-o.renderingStartTime>Fn&&n!==1073741824&&(t.flags|=128,r=!0,Kn(o,!1),t.lanes=4194304);o.isBackwards?(l.sibling=t.child,t.child=l):(n=o.last,n!==null?n.sibling=l:t.child=l,o.last=l)}return o.tail!==null?(t=o.tail,o.rendering=t,o.tail=t.sibling,o.renderingStartTime=oe(),t.sibling=null,n=q.current,K(q,r?n&1|2:n&1),t):(ke(t),null);case 22:case 23:return ws(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?Ue&1073741824&&(ke(t),t.subtreeFlags&6&&(t.flags|=8192)):ke(t),null;case 24:return null;case 25:return null}throw Error(P(156,t.tag))}function Ap(e,t){switch(ql(t),t.tag){case 1:return Ie(t.type)&&Ni(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return In(),Z(Le),Z(Pe),as(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return ss(t),null;case 13:if(Z(q),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(P(340));On()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return Z(q),null;case 4:return In(),null;case 10:return rs(t.type._context),null;case 22:case 23:return ws(),null;case 24:return null;default:return null}}var Gr=!1,Ne=!1,Fp=typeof WeakSet=="function"?WeakSet:Set,j=null;function En(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){re(e,t,r)}else n.current=null}function kl(e,t,n){try{n()}catch(r){re(e,t,r)}}var Ma=!1;function Wp(e,t){if(ol=Si,e=Ju(),Jl(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 i=r.anchorOffset,o=r.focusNode;r=r.focusOffset;try{n.nodeType,o.nodeType}catch{n=null;break e}var l=0,s=-1,a=-1,u=0,m=0,h=e,g=null;t:for(;;){for(var S;h!==n||i!==0&&h.nodeType!==3||(s=l+i),h!==o||r!==0&&h.nodeType!==3||(a=l+r),h.nodeType===3&&(l+=h.nodeValue.length),(S=h.firstChild)!==null;)g=h,h=S;for(;;){if(h===e)break t;if(g===n&&++u===i&&(s=l),g===o&&++m===r&&(a=l),(S=h.nextSibling)!==null)break;h=g,g=h.parentNode}h=S}n=s===-1||a===-1?null:{start:s,end:a}}else n=null}n=n||{start:0,end:0}}else n=null;for(ll={focusedElem:e,selectionRange:n},Si=!1,j=t;j!==null;)if(t=j,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,j=e;else for(;j!==null;){t=j;try{var w=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(w!==null){var y=w.memoizedProps,D=w.memoizedState,p=t.stateNode,c=p.getSnapshotBeforeUpdate(t.elementType===t.type?y:tt(t.type,y),D);p.__reactInternalSnapshotBeforeUpdate=c}break;case 3:var f=t.stateNode.containerInfo;f.nodeType===1?f.textContent="":f.nodeType===9&&f.documentElement&&f.removeChild(f.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(P(163))}}catch(v){re(t,t.return,v)}if(e=t.sibling,e!==null){e.return=t.return,j=e;break}j=t.return}return w=Ma,Ma=!1,w}function sr(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var i=r=r.next;do{if((i.tag&e)===e){var o=i.destroy;i.destroy=void 0,o!==void 0&&kl(t,n,o)}i=i.next}while(i!==r)}}function Ki(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 El(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 Yc(e){var t=e.alternate;t!==null&&(e.alternate=null,Yc(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[ct],delete t[Sr],delete t[ul],delete t[xp],delete t[kp])),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 Kc(e){return e.tag===5||e.tag===3||e.tag===4}function Oa(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Kc(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 Nl(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=Ei));else if(r!==4&&(e=e.child,e!==null))for(Nl(e,t,n),e=e.sibling;e!==null;)Nl(e,t,n),e=e.sibling}function Pl(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(Pl(e,t,n),e=e.sibling;e!==null;)Pl(e,t,n),e=e.sibling}var ve=null,nt=!1;function zt(e,t,n){for(n=n.child;n!==null;)Gc(e,t,n),n=n.sibling}function Gc(e,t,n){if(ft&&typeof ft.onCommitFiberUnmount=="function")try{ft.onCommitFiberUnmount(Ui,n)}catch{}switch(n.tag){case 5:Ne||En(n,t);case 6:var r=ve,i=nt;ve=null,zt(e,t,n),ve=r,nt=i,ve!==null&&(nt?(e=ve,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):ve.removeChild(n.stateNode));break;case 18:ve!==null&&(nt?(e=ve,n=n.stateNode,e.nodeType===8?Eo(e.parentNode,n):e.nodeType===1&&Eo(e,n),mr(e)):Eo(ve,n.stateNode));break;case 4:r=ve,i=nt,ve=n.stateNode.containerInfo,nt=!0,zt(e,t,n),ve=r,nt=i;break;case 0:case 11:case 14:case 15:if(!Ne&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){i=r=r.next;do{var o=i,l=o.destroy;o=o.tag,l!==void 0&&(o&2||o&4)&&kl(n,t,l),i=i.next}while(i!==r)}zt(e,t,n);break;case 1:if(!Ne&&(En(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(s){re(n,t,s)}zt(e,t,n);break;case 21:zt(e,t,n);break;case 22:n.mode&1?(Ne=(r=Ne)||n.memoizedState!==null,zt(e,t,n),Ne=r):zt(e,t,n);break;default:zt(e,t,n)}}function La(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new Fp),t.forEach(function(r){var i=Kp.bind(null,e,r);n.has(r)||(n.add(r),r.then(i,i))})}}function qe(e,t){var n=t.deletions;if(n!==null)for(var r=0;r<n.length;r++){var i=n[r];try{var o=e,l=t,s=l;e:for(;s!==null;){switch(s.tag){case 5:ve=s.stateNode,nt=!1;break e;case 3:ve=s.stateNode.containerInfo,nt=!0;break e;case 4:ve=s.stateNode.containerInfo,nt=!0;break e}s=s.return}if(ve===null)throw Error(P(160));Gc(o,l,i),ve=null,nt=!1;var a=i.alternate;a!==null&&(a.return=null),i.return=null}catch(u){re(i,t,u)}}if(t.subtreeFlags&12854)for(t=t.child;t!==null;)Zc(t,e),t=t.sibling}function Zc(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(qe(t,e),st(e),r&4){try{sr(3,e,e.return),Ki(3,e)}catch(y){re(e,e.return,y)}try{sr(5,e,e.return)}catch(y){re(e,e.return,y)}}break;case 1:qe(t,e),st(e),r&512&&n!==null&&En(n,n.return);break;case 5:if(qe(t,e),st(e),r&512&&n!==null&&En(n,n.return),e.flags&32){var i=e.stateNode;try{fr(i,"")}catch(y){re(e,e.return,y)}}if(r&4&&(i=e.stateNode,i!=null)){var o=e.memoizedProps,l=n!==null?n.memoizedProps:o,s=e.type,a=e.updateQueue;if(e.updateQueue=null,a!==null)try{s==="input"&&o.type==="radio"&&o.name!=null&&yu(i,o),Go(s,l);var u=Go(s,o);for(l=0;l<a.length;l+=2){var m=a[l],h=a[l+1];m==="style"?Eu(i,h):m==="dangerouslySetInnerHTML"?xu(i,h):m==="children"?fr(i,h):Fl(i,m,h,u)}switch(s){case"input":Vo(i,o);break;case"textarea":wu(i,o);break;case"select":var g=i._wrapperState.wasMultiple;i._wrapperState.wasMultiple=!!o.multiple;var S=o.value;S!=null?Cn(i,!!o.multiple,S,!1):g!==!!o.multiple&&(o.defaultValue!=null?Cn(i,!!o.multiple,o.defaultValue,!0):Cn(i,!!o.multiple,o.multiple?[]:"",!1))}i[Sr]=o}catch(y){re(e,e.return,y)}}break;case 6:if(qe(t,e),st(e),r&4){if(e.stateNode===null)throw Error(P(162));i=e.stateNode,o=e.memoizedProps;try{i.nodeValue=o}catch(y){re(e,e.return,y)}}break;case 3:if(qe(t,e),st(e),r&4&&n!==null&&n.memoizedState.isDehydrated)try{mr(t.containerInfo)}catch(y){re(e,e.return,y)}break;case 4:qe(t,e),st(e);break;case 13:qe(t,e),st(e),i=e.child,i.flags&8192&&(o=i.memoizedState!==null,i.stateNode.isHidden=o,!o||i.alternate!==null&&i.alternate.memoizedState!==null||(vs=oe())),r&4&&La(e);break;case 22:if(m=n!==null&&n.memoizedState!==null,e.mode&1?(Ne=(u=Ne)||m,qe(t,e),Ne=u):qe(t,e),st(e),r&8192){if(u=e.memoizedState!==null,(e.stateNode.isHidden=u)&&!m&&e.mode&1)for(j=e,m=e.child;m!==null;){for(h=j=m;j!==null;){switch(g=j,S=g.child,g.tag){case 0:case 11:case 14:case 15:sr(4,g,g.return);break;case 1:En(g,g.return);var w=g.stateNode;if(typeof w.componentWillUnmount=="function"){r=g,n=g.return;try{t=r,w.props=t.memoizedProps,w.state=t.memoizedState,w.componentWillUnmount()}catch(y){re(r,n,y)}}break;case 5:En(g,g.return);break;case 22:if(g.memoizedState!==null){Aa(h);continue}}S!==null?(S.return=g,j=S):Aa(h)}m=m.sibling}e:for(m=null,h=e;;){if(h.tag===5){if(m===null){m=h;try{i=h.stateNode,u?(o=i.style,typeof o.setProperty=="function"?o.setProperty("display","none","important"):o.display="none"):(s=h.stateNode,a=h.memoizedProps.style,l=a!=null&&a.hasOwnProperty("display")?a.display:null,s.style.display=ku("display",l))}catch(y){re(e,e.return,y)}}}else if(h.tag===6){if(m===null)try{h.stateNode.nodeValue=u?"":h.memoizedProps}catch(y){re(e,e.return,y)}}else if((h.tag!==22&&h.tag!==23||h.memoizedState===null||h===e)&&h.child!==null){h.child.return=h,h=h.child;continue}if(h===e)break e;for(;h.sibling===null;){if(h.return===null||h.return===e)break e;m===h&&(m=null),h=h.return}m===h&&(m=null),h.sibling.return=h.return,h=h.sibling}}break;case 19:qe(t,e),st(e),r&4&&La(e);break;case 21:break;default:qe(t,e),st(e)}}function st(e){var t=e.flags;if(t&2){try{e:{for(var n=e.return;n!==null;){if(Kc(n)){var r=n;break e}n=n.return}throw Error(P(160))}switch(r.tag){case 5:var i=r.stateNode;r.flags&32&&(fr(i,""),r.flags&=-33);var o=Oa(e);Pl(e,o,i);break;case 3:case 4:var l=r.stateNode.containerInfo,s=Oa(e);Nl(e,s,l);break;default:throw Error(P(161))}}catch(a){re(e,e.return,a)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function Up(e,t,n){j=e,Jc(e)}function Jc(e,t,n){for(var r=(e.mode&1)!==0;j!==null;){var i=j,o=i.child;if(i.tag===22&&r){var l=i.memoizedState!==null||Gr;if(!l){var s=i.alternate,a=s!==null&&s.memoizedState!==null||Ne;s=Gr;var u=Ne;if(Gr=l,(Ne=a)&&!u)for(j=i;j!==null;)l=j,a=l.child,l.tag===22&&l.memoizedState!==null?Fa(i):a!==null?(a.return=l,j=a):Fa(i);for(;o!==null;)j=o,Jc(o),o=o.sibling;j=i,Gr=s,Ne=u}Ia(e)}else i.subtreeFlags&8772&&o!==null?(o.return=i,j=o):Ia(e)}}function Ia(e){for(;j!==null;){var t=j;if(t.flags&8772){var n=t.alternate;try{if(t.flags&8772)switch(t.tag){case 0:case 11:case 15:Ne||Ki(5,t);break;case 1:var r=t.stateNode;if(t.flags&4&&!Ne)if(n===null)r.componentDidMount();else{var i=t.elementType===t.type?n.memoizedProps:tt(t.type,n.memoizedProps);r.componentDidUpdate(i,n.memoizedState,r.__reactInternalSnapshotBeforeUpdate)}var o=t.updateQueue;o!==null&&Sa(t,o,r);break;case 3:var l=t.updateQueue;if(l!==null){if(n=null,t.child!==null)switch(t.child.tag){case 5:n=t.child.stateNode;break;case 1:n=t.child.stateNode}Sa(t,l,n)}break;case 5:var s=t.stateNode;if(n===null&&t.flags&4){n=s;var a=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":a.autoFocus&&n.focus();break;case"img":a.src&&(n.src=a.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(t.memoizedState===null){var u=t.alternate;if(u!==null){var m=u.memoizedState;if(m!==null){var h=m.dehydrated;h!==null&&mr(h)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(P(163))}Ne||t.flags&512&&El(t)}catch(g){re(t,t.return,g)}}if(t===e){j=null;break}if(n=t.sibling,n!==null){n.return=t.return,j=n;break}j=t.return}}function Aa(e){for(;j!==null;){var t=j;if(t===e){j=null;break}var n=t.sibling;if(n!==null){n.return=t.return,j=n;break}j=t.return}}function Fa(e){for(;j!==null;){var t=j;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{Ki(4,t)}catch(a){re(t,n,a)}break;case 1:var r=t.stateNode;if(typeof r.componentDidMount=="function"){var i=t.return;try{r.componentDidMount()}catch(a){re(t,i,a)}}var o=t.return;try{El(t)}catch(a){re(t,o,a)}break;case 5:var l=t.return;try{El(t)}catch(a){re(t,l,a)}}}catch(a){re(t,t.return,a)}if(t===e){j=null;break}var s=t.sibling;if(s!==null){s.return=t.return,j=s;break}j=t.return}}var Hp=Math.ceil,Oi=Pt.ReactCurrentDispatcher,ms=Pt.ReactCurrentOwner,Ze=Pt.ReactCurrentBatchConfig,B=0,me=null,ae=null,ye=0,Ue=0,Nn=Yt(0),de=0,Cr=null,ln=0,Gi=0,gs=0,ar=null,Me=null,vs=0,Fn=1/0,gt=null,Li=!1,Cl=null,Ht=null,Zr=!1,Lt=null,Ii=0,ur=0,zl=null,di=-1,pi=0;function je(){return B&6?oe():di!==-1?di:di=oe()}function Bt(e){return e.mode&1?B&2&&ye!==0?ye&-ye:Np.transition!==null?(pi===0&&(pi=Lu()),pi):(e=X,e!==0||(e=window.event,e=e===void 0?16:Bu(e.type)),e):1}function ot(e,t,n,r){if(50<ur)throw ur=0,zl=null,Error(P(185));_r(e,n,r),(!(B&2)||e!==me)&&(e===me&&(!(B&2)&&(Gi|=n),de===4&&Mt(e,ye)),Ae(e,r),n===1&&B===0&&!(t.mode&1)&&(Fn=oe()+500,Xi&&Kt()))}function Ae(e,t){var n=e.callbackNode;Nd(e,t);var r=wi(e,e===me?ye:0);if(r===0)n!==null&&Ys(n),e.callbackNode=null,e.callbackPriority=0;else if(t=r&-r,e.callbackPriority!==t){if(n!=null&&Ys(n),t===1)e.tag===0?Ep(Wa.bind(null,e)):sc(Wa.bind(null,e)),wp(function(){!(B&6)&&Kt()}),n=null;else{switch(Iu(r)){case 1:n=$l;break;case 4:n=Mu;break;case 16:n=yi;break;case 536870912:n=Ou;break;default:n=yi}n=lf(n,bc.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function bc(e,t){if(di=-1,pi=0,B&6)throw Error(P(327));var n=e.callbackNode;if(Rn()&&e.callbackNode!==n)return null;var r=wi(e,e===me?ye:0);if(r===0)return null;if(r&30||r&e.expiredLanes||t)t=Ai(e,r);else{t=r;var i=B;B|=2;var o=ef();(me!==e||ye!==t)&&(gt=null,Fn=oe()+500,en(e,t));do try{Vp();break}catch(s){qc(e,s)}while(!0);ns(),Oi.current=o,B=i,ae!==null?t=0:(me=null,ye=0,t=de)}if(t!==0){if(t===2&&(i=el(e),i!==0&&(r=i,t=_l(e,i))),t===1)throw n=Cr,en(e,0),Mt(e,r),Ae(e,oe()),n;if(t===6)Mt(e,r);else{if(i=e.current.alternate,!(r&30)&&!Bp(i)&&(t=Ai(e,r),t===2&&(o=el(e),o!==0&&(r=o,t=_l(e,o))),t===1))throw n=Cr,en(e,0),Mt(e,r),Ae(e,oe()),n;switch(e.finishedWork=i,e.finishedLanes=r,t){case 0:case 1:throw Error(P(345));case 2:Zt(e,Me,gt);break;case 3:if(Mt(e,r),(r&130023424)===r&&(t=vs+500-oe(),10<t)){if(wi(e,0)!==0)break;if(i=e.suspendedLanes,(i&r)!==r){je(),e.pingedLanes|=e.suspendedLanes&i;break}e.timeoutHandle=al(Zt.bind(null,e,Me,gt),t);break}Zt(e,Me,gt);break;case 4:if(Mt(e,r),(r&4194240)===r)break;for(t=e.eventTimes,i=-1;0<r;){var l=31-it(r);o=1<<l,l=t[l],l>i&&(i=l),r&=~o}if(r=i,r=oe()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*Hp(r/1960))-r,10<r){e.timeoutHandle=al(Zt.bind(null,e,Me,gt),r);break}Zt(e,Me,gt);break;case 5:Zt(e,Me,gt);break;default:throw Error(P(329))}}}return Ae(e,oe()),e.callbackNode===n?bc.bind(null,e):null}function _l(e,t){var n=ar;return e.current.memoizedState.isDehydrated&&(en(e,t).flags|=256),e=Ai(e,t),e!==2&&(t=Me,Me=n,t!==null&&jl(t)),e}function jl(e){Me===null?Me=e:Me.push.apply(Me,e)}function Bp(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 i=n[r],o=i.getSnapshot;i=i.value;try{if(!lt(o(),i))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 Mt(e,t){for(t&=~gs,t&=~Gi,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-it(t),r=1<<n;e[n]=-1,t&=~r}}function Wa(e){if(B&6)throw Error(P(327));Rn();var t=wi(e,0);if(!(t&1))return Ae(e,oe()),null;var n=Ai(e,t);if(e.tag!==0&&n===2){var r=el(e);r!==0&&(t=r,n=_l(e,r))}if(n===1)throw n=Cr,en(e,0),Mt(e,t),Ae(e,oe()),n;if(n===6)throw Error(P(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,Zt(e,Me,gt),Ae(e,oe()),null}function ys(e,t){var n=B;B|=1;try{return e(t)}finally{B=n,B===0&&(Fn=oe()+500,Xi&&Kt())}}function sn(e){Lt!==null&&Lt.tag===0&&!(B&6)&&Rn();var t=B;B|=1;var n=Ze.transition,r=X;try{if(Ze.transition=null,X=1,e)return e()}finally{X=r,Ze.transition=n,B=t,!(B&6)&&Kt()}}function ws(){Ue=Nn.current,Z(Nn)}function en(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(n!==-1&&(e.timeoutHandle=-1,yp(n)),ae!==null)for(n=ae.return;n!==null;){var r=n;switch(ql(r),r.tag){case 1:r=r.type.childContextTypes,r!=null&&Ni();break;case 3:In(),Z(Le),Z(Pe),as();break;case 5:ss(r);break;case 4:In();break;case 13:Z(q);break;case 19:Z(q);break;case 10:rs(r.type._context);break;case 22:case 23:ws()}n=n.return}if(me=e,ae=e=$t(e.current,null),ye=Ue=t,de=0,Cr=null,gs=Gi=ln=0,Me=ar=null,bt!==null){for(t=0;t<bt.length;t++)if(n=bt[t],r=n.interleaved,r!==null){n.interleaved=null;var i=r.next,o=n.pending;if(o!==null){var l=o.next;o.next=i,r.next=l}n.pending=r}bt=null}return e}function qc(e,t){do{var n=ae;try{if(ns(),ui.current=Mi,Ti){for(var r=ee.memoizedState;r!==null;){var i=r.queue;i!==null&&(i.pending=null),r=r.next}Ti=!1}if(on=0,he=fe=ee=null,lr=!1,Er=0,ms.current=null,n===null||n.return===null){de=1,Cr=t,ae=null;break}e:{var o=e,l=n.return,s=n,a=t;if(t=ye,s.flags|=32768,a!==null&&typeof a=="object"&&typeof a.then=="function"){var u=a,m=s,h=m.tag;if(!(m.mode&1)&&(h===0||h===11||h===15)){var g=m.alternate;g?(m.updateQueue=g.updateQueue,m.memoizedState=g.memoizedState,m.lanes=g.lanes):(m.updateQueue=null,m.memoizedState=null)}var S=Ca(l);if(S!==null){S.flags&=-257,za(S,l,s,o,t),S.mode&1&&Pa(o,u,t),t=S,a=u;var w=t.updateQueue;if(w===null){var y=new Set;y.add(a),t.updateQueue=y}else w.add(a);break e}else{if(!(t&1)){Pa(o,u,t),Ss();break e}a=Error(P(426))}}else if(J&&s.mode&1){var D=Ca(l);if(D!==null){!(D.flags&65536)&&(D.flags|=256),za(D,l,s,o,t),es(An(a,s));break e}}o=a=An(a,s),de!==4&&(de=2),ar===null?ar=[o]:ar.push(o),o=l;do{switch(o.tag){case 3:o.flags|=65536,t&=-t,o.lanes|=t;var p=Ic(o,a,t);wa(o,p);break e;case 1:s=a;var c=o.type,f=o.stateNode;if(!(o.flags&128)&&(typeof c.getDerivedStateFromError=="function"||f!==null&&typeof f.componentDidCatch=="function"&&(Ht===null||!Ht.has(f)))){o.flags|=65536,t&=-t,o.lanes|=t;var v=Ac(o,s,t);wa(o,v);break e}}o=o.return}while(o!==null)}nf(n)}catch(x){t=x,ae===n&&n!==null&&(ae=n=n.return);continue}break}while(!0)}function ef(){var e=Oi.current;return Oi.current=Mi,e===null?Mi:e}function Ss(){(de===0||de===3||de===2)&&(de=4),me===null||!(ln&268435455)&&!(Gi&268435455)||Mt(me,ye)}function Ai(e,t){var n=B;B|=2;var r=ef();(me!==e||ye!==t)&&(gt=null,en(e,t));do try{$p();break}catch(i){qc(e,i)}while(!0);if(ns(),B=n,Oi.current=r,ae!==null)throw Error(P(261));return me=null,ye=0,de}function $p(){for(;ae!==null;)tf(ae)}function Vp(){for(;ae!==null&&!md();)tf(ae)}function tf(e){var t=of(e.alternate,e,Ue);e.memoizedProps=e.pendingProps,t===null?nf(e):ae=t,ms.current=null}function nf(e){var t=e;do{var n=t.alternate;if(e=t.return,t.flags&32768){if(n=Ap(n,t),n!==null){n.flags&=32767,ae=n;return}if(e!==null)e.flags|=32768,e.subtreeFlags=0,e.deletions=null;else{de=6,ae=null;return}}else if(n=Ip(n,t,Ue),n!==null){ae=n;return}if(t=t.sibling,t!==null){ae=t;return}ae=t=e}while(t!==null);de===0&&(de=5)}function Zt(e,t,n){var r=X,i=Ze.transition;try{Ze.transition=null,X=1,Xp(e,t,n,r)}finally{Ze.transition=i,X=r}return null}function Xp(e,t,n,r){do Rn();while(Lt!==null);if(B&6)throw Error(P(327));n=e.finishedWork;var i=e.finishedLanes;if(n===null)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(P(177));e.callbackNode=null,e.callbackPriority=0;var o=n.lanes|n.childLanes;if(Pd(e,o),e===me&&(ae=me=null,ye=0),!(n.subtreeFlags&2064)&&!(n.flags&2064)||Zr||(Zr=!0,lf(yi,function(){return Rn(),null})),o=(n.flags&15990)!==0,n.subtreeFlags&15990||o){o=Ze.transition,Ze.transition=null;var l=X;X=1;var s=B;B|=4,ms.current=null,Wp(e,n),Zc(n,e),fp(ll),Si=!!ol,ll=ol=null,e.current=n,Up(n),gd(),B=s,X=l,Ze.transition=o}else e.current=n;if(Zr&&(Zr=!1,Lt=e,Ii=i),o=e.pendingLanes,o===0&&(Ht=null),wd(n.stateNode),Ae(e,oe()),t!==null)for(r=e.onRecoverableError,n=0;n<t.length;n++)i=t[n],r(i.value,{componentStack:i.stack,digest:i.digest});if(Li)throw Li=!1,e=Cl,Cl=null,e;return Ii&1&&e.tag!==0&&Rn(),o=e.pendingLanes,o&1?e===zl?ur++:(ur=0,zl=e):ur=0,Kt(),null}function Rn(){if(Lt!==null){var e=Iu(Ii),t=Ze.transition,n=X;try{if(Ze.transition=null,X=16>e?16:e,Lt===null)var r=!1;else{if(e=Lt,Lt=null,Ii=0,B&6)throw Error(P(331));var i=B;for(B|=4,j=e.current;j!==null;){var o=j,l=o.child;if(j.flags&16){var s=o.deletions;if(s!==null){for(var a=0;a<s.length;a++){var u=s[a];for(j=u;j!==null;){var m=j;switch(m.tag){case 0:case 11:case 15:sr(8,m,o)}var h=m.child;if(h!==null)h.return=m,j=h;else for(;j!==null;){m=j;var g=m.sibling,S=m.return;if(Yc(m),m===u){j=null;break}if(g!==null){g.return=S,j=g;break}j=S}}}var w=o.alternate;if(w!==null){var y=w.child;if(y!==null){w.child=null;do{var D=y.sibling;y.sibling=null,y=D}while(y!==null)}}j=o}}if(o.subtreeFlags&2064&&l!==null)l.return=o,j=l;else e:for(;j!==null;){if(o=j,o.flags&2048)switch(o.tag){case 0:case 11:case 15:sr(9,o,o.return)}var p=o.sibling;if(p!==null){p.return=o.return,j=p;break e}j=o.return}}var c=e.current;for(j=c;j!==null;){l=j;var f=l.child;if(l.subtreeFlags&2064&&f!==null)f.return=l,j=f;else e:for(l=c;j!==null;){if(s=j,s.flags&2048)try{switch(s.tag){case 0:case 11:case 15:Ki(9,s)}}catch(x){re(s,s.return,x)}if(s===l){j=null;break e}var v=s.sibling;if(v!==null){v.return=s.return,j=v;break e}j=s.return}}if(B=i,Kt(),ft&&typeof ft.onPostCommitFiberRoot=="function")try{ft.onPostCommitFiberRoot(Ui,e)}catch{}r=!0}return r}finally{X=n,Ze.transition=t}}return!1}function Ua(e,t,n){t=An(n,t),t=Ic(e,t,1),e=Ut(e,t,1),t=je(),e!==null&&(_r(e,1,t),Ae(e,t))}function re(e,t,n){if(e.tag===3)Ua(e,e,n);else for(;t!==null;){if(t.tag===3){Ua(t,e,n);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof r.componentDidCatch=="function"&&(Ht===null||!Ht.has(r))){e=An(n,e),e=Ac(t,e,1),t=Ut(t,e,1),e=je(),t!==null&&(_r(t,1,e),Ae(t,e));break}}t=t.return}}function Qp(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),t=je(),e.pingedLanes|=e.suspendedLanes&n,me===e&&(ye&n)===n&&(de===4||de===3&&(ye&130023424)===ye&&500>oe()-vs?en(e,0):gs|=n),Ae(e,t)}function rf(e,t){t===0&&(e.mode&1?(t=Ur,Ur<<=1,!(Ur&130023424)&&(Ur=4194304)):t=1);var n=je();e=Et(e,t),e!==null&&(_r(e,t,n),Ae(e,n))}function Yp(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),rf(e,n)}function Kp(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,i=e.memoizedState;i!==null&&(n=i.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(P(314))}r!==null&&r.delete(t),rf(e,n)}var of;of=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||Le.current)Oe=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return Oe=!1,Lp(e,t,n);Oe=!!(e.flags&131072)}else Oe=!1,J&&t.flags&1048576&&ac(t,zi,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;fi(e,t),e=t.pendingProps;var i=Mn(t,Pe.current);Dn(t,n),i=cs(null,t,r,e,i,n);var o=fs();return t.flags|=1,typeof i=="object"&&i!==null&&typeof i.render=="function"&&i.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,Ie(r)?(o=!0,Pi(t)):o=!1,t.memoizedState=i.state!==null&&i.state!==void 0?i.state:null,os(t),i.updater=Yi,t.stateNode=i,i._reactInternals=t,ml(t,r,e,n),t=yl(null,t,r,!0,o,n)):(t.tag=0,J&&o&&bl(t),_e(null,t,i,n),t=t.child),t;case 16:r=t.elementType;e:{switch(fi(e,t),e=t.pendingProps,i=r._init,r=i(r._payload),t.type=r,i=t.tag=Zp(r),e=tt(r,e),i){case 0:t=vl(null,t,r,e,n);break e;case 1:t=Da(null,t,r,e,n);break e;case 11:t=_a(null,t,r,e,n);break e;case 14:t=ja(null,t,r,tt(r.type,e),n);break e}throw Error(P(306,r,""))}return t;case 0:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:tt(r,i),vl(e,t,r,i,n);case 1:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:tt(r,i),Da(e,t,r,i,n);case 3:e:{if(Hc(t),e===null)throw Error(P(387));r=t.pendingProps,o=t.memoizedState,i=o.element,hc(e,t),Di(t,r,null,n);var l=t.memoizedState;if(r=l.element,o.isDehydrated)if(o={element:r,isDehydrated:!1,cache:l.cache,pendingSuspenseBoundaries:l.pendingSuspenseBoundaries,transitions:l.transitions},t.updateQueue.baseState=o,t.memoizedState=o,t.flags&256){i=An(Error(P(423)),t),t=Ra(e,t,r,n,i);break e}else if(r!==i){i=An(Error(P(424)),t),t=Ra(e,t,r,n,i);break e}else for(He=Wt(t.stateNode.containerInfo.firstChild),Be=t,J=!0,rt=null,n=dc(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(On(),r===i){t=Nt(e,t,n);break e}_e(e,t,r,n)}t=t.child}return t;case 5:return mc(t),e===null&&dl(t),r=t.type,i=t.pendingProps,o=e!==null?e.memoizedProps:null,l=i.children,sl(r,i)?l=null:o!==null&&sl(r,o)&&(t.flags|=32),Uc(e,t),_e(e,t,l,n),t.child;case 6:return e===null&&dl(t),null;case 13:return Bc(e,t,n);case 4:return ls(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=Ln(t,null,r,n):_e(e,t,r,n),t.child;case 11:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:tt(r,i),_a(e,t,r,i,n);case 7:return _e(e,t,t.pendingProps,n),t.child;case 8:return _e(e,t,t.pendingProps.children,n),t.child;case 12:return _e(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,i=t.pendingProps,o=t.memoizedProps,l=i.value,K(_i,r._currentValue),r._currentValue=l,o!==null)if(lt(o.value,l)){if(o.children===i.children&&!Le.current){t=Nt(e,t,n);break e}}else for(o=t.child,o!==null&&(o.return=t);o!==null;){var s=o.dependencies;if(s!==null){l=o.child;for(var a=s.firstContext;a!==null;){if(a.context===r){if(o.tag===1){a=St(-1,n&-n),a.tag=2;var u=o.updateQueue;if(u!==null){u=u.shared;var m=u.pending;m===null?a.next=a:(a.next=m.next,m.next=a),u.pending=a}}o.lanes|=n,a=o.alternate,a!==null&&(a.lanes|=n),pl(o.return,n,t),s.lanes|=n;break}a=a.next}}else if(o.tag===10)l=o.type===t.type?null:o.child;else if(o.tag===18){if(l=o.return,l===null)throw Error(P(341));l.lanes|=n,s=l.alternate,s!==null&&(s.lanes|=n),pl(l,n,t),l=o.sibling}else l=o.child;if(l!==null)l.return=o;else for(l=o;l!==null;){if(l===t){l=null;break}if(o=l.sibling,o!==null){o.return=l.return,l=o;break}l=l.return}o=l}_e(e,t,i.children,n),t=t.child}return t;case 9:return i=t.type,r=t.pendingProps.children,Dn(t,n),i=Je(i),r=r(i),t.flags|=1,_e(e,t,r,n),t.child;case 14:return r=t.type,i=tt(r,t.pendingProps),i=tt(r.type,i),ja(e,t,r,i,n);case 15:return Fc(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:tt(r,i),fi(e,t),t.tag=1,Ie(r)?(e=!0,Pi(t)):e=!1,Dn(t,n),Lc(t,r,i),ml(t,r,i,n),yl(null,t,r,!0,e,n);case 19:return $c(e,t,n);case 22:return Wc(e,t,n)}throw Error(P(156,t.tag))};function lf(e,t){return Tu(e,t)}function Gp(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 Ge(e,t,n,r){return new Gp(e,t,n,r)}function xs(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Zp(e){if(typeof e=="function")return xs(e)?1:0;if(e!=null){if(e=e.$$typeof,e===Ul)return 11;if(e===Hl)return 14}return 2}function $t(e,t){var n=e.alternate;return n===null?(n=Ge(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 hi(e,t,n,r,i,o){var l=2;if(r=e,typeof e=="function")xs(e)&&(l=1);else if(typeof e=="string")l=5;else e:switch(e){case hn:return tn(n.children,i,o,t);case Wl:l=8,i|=8;break;case Wo:return e=Ge(12,n,t,i|2),e.elementType=Wo,e.lanes=o,e;case Uo:return e=Ge(13,n,t,i),e.elementType=Uo,e.lanes=o,e;case Ho:return e=Ge(19,n,t,i),e.elementType=Ho,e.lanes=o,e;case mu:return Zi(n,i,o,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case pu:l=10;break e;case hu:l=9;break e;case Ul:l=11;break e;case Hl:l=14;break e;case Dt:l=16,r=null;break e}throw Error(P(130,e==null?e:typeof e,""))}return t=Ge(l,n,t,i),t.elementType=e,t.type=r,t.lanes=o,t}function tn(e,t,n,r){return e=Ge(7,e,r,t),e.lanes=n,e}function Zi(e,t,n,r){return e=Ge(22,e,r,t),e.elementType=mu,e.lanes=n,e.stateNode={isHidden:!1},e}function Ro(e,t,n){return e=Ge(6,e,null,t),e.lanes=n,e}function To(e,t,n){return t=Ge(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Jp(e,t,n,r,i){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=fo(0),this.expirationTimes=fo(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=fo(0),this.identifierPrefix=r,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function ks(e,t,n,r,i,o,l,s,a){return e=new Jp(e,t,n,s,a),t===1?(t=1,o===!0&&(t|=8)):t=0,o=Ge(3,null,null,t),e.current=o,o.stateNode=e,o.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},os(o),e}function bp(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:pn,key:r==null?null:""+r,children:e,containerInfo:t,implementation:n}}function sf(e){if(!e)return Xt;e=e._reactInternals;e:{if(un(e)!==e||e.tag!==1)throw Error(P(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(Ie(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(t!==null);throw Error(P(171))}if(e.tag===1){var n=e.type;if(Ie(n))return lc(e,n,t)}return t}function af(e,t,n,r,i,o,l,s,a){return e=ks(n,r,!0,e,i,o,l,s,a),e.context=sf(null),n=e.current,r=je(),i=Bt(n),o=St(r,i),o.callback=t??null,Ut(n,o,i),e.current.lanes=i,_r(e,i,r),Ae(e,r),e}function Ji(e,t,n,r){var i=t.current,o=je(),l=Bt(i);return n=sf(n),t.context===null?t.context=n:t.pendingContext=n,t=St(o,l),t.payload={element:e},r=r===void 0?null:r,r!==null&&(t.callback=r),e=Ut(i,t,l),e!==null&&(ot(e,i,l,o),ai(e,i,l)),l}function Fi(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 Ha(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function Es(e,t){Ha(e,t),(e=e.alternate)&&Ha(e,t)}function qp(){return null}var uf=typeof reportError=="function"?reportError:function(e){console.error(e)};function Ns(e){this._internalRoot=e}bi.prototype.render=Ns.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(P(409));Ji(e,t,null,null)};bi.prototype.unmount=Ns.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;sn(function(){Ji(null,e,null,null)}),t[kt]=null}};function bi(e){this._internalRoot=e}bi.prototype.unstable_scheduleHydration=function(e){if(e){var t=Wu();e={blockedOn:null,target:e,priority:t};for(var n=0;n<Tt.length&&t!==0&&t<Tt[n].priority;n++);Tt.splice(n,0,e),n===0&&Hu(e)}};function Ps(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function qi(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11&&(e.nodeType!==8||e.nodeValue!==" react-mount-point-unstable "))}function Ba(){}function eh(e,t,n,r,i){if(i){if(typeof r=="function"){var o=r;r=function(){var u=Fi(l);o.call(u)}}var l=af(t,r,e,0,null,!1,!1,"",Ba);return e._reactRootContainer=l,e[kt]=l.current,yr(e.nodeType===8?e.parentNode:e),sn(),l}for(;i=e.lastChild;)e.removeChild(i);if(typeof r=="function"){var s=r;r=function(){var u=Fi(a);s.call(u)}}var a=ks(e,0,!1,null,null,!1,!1,"",Ba);return e._reactRootContainer=a,e[kt]=a.current,yr(e.nodeType===8?e.parentNode:e),sn(function(){Ji(t,a,n,r)}),a}function eo(e,t,n,r,i){var o=n._reactRootContainer;if(o){var l=o;if(typeof i=="function"){var s=i;i=function(){var a=Fi(l);s.call(a)}}Ji(t,l,e,i)}else l=eh(n,t,e,i,r);return Fi(l)}Au=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=qn(t.pendingLanes);n!==0&&(Vl(t,n|1),Ae(t,oe()),!(B&6)&&(Fn=oe()+500,Kt()))}break;case 13:sn(function(){var r=Et(e,1);if(r!==null){var i=je();ot(r,e,1,i)}}),Es(e,1)}};Xl=function(e){if(e.tag===13){var t=Et(e,134217728);if(t!==null){var n=je();ot(t,e,134217728,n)}Es(e,134217728)}};Fu=function(e){if(e.tag===13){var t=Bt(e),n=Et(e,t);if(n!==null){var r=je();ot(n,e,t,r)}Es(e,t)}};Wu=function(){return X};Uu=function(e,t){var n=X;try{return X=e,t()}finally{X=n}};Jo=function(e,t,n){switch(t){case"input":if(Vo(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 i=Vi(r);if(!i)throw Error(P(90));vu(r),Vo(r,i)}}}break;case"textarea":wu(e,n);break;case"select":t=n.value,t!=null&&Cn(e,!!n.multiple,t,!1)}};Cu=ys;zu=sn;var th={usingClientEntryPoint:!1,Events:[Dr,yn,Vi,Nu,Pu,ys]},Gn={findFiberByHostInstance:Jt,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},nh={bundleType:Gn.bundleType,version:Gn.version,rendererPackageName:Gn.rendererPackageName,rendererConfig:Gn.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:Pt.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return e=Du(e),e===null?null:e.stateNode},findFiberByHostInstance:Gn.findFiberByHostInstance||qp,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 Jr=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Jr.isDisabled&&Jr.supportsFiber)try{Ui=Jr.inject(nh),ft=Jr}catch{}}Xe.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=th;Xe.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!Ps(t))throw Error(P(200));return bp(e,t,null,n)};Xe.createRoot=function(e,t){if(!Ps(e))throw Error(P(299));var n=!1,r="",i=uf;return t!=null&&(t.unstable_strictMode===!0&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onRecoverableError!==void 0&&(i=t.onRecoverableError)),t=ks(e,1,!1,null,null,n,!1,r,i),e[kt]=t.current,yr(e.nodeType===8?e.parentNode:e),new Ns(t)};Xe.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(P(188)):(e=Object.keys(e).join(","),Error(P(268,e)));return e=Du(t),e=e===null?null:e.stateNode,e};Xe.flushSync=function(e){return sn(e)};Xe.hydrate=function(e,t,n){if(!qi(t))throw Error(P(200));return eo(null,e,t,!0,n)};Xe.hydrateRoot=function(e,t,n){if(!Ps(e))throw Error(P(405));var r=n!=null&&n.hydratedSources||null,i=!1,o="",l=uf;if(n!=null&&(n.unstable_strictMode===!0&&(i=!0),n.identifierPrefix!==void 0&&(o=n.identifierPrefix),n.onRecoverableError!==void 0&&(l=n.onRecoverableError)),t=af(t,null,e,1,n??null,i,!1,o,l),e[kt]=t.current,yr(e),r)for(e=0;e<r.length;e++)n=r[e],i=n._getVersion,i=i(n._source),t.mutableSourceEagerHydrationData==null?t.mutableSourceEagerHydrationData=[n,i]:t.mutableSourceEagerHydrationData.push(n,i);return new bi(t)};Xe.render=function(e,t,n){if(!qi(t))throw Error(P(200));return eo(null,e,t,!1,n)};Xe.unmountComponentAtNode=function(e){if(!qi(e))throw Error(P(40));return e._reactRootContainer?(sn(function(){eo(null,null,e,!1,function(){e._reactRootContainer=null,e[kt]=null})}),!0):!1};Xe.unstable_batchedUpdates=ys;Xe.unstable_renderSubtreeIntoContainer=function(e,t,n,r){if(!qi(n))throw Error(P(200));if(e==null||e._reactInternals===void 0)throw Error(P(38));return eo(e,t,n,!1,r)};Xe.version="18.3.1-next-f1338f8080-20240426";function cf(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(cf)}catch(e){console.error(e)}}cf(),uu.exports=Xe;var Tr=uu.exports,$a=Tr;Ao.createRoot=$a.createRoot,Ao.hydrateRoot=$a.hydrateRoot;var to={exports:{}},ff={},df={exports:{}},rh="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED",ih=rh,oh=ih;function pf(){}function hf(){}hf.resetWarningCache=pf;var lh=function(){function e(r,i,o,l,s,a){if(a!==oh){var u=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw u.name="Invariant Violation",u}}e.isRequired=e;function t(){return e}var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:hf,resetWarningCache:pf};return n.PropTypes=n,n};df.exports=lh();var mf=df.exports;function gf(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e))for(t=0;t<e.length;t++)e[t]&&(n=gf(e[t]))&&(r&&(r+=" "),r+=n);else for(t in e)e[t]&&(r&&(r+=" "),r+=t);return r}function Va(){for(var e,t,n=0,r="";n<arguments.length;)(e=arguments[n++])&&(t=gf(e))&&(r&&(r+=" "),r+=t);return r}const sh=Object.freeze(Object.defineProperty({__proto__:null,clsx:Va,default:Va},Symbol.toStringTag,{value:"Module"})),ah=Rf(sh);var ie={},pt={};Object.defineProperty(pt,"__esModule",{value:!0});pt.dontSetMe=ph;pt.findInArray=uh;pt.int=dh;pt.isFunction=ch;pt.isNum=fh;function uh(e,t){for(let n=0,r=e.length;n<r;n++)if(t.apply(t,[e[n],n,e]))return e[n]}function ch(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Function]"}function fh(e){return typeof e=="number"&&!isNaN(e)}function dh(e){return parseInt(e,10)}function ph(e,t,n){if(e[t])return new Error("Invalid prop ".concat(t," passed to ").concat(n," - do not set this, set it on the child."))}var cn={};Object.defineProperty(cn,"__esModule",{value:!0});cn.browserPrefixToKey=yf;cn.browserPrefixToStyle=hh;cn.default=void 0;cn.getPrefix=vf;const Mo=["Moz","Webkit","O","ms"];function vf(){var e;let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"transform";if(typeof window>"u")return"";const n=(e=window.document)===null||e===void 0||(e=e.documentElement)===null||e===void 0?void 0:e.style;if(!n||t in n)return"";for(let r=0;r<Mo.length;r++)if(yf(t,Mo[r])in n)return Mo[r];return""}function yf(e,t){return t?"".concat(t).concat(mh(e)):e}function hh(e,t){return t?"-".concat(t.toLowerCase(),"-").concat(e):e}function mh(e){let t="",n=!0;for(let r=0;r<e.length;r++)n?(t+=e[r].toUpperCase(),n=!1):e[r]==="-"?n=!0:t+=e[r];return t}cn.default=vf();Object.defineProperty(ie,"__esModule",{value:!0});ie.addClassName=xf;ie.addEvent=yh;ie.addUserSelectStyles=jh;ie.createCSSTransform=Ph;ie.createSVGTransform=Ch;ie.getTouch=zh;ie.getTouchIdentifier=_h;ie.getTranslation=Cs;ie.innerHeight=kh;ie.innerWidth=Eh;ie.matchesSelector=Sf;ie.matchesSelectorAndParentsTo=vh;ie.offsetXYFromParent=Nh;ie.outerHeight=Sh;ie.outerWidth=xh;ie.removeClassName=kf;ie.removeEvent=wh;ie.removeUserSelectStyles=Dh;var $e=pt,Xa=gh(cn);function wf(e){if(typeof WeakMap!="function")return null;var t=new WeakMap,n=new WeakMap;return(wf=function(r){return r?n:t})(e)}function gh(e,t){if(e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var n=wf(t);if(n&&n.has(e))return n.get(e);var r={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(o!=="default"&&Object.prototype.hasOwnProperty.call(e,o)){var l=i?Object.getOwnPropertyDescriptor(e,o):null;l&&(l.get||l.set)?Object.defineProperty(r,o,l):r[o]=e[o]}return r.default=e,n&&n.set(e,r),r}let br="";function Sf(e,t){return br||(br=(0,$e.findInArray)(["matches","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector"],function(n){return(0,$e.isFunction)(e[n])})),(0,$e.isFunction)(e[br])?e[br](t):!1}function vh(e,t,n){let r=e;do{if(Sf(r,t))return!0;if(r===n)return!1;r=r.parentNode}while(r);return!1}function yh(e,t,n,r){if(!e)return;const i={capture:!0,...r};e.addEventListener?e.addEventListener(t,n,i):e.attachEvent?e.attachEvent("on"+t,n):e["on"+t]=n}function wh(e,t,n,r){if(!e)return;const i={capture:!0,...r};e.removeEventListener?e.removeEventListener(t,n,i):e.detachEvent?e.detachEvent("on"+t,n):e["on"+t]=null}function Sh(e){let t=e.clientHeight;const n=e.ownerDocument.defaultView.getComputedStyle(e);return t+=(0,$e.int)(n.borderTopWidth),t+=(0,$e.int)(n.borderBottomWidth),t}function xh(e){let t=e.clientWidth;const n=e.ownerDocument.defaultView.getComputedStyle(e);return t+=(0,$e.int)(n.borderLeftWidth),t+=(0,$e.int)(n.borderRightWidth),t}function kh(e){let t=e.clientHeight;const n=e.ownerDocument.defaultView.getComputedStyle(e);return t-=(0,$e.int)(n.paddingTop),t-=(0,$e.int)(n.paddingBottom),t}function Eh(e){let t=e.clientWidth;const n=e.ownerDocument.defaultView.getComputedStyle(e);return t-=(0,$e.int)(n.paddingLeft),t-=(0,$e.int)(n.paddingRight),t}function Nh(e,t,n){const i=t===t.ownerDocument.body?{left:0,top:0}:t.getBoundingClientRect(),o=(e.clientX+t.scrollLeft-i.left)/n,l=(e.clientY+t.scrollTop-i.top)/n;return{x:o,y:l}}function Ph(e,t){const n=Cs(e,t,"px");return{[(0,Xa.browserPrefixToKey)("transform",Xa.default)]:n}}function Ch(e,t){return Cs(e,t,"")}function Cs(e,t,n){let{x:r,y:i}=e,o="translate(".concat(r).concat(n,",").concat(i).concat(n,")");if(t){const l="".concat(typeof t.x=="string"?t.x:t.x+n),s="".concat(typeof t.y=="string"?t.y:t.y+n);o="translate(".concat(l,", ").concat(s,")")+o}return o}function zh(e,t){return e.targetTouches&&(0,$e.findInArray)(e.targetTouches,n=>t===n.identifier)||e.changedTouches&&(0,$e.findInArray)(e.changedTouches,n=>t===n.identifier)}function _h(e){if(e.targetTouches&&e.targetTouches[0])return e.targetTouches[0].identifier;if(e.changedTouches&&e.changedTouches[0])return e.changedTouches[0].identifier}function jh(e){if(!e)return;let t=e.getElementById("react-draggable-style-el");t||(t=e.createElement("style"),t.type="text/css",t.id="react-draggable-style-el",t.innerHTML=`.react-draggable-transparent-selection *::-moz-selection {all: inherit;}
41
+ `,t.innerHTML+=`.react-draggable-transparent-selection *::selection {all: inherit;}
42
+ `,e.getElementsByTagName("head")[0].appendChild(t)),e.body&&xf(e.body,"react-draggable-transparent-selection")}function Dh(e){if(e)try{if(e.body&&kf(e.body,"react-draggable-transparent-selection"),e.selection)e.selection.empty();else{const t=(e.defaultView||window).getSelection();t&&t.type!=="Caret"&&t.removeAllRanges()}}catch{}}function xf(e,t){e.classList?e.classList.add(t):e.className.match(new RegExp("(?:^|\\s)".concat(t,"(?!\\S)")))||(e.className+=" ".concat(t))}function kf(e,t){e.classList?e.classList.remove(t):e.className=e.className.replace(new RegExp("(?:^|\\s)".concat(t,"(?!\\S)"),"g"),"")}var ht={};Object.defineProperty(ht,"__esModule",{value:!0});ht.canDragX=Mh;ht.canDragY=Oh;ht.createCoreData=Ih;ht.createDraggableData=Ah;ht.getBoundPosition=Rh;ht.getControlPosition=Lh;ht.snapToGrid=Th;var We=pt,Pn=ie;function Rh(e,t,n){if(!e.props.bounds)return[t,n];let{bounds:r}=e.props;r=typeof r=="string"?r:Fh(r);const i=zs(e);if(typeof r=="string"){const{ownerDocument:o}=i,l=o.defaultView;let s;if(r==="parent"?s=i.parentNode:s=o.querySelector(r),!(s instanceof l.HTMLElement))throw new Error('Bounds selector "'+r+'" could not find an element.');const a=s,u=l.getComputedStyle(i),m=l.getComputedStyle(a);r={left:-i.offsetLeft+(0,We.int)(m.paddingLeft)+(0,We.int)(u.marginLeft),top:-i.offsetTop+(0,We.int)(m.paddingTop)+(0,We.int)(u.marginTop),right:(0,Pn.innerWidth)(a)-(0,Pn.outerWidth)(i)-i.offsetLeft+(0,We.int)(m.paddingRight)-(0,We.int)(u.marginRight),bottom:(0,Pn.innerHeight)(a)-(0,Pn.outerHeight)(i)-i.offsetTop+(0,We.int)(m.paddingBottom)-(0,We.int)(u.marginBottom)}}return(0,We.isNum)(r.right)&&(t=Math.min(t,r.right)),(0,We.isNum)(r.bottom)&&(n=Math.min(n,r.bottom)),(0,We.isNum)(r.left)&&(t=Math.max(t,r.left)),(0,We.isNum)(r.top)&&(n=Math.max(n,r.top)),[t,n]}function Th(e,t,n){const r=Math.round(t/e[0])*e[0],i=Math.round(n/e[1])*e[1];return[r,i]}function Mh(e){return e.props.axis==="both"||e.props.axis==="x"}function Oh(e){return e.props.axis==="both"||e.props.axis==="y"}function Lh(e,t,n){const r=typeof t=="number"?(0,Pn.getTouch)(e,t):null;if(typeof t=="number"&&!r)return null;const i=zs(n),o=n.props.offsetParent||i.offsetParent||i.ownerDocument.body;return(0,Pn.offsetXYFromParent)(r||e,o,n.props.scale)}function Ih(e,t,n){const r=!(0,We.isNum)(e.lastX),i=zs(e);return r?{node:i,deltaX:0,deltaY:0,lastX:t,lastY:n,x:t,y:n}:{node:i,deltaX:t-e.lastX,deltaY:n-e.lastY,lastX:e.lastX,lastY:e.lastY,x:t,y:n}}function Ah(e,t){const n=e.props.scale;return{node:t.node,x:e.state.x+t.deltaX/n,y:e.state.y+t.deltaY/n,deltaX:t.deltaX/n,deltaY:t.deltaY/n,lastX:e.state.x,lastY:e.state.y}}function Fh(e){return{left:e.left,top:e.top,right:e.right,bottom:e.bottom}}function zs(e){const t=e.findDOMNode();if(!t)throw new Error("<DraggableCore>: Unmounted during event!");return t}var no={},ro={};Object.defineProperty(ro,"__esModule",{value:!0});ro.default=Wh;function Wh(){}Object.defineProperty(no,"__esModule",{value:!0});no.default=void 0;var Oo=Hh(_),Te=_s(mf),Uh=_s(Tr),Ee=ie,_t=ht,Lo=pt,Zn=_s(ro);function _s(e){return e&&e.__esModule?e:{default:e}}function Ef(e){if(typeof WeakMap!="function")return null;var t=new WeakMap,n=new WeakMap;return(Ef=function(r){return r?n:t})(e)}function Hh(e,t){if(e&&e.__esModule)return e;if(e===null||typeof e!="object"&&typeof e!="function")return{default:e};var n=Ef(t);if(n&&n.has(e))return n.get(e);var r={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if(o!=="default"&&Object.prototype.hasOwnProperty.call(e,o)){var l=i?Object.getOwnPropertyDescriptor(e,o):null;l&&(l.get||l.set)?Object.defineProperty(r,o,l):r[o]=e[o]}return r.default=e,n&&n.set(e,r),r}function ze(e,t,n){return t=Bh(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Bh(e){var t=$h(e,"string");return typeof t=="symbol"?t:String(t)}function $h(e,t){if(typeof e!="object"||e===null)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}const et={touch:{start:"touchstart",move:"touchmove",stop:"touchend"},mouse:{start:"mousedown",move:"mousemove",stop:"mouseup"}};let jt=et.mouse,io=class extends Oo.Component{constructor(){super(...arguments),ze(this,"dragging",!1),ze(this,"lastX",NaN),ze(this,"lastY",NaN),ze(this,"touchIdentifier",null),ze(this,"mounted",!1),ze(this,"handleDragStart",t=>{if(this.props.onMouseDown(t),!this.props.allowAnyClick&&typeof t.button=="number"&&t.button!==0)return!1;const n=this.findDOMNode();if(!n||!n.ownerDocument||!n.ownerDocument.body)throw new Error("<DraggableCore> not mounted on DragStart!");const{ownerDocument:r}=n;if(this.props.disabled||!(t.target instanceof r.defaultView.Node)||this.props.handle&&!(0,Ee.matchesSelectorAndParentsTo)(t.target,this.props.handle,n)||this.props.cancel&&(0,Ee.matchesSelectorAndParentsTo)(t.target,this.props.cancel,n))return;t.type==="touchstart"&&t.preventDefault();const i=(0,Ee.getTouchIdentifier)(t);this.touchIdentifier=i;const o=(0,_t.getControlPosition)(t,i,this);if(o==null)return;const{x:l,y:s}=o,a=(0,_t.createCoreData)(this,l,s);(0,Zn.default)("DraggableCore: handleDragStart: %j",a),(0,Zn.default)("calling",this.props.onStart),!(this.props.onStart(t,a)===!1||this.mounted===!1)&&(this.props.enableUserSelectHack&&(0,Ee.addUserSelectStyles)(r),this.dragging=!0,this.lastX=l,this.lastY=s,(0,Ee.addEvent)(r,jt.move,this.handleDrag),(0,Ee.addEvent)(r,jt.stop,this.handleDragStop))}),ze(this,"handleDrag",t=>{const n=(0,_t.getControlPosition)(t,this.touchIdentifier,this);if(n==null)return;let{x:r,y:i}=n;if(Array.isArray(this.props.grid)){let s=r-this.lastX,a=i-this.lastY;if([s,a]=(0,_t.snapToGrid)(this.props.grid,s,a),!s&&!a)return;r=this.lastX+s,i=this.lastY+a}const o=(0,_t.createCoreData)(this,r,i);if((0,Zn.default)("DraggableCore: handleDrag: %j",o),this.props.onDrag(t,o)===!1||this.mounted===!1){try{this.handleDragStop(new MouseEvent("mouseup"))}catch{const a=document.createEvent("MouseEvents");a.initMouseEvent("mouseup",!0,!0,window,0,0,0,0,0,!1,!1,!1,!1,0,null),this.handleDragStop(a)}return}this.lastX=r,this.lastY=i}),ze(this,"handleDragStop",t=>{if(!this.dragging)return;const n=(0,_t.getControlPosition)(t,this.touchIdentifier,this);if(n==null)return;let{x:r,y:i}=n;if(Array.isArray(this.props.grid)){let a=r-this.lastX||0,u=i-this.lastY||0;[a,u]=(0,_t.snapToGrid)(this.props.grid,a,u),r=this.lastX+a,i=this.lastY+u}const o=(0,_t.createCoreData)(this,r,i);if(this.props.onStop(t,o)===!1||this.mounted===!1)return!1;const s=this.findDOMNode();s&&this.props.enableUserSelectHack&&(0,Ee.removeUserSelectStyles)(s.ownerDocument),(0,Zn.default)("DraggableCore: handleDragStop: %j",o),this.dragging=!1,this.lastX=NaN,this.lastY=NaN,s&&((0,Zn.default)("DraggableCore: Removing handlers"),(0,Ee.removeEvent)(s.ownerDocument,jt.move,this.handleDrag),(0,Ee.removeEvent)(s.ownerDocument,jt.stop,this.handleDragStop))}),ze(this,"onMouseDown",t=>(jt=et.mouse,this.handleDragStart(t))),ze(this,"onMouseUp",t=>(jt=et.mouse,this.handleDragStop(t))),ze(this,"onTouchStart",t=>(jt=et.touch,this.handleDragStart(t))),ze(this,"onTouchEnd",t=>(jt=et.touch,this.handleDragStop(t)))}componentDidMount(){this.mounted=!0;const t=this.findDOMNode();t&&(0,Ee.addEvent)(t,et.touch.start,this.onTouchStart,{passive:!1})}componentWillUnmount(){this.mounted=!1;const t=this.findDOMNode();if(t){const{ownerDocument:n}=t;(0,Ee.removeEvent)(n,et.mouse.move,this.handleDrag),(0,Ee.removeEvent)(n,et.touch.move,this.handleDrag),(0,Ee.removeEvent)(n,et.mouse.stop,this.handleDragStop),(0,Ee.removeEvent)(n,et.touch.stop,this.handleDragStop),(0,Ee.removeEvent)(t,et.touch.start,this.onTouchStart,{passive:!1}),this.props.enableUserSelectHack&&(0,Ee.removeUserSelectStyles)(n)}}findDOMNode(){var t,n;return(t=this.props)!==null&&t!==void 0&&t.nodeRef?(n=this.props)===null||n===void 0||(n=n.nodeRef)===null||n===void 0?void 0:n.current:Uh.default.findDOMNode(this)}render(){return Oo.cloneElement(Oo.Children.only(this.props.children),{onMouseDown:this.onMouseDown,onMouseUp:this.onMouseUp,onTouchEnd:this.onTouchEnd})}};no.default=io;ze(io,"displayName","DraggableCore");ze(io,"propTypes",{allowAnyClick:Te.default.bool,children:Te.default.node.isRequired,disabled:Te.default.bool,enableUserSelectHack:Te.default.bool,offsetParent:function(e,t){if(e[t]&&e[t].nodeType!==1)throw new Error("Draggable's offsetParent must be a DOM Node.")},grid:Te.default.arrayOf(Te.default.number),handle:Te.default.string,cancel:Te.default.string,nodeRef:Te.default.object,onStart:Te.default.func,onDrag:Te.default.func,onStop:Te.default.func,onMouseDown:Te.default.func,scale:Te.default.number,className:Lo.dontSetMe,style:Lo.dontSetMe,transform:Lo.dontSetMe});ze(io,"defaultProps",{allowAnyClick:!1,disabled:!1,enableUserSelectHack:!0,onStart:function(){},onDrag:function(){},onStop:function(){},onMouseDown:function(){},scale:1});(function(e){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"DraggableCore",{enumerable:!0,get:function(){return a.default}}),e.default=void 0;var t=g(_),n=m(mf),r=m(Tr),i=m(ah),o=ie,l=ht,s=pt,a=m(no),u=m(ro);function m(c){return c&&c.__esModule?c:{default:c}}function h(c){if(typeof WeakMap!="function")return null;var f=new WeakMap,v=new WeakMap;return(h=function(x){return x?v:f})(c)}function g(c,f){if(c&&c.__esModule)return c;if(c===null||typeof c!="object"&&typeof c!="function")return{default:c};var v=h(f);if(v&&v.has(c))return v.get(c);var x={},N=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var E in c)if(E!=="default"&&Object.prototype.hasOwnProperty.call(c,E)){var C=N?Object.getOwnPropertyDescriptor(c,E):null;C&&(C.get||C.set)?Object.defineProperty(x,E,C):x[E]=c[E]}return x.default=c,v&&v.set(c,x),x}function S(){return S=Object.assign?Object.assign.bind():function(c){for(var f=1;f<arguments.length;f++){var v=arguments[f];for(var x in v)Object.prototype.hasOwnProperty.call(v,x)&&(c[x]=v[x])}return c},S.apply(this,arguments)}function w(c,f,v){return f=y(f),f in c?Object.defineProperty(c,f,{value:v,enumerable:!0,configurable:!0,writable:!0}):c[f]=v,c}function y(c){var f=D(c,"string");return typeof f=="symbol"?f:String(f)}function D(c,f){if(typeof c!="object"||c===null)return c;var v=c[Symbol.toPrimitive];if(v!==void 0){var x=v.call(c,f);if(typeof x!="object")return x;throw new TypeError("@@toPrimitive must return a primitive value.")}return(f==="string"?String:Number)(c)}class p extends t.Component{static getDerivedStateFromProps(f,v){let{position:x}=f,{prevPropsPosition:N}=v;return x&&(!N||x.x!==N.x||x.y!==N.y)?((0,u.default)("Draggable: getDerivedStateFromProps %j",{position:x,prevPropsPosition:N}),{x:x.x,y:x.y,prevPropsPosition:{...x}}):null}constructor(f){super(f),w(this,"onDragStart",(v,x)=>{if((0,u.default)("Draggable: onDragStart: %j",x),this.props.onStart(v,(0,l.createDraggableData)(this,x))===!1)return!1;this.setState({dragging:!0,dragged:!0})}),w(this,"onDrag",(v,x)=>{if(!this.state.dragging)return!1;(0,u.default)("Draggable: onDrag: %j",x);const N=(0,l.createDraggableData)(this,x),E={x:N.x,y:N.y,slackX:0,slackY:0};if(this.props.bounds){const{x:I,y:T}=E;E.x+=this.state.slackX,E.y+=this.state.slackY;const[$,H]=(0,l.getBoundPosition)(this,E.x,E.y);E.x=$,E.y=H,E.slackX=this.state.slackX+(I-E.x),E.slackY=this.state.slackY+(T-E.y),N.x=E.x,N.y=E.y,N.deltaX=E.x-this.state.x,N.deltaY=E.y-this.state.y}if(this.props.onDrag(v,N)===!1)return!1;this.setState(E)}),w(this,"onDragStop",(v,x)=>{if(!this.state.dragging||this.props.onStop(v,(0,l.createDraggableData)(this,x))===!1)return!1;(0,u.default)("Draggable: onDragStop: %j",x);const E={dragging:!1,slackX:0,slackY:0};if(!!this.props.position){const{x:I,y:T}=this.props.position;E.x=I,E.y=T}this.setState(E)}),this.state={dragging:!1,dragged:!1,x:f.position?f.position.x:f.defaultPosition.x,y:f.position?f.position.y:f.defaultPosition.y,prevPropsPosition:{...f.position},slackX:0,slackY:0,isElementSVG:!1},f.position&&!(f.onDrag||f.onStop)&&console.warn("A `position` was applied to this <Draggable>, without drag handlers. This will make this component effectively undraggable. Please attach `onDrag` or `onStop` handlers so you can adjust the `position` of this element.")}componentDidMount(){typeof window.SVGElement<"u"&&this.findDOMNode()instanceof window.SVGElement&&this.setState({isElementSVG:!0})}componentWillUnmount(){this.setState({dragging:!1})}findDOMNode(){var f,v;return(f=(v=this.props)===null||v===void 0||(v=v.nodeRef)===null||v===void 0?void 0:v.current)!==null&&f!==void 0?f:r.default.findDOMNode(this)}render(){const{axis:f,bounds:v,children:x,defaultPosition:N,defaultClassName:E,defaultClassNameDragging:C,defaultClassNameDragged:I,position:T,positionOffset:$,scale:H,...Q}=this.props;let ue={},pe=null;const Ce=!!!T||this.state.dragging,z=T||N,O={x:(0,l.canDragX)(this)&&Ce?this.state.x:z.x,y:(0,l.canDragY)(this)&&Ce?this.state.y:z.y};this.state.isElementSVG?pe=(0,o.createSVGTransform)(O,$):ue=(0,o.createCSSTransform)(O,$);const R=(0,i.default)(x.props.className||"",E,{[C]:this.state.dragging,[I]:this.state.dragged});return t.createElement(a.default,S({},Q,{onStart:this.onDragStart,onDrag:this.onDrag,onStop:this.onDragStop}),t.cloneElement(t.Children.only(x),{className:R,style:{...x.props.style,...ue},transform:pe}))}}e.default=p,w(p,"displayName","Draggable"),w(p,"propTypes",{...a.default.propTypes,axis:n.default.oneOf(["both","x","y","none"]),bounds:n.default.oneOfType([n.default.shape({left:n.default.number,right:n.default.number,top:n.default.number,bottom:n.default.number}),n.default.string,n.default.oneOf([!1])]),defaultClassName:n.default.string,defaultClassNameDragging:n.default.string,defaultClassNameDragged:n.default.string,defaultPosition:n.default.shape({x:n.default.number,y:n.default.number}),positionOffset:n.default.shape({x:n.default.oneOfType([n.default.number,n.default.string]),y:n.default.oneOfType([n.default.number,n.default.string])}),position:n.default.shape({x:n.default.number,y:n.default.number}),className:s.dontSetMe,style:s.dontSetMe,transform:s.dontSetMe}),w(p,"defaultProps",{...a.default.defaultProps,axis:"both",bounds:!1,defaultClassName:"react-draggable",defaultClassNameDragging:"react-draggable-dragging",defaultClassNameDragged:"react-draggable-dragged",defaultPosition:{x:0,y:0},scale:1})})(ff);const{default:Nf,DraggableCore:Vh}=ff;to.exports=Nf;to.exports.default=Nf;to.exports.DraggableCore=Vh;var Xh=to.exports;const Qh=Ja(Xh);var se=function(){return se=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++){t=arguments[n];for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])}return e},se.apply(this,arguments)},Qa={width:"100%",height:"10px",top:"0px",left:"0px",cursor:"row-resize"},Ya={width:"10px",height:"100%",top:"0px",left:"0px",cursor:"col-resize"},qr={width:"20px",height:"20px",position:"absolute",zIndex:1},Yh={top:se(se({},Qa),{top:"-5px"}),right:se(se({},Ya),{left:void 0,right:"-5px"}),bottom:se(se({},Qa),{top:void 0,bottom:"-5px"}),left:se(se({},Ya),{left:"-5px"}),topRight:se(se({},qr),{right:"-10px",top:"-10px",cursor:"ne-resize"}),bottomRight:se(se({},qr),{right:"-10px",bottom:"-10px",cursor:"se-resize"}),bottomLeft:se(se({},qr),{left:"-10px",bottom:"-10px",cursor:"sw-resize"}),topLeft:se(se({},qr),{left:"-10px",top:"-10px",cursor:"nw-resize"})},Kh=_.memo(function(e){var t=e.onResizeStart,n=e.direction,r=e.children,i=e.replaceStyles,o=e.className,l=_.useCallback(function(u){t(u,n)},[t,n]),s=_.useCallback(function(u){t(u,n)},[t,n]),a=_.useMemo(function(){return se(se({position:"absolute",userSelect:"none"},Yh[n]),i??{})},[i,n]);return d.jsx("div",{className:o||void 0,style:a,onMouseDown:l,onTouchStart:s,children:r})}),Gh=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,i){r.__proto__=i}||function(r,i){for(var o in i)Object.prototype.hasOwnProperty.call(i,o)&&(r[o]=i[o])},e(t,n)};return function(t,n){if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),ut=function(){return ut=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++){t=arguments[n];for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])}return e},ut.apply(this,arguments)},Zh={width:"auto",height:"auto"},ei=function(e,t,n){return Math.max(Math.min(e,n),t)},Ka=function(e,t,n){var r=Math.round(e/t);return r*t+n*(r-1)},dn=function(e,t){return new RegExp(e,"i").test(t)},ti=function(e){return!!(e.touches&&e.touches.length)},Jh=function(e){return!!((e.clientX||e.clientX===0)&&(e.clientY||e.clientY===0))},Ga=function(e,t,n){n===void 0&&(n=0);var r=t.reduce(function(o,l,s){return Math.abs(l-e)<Math.abs(t[o]-e)?s:o},0),i=Math.abs(t[r]-e);return n===0||i<n?t[r]:e},Io=function(e){return e=e.toString(),e==="auto"||e.endsWith("px")||e.endsWith("%")||e.endsWith("vh")||e.endsWith("vw")||e.endsWith("vmax")||e.endsWith("vmin")?e:"".concat(e,"px")},ni=function(e,t,n,r){if(e&&typeof e=="string"){if(e.endsWith("px"))return Number(e.replace("px",""));if(e.endsWith("%")){var i=Number(e.replace("%",""))/100;return t*i}if(e.endsWith("vw")){var i=Number(e.replace("vw",""))/100;return n*i}if(e.endsWith("vh")){var i=Number(e.replace("vh",""))/100;return r*i}}return e},bh=function(e,t,n,r,i,o,l){return r=ni(r,e.width,t,n),i=ni(i,e.height,t,n),o=ni(o,e.width,t,n),l=ni(l,e.height,t,n),{maxWidth:typeof r>"u"?void 0:Number(r),maxHeight:typeof i>"u"?void 0:Number(i),minWidth:typeof o>"u"?void 0:Number(o),minHeight:typeof l>"u"?void 0:Number(l)}},qh=function(e){return Array.isArray(e)?e:[e,e]},em=["as","ref","style","className","grid","gridGap","snap","bounds","boundsByDirection","size","defaultSize","minWidth","minHeight","maxWidth","maxHeight","lockAspectRatio","lockAspectRatioExtraWidth","lockAspectRatioExtraHeight","enable","handleStyles","handleClasses","handleWrapperStyle","handleWrapperClass","children","onResizeStart","onResize","onResizeStop","handleComponent","scale","resizeRatio","snapGap"],Za="__resizable_base__",tm=function(e){Gh(t,e);function t(n){var r,i,o,l,s=e.call(this,n)||this;return s.ratio=1,s.resizable=null,s.parentLeft=0,s.parentTop=0,s.resizableLeft=0,s.resizableRight=0,s.resizableTop=0,s.resizableBottom=0,s.targetLeft=0,s.targetTop=0,s.delta={width:0,height:0},s.appendBase=function(){if(!s.resizable||!s.window)return null;var a=s.parentNode;if(!a)return null;var u=s.window.document.createElement("div");return u.style.width="100%",u.style.height="100%",u.style.position="absolute",u.style.transform="scale(0, 0)",u.style.left="0",u.style.flex="0 0 100%",u.classList?u.classList.add(Za):u.className+=Za,a.appendChild(u),u},s.removeBase=function(a){var u=s.parentNode;u&&u.removeChild(a)},s.state={isResizing:!1,width:(i=(r=s.propsSize)===null||r===void 0?void 0:r.width)!==null&&i!==void 0?i:"auto",height:(l=(o=s.propsSize)===null||o===void 0?void 0:o.height)!==null&&l!==void 0?l:"auto",direction:"right",original:{x:0,y:0,width:0,height:0},backgroundStyle:{height:"100%",width:"100%",backgroundColor:"rgba(0,0,0,0)",cursor:"auto",opacity:0,position:"fixed",zIndex:9999,top:"0",left:"0",bottom:"0",right:"0"},flexBasis:void 0},s.onResizeStart=s.onResizeStart.bind(s),s.onMouseMove=s.onMouseMove.bind(s),s.onMouseUp=s.onMouseUp.bind(s),s}return Object.defineProperty(t.prototype,"parentNode",{get:function(){return this.resizable?this.resizable.parentNode:null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"window",{get:function(){return!this.resizable||!this.resizable.ownerDocument?null:this.resizable.ownerDocument.defaultView},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"propsSize",{get:function(){return this.props.size||this.props.defaultSize||Zh},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"size",{get:function(){var n=0,r=0;if(this.resizable&&this.window){var i=this.resizable.offsetWidth,o=this.resizable.offsetHeight,l=this.resizable.style.position;l!=="relative"&&(this.resizable.style.position="relative"),n=this.resizable.style.width!=="auto"?this.resizable.offsetWidth:i,r=this.resizable.style.height!=="auto"?this.resizable.offsetHeight:o,this.resizable.style.position=l}return{width:n,height:r}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"sizeStyle",{get:function(){var n=this,r=this.props.size,i=function(s){var a;if(typeof n.state[s]>"u"||n.state[s]==="auto")return"auto";if(n.propsSize&&n.propsSize[s]&&(!((a=n.propsSize[s])===null||a===void 0)&&a.toString().endsWith("%"))){if(n.state[s].toString().endsWith("%"))return n.state[s].toString();var u=n.getParentSize(),m=Number(n.state[s].toString().replace("px","")),h=m/u[s]*100;return"".concat(h,"%")}return Io(n.state[s])},o=r&&typeof r.width<"u"&&!this.state.isResizing?Io(r.width):i("width"),l=r&&typeof r.height<"u"&&!this.state.isResizing?Io(r.height):i("height");return{width:o,height:l}},enumerable:!1,configurable:!0}),t.prototype.getParentSize=function(){if(!this.parentNode)return this.window?{width:this.window.innerWidth,height:this.window.innerHeight}:{width:0,height:0};var n=this.appendBase();if(!n)return{width:0,height:0};var r=!1,i=this.parentNode.style.flexWrap;i!=="wrap"&&(r=!0,this.parentNode.style.flexWrap="wrap"),n.style.position="relative",n.style.minWidth="100%",n.style.minHeight="100%";var o={width:n.offsetWidth,height:n.offsetHeight};return r&&(this.parentNode.style.flexWrap=i),this.removeBase(n),o},t.prototype.bindEvents=function(){this.window&&(this.window.addEventListener("mouseup",this.onMouseUp),this.window.addEventListener("mousemove",this.onMouseMove),this.window.addEventListener("mouseleave",this.onMouseUp),this.window.addEventListener("touchmove",this.onMouseMove,{capture:!0,passive:!1}),this.window.addEventListener("touchend",this.onMouseUp))},t.prototype.unbindEvents=function(){this.window&&(this.window.removeEventListener("mouseup",this.onMouseUp),this.window.removeEventListener("mousemove",this.onMouseMove),this.window.removeEventListener("mouseleave",this.onMouseUp),this.window.removeEventListener("touchmove",this.onMouseMove,!0),this.window.removeEventListener("touchend",this.onMouseUp))},t.prototype.componentDidMount=function(){if(!(!this.resizable||!this.window)){var n=this.window.getComputedStyle(this.resizable);this.setState({width:this.state.width||this.size.width,height:this.state.height||this.size.height,flexBasis:n.flexBasis!=="auto"?n.flexBasis:void 0})}},t.prototype.componentWillUnmount=function(){this.window&&this.unbindEvents()},t.prototype.createSizeForCssProperty=function(n,r){var i=this.propsSize&&this.propsSize[r];return this.state[r]==="auto"&&this.state.original[r]===n&&(typeof i>"u"||i==="auto")?"auto":n},t.prototype.calculateNewMaxFromBoundary=function(n,r){var i=this.props.boundsByDirection,o=this.state.direction,l=i&&dn("left",o),s=i&&dn("top",o),a,u;if(this.props.bounds==="parent"){var m=this.parentNode;m&&(a=l?this.resizableRight-this.parentLeft:m.offsetWidth+(this.parentLeft-this.resizableLeft),u=s?this.resizableBottom-this.parentTop:m.offsetHeight+(this.parentTop-this.resizableTop))}else this.props.bounds==="window"?this.window&&(a=l?this.resizableRight:this.window.innerWidth-this.resizableLeft,u=s?this.resizableBottom:this.window.innerHeight-this.resizableTop):this.props.bounds&&(a=l?this.resizableRight-this.targetLeft:this.props.bounds.offsetWidth+(this.targetLeft-this.resizableLeft),u=s?this.resizableBottom-this.targetTop:this.props.bounds.offsetHeight+(this.targetTop-this.resizableTop));return a&&Number.isFinite(a)&&(n=n&&n<a?n:a),u&&Number.isFinite(u)&&(r=r&&r<u?r:u),{maxWidth:n,maxHeight:r}},t.prototype.calculateNewSizeFromDirection=function(n,r){var i=this.props.scale||1,o=qh(this.props.resizeRatio||1),l=o[0],s=o[1],a=this.state,u=a.direction,m=a.original,h=this.props,g=h.lockAspectRatio,S=h.lockAspectRatioExtraHeight,w=h.lockAspectRatioExtraWidth,y=m.width,D=m.height,p=S||0,c=w||0;return dn("right",u)&&(y=m.width+(n-m.x)*l/i,g&&(D=(y-c)/this.ratio+p)),dn("left",u)&&(y=m.width-(n-m.x)*l/i,g&&(D=(y-c)/this.ratio+p)),dn("bottom",u)&&(D=m.height+(r-m.y)*s/i,g&&(y=(D-p)*this.ratio+c)),dn("top",u)&&(D=m.height-(r-m.y)*s/i,g&&(y=(D-p)*this.ratio+c)),{newWidth:y,newHeight:D}},t.prototype.calculateNewSizeFromAspectRatio=function(n,r,i,o){var l=this.props,s=l.lockAspectRatio,a=l.lockAspectRatioExtraHeight,u=l.lockAspectRatioExtraWidth,m=typeof o.width>"u"?10:o.width,h=typeof i.width>"u"||i.width<0?n:i.width,g=typeof o.height>"u"?10:o.height,S=typeof i.height>"u"||i.height<0?r:i.height,w=a||0,y=u||0;if(s){var D=(g-w)*this.ratio+y,p=(S-w)*this.ratio+y,c=(m-y)/this.ratio+w,f=(h-y)/this.ratio+w,v=Math.max(m,D),x=Math.min(h,p),N=Math.max(g,c),E=Math.min(S,f);n=ei(n,v,x),r=ei(r,N,E)}else n=ei(n,m,h),r=ei(r,g,S);return{newWidth:n,newHeight:r}},t.prototype.setBoundingClientRect=function(){var n=1/(this.props.scale||1);if(this.props.bounds==="parent"){var r=this.parentNode;if(r){var i=r.getBoundingClientRect();this.parentLeft=i.left*n,this.parentTop=i.top*n}}if(this.props.bounds&&typeof this.props.bounds!="string"){var o=this.props.bounds.getBoundingClientRect();this.targetLeft=o.left*n,this.targetTop=o.top*n}if(this.resizable){var l=this.resizable.getBoundingClientRect(),s=l.left,a=l.top,u=l.right,m=l.bottom;this.resizableLeft=s*n,this.resizableRight=u*n,this.resizableTop=a*n,this.resizableBottom=m*n}},t.prototype.onResizeStart=function(n,r){if(!(!this.resizable||!this.window)){var i=0,o=0;if(n.nativeEvent&&Jh(n.nativeEvent)?(i=n.nativeEvent.clientX,o=n.nativeEvent.clientY):n.nativeEvent&&ti(n.nativeEvent)&&(i=n.nativeEvent.touches[0].clientX,o=n.nativeEvent.touches[0].clientY),this.props.onResizeStart&&this.resizable){var l=this.props.onResizeStart(n,r,this.resizable);if(l===!1)return}this.props.size&&(typeof this.props.size.height<"u"&&this.props.size.height!==this.state.height&&this.setState({height:this.props.size.height}),typeof this.props.size.width<"u"&&this.props.size.width!==this.state.width&&this.setState({width:this.props.size.width})),this.ratio=typeof this.props.lockAspectRatio=="number"?this.props.lockAspectRatio:this.size.width/this.size.height;var s,a=this.window.getComputedStyle(this.resizable);if(a.flexBasis!=="auto"){var u=this.parentNode;if(u){var m=this.window.getComputedStyle(u).flexDirection;this.flexDir=m.startsWith("row")?"row":"column",s=a.flexBasis}}this.setBoundingClientRect(),this.bindEvents();var h={original:{x:i,y:o,width:this.size.width,height:this.size.height},isResizing:!0,backgroundStyle:ut(ut({},this.state.backgroundStyle),{cursor:this.window.getComputedStyle(n.target).cursor||"auto"}),direction:r,flexBasis:s};this.setState(h)}},t.prototype.onMouseMove=function(n){var r=this;if(!(!this.state.isResizing||!this.resizable||!this.window)){if(this.window.TouchEvent&&ti(n))try{n.preventDefault(),n.stopPropagation()}catch{}var i=this.props,o=i.maxWidth,l=i.maxHeight,s=i.minWidth,a=i.minHeight,u=ti(n)?n.touches[0].clientX:n.clientX,m=ti(n)?n.touches[0].clientY:n.clientY,h=this.state,g=h.direction,S=h.original,w=h.width,y=h.height,D=this.getParentSize(),p=bh(D,this.window.innerWidth,this.window.innerHeight,o,l,s,a);o=p.maxWidth,l=p.maxHeight,s=p.minWidth,a=p.minHeight;var c=this.calculateNewSizeFromDirection(u,m),f=c.newHeight,v=c.newWidth,x=this.calculateNewMaxFromBoundary(o,l);this.props.snap&&this.props.snap.x&&(v=Ga(v,this.props.snap.x,this.props.snapGap)),this.props.snap&&this.props.snap.y&&(f=Ga(f,this.props.snap.y,this.props.snapGap));var N=this.calculateNewSizeFromAspectRatio(v,f,{width:x.maxWidth,height:x.maxHeight},{width:s,height:a});if(v=N.newWidth,f=N.newHeight,this.props.grid){var E=Ka(v,this.props.grid[0],this.props.gridGap?this.props.gridGap[0]:0),C=Ka(f,this.props.grid[1],this.props.gridGap?this.props.gridGap[1]:0),I=this.props.snapGap||0,T=I===0||Math.abs(E-v)<=I?E:v,$=I===0||Math.abs(C-f)<=I?C:f;v=T,f=$}var H={width:v-S.width,height:f-S.height};if(this.delta=H,w&&typeof w=="string"){if(w.endsWith("%")){var Q=v/D.width*100;v="".concat(Q,"%")}else if(w.endsWith("vw")){var ue=v/this.window.innerWidth*100;v="".concat(ue,"vw")}else if(w.endsWith("vh")){var pe=v/this.window.innerHeight*100;v="".concat(pe,"vh")}}if(y&&typeof y=="string"){if(y.endsWith("%")){var Q=f/D.height*100;f="".concat(Q,"%")}else if(y.endsWith("vw")){var ue=f/this.window.innerWidth*100;f="".concat(ue,"vw")}else if(y.endsWith("vh")){var pe=f/this.window.innerHeight*100;f="".concat(pe,"vh")}}var b={width:this.createSizeForCssProperty(v,"width"),height:this.createSizeForCssProperty(f,"height")};this.flexDir==="row"?b.flexBasis=b.width:this.flexDir==="column"&&(b.flexBasis=b.height);var Ce=this.state.width!==b.width,z=this.state.height!==b.height,O=this.state.flexBasis!==b.flexBasis,R=Ce||z||O;R&&Tr.flushSync(function(){r.setState(b)}),this.props.onResize&&R&&this.props.onResize(n,g,this.resizable,H)}},t.prototype.onMouseUp=function(n){var r,i,o=this.state,l=o.isResizing,s=o.direction;o.original,!(!l||!this.resizable)&&(this.props.onResizeStop&&this.props.onResizeStop(n,s,this.resizable,this.delta),this.props.size&&this.setState({width:(r=this.props.size.width)!==null&&r!==void 0?r:"auto",height:(i=this.props.size.height)!==null&&i!==void 0?i:"auto"}),this.unbindEvents(),this.setState({isResizing:!1,backgroundStyle:ut(ut({},this.state.backgroundStyle),{cursor:"auto"})}))},t.prototype.updateSize=function(n){var r,i;this.setState({width:(r=n.width)!==null&&r!==void 0?r:"auto",height:(i=n.height)!==null&&i!==void 0?i:"auto"})},t.prototype.renderResizer=function(){var n=this,r=this.props,i=r.enable,o=r.handleStyles,l=r.handleClasses,s=r.handleWrapperStyle,a=r.handleWrapperClass,u=r.handleComponent;if(!i)return null;var m=Object.keys(i).map(function(h){return i[h]!==!1?d.jsx(Kh,{direction:h,onResizeStart:n.onResizeStart,replaceStyles:o&&o[h],className:l&&l[h],children:u&&u[h]?u[h]:null},h):null});return d.jsx("div",{className:a,style:s,children:m})},t.prototype.render=function(){var n=this,r=Object.keys(this.props).reduce(function(l,s){return em.indexOf(s)!==-1||(l[s]=n.props[s]),l},{}),i=ut(ut(ut({position:"relative",userSelect:this.state.isResizing?"none":"auto"},this.props.style),this.sizeStyle),{maxWidth:this.props.maxWidth,maxHeight:this.props.maxHeight,minWidth:this.props.minWidth,minHeight:this.props.minHeight,boxSizing:"border-box",flexShrink:0});this.state.flexBasis&&(i.flexBasis=this.state.flexBasis);var o=this.props.as||"div";return d.jsxs(o,ut({style:i,className:this.props.className},r,{ref:function(l){l&&(n.resizable=l)},children:[this.state.isResizing&&d.jsx("div",{style:this.state.backgroundStyle}),this.props.children,this.renderResizer()]}))},t.defaultProps={as:"div",onResizeStart:function(){},onResize:function(){},onResizeStop:function(){},enable:{top:!0,right:!0,bottom:!0,left:!0,topRight:!0,bottomRight:!0,bottomLeft:!0,topLeft:!0},style:{},grid:[1,1],gridGap:[0,0],lockAspectRatio:!1,lockAspectRatioExtraWidth:0,lockAspectRatioExtraHeight:0,scale:1,resizeRatio:1,snapGap:0},t}(_.PureComponent);/*! *****************************************************************************
43
+ Copyright (c) Microsoft Corporation. All rights reserved.
44
+ Licensed under the Apache License, Version 2.0 (the "License"); you may not use
45
+ this file except in compliance with the License. You may obtain a copy of the
46
+ License at http://www.apache.org/licenses/LICENSE-2.0
47
+
48
+ THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
49
+ KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
50
+ WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
51
+ MERCHANTABLITY OR NON-INFRINGEMENT.
52
+
53
+ See the Apache Version 2.0 License for specific language governing permissions
54
+ and limitations under the License.
55
+ ***************************************************************************** */var Dl=function(e,t){return Dl=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,r){n.__proto__=r}||function(n,r){for(var i in r)r.hasOwnProperty(i)&&(n[i]=r[i])},Dl(e,t)};function nm(e,t){Dl(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var ce=function(){return ce=Object.assign||function(t){for(var n,r=1,i=arguments.length;r<i;r++){n=arguments[r];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(t[o]=n[o])}return t},ce.apply(this,arguments)};function rm(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}var im={width:"auto",height:"auto",display:"inline-block",position:"absolute",top:0,left:0},om=function(e){return{bottom:e,bottomLeft:e,bottomRight:e,left:e,right:e,top:e,topLeft:e,topRight:e}},lm=function(e){nm(t,e);function t(n){var r=e.call(this,n)||this;return r.resizingPosition={x:0,y:0},r.offsetFromParent={left:0,top:0},r.resizableElement={current:null},r.originalPosition={x:0,y:0},r.state={resizing:!1,bounds:{top:0,right:0,bottom:0,left:0},maxWidth:n.maxWidth,maxHeight:n.maxHeight},r.onResizeStart=r.onResizeStart.bind(r),r.onResize=r.onResize.bind(r),r.onResizeStop=r.onResizeStop.bind(r),r.onDragStart=r.onDragStart.bind(r),r.onDrag=r.onDrag.bind(r),r.onDragStop=r.onDragStop.bind(r),r.getMaxSizesFromProps=r.getMaxSizesFromProps.bind(r),r}return t.prototype.componentDidMount=function(){this.updateOffsetFromParent();var n=this.offsetFromParent,r=n.left,i=n.top,o=this.getDraggablePosition(),l=o.x,s=o.y;this.draggable.setState({x:l-r,y:s-i}),this.forceUpdate()},t.prototype.getDraggablePosition=function(){var n=this.draggable.state,r=n.x,i=n.y;return{x:r,y:i}},t.prototype.getParent=function(){return this.resizable&&this.resizable.parentNode},t.prototype.getParentSize=function(){return this.resizable.getParentSize()},t.prototype.getMaxSizesFromProps=function(){var n=typeof this.props.maxWidth>"u"?Number.MAX_SAFE_INTEGER:this.props.maxWidth,r=typeof this.props.maxHeight>"u"?Number.MAX_SAFE_INTEGER:this.props.maxHeight;return{maxWidth:n,maxHeight:r}},t.prototype.getSelfElement=function(){return this.resizable&&this.resizable.resizable},t.prototype.getOffsetHeight=function(n){var r=this.props.scale;switch(this.props.bounds){case"window":return window.innerHeight/r;case"body":return document.body.offsetHeight/r;default:return n.offsetHeight}},t.prototype.getOffsetWidth=function(n){var r=this.props.scale;switch(this.props.bounds){case"window":return window.innerWidth/r;case"body":return document.body.offsetWidth/r;default:return n.offsetWidth}},t.prototype.onDragStart=function(n,r){this.props.onDragStart&&this.props.onDragStart(n,r);var i=this.getDraggablePosition();if(this.originalPosition=i,!!this.props.bounds){var o=this.getParent(),l=this.props.scale,s;if(this.props.bounds==="parent")s=o;else if(this.props.bounds==="body"){var a=o.getBoundingClientRect(),u=a.left,m=a.top,h=document.body.getBoundingClientRect(),g=-(u-o.offsetLeft*l-h.left)/l,S=-(m-o.offsetTop*l-h.top)/l,w=(document.body.offsetWidth-this.resizable.size.width*l)/l+g,y=(document.body.offsetHeight-this.resizable.size.height*l)/l+S;return this.setState({bounds:{top:S,right:w,bottom:y,left:g}})}else if(this.props.bounds==="window"){if(!this.resizable)return;var D=o.getBoundingClientRect(),p=D.left,c=D.top,f=-(p-o.offsetLeft*l)/l,v=-(c-o.offsetTop*l)/l,w=(window.innerWidth-this.resizable.size.width*l)/l+f,y=(window.innerHeight-this.resizable.size.height*l)/l+v;return this.setState({bounds:{top:v,right:w,bottom:y,left:f}})}else typeof this.props.bounds=="string"?s=document.querySelector(this.props.bounds):this.props.bounds instanceof HTMLElement&&(s=this.props.bounds);if(!(!(s instanceof HTMLElement)||!(o instanceof HTMLElement))){var x=s.getBoundingClientRect(),N=x.left,E=x.top,C=o.getBoundingClientRect(),I=C.left,T=C.top,$=(N-I)/l,H=E-T;if(this.resizable){this.updateOffsetFromParent();var Q=this.offsetFromParent;this.setState({bounds:{top:H-Q.top,right:$+(s.offsetWidth-this.resizable.size.width)-Q.left/l,bottom:H+(s.offsetHeight-this.resizable.size.height)-Q.top,left:$-Q.left/l}})}}}},t.prototype.onDrag=function(n,r){if(this.props.onDrag){var i=this.offsetFromParent,o=i.left,l=i.top;if(!this.props.dragAxis||this.props.dragAxis==="both")return this.props.onDrag(n,ce(ce({},r),{x:r.x+o,y:r.y+l}));if(this.props.dragAxis==="x")return this.props.onDrag(n,ce(ce({},r),{x:r.x+o,y:this.originalPosition.y+l,deltaY:0}));if(this.props.dragAxis==="y")return this.props.onDrag(n,ce(ce({},r),{x:this.originalPosition.x+o,y:r.y+l,deltaX:0}))}},t.prototype.onDragStop=function(n,r){if(this.props.onDragStop){var i=this.offsetFromParent,o=i.left,l=i.top;if(!this.props.dragAxis||this.props.dragAxis==="both")return this.props.onDragStop(n,ce(ce({},r),{x:r.x+o,y:r.y+l}));if(this.props.dragAxis==="x")return this.props.onDragStop(n,ce(ce({},r),{x:r.x+o,y:this.originalPosition.y+l,deltaY:0}));if(this.props.dragAxis==="y")return this.props.onDragStop(n,ce(ce({},r),{x:this.originalPosition.x+o,y:r.y+l,deltaX:0}))}},t.prototype.onResizeStart=function(n,r,i){n.stopPropagation(),this.setState({resizing:!0});var o=this.props.scale,l=this.offsetFromParent,s=this.getDraggablePosition();if(this.resizingPosition={x:s.x+l.left,y:s.y+l.top},this.originalPosition=s,this.props.bounds){var a=this.getParent(),u=void 0;this.props.bounds==="parent"?u=a:this.props.bounds==="body"?u=document.body:this.props.bounds==="window"?u=window:typeof this.props.bounds=="string"?u=document.querySelector(this.props.bounds):this.props.bounds instanceof HTMLElement&&(u=this.props.bounds);var m=this.getSelfElement();if(m instanceof Element&&(u instanceof HTMLElement||u===window)&&a instanceof HTMLElement){var h=this.getMaxSizesFromProps(),g=h.maxWidth,S=h.maxHeight,w=this.getParentSize();if(g&&typeof g=="string")if(g.endsWith("%")){var y=Number(g.replace("%",""))/100;g=w.width*y}else g.endsWith("px")&&(g=Number(g.replace("px","")));if(S&&typeof S=="string")if(S.endsWith("%")){var y=Number(S.replace("%",""))/100;S=w.height*y}else S.endsWith("px")&&(S=Number(S.replace("px","")));var D=m.getBoundingClientRect(),p=D.left,c=D.top,f=this.props.bounds==="window"?{left:0,top:0}:u.getBoundingClientRect(),v=f.left,x=f.top,N=this.getOffsetWidth(u),E=this.getOffsetHeight(u),C=r.toLowerCase().endsWith("left"),I=r.toLowerCase().endsWith("right"),T=r.startsWith("top"),$=r.startsWith("bottom");if((C||T)&&this.resizable){var H=(p-v)/o+this.resizable.size.width;this.setState({maxWidth:H>Number(g)?g:H})}if(I||this.props.lockAspectRatio&&!C&&!T){var H=N+(v-p)/o;this.setState({maxWidth:H>Number(g)?g:H})}if((T||C)&&this.resizable){var H=(c-x)/o+this.resizable.size.height;this.setState({maxHeight:H>Number(S)?S:H})}if($||this.props.lockAspectRatio&&!T&&!C){var H=E+(x-c)/o;this.setState({maxHeight:H>Number(S)?S:H})}}}else this.setState({maxWidth:this.props.maxWidth,maxHeight:this.props.maxHeight});this.props.onResizeStart&&this.props.onResizeStart(n,r,i)},t.prototype.onResize=function(n,r,i,o){var l=this,s={x:this.originalPosition.x,y:this.originalPosition.y},a=-o.width,u=-o.height,m=["top","left","topLeft","bottomLeft","topRight"];m.includes(r)&&(r==="bottomLeft"?s.x+=a:(r==="topRight"||(s.x+=a),s.y+=u));var h=this.draggable.state;(s.x!==h.x||s.y!==h.y)&&Tr.flushSync(function(){l.draggable.setState(s)}),this.updateOffsetFromParent();var g=this.offsetFromParent,S=this.getDraggablePosition().x+g.left,w=this.getDraggablePosition().y+g.top;this.resizingPosition={x:S,y:w},this.props.onResize&&this.props.onResize(n,r,i,o,{x:S,y:w})},t.prototype.onResizeStop=function(n,r,i,o){this.setState({resizing:!1});var l=this.getMaxSizesFromProps(),s=l.maxWidth,a=l.maxHeight;this.setState({maxWidth:s,maxHeight:a}),this.props.onResizeStop&&this.props.onResizeStop(n,r,i,o,this.resizingPosition)},t.prototype.updateSize=function(n){this.resizable&&this.resizable.updateSize({width:n.width,height:n.height})},t.prototype.updatePosition=function(n){this.draggable.setState(n)},t.prototype.updateOffsetFromParent=function(){var n=this.props.scale,r=this.getParent(),i=this.getSelfElement();if(!r||i===null)return{top:0,left:0};var o=r.getBoundingClientRect(),l=o.left,s=o.top,a=i.getBoundingClientRect(),u=this.getDraggablePosition(),m=r.scrollLeft,h=r.scrollTop;this.offsetFromParent={left:a.left-l+m-u.x*n,top:a.top-s+h-u.y*n}},t.prototype.render=function(){var n=this,r=this.props,i=r.disableDragging,o=r.style,l=r.dragHandleClassName,s=r.position,a=r.onMouseDown,u=r.onMouseUp,m=r.dragAxis,h=r.dragGrid,g=r.bounds,S=r.enableUserSelectHack,w=r.cancel,y=r.children;r.onResizeStart,r.onResize,r.onResizeStop,r.onDragStart,r.onDrag,r.onDragStop;var D=r.resizeHandleStyles,p=r.resizeHandleClasses,c=r.resizeHandleComponent,f=r.enableResizing,v=r.resizeGrid,x=r.resizeHandleWrapperClass,N=r.resizeHandleWrapperStyle,E=r.scale,C=r.allowAnyClick,I=r.dragPositionOffset,T=rm(r,["disableDragging","style","dragHandleClassName","position","onMouseDown","onMouseUp","dragAxis","dragGrid","bounds","enableUserSelectHack","cancel","children","onResizeStart","onResize","onResizeStop","onDragStart","onDrag","onDragStop","resizeHandleStyles","resizeHandleClasses","resizeHandleComponent","enableResizing","resizeGrid","resizeHandleWrapperClass","resizeHandleWrapperStyle","scale","allowAnyClick","dragPositionOffset"]),$=this.props.default?ce({},this.props.default):void 0;delete T.default;var H=i||l?{cursor:"auto"}:{cursor:"move"},Q=ce(ce(ce({},im),H),o),ue=this.offsetFromParent,pe=ue.left,b=ue.top,Ce;s&&(Ce={x:s.x-pe,y:s.y-b});var z=this.state.resizing?void 0:Ce,O=this.state.resizing?"both":m;return _.createElement(Qh,{ref:function(R){R&&(n.draggable=R)},handle:l?".".concat(l):void 0,defaultPosition:$,onMouseDown:a,onMouseUp:u,onStart:this.onDragStart,onDrag:this.onDrag,onStop:this.onDragStop,axis:O,disabled:i,grid:h,bounds:g?this.state.bounds:void 0,position:z,enableUserSelectHack:S,cancel:w,scale:E,allowAnyClick:C,nodeRef:this.resizableElement,positionOffset:I},_.createElement(tm,ce({},T,{ref:function(R){R&&(n.resizable=R,n.resizableElement.current=R.resizable)},defaultSize:$,size:this.props.size,enable:typeof f=="boolean"?om(f):f,onResizeStart:this.onResizeStart,onResize:this.onResize,onResizeStop:this.onResizeStop,style:Q,minWidth:this.props.minWidth,minHeight:this.props.minHeight,maxWidth:this.state.resizing?this.state.maxWidth:this.props.maxWidth,maxHeight:this.state.resizing?this.state.maxHeight:this.props.maxHeight,grid:v,handleWrapperClass:x,handleWrapperStyle:N,lockAspectRatio:this.props.lockAspectRatio,lockAspectRatioExtraWidth:this.props.lockAspectRatioExtraWidth,lockAspectRatioExtraHeight:this.props.lockAspectRatioExtraHeight,handleStyles:D,handleClasses:p,handleComponent:c,scale:this.props.scale}),y))},t.defaultProps={maxWidth:Number.MAX_SAFE_INTEGER,maxHeight:Number.MAX_SAFE_INTEGER,scale:1,onResizeStart:function(){},onResize:function(){},onResizeStop:function(){},onDragStart:function(){},onDrag:function(){},onDragStop:function(){}},t}(_.PureComponent);function sm(e){const t=e.split("/").filter(Boolean);if(t.length===0)return e;const n=t[t.length-1];return n==="src"&&t.length>1?t[t.length-2]:n}const am=({projects:e,selectedProject:t,onSelectProject:n,loading:r,runningProcesses:i=[],keyboardFocusedIndex:o=-1,onKeyboardFocusChange:l})=>{if(r)return d.jsx("div",{className:"project-list-loading",children:d.jsx("p",{children:"Loading projects..."})});if(e.length===0)return d.jsxs("div",{className:"project-list-empty",children:[d.jsx("p",{children:"No projects yet"}),d.jsx("p",{className:"hint",children:"Add a project to get started"})]});const s=Ll.useRef(null);return d.jsx("div",{ref:s,className:"project-list",role:"listbox","aria-label":"Projects",tabIndex:0,onFocus:a=>{o<0&&e.length>0&&l&&l(0)},onBlur:a=>{var u;l&&!((u=s.current)!=null&&u.contains(a.relatedTarget))&&l(-1)},children:e.map((a,u)=>{const m=(t==null?void 0:t.id)===a.id,h=o===u,g=i.filter(y=>y.projectPath===a.path),S=g.length>0,w=Array.from(new Set(g.map(y=>y.port).filter(y=>y!=null))).sort((y,D)=>y-D);return d.jsxs("div",{className:`project-item ${m?"selected":""} ${S?"running":""} ${h?"keyboard-focused":""}`,onClick:()=>n(a),role:"option","aria-selected":m,tabIndex:u===0?0:-1,onFocus:y=>{y.currentTarget.scrollIntoView({block:"nearest",behavior:"smooth"}),l&&l(u)},ref:y=>{h&&y&&l&&y.scrollIntoView({block:"nearest",behavior:"smooth"})},children:[d.jsx("div",{className:"project-item-header",children:d.jsxs("h3",{className:"project-name",children:[S&&d.jsx("span",{className:"running-indicator-dot",children:"●"}),a.name]})}),d.jsx("p",{className:"project-path",children:a.description||sm(a.path)}),a.tags&&a.tags.length>0&&d.jsx("div",{className:"project-tags",children:a.tags.map(y=>d.jsx("span",{className:"project-tag",children:y},y))}),S&&d.jsxs("div",{className:"project-meta",children:[d.jsxs("span",{className:"running-count",children:[g.length," running"]}),w.length>0&&d.jsx("div",{className:"running-ports",children:w.map(y=>d.jsxs("span",{className:"port-badge",children:[":",y]},y))})]})]},a.id)})})},um=({urls:e,onOpenUrl:t})=>e.length===0?null:d.jsxs("div",{className:"project-urls-section",children:[d.jsx("div",{className:"section-header",children:d.jsxs("h3",{children:["Detected URLs (",e.length,")"]})}),d.jsx("div",{className:"urls-list",children:e.map((n,r)=>d.jsxs("div",{className:"url-item",children:[d.jsx("a",{href:n,target:"_blank",rel:"noopener noreferrer",className:"url-text",onClick:i=>{i.preventDefault(),window.electronAPI.openExternal(n)},children:n}),d.jsx("button",{onClick:()=>t(n),className:"btn btn-secondary btn-small",title:"Open in configured browser",children:"Open"})]},r))})]}),cm=({project:e,tests:t,onScan:n,scanning:r,onProjectUpdate:i,onRemoveProject:o,onOpenTerminal:l})=>{var Rs;const[s,a]=_.useState(!1),[u,m]=_.useState(e.name),[h,g]=_.useState(!1),[S,w]=_.useState(e.description||""),[y,D]=_.useState(null),[p,c]=_.useState(!1),[f,v]=_.useState([]),[x,N]=_.useState(!1),[E,C]=_.useState(new Set),[I,T]=_.useState([]),[$,H]=_.useState(!1),[Q,ue]=_.useState(!1),[pe,b]=_.useState(""),[Ce,z]=_.useState([]),[O,R]=_.useState(e.tags||[]),[Y,ne]=_.useState(null);_.useEffect(()=>{m(e.name),w(e.description||""),R(e.tags||[]),W(),U(),Mr(),L(),M();const k=setInterval(()=>{Mr()},5e3);return()=>clearInterval(k)},[e]);const L=async()=>{try{const k=await fetch("http://localhost:3001/api/projects/tags");if(!k.ok){console.error("Failed to load tags:",k.status),z([]);return}const A=await k.json();z(Array.isArray(A)?A:[])}catch(k){console.error("Error loading tags:",k),z([])}},M=async()=>{try{const k=await window.electronAPI.getSettings();ne(k.editor)}catch(k){console.error("Error loading editor settings:",k)}},W=async()=>{try{c(!0);const k=await window.electronAPI.getProjectScripts(e.path);D(k)}catch(k){console.error("Error loading scripts:",k),D(null)}finally{c(!1)}},U=async()=>{try{N(!0);const k=await window.electronAPI.getProjectPorts(e.id);v(k)}catch(k){console.error("Error loading ports:",k),v([])}finally{N(!1)}},le=async()=>{if(!u.trim()||u===e.name){a(!1),m(e.name);return}try{const k=await window.electronAPI.renameProject(e.id,u.trim());a(!1),i&&i(k)}catch(k){console.error("Error renaming project:",k),alert("Failed to rename project"),m(e.name)}},ge=async()=>{const k=S.trim()||null;if(k===(e.description||"")){g(!1),w(e.description||"");return}try{const A=await window.electronAPI.updateProject(e.id,{description:k});g(!1),i&&i(A)}catch(A){console.error("Error updating description:",A),alert("Failed to update description"),w(e.description||"")}},Fe=async()=>{const k=pe.trim();if(!k||O.includes(k)){b("");return}const A=[...O,k];try{const V=await window.electronAPI.updateProject(e.id,{tags:A});R(A),b(""),i&&i(V),await L(),M()}catch(V){console.error("Error adding tag:",V),alert("Failed to add tag")}},mt=async k=>{const A=O.filter(V=>V!==k);try{const V=await window.electronAPI.updateProject(e.id,{tags:A});R(A),i&&i(V),await L(),M()}catch(V){console.error("Error removing tag:",V),alert("Failed to remove tag")}},js=Ce.filter(k=>!O.includes(k)&&k.toLowerCase().includes(pe.toLowerCase())),Mr=async()=>{try{H(!0);const A=(await window.electronAPI.getRunningProcesses()).filter(Ct=>Ct.projectPath===e.path);T(A);const V=new Set(A.map(Ct=>Ct.scriptName));C(V)}catch(k){console.error("Error loading running processes:",k)}finally{H(!1)}},Pf=async(k,A=!0)=>{try{C(V=>new Set(V).add(k)),await window.electronAPI.runScript(e.path,k,[],A),A&&setTimeout(()=>{Mr()},1e3)}catch(V){console.error("Error running script:",V),alert(`Failed to run script: ${V instanceof Error?V.message:String(V)}`)}finally{C(V=>{const Ct=new Set(V);return Ct.delete(k),Ct})}},Cf=async k=>{try{await window.electronAPI.stopScript(k)?await Mr():alert("Failed to stop script")}catch(A){console.error("Error stopping script:",A),alert(`Failed to stop script: ${A instanceof Error?A.message:String(A)}`)}},zf=async k=>{try{await window.electronAPI.openUrl(k)}catch(A){console.error("Error opening URL:",A),alert(`Failed to open URL: ${A instanceof Error?A.message:String(A)}`)}},Ds=_.useMemo(()=>{const k=new Set;for(const A of I)if(A.detectedUrls&&Array.isArray(A.detectedUrls))for(const V of A.detectedUrls)k.add(V);for(const A of f){const V=`http://localhost:${A.port}`;k.add(V)}return Array.from(k).sort()},[I,f]);e.last_scanned&&new Date(e.last_scanned*1e3).toLocaleString();const _f=t.reduce((k,A)=>{const V=A.framework||"unknown";return k[V]=(k[V]||0)+1,k},{});return d.jsxs("div",{className:"project-details",children:[d.jsxs("div",{className:"project-details-header",children:[d.jsxs("div",{children:[s?d.jsx("div",{className:"project-name-edit",children:d.jsx("input",{type:"text",value:u,onChange:k=>m(k.target.value),onBlur:le,onKeyDown:k=>{k.key==="Enter"?le():k.key==="Escape"&&(a(!1),m(e.name))},className:"project-name-input",autoFocus:!0})}):d.jsx("h2",{onClick:()=>a(!0),className:"project-name-editable",title:"Click to rename",children:e.name}),h?d.jsx("div",{className:"project-description-edit",children:d.jsx("textarea",{value:S,onChange:k=>w(k.target.value),onBlur:ge,onKeyDown:k=>{k.key==="Enter"&&(k.metaKey||k.ctrlKey)?ge():k.key==="Escape"&&(g(!1),w(e.description||""))},className:"project-description-input",placeholder:"Add a description...",autoFocus:!0,rows:2})}):d.jsxs("div",{children:[d.jsx("p",{className:"project-description",onClick:()=>g(!0),title:"Click to edit description",children:e.description||e.path}),e.description&&d.jsx("p",{className:"project-path",children:e.path})]})]}),d.jsxs("div",{className:"header-actions-group",children:[d.jsxs("button",{onClick:async()=>{try{await window.electronAPI.openInEditor(e.path)}catch(k){console.error("Error opening in editor:",k),alert(`Failed to open in editor: ${k instanceof Error?k.message:String(k)}`)}},className:"btn btn-secondary",title:"Open in editor",children:["Editor",Y?` (${Y.type})`:""]}),d.jsx("button",{onClick:async()=>{try{await window.electronAPI.openInFiles(e.path)}catch(k){console.error("Error opening directory:",k),alert(`Failed to open directory: ${k instanceof Error?k.message:String(k)}`)}},className:"btn btn-secondary",title:"Open in file manager",children:"Files"})]})]}),d.jsxs("div",{className:"project-stats",children:[d.jsxs("div",{className:"stat-card",children:[d.jsx("div",{className:"stat-value",children:t.length}),d.jsx("div",{className:"stat-label",children:"Test Files"})]}),d.jsxs("div",{className:"stat-card",children:[d.jsx("div",{className:"stat-value",children:Object.keys(_f).length}),d.jsx("div",{className:"stat-label",children:"Frameworks"})]}),d.jsxs("div",{className:"stat-card",children:[d.jsx("div",{className:"stat-value",children:f.length}),d.jsx("div",{className:"stat-label",children:"Ports"})]}),d.jsxs("div",{className:"stat-card",children:[d.jsx("div",{className:"stat-value",children:((Rs=y==null?void 0:y.scripts)==null?void 0:Rs.length)||0}),d.jsx("div",{className:"stat-label",children:"Scripts"})]})]}),d.jsxs("div",{className:"tags-section",children:[d.jsx("div",{className:"section-header",children:d.jsx("h3",{children:"Tags"})}),d.jsx("div",{className:"tags-content",children:d.jsxs("div",{className:"tags-list",children:[O.map(k=>d.jsxs("span",{className:"tag-item",children:[k,d.jsx("button",{onClick:()=>mt(k),className:"tag-remove",title:"Remove tag",children:"×"})]},k)),Q?d.jsxs("div",{className:"tag-input-wrapper",children:[d.jsx("input",{type:"text",value:pe,onChange:k=>b(k.target.value),onKeyDown:k=>{k.key==="Enter"?Fe():k.key==="Escape"&&(ue(!1),b(""))},onBlur:()=>{Fe(),ue(!1)},className:"tag-input",placeholder:"Add tag...",autoFocus:!0}),js.length>0&&pe&&d.jsx("div",{className:"tag-suggestions",children:js.slice(0,5).map(k=>d.jsx("div",{className:"tag-suggestion",onMouseDown:A=>{A.preventDefault(),b(k)},children:k},k))})]}):d.jsx("button",{onClick:()=>ue(!0),className:"tag-add-btn",title:"Add tag",children:"+ Add Tag"})]})})]}),Ds.length>0&&d.jsx(um,{urls:Ds,onOpenUrl:zf}),y&&d.jsxs("div",{className:"scripts-section",children:[d.jsxs("div",{className:"section-header",children:[d.jsxs("h3",{children:["Available Scripts (",y.scripts.length,")"]}),d.jsx("span",{className:"project-type-badge",children:y.type})]}),p?d.jsx("div",{className:"loading-state",children:"Loading scripts..."}):y.scripts.length===0?d.jsx("div",{className:"no-scripts",children:"No scripts found in this project."}):d.jsx("div",{className:"scripts-list",children:y.scripts.map(k=>{const A=I.filter(Se=>Se.scriptName===k.name),V=A.length>0,Ct=f.filter(Se=>Se.script_name===k.name).map(Se=>Se.port),jf=Array.from(new Set(Ct)).sort((Se,Or)=>Se-Or);return d.jsxs("div",{className:`script-item ${V?"running":""}`,children:[d.jsxs("div",{className:"script-info",children:[d.jsxs("div",{className:"script-header",children:[d.jsx("span",{className:"script-name",children:k.name}),d.jsx("span",{className:"script-command",children:k.command}),d.jsx("span",{className:"script-runner",children:k.runner})]}),V&&d.jsx("div",{className:"script-process-info",children:A.map(Se=>{const Or=Math.floor((Date.now()-Se.startedAt)/1e3),Ts=Math.floor(Or/60),Ms=Or%60,Df=Ts>0?`${Ts}m ${Ms}s`:`${Ms}s`,Os=Se.detectedPorts&&Se.detectedPorts.length>0?Se.detectedPorts:jf;return d.jsxs("div",{className:"process-badge",children:[d.jsx("span",{className:"process-indicator",children:"●"}),d.jsxs("span",{className:"process-pid",children:["PID: ",Se.pid]}),d.jsx("span",{className:"process-uptime",children:Df}),Os.length>0&&d.jsxs("span",{className:"process-port",children:[":",Os.join(", ")]}),d.jsx("button",{onClick:oo=>{oo.stopPropagation(),l&&l(Se.pid,k.name,e.name)},className:"btn btn-secondary btn-tiny",title:"View terminal output",children:d.jsx("span",{className:"terminal-icon",children:"⌘"})}),d.jsx("button",{onClick:oo=>{oo.stopPropagation(),Cf(Se.pid)},className:"btn btn-danger btn-tiny",title:"Stop process",children:"Stop"})]},Se.pid)})})]}),d.jsx("div",{className:"script-actions",children:!V&&d.jsx("button",{onClick:()=>Pf(k.name,!0),className:"btn btn-secondary btn-small",title:"Run in background",children:"Run"})})]},k.name)})})]}),d.jsxs("div",{className:"tests-section",children:[d.jsxs("div",{className:"section-header",children:[d.jsxs("h3",{children:["Test Files (",t.length,")"]}),d.jsx("button",{onClick:n,disabled:r,className:"btn btn-primary btn-small",children:r?"Scanning...":"Scan"})]}),t.length===0?d.jsx("div",{className:"no-tests",children:d.jsx("p",{children:'No test files found. Click "Scan" to search for test files.'})}):d.jsx("div",{className:"tests-list",children:t.map(k=>d.jsxs("div",{className:"test-item",children:[d.jsxs("div",{className:"test-file",children:[d.jsx("span",{className:"test-path",children:k.file_path}),k.framework&&d.jsx("span",{className:"test-framework",children:k.framework})]}),k.status&&d.jsx("div",{className:"test-status",children:k.status})]},k.id))})]}),d.jsxs("div",{className:"jenkins-placeholder",children:[d.jsx("h3",{children:"Jenkins Integration"}),d.jsx("p",{className:"placeholder-text",children:"Jenkins integration will be available in a future update. This section will display Jenkins job statuses and build information for your projects."})]}),o&&d.jsxs("div",{className:"danger-zone",children:[d.jsx("h3",{children:"Danger Zone"}),d.jsx("p",{className:"danger-zone-text",children:"Once you delete a project, there is no going back. Please be certain."}),d.jsx("button",{onClick:async()=>{confirm(`Are you sure you want to remove "${e.name}"?
56
+
57
+ This will delete the project from PROJAX (not from your filesystem).
58
+
59
+ This action cannot be undone.`)&&await o(e.id)},className:"btn btn-danger",title:"Remove project",children:"Delete Project"})]})]})},fm=({onAdd:e,onClose:t})=>{const[n,r]=_.useState(""),[i,o]=_.useState(!1),l=async()=>{try{const a=await window.electronAPI.selectDirectory();a&&r(a)}catch(a){console.error("Error selecting directory:",a)}},s=async a=>{if(a.preventDefault(),!n.trim()){alert("Please select a project directory");return}try{o(!0),await e(n)}catch{}finally{o(!1)}};return d.jsx("div",{className:"modal-overlay",onClick:t,children:d.jsxs("div",{className:"modal-content",onClick:a=>a.stopPropagation(),children:[d.jsxs("div",{className:"modal-header",children:[d.jsx("h2",{children:"Add Project"}),d.jsx("button",{className:"modal-close",onClick:t,children:"×"})]}),d.jsxs("form",{onSubmit:s,children:[d.jsxs("div",{className:"form-group",children:[d.jsx("label",{htmlFor:"project-path",children:"Project Directory"}),d.jsxs("div",{className:"path-input-group",children:[d.jsx("input",{id:"project-path",type:"text",value:n,onChange:a=>r(a.target.value),placeholder:"Select or enter project directory path",disabled:i}),d.jsx("button",{type:"button",onClick:l,disabled:i,className:"btn btn-secondary",children:"Browse"})]})]}),d.jsxs("div",{className:"modal-actions",children:[d.jsx("button",{type:"button",onClick:t,disabled:i,className:"btn btn-secondary",children:"Cancel"}),d.jsx("button",{type:"submit",disabled:i||!n.trim(),className:"btn btn-primary",children:i?"Adding...":"Add Project"})]})]})]})})},dm=({onSearchChange:e,onSortChange:t,searchInputRef:n})=>{const[r,i]=_.useState(""),[o,l]=_.useState("all"),[s,a]=_.useState("name-asc"),[u,m]=_.useState(!1),h=_.useRef(null),g=_.useRef(null),S=n||g,w=p=>{const c=p.target.value;i(c),e(c,"all")},y=p=>{a(p),m(!1),t&&t(p)};_.useEffect(()=>{const p=c=>{h.current&&!h.current.contains(c.target)&&m(!1)};if(u)return document.addEventListener("mousedown",p),()=>document.removeEventListener("mousedown",p)},[u]);const D=[{value:"name-asc",label:"Name (A-Z)"},{value:"name-desc",label:"Name (Z-A)"},{value:"recent",label:"Recently Scanned"},{value:"oldest",label:"Oldest First"},{value:"tests",label:"Most Tests"},{value:"running",label:"Running First"}];return d.jsx("div",{className:"project-search",children:d.jsxs("div",{className:"search-input-group",ref:h,children:[d.jsxs("div",{className:"search-input-wrapper",children:[d.jsx("input",{ref:S,type:"text",placeholder:"Search projects... (⌘/)",value:r,onChange:w,className:"search-input"}),d.jsx("button",{className:"sort-icon-btn",onClick:()=>m(!u),title:"Sort options",tabIndex:0,children:d.jsx("svg",{width:"14",height:"14",viewBox:"0 0 16 16",fill:"none",children:d.jsx("path",{d:"M3 4h10M3 8h7M3 12h4",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})})})]}),u&&d.jsx("div",{className:"sort-menu",children:D.map(p=>d.jsxs("div",{className:`sort-menu-item ${s===p.value?"active":""}`,onClick:()=>y(p.value),children:[p.label,s===p.value&&d.jsx("span",{className:"checkmark",children:"✓"})]},p.value))})]})})},pm=({onClose:e})=>{const[t,n]=_.useState({editor:{type:"vscode"},browser:{type:"chrome"}}),[r,i]=_.useState(!0),[o,l]=_.useState(!1);_.useEffect(()=>{s()},[]);const s=async()=>{try{i(!0);const h=await window.electronAPI.getSettings();n(h)}catch(h){console.error("Error loading settings:",h)}finally{i(!1)}},a=async()=>{try{l(!0),await window.electronAPI.saveSettings(t),e()}catch(h){console.error("Error saving settings:",h),alert(`Failed to save settings: ${h instanceof Error?h.message:String(h)}`)}finally{l(!1)}},u=h=>{n({...t,editor:{type:h,customPath:h==="custom"?t.editor.customPath:void 0}})},m=h=>{n({...t,browser:{type:h,customPath:h==="custom"?t.browser.customPath:void 0}})};return r?d.jsx("div",{className:"settings-overlay",children:d.jsx("div",{className:"settings-modal",children:d.jsx("div",{className:"loading-state",children:"Loading settings..."})})}):d.jsx("div",{className:"settings-overlay",onClick:e,children:d.jsxs("div",{className:"settings-modal",onClick:h=>h.stopPropagation(),children:[d.jsxs("div",{className:"settings-header",children:[d.jsx("h2",{children:"Settings"}),d.jsx("button",{onClick:e,className:"settings-close-btn",title:"Close",children:"×"})]}),d.jsxs("div",{className:"settings-content",children:[d.jsxs("div",{className:"settings-section",children:[d.jsx("h3",{children:"Editor"}),d.jsxs("div",{className:"settings-field",children:[d.jsx("label",{children:"Editor Type"}),d.jsxs("select",{value:t.editor.type,onChange:h=>u(h.target.value),className:"settings-select",children:[d.jsx("option",{value:"vscode",children:"VS Code"}),d.jsx("option",{value:"cursor",children:"Cursor"}),d.jsx("option",{value:"windsurf",children:"Windsurf"}),d.jsx("option",{value:"zed",children:"Zed"}),d.jsx("option",{value:"custom",children:"Custom"})]})]}),t.editor.type==="custom"&&d.jsxs("div",{className:"settings-field",children:[d.jsx("label",{children:"Custom Editor Path"}),d.jsx("input",{type:"text",value:t.editor.customPath||"",onChange:h=>n({...t,editor:{...t.editor,customPath:h.target.value}}),placeholder:"/path/to/editor",className:"settings-input"})]})]}),d.jsxs("div",{className:"settings-section",children:[d.jsx("h3",{children:"Browser"}),d.jsxs("div",{className:"settings-field",children:[d.jsx("label",{children:"Browser Type"}),d.jsxs("select",{value:t.browser.type,onChange:h=>m(h.target.value),className:"settings-select",children:[d.jsx("option",{value:"chrome",children:"Chrome"}),d.jsx("option",{value:"firefox",children:"Firefox"}),d.jsx("option",{value:"safari",children:"Safari"}),d.jsx("option",{value:"edge",children:"Edge"}),d.jsx("option",{value:"custom",children:"Custom"})]})]}),t.browser.type==="custom"&&d.jsxs("div",{className:"settings-field",children:[d.jsx("label",{children:"Custom Browser Path"}),d.jsx("input",{type:"text",value:t.browser.customPath||"",onChange:h=>n({...t,browser:{...t.browser,customPath:h.target.value}}),placeholder:"/path/to/browser",className:"settings-input"})]})]})]}),d.jsxs("div",{className:"settings-footer",children:[d.jsx("button",{onClick:e,className:"btn btn-secondary",children:"Cancel"}),d.jsx("button",{onClick:a,disabled:o,className:"btn btn-primary",children:o?"Saving...":"Save"})]})]})})},hm=({children:e})=>d.jsxs("div",{className:"app-header",children:[d.jsx("h1",{className:"app-logo",children:"PROJAX"}),e]}),mm=({apiPort:e})=>{const[t,n]=_.useState(!1),[r,i]=_.useState(e||null);return _.useEffect(()=>{const o=async()=>{if(r)l(r);else try{const a=[3001,3002,3003,3004,3005];for(const u of a)try{if((await fetch(`http://localhost:${u}/health`)).ok){i(u),l(u);return}}catch{}}catch(a){console.error("Failed to detect API port:",a)}},l=async a=>{try{const u=await fetch(`http://localhost:${a}/health`);n(u.ok)}catch{n(!1)}};o();const s=setInterval(()=>{r&&l(r)},5e3);return()=>clearInterval(s)},[r]),d.jsx("div",{className:"status-bar",children:d.jsxs("div",{className:"status-bar-content",children:[d.jsxs("div",{className:"status-indicator",children:[d.jsx("span",{className:`status-dot ${t?"connected":"disconnected"}`}),d.jsx("span",{className:"status-text",children:t?"API Connected":"API Disconnected"})]}),r&&d.jsxs("div",{className:"api-port",children:["Port: ",r]})]})})},gm=({pid:e,scriptName:t,projectName:n,onClose:r})=>{const[i,o]=_.useState([]),[l,s]=_.useState(!1),a=_.useRef(null),[u,m]=_.useState(!0);_.useEffect(()=>{(async()=>{try{await window.electronAPI.watchProcessOutput(e),s(!0)}catch(p){console.error("Failed to start watching process:",p),o(c=>[...c,`Error: Failed to connect to process ${e}`])}})();const y=(p,c)=>{c.pid===e&&o(f=>[...f,c.data])},D=(p,c)=>{c.pid===e&&(o(f=>[...f,`
60
+ [Process exited with code ${c.code}]`]),s(!1))};return window.electronAPI.onProcessOutput(y),window.electronAPI.onProcessExit(D),()=>{window.electronAPI.unwatchProcessOutput(e),window.electronAPI.removeProcessOutputListener(y),window.electronAPI.removeProcessExitListener(D)}},[e]),_.useEffect(()=>{u&&a.current&&(a.current.scrollTop=a.current.scrollHeight)},[i,u]);const h=()=>{if(a.current){const{scrollTop:w,scrollHeight:y,clientHeight:D}=a.current,p=y-w-D<50;m(p)}},g=()=>{o([])},S=()=>{a.current&&(a.current.scrollTop=a.current.scrollHeight,m(!0))};return d.jsxs("div",{className:"terminal-sidebar",children:[d.jsxs("div",{className:"terminal-header",children:[d.jsxs("div",{className:"terminal-title",children:[d.jsx("span",{className:"terminal-icon",children:"▶"}),d.jsxs("div",{className:"terminal-info",children:[d.jsx("span",{className:"terminal-script",children:t}),d.jsx("span",{className:"terminal-project",children:n})]}),d.jsx("span",{className:`terminal-status ${l?"running":"stopped"}`,children:l?"● Running":"○ Stopped"})]}),d.jsxs("div",{className:"terminal-actions",children:[d.jsx("button",{onClick:g,className:"terminal-btn",title:"Clear output",children:"Clear"}),!u&&d.jsx("button",{onClick:S,className:"terminal-btn terminal-btn-scroll",title:"Scroll to bottom",children:"↓"}),d.jsx("button",{onClick:r,className:"terminal-btn terminal-btn-close",title:"Close terminal",children:"✕"})]})]}),d.jsx("div",{ref:a,className:"terminal-output",onScroll:h,children:i.length===0?d.jsxs("div",{className:"terminal-empty",children:["Waiting for output from PID ",e,"..."]}):i.map((w,y)=>d.jsx("div",{className:"terminal-line",children:w},y))})]})};function vm(){const[e,t]=_.useState([]),[n,r]=_.useState(null),[i,o]=_.useState([]),[l,s]=_.useState(!0),[a,u]=_.useState(!1),[m,h]=_.useState(!1),[g,S]=_.useState(""),[w,y]=_.useState("all"),[D,p]=_.useState("name-asc"),[c,f]=_.useState(!1),[v,x]=_.useState([]),[N,E]=_.useState(-1),C=Ll.useRef(null),[I,T]=_.useState(280),[$,H]=_.useState(null);_.useEffect(()=>{Q(),pe();const L=setInterval(()=>{pe()},5e3);return()=>clearInterval(L)},[]),_.useEffect(()=>{n?ue(n.id):o([])},[n]);const Q=async()=>{try{s(!0);const L=await window.electronAPI.getProjects();t(L),L.length===0&&console.log('No projects found. Use "Add Project" to add one.')}catch(L){console.error("Error loading projects:",L),alert(`Error loading projects: ${L instanceof Error?L.message:String(L)}
61
+
62
+ Check the console for more details.`)}finally{s(!1)}},ue=async L=>{try{const M=await window.electronAPI.getTests(L);o(M)}catch(M){console.error("Error loading tests:",M)}},pe=async()=>{try{const L=await window.electronAPI.getRunningProcesses();x(L)}catch(L){console.error("Error loading running processes:",L)}},b=async L=>{try{const M=await window.electronAPI.addProject(L);await Q(),u(!1),h(!0),await window.electronAPI.scanProject(M.id),await Q(),h(!1)}catch(M){console.error("Error adding project:",M),alert(M instanceof Error?M.message:"Failed to add project")}},Ce=async L=>{if(confirm("Are you sure you want to remove this project?"))try{await window.electronAPI.removeProject(L),(n==null?void 0:n.id)===L&&r(null),await Q()}catch(M){console.error("Error removing project:",M),alert("Failed to remove project")}},z=async L=>{try{h(!0),await window.electronAPI.scanProject(L),await Q(),(n==null?void 0:n.id)===L&&await ue(L)}catch(M){console.error("Error scanning project:",M),alert("Failed to scan project")}finally{h(!1)}},O=(L,M)=>{S(L),y(M)},R=_.useMemo(()=>{let L=e;if(g.trim()){const W=g.toLowerCase().trim();L=e.filter(U=>{switch(w){case"name":return U.name.toLowerCase().includes(W);case"path":return U.path.toLowerCase().includes(W);case"ports":return!1;case"testCount":return i.filter(ge=>ge.project_id===U.id).length.toString().includes(W);case"running":return W==="running"||W==="not running";case"all":default:return U.name.toLowerCase().includes(W)||U.path.toLowerCase().includes(W)||U.tags&&U.tags.some(ge=>ge.toLowerCase().includes(W))}})}const M=[...L];switch(D){case"name-asc":M.sort((W,U)=>W.name.localeCompare(U.name));break;case"name-desc":M.sort((W,U)=>U.name.localeCompare(W.name));break;case"recent":M.sort((W,U)=>(U.last_scanned||0)-(W.last_scanned||0));break;case"oldest":M.sort((W,U)=>W.created_at-U.created_at);break;case"tests":M.sort((W,U)=>{const le=i.filter(Fe=>Fe.project_id===W.id).length;return i.filter(Fe=>Fe.project_id===U.id).length-le});break;case"running":M.sort((W,U)=>{const le=v.filter(Fe=>Fe.projectPath===W.path).length;return v.filter(Fe=>Fe.projectPath===U.path).length-le});break}return M},[e,g,w,D,i,v]);_.useEffect(()=>{const L=M=>{var Fe;if((M.metaKey||M.ctrlKey)&&M.key===","){M.preventDefault(),f(!0);return}if((M.metaKey||M.ctrlKey)&&M.key==="/"){M.preventDefault(),(Fe=C.current)==null||Fe.focus();return}const W=M.target;if(W.tagName==="INPUT"||W.tagName==="TEXTAREA")return;const U=document.querySelector(".project-list"),le=U&&(U===W||U.contains(W)||W.closest(".project-item")!==null);if(!le&&(M.key==="ArrowDown"||M.key==="ArrowUp"))return;const ge=R;if(M.key==="ArrowDown"&&le){M.preventDefault();const mt=N<ge.length-1?N+1:ge.length>0?0:-1;mt>=0&&(E(mt),r(ge[mt]))}else if(M.key==="ArrowUp"&&le){M.preventDefault();const mt=N>0?N-1:ge.length>0?ge.length-1:-1;mt>=0&&(E(mt),r(ge[mt]))}else M.key==="Enter"&&N>=0&&N<ge.length&&le?(M.preventDefault(),r(ge[N])):M.key==="Escape"&&le&&E(-1)};return window.addEventListener("keydown",L),()=>window.removeEventListener("keydown",L)},[N,R]),_.useEffect(()=>{E(-1)},[R.length,g]);const Y=(L,M,W)=>{H({pid:L,scriptName:M,projectName:W})},ne=()=>{H(null)};return d.jsxs("div",{className:"app",children:[d.jsx(hm,{children:d.jsxs("div",{className:"header-actions",children:[d.jsx("button",{type:"button",onClick:()=>f(!0),className:"btn-link",title:"Settings",children:"Settings"}),d.jsx("button",{type:"button",onClick:()=>u(!0),className:"btn-link btn-link-primary",children:"+ Add Project"})]})}),d.jsxs("div",{className:"app-content",children:[d.jsx(lm,{size:{width:I,height:"100%"},minWidth:200,maxWidth:600,disableDragging:!0,enableResizing:{right:!0},onResizeStop:(L,M,W,U)=>{const le=I+U.width;T(Math.max(200,Math.min(600,le)))},style:{position:"relative",display:"flex",flexDirection:"column"},resizeHandleStyles:{right:{width:"4px",right:"-2px",cursor:"col-resize",backgroundColor:"transparent"}},children:d.jsxs("aside",{className:"sidebar",style:{width:"100%",height:"100%"},children:[d.jsx(dm,{onSearchChange:O,onSortChange:p,searchInputRef:C}),d.jsx(am,{projects:R,selectedProject:n,onSelectProject:r,loading:l,runningProcesses:v,keyboardFocusedIndex:N,onKeyboardFocusChange:E})]})}),d.jsx("main",{className:"main-content",children:n?d.jsx(cm,{project:n,tests:i,onScan:()=>z(n.id),scanning:m,onProjectUpdate:L=>{r(L),Q()},onRemoveProject:Ce,onOpenTerminal:Y}):d.jsxs("div",{className:"empty-state",children:[d.jsx("h2",{children:"Select a project to view details"}),d.jsx("p",{children:"Choose a project from the sidebar to see its test files and information."})]})}),$&&d.jsx(gm,{pid:$.pid,scriptName:$.scriptName,projectName:$.projectName,onClose:ne})]}),a&&d.jsx(fm,{onAdd:b,onClose:()=>u(!1)}),c&&d.jsx(pm,{onClose:()=>f(!1)}),d.jsx(mm,{})]})}Ao.createRoot(document.getElementById("root")).render(d.jsx(Ll.StrictMode,{children:d.jsx(vm,{})}));
@@ -0,0 +1 @@
1
+ .project-list{flex:1;overflow-y:auto;overflow-x:hidden;min-height:0;padding:.75rem}.project-list::-webkit-scrollbar{width:6px}.project-list::-webkit-scrollbar-track{background:var(--bg-primary)}.project-list::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.project-list::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}.project-list-loading,.project-list-empty{padding:2rem;text-align:center;color:var(--text-secondary)}.project-list-empty .hint{font-size:12px;color:var(--text-tertiary);margin-top:.5rem}.project-item{padding:.875rem;margin-bottom:.5rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;cursor:pointer;transition:all .15s ease;position:relative}.project-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:transparent;transition:background .15s ease}.project-item:hover{background:var(--bg-hover);border-color:var(--border-hover);transform:translate(2px)}.project-item:hover:before{background:var(--accent-cyan)}.project-item.selected{background:var(--bg-hover);border-color:var(--accent-cyan);box-shadow:var(--shadow-sm)}.project-item.keyboard-focused{outline:2px solid var(--accent-cyan);outline-offset:-2px;background:var(--bg-hover)}.project-item.selected:before{background:var(--accent-cyan)}.project-item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem;gap:.5rem}.project-name{font-size:13px;font-weight:600;color:var(--text-primary);margin:0;flex:1;font-family:inherit;letter-spacing:.2px}.project-remove-btn{background:transparent;border:1px solid transparent;font-size:18px;color:var(--text-tertiary);cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:3px;transition:all .15s ease;flex-shrink:0;line-height:1}.project-remove-btn:hover{background:#ff52521a;color:#ff5252;border-color:#ff52524d}.project-path{font-size:11px;color:var(--text-tertiary);margin:.25rem 0;word-break:break-all;font-family:SF Mono,Monaco,monospace;opacity:.8}.project-meta{display:flex;justify-content:space-between;align-items:center;margin-top:.5rem;font-size:11px;color:var(--text-tertiary);gap:.5rem}.project-tags{display:flex;flex-wrap:wrap;gap:.375rem;margin-top:.5rem}.project-tag{background:var(--bg-hover);border:1px solid var(--border-color);padding:.125rem .5rem;border-radius:3px;font-size:10px;font-weight:500;color:var(--accent-cyan);font-family:SF Mono,Monaco,monospace;text-transform:uppercase;letter-spacing:.3px}.project-scanned{flex:1;font-family:SF Mono,Monaco,monospace}.project-scan-btn{background:transparent;border:1px solid var(--border-color);font-size:12px;cursor:pointer;padding:.25rem .5rem;border-radius:3px;transition:all .15s ease;color:var(--text-secondary);font-family:inherit}.project-scan-btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--accent-green);color:var(--accent-green)}.project-scan-btn:disabled{opacity:.3;cursor:not-allowed}.running-indicator-dot{color:var(--accent-green);margin-right:.5rem;font-size:10px;animation:pulse 2s infinite}.project-item.running:before{background:var(--accent-green)}.running-count{background:var(--accent-green);color:var(--bg-primary);padding:.125rem .5rem;border-radius:10px;font-size:10px;font-weight:600;font-family:SF Mono,Monaco,monospace}.running-ports{display:flex;gap:.25rem;flex-wrap:wrap}.port-badge{background:var(--accent-blue);color:var(--bg-primary);padding:.125rem .5rem;border-radius:3px;font-size:10px;font-weight:600;font-family:SF Mono,Monaco,monospace}.project-urls-section{background:var(--bg-secondary);padding:1.25rem;border-radius:4px;border:1px solid var(--border-color);margin-bottom:1.5rem}.urls-list{display:flex;flex-direction:column;gap:.5rem}.url-item{padding:.875rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;transition:all .15s ease;display:flex;justify-content:space-between;align-items:center;gap:1rem}.url-item:hover{background:var(--bg-hover);border-color:var(--border-hover)}.url-text{font-family:SF Mono,Monaco,monospace;font-size:12px;color:var(--accent-cyan);flex:1;word-break:break-all;cursor:pointer;text-decoration:underline}.url-text:hover{color:var(--accent-blue)}.project-details{max-width:1000px}.btn-small{padding:.35rem .75rem;font-size:11px}.btn-tiny{padding:.25rem .5rem;font-size:10px;display:inline-flex;align-items:center;gap:4px}.project-details-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color);gap:1rem}.project-details-header h2{font-size:18px;color:var(--text-primary);margin-bottom:.5rem;font-weight:600;font-family:inherit;letter-spacing:.3px}.project-name-editable{cursor:pointer;transition:color .15s ease}.project-name-editable:hover{color:var(--accent-cyan)}.project-name-edit{margin-bottom:.5rem}.project-name-input{background:var(--bg-tertiary);border:1px solid var(--accent-cyan);border-radius:4px;padding:.5rem;font-size:18px;font-weight:600;color:var(--text-primary);font-family:inherit;width:100%;max-width:400px}.project-name-input:focus{outline:none;box-shadow:0 0 0 2px #39c5cf33}.project-description-edit{margin-bottom:.5rem}.project-description-input{background:var(--bg-tertiary);border:1px solid var(--accent-cyan);border-radius:4px;padding:.5rem;font-size:13px;color:var(--text-primary);font-family:inherit;width:100%;max-width:600px;resize:vertical;min-height:60px}.project-description-input:focus{outline:none;box-shadow:0 0 0 2px #39c5cf33}.project-description{cursor:pointer;color:var(--text-secondary);font-size:13px;transition:color .15s ease;margin-bottom:.5rem}.project-description:hover{color:var(--text-primary)}.header-actions-group{display:flex;gap:.5rem;align-items:center}.project-path{color:var(--text-tertiary);font-size:11px;word-break:break-all;font-family:SF Mono,Monaco,monospace;opacity:.8}.project-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem;margin-bottom:1.5rem}.stat-card{background:var(--bg-secondary);padding:1rem;border-radius:4px;border:1px solid var(--border-color);text-align:left;transition:all .15s ease}.stat-card:hover{border-color:var(--border-hover);background:var(--bg-tertiary)}.stat-value{font-size:24px;font-weight:600;color:var(--accent-cyan);margin-bottom:.25rem;font-family:SF Mono,Monaco,monospace;line-height:1.2}.stat-label{font-size:11px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;font-weight:500}.framework-breakdown{background:var(--bg-secondary);padding:1.25rem;border-radius:4px;border:1px solid var(--border-color);margin-bottom:1.5rem}.framework-breakdown h3{font-size:13px;color:var(--text-primary);margin-bottom:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;font-family:inherit}.framework-list{display:flex;flex-wrap:wrap;gap:.5rem}.framework-item{display:flex;align-items:center;gap:.5rem;padding:.375rem .75rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:3px;transition:all .15s ease}.framework-item:hover{border-color:var(--accent-purple);background:var(--bg-hover)}.framework-name{font-weight:500;color:var(--text-primary);font-size:12px;font-family:SF Mono,Monaco,monospace}.framework-count{background:var(--accent-purple);color:var(--bg-primary);padding:.125rem .5rem;border-radius:2px;font-size:11px;font-weight:600;font-family:SF Mono,Monaco,monospace}.tests-section{background:var(--bg-secondary);padding:1.25rem;border-radius:4px;border:1px solid var(--border-color);margin-bottom:1.5rem}.tests-section h3{font-size:13px;color:var(--text-primary);margin-bottom:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;font-family:inherit}.no-tests{padding:2rem;text-align:center;color:var(--text-tertiary);font-size:12px}.tests-list{display:flex;flex-direction:column;gap:.5rem}.test-item{padding:.875rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;transition:all .15s ease}.test-item:hover{background:var(--bg-hover);border-color:var(--border-hover);transform:translate(2px)}.test-file{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;gap:.75rem}.test-path{font-family:SF Mono,Monaco,monospace;font-size:12px;color:var(--text-primary);flex:1;word-break:break-all}.test-framework{background:var(--accent-blue);color:var(--bg-primary);padding:.25rem .5rem;border-radius:3px;font-size:10px;font-weight:600;font-family:SF Mono,Monaco,monospace;text-transform:uppercase;letter-spacing:.3px;flex-shrink:0}.test-status{font-size:11px;color:var(--text-tertiary);font-family:SF Mono,Monaco,monospace}.jenkins-placeholder{background:var(--bg-secondary);padding:1.25rem;border-radius:4px;border:1px dashed var(--border-color);opacity:.6}.jenkins-placeholder h3{font-size:13px;color:var(--text-secondary);margin-bottom:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;font-family:inherit}.placeholder-text{color:var(--text-tertiary);font-style:italic;font-size:12px;line-height:1.6}.danger-zone{background:#f851490d;padding:1.25rem;border-radius:4px;border:1px solid rgba(248,81,73,.3);margin-top:1.5rem}.danger-zone h3{font-size:13px;color:#f85149;margin-bottom:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;font-family:inherit}.danger-zone-text{color:var(--text-secondary);font-size:12px;line-height:1.6;margin-bottom:1rem}.danger-zone .btn-danger{background:transparent;border:1px solid #f85149;color:#f85149}.danger-zone .btn-danger:hover:not(:disabled){background:#f85149;color:var(--bg-primary)}.btn-small{padding:.375rem .75rem;font-size:11px}.tags-section{background:var(--bg-secondary);padding:1.25rem;border-radius:4px;border:1px solid var(--border-color);margin-bottom:1.5rem}.tags-content{margin-top:.75rem}.tags-list{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.tag-item{background:var(--bg-tertiary);border:1px solid var(--border-color);padding:.375rem .375rem .375rem .625rem;border-radius:4px;font-size:11px;font-weight:500;color:var(--accent-cyan);font-family:SF Mono,Monaco,monospace;text-transform:uppercase;letter-spacing:.3px;display:flex;align-items:center;gap:.375rem;transition:all .15s ease}.tag-item:hover{border-color:var(--accent-cyan)}.tag-remove{background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:0 4px;font-size:16px;line-height:1;transition:color .15s ease}.tag-remove:hover{color:#f85149}.tag-add-btn{background:transparent;border:1px dashed var(--border-color);padding:.375rem .75rem;border-radius:4px;font-size:11px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .15s ease;text-transform:uppercase;letter-spacing:.3px}.tag-add-btn:hover{border-color:var(--accent-cyan);color:var(--accent-cyan);background:var(--bg-tertiary)}.tag-input-wrapper{position:relative;display:inline-block}.tag-input{background:var(--bg-tertiary);border:1px solid var(--accent-cyan);border-radius:4px;padding:.375rem .625rem;font-size:11px;font-family:SF Mono,Monaco,monospace;color:var(--text-primary);min-width:120px;outline:none}.tag-input:focus{box-shadow:0 0 0 2px #39c5cf33}.tag-suggestions{position:absolute;top:calc(100% + 4px);left:0;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;box-shadow:var(--shadow-md);z-index:100;min-width:100%;max-width:200px}.tag-suggestion{padding:.5rem .75rem;cursor:pointer;font-size:11px;color:var(--text-primary);font-family:SF Mono,Monaco,monospace;transition:all .15s ease}.tag-suggestion:first-child{border-radius:4px 4px 0 0}.tag-suggestion:last-child{border-radius:0 0 4px 4px}.tag-suggestion:hover{background:var(--bg-hover);color:var(--accent-cyan)}.ports-section,.scripts-section,.running-processes-section{background:var(--bg-secondary);padding:1.25rem;border-radius:4px;border:1px solid var(--border-color);margin-bottom:1.5rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.section-header h3{font-size:13px;color:var(--text-primary);font-weight:600;text-transform:uppercase;letter-spacing:.5px;font-family:inherit;margin:0}.project-type-badge{background:var(--bg-tertiary);border:1px solid var(--border-color);padding:.25rem .5rem;border-radius:3px;font-size:10px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;font-family:SF Mono,Monaco,monospace}.ports-list,.scripts-list,.processes-list{display:flex;flex-direction:column;gap:.5rem}.port-item{padding:.875rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;transition:all .15s ease}.port-item:hover{background:var(--bg-hover);border-color:var(--border-hover)}.port-info{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.port-number{font-family:SF Mono,Monaco,monospace;font-size:13px;font-weight:600;color:var(--accent-cyan)}.port-script{font-family:SF Mono,Monaco,monospace;font-size:11px;color:var(--text-secondary)}.port-source{font-family:SF Mono,Monaco,monospace;font-size:11px;color:var(--text-tertiary);flex:1}.script-item{padding:.875rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;transition:all .15s ease;display:flex;justify-content:space-between;align-items:center;gap:1rem}.script-item:hover{background:var(--bg-hover);border-color:var(--border-hover)}.script-item.running{border-left:3px solid var(--accent-cyan)}.script-info{display:flex;flex-direction:column;gap:.5rem;flex:1}.script-header{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.script-process-info{display:flex;flex-direction:column;gap:.375rem;margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--border-color)}.process-badge{display:flex;align-items:center;gap:.5rem;font-size:11px;font-family:SF Mono,Monaco,monospace;color:var(--text-secondary)}.process-indicator{color:var(--accent-cyan);font-size:8px}.process-pid{color:var(--text-secondary)}.process-uptime{color:var(--text-tertiary)}.process-port{color:var(--accent-cyan);font-weight:600}.btn-tiny{padding:2px 8px;font-size:10px;font-weight:600;border-radius:4px;margin-left:4px}.script-name{font-family:SF Mono,Monaco,monospace;font-size:13px;font-weight:600;color:var(--text-primary);min-width:80px}.script-command{font-family:SF Mono,Monaco,monospace;font-size:11px;color:var(--text-secondary);flex:1;word-break:break-all}.script-runner{background:var(--bg-hover);border:1px solid var(--border-color);padding:.25rem .5rem;border-radius:3px;font-size:10px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.3px;font-family:SF Mono,Monaco,monospace;flex-shrink:0}.script-actions{display:flex;gap:.5rem;flex-shrink:0}.loading-state,.no-scripts{padding:2rem;text-align:center;color:var(--text-tertiary);font-size:12px}.running-indicator{color:var(--accent-green);font-size:12px;margin-right:.5rem;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.process-item{padding:.875rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;transition:all .15s ease;display:flex;justify-content:space-between;align-items:center;gap:1rem}.process-item:hover{background:var(--bg-hover);border-color:var(--border-hover)}.process-info{display:flex;align-items:center;gap:.75rem;flex:1;flex-wrap:wrap}.process-name{font-family:SF Mono,Monaco,monospace;font-size:13px;font-weight:600;color:var(--text-primary);min-width:100px}.process-pid{font-family:SF Mono,Monaco,monospace;font-size:11px;color:var(--text-secondary)}.process-uptime{font-family:SF Mono,Monaco,monospace;font-size:11px;color:var(--text-tertiary)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;width:90%;max-width:500px;box-shadow:var(--shadow-lg);animation:modalSlideIn .2s ease}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem;border-bottom:1px solid var(--border-color)}.modal-header h2{font-size:14px;color:var(--text-primary);margin:0;font-weight:600;text-transform:uppercase;letter-spacing:.5px;font-family:inherit}.modal-close{background:transparent;border:1px solid transparent;font-size:20px;color:var(--text-tertiary);cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:3px;transition:all .15s ease;line-height:1}.modal-close:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-color)}.modal-content form{padding:1.25rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary);font-size:12px;text-transform:uppercase;letter-spacing:.3px;font-family:inherit}.path-input-group{display:flex;gap:.5rem}.path-input-group input{flex:1;padding:.625rem;border:1px solid var(--border-color);border-radius:4px;font-size:12px;font-family:SF Mono,Monaco,monospace;background:var(--bg-tertiary);color:var(--text-primary);transition:all .15s ease}.path-input-group input::placeholder{color:var(--text-tertiary);opacity:.6}.path-input-group input:focus{outline:none;border-color:var(--accent-cyan);box-shadow:0 0 0 2px #39c5cf1a;background:var(--bg-hover)}.path-input-group input:disabled{background:var(--bg-primary);cursor:not-allowed;opacity:.5}.modal-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1.25rem}.project-search{padding:12px;border-bottom:1px solid var(--border-color);background:var(--bg-secondary);flex-shrink:0;z-index:10}.search-input-group{display:flex;gap:8px;position:relative}.search-input-wrapper{flex:1;position:relative;display:flex;align-items:center}.search-input{flex:1;padding:8px 36px 8px 12px;border:1px solid var(--border-color);border-radius:4px;font-size:14px;outline:none;transition:border-color .2s;background:var(--bg-tertiary);color:var(--text-primary)}.sort-icon-btn{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:3px;transition:all .15s ease}.sort-icon-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.sort-menu{position:absolute;top:calc(100% + 4px);right:0;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;box-shadow:var(--shadow-md);z-index:100;min-width:180px;padding:4px}.sort-menu-item{padding:8px 12px;cursor:pointer;border-radius:3px;font-size:13px;color:var(--text-primary);display:flex;justify-content:space-between;align-items:center;transition:all .15s ease}.sort-menu-item:hover{background:var(--bg-hover)}.sort-menu-item.active{background:var(--bg-hover);color:var(--accent-cyan)}.sort-menu-item .checkmark{color:var(--accent-green);font-size:12px;margin-left:8px}.search-input:focus{border-color:var(--accent-cyan)}.search-input::placeholder{color:var(--text-tertiary)}.search-filter{padding:8px 12px;border:1px solid var(--border-color);border-radius:4px;font-size:14px;background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;outline:none;transition:border-color .2s}.search-filter:focus{border-color:var(--accent-cyan)}.search-filter:hover{border-color:var(--border-hover);background:var(--bg-hover)}.settings-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.settings-modal{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;width:90%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}.settings-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-color)}.settings-header h2{font-size:18px;font-weight:600;color:var(--text-primary);margin:0}.settings-close-btn{background:none;border:none;color:var(--text-secondary);font-size:24px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .15s ease}.settings-close-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.settings-content{padding:1.5rem;overflow-y:auto;flex:1}.settings-section{margin-bottom:2rem}.settings-section:last-child{margin-bottom:0}.settings-section h3{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:1rem;text-transform:uppercase;letter-spacing:.5px}.settings-field{margin-bottom:1rem}.settings-field:last-child{margin-bottom:0}.settings-field label{display:block;font-size:12px;color:var(--text-secondary);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.3px}.settings-select,.settings-input{width:100%;padding:.75rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:13px;font-family:inherit;outline:none;transition:border-color .15s ease}.settings-select:focus,.settings-input:focus{border-color:var(--accent-cyan)}.settings-input{font-family:SF Mono,Monaco,monospace}.settings-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1.5rem;border-top:1px solid var(--border-color)}.loading-state{padding:3rem;text-align:center;color:var(--text-tertiary);font-size:13px}.app-header{-webkit-app-region:drag;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:1rem}.app-header button,.app-header .btn,.app-header .btn-link,.app-header .header-actions{-webkit-app-region:no-drag}.status-bar{background:var(--bg-secondary);border-top:1px solid var(--border-color);padding:.5rem 1.5rem;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;font-size:11px;font-family:SF Mono,Monaco,monospace}.status-bar-content{display:flex;align-items:center;gap:1rem;width:100%;justify-content:space-between}.status-indicator{display:flex;align-items:center;gap:.5rem}.status-dot{width:6px;height:6px;border-radius:50%;display:inline-block}.status-dot.connected{background:var(--accent-green);box-shadow:0 0 4px var(--accent-green)}.status-dot.disconnected{background:#f85149;box-shadow:0 0 4px #f85149}.status-text{color:var(--text-secondary);font-size:11px;text-transform:uppercase;letter-spacing:.5px}.api-port{color:var(--text-tertiary);font-size:11px;font-family:SF Mono,Monaco,monospace}.terminal-sidebar{display:flex;flex-direction:column;width:500px;height:100%;background:#1e1e1e;border-left:1px solid #333;color:#ccc;font-family:Menlo,Monaco,Courier New,monospace;font-size:13px}.terminal-header{display:flex;flex-direction:column;gap:8px;padding:12px;background:#252526;border-bottom:1px solid #333}.terminal-title{display:flex;align-items:center;gap:8px}.terminal-icon{color:#4caf50;font-size:14px}.terminal-info{display:flex;flex-direction:column;flex:1;gap:2px}.terminal-script{font-weight:600;color:#fff;font-size:14px}.terminal-project{font-size:11px;color:#888}.terminal-status{font-size:11px;padding:2px 8px;border-radius:10px;font-weight:500}.terminal-status.running{color:#4caf50;background:#4caf5026}.terminal-status.stopped{color:#888;background:#88888826}.terminal-actions{display:flex;gap:6px;align-items:center}.terminal-btn{background:transparent;border:1px solid #444;color:#ccc;padding:4px 10px;border-radius:4px;cursor:pointer;font-size:12px;transition:all .2s}.terminal-btn:hover{background:#333;border-color:#555}.terminal-btn-scroll{font-size:16px;padding:2px 8px;font-weight:700}.terminal-btn-close{color:#f44336;border-color:#f44336}.terminal-btn-close:hover{background:#f443361a}.terminal-output{flex:1;overflow-y:auto;padding:12px;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}.terminal-output::-webkit-scrollbar{width:10px}.terminal-output::-webkit-scrollbar-track{background:#1e1e1e}.terminal-output::-webkit-scrollbar-thumb{background:#424242;border-radius:5px}.terminal-output::-webkit-scrollbar-thumb:hover{background:#4e4e4e}.terminal-line{margin-bottom:2px}.terminal-empty{color:#888;font-style:italic;text-align:center;padding:20px}.terminal-line{color:#ccc}.terminal-line:has-text("error"),.terminal-line:has-text("Error"),.terminal-line:has-text("ERROR"){color:#f44336}.terminal-line:has-text("warning"),.terminal-line:has-text("Warning"),.terminal-line:has-text("WARN"){color:#ff9800}.terminal-line:has-text("success"),.terminal-line:has-text("Success"),.terminal-line:has-text("✓"){color:#4caf50}.app{display:flex;flex-direction:column;height:100vh;overflow:hidden;background:var(--bg-primary)}.app-header{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);padding:.5rem 1.5rem;display:flex;align-items:center;justify-content:center;gap:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;z-index:10;flex-shrink:0}.app-header:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,var(--accent-cyan) 50%,transparent 100%);opacity:.3}.app-logo{margin:0;font-size:12px;font-weight:600;letter-spacing:1.5px;color:var(--accent-cyan);position:absolute;left:50%;transform:translate(-50%)}.header-actions{display:flex;gap:1.5rem;margin-left:auto}.btn-link{padding:0;border:none;background:none;font-size:11px;font-weight:500;cursor:pointer;transition:color .15s ease;font-family:inherit;letter-spacing:.3px;text-transform:uppercase;color:var(--text-secondary);-webkit-app-region:no-drag}.btn-link:hover:not(:disabled){color:var(--text-primary)}.btn-link:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.btn-link-primary{color:var(--accent-cyan)}.btn-link-primary:hover:not(:disabled){color:var(--accent-blue)}.btn{padding:.5rem 1rem;border:1px solid var(--border-color);border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease;font-family:inherit;letter-spacing:.3px;text-transform:uppercase;background:var(--bg-tertiary);color:var(--text-primary)}.btn:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.btn-primary{background:var(--accent-cyan);color:var(--bg-primary);border-color:var(--accent-cyan);font-weight:600}.btn-primary:hover:not(:disabled){background:var(--accent-blue);border-color:var(--accent-blue);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn-secondary{background:transparent;color:var(--text-secondary);border-color:var(--border-color)}.btn-secondary:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-hover);color:var(--text-primary)}.btn-danger{background:transparent;color:#f85149;border-color:#f85149}.btn-danger:hover:not(:disabled){background:#f851491a;border-color:#f85149;color:#f85149}.btn-tiny{padding:.25rem .5rem;font-size:10px}.terminal-icon{font-size:14px;display:inline-block}.app-content{display:flex;flex:1;overflow:hidden;position:relative}.app-content-with-terminal{display:grid;grid-template-columns:auto 1fr auto;flex:1;overflow:hidden}.react-resizable-handle{position:absolute;width:4px;right:-2px;top:0;bottom:0;cursor:col-resize;background:transparent;z-index:10}.react-resizable-handle:hover{background:var(--accent-cyan);opacity:.3}.react-resizable-handle:active{background:var(--accent-cyan);opacity:.6}.sidebar{width:100%;height:100%;background:var(--bg-secondary);border-right:1px solid var(--border-color);overflow:hidden;display:flex;flex-direction:column}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:var(--bg-primary)}.sidebar::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.sidebar::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}.main-content{flex:1;overflow-y:auto;padding:1.5rem;background:var(--bg-primary)}.main-content::-webkit-scrollbar{width:6px}.main-content::-webkit-scrollbar-track{background:var(--bg-primary)}.main-content::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.main-content::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--text-secondary);text-align:center;padding:2rem}.empty-state h2{margin-bottom:.5rem;color:var(--text-primary);font-size:16px;font-weight:500}.empty-state p{color:var(--text-tertiary);font-size:13px}.app-footer{background:var(--bg-secondary);border-top:1px solid var(--border-color);padding:.5rem 1.5rem;flex-shrink:0}*{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: #0d1117;--bg-secondary: #161b22;--bg-tertiary: #1c2128;--bg-hover: #21262d;--border-color: #30363d;--border-hover: #484f58;--text-primary: #c9d1d9;--text-secondary: #8b949e;--text-tertiary: #6e7681;--accent-cyan: #39c5cf;--accent-blue: #58a6ff;--accent-green: #3fb950;--accent-purple: #bc8cff;--accent-orange: #ffa657;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .5)}body{font-family:SF Mono,Monaco,Inconsolata,Fira Code,Fira Mono,Droid Sans Mono,Source Code Pro,Menlo,Consolas,Courier New,monospace;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);color:var(--text-primary);font-size:13px;line-height:1.5;-webkit-user-select:none;user-select:none}input,textarea,[contenteditable=true],[contenteditable=""]{-webkit-user-select:text;user-select:text}code{font-family:SF Mono,Monaco,Inconsolata,Fira Code,Fira Mono,Droid Sans Mono,Source Code Pro,Menlo,Consolas,Courier New,monospace}#root{width:100%;height:100vh}
@@ -5,8 +5,8 @@
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
6
  <meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; style-src 'self' 'unsafe-inline'; img-src 'self' data: https:; font-src 'self' data:; connect-src 'self' http://localhost:* ws://localhost:*;" />
7
7
  <title>projax</title>
8
- <script type="module" crossorigin src="./assets/index-C9Fo49a8.js"></script>
9
- <link rel="stylesheet" crossorigin href="./assets/index-DEOOHPEi.css">
8
+ <script type="module" crossorigin src="./assets/index-A04svynq.js"></script>
9
+ <link rel="stylesheet" crossorigin href="./assets/index-q8NVIH3g.css">
10
10
  </head>
11
11
  <body>
12
12
  <div id="root"></div>
package/dist/index.js CHANGED
@@ -199,7 +199,7 @@ function displayLogo() {
199
199
  return `
200
200
  PROJAX ${packageJson.version}
201
201
 
202
- Command line not your thing? Try our native desktop app:
202
+ Command line not your thing? Try our native UI:
203
203
  → prx web
204
204
 
205
205
  `;
@@ -1203,12 +1203,11 @@ program
1203
1203
  process.exit(1);
1204
1204
  }
1205
1205
  });
1206
- // Start Desktop UI command
1206
+ // Start UI command
1207
1207
  program
1208
1208
  .command('web')
1209
- .alias('desktop')
1210
1209
  .alias('ui')
1211
- .description('Start the Desktop web interface')
1210
+ .description('Start the UI web interface')
1212
1211
  .option('--dev', 'Start in development mode (with hot reload)')
1213
1212
  .action(async (options) => {
1214
1213
  try {
@@ -1231,9 +1230,9 @@ program
1231
1230
  }
1232
1231
  }
1233
1232
  }
1234
- // Ensure API server is running before starting Desktop app
1233
+ // Ensure API server is running before starting UI app
1235
1234
  await ensureAPIServerRunning(false);
1236
- // Check for bundled Desktop app first (in dist/desktop when installed globally)
1235
+ // Check for bundled UI app first (in dist/desktop when installed globally)
1237
1236
  // Then check for local development (packages/cli/dist -> packages/desktop)
1238
1237
  // Support both legacy "desktop" folder and current "electron" bundle folder
1239
1238
  const bundledDesktopPathCandidates = [
@@ -1252,14 +1251,14 @@ program
1252
1251
  }
1253
1252
  const localDesktopPath = path.join(__dirname, '..', '..', 'desktop');
1254
1253
  const localDesktopMain = path.join(localDesktopPath, 'dist', 'main.js');
1255
- // Check if bundled desktop exists (global install)
1254
+ // Check if bundled UI app exists (global install)
1256
1255
  const hasBundledDesktop = Boolean(bundledDesktopPath && bundledDesktopMain);
1257
- // Check if local desktop exists (development mode)
1256
+ // Check if local UI app exists (development mode)
1258
1257
  const isLocalDev = fs.existsSync(localDesktopPath) && fs.existsSync(path.join(localDesktopPath, 'package.json'));
1259
1258
  let desktopPackagePath;
1260
1259
  let desktopMainPath;
1261
1260
  if (bundledDesktopPath && bundledDesktopMain) {
1262
- // Bundled Desktop app (global install)
1261
+ // Bundled UI app (global install)
1263
1262
  desktopPackagePath = bundledDesktopPath;
1264
1263
  desktopMainPath = bundledDesktopMain;
1265
1264
  }
@@ -1269,19 +1268,19 @@ program
1269
1268
  desktopMainPath = localDesktopMain;
1270
1269
  }
1271
1270
  else {
1272
- console.error('Error: Desktop app not found.');
1273
- console.error('\nThe Desktop web interface is not available.');
1271
+ console.error('Error: UI app not found.');
1272
+ console.error('\nThe UI web interface is not available.');
1274
1273
  console.error('This may be a packaging issue. Please report this error.');
1275
1274
  process.exit(1);
1276
1275
  }
1277
1276
  if (options.dev) {
1278
- // Development mode - start Vite dev server and Desktop app
1277
+ // Development mode - start Vite dev server and UI app
1279
1278
  if (!isLocalDev) {
1280
1279
  console.error('Error: Development mode is only available in local development.');
1281
- console.error('The Desktop app must be built for production use.');
1280
+ console.error('The UI app must be built for production use.');
1282
1281
  process.exit(1);
1283
1282
  }
1284
- console.log('Starting Desktop app in development mode...');
1283
+ console.log('Starting UI app in development mode...');
1285
1284
  console.log('Starting Vite dev server on port 7898...');
1286
1285
  const { spawn } = require('child_process');
1287
1286
  const electron = require('electron');
@@ -1297,7 +1296,7 @@ program
1297
1296
  // Wait for Vite to be ready
1298
1297
  if (output.includes('Local:') || output.includes('ready')) {
1299
1298
  setTimeout(() => {
1300
- console.log('\nStarting Desktop window...');
1299
+ console.log('\nStarting UI window...');
1301
1300
  spawn(electron, [desktopMainPath], {
1302
1301
  stdio: 'inherit',
1303
1302
  detached: true,
@@ -1319,13 +1318,13 @@ program
1319
1318
  // Production mode - check if built
1320
1319
  if (!fs.existsSync(desktopMainPath)) {
1321
1320
  if (!isLocalDev) {
1322
- console.error('Error: Desktop app is not built.');
1321
+ console.error('Error: UI app is not built.');
1323
1322
  console.error('The @projax/desktop package needs to be built.');
1324
1323
  console.error('Please contact the package maintainer or build it locally.');
1325
1324
  process.exit(1);
1326
1325
  }
1327
- console.log('Desktop app not built.');
1328
- console.log('Building Desktop app...');
1326
+ console.log('UI app not built.');
1327
+ console.log('Building UI app...');
1329
1328
  const { execSync } = require('child_process');
1330
1329
  try {
1331
1330
  // When in local dev, desktopPackagePath points to packages/desktop
@@ -1354,7 +1353,7 @@ program
1354
1353
  }
1355
1354
  if (!fs.existsSync(rendererIndex)) {
1356
1355
  if (hasBundledDesktop) {
1357
- console.error('Error: Renderer files not found in bundled Desktop app.');
1356
+ console.error('Error: Renderer files not found in bundled UI app.');
1358
1357
  console.error('This is a packaging issue. Please report this error.');
1359
1358
  process.exit(1);
1360
1359
  }
@@ -1367,7 +1366,7 @@ program
1367
1366
  // Ensure NODE_ENV is not set to development when using bundled files
1368
1367
  process.env.NODE_ENV = 'production';
1369
1368
  }
1370
- console.log('Starting Desktop app...');
1369
+ console.log('Starting UI app...');
1371
1370
  const { spawn } = require('child_process');
1372
1371
  const electron = require('electron');
1373
1372
  spawn(electron, [desktopMainPath], {
@@ -1377,7 +1376,7 @@ program
1377
1376
  }).unref();
1378
1377
  }
1379
1378
  catch (error) {
1380
- console.error('Error starting Desktop app:', error instanceof Error ? error.message : error);
1379
+ console.error('Error starting UI app:', error instanceof Error ? error.message : error);
1381
1380
  console.log('\nTroubleshooting:');
1382
1381
  console.log('1. Try dev mode: prx web --dev');
1383
1382
  console.log('2. Or build manually: npm run build:desktop');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "projax",
3
- "version": "3.3.11",
3
+ "version": "3.3.15",
4
4
  "description": "Cross-platform project management dashboard for tracking local development projects. Features CLI, Terminal UI, Desktop app, REST API, and built-in tools for test detection, port management, and script execution.",
5
5
  "main": "dist/index.js",
6
6
  "bin": {