hob-bot 1.0.2 → 1.0.4

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.
Files changed (88) hide show
  1. package/README.md +0 -14
  2. package/README.zh-CN.md +0 -14
  3. package/dist/web/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
  4. package/dist/web/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
  5. package/dist/web/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
  6. package/dist/web/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
  7. package/dist/web/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
  8. package/dist/web/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
  9. package/dist/web/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
  10. package/dist/web/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
  11. package/dist/web/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
  12. package/dist/web/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
  13. package/dist/web/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
  14. package/dist/web/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
  15. package/dist/web/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
  16. package/dist/web/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
  17. package/dist/web/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
  18. package/dist/web/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
  19. package/dist/web/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
  20. package/dist/web/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
  21. package/dist/web/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
  22. package/dist/web/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
  23. package/dist/web/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
  24. package/dist/web/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
  25. package/dist/web/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
  26. package/dist/web/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
  27. package/dist/web/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
  28. package/dist/web/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
  29. package/dist/web/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
  30. package/dist/web/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
  31. package/dist/web/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
  32. package/dist/web/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
  33. package/dist/web/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
  34. package/dist/web/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
  35. package/dist/web/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
  36. package/dist/web/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
  37. package/dist/web/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
  38. package/dist/web/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
  39. package/dist/web/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
  40. package/dist/web/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
  41. package/dist/web/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
  42. package/dist/web/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
  43. package/dist/web/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
  44. package/dist/web/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
  45. package/dist/web/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
  46. package/dist/web/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
  47. package/dist/web/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
  48. package/dist/web/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
  49. package/dist/web/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
  50. package/dist/web/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
  51. package/dist/web/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
  52. package/dist/web/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
  53. package/dist/web/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
  54. package/dist/web/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
  55. package/dist/web/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
  56. package/dist/web/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
  57. package/dist/web/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
  58. package/dist/web/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
  59. package/dist/web/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
  60. package/dist/web/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
  61. package/dist/web/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
  62. package/dist/web/assets/index-BCGEZvgg.css +1 -0
  63. package/dist/web/assets/index-BqkIAlk9.js +258 -0
  64. package/dist/web/assets/math-C-EwFotM.css +1 -0
  65. package/dist/web/assets/math-zZ4JA8eM.js +257 -0
  66. package/dist/web/index.html +2 -2
  67. package/dist/web/mock/audio.mp3 +0 -0
  68. package/dist/web/mock/photo.jpg +0 -0
  69. package/dist/web/mock/photo2.jpg +0 -0
  70. package/dist/web/mock/video.mp4 +0 -0
  71. package/dist/web/mock//347/201/253/346/230/237/346/227/245/350/220/275/347/244/272/346/204/217/345/233/276.md +34 -0
  72. package/package.json +6 -2
  73. package/server/src/actions.ts +8 -1
  74. package/server/src/delegations.ts +20 -2
  75. package/server/src/http.ts +9 -2
  76. package/server/src/jobs.ts +52 -20
  77. package/server/src/prompt.ts +2 -0
  78. package/server/src/push.ts +3 -2
  79. package/server/src/router-activity.ts +47 -0
  80. package/server/src/router.ts +53 -7
  81. package/server/src/settings.ts +2 -1
  82. package/server/src/thumbs.ts +49 -0
  83. package/shared/media.ts +6 -0
  84. package/shared/plain-text.ts +31 -0
  85. package/shared/sprites.ts +215 -0
  86. package/shared/types.ts +8 -0
  87. package/dist/web/assets/index-D88l35PH.css +0 -1
  88. package/dist/web/assets/index-DUs8nN3E.js +0 -218
@@ -0,0 +1,258 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/math-zZ4JA8eM.js","assets/math-C-EwFotM.css"])))=>i.map(i=>d[i]);
2
+ var m1=Object.defineProperty;var pv=l=>{throw TypeError(l)};var p1=(l,a,r)=>a in l?m1(l,a,{enumerable:!0,configurable:!0,writable:!0,value:r}):l[a]=r;var Le=(l,a,r)=>p1(l,typeof a!="symbol"?a+"":a,r),g1=(l,a,r)=>a.has(l)||pv("Cannot "+r);var gv=(l,a,r)=>a.has(l)?pv("Cannot add the same private member more than once"):a instanceof WeakSet?a.add(l):a.set(l,r);var bc=(l,a,r)=>(g1(l,a,"access private method"),r);(function(){const a=document.createElement("link").relList;if(a&&a.supports&&a.supports("modulepreload"))return;for(const d of document.querySelectorAll('link[rel="modulepreload"]'))u(d);new MutationObserver(d=>{for(const f of d)if(f.type==="childList")for(const h of f.addedNodes)h.tagName==="LINK"&&h.rel==="modulepreload"&&u(h)}).observe(document,{childList:!0,subtree:!0});function r(d){const f={};return d.integrity&&(f.integrity=d.integrity),d.referrerPolicy&&(f.referrerPolicy=d.referrerPolicy),d.crossOrigin==="use-credentials"?f.credentials="include":d.crossOrigin==="anonymous"?f.credentials="omit":f.credentials="same-origin",f}function u(d){if(d.ep)return;d.ep=!0;const f=r(d);fetch(d.href,f)}})();var wd={exports:{}},ji={};/**
3
+ * @license React
4
+ * react-jsx-runtime.production.js
5
+ *
6
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
7
+ *
8
+ * This source code is licensed under the MIT license found in the
9
+ * LICENSE file in the root directory of this source tree.
10
+ */var vv;function v1(){if(vv)return ji;vv=1;var l=Symbol.for("react.transitional.element"),a=Symbol.for("react.fragment");function r(u,d,f){var h=null;if(f!==void 0&&(h=""+f),d.key!==void 0&&(h=""+d.key),"key"in d){f={};for(var p in d)p!=="key"&&(f[p]=d[p])}else f=d;return d=f.ref,{$$typeof:l,type:u,key:h,ref:d!==void 0?d:null,props:f}}return ji.Fragment=a,ji.jsx=r,ji.jsxs=r,ji}var xv;function x1(){return xv||(xv=1,wd.exports=v1()),wd.exports}var i=x1(),Td={exports:{}},Ni={},Ed={exports:{}},Cd={};/**
11
+ * @license React
12
+ * scheduler.production.js
13
+ *
14
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
15
+ *
16
+ * This source code is licensed under the MIT license found in the
17
+ * LICENSE file in the root directory of this source tree.
18
+ */var bv;function b1(){return bv||(bv=1,(function(l){function a(W,he){var de=W.length;W.push(he);e:for(;0<de;){var $e=de-1>>>1,we=W[$e];if(0<d(we,he))W[$e]=he,W[de]=we,de=$e;else break e}}function r(W){return W.length===0?null:W[0]}function u(W){if(W.length===0)return null;var he=W[0],de=W.pop();if(de!==he){W[0]=de;e:for(var $e=0,we=W.length,zt=we>>>1;$e<zt;){var Gt=2*($e+1)-1,Xt=W[Gt],_=Gt+1,V=W[_];if(0>d(Xt,de))_<we&&0>d(V,Xt)?(W[$e]=V,W[_]=de,$e=_):(W[$e]=Xt,W[Gt]=de,$e=Gt);else if(_<we&&0>d(V,de))W[$e]=V,W[_]=de,$e=_;else break e}}return he}function d(W,he){var de=W.sortIndex-he.sortIndex;return de!==0?de:W.id-he.id}if(l.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var f=performance;l.unstable_now=function(){return f.now()}}else{var h=Date,p=h.now();l.unstable_now=function(){return h.now()-p}}var m=[],b=[],v=1,y=null,S=3,T=!1,k=!1,x=!1,j=!1,E=typeof setTimeout=="function"?setTimeout:null,A=typeof clearTimeout=="function"?clearTimeout:null,X=typeof setImmediate<"u"?setImmediate:null;function J(W){for(var he=r(b);he!==null;){if(he.callback===null)u(b);else if(he.startTime<=W)u(b),he.sortIndex=he.expirationTime,a(m,he);else break;he=r(b)}}function F(W){if(x=!1,J(W),!k)if(r(m)!==null)k=!0,G||(G=!0,Ze());else{var he=r(b);he!==null&&Ue(F,he.startTime-W)}}var G=!1,L=-1,B=5,ae=-1;function ne(){return j?!0:!(l.unstable_now()-ae<B)}function Se(){if(j=!1,G){var W=l.unstable_now();ae=W;var he=!0;try{e:{k=!1,x&&(x=!1,A(L),L=-1),T=!0;var de=S;try{t:{for(J(W),y=r(m);y!==null&&!(y.expirationTime>W&&ne());){var $e=y.callback;if(typeof $e=="function"){y.callback=null,S=y.priorityLevel;var we=$e(y.expirationTime<=W);if(W=l.unstable_now(),typeof we=="function"){y.callback=we,J(W),he=!0;break t}y===r(m)&&u(m),J(W)}else u(m);y=r(m)}if(y!==null)he=!0;else{var zt=r(b);zt!==null&&Ue(F,zt.startTime-W),he=!1}}break e}finally{y=null,S=de,T=!1}he=void 0}}finally{he?Ze():G=!1}}}var Ze;if(typeof X=="function")Ze=function(){X(Se)};else if(typeof MessageChannel<"u"){var fe=new MessageChannel,Ve=fe.port2;fe.port1.onmessage=Se,Ze=function(){Ve.postMessage(null)}}else Ze=function(){E(Se,0)};function Ue(W,he){L=E(function(){W(l.unstable_now())},he)}l.unstable_IdlePriority=5,l.unstable_ImmediatePriority=1,l.unstable_LowPriority=4,l.unstable_NormalPriority=3,l.unstable_Profiling=null,l.unstable_UserBlockingPriority=2,l.unstable_cancelCallback=function(W){W.callback=null},l.unstable_forceFrameRate=function(W){0>W||125<W?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):B=0<W?Math.floor(1e3/W):5},l.unstable_getCurrentPriorityLevel=function(){return S},l.unstable_next=function(W){switch(S){case 1:case 2:case 3:var he=3;break;default:he=S}var de=S;S=he;try{return W()}finally{S=de}},l.unstable_requestPaint=function(){j=!0},l.unstable_runWithPriority=function(W,he){switch(W){case 1:case 2:case 3:case 4:case 5:break;default:W=3}var de=S;S=W;try{return he()}finally{S=de}},l.unstable_scheduleCallback=function(W,he,de){var $e=l.unstable_now();switch(typeof de=="object"&&de!==null?(de=de.delay,de=typeof de=="number"&&0<de?$e+de:$e):de=$e,W){case 1:var we=-1;break;case 2:we=250;break;case 5:we=1073741823;break;case 4:we=1e4;break;default:we=5e3}return we=de+we,W={id:v++,callback:he,priorityLevel:W,startTime:de,expirationTime:we,sortIndex:-1},de>$e?(W.sortIndex=de,a(b,W),r(m)===null&&W===r(b)&&(x?(A(L),L=-1):x=!0,Ue(F,de-$e))):(W.sortIndex=we,a(m,W),k||T||(k=!0,G||(G=!0,Ze()))),W},l.unstable_shouldYield=ne,l.unstable_wrapCallback=function(W){var he=S;return function(){var de=S;S=he;try{return W.apply(this,arguments)}finally{S=de}}}})(Cd)),Cd}var yv;function y1(){return yv||(yv=1,Ed.exports=b1()),Ed.exports}var Ad={exports:{}},xe={};/**
19
+ * @license React
20
+ * react.production.js
21
+ *
22
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
23
+ *
24
+ * This source code is licensed under the MIT license found in the
25
+ * LICENSE file in the root directory of this source tree.
26
+ */var kv;function k1(){if(kv)return xe;kv=1;var l=Symbol.for("react.transitional.element"),a=Symbol.for("react.portal"),r=Symbol.for("react.fragment"),u=Symbol.for("react.strict_mode"),d=Symbol.for("react.profiler"),f=Symbol.for("react.consumer"),h=Symbol.for("react.context"),p=Symbol.for("react.forward_ref"),m=Symbol.for("react.suspense"),b=Symbol.for("react.memo"),v=Symbol.for("react.lazy"),y=Symbol.for("react.activity"),S=Symbol.for("react.view_transition"),T=Symbol.iterator;function k(_){return _===null||typeof _!="object"?null:(_=T&&_[T]||_["@@iterator"],typeof _=="function"?_:null)}var x={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},j=Object.assign,E={};function A(_,V,K){this.props=_,this.context=V,this.refs=E,this.updater=K||x}A.prototype.isReactComponent={},A.prototype.setState=function(_,V){if(typeof _!="object"&&typeof _!="function"&&_!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,_,V,"setState")},A.prototype.forceUpdate=function(_){this.updater.enqueueForceUpdate(this,_,"forceUpdate")};function X(){}X.prototype=A.prototype;function J(_,V,K){this.props=_,this.context=V,this.refs=E,this.updater=K||x}var F=J.prototype=new X;F.constructor=J,j(F,A.prototype),F.isPureReactComponent=!0;var G=Array.isArray;function L(){}var B={H:null,A:null,T:null,S:null},ae=Object.prototype.hasOwnProperty;function ne(_,V,K){var te=K.ref;return{$$typeof:l,type:_,key:V,ref:te!==void 0?te:null,props:K}}function Se(_,V){return ne(_.type,V,_.props)}function Ze(_){return typeof _=="object"&&_!==null&&_.$$typeof===l}function fe(_){var V={"=":"=0",":":"=2"};return"$"+_.replace(/[=:]/g,function(K){return V[K]})}var Ve=/\/+/g;function Ue(_,V){return typeof _=="object"&&_!==null&&_.key!=null?fe(""+_.key):V.toString(36)}function W(_){switch(_.status){case"fulfilled":return _.value;case"rejected":throw _.reason;default:switch(typeof _.status=="string"?_.then(L,L):(_.status="pending",_.then(function(V){_.status==="pending"&&(_.status="fulfilled",_.value=V)},function(V){_.status==="pending"&&(_.status="rejected",_.reason=V)})),_.status){case"fulfilled":return _.value;case"rejected":throw _.reason}}throw _}function he(_,V,K,te,ve){var Oe=typeof _;(Oe==="undefined"||Oe==="boolean")&&(_=null);var Me=!1;if(_===null)Me=!0;else switch(Oe){case"bigint":case"string":case"number":Me=!0;break;case"object":switch(_.$$typeof){case l:case a:Me=!0;break;case v:return Me=_._init,he(Me(_._payload),V,K,te,ve)}}if(Me)return ve=ve(_),Me=te===""?"."+Ue(_,0):te,G(ve)?(K="",Me!=null&&(K=Me.replace(Ve,"$&/")+"/"),he(ve,V,K,"",function(ce){return ce})):ve!=null&&(Ze(ve)&&(ve=Se(ve,K+(ve.key==null||_&&_.key===ve.key?"":(""+ve.key).replace(Ve,"$&/")+"/")+Me)),V.push(ve)),1;Me=0;var U=te===""?".":te+":";if(G(_))for(var P=0;P<_.length;P++)te=_[P],Oe=U+Ue(te,P),Me+=he(te,V,K,Oe,ve);else if(P=k(_),typeof P=="function")for(_=P.call(_),P=0;!(te=_.next()).done;)te=te.value,Oe=U+Ue(te,P++),Me+=he(te,V,K,Oe,ve);else if(Oe==="object"){if(typeof _.then=="function")return he(W(_),V,K,te,ve);throw V=String(_),Error("Objects are not valid as a React child (found: "+(V==="[object Object]"?"object with keys {"+Object.keys(_).join(", ")+"}":V)+"). If you meant to render a collection of children, use an array instead.")}return Me}function de(_,V,K){if(_==null)return _;var te=[],ve=0;return he(_,te,"","",function(Oe){return V.call(K,Oe,ve++)}),te}function $e(_){if(_._status===-1){var V=_._result,K=V();K.then(function(te){(_._status===0||_._status===-1)&&(_._status=1,_._result=te,K.status===void 0&&(K.status="fulfilled",K.value=te))},function(te){(_._status===0||_._status===-1)&&(_._status=2,_._result=te,K.status===void 0&&(K.status="rejected",K.reason=te))}),_._status===-1&&(_._status=0,_._result=K)}if(_._status===1)return _._result.default;throw _._result}var we=typeof reportError=="function"?reportError:function(_){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var V=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof _=="object"&&_!==null&&typeof _.message=="string"?String(_.message):String(_),error:_});if(!window.dispatchEvent(V))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",_);return}console.error(_)};function zt(_){var V=B.T,K={};K.types=V!==null?V.types:null,B.T=K;try{var te=_(),ve=B.S;ve!==null&&ve(K,te),typeof te=="object"&&te!==null&&typeof te.then=="function"&&te.then(L,we)}catch(Oe){we(Oe)}finally{V!==null&&K.types!==null&&(V.types=K.types),B.T=V}}function Gt(_){var V=B.T;if(V!==null){var K=V.types;K===null?V.types=[_]:K.indexOf(_)===-1&&K.push(_)}else zt(Gt.bind(null,_))}var Xt={map:de,forEach:function(_,V,K){de(_,function(){V.apply(this,arguments)},K)},count:function(_){var V=0;return de(_,function(){V++}),V},toArray:function(_){return de(_,function(V){return V})||[]},only:function(_){if(!Ze(_))throw Error("React.Children.only expected to receive a single React element child.");return _}};return xe.Activity=y,xe.Children=Xt,xe.Component=A,xe.Fragment=r,xe.Profiler=d,xe.PureComponent=J,xe.StrictMode=u,xe.Suspense=m,xe.ViewTransition=S,xe.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=B,xe.__COMPILER_RUNTIME={__proto__:null,c:function(_){return B.H.useMemoCache(_)}},xe.addTransitionType=Gt,xe.cache=function(_){return function(){return _.apply(null,arguments)}},xe.cacheSignal=function(){return null},xe.cloneElement=function(_,V,K){if(_==null)throw Error("The argument must be a React element, but you passed "+_+".");var te=j({},_.props),ve=_.key;if(V!=null)for(Oe in V.key!==void 0&&(ve=""+V.key),V)!ae.call(V,Oe)||Oe==="key"||Oe==="__self"||Oe==="__source"||Oe==="ref"&&V.ref===void 0||(te[Oe]=V[Oe]);var Oe=arguments.length-2;if(Oe===1)te.children=K;else if(1<Oe){for(var Me=Array(Oe),U=0;U<Oe;U++)Me[U]=arguments[U+2];te.children=Me}return ne(_.type,ve,te)},xe.createContext=function(_){return _={$$typeof:h,_currentValue:_,_currentValue2:_,_threadCount:0,Provider:null,Consumer:null},_.Provider=_,_.Consumer={$$typeof:f,_context:_},_},xe.createElement=function(_,V,K){var te,ve={},Oe=null;if(V!=null)for(te in V.key!==void 0&&(Oe=""+V.key),V)ae.call(V,te)&&te!=="key"&&te!=="__self"&&te!=="__source"&&(ve[te]=V[te]);var Me=arguments.length-2;if(Me===1)ve.children=K;else if(1<Me){for(var U=Array(Me),P=0;P<Me;P++)U[P]=arguments[P+2];ve.children=U}if(_&&_.defaultProps)for(te in Me=_.defaultProps,Me)ve[te]===void 0&&(ve[te]=Me[te]);return ne(_,Oe,ve)},xe.createRef=function(){return{current:null}},xe.forwardRef=function(_){return{$$typeof:p,render:_}},xe.isValidElement=Ze,xe.lazy=function(_){return{$$typeof:v,_payload:{_status:-1,_result:_},_init:$e}},xe.memo=function(_,V){return{$$typeof:b,type:_,compare:V===void 0?null:V}},xe.startTransition=zt,xe.unstable_useCacheRefresh=function(){return B.H.useCacheRefresh()},xe.use=function(_){return B.H.use(_)},xe.useActionState=function(_,V,K){return B.H.useActionState(_,V,K)},xe.useCallback=function(_,V){return B.H.useCallback(_,V)},xe.useContext=function(_){return B.H.useContext(_)},xe.useDebugValue=function(){},xe.useDeferredValue=function(_,V){return B.H.useDeferredValue(_,V)},xe.useEffect=function(_,V){return B.H.useEffect(_,V)},xe.useEffectEvent=function(_){return B.H.useEffectEvent(_)},xe.useId=function(){return B.H.useId()},xe.useImperativeHandle=function(_,V,K){return B.H.useImperativeHandle(_,V,K)},xe.useInsertionEffect=function(_,V){return B.H.useInsertionEffect(_,V)},xe.useLayoutEffect=function(_,V){return B.H.useLayoutEffect(_,V)},xe.useMemo=function(_,V){return B.H.useMemo(_,V)},xe.useOptimistic=function(_,V){return B.H.useOptimistic(_,V)},xe.useReducer=function(_,V,K){return B.H.useReducer(_,V,K)},xe.useRef=function(_){return B.H.useRef(_)},xe.useState=function(_){return B.H.useState(_)},xe.useSyncExternalStore=function(_,V,K){return B.H.useSyncExternalStore(_,V,K)},xe.useTransition=function(){return B.H.useTransition()},xe.version="19.3.1",xe}var jv;function df(){return jv||(jv=1,Ad.exports=k1()),Ad.exports}var zd={exports:{}},Et={};/**
27
+ * @license React
28
+ * react-dom.production.js
29
+ *
30
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
31
+ *
32
+ * This source code is licensed under the MIT license found in the
33
+ * LICENSE file in the root directory of this source tree.
34
+ */var Nv;function j1(){if(Nv)return Et;Nv=1;var l=df();function a(v){var y="https://react.dev/errors/"+v;if(1<arguments.length){y+="?args[]="+encodeURIComponent(arguments[1]);for(var S=2;S<arguments.length;S++)y+="&args[]="+encodeURIComponent(arguments[S])}return"Minified React error #"+v+"; visit "+y+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function r(){}var u={d:{f:r,r:function(){throw Error(a(522))},D:r,C:r,L:r,m:r,X:r,S:r,M:r},p:0,findDOMNode:null},d=Symbol.for("react.portal"),f=Symbol.for("react.recoverable"),h=Symbol.for("react.optimistic_key");function p(v,y,S){var T=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:d,key:T==null?null:T===h?h:""+T,children:v,containerInfo:y,implementation:S}}var m=l.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function b(v,y){if(v==="font")return"";if(typeof y=="string")return y==="use-credentials"?y:""}return Et.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=u,Et.browser=function(v){return{$$typeof:f,_reason:v}},Et.createPortal=function(v,y){var S=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!y||y.nodeType!==1&&y.nodeType!==9&&y.nodeType!==11)throw Error(a(299));return p(v,y,null,S)},Et.flushSync=function(v){var y=m.T,S=u.p;try{if(m.T=null,u.p=2,v)return v()}finally{m.T=y,u.p=S,u.d.f()}},Et.preconnect=function(v,y){typeof v=="string"&&(y?(y=y.crossOrigin,y=typeof y=="string"?y==="use-credentials"?y:"":void 0):y=null,u.d.C(v,y))},Et.prefetchDNS=function(v){typeof v=="string"&&u.d.D(v)},Et.preinit=function(v,y){if(typeof v=="string"&&y&&typeof y.as=="string"){var S=y.as,T=b(S,y.crossOrigin),k=typeof y.integrity=="string"?y.integrity:void 0,x=typeof y.fetchPriority=="string"?y.fetchPriority:void 0;S==="style"?u.d.S(v,typeof y.precedence=="string"?y.precedence:void 0,{crossOrigin:T,integrity:k,fetchPriority:x}):S==="script"&&u.d.X(v,{crossOrigin:T,integrity:k,fetchPriority:x,nonce:typeof y.nonce=="string"?y.nonce:void 0})}},Et.preinitModule=function(v,y){if(typeof v=="string")if(typeof y=="object"&&y!==null){if(y.as==null||y.as==="script"){var S=b(y.as,y.crossOrigin);u.d.M(v,{crossOrigin:S,integrity:typeof y.integrity=="string"?y.integrity:void 0,nonce:typeof y.nonce=="string"?y.nonce:void 0,fetchPriority:typeof y.fetchPriority=="string"?y.fetchPriority:void 0})}}else y==null&&u.d.M(v)},Et.preload=function(v,y){if(typeof v=="string"&&typeof y=="object"&&y!==null&&typeof y.as=="string"){var S=y.as,T=b(S,y.crossOrigin);u.d.L(v,S,{crossOrigin:T,integrity:typeof y.integrity=="string"?y.integrity:void 0,nonce:typeof y.nonce=="string"?y.nonce:void 0,type:typeof y.type=="string"?y.type:void 0,fetchPriority:typeof y.fetchPriority=="string"?y.fetchPriority:void 0,referrerPolicy:typeof y.referrerPolicy=="string"?y.referrerPolicy:void 0,imageSrcSet:typeof y.imageSrcSet=="string"?y.imageSrcSet:void 0,imageSizes:typeof y.imageSizes=="string"?y.imageSizes:void 0,media:typeof y.media=="string"?y.media:void 0})}},Et.preloadModule=function(v,y){if(typeof v=="string")if(y){var S=b(y.as,y.crossOrigin);u.d.m(v,{as:typeof y.as=="string"&&y.as!=="script"?y.as:void 0,crossOrigin:S,integrity:typeof y.integrity=="string"?y.integrity:void 0,nonce:typeof y.nonce=="string"?y.nonce:void 0,fetchPriority:typeof y.fetchPriority=="string"?y.fetchPriority:void 0})}else u.d.m(v)},Et.requestFormReset=function(v){u.d.r(v)},Et.unstable_batchedUpdates=function(v,y){return v(y)},Et.useFormState=function(v,y,S){return m.H.useFormState(v,y,S)},Et.useFormStatus=function(){return m.H.useHostTransitionStatus()},Et.version="19.3.1",Et}var Sv;function Lx(){if(Sv)return zd.exports;Sv=1;function l(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(l)}catch(a){console.error(a)}}return l(),zd.exports=j1(),zd.exports}/**
35
+ * @license React
36
+ * react-dom-client.production.js
37
+ *
38
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
39
+ *
40
+ * This source code is licensed under the MIT license found in the
41
+ * LICENSE file in the root directory of this source tree.
42
+ */var wv;function N1(){if(wv)return Ni;wv=1;var l=y1(),a=df(),r=Lx();function u(e){var t="https://react.dev/errors/"+e;if(1<arguments.length){t+="?args[]="+encodeURIComponent(arguments[1]);for(var n=2;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."}function d(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function f(e){for(var t=e,n=t;n&&!n.alternate;)t=n,(t.flags&4098)!==0&&(e=t.return),n=t.return;for(;t.return;)t=t.return;return t.tag===3?e:null}function h(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 p(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function m(e){if(f(e)!==e)throw Error(u(188))}function b(e){var t=e.alternate;if(!t){if(t=f(e),t===null)throw Error(u(188));return t!==e?null:e}for(var n=e,s=t;;){var c=n.return;if(c===null)break;var o=c.alternate;if(o===null){if(s=c.return,s!==null){n=s;continue}break}if(c.child===o.child){for(o=c.child;o;){if(o===n)return m(c),e;if(o===s)return m(c),t;o=o.sibling}throw Error(u(188))}if(n.return!==s.return)n=c,s=o;else{for(var g=!1,N=c.child;N;){if(N===n){g=!0,n=c,s=o;break}if(N===s){g=!0,s=c,n=o;break}N=N.sibling}if(!g){for(N=o.child;N;){if(N===n){g=!0,n=o,s=c;break}if(N===s){g=!0,s=o,n=c;break}N=N.sibling}if(!g)throw Error(u(189))}}if(n.alternate!==s)throw Error(u(190))}if(n.tag!==3)throw Error(u(188));return n.stateNode.current===n?e:t}function v(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=v(e),t!==null)return t;e=e.sibling}return null}function y(e,t,n,s,c,o){for(;e!==null;){if((e.tag===5||e.tag===27||e.tag===6)&&n(e,s,c,o)||(e.tag!==22||e.memoizedState===null)&&(t||e.tag!==5&&e.tag!==27)&&y(e.child,t,n,s,c,o))return!0;e=e.sibling}return!1}function S(e){for(e=e.return;e!==null;){if(e.tag===3||e.tag===5||e.tag===27)return e;e=e.return}return null}function T(e){var t=!1;for(e=e.return;e!==null&&(e.tag===4&&(t=!0),!(e.tag===3||e.tag===5||e.tag===27));)e=e.return;return t}function k(e){var t=[null,null],n=S(e);return n===null||x(t,e,n.child,{foundSelf:!1}),t}function x(e,t,n,s){for(;n!==null;){if(n===t)s.foundSelf=!0;else if(n.tag===5||n.tag===27||n.tag===6){if(s.foundSelf)return e[1]=n,!0;e[0]=n}else if((n.tag!==22||n.memoizedState===null)&&x(e,t,n.child,s))return!0;n=n.sibling}return!1}function j(e){switch(e.tag){case 5:case 27:case 6:return e.stateNode;case 3:return e.stateNode.containerInfo;default:throw Error(u(559))}}var E=null,A=null;function X(e,t,n){return e===n?!0:e===t?(E=e,!0):!1}function J(e,t,n){return e===n?(A=e,!1):e===t?(A!==null&&(E=e),!0):!1}function F(e){if(e===null)return null;do e=e===null?null:e.return;while(e&&e.tag!==5&&e.tag!==27&&e.tag!==3);return e||null}function G(e,t,n){for(var s=0,c=e;c;c=n(c))s++;c=0;for(var o=t;o;o=n(o))c++;for(;0<s-c;)e=n(e),s--;for(;0<c-s;)t=n(t),c--;for(;s--;){if(e===t||t!==null&&e===t.alternate)return e;e=n(e),t=n(t)}return null}var L=Object.assign,B=Symbol.for("react.element"),ae=Symbol.for("react.transitional.element"),ne=Symbol.for("react.portal"),Se=Symbol.for("react.fragment"),Ze=Symbol.for("react.strict_mode"),fe=Symbol.for("react.profiler"),Ve=Symbol.for("react.consumer"),Ue=Symbol.for("react.context"),W=Symbol.for("react.forward_ref"),he=Symbol.for("react.suspense"),de=Symbol.for("react.suspense_list"),$e=Symbol.for("react.memo"),we=Symbol.for("react.lazy"),zt=Symbol.for("react.activity"),Gt=Symbol.for("react.legacy_hidden"),Xt=Symbol.for("react.memo_cache_sentinel"),_=Symbol.for("react.view_transition"),V=Symbol.for("react.recoverable"),K=Symbol.iterator;function te(e){return e===null||typeof e!="object"?null:(e=K&&e[K]||e["@@iterator"],typeof e=="function"?e:null)}var ve=Symbol.for("react.client.reference");function Oe(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===ve?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case Se:return"Fragment";case fe:return"Profiler";case Ze:return"StrictMode";case he:return"Suspense";case de:return"SuspenseList";case zt:return"Activity";case _:return"ViewTransition"}if(typeof e=="object")switch(e.$$typeof){case ne:return"Portal";case Ue:return e.displayName||"Context";case Ve:return(e._context.displayName||"Context")+".Consumer";case W:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case $e:return t=e.displayName||null,t!==null?t:Oe(e.type)||"Memo";case we:t=e._payload,e=e._init;try{return Oe(e(t))}catch{}}return null}var Me=Array.isArray,U=a.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,P=r.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,ce={pending:!1,data:null,method:null,action:null},yt=[],Ct=-1;function mt(e){return{current:e}}function tt(e){0>Ct||(e.current=yt[Ct],yt[Ct]=null,Ct--)}function Fe(e,t){Ct++,yt[Ct]=e.current,e.current=t}var En=mt(null),Ca=mt(null),al=mt(null),Gi=mt(null);function Xi(e,t){switch(Fe(al,t),Fe(Ca,e),Fe(En,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Sg(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Sg(t),e=wg(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}tt(En),Fe(En,e)}function ks(){tt(En),tt(Ca),tt(al)}function Xc(e){var t=e.memoizedState;t!==null&&(ca._currentValue=t.memoizedState,Fe(Gi,e)),t=En.current;var n=wg(t,e.type);t!==n&&(Fe(Ca,e),Fe(En,n))}function Qi(e){Ca.current===e&&(tt(En),tt(Ca)),Gi.current===e&&(tt(Gi),ca._currentValue=ce)}var Qc,Qf;function il(e){if(Qc===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);Qc=t&&t[1]||"",Qf=-1<n.stack.indexOf(`
43
+ at`)?" (<anonymous>)":-1<n.stack.indexOf("@")?"@unknown:0:0":""}return`
44
+ `+Qc+e+Qf}var Zc=!1;function Vc(e,t){if(!e||Zc)return"";Zc=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var s={DetermineComponentFrameRoot:function(){try{if(t){var Y=function(){throw Error()};if(Object.defineProperty(Y.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(Y,[])}catch(ee){var O=ee}Reflect.construct(e,[],Y)}else{try{Y.call()}catch(ee){O=ee}Y=!1;try{var $=Object.getOwnPropertyDescriptor(e.prototype,"props");Object.defineProperty(e.prototype,"props",{configurable:!0,set:function(){throw Error()}}),Y=!0,new e}finally{Y&&($!==void 0?Object.defineProperty(e.prototype,"props",$):delete e.prototype.props)}}}else{try{throw Error()}catch(ee){O=ee}(Y=e())&&typeof Y.catch=="function"&&Y.catch(function(){})}}catch(ee){if(ee&&O&&typeof ee.stack=="string")return[ee.stack,O.stack]}return[null,null]}};s.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var c=Object.getOwnPropertyDescriptor(s.DetermineComponentFrameRoot,"name");c&&c.configurable&&Object.defineProperty(s.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var o=s.DetermineComponentFrameRoot(),g=o[0],N=o[1];if(g&&N){var C=g.split(`
45
+ `),R=N.split(`
46
+ `);for(c=s=0;s<C.length&&!C[s].includes("DetermineComponentFrameRoot");)s++;for(;c<R.length&&!R[c].includes("DetermineComponentFrameRoot");)c++;if(s===C.length||c===R.length)for(s=C.length-1,c=R.length-1;1<=s&&0<=c&&C[s]!==R[c];)c--;for(;1<=s&&0<=c;s--,c--)if(C[s]!==R[c]){if(s!==1||c!==1)do if(s--,c--,0>c||C[s]!==R[c]){var H=`
47
+ `+C[s].replace(" at new "," at ");return e.displayName&&H.includes("<anonymous>")&&(H=H.replace("<anonymous>",e.displayName)),H}while(1<=s&&0<=c);break}}}finally{Zc=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:"")?il(n):""}function x0(e,t){switch(e.tag){case 26:case 27:case 5:return il(e.type);case 16:return il("Lazy");case 13:return e.child!==t&&t!==null?il("Suspense Fallback"):il("Suspense");case 19:return il("SuspenseList");case 0:case 15:return Vc(e.type,!1);case 11:return Vc(e.type.render,!1);case 1:return Vc(e.type,!0);case 31:return il("Activity");case 30:return il("ViewTransition");default:return""}}function Zf(e){try{var t="",n=null;do t+=x0(e,n),n=e,e=e.return;while(e);return t}catch(s){return`
48
+ Error generating stack: `+s.message+`
49
+ `+s.stack}}var Kc=Object.prototype.hasOwnProperty,Ic=l.unstable_scheduleCallback,Jc=l.unstable_cancelCallback,b0=l.unstable_shouldYield,y0=l.unstable_requestPaint,Qt=l.unstable_now,k0=l.unstable_getCurrentPriorityLevel,Vf=l.unstable_ImmediatePriority,Kf=l.unstable_UserBlockingPriority,Zi=l.unstable_NormalPriority,j0=l.unstable_LowPriority,If=l.unstable_IdlePriority,N0=l.log,S0=l.unstable_setDisableYieldValue,Aa=null,Zt=null;function rl(e){if(typeof N0=="function"&&S0(e),Zt&&typeof Zt.setStrictMode=="function")try{Zt.setStrictMode(Aa,e)}catch{}}var Vt=Math.clz32?Math.clz32:E0,w0=Math.log,T0=Math.LN2;function E0(e){return e>>>=0,e===0?32:31-(w0(e)/T0|0)|0}var Vi=256,Ki=262144,Ii=4194304;function Bl(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&-e;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function Ji(e,t,n){var s=e.pendingLanes;if(s===0)return 0;var c=0,o=e.suspendedLanes,g=e.pingedLanes;e=e.warmLanes;var N=s&134217727;return N!==0?(s=N&~o,s!==0?c=Bl(s):(g&=N,g!==0?c=Bl(g):n||(n=N&~e,n!==0&&(c=Bl(n))))):(N=s&~o,N!==0?c=Bl(N):g!==0?c=Bl(g):n||(n=s&~e,n!==0&&(c=Bl(n)))),c===0?0:t!==0&&t!==c&&(t&o)===0&&(o=c&-c,n=t&-t,o>=n||o===32&&(n&4194048)!==0)?t:c}function za(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function Jf(e,t){(t&8)!==0&&(t|=t&32);var n=e.entangledLanes;if(n!==0)for(e=e.entanglements,n&=t;0<n;){var s=31-Vt(n),c=1<<s;t|=e[s],n&=~c}return t}function C0(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Ff(){var e=Ii;return Ii<<=1,(Ii&62914560)===0&&(Ii=4194304),e}function Fc(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function _a(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function A0(e,t,n,s,c,o){var g=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var N=e.entanglements,C=e.expirationTimes,R=e.hiddenUpdates;for(n=g&~n;0<n;){var H=31-Vt(n),Y=1<<H;N[H]=0,C[H]=-1;var O=R[H];if(O!==null)for(R[H]=null,H=0;H<O.length;H++){var $=O[H];$!==null&&($.lane&=-536870913)}n&=~Y}s!==0&&Pf(e,s,0),o!==0&&c===0&&e.tag!==0&&(e.suspendedLanes|=o&~(g&~t))}function Pf(e,t,n){e.pendingLanes|=t,e.suspendedLanes&=~t;var s=31-Vt(t);e.entangledLanes|=t,e.entanglements[s]=e.entanglements[s]|1073741824|n&261930}function Wf(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var s=31-Vt(n),c=1<<s;c&t|e[s]&t&&(e[s]|=t),n&=~c}}function eh(e,t){var n=t&-t;return n=(n&42)!==0?1:Pc(n),(n&(e.suspendedLanes|t))!==0?0:n}function Pc(e){switch(e){case 2:e=1;break;case 8:e=4;break;case 32:e=16;break;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:e=128;break;case 268435456:e=134217728;break;default:e=0}return e}function Wc(e){return e&=-e,2<e?8<e?(e&134217727)!==0?32:268435456:8:2}function th(){var e=P.p;return e!==0?e:(e=window.event,e===void 0?32:cv(e.type))}function nh(e,t){var n=P.p;try{return P.p=e,t()}finally{P.p=n}}var Yn=Math.random().toString(36).slice(2),kt="__reactFiber$"+Yn,Dt="__reactProps$"+Yn,js="__reactContainer$"+Yn,lh="__reactEvents$"+Yn,z0="__reactListeners$"+Yn,_0="__reactHandles$"+Yn,sh="__reactResources$"+Yn,Oa="__reactMarker$"+Yn,Fi="__reactLoad$"+Yn;function Pi(e){delete e[kt],delete e[Dt],delete e[z0],delete e[_0]}function Ll(e){var t;if(t=e[kt])return t;for(var n=e.parentNode;n;){if(t=n[js]||n[kt]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=Yg(e);e!==null;){if(n=e[kt])return n;e=Yg(e)}return t}e=n,n=e.parentNode}return null}function Ns(e){if(e=e[kt]||e[js]){var t=e.tag;if(t===5||t===6||t===13||t===31||t===26||t===27||t===3)return e}return null}function Ma(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e.stateNode;throw Error(u(33))}function Ss(e){var t=e[sh];return t||(t=e[sh]={hoistableStyles:new Map,hoistableScripts:new Map}),t}function pt(e){e[Oa]=!0}function ah(e){e[Fi]=void 0}var ih=new Set,rh={};function ql(e,t){ws(e,t),ws(e+"Capture",t)}function ws(e,t){for(rh[e]=t,e=0;e<t.length;e++)ih.add(t[e])}var O0=RegExp("^[: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]*$"),ch={},uh={};function M0(e){return Kc.call(uh,e)?!0:Kc.call(ch,e)?!1:O0.test(e)?uh[e]=!0:(ch[e]=!0,!1)}var De=!1;function oh(){var e=De;return De=!1,e}function Wi(e,t,n){if(M0(t))if(n===null)e.removeAttribute(t);else{switch(typeof n){case"undefined":case"function":case"symbol":e.removeAttribute(t);return;case"boolean":var s=t.toLowerCase().slice(0,5);if(s!=="data-"&&s!=="aria-"){e.removeAttribute(t);return}}e.setAttribute(t,n)}}function er(e,t,n){if(n===null)e.removeAttribute(t);else{switch(typeof n){case"undefined":case"function":case"symbol":case"boolean":e.removeAttribute(t);return}e.setAttribute(t,n)}}function Gn(e,t,n,s){if(s===null)e.removeAttribute(n);else{switch(typeof s){case"undefined":case"function":case"symbol":case"boolean":e.removeAttribute(n);return}e.setAttributeNS(t,n,s)}}function Kt(e){switch(typeof e){case"bigint":case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function dh(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function R0(e,t,n){var s=Object.getOwnPropertyDescriptor(e.constructor.prototype,t);if(!e.hasOwnProperty(t)&&typeof s<"u"&&typeof s.get=="function"&&typeof s.set=="function"){var c=s.get,o=s.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return c.call(this)},set:function(g){n=""+g,o.call(this,g)}}),Object.defineProperty(e,t,{enumerable:s.enumerable}),{getValue:function(){return n},setValue:function(g){n=""+g},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function eu(e){if(!e._valueTracker){var t=dh(e)?"checked":"value";e._valueTracker=R0(e,t,""+e[t])}}function fh(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),s="";return e&&(s=dh(e)?e.checked?"true":"false":e.value),e=s,e!==n?(t.setValue(e),!0):!1}var D0=/[\n"\\]/g;function sn(e){return e.replace(D0,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function tu(e,t,n,s,c,o,g,N){e.name="",g!=null&&typeof g!="function"&&typeof g!="symbol"&&typeof g!="boolean"?e.type=g:e.removeAttribute("type"),t!=null?g==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+Kt(t)):e.value!==""+Kt(t)&&(e.value=""+Kt(t)):g!=="submit"&&g!=="reset"||e.removeAttribute("value"),t!=null?g==="number"&&e.value==t?nu(e,Kt(e.value)):nu(e,Kt(t)):n!=null?nu(e,Kt(n)):s!=null&&e.removeAttribute("value"),c==null&&o!=null&&(e.defaultChecked=!!o),c!=null&&(e.checked=c&&typeof c!="function"&&typeof c!="symbol"),N!=null&&typeof N!="function"&&typeof N!="symbol"&&typeof N!="boolean"?e.name=""+Kt(N):e.removeAttribute("name")}function hh(e,t,n,s,c,o,g,N){if(o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"&&(e.type=o),t!=null||n!=null){if(!(o!=="submit"&&o!=="reset"||t!=null)){eu(e);return}n=n!=null?""+Kt(n):"",t=t!=null?""+Kt(t):n,N||t===e.value||(e.value=t),e.defaultValue=t}s=s??c,s=typeof s!="function"&&typeof s!="symbol"&&!!s,e.checked=N?e.checked:!!s,e.defaultChecked=!!s,g!=null&&typeof g!="function"&&typeof g!="symbol"&&typeof g!="boolean"&&(e.name=g),eu(e)}function nu(e,t){e.defaultValue!==""+t&&(e.defaultValue=""+t)}function Ts(e,t,n,s){if(e=e.options,t){t={};for(var c=0;c<n.length;c++)t["$"+n[c]]=!0;for(n=0;n<e.length;n++)c=t.hasOwnProperty("$"+e[n].value),e[n].selected!==c&&(e[n].selected=c),c&&s&&(e[n].defaultSelected=!0)}else{for(n=""+Kt(n),t=null,c=0;c<e.length;c++){if(e[c].value===n){e[c].selected=!0,s&&(e[c].defaultSelected=!0);return}t!==null||e[c].disabled||(t=e[c])}t!==null&&(t.selected=!0)}}function mh(e,t,n){if(t!=null&&(t=""+Kt(t),t!==e.value&&(e.value=t),n==null)){e.defaultValue!==t&&(e.defaultValue=t);return}e.defaultValue=n!=null?""+Kt(n):""}function ph(e,t,n,s){if(t==null){if(s!=null){if(n!=null)throw Error(u(92));if(Me(s)){if(1<s.length)throw Error(u(93));s=s[0]}n=s}n==null&&(n=""),t=n}n=Kt(t),e.defaultValue=n,s=e.textContent,s===n&&s!==""&&s!==null&&(e.value=s),eu(e)}function Es(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var U0=new Set("animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp".split(" "));function gh(e,t,n){var s=t.indexOf("--")===0;n==null||typeof n=="boolean"||n===""?s?e.setProperty(t,""):t==="float"?e.cssFloat="":e[t]="":s?e.setProperty(t,n):typeof n!="number"||n===0||U0.has(t)?t==="float"?e.cssFloat=n:e[t]=(""+n).trim():e[t]=n+"px"}function vh(e,t,n){if(t!=null&&typeof t!="object")throw Error(u(62));if(e=e.style,n!=null){for(var s in n)!n.hasOwnProperty(s)||t!=null&&t.hasOwnProperty(s)||(s.indexOf("--")===0?e.setProperty(s,""):s==="float"?e.cssFloat="":e[s]="",De=!0);for(var c in t)s=t[c],t.hasOwnProperty(c)&&n[c]!==s&&(gh(e,c,s),De=!0)}else for(var o in t)t.hasOwnProperty(o)&&gh(e,o,t[o])}function lu(e){if(e.indexOf("-")===-1)return!1;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 $0=new Map([["acceptCharset","accept-charset"],["htmlFor","for"],["httpEquiv","http-equiv"],["crossOrigin","crossorigin"],["accentHeight","accent-height"],["alignmentBaseline","alignment-baseline"],["arabicForm","arabic-form"],["baselineShift","baseline-shift"],["capHeight","cap-height"],["clipPath","clip-path"],["clipRule","clip-rule"],["colorInterpolation","color-interpolation"],["colorInterpolationFilters","color-interpolation-filters"],["colorProfile","color-profile"],["colorRendering","color-rendering"],["dominantBaseline","dominant-baseline"],["enableBackground","enable-background"],["fillOpacity","fill-opacity"],["fillRule","fill-rule"],["floodColor","flood-color"],["floodOpacity","flood-opacity"],["fontFamily","font-family"],["fontSize","font-size"],["fontSizeAdjust","font-size-adjust"],["fontStretch","font-stretch"],["fontStyle","font-style"],["fontVariant","font-variant"],["fontWeight","font-weight"],["glyphName","glyph-name"],["glyphOrientationHorizontal","glyph-orientation-horizontal"],["glyphOrientationVertical","glyph-orientation-vertical"],["horizAdvX","horiz-adv-x"],["horizOriginX","horiz-origin-x"],["imageRendering","image-rendering"],["letterSpacing","letter-spacing"],["lightingColor","lighting-color"],["markerEnd","marker-end"],["markerMid","marker-mid"],["markerStart","marker-start"],["maskType","mask-type"],["overlinePosition","overline-position"],["overlineThickness","overline-thickness"],["paintOrder","paint-order"],["panose-1","panose-1"],["pointerEvents","pointer-events"],["renderingIntent","rendering-intent"],["shapeRendering","shape-rendering"],["stopColor","stop-color"],["stopOpacity","stop-opacity"],["strikethroughPosition","strikethrough-position"],["strikethroughThickness","strikethrough-thickness"],["strokeDasharray","stroke-dasharray"],["strokeDashoffset","stroke-dashoffset"],["strokeLinecap","stroke-linecap"],["strokeLinejoin","stroke-linejoin"],["strokeMiterlimit","stroke-miterlimit"],["strokeOpacity","stroke-opacity"],["strokeWidth","stroke-width"],["textAnchor","text-anchor"],["textDecoration","text-decoration"],["textRendering","text-rendering"],["transformOrigin","transform-origin"],["underlinePosition","underline-position"],["underlineThickness","underline-thickness"],["unicodeBidi","unicode-bidi"],["unicodeRange","unicode-range"],["unitsPerEm","units-per-em"],["vAlphabetic","v-alphabetic"],["vHanging","v-hanging"],["vIdeographic","v-ideographic"],["vMathematical","v-mathematical"],["vectorEffect","vector-effect"],["vertAdvY","vert-adv-y"],["vertOriginX","vert-origin-x"],["vertOriginY","vert-origin-y"],["wordSpacing","word-spacing"],["writingMode","writing-mode"],["xmlnsXlink","xmlns:xlink"],["xHeight","x-height"]]),H0=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function tr(e){return H0.test(""+e)?"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')":e}function Cn(){}var su=null;function au(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var Cs=null,As=null;function xh(e){var t=Ns(e);if(t&&(e=t.stateNode)){var n=e[Dt]||null;e:switch(e=t.stateNode,t.type){case"input":if(tu(e,n.value,n.defaultValue,n.defaultValue,n.checked,n.defaultChecked,n.type,n.name),t=n.name,n.type==="radio"&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll('input[name="'+sn(""+t)+'"][type="radio"]'),t=0;t<n.length;t++){var s=n[t];if(s!==e&&s.form===e.form){var c=s[Dt]||null;if(!c)throw Error(u(90));tu(s,c.value,c.defaultValue,c.defaultValue,c.checked,c.defaultChecked,c.type,c.name)}}for(t=0;t<n.length;t++)s=n[t],s.form===e.form&&fh(s)}break e;case"textarea":mh(e,n.value,n.defaultValue);break e;case"select":t=n.value,t!=null&&Ts(e,!!n.multiple,t,!1)}}}var iu=!1;function bh(e,t,n){if(iu)return e(t,n);iu=!0;try{var s=e(t);return s}finally{if(iu=!1,(Cs!==null||As!==null)&&(tc(),Cs&&(t=Cs,e=As,As=Cs=null,xh(t),e)))for(t=0;t<e.length;t++)xh(e[t])}}function Ra(e,t){var n=e.stateNode;if(n===null)return null;var s=n[Dt]||null;if(s===null)return null;n=s[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":(s=!s.disabled)||(e=e.type,s=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!s;break e;default:e=!1}if(e)return null;if(n&&typeof n!="function")throw Error(u(231,t,typeof n));return n}var Xn=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),ru=!1;if(Xn)try{var Da={};Object.defineProperty(Da,"passive",{get:function(){ru=!0}}),window.addEventListener("test",Da,Da),window.removeEventListener("test",Da,Da)}catch{ru=!1}var cl=null,cu=null,nr=null;function yh(){if(nr)return nr;var e,t=cu,n=t.length,s,c="value"in cl?cl.value:cl.textContent,o=c.length;for(e=0;e<n&&t[e]===c[e];e++);var g=n-e;for(s=1;s<=g&&t[n-s]===c[o-s];s++);return nr=c.slice(e,1<s?1-s:void 0)}function lr(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 sr(){return!0}function kh(){return!1}function _t(e){function t(n,s,c,o,g){this._reactName=n,this._targetInst=c,this.type=s,this.nativeEvent=o,this.target=g,this.currentTarget=null;for(var N in e)e.hasOwnProperty(N)&&(n=e[N],this[N]=n?n(o):o[N]);return this.isDefaultPrevented=(o.defaultPrevented!=null?o.defaultPrevented:o.returnValue===!1)?sr:kh,this.isPropagationStopped=kh,this}return L(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=sr)},stopPropagation:function(){var n=this.nativeEvent;n&&(n.stopPropagation?n.stopPropagation():typeof n.cancelBubble!="unknown"&&(n.cancelBubble=!0),this.isPropagationStopped=sr)},persist:function(){},isPersistent:sr}),t}var ul={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},ar=_t(ul),Ua=L({},ul,{view:0,detail:0}),B0=_t(Ua),uu,ou,$a,ir=L({},Ua,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:fu,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!==$a&&($a&&e.type==="mousemove"?(uu=e.screenX-$a.screenX,ou=e.screenY-$a.screenY):ou=uu=0,$a=e),uu)},movementY:function(e){return"movementY"in e?e.movementY:ou}}),jh=_t(ir),L0=L({},ir,{dataTransfer:0}),q0=_t(L0),Y0=L({},Ua,{relatedTarget:0}),du=_t(Y0),G0=L({},ul,{animationName:0,elapsedTime:0,pseudoElement:0}),X0=_t(G0),Q0=L({},ul,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),Z0=_t(Q0),V0=L({},ul,{data:0}),Nh=_t(V0),K0={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},I0={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"},J0={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function F0(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=J0[e])?!!t[e]:!1}function fu(){return F0}var P0=L({},Ua,{key:function(e){if(e.key){var t=K0[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=lr(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?I0[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:fu,charCode:function(e){return e.type==="keypress"?lr(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?lr(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),W0=_t(P0),ey=L({},ir,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Sh=_t(ey),ty=L({},ul,{submitter:0}),ny=_t(ty),ly=L({},Ua,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:fu}),sy=_t(ly),ay=L({},ul,{propertyName:0,elapsedTime:0,pseudoElement:0}),iy=_t(ay),ry=L({},ir,{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}),cy=_t(ry),uy=L({},ul,{newState:0,oldState:0,source:0}),oy=_t(uy),dy=[9,13,27,32],hu=Xn&&"CompositionEvent"in window,Ha=null;Xn&&"documentMode"in document&&(Ha=document.documentMode);var fy=Xn&&"TextEvent"in window&&!Ha,wh=Xn&&(!hu||Ha&&8<Ha&&11>=Ha),Th=" ",Eh=!1;function Ch(e,t){switch(e){case"keyup":return dy.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Ah(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var zs=!1;function hy(e,t){switch(e){case"compositionend":return Ah(t);case"keypress":return t.which!==32?null:(Eh=!0,Th);case"textInput":return e=t.data,e===Th&&Eh?null:e;default:return null}}function my(e,t){if(zs)return e==="compositionend"||!hu&&Ch(e,t)?(e=yh(),nr=cu=cl=null,zs=!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 wh&&t.locale!=="ko"?null:t.data;default:return null}}var py={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 zh(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!py[e.type]:t==="textarea"}function _h(e,t,n,s){Cs?As?As.push(s):As=[s]:Cs=s,t=rc(t,"onChange"),0<t.length&&(n=new ar("onChange","change",null,n,s),e.push({event:n,listeners:t}))}var Ba=null,La=null;function gy(e){xg(e,0)}function rr(e){var t=Ma(e);if(fh(t))return e}function Oh(e,t){if(e==="change")return t}var Mh=!1;if(Xn){var mu;if(Xn){var pu="oninput"in document;if(!pu){var Rh=document.createElement("div");Rh.setAttribute("oninput","return;"),pu=typeof Rh.oninput=="function"}mu=pu}else mu=!1;Mh=mu&&(!document.documentMode||9<document.documentMode)}function Dh(){Ba&&(Ba.detachEvent("onpropertychange",Uh),La=Ba=null)}function Uh(e){if(e.propertyName==="value"&&rr(La)){var t=[];_h(t,La,e,au(e)),bh(gy,t)}}function vy(e,t,n){e==="focusin"?(Dh(),Ba=t,La=n,Ba.attachEvent("onpropertychange",Uh)):e==="focusout"&&Dh()}function xy(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return rr(La)}function by(e,t){if(e==="click")return rr(t)}function yy(e,t){if(e==="input"||e==="change")return rr(t)}function ky(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var It=typeof Object.is=="function"?Object.is:ky;function qa(e,t){if(It(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;var n=Object.keys(e),s=Object.keys(t);if(n.length!==s.length)return!1;for(s=0;s<n.length;s++){var c=n[s];if(!Kc.call(t,c)||!It(e[c],t[c]))return!1}return!0}function gu(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 $h(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function Hh(e,t){var n=$h(e);e=0;for(var s;n;){if(n.nodeType===3){if(s=e+n.textContent.length,e<=t&&s>=t)return{node:n,offset:t-e};e=s}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=$h(n)}}function Bh(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Bh(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Lh(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=gu(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=gu(e.document)}return t}function vu(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var jy=Xn&&"documentMode"in document&&11>=document.documentMode,_s=null,xu=null,Ya=null,bu=!1;function qh(e,t,n){var s=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;bu||_s==null||_s!==gu(s)||(s=_s,"selectionStart"in s&&vu(s)?s={start:s.selectionStart,end:s.selectionEnd}:(s=(s.ownerDocument&&s.ownerDocument.defaultView||window).getSelection(),s={anchorNode:s.anchorNode,anchorOffset:s.anchorOffset,focusNode:s.focusNode,focusOffset:s.focusOffset}),Ya&&qa(Ya,s)||(Ya=s,s=rc(xu,"onSelect"),0<s.length&&(t=new ar("onSelect","select",null,t,n),e.push({event:t,listeners:s}),t.target=_s)))}function Yl(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var Os={animationend:Yl("Animation","AnimationEnd"),animationiteration:Yl("Animation","AnimationIteration"),animationstart:Yl("Animation","AnimationStart"),transitionrun:Yl("Transition","TransitionRun"),transitionstart:Yl("Transition","TransitionStart"),transitioncancel:Yl("Transition","TransitionCancel"),transitionend:Yl("Transition","TransitionEnd")},yu={},Yh={};Xn&&(Yh=document.createElement("div").style,"AnimationEvent"in window||(delete Os.animationend.animation,delete Os.animationiteration.animation,delete Os.animationstart.animation),"TransitionEvent"in window||delete Os.transitionend.transition);function Gl(e){if(yu[e])return yu[e];if(!Os[e])return e;var t=Os[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in Yh)return yu[e]=t[n];return e}var Gh=Gl("animationend"),Xh=Gl("animationiteration"),Qh=Gl("animationstart"),Ny=Gl("transitionrun"),Sy=Gl("transitionstart"),wy=Gl("transitioncancel"),Zh=Gl("transitionend"),Vh=new Map,ku="abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error fullscreenChange fullscreenError 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(" ");ku.push("scrollEnd");function vn(e,t){Vh.set(e,t),ql(t,[e])}var Ty=0;function Qn(e,t){if(e.name!=null&&e.name!=="auto")return e.name;if(t.autoName!==null)return t.autoName;e=kn.identifierPrefix;var n=Ty++;return e="_"+e+"t_"+n.toString(32)+"_",t.autoName=e}function Kh(e){if(e==null||typeof e=="string")return e;var t=null,n=Ps;if(n!==null)for(var s=0;s<n.length;s++){var c=e[n[s]];if(c!=null){if(c==="none")return"none";t=t==null?c:t+(" "+c)}}return t??e.default}function Zn(e,t){return e=Kh(e),t=Kh(t),t==null?e==="auto"?null:e:t==="auto"?null:t}var cr=typeof reportError=="function"?reportError:function(e){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var t=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof e=="object"&&e!==null&&typeof e.message=="string"?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",e);return}console.error(e)},an=[],Ms=0,ju=0;function ur(){for(var e=Ms,t=ju=Ms=0;t<e;){var n=an[t];an[t++]=null;var s=an[t];an[t++]=null;var c=an[t];an[t++]=null;var o=an[t];if(an[t++]=null,s!==null&&c!==null){var g=s.pending;g===null?c.next=c:(c.next=g.next,g.next=c),s.pending=c}o!==0&&Ih(n,c,o)}}function or(e,t,n,s){an[Ms++]=e,an[Ms++]=t,an[Ms++]=n,an[Ms++]=s,ju|=s,e.lanes|=s,e=e.alternate,e!==null&&(e.lanes|=s)}function Nu(e,t,n,s){return or(e,t,n,s),dr(e)}function Xl(e,t){return or(e,null,null,t),dr(e)}function Ih(e,t,n){e.lanes|=n;var s=e.alternate;s!==null&&(s.lanes|=n);for(var c=!1,o=e.return;o!==null;)o.childLanes|=n,s=o.alternate,s!==null&&(s.childLanes|=n),o.tag===22&&(e=o.stateNode,e===null||e._visibility&1||(c=!0)),e=o,o=o.return;return e.tag===3?(o=e.stateNode,c&&t!==null&&(c=31-Vt(n),e=o.hiddenUpdates,s=e[c],s===null?e[c]=[t]:s.push(t),t.lane=n|536870912),o):null}function dr(e){if(50<oi)throw oi=0,ec=null,Error(u(185));for(var t=e.return;t!==null;)e=t,t=e.return;return e.tag===3?e.stateNode:null}var Rs={};function Ey(e,t,n,s){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=s,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Ut(e,t,n,s){return new Ey(e,t,n,s)}function Su(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Vn(e,t){var n=e.alternate;return n===null?(n=Ut(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&1206910976,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.refCleanup=e.refCleanup,n}function Jh(e,t){e.flags&=1206910978;var n=e.alternate;return n===null?(e.childLanes=0,e.lanes=t,e.child=null,e.subtreeFlags=0,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.stateNode=null):(e.childLanes=n.childLanes,e.lanes=n.lanes,e.child=n.child,e.subtreeFlags=0,e.deletions=null,e.memoizedProps=n.memoizedProps,e.memoizedState=n.memoizedState,e.updateQueue=n.updateQueue,e.type=n.type,t=n.dependencies,e.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext}),e}function fr(e,t,n,s,c,o){var g=0;if(s=e,typeof s=="function")Su(s)&&(g=1);else if(typeof s=="string")g=t1(e,n,En.current)?26:e==="html"||e==="head"||e==="body"?27:5;else e:switch(s){case zt:return e=Ut(31,n,t,c),e.elementType=zt,e.lanes=o,e;case Se:return Ql(n.children,c,o,t);case Ze:g=8,c|=24;break;case fe:return e=Ut(12,n,t,c|2),e.elementType=fe,e.lanes=o,e;case he:return e=Ut(13,n,t,c),e.elementType=he,e.lanes=o,e;case de:return e=Ut(19,n,t,c),e.elementType=de,e.lanes=o,e;case Gt:case _:return e=c|32,e=Ut(30,n,t,e),e.elementType=_,e.lanes=o,e.stateNode={autoName:null,paired:null,clones:null,ref:null},e;default:if(typeof s=="object"&&s!==null)switch(s.$$typeof){case Ue:g=10;break e;case Ve:g=9;break e;case W:g=11;break e;case $e:g=14;break e;case we:g=16,s=null;break e}g=29,n=Error(u(130,e===null?"null":typeof e,"")),s=null}return t=Ut(g,n,t,c),t.elementType=e,t.type=s,t.lanes=o,t}function Ql(e,t,n,s){return e=Ut(7,e,s,t),e.lanes=n,e}function wu(e,t,n){return e=Ut(6,e,null,t),e.lanes=n,e}function Fh(e){var t=Ut(18,null,null,0);return t.stateNode=e,t}function Tu(e,t,n){return t=Ut(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}var Ph=new WeakMap;function rn(e,t){if(typeof e=="object"&&e!==null){var n=Ph.get(e);return n!==void 0?n:(t={value:e,source:t,stack:Zf(t)},Ph.set(e,t),t)}return{value:e,source:t,stack:Zf(t)}}var Ds=[],Us=0,hr=null,Ga=0,cn=[],un=0,ol=null,An=1,zn="";function Kn(e,t){Ds[Us++]=Ga,Ds[Us++]=hr,hr=e,Ga=t}function Wh(e,t,n){cn[un++]=An,cn[un++]=zn,cn[un++]=ol,ol=e;var s=An;e=zn;var c=32-Vt(s)-1;s&=~(1<<c),n+=1;var o=32-Vt(t)+c;if(30<o){var g=c-c%5;o=(s&(1<<g)-1).toString(32),s>>=g,c-=g,An=1<<32-Vt(t)+c|n<<c|s,zn=o+e}else An=1<<o|n<<c|s,zn=e}function mr(e){e.return!==null&&(Kn(e,1),Wh(e,1,0))}function Eu(e){for(;e===hr;)hr=Ds[--Us],Ds[Us]=null,Ga=Ds[--Us],Ds[Us]=null;for(;e===ol;)ol=cn[--un],cn[un]=null,zn=cn[--un],cn[un]=null,An=cn[--un],cn[un]=null}function em(e,t){cn[un++]=An,cn[un++]=zn,cn[un++]=ol,An=t.id,zn=t.overflow,ol=e}var gt=null,Pe=null,Te=!1,dl=null,on=!1,Cu=Error(u(519));function fl(e){var t=Error(u(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?"text":"HTML",""));throw Xa(rn(t,e)),Cu}function tm(e){var t=e.stateNode,n=e.type,s=e.memoizedProps;switch(t[kt]=e,t[Dt]=s,n){case"dialog":Ae("cancel",t),Ae("close",t);break;case"iframe":case"object":case"embed":Ae("load",t);break;case"video":case"audio":for(n=0;n<fi.length;n++)Ae(fi[n],t);break;case"source":Ae("error",t);break;case"img":case"image":case"link":Ae("error",t),Ae("load",t);break;case"details":Ae("toggle",t);break;case"input":Ae("invalid",t),hh(t,s.value,s.defaultValue,s.checked,s.defaultChecked,s.type,s.name,!0);break;case"select":Ae("invalid",t);break;case"textarea":Ae("invalid",t),ph(t,s.value,s.defaultValue,s.children)}n=s.children,typeof n!="string"&&typeof n!="number"&&typeof n!="bigint"||t.textContent===""+n||s.suppressHydrationWarning===!0||jg(t.textContent,n)?(s.popover!=null&&(Ae("beforetoggle",t),Ae("toggle",t)),s.onScroll!=null&&Ae("scroll",t),s.onScrollEnd!=null&&Ae("scrollend",t),s.onClick!=null&&(t.onclick=Cn),t=!0):t=!1,t||fl(e,!0)}function pr(e){for(gt=e.return;gt;)switch(gt.tag){case 5:case 31:case 13:on=!1;return;case 27:case 3:on=!0;return;default:gt=gt.return}}function $s(e){if(e!==gt)return!1;if(!Te)return pr(e),Te=!0,!1;var t=e.tag,n;if((n=t!==3&&t!==27)&&((n=t===5)&&(n=e.type,n=!(n!=="form"&&n!=="button")||ad(e.type,e.memoizedProps)),n=!n),n&&Pe&&fl(e),pr(e),t===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(u(317));Pe=qg(e)}else if(t===31){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(u(317));Pe=qg(e)}else t===27?(t=Pe,Cl(e.type)?(e=md,md=null,Pe=e):Pe=t):Pe=gt?fn(e.stateNode.nextSibling):null;return!0}function Zl(){Pe=gt=null,Te=!1}function Au(){var e=dl;return e!==null&&(Bt===null?Bt=e:Bt.push.apply(Bt,e),dl=null),e}function Xa(e){dl===null?dl=[e]:dl.push(e)}var zu=mt(null),Vl=null,In=null;function hl(e,t,n){Fe(zu,t._currentValue),t._currentValue=n}function Jn(e){e._currentValue=zu.current,tt(zu)}function gr(e,t,n){for(;e!==null;){var s=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,s!==null&&(s.childLanes|=t)):s!==null&&(s.childLanes&t)!==t&&(s.childLanes|=t),e===n)break;e=e.return}}function _u(e,t,n,s){var c=e.child;for(c!==null&&(c.return=e);c!==null;){var o=c.dependencies;if(o!==null){var g=c.child;o=o.firstContext;e:for(;o!==null;){var N=o;o=c;for(var C=0;C<t.length;C++)if(N.context===t[C]){o.lanes|=n,N=o.alternate,N!==null&&(N.lanes|=n),gr(o.return,n,e),s||(g=null);break e}o=N.next}}else if(c.tag===18){if(g=c.return,g===null)throw Error(u(341));g.lanes|=n,o=g.alternate,o!==null&&(o.lanes|=n),gr(g,n,e),g=null}else c.tag===13&&c.memoizedState!==null&&c.memoizedState.dehydrated===null?(c.lanes|=n,g=c.alternate,g!==null&&(g.lanes|=n),gr(c.return,n,e),g=c.child,g=g!==null?g.sibling:null):g=c.child;if(g!==null)g.return=c;else for(g=c;g!==null;){if(g===e){g=null;break}if(c=g.sibling,c!==null){c.return=g.return,g=c;break}g=g.return}c=g}}function Kl(e,t,n,s){e=null;for(var c=t,o=!1;c!==null;){if(!o){if((c.flags&524288)!==0)o=!0;else if((c.flags&262144)!==0)break}if(c.tag===10){var g=c.alternate;if(g===null)throw Error(u(387));if(g=g.memoizedProps,g!==null){var N=c.type;It(c.pendingProps.value,g.value)||(e!==null?e.push(N):e=[N])}}else if(c===Gi.current){if(g=c.alternate,g===null)throw Error(u(387));g.memoizedState.memoizedState!==c.memoizedState.memoizedState&&(e!==null?e.push(ca):e=[ca])}c=c.return}return e!==null&&_u(t,e,n,s),t.flags|=262144,e!==null}function vr(e){for(e=e.firstContext;e!==null;){if(!It(e.context._currentValue,e.memoizedValue))return!0;e=e.next}return!1}function Il(e){Vl=e,In=null,e=e.dependencies,e!==null&&(e.firstContext=null)}function jt(e){return nm(Vl,e)}function xr(e,t){return Vl===null&&Il(e),nm(e,t)}function nm(e,t){var n=t._currentValue;if(t={context:t,memoizedValue:n,next:null},In===null){if(e===null)throw Error(u(308));In=t,e.dependencies={lanes:0,firstContext:t},e.flags|=524288}else In=In.next=t;return n}var Cy=typeof AbortController<"u"?AbortController:function(){var e=[],t=this.signal={aborted:!1,addEventListener:function(n,s){e.push(s)}};this.abort=function(){t.aborted=!0,e.forEach(function(n){return n()})}},Ay=l.unstable_scheduleCallback,zy=l.unstable_NormalPriority,rt={$$typeof:Ue,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function Ou(){return{controller:new Cy,data:new Map,refCount:0}}function Qa(e){e.refCount--,e.refCount===0&&Ay(zy,function(){e.controller.abort()})}function lm(e,t){if((e.pendingLanes&4194048)!==0){var n=e.transitionTypes;for(n===null&&(n=e.transitionTypes=[]),e=0;e<t.length;e++){var s=t[e];n.indexOf(s)===-1&&n.push(s)}}}var Za=null;function _y(e){var t=e.transitionTypes;return e.transitionTypes=null,t}var Va=null,Mu=0,Jl=0,Hs=null;function Oy(e,t){if(Va===null){var n=Va=[];Mu=0,Jl=Jo(),Hs={status:"pending",value:void 0,then:function(s){n.push(s)}}}return Mu++,t.then(sm,sm),t}function sm(){if(--Mu===0&&(Za=null,Va!==null)){Hs!==null&&(Hs.status="fulfilled");var e=Va;Va=null,Jl=0,Hs=null;for(var t=0;t<e.length;t++)(0,e[t])()}}function My(e,t){var n=[],s={status:"pending",value:null,reason:null,then:function(c){n.push(c)}};return e.then(function(){s.status="fulfilled",s.value=t;for(var c=0;c<n.length;c++)(0,n[c])(t)},function(c){for(s.status="rejected",s.reason=c,c=0;c<n.length;c++)(0,n[c])(void 0)}),s}var am=U.S;U.S=function(e,t){if(Fp=Qt(),typeof t=="object"&&t!==null&&typeof t.then=="function"&&Oy(e,t),Za!==null)for(var n=na;n!==null;)lm(n,Za),n=n.next;if(n=e.types,n!==null){for(var s=na;s!==null;)lm(s,n),s=s.next;if(Jl!==0){s=Za,s===null&&(s=Za=[]);for(var c=0;c<n.length;c++){var o=n[c];s.indexOf(o)===-1&&s.push(o)}}}am!==null&&am(e,t)};var Fl=mt(null);function Ru(){var e=Fl.current;return e!==null?e:Ke.pooledCache}function br(e,t){t===null?Fe(Fl,Fl.current):Fe(Fl,t.pool)}function im(){var e=Ru();return e===null?null:{parent:rt._currentValue,pool:e}}var Bs=Error(u(460)),Du=Error(u(474)),yr=Error(u(542)),kr={then:function(){}};function rm(e){return e=e.status,e==="fulfilled"||e==="rejected"}function cm(e,t,n){switch(n=e[n],n===void 0?e.push(t):n!==t&&(t.then(Cn,Cn),t=n),t.status){case"fulfilled":return t.value;case"rejected":throw e=t.reason,om(e),e===void 0&&!("reason"in t)?Error(u(600)):e;default:if(typeof t.status=="string")t.then(Cn,Cn);else{if(e=Ke,e!==null&&100<e.shellSuspendCounter)throw Error(u(482));e=t,e.status="pending",e.then(function(s){if(t.status==="pending"){var c=t;c.status="fulfilled",c.value=s}},function(s){if(t.status==="pending"){var c=t;c.status="rejected",c.reason=s}})}switch(t.status){case"fulfilled":return t.value;case"rejected":throw e=t.reason,om(e),e}throw Wl=t,Bs}}function Pl(e){try{var t=e._init;return t(e._payload)}catch(n){throw n!==null&&typeof n=="object"&&typeof n.then=="function"?(Wl=n,Bs):n}}var Wl=null;function um(){if(Wl===null)throw Error(u(459));var e=Wl;return Wl=null,e}function om(e){if(e===Bs||e===yr)throw Error(u(483))}var Ls=null,Ka=0;function jr(e){var t=Ka;return Ka+=1,Ls===null&&(Ls=[]),cm(Ls,e,t)}function ml(e,t){t=t.props.ref,e.ref=t!==void 0?t:null}function Nr(e,t){throw t.$$typeof===B?Error(u(525)):(e=Object.prototype.toString.call(t),Error(u(31,e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e)))}function dm(e){function t(M,z){if(e){var D=M.deletions;D===null?(M.deletions=[z],M.flags|=16):D.push(z)}}function n(M,z){if(!e)return null;for(;z!==null;)t(M,z),z=z.sibling;return null}function s(M){for(var z=new Map;M!==null;)M.key===null?z.set(M.index,M):z.set(M.key,M),M=M.sibling;return z}function c(M,z){return M=Vn(M,z),M.index=0,M.sibling=null,M}function o(M,z,D){return M.index=D,e?(D=M.alternate,D!==null?(D=D.index,D<z?(M.flags|=2,z):D):(M.flags|=134217730,z)):(M.flags|=1048576,z)}function g(M){return e&&M.alternate===null&&(M.flags|=134217730),M}function N(M,z,D,q){return z===null||z.tag!==6?(z=wu(D,M.mode,q),z.return=M,z):(z=c(z,D),z.return=M,z)}function C(M,z,D,q){var le=D.type;return le===Se?(M=H(M,z,D.props.children,q,D.key),ml(M,D),M):z!==null&&(z.elementType===le||typeof le=="object"&&le!==null&&le.$$typeof===we&&Pl(le)===z.type)?(z=c(z,D.props),ml(z,D),z.return=M,z):(z=fr(D.type,D.key,D.props,null,M.mode,q),ml(z,D),z.return=M,z)}function R(M,z,D,q){return z===null||z.tag!==4||z.stateNode.containerInfo!==D.containerInfo||z.stateNode.implementation!==D.implementation?(z=Tu(D,M.mode,q),z.return=M,z):(z=c(z,D.children||[]),z.return=M,z)}function H(M,z,D,q,le){return z===null||z.tag!==7?(z=Ql(D,M.mode,q,le),z.return=M,z):(z=c(z,D),z.return=M,z)}function Y(M,z,D){if(typeof z=="string"&&z!==""||typeof z=="number"||typeof z=="bigint")return z=wu(""+z,M.mode,D),z.return=M,z;if(typeof z=="object"&&z!==null){switch(z.$$typeof){case ae:return D=fr(z.type,z.key,z.props,null,M.mode,D),ml(D,z),D.return=M,D;case ne:return z=Tu(z,M.mode,D),z.return=M,z;case we:return z=Pl(z),Y(M,z,D)}if(Me(z)||te(z))return z=Ql(z,M.mode,D,null),z.return=M,z;if(typeof z.then=="function")return Y(M,jr(z),D);if(z.$$typeof===Ue)return Y(M,xr(M,z),D);Nr(M,z)}return null}function O(M,z,D,q){var le=z!==null?z.key:null;if(typeof D=="string"&&D!==""||typeof D=="number"||typeof D=="bigint")return le!==null?null:N(M,z,""+D,q);if(typeof D=="object"&&D!==null){switch(D.$$typeof){case ae:return D.key===le?C(M,z,D,q):null;case ne:return D.key===le?R(M,z,D,q):null;case we:return D=Pl(D),O(M,z,D,q)}if(Me(D)||te(D))return le!==null?null:H(M,z,D,q,null);if(typeof D.then=="function")return O(M,z,jr(D),q);if(D.$$typeof===Ue)return O(M,z,xr(M,D),q);Nr(M,D)}return null}function $(M,z,D,q,le){if(typeof q=="string"&&q!==""||typeof q=="number"||typeof q=="bigint")return M=M.get(D)||null,N(z,M,""+q,le);if(typeof q=="object"&&q!==null){switch(q.$$typeof){case ae:return M=M.get(q.key===null?D:q.key)||null,C(z,M,q,le);case ne:return M=M.get(q.key===null?D:q.key)||null,R(z,M,q,le);case we:return q=Pl(q),$(M,z,D,q,le)}if(Me(q)||te(q))return M=M.get(D)||null,H(z,M,q,le,null);if(typeof q.then=="function")return $(M,z,D,jr(q),le);if(q.$$typeof===Ue)return $(M,z,D,xr(z,q),le);Nr(z,q)}return null}function ee(M,z,D,q){for(var le=null,_e=null,oe=z,ge=z=0,ot=null;oe!==null&&ge<D.length;ge++){oe.index>ge?(ot=oe,oe=null):ot=oe.sibling;var Re=O(M,oe,D[ge],q);if(Re===null){oe===null&&(oe=ot);break}e&&oe&&Re.alternate===null&&t(M,oe),z=o(Re,z,ge),_e===null?le=Re:_e.sibling=Re,_e=Re,oe=ot}if(ge===D.length)return n(M,oe),Te&&Kn(M,ge),le;if(oe===null){for(;ge<D.length;ge++)oe=Y(M,D[ge],q),oe!==null&&(z=o(oe,z,ge),_e===null?le=oe:_e.sibling=oe,_e=oe);return Te&&Kn(M,ge),le}for(oe=s(oe);ge<D.length;ge++)ot=$(oe,M,ge,D[ge],q),ot!==null&&(e&&(Re=ot.alternate,Re!==null&&oe.delete(Re.key===null?ge:Re.key)),z=o(ot,z,ge),_e===null?le=ot:_e.sibling=ot,_e=ot);return e&&oe.forEach(function(Ml){return t(M,Ml)}),Te&&Kn(M,ge),le}function ie(M,z,D,q){if(D==null)throw Error(u(151));for(var le=null,_e=null,oe=z,ge=z=0,ot=null,Re=D.next();oe!==null&&!Re.done;ge++,Re=D.next()){oe.index>ge?(ot=oe,oe=null):ot=oe.sibling;var Ml=O(M,oe,Re.value,q);if(Ml===null){oe===null&&(oe=ot);break}e&&oe&&Ml.alternate===null&&t(M,oe),z=o(Ml,z,ge),_e===null?le=Ml:_e.sibling=Ml,_e=Ml,oe=ot}if(Re.done)return n(M,oe),Te&&Kn(M,ge),le;if(oe===null){for(;!Re.done;ge++,Re=D.next())Re=Y(M,Re.value,q),Re!==null&&(z=o(Re,z,ge),_e===null?le=Re:_e.sibling=Re,_e=Re);return Te&&Kn(M,ge),le}for(oe=s(oe);!Re.done;ge++,Re=D.next())Re=$(oe,M,ge,Re.value,q),Re!==null&&(e&&(ot=Re.alternate,ot!==null&&oe.delete(ot.key===null?ge:ot.key)),z=o(Re,z,ge),_e===null?le=Re:_e.sibling=Re,_e=Re);return e&&oe.forEach(function(h1){return t(M,h1)}),Te&&Kn(M,ge),le}function je(M,z,D,q){if(typeof D=="object"&&D!==null&&D.type===Se&&D.key===null&&D.props.ref===void 0&&(D=D.props.children),typeof D=="object"&&D!==null){switch(D.$$typeof){case ae:e:{for(var le=D.key;z!==null;){if(z.key===le){if(le=D.type,le===Se){if(z.tag===7){n(M,z.sibling),q=c(z,D.props.children),ml(q,D),q.return=M,M=q;break e}}else if(z.elementType===le||typeof le=="object"&&le!==null&&le.$$typeof===we&&Pl(le)===z.type){n(M,z.sibling),q=c(z,D.props),ml(q,D),q.return=M,M=q;break e}n(M,z);break}else t(M,z);z=z.sibling}D.type===Se?(q=Ql(D.props.children,M.mode,q,D.key),ml(q,D),q.return=M,M=q):(q=fr(D.type,D.key,D.props,null,M.mode,q),ml(q,D),q.return=M,M=q)}return g(M);case ne:e:{for(le=D.key;z!==null;){if(z.key===le)if(z.tag===4&&z.stateNode.containerInfo===D.containerInfo&&z.stateNode.implementation===D.implementation){n(M,z.sibling),q=c(z,D.children||[]),q.return=M,M=q;break e}else{n(M,z);break}else t(M,z);z=z.sibling}q=Tu(D,M.mode,q),q.return=M,M=q}return g(M);case we:return D=Pl(D),je(M,z,D,q)}if(Me(D))return ee(M,z,D,q);if(te(D)){if(le=te(D),typeof le!="function")throw Error(u(150));return D=le.call(D),ie(M,z,D,q)}if(typeof D.then=="function")return je(M,z,jr(D),q);if(D.$$typeof===Ue)return je(M,z,xr(M,D),q);Nr(M,D)}return typeof D=="string"&&D!==""||typeof D=="number"||typeof D=="bigint"?(D=""+D,z!==null&&z.tag===6?(n(M,z.sibling),q=c(z,D),q.return=M,M=q):(n(M,z),q=wu(D,M.mode,q),q.return=M,M=q),g(M)):n(M,z)}return function(M,z,D,q){try{Ka=0;var le=je(M,z,D,q);return Ls=null,le}catch(oe){if(oe===Bs||oe===yr)throw oe;var _e=Ut(29,oe,null,M.mode);return _e.lanes=q,_e.return=M,_e}finally{}}}var es=dm(!0),fm=dm(!1),pl=!1;function Uu(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function $u(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function gl(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function vl(e,t,n){var s=e.updateQueue;if(s===null)return null;if(s=s.shared,(He&2)!==0){var c=s.pending;return c===null?t.next=t:(t.next=c.next,c.next=t),s.pending=t,t=dr(e),Ih(e,null,n),t}return or(e,s,t,n),dr(e)}function Ia(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194048)!==0)){var s=t.lanes;s&=e.pendingLanes,n|=s,t.lanes=n,Wf(e,n)}}function Hu(e,t){var n=e.updateQueue,s=e.alternate;if(s!==null&&(s=s.updateQueue,n===s)){var c=null,o=null;if(n=n.firstBaseUpdate,n!==null){do{var g={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};o===null?c=o=g:o=o.next=g,n=n.next}while(n!==null);o===null?c=o=t:o=o.next=t}else c=o=t;n={baseState:s.baseState,firstBaseUpdate:c,lastBaseUpdate:o,shared:s.shared,callbacks:s.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Bu=!1;function Ja(){if(Bu){var e=Hs;if(e!==null)throw e}}function Fa(e,t,n,s){Bu=!1;var c=e.updateQueue;pl=!1;var o=c.firstBaseUpdate,g=c.lastBaseUpdate,N=c.shared.pending;if(N!==null){c.shared.pending=null;var C=N,R=C.next;C.next=null,g===null?o=R:g.next=R,g=C;var H=e.alternate;H!==null&&(H=H.updateQueue,N=H.lastBaseUpdate,N!==g&&(N===null?H.firstBaseUpdate=R:N.next=R,H.lastBaseUpdate=C))}if(o!==null){var Y=c.baseState;g=0,H=R=C=null,N=o;do{var O=N.lane&-536870913,$=O!==N.lane;if($?(ze&O)===O:(s&O)===O){O!==0&&O===Jl&&(Bu=!0),H!==null&&(H=H.next={lane:0,tag:N.tag,payload:N.payload,callback:null,next:null});e:{var ee=e,ie=N;O=t;var je=n;switch(ie.tag){case 1:if(ee=ie.payload,typeof ee=="function"){Y=ee.call(je,Y,O);break e}Y=ee;break e;case 3:ee.flags=ee.flags&-65537|128;case 0:if(ee=ie.payload,O=typeof ee=="function"?ee.call(je,Y,O):ee,O==null)break e;Y=L({},Y,O);break e;case 2:pl=!0}}O=N.callback,O!==null&&(e.flags|=64,$&&(e.flags|=8192),$=c.callbacks,$===null?c.callbacks=[O]:$.push(O))}else $={lane:O,tag:N.tag,payload:N.payload,callback:N.callback,next:null},H===null?(R=H=$,C=Y):H=H.next=$,g|=O;if(N=N.next,N===null){if(N=c.shared.pending,N===null)break;$=N,N=$.next,$.next=null,c.lastBaseUpdate=$,c.shared.pending=null}}while(!0);H===null&&(C=Y),c.baseState=C,c.firstBaseUpdate=R,c.lastBaseUpdate=H,o===null&&(c.shared.lanes=0),Sl|=g,e.lanes=g,e.memoizedState=Y}}function hm(e,t){if(typeof e!="function")throw Error(u(191,e));e.call(t)}function mm(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;e<n.length;e++)hm(n[e],t)}var xl=mt(null),Sr=mt(0);function pm(e,t){e=tl,Fe(Sr,e),Fe(xl,t),tl=e|t.baseLanes}function Lu(){Fe(Sr,tl),Fe(xl,xl.current)}function qu(){tl=Sr.current,tt(xl),tt(Sr)}var Nt=mt(null),At=null;function bl(e){var t=e.alternate;Fe(St,St.current&1),Fe(Nt,e),At===null&&(t===null||xl.current!==null||t.memoizedState!==null)&&(At=e)}function Yu(e){Fe(St,St.current),Fe(Nt,e),At===null&&(At=e)}function gm(e){e.tag===22?(Fe(St,St.current),Fe(Nt,e),At===null&&(At=e)):yl()}function yl(){Fe(St,St.current),Fe(Nt,Nt.current)}function Jt(e){tt(Nt),At===e&&(At=null),tt(St)}var St=mt(0);function Pa(e,t){Fe(Nt,Nt.current),Fe(St,t)}function Gu(e){tt(St),tt(Nt),At===e&&(At=null)}function wr(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||fd(n)||hd(n)))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!=="independent"){if((t.flags&128)!==0)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 Fn=0,ke=null,Qe=null,ct=null,Tr=!1,qs=!1,ts=!1,Er=0,Wa=0,Ys=null,Ry=0;function st(){throw Error(u(321))}function Xu(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!It(e[n],t[n]))return!1;return!0}function Qu(e,t,n,s,c,o){return Fn=o,ke=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,U.H=e===null||e.memoizedState===null?Wm:ep,ts=!1,o=n(s,c),ts=!1,qs&&(o=xm(t,n,s,c)),vm(e),o}function vm(e){U.H=Rr;var t=Qe!==null&&Qe.next!==null;if(Fn=0,ct=Qe=ke=null,Tr=!1,Wa=0,Ys=null,t)throw Error(u(300));e===null||ut||(e=e.dependencies,e!==null&&vr(e)&&(ut=!0))}function xm(e,t,n,s){ke=e;var c=0;do{if(qs&&(Ys=null),Wa=0,qs=!1,25<=c)throw Error(u(301));if(c+=1,ct=Qe=null,e.updateQueue!=null){var o=e.updateQueue;o.lastEffect=null,o.events=null,o.stores=null,o.memoCache!=null&&(o.memoCache.index=0)}U.H=Yy,o=t(n,s)}while(qs);return o}function Dy(){var e=U.H,t=e.useState()[0];return t=typeof t.then=="function"?ei(t):t,e=e.useState()[0],(Qe!==null?Qe.memoizedState:null)!==e&&(ke.flags|=1024),t}function Zu(){var e=Er!==0;return Er=0,e}function Vu(e,t,n){t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~n}function Ku(e){if(Tr){for(e=e.memoizedState;e!==null;){var t=e.queue;t!==null&&(t.pending=null),e=e.next}Tr=!1}Fn=0,ct=Qe=ke=null,qs=!1,Wa=Er=0,Ys=null}function Ot(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return ct===null?ke.memoizedState=ct=e:ct=ct.next=e,ct}function it(){if(Qe===null){var e=ke.alternate;e=e!==null?e.memoizedState:null}else e=Qe.next;var t=ct===null?ke.memoizedState:ct.next;if(t!==null)ct=t,Qe=e;else{if(e===null)throw ke.alternate===null?Error(u(467)):Error(u(310));Qe=e,e={memoizedState:Qe.memoizedState,baseState:Qe.baseState,baseQueue:Qe.baseQueue,queue:Qe.queue,next:null},ct===null?ke.memoizedState=ct=e:ct=ct.next=e}return ct}function Cr(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function ei(e){var t=Wa;return Wa+=1,Ys===null&&(Ys=[]),e=cm(Ys,e,t),t=ke,(ct===null?t.memoizedState:ct.next)===null&&(t=t.alternate,U.H=t===null||t.memoizedState===null?Wm:ep),e}function Ar(e){if(e!==null&&typeof e=="object"){if(typeof e.then=="function")return ei(e);if(e.$$typeof===V)return;if(e.$$typeof===Ue)return jt(e)}throw Error(u(438,String(e)))}function Iu(e){var t=null,n=ke.updateQueue;if(n!==null&&(t=n.memoCache),t==null){var s=ke.alternate;s!==null&&(s=s.updateQueue,s!==null&&(s=s.memoCache,s!=null&&(t={data:s.data.map(function(c){return c.slice()}),index:0})))}if(t==null&&(t={data:[],index:0}),n===null&&(n=Cr(),ke.updateQueue=n),n.memoCache=t,n=t.data[t.index],n===void 0)for(n=t.data[t.index]=Array(e),s=0;s<e;s++)n[s]=Xt;return t.index++,n}function Pn(e,t){return typeof t=="function"?t(e):t}function zr(e){var t=it();return Ju(t,Qe,e)}function Ju(e,t,n){var s=e.queue;if(s===null)throw Error(u(311));s.lastRenderedReducer=n;var c=e.baseQueue,o=s.pending;if(o!==null){if(c!==null){var g=c.next;c.next=o.next,o.next=g}t.baseQueue=c=o,s.pending=null}if(o=e.baseState,c===null)e.memoizedState=o;else{t=c.next;var N=g=null,C=null,R=t,H=!1;do{var Y=R.lane&-536870913;if(Y!==R.lane?(ze&Y)===Y:(Fn&Y)===Y){var O=R.revertLane;if(O===0)C!==null&&(C=C.next={lane:0,revertLane:0,gesture:null,action:R.action,hasEagerState:R.hasEagerState,eagerState:R.eagerState,next:null}),Y===Jl&&(H=!0);else if((Fn&O)===O){R=R.next,O===Jl&&(H=!0);continue}else Y={lane:0,revertLane:R.revertLane,gesture:null,action:R.action,hasEagerState:R.hasEagerState,eagerState:R.eagerState,next:null},C===null?(N=C=Y,g=o):C=C.next=Y,ke.lanes|=O,Sl|=O;Y=R.action,ts&&n(o,Y),o=R.hasEagerState?R.eagerState:n(o,Y)}else O={lane:Y,revertLane:R.revertLane,gesture:R.gesture,action:R.action,hasEagerState:R.hasEagerState,eagerState:R.eagerState,next:null},C===null?(N=C=O,g=o):C=C.next=O,ke.lanes|=Y,Sl|=Y;R=R.next}while(R!==null&&R!==t);if(C===null?g=o:C.next=N,!It(o,e.memoizedState)&&(ut=!0,H&&(n=Hs,n!==null)))throw n;e.memoizedState=o,e.baseState=g,e.baseQueue=C,s.lastRenderedState=o}return c===null&&(s.lanes=0),[e.memoizedState,s.dispatch]}function Fu(e){var t=it(),n=t.queue;if(n===null)throw Error(u(311));n.lastRenderedReducer=e;var s=n.dispatch,c=n.pending,o=t.memoizedState;if(c!==null){n.pending=null;var g=c=c.next;do o=e(o,g.action),g=g.next;while(g!==c);It(o,t.memoizedState)||(ut=!0),t.memoizedState=o,t.baseQueue===null&&(t.baseState=o),n.lastRenderedState=o}return[o,s]}function bm(e,t,n){var s=ke,c=it(),o=Te;if(o){if(n===void 0)throw Error(u(407));n=n()}else n=t();var g=!It((Qe||c).memoizedState,n);if(g&&(c.memoizedState=n,ut=!0),c=c.queue,eo(jm.bind(null,s,c,e),[e]),e=c.getSnapshot!==t||g||ct!==null&&(ct.memoizedState.tag&1)!==0,Gs(e?9:8,{destroy:void 0},km.bind(null,s,c,n,t),null),e){if(s.flags|=2048,Ke===null)throw Error(u(349));o||(Fn&127)!==0||ym(s,t,n)}return n}function ym(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=ke.updateQueue,t===null?(t=Cr(),ke.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function km(e,t,n,s){t.value=n,t.getSnapshot=s,Nm(t)&&Sm(e)}function jm(e,t,n){return n(function(){Nm(t)&&Sm(e)})}function Nm(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!It(e,n)}catch{return!0}}function Sm(e){var t=Xl(e,2);t!==null&&Lt(t,e,2)}function Pu(e){var t=Ot();if(typeof e=="function"){var n=e;if(e=n(),ts){rl(!0);try{n()}finally{rl(!1)}}}return t.memoizedState=t.baseState=e,t.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Pn,lastRenderedState:e},t}function wm(e,t,n,s){return e.baseState=n,Ju(e,Qe,typeof s=="function"?s:Pn)}function Uy(e,t,n,s,c){if(Mr(e))throw Error(u(485));if(e=t.action,e!==null){var o={payload:c,action:e,next:null,isTransition:!0,status:"pending",value:null,reason:null,listeners:[],then:function(g){o.listeners.push(g)}};U.T!==null?n(!0):o.isTransition=!1,s(o),n=t.pending,n===null?(o.next=t.pending=o,Tm(t,o)):(o.next=n.next,t.pending=n.next=o)}}function Tm(e,t){var n=t.action,s=t.payload,c=e.state;if(t.isTransition){var o=U.T,g={};g.types=o!==null?o.types:null,U.T=g;try{var N=n(c,s),C=U.S;C!==null&&C(g,N),Em(e,t,N)}catch(R){Wu(e,t,R)}finally{o!==null&&g.types!==null&&(o.types=g.types),U.T=o}}else try{o=n(c,s),Em(e,t,o)}catch(R){Wu(e,t,R)}}function Em(e,t,n){n!==null&&typeof n=="object"&&typeof n.then=="function"?n.then(function(s){Cm(e,t,s)},function(s){return Wu(e,t,s)}):Cm(e,t,n)}function Cm(e,t,n){t.status="fulfilled",t.value=n,Am(t),e.state=n,t=e.pending,t!==null&&(n=t.next,n===t?e.pending=null:(n=n.next,t.next=n,Tm(e,n)))}function Wu(e,t,n){var s=e.pending;if(e.pending=null,s!==null){s=s.next;do t.status="rejected",t.reason=n,Am(t),t=t.next;while(t!==s)}e.action=null}function Am(e){e=e.listeners;for(var t=0;t<e.length;t++)(0,e[t])()}function zm(e,t){return t}function _m(e,t){if(Te){var n=Ke.formState;if(n!==null){e:{var s=ke;if(Te){if(Pe){t:{for(var c=Pe,o=on;c.nodeType!==8;){if(!o){c=null;break t}if(c=fn(c.nextSibling),c===null){c=null;break t}}o=c.data,c=o==="F!"||o==="F"?c:null}if(c){Pe=fn(c.nextSibling),s=c.data==="F!";break e}}fl(s)}s=!1}s&&(t=n[0])}}return n=Ot(),n.memoizedState=n.baseState=t,s={pending:null,lanes:0,dispatch:null,lastRenderedReducer:zm,lastRenderedState:t},n.queue=s,n=Jm.bind(null,ke,s),s.dispatch=n,s=Pu(!1),o=ao.bind(null,ke,!1,s.queue),s=Ot(),c={state:t,dispatch:null,action:e,pending:null},s.queue=c,n=Uy.bind(null,ke,c,o,n),c.dispatch=n,s.memoizedState=e,[t,n,!1]}function Om(e){var t=it();return Mm(t,Qe,e)}function Mm(e,t,n){if(t=Ju(e,t,zm)[0],e=zr(Pn)[0],typeof t=="object"&&t!==null&&typeof t.then=="function")try{var s=ei(t)}catch(g){throw g===Bs?yr:g}else s=t;t=it();var c=t.queue,o=c.dispatch;return n!==t.memoizedState&&(ke.flags|=2048,Gs(9,{destroy:void 0},$y.bind(null,c,n),null)),[s,o,e]}function $y(e,t){e.action=t}function Rm(e){var t=it(),n=Qe;if(n!==null)return Mm(t,n,e);it(),t=t.memoizedState,n=it();var s=n.queue.dispatch;return n.memoizedState=e,[t,s,!1]}function Gs(e,t,n,s){return e={tag:e,create:n,deps:s,inst:t,next:null},t=ke.updateQueue,t===null&&(t=Cr(),ke.updateQueue=t),n=t.lastEffect,n===null?t.lastEffect=e.next=e:(s=n.next,n.next=e,e.next=s,t.lastEffect=e),e}function Dm(){return it().memoizedState}function _r(e,t,n,s){var c=Ot();ke.flags|=e,c.memoizedState=Gs(1|t,{destroy:void 0},n,s===void 0?null:s)}function Or(e,t,n,s){var c=it();s=s===void 0?null:s;var o=c.memoizedState.inst;Qe!==null&&s!==null&&Xu(s,Qe.memoizedState.deps)?c.memoizedState=Gs(t,o,n,s):(ke.flags|=e,c.memoizedState=Gs(1|t,o,n,s))}function Um(e,t){_r(8390656,8,e,t)}function eo(e,t){Or(2048,8,e,t)}function Hy(e){ke.flags|=4;var t=ke.updateQueue;if(t===null)t=Cr(),ke.updateQueue=t,t.events=[e];else{var n=t.events;n===null?t.events=[e]:n.push(e)}}function $m(e){var t=it().memoizedState;return Hy({ref:t,nextImpl:e}),function(){if((He&2)!==0)throw Error(u(440));return t.impl.apply(void 0,arguments)}}function Hm(e,t){return Or(4,2,e,t)}function Bm(e,t){return Or(4,4,e,t)}function Lm(e,t){if(typeof t=="function"){e=e();var n=t(e);return function(){typeof n=="function"?n():t(null)}}if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function qm(e,t,n){n=n!=null?n.concat([e]):null,Or(4,4,Lm.bind(null,t,e),n)}function to(){}function Ym(e,t){var n=it();t=t===void 0?null:t;var s=n.memoizedState;return t!==null&&Xu(t,s[1])?s[0]:(n.memoizedState=[e,t],e)}function Gm(e,t){var n=it();t=t===void 0?null:t;var s=n.memoizedState;if(t!==null&&Xu(t,s[1]))return s[0];if(s=e(),ts){rl(!0);try{e()}finally{rl(!1)}}return n.memoizedState=[s,t],s}function no(e,t,n){return n===void 0||(Fn&1073741824)!==0&&(ze&261930)===0?e.memoizedState=t:(e.memoizedState=n,e=Wp(),ke.lanes|=e,Sl|=e,n)}function Xm(e,t,n,s){return It(n,t)?n:xl.current!==null?(e=no(e,n,s),It(e,t)||(ut=!0),e):(Fn&106)===0||(Fn&1073741824)!==0&&(ze&261930)===0?(ut=!0,e.memoizedState=n):(e=Wp(),ke.lanes|=e,Sl|=e,t)}function Qm(e,t,n,s,c){var o=P.p;P.p=o!==0&&8>o?o:8;var g=U.T,N={};N.types=g!==null?g.types:null,U.T=N,ao(e,!1,t,n);try{var C=c(),R=U.S;if(R!==null&&R(N,C),C!==null&&typeof C=="object"&&typeof C.then=="function"){var H=My(C,s);ti(e,t,H,en(e))}else ti(e,t,s,en(e))}catch(Y){ti(e,t,{then:function(){},status:"rejected",reason:Y},en())}finally{P.p=o,g!==null&&N.types!==null&&(g.types=N.types),U.T=g}}function By(){}function lo(e,t,n,s){if(e.tag!==5)throw Error(u(476));var c=Zm(e).queue;Qm(e,c,t,ce,n===null?By:function(){return Vm(e),n(s)})}function Zm(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:ce,baseState:ce,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Pn,lastRenderedState:ce},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Pn,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Vm(e){var t=Zm(e);t.next===null&&(t=e.alternate.memoizedState),ti(e,t.next.queue,{},en())}function so(){return jt(ca)}function Km(){return it().memoizedState}function Im(){return it().memoizedState}function Ly(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=en();e=gl(n);var s=vl(t,e,n);s!==null&&(Lt(s,t,n),Ia(s,t,n)),t={cache:Ou()},e.payload=t;return}t=t.return}}function qy(e,t,n){var s=en();n={lane:s,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Mr(e)?Fm(t,n):(n=Nu(e,t,n,s),n!==null&&(Lt(n,e,s),Pm(n,t,s)))}function Jm(e,t,n){var s=en();ti(e,t,n,s)}function ti(e,t,n,s){var c={lane:s,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Mr(e))Fm(t,c);else{var o=e.alternate;if(e.lanes===0&&(o===null||o.lanes===0)&&(o=t.lastRenderedReducer,o!==null))try{var g=t.lastRenderedState,N=o(g,n);if(c.hasEagerState=!0,c.eagerState=N,It(N,g))return or(e,t,c,0),Ke===null&&ur(),!1}catch{}finally{}if(n=Nu(e,t,c,s),n!==null)return Lt(n,e,s),Pm(n,t,s),!0}return!1}function ao(e,t,n,s){if(s={lane:2,revertLane:Jo(),gesture:null,action:s,hasEagerState:!1,eagerState:null,next:null},Mr(e)){if(t)throw Error(u(479))}else t=Nu(e,n,s,2),t!==null&&Lt(t,e,2)}function Mr(e){var t=e.alternate;return e===ke||t!==null&&t===ke}function Fm(e,t){qs=Tr=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Pm(e,t,n){if((n&4194048)!==0){var s=t.lanes;s&=e.pendingLanes,n|=s,t.lanes=n,Wf(e,n)}}var Rr={readContext:jt,use:Ar,useCallback:st,useContext:st,useEffect:st,useImperativeHandle:st,useLayoutEffect:st,useInsertionEffect:st,useMemo:st,useReducer:st,useRef:st,useState:st,useDebugValue:st,useDeferredValue:st,useTransition:st,useSyncExternalStore:st,useId:st,useHostTransitionStatus:st,useFormState:st,useActionState:st,useOptimistic:st,useMemoCache:st,useCacheRefresh:st,useEffectEvent:st},Wm={readContext:jt,use:Ar,useCallback:function(e,t){return Ot().memoizedState=[e,t===void 0?null:t],e},useContext:jt,useEffect:Um,useImperativeHandle:function(e,t,n){n=n!=null?n.concat([e]):null,_r(4194308,4,Lm.bind(null,t,e),n)},useLayoutEffect:function(e,t){return _r(4194308,4,e,t)},useInsertionEffect:function(e,t){_r(4,2,e,t)},useMemo:function(e,t){var n=Ot();t=t===void 0?null:t;var s=e();if(ts){rl(!0);try{e()}finally{rl(!1)}}return n.memoizedState=[s,t],s},useReducer:function(e,t,n){var s=Ot();if(n!==void 0){var c=n(t);if(ts){rl(!0);try{n(t)}finally{rl(!1)}}}else c=t;return s.memoizedState=s.baseState=c,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:c},s.queue=e,e=e.dispatch=qy.bind(null,ke,e),[s.memoizedState,e]},useRef:function(e){var t=Ot();return e={current:e},t.memoizedState=e},useState:function(e){e=Pu(e);var t=e.queue,n=Jm.bind(null,ke,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:to,useDeferredValue:function(e,t){var n=Ot();return no(n,e,t)},useTransition:function(){var e=Pu(!1);return e=Qm.bind(null,ke,e.queue,!0,!1),Ot().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var s=ke,c=Ot();if(Te){if(n===void 0)throw Error(u(407));n=n()}else{if(n=t(),Ke===null)throw Error(u(349));(ze&127)!==0||ym(s,t,n)}c.memoizedState=n;var o={value:n,getSnapshot:t};return c.queue=o,Um(jm.bind(null,s,o,e),[e]),s.flags|=2048,Gs(9,{destroy:void 0},km.bind(null,s,o,n,t),null),n},useId:function(){var e=Ot(),t=Ke.identifierPrefix;if(Te){var n=zn,s=An;n=(s&~(1<<32-Vt(s)-1)).toString(32)+n,t="_"+t+"R_"+n,n=Er++,0<n&&(t+="H"+n.toString(32)),t+="_"}else n=Ry++,t="_"+t+"r_"+n.toString(32)+"_";return e.memoizedState=t},useHostTransitionStatus:so,useFormState:_m,useActionState:_m,useOptimistic:function(e){var t=Ot();t.memoizedState=t.baseState=e;var n={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return t.queue=n,t=ao.bind(null,ke,!0,n),n.dispatch=t,[e,t]},useMemoCache:Iu,useCacheRefresh:function(){return Ot().memoizedState=Ly.bind(null,ke)},useEffectEvent:function(e){var t=Ot(),n={impl:e};return t.memoizedState=n,function(){if((He&2)!==0)throw Error(u(440));return n.impl.apply(void 0,arguments)}}},ep={readContext:jt,use:Ar,useCallback:Ym,useContext:jt,useEffect:eo,useImperativeHandle:qm,useInsertionEffect:Hm,useLayoutEffect:Bm,useMemo:Gm,useReducer:zr,useRef:Dm,useState:function(){return zr(Pn)},useDebugValue:to,useDeferredValue:function(e,t){var n=it();return Xm(n,Qe.memoizedState,e,t)},useTransition:function(){var e=zr(Pn)[0],t=it().memoizedState;return[typeof e=="boolean"?e:ei(e),t]},useSyncExternalStore:bm,useId:Km,useHostTransitionStatus:so,useFormState:Om,useActionState:Om,useOptimistic:function(e,t){var n=it();return wm(n,Qe,e,t)},useMemoCache:Iu,useCacheRefresh:Im,useEffectEvent:$m},Yy={readContext:jt,use:Ar,useCallback:Ym,useContext:jt,useEffect:eo,useImperativeHandle:qm,useInsertionEffect:Hm,useLayoutEffect:Bm,useMemo:Gm,useReducer:Fu,useRef:Dm,useState:function(){return Fu(Pn)},useDebugValue:to,useDeferredValue:function(e,t){var n=it();return Qe===null?no(n,e,t):Xm(n,Qe.memoizedState,e,t)},useTransition:function(){var e=Fu(Pn)[0],t=it().memoizedState;return[typeof e=="boolean"?e:ei(e),t]},useSyncExternalStore:bm,useId:Km,useHostTransitionStatus:so,useFormState:Rm,useActionState:Rm,useOptimistic:function(e,t){var n=it();return Qe!==null?wm(n,Qe,e,t):(n.baseState=e,[e,n.queue.dispatch])},useMemoCache:Iu,useCacheRefresh:Im,useEffectEvent:$m};function io(e,t,n,s){t=e.memoizedState,n=n(s,t),n=n==null?t:L({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var ro={enqueueSetState:function(e,t,n){e=e._reactInternals;var s=en(),c=gl(s);c.payload=t,n!=null&&(c.callback=n),t=vl(e,c,s),t!==null&&(Lt(t,e,s),Ia(t,e,s))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var s=en(),c=gl(s);c.tag=1,c.payload=t,n!=null&&(c.callback=n),t=vl(e,c,s),t!==null&&(Lt(t,e,s),Ia(t,e,s))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=en(),s=gl(n);s.tag=2,t!=null&&(s.callback=t),t=vl(e,s,n),t!==null&&(Lt(t,e,n),Ia(t,e,n))}};function tp(e,t,n,s,c,o,g){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(s,o,g):t.prototype&&t.prototype.isPureReactComponent?!qa(n,s)||!qa(c,o):!0}function np(e,t,n,s){e=t.state,typeof t.componentWillReceiveProps=="function"&&t.componentWillReceiveProps(n,s),typeof t.UNSAFE_componentWillReceiveProps=="function"&&t.UNSAFE_componentWillReceiveProps(n,s),t.state!==e&&ro.enqueueReplaceState(t,t.state,null)}function ns(e,t){var n=t;if("ref"in t){n={};for(var s in t)s!=="ref"&&(n[s]=t[s])}if(e=e.defaultProps){n===t&&(n=L({},n));for(var c in e)n[c]===void 0&&(n[c]=e[c])}return n}function lp(e){cr(e)}function sp(e){console.error(e)}function ap(e){cr(e)}function Dr(e,t){try{var n=e.onUncaughtError;n(t.value,{componentStack:t.stack})}catch(s){setTimeout(function(){throw s})}}function ip(e,t,n){try{var s=e.onCaughtError;s(n.value,{componentStack:n.stack,errorBoundary:t.tag===1?t.stateNode:null})}catch(c){setTimeout(function(){throw c})}}function co(e,t,n){return n=gl(n),n.tag=3,n.payload={element:null},n.callback=function(){Dr(e,t)},n}function rp(e){return e=gl(e),e.tag=3,e}function cp(e,t,n,s){var c=n.type.getDerivedStateFromError;if(typeof c=="function"){var o=s.value;e.payload=function(){return c(o)},e.callback=function(){ip(t,n,s)}}var g=n.stateNode;g!==null&&typeof g.componentDidCatch=="function"&&(e.callback=function(){ip(t,n,s),typeof c!="function"&&(wl===null?wl=new Set([this]):wl.add(this));var N=s.stack;this.componentDidCatch(s.value,{componentStack:N!==null?N:""})})}function Gy(e,t,n,s,c){if(n.flags|=32768,s!==null&&typeof s=="object"&&typeof s.then=="function"){if(t=n.alternate,t!==null&&Kl(t,n,c,!0),n=Nt.current,n!==null){switch(n.tag){case 31:case 13:case 19:return At===null?nc():n.alternate===null&&at===0&&(at=3),n.flags&=-257,n.flags|=65536,n.lanes=c,s===kr?n.flags|=16384:(t=n.updateQueue,t===null?n.updateQueue=new Set([s]):t.add(s),Vo(e,s,c)),!1;case 22:return n.flags|=65536,s===kr?n.flags|=16384:(t=n.updateQueue,t===null?(t={transitions:null,markerInstances:null,retryQueue:new Set([s])},n.updateQueue=t):(n=t.retryQueue,n===null?t.retryQueue=new Set([s]):n.add(s)),Vo(e,s,c)),!1}throw Error(u(435,n.tag))}return Vo(e,s,c),nc(),!1}if(Te)return t=Nt.current,t!==null?((t.flags&65536)===0&&(t.flags|=256),t.flags|=65536,t.lanes=c,s!==Cu&&(e=Error(u(422),{cause:s}),Xa(rn(e,n)))):(s!==Cu&&(t=Error(u(423),{cause:s}),Xa(rn(t,n))),e=e.current.alternate,e.flags|=65536,c&=-c,e.lanes|=c,s=rn(s,n),c=co(e.stateNode,s,c),Hu(e,c),at!==4&&(at=2)),!1;var o=Error(u(520),{cause:s});if(o=rn(o,n),ui===null?ui=[o]:ui.push(o),at!==4&&(at=2),t===null)return!0;s=rn(s,n),n=t;do{switch(n.tag){case 3:return n.flags|=65536,e=c&-c,n.lanes|=e,e=co(n.stateNode,s,e),Hu(n,e),!1;case 1:if(t=n.type,o=n.stateNode,(n.flags&128)===0&&(typeof t.getDerivedStateFromError=="function"||o!==null&&typeof o.componentDidCatch=="function"&&(wl===null||!wl.has(o))))return n.flags|=65536,c&=-c,n.lanes|=c,c=rp(c),cp(c,e,n,s),Hu(n,c),!1;break;case 22:if(n.memoizedState!==null)return n.flags|=65536,!1}n=n.return}while(n!==null);return!1}var uo=Error(u(461)),ut=!1;function dt(e,t,n,s){t.child=e===null?fm(t,null,n,s):es(t,e.child,n,s)}function up(e,t,n,s,c){n=n.render;var o=t.ref;if("ref"in s){var g={};for(var N in s)N!=="ref"&&(g[N]=s[N])}else g=s;return Il(t),s=Qu(e,t,n,g,o,c),N=Zu(),e!==null&&!ut?(Vu(e,t,c),Wn(e,t,c)):(Te&&N&&mr(t),t.flags|=1,dt(e,t,s,c),t.child)}function op(e,t,n,s,c){if(e===null){var o=n.type;return typeof o=="function"&&!Su(o)&&o.defaultProps===void 0&&n.compare===null?(t.tag=15,t.type=o,dp(e,t,o,s,c)):(e=fr(n.type,null,s,t,t.mode,c),e.ref=t.ref,e.return=t,t.child=e)}if(o=e.child,!xo(e,c)){var g=o.memoizedProps;if(n=n.compare,n=n!==null?n:qa,n(g,s)&&e.ref===t.ref)return Wn(e,t,c)}return t.flags|=1,e=Vn(o,s),e.ref=t.ref,e.return=t,t.child=e}function dp(e,t,n,s,c){if(e!==null){var o=e.memoizedProps;if(qa(o,s)&&e.ref===t.ref)if(ut=!1,t.pendingProps=s=o,xo(e,c))(e.flags&131072)!==0&&(ut=!0);else return t.lanes=e.lanes,Wn(e,t,c)}return oo(e,t,n,s,c)}function fp(e,t,n,s){var c=s.children,o=e!==null?e.memoizedState:null;if(e===null&&t.stateNode===null&&(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),s.mode==="hidden"){if((t.flags&128)!==0){if(o=o!==null?o.baseLanes|n:n,e!==null){for(s=t.child=e.child,c=0;s!==null;)c=c|s.lanes|s.childLanes,s=s.sibling;s=c&~o}else s=0,t.child=null;return hp(e,t,o,n,s)}if((n&536870912)!==0)t.memoizedState={baseLanes:0,cachePool:null},e!==null&&br(t,o!==null?o.cachePool:null),o!==null?pm(t,o):Lu(),gm(t);else return s=t.lanes=536870912,hp(e,t,o!==null?o.baseLanes|n:n,n,s)}else o!==null?(br(t,o.cachePool),pm(t,o),yl(),t.memoizedState=null):(e!==null&&br(t,null),Lu(),yl());return dt(e,t,c,n),t.child}function ni(e,t){return e!==null&&e.tag===22||t.stateNode!==null||(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),t.sibling}function hp(e,t,n,s,c){var o=Ru();return o=o===null?null:{parent:rt._currentValue,pool:o},t.memoizedState={baseLanes:n,cachePool:o},e!==null&&br(t,null),Lu(),gm(t),e!==null&&Kl(e,t,s,!0),t.childLanes=c,null}function Ur(e,t){return t=$r({mode:t.mode,children:t.children},e.mode),t.ref=e.ref,e.child=t,t.return=e,t}function mp(e,t,n){return es(t,e.child,null,n),e=Ur(t,t.pendingProps),e.flags|=2,Jt(t),t.memoizedState=null,e}function Xy(e,t,n){var s=t.pendingProps,c=(t.flags&128)!==0;if(t.flags&=-129,e===null){if(Te){if(s.mode==="hidden")return e=Ur(t,s),t.lanes=536870912,e.memoizedState={baseLanes:0,cachePool:null},ni(null,e);if(Yu(t),(e=Pe)?(e=Lg(e,on),e=e!==null&&e.data==="&"?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:ol!==null?{id:An,overflow:zn}:null,retryLane:536870912,hydrationErrors:null},n=Fh(e),n.return=t,t.child=n,gt=t,Pe=null)):e=null,e===null)throw fl(t);return t.lanes=536870912,null}return Ur(t,s)}var o=e.memoizedState;if(o!==null){var g=o.dehydrated;if(Yu(t),c)if(t.flags&256)t.flags&=-257,t=mp(e,t,n);else if(t.memoizedState!==null)t.child=e.child,t.flags|=128,t=null;else throw Error(u(558));else if(ut||Kl(e,t,n,!1),c=(n&e.childLanes)!==0,ut||c){if(xl.current===null){if(s=Ke,s!==null&&(g=eh(s,n),g!==0&&g!==o.retryLane))throw o.retryLane=g,Xl(e,g),Lt(s,e,g),uo;nc()}t=mp(e,t,n)}else e=o.treeContext,Pe=fn(g.nextSibling),gt=t,Te=!0,dl=null,on=!1,e!==null&&em(t,e),t=Ur(t,s),t.flags|=134221824;return t}return e=Vn(e.child,{mode:s.mode,children:s.children}),e.ref=t.ref,t.child=e,e.return=t,e}function Xs(e,t){var n=t.ref;if(n===null)e!==null&&e.ref!==null&&(t.flags|=4194816);else{if(typeof n!="function"&&typeof n!="object")throw Error(u(284));(e===null||e.ref!==n)&&(t.flags|=4194816)}}function oo(e,t,n,s,c){return Il(t),n=Qu(e,t,n,s,void 0,c),s=Zu(),e!==null&&!ut?(Vu(e,t,c),Wn(e,t,c)):(Te&&s&&mr(t),t.flags|=1,dt(e,t,n,c),t.child)}function pp(e,t,n,s,c,o){return Il(t),t.updateQueue=null,n=xm(t,s,n,c),vm(e),s=Zu(),e!==null&&!ut?(Vu(e,t,o),Wn(e,t,o)):(Te&&s&&mr(t),t.flags|=1,dt(e,t,n,o),t.child)}function gp(e,t,n,s,c){if(Il(t),t.stateNode===null){var o=Rs,g=n.contextType;typeof g=="object"&&g!==null&&(o=jt(g)),o=new n(s,o),t.memoizedState=o.state!==null&&o.state!==void 0?o.state:null,o.updater=ro,t.stateNode=o,o._reactInternals=t,o=t.stateNode,o.props=s,o.state=t.memoizedState,o.refs={},Uu(t),g=n.contextType,o.context=typeof g=="object"&&g!==null?jt(g):Rs,o.state=t.memoizedState,g=n.getDerivedStateFromProps,typeof g=="function"&&(io(t,n,g,s),o.state=t.memoizedState),typeof n.getDerivedStateFromProps=="function"||typeof o.getSnapshotBeforeUpdate=="function"||typeof o.UNSAFE_componentWillMount!="function"&&typeof o.componentWillMount!="function"||(g=o.state,typeof o.componentWillMount=="function"&&o.componentWillMount(),typeof o.UNSAFE_componentWillMount=="function"&&o.UNSAFE_componentWillMount(),g!==o.state&&ro.enqueueReplaceState(o,o.state,null),Fa(t,s,o,c),Ja(),o.state=t.memoizedState),typeof o.componentDidMount=="function"&&(t.flags|=4194308),s=!0}else if(e===null){o=t.stateNode;var N=t.memoizedProps,C=ns(n,N);o.props=C;var R=o.context,H=n.contextType;g=Rs,typeof H=="object"&&H!==null&&(g=jt(H));var Y=n.getDerivedStateFromProps;H=typeof Y=="function"||typeof o.getSnapshotBeforeUpdate=="function",N=t.pendingProps!==N,H||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(N||R!==g)&&np(t,o,s,g),pl=!1;var O=t.memoizedState;o.state=O,Fa(t,s,o,c),Ja(),R=t.memoizedState,N||O!==R||pl?(typeof Y=="function"&&(io(t,n,Y,s),R=t.memoizedState),(C=pl||tp(t,n,C,s,O,R,g))?(H||typeof o.UNSAFE_componentWillMount!="function"&&typeof o.componentWillMount!="function"||(typeof o.componentWillMount=="function"&&o.componentWillMount(),typeof o.UNSAFE_componentWillMount=="function"&&o.UNSAFE_componentWillMount()),typeof o.componentDidMount=="function"&&(t.flags|=4194308)):(typeof o.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=s,t.memoizedState=R),o.props=s,o.state=R,o.context=g,s=C):(typeof o.componentDidMount=="function"&&(t.flags|=4194308),s=!1)}else{o=t.stateNode,$u(e,t),g=t.memoizedProps,H=ns(n,g),o.props=H,Y=t.pendingProps,O=o.context,R=n.contextType,C=Rs,typeof R=="object"&&R!==null&&(C=jt(R)),N=n.getDerivedStateFromProps,(R=typeof N=="function"||typeof o.getSnapshotBeforeUpdate=="function")||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(g!==Y||O!==C)&&np(t,o,s,C),pl=!1,O=t.memoizedState,o.state=O,Fa(t,s,o,c),Ja();var $=t.memoizedState;g!==Y||O!==$||pl||e!==null&&e.dependencies!==null&&vr(e.dependencies)?(typeof N=="function"&&(io(t,n,N,s),$=t.memoizedState),(H=pl||tp(t,n,H,s,O,$,C)||e!==null&&e.dependencies!==null&&vr(e.dependencies))?(R||typeof o.UNSAFE_componentWillUpdate!="function"&&typeof o.componentWillUpdate!="function"||(typeof o.componentWillUpdate=="function"&&o.componentWillUpdate(s,$,C),typeof o.UNSAFE_componentWillUpdate=="function"&&o.UNSAFE_componentWillUpdate(s,$,C)),typeof o.componentDidUpdate=="function"&&(t.flags|=4),typeof o.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof o.componentDidUpdate!="function"||g===e.memoizedProps&&O===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||g===e.memoizedProps&&O===e.memoizedState||(t.flags|=1024),t.memoizedProps=s,t.memoizedState=$),o.props=s,o.state=$,o.context=C,s=H):(typeof o.componentDidUpdate!="function"||g===e.memoizedProps&&O===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||g===e.memoizedProps&&O===e.memoizedState||(t.flags|=1024),s=!1)}return o=s,Xs(e,t),s=(t.flags&128)!==0,o||s?(o=t.stateNode,n=s&&typeof n.getDerivedStateFromError!="function"?null:o.render(),t.flags|=1,e!==null&&s?(t.child=es(t,e.child,null,c),t.child=es(t,null,n,c)):dt(e,t,n,c),t.memoizedState=o.state,e=t.child):e=Wn(e,t,c),e}function vp(e,t,n,s){return Zl(),t.flags|=256,dt(e,t,n,s),t.child}var fo={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function ho(e){return{baseLanes:e,cachePool:im()}}function mo(e,t,n){return e=e!==null?e.childLanes&~n:0,t&&(e|=Wt),e}function xp(e,t,n){var s=t.pendingProps,c=!1,o=(t.flags&128)!==0,g;if((g=o)||(g=e!==null&&e.memoizedState===null?!1:(St.current&2)!==0),g&&(c=!0,t.flags&=-129),g=(t.flags&32)!==0,t.flags&=-33,e===null){if(Te){if(c?bl(t):yl(),(e=Pe)?(e=Lg(e,on),e=e!==null&&e.data!=="&"?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:ol!==null?{id:An,overflow:zn}:null,retryLane:536870912,hydrationErrors:null},n=Fh(e),n.return=t,t.child=n,gt=t,Pe=null)):e=null,e===null)throw fl(t);return hd(e)?t.lanes=32:t.lanes=536870912,null}return o=s.children,s=s.fallback,c?(yl(),c=t.mode,o=$r({mode:"hidden",children:o},c),s=Ql(s,c,n,null),o.return=t,s.return=t,o.sibling=s,t.child=o,s=t.child,s.memoizedState=ho(n),s.childLanes=mo(e,g,n),t.memoizedState=fo,ni(null,s)):(bl(t),po(t,o))}var N=e.memoizedState;if(N!==null){var C=N.dehydrated;if(C!==null)return Qy(e,t,o,g,s,C,N,n)}return c?(yl(),c=s.fallback,o=t.mode,N=e.child,C=N.sibling,s=Vn(N,{mode:"hidden",children:s.children}),s.subtreeFlags=N.subtreeFlags&1206910976,C!==null?c=Vn(C,c):(c=Ql(c,o,n,null),c.flags|=2),c.return=t,s.return=t,s.sibling=c,t.child=s,ni(null,s),s=t.child,c=e.child.memoizedState,c===null?c=ho(n):(o=c.cachePool,o!==null?(N=rt._currentValue,o=o.parent!==N?{parent:N,pool:N}:o):o=im(),c={baseLanes:c.baseLanes|n,cachePool:o}),s.memoizedState=c,s.childLanes=mo(e,g,n),t.memoizedState=fo,ni(e.child,s)):(bl(t),n=e.child,e=n.sibling,n=Vn(n,{mode:"visible",children:s.children}),n.return=t,n.sibling=null,e!==null&&(g=t.deletions,g===null?(t.deletions=[e],t.flags|=16):g.push(e)),t.child=n,t.memoizedState=null,n)}function po(e,t){return t=$r({mode:"visible",children:t},e.mode),t.return=e,e.child=t}function $r(e,t){return e=Ut(22,e,null,t),e.lanes=0,e}function Hr(e,t,n){return es(t,e.child,null,n),e=po(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function Qy(e,t,n,s,c,o,g,N){if(n)return t.flags&256?(bl(t),t.flags&=-257,Hr(e,t,N)):t.memoizedState!==null?(yl(),t.child=e.child,t.flags|=128,null):(yl(),o=c.fallback,g=t.mode,c=$r({mode:"visible",children:c.children},g),o=Ql(o,g,N,null),o.flags|=2,c.return=t,o.return=t,c.sibling=o,t.child=c,es(t,e.child,null,N),c=t.child,c.memoizedState=ho(N),c.childLanes=mo(e,s,N),t.memoizedState=fo,ni(null,c));if(bl(t),hd(o)){if(s=o.nextSibling&&o.nextSibling.dataset,s)var C=s.dgst;return s=C,s!==""&&(c=Error(u(419)),c.stack="",c.digest=s,Xa({value:c,source:null,stack:null})),Hr(e,t,N)}if(ut||Kl(e,t,N,!1),s=(N&e.childLanes)!==0,ut||s){if(xl.current!==null)return Hr(e,t,N);if(s=Ke,s!==null&&(c=eh(s,N),c!==0&&c!==g.retryLane))throw g.retryLane=c,Xl(e,c),Lt(s,e,c),uo;return fd(o)||nc(),Hr(e,t,N)}return fd(o)?(t.flags|=192,t.child=e.child,null):(e=g.treeContext,Pe=fn(o.nextSibling),gt=t,Te=!0,dl=null,on=!1,e!==null&&em(t,e),t=po(t,c.children),t.flags|=134221824,t)}function bp(e,t,n){e.lanes|=t;var s=e.alternate;s!==null&&(s.lanes|=t),gr(e.return,t,n)}function yp(e){for(var t=null;e!==null;){var n=e.alternate;n!==null&&wr(n)===null&&(t=e),e=e.sibling}return t}function Br(e,t,n,s,c,o){var g=e.memoizedState;g===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:s,tail:n,tailMode:c,treeForkCount:o}:(g.isBackwards=t,g.rendering=null,g.renderingStartTime=0,g.last=s,g.tail=n,g.tailMode=c,g.treeForkCount=o)}function go(e){var t=e.child;for(e.child=null;t!==null;){var n=t.sibling;t.sibling=e.child,e.child=t,t=n}}function vo(e,t,n){var s=t.pendingProps,c=s.revealOrder,o=s.tail;s=s.children;var g=St.current;if(t.flags&128)return Pa(t,g),null;var N=(g&2)!==0;if(N?(g=g&1|2,t.flags|=128):g&=1,Pa(t,g),c==="backwards"&&e!==null?(go(e),dt(e,t,s,n),go(e)):dt(e,t,s,n),s=Te?Ga:0,!N&&e!==null&&(e.flags&128)!==0)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&bp(e,n,t);else if(e.tag===19)bp(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}switch(c){case"backwards":n=yp(t.child),n===null?(c=t.child,t.child=null):(c=n.sibling,n.sibling=null,go(t)),Br(t,!0,c,null,o,s);break;case"unstable_legacy-backwards":for(n=null,c=t.child,t.child=null;c!==null;){if(e=c.alternate,e!==null&&wr(e)===null){t.child=c;break}e=c.sibling,c.sibling=n,n=c,c=e}Br(t,!0,n,null,o,s);break;case"together":Br(t,!1,null,null,void 0,s);break;case"independent":t.memoizedState=null;break;default:n=yp(t.child),n===null?(c=t.child,t.child=null):(c=n.sibling,n.sibling=null),Br(t,!1,c,n,o,s)}return t.child}function kp(e,t,n){var s=t.pendingProps;return hl(t,t.type,s.value),dt(e,t,s.children,n),t.child}function Wn(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),Sl|=t.lanes,(n&t.childLanes)===0)if(e!==null){if(Kl(e,t,n,!1),(n&t.childLanes)===0)return null}else return null;if(e!==null&&t.child!==e.child)throw Error(u(153));if(t.child!==null){for(e=t.child,n=Vn(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=Vn(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function xo(e,t){return(e.lanes&t)!==0?!0:(e=e.dependencies,!!(e!==null&&vr(e)))}function Zy(e,t,n){switch(t.tag){case 3:Xi(t,t.stateNode.containerInfo),hl(t,rt,e.memoizedState.cache),Zl();break;case 27:case 5:Xc(t);break;case 4:Xi(t,t.stateNode.containerInfo);break;case 10:hl(t,t.type,t.memoizedProps.value);break;case 31:if(t.memoizedState!==null)return t.flags|=128,Yu(t),null;break;case 13:var s=t.memoizedState;if(s!==null){if(s.dehydrated!==null)return bl(t),t.flags|=128,null;s=Kl(e,t,n,!1);var c=t.child.childLanes;return s||(n&c)!==0?xp(e,t,n):(bl(t),e=Wn(e,t,n),e!==null?e.sibling:null)}bl(t);break;case 19:if(t.flags&128)return vo(e,t,n);if(c=(e.flags&128)!==0,s=(n&t.childLanes)!==0,s||(Kl(e,t,n,!1),s=(n&t.childLanes)!==0),c){if(s)return vo(e,t,n);t.flags|=128}if(c=t.memoizedState,c!==null&&(c.rendering=null,c.tail=null,c.lastEffect=null),Pa(t,St.current),s)break;return null;case 22:return t.lanes=0,fp(e,t,n,t.pendingProps);case 24:hl(t,rt,e.memoizedState.cache)}return Wn(e,t,n)}function jp(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps)ut=!0;else{if(!xo(e,n)&&(t.flags&128)===0)return ut=!1,Zy(e,t,n);ut=(e.flags&131072)!==0}else ut=!1,Te&&(t.flags&1048576)!==0&&Wh(t,Ga,t.index);switch(t.lanes=0,t.tag){case 16:e:{var s=t.pendingProps;if(e=Pl(t.elementType),t.type=e,typeof e=="function")Su(e)?(s=ns(e,s),t.tag=1,t=gp(null,t,e,s,n)):(t.tag=0,t=oo(null,t,e,s,n));else{if(e!=null){var c=e.$$typeof;if(c===W){t.tag=11,t=up(null,t,e,s,n);break e}else if(c===$e){t.tag=14,t=op(null,t,e,s,n);break e}else if(c===Ue){t.tag=10,t.type=e,t=kp(null,t,n);break e}}throw t=Oe(e)||e,Error(u(306,t,""))}}return t;case 0:return oo(e,t,t.type,t.pendingProps,n);case 1:return s=t.type,c=ns(s,t.pendingProps),gp(e,t,s,c,n);case 3:e:{if(Xi(t,t.stateNode.containerInfo),e===null)throw Error(u(387));s=t.pendingProps;var o=t.memoizedState;c=o.element,$u(e,t),Fa(t,s,null,n);var g=t.memoizedState;if(s=g.cache,hl(t,rt,s),s!==o.cache&&_u(t,[rt],n,!0),Ja(),s=g.element,o.isDehydrated)if(o={element:s,isDehydrated:!1,cache:g.cache},t.updateQueue.baseState=o,t.memoizedState=o,t.flags&256){t=vp(e,t,s,n);break e}else if(s!==c){c=rn(Error(u(424)),t),Xa(c),t=vp(e,t,s,n);break e}else{switch(e=t.stateNode.containerInfo,e.nodeType){case 9:e=e.body;break;default:e=e.nodeName==="HTML"?e.ownerDocument.body:e}for(Pe=fn(e.firstChild),gt=t,Te=!0,dl=null,on=!0,n=fm(t,null,s,n),t.child=n;n;)n.flags=n.flags&-3|134221824,n=n.sibling}else{if(Zl(),s===c){t=Wn(e,t,n);break e}dt(e,t,s,n)}t=t.child}return t;case 26:return Xs(e,t),e===null?(n=Vg(t.type,null,t.pendingProps,null))?t.memoizedState=n:Te||(t.stateNode=Tg(t.type,t.pendingProps,al.current,t)):t.memoizedState=Vg(t.type,e.memoizedProps,t.pendingProps,e.memoizedState),null;case 27:return Xc(t),e===null&&Te&&(s=t.stateNode=Gg(t.type,t.pendingProps,al.current),gt=t,on=!0,c=Pe,Cl(t.type)?(md=c,Pe=fn(s.firstChild)):Pe=c),dt(e,t,t.pendingProps.children,n),Xs(e,t),e===null&&(t.flags|=4194304),t.child;case 5:return e===null&&Te&&((c=s=Pe)&&(s=Lk(s,t.type,t.pendingProps,on),s!==null?(t.stateNode=s,gt=t,Pe=fn(s.firstChild),on=!1,c=!0):c=!1),c||fl(t)),Xc(t),c=t.type,o=t.pendingProps,g=e!==null?e.memoizedProps:null,s=o.children,ad(c,o)?s=null:g!==null&&ad(c,g)&&(t.flags|=32),t.memoizedState!==null&&(c=Qu(e,t,Dy,null,null,n),ca._currentValue=c),Xs(e,t),dt(e,t,s,n),t.child;case 6:return e===null&&Te&&((e=n=Pe)&&(n=qk(n,t.pendingProps,on),n!==null?(t.stateNode=n,gt=t,Pe=null,e=!0):e=!1),e||fl(t)),null;case 13:return xp(e,t,n);case 4:return Xi(t,t.stateNode.containerInfo),s=t.pendingProps,e===null?t.child=es(t,null,s,n):dt(e,t,s,n),t.child;case 11:return up(e,t,t.type,t.pendingProps,n);case 7:return s=t.pendingProps,Xs(e,t),dt(e,t,s,n),t.child;case 8:return dt(e,t,t.pendingProps.children,n),t.child;case 12:return dt(e,t,t.pendingProps.children,n),t.child;case 10:return kp(e,t,n);case 9:return c=t.type._context,s=t.pendingProps.children,Il(t),c=jt(c),s=s(c),t.flags|=1,dt(e,t,s,n),t.child;case 14:return op(e,t,t.type,t.pendingProps,n);case 15:return dp(e,t,t.type,t.pendingProps,n);case 19:return vo(e,t,n);case 31:return Xy(e,t,n);case 22:return fp(e,t,n,t.pendingProps);case 24:return Il(t),s=jt(rt),e===null?(c=Ru(),c===null&&(c=Ke,o=Ou(),c.pooledCache=o,o.refCount++,o!==null&&(c.pooledCacheLanes|=n),c=o),t.memoizedState={parent:s,cache:c},Uu(t),hl(t,rt,c)):((e.lanes&n)!==0&&($u(e,t),Fa(t,null,null,n),Ja()),c=e.memoizedState,o=t.memoizedState,c.parent!==s?(c={parent:s,cache:s},t.memoizedState=c,t.lanes===0&&(t.memoizedState=t.updateQueue.baseState=c),hl(t,rt,s)):(s=o.cache,hl(t,rt,s),s!==c.cache&&_u(t,[rt],n,!0))),dt(e,t,t.pendingProps.children,n),t.child;case 30:return t.stateNode===null&&(t.stateNode={autoName:null,paired:null,clones:null,ref:null}),s=t.pendingProps,s.name!=null&&s.name!=="auto"?t.flags|=e===null?18882560:18874368:Te&&mr(t),e!==null&&e.memoizedProps.name!==s.name?t.flags|=4194816:Xs(e,t),dt(e,t,s.children,n),t.child;case 29:throw t.pendingProps}throw Error(u(156,t.tag))}function el(e){e.flags|=4}function bo(e,t,n,s,c){var o;if((o=(e.mode&32)!==0)&&(o=n===null?Fg(t,s):Fg(t,s)&&(s.src!==n.src||s.srcSet!==n.srcSet)),o){if(e.flags|=16777216,(c&335544128)===c)if(e.stateNode.complete)e.flags|=8192;else if(lg())e.flags|=8192;else throw Wl=kr,Du}else e.flags&=-16777217}function Np(e,t){if(t.type!=="stylesheet"||(t.state.loading&4)!==0)e.flags&=-16777217;else if(e.flags|=16777216,!Pg(t))if(lg())e.flags|=8192;else throw Wl=kr,Du}function Lr(e,t){t!==null&&(e.flags|=4),e.flags&16384&&(t=e.tag!==22?Ff():536870912,e.lanes|=t,Is|=t)}function li(e,t){if(!Te)switch(e.tailMode){case"visible":break;case"collapsed":for(var n=e.tail,s=null;n!==null;)n.alternate!==null&&(s=n),n=n.sibling;s===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:s.sibling=null;break;default:for(t=e.tail,n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null}}function We(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,s=0;if(t)for(var c=e.child;c!==null;)n|=c.lanes|c.childLanes,s|=c.subtreeFlags&1206910976,s|=c.flags&1206910976,c.return=e,c=c.sibling;else for(c=e.child;c!==null;)n|=c.lanes|c.childLanes,s|=c.subtreeFlags,s|=c.flags,c.return=e,c=c.sibling;return e.subtreeFlags|=s,e.childLanes=n,t}function Vy(e,t,n){var s=t.pendingProps;switch(Eu(t),t.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return We(t),null;case 1:return We(t),null;case 3:return n=t.stateNode,s=null,e!==null&&(s=e.memoizedState.cache),t.memoizedState.cache!==s&&(t.flags|=2048),Jn(rt),ks(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),(e===null||e.child===null)&&($s(t)?el(t):e===null||e.memoizedState.isDehydrated&&(t.flags&256)===0||(t.flags|=1024,Au())),We(t),null;case 26:var c=t.type,o=t.memoizedState;return e===null?(el(t),o!==null?(We(t),Np(t,o)):(We(t),bo(t,c,null,s,n))):o?o!==e.memoizedState?(el(t),We(t),Np(t,o)):(We(t),t.flags&=-16777217):(e=e.memoizedProps,e!==s&&el(t),We(t),bo(t,c,e,s,n)),null;case 27:if(Qi(t),n=al.current,c=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==s&&el(t);else{if(!s){if(t.stateNode===null)throw Error(u(166));return We(t),t.subtreeFlags&=-33554433,null}e=En.current,$s(t)?tm(t):(e=Gg(c,s,n),t.stateNode=e,el(t))}return We(t),t.subtreeFlags&=-33554433,null;case 5:if(Qi(t),c=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==s&&el(t);else{if(!s){if(t.stateNode===null)throw Error(u(166));return We(t),t.subtreeFlags&=-33554433,null}if(o=En.current,$s(t))tm(t);else{var g=mi(al.current);switch(o){case 1:o=g.createElementNS("http://www.w3.org/2000/svg",c);break;case 2:o=g.createElementNS("http://www.w3.org/1998/Math/MathML",c);break;default:switch(c){case"svg":o=g.createElementNS("http://www.w3.org/2000/svg",c);break;case"math":o=g.createElementNS("http://www.w3.org/1998/Math/MathML",c);break;case"script":o=g.createElement("div"),o.innerHTML="<script><\/script>",o=o.removeChild(o.firstChild);break;case"select":o=typeof s.is=="string"?g.createElement("select",{is:s.is}):g.createElement("select"),s.multiple?o.multiple=!0:s.size&&(o.size=s.size);break;default:o=typeof s.is=="string"?g.createElement(c,{is:s.is}):g.createElement(c)}}o[kt]=t,o[Dt]=s;e:for(g=t.child;g!==null;){if(g.tag===5||g.tag===6)o.appendChild(g.stateNode);else if(g.tag!==4&&g.tag!==27&&g.child!==null){g.child.return=g,g=g.child;continue}if(g===t)break e;for(;g.sibling===null;){if(g.return===null||g.return===t)break e;g=g.return}g.sibling.return=g.return,g=g.sibling}t.stateNode=o;e:switch(Tt(o,c,s),c){case"button":case"input":case"select":case"textarea":s=!!s.autoFocus;break e;case"img":s=!0;break e;default:s=!1}s&&el(t)}}return We(t),t.subtreeFlags&=-33554433,bo(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==s&&el(t);else{if(typeof s!="string"&&t.stateNode===null)throw Error(u(166));if(e=al.current,$s(t)){if(e=t.stateNode,n=t.memoizedProps,s=null,c=gt,c!==null)switch(c.tag){case 27:case 5:s=c.memoizedProps}e[kt]=t,e=!!(e.nodeValue===n||s!==null&&s.suppressHydrationWarning===!0||jg(e.nodeValue,n)),e||fl(t,!0)}else e=mi(e).createTextNode(s),e[kt]=t,t.stateNode=e}return We(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(s=$s(t),n!==null){if(e===null){if(!s)throw Error(u(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(u(557));e[kt]=t}else Zl(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;We(t),e=!1}else n=Au(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(Jt(t),t):(Jt(t),null);if((t.flags&128)!==0)throw Error(u(558))}return We(t),null;case 13:if(s=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(c=$s(t),s!==null&&s.dehydrated!==null){if(e===null){if(!c)throw Error(u(318));if(c=t.memoizedState,c=c!==null?c.dehydrated:null,!c)throw Error(u(317));c[kt]=t}else Zl(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;We(t),c=!1}else c=Au(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=c),c=!0;if(!c)return t.flags&256?(Jt(t),t):(Jt(t),null)}return Jt(t),(t.flags&128)!==0?(t.lanes=n,t):(n=s!==null,e=e!==null&&e.memoizedState!==null,n&&(s=t.child,c=null,s.alternate!==null&&s.alternate.memoizedState!==null&&s.alternate.memoizedState.cachePool!==null&&(c=s.alternate.memoizedState.cachePool.pool),o=null,s.memoizedState!==null&&s.memoizedState.cachePool!==null&&(o=s.memoizedState.cachePool.pool),o!==c&&(s.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Lr(t,t.updateQueue),We(t),null);case 4:return ks(),e===null&&ed(t.stateNode.containerInfo),t.flags|=67108864,We(t),null;case 10:return Jn(t.type),We(t),null;case 19:if(Gu(t),s=t.memoizedState,s===null)return We(t),null;if(c=(t.flags&128)!==0,o=s.rendering,o===null)if(c)li(s,!1);else{if(at!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(o=wr(e),o!==null){for(t.flags|=128,li(s,!1),e=o.updateQueue,t.updateQueue=e,Lr(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)Jh(n,e),n=n.sibling;return Pa(t,St.current&1|2),Te&&Kn(t,s.treeForkCount),t.child}e=e.sibling}s.tail!==null&&Qt()>Pr&&(t.flags|=128,c=!0,li(s,!1),t.lanes=4194304)}else{if(!c)if(e=wr(o),e!==null){if(t.flags|=128,c=!0,e=e.updateQueue,t.updateQueue=e,Lr(t,e),li(s,!0),s.tail===null&&s.tailMode!=="collapsed"&&s.tailMode!=="visible"&&!o.alternate&&!Te)return We(t),null}else 2*Qt()-s.renderingStartTime>Pr&&n!==536870912&&(t.flags|=128,c=!0,li(s,!1),t.lanes=4194304);s.isBackwards?(o.sibling=t.child,t.child=o):(e=s.last,e!==null?e.sibling=o:t.child=o,s.last=o)}if(s.tail!==null){e=s.tail;e:{for(n=e;n!==null;){if(n.alternate!==null){n=!1;break e}n=n.sibling}n=!0}return s.rendering=e,s.tail=e.sibling,s.renderingStartTime=Qt(),e.sibling=null,o=St.current,o=c?o&1|2:o&1,s.tailMode==="visible"||s.tailMode==="collapsed"||!n||Te?Pa(t,o):(n=o,Fe(Nt,t),Fe(St,n),At===null&&(At=t)),Te&&Kn(t,s.treeForkCount),e}return We(t),null;case 22:case 23:return Jt(t),qu(),s=t.memoizedState!==null,e!==null?e.memoizedState!==null!==s&&(t.flags|=8192):s&&(t.flags|=8192),s?(n&536870912)!==0&&(t.flags&128)===0&&(We(t),t.subtreeFlags&6&&(t.flags|=8192)):We(t),n=t.updateQueue,n!==null&&Lr(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),s=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(s=t.memoizedState.cachePool.pool),s!==n&&(t.flags|=2048),e!==null&&tt(Fl),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),Jn(rt),We(t),null;case 25:return null;case 30:return t.flags|=33554432,We(t),null}throw Error(u(156,t.tag))}function Ky(e,t){switch(Eu(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Jn(rt),ks(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return Qi(t),null;case 31:if(t.memoizedState!==null){if(Jt(t),t.alternate===null)throw Error(u(340));Zl()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(Jt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(u(340));Zl()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return Gu(t),e=t.flags,e&65536?(t.flags=e&-65537|128,e=t.memoizedState,e!==null&&(e.rendering=null,e.tail=null),t.flags|=4,t):null;case 4:return ks(),null;case 10:return Jn(t.type),null;case 22:case 23:return Jt(t),qu(),e!==null&&tt(Fl),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return Jn(rt),null;case 25:return null;default:return null}}function Sp(e,t){switch(Eu(t),t.tag){case 3:Jn(rt),ks();break;case 26:case 27:case 5:Qi(t);break;case 4:ks();break;case 31:t.memoizedState!==null&&Jt(t);break;case 13:Jt(t);break;case 19:Gu(t);break;case 10:Jn(t.type);break;case 22:case 23:Jt(t),qu(),e!==null&&tt(Fl);break;case 24:Jn(rt)}}function si(e,t){try{var n=t.updateQueue,s=n!==null?n.lastEffect:null;if(s!==null){var c=s.next;n=c;do{if((n.tag&e)===e){s=void 0;var o=n.create,g=n.inst;s=o(),g.destroy=s}n=n.next}while(n!==c)}}catch(N){Ye(t,t.return,N)}}function kl(e,t,n){try{var s=t.updateQueue,c=s!==null?s.lastEffect:null;if(c!==null){var o=c.next;s=o;do{if((s.tag&e)===e){var g=s.inst,N=g.destroy;if(N!==void 0){g.destroy=void 0,c=t;var C=n,R=N;try{R()}catch(H){Ye(c,C,H)}}}s=s.next}while(s!==o)}}catch(H){Ye(t,t.return,H)}}function wp(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{mm(t,n)}catch(s){Ye(e,e.return,s)}}}function Tp(e,t,n){n.props=ns(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(s){Ye(e,t,s)}}function _n(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var s=e.stateNode;break;case 30:var c=e.stateNode,o=Qn(e.memoizedProps,c);(c.ref===null||c.ref.name!==o)&&(c.ref=Mg(o)),s=c.ref;break;case 7:if(e.stateNode===null){var g=new tn(e);y(e.child,!1,Hk,g,void 0,void 0),e.stateNode=g}s=e.stateNode;break;default:s=e.stateNode}typeof n=="function"?e.refCleanup=n(s):n.current=s}}catch(N){Ye(e,t,N)}}function wt(e,t){var n=e.ref,s=e.refCleanup;if(n!==null)if(typeof s=="function")try{s()}catch(c){Ye(e,t,c)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(c){Ye(e,t,c)}else n.current=null}function qr(e,t){if((e.tag===5||e.tag===27||e.tag===6)&&e.alternate===null&&t!==null)for(var n=0;n<t.length;n++)Bg(e.stateNode,t[n])}function Ep(e){for(var t=e.return;t!==null&&(ko(t)&&Bg(e.stateNode,t.stateNode),!yo(t));)t=t.return}function ai(e){for(var t=e.return;t!==null&&(ko(t)&&Bk(e.stateNode,t.stateNode),!yo(t));)t=t.return}function yo(e){return e.tag===5||e.tag===3||e.tag===27}function ko(e){return e&&e.tag===7&&e.stateNode!==null}function jo(e){var t=e.type,n=e.memoizedProps,s=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":n.autoFocus&&s.focus();break e;case"img":n.src?s.src=n.src:n.srcSet&&(s.srcset=n.srcSet)}}catch(c){Ye(e,e.return,c)}}function No(e,t,n){try{var s=e.stateNode;yk(s,e.type,n,t),s[Dt]=t}catch(c){Ye(e,e.return,c)}}function Cp(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Cl(e.type)||e.tag===4}function So(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||Cp(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&Cl(e.type)||e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function wo(e,t,n,s){var c=e.tag;if(c===5||c===6)c=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(c,t):(t=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,t.appendChild(c),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Cn)),qr(e,s),De=!0;else if(c!==4&&(c===27&&(qr(e,s),s=null,Cl(e.type)&&(n=e.stateNode,t=null)),e=e.child,e!==null))for(wo(e,t,n,s),e=e.sibling;e!==null;)wo(e,t,n,s),e=e.sibling}function Yr(e,t,n,s){var c=e.tag;if(c===5||c===6)c=e.stateNode,t?n.insertBefore(c,t):n.appendChild(c),qr(e,s),De=!0;else if(c!==4&&(c===27&&(qr(e,s),s=null,Cl(e.type)&&(n=e.stateNode)),e=e.child,e!==null))for(Yr(e,t,n,s),e=e.sibling;e!==null;)Yr(e,t,n,s),e=e.sibling}function Ap(e){var t=e.stateNode,n=e.memoizedProps;try{for(var s=e.type,c=t.attributes;c.length;)t.removeAttributeNode(c[0]);Tt(t,s,n),t[kt]=e,t[Dt]=n}catch(o){Ye(e,e.return,o)}}var Gr=!1,Ft=null;function zp(e){(e.tag===30||(e.subtreeFlags&33554432)!==0)&&(Gr=!0)}var On=null;function _p(){var e=On;return On=null,e}var $t=0;function Qs(e,t,n,s,c){return $t=0,Op(e.child,t,n,s,c)}function Op(e,t,n,s,c){for(var o=!1;e!==null;){if(e.tag===5){var g=e.stateNode;if(s!==null){var N=cd(g);s.push(N),N.view&&(o=!0)}else o||cd(g).view&&(o=!0);Gr=!0,_g(g,$t===0?t:t+"_"+$t,n),$t++}else(e.tag!==22||e.memoizedState===null)&&(e.tag===30&&c||Op(e.child,t,n,s,c)&&(o=!0));e=e.sibling}return o}function Mn(e,t){for(;e!==null;)e.tag===5?Og(e.stateNode,e.memoizedProps):(e.tag!==22||e.memoizedState===null)&&(e.tag===30&&t||Mn(e.child,t)),e=e.sibling}function Xr(e){if((e.subtreeFlags&18874368)!==0)for(e=e.child;e!==null;){if((e.tag!==22||e.memoizedState===null)&&(Xr(e),e.tag===30&&(e.flags&18874368)!==0&&e.stateNode.paired)){var t=e.memoizedProps;if(t.name==null||t.name==="auto")throw Error(u(544));var n=t.name;t=Zn(t.default,t.share),t!=="none"&&(Qs(e,n,t,null,!1)||Mn(e.child,!1))}e=e.sibling}}function To(e,t){if(e.tag===30){var n=e.stateNode,s=e.memoizedProps,c=Qn(s,n),o=Zn(s.default,n.paired?s.share:s.enter);o!=="none"?Qs(e,c,o,null,!1)?(Xr(e),n.paired||t||Ws(e,s.onEnter)):Mn(e.child,!1):Xr(e)}else if((e.subtreeFlags&33554432)!==0)for(e=e.child;e!==null;)To(e,t),e=e.sibling;else Xr(e)}function Eo(e){if(Ft!==null&&Ft.size!==0){var t=Ft;if((e.subtreeFlags&18874368)!==0)for(e=e.child;e!==null;){if(e.tag!==22||e.memoizedState===null){if(e.tag===30&&(e.flags&18874368)!==0){var n=e.memoizedProps,s=n.name;if(s!=null&&s!=="auto"){var c=t.get(s);if(c!==void 0){var o=Zn(n.default,n.share);if(o!=="none"&&(Qs(e,s,o,null,!1)?(o=e.stateNode,c.paired=o,o.paired=c,Ws(e,n.onShare)):Mn(e.child,!1)),t.delete(s),t.size===0)break}}}Eo(e)}e=e.sibling}}}function Co(e){if(e.tag===30){var t=e.memoizedProps,n=Qn(t,e.stateNode),s=Ft!==null?Ft.get(n):void 0,c=Zn(t.default,s!==void 0?t.share:t.exit);c!=="none"&&(Qs(e,n,c,null,!1)?s!==void 0?(c=e.stateNode,s.paired=c,c.paired=s,Ft.delete(n),Ws(e,t.onShare)):Ws(e,t.onExit):Mn(e.child,!1)),Ft!==null&&Eo(e)}else if((e.subtreeFlags&33554432)!==0)for(e=e.child;e!==null;)Co(e),e=e.sibling;else Ft!==null&&Eo(e)}function Mp(e){for(e=e.child;e!==null;){if(e.tag===30){var t=e.memoizedProps,n=Qn(t,e.stateNode);t=Zn(t.default,t.update),e.flags&=-5,t!=="none"&&Qs(e,n,t,e.memoizedState=[],!1)}else(e.subtreeFlags&33554432)!==0&&Mp(e);e=e.sibling}}function Ao(e){if((e.subtreeFlags&18874368)!==0)for(e=e.child;e!==null;){if(e.tag!==22||e.memoizedState===null){if(e.tag===30&&(e.flags&18874368)!==0){var t=e.stateNode;t.paired!==null&&(t.paired=null,Mn(e.child,!1))}Ao(e)}e=e.sibling}}function Qr(e){if(e.tag===30)e.stateNode.paired=null,Mn(e.child,!1),Ao(e);else if((e.subtreeFlags&33554432)!==0)for(e=e.child;e!==null;)Qr(e),e=e.sibling;else Ao(e)}function Rp(e){for(e=e.child;e!==null;)e.tag===30?Mn(e.child,!1):(e.subtreeFlags&33554432)!==0&&Rp(e),e=e.sibling}function zo(e,t,n,s,c,o,g){for(var N=!1;t!==null;){if(t.tag===5){var C=t.stateNode;if(o!==null&&$t<o.length){var R=o[$t],H=cd(C);(R.view||H.view)&&(N=!0);var Y;if(Y=(e.flags&4)===0)if(H.clip)Y=!0;else{Y=R.rect;var O=H.rect;Y=Y.y!==O.y||Y.x!==O.x||Y.height!==O.height||Y.width!==O.width}Y&&(e.flags|=4),H.abs?H=!R.abs:(R=R.rect,H=H.rect,H=R.height!==H.height||R.width!==H.width),H&&(e.flags|=32)}else e.flags|=32;(e.flags&4)!==0&&_g(C,$t===0?n:n+"_"+$t,c),N&&(e.flags&4)!==0||(On===null&&(On=[]),On.push(C,$t===0?s:s+"_"+$t,t.memoizedProps)),$t++}else(t.tag!==22||t.memoizedState===null)&&(t.tag===30&&g?e.flags|=t.flags&32:zo(e,t.child,n,s,c,o,g)&&(N=!0));t=t.sibling}return N}function Dp(e,t){for(e=e.child;e!==null;){if(e.tag===30){var n=e.memoizedProps,s=e.stateNode,c=Qn(n,s),o=Zn(n.default,n.update),g;g=e.memoizedState,e.memoizedState=null,s=e;var N=e.child;$t=0,c=zo(s,N,c,c,o,g,!1),(e.flags&4)!==0&&c&&Ws(e,n.onUpdate)}else(e.subtreeFlags&33554432)!==0&&Dp(e);e=e.sibling}}var vt=!1,Be=!1,Rn=!1,_o=!1,Up=typeof WeakSet=="function"?WeakSet:Set,xt=null,Dn=!1,ii=!1,Zr=!1,Oo=!1;function Iy(e,t,n){if(e=e.containerInfo,ld=ua,e=Lh(e),vu(e)){if("selectionStart"in e)var s={start:e.selectionStart,end:e.selectionEnd};else e:{s=(s=e.ownerDocument)&&s.defaultView||window;var c=s.getSelection&&s.getSelection();if(c&&c.rangeCount!==0){s=c.anchorNode;var o=c.anchorOffset,g=c.focusNode;c=c.focusOffset;try{s.nodeType,g.nodeType}catch{s=null;break e}var N=0,C=-1,R=-1,H=0,Y=0,O=e,$=null;t:for(;;){for(var ee;O!==s||o!==0&&O.nodeType!==3||(C=N+o),O!==g||c!==0&&O.nodeType!==3||(R=N+c),O.nodeType===3&&(N+=O.nodeValue.length),(ee=O.firstChild)!==null;)$=O,O=ee;for(;;){if(O===e)break t;if($===s&&++H===o&&(C=N),$===g&&++Y===c&&(R=N),(ee=O.nextSibling)!==null)break;O=$,$=O.parentNode}O=ee}s=C===-1||R===-1?null:{start:C,end:R}}else s=null}s=s||{start:0,end:0}}else s=null;for(sd={focusedElem:e,selectionRange:s},ua=!1,n=(n&335544064)===n,xt=t,t=n?9270:1024;xt!==null;){if(e=xt,n&&(s=e.deletions,s!==null))for(o=0;o<s.length;o++)n&&Co(s[o]);if(e.alternate===null&&(e.flags&2)!==0)n&&zp(e),Vr(n);else{if(e.tag===22){if(s=e.alternate,e.memoizedState!==null){s!==null&&s.memoizedState===null&&n&&Co(s),Vr(n);continue}else if(s!==null&&s.memoizedState!==null){n&&zp(e),Vr(n);continue}}s=e.child,(e.subtreeFlags&t)!==0&&s!==null?(s.return=e,xt=s):(n&&Mp(e),Vr(n))}}Ft=null}function Vr(e){for(;xt!==null;){var t=xt,n=e,s=t.alternate,c=t.flags;switch(t.tag){case 0:case 11:case 15:break;case 1:if((c&1024)!==0&&s!==null){n=void 0,c=s.memoizedProps,s=s.memoizedState;var o=t.stateNode;try{var g=ns(t.type,c);n=o.getSnapshotBeforeUpdate(g,s),o.__reactInternalSnapshotBeforeUpdate=n}catch(N){Ye(t,t.return,N)}}break;case 3:if((c&1024)!==0){if(s=t.stateNode.containerInfo,n=s.nodeType,n===9)dd(s);else if(n===1)switch(s.nodeName){case"HEAD":case"HTML":case"BODY":dd(s);break;default:s.textContent=""}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;case 30:n&&s!==null&&(n=Qn(s.memoizedProps,s.stateNode),c=t.memoizedProps,c=Zn(c.default,c.update),c!=="none"&&Qs(s,n,c,s.memoizedState=[],!0));break;default:if((c&1024)!==0)throw Error(u(163))}if(s=t.sibling,s!==null){s.return=t.return,xt=s;break}xt=t.return}}function $p(e,t,n){var s=n.flags;switch(n.tag){case 0:case 11:case 15:Un(e,n),s&4&&si(5,n);break;case 1:if(Un(e,n),s&4)if(e=n.stateNode,t===null)try{e.componentDidMount()}catch(g){Ye(n,n.return,g)}else{var c=ns(n.type,t.memoizedProps);t=t.memoizedState;try{e.componentDidUpdate(c,t,e.__reactInternalSnapshotBeforeUpdate)}catch(g){Ye(n,n.return,g)}}s&64&&wp(n),s&512&&_n(n,n.return);break;case 3:if(Un(e,n),s&64&&(e=n.updateQueue,e!==null)){if(t=null,n.child!==null)switch(n.child.tag){case 27:case 5:t=n.child.stateNode;break;case 1:t=n.child.stateNode}try{mm(e,t)}catch(g){Ye(n,n.return,g)}}break;case 27:t===null&&s&4&&Ap(n);case 26:case 5:Un(e,n),t===null&&s&4&&jo(n),s&512&&_n(n,n.return);break;case 12:Un(e,n);break;case 31:Un(e,n),s&4&&qp(e,n);break;case 13:Un(e,n),s&4&&Yp(e,n),s&64&&(e=n.memoizedState,e!==null&&(e=e.dehydrated,e!==null&&(n=rk.bind(null,n),Yk(e,n))));break;case 22:if(s=n.memoizedState!==null||vt,!s){var o=t!==null&&t.memoizedState!==null||Be;t=vt,c=Be,vt=s,(Be=o)&&!c?(s=2,(n.subtreeFlags&8772)!==0&&(s|=1),yn(e,n,s)):Un(e,n),vt=t,Be=c}break;case 30:Un(e,n),s&512&&_n(n,n.return);break;case 7:s&512&&_n(n,n.return);default:Un(e,n)}}function Mo(e,t){for(e=e.child;e!==null;)Hp(e,t),e=e.sibling}function Hp(e,t){switch(e.tag){case 5:case 26:try{var n=e.stateNode;if(t){var s=n.style;typeof s.setProperty=="function"?s.setProperty("display","none","important"):s.display="none"}else{var c=e.stateNode,o=e.memoizedProps.style,g=o!=null&&o.hasOwnProperty("display")?o.display:null;c.style.display=g==null||typeof g=="boolean"?"":(""+g).trim()}}catch(C){Ye(e,e.return,C)}Ro(e,t);break;case 6:try{e.stateNode.nodeValue=t?"":e.memoizedProps,De=!0}catch(C){Ye(e,e.return,C)}break;case 18:try{var N=e.stateNode;t?zg(N,!0):zg(e.stateNode,!1)}catch(C){Ye(e,e.return,C)}break;case 22:case 23:e.memoizedState===null&&Mo(e,t);break;default:Mo(e,t)}}function Ro(e,t){if(e.subtreeFlags&67108864)for(e=e.child;e!==null;){e:{var n=e,s=t;switch(n.tag){case 4:Hp(n,s);break e;case 22:n.memoizedState===null&&Ro(n,s);break e;default:Ro(n,s)}}e=e.sibling}}function Bp(e){var t=e.alternate;t!==null&&(e.alternate=null,Bp(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&Pi(t)),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}var et=null,Ht=!1;function xn(e,t,n){for(n=n.child;n!==null;)Lp(e,t,n),n=n.sibling}function Lp(e,t,n){if(Zt&&typeof Zt.onCommitFiberUnmount=="function")try{Zt.onCommitFiberUnmount(Aa,n)}catch{}switch(n.tag){case 26:Be||wt(n,t),xn(e,t,n),n.memoizedState?n.memoizedState.count--:n.stateNode&&!Be&&(n=n.stateNode,n.parentNode.removeChild(n));break;case 27:Be||wt(n,t),ai(n);var s=et,c=Ht;Cl(n.type)&&(et=n.stateNode,Ht=!1),xn(e,t,n),Xg(n.stateNode,n.type,n.memoizedProps),et=s,Ht=c;break;case 5:Be||wt(n,t),ai(n);case 6:if(n.tag===6&&ai(n),s=et,c=Ht,et=null,xn(e,t,n),et=s,Ht=c,et!==null)if(Ht)try{(et.nodeType===9?et.body:et.nodeName==="HTML"?et.ownerDocument.body:et).removeChild(n.stateNode),De=!0}catch(o){Ye(n,t,o)}else try{et.removeChild(n.stateNode),De=!0}catch(o){Ye(n,t,o)}break;case 18:et!==null&&(Ht?(e=et,Ag(e.nodeType===9?e.body:e.nodeName==="HTML"?e.ownerDocument.body:e,n.stateNode),oa(e)):Ag(et,n.stateNode));break;case 4:s=et,c=Ht,et=n.stateNode.containerInfo,Ht=!0,xn(e,t,n),et=s,Ht=c;break;case 0:case 11:case 14:case 15:kl(2,n,t),Be||kl(4,n,t),xn(e,t,n);break;case 1:Be||(wt(n,t),s=n.stateNode,typeof s.componentWillUnmount=="function"&&Tp(n,t,s)),xn(e,t,n);break;case 21:xn(e,t,n);break;case 22:Be=(s=Be)||n.memoizedState!==null,xn(e,t,n),Be=s;break;case 30:wt(n,t),xn(e,t,n);break;case 7:Be||wt(n,t),xn(e,t,n);break;default:xn(e,t,n)}}function qp(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null))){e=e.dehydrated;try{oa(e)}catch(n){Ye(t,t.return,n)}}}function Yp(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null&&(e=e.dehydrated,e!==null))))try{oa(e)}catch(n){Ye(t,t.return,n)}}function Jy(e){switch(e.tag){case 31:case 13:case 19:var t=e.stateNode;return t===null&&(t=e.stateNode=new Up),t;case 22:return e=e.stateNode,t=e._retryCache,t===null&&(t=e._retryCache=new Up),t;default:throw Error(u(435,e.tag))}}function Kr(e,t){var n=Jy(e);t.forEach(function(s){if(!n.has(s)){n.add(s);var c=ck.bind(null,e,s);s.then(c,c)}})}function Mt(e,t,n){var s=t.deletions;if(s!==null)for(var c=0;c<s.length;c++){var o=s[c],g=e,N=t,C=N;e:for(;C!==null;){switch(C.tag){case 27:if(Cl(C.type)){et=C.stateNode,Ht=!1;break e}break;case 5:et=C.stateNode,Ht=!1;break e;case 3:case 4:et=C.stateNode.containerInfo,Ht=!0;break e}C=C.return}if(et===null)throw Error(u(160));Lp(g,N,o),et=null,Ht=!1,g=o.alternate,g!==null&&(g.return=null),o.return=null}if(t.subtreeFlags&13886)for(t=t.child;t!==null;)Gp(t,e,n),t=t.sibling}var bn=null;function Gp(e,t,n){var s=e.alternate,c=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(c&4&&(s=e.updateQueue,s=s!==null?s.events:null,s!==null))for(var o=0;o<s.length;o++){var g=s[o];g.ref.impl=g.nextImpl}Mt(t,e,n),Rt(e),c&4&&(kl(3,e,e.return),si(3,e),kl(5,e,e.return));break;case 1:Mt(t,e,n),Rt(e),c&512&&(Be||s===null||wt(s,s.return)),c&64&&vt&&(e=e.updateQueue,e!==null&&(t=e.callbacks,t!==null&&(n=e.shared.hiddenCallbacks,e.shared.hiddenCallbacks=n===null?t:n.concat(t))));break;case 26:if(o=bn,Mt(t,e,n),Rt(e),c&512&&(Be||s===null||wt(s,s.return)),c&4)if(c=s!==null?s.memoizedState:null,n=e.memoizedState,s===null)if(n===null)if(e.stateNode===null)if(vt)e.stateNode=Tg(e.type,e.memoizedProps,t.containerInfo,e);else{e:{t=e.type,n=e.memoizedProps,c=o.ownerDocument||o;t:switch(t){case"title":s=c.getElementsByTagName("title")[0],(!s||s[Oa]||s[kt]||s.namespaceURI==="http://www.w3.org/2000/svg"||s.hasAttribute("itemprop"))&&(s=c.createElement(t),c.head.insertBefore(s,c.querySelector("head > title"))),Tt(s,t,n),s[kt]=e,pt(s),t=s;break e;case"link":if(o=Jg("link","href",c).get(t+(n.href||""))){for(g=0;g<o.length;g++)if(s=o[g],s.getAttribute("href")===(n.href==null||n.href===""?null:n.href)&&s.getAttribute("rel")===(n.rel==null?null:n.rel)&&s.getAttribute("title")===(n.title==null?null:n.title)&&s.getAttribute("crossorigin")===(n.crossOrigin==null?null:n.crossOrigin)){o.splice(g,1);break t}}s=c.createElement(t),Tt(s,t,n),c.head.appendChild(s);break;case"meta":if(o=Jg("meta","content",c).get(t+(n.content||""))){for(g=0;g<o.length;g++)if(s=o[g],s.getAttribute("content")===(n.content==null?null:""+n.content)&&s.getAttribute("name")===(n.name==null?null:n.name)&&s.getAttribute("property")===(n.property==null?null:n.property)&&s.getAttribute("http-equiv")===(n.httpEquiv==null?null:n.httpEquiv)&&s.getAttribute("charset")===(n.charSet==null?null:n.charSet)){o.splice(g,1);break t}}s=c.createElement(t),Tt(s,t,n),c.head.appendChild(s);break;default:throw Error(u(468,t))}s[kt]=e,pt(s),t=s}e.stateNode=t}else vt||xd(o,e.type,e.stateNode);else e.stateNode=Ig(o,n,e.memoizedProps);else c!==n?(c===null?(t=s.stateNode,t===null||Be||t.parentNode.removeChild(t)):c.count--,n===null?vt||xd(o,e.type,e.stateNode):Ig(o,n,e.memoizedProps)):n===null&&e.stateNode!==null&&No(e,e.memoizedProps,s.memoizedProps);break;case 27:Mt(t,e,n),Rt(e),c&512&&(Be||s===null||wt(s,s.return)),s!==null&&c&4&&No(e,e.memoizedProps,s.memoizedProps);break;case 5:if(o=Rn,Rn=!1,Mt(t,e,n),Rn=o,Rt(e),c&512&&(Be||s===null||wt(s,s.return)),e.flags&32){t=e.stateNode;try{Es(t,""),De=!0}catch(H){Ye(e,e.return,H)}}c&4&&e.stateNode!=null&&(t=e.memoizedProps,No(e,t,s!==null?s.memoizedProps:t)),c&1024&&(_o=!0);break;case 6:if(Mt(t,e,n),Rt(e),c&4){if(e.stateNode===null)throw Error(u(162));t=e.memoizedProps,n=e.stateNode;try{n.nodeValue=t,De=!0}catch(H){Ye(e,e.return,H)}}break;case 3:if(De=!1,uc=null,o=bn,bn=pi(t.containerInfo),Mt(t,e,n),bn=o,Rt(e),c&4&&s!==null&&s.memoizedState.isDehydrated)try{oa(t.containerInfo)}catch(H){Ye(e,e.return,H)}_o&&(_o=!1,Xp(e)),De=!1;break;case 4:c=Rn,Rn=vt,s=oh(),o=bn,bn=pi(e.stateNode.containerInfo),Mt(t,e,n),Rt(e),bn=o,De&&ii&&(Zr=!0),De=s,Rn=c;break;case 12:Mt(t,e,n),Rt(e);break;case 31:Mt(t,e,n),Rt(e),c&4&&(t=e.updateQueue,t!==null&&(e.updateQueue=null,Kr(e,t)));break;case 13:Mt(t,e,n),Rt(e),e.child.flags&8192&&e.memoizedState!==null!=(s!==null&&s.memoizedState!==null)&&(Fr=Qt()),c&4&&(t=e.updateQueue,t!==null&&(e.updateQueue=null,Kr(e,t)));break;case 22:o=e.memoizedState!==null,g=s!==null&&s.memoizedState!==null;var N=vt,C=Be,R=Rn;vt=N||o,Rn=R||o,Be=C||g,Mt(t,e,n),Be=C,Rn=R,vt=N,Rt(e),c&8192&&(t=e.stateNode,t._visibility=o?t._visibility&-2:t._visibility|1,!o||s===null||g||vt||Be||(t=g||Be,n=vt,s=Be,vt=o||vt,Be=t,jl(e,2),vt=n,Be=s),!o&&Rn||Mo(e,o)),c&4&&(t=e.updateQueue,t!==null&&(n=t.retryQueue,n!==null&&(t.retryQueue=null,Kr(e,n))));break;case 19:Mt(t,e,n),Rt(e),c&4&&(t=e.updateQueue,t!==null&&(e.updateQueue=null,Kr(e,t)));break;case 30:c&512&&(Be||s===null||wt(s,s.return)),c=oh(),o=ii,g=(n&335544064)===n,N=e.memoizedProps,ii=g&&Zn(N.default,N.update)!=="none",Mt(t,e,n),Rt(e),g&&s!==null&&De&&(e.flags|=4),ii=o,De=c;break;case 21:break;case 7:c&512&&(Be||s===null||wt(s,s.return)),s&&s.stateNode!==null&&(s.stateNode._fragmentFiber=e);default:Mt(t,e,n),Rt(e)}}function Rt(e){var t=e.flags;if(t&2){try{for(var n,s=e.return;s!==null;){if(Cp(s)){n=s;break}s=s.return}s=null;for(var c=e.return;c!==null;){if(ko(c)){var o=c.stateNode;s===null?s=[o]:s.push(o)}if(yo(c))break;c=c.return}var g=s;if(n==null)throw Error(u(160));switch(n.tag){case 27:var N=n.stateNode,C=So(e);Yr(e,C,N,g);break;case 5:var R=n.stateNode;n.flags&32&&(Es(R,""),n.flags&=-33);var H=So(e);Yr(e,H,R,g);break;case 3:case 4:var Y=n.stateNode.containerInfo,O=So(e);wo(e,O,Y,g);break;default:throw Error(u(161))}}catch($){Ye(e,e.return,$)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function Xp(e){if(e.subtreeFlags&1024)for(e=e.child;e!==null;){var t=e;Xp(t),t.tag===5&&t.flags&1024&&(t=t.stateNode,ua=!0,t.reset(),ua=!1),e=e.sibling}}function Zs(e,t){if(t.subtreeFlags&9270)for(t=t.child;t!==null;)Qp(t,e),t=t.sibling;else Dp(t)}function Qp(e,t){var n=e.alternate;if(n===null)To(e,!1);else switch(e.tag){case 3:if(Oo=Dn=!1,_p(),Zs(t,e),!Dn&&!Zr){if(e=On,e!==null)for(var s=0;s<e.length;s+=3){n=e[s];var c=e[s+1];Og(n,e[s+2]),n=n.ownerDocument.documentElement,n!==null&&n.animate({opacity:[0,0],pointerEvents:["none","none"]},{duration:0,fill:"forwards",pseudoElement:"::view-transition-group("+c+")"})}e=t.containerInfo,e=e.nodeType===9?e.documentElement:e.ownerDocument.documentElement,e!==null&&e.style.viewTransitionName===""&&(e.style.viewTransitionName="none",e.animate({opacity:[0,0],pointerEvents:["none","none"]},{duration:0,fill:"forwards",pseudoElement:"::view-transition-group(root)"}),e.animate({width:[0,0],height:[0,0]},{duration:0,fill:"forwards",pseudoElement:"::view-transition"})),Oo=!0}On=null;break;case 5:Zs(t,e);break;case 4:s=Dn,Dn=!1,Zs(t,e),Dn&&(Zr=!0),Dn=s;break;case 22:e.memoizedState===null&&(n.memoizedState!==null?To(e,!1):Zs(t,e));break;case 30:s=Dn,c=_p(),Dn=!1,Zs(t,e),Dn&&(e.flags|=4);var o=e.memoizedProps,g=e.stateNode;t=Qn(o,g),g=Qn(n.memoizedProps,g);var N=Zn(o.default,o.update);N==="none"?t=!1:(o=n.memoizedState,n.memoizedState=null,n=e.child,$t=0,t=zo(e,n,t,g,N,o,!0),$t!==(o===null?0:o.length)&&(e.flags|=32)),(e.flags&4)!==0&&t?(Ws(e,e.memoizedProps.onUpdate),On=c):c!==null&&(c.push.apply(c,On),On=c),Dn=(e.flags&32)!==0?!0:s;break;default:Zs(t,e)}}function Un(e,t){if(t.subtreeFlags&8772)for(t=t.child;t!==null;)$p(e,t.alternate,t),t=t.sibling}function jl(e,t){for(e=e.child;e!==null;){var n=e,s=t;switch(n.tag){case 0:case 11:case 14:case 15:kl(4,n,n.return),jl(n,s);break;case 1:wt(n,n.return);var c=n.stateNode;typeof c.componentWillUnmount=="function"&&Tp(n,n.return,c),jl(n,s);break;case 27:(s&2)!==0&&Xg(n.stateNode,n.type,n.memoizedProps);case 5:wt(n,n.return),n.tag!==5&&n.tag!==27||ai(n),jl(n,s);break;case 6:ai(n);break;case 26:wt(n,n.return),c=n.stateNode,n.memoizedState!==null||c===null||Be||c.parentNode.removeChild(c),jl(n,s);break;case 22:n.memoizedState===null&&jl(n,s);break;case 30:wt(n,n.return),jl(n,s);break;case 7:wt(n,n.return);default:jl(n,s)}e=e.sibling}}function yn(e,t,n){for(n=(t.subtreeFlags&8772)!==0?n:n&-2,t=t.child;t!==null;){var s=t.alternate,c=e,o=t,g=o.flags,N=(n&1)!==0;switch(o.tag){case 0:case 11:case 15:yn(c,o,n),si(4,o);break;case 1:if(yn(c,o,n),s=o,c=s.stateNode,typeof c.componentDidMount=="function")try{c.componentDidMount()}catch(H){Ye(s,s.return,H)}if(s=o,c=s.updateQueue,c!==null){var C=s.stateNode;try{var R=c.shared.hiddenCallbacks;if(R!==null)for(c.shared.hiddenCallbacks=null,c=0;c<R.length;c++)hm(R[c],C)}catch(H){Ye(s,s.return,H)}}N&&g&64&&wp(o),_n(o,o.return);break;case 27:(n&2)!==0&&Ap(o);case 5:o.tag!==5&&o.tag!==27||Ep(o),yn(c,o,n),N&&s===null&&g&4&&jo(o),_n(o,o.return);break;case 6:Ep(o);break;case 26:C=o.stateNode,o.memoizedState!==null||C===null||vt||xd(pi(C.ownerDocument),o.type,C),yn(c,o,n),N&&s===null&&g&4&&jo(o),_n(o,o.return);break;case 12:yn(c,o,n);break;case 31:yn(c,o,n),N&&g&4&&qp(c,o);break;case 13:yn(c,o,n),N&&g&4&&Yp(c,o);break;case 22:o.memoizedState===null&&yn(c,o,n),_n(o,o.return);break;case 30:yn(c,o,n),_n(o,o.return);break;case 7:_n(o,o.return);default:yn(c,o,n)}t=t.sibling}}function Do(e,t){var n=null;e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),e=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(e=t.memoizedState.cachePool.pool),e!==n&&(e!=null&&e.refCount++,n!=null&&Qa(n))}function Uo(e,t){e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&Qa(e))}function dn(e,t,n,s){var c=(n&335544064)===n;if(t.subtreeFlags&(c?10262:10256))for(t=t.child;t!==null;)Zp(e,t,n,s),t=t.sibling;else c&&Rp(t)}function Zp(e,t,n,s){var c=(n&335544064)===n;c&&t.alternate===null&&t.return!==null&&t.return.alternate!==null&&Qr(t);var o=t.flags;switch(t.tag){case 0:case 11:case 15:dn(e,t,n,s),o&2048&&si(9,t);break;case 1:dn(e,t,n,s);break;case 3:dn(e,t,n,s),c&&Oo&&(e=e.containerInfo,e=e.nodeType===9?e.body:e.nodeName==="HTML"?e.ownerDocument.body:e,e.style.viewTransitionName==="root"&&(e.style.viewTransitionName=""),e=e.ownerDocument.documentElement,e!==null&&e.style.viewTransitionName==="none"&&(e.style.viewTransitionName="")),o&2048&&(o=null,t.alternate!==null&&(o=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==o&&(t.refCount++,o!=null&&Qa(o)));break;case 12:if(o&2048){dn(e,t,n,s),o=t.stateNode;try{var g=t.memoizedProps,N=g.id,C=g.onPostCommit;typeof C=="function"&&C(N,t.alternate===null?"mount":"update",o.passiveEffectDuration,-0)}catch(R){Ye(t,t.return,R)}}else dn(e,t,n,s);break;case 31:dn(e,t,n,s);break;case 13:dn(e,t,n,s);break;case 23:break;case 22:g=t.stateNode,N=t.alternate,t.memoizedState!==null?(c&&N!==null&&N.memoizedState===null&&Qr(N),g._visibility&2?dn(e,t,n,s):ri(e,t)):(c&&N!==null&&N.memoizedState!==null&&Qr(t),g._visibility&2?dn(e,t,n,s):(g._visibility|=2,Vs(e,t,n,s,(t.subtreeFlags&10256)!==0||!1))),o&2048&&Do(N,t);break;case 24:dn(e,t,n,s),o&2048&&Uo(t.alternate,t);break;case 30:c&&(o=t.alternate,o!==null&&(Mn(o.child,!0),Mn(t.child,!0))),dn(e,t,n,s);break;default:dn(e,t,n,s)}}function Vs(e,t,n,s,c){for(c=c&&((t.subtreeFlags&10256)!==0||!1),t=t.child;t!==null;){var o=e,g=t,N=n,C=s,R=g.flags;switch(g.tag){case 0:case 11:case 15:Vs(o,g,N,C,c),si(8,g);break;case 23:break;case 22:var H=g.stateNode;g.memoizedState!==null?H._visibility&2?Vs(o,g,N,C,c):ri(o,g):(H._visibility|=2,Vs(o,g,N,C,c)),c&&R&2048&&Do(g.alternate,g);break;case 24:Vs(o,g,N,C,c),c&&R&2048&&Uo(g.alternate,g);break;default:Vs(o,g,N,C,c)}t=t.sibling}}function ri(e,t){if(t.subtreeFlags&10256)for(t=t.child;t!==null;){var n=e,s=t,c=s.flags;switch(s.tag){case 22:ri(n,s),c&2048&&Do(s.alternate,s);break;case 24:ri(n,s),c&2048&&Uo(s.alternate,s);break;default:ri(n,s)}t=t.sibling}}var ls=8192;function ss(e,t,n){if(e.subtreeFlags&ls)for(e=e.child;e!==null;)Vp(e,t,n),e=e.sibling}function Vp(e,t,n){switch(e.tag){case 26:ss(e,t,n),e.flags&ls&&(e.memoizedState!==null?n1(n,bn,e.memoizedState,e.memoizedProps):(e=e.stateNode,(t&335544128)===t&&ev(n,e)));break;case 5:ss(e,t,n),e.flags&ls&&(e=e.stateNode,(t&335544128)===t&&ev(n,e));break;case 3:case 4:var s=bn;bn=pi(e.stateNode.containerInfo),ss(e,t,n),bn=s;break;case 22:e.memoizedState===null&&(s=e.alternate,s!==null&&s.memoizedState!==null?(s=ls,ls=16777216,ss(e,t,n),ls=s):ss(e,t,n));break;case 30:if((e.flags&ls)!==0&&(s=e.memoizedProps.name,s!=null&&s!=="auto")){var c=e.stateNode;c.paired=null,Ft===null&&(Ft=new Map),Ft.set(s,c)}ss(e,t,n);break;default:ss(e,t,n)}}function Kp(e){var t=e.alternate;if(t!==null&&(e=t.child,e!==null)){t.child=null;do t=e.sibling,e.sibling=null,e=t;while(e!==null)}}function ci(e){var t=e.deletions;if((e.flags&16)!==0){if(t!==null)for(var n=0;n<t.length;n++){var s=t[n];xt=s,Jp(s,e)}Kp(e)}if(e.subtreeFlags&10256)for(e=e.child;e!==null;)Ip(e),e=e.sibling}function Ip(e){switch(e.tag){case 0:case 11:case 15:ci(e),e.flags&2048&&kl(9,e,e.return);break;case 3:ci(e);break;case 12:ci(e);break;case 22:var t=e.stateNode;e.memoizedState!==null&&t._visibility&2&&(e.return===null||e.return.tag!==13)?(t._visibility&=-3,Ir(e)):ci(e);break;default:ci(e)}}function Ir(e){var t=e.deletions;if((e.flags&16)!==0){if(t!==null)for(var n=0;n<t.length;n++){var s=t[n];xt=s,Jp(s,e)}Kp(e)}for(e=e.child;e!==null;){switch(t=e,t.tag){case 0:case 11:case 15:kl(8,t,t.return),Ir(t);break;case 22:n=t.stateNode,n._visibility&2&&(n._visibility&=-3,Ir(t));break;default:Ir(t)}e=e.sibling}}function Jp(e,t){for(;xt!==null;){var n=xt;switch(n.tag){case 0:case 11:case 15:kl(8,n,t);break;case 23:case 22:if(n.memoizedState!==null&&n.memoizedState.cachePool!==null){var s=n.memoizedState.cachePool.pool;s!=null&&s.refCount++}break;case 24:Qa(n.memoizedState.cache)}if(s=n.child,s!==null)s.return=n,xt=s;else e:for(n=e;xt!==null;){s=xt;var c=s.sibling,o=s.return;if(Bp(s),s===n){xt=null;break e}if(c!==null){c.return=o,xt=c;break e}xt=o}}}var Fy={getCacheForType:function(e){var t=jt(rt),n=t.data.get(e);return n===void 0&&(n=e(),t.data.set(e,n)),n},cacheSignal:function(){return jt(rt).controller.signal}},Py=typeof WeakMap=="function"?WeakMap:Map,He=0,Ke=null,Ce=null,ze=0,qe=0,Pt=null,Nl=!1,Ks=!1,$o=!1,tl=0,at=0,Sl=0,as=0,Jr=0,Wt=0,Is=0,ui=null,Bt=null,Ho=!1,Fr=0,Fp=0,Pr=1/0,Wr=null,wl=null,nt=0,kn=null,is=null,$n=0,Bo=0,Lo=null,Pp=null,Js=null,Fs=null,Ps=null,oi=0,ec=null;function en(){return(He&2)!==0&&ze!==0?ze&-ze:U.T!==null?Jo():th()}function Wp(){if(Wt===0)if((ze&536870912)===0||Te){var e=Ki;Ki<<=1,(Ki&3932160)===0&&(Ki=262144),Wt=e}else Wt=536870912;return e=Nt.current,e!==null&&(e.flags|=32),Wt}function Ws(e,t){if(t!=null){var n=e.stateNode,s=n.ref;s===null&&(s=n.ref=Mg(Qn(e.memoizedProps,n))),Fs===null&&(Fs=[]),Fs.push(t.bind(null,s))}}function Lt(e,t,n){(e===Ke&&(qe===2||qe===9)||e.cancelPendingCommit!==null)&&(ea(e,0),Tl(e,ze,Wt,!1)),_a(e,n),((He&2)===0||e!==Ke)&&(e===Ke&&((He&2)===0&&(as|=n),at===4&&Tl(e,ze,Wt,!1)),Hn(e))}function eg(e,t,n){if((He&6)!==0)throw Error(u(327));var s=!n&&(t&127)===0&&(t&e.expiredLanes)===0||za(e,t),c=s?tk(e,t):Yo(e,t,!0),o=s;do{if(c===0){Ks&&!s&&Tl(e,t,0,!1);break}else{if(n=e.current.alternate,o&&!Wy(n)){c=Yo(e,t,!1),o=!1;continue}if(c===2){if(o=t,e.errorRecoveryDisabledLanes&o)var g=0;else g=e.pendingLanes&-536870913,g=g!==0?g:g&536870912?536870912:0;if(g!==0){t=g;e:{var N=e;c=ui;var C=N.current.memoizedState.isDehydrated;if(C&&(ea(N,g).flags|=256),g=Yo(N,g,!1),g!==2&&g!==6){if($o&&!C){N.errorRecoveryDisabledLanes|=o,as|=o,c=4;break e}o=Bt,Bt=c,o!==null&&(Bt===null?Bt=o:Bt.push.apply(Bt,o))}c=g}if(o=!1,c!==2)continue}}if(c===1){ea(e,0),Tl(e,t,0,!0);break}e:{switch(s=e,o=c,o){case 0:case 1:throw Error(u(345));case 4:if((t&4194048)!==t&&(t&62914560)!==t)break;case 6:Tl(s,t,Wt,!Nl);break e;case 2:Bt=null;break;case 3:case 5:break;default:throw Error(u(329))}if((t&62914560)===t&&(c=Fr+300-Qt(),10<c)){if(Tl(s,t,Wt,!Nl),Ji(s,0,!0)!==0)break e;$n=t,s.timeoutHandle=rd(tg.bind(null,s,n,Bt,Wr,Ho,t,Wt,as,Is,Nl,o,"Throttled",-0,0),c);break e}tg(s,n,Bt,Wr,Ho,t,Wt,as,Is,Nl,o,null,-0,0)}}break}while(!0);Hn(e)}function tg(e,t,n,s,c,o,g,N,C,R,H,Y,O,$){e.timeoutHandle=-1;var ee=t.subtreeFlags,ie=(o&335544064)===o;if(Y=null,(ie||ee&8192||(ee&16785408)===16785408)&&(Y={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:Cn},Ft=null,Vp(t,o,Y),ie&&(ee=Y,ie=e.containerInfo,ie=(ie.nodeType===9?ie:ie.ownerDocument).__reactViewTransition,ie!=null&&(ee.count++,ee.waitingForViewTransition=!0,ee=xi.bind(ee),ie.finished.then(ee,ee))),ee=(o&62914560)===o?Fr-Qt():(o&4194048)===o?Fp-Qt():0,ee=l1(Y,ee),ee!==null)){$n=o,e.cancelPendingCommit=ee(ug.bind(null,e,t,o,n,s,c,g,N,C,R,H,Y,null,O,$)),Tl(e,o,g,!R);return}ug(e,t,o,n,s,c,g,N,C,R,H,Y)}function Wy(e){for(var t=e;;){var n=t.tag;if((n===0||n===11||n===15)&&t.flags&16384&&(n=t.updateQueue,n!==null&&(n=n.stores,n!==null)))for(var s=0;s<n.length;s++){var c=n[s],o=c.getSnapshot;c=c.value;try{if(!It(o(),c))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 Tl(e,t,n,s){t=Jf(e,t),t&=~Jr,t&=~as,e.suspendedLanes|=t,e.pingedLanes&=~t,s&&(e.warmLanes|=t),s=e.expirationTimes;for(var c=t;0<c;){var o=31-Vt(c),g=1<<o;s[o]=-1,c&=~g}n!==0&&Pf(e,n,t)}function tc(){return(He&6)===0?(di(0),!1):!0}function qo(){if(Ce!==null){if(qe===0)var e=Ce.return;else e=Ce,In=Vl=null,Ku(e),Ls=null,Ka=0,e=Ce;for(;e!==null;)Sp(e.alternate,e),e=e.return;Ce=null}}function ea(e,t){var n=e.timeoutHandle;return n!==-1&&(e.timeoutHandle=-1,Nk(n)),n=e.cancelPendingCommit,n!==null&&(e.cancelPendingCommit=null,n()),$n=0,qo(),Ke=e,Ce=n=Vn(e.current,null),ze=t,qe=0,Pt=null,Nl=!1,Ks=za(e,t),$o=!1,Is=Wt=Jr=as=Sl=at=0,Bt=ui=null,Ho=!1,tl=Jf(e,t),ur(),n}function ng(e,t){ke=null,U.H=Rr,t===Bs||t===yr?(t=um(),qe=3):t===Du?(t=um(),qe=4):qe=t===uo?8:t!==null&&typeof t=="object"&&typeof t.then=="function"?6:1,Pt=t,Ce===null&&(at=1,Dr(e,rn(t,e.current)))}function lg(){var e=Nt.current;return e===null?!0:(ze&4194048)===ze?At===null:(ze&62914560)===ze||(ze&536870912)!==0?e===At:!1}function sg(){var e=U.H;return U.H=Rr,e===null?Rr:e}function ag(){var e=U.A;return U.A=Fy,e}function nc(){at=4,Nl||(ze&4194048)!==ze&&Nt.current!==null||(Ks=!0),(Sl&134217727)===0&&(as&134217727)===0||Ke===null||Tl(Ke,ze,Wt,!1)}function Yo(e,t,n){var s=He;He|=2;var c=sg(),o=ag();(Ke!==e||ze!==t)&&(Wr=null,ea(e,t)),t=!1;var g=at;e:do try{if(qe!==0&&Ce!==null){var N=Ce,C=Pt;switch(qe){case 8:qo(),g=6;break e;case 3:case 2:case 9:case 6:Nt.current===null&&(t=!0);var R=qe;if(qe=0,Pt=null,ta(e,N,C,R),n&&Ks){g=0;break e}break;default:R=qe,qe=0,Pt=null,ta(e,N,C,R)}}ek(),g=at;break}catch(H){ng(e,H)}while(!0);return t&&e.shellSuspendCounter++,In=Vl=null,He=s,U.H=c,U.A=o,Ce===null&&(Ke=null,ze=0,ur()),g}function ek(){for(;Ce!==null;)ig(Ce)}function tk(e,t){var n=He;He|=2;var s=sg(),c=ag();Ke!==e||ze!==t?(Wr=null,Pr=Qt()+500,ea(e,t)):Ks=za(e,t);e:do try{if(qe!==0&&Ce!==null){t=Ce;var o=Pt;t:switch(qe){case 1:qe=0,Pt=null,ta(e,t,o,1);break;case 2:case 9:if(rm(o)){qe=0,Pt=null,rg(t);break}t=function(){qe!==2&&qe!==9||Ke!==e||(qe=7),Hn(e)},o.then(t,t);break e;case 3:qe=7;break e;case 4:qe=5;break e;case 7:rm(o)?(qe=0,Pt=null,rg(t)):(qe=0,Pt=null,ta(e,t,o,7));break;case 5:var g=null;switch(Ce.tag){case 26:g=Ce.memoizedState;case 5:case 27:var N=Ce;if(g?Pg(g):N.stateNode.complete){qe=0,Pt=null;var C=N.sibling;if(C!==null)Ce=C;else{var R=N.return;R!==null?(Ce=R,lc(R)):Ce=null}break t}}qe=0,Pt=null,ta(e,t,o,5);break;case 6:qe=0,Pt=null,ta(e,t,o,6);break;case 8:qo(),at=6;break e;default:throw Error(u(462))}}nk();break}catch(H){ng(e,H)}while(!0);return In=Vl=null,U.H=s,U.A=c,He=n,Ce!==null?0:(Ke=null,ze=0,ur(),at)}function nk(){for(;Ce!==null&&!b0();)ig(Ce)}function ig(e){var t=jp(e.alternate,e,tl);e.memoizedProps=e.pendingProps,t===null?lc(e):Ce=t}function rg(e){var t=e,n=t.alternate;switch(t.tag){case 15:case 0:t=pp(n,t,t.pendingProps,t.type,void 0,ze);break;case 11:t=pp(n,t,t.pendingProps,t.type.render,t.ref,ze);break;case 5:Ku(t);var s=t;s===gt&&(Te?(pr(s),s.tag===5&&s.stateNode!=null&&(Pe=s.stateNode)):(pr(s),Te=!0));default:Sp(n,t),t=Ce=Jh(t,tl),t=jp(n,t,tl)}e.memoizedProps=e.pendingProps,t===null?lc(e):Ce=t}function ta(e,t,n,s){In=Vl=null,Ku(t),Ls=null,Ka=0;var c=t.return;try{if(Gy(e,c,t,n,ze)){at=1,Dr(e,rn(n,e.current)),Ce=null;return}}catch(o){if(c!==null)throw Ce=c,o;at=1,Dr(e,rn(n,e.current)),Ce=null;return}t.flags&32768?(Te||s===1?e=!0:Ks||(ze&536870912)!==0?e=!1:(Nl=e=!0,(s===2||s===9||s===3||s===6)&&(s=Nt.current,s!==null&&s.tag===13&&(s.flags|=16384))),cg(t,e)):lc(t)}function lc(e){var t=e;do{if((t.flags&32768)!==0){cg(t,Nl);return}e=t.return;var n=Vy(t.alternate,t,tl);if(n!==null){Ce=n;return}if(t=t.sibling,t!==null){Ce=t;return}Ce=t=e}while(t!==null);at===0&&(at=5)}function cg(e,t){do{var n=Ky(e.alternate,e);if(n!==null){n.flags&=32767,Ce=n;return}if(n=e.return,n!==null&&(n.flags|=32768,n.subtreeFlags=0,n.deletions=null),!t&&(e=e.sibling,e!==null)){Ce=e;return}Ce=e=n}while(e!==null);at=6,Ce=null}function ug(e,t,n,s,c,o,g,N,C,R,H,Y){e.cancelPendingCommit=null;do sc();while(nt!==0);if((He&6)!==0)throw Error(u(327));if(t!==null){if(t===e.current)throw Error(u(177));e===Ke&&(Ce=Ke=null,ze=0),is=t,kn=e,$n=n,Lo=c,Pp=s,lk(e,t,n,g,N,C,Y)}}function lk(e,t,n,s,c,o,g){var N=t.lanes|t.childLanes;if(Bo=N,N|=ju,A0(e,n,N,s,c,o),Fs=null,(n&335544064)===n?(Ps=_y(e),s=10262):(Ps=null,s=10256),(t.subtreeFlags&s)!==0||(t.flags&s)!==0?(e.callbackNode=null,e.callbackPriority=0,uk(Zi,function(){return Zo(),null})):(e.callbackNode=null,e.callbackPriority=0),Gr=!1,s=(t.flags&13878)!==0,(t.subtreeFlags&13878)!==0||s){s=U.T,U.T=null,c=P.p,P.p=2,o=He,He|=4;try{Iy(e,t,n)}finally{He=o,P.p=c,U.T=s}}nt=1,Gr?Js=Ak(g,e.containerInfo,Ps,Go,Xo,ak,Qo,Zo,sk):(Go(),Xo(),Qo())}function sk(e){if(nt!==0){var t=kn.onRecoverableError;t(e,{componentStack:null})}}function ak(){nt===3&&(nt=0,Qp(is,kn),nt=4)}function Go(){if(nt===1){nt=0;var e=kn,t=is,n=$n,s=(t.flags&13878)!==0;if((t.subtreeFlags&13878)!==0||s){s=U.T,U.T=null;var c=P.p;P.p=2;var o=He;He|=4;try{ii=Zr=!1,Gp(t,e,n),n=sd;var g=Lh(e.containerInfo),N=n.focusedElem,C=n.selectionRange;if(g!==N&&N&&N.ownerDocument&&Bh(N.ownerDocument.documentElement,N)){if(C!==null&&vu(N)){var R=C.start,H=C.end;if(H===void 0&&(H=R),"selectionStart"in N)N.selectionStart=R,N.selectionEnd=Math.min(H,N.value.length);else{var Y=N.ownerDocument||document,O=Y&&Y.defaultView||window;if(O.getSelection){var $=O.getSelection(),ee=N.textContent.length,ie=Math.min(C.start,ee),je=C.end===void 0?ie:Math.min(C.end,ee);!$.extend&&ie>je&&(g=je,je=ie,ie=g);var M=Hh(N,ie),z=Hh(N,je);if(M&&z&&($.rangeCount!==1||$.anchorNode!==M.node||$.anchorOffset!==M.offset||$.focusNode!==z.node||$.focusOffset!==z.offset)){var D=Y.createRange();D.setStart(M.node,M.offset),$.removeAllRanges(),ie>je?($.addRange(D),$.extend(z.node,z.offset)):(D.setEnd(z.node,z.offset),$.addRange(D))}}}}for(Y=[],$=N;$=$.parentNode;)$.nodeType===1&&Y.push({element:$,left:$.scrollLeft,top:$.scrollTop});for(typeof N.focus=="function"&&N.focus(),N=0;N<Y.length;N++){var q=Y[N];q.element.scrollLeft=q.left,q.element.scrollTop=q.top}}ua=!!ld,sd=ld=null}finally{He=o,P.p=c,U.T=s}}e.current=t,nt=2}}function Xo(){if(nt===2){nt=0;var e=kn,t=is,n=(t.flags&8772)!==0;if((t.subtreeFlags&8772)!==0||n){n=U.T,U.T=null;var s=P.p;P.p=2;var c=He;He|=4;try{$p(e,t.alternate,t)}finally{He=c,P.p=s,U.T=n}}nt=3}}function Qo(){if(nt===4||nt===3){nt=0;var e=Js;Js=null,y0();var t=kn,n=is,s=$n,c=Pp,o=(s&335544064)===s?10262:10256;if((n.subtreeFlags&o)!==0||(n.flags&o)!==0?nt=5:(nt=0,is=kn=null,og(t,t.pendingLanes)),o=t.pendingLanes,o===0&&(wl=null),Wc(s),n=n.stateNode,Zt&&typeof Zt.onCommitFiberRoot=="function")try{Zt.onCommitFiberRoot(Aa,n,void 0,(n.current.flags&128)===128)}catch{}if(c!==null){n=U.T,o=P.p,P.p=2,U.T=null;try{for(var g=t.onRecoverableError,N=0;N<c.length;N++){var C=c[N];g(C.value,{componentStack:C.stack})}}finally{U.T=n,P.p=o}}if(c=Fs,g=Ps,Ps=null,c!==null&&(Fs=null,g===null&&(g=[]),e!==null))for(C=0;C<c.length;C++)n=(0,c[C])(g),n!==void 0&&e.finished.finally(n);($n&3)!==0&&sc(),Hn(t),o=t.pendingLanes,(s&261930)!==0&&(o&42)!==0?t===ec?oi++:(oi=0,ec=t):(oi=0,ec=null),di(0)}}function og(e,t){(e.pooledCacheLanes&=t)===0&&(t=e.pooledCache,t!=null&&(e.pooledCache=null,Qa(t)))}function sc(){return Js!==null&&(Js.skipTransition(),Js=null),Go(),Xo(),Qo(),Zo()}function Zo(){if(nt!==5)return!1;var e=kn,t=Bo;Bo=0;var n=Wc($n),s=U.T,c=P.p;try{P.p=32>n?32:n,U.T=null,n=Lo,Lo=null;var o=kn,g=$n;if(nt=0,is=kn=null,$n=0,(He&6)!==0)throw Error(u(331));var N=He;if(He|=4,Ip(o.current),Zp(o,o.current,g,n),He=N,di(0,!1),Zt&&typeof Zt.onPostCommitFiberRoot=="function")try{Zt.onPostCommitFiberRoot(Aa,o)}catch{}return!0}finally{P.p=c,U.T=s,og(e,t)}}function dg(e,t,n){t=rn(n,t),t=co(e.stateNode,t,2),e=vl(e,t,2),e!==null&&(_a(e,2),Hn(e))}function Ye(e,t,n){if(e.tag===3)dg(e,e,n);else for(;t!==null;){if(t.tag===3){dg(t,e,n);break}else if(t.tag===1){var s=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof s.componentDidCatch=="function"&&(wl===null||!wl.has(s))){e=rn(n,e),n=rp(2),s=vl(t,n,2),s!==null&&(cp(n,s,t,e),_a(s,2),Hn(s));break}}t=t.return}}function Vo(e,t,n){var s=e.pingCache;if(s===null){s=e.pingCache=new Py;var c=new Set;s.set(t,c)}else c=s.get(t),c===void 0&&(c=new Set,s.set(t,c));c.has(n)||($o=!0,c.add(n),e=ik.bind(null,e,t,n),t.then(e,e))}function ik(e,t,n){var s=e.pingCache;s!==null&&s.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Ke===e&&(ze&n)===n&&((at===4||at===3&&(ze&62914560)===ze&&300>Qt()-Fr)&&(He&2)===0?ea(e,0):Jr|=n,Is===ze&&(Is=0)),Hn(e)}function fg(e,t){t===0&&(t=Ff()),e=Xl(e,t),e!==null&&(_a(e,t),Hn(e))}function rk(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),fg(e,n)}function ck(e,t){var n=0;switch(e.tag){case 31:case 13:var s=e.stateNode,c=e.memoizedState;c!==null&&(n=c.retryLane);break;case 19:s=e.stateNode;break;case 22:s=e.stateNode._retryCache;break;default:throw Error(u(314))}s!==null&&s.delete(t),fg(e,n)}function uk(e,t){return Ic(e,t)}var na=null,la=null,Ko=!1,ac=!1,Io=!1,El=0;function Hn(e){e!==la&&e.next===null&&(la===null?na=la=e:la=la.next=e),ac=!0,Ko||(Ko=!0,dk())}function di(e,t){if(!Io&&ac){Io=!0;do for(var n=!1,s=na;s!==null;){if(e!==0){var c=s.pendingLanes;if(c===0)var o=0;else{var g=s.suspendedLanes,N=s.pingedLanes;o=(1<<31-Vt(42|e)+1)-1,o&=c&~(g&~N),o=o&201326741?o&201326741|1:o?o|2:0}o!==0&&(n=!0,gg(s,o))}else o=ze,o=Ji(s,s===Ke?o:0,s.cancelPendingCommit!==null||s.timeoutHandle!==-1),(o&3)===0||za(s,o)||(n=!0,gg(s,o));s=s.next}while(n);Io=!1}}function ok(){hg()}function hg(){ac=Ko=!1;var e=0;El!==0&&jk()&&(e=El);for(var t=Qt(),n=null,s=na;s!==null;){var c=s.next,o=mg(s,t);o===0?(s.next=null,n===null?na=c:n.next=c,c===null&&(la=n)):(n=s,(e!==0||(o&3)!==0)&&(ac=!0)),s=c}nt!==0&&nt!==5||di(e),El!==0&&(El=0)}function mg(e,t){for(var n=e.suspendedLanes,s=e.pingedLanes,c=e.expirationTimes,o=e.pendingLanes&-62914561;0<o;){var g=31-Vt(o),N=1<<g,C=c[g];C===-1?((N&n)===0||(N&s)!==0)&&(c[g]=C0(N,t)):C<=t&&(e.expiredLanes|=N),o&=~N}if(t=Ke,n=ze,n=Ji(e,e===t?n:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),s=e.callbackNode,n===0||e===t&&(qe===2||qe===9)||e.cancelPendingCommit!==null)return s!==null&&s!==null&&Jc(s),e.callbackNode=null,e.callbackPriority=0;if((n&3)===0||za(e,n)){if(t=n&-n,t===e.callbackPriority)return t;switch(s!==null&&Jc(s),Wc(n)){case 2:case 8:n=Kf;break;case 32:n=Zi;break;case 268435456:n=If;break;default:n=Zi}return s=pg.bind(null,e),n=Ic(n,s),e.callbackPriority=t,e.callbackNode=n,t}return s!==null&&s!==null&&Jc(s),e.callbackPriority=2,e.callbackNode=null,2}function pg(e,t){if(nt!==0&&nt!==5)return e.callbackNode=null,e.callbackPriority=0,null;var n=e.callbackNode;if(sc()&&e.callbackNode!==n)return null;var s=ze;return s=Ji(e,e===Ke?s:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),s===0?null:(eg(e,s,t),mg(e,Qt()),e.callbackNode!=null&&e.callbackNode===n?pg.bind(null,e):null)}function gg(e,t){if(sc())return null;eg(e,t,!0)}function dk(){Sk(function(){(He&6)!==0?Ic(Vf,ok):hg()})}function Jo(){if(El===0){var e=Jl;e===0&&(e=Vi,Vi<<=1,(Vi&261888)===0&&(Vi=256)),El=e}return El}function vg(e){return e==null||typeof e=="symbol"||typeof e=="boolean"?null:typeof e=="function"?e:tr(e)}function fk(e,t,n,s,c){if(t==="submit"&&n&&n.stateNode===c){var o=vg((c[Dt]||null).action),g=s.submitter;g&&(t=(t=g[Dt]||null)?vg(t.formAction):g.getAttribute("formAction"),t!==null&&(o=t,g=null));var N=new ar("action","action",null,s,c);e.push({event:N,listeners:[{instance:null,listener:function(){if(s.defaultPrevented){if(El!==0){var C=new FormData(c,g);lo(n,{pending:!0,data:C,method:c.method,action:o},null,C)}}else typeof o=="function"&&(N.preventDefault(),C=new FormData(c,g),lo(n,{pending:!0,data:C,method:c.method,action:o},o,C))},currentTarget:c}]})}}for(var Fo=0;Fo<ku.length;Fo++){var Po=ku[Fo],hk=Po.toLowerCase(),mk=Po[0].toUpperCase()+Po.slice(1);vn(hk,"on"+mk)}vn(Gh,"onAnimationEnd"),vn(Xh,"onAnimationIteration"),vn(Qh,"onAnimationStart"),vn("dblclick","onDoubleClick"),vn("focusin","onFocus"),vn("focusout","onBlur"),vn(Ny,"onTransitionRun"),vn(Sy,"onTransitionStart"),vn(wy,"onTransitionCancel"),vn(Zh,"onTransitionEnd"),ws("onMouseEnter",["mouseout","mouseover"]),ws("onMouseLeave",["mouseout","mouseover"]),ws("onPointerEnter",["pointerout","pointerover"]),ws("onPointerLeave",["pointerout","pointerover"]),ql("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),ql("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),ql("onBeforeInput",["compositionend","keypress","textInput","paste"]),ql("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),ql("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),ql("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var fi="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(" "),pk=new Set("beforetoggle cancel close invalid load scroll scrollend toggle".split(" ").concat(fi));function xg(e,t){t=(t&4)!==0;for(var n=0;n<e.length;n++){var s=e[n],c=s.event;s=s.listeners;e:{var o=void 0;if(t)for(var g=s.length-1;0<=g;g--){var N=s[g],C=N.instance,R=N.currentTarget;if(N=N.listener,C!==o&&c.isPropagationStopped())break e;o=N,c.currentTarget=R;try{o(c)}catch(H){cr(H)}c.currentTarget=null,o=C}else for(g=0;g<s.length;g++){if(N=s[g],C=N.instance,R=N.currentTarget,N=N.listener,C!==o&&c.isPropagationStopped())break e;o=N,c.currentTarget=R;try{o(c)}catch(H){cr(H)}c.currentTarget=null,o=C}}}}function Ae(e,t){var n=t[lh];n===void 0&&(n=t[lh]=new Set);var s=e+"__bubble";n.has(s)||(bg(t,e,2,!1),n.add(s))}function Wo(e,t,n){var s=0;t&&(s|=4),bg(n,e,s,t)}var ic="_reactListening"+Math.random().toString(36).slice(2);function ed(e){if(!e[ic]){e[ic]=!0,ih.forEach(function(n){n!=="selectionchange"&&(pk.has(n)||Wo(n,!1,e),Wo(n,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[ic]||(t[ic]=!0,Wo("selectionchange",!1,t))}}function bg(e,t,n,s){switch(cv(t)){case 2:var c=r1;break;case 8:c=c1;break;default:c=yd}n=c.bind(null,t,n,e),c=void 0,!ru||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(c=!0),s?c!==void 0?e.addEventListener(t,n,{capture:!0,passive:c}):e.addEventListener(t,n,!0):c!==void 0?e.addEventListener(t,n,{passive:c}):e.addEventListener(t,n,!1)}function td(e,t,n,s,c){var o=s;if((t&1)===0&&(t&2)===0&&s!==null)e:for(;;){if(s===null)return;var g=s.tag;if(g===3||g===4){var N=s.stateNode.containerInfo;if(N===c)break;if(g===4)for(g=s.return;g!==null;){var C=g.tag;if((C===3||C===4)&&g.stateNode.containerInfo===c)return;g=g.return}for(;N!==null;){if(g=Ll(N),g===null)return;if(C=g.tag,C===5||C===6||C===26||C===27){s=o=g;continue e}N=N.parentNode}}s=s.return}bh(function(){var R=o,H=au(n),Y=[];e:{var O=Vh.get(e);if(O!==void 0){var $=ar,ee=e;switch(e){case"keypress":if(lr(n)===0)break e;case"keydown":case"keyup":$=W0;break;case"focusin":ee="focus",$=du;break;case"focusout":ee="blur",$=du;break;case"beforeblur":case"afterblur":$=du;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":$=jh;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":$=q0;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":$=sy;break;case Gh:case Xh:case Qh:$=X0;break;case Zh:$=iy;break;case"scroll":case"scrollend":$=B0;break;case"wheel":$=cy;break;case"copy":case"cut":case"paste":$=Z0;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":$=Sh;break;case"submit":$=ny;break;case"toggle":case"beforetoggle":$=oy}var ie=(t&4)!==0,je=!ie&&(e==="scroll"||e==="scrollend"),M=ie?O!==null?O+"Capture":null:O;ie=[];for(var z=R,D;z!==null;){var q=z;if(D=q.stateNode,q=q.tag,q!==5&&q!==26&&q!==27||D===null||M===null||(q=Ra(z,M),q!=null&&ie.push(hi(z,q,D))),je)break;z=z.return}0<ie.length&&(O=new $(O,ee,null,n,H),Y.push({event:O,listeners:ie}))}}if((t&7)===0){e:{if($=e==="mouseover"||e==="pointerover",O=e==="mouseout"||e==="pointerout",$&&n!==su&&(ee=n.relatedTarget||n.fromElement)&&(Ll(ee)||ee[js]))break e;(O||$)&&(ee=H.window===H?H:($=H.ownerDocument)?$.defaultView||$.parentWindow:window,O?($=n.relatedTarget||n.toElement,O=R,$=$?Ll($):null,$!==null&&(je=f($),ie=$.tag,$!==je||ie!==5&&ie!==27&&ie!==6)&&($=null)):(O=null,$=R),O!==$&&(ie=jh,q="onMouseLeave",M="onMouseEnter",z="mouse",(e==="pointerout"||e==="pointerover")&&(ie=Sh,q="onPointerLeave",M="onPointerEnter",z="pointer"),je=O==null?ee:Ma(O),D=$==null?ee:Ma($),ee=new ie(q,z+"leave",O,n,H),ee.target=je,ee.relatedTarget=D,q=null,Ll(H)===R&&(ie=new ie(M,z+"enter",$,n,H),ie.target=D,ie.relatedTarget=je,q=ie),je=q,ie=O&&$?G(O,$,gk):null,O!==null&&yg(Y,ee,O,ie,!1),$!==null&&je!==null&&yg(Y,je,$,ie,!0)))}e:{if(O=R?Ma(R):window,$=O.nodeName&&O.nodeName.toLowerCase(),$==="select"||$==="input"&&O.type==="file")var le=Oh;else if(zh(O))if(Mh)le=yy;else{le=xy;var _e=vy}else $=O.nodeName,!$||$.toLowerCase()!=="input"||O.type!=="checkbox"&&O.type!=="radio"?R&&lu(R.elementType)&&(le=Oh):le=by;if(le&&(le=le(e,R))){_h(Y,le,n,H);break e}_e&&_e(e,O,R)}switch(_e=R?Ma(R):window,e){case"focusin":(zh(_e)||_e.contentEditable==="true")&&(_s=_e,xu=R,Ya=null);break;case"focusout":Ya=xu=_s=null;break;case"mousedown":bu=!0;break;case"contextmenu":case"mouseup":case"dragend":bu=!1,qh(Y,n,H);break;case"selectionchange":if(jy)break;case"keydown":case"keyup":qh(Y,n,H)}var oe;if(hu)e:{switch(e){case"compositionstart":var ge="onCompositionStart";break e;case"compositionend":ge="onCompositionEnd";break e;case"compositionupdate":ge="onCompositionUpdate";break e}ge=void 0}else zs?Ch(e,n)&&(ge="onCompositionEnd"):e==="keydown"&&n.keyCode===229&&(ge="onCompositionStart");ge&&(wh&&n.locale!=="ko"&&(zs||ge!=="onCompositionStart"?ge==="onCompositionEnd"&&zs&&(oe=yh()):(cl=H,cu="value"in cl?cl.value:cl.textContent,zs=!0)),_e=rc(R,ge),0<_e.length&&(ge=new Nh(ge,e,null,n,H),Y.push({event:ge,listeners:_e}),oe?ge.data=oe:(oe=Ah(n),oe!==null&&(ge.data=oe)))),(oe=fy?hy(e,n):my(e,n))&&(ge=rc(R,"onBeforeInput"),0<ge.length&&(_e=new Nh("onBeforeInput","beforeinput",null,n,H),Y.push({event:_e,listeners:ge}),_e.data=oe)),fk(Y,e,R,n,H)}xg(Y,t)})}function hi(e,t,n){return{instance:e,listener:t,currentTarget:n}}function rc(e,t){for(var n=t+"Capture",s=[];e!==null;){var c=e,o=c.stateNode;if(c=c.tag,c!==5&&c!==26&&c!==27||o===null||(c=Ra(e,n),c!=null&&s.unshift(hi(e,c,o)),c=Ra(e,t),c!=null&&s.push(hi(e,c,o))),e.tag===3)return s;e=e.return}return[]}function gk(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5&&e.tag!==27);return e||null}function yg(e,t,n,s,c){for(var o=t._reactName,g=[];n!==null&&n!==s;){var N=n,C=N.alternate,R=N.stateNode;if(N=N.tag,C!==null&&C===s)break;N!==5&&N!==26&&N!==27||R===null||(C=R,c?(R=Ra(n,o),R!=null&&g.unshift(hi(n,R,C))):c||(R=Ra(n,o),R!=null&&g.push(hi(n,R,C)))),n=n.return}g.length!==0&&e.push({event:t,listeners:g})}var vk=/\r\n?/g,xk=/\u0000|\uFFFD/g;function kg(e){return(typeof e=="string"?e:""+e).replace(vk,`
50
+ `).replace(xk,"")}function jg(e,t){return t=kg(t),kg(e)===t}function Ge(e,t,n,s,c,o){switch(n){case"children":if(typeof s=="string")t==="body"||t==="textarea"&&s===""||Es(e,s);else if(typeof s=="number"||typeof s=="bigint")t!=="body"&&Es(e,""+s);else return;break;case"className":er(e,"class",s);break;case"tabIndex":er(e,"tabindex",s);break;case"dir":case"role":case"viewBox":case"width":case"height":er(e,n,s);break;case"style":vh(e,s,o);return;case"data":if(t!=="object"){er(e,"data",s);break}case"src":case"href":if(s===""&&(t!=="a"||n!=="href")){e.removeAttribute(n);break}if(s==null||typeof s=="function"||typeof s=="symbol"||typeof s=="boolean"){e.removeAttribute(n);break}s=tr(s),e.setAttribute(n,s);break;case"action":case"formAction":if(typeof s=="function"){e.setAttribute(n,"javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')");break}else typeof o=="function"&&(n==="formAction"?(t!=="input"&&Ge(e,t,"name",c.name,c,null),Ge(e,t,"formEncType",c.formEncType,c,null),Ge(e,t,"formMethod",c.formMethod,c,null),Ge(e,t,"formTarget",c.formTarget,c,null)):(Ge(e,t,"encType",c.encType,c,null),Ge(e,t,"method",c.method,c,null),Ge(e,t,"target",c.target,c,null)));if(s==null||typeof s=="symbol"||typeof s=="boolean"){e.removeAttribute(n);break}s=tr(s),e.setAttribute(n,s);break;case"onClick":s!=null&&(e.onclick=Cn);return;case"onScroll":s!=null&&Ae("scroll",e);return;case"onScrollEnd":s!=null&&Ae("scrollend",e);return;case"dangerouslySetInnerHTML":if(s!=null){if(typeof s!="object"||!("__html"in s))throw Error(u(61));if(n=s.__html,n!=null){if(c.children!=null)throw Error(u(60));(o!=null?o.__html:void 0)!==n&&(e.innerHTML=n)}}break;case"multiple":e.multiple=s&&typeof s!="function"&&typeof s!="symbol";break;case"muted":e.muted=s&&typeof s!="function"&&typeof s!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(s==null||typeof s=="function"||typeof s=="boolean"||typeof s=="symbol"){e.removeAttribute("xlink:href");break}n=tr(s),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",n);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":s!=null&&typeof s!="function"&&typeof s!="symbol"?e.setAttribute(n,s):e.removeAttribute(n);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"credentialless":case"default":case"defer":case"disabled":case"disablePictureInPicture":case"disableRemotePlayback":case"formNoValidate":case"hidden":case"loop":case"noModule":case"noValidate":case"open":case"playsInline":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"itemScope":s&&typeof s!="function"&&typeof s!="symbol"?e.setAttribute(n,""):e.removeAttribute(n);break;case"capture":case"download":s===!0?e.setAttribute(n,""):s!==!1&&s!=null&&typeof s!="function"&&typeof s!="symbol"?e.setAttribute(n,s):e.removeAttribute(n);break;case"cols":case"rows":case"size":case"span":s!=null&&typeof s!="function"&&typeof s!="symbol"&&!isNaN(s)&&1<=s?e.setAttribute(n,s):e.removeAttribute(n);break;case"rowSpan":case"start":s==null||typeof s=="function"||typeof s=="symbol"||isNaN(s)?e.removeAttribute(n):e.setAttribute(n,s);break;case"popover":Ae("beforetoggle",e),Ae("toggle",e),Wi(e,"popover",s);break;case"xlinkActuate":Gn(e,"http://www.w3.org/1999/xlink","xlink:actuate",s);break;case"xlinkArcrole":Gn(e,"http://www.w3.org/1999/xlink","xlink:arcrole",s);break;case"xlinkRole":Gn(e,"http://www.w3.org/1999/xlink","xlink:role",s);break;case"xlinkShow":Gn(e,"http://www.w3.org/1999/xlink","xlink:show",s);break;case"xlinkTitle":Gn(e,"http://www.w3.org/1999/xlink","xlink:title",s);break;case"xlinkType":Gn(e,"http://www.w3.org/1999/xlink","xlink:type",s);break;case"xmlBase":Gn(e,"http://www.w3.org/XML/1998/namespace","xml:base",s);break;case"xmlLang":Gn(e,"http://www.w3.org/XML/1998/namespace","xml:lang",s);break;case"xmlSpace":Gn(e,"http://www.w3.org/XML/1998/namespace","xml:space",s);break;case"is":Wi(e,"is",s);break;case"innerText":case"textContent":return;default:if(!(2<n.length)||n[0]!=="o"&&n[0]!=="O"||n[1]!=="n"&&n[1]!=="N")n=$0.get(n)||n,Wi(e,n,s);else return}De=!0}function nd(e,t,n,s,c,o){switch(n){case"style":vh(e,s,o);return;case"dangerouslySetInnerHTML":if(s!=null){if(typeof s!="object"||!("__html"in s))throw Error(u(61));if(n=s.__html,n!=null){if(c.children!=null)throw Error(u(60));(o!=null?o.__html:void 0)!==n&&(e.innerHTML=n)}}break;case"children":if(typeof s=="string")Es(e,s);else if(typeof s=="number"||typeof s=="bigint")Es(e,""+s);else return;break;case"onScroll":s!=null&&Ae("scroll",e);return;case"onScrollEnd":s!=null&&Ae("scrollend",e);return;case"onClick":s!=null&&(e.onclick=Cn);return;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":return;case"innerText":case"textContent":return;default:if(!rh.hasOwnProperty(n))e:{if(n[0]==="o"&&n[1]==="n"&&(c=n.endsWith("Capture"),o=n.slice(2,c?n.length-7:void 0),t=e[Dt]||null,t=t!=null?t[n]:null,typeof t=="function"&&e.removeEventListener(o,t,c),typeof s=="function")){typeof t!="function"&&t!==null&&(n in e?e[n]=null:e.hasAttribute(n)&&e.removeAttribute(n)),e.addEventListener(o,s,c);break e}De=!0,n in e?e[n]=s:s===!0?e.setAttribute(n,""):Wi(e,n,s)}return}De=!0}function Tt(e,t,n){switch(t){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":Ae("error",e),Ae("load",e);var s=!1,c=!1,o;for(o in n)if(n.hasOwnProperty(o)){var g=n[o];if(g!=null)switch(o){case"src":s=!0;break;case"srcSet":c=!0;break;case"children":case"dangerouslySetInnerHTML":throw Error(u(137,t));default:Ge(e,t,o,g,n,null)}}c&&Ge(e,t,"srcSet",n.srcSet,n,null),s&&Ge(e,t,"src",n.src,n,null);return;case"input":Ae("invalid",e);var N=o=g=c=null,C=null,R=null;for(s in n)if(n.hasOwnProperty(s)){var H=n[s];if(H!=null)switch(s){case"name":c=H;break;case"type":g=H;break;case"checked":C=H;break;case"defaultChecked":R=H;break;case"value":o=H;break;case"defaultValue":N=H;break;case"children":case"dangerouslySetInnerHTML":if(H!=null)throw Error(u(137,t));break;default:Ge(e,t,s,H,n,null)}}hh(e,o,N,C,R,g,c,!1);return;case"select":Ae("invalid",e),s=g=o=null;for(c in n)if(n.hasOwnProperty(c)&&(N=n[c],N!=null))switch(c){case"value":o=N;break;case"defaultValue":g=N;break;case"multiple":s=N;default:Ge(e,t,c,N,n,null)}t=o,n=g,e.multiple=!!s,t!=null?Ts(e,!!s,t,!1):n!=null&&Ts(e,!!s,n,!0);return;case"textarea":Ae("invalid",e),o=c=s=null;for(g in n)if(n.hasOwnProperty(g)&&(N=n[g],N!=null))switch(g){case"value":s=N;break;case"defaultValue":c=N;break;case"children":o=N;break;case"dangerouslySetInnerHTML":if(N!=null)throw Error(u(91));break;default:Ge(e,t,g,N,n,null)}ph(e,s,c,o);return;case"option":for(C in n)if(n.hasOwnProperty(C)&&(s=n[C],s!=null))switch(C){case"selected":e.selected=s&&typeof s!="function"&&typeof s!="symbol";break;default:Ge(e,t,C,s,n,null)}return;case"dialog":Ae("beforetoggle",e),Ae("toggle",e),Ae("cancel",e),Ae("close",e);break;case"iframe":case"object":Ae("load",e);break;case"video":case"audio":for(s=0;s<fi.length;s++)Ae(fi[s],e);break;case"image":Ae("error",e),Ae("load",e);break;case"details":Ae("toggle",e);break;case"embed":case"source":case"link":Ae("error",e),Ae("load",e);case"area":case"base":case"br":case"col":case"hr":case"keygen":case"meta":case"param":case"track":case"wbr":case"menuitem":for(R in n)if(n.hasOwnProperty(R)&&(s=n[R],s!=null))switch(R){case"children":case"dangerouslySetInnerHTML":throw Error(u(137,t));default:Ge(e,t,R,s,n,null)}return;default:if(lu(t)){for(H in n)n.hasOwnProperty(H)&&(s=n[H],s!==void 0&&nd(e,t,H,s,n,void 0));return}}for(N in n)n.hasOwnProperty(N)&&(s=n[N],s!=null&&Ge(e,t,N,s,n,null))}var bk={};function yk(e,t,n,s){switch(t){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"input":var c=null,o=null,g=null,N=null,C=null,R=null,H=null;for($ in n){var Y=n[$];if(n.hasOwnProperty($)&&Y!=null)switch($){case"checked":break;case"value":break;case"defaultValue":C=Y;default:s.hasOwnProperty($)||Ge(e,t,$,null,s,Y)}}for(var O in s){var $=s[O];if(Y=n[O],s.hasOwnProperty(O)&&($!=null||Y!=null))switch(O){case"type":$!==Y&&(De=!0),o=$;break;case"name":$!==Y&&(De=!0),c=$;break;case"checked":$!==Y&&(De=!0),R=$;break;case"defaultChecked":$!==Y&&(De=!0),H=$;break;case"value":$!==Y&&(De=!0),g=$;break;case"defaultValue":$!==Y&&(De=!0),N=$;break;case"children":case"dangerouslySetInnerHTML":if($!=null)throw Error(u(137,t));break;default:$!==Y&&Ge(e,t,O,$,s,Y)}}tu(e,g,N,C,R,H,o,c);return;case"select":$=g=N=O=null;for(o in n)if(C=n[o],n.hasOwnProperty(o)&&C!=null)switch(o){case"value":break;case"multiple":$=C;default:s.hasOwnProperty(o)||Ge(e,t,o,null,s,C)}for(c in s)if(o=s[c],C=n[c],s.hasOwnProperty(c)&&(o!=null||C!=null))switch(c){case"value":o!==C&&(De=!0),O=o;break;case"defaultValue":o!==C&&(De=!0),N=o;break;case"multiple":o!==C&&(De=!0),g=o;default:o!==C&&Ge(e,t,c,o,s,C)}t=N,n=g,s=$,O!=null?Ts(e,!!n,O,!1):!!s!=!!n&&(t!=null?Ts(e,!!n,t,!0):Ts(e,!!n,n?[]:"",!1));return;case"textarea":$=O=null;for(N in n)if(c=n[N],n.hasOwnProperty(N)&&c!=null&&!s.hasOwnProperty(N))switch(N){case"value":break;case"children":break;default:Ge(e,t,N,null,s,c)}for(g in s)if(c=s[g],o=n[g],s.hasOwnProperty(g)&&(c!=null||o!=null))switch(g){case"value":c!==o&&(De=!0),O=c;break;case"defaultValue":c!==o&&(De=!0),$=c;break;case"children":break;case"dangerouslySetInnerHTML":if(c!=null)throw Error(u(91));break;default:c!==o&&Ge(e,t,g,c,s,o)}mh(e,O,$);return;case"option":for(var ee in n)if(O=n[ee],n.hasOwnProperty(ee)&&O!=null&&!s.hasOwnProperty(ee))switch(ee){case"selected":e.selected=!1;break;default:Ge(e,t,ee,null,s,O)}for(C in s)if(O=s[C],$=n[C],s.hasOwnProperty(C)&&O!==$&&(O!=null||$!=null))switch(C){case"selected":O!==$&&(De=!0),e.selected=O&&typeof O!="function"&&typeof O!="symbol";break;default:Ge(e,t,C,O,s,$)}return;case"img":case"link":case"area":case"base":case"br":case"col":case"embed":case"hr":case"keygen":case"meta":case"param":case"source":case"track":case"wbr":case"menuitem":for(var ie in n)O=n[ie],n.hasOwnProperty(ie)&&O!=null&&!s.hasOwnProperty(ie)&&Ge(e,t,ie,null,s,O);for(R in s)if(O=s[R],$=n[R],s.hasOwnProperty(R)&&O!==$&&(O!=null||$!=null))switch(R){case"children":case"dangerouslySetInnerHTML":if(O!=null)throw Error(u(137,t));break;default:Ge(e,t,R,O,s,$)}return;default:if(lu(t)){for(var je in n)O=n[je],n.hasOwnProperty(je)&&O!==void 0&&!s.hasOwnProperty(je)&&nd(e,t,je,void 0,s,O);for(H in s)O=s[H],$=n[H],!s.hasOwnProperty(H)||O===$||O===void 0&&$===void 0||nd(e,t,H,O,s,$);return}}for(var M in n)O=n[M],n.hasOwnProperty(M)&&O!=null&&!s.hasOwnProperty(M)&&Ge(e,t,M,null,s,O);for(Y in s)O=s[Y],$=n[Y],!s.hasOwnProperty(Y)||O===$||O==null&&$==null||Ge(e,t,Y,O,s,$)}function Ng(e){switch(e){case"css":case"script":case"font":case"img":case"image":case"input":case"link":return!0;default:return!1}}function kk(){if(typeof performance.getEntriesByType=="function"){for(var e=0,t=0,n=performance.getEntriesByType("resource"),s=0;s<n.length;s++){var c=n[s],o=c.transferSize,g=c.initiatorType,N=c.duration;if(o&&N&&Ng(g)){for(g=0,N=c.responseEnd,s+=1;s<n.length;s++){var C=n[s],R=C.startTime;if(R>N)break;var H=C.transferSize,Y=C.initiatorType;H&&Ng(Y)&&(C=C.responseEnd,g+=H*(C<N?1:(N-R)/(C-R)))}if(--s,t+=8*(o+g)/(c.duration/1e3),e++,10<e)break}}if(0<e)return t/e/1e6}return navigator.connection&&(e=navigator.connection.downlink,typeof e=="number")?e:5}var ld=null,sd=null;function mi(e){return e.nodeType===9?e:e.ownerDocument}function Sg(e){switch(e){case"http://www.w3.org/2000/svg":return 1;case"http://www.w3.org/1998/Math/MathML":return 2;default:return 0}}function wg(e,t){if(e===0)switch(t){case"svg":return 1;case"math":return 2;default:return 0}return e===1&&t==="foreignObject"?0:e}function Tg(e,t,n,s){return n=mi(n).createElement(e),n[kt]=s,n[Dt]=t,Tt(n,e,t),pt(n),n}function ad(e,t){return e==="textarea"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.children=="bigint"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var id=null;function jk(){var e=window.event;return e&&e.type==="popstate"?e===id?!1:(id=e,!0):(id=null,!1)}var rd=typeof setTimeout=="function"?setTimeout:void 0,Nk=typeof clearTimeout=="function"?clearTimeout:void 0,Eg=typeof Promise=="function"?Promise:void 0,Cg=typeof requestAnimationFrame=="function"?requestAnimationFrame:rd,Sk=typeof queueMicrotask=="function"?queueMicrotask:typeof Eg<"u"?function(e){return Eg.resolve(null).then(e).catch(wk)}:rd;function wk(e){setTimeout(function(){throw e})}function Cl(e){return e==="head"}function Ag(e,t){var n=t,s=0;do{var c=n.nextSibling;if(e.removeChild(n),c&&c.nodeType===8)if(n=c.data,n==="/$"||n==="/&"){if(s===0){e.removeChild(c),oa(t);return}s--}else if(n==="$"||n==="$?"||n==="$~"||n==="$!"||n==="&")s++;else if(n==="html")pd(e.ownerDocument.documentElement);else if(n==="head"){n=e.ownerDocument.head,pd(n);for(var o=n.firstChild;o;){var g=o.nextSibling,N=o.nodeName;o[Oa]||N==="SCRIPT"||N==="STYLE"||N==="LINK"&&o.rel.toLowerCase()==="stylesheet"||n.removeChild(o),o=g}}else n==="body"&&pd(e.ownerDocument.body);n=c}while(n);oa(t)}function zg(e,t){var n=e;e=0;do{var s=n.nextSibling;if(n.nodeType===1?t?(n._stashedDisplay=n.style.display,n.style.display="none"):(n.style.display=n._stashedDisplay||"",n.getAttribute("style")===""&&n.removeAttribute("style")):n.nodeType===3&&(t?(n._stashedText=n.nodeValue,n.nodeValue=""):n.nodeValue=n._stashedText||""),s&&s.nodeType===8)if(n=s.data,n==="/$"){if(e===0)break;e--}else n!=="$"&&n!=="$?"&&n!=="$~"&&n!=="$!"||e++;n=s}while(n)}function _g(e,t,n){if(t=CSS.escape(t)!==t?"r-"+btoa(t).replace(/=/g,""):t,e.style.viewTransitionName=t,n!=null&&(e.style.viewTransitionClass=n),n=getComputedStyle(e),n.display==="inline"){if(t=e.getClientRects(),t.length===1)var s=1;else for(var c=s=0;c<t.length;c++){var o=t[c];0<o.width&&0<o.height&&s++}s===1&&(e=e.style,e.display=t.length===1?"inline-block":"block",e.marginTop="-"+n.paddingTop,e.marginBottom="-"+n.paddingBottom)}}function Og(e,t){e=e.style,t=t.style;var n=t!=null?t.hasOwnProperty("viewTransitionName")?t.viewTransitionName:t.hasOwnProperty("view-transition-name")?t["view-transition-name"]:null:null;e.viewTransitionName=n==null||typeof n=="boolean"?"":(""+n).trim(),n=t!=null?t.hasOwnProperty("viewTransitionClass")?t.viewTransitionClass:t.hasOwnProperty("view-transition-class")?t["view-transition-class"]:null:null,e.viewTransitionClass=n==null||typeof n=="boolean"?"":(""+n).trim(),e.display==="inline-block"&&(t==null?e.display=e.margin="":(n=t.display,e.display=n==null||typeof n=="boolean"?"":n,n=t.margin,n!=null?e.margin=n:(n=t.hasOwnProperty("marginTop")?t.marginTop:t["margin-top"],e.marginTop=n==null||typeof n=="boolean"?"":n,t=t.hasOwnProperty("marginBottom")?t.marginBottom:t["margin-bottom"],e.marginBottom=t==null||typeof t=="boolean"?"":t)))}function Tk(e,t,n){return n=n.ownerDocument.defaultView,{rect:e,abs:t.position==="absolute"||t.position==="fixed",clip:t.clipPath!=="none"||t.overflow!=="visible"||t.filter!=="none"||t.mask!=="none"||t.mask!=="none"||t.borderRadius!=="0px",view:0<=e.bottom&&0<=e.right&&e.top<=n.innerHeight&&e.left<=n.innerWidth}}function cd(e){var t=e.getBoundingClientRect(),n=getComputedStyle(e);return Tk(t,n,e)}function Ek(e){return e.documentElement.clientHeight}function Ck(e){this.addEventListener("load",e),this.addEventListener("error",e)}function Ak(e,t,n,s,c,o,g,N,C){var R=t.nodeType===9?t:t.ownerDocument;try{var H=R.startViewTransition({update:function(){var O=R.defaultView,$=O.navigation&&O.navigation.transition,ee=R.fonts.status;s();var ie=[];if(ee==="loaded"&&(Ek(R),R.fonts.status==="loading"&&ie.push(R.fonts.ready)),ee=ie.length,e!==null)for(var je=e.suspenseyImages,M=0,z=0;z<je.length;z++){var D=je[z];if(!D.complete){var q=D.getBoundingClientRect();if(0<q.bottom&&0<q.right&&q.top<O.innerHeight&&q.left<O.innerWidth){if(M+=Wg(D),M>oc){ie.length=ee;break}D=new Promise(Ck.bind(D)),ie.push(D)}}}if(0<ie.length)return O=Promise.race([Promise.all(ie),new Promise(function(le){return setTimeout(le,500)})]).then(c,c),($?Promise.allSettled([$.finished,O]):O).then(o,o);if(c(),$)return $.finished.then(o,o);o()},types:n});R.__reactViewTransition=H;var Y=[];return H.ready.then(function(){for(var O=R.documentElement.getAnimations({subtree:!0}),$=0;$<O.length;$++){var ee=O[$],ie=ee.effect,je=ie.pseudoElement;if(je!=null&&je.startsWith("::view-transition")){Y.push(ee),ee=ie.getKeyframes();for(var M=je=void 0,z=!0,D=0;D<ee.length;D++){var q=ee[D],le=q.width;if(je===void 0)je=le;else if(je!==le){z=!1;break}if(le=q.height,M===void 0)M=le;else if(M!==le){z=!1;break}delete q.width,delete q.height,q.transform==="none"&&delete q.transform}z&&je!==void 0&&M!==void 0&&(ie.setKeyframes(ee),z=getComputedStyle(ie.target,ie.pseudoElement),z.width!==je||z.height!==M)&&(z=ee[0],z.width=je,z.height=M,z=ee[ee.length-1],z.width=je,z.height=M,ie.setKeyframes(ee))}}g()},function(O){R.__reactViewTransition===H&&(R.__reactViewTransition=null);try{if(typeof O=="object"&&O!==null)switch(O.name){case"InvalidStateError":(O.message==="View transition was skipped because document visibility state is hidden."||O.message==="Skipping view transition because document visibility state has become hidden."||O.message==="Skipping view transition because viewport size changed."||O.message==="Transition was aborted because of invalid state")&&(O=null)}O!==null&&C(O)}finally{s(),c(),g()}}),H.finished.finally(function(){for(var O=0;O<Y.length;O++)Y[O].cancel();R.__reactViewTransition===H&&(R.__reactViewTransition=null),N()}),H}catch{return s(),c(),g(),null}}function rs(e,t){this._scope=document.documentElement,this._selector="::view-transition-"+e+"("+t+")"}rs.prototype.animate=function(e,t){return t=typeof t=="number"?{duration:t}:L({},t),t.pseudoElement=this._selector,this._scope.animate(e,t)},rs.prototype.getAnimations=function(){for(var e=this._scope,t=this._selector,n=e.getAnimations({subtree:!0}),s=[],c=0;c<n.length;c++){var o=n[c].effect;o!==null&&o.target===e&&o.pseudoElement===t&&s.push(n[c])}return s},rs.prototype.getComputedStyle=function(){return getComputedStyle(this._scope,this._selector)};function Mg(e){return{name:e,group:new rs("group",e),imagePair:new rs("image-pair",e),old:new rs("old",e),new:new rs("new",e)}}function tn(e){this._fragmentFiber=e,this._observers=this._eventListeners=null}tn.prototype.addEventListener=function(e,t,n){var s=null,c=null;if(!(n!=null&&typeof n!="boolean"&&(s=n.signal||null,s!==null&&s.aborted))){this._eventListeners===null&&(this._eventListeners=[]);var o=this._eventListeners;if(Dg(o,e,t,n)===-1){var g=this,N=t;n!=null&&typeof n!="boolean"&&n.once===!0&&(N=function(C){g.removeEventListener(e,t,n),typeof t=="function"?t.call(this,C):t.handleEvent(C)}),s!==null&&(c=g.removeEventListener.bind(g,e,t,n),s.addEventListener("abort",c,{once:!0}),c=s.removeEventListener.bind(s,"abort",c)),s=sa(n),o.push({type:e,listener:t,optionsOrUseCapture:n,attachedListener:N,cleanup:c}),y(this._fragmentFiber.child,!1,zk,e,N,s)}this._eventListeners=o}};function zk(e,t,n,s){return j(e).addEventListener(t,n,s),!1}tn.prototype.removeEventListener=function(e,t,n){var s=this._eventListeners;if(s!==null&&(t=Dg(s,e,t,n),t!==-1)){var c=s[t];n=c.attachedListener;var o=c.cleanup;c=sa(c.optionsOrUseCapture),y(this._fragmentFiber.child,!1,_k,e,n,c),s.splice(t,1),o!==null&&o()}};function _k(e,t,n,s){return j(e).removeEventListener(t,n,s),!1}function sa(e){return e!=null&&typeof e!="boolean"&&(e.once===!0||e.signal instanceof AbortSignal)?{capture:e.capture,passive:e.passive}:e}function Rg(e){return e==null?"c=0":typeof e=="boolean"?"c="+(e?"1":"0"):"c="+(e.capture?"1":"0")}function Dg(e,t,n,s){if(e.length===0)return-1;s=Rg(s);for(var c=0;c<e.length;c++){var o=e[c];if(o.type===t&&o.listener===n&&Rg(o.optionsOrUseCapture)===s)return c}return-1}tn.prototype.dispatchEvent=function(e){var t=S(this._fragmentFiber);if(t===null)return!0;t=j(t);var n=this._eventListeners;if(n!==null&&0<n.length||!e.bubbles){var s=t.nodeType===9?t.createComment(""):document.createTextNode("");if(n)for(var c=0;c<n.length;c++){var o=n[c];s.addEventListener(o.type,o.attachedListener,sa(o.optionsOrUseCapture))}if(t.appendChild(s),e=s.dispatchEvent(e),n)for(c=0;c<n.length;c++)o=n[c],s.removeEventListener(o.type,o.attachedListener,sa(o.optionsOrUseCapture));return t.removeChild(s),e}return t.dispatchEvent(e)},tn.prototype.focus=function(e){y(this._fragmentFiber.child,!0,Ug,e,void 0,void 0)};function Ug(e,t){return e.tag===6?!1:(e=j(e),Gk(e,t))}tn.prototype.focusLast=function(e){var t=[];y(this._fragmentFiber.child,!0,ud,t,void 0,void 0);for(var n=t.length-1;0<=n&&!Ug(t[n],e);n--);};function ud(e,t){return t.push(e),!1}tn.prototype.blur=function(){var e=S(this._fragmentFiber);e!==null&&(e=j(e),e=mi(e).activeElement,e!==null&&y(this._fragmentFiber.child,!1,Ok,e,void 0,void 0))};function Ok(e,t){return e.tag===6?!1:(e=j(e),e===t||e.contains(t)?(t.blur(),!0):!1)}tn.prototype.observeUsing=function(e){this._observers===null&&(this._observers=new Set),this._observers.add(e),y(this._fragmentFiber.child,!1,Mk,e,void 0,void 0)};function Mk(e,t){return e.tag===6||(e=j(e),t.observe(e)),!1}tn.prototype.unobserveUsing=function(e){var t=this._observers;if(t!==null&&t.has(e)){t.delete(e),y(this._fragmentFiber.child,!1,Rk,e,void 0,void 0);for(var n=t=0;n<jn.length;n++){var s=jn[n];s.fragmentInstance===this&&s.observer===e?e.unobserve(s.instance):jn[t++]=s}jn.length=t}};function Rk(e,t){return e.tag===6||(e=j(e),t.unobserve(e)),!1}var jn=[],od=!1;function Dk(e,t,n){jn.push({fragmentInstance:e,observer:t,instance:n}),od||(od=!0,Xk(function(){od=!1;var s=jn;jn=[];for(var c=0;c<s.length;c++){var o=s[c];o.observer.unobserve(o.instance)}}))}tn.prototype.getClientRects=function(){var e=[];return y(this._fragmentFiber.child,!1,Uk,e,void 0,void 0),e};function Uk(e,t){if(e.tag===6){e=e.stateNode;var n=e.ownerDocument.createRange();n.selectNodeContents(e),t.push.apply(t,n.getClientRects())}else e=j(e),t.push.apply(t,e.getClientRects());return!1}tn.prototype.getRootNode=function(e){var t=S(this._fragmentFiber);return t===null?this:j(t).getRootNode(e)},tn.prototype.compareDocumentPosition=function(e){var t=S(this._fragmentFiber);if(t===null)return Node.DOCUMENT_POSITION_DISCONNECTED;var n=[];y(this._fragmentFiber.child,!1,ud,n,void 0,void 0);var s=j(t);if(n.length===0){if(n=s,T(this._fragmentFiber)){e:{for(t=this._fragmentFiber.return;t!==null;){if(t.tag===4){t=t.stateNode.containerInfo;break e}if(t.tag===3||t.tag===5||t.tag===27)break;t=t.return}t=null}t!=null&&(n=t)}t=this._fragmentFiber;var c=s=n.compareDocumentPosition(e);return n===e?c=Node.DOCUMENT_POSITION_CONTAINS:s&Node.DOCUMENT_POSITION_CONTAINED_BY&&(n=k(t)[1],n===null?c=Node.DOCUMENT_POSITION_PRECEDING:(e=j(n).compareDocumentPosition(e),c=e===0||e&Node.DOCUMENT_POSITION_FOLLOWING?Node.DOCUMENT_POSITION_FOLLOWING:Node.DOCUMENT_POSITION_PRECEDING)),c|=Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC}t=j(n[0]),c=j(n[n.length-1]);var o=T(this._fragmentFiber)?t.parentElement:s;if(o==null)return Node.DOCUMENT_POSITION_DISCONNECTED;s=o.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_CONTAINED_BY,o=o.compareDocumentPosition(c)&Node.DOCUMENT_POSITION_CONTAINED_BY;var g=t.compareDocumentPosition(e),N=c.compareDocumentPosition(e),C=g&Node.DOCUMENT_POSITION_CONTAINED_BY||N&Node.DOCUMENT_POSITION_CONTAINED_BY;return N=s&&o&&g&Node.DOCUMENT_POSITION_FOLLOWING&&N&Node.DOCUMENT_POSITION_PRECEDING,t=s&&t===e||o&&c===e||C||N?Node.DOCUMENT_POSITION_CONTAINED_BY:!s&&t===e||!o&&c===e?Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC:g,t&Node.DOCUMENT_POSITION_DISCONNECTED||t&Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC||$k(t,this._fragmentFiber,n[0],n[n.length-1],e)?t:Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC};function $k(e,t,n,s,c){var o=Ll(c);if(e&Node.DOCUMENT_POSITION_CONTAINED_BY){if(n=!!o)e:{for(;o!==null;){if(o.tag===7&&(o===t||o.alternate===t)){n=!0;break e}o=o.return}n=!1}return n}if(e&Node.DOCUMENT_POSITION_CONTAINS){if(o===null)return o=c.ownerDocument,c===o||c===o.documentElement||c===o.body;e:{for(o=t,t=S(t);o!==null;){if(!(o.tag!==5&&o.tag!==3&&o.tag!==27||o!==t&&o.alternate!==t)){o=!0;break e}o=o.return}o=!1}return o}return e&Node.DOCUMENT_POSITION_PRECEDING?((t=!!o)&&!(t=o===n)&&(t=G(n,o,F),t===null?t=!1:(y(t,!0,X,o,n),o=E,E=null,t=o!==null)),t):e&Node.DOCUMENT_POSITION_FOLLOWING?((t=!!o)&&!(t=o===s)&&(t=G(s,o,F),t===null?t=!1:(y(t,!0,J,o,s),o=E,A=E=null,t=o!==null)),t):!1}function $g(e,t){var n=e.ownerDocument.createRange();n.selectNodeContents(e),e=n.getBoundingClientRect(),window.scrollTo(window.scrollX+e.left,t?window.scrollY+e.top:window.scrollY+e.bottom-window.innerHeight)}tn.prototype.scrollIntoView=function(e){if(typeof e=="object")throw Error(u(566));var t=[];y(this._fragmentFiber.child,!1,ud,t,void 0,void 0);var n=e!==!1;if(t.length===0){var s=k(this._fragmentFiber);if(s=n?s[1]||s[0]||S(this._fragmentFiber):s[0]||s[1],s===null)return;if(s.tag===6){e=j(s),$g(e,n);return}if(s=j(s),s.nodeType!==9){if(s.nodeType===11){n="host"in s?s.host:null,n!==null&&n.scrollIntoView(e);return}s.scrollIntoView(e)}}for(s=n?t.length-1:0;s!==(n?-1:t.length);){var c=t[s];c.tag===6?(c=j(c),$g(c,n)):j(c).scrollIntoView(e),s+=n?-1:1}};function Hk(e,t){return e=j(e),Hg(e,t),!1}function Hg(e,t){e.reactFragments==null&&(e.reactFragments=new Set),e.reactFragments.add(t)}function Bg(e,t){var n=t._eventListeners;if(n!==null)for(var s=0;s<n.length;s++){var c=n[s];e.addEventListener(c.type,c.attachedListener,sa(c.optionsOrUseCapture))}e.nodeType!==3&&(n=t._observers,n!==null&&n.forEach(function(o){for(var g=0,N=0;N<jn.length;N++){var C=jn[N];(C.fragmentInstance!==t||C.observer!==o||C.instance!==e)&&(jn[g++]=C)}jn.length=g,o.observe(e)}),Hg(e,t))}function Bk(e,t){var n=t._eventListeners;if(n!==null)for(var s=0;s<n.length;s++){var c=n[s];e.removeEventListener(c.type,c.attachedListener,sa(c.optionsOrUseCapture))}e.nodeType!==3&&(n=t._observers,n!==null&&n.forEach(function(o){typeof o.rootMargin=="string"?Dk(t,o,e):o.unobserve(e)}),e.reactFragments!=null&&e.reactFragments.delete(t))}function dd(e){var t=e.firstChild;for(t&&t.nodeType===10&&(t=t.nextSibling);t;){var n=t;switch(t=t.nextSibling,n.nodeName){case"HTML":case"HEAD":case"BODY":dd(n),Pi(n);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if(n.rel.toLowerCase()==="stylesheet")continue}e.removeChild(n)}}function Lk(e,t,n,s){for(;e.nodeType===1;){var c=n;if(e.nodeName.toLowerCase()!==t.toLowerCase()){if(!s&&(e.nodeName!=="INPUT"||e.type!=="hidden"))break}else if(s){if(!e[Oa])switch(t){case"meta":if(!e.hasAttribute("itemprop"))break;return e;case"link":if(o=e.getAttribute("rel"),o==="stylesheet"&&e.hasAttribute("data-precedence"))break;if(o!==c.rel||e.getAttribute("href")!==(c.href==null||c.href===""?null:c.href)||e.getAttribute("crossorigin")!==(c.crossOrigin==null?null:c.crossOrigin)||e.getAttribute("title")!==(c.title==null?null:c.title))break;return e;case"style":if(e.hasAttribute("data-precedence"))break;return e;case"script":if(o=e.getAttribute("src"),(o!==(c.src==null?null:c.src)||e.getAttribute("type")!==(c.type==null?null:c.type)||e.getAttribute("crossorigin")!==(c.crossOrigin==null?null:c.crossOrigin))&&o&&e.hasAttribute("async")&&!e.hasAttribute("itemprop"))break;return e;default:return e}}else if(t==="input"&&e.type==="hidden"){var o=c.name==null?null:""+c.name;if(c.type==="hidden"&&e.getAttribute("name")===o)return e}else return e;if(e=fn(e.nextSibling),e===null)break}return null}function qk(e,t,n){if(t==="")return null;for(;e.nodeType!==3;)if((e.nodeType!==1||e.nodeName!=="INPUT"||e.type!=="hidden")&&!n||(e=fn(e.nextSibling),e===null))return null;return e}function Lg(e,t){for(;e.nodeType!==8;)if((e.nodeType!==1||e.nodeName!=="INPUT"||e.type!=="hidden")&&!t||(e=fn(e.nextSibling),e===null))return null;return e}function fd(e){return e.data==="$?"||e.data==="$~"}function hd(e){return e.data==="$!"||e.data==="$?"&&e.ownerDocument.readyState!=="loading"}function Yk(e,t){var n=e.ownerDocument;if(e.data==="$~")e._reactRetry=t;else if(e.data!=="$?"||n.readyState!=="loading")t();else{var s=function(){t(),n.removeEventListener("DOMContentLoaded",s)};n.addEventListener("DOMContentLoaded",s),e._reactRetry=s}}function fn(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==="$?"||t==="$~"||t==="&"||t==="F!"||t==="F")break;if(t==="/$"||t==="/&")return null}}return e}var md=null;function qg(e){e=e.nextSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="/$"||n==="/&"){if(t===0)return fn(e.nextSibling);t--}else n!=="$"&&n!=="$!"&&n!=="$?"&&n!=="$~"&&n!=="&"||t++}e=e.nextSibling}return null}function Yg(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="$"||n==="$!"||n==="$?"||n==="$~"||n==="&"){if(t===0)return e;t--}else n!=="/$"&&n!=="/&"||t++}e=e.previousSibling}return null}function Gk(e,t){function n(){s=!0}if(e.ownerDocument.activeElement===e)return!0;var s=!1;try{e.ownerDocument.addEventListener("focus",n,!0),(e.focus||HTMLElement.prototype.focus).call(e,t)}finally{e.ownerDocument.removeEventListener("focus",n,!0)}return s}function Xk(e){Cg(function(){Cg(function(t){return e(t)})})}function Gg(e,t,n){switch(t=mi(n),e){case"html":if(e=t.documentElement,!e)throw Error(u(452));return e;case"head":if(e=t.head,!e)throw Error(u(453));return e;case"body":if(e=t.body,!e)throw Error(u(454));return e;default:throw Error(u(451))}}function Xg(e,t,n){for(var s in n){var c=n[s];n.hasOwnProperty(s)&&c!=null&&Ge(e,t,s,null,bk,c)}n.dangerouslySetInnerHTML!=null&&(e.textContent=""),e.onclick===Cn&&(e.onclick=null),Pi(e)}function pd(e){for(var t=e.attributes;t.length;)e.removeAttributeNode(t[0]);Pi(e)}var hn=new Map,Qg=new Set;function pi(e){if(typeof e.getRootNode=="function"){var t=e.getRootNode();if(t.nodeType===9||t.nodeType===11)return t}return e.nodeType===9?e:e.ownerDocument}var nl=P.d;P.d={f:Qk,r:Zk,D:Vk,C:Kk,L:Ik,m:Jk,X:Pk,S:Fk,M:Wk};function Qk(){var e=nl.f(),t=tc();return e||t}function Zk(e){var t=Ns(e);t!==null&&t.tag===5&&t.type==="form"?Vm(t):nl.r(e)}var aa=typeof document>"u"?null:document;function Zg(e,t,n){var s=aa;if(s&&typeof t=="string"&&t){var c=sn(t);c='link[rel="'+e+'"][href="'+c+'"]',typeof n=="string"&&(c+='[crossorigin="'+n+'"]'),Qg.has(c)||(Qg.add(c),e={rel:e,crossOrigin:n,href:t},s.querySelector(c)===null&&(t=s.createElement("link"),Tt(t,"link",e),pt(t),s.head.appendChild(t)))}}function Vk(e){nl.D(e),Zg("dns-prefetch",e,null)}function Kk(e,t){nl.C(e,t),Zg("preconnect",e,t)}function Ik(e,t,n){nl.L(e,t,n);var s=aa;if(s&&e&&t){var c='link[rel="preload"][as="'+sn(t)+'"]';t==="image"&&n&&n.imageSrcSet?(c+='[imagesrcset="'+sn(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(c+='[imagesizes="'+sn(n.imageSizes)+'"]')):c+='[href="'+sn(e)+'"]';var o=c;switch(t){case"style":o=ia(e);break;case"script":o=ra(e)}if(!(hn.has(o)||(e=L({rel:"preload",href:t==="image"&&n&&n.imageSrcSet?void 0:e,as:t},n),hn.set(o,e),s.querySelector(c)!==null||t==="style"&&s.querySelector(gi(o))||t==="script"&&s.querySelector(vi(o))))){var g=s.createElement("link");Tt(g,"link",e),t==="style"&&(g[Fi]=!0,g.onload=g.onerror=function(){ah(g)}),pt(g),s.head.appendChild(g)}}}function Jk(e,t){nl.m(e,t);var n=aa;if(n&&e){var s=t&&typeof t.as=="string"?t.as:"script",c='link[rel="modulepreload"][as="'+sn(s)+'"][href="'+sn(e)+'"]',o=c;switch(s){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":o=ra(e)}if(!hn.has(o)&&(e=L({rel:"modulepreload",href:e},t),hn.set(o,e),n.querySelector(c)===null)){switch(s){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(vi(o)))return}s=n.createElement("link"),Tt(s,"link",e),pt(s),n.head.appendChild(s)}}}function Fk(e,t,n){nl.S(e,t,n);var s=aa;if(s&&e){var c=Ss(s).hoistableStyles,o=ia(e);t=t||"default";var g=c.get(o);if(!g){var N={loading:0,preload:null};if(g=s.querySelector(gi(o)))N.loading=5;else{e=L({rel:"stylesheet",href:e,"data-precedence":t},n),(n=hn.get(o))&&gd(e,n);var C=g=s.createElement("link");pt(C),Tt(C,"link",e),C._p=new Promise(function(R,H){C.onload=R,C.onerror=H}),C.addEventListener("load",function(){N.loading|=1}),C.addEventListener("error",function(){N.loading|=2}),N.loading|=4,cc(g,t,s)}g={type:"stylesheet",instance:g,count:1,state:N},c.set(o,g)}}}function Pk(e,t){nl.X(e,t);var n=aa;if(n&&e){var s=Ss(n).hoistableScripts,c=ra(e),o=s.get(c);o||(o=n.querySelector(vi(c)),o||(e=L({src:e,async:!0},t),(t=hn.get(c))&&vd(e,t),o=n.createElement("script"),pt(o),Tt(o,"link",e),n.head.appendChild(o)),o={type:"script",instance:o,count:1,state:null},s.set(c,o))}}function Wk(e,t){nl.M(e,t);var n=aa;if(n&&e){var s=Ss(n).hoistableScripts,c=ra(e),o=s.get(c);o||(o=n.querySelector(vi(c)),o||(e=L({src:e,async:!0,type:"module"},t),(t=hn.get(c))&&vd(e,t),o=n.createElement("script"),pt(o),Tt(o,"link",e),n.head.appendChild(o)),o={type:"script",instance:o,count:1,state:null},s.set(c,o))}}function Vg(e,t,n,s){var c=(c=al.current)?pi(c):null;if(!c)throw Error(u(446));switch(e){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(n=ia(n.href),t=Ss(c).hoistableStyles,s=t.get(n),s||(s={type:"style",instance:null,count:0,state:null},t.set(n,s)),s):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){e=ia(n.href);var o=Ss(c).hoistableStyles,g=o.get(e);if(g||(c=c.ownerDocument||c,g={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},o.set(e,g),(o=c.querySelector(gi(e)))?o._p||(g.instance=o,g.state.loading=5):(o=hn.get(e),o||(o={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},hn.set(e,o)),e1(c,e,o,g.state))),t&&s===null)throw Error(u(528,""));return g}if(t&&s!==null)throw Error(u(529,""));return null;case"script":return t=n.async,n=n.src,typeof n=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(n=ra(n),t=Ss(c).hoistableScripts,s=t.get(n),s||(s={type:"script",instance:null,count:0,state:null},t.set(n,s)),s):{type:"void",instance:null,count:0,state:null};default:throw Error(u(444,e))}}function ia(e){return'href="'+sn(e)+'"'}function gi(e){return'link[rel="stylesheet"]['+e+"]"}function Kg(e){return L({},e,{"data-precedence":e.precedence,precedence:null})}function e1(e,t,n,s){if(t=e.querySelector('link[rel="preload"][as="style"]['+t+"]")){if(t[Fi]!==!0){s.loading=1;return}}else t=e.createElement("link"),t[Fi]=!0,t.onload=t.onerror=ah.bind(null,t),Tt(t,"link",n),pt(t),e.head.appendChild(t);s.preload=t,t.addEventListener("load",function(){return s.loading|=1}),t.addEventListener("error",function(){return s.loading|=2})}function ra(e){return'[src="'+sn(e)+'"]'}function vi(e){return"script[async]"+e}function Ig(e,t,n){if(t.count++,t.instance===null)switch(t.type){case"style":var s=e.querySelector('style[data-href~="'+sn(n.href)+'"]');if(s)return t.instance=s,pt(s),s;var c=L({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return s=(e.ownerDocument||e).createElement("style"),pt(s),Tt(s,"style",c),cc(s,n.precedence,e),t.instance=s;case"stylesheet":c=ia(n.href);var o=e.querySelector(gi(c));if(o)return t.state.loading|=4,t.instance=o,pt(o),o;s=Kg(n),(c=hn.get(c))&&gd(s,c),o=(e.ownerDocument||e).createElement("link"),pt(o);var g=o;return g._p=new Promise(function(N,C){g.onload=N,g.onerror=C}),Tt(o,"link",s),t.state.loading|=4,cc(o,n.precedence,e),t.instance=o;case"script":return o=ra(n.src),(c=e.querySelector(vi(o)))?(t.instance=c,pt(c),c):(s=n,(c=hn.get(o))&&(s=L({},n),vd(s,c)),e=e.ownerDocument||e,c=e.createElement("script"),pt(c),Tt(c,"link",s),e.head.appendChild(c),t.instance=c);case"void":return null;default:throw Error(u(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(s=t.instance,t.state.loading|=4,cc(s,n.precedence,e));return t.instance}function cc(e,t,n){for(var s=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),c=s.length?s[s.length-1]:null,o=c,g=0;g<s.length;g++){var N=s[g];if(N.dataset.precedence===t)o=N;else if(o!==c)break}o?o.parentNode.insertBefore(e,o.nextSibling):(t=n.nodeType===9?n.head:n,t.insertBefore(e,t.firstChild))}function gd(e,t){e.crossOrigin==null&&(e.crossOrigin=t.crossOrigin),e.referrerPolicy==null&&(e.referrerPolicy=t.referrerPolicy),e.title==null&&(e.title=t.title)}function vd(e,t){e.crossOrigin==null&&(e.crossOrigin=t.crossOrigin),e.referrerPolicy==null&&(e.referrerPolicy=t.referrerPolicy),e.integrity==null&&(e.integrity=t.integrity)}var uc=null;function Jg(e,t,n){if(uc===null){var s=new Map,c=uc=new Map;c.set(n,s)}else c=uc,s=c.get(n),s||(s=new Map,c.set(n,s));if(s.has(e))return s;for(s.set(e,null),n=n.getElementsByTagName(e),c=0;c<n.length;c++){var o=n[c];if(!(o[Oa]||o[kt]||e==="link"&&o.getAttribute("rel")==="stylesheet")&&o.namespaceURI!=="http://www.w3.org/2000/svg"){var g=o.getAttribute(t)||"";g=e+g;var N=s.get(g);N?N.push(o):s.set(g,[o])}}return s}function xd(e,t,n){e=e.ownerDocument||e,e.head.insertBefore(n,t==="title"?e.querySelector("head > title"):null)}function t1(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;switch(t.rel){case"stylesheet":return e=t.disabled,typeof t.precedence=="string"&&e==null;default:return!0}case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function Fg(e,t){return e==="img"&&t.src!=null&&t.src!==""&&t.onLoad==null&&t.loading!=="lazy"}function Pg(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function Wg(e){return(e.width||100)*(e.height||100)*(typeof devicePixelRatio=="number"?devicePixelRatio:1)*.25}function ev(e,t){typeof t.decode=="function"&&(e.imgCount++,t.complete||(e.imgBytes+=Wg(t),e.suspenseyImages.push(t)),e=s1.bind(e),t.decode().then(e,e))}function n1(e,t,n,s){if(n.type==="stylesheet"&&(typeof s.media!="string"||matchMedia(s.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var c=ia(s.href),o=t.querySelector(gi(c));if(o){t=o._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=xi.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=o,pt(o);return}o=t.ownerDocument||t,s=Kg(s),(c=hn.get(c))&&gd(s,c),o=o.createElement("link"),pt(o);var g=o;g._p=new Promise(function(N,C){g.onload=N,g.onerror=C}),Tt(o,"link",s),n.instance=o}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&(n.state.loading&3)===0&&(e.count++,n=xi.bind(e),t.addEventListener("load",n),t.addEventListener("error",n))}}var oc=0;function l1(e,t){return e.stylesheets&&e.count===0&&fc(e,e.stylesheets),0<e.count||0<e.imgCount?function(n){var s=setTimeout(function(){if(e.stylesheets&&fc(e,e.stylesheets),e.unsuspend){var o=e.unsuspend;e.unsuspend=null,o()}},6e4+t);0<e.imgBytes&&oc===0&&(oc=62500*kk());var c=setTimeout(function(){if(e.waitingForImages=!1,e.count===0&&(e.stylesheets&&fc(e,e.stylesheets),e.unsuspend)){var o=e.unsuspend;e.unsuspend=null,o()}},(e.imgBytes>oc?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(s),clearTimeout(c)}}:null}function tv(e){if(e.count===0&&(e.imgCount===0||!e.waitingForImages)){if(e.stylesheets)fc(e,e.stylesheets);else if(e.unsuspend){var t=e.unsuspend;e.unsuspend=null,t()}}}function xi(){this.count--,tv(this)}function s1(){this.imgCount--,tv(this)}var dc=null;function fc(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,dc=new Map,t.forEach(a1,e),dc=null,xi.call(e))}function a1(e,t){if(!(t.state.loading&4)){var n=dc.get(e);if(n)var s=n.get(null);else{n=new Map,dc.set(e,n);for(var c=e.querySelectorAll("link[data-precedence],style[data-precedence]"),o=0;o<c.length;o++){var g=c[o];(g.nodeName==="LINK"||g.getAttribute("media")!=="not all")&&(n.set(g.dataset.precedence,g),s=g)}s&&n.set(null,s)}c=t.instance,g=c.getAttribute("data-precedence"),o=n.get(g)||s,o===s&&n.set(null,c),n.set(g,c),this.count++,s=xi.bind(this),c.addEventListener("load",s),c.addEventListener("error",s),o?o.parentNode.insertBefore(c,o.nextSibling):(e=e.nodeType===9?e.head:e,e.insertBefore(c,e.firstChild)),t.state.loading|=4}}var ca={$$typeof:Ue,Provider:null,Consumer:null,_currentValue:ce,_currentValue2:ce,_threadCount:0};function i1(e,t,n,s,c,o,g,N,C){this.tag=1,this.containerInfo=e,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=Fc(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Fc(0),this.hiddenUpdates=Fc(null),this.identifierPrefix=s,this.onUncaughtError=c,this.onCaughtError=o,this.onRecoverableError=g,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=C,this.transitionTypes=null,this.incompleteTransitions=new Map}function nv(e,t,n,s,c,o,g,N,C,R,H,Y){return e=new i1(e,t,n,g,C,R,H,Y,N),t=1,o===!0&&(t|=24),o=Ut(3,null,null,t),e.current=o,o.stateNode=e,t=Ou(),t.refCount++,e.pooledCache=t,t.refCount++,o.memoizedState={element:s,isDehydrated:n,cache:t},Uu(o),e}function lv(e){return e?(e=Rs,e):Rs}function sv(e,t,n,s,c,o){c=lv(c),s.context===null?s.context=c:s.pendingContext=c,s=gl(t),s.payload={element:n},o=o===void 0?null:o,o!==null&&(s.callback=o),n=vl(e,s,t),n!==null&&(Lt(n,e,t),Ia(n,e,t))}function av(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function bd(e,t){av(e,t),(e=e.alternate)&&av(e,t)}function iv(e){if(e.tag===13||e.tag===31){var t=Xl(e,67108864);t!==null&&Lt(t,e,67108864),bd(e,67108864)}}function rv(e){if(e.tag===13||e.tag===31){var t=en();t=Pc(t);var n=Xl(e,t);n!==null&&Lt(n,e,t),bd(e,t)}}var ua=!0;function r1(e,t,n,s){var c=U.T;U.T=null;var o=P.p;try{P.p=2,yd(e,t,n,s)}finally{P.p=o,U.T=c}}function c1(e,t,n,s){var c=U.T;U.T=null;var o=P.p;try{P.p=8,yd(e,t,n,s)}finally{P.p=o,U.T=c}}function yd(e,t,n,s){if(ua){var c=kd(s);if(c===null)td(e,t,s,hc,n),uv(e,s);else if(o1(c,e,t,n,s))s.stopPropagation();else if(uv(e,s),t&4&&-1<u1.indexOf(e)){for(;c!==null;){var o=Ns(c);if(o!==null)switch(o.tag){case 3:if(o=o.stateNode,o.current.memoizedState.isDehydrated){var g=Bl(o.pendingLanes);if(g!==0){var N=o;for(N.pendingLanes|=2,N.entangledLanes|=2;g;){var C=1<<31-Vt(g);N.entanglements[1]|=C,g&=~C}Hn(o),(He&6)===0&&(Pr=Qt()+500,di(0))}}break;case 31:case 13:N=Xl(o,2),N!==null&&Lt(N,o,2),tc(),bd(o,2)}if(o=kd(s),o===null&&td(e,t,s,hc,n),o===c)break;c=o}c!==null&&s.stopPropagation()}else td(e,t,s,null,n)}}function kd(e){return e=au(e),jd(e)}var hc=null;function jd(e){if(hc=null,e=Ll(e),e!==null){var t=f(e);if(t===null)e=null;else{var n=t.tag;if(n===13){if(e=h(t),e!==null)return e;e=null}else if(n===31){if(e=p(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 hc=e,null}function cv(e){switch(e){case"beforetoggle":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"seeked":case"submit":case"toggle":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"fullscreenerror":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 2;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"resize":case"scroll":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 8;case"message":switch(k0()){case Vf:return 2;case Kf:return 8;case Zi:case j0:return 32;case If:return 268435456;default:return 32}default:return 32}}var Nd=!1,Al=null,zl=null,_l=null,bi=new Map,yi=new Map,Ol=[],u1="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".split(" ");function uv(e,t){switch(e){case"focusin":case"focusout":Al=null;break;case"dragenter":case"dragleave":zl=null;break;case"mouseover":case"mouseout":_l=null;break;case"pointerover":case"pointerout":bi.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":yi.delete(t.pointerId)}}function ki(e,t,n,s,c,o){return e===null||e.nativeEvent!==o?(e={blockedOn:t,domEventName:n,eventSystemFlags:s,nativeEvent:o,targetContainers:[c]},t!==null&&(t=Ns(t),t!==null&&iv(t)),e):(e.eventSystemFlags|=s,t=e.targetContainers,c!==null&&t.indexOf(c)===-1&&t.push(c),e)}function o1(e,t,n,s,c){switch(t){case"focusin":return Al=ki(Al,e,t,n,s,c),!0;case"dragenter":return zl=ki(zl,e,t,n,s,c),!0;case"mouseover":return _l=ki(_l,e,t,n,s,c),!0;case"pointerover":var o=c.pointerId;return bi.set(o,ki(bi.get(o)||null,e,t,n,s,c)),!0;case"gotpointercapture":return o=c.pointerId,yi.set(o,ki(yi.get(o)||null,e,t,n,s,c)),!0}return!1}function ov(e){var t=Ll(e.target);if(t!==null){var n=f(t);if(n!==null){if(t=n.tag,t===13){if(t=h(n),t!==null){e.blockedOn=t,nh(e.priority,function(){rv(n)});return}}else if(t===31){if(t=p(n),t!==null){e.blockedOn=t,nh(e.priority,function(){rv(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 mc(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=kd(e.nativeEvent);if(n===null){n=e.nativeEvent;var s=new n.constructor(n.type,n);su=s,n.target.dispatchEvent(s),su=null}else return t=Ns(n),t!==null&&iv(t),e.blockedOn=n,!1;t.shift()}return!0}function dv(e,t,n){mc(e)&&n.delete(t)}function d1(){Nd=!1,Al!==null&&mc(Al)&&(Al=null),zl!==null&&mc(zl)&&(zl=null),_l!==null&&mc(_l)&&(_l=null),bi.forEach(dv),yi.forEach(dv)}function pc(e,t){e.blockedOn===t&&(e.blockedOn=null,Nd||(Nd=!0,l.unstable_scheduleCallback(l.unstable_NormalPriority,d1)))}var gc=null;function fv(e){gc!==e&&(gc=e,l.unstable_scheduleCallback(l.unstable_NormalPriority,function(){gc===e&&(gc=null);for(var t=0;t<e.length;t+=3){var n=e[t],s=e[t+1],c=e[t+2];if(typeof s!="function"){if(jd(s||n)===null)continue;break}var o=Ns(n);o!==null&&(e.splice(t,3),t-=3,lo(o,{pending:!0,data:c,method:n.method,action:s},s,c))}}))}function oa(e){function t(C){return pc(C,e)}Al!==null&&pc(Al,e),zl!==null&&pc(zl,e),_l!==null&&pc(_l,e),bi.forEach(t),yi.forEach(t);for(var n=0;n<Ol.length;n++){var s=Ol[n];s.blockedOn===e&&(s.blockedOn=null)}for(;0<Ol.length&&(n=Ol[0],n.blockedOn===null);)ov(n),n.blockedOn===null&&Ol.shift();if(n=(e.ownerDocument||e).$$reactFormReplay,n!=null)for(s=0;s<n.length;s+=3){var c=n[s],o=n[s+1],g=c[Dt]||null;if(typeof o=="function")g||fv(n);else if(g){var N=null;if(o&&o.hasAttribute("formAction")){if(c=o,g=o[Dt]||null)N=g.formAction;else if(jd(c)!==null)continue}else N=g.action;typeof N=="function"?n[s+1]=N:(n.splice(s,3),s-=3),fv(n)}}}function hv(){function e(o){o.canIntercept&&o.info==="react-transition"&&o.intercept({handler:function(){return new Promise(function(g){return c=g})},focusReset:"manual",scroll:"manual"})}function t(){c!==null&&(c(),c=null),s||setTimeout(n,20)}function n(){if(!s&&!navigation.transition){var o=navigation.currentEntry;o&&o.url!=null&&navigation.navigate(o.url,{state:o.getState(),info:"react-transition",history:"replace"})}}if(typeof navigation=="object"){var s=!1,c=null;return navigation.addEventListener("navigate",e),navigation.addEventListener("navigatesuccess",t),navigation.addEventListener("navigateerror",t),setTimeout(n,100),function(){s=!0,navigation.removeEventListener("navigate",e),navigation.removeEventListener("navigatesuccess",t),navigation.removeEventListener("navigateerror",t),c!==null&&(c(),c=null)}}}function Sd(e){this._internalRoot=e}vc.prototype.render=Sd.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(u(409));var n=t.current,s=en();sv(n,s,e,t,null,null)},vc.prototype.unmount=Sd.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;sv(e.current,2,null,e,null,null),tc(),t[js]=null}};function vc(e){this._internalRoot=e}vc.prototype.unstable_scheduleHydration=function(e){if(e){var t=th();e={blockedOn:null,target:e,priority:t};for(var n=0;n<Ol.length&&t!==0&&t<Ol[n].priority;n++);Ol.splice(n,0,e),n===0&&ov(e)}};var mv=a.version;if(mv!=="19.3.1")throw Error(u(527,mv,"19.3.1"));P.findDOMNode=function(e){var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(u(188)):(e=Object.keys(e).join(","),Error(u(268,e)));return e=b(t),e=e!==null?v(e):null,e=e===null?null:e.stateNode,e};var f1={bundleType:0,version:"19.3.1",rendererPackageName:"react-dom",currentDispatcherRef:U,reconcilerVersion:"19.3.1"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var xc=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!xc.isDisabled&&xc.supportsFiber)try{Aa=xc.inject(f1),Zt=xc}catch{}}return Ni.createRoot=function(e,t){if(!d(e))throw Error(u(299));var n=!1,s="",c=lp,o=sp,g=ap;return t!=null&&(t.unstable_strictMode===!0&&(n=!0),t.identifierPrefix!==void 0&&(s=t.identifierPrefix),t.onUncaughtError!==void 0&&(c=t.onUncaughtError),t.onCaughtError!==void 0&&(o=t.onCaughtError),t.onRecoverableError!==void 0&&(g=t.onRecoverableError)),t=nv(e,1,!1,null,null,n,s,null,c,o,g,hv),e[js]=t.current,ed(e),new Sd(t)},Ni.hydrateRoot=function(e,t,n){if(!d(e))throw Error(u(299));var s=!1,c="",o=lp,g=sp,N=ap,C=null;return n!=null&&(n.unstable_strictMode===!0&&(s=!0),n.identifierPrefix!==void 0&&(c=n.identifierPrefix),n.onUncaughtError!==void 0&&(o=n.onUncaughtError),n.onCaughtError!==void 0&&(g=n.onCaughtError),n.onRecoverableError!==void 0&&(N=n.onRecoverableError),n.formState!==void 0&&(C=n.formState)),t=nv(e,1,!0,t,n??null,s,c,C,o,g,N,hv),t.context=lv(null),n=t.current,s=en(),s=Pc(s),c=gl(s),c.callback=null,vl(n,c,s),n=s,t.current.lanes=n,_a(t,n),Hn(t),e[js]=t.current,ed(e),new vc(t)},Ni.version="19.3.1",Ni}var Tv;function S1(){if(Tv)return Td.exports;Tv=1;function l(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(l)}catch(a){console.error(a)}}return l(),Td.exports=N1(),Td.exports}var w1=S1(),w=df();const T1=["general","providers","models","memory","image","search","skills","work","push","about"];function E1(l){const[a,r]=l.replace(/^#\/?/,"").split("/");let u=null;try{u=r?decodeURIComponent(r):null}catch{}return a==="chat"&&u?{sel:u,settings:!1,section:null}:a==="settings"?{sel:null,settings:!0,section:T1.find(f=>f===u)??null}:{sel:null,settings:!1,section:null}}function C1(l,a){return l.page==="settings"?l.section?`#/settings/${l.section}`:"#/settings":!l.sel||a&&l.mobile!=="chat"?"":`#/chat/${encodeURIComponent(l.sel)}`}const A1=["searxng","exa","tavily","brave","serper","jina","firecrawl","perplexity","youcom","ollama"];function qx(){return A1.map(l=>({name:l,enabled:!1}))}class Ie extends Error{constructor(r,u){super(u);Le(this,"status");this.status=r}}async function re(l,a){let r;try{r=await fetch(l,{credentials:"same-origin",...a})}catch(d){throw new Ie(0,`无法连接 Hob:${d instanceof Error?d.message:String(d)}`)}if(!r.ok){let d=`${r.status} ${r.statusText}`;try{const f=await r.json();f!=null&&f.error&&(d=f.error)}catch{}throw new Ie(r.status,d)}if(r.status===204)return;const u=await r.text();return u?JSON.parse(u):void 0}function lt(l,a="POST"){return{method:a,headers:{"content-type":"application/json"},body:JSON.stringify(l)}}const z1=["assistant","assistant_removed","item","delta","job","delegation","job_step","activity","approval","draft","routine","routine_removed","profile"],_1={me:()=>re("/api/me"),login:l=>re("/api/login",lt({password:l})),logout:()=>re("/api/logout",{method:"POST"}),bootstrap:()=>re("/api/bootstrap"),settings:()=>re("/api/settings"),models:()=>re("/api/models"),putSettings:(l,a)=>re("/api/settings",lt({revision:l,patch:a},"PUT")),providers:()=>re("/api/providers"),putProvider:(l,a)=>re(`/api/providers/${encodeURIComponent(l)}`,lt(a,"PUT")),putThinking:l=>re("/api/models/thinking",lt(l,"PUT")),deleteProvider:l=>re(`/api/providers/${encodeURIComponent(l)}`,{method:"DELETE"}),testProvider:l=>re("/api/providers/test",lt(l)),discoverProvider:l=>re("/api/providers/discover",lt(l)),providersImport:()=>re("/api/providers/import"),importProviders:l=>re("/api/providers/import",lt({ids:l})),skills:()=>re("/api/skills"),skillsImport:l=>re(`/api/skills/import/${l}`),importSkills:(l,a,r)=>re(`/api/skills/import/${l}`,lt({ids:a,overwrite:r})),deleteSkill:l=>re(`/api/skills/${encodeURIComponent(l)}`,{method:"DELETE"}),search:()=>re("/api/search"),putSearch:(l,a,r)=>re("/api/search",lt({revision:l,providers:a,keys:r},"PUT")),testSearch:(l,a,r)=>re("/api/search/test",lt({name:l,baseUrl:a,apiKey:r})),imageKey:()=>re("/api/image"),putImage:(l,a,r)=>re("/api/image",lt({revision:l,image:a,...r?{apiKey:r}:{}},"PUT")),imageTest:l=>re("/api/image/test",lt(l)),changePassword:(l,a)=>re("/api/password",lt({old:l,new:a})),about:()=>re("/api/about"),memory:()=>re("/api/memory"),putMemory:(l,a)=>re("/api/memory",lt({revision:l,provider:a},"PUT")),putLore:l=>re("/api/memory/lore",lt(l,"PUT")),loreTest:l=>re("/api/memory/lore-test",lt(l)),loreImport:()=>re("/api/memory/lore/import"),importLore:()=>re("/api/memory/lore/import",{method:"POST"}),items:(l,a)=>re(`/api/assistants/${encodeURIComponent(l)}/items?limit=60${a?`&before=${encodeURIComponent(a)}`:""}`),profile:l=>re(`/api/assistants/${encodeURIComponent(l)}/profile`),sendMessage:(l,a)=>re(`/api/assistants/${encodeURIComponent(l)}/messages`,lt(a)),stopAssistant:l=>re(`/api/assistants/${encodeURIComponent(l)}/stop`,{method:"POST"}),markRead:l=>re(`/api/assistants/${encodeURIComponent(l)}/read`,{method:"POST"}),patchAssistant:(l,a)=>re(`/api/assistants/${encodeURIComponent(l)}`,{method:"PATCH",headers:{"content-type":"application/json"},body:JSON.stringify(a)}),mergeAssistant:l=>re(`/api/assistants/${encodeURIComponent(l)}/merge`,{method:"POST"}),deleteRule:(l,a)=>re(`/api/assistants/${encodeURIComponent(l)}/rules/${encodeURIComponent(a)}`,{method:"DELETE"}),retryDelegation:l=>re(`/api/delegations/${encodeURIComponent(l)}/retry`,{method:"POST"}),answerApproval:(l,a)=>re(`/api/approvals/${encodeURIComponent(l)}`,lt(a)),createDraft:l=>re(`/api/drafts/${encodeURIComponent(l)}/create`,{method:"POST"}),dismissDraft:l=>re(`/api/drafts/${encodeURIComponent(l)}/dismiss`,{method:"POST"}),createRoutine:l=>re("/api/routines",lt(l)),patchRoutine:(l,a)=>re(`/api/routines/${encodeURIComponent(l)}`,{method:"PATCH",headers:{"content-type":"application/json"},body:JSON.stringify(a)}),deleteRoutine:l=>re(`/api/routines/${encodeURIComponent(l)}`,{method:"DELETE"}),runRoutine:l=>re(`/api/routines/${encodeURIComponent(l)}/run`,{method:"POST"}),replyJob:(l,a)=>re(`/api/jobs/${encodeURIComponent(l)}/reply`,lt({text:a})),stopJob:l=>re(`/api/jobs/${encodeURIComponent(l)}/stop`,{method:"POST"}),transcript:l=>re(`/api/jobs/${encodeURIComponent(l)}/transcript`),jobs:(l={})=>{const a=new URLSearchParams;l.assistantId&&a.set("assistantId",l.assistantId),l.status&&a.set("status",l.status),l.before&&a.set("before",l.before),l.limit&&a.set("limit",String(l.limit));const r=a.toString();return re(`/api/jobs${r?`?${r}`:""}`)},upload:async l=>{var u;const a=new FormData;a.append("file",l);const r=await re("/api/uploads",{method:"POST",body:a});if(!((u=r.file)!=null&&u.path))throw new Error("上传响应缺少文件路径");return r.file.path},fileUrl:(l,a)=>`/api/files?path=${encodeURIComponent(l)}${a!=null&&a.inline?"&inline=1":""}${a!=null&&a.truncate?"&truncate=1":""}${a!=null&&a.thumb?"&thumb=1":""}`,fileMeta:l=>re(`/api/files/meta?path=${encodeURIComponent(l)}`),jobFiles:l=>re(`/api/jobs/${encodeURIComponent(l)}/files`),push:()=>re("/api/push"),subscribePush:(l,a)=>re("/api/push/subscribe",lt({subscription:l,label:a})).then(r=>r.push),unsubscribePush:l=>re("/api/push/subscribe",{method:"DELETE",headers:{"content-type":"application/json"},body:JSON.stringify({endpoint:l})}),testPush:l=>re("/api/push/test",lt(l?{endpoint:l}:{})),visibility:(l,a)=>re("/api/visibility",lt({clientId:l,visible:a})),events:({onEvent:l,onReconnect:a,onDown:r},u)=>{const d=new EventSource(`/api/events${u?`?clientId=${encodeURIComponent(u)}`:""}`);let f=!1;const h=p=>{try{l(JSON.parse(p.data))}catch{}};d.onmessage=h;for(const p of z1)d.addEventListener(p,h);return d.onerror=()=>{f=!0,r(d.readyState===EventSource.CLOSED?"实时连接已断开":"实时连接中断,正在重连")},d.onopen=()=>{f&&(f=!1,a())},()=>d.close()}},O1=60;function M1(l,a){return l.at===a.at?0:l.at<a.at?-1:1}function Yx(l,a,r=O1){const u=Array.isArray(a)?a:[a];if(!u.length)return l;const d=l.slice(),f=new Map;d.forEach((h,p)=>f.set(h.id,p));for(const h of u){const p=f.get(h.id);p===void 0?(f.set(h.id,d.length),d.push(h)):d[p]=h}return d.sort(M1),d.length>r?d.slice(-r):d}function R1(l,a,r){const u=l.findIndex(h=>h.id===a);if(u<0)return l;const d=l[u];if(d.kind!=="assistant")return l;const f=l.slice();return f[u]={...d,text:d.text+r},f}function Gx(l){const a=l[l.length-1];return(a==null?void 0:a.kind)==="assistant"&&!!a.streaming}function D1(l,a){return l.state==="writing"&&!a.seen&&!a.closed&&a.inChat&&l.assistantId===a.assistantId}function U1(l,a){return l.filter(r=>r.assistantId===a&&r.state==="writing")}const $1=900,ga=new Map;function Xx(l){for(const a of l)ga.has(a)||ga.set(a,window.setTimeout(()=>ga.delete(a),$1))}function H1(l){return ga.has(l)}function B1(){for(const l of ga.values())window.clearTimeout(l);ga.clear()}function Bn(l,a=180){const[r,u]=w.useState(l);return w.useEffect(()=>{if(l){u(!0);return}const d=window.setTimeout(()=>u(!1),a);return()=>window.clearTimeout(d)},[l,a]),{mounted:r,leaving:r&&!l}}function Qx(l,a,r="",u=200){const[d,f]=w.useState([]),[h,p]=w.useState([]),m=w.useRef(null),b=w.useRef(r),v=w.useRef([]),y=w.useRef([]);return w.useEffect(()=>{const T=l.map(a);if(m.current===null||b.current!==r){m.current=new Set(T),b.current=r,v.current=l;return}const k=T.filter(j=>!m.current.has(j)),x=v.current.filter(j=>!T.includes(a(j)));if(m.current=new Set(T),v.current=l,k.length&&(f(j=>[...j,...k]),y.current.push(window.setTimeout(()=>f(j=>j.filter(E=>!k.includes(E))),1e3))),x.length){const j=x.map(E=>({item:E,key:a(E),state:"leave"}));p(E=>[...E,...j]),y.current.push(window.setTimeout(()=>p(E=>E.filter(A=>!j.some(X=>X.key===A.key))),u))}},[l,a,r,u]),w.useEffect(()=>{const T=y.current;return()=>{for(const k of T)window.clearTimeout(k)}},[]),[...l.map(T=>{const k=a(T);return{item:T,key:k,state:d.includes(k)?"enter":"still"}}),...h]}function $c(l){return`pending/${l.id}/${l.name}`}function L1(l){return{kind:"user",id:l.localId,at:l.at,text:l.text,...l.quote?{quote:l.quote}:{},...l.attachments.length?{files:l.attachments.map(a=>a.path??$c(a))}:{}}}function q1(l,a){if(a.kind!=="user"||l.status!=="sending"||a.text!==l.text)return!1;const r=l.attachments.map(d=>d.path),u=a.files??[];return r.length===u.length&&r.every((d,f)=>d===u[f])}const Y1={".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".webp":"image/webp"};function Oi(l){const a=l.lastIndexOf(".");return a===-1?!1:l.slice(a).toLowerCase()in Y1}function Si(l){return(l.split("/").pop()??l).replace(/^u-[a-z0-9]{6}-/,"")}const Ac=["off","minimal","low","medium","high","xhigh","max"],Tc={off:"关闭",minimal:"最低",low:"低",medium:"中",high:"高",xhigh:"很高",max:"最高"},G1=40;function X1(l,a){return a?/gpt/i.test(l)?Ac.slice(0,6):[...Ac]:["off"]}function Q1(l,a){return a==="google-generative-ai"||a==="google-vertex"?"high":l}function Z1(l,a,r,u){if(!a)return{levels:["off"],chars:{},map:{}};const d=X1(l,a),f=[],h={},p={};for(const m of Ac){const b=r==null?void 0:r[m];if(!(b!==void 0?b!==null:d.includes(m))){p[m]=null;continue}f.push(m);const y=typeof b=="string"?b.trim():"";h[m]=y,y?p[m]=y:(m==="xhigh"||m==="max")&&(p[m]=Q1(m,u))}return{levels:f,chars:h,map:p}}function V1(l){if(!l||typeof l!="object"||Array.isArray(l))return;const a=l,r={};let u=!1;for(const d of Ac){if(!(d in a))continue;u=!0;const f=a[d];if(f===null){r[d]=null;continue}const h=typeof f=="string"?f.trim():"";r[d]=h.length<=G1?h:""}if(u)return r.off===null&&(r.off=""),r}const Zx={"act-demo":{sel:"hob",panel:"now",collapsed:!1,dark:!1,mobile:"chat"},"act-think":{sel:"hob",panel:"now",collapsed:!1,dark:!1,mobile:"chat"},"act-tool":{sel:"hob",panel:"now",collapsed:!1,dark:!1,mobile:"chat"},"act-dark":{sel:"hob",panel:"now",collapsed:!1,dark:!0,mobile:"chat"},"act-home":{sel:"hob",panel:"now",collapsed:!1,dark:!1,mobile:"list"},boot:{sel:"hob",panel:"now",collapsed:!1,dark:!1,mobile:"list"},bubbles:{sel:"hob",panel:"now",collapsed:!1,dark:!1,mobile:"chat"},"bubbles-dark":{sel:"hob",panel:"now",collapsed:!1,dark:!0,mobile:"chat"},s1:{sel:"hob",panel:"now",collapsed:!1,dark:!1,mobile:"list"},s2:{sel:"bird",panel:"routine:r-daily",collapsed:!1,dark:!1,mobile:"list"},s3:{sel:"page",panel:"assistant",collapsed:!1,dark:!1,mobile:"list"},s4:{sel:"hob",panel:"now",collapsed:!0,dark:!1,mobile:"list"},s6:{sel:"hob",panel:"now",collapsed:!1,dark:!0,mobile:"list"},mlist:{sel:null,panel:"now",collapsed:!1,dark:!1,mobile:"list"},mchat:{sel:"page",panel:"now",collapsed:!1,dark:!1,mobile:"chat"},"d-running":{sel:"hob",panel:"now",collapsed:!1,dark:!1,mobile:"chat"},"d-waiting":{sel:"hob",panel:"now",collapsed:!1,dark:!1,mobile:"chat"},"d-done":{sel:"hob",panel:"now",collapsed:!1,dark:!1,mobile:"chat"},"d-dark":{sel:"hob",panel:"now",collapsed:!1,dark:!0,mobile:"chat"},"d-source":{sel:"server",panel:"now",collapsed:!1,dark:!1,mobile:"chat"},"d-mobile":{sel:"hob",panel:"now",collapsed:!1,dark:!1,mobile:"chat"},"h-hob":{sel:"hob",panel:"now",collapsed:!1,dark:!1,mobile:"chat"},"h-dark":{sel:"hob",panel:"now",collapsed:!1,dark:!0,mobile:"chat"},"h-source":{sel:"server",panel:"now",collapsed:!1,dark:!1,mobile:"chat"},"h-settings":{sel:"server",panel:"assistant",collapsed:!1,dark:!1,mobile:"chat"},"h-mobile":{sel:"hob",panel:"now",collapsed:!1,dark:!1,mobile:"chat"}},qt=(()=>{let l=0;return a=>`${a}${++l}`})();function I(l,a,r=0){const u=new Date;return u.setDate(u.getDate()-l),u.setHours(a,r,0,0),u.toISOString()}function be(l){return new Date(Date.now()-l*6e4).toISOString()}function pe(l){return JSON.parse(JSON.stringify(l))}const K1=[{at:be(6),verb:"$",text:"npm run typecheck"},{at:be(5),verb:"读",text:"protocol/src/projection.ts"},{at:be(4),verb:"读",text:"client/src/runtime/store.ts"},{at:be(3),verb:"跑",text:"npm test -w protocol"},{at:be(2),verb:"读",text:"client/src/chat/Transcript.tsx"},{at:be(1),verb:"读",text:"client/src/chat/ToolRow.tsx"}];function I1(l){const a=l==="s1"||l==="s6",r=l==="s4",u=a||l==="mlist",d=!u&&l!=="mchat",f=[{id:"hob",name:"Hob",duty:"主助手",sprite:"hob",primary:!0,pinned:!0,hidden:!1,notify:!0,instructions:"输出用中文短句;编写代码的任务先询问项目目录。",createdAt:I(30,9,0),last:{text:"已交给任务处理,完成后通知你。",at:I(0,10,5)},unread:0,busy:!0},{id:"page",name:"写作",duty:"周报和文章",sprite:"page",primary:!1,pinned:!0,hidden:!1,notify:!0,instructions:"口语化短句;标题不超过 20 字;配图自行生成;周报每周五提交。",models:{work:{ref:"faux/smart",thinking:"high"},allowed:["faux/smart","faux/vision"]},abilities:{exec:!1,write:!0,image:!0},createdAt:I(30,9,0),last:{text:"好的。每周五 17:00 撰写初稿,存入草稿箱,完成后通知你。",at:I(0,10,20)},unread:2,busy:!1},{id:"server",name:"服务器",duty:"线上和机器",sprite:"server",primary:!1,pinned:!0,hidden:!1,notify:!0,instructions:"清理日志前先查看保留天数的规则。",createdAt:I(28,9,0),last:{text:"凌晨 3 点清理 2.1GB 旧日志",at:I(1,3,5)},unread:0,busy:!1},{id:"bird",name:"行业动态",duty:"每天 6 条行业动态",sprite:"bird",primary:!1,pinned:!1,hidden:!1,notify:!0,instructions:"关注 agent 编排和本地部署,不包含融资新闻。",createdAt:I(7,9,0),splitFrom:{from:"hob",at:I(7,9,0),conversations:8},last:{text:"今天 6 条,挑选了 2 条重点",at:I(0,9,0)},unread:0,busy:!1},{id:"house",name:"家里 NAS",duty:"相册和备份",sprite:"house",primary:!1,pinned:!1,hidden:!1,notify:!1,instructions:"",createdAt:I(25,9,0),last:{text:"相册备份完成,新增 312 张",at:I(0,7,30)},unread:0,busy:!1},{id:"coin",name:"记账",duty:"账单和预算",sprite:"coin",primary:!1,pinned:!1,hidden:!1,notify:!1,instructions:"",createdAt:I(24,9,0),last:{text:"10 月账单已整理完成,比上月减少 12%",at:I(1,21,10)},unread:0,busy:!1},{id:"book",name:"读书",duty:"读书笔记",sprite:"book",primary:!1,pinned:!1,hidden:!0,notify:!1,instructions:"",createdAt:I(20,9,0),last:{text:"本周读书笔记已整理完成",at:I(3,20,0)},unread:0,busy:!1},{id:"leaf",name:"健身",duty:"每周训练",sprite:"leaf",primary:!1,pinned:!1,hidden:!0,notify:!1,instructions:"",createdAt:I(18,9,0),last:{text:"本周三次训练已记录",at:I(2,19,0)},unread:0,busy:!1}],h=(B,ae,ne,Se,Ze,fe,Ve,Ue,W)=>({id:B,assistantId:ae,title:ne,detail:Se,options:Ze,status:fe?"answered":"pending",chosen:fe?Ve:void 0,source:"router",ruleText:W,createdAt:Ue,answeredAt:fe?Ue:void 0}),m={"ap-publish":h("ap-publish","page","发到公众号吗?",void 0,pe([{key:"A",label:"发布"},{key:"B",label:"暂不发布"},{key:"C",label:"以后同类内容直接发布,无需确认",always:!0}]),d,"C",I(0,7,42),"发公众号"),"ap-split":h("ap-split","hob","是否创建一个专属助手「行业动态」?",a?"这两周你让我查询了 8 次模型和 agent 产品的动态。创建后它会记住你关注的内容,每天早上 9 点提供一份简报。":"这两周你让我查询了 8 次模型和 agent 产品的动态。",[{key:"A",label:"创建专属助手"},{key:"B",label:"暂不创建"}],!u,"A",I(0,10,15))},b={id:"d-bird",assistantId:"hob",status:r?"pending":"created",name:"行业动态",sprite:"bird",duty:"跟踪模型发布、agent 产品和开源项目",dutyLong:"跟踪模型发布、agent 产品和开源项目",routines:[{name:"每日简报",instruction:"挑最值得看的几条,最多 6 条",schedule:"0 9 * * *"}],routinesText:"每天 09:00 简报,最多 6 条;重要发布随时提醒",askFirst:["花钱订阅","替你对外发消息"],instructions:["关心 agent 编排和本地部署","不看融资新闻"],carry:{conversations:8},createdAssistantId:r?void 0:"bird",createdAt:I(0,10,17)},v={id:"t-0931",assistantId:"hob",title:"排查页面卡顿",instruction:"排查页面卡顿的原因,不要修改代码。",status:"running",createdAt:be(6),startedAt:be(6),stats:{reads:14,commands:3,edits:0},cwd:"/srv/example/site",activity:pe(K1)},y={id:"t-0927",assistantId:"server",title:"清理旧日志",instruction:"清理三天前的旧日志,不要影响正在运行的服务。",status:"done",createdAt:I(1,3,0),startedAt:I(1,3,0),endedAt:I(1,3,5),stats:{reads:4,commands:2,edits:0},summary:"已清理 2.1GB 旧日志,服务均正常运行。",files:["/srv/example/reports/log-cleanup-1031.md"],activity:[{at:I(1,3,0),verb:"$",text:"du -sh /var/log/*"},{at:I(1,3,1),verb:"读",text:"/var/log/nginx"},{at:I(1,3,3),verb:"跑",text:"find /var/log -mtime +3 -delete"},{at:I(1,3,5),verb:"说",text:"已清理 2.1GB,服务均正常运行。"}]},S={id:"t-0929",assistantId:"house",title:"整理相册备份",instruction:"把手机里这个月的照片备份到 NAS,重复的跳过。",status:"done",createdAt:be(58),startedAt:be(58),endedAt:be(51),stats:{reads:6,commands:2,edits:0},summary:"新增 312 张,重复跳过 87 张,占用 4.2GB。",activity:[{at:be(57),verb:"读",text:"/mnt/nas/photos"},{at:be(55),verb:"跑",text:"rsync -a --ignore-existing /sdcard/DCIM /mnt/nas/photos/"},{at:be(51),verb:"说",text:"新增 312 张,占用 4.2GB。"}]},T=[{id:"r-morning",assistantId:"hob",name:"早报",instruction:"汇总昨天交代的事项和今天的重要事项,早上汇报一次。",schedules:["0 8 * * *"],active:!0,createdAt:I(20,21,0),runs:[{jobId:"t-0901",at:I(0,8,0),status:"done"}]},{id:"r-weekly-reminder",assistantId:"hob",name:"周报提醒",instruction:"周五下午提醒查看本周周报。",schedules:["0 17 * * 5"],active:!0,createdAt:I(20,21,2),runs:[]},{id:"r-reconcile",assistantId:"hob",name:"月底对账",instruction:"月末核对账单,列出不一致的项目。",schedules:["0 9 28 * *"],active:!1,createdAt:I(19,10,0),runs:[{jobId:"t-0820",at:I(4,9,0),status:"done"}]},{id:"r-daily",assistantId:"bird",name:"每日简报",instruction:"挑模型发布、agent 产品和开源项目里最值得看的几条,每条一句话说清为什么重要。最多 6 条,不看融资新闻。",schedules:["0 9 * * *"],active:!0,createdAt:I(7,9,0),runs:[{jobId:"t-0926",at:I(0,9,0),status:"done"},{jobId:"t-0925",at:I(1,9,0),status:"done"},{jobId:"t-0924",at:I(2,9,1),status:"done"},{jobId:"t-0923",at:I(3,9,0),status:"done"}]},{id:"r-weekly-draft",assistantId:"page",name:"周报初稿",instruction:"每周五 17:00 撰写周报初稿,存入草稿箱,完成后通知我。",schedules:["0 17 * * 5"],active:!0,createdAt:I(0,10,21),runs:[]}],k=(B,ae,ne,Se)=>({kind:"assistant",id:B,at:ae,text:ne,routine:Se}),j=[k("i-h1",I(0,8,0),`早上好。昨晚交代的两件事均已完成:
51
+
52
+ - 写作已将周报初稿存入草稿箱
53
+ - 服务器凌晨 3 点清理了 2.1GB 旧日志`),{kind:"user",id:"i-h3",at:I(0,10,5),text:"页面为什么这么卡?排查一下原因,不要修改代码。"},k("i-h4",I(0,10,5),"已交给任务处理,完成后通知你。"),{kind:"job",id:"i-h5",at:I(0,10,5),jobId:"t-0931"},{kind:"question",id:"i-h6",at:I(0,10,a?9:15),approvalId:"ap-split"}];a||j.push({kind:"user",id:"i-h7",at:I(0,10,16),text:"创建专属助手吧。最多 6 条即可,不要包含融资新闻。"},k("i-h8",I(0,10,17),"草稿如下,需要修改请直接说明:"),{kind:"draft",id:"i-h9",at:I(0,10,17),draftId:"d-bird"});const E=r?j.filter(B=>!["i-h2","i-h3","i-h4","i-h5"].includes(B.id)):j,A=[k("i-p1",I(1,17,5),"周报初稿已完成,存放在草稿箱。"),{kind:"user",id:"i-p2",at:I(1,17,6),text:l==="mchat"?"好,周一发布。":"标题再短一些。"},k("i-p3",I(1,17,8),l==="mchat"?"好的,周一发布时我会再提醒你。":"已改为《这周:Hob 立项》。"),k("i-p4",I(0,7,40),"《Grok Bot 能借鉴什么》已完成,3200 字,包含 4 张配图。"),{kind:"file",id:"i-p5",at:I(0,7,41),path:"/srv/example/notes/Grok Bot 能借鉴什么.md",name:"Grok Bot 能借鉴什么.md",meta:"3200 字 · 4 张图"},{kind:"question",id:"i-p6",at:I(0,7,42),approvalId:"ap-publish"}];l!=="mchat"&&A.push({kind:"note",id:"i-p7",at:I(0,7,43),icon:"rule",text:"已记入写作的规则 · 发布公众号无需确认"},k("i-p8",I(0,7,44),"已发布。[查看文章](https://mp.weixin.qq.com/)"),{kind:"user",id:"i-p9",at:I(0,10,20),text:"以后周报也由你负责,周五下午提供初稿。"},k("i-p10",I(0,10,20),"好的。每周五 17:00 撰写初稿,存入草稿箱,完成后通知你。"),{kind:"note",id:"i-p11",at:I(0,10,21),icon:"routine",text:"新增定时任务 · 周报初稿 · 每周五 17:00"});const X=[{kind:"note",id:"i-b0",at:I(7,9,0),icon:"split",text:`${new Date(I(7,9,0)).getMonth()+1}月${new Date(I(7,9,0)).getDate()}日 由 Hob 创建 · 迁移 8 段对话、14 条记忆`},k("i-b1",I(1,9,0),"昨天 5 条,没有特别要紧的。[看全部 5 条](https://example.com/)",{id:"r-daily",name:"每日简报"}),k("i-b2",I(0,9,0),"今天 6 条,挑选 2 条重点:",{id:"r-daily",name:"每日简报"}),k("i-b3",I(0,9,0),`1. DeepSeek 公开 Super-agent 设计:路由只分派,任务隔离执行。
54
+ 2. xAI 的 Grok Bot:常驻 Bot 加定时任务,结果直接回到对话。
55
+
56
+ [看全部 6 条](https://example.com/)`),{kind:"user",id:"i-b4",at:I(0,9,12),text:"这个和 Hob 相比,差异在哪里?",quote:{itemId:"i-b3",text:"xAI 的 Grok Bot:常驻 Bot 加定时任务…"}},k("i-b5",I(0,9,12),"它的 Bot 有一台云电脑,能直接操作网页;Bot 之间也能互相发消息。定时任务、审批、助手创建,我们均已具备。"),{kind:"user",id:"i-b6",at:I(0,9,14),text:"以后不需要包含融资新闻。"},k("i-b7",I(0,9,14),"好的,已记录。"),{kind:"note",id:"i-b8",at:I(0,9,14),icon:"memory",text:"记忆已更新 · 不包含融资新闻"}],J=(B,ae,ne,Se)=>[k(`${B}-1`,I(1,20,0),ae),{kind:"user",id:`${B}-2`,at:I(1,20,2),text:ne},k(`${B}-3`,I(1,20,3),Se)],F={hob:E,page:A,bird:X,server:[...J("i-s","凌晨清理日志的任务已完成,清理 2.1GB,服务均正常运行。","好的,以后每月清理一次。","已记录:每月 1 号凌晨 3 点清理一次。"),{kind:"job",id:"i-s4",at:I(1,3,5),jobId:"t-0927"}],house:J("i-ho","相册备份已完成,新增 312 张,占用 4.2GB。","硬盘还剩多少?","剩余 1.8TB,可用约半年。"),coin:J("i-c","10 月账单已整理完成,比上月减少 12%。","哪一类支出较多?","餐饮和打车,比上月增加 800。"),book:J("i-bk","本周读书笔记已整理完成,共三条。","发给我看看。","已放入文件中。"),leaf:J("i-lf","本周三次训练已记录。","下周增加到四次。","好的,下周安排四次。")};(l==="bubbles"||l==="bubbles-dark")&&(F.hob=[{kind:"user",id:"bubble-user",at:be(3),text:"给我看看公式、代码和媒体。"},k("bubble-text",be(2),"行内公式 $E=mc^2$,整行公式:\n\n$$\\sum_{i=1}^{n} i = \\frac{n(n+1)}{2}$$\n\n```js\nconst answer = 42;\n```\n\n```sh\necho hello\n```\n\n价格是 $5 和 $10。"),k("bubble-md",be(2),"我把刚才的示意图整理成 `.md` 文件,图用 Mermaid 写,方便你看源码或直接预览。"),{kind:"job",id:"bubble-job",at:be(2),jobId:"t-0927"},{kind:"file",id:"bubble-file",at:be(2),path:"/mock/火星日落示意图.md",name:"火星日落示意图.md",meta:"349 字"},k("bubble-after-file",be(2),"《火星日落示意图.md》已发给你。直接打开能看 Markdown 源码,用支持 Mermaid 的预览器可以看到光路图。"),{kind:"file",id:"bubble-page",at:be(2),path:"/mock/sunset.html",name:"如果在地球和火星同时看日落",meta:"两幅同视角示意图:看太阳周围,再看远离太阳的天空。"},k("bubble-list",be(2),`五个模块:
57
+
58
+ 1. **两层架构。** Router 长期在线,只负责人机交互、全局协调和派发,**故意不执行任务,甚至可以没有 Bash 工具**;Worker 上下文隔离,**但从不直接对人说话**,只向 Router 报告。
59
+ 2. **全双工。** 把同步 \`run()\` 换成异步 \`start()\` / \`stop()\`,立刻回一句"已开始"。
60
+ - 工具跑完再作为新事件送回来
61
+ - **这个机制默认没开。**
62
+ 3. 普通的一行
63
+ 4. 第四
64
+ 5. 第五
65
+ 6. 第六
66
+ 7. 第七
67
+ 8. 第八
68
+ 9. 第九
69
+ 10. 第十项,两位数的序号也要对齐`),{kind:"file",id:"bubble-audio",at:be(1),path:"/mock/audio.mp3",name:"语音样本.mp3"},{kind:"file",id:"bubble-video",at:be(1),path:"/mock/video.mp4",name:"视频样本.mp4"},{kind:"user",id:"bubble-photo",at:be(1),text:"这个是什么",files:["/mock/photo.jpg"]},{kind:"user",id:"bubble-photo-only",at:be(1),text:"",files:["/mock/photo2.jpg"]},{kind:"user",id:"bubble-photos",at:be(1),text:"两张对比一下",files:["/mock/photo.jpg","/mock/photo2.jpg"]},{kind:"user",id:"bubble-user-file",at:be(1),text:"帮我看看这份报告",files:["/mock/u-k2m9xq-季度报告.pdf"]},{kind:"user",id:"bubble-user-2",at:be(1),text:"画个简单的表格给我,有几种方式?"},k("bubble-table",be(0),`主要有四种:
70
+
71
+ | 方式 | 适合什么情况 | 能不能改 |
72
+ | --- | --- | --- |
73
+ | 聊天里直接画 | 简单的表,看一眼就行 | 让我重画 |
74
+ | 发 Excel 或 CSV 文件 | 要下载、自己改或者算 | 能 |
75
+ | 做成页面 | 能排序、筛选,以后还要更新 | 能 |
76
+ | 做成图片 | 要转发给别人或者发朋友圈 | 不能 |
77
+
78
+ 想要哪种?告诉我放什么内容。`)]);const G={},L={"t-0931":v,"t-0927":y,"t-0929":S};if(l.startsWith("d-")){const B=l==="d-waiting"||l==="d-mobile"?"waiting":l==="d-done"?"done":"running",ae={id:"dg-demo",from:"hob",to:"server",text:"检查服务器磁盘和服务状态,清理前先确认,不要影响正在运行的服务。",createdAt:be(6),status:B,jobIds:["t-delegated"],approvalIds:[]};G[ae.id]=ae,L["t-delegated"]={...v,id:"t-delegated",assistantId:"server",delegationId:ae.id,title:"检查服务器状态",status:B==="waiting"?"waiting":B},B==="waiting"&&(m["ap-delegation"]={id:"ap-delegation",assistantId:"server",title:"清理旧日志吗?",detail:"将清理七天前的日志。",options:[{key:"A",label:"清理旧日志"},{key:"B",label:"暂不清理"}],status:"pending",source:"job",jobId:"t-delegated",createdAt:be(2)}),F.hob=[{kind:"user",id:"d-user",at:be(7),text:"检查一下服务器的磁盘和服务状态。"},{kind:"delegation",id:"d-card",at:be(6),delegationId:ae.id}],F.server=[{kind:"user",id:"d-forward",at:be(6),text:ae.text,from:{assistantId:"hob",name:"Hob",delegationId:ae.id}},{kind:"job",id:"d-job",at:be(5),jobId:"t-delegated"},...B==="waiting"?[{kind:"question",id:"d-question",at:be(2),approvalId:"ap-delegation"}]:[]]}if(l.startsWith("h-")){const B=f.find(ae=>ae.id==="server");B&&(B.dutyLong="维护服务器、监控服务状态和磁盘空间;代理配置由其他助手负责。"),G["dg-returned"]={id:"dg-returned",from:"hob",to:"server",text:"检查代理节点为什么无法连接。",createdAt:be(4),status:"returned",reply:"退回:代理配置不属于服务器维护职责。",jobIds:[]},F.hob=[{kind:"user",id:"h-forward",at:be(8),text:"检查代理节点为什么无法连接。",from:{assistantId:"server",name:"服务器",delegationId:"hb-demo"}},{kind:"delegation",id:"h-card",at:be(4),delegationId:"dg-returned"}],F.server=[{kind:"user",id:"h-user",at:be(9),text:"检查代理节点为什么无法连接。"},{kind:"note",id:"h-note",at:be(8),icon:"info",text:"已交回 Hob:代理配置不属于我的职责。",handbackId:"hb-demo"},{kind:"user",id:"h-delegation-forward",at:be(4),text:"检查代理节点为什么无法连接。",from:{assistantId:"hob",name:"Hob",delegationId:"dg-returned"}}]}if(l.startsWith("act-")){const B=f.find(ae=>ae.id==="hob");B.busy=!0,B.activity=l==="act-think"||l==="act-demo"?{state:"thinking",label:"正在想…"}:{state:"tool",label:"搜索:最新 AI 动态"},F.hob=[{kind:"user",id:"act-user",at:be(1),text:"帮我搜索最新 AI 动态。"}],l==="act-home"&&(f.find(ae=>ae.id==="page").busy=!0)}return{assistants:f,items:F,jobs:L,delegations:G,approvals:m,drafts:{"d-bird":b},routines:T,rules:{hob:[{id:"rule-1",text:"花钱",mode:"ask",changedAt:I(10,9,0)},{id:"rule-2",text:"改线上服务",mode:"ask",changedAt:I(10,9,0)},{id:"rule-3",text:"清理我的文件",mode:"ask",changedAt:I(3,9,0)}],page:[{id:"rule-4",text:"删除草稿",mode:"ask",changedAt:I(9,9,0)},{id:"rule-5",text:"花钱",mode:"ask",changedAt:I(9,9,0)},{id:"rule-6",text:"发公众号",mode:"allow",changedAt:be(120)}],bird:[{id:"rule-7",text:"花钱订阅",mode:"ask",changedAt:I(7,9,0)}]},worklog:{hob:[{at:I(0,10,5),text:"任务已完成:排查页面卡顿",jobId:"t-0931"},{at:I(0,8,2),text:"转述写作的审批:发布公众号"},{at:I(0,8,0),text:"早报:两件事均已完成"}],page:[{at:I(0,10,21),text:"新增定时任务:周报初稿",jobId:"r-weekly-draft"},{at:I(0,7,44),text:"发布的文章:Grok Bot 能借鉴什么"},{at:I(0,7,40),text:"完成《Grok Bot 能借鉴什么》,3200 字"},{at:I(1,17,8),text:"周报初稿修改标题"}],bird:[{at:I(0,9,0),text:"每日简报:今天 6 条",jobId:"t-0926"},{at:I(1,9,0),text:"每日简报:昨天 5 条",jobId:"t-0925"}],server:[{at:I(1,3,5),text:"任务已完成:清理旧日志",jobId:"t-0927"}],house:[{at:I(0,7,30),text:"相册备份:新增 312 张"}],coin:[{at:I(1,21,10),text:"10 月账单已整理"}],book:[],leaf:[]},settings:{revision:1,settings:{general:{theme:l==="d-dark"||l==="h-dark"||l==="act-dark"?"dark":"system",timezone:"Asia/Tokyo",aboutYou:{name:"小林",language:"中文",notes:""}},providers:[{kind:"builtin",id:"anthropic"},{kind:"custom",id:"my-proxy",name:"我的代理",api:"openai-completions",baseUrl:"http://127.0.0.1:8080/v1",models:[{id:"gpt-x",name:"GPT X",input:["text","image"],reasoning:!0,contextWindow:2e5}]}],models:{roster:[{ref:"faux/fast",note:"响应快、成本低,适合日常对话",thinking:"low"},{ref:"faux/smart",note:"能力最强但速度较慢,适合复杂问题",thinking:"high"},{ref:"faux/vision",note:"支持图像输入,适合截图和图片",thinking:"medium"}],conversation:{ref:"faux/fast",thinking:"low"},work:{ref:"faux/smart",thinking:"high"}},image:{source:"off"},search:[{name:"searxng",enabled:!0,baseUrl:"http://127.0.0.1:8888"},{name:"exa",enabled:!0},...qx().filter(B=>B.name!=="searxng"&&B.name!=="exa")],work:{maxJobs:2,jobStallMinutes:15,routerStallMinutes:6},push:{email:""}}}}}const J1={models:[{ref:"faux/fast",provider:"faux",id:"fast",name:"Faux Fast",reasoning:!1,thinkingLevels:["off"],input:["text"],contextWindow:128e3,maxTokens:8192,cost:{input:.1,output:.4}},{ref:"faux/smart",provider:"faux",id:"smart",name:"Faux Smart",reasoning:!0,thinkingLevels:["off","minimal","low","medium","high","xhigh","max"],input:["text"],contextWindow:4e5,maxTokens:32e3,cost:{input:3,output:15}},{ref:"faux/vision",provider:"faux",id:"vision",name:"Faux Vision",reasoning:!0,thinkingLevels:["off","minimal","low","medium","high","xhigh"],input:["text","image"],contextWindow:2e5,maxTokens:16e3,cost:{input:2,output:8}},{ref:"faux/tiny",provider:"faux",id:"tiny",name:"Faux Tiny",reasoning:!1,thinkingLevels:["off"],input:["text"],contextWindow:64e3,maxTokens:4096,cost:{input:.05,output:.2}},{ref:"sample/deep",provider:"sample",id:"deep",name:"Sample Deep",reasoning:!0,thinkingLevels:["off","minimal","low","medium","high","xhigh","max"],input:["text","image"],contextWindow:1e6,maxTokens:64e3,cost:{input:8,output:40}}],roster:[]},Ev={keyConfigured:!0},F1=[{id:"anthropic",name:"Anthropic"},{id:"openai",name:"OpenAI"},{id:"google",name:"Google"},{id:"deepseek",name:"DeepSeek"},{id:"openrouter",name:"OpenRouter"}],P1={anthropic:[{id:"claude-x",name:"Claude X",reasoning:!0},{id:"claude-x-haiku",name:"Claude X Haiku",reasoning:!1}],openai:[{id:"gpt-6-astra",name:"GPT-6 Astra",reasoning:!0}]};function _d(l,a){return(l.kind==="custom"?l.models.map(u=>{var d;return{id:u.id,name:((d=u.name)==null?void 0:d.trim())||u.id,reasoning:u.reasoning===!0}}):P1[l.id]??[]).map(u=>{const d=`${l.id}/${u.id}`,f=a==null?void 0:a[d],h=Z1(u.id,u.reasoning,f,l.kind==="custom"?l.api:void 0);return{ref:d,id:u.id,name:u.name,reasoning:u.reasoning,levels:h.levels.map(p=>({level:p,text:h.chars[p]??""})),custom:f!==void 0}})}const W1="/Users/me/.pi/agent",ej="/Users/me/.lore",tj=[{id:"anthropic",kind:"builtin",models:12,key:"literal",exists:!0,selectable:!0},{id:"my-proxy",kind:"custom",api:"openai-completions",baseUrl:"https://proxy.example/v1",models:4,key:"literal",exists:!1,selectable:!0},{id:"cmd-proxy",kind:"custom",api:"anthropic-messages",baseUrl:"http://127.0.0.1:8080",models:2,key:"command",exists:!1,selectable:!0,note:"Key 需通过命令获取,请导入后手动填写。"},{id:"work-laptop",kind:"builtin",models:6,key:"none",exists:!1,selectable:!1,note:"登录授权类凭据无法导入。"}],nj={anthropic:{kind:"builtin",id:"anthropic"},"my-proxy":{kind:"custom",id:"my-proxy",name:"my-proxy",api:"openai-completions",baseUrl:"https://proxy.example/v1",models:[{id:"gpt-x",name:"GPT X"},{id:"gpt-x-mini"}]},"cmd-proxy":{kind:"custom",id:"cmd-proxy",name:"cmd-proxy",api:"anthropic-messages",baseUrl:"http://127.0.0.1:8080",models:[{id:"claude-x"}]}},Cv=new Map;function lj(l="s1"){const a=I1(l),r=new Set,u=k=>r.forEach(x=>x(k)),d=k=>a.assistants.find(x=>x.id===k),f=new Set(["anthropic","my-proxy"]),h=()=>({providers:a.settings.settings.providers.map(k=>({...k,keyConfigured:f.has(k.id)})),builtin:pe(F1),settings:pe(a.settings),models:Object.fromEntries(a.settings.settings.providers.map(k=>[k.id,_d(k,a.settings.settings.models.thinking)]))}),p={revision:a.settings.revision,provider:"local",providerExplicit:!1,lore:{configured:!1,baseUrl:null,source:"none",tokenConfigured:!1}},m=[{endpoint:"https://push.example/mock-iphone",label:"iPhone",createdAt:new Date(Date.now()-3*864e5).toISOString()}],b=()=>({publicKey:"BOmockVapidPublicKeyForPreviewOnly",email:a.settings.settings.push.email,devices:pe(m)}),v=k=>{const x=[];return k.activity.forEach((j,E)=>{if(j.verb==="$")return;const A=j.verb==="读"?"read":j.verb==="跑"?"bash":j.verb==="改"?"edit":j.verb==="说"?"report":"ls";x.push({id:`mock-${k.id}-${E}`,kind:"tool",at:j.at,name:A,title:A==="report"?"提交结果":`${j.verb} ${j.text}`,args:A==="bash"?{command:j.text}:A==="report"?{outcome:"done",summary:j.text}:{path:j.text},output:A==="report"?"结果已记录。":`${j.text}
79
+ `,durationMs:120})}),k.id==="t-0931"&&x.push({id:"mock-search",kind:"tool",at:k.createdAt,name:"web_search",title:"联网搜索:浏览器页面性能优化",args:{query:"浏览器页面性能优化"},output:"演示结果:网页性能优化指南。",durationMs:120}),x};function y(k,x){const j=d(k);j&&(Object.assign(j,x),u({type:"assistant",assistant:pe(j)}))}function S(k,x){var A;const j=(A=a.items)[k]??(A[k]=[]),E=j.findIndex(X=>X.id===x.id);E>=0?j[E]=x:j.push(x),u({type:"item",assistantId:k,item:x})}function T(k,x){y(k,{last:{text:x,at:new Date().toISOString()}})}return{me:async()=>{},login:async()=>{},logout:async()=>{},bootstrap:async()=>({assistants:pe(a.assistants),jobs:pe(Object.values(a.jobs)),delegations:pe(Object.values(a.delegations)),routines:pe(a.routines),approvals:pe(Object.values(a.approvals).filter(k=>k.status==="pending")),settings:pe(a.settings)}),settings:async()=>pe(a.settings),models:async()=>({...pe(J1),roster:pe(a.settings.settings.models.roster)}),providers:async()=>h(),putThinking:async k=>{const x=a.settings.settings.providers.find(J=>k.ref.startsWith(`${J.id}/`)),j=x?_d(x,a.settings.settings.models.thinking).find(J=>J.ref===k.ref):void 0;if(!x||!j)throw new Ie(400,`模型 ${k.ref} 不在已配置的服务商里。`);const E={...a.settings.settings.models.thinking??{}},A=k.levels===null?void 0:V1(k.levels);A?E[k.ref]=A:delete E[k.ref],a.settings={revision:a.settings.revision+1,settings:{...a.settings.settings,models:{roster:a.settings.settings.models.roster,conversation:a.settings.settings.models.conversation,work:a.settings.settings.models.work,...Object.keys(E).length?{thinking:E}:{}}}};const X=_d(x,a.settings.settings.models.thinking).find(J=>J.ref===k.ref);return{settings:pe(a.settings),thinking:X}},putProvider:async(k,x)=>{const j=x,E={...j,id:k};delete E.key;const A=a.settings.settings.providers.filter(X=>X.id!==k);return a.settings={revision:a.settings.revision+1,settings:{...a.settings.settings,providers:[...A,E]}},j.key&&f.add(k),h()},deleteProvider:async k=>(a.settings={revision:a.settings.revision+1,settings:{...a.settings.settings,providers:a.settings.settings.providers.filter(x=>x.id!==k)}},f.delete(k),h()),discoverProvider:async()=>({models:[{id:"gpt-x",name:"GPT X"},{id:"gpt-x-mini",name:"GPT X mini"},{id:"gpt-x-vision"}]}),providersImport:async()=>({source:W1,items:tj.map(k=>({...k,exists:k.exists||a.settings.settings.providers.some(x=>x.id===k.id)}))}),importProviders:async k=>{const x=k.map(E=>nj[E]).filter(E=>E!==void 0);if(!x.length)throw new Ie(400,"没有可导入的服务商:请选择状态为可导入的项目。");const j=a.settings.settings.providers.filter(E=>!x.some(A=>A.id===E.id));a.settings={revision:a.settings.revision+1,settings:{...a.settings.settings,providers:[...j,...x]}};for(const E of x)f.add(E.id);return h()},testProvider:async()=>{},imageKey:async()=>pe(Ev),putImage:async(k,x,j)=>{if(k!==a.settings.revision)throw new Ie(409,"设置已在别处修改,已刷新");return a.settings={revision:a.settings.revision+1,settings:{...a.settings.settings,image:x}},{settings:pe(a.settings),keyConfigured:!!j||Ev.keyConfigured}},skills:async()=>{var j;const k=((j=a.settings.settings.skills)==null?void 0:j.disabled)??[],x=(E,A,X,J,F=!1)=>({id:E,name:E,description:X,source:A,content:J,enabled:!k.includes(`${A}:${E}`),overridden:F});return{skills:[x("weekly-report","hob","按固定结构整理本周进展、风险和下周计划,生成可直接发出的周报。",`# 周报
80
+
81
+ 1. 汇总本周完成的事项
82
+ 2. 列出风险和需要的支持
83
+ 3. 写下周计划`),x("research","hob","查阅可靠来源,交叉核对后整理结论,并为每条结论注明出处。",`# 研究
84
+
85
+ 查阅可靠来源,整理结论并注明出处。`),x("server-checkup","hob","检查主机的磁盘、内存、服务状态和最近的错误日志,给出处理建议。",`# 主机巡检
86
+
87
+ 逐台检查磁盘、内存、服务与日志。`),x("browser","common","在浏览器中打开页面、操作并截图,验证改动是否生效。",`# 浏览器
88
+
89
+ 通过浏览器检查和验证页面。`),x("pdf","common","读取、拆分、合并 PDF,提取其中的表格和文字。",`# PDF
90
+
91
+ 处理 PDF 文件。`),x("research","common","通用的资料检索流程。","# research",!0)],loreActive:!1,loreUrl:null}},skillsImport:async()=>({found:!0,skipped:[],skills:[{id:"review",name:"review",description:"检查代码与需求。",exists:!1},{id:"research",name:"research",description:"整理研究结果。",exists:!0}]}),importSkills:async(k,x)=>({imported:x,skipped:[],errors:[]}),deleteSkill:async()=>{},search:async()=>({providers:a.settings.settings.search.map(k=>({...k,keyConfigured:k.name==="exa"||k.name==="tavily"}))}),putSearch:async(k,x)=>{if(k!==a.settings.revision)throw new Ie(409,"设置已在别处修改,已刷新");return a.settings={revision:k+1,settings:{...a.settings.settings,search:x}},pe(a.settings)},testSearch:async()=>({ok:!1,error:"演示模式不连接搜索服务商。"}),imageTest:async()=>({ok:!1,error:"演示模式不连接图像生成接口;正式运行时会实际生成图片。"}),putSettings:async(k,x)=>{var E;if(k!==a.settings.revision)throw new Ie(409,"设置已在别处修改,已刷新");const j=x.models??{};return a.settings={revision:a.settings.revision+1,settings:{general:{...a.settings.settings.general,...x.general??{},aboutYou:{...a.settings.settings.general.aboutYou,...((E=x.general)==null?void 0:E.aboutYou)??{}}},models:{roster:j.roster??a.settings.settings.models.roster,conversation:j.conversation??a.settings.settings.models.conversation,work:j.work??a.settings.settings.models.work,thinkingChoice:j.thinkingChoice??a.settings.settings.models.thinkingChoice,...j.thinking??a.settings.settings.models.thinking?{thinking:j.thinking??a.settings.settings.models.thinking}:{}},providers:a.settings.settings.providers,image:a.settings.settings.image,search:a.settings.settings.search,skills:x.skills??a.settings.settings.skills,work:{...a.settings.settings.work,...x.work??{}},push:{...a.settings.settings.push,...x.push??{}}}},pe(a.settings)},changePassword:async k=>{if(k!=="test")throw new Ie(403,"旧密码不正确")},about:async()=>({version:"0.1.0",home:"/var/lib/hob"}),memory:async()=>pe({...p,revision:a.settings.revision}),putMemory:async(k,x)=>{if(k!==a.settings.revision)throw new Ie(409,"设置已在别处修改,已刷新");if(x==="lore"&&!p.lore.configured)throw new Ie(400,"Lore 尚未配置:请先填写服务地址和 Token 并测试连接");return p.provider=x,p.providerExplicit=!0,a.settings.revision+=1,p.revision=a.settings.revision,pe(p)},putLore:async k=>{const x=k.baseUrl.trim().replace(/\/+$/,"");if(!x)throw new Ie(400,"Lore 服务地址不能为空");const j=p.lore.baseUrl===x;return p.lore={configured:j?p.lore.tokenConfigured:!!k.token,baseUrl:x,source:"config",tokenConfigured:j?p.lore.tokenConfigured:!!k.token},pe({...p,revision:a.settings.revision})},loreTest:async k=>{const x=(k.baseUrl??p.lore.baseUrl??"").trim().replace(/\/+$/,"");return x?x.startsWith("http://")&&!/^http:\/\/(localhost|127\.0\.0\.1|192\.168\.|10\.)/.test(x)?{ok:!1,reason:"insecure_http"}:!k.token&&!p.lore.tokenConfigured?{ok:!1,reason:"missing_token"}:{ok:!0,baseUrl:x}:{ok:!1,reason:"invalid_url"}},loreImport:async()=>({source:ej,found:!0,baseUrl:"https://api.loremem.com",tokenPresent:!0}),importLore:async()=>(p.lore={configured:!0,baseUrl:"https://api.loremem.com",source:"config",tokenConfigured:!0},pe({...p,revision:a.settings.revision})),items:async k=>({items:pe(a.items[k]??[]),approvals:pe(Object.values(a.approvals)),jobs:pe(Object.values(a.jobs)),drafts:pe(Object.values(a.drafts)),delegations:pe(Object.values(a.delegations)),hasMore:!1}),profile:async k=>{const x=d(k);if(!x)throw new Error(`没有这个助手:${k}`);return{assistant:pe(x),rules:pe(a.rules[k]??[]),routines:pe(a.routines.filter(E=>E.assistantId===k)),worklog:pe(a.worklog[k]??[])}},sendMessage:async(k,x)=>{if(x.text==="模拟发送失败")throw new Error("网络连接已断开");const j=new Date().toISOString(),E={kind:"user",id:qt("mock-u"),at:j,text:x.text,quote:x.quote,files:x.files&&x.files.length?x.files:void 0};return S(k,E),T(k,x.text),y(k,{busy:!0}),setTimeout(()=>{S(k,{kind:"assistant",id:qt("mock-a"),at:new Date().toISOString(),text:"收到。"}),T(k,"收到。"),y(k,{busy:!1})},320),{item:E}},stopAssistant:async k=>y(k,{busy:!1}),markRead:async k=>y(k,{unread:0}),patchAssistant:async(k,x)=>{var j;if(!d(k))throw new Ie(404,"助手不存在。");if(x.rule){const E=(j=a.rules)[k]??(j[k]=[]),A=x.rule.id===void 0?void 0:E.find(G=>G.id===x.rule.id);if(x.rule.id!==void 0&&!A)throw new Ie(404,"规则不存在。");const X=x.rule.text===void 0?(A==null?void 0:A.text)??"":x.rule.text.trim();if(!X||X.length>1e3)throw new Ie(400,"规则内容不能为空或超过 1000 字。");if(E.some(G=>G.id!==x.rule.id&&G.text===X))throw new Ie(400,"规则内容已存在。");const J=x.rule.mode??(A==null?void 0:A.mode);if(J!=="ask"&&J!=="allow")throw new Ie(400,"规则模式无效。");const F={id:(A==null?void 0:A.id)??qt("r-"),text:X,mode:J,changedAt:new Date().toISOString()};return A?Object.assign(A,F):E.push(F),u({type:"profile",assistantId:k}),{rule:pe(F)}}y(k,x)},mergeAssistant:async k=>{var G,L;const x=d(k),j=a.assistants.find(B=>B.primary);if(!x)throw new Ie(404,"助手不存在");if(x.primary||!j)throw new Ie(400,"主助手不能并回自己");if(Object.values(a.jobs).filter(B=>B.assistantId===k&&(B.status==="running"||B.status==="queued"||B.status==="waiting")).length)throw new Ie(409,"请等任务结束后再并回");const A=a.routines.filter(B=>B.assistantId===k);for(const B of A)B.assistantId=j.id,u({type:"routine",routine:pe(B)});const X=(G=a.rules)[L=j.id]??(G[L]=[]);let J=0;for(const B of a.rules[k]??[])X.some(ae=>ae.text===B.text)||(X.push({...B,id:qt("rule")}),J+=1);a.rules[k]=[];const F=x.instructions.trim();F&&(j.instructions=[j.instructions.trim(),`来自「${x.name}」:`,F].filter(Boolean).join(`
92
+ `),u({type:"assistant",assistant:pe(j)})),S(j.id,{kind:"note",id:qt("mock-n"),at:new Date().toISOString(),icon:"split",text:`已并回「${x.name}」:转来 ${A.length} 个定时任务、${J} 条规则`}),a.assistants=a.assistants.filter(B=>B.id!==k),u({type:"assistant_removed",id:k}),u({type:"profile",assistantId:j.id})},deleteRule:async(k,x)=>{a.rules[k]=(a.rules[k]??[]).filter(j=>j.id!==x),u({type:"profile",assistantId:k})},answerApproval:async(k,x)=>{var A,X,J,F;const j=a.approvals[k];if(!j||j.status==="answered")return;j.status="answered",x.key?j.chosen=x.key:j.answerText=(x.text??"").trim(),j.answeredAt=new Date().toISOString();const E=j.options.find(G=>G.key===x.key);E!=null&&E.always&&j.ruleText&&(((A=a.rules)[X=j.assistantId]??(A[X]=[])).push({id:qt("rule"),text:j.ruleText,mode:"allow",changedAt:j.answeredAt}),S(j.assistantId,{kind:"note",id:qt("mock-n"),at:j.answeredAt,icon:"rule",text:`已记入${((J=d(j.assistantId))==null?void 0:J.name)??""}的规则 · ${j.ruleText}无需确认`}),u({type:"profile",assistantId:j.assistantId})),u({type:"approval",approval:pe(j)});for(const G of Object.values(a.delegations))((G.approvalIds??[]).includes(j.id)||j.jobId&&G.jobIds.includes(j.jobId))&&(G.status="running",j.jobId&&((F=a.jobs[j.jobId])==null?void 0:F.status)==="waiting"&&(a.jobs[j.jobId].status="running",u({type:"job",job:pe(a.jobs[j.jobId])})),u({type:"delegation",delegation:pe(G)}))},retryDelegation:async k=>{const x=a.delegations[k];if(!x||x.status!=="interrupted")throw new Ie(400,"只有已中断的委派可以重新转交");const j={...x,id:qt("dg-"),status:"running",createdAt:new Date().toISOString(),jobIds:[],approvalIds:[],reportedAt:void 0,endedAt:void 0};a.delegations[j.id]=j,u({type:"delegation",delegation:pe(j)}),S("hob",{kind:"delegation",id:qt("item-"),at:j.createdAt,delegationId:j.id}),S(j.to,{kind:"user",id:qt("item-"),at:j.createdAt,text:j.text,from:{assistantId:"hob",name:"Hob",delegationId:j.id}})},createDraft:async k=>{const x=a.drafts[k];x&&(x.status="created",x.createdAssistantId="bird",u({type:"draft",draft:pe(x)}),S(x.assistantId,{kind:"note",id:qt("mock-n"),at:new Date().toISOString(),icon:"split",text:`专属助手已创建 · ${x.name}`}))},dismissDraft:async k=>{const x=a.drafts[k];x&&(x.status="dismissed",u({type:"draft",draft:pe(x)}))},createRoutine:async k=>{const x={...k,id:qt("r"),createdAt:new Date().toISOString(),runs:[]};return a.routines.push(x),u({type:"routine",routine:pe(x)}),pe(x)},patchRoutine:async(k,x)=>{const j=a.routines.find(E=>E.id===k);j&&(Object.assign(j,x),u({type:"routine",routine:pe(j)}))},deleteRoutine:async k=>{a.routines=a.routines.filter(x=>x.id!==k),u({type:"routine_removed",id:k})},runRoutine:async k=>{const x=a.routines.find(X=>X.id===k);if(!x)return;const j=new Date().toISOString(),E={id:qt("t-"),assistantId:x.assistantId,title:`${x.name}(立即运行)`,instruction:x.instruction,status:"running",createdAt:j,startedAt:j,stats:{reads:0,commands:0,edits:0},routineId:x.id,activity:[{at:j,verb:"$",text:`立即运行 ${x.name}`}]};a.jobs[E.id]=E;const A={jobId:E.id,at:j,status:"running"};x.runs=[A,...x.runs].slice(0,20),S(x.assistantId,{kind:"job",id:qt("mock-j"),at:j,jobId:E.id}),u({type:"job",job:pe(E)}),u({type:"routine",routine:pe(x)}),T(x.assistantId,`运行定时任务:${x.name}`)},replyJob:async(k,x)=>{const j=a.jobs[k];if(!j)return;j.activity=[...j.activity,{at:new Date().toISOString(),verb:"说",text:x}],u({type:"activity",jobId:k,line:j.activity[j.activity.length-1],stats:pe(j.stats)});const E=new Date().toISOString();u({type:"job_step",jobId:k,step:{id:`q${Date.now()}`,kind:"text",at:E,from:"user",text:x,queued:!0}}),setTimeout(()=>u({type:"job_step",jobId:k,step:{id:`u${Date.now()}`,kind:"text",at:new Date().toISOString(),from:"user",text:x}}),4e3)},transcript:async k=>{const x=a.jobs[k];if(!x)throw new Error(`没有这个任务:${k}`);return{job:pe(x),steps:v(x)}},jobs:async(k={})=>{let x=Object.values(a.jobs).sort((A,X)=>X.createdAt.localeCompare(A.createdAt));if(k.assistantId&&(x=x.filter(A=>A.assistantId===k.assistantId)),k.status&&(x=x.filter(A=>A.status===k.status)),k.before){const A=x.findIndex(X=>X.id===k.before);A!==-1&&(x=x.slice(A+1))}const j=k.limit??30;return{jobs:pe(x.slice(0,j)),hasMore:x.length>j}},stopJob:async k=>{const x=a.jobs[k];x&&(x.status="stopped",x.endedAt=new Date().toISOString(),u({type:"job",job:pe(x)}))},upload:async k=>{await new Promise(j=>setTimeout(j,1200));const x=`/mock/uploads/u-${Math.random().toString(36).slice(2,8).padEnd(6,"0")}-${k.name}`;return Cv.set(x,URL.createObjectURL(k)),x},fileUrl:(k,x)=>Cv.get(k)??(k.startsWith("/mock/")?k:`data:text/plain;charset=utf-8,${encodeURIComponent(`mock 模式没有真实文件。
93
+
94
+ ${k}`)}`),fileMeta:async k=>{const x=k.split("/").pop()??k,j=x.lastIndexOf("."),E=j>0?x.slice(j).toLowerCase():"",A=E===".md"?"markdown":E===".csv"?"csv":E===".html"?"html":E===".json"?"json":"text";return{path:k,name:x,size:2048,modifiedAt:new Date().toISOString(),mime:"text/plain; charset=utf-8",kind:A,text:!0}},jobFiles:async k=>{if(!a.jobs[k])throw new Ie(404,"任务不存在");return{files:[],hasMore:!1}},push:async()=>b(),subscribePush:async(k,x)=>{const j=m.filter(E=>E.endpoint!==k.endpoint);return m.splice(0,m.length,...j,{endpoint:k.endpoint,label:x.trim()||"本机",createdAt:new Date().toISOString()}),b()},unsubscribePush:async k=>{const x=m.findIndex(j=>j.endpoint===k);return x>=0&&m.splice(x,1),b()},testPush:async()=>({sent:1,removed:0}),visibility:async()=>{},events:k=>{r.add(k.onEvent);const x=[];return l==="act-demo"&&(x.push(setTimeout(()=>u({type:"router-activity",assistantId:"hob",activity:{state:"tool",label:"搜索:最新 AI 动态"}}),2500)),x.push(setTimeout(()=>{u({type:"router-activity",assistantId:"hob",activity:null}),u({type:"item",assistantId:"hob",item:{kind:"assistant",id:"act-answer",at:new Date().toISOString(),text:"正在整理搜索结果…",streaming:!0}})},5500)),x.push(setTimeout(()=>{u({type:"item",assistantId:"hob",item:{kind:"assistant",id:"act-answer",at:new Date().toISOString(),text:"已整理好最新动态。"}}),u({type:"assistant",assistant:{...a.assistants.find(j=>j.id==="hob"),busy:!1,activity:null}})},7500))),()=>{x.forEach(clearTimeout),r.delete(k.onEvent)}}}}function sj(l){return/iPhone/i.test(l)?"iPhone":/iPad/i.test(l)?"iPad":/Android/i.test(l)?"Android":/Macintosh|Mac OS X/i.test(l)?"Mac":/Windows/i.test(l)?"Windows":/Linux/i.test(l)?"Linux":"浏览器"}function aj(l){const a=l.replace(/-/g,"+").replace(/_/g,"/"),r=a.padEnd(Math.ceil(a.length/4)*4,"="),u=atob(r),d=new Uint8Array(u.length);for(let f=0;f<u.length;f+=1)d[f]=u.charCodeAt(f);return d}function ff(){return typeof navigator<"u"&&"serviceWorker"in navigator&&typeof window<"u"&&"PushManager"in window&&"Notification"in window}function ij(l){var d,f;const a=l.toJSON(),r=((d=a.keys)==null?void 0:d.p256dh)??"",u=((f=a.keys)==null?void 0:f.auth)??"";return!a.endpoint||!r||!u?null:{endpoint:a.endpoint,keys:{p256dh:r,auth:u}}}async function hf(){if(!ff())return null;const l=await navigator.serviceWorker.getRegistration();return await(l==null?void 0:l.pushManager.getSubscription())??null}async function rj(l){if(!ff())return{error:"这个浏览器不支持推送"};let a=Notification.permission;if(a==="default")try{a=await Notification.requestPermission()}catch{return{error:"浏览器拒绝授予通知权限"}}if(a!=="granted")return{error:"浏览器未授予通知权限"};const r=await navigator.serviceWorker.getRegistration();if(!r)return{error:"离线页面尚未就绪,请刷新后重试"};let u=await r.pushManager.getSubscription();if(!u)try{u=await r.pushManager.subscribe({userVisibleOnly:!0,applicationServerKey:aj(l).buffer})}catch(f){return{error:`浏览器订阅推送失败:${f instanceof Error?f.message:String(f)}`}}const d=ij(u);return d?{subscription:d}:{error:"浏览器返回的订阅信息不完整"}}function ms(l){return l.replace(/```[^\n]*\n?([\s\S]*?)```/g,"$1").replace(/!\[([^\]]*)\]\([^)]*\)/g,"$1").replace(/\[([^\]]+)\]\([^)]*\)/g,"$1").replace(/^[ \t]*#{1,6}[ \t]+/gm,"").replace(/^[ \t]*>[ \t]?/gm,"").replace(/^[ \t]*(?:[-*+]|\d+[.)])[ \t]+(?:\[[ xX]\][ \t]+)?/gm,"").replace(/^[ \t]*\|?[ \t]*:?-{3,}:?[ \t]*(?:\|[ \t]*:?-{3,}:?[ \t]*)*\|?[ \t]*$/gm,"").replace(/[ \t]*\|[ \t]*/g," ").replace(/^[ \t]*(?:[-*_][ \t]*){3,}$/gm,"").replace(/(\*\*|__)(?=\S)([\s\S]*?\S)\1/g,"$2").replace(/~~(?=\S)([\s\S]*?\S)~~/g,"$1").replace(/(^|[^\w*])\*(?=\S)([^*\n]*?\S)\*(?![\w*])/g,"$1$2").replace(/(^|[^\w])_(?=\S)([^_\n]*?\S)_(?!\w)/g,"$1$2").replace(/`([^`\n]+)`/g,"$1").replace(/\s+/g," ").trim()}function cj(l,a){if(a.from==="user"&&!a.queued){const d=l.findIndex(f=>f.queued&&f.text===a.text);d>=0&&(l=l.filter((f,h)=>h!==d))}const r=l.findIndex(d=>d.id===a.id);if(r<0)return[...l,a];const u=l.slice();return u[r]=a,u}function uj(l,a){const r=new Set(a.map(d=>d.id)),u=a.slice();for(const d of l)!r.has(d.id)&&!d.queued&&u.push(d);return u}function oj(l){var d;const a=[];let r=[];const u=()=>{if(!r.length)return;const f=r.join(`
95
+
96
+ `);return r=[],f};for(const f of l){if(f.kind==="thinking"){const p=(d=f.text)==null?void 0:d.trim();p&&r.push(p);continue}if(f.kind==="text"&&f.from==="user"){a.push(f);continue}const h=u();a.push(h?{...f,thinking:h}:f)}return{rows:a,thinking:u()??null}}const Av=400,dj=2e5,zv=3;function fj(l,a){const r=l===""?[]:l.split(`
97
+ `),u=a===""?[]:a.split(`
98
+ `);let d=0;for(;d<r.length&&d<u.length&&r[d]===u[d];)d+=1;let f=r.length,h=u.length;for(;f>d&&h>d&&r[f-1]===u[h-1];)f-=1,h-=1;const p=Math.min(d,zv),m=Math.min(r.length-f,zv),b=r.slice(d-p,d).map(v=>({sign:" ",text:v}));return b.push(...hj(r.slice(d,f),u.slice(d,h))),b.push(...r.slice(f,f+m).map(v=>({sign:" ",text:v}))),b.length<=Av?b:[...b.slice(0,Av),{sign:" ",text:"…"}]}function hj(l,a){if(!l.length)return a.map(h=>({sign:"+",text:h}));if(!a.length)return l.map(h=>({sign:"-",text:h}));if(l.length*a.length>dj)return[...l.slice(0,190).map(p=>({sign:"-",text:p})),...l.length>190||a.length>190?[{sign:" ",text:"…"}]:[],...a.slice(0,190).map(p=>({sign:"+",text:p}))];const r=Array.from({length:l.length+1},()=>new Int32Array(a.length+1));for(let h=l.length-1;h>=0;h-=1)for(let p=a.length-1;p>=0;p-=1)r[h][p]=l[h]===a[p]?r[h+1][p+1]+1:Math.max(r[h+1][p],r[h][p+1]);const u=[];let d=0,f=0;for(;d<l.length&&f<a.length;)l[d]===a[f]?(u.push({sign:" ",text:l[d]}),d+=1,f+=1):r[d+1][f]>=r[d][f+1]?(u.push({sign:"-",text:l[d]}),d+=1):(u.push({sign:"+",text:a[f]}),f+=1);for(;d<l.length;)u.push({sign:"-",text:l[d++]});for(;f<a.length;)u.push({sign:"+",text:a[f++]});return u}const mj=new Set(["排队中","进行中","待确认","已完成","受阻","失败","已停止"]);function Vx(l){const a=l.statusReason?ms(l.statusReason):"";if(!(!a||mj.has(a)))return a}function pj(l){return l.split(/`/).map((a,r)=>({text:a,mono:r%2===1})).filter(a=>a.text.length>0)}function gj(l,a){const r=l==="dark"||l==="system"&&a;return{dark:r,color:r?"#1b1b1d":"#f6f6f4"}}function vj(l,a){return l.phase!=="ready"?a?"bg":"side":l.filePreview&&(a||l.filePreview.full)?"bg":a?l.detail||l.page==="settings"?"bg":l.sheet?"panel":"bg":l.page==="settings"?"bg":"side"}function Kx(l,a){var d;const r=document.documentElement;r.style.setProperty("--status-background",`var(--${vj(l,a)})`);const u=getComputedStyle(r).backgroundColor;(d=document.querySelector('meta[name="theme-color"]'))==null||d.setAttribute("content",u)}const xj={general:{theme:"system",timezone:"UTC",aboutYou:{name:"",language:"",notes:""}},providers:[],models:{roster:[],conversation:{ref:"",thinking:"low"},work:{ref:"",thinking:"high"}},image:{source:"off"},search:qx(),work:{maxJobs:2,jobStallMinutes:15,routerStallMinutes:6},push:{email:""}},fs=new URLSearchParams(location.search),ka=fs.get("mock")==="1",bj=["act-demo","act-think","act-tool","act-dark","act-home","boot","bubbles","bubbles-dark","s1","s2","s3","s4","s6","mlist","mchat","d-running","d-waiting","d-done","d-dark","d-source","d-mobile","h-hob","h-dark","h-source","h-settings","h-mobile"],Od=fs.get("scene"),Hc=Od&&bj.includes(Od)?Od:"s1",se=ka?lj(Hc):_1,mf="hob.theme",Ix=`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,10)}`;let _v=!1;function Ov(l){return l==="assistant"||l==="now"?{kind:l}:l.startsWith("routine:")?{kind:"routine",id:l.slice(8)}:{kind:"now"}}function Jx(){const l=localStorage.getItem(mf);return l==="light"||l==="dark"||l==="system"?l:null}const Fx=fs.get("dark")==="1",Ti=E1(location.hash);function yj(){const l=Zx[ka?Hc:"s1"],a={phase:"loading",error:null,notice:null,offline:null,assistants:[],jobs:{},delegations:{},routines:[],approvals:{},drafts:{},settings:{revision:0,settings:xj},page:"main",section:null,sub:null,items:{},itemGen:{},profiles:{},sel:"hob",panel:{kind:"now"},detail:null,filePreview:null,livePages:{},steps:{},worklog:null,collapsed:!1,theme:Jx()??"system",query:"",quote:null,text:"",attachments:[],pending:{},nonce:0,mobile:"list",sheet:!1,search:!1,menu:null,tick:0,updateReady:!1,loggingIn:!1};ka&&(a.sel=l.sel,a.panel=Ov(l.panel),a.collapsed=l.collapsed,a.mobile=l.mobile,a.theme=l.dark?"dark":"light");const r=fs.get("a");r&&(a.sel=r),Ti.sel&&(a.sel=Ti.sel),Ti.settings&&(a.page="settings",a.section=Ti.section);const u=fs.get("panel");return u&&(a.panel=Ov(u)),fs.get("collapsed")==="1"&&(a.collapsed=!0),Fx&&(a.theme="dark"),a}let ue=yj();function kj(){return Ti.sel?!0:ka?Zx[Hc].mobile==="chat":!!fs.get("a")||window.innerWidth>=768}ka||Fx||Jx();const Xd=new Set;function Q(l){ue={...ue,...typeof l=="function"?l(ue):l},Xd.forEach(a=>a())}function Px(l){return Xd.add(l),()=>Xd.delete(l)}const Dl=()=>ue;function Ee(){return w.useSyncExternalStore(Px,Dl,Dl)}function me(l){return l instanceof Ie||l instanceof Error?l.message:String(l)}function wn(l){const a={};for(const r of l)a[r.id]=r;return a}function Mv(l,a){const r=l.findIndex(d=>d.id===a.id);if(r<0)return[...l,a];const u=l.slice();return u[r]=a,u}function jj(l,a){var u;const r=a.models??{};return{general:{...l.general,...a.general??{},aboutYou:{...l.general.aboutYou,...((u=a.general)==null?void 0:u.aboutYou)??{}}},models:{roster:r.roster??l.models.roster,conversation:r.conversation??l.models.conversation,work:r.work??l.models.work,thinkingChoice:r.thinkingChoice??l.models.thinkingChoice,...r.thinking??l.models.thinking?{thinking:r.thinking??l.models.thinking}:{}},image:l.image,search:l.search,providers:l.providers,work:{...l.work,...a.work??{}},push:{...l.push,...a.push??{}}}}let Rv=Promise.resolve();function pf(l){const a=Rv.then(()=>Nj(typeof l=="function"?l(ue.settings.settings):l));return Rv=a.then(()=>{},()=>{}),a}async function Nj(l){var u;const a=ue.settings,r={revision:a.revision,settings:jj(a.settings,l)};Q({settings:r,theme:r.settings.general.theme}),(u=l.general)!=null&&u.theme&&ds(l.general.theme);try{const d=await se.putSettings(a.revision,l);return Q({settings:d,theme:d.settings.general.theme}),ds(d.settings.general.theme),localStorage.setItem(mf,d.settings.general.theme),!0}catch(d){if(d instanceof Ie&&d.status===409){try{const f=await se.settings();Q({settings:f,theme:f.settings.general.theme}),ds(f.settings.general.theme)}catch{Q({settings:a})}return Q({notice:"设置已在别处修改,已刷新"}),!1}return Q({settings:a,theme:a.settings.general.theme,notice:`保存失败:${me(d)}`}),ds(a.settings.general.theme),!1}}async function Sj(l,a){try{return await se.changePassword(l,a),null}catch(r){return me(r)}}async function wj(){try{return await se.about()}catch(l){return Q({notice:`无法读取版本信息:${me(l)}`}),null}}async function gf(){try{return await se.models()}catch(l){return Q({notice:`无法读取模型列表:${me(l)}`}),null}}async function vf(l){return Q({settings:l.settings}),l}async function Tj(){try{return{ok:!0,view:await se.providers()}}catch(l){return{ok:!1,error:me(l)}}}async function Dv(l,a){try{return{ok:!0,view:await vf(await se.putProvider(l,a))}}catch(r){return{ok:!1,error:me(r)}}}async function Ej(l,a){try{const r=await se.putThinking({ref:l,levels:a});return Q({settings:r.settings}),{ok:!0,settings:r.settings,thinking:r.thinking}}catch(r){return{ok:!1,error:me(r)}}}async function Cj(l){try{return{ok:!0,view:await vf(await se.deleteProvider(l))}}catch(a){return{ok:!1,error:me(a)}}}async function Uv(l){try{return await se.testProvider(l),null}catch(a){return me(a)}}async function Aj(l){try{return{ok:!0,models:(await se.discoverProvider(l)).models}}catch(a){return{ok:!1,error:me(a)}}}async function zj(){try{return{ok:!0,view:await se.providersImport()}}catch(l){return{ok:!1,error:me(l)}}}async function _j(l){try{return{ok:!0,view:await vf(await se.importProviders(l))}}catch(a){return{ok:!1,error:me(a)}}}const Oj=()=>se.skills(),Mj=l=>se.skillsImport(l),Rj=(l,a,r)=>se.importSkills(l,a,r),Dj=l=>se.deleteSkill(l),Uj=()=>se.search(),$j=(l,a,r)=>se.testSearch(l,a,r);async function Hj(l,a){try{const r=await se.putSearch(ue.settings.revision,l,a);return Q({settings:r}),null}catch(r){return r instanceof Ie&&r.status===409&&Q({settings:await se.settings()}),me(r)}}async function Bj(){try{return await se.imageKey()}catch(l){return Q({notice:`无法读取图像生成设置:${me(l)}`}),null}}async function $v(l,a){try{const r=await se.putImage(ue.settings.revision,l,a);return Q({settings:r.settings}),{ok:!0,keyConfigured:r.keyConfigured}}catch(r){if(r instanceof Ie&&r.status===409){try{Q({settings:await se.settings()})}catch{}return{ok:!1,error:"设置已在别处修改,已刷新,请重新保存",conflict:!0}}return{ok:!1,error:me(r),conflict:!1}}}async function Hv(l){try{return await se.imageTest(l)}catch(a){return{ok:!1,error:`生成测试图片的请求失败:${me(a)}`}}}async function Md(){try{return{ok:!0,config:await se.memory()}}catch(l){return{ok:!1,error:`无法读取记忆设置:${me(l)}`}}}async function Bv(l,a){try{const r=await se.putMemory(l,a);return Q(u=>({settings:{...u.settings,revision:Math.max(u.settings.revision,r.revision)}})),{ok:!0,config:r}}catch(r){return{ok:!1,error:me(r)}}}async function Lj(l){try{return{ok:!0,config:await se.putLore(l)}}catch(a){return{ok:!1,error:me(a)}}}async function Lv(l){try{return{ok:!0,result:await se.loreTest(l)}}catch(a){return{ok:!1,error:`测试请求失败:${me(a)}`}}}async function qj(){try{return{ok:!0,view:await se.loreImport()}}catch(l){return{ok:!1,error:me(l)}}}async function Yj(){try{return{ok:!0,config:await se.importLore()}}catch(l){return{ok:!1,error:me(l)}}}async function Bc(){try{return{ok:!0,view:await se.push()}}catch(l){return{ok:!1,error:`无法读取推送设置:${me(l)}`}}}async function Gj(){const l=await Bc();if(!l.ok)return l;try{const a=await rj(l.view.publicKey);return"error"in a?{ok:!1,error:a.error}:{ok:!0,view:await se.subscribePush(a.subscription,sj(navigator.userAgent))}}catch(a){return{ok:!1,error:`订阅推送失败:${me(a)}`}}}async function Xj(){try{const l=await hf();if(l)try{await l.unsubscribe()}catch{}return Wx((l==null?void 0:l.endpoint)??await Qj())}catch(l){return{ok:!1,error:`关闭推送失败:${me(l)}`}}}async function Qj(){var a;const l=await Bc();return l.ok?((a=l.view.devices[0])==null?void 0:a.endpoint)??"":""}async function Wx(l){if(!l)return Bc();try{return{ok:!0,view:await se.unsubscribePush(l)}}catch(a){return{ok:!1,error:`删除设备失败:${me(a)}`}}}async function Zj(){const l=await hf();try{return{ok:!0,sent:(await se.testPush(l==null?void 0:l.endpoint)).sent}}catch(a){return{ok:!1,error:me(a)}}}const eb=window.matchMedia("(prefers-color-scheme: dark)");function ds(l){const{dark:a}=gj(l,eb.matches);document.documentElement.classList.toggle("dark",a),document.documentElement.style.colorScheme=a?"dark":"light",Kx(ue,window.innerWidth<768)}eb.addEventListener("change",()=>ds(ue.theme));let qv=!1,Yv=null;async function Vj(){if(!qv){if(qv=!0,ds(ue.theme),ka){if(Hc==="boot")return;await zc();return}try{await se.me()}catch(l){if(l instanceof Ie&&l.status===401){Q({phase:"login"});return}Q({phase:"error",error:me(l)});return}await zc()}}async function Kj(l){if(!ue.loggingIn){Q({loggingIn:!0,error:null});try{await se.login(l)}catch(a){Q({loggingIn:!1,error:a instanceof Ie&&a.status===401?"密码不正确":`登录失败:${me(a)}`});return}Q({loggingIn:!1,phase:"loading"}),await zc()}}async function zc(){var l,a;try{const r=await se.bootstrap();Q({phase:"ready",error:null,offline:null,assistants:r.assistants,jobs:wn(r.jobs),delegations:wn(r.delegations??[]),routines:r.routines,approvals:wn(r.approvals),settings:r.settings,theme:r.settings.settings.general.theme}),ds(r.settings.settings.general.theme),localStorage.setItem(mf,r.settings.settings.general.theme),Yv||(Yv=se.events({onEvent:nb,onReconnect:()=>{Q({offline:null}),zc()},onDown:d=>Q({offline:d})},Ix),Jj());const u=ue.sel&&r.assistants.some(d=>d.id===ue.sel)?ue.sel:((l=r.assistants.find(d=>d.primary))==null?void 0:l.id)??((a=r.assistants[0])==null?void 0:a.id)??null;u&&await ln(u,!0,kj())}catch(r){Q({phase:"error",error:me(r)})}}const tb=new Set;function nb(l){var a;switch(l.type){case"page-live":{const r=!ue.livePages[l.callId];Q(u=>({livePages:{...u.livePages,[l.callId]:l},...D1(l,{seen:!r,closed:tb.has(l.callId),assistantId:u.sel,inChat:u.page==="main"&&(u.mobile==="chat"||!window.matchMedia("(max-width: 767px)").matches)})?{filePreview:{path:"",full:!1,liveId:l.callId}}:{}}));break}case"assistant":{const r=l.assistant;Q(u=>({assistants:Mv(u.assistants,r),profiles:u.profiles[r.id]?{...u.profiles,[r.id]:{...u.profiles[r.id],assistant:r}}:u.profiles}));break}case"router-activity":Q(r=>({assistants:r.assistants.map(u=>u.id===l.assistantId?{...u,activity:l.activity}:u)}));break;case"assistant_removed":Q(r=>{var u;return{assistants:r.assistants.filter(d=>d.id!==l.id),sel:r.sel===l.id?((u=r.assistants.find(d=>d.primary))==null?void 0:u.id)??null:r.sel}});break;case"item":{const r=ue.items[l.assistantId];if(!r)break;const u=ue.pending[l.assistantId]??[],d=u.find(f=>q1(f,l.item));!d&&!r.some(f=>f.id===l.item.id)&&Xx([l.item.id]),Q(f=>({items:{...f.items,[l.assistantId]:Yx(r,l.item)},...d?{pending:{...f.pending,[l.assistantId]:u.filter(h=>h!==d)}}:{}}));break}case"delta":{const r=ue.items[l.assistantId];if(!r)break;const u=R1(r,l.itemId,l.text);u!==r&&Q(d=>({items:{...d.items,[l.assistantId]:u}}));break}case"job":Q(r=>({jobs:{...r.jobs,[l.job.id]:l.job}})),Ij(l.job.status)&&((a=ue.detail)==null?void 0:a.kind)==="job"&&ue.detail.id===l.job.id&&ue.steps[l.job.id]&&ob(l.job.id);break;case"delegation":Q(r=>({delegations:{...r.delegations,[l.delegation.id]:l.delegation}}));break;case"job_step":{const r=ue.steps[l.jobId];if(!r)break;Q(u=>({steps:{...u.steps,[l.jobId]:cj(r,l.step)}}));break}case"activity":{const r=ue.jobs[l.jobId];if(!r)break;Q(u=>({jobs:{...u.jobs,[l.jobId]:{...r,stats:l.stats,activity:[...r.activity,l.line].slice(-200)}}}));break}case"approval":Q(r=>({approvals:{...r.approvals,[l.approval.id]:l.approval}}));break;case"draft":Q(r=>({drafts:{...r.drafts,[l.draft.id]:l.draft}}));break;case"routine":Q(r=>({routines:Mv(r.routines,l.routine)}));break;case"routine_removed":Q(r=>({routines:r.routines.filter(u=>u.id!==l.id),panel:r.panel.kind==="routine"&&r.panel.id===l.id?{kind:"now"}:r.panel}));break;case"profile":lb(l.assistantId);break}}function Ij(l){return l==="done"||l==="stuck"||l==="failed"||l==="stopped"}function Gv(){se.visibility(Ix,document.visibilityState==="visible").catch(()=>{})}function Jj(){_v||(_v=!0,document.addEventListener("visibilitychange",Gv),Gv())}async function ln(l,a=!1,r=!0,u=!1){Q(f=>({sel:l,...f.sel!==l&&!u?{detail:null,worklog:null}:{},...r?{mobile:"chat",sheet:!1,search:!1}:{},quote:null,...a?{}:{panel:{kind:"now"}}}));const d=ue.assistants.find(f=>f.id===l);d&&d.unread>0&&(Q(f=>({assistants:f.assistants.map(h=>h.id===l?{...h,unread:0}:h)})),se.markRead(l).catch(()=>{})),await Promise.all([Fj(l),lb(l)])}async function Fj(l){const a=new Set(Object.keys(ue.livePages));try{const r=await se.items(l);B1();const u=new Set((r.pageLive??[]).map(d=>d.callId));Q(d=>{var p;const f=Object.fromEntries(Object.entries(d.livePages).filter(([m,b])=>b.assistantId!==l||b.state==="done"||!a.has(m)||u.has(m))),h=((p=d.filePreview)==null?void 0:p.liveId)&&!f[d.filePreview.liveId];return{livePages:f,...h?{filePreview:null}:{}}});for(const d of r.pageLive??[])nb({type:"page-live",...d});Q(d=>({items:{...d.items,[l]:r.items},itemGen:{...d.itemGen,[l]:(d.itemGen[l]??0)+1},jobs:{...d.jobs,...wn(r.jobs)},approvals:{...d.approvals,...wn(r.approvals)},drafts:{...d.drafts,...wn(r.drafts)},delegations:{...d.delegations,...wn(r.delegations??[])}}))}catch(r){Q({notice:`无法加载对话:${me(r)}`})}}async function lb(l){try{const a=await se.profile(l);Q(r=>({profiles:{...r.profiles,[l]:a}}))}catch(a){Q({notice:`无法加载档案:${me(a)}`})}}function xf(l){Q({text:l})}function _c(l){Q({quote:l,nonce:ue.nonce+1})}const sb=new Map,Qd=new Map,Oc=new Map;function Hi(l){return Oc.get(l)??se.fileUrl(l,{thumb:!0})}function Xv(l,a){const r=u=>u.some(d=>d.id===l)?u.map(d=>d.id===l?{...d,...a}:d):u;Q(u=>({attachments:r(u.attachments),pending:Object.fromEntries(Object.entries(u.pending).map(([d,f])=>[d,f.map(h=>({...h,attachments:r(h.attachments)}))]))}))}function ab(l){const a=sb.get(l.id),r=se.upload(a).then(u=>{const d=Oc.get($c(l));return d&&Oc.set(u,d),Xv(l.id,{status:"done",path:u}),u},u=>{throw Qd.delete(l.id),Xv(l.id,{status:"failed"}),u});return r.catch(()=>{}),Qd.set(l.id,r),r}function Pj(l){const a=Array.from(l).map(r=>{const u={id:`att-${Math.random().toString(36).slice(2,10)}`,name:r.name,status:"uploading"};return sb.set(u.id,r),Oi(r.name)&&Oc.set($c(u),URL.createObjectURL(r)),u});Q(r=>({attachments:[...r.attachments,...a]})),a.forEach(r=>void ab(r))}function Qv(l){Q(a=>({attachments:a.attachments.filter(r=>r.id!==l)}))}async function Wj(l){return Promise.all(l.attachments.map(a=>Qd.get(a.id)??ab(a)))}function Zd(l,a,r){Q(u=>{const d=u.pending[l]??[],f=r?d.map(h=>h.localId===a?{...h,...r}:h):d.filter(h=>h.localId!==a);return{pending:{...u.pending,[l]:f}}})}async function ib(l){Zd(l.assistantId,l.localId,{status:"sending",error:void 0});try{const a=await Wj(l),r=await se.sendMessage(l.assistantId,{text:l.text,quote:l.quote,files:a.length?a:void 0});Q(u=>({pending:{...u.pending,[l.assistantId]:(u.pending[l.assistantId]??[]).filter(d=>d.localId!==l.localId)},...r!=null&&r.item?{items:{...u.items,[l.assistantId]:Yx(u.items[l.assistantId]??[],r.item)}}:{}}))}catch(a){Zd(l.assistantId,l.localId,{status:"failed",error:me(a)})}}async function Zv(){const l=ue.sel,a=ue.text.trim();if(!l||!a&&!ue.attachments.length)return;const r={localId:`local-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,6)}`,assistantId:l,at:new Date().toISOString(),text:a,...ue.quote?{quote:ue.quote}:{},attachments:ue.attachments,status:"sending"};Xx([r.localId]),Q(u=>({text:"",quote:null,attachments:[],nonce:u.nonce+1,pending:{...u.pending,[l]:[...u.pending[l]??[],r]}})),await ib(r)}function Vv(l,a){var u;const r=(u=ue.pending[l])==null?void 0:u.find(d=>d.localId===a);r&&ib(r)}function eN(l,a){Zd(l,a,null)}function rb(l,a){if(!a)return[];const r=l.pending[a]??[],u=l.items[a]??[];return r.length?[...u,...r.map(L1)]:u}function tN(l,a,r){var u;return a?(u=l.pending[a])==null?void 0:u.find(d=>d.localId===r):void 0}async function nN(l){try{await se.stopAssistant(l)}catch(a){Q({notice:`停止失败:${me(a)}`})}}async function Kv(l,a){const r=ue.approvals[l];if(r){Q(u=>({approvals:{...u.approvals,[l]:{...r,status:"answered",...a.key?{chosen:a.key}:{answerText:(a.text??"").trim()}}}}));try{await se.answerApproval(l,a)}catch(u){Q({approvals:{...ue.approvals,[l]:r},notice:`提交失败:${me(u)}`})}}}async function lN(l){try{await se.createDraft(l)}catch(a){Q({notice:`创建助手失败:${me(a)}`})}}async function sN(l){try{await se.mergeAssistant(l);const a=ue.assistants.find(r=>r.primary);ue.sel===l&&a&&await ln(a.id,!0)}catch(a){Q({notice:`并回失败:${me(a)}`})}}async function aN(l){try{await se.retryDelegation(l)}catch(a){Q({notice:`重新转交失败:${me(a)}`})}}async function Iv(l,a,r){await cb(l,a,r?"forward":"handback")}async function bf(l,a,r){await cb(l,a,r?"forward":"delegation")}async function cb(l,a,r){(ue.sel!==l||!ue.items[l])&&await ln(l);const u=d=>{var f;return r==="forward"?d.kind==="user"&&((f=d.from)==null?void 0:f.delegationId)===a:r==="handback"?d.kind==="note"&&d.handbackId===a:d.kind==="delegation"&&d.delegationId===a};try{let d=ue.items[l]??[];for(;!d.some(u)&&d.length;){const f=await se.items(l,d[0].id);if(!f.items.length||(d=[...f.items,...d],Q(h=>({items:{...h.items,[l]:d},jobs:{...h.jobs,...wn(f.jobs)},approvals:{...h.approvals,...wn(f.approvals)},delegations:{...h.delegations,...wn(f.delegations??[])}})),!f.hasMore))break}if(!d.some(u)){Q({notice:"未找到对应的转交消息"});return}requestAnimationFrame(()=>requestAnimationFrame(()=>{var f;return(f=document.getElementById(`${r}-${a}`))==null?void 0:f.scrollIntoView({block:"center",behavior:"smooth"})}))}catch(d){Q({notice:`无法定位转交消息:${me(d)}`})}}async function Vd(l,a){try{return await se.replyJob(l,a),!0}catch(r){return Q({notice:`发送失败:${me(r)}`}),!1}}async function ub(l){try{await se.stopJob(l)}catch(a){Q({notice:`停止失败:${me(a)}`})}}async function da(l,a){const r=ue.routines.find(u=>u.id===l);if(r){Q(u=>({routines:u.routines.map(d=>d.id===l?{...d,...a}:d)}));try{await se.patchRoutine(l,a)}catch(u){Q({routines:ue.routines.map(d=>d.id===l?r:d),notice:`保存失败:${me(u)}`})}}}async function iN(l){const a=new Set(ue.routines.map(d=>d.id));let r;try{r=await se.createRoutine(l)}catch(d){Q({notice:`创建失败:${me(d)}`});return}const u=r!=null&&r.id?r:ue.routines.find(d=>!a.has(d.id));u&&kf(u.id)}async function rN(l){try{await se.deleteRoutine(l)}catch(a){Q({notice:`删除失败:${me(a)}`})}}async function cN(l){try{await se.runRoutine(l)}catch(a){Q({notice:`运行失败:${me(a)}`})}}async function Kd(l,a){const r=ue.assistants.find(d=>d.id===l),u=ue.profiles[l];if(!r)return"助手不存在。";Q(d=>({assistants:d.assistants.map(f=>f.id===l?{...f,...a}:f),profiles:d.profiles[l]?{...d.profiles,[l]:{...d.profiles[l],assistant:{...d.profiles[l].assistant,...a}}}:d.profiles}));try{return await se.patchAssistant(l,a),null}catch(d){const f=`保存失败:${me(d)}`;return Q(h=>({assistants:h.assistants.map(p=>p.id===l?r:p),profiles:u?{...h.profiles,[l]:u}:h.profiles,notice:f})),f}}async function uN(l,a,r){try{const u=await se.patchAssistant(l,{rule:{text:a,mode:r}});if(!(u!=null&&u.rule))throw new Error("保存响应缺少规则。");const d=u.rule;return Q(f=>{const h=f.profiles[l];return!h||h.rules.some(p=>p.id===d.id)?{}:{profiles:{...f.profiles,[l]:{...h,rules:[...h.rules,d]}}}}),null}catch(u){return`保存失败:${me(u)}`}}async function oN(l,a){try{return await se.patchAssistant(l,{rule:a}),Q(r=>{const u=r.profiles[l];return u?{profiles:{...r.profiles,[l]:{...u,rules:u.rules.map(d=>d.id===a.id?{...d,...a,changedAt:new Date().toISOString()}:d)}}}:{}}),null}catch(r){return`保存失败:${me(r)}`}}async function dN(l,a){const r=ue.profiles[l];if(r){Q(u=>({profiles:{...u.profiles,[l]:{...r,rules:r.rules.filter(d=>d.id!==a)}}}));try{await se.deleteRule(l,a)}catch(u){Q({profiles:{...ue.profiles,[l]:r},notice:`删除失败:${me(u)}`})}}}async function ob(l){try{const{job:a,steps:r}=await se.transcript(l);Q(u=>({jobs:{...u.jobs,[a.id]:a},steps:{...u.steps,[a.id]:u.steps[a.id]?uj(u.steps[a.id],r):r}}))}catch(a){Q({notice:`无法加载任务过程:${me(a)}`})}}function ps(l){Q(a=>{var r;return{detail:{kind:"job",id:l},worklog:((r=a.detail)==null?void 0:r.kind)==="jobs"?a.worklog:null}}),ob(l)}function yf(l=null){Q({detail:{kind:"jobs"}}),Id({assistantId:l,status:null})}function Ei(){Q({detail:null})}function db(){Q(l=>({detail:l.worklog?{kind:"jobs"}:null}))}async function Id(l={}){const a=l.assistantId??null,r=l.status??null;Q({worklog:{jobs:[],assistantId:a,status:r,hasMore:!1,loading:!0}});try{const u=await se.jobs({...a?{assistantId:a}:{},...r?{status:r}:{},limit:30});fb(u,a,r)}catch(u){Q({worklog:null,notice:`无法加载任务记录:${me(u)}`})}}async function fN(){const l=ue.worklog;if(!l||!l.hasMore||l.loading)return;const a=l.jobs[l.jobs.length-1];Q({worklog:{...l,loading:!0}});try{const r=await se.jobs({...l.assistantId?{assistantId:l.assistantId}:{},...l.status?{status:l.status}:{},...a?{before:a.id}:{},limit:30});fb(r,l.assistantId,l.status)}catch(r){Q(u=>({worklog:u.worklog?{...u.worklog,loading:!1}:null,notice:`无法加载更多:${me(r)}`}))}}function fb(l,a,r){Q(u=>{var h;const d=new Set((((h=u.worklog)==null?void 0:h.jobs)??[]).map(p=>p.id));return{worklog:{jobs:u.worklog&&u.worklog.assistantId===a&&u.worklog.status===r?[...u.worklog.jobs,...l.jobs.filter(p=>!d.has(p.id))]:l.jobs,assistantId:a,status:r,hasMore:l.hasMore,loading:!1},jobs:{...u.jobs,...wn(l.jobs)}}})}function Di(){Q({nonce:ue.nonce+1,mobile:"chat",sheet:!1})}function hb(){const l=ue.assistants.find(a=>a.primary);l&&(ln(l.id),Q({text:"我想创建一个专属助手,负责:",nonce:ue.nonce+1,mobile:"chat",sheet:!1}))}async function hN(l,a){(ue.sel!==l||!ue.items[l])&&await ln(l),requestAnimationFrame(()=>{var r;(r=document.getElementById(`job-${a}`))==null||r.scrollIntoView({block:"center",behavior:"smooth"})})}function kf(l){Q({panel:{kind:"routine",id:l},collapsed:!1,sheet:!0})}function mN(){Q({panel:{kind:"newRoutine"},collapsed:!1,sheet:!0})}function mb(){Q({panel:{kind:"assistant"},collapsed:!1,sheet:!0})}function Jv(l,a,r){Q({menu:{id:l,x:a,y:r}})}function Rd(){ue.menu&&Q({menu:null})}function jf(){Q({page:"settings",section:null,sub:null,sheet:!1,search:!1})}function Jd(){Q({page:"main"})}function va(l){Q({section:l,sub:null})}function sl(l){Q({sub:l})}function gn(){Q({sub:null})}function Nf(){Q({panel:{kind:"now"},sheet:!1})}function pN(){Q({collapsed:!0,sheet:!1})}function gN(){Q({collapsed:!1,panel:{kind:"now"}})}function pb(l){Q({query:l})}function gb(l){Q({mobile:l,sheet:!1,search:!1})}function vN(){Q({sheet:!0})}function Fd(){Q({sheet:!1})}function Fv(l){Q({search:l,query:l?ue.query:""})}function xN(){Q({notice:null})}function Lc(l){Q({notice:l})}function bN(){Q({updateReady:!0})}function yN(){Q({tick:ue.tick+1})}function Yt(l,a){return se.fileUrl(l,a)}function vb(l){return se.fileMeta(l)}async function kN(l){try{return await se.jobFiles(l)}catch(a){return Q({notice:`无法加载产出文件:${me(a)}`}),null}}function Hl(l,a){Q({filePreview:{path:l,full:!1,...a?{title:a}:{}}})}function jN(l){Q({filePreview:{path:"",full:!1,liveId:l}})}function Mc(){var l;(l=ue.filePreview)!=null&&l.liveId&&tb.add(ue.filePreview.liveId),Q({filePreview:null})}function NN(){Q(l=>l.filePreview?{filePreview:{...l.filePreview,full:!l.filePreview.full}}:{})}const SN=500,Pv=10;function xb(l){const a=w.useRef(null),r=w.useRef(null),u=w.useRef(!1),d=()=>{a.current!==null&&window.clearTimeout(a.current),a.current=null,r.current=null};return w.useEffect(()=>d,[]),{handlers:{onContextMenu(h){h.preventDefault(),d(),Jv(l.id,h.clientX,h.clientY)},onPointerDown(h){h.pointerType==="touch"&&(d(),u.current=!1,r.current={x:h.clientX,y:h.clientY},a.current=window.setTimeout(()=>{a.current=null;const p=r.current;p&&(u.current=!0,window.setTimeout(()=>u.current=!1,1e3),Jv(l.id,p.x,p.y))},SN))},onPointerMove(h){const p=r.current;p&&(Math.abs(h.clientX-p.x)>Pv||Math.abs(h.clientY-p.y)>Pv)&&d()},onPointerUp:d,onPointerCancel:d},takeHeld(){return u.current?(u.current=!1,!0):!1}}}function Wv(){const l=Ee(),a=l.menu,r=w.useRef(null);if(w.useEffect(()=>{if(!a)return;const m=v=>{r.current&&!r.current.contains(v.target)&&Rd()},b=v=>{v.key==="Escape"&&Rd()};return document.addEventListener("pointerdown",m,!0),window.addEventListener("keydown",b),()=>{document.removeEventListener("pointerdown",m,!0),window.removeEventListener("keydown",b)}},[a]),!a)return null;const u=l.assistants.find(m=>m.id===a.id);if(!u)return null;const d=m=>{Rd(),m()},f=u.primary?1:3,h=Math.max(8,Math.min(a.x,window.innerWidth-172)),p=Math.max(8,Math.min(a.y,window.innerHeight-(f*34+16)));return i.jsxs("div",{className:"amenu",ref:r,style:{left:h,top:p,transformOrigin:`${a.x-h}px ${a.y-p}px`},onContextMenu:m=>m.preventDefault(),children:[u.primary?null:i.jsx("button",{onClick:()=>d(()=>void Kd(u.id,{pinned:!u.pinned})),children:u.pinned?"取消置顶":"放在顶部"}),u.primary?null:i.jsx("button",{onClick:()=>d(()=>void Kd(u.id,{hidden:!u.hidden})),children:u.hidden?"放回列表":"收起这个助手"}),i.jsx("button",{onClick:()=>d(()=>{ln(u.id,!1,!1),mb()}),children:"助手设置"})]})}const bb={};for(const[l,a]of Object.entries({image:"png jpg jpeg gif webp bmp ico avif",table:"csv tsv xls xlsx ods",code:"ts tsx js jsx mjs cjs py go sh bash zsh json jsonl yaml yml toml xml css scss java c cpp h rs rb php sql vue svelte",doc:"md markdown txt pdf doc docx odt rtf",globe:"html htm svg",archive:"zip rar 7z tar gz bz2 xz tgz"}))for(const r of a.split(" "))bb[r]=l;function Bi(l){const a=l.split(/[\\/]/).pop()??"",r=a.lastIndexOf(".");return r>0?bb[a.slice(r+1).toLowerCase()]??"file":"file"}const yb={search:'<circle cx="11" cy="11" r="7"/><path d="m20 20-3.5-3.5"/>',plus:'<path d="M12 5v14M5 12h14"/>',edit:'<path d="M12 20h9"/><path d="M16.5 3.5a2.1 2.1 0 0 1 3 3L7 19l-4 1 1-4Z"/>',gear:'<path d="M4 6h9M17 6h3M4 12h3M11 12h9M4 18h11M19 18h1"/><circle cx="15" cy="6" r="2"/><circle cx="9" cy="12" r="2"/><circle cx="17" cy="18" r="2"/>',dbl:'<path d="m6 17 5-5-5-5M13 17l5-5-5-5"/>',left:'<path d="m15 18-6-6 6-6"/>',clock:'<circle cx="12" cy="12" r="9"/><path d="M12 7.5V12l3 2"/>',pause:'<circle cx="12" cy="12" r="9"/><path d="M10 9v6M14 9v6"/>',check:'<path d="M5 12.5 10 17l9-10"/>',spin:'<path d="M12 3a9 9 0 1 0 9 9" />',out:'<path d="M7 17 17 7M8.5 7H17v8.5"/>',reply:'<path d="M9 14 4 9l5-5"/><path d="M4 9h10a6 6 0 0 1 6 6v3"/>',smile:'<circle cx="12" cy="12" r="9"/><path d="M8.5 14.5s1.3 1.8 3.5 1.8 3.5-1.8 3.5-1.8M9 9.5h.01M15 9.5h.01"/>',more:'<circle cx="5" cy="12" r="1.2"/><circle cx="12" cy="12" r="1.2"/><circle cx="19" cy="12" r="1.2"/>',doc:'<path d="M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z"/><path d="M14 3v5h5M9 13h6M9 17h4"/>',file:'<path d="M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z"/><path d="M14 3v5h5"/>',table:'<rect x="3.5" y="4.5" width="17" height="15" rx="2.5"/><path d="M3.5 9.5h17M3.5 14.5h17M10 9.5v10"/>',code:'<path d="m8 8-4 4 4 4M16 8l4 4-4 4M14 5l-4 14"/>',globe:'<circle cx="12" cy="12" r="9"/><path d="M3 12h18M12 3a14 14 0 0 1 0 18M12 3a14 14 0 0 0 0 18"/>',archive:'<rect x="4" y="7" width="16" height="13" rx="2"/><rect x="3" y="4" width="18" height="4" rx="1"/><path d="M10 12h4"/>',panel:'<rect x="3" y="4" width="18" height="16" rx="2.5"/><path d="M15 4v16"/>',mem:'<path d="M12 3.5 14 9l5.5 2-5.5 2-2 5.5-2-5.5L4.5 11 10 9z"/>',rule:'<path d="M12 3 4 6v6c0 4.5 3.4 8.2 8 9 4.6-.8 8-4.5 8-9V6z"/><path d="m8.5 12 2.5 2.5 4.5-5"/>',chev:'<path d="m9 6 6 6-6 6"/>',down:'<path d="m6 9 6 6 6-6"/>',updown:'<path d="m8 9 4-4 4 4M8 15l4 4 4-4"/>',bulb:'<path d="M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5"/><path d="M9 18h6M10 22h4"/>',user:'<circle cx="12" cy="8" r="4"/><path d="M4 21a8 8 0 0 1 16 0"/>',send:'<path d="M12 20V5M5.5 11.5 12 5l6.5 6.5"/>',close:'<path d="m6 6 12 12M18 6 6 18"/>',copy:'<rect x="9" y="9" width="11" height="11" rx="2.5"/><path d="M15 6.5V5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h1.5"/>',split:'<path d="M4 5h4l8 14h4M4 19h4l8-14h4"/>',stop:'<rect x="6" y="6" width="12" height="12" rx="2"/>',info:'<circle cx="12" cy="12" r="9"/><path d="M12 11v5M12 7.9h.01"/>',term:'<path d="m5 16 5-4-5-4M12 17h7"/>',dl:'<path d="M12 4v11M7.5 11.5 12 16l4.5-4.5"/><path d="M5 20h14"/>',image:'<rect x="3.5" y="4.5" width="17" height="15" rx="2.5"/><circle cx="9" cy="10" r="1.6"/><path d="m20.5 16-4.5-4.5L7 19.5"/>'};function Pd(l,a=16){return`<svg class="i" width="${a}" height="${a}" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.7" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">${yb[l]}</svg>`}function Z({name:l,size:a=16,w:r=1.7,className:u,style:d}){return i.jsx("svg",{className:`i${u?` ${u}`:""}`,width:a,height:a,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round",style:d,"aria-hidden":"true",dangerouslySetInnerHTML:{__html:yb[l]}})}const ma=["......k.....",".....kok....",".....kook...","..k.koook...",".kokoooook..",".kooooooook.","kooyyyyyyook","koyyeyyeyyok","koyyeyyeyyok","koyyyyyyyyok",".kooyyyyook.","..kkkkkkkk.."],mn=16,ex="#40261a",ja={orange:{name:"橙",o:"#ff7a2e",y:"#ffcf4a",bg:"#ffe6d3"},red:{name:"红",o:"#ff5a3c",y:"#ffd2a8",bg:"#ffe3dc"},pink:{name:"粉",o:"#ff6b8a",y:"#ffd6de",bg:"#ffe4ef"},purple:{name:"紫",o:"#8f7bff",y:"#ddd6ff",bg:"#e9e5ff"},blue:{name:"蓝",o:"#4ea3ff",y:"#cfe6ff",bg:"#fff0c4"},slate:{name:"灰蓝",o:"#6f8fb3",y:"#d8e5f2",bg:"#e3eeff"},teal:{name:"青",o:"#20b8b0",y:"#c2f0ea",bg:"#d6f3f1"},green:{name:"绿",o:"#2fbf71",y:"#c9f2da",bg:"#e4f5d9"}},Xe=(l,a)=>[...Array(l).fill(""),...a],gs={hob:{label:"主助手",color:"orange",dx:2,pal:{},art:[]},page:{label:"写作/文档",color:"purple",dx:1,pal:{p:"#ff9db0",g:"#b9c0c8",h:"#ffc21a",b:"#f2c58f"},art:Xe(5,["............kkkk","............kppk","............kppk","............kggk","............khhk","............khhk","............khhk","............khhk","............kbbk",".............kk."])},server:{label:"服务器/运维",color:"slate",dx:2,pal:{h:"#ffc21a",w:"#fff1b8"},art:Xe(2,["......kkkk......",".....khhwwk.....","....khhhhwhk....","....khhhhhhk....","...kkkkkkkkkk..."])},bird:{label:"资讯/动态",color:"blue",dx:0,pal:{l:"#dff3ff",w:"#ffffff"},art:Xe(6,["..........kkkk..",".........kllllk.",".........kwlllk.",".........kllllk.",".........kllllk.","..........kkkk..",".............kk.","..............kk","...............k"])},house:{label:"家/NAS/生活",color:"teal",dx:0,pal:{r:"#ff8b6a",w:"#fff7ea",d:"#9b6b52"},art:Xe(9,["............k...","...........krk..","..........krrrk.",".........krrrrrk","..........kwwwk.","..........kwdwk.","..........kkkkk."])},coin:{label:"钱/记账",color:"green",dx:0,pal:{h:"#ffc21a",w:"#fff1b8",d:"#d18f00"},art:Xe(9,["...........kkk..","..........khhhk.",".........khwdhhk",".........khwdhhk",".........khhdhhk","..........khhhk.","...........kkk.."])},book:{label:"学习/读书",color:"red",dx:2,pal:{d:"#3a3f58",t:"#ffc21a"},art:Xe(1,[".......kk.......",".....kkddkk.....","...kkddddddkk...",".kkddddddddddkk.","...kkddddddkk.t.","....kddddddk..t.","....kkkkkkkk..t.","..............t."])},leaf:{label:"健康/植物",color:"pink",dx:2,pal:{g:"#5ccf6b",s:"#3a9a4f"},art:Xe(0,["....kk.....kk...","...kggk...kggk..","....kggkskggk...",".....kk.s.kk...."])},wifi:{label:"网络/路由器",color:"teal",dx:2,pal:{},art:Xe(0,["......kkkkk.....",".....k.....k....",".......kkk......","......k...k....."])},calendar:{label:"日程/提醒",color:"purple",dx:0,pal:{r:"#ff4d4d",w:"#ffffff"},art:Xe(8,["..........k...k.",".........kkkkkkk",".........krrrrrk",".........kkkkkkk",".........kwwwwwk",".........kwwkwwk",".........kwwwwwk",".........kkkkkkk"])},chef:{label:"做饭/饮食",color:"red",dx:2,pal:{w:"#ffffff",g:"#d9dde2"},art:Xe(1,[".....kk..kk.....","....kwwkkwwk....","...kwwwwwwwwk...","...kwwwwwwwwk...","....kwwwwwwk....","....kggggggk....","....kkkkkkkk...."])},chart:{label:"股票/数据",color:"slate",dx:0,pal:{w:"#ffffff",g:"#f04848"},art:Xe(9,[".........kkkkkkk",".........kwwwwgk",".........kwwgwgk",".........kwwgwgk",".........kgwgwgk",".........kgwgwgk",".........kkkkkkk"])},bag:{label:"旅行/出行",color:"blue",dx:0,pal:{b:"#e8833a",s:"#ffd59a"},art:Xe(9,["...........kkk..","...........k.k..",".........kkkkkkk",".........kbsbsbk",".........kbsbsbk",".........kbsbsbk",".........kkkkkkk"])},paw:{label:"宠物",color:"purple",dx:0,pal:{c:"#ffb36b",p:"#ff8fa6"},art:Xe(9,[".........k.....k",".........kck.kck",".........kccccck",".........kckckck",".........kccpcck","..........kkkkk."])},note:{label:"音乐",color:"pink",dx:1,pal:{},art:Xe(2,["..............k.","..............kk","..............kk","..............k.","..............k.","............kkk.","............kkk."])},code:{label:"代码/开发",color:"green",dx:0,pal:{d:"#2b3240",g:"#6ef0a0"},art:Xe(10,[".........kkkkkkk",".........kgddddk",".........kdgdddk",".........kgdggdk",".........kdddddk",".........kkkkkkk"])},gym:{label:"健身/运动",color:"blue",dx:2,pal:{r:"#ff3b5c"},art:Xe(9,["...krrrrrrrrk...","..krrrrrrrrrrkr.","...............r"])},sticky:{label:"需求/产品负责人",color:"purple",dx:0,pal:{n:"#ffe066",d:"#c9a227"},art:Xe(9,[".........kkkkkkk",".........knnnnnk",".........kdddnnk",".........knnnnnk",".........kddddnk",".........knnnnkk",".........kkkkkk."])},timer:{label:"迭代/敏捷教练",color:"teal",dx:0,pal:{w:"#ffffff",r:"#ff5a3c"},art:Xe(8,["...........kkk..","............k...","..........kkkkk.",".........kwwrwwk",".........kwwrwwk",".........kwwkkwk",".........kwwwwwk","..........kkkkk."])},bug:{label:"测试/质量",color:"green",dx:0,pal:{r:"#ff4d4d"},art:Xe(8,["..........k...k.","...........kkk..","..........krrrk.",".........krkrkrk",".........krrrrrk",".........krkrkrk","..........krrrk.","...........kkk.."])},magnifier:{label:"代码审查/调研",color:"blue",dx:0,pal:{l:"#cfe8ff",w:"#ffffff",h:"#8a5a3c"},art:Xe(8,["..........kkk...",".........kwllk..",".........kllllk.",".........kllllk.","..........kkkk..",".............hh.","..............hh"])},blocks:{label:"架构/系统设计",color:"slate",dx:0,pal:{a:"#ff8b6a",b:"#4ea3ff",c:"#ffc21a"},art:Xe(9,["...........kkkk.","...........kaak.","...........kaak.",".........kkkkkkk",".........kbbkcck",".........kbbkcck",".........kkkkkkk"])},rocket:{label:"发布/部署",color:"purple",dx:0,pal:{w:"#e8edf3",r:"#ff5a3c",b:"#4ea3ff",f:"#ffb020"},art:Xe(6,["............k...","...........krk..","...........krk..","..........kwwwk.","..........kwbwk.","..........kwwwk.","..........kwwwk.",".........krwwwrk",".........kkkkkkk","...........kfk.."])},shield:{label:"安全/权限",color:"blue",dx:0,pal:{s:"#5b8def",w:"#ffffff"},art:Xe(9,[".........kkkkkkk",".........kssswsk",".........kwswssk",".........kswsssk","..........ksssk.","...........ksk..","............k..."])},database:{label:"数据库/数据",color:"teal",dx:0,pal:{d:"#5fa8ff",t:"#cfe6ff"},art:Xe(8,["..........kkkkk.",".........ktttttk",".........kkkkkkk",".........kdddddk",".........kkkkkkk",".........kdddddk","..........kkkkk."])},palette:{label:"界面/视觉设计",color:"pink",dx:0,pal:{p:"#f2c58f",a:"#ff4d4d",b:"#4ea3ff",c:"#5ccf6b"},art:Xe(9,["..........kkkkk.",".........kpppppk",".........kpapbpk",".........kppppk.",".........kpcppk.","..........kkkk.."])},siren:{label:"值班/告警",color:"red",dx:2,pal:{r:"#ff3b3b",w:"#ffd0d0"},art:Xe(1,["..k...kkkk...k..","...k.krwrrk.k...",".....krrrrk.....","....kkkkkkkk...."])},kanban:{label:"项目管理/看板",color:"green",dx:0,pal:{w:"#ffffff",a:"#ff8b6a",b:"#ffc21a",c:"#5ccf6b"},art:Xe(9,[".........kkkkkkk",".........kakbkck",".........kakwkck",".........kwkbkwk",".........kwkwkwk",".........kkkkkkk"])},wrench:{label:"维护/修复",color:"slate",dx:0,pal:{g:"#b9c0c8"},art:Xe(8,["............k.k.","...........kgkgk","...........kgggk","..........kgggk.",".........kggk...","........kggk....","........kgk.....","........kk......"])},bolt:{label:"性能/优化",color:"purple",dx:0,pal:{b:"#ffc21a"},art:Xe(8,["............kkk.","...........kbbk.","..........kbbk..",".........kbbbbk.","..........kkbbk.","...........kbk..","..........kbk...","..........kk...."])}},wN=Object.keys(gs),TN=Object.keys(ja);function kb(l){if(l==="custom")return{prop:"custom",color:"orange"};if(l.startsWith("custom:")){const f=l.slice(7);return Object.hasOwn(ja,f)?{prop:"custom",color:f}:void 0}const[a,r,...u]=l.split(":");if(u.length||!Object.hasOwn(gs,a))return;const d=a;return r===void 0?{prop:d,color:gs[d].color}:Object.hasOwn(ja,r)?{prop:d,color:r}:void 0}function Dd(l){return l==="orange"?"custom":`custom:${l}`}const EN=/^#[0-9a-f]{6}$/;function CN(l){if(!l||typeof l!="object"||Array.isArray(l))return{ok:!1,error:"prop_art 要是一个对象:art(字符串数组)、pal(字母 → 颜色)、dx(0|1|2)"};const{art:a,pal:r,dx:u}=l;if(!Array.isArray(a)||a.length===0)return{ok:!1,error:"prop_art.art 要是非空的字符串数组"};if(a.length>mn)return{ok:!1,error:`prop_art.art 最多 ${mn} 行,收到 ${a.length} 行`};for(const m of a){if(typeof m!="string")return{ok:!1,error:"prop_art.art 的每行都要是字符串"};if([...m].length!==mn)return{ok:!1,error:`prop_art.art 每行要正好 ${mn} 个字符,这一行是 ${[...m].length} 个:「${m}」`}}if(!r||typeof r!="object"||Array.isArray(r))return{ok:!1,error:"prop_art.pal 要是对象:单个小写字母 → #rrggbb"};const d=Object.entries(r);if(d.length>6)return{ok:!1,error:`prop_art.pal 最多 6 种颜色,收到 ${d.length} 种`};for(const[m,b]of d){if(!/^[a-z]$/.test(m))return{ok:!1,error:`pal 的键要是单个小写字母,收到「${m}」`};if(m==="k")return{ok:!1,error:"pal 不能有 k:描边色是固定的,art 里直接用 k 就行"};if("oye".includes(m))return{ok:!1,error:`pal 不能用 ${m}:这是火苗自己的颜色`};if(typeof b!="string"||!EN.test(b))return{ok:!1,error:`pal[${m}] 要是 #rrggbb 格式的颜色,收到「${String(b)}」`}}const f=a.join("");for(const m of new Set([...f].filter(b=>b!==".")))if(m!=="k"&&!Object.hasOwn(r,m))return{ok:!1,error:`art 里的「${m}」没有在 pal 里定义颜色`};const h=[...f].filter(m=>m!==".").length;if(h<6)return{ok:!1,error:`至少要画 6 个像素,现在只有 ${h} 个`};if(u!==0&&u!==1&&u!==2)return{ok:!1,error:`prop_art.dx 要是 0、1 或 2,收到 ${String(u)}`};const p=mn-ma.length;for(let m=0;m<ma.length;m++)for(let b=0;b<ma[m].length;b++){if(ma[m][b]!=="e")continue;const v=a[p+m],y=v==null?void 0:v[u+b];if(y&&y!==".")return{ok:!1,error:`art 第 ${p+m+1} 行第 ${u+b+1} 列会盖住火苗的眼睛,把图案挪开(或调小 dx)`}}return{ok:!0,prop:{art:a,pal:r,dx:u}}}function Ud(l,a){return a===gs[l].color?l:`${l}:${a}`}function AN(l,a){const r=kb(l)??{prop:"hob",color:"slate"},u=r.prop==="custom"&&a?CN(a):void 0,d=r.prop==="custom"?u!=null&&u.ok?u.prop:gs.hob:gs[r.prop],f=ja[r.color],h=[...Array(mn-ma.length).fill(""),...ma].map((y,S)=>{const T=y?`${".".repeat(d.dx)}${y}`.padEnd(mn,"."):".".repeat(mn),k=d.art[S]??"";return[...T].map((x,j)=>k[j]&&k[j]!=="."?k[j]:x).join("")});let[p,m,b,v]=[mn,mn,0,0];return h.forEach((y,S)=>[...y].forEach((T,k)=>{T!=="."&&([p,m,b,v]=[Math.min(p,k),Math.min(m,S),Math.max(b,k+1),Math.max(v,S+1)])})),{rows:h,pal:{k:ex,e:ex,o:f.o,y:f.y,...d.pal},bg:f.bg,offset:[(p+b-mn)/2,(m+v-mn)/2]}}function zN(l){const a=[];return{body:l.rows.map((u,d)=>[...u].map((f,h)=>f!=="e"?f:(a.push([h,d]),"y")).join("")),eyes:a}}function tx({art:l}){const a=[];return l.rows.forEach((r,u)=>{for(let d=0;d<r.length;){const f=r[d];let h=d+1;for(;h<r.length&&r[h]===f;)h++;f!=="."&&l.pal[f]&&a.push({x:d,y:u,w:h-d,fill:l.pal[f]}),d=h}}),i.jsx(i.Fragment,{children:a.map((r,u)=>i.jsx("rect",{x:r.x,y:r.y,width:r.w+.02,height:1.02,fill:r.fill},u))})}const _N={busy:"正在工作",ask:"等你确认",stuck:"受阻"},ON=4,MN=7;function bt({sprite:l,prop:a,size:r,title:u,onClick:d,motion:f,mark:h,free:p,slot:m}){const b=AN(l,a),v=f?zN(b):void 0,y=f==="peek"?`${(m??0)%MN*ON}s`:f?`${-([...l].reduce((S,T)=>(S*31+T.charCodeAt(0))%9973,7)%4e3)/1e3}s`:void 0;return i.jsxs("div",{className:`av${p?" av-free":""}${f?` av-motion av-${f}`:""}${h?" av-marked":""}`,title:u,onClick:d,style:{"--av-size":`${r}px`,"--av-bg":b.bg},children:[i.jsx("svg",{viewBox:`${b.offset[0]} ${b.offset[1]} 16 16`,shapeRendering:"crispEdges","aria-hidden":"true",style:y?{"--eye-delay":y}:void 0,children:v?i.jsxs(i.Fragment,{children:[i.jsx(tx,{art:{...b,rows:v.body}}),i.jsx("g",{className:"av-eyes",children:i.jsx("g",{className:"av-blink",children:v.eyes.map(([S,T])=>i.jsx("rect",{x:S,y:T,width:1.02,height:1.02,fill:b.pal.e},`${S}-${T}`))})})]}):i.jsx(tx,{art:b})}),h?i.jsx("span",{className:`av-mark ${h}`,"aria-label":_N[h],children:h==="busy"?i.jsxs("svg",{viewBox:"0 0 13 5",children:[i.jsx("circle",{cx:"2.5",cy:"2.5",r:"1.5"}),i.jsx("circle",{cx:"6.5",cy:"2.5",r:"1.5"}),i.jsx("circle",{cx:"10.5",cy:"2.5",r:"1.5"})]}):h==="ask"?"?":"!"}):null]})}var RN=Lx();async function Sf(l){try{const a=navigator.clipboard;return a!=null&&a.writeText?(await a.writeText(l),!0):!1}catch{return!1}}const DN="modulepreload",UN=function(l){return"/"+l},nx={},$N=function(a,r,u){let d=Promise.resolve();if(r&&r.length>0){let h=function(b){return Promise.all(b.map(v=>Promise.resolve(v).then(y=>({status:"fulfilled",value:y}),y=>({status:"rejected",reason:y}))))};document.getElementsByTagName("link");const p=document.querySelector("meta[property=csp-nonce]"),m=(p==null?void 0:p.nonce)||(p==null?void 0:p.getAttribute("nonce"));d=h(r.map(b=>{if(b=UN(b),b in nx)return;nx[b]=!0;const v=b.endsWith(".css"),y=v?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${b}"]${y}`))return;const S=document.createElement("link");if(S.rel=v?"stylesheet":DN,v||(S.as="script"),S.crossOrigin="",S.href=b,m&&S.setAttribute("nonce",m),document.head.appendChild(S),v)return new Promise((T,k)=>{S.addEventListener("load",T),S.addEventListener("error",()=>k(new Error(`Unable to preload CSS for ${b}`)))})}))}function f(h){const p=new Event("vite:preloadError",{cancelable:!0});if(p.payload=h,window.dispatchEvent(p),!p.defaultPrevented)throw h}return d.then(h=>{for(const p of h||[])p.status==="rejected"&&f(p.reason);return a().catch(f)})};function wf(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var bs=wf();function jb(l){bs=l}var os={exec:()=>null};function cs(l){let a=[];return r=>{let u=Math.max(0,Math.min(3,r-1)),d=a[u];return d||(d=l(u),a[u]=d),d}}function ye(l,a=""){let r=typeof l=="string"?l:l.source,u={replace:(d,f)=>{let h=typeof f=="string"?f:f.source;return h=h.replace(ft.caret,"$1"),r=r.replace(d,h),u},getRegex:()=>new RegExp(r,a)};return u}var Nb=((l="")=>{try{return!!new RegExp("(?<=1)(?<!1)"+l)}catch{return!1}})(),ft={codeRemoveIndent:/^(?: {0,3}\t| {1,4})/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,endingSpaceTabChar:/[ \t]$/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,leadingSpaceTab:/^[ \t]+/,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+)[ \t]*)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,blockquoteMarkerWhitespace:/^( {0,3}>)([ \t]+)/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\][ \t]+\S/,listReplaceTask:/^\[[ xX]\][ \t]+/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,numericCharacterReference:/&#(?:(\d{1,7})|[Xx]([A-Fa-f0-9]{1,6}));/,numericCharacterReferenceOrAmpersand:/&#(?:(\d{1,7})|[Xx]([A-Fa-f0-9]{1,6}));|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:l=>new RegExp(`^( {0,3}${l})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:cs(l=>new RegExp(`^ {0,${l}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`)),hrRegex:cs(l=>new RegExp(`^ {0,${l}}((?:-[ ]*){3,}|(?:_[ ]*){3,}|(?:\\*[ ]*){3,})(?:\\n+|$)`)),fencesBeginRegex:cs(l=>new RegExp(`^ {0,${l}}(?:\`\`\`|~~~)`)),headingBeginRegex:cs(l=>new RegExp(`^ {0,${l}}#{1,6}(?:\\s|$)`)),pedanticHeadingBeginRegex:cs(l=>new RegExp(`^ {0,${l}}#`)),htmlBeginRegex:cs(l=>new RegExp(`^ {0,${l}}(?:</?(?:${qi})(?: +|$|/?>)|<(?:(?:script|pre|style|textarea)(?:[\\s>]|$)|!--)|<\\?|<![A-Za-z]|<!\\[CDATA\\[)`,"i")),blockquoteBeginRegex:cs(l=>new RegExp(`^ {0,${l}}>`))},HN=/^(?:[ \t]*(?:\n|$))+/,BN=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,LN=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}(?:(?=`)\1`*|(?=~)\1~*) *(?=\n|$)|$)/,Li=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,qN=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,Tf=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,Sb=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |fences|blockquote|heading|hr|html|table))+?)\n {0,3}(=+|-+)[ \t]*(?:\n+|$)/,wb=ye(Sb).replace(/bull/g,Tf).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}(?:\s|$)/).replace(/hr/g,/ {0,3}(?:(?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),YN=ye(Sb).replace(/bull/g,Tf).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}(?:\s|$)/).replace(/hr/g,/ {0,3}(?:(?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),Ef=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table|[ \t]+\n)[^\n]+)*)/,GN=/^[^\n]+/,Cf=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\\n]|\n(?![ \t]*\n))+/,XN=ye(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",Cf).replace("title",/(?:"(?:\\[\s\S]|[^"\\])*"|'(?:\\[\s\S]|[^'\\\n]|\n(?!\n))*'|\((?:\\[\s\S]|[^()\\])*\))/).getRegex(),QN=ye(/^(bull)([ \t][^\n]*?)?(?:\n|$)/).replace(/bull/g,Tf).getRegex(),qi="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",Af=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,ZN=ye("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n*|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>[^\\n]*\\n*|$)|<![A-Z][\\s\\S]*?(?:>[^\\n]*\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>[^\\n]*\\n*|$)|</?(tag)(?:[ \\t]+|\\n|/?>|$)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!(?:script|pre|style|textarea)(?![a-z0-9-]))([a-z][a-z0-9-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</[a-z][a-z0-9-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",Af).replace("tag",qi).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),Tb=l=>ye(Ef).replace("hr",Li).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace("list",l).replace("html"," {0,3}(?:</?(?:tag)(?: +|\\n|/?>)|<(?:(?:script|pre|style|textarea)(?:[\\s>]|$)|!--)|<\\?|<![A-Za-z]|<!\\[CDATA\\[)").replace("tag",qi).getRegex(),VN=Tb(/ {0,3}(?:[*+-]|1[.)])[ \t]+[^ \t\n]/),KN=Tb(/ {0,3}(?:[*+-]|\d{1,9}[.)])(?:[ \t]|\n|$)/),IN=ye(/^( {0,3}> ?(?:(?![ \t]*(?:\n|$))(paragraph)|[^\n]*)(?:\n|$))+/).replace("paragraph",KN).getRegex(),zf={blockquote:IN,code:BN,def:XN,fences:LN,heading:qN,hr:Li,html:ZN,lheading:wb,list:QN,newline:HN,paragraph:VN,table:os,text:GN},lx=ye("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",Li).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html"," {0,3}(?:</?(?:tag)(?: +|\\n|/?>)|<(?:(?:script|pre|style|textarea)(?:[\\s>]|$)|!--)|<\\?|<![A-Za-z]|<!\\[CDATA\\[)").replace("tag",qi).getRegex(),JN={...zf,lheading:YN,table:lx,paragraph:ye(Ef).replace("hr",Li).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",lx).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]+[^ \\t\\n]").replace("html"," {0,3}(?:</?(?:tag)(?: +|\\n|/?>)|<(?:(?:script|pre|style|textarea)(?:[\\s>]|$)|!--)|<\\?|<![A-Za-z]|<!\\[CDATA\\[)").replace("tag",qi).getRegex()},FN={...zf,html:ye(`^ *(?:comment(?: *\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1>(?: *\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?>(?: *\\n{2,}|\\s*$))`).replace("comment",Af).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:os,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:ye(Ef).replace("hr",Li).replace("heading",` *#{1,6} *[^
99
+ ]`).replace("lheading",wb).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},PN=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,WN=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Eb=/^( {2,}|\\)\n(?!\s*$)[ \t]*/,eS=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,qn=/[\p{P}\p{S}]/u,Ea=/[\s\p{P}\p{S}]/u,Yi=/[^\s\p{P}\p{S}]/u,tS=ye(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,Ea).getRegex(),nS=/[\p{Pi}\p{Ps}"']/u,Cb=/(?!~)[\p{P}\p{S}]/u,lS=/(?!~)[\s\p{P}\p{S}]/u,sS=/(?:[^\s\p{P}\p{S}]|~)/u,aS=ye(/link|precode-code|html/,"g").replace("link",/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",Nb?"(?<!`)()":"(^^|[^`])").replace("code",/(?<b>`+)[^`]+\k<b>(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),Ab=/^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/,iS=ye(Ab,"u").replace(/punct/g,qn).getRegex(),rS=ye(Ab,"u").replace(/punct/g,Cb).getRegex(),cS=/^(?:\*+(?:((?!\*)(?!openQuote)punct)|([^\s*]))?)|^_+(?:((?!_)(?!openQuote)punct)|([^\s_]))?/,uS=ye(cS,"u").replace(/openQuote/g,nS).replace(/punct/g,qn).getRegex(),zb="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",oS=ye(zb,"gu").replace(/notPunctSpace/g,Yi).replace(/punctSpace/g,Ea).replace(/punct/g,qn).getRegex(),dS=ye(zb,"gu").replace(/notPunctSpace/g,sS).replace(/punctSpace/g,lS).replace(/punct/g,Cb).getRegex(),fS="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)[\\s](\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|(?:(?!\\*)punct|notPunctSpace)(\\*+)(?!\\*)(?=notPunctSpace)",hS=ye(fS,"gu").replace(/notPunctSpace/g,Yi).replace(/punctSpace/g,Ea).replace(/punct/g,qn).getRegex(),mS=ye("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,Yi).replace(/punctSpace/g,Ea).replace(/punct/g,qn).getRegex(),pS="^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)[\\s](_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)|(?:(?!_)punct|notPunctSpace)(_+)(?!_)(?=notPunctSpace)",gS=ye(pS,"gu").replace(/notPunctSpace/g,Yi).replace(/punctSpace/g,Ea).replace(/punct/g,qn).getRegex(),vS=ye(/^~~?(?:((?!~)punct)|[^\s~])/,"u").replace(/punct/g,qn).getRegex(),xS="^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)",bS=ye(xS,"gu").replace(/notPunctSpace/g,Yi).replace(/punctSpace/g,Ea).replace(/punct/g,qn).getRegex(),yS=ye(/\\(punct)/,"gu").replace(/punct/g,qn).getRegex(),kS=ye(/(`+)(?:[^`]|[^`][\s\S]*?[^`])\1(?!`)|`+|\\(punct)/,"gu").replace(/punct/g,qn).getRegex(),jS=ye(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),NS=ye(Af).replace("(?:-->|$)","-->").getRegex(),SS=ye("^comment|^</[a-zA-Z][a-zA-Z0-9-]*\\s*>|^<[a-zA-Z][a-zA-Z0-9-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",NS).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),_b=/\[(?:\\[\s\S]|[^\[\]\\])*\]/,Rc=ye(/(?:\[(?:brackets|\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/).replace("brackets",_b).getRegex(),wS=ye(/^!?\[(label)\]\([ \t\n]*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?[ \t\n]*\)/).replace("label",Rc).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]+|(?=\))/).replace("title",/"(?:\\[\s\S]|[^"\\])*"|'(?:\\[\s\S]|[^'\\])*'|\((?:\\[\s\S]|[^)\\])*\)/).getRegex(),TS=ye(/^!?\[(label)\]\[(ref)\]/).replace("label",Rc).replace("ref",Cf).getRegex(),ES=ye(/^!?\[(ref)\](?:\[\])?/).replace("ref",Cf).getRegex(),sx=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\]){1,999}/,CS=ye(/(?:[^\[\]\\`]*(?:\[(?:brackets|\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\]))){0,999}?[^\[\]\\`]*?/).replace("brackets",_b).getRegex(),AS=ye("reflink|nolink(?!\\()","g").replace("reflink",ye(/^!?\[(label)\]\[(ref)\]/).replace("label",CS).replace("ref",sx).getRegex()).replace("nolink",ye(/^!?\[(ref)\](?:\[\])?/).replace("ref",sx).getRegex()).getRegex(),ax=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,zS=/[A-Za-z0-9._+-]+@[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![\w-])/,_S=ye(/(?:mailto:email|xmpp:email(?:\/[A-Za-z0-9@.]+)?)/).replace(/email/g,zS).getRegex(),_f={_backpedal:os,anyPunctuation:yS,anyPunctuationOutsideCode:kS,autolink:jS,blockSkip:aS,br:Eb,code:WN,del:os,delLDelim:os,delRDelim:os,emStrongLDelim:iS,emStrongRDelimAst:oS,emStrongRDelimUnd:mS,escape:PN,link:wS,nolink:ES,punctuation:tS,reflink:TS,reflinkSearch:AS,tag:SS,text:eS,url:os},OS={..._f,emStrongLDelim:uS,emStrongRDelimAst:hS,emStrongRDelimUnd:gS,link:ye(/^!?\[(label)\]\((.*?)\)/).replace("label",Rc).getRegex(),reflink:ye(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Rc).getRegex()},Wd={..._f,emStrongRDelimAst:dS,emStrongLDelim:rS,delLDelim:vS,delRDelim:bS,url:ye(/^emailProtocol|^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("emailProtocol",_S).replace("protocol",ax).replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![\w-])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:ye(/^(?:[^a-zA-Z0-9](?=emailProtocol)|(`+|~+|[^`~])(?:(?=[`~])|(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|wwwStart|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9](?=emailProtocol)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))))/).replace("protocol",ax).replace(/emailProtocol/g,/(?:mailto|xmpp):/).replace("wwwStart",Nb?"(?<![^\\s*_~(])www\\.":"www\\.").getRegex()},MS={...Wd,br:ye(Eb).replace("{2,}","*").getRegex(),text:ye(Wd.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},yc={normal:zf,gfm:JN,pedantic:FN},wi={normal:_f,gfm:Wd,breaks:MS,pedantic:OS},RS={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},ix=l=>RS[l];function nn(l,a){if(a){if(ft.escapeTest.test(l))return l.replace(ft.escapeReplace,ix)}else if(ft.escapeTestNoEncode.test(l))return l.replace(ft.escapeReplaceNoEncode,ix);return l}function DS(l){return ft.numericCharacterReference.test(l)?l.replace(ft.numericCharacterReferenceOrAmpersand,(a,r,u)=>{if(r===void 0&&u===void 0)return"&amp;";let d=r===void 0?Number.parseInt(u,16):Number.parseInt(r,10);return d===0||d>1114111||d>=55296&&d<=57343?"�":d===38?"&amp;":String.fromCodePoint(d)}):l}function rx(l){try{l=encodeURI(l).replace(ft.percentDecode,"%")}catch{return null}return l}function cx(l,a){var f;let r=l.replace(ft.findPipe,(h,p,m)=>{let b=!1,v=p;for(;--v>=0&&m[v]==="\\";)b=!b;return b?"|":" |"}),u=r.split(ft.splitPipe),d=0;if(u[0].trim()||u.shift(),u.length>0&&!((f=u.at(-1))!=null&&f.trim())&&u.pop(),a)if(u.length>a)u.splice(a);else for(;u.length<a;)u.push("");for(;d<u.length;d++)u[d]=u[d].trim().replace(ft.slashPipe,"|");return u}function ll(l,a,r){let u=l.length;if(u===0)return"";let d=0;for(;d<u&&l.charAt(u-d-1)===a;)d++;return l.slice(0,u-d)}function ux(l){let a=l.split(`
100
+ `),r=a.length-1;for(;r>=0&&ft.blankLine.test(a[r]);)r--;return a.length-r<=2?l:a.slice(0,r+1).join(`
101
+ `)}function Dc(l){return l.trim().replace(ft.multipleSpaceGlobal," ").toLowerCase().toUpperCase().toLowerCase()}function ox(l,a){if(l.indexOf(a[0])===-1&&l.indexOf(a[1])===-1)return-1;let r=0;for(let u=0;u<l.length;u++)if(l[u]==="\\")u++;else if(l[u]===a[0])r++;else if(l[u]===a[1]&&(r--,r<0))return u;return r>0?-2:-1}var Na=new WeakMap;function Of(l){let a={"*":-1,_:-1},r=-1,u=l.length;for(let d=0;d<u;d++){let f=l[d];if(f!=="*"&&f!=="_"&&f!=="~")continue;let h=d===0?`
102
+ `:l[d-1],p=d+1;for(;p<u&&l[p]===f;)p++;h!==" "&&h!==" "&&h!==`
103
+ `&&h!=="\r"&&h!=="\f"&&(f==="~"?r=d:a[f]=d),d=p-1}return{maskedSrc:l,lastPossibleEmStrongCloserIndex:a,lastPossibleDelCloserIndex:r}}function US(l,a){let r=Of(a),u=Na.get(l);u?u.push(r):Na.set(l,[r])}function $S(l){let a=Na.get(l);a&&(a.pop(),a.length===0&&Na.delete(l))}function HS(l,a,r){var d;let u=(d=Na.get(l))==null?void 0:d.at(-1);return u&&u.maskedSrc===a?u.lastPossibleEmStrongCloserIndex[r]:Of(a).lastPossibleEmStrongCloserIndex[r]}function BS(l,a){var u;let r=(u=Na.get(l))==null?void 0:u.at(-1);return r&&r.maskedSrc===a?r.lastPossibleDelCloserIndex:Of(a).lastPossibleDelCloserIndex}function kc(l,a=0){let r=a,u="";for(let d of l)if(d===" "){let f=4-r%4;u+=" ".repeat(f),r+=f}else u+=d,r++;return u}function dx(l,a,r,u,d){let f=a.href,h=a.title||null,p=l[1].replace(d.other.outputLinkReplace,"$1"),m=l[0].charAt(0)==="!",b=u.state.inLink,v=u.state.linkEmitted,y=u.state.inRawBlock;u.state.inLink=!0,u.state.linkEmitted=!1;let S=u.inlineTokens(p),T=u.state.linkEmitted;if(u.state.linkEmitted=v,u.state.inLink=b,!m){if(T){u.state.inRawBlock=y;return}u.state.linkEmitted=!0}return{type:m?"image":"link",raw:r,href:f,title:h,text:p,tokens:S}}function LS(l,a,r){let u=l.match(r.other.indentCodeCompensation);if(u===null)return a;let d=u[1];return a.split(`
104
+ `).map(f=>{let h=f.match(r.other.beginningSpace);if(h===null)return f;let[p]=h;return f.slice(Math.min(p.length,d.length))}).join(`
105
+ `)}function fx(l,a,r,u){if(!a.includes("<"))return!1;for(let d=0;d<a.length;d++){if(a[d]==="\\"){d++;continue}if(a[d]==="`"){let p=u.inline.code.exec(a.slice(d));if(p){d+=p[0].length-1;continue}}if(a[d]!=="<")continue;let f=l.slice(r+d),h=u.inline.tag.exec(f)||u.inline.autolink.exec(f);if(h){if(h[0].length>a.length-d)return!0;d+=h[0].length-1}}return!1}var xa=class{constructor(l){Le(this,"options");Le(this,"rules");Le(this,"lexer");this.options=l||bs}space(l){let a=this.rules.block.newline.exec(l);if(a&&a[0].length>0)return{type:"space",raw:a[0]}}code(l){let a=this.rules.block.code.exec(l);if(a){let r=this.options.pedantic?a[0]:ux(a[0]),u=r.replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:r,codeBlockStyle:"indented",text:u}}}fences(l){let a=this.rules.block.fences.exec(l);if(a){let r=a[0],u=LS(r,a[3]||"",this.rules);return{type:"code",raw:r,lang:a[2]?a[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):a[2],text:u}}}heading(l){let a=this.rules.block.heading.exec(l);if(a){let r=a[2].trim();if(this.rules.other.endingHash.test(r)){let u=ll(r,"#");(this.options.pedantic||!u||this.rules.other.endingSpaceTabChar.test(u))&&(r=u.trim())}return{type:"heading",raw:ll(a[0],`
106
+ `),depth:a[1].length,text:r,tokens:this.lexer.inline(r)}}}hr(l){let a=this.rules.block.hr.exec(l);if(a)return{type:"hr",raw:ll(a[0],`
107
+ `)}}blockquote(l){let a=this.rules.block.blockquote.exec(l);if(a){let r=ll(a[0],`
108
+ `).split(`
109
+ `),u="",d="",f=[];for(;r.length>0;){let h=!1,p=[],m;for(m=0;m<r.length;m++)if(this.rules.other.blockquoteStart.test(r[m]))p.push(r[m]),h=!0;else if(!h)p.push(r[m]);else break;r=r.slice(m);let b=p.join(`
110
+ `),v=b.replace(this.rules.other.blockquoteMarkerWhitespace,(T,k,x)=>k+kc(x,k.length)).replace(this.rules.other.blockquoteSetextReplace,`
111
+ $1`).replace(this.rules.other.blockquoteSetextReplace2,"");u=u?`${u}
112
+ ${b}`:b,d=d?`${d}
113
+ ${v}`:v;let y=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(v,f,!0),this.lexer.state.top=y,r.length===0)break;let S=f.at(-1);if((S==null?void 0:S.type)==="code"||(S==null?void 0:S.type)==="heading"||(S==null?void 0:S.type)==="hr"||(S==null?void 0:S.type)==="html"||(S==null?void 0:S.type)==="table")break;if((S==null?void 0:S.type)==="blockquote"){let T=S,k=r.join(`
114
+ `),x=T.raw+`
115
+ `+k.replace(this.rules.other.blockquoteSetextReplace2,""),j=this.blockquote(x);f[f.length-1]=j;let E=x.substring(j.raw.length).replace(/^\n/,""),A=E?E.split(`
116
+ `).length:0,X=A?r.slice(0,-A):r;if(X.length>0&&(u=`${u}
117
+ ${X.join(`
118
+ `)}`),d=d.substring(0,d.length-T.text.length)+j.text,r=r.slice(X.length),r.length>0&&this.rules.other.blockquoteStart.test(r[0]))continue;break}else if((S==null?void 0:S.type)==="list"){let T=S,k=T.raw+`
119
+ `+r.join(`
120
+ `),x=this.list(k);f[f.length-1]=x;let j=x.raw.length>T.raw.length?k.slice(T.raw.length+1,x.raw.length).split(`
121
+ `).length:0;if(j>0){let E=r.slice(0,j).join(`
122
+ `);u=`${u}
123
+ ${E}`,d=`${d}
124
+ ${E}`}r=r.slice(j);continue}}return{type:"blockquote",raw:u,tokens:f,text:d}}}list(l){let a=this.rules.block.list.exec(l);if(a){let r=l,u=()=>r.length-l.length,d=a[1].trim(),f=d.length>1,h={type:"list",raw:"",ordered:f,start:f?+d.slice(0,-1):"",loose:!1,items:[]};d=f?`\\d{1,9}\\${d.slice(-1)}`:`\\${d}`,this.options.pedantic&&(d=f?d:"[*+-]");let p=this.rules.other.listItemRegex(d),m=!1;for(;l;){let v=!1,y="";if(!(a=p.exec(l))||this.rules.block.hr.test(l))break;let S=u();l=l.substring(a[0].length);let T=a[2].split(`
125
+ `,1)[0],k=a[1].length,x=this.options.pedantic?kc(T,k):T.replace(this.rules.other.leadingSpaceTab,J=>kc(J,k)),j=l.split(`
126
+ `,1)[0],E=!x.trim(),A=0;if(this.options.pedantic?(A=2,y=x.trimStart()):E?A=k+1:(A=x.search(this.rules.other.nonSpaceChar),A=A>4?1:A,y=x.slice(A),A+=k),E&&this.rules.other.blankLine.test(j)&&(l=l.substring(j.length+1),v=!0),!v){let J=this.rules.other.nextBulletRegex(A),F=this.rules.other.hrRegex(A),G=this.rules.other.fencesBeginRegex(A),L=this.options.pedantic?this.rules.other.pedanticHeadingBeginRegex(A):this.rules.other.headingBeginRegex(A),B=this.rules.other.htmlBeginRegex(A),ae=this.rules.other.blockquoteBeginRegex(A);for(;l;){let ne=l.split(`
127
+ `,1)[0],Se;if(j=ne,this.options.pedantic?(j=j.replace(this.rules.other.listReplaceNesting," "),Se=j):Se=j.replace(this.rules.other.leadingSpaceTab,Ze=>kc(Ze)),G.test(j)||L.test(j)||B.test(j)||ae.test(j)||J.test(j)||F.test(j))break;if(Se.search(this.rules.other.nonSpaceChar)>=A||!j.trim())y+=`
128
+ `+Se.slice(A);else{if(E||x.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||G.test(x)||L.test(x)||B.test(x)||F.test(x))break;let Ze=!this.options.pedantic&&/^ {0,3}(?:=+|-+) *$/.test(j)&&this.rules.block.lheading.test(`${x}
129
+ ${j}`)?` ${Se.replace(/^ {0,3}/,"")}`:j;y+=`
130
+ `+Ze}E=!j.trim(),l=l.substring(ne.length+1),x=Se.slice(A)}}let X=r.slice(S,u());h.loose||(m?h.loose=!0:this.rules.other.doubleBlankLine.test(X)&&(m=!0)),h.items.push({type:"list_item",raw:X,task:!!this.options.gfm&&this.rules.other.listIsTask.test(y),loose:!1,text:y,tokens:[]})}let b=h.items.at(-1);if(b)b.raw=b.raw.trimEnd(),b.text=b.text.trimEnd();else return;h.raw=r.slice(0,u()).trimEnd();for(let v of h.items)if(this.lexer.state.top=!1,v.tokens=this.lexer.blockTokens(v.text,[]),!h.loose){let y=v.tokens.filter(T=>T.type==="space"),S=y.length>0&&y.some(T=>this.rules.other.anyLine.test(T.raw));h.loose=S}for(let v of h.items){let y=v.tokens[0];if(v.task&&((y==null?void 0:y.type)==="text"||(y==null?void 0:y.type)==="paragraph")){v.text=v.text.replace(this.rules.other.listReplaceTask,""),y.raw=y.raw.replace(this.rules.other.listReplaceTask,""),y.text=y.text.replace(this.rules.other.listReplaceTask,"");for(let T=this.lexer.inlineQueue.length-1;T>=0;T--)if(this.rules.other.listIsTask.test(this.lexer.inlineQueue[T].src)){this.lexer.inlineQueue[T].src=this.lexer.inlineQueue[T].src.replace(this.rules.other.listReplaceTask,"");break}let S=this.rules.other.listTaskCheckbox.exec(v.raw);if(S){let T={type:"checkbox",raw:S[0]+" ",checked:S[0]!=="[ ]"};v.checked=T.checked,h.loose?v.tokens[0]&&["paragraph","text"].includes(v.tokens[0].type)&&"tokens"in v.tokens[0]&&v.tokens[0].tokens?(v.tokens[0].raw=T.raw+v.tokens[0].raw,v.tokens[0].text=T.raw+v.tokens[0].text,v.tokens[0].tokens.unshift(T)):v.tokens.unshift({type:"paragraph",raw:T.raw,text:T.raw,tokens:[T]}):v.tokens.unshift(T)}}else v.task&&(v.task=!1)}if(h.loose)for(let v of h.items){v.loose=!0;for(let y of v.tokens)y.type==="text"&&(y.type="paragraph")}return h}}html(l){let a=this.rules.block.html.exec(l);if(a){let r=ux(a[0]);return{type:"html",block:!0,raw:r,pre:a[1]==="pre"||a[1]==="script"||a[1]==="style",text:r}}}def(l){let a=this.rules.block.def.exec(l);if(a){if(!this.rules.other.startAngleBracket.test(a[2])&&ox(a[2],"()")!==-1)return;let r=Dc(a[1]),u=a[2]?a[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",d=a[3]?a[3].substring(1,a[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):a[3];return{type:"def",tag:r,raw:ll(a[0],`
131
+ `),href:u,title:d}}}table(l){var h;let a=this.rules.block.table.exec(l);if(!a||!this.rules.other.tableDelimiter.test(a[2]))return;let r=cx(a[1]),u=a[2].replace(this.rules.other.tableAlignChars,"").split("|"),d=(h=a[3])!=null&&h.trim()?a[3].replace(this.rules.other.tableRowBlankLine,"").split(`
132
+ `):[],f={type:"table",raw:ll(a[0],`
133
+ `),header:[],align:[],rows:[]};if(r.length===u.length){for(let p of u)this.rules.other.tableAlignRight.test(p)?f.align.push("right"):this.rules.other.tableAlignCenter.test(p)?f.align.push("center"):this.rules.other.tableAlignLeft.test(p)?f.align.push("left"):f.align.push(null);for(let p=0;p<r.length;p++)f.header.push({text:r[p],tokens:this.lexer.inline(r[p]),header:!0,align:f.align[p]});for(let p of d)f.rows.push(cx(p,f.header.length).map((m,b)=>({text:m,tokens:this.lexer.inline(m),header:!1,align:f.align[b]})));return f}}lheading(l){let a=this.rules.block.lheading.exec(l);if(a){let r=a[1].trim();return{type:"heading",raw:ll(a[0],`
134
+ `),depth:a[2].charAt(0)==="="?1:2,text:r,tokens:this.lexer.inline(r)}}}paragraph(l){let a=this.rules.block.paragraph.exec(l);if(a){let r=a[1].charAt(a[1].length-1)===`
135
+ `?a[1].slice(0,-1):a[1];return{type:"paragraph",raw:a[0],text:r,tokens:this.lexer.inline(r)}}}text(l){let a=this.rules.block.text.exec(l);if(a)return{type:"text",raw:a[0],text:a[0],tokens:this.lexer.inline(a[0])}}escape(l){let a=this.rules.inline.escape.exec(l);if(a)return{type:"escape",raw:a[0],text:a[1]}}tag(l){let a=this.rules.inline.tag.exec(l);if(a)return!this.lexer.state.inLink&&this.rules.other.startATag.test(a[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(a[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(a[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(a[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:a[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:a[0]}}link(l){if(this.lexer.state.linkParenPossible===!1)return;let a=this.rules.inline.link.exec(l);if(a){let r=a[0].charAt(0)==="!"?2:1;if(!this.options.pedantic&&fx(l,a[1],r,this.rules))return;let u=a[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(u)){if(!this.rules.other.endAngleBracket.test(u))return;let p=ll(u.slice(0,-1),"\\");if((u.length-p.length)%2===0)return}else{let p=ox(a[2],"()");if(p===-2)return;if(p>-1){let m=(a[0].indexOf("!")===0?5:4)+a[1].length+p;a[2]=a[2].substring(0,p),a[0]=a[0].substring(0,m).trim(),a[3]=""}}let d=ll(a[0].slice(0,-1),"\\");if((a[0].length-d.length)%2===0)return;let f=a[2],h="";if(this.options.pedantic){let p=this.rules.other.pedanticHrefTitle.exec(f);p&&(f=p[1],h=p[3])}else h=a[3]?a[3].slice(1,-1):"";return f=f.trim(),this.rules.other.startAngleBracket.test(f)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(u)?f=f.slice(1):f=f.slice(1,-1)),dx(a,{href:f&&f.replace(this.rules.inline.anyPunctuation,"$1"),title:h&&h.replace(this.rules.inline.anyPunctuation,"$1")},a[0],this.lexer,this.rules)}}reflink(l,a){let r;if((r=this.rules.inline.reflink.exec(l))||(r=this.rules.inline.nolink.exec(l))){let u=r[0].charAt(0)==="!"?2:1;if(!this.options.pedantic&&fx(l,r[1],u,this.rules))return;let d=a[Dc(r[2]||r[1])];if(!d){let f=r[0].charAt(0);return{type:"text",raw:f,text:f}}return dx(r,d,r[0],this.lexer,this.rules)}}emStrong(l,a,r=""){let u=this.rules.inline.emStrongLDelim.exec(l);if(!u||!u[1]&&!u[2]&&!u[3]&&!u[4])return;let d=u[0][0],f=r===d,h=a.length-l.length,p=h;for(;!this.options.pedantic&&p>0&&a[p-1]===d;)p--;let m=[...a.slice(Math.max(0,p-2),p)].at(-1)??"",b=m==="*"||m==="_"||!!this.rules.inline.punctuation.exec(m);p<h&&(r=m);let v=p<h?b:!!this.rules.inline.punctuation.exec(r);if(u[4]&&r.match(this.rules.other.unicodeAlphaNumeric))return;let y=u[1]||u[3]||"";if(!y||!r||v){let S=[...u[0]].length-1,T,k,x=S,j=0,E=h-p+S,A=!this.options.pedantic&&!!m.trim()&&(!!y||d==="*"&&!b);if(d!=="*"&&d!=="_")return;let X=d==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd,J=HS(this,a,d),F=a.length-l.length+S;if(J<F)return;a=a.slice(-1*l.length+S);let G=J-F;for(X.lastIndex=0;(u=X.exec(a))!==null&&!(u.index>G);){if(T=u[1]||u[2]||u[3]||u[4]||u[5]||u[6],!T)continue;if(k=[...T].length,u[3]||u[4]){x+=k;continue}else if(u[5]||u[6]||A){if(f&&(u[5]||u[6]))break;if(E%3&&!((E+k)%3)){j+=k;continue}}if(x-=k,x>0)continue;k=Math.min(k,k+x+j);let L=[...u[0]][0].length,B=l.slice(0,S+u.index+L+k);if(Math.min(S,k)%2){let ne=B.slice(1,-1);return{type:"em",raw:B,text:ne,tokens:this.lexer.inlineTokens(ne)}}let ae=B.slice(2,-2);return{type:"strong",raw:B,text:ae,tokens:this.lexer.inlineTokens(ae)}}}}codespan(l){let a=this.rules.inline.code.exec(l);if(a){let r=a[2].replace(this.rules.other.newLineCharGlobal," "),u=this.rules.other.nonSpaceChar.test(r),d=this.rules.other.startingSpaceChar.test(r)&&this.rules.other.endingSpaceChar.test(r);return u&&d&&(r=r.substring(1,r.length-1)),{type:"codespan",raw:a[0],text:r}}}br(l){let a=this.rules.inline.br.exec(l);if(a)return{type:"br",raw:a[0]}}del(l,a,r=""){let u=this.rules.inline.delLDelim.exec(l);if(u&&(!u[1]||!r||this.rules.inline.punctuation.exec(r))){let d=[...u[0]].length-1,f,h,p=d,m=this.rules.inline.delRDelim,b=BS(this,a),v=a.length-l.length+d;if(b<v)return;a=a.slice(-1*l.length+d);let y=b-v;for(m.lastIndex=0;(u=m.exec(a))!==null&&!(u.index>y);){if(f=u[1]||u[2]||u[3]||u[4]||u[5]||u[6],!f||(h=[...f].length,h!==d))continue;if(u[3]||u[4]){p+=h;continue}if(p-=h,p>0)continue;h=Math.min(h,h+p);let S=[...u[0]][0].length,T=l.slice(0,d+u.index+S+h),k=T.slice(d,-d);return{type:"del",raw:T,text:k,tokens:this.lexer.inlineTokens(k)}}}}autolink(l){let a=this.rules.inline.autolink.exec(l);if(a){let r,u;return a[2]==="@"?(r=a[1],u="mailto:"+r):(r=a[1],u=r),{type:"link",raw:a[0],text:r,href:u,autolink:!0,tokens:[{type:"text",raw:r,text:r}]}}}url(l){var r;let a;if(a=this.rules.inline.url.exec(l)){let u,d;if(a[2]==="@")u=a[0],d="mailto:"+u;else{let f;do f=a[0],a[0]=((r=this.rules.inline._backpedal.exec(a[0]))==null?void 0:r[0])??"";while(f!==a[0]);u=a[0],a[1]==="www."?d="http://"+a[0]:d=a[0]}return{type:"link",raw:a[0],text:u,href:d,autolink:!0,tokens:[{type:"text",raw:u,text:u}]}}}inlineText(l){let a=this.rules.inline.text.exec(l);if(a){let r=this.lexer.state.inRawBlock;return{type:"text",raw:a[0],text:r?a[0]:DS(a[0]),escaped:r}}}},$l,Ob,Mb,Rb,hs,Nn=(hs=class{constructor(a){gv(this,$l);Le(this,"tokens");Le(this,"options");Le(this,"state");Le(this,"inlineQueue");Le(this,"tokenizer");this.tokens=[],this.tokens.links=Object.create(null),this.options=a||bs,this.options.tokenizer=this.options.tokenizer||new xa,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,linkEmitted:!1,linkParenPossible:!0,top:!0};let r={other:ft,block:yc.normal,inline:wi.normal};this.options.pedantic?(r.block=yc.pedantic,r.inline=wi.pedantic):this.options.gfm&&(r.block=yc.gfm,this.options.breaks?r.inline=wi.breaks:r.inline=wi.gfm),this.tokenizer.rules=r}static get rules(){return{block:yc,inline:wi}}static lex(a,r){return new hs(r).lex(a)}static lexInline(a,r){return new hs(r).inlineTokens(a)}lex(a){a=a.replace(ft.carriageReturn,`
136
+ `),this.blockTokens(a,this.tokens);for(let r=0;r<this.inlineQueue.length;r++){let u=this.inlineQueue[r];this.state.inRawBlock=!1,this.inlineTokens(u.src,u.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(a,r=[],u=!1){var f,h,p;this.tokenizer.lexer=this,this.options.pedantic&&(a=a.replace(ft.tabCharGlobal," ").replace(ft.spaceLine,""));let d=1/0;for(;a;){if(a.length<d)d=a.length;else{this.infiniteLoopError(a.charCodeAt(0));break}let m;if((h=(f=this.options.extensions)==null?void 0:f.block)!=null&&h.some(v=>(m=v.call({lexer:this},a,r))?(a=a.substring(m.raw.length),r.push(m),!0):!1))continue;if(m=this.tokenizer.space(a)){a=a.substring(m.raw.length);let v=r.at(-1);m.raw.length===1&&v!==void 0?v.raw+=`
137
+ `:r.push(m);continue}if(m=this.tokenizer.code(a)){a=a.substring(m.raw.length);let v=r.at(-1);(v==null?void 0:v.type)==="paragraph"||(v==null?void 0:v.type)==="text"?(v.raw+=(v.raw.endsWith(`
138
+ `)?"":`
139
+ `)+m.raw,v.text+=`
140
+ `+m.text,this.inlineQueue.at(-1).src=v.text):r.push(m);continue}if(m=this.tokenizer.fences(a)){a=a.substring(m.raw.length),r.push(m);continue}if(m=this.tokenizer.heading(a)){a=a.substring(m.raw.length),r.push(m);continue}if(m=this.tokenizer.hr(a)){a=a.substring(m.raw.length),r.push(m);continue}if(m=this.tokenizer.blockquote(a)){a=a.substring(m.raw.length),r.push(m);continue}if(m=this.tokenizer.list(a)){a=a.substring(m.raw.length),r.push(m);continue}if(m=this.tokenizer.html(a)){a=a.substring(m.raw.length),r.push(m);continue}if(m=this.tokenizer.def(a)){a=a.substring(m.raw.length);let v=r.at(-1);(v==null?void 0:v.type)==="paragraph"||(v==null?void 0:v.type)==="text"?(v.raw+=(v.raw.endsWith(`
141
+ `)?"":`
142
+ `)+m.raw,v.text+=`
143
+ `+m.raw,this.inlineQueue.at(-1).src=v.text):(this.tokens.links[m.tag]||(this.tokens.links[m.tag]={href:m.href,title:m.title}),r.push(m));continue}if(m=this.tokenizer.table(a)){a=a.substring(m.raw.length),r.push(m);continue}if(m=this.tokenizer.lheading(a)){a=a.substring(m.raw.length),r.push(m);continue}let b=a;if((p=this.options.extensions)!=null&&p.startBlock){let v=1/0,y=a.slice(1),S;this.options.extensions.startBlock.forEach(T=>{S=T.call({lexer:this},y),typeof S=="number"&&S>=0&&(v=Math.min(v,S))}),v<1/0&&v>=0&&(b=a.substring(0,v+1))}if(this.state.top&&(m=this.tokenizer.paragraph(b))){let v=r.at(-1);u&&(v==null?void 0:v.type)==="paragraph"?(v.raw+=(v.raw.endsWith(`
144
+ `)?"":`
145
+ `)+m.raw,v.text+=`
146
+ `+m.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=v.text):r.push(m),u=b.length!==a.length,a=a.substring(m.raw.length);continue}if(m=this.tokenizer.text(a)){a=a.substring(m.raw.length);let v=r.at(-1);(v==null?void 0:v.type)==="text"?(v.raw+=(v.raw.endsWith(`
147
+ `)?"":`
148
+ `)+m.raw,v.text+=`
149
+ `+m.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=v.text):r.push(m);continue}if(a){this.infiniteLoopError(a.charCodeAt(0));break}}return this.state.top=!0,r}inline(a,r=[]){return this.inlineQueue.push({src:a,tokens:r}),r}linkInText(a){if(!a.includes("["))return!1;let r=this.tokenizer.rules.inline.link;for(let u of a.matchAll(this.tokenizer.rules.inline.blockSkip))if(r.test(u[0])&&a.charAt(u.index-1)!=="!")return!0;for(let u of a.matchAll(this.tokenizer.rules.inline.reflinkSearch)){let d=u[0],f=d.lastIndexOf("[");if(!(d.charAt(0)==="!"||!Object.hasOwn(this.tokens.links,Dc(d.slice(f+1,-1))))&&!(f>1&&this.linkInText(d.slice(1,f-1))))return!0}return!1}inlineTokens(a,r=[]){this.tokenizer.lexer=this;let u=this.state.linkParenPossible;this.state.linkParenPossible=u&&a.includes(")");try{return bc(this,$l,Ob).call(this,a,r)}finally{this.state.linkParenPossible=u}}infiniteLoopError(a){let r="Infinite loop on byte: "+a;if(this.options.silent)console.error(r);else throw new Error(r)}},$l=new WeakSet,Ob=function(a,r){var d;let u=a.includes("*")||a.includes("_")||a.includes("~")||(d=this.options.hooks)!=null&&d.emStrongMask||this.tokenizer.emStrong!==xa.prototype.emStrong||this.tokenizer.del!==xa.prototype.del?bc(this,$l,Rb).call(this,a):a;US(this.tokenizer,u);try{return bc(this,$l,Mb).call(this,a,u,r)}finally{$S(this.tokenizer)}},Mb=function(a,r,u){var p,m,b;let d=!1,f="",h=1/0;for(;a;){if(a.length<h)h=a.length;else{this.infiniteLoopError(a.charCodeAt(0));break}d||(f=""),d=!1;let v;if((m=(p=this.options.extensions)==null?void 0:p.inline)!=null&&m.some(S=>(v=S.call({lexer:this},a,u))?(a=a.substring(v.raw.length),u.push(v),!0):!1))continue;if(v=this.tokenizer.escape(a)){a=a.substring(v.raw.length),u.push(v);continue}if(v=this.tokenizer.tag(a)){a=a.substring(v.raw.length),u.push(v);continue}if(v=this.tokenizer.link(a)){a=a.substring(v.raw.length),u.push(v);continue}if(v=this.tokenizer.reflink(a,this.tokens.links)){a=a.substring(v.raw.length);let S=u.at(-1);v.type==="text"&&(S==null?void 0:S.type)==="text"?(S.raw+=v.raw,S.text+=v.text):u.push(v);continue}if(v=this.tokenizer.emStrong(a,r,f)){a=a.substring(v.raw.length),u.push(v);continue}if(v=this.tokenizer.codespan(a)){a=a.substring(v.raw.length),u.push(v);continue}if(v=this.tokenizer.br(a)){a=a.substring(v.raw.length),u.push(v);continue}if(v=this.tokenizer.del(a,r,f)){a=a.substring(v.raw.length),u.push(v);continue}if(v=this.tokenizer.autolink(a)){a=a.substring(v.raw.length),u.push(v);continue}if(!this.state.inLink&&(v=this.tokenizer.url(a))){a=a.substring(v.raw.length),u.push(v);continue}let y=a;if((b=this.options.extensions)!=null&&b.startInline){let S=1/0,T=a.slice(1),k;this.options.extensions.startInline.forEach(x=>{k=x.call({lexer:this},T),typeof k=="number"&&k>=0&&(S=Math.min(S,k))}),S<1/0&&S>=0&&(y=a.substring(0,S+1))}if(v=this.tokenizer.inlineText(y)){a=a.substring(v.raw.length),v.raw.slice(-1)!=="_"&&(f=v.raw.slice(-1)),d=!0;let S=u.at(-1);(S==null?void 0:S.type)==="text"?(S.raw+=v.raw,S.text+=v.text):u.push(v);continue}if(a){this.infiniteLoopError(a.charCodeAt(0));break}}return u},Rb=function(a){var u,d;let r=a;if(this.tokens.links&&a.includes("[")){let f=this.tokenizer.rules.inline.reflinkSearch,h=p=>{let m=p.lastIndexOf("[");if(!Object.hasOwn(this.tokens.links,Dc(p.slice(m+1,-1))))return p;if(m>1&&p.charAt(0)!=="!"){let b=p.slice(1,m-1);if(this.linkInText(b))return"["+b.replace(f,h)+"]["+"a".repeat(p.length-m-2)+"]"}return"["+"a".repeat(p.length-2)+"]"};r=r.replace(f,h)}return r=r.replace(this.tokenizer.rules.inline.anyPunctuationOutsideCode,(f,h,p)=>p?"+".repeat(f.length):h?h+f.slice(h.length,-h.length).replace(/`/g,"+")+h:f),r=r.replace(this.tokenizer.rules.inline.blockSkip,(f,h,p)=>{let m=p?p.length:0;return f.slice(0,m)+"["+"a".repeat(f.length-m-2)+"]"}),r=((d=(u=this.options.hooks)==null?void 0:u.emStrongMask)==null?void 0:d.call({lexer:this},r))??r,r},hs),Uc=class{constructor(l){Le(this,"options");Le(this,"parser");this.options=l||bs}space(l){return""}code({text:l,lang:a,escaped:r}){var f;let u=(f=(a||"").match(ft.notSpaceStart))==null?void 0:f[0],d=l?l.replace(ft.endingNewline,"")+`
150
+ `:"";return u?'<pre><code class="language-'+nn(u)+'">'+(r?d:nn(d,!0))+`</code></pre>
151
+ `:"<pre><code>"+(r?d:nn(d,!0))+`</code></pre>
152
+ `}blockquote({tokens:l}){return`<blockquote>
153
+ ${this.parser.parse(l)}</blockquote>
154
+ `}html({text:l}){return l}def(l){return""}heading({tokens:l,depth:a}){return`<h${a}>${this.parser.parseInline(l)}</h${a}>
155
+ `}hr(l){return`<hr>
156
+ `}list(l){let a=l.ordered,r=l.start,u="";for(let h=0;h<l.items.length;h++){let p=l.items[h];u+=this.listitem(p)}let d=a?"ol":"ul",f=a&&r!==1?' start="'+r+'"':"";return"<"+d+f+`>
157
+ `+u+"</"+d+`>
158
+ `}listitem(l){return`<li>${this.parser.parse(l.tokens)}</li>
159
+ `}checkbox({checked:l}){return"<input "+(l?'checked="" ':"")+'disabled="" type="checkbox"> '}paragraph({tokens:l}){return`<p>${this.parser.parseInline(l)}</p>
160
+ `}table(l){let a="",r="";for(let d=0;d<l.header.length;d++)r+=this.tablecell(l.header[d]);a+=this.tablerow({text:r});let u="";for(let d=0;d<l.rows.length;d++){let f=l.rows[d];r="";for(let h=0;h<f.length;h++)r+=this.tablecell(f[h]);u+=this.tablerow({text:r})}return u&&(u=`<tbody>${u}</tbody>`),`<table>
161
+ <thead>
162
+ `+a+`</thead>
163
+ `+u+`</table>
164
+ `}tablerow({text:l}){return`<tr>
165
+ ${l}</tr>
166
+ `}tablecell(l){let a=this.parser.parseInline(l.tokens),r=l.header?"th":"td";return(l.align?`<${r} align="${l.align}">`:`<${r}>`)+a+`</${r}>
167
+ `}strong({tokens:l}){return`<strong>${this.parser.parseInline(l)}</strong>`}em({tokens:l}){return`<em>${this.parser.parseInline(l)}</em>`}codespan({text:l}){return`<code>${nn(l,!0)}</code>`}br(l){return"<br>"}del({tokens:l}){return`<del>${this.parser.parseInline(l)}</del>`}link({href:l,title:a,text:r,tokens:u,autolink:d}){let f=d?nn(r,!0):this.parser.parseInline(u),h=rx(l);if(h===null)return f;l=nn(h,d);let p='<a href="'+l+'"';return a&&(p+=' title="'+nn(a)+'"'),p+=">"+f+"</a>",p}image({href:l,title:a,text:r,tokens:u}){u&&(r=this.parser.parseInline(u,this.parser.textRenderer));let d=rx(l);if(d===null)return nn(r);l=d;let f=`<img src="${nn(l)}" alt="${nn(r)}"`;return a&&(f+=` title="${nn(a)}"`),f+=">",f}text(l){return"tokens"in l&&l.tokens?this.parser.parseInline(l.tokens):"escaped"in l&&l.escaped?l.text:nn(l.text)}},Mf=class{constructor(){Le(this,"parser")}strong({text:l,tokens:a}){return a?this.parser.parseInline(a,this):l}em({text:l,tokens:a}){return a?this.parser.parseInline(a,this):l}codespan({text:l}){return l}del({text:l,tokens:a}){return a?this.parser.parseInline(a,this):l}html({text:l}){return l}text({text:l}){return l}link({text:l,tokens:a}){return a?this.parser.parseInline(a,this):l}image({text:l,tokens:a}){return a?this.parser.parseInline(a,this):l}br(){return""}checkbox({raw:l}){return l}},Sn=class ef{constructor(a){Le(this,"options");Le(this,"renderer");Le(this,"textRenderer");this.options=a||bs,this.options.renderer=this.options.renderer||new Uc,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new Mf,this.textRenderer.parser=this}static parse(a,r){return new ef(r).parse(a)}static parseInline(a,r){return new ef(r).parseInline(a)}parse(a){var u,d;this.renderer.parser=this;let r="";for(let f=0;f<a.length;f++){let h=a[f];if((d=(u=this.options.extensions)==null?void 0:u.renderers)!=null&&d[h.type]){let m=h,b=this.options.extensions.renderers[m.type].call({parser:this},m);if(b!==!1||!["space","hr","heading","code","table","blockquote","list","checkbox","html","def","paragraph","text"].includes(m.type)){r+=b||"";continue}}let p=h;switch(p.type){case"space":{r+=this.renderer.space(p);break}case"hr":{r+=this.renderer.hr(p);break}case"heading":{r+=this.renderer.heading(p);break}case"code":{r+=this.renderer.code(p);break}case"table":{r+=this.renderer.table(p);break}case"blockquote":{r+=this.renderer.blockquote(p);break}case"list":{r+=this.renderer.list(p);break}case"checkbox":{r+=this.renderer.checkbox(p);break}case"html":{r+=this.renderer.html(p);break}case"def":{r+=this.renderer.def(p);break}case"paragraph":{r+=this.renderer.paragraph(p);break}case"text":{r+=this.renderer.text(p);break}default:{let m='Token with "'+p.type+'" type was not found.';if(this.options.silent)return console.error(m),"";throw new Error(m)}}}return r}parseInline(a,r=this.renderer){var d,f;this.renderer.parser=this;let u="";for(let h=0;h<a.length;h++){let p=a[h];if((f=(d=this.options.extensions)==null?void 0:d.renderers)!=null&&f[p.type]){let b=this.options.extensions.renderers[p.type].call({parser:this},p);if(b!==!1||!["escape","html","link","image","checkbox","strong","em","codespan","br","del","text"].includes(p.type)){u+=b||"";continue}}let m=p;switch(m.type){case"escape":{u+=r.text(m);break}case"html":{u+=r.html(m);break}case"link":{u+=r.link(m);break}case"image":{u+=r.image(m);break}case"checkbox":{u+=r.checkbox(m);break}case"strong":{u+=r.strong(m);break}case"em":{u+=r.em(m);break}case"codespan":{u+=r.codespan(m);break}case"br":{u+=r.br(m);break}case"del":{u+=r.del(m);break}case"text":{u+=r.text(m);break}default:{let b='Token with "'+m.type+'" type was not found.';if(this.options.silent)return console.error(b),"";throw new Error(b)}}}return u}},wc,Ci=(wc=class{constructor(l){Le(this,"options");Le(this,"block");this.options=l||bs}preprocess(l){return l}postprocess(l){return l}processAllTokens(l){return l}emStrongMask(l){return l}provideLexer(l=this.block){return l?Nn.lex:Nn.lexInline}provideParser(l=this.block){return l?Sn.parse:Sn.parseInline}},Le(wc,"passThroughHooks",new Set(["preprocess","postprocess","processAllTokens","emStrongMask"])),Le(wc,"passThroughHooksRespectAsync",new Set(["preprocess","postprocess","processAllTokens"])),wc);function Rl(l,a){if(Array.isArray(a))for(let r=0;r<a.length;r++)l.push(a[r]);else l.push(a)}var Db=class{constructor(...l){Le(this,"defaults",wf());Le(this,"options",this.setOptions);Le(this,"parse",this.parseMarkdown(!0));Le(this,"parseInline",this.parseMarkdown(!1));Le(this,"Parser",Sn);Le(this,"Renderer",Uc);Le(this,"TextRenderer",Mf);Le(this,"Lexer",Nn);Le(this,"Tokenizer",xa);Le(this,"Hooks",Ci);this.use(...l)}walkTokens(l,a){var u,d;let r=[];for(let f of l)switch(Rl(r,a.call(this,f)),f.type){case"table":{let h=f;for(let p of h.header)Rl(r,this.walkTokens(p.tokens,a));for(let p of h.rows)for(let m of p)Rl(r,this.walkTokens(m.tokens,a));break}case"list":{let h=f;Rl(r,this.walkTokens(h.items,a));break}default:{let h=f;(d=(u=this.defaults.extensions)==null?void 0:u.childTokens)!=null&&d[h.type]?this.defaults.extensions.childTokens[h.type].forEach(p=>{let m=h[p].flat(1/0);Rl(r,this.walkTokens(m,a))}):h.tokens&&Rl(r,this.walkTokens(h.tokens,a))}}return r}use(...l){let a=this.defaults.extensions||{renderers:Object.create(null),childTokens:Object.create(null)};return l.forEach(r=>{let u={...r};if(u.async=this.defaults.async||u.async||!1,r.extensions&&(r.extensions.forEach(d=>{if(!d.name)throw new Error("extension name required");if("renderer"in d){let f=a.renderers[d.name];f?a.renderers[d.name]=function(...h){let p=d.renderer.apply(this,h);return p===!1&&(p=f.apply(this,h)),p}:a.renderers[d.name]=d.renderer}if("tokenizer"in d){if(!d.level||d.level!=="block"&&d.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let f=a[d.level];f?f.unshift(d.tokenizer):a[d.level]=[d.tokenizer],d.start&&(d.level==="block"?a.startBlock?a.startBlock.push(d.start):a.startBlock=[d.start]:d.level==="inline"&&(a.startInline?a.startInline.push(d.start):a.startInline=[d.start]))}"childTokens"in d&&d.childTokens&&(a.childTokens[d.name]=d.childTokens)}),u.extensions=a),r.renderer){let d=this.defaults.renderer||new Uc(this.defaults);for(let f in r.renderer){if(!(f in d))throw new Error(`renderer '${f}' does not exist`);if(["options","parser"].includes(f))continue;let h=f,p=r.renderer[h],m=d[h];d[h]=(...b)=>{let v=p.apply(d,b);return v===!1&&(v=m.apply(d,b)),v===!1?"":v??""}}u.renderer=d}if(r.tokenizer){let d=this.defaults.tokenizer||new xa(this.defaults);for(let f in r.tokenizer){if(!(f in d))throw new Error(`tokenizer '${f}' does not exist`);if(["options","rules","lexer"].includes(f))continue;let h=f,p=r.tokenizer[h],m=d[h];d[h]=(...b)=>{let v=p.apply(d,b);return v===!1&&(v=m.apply(d,b)),v}}u.tokenizer=d}if(r.hooks){let d=this.defaults.hooks||new Ci;for(let f in r.hooks){if(!(f in d))throw new Error(`hook '${f}' does not exist`);if(["options","block"].includes(f))continue;let h=f,p=r.hooks[h],m=d[h];Ci.passThroughHooks.has(f)?d[h]=b=>{if(d.options.async&&Ci.passThroughHooksRespectAsync.has(f))return(async()=>{let y=await p.call(d,b);return m.call(d,y)})();let v=p.call(d,b);return m.call(d,v)}:d[h]=(...b)=>{if(d.options.async)return(async()=>{let y=await p.apply(d,b);return y===!1&&(y=await m.apply(d,b)),y})();let v=p.apply(d,b);return v===!1&&(v=m.apply(d,b)),v}}u.hooks=d}if(r.walkTokens){let d=this.defaults.walkTokens,f=r.walkTokens;u.walkTokens=function(h){let p=[];return Rl(p,f.call(this,h)),d&&Rl(p,d.call(this,h)),p}}this.defaults={...this.defaults,...u}}),this}setOptions(l){return this.defaults={...this.defaults,...l},this}lexer(l,a){return Nn.lex(l,a??this.defaults)}parser(l,a){return Sn.parse(l,a??this.defaults)}parseMarkdown(l){return(a,r)=>{let u={...r},d={...this.defaults,...u},f=this.onError(!!d.silent,!!d.async);if(this.defaults.async===!0&&u.async===!1)return f(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof a>"u"||a===null)return f(new Error("marked(): input parameter is undefined or null"));if(typeof a!="string")return f(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(a)+", string expected"));if(d.hooks&&(d.hooks.options=d,d.hooks.block=l),d.async)return(async()=>{let h=d.hooks?await d.hooks.preprocess(a):a,p=await(d.hooks?await d.hooks.provideLexer(l):l?Nn.lex:Nn.lexInline)(h,d),m=d.hooks?await d.hooks.processAllTokens(p):p;d.walkTokens&&await Promise.all(this.walkTokens(m,d.walkTokens));let b=await(d.hooks?await d.hooks.provideParser(l):l?Sn.parse:Sn.parseInline)(m,d);return d.hooks?await d.hooks.postprocess(b):b})().catch(f);try{d.hooks&&(a=d.hooks.preprocess(a));let h=(d.hooks?d.hooks.provideLexer(l):l?Nn.lex:Nn.lexInline)(a,d);d.hooks&&(h=d.hooks.processAllTokens(h)),d.walkTokens&&this.walkTokens(h,d.walkTokens);let p=(d.hooks?d.hooks.provideParser(l):l?Sn.parse:Sn.parseInline)(h,d);return d.hooks&&(p=d.hooks.postprocess(p)),p}catch(h){return f(h)}}}onError(l,a){return r=>{if(r.message+=`
168
+ Please report this to https://github.com/markedjs/marked.`,l){let u="<p>An error occurred:</p><pre>"+nn(r.message+"",!0)+"</pre>";return a?Promise.resolve(u):u}if(a)return Promise.reject(r);throw r}}},vs=new Db;function Je(l,a){return vs.parse(l,a)}Je.options=Je.setOptions=function(l){return vs.setOptions(l),Je.defaults=vs.defaults,jb(Je.defaults),Je};Je.getDefaults=wf;Je.defaults=bs;function qS(...l){return vs.use(...l),Je.defaults=vs.defaults,jb(Je.defaults),Je}Je.use=qS;Je.walkTokens=function(l,a){return vs.walkTokens(l,a)};Je.parseInline=vs.parseInline;Je.Parser=Sn;Je.parser=Sn.parse;Je.Renderer=Uc;Je.TextRenderer=Mf;Je.Lexer=Nn;Je.lexer=Nn.lex;Je.Tokenizer=xa;Je.Hooks=Ci;Je.parse=Je;Je.options;Je.setOptions;Je.walkTokens;Je.parseInline;Sn.parse;Nn.lex;const Tn="\\u1100-\\u11ff\\u20a9\\u2329-\\u232a\\u2630-\\u2637\\u268a-\\u268f\\u2e80-\\u2e99\\u2e9b-\\u2ef3\\u2f00-\\u2fd5\\u2ff0-\\u303e\\u3041-\\u3096\\u3099-\\u30ff\\u3105-\\u312f\\u3131-\\u318e\\u3190-\\u31e5\\u31ef-\\u321e\\u3220-\\u3247\\u3250-\\ua48c\\ua490-\\ua4c6\\ua960-\\ua97c\\uac00-\\ud7a3\\ud7b0-\\ud7c6\\ud7cb-\\ud7fb\\uf900-\\ufaff\\ufe10-\\ufe19\\ufe30-\\ufe52\\ufe54-\\ufe66\\ufe68-\\ufe6b\\uff01-\\uffbe\\uffc2-\\uffc7\\uffca-\\uffcf\\uffd2-\\uffd7\\uffda-\\uffdc\\uffe0-\\uffe6\\uffe8-\\uffee\\u{16fe0}-\\u{16fe4}\\u{16ff0}-\\u{16ff6}\\u{17000}-\\u{18cda}\\u{18cff}-\\u{18d20}\\u{18d80}-\\u{18df2}\\u{18e00}-\\u{19191}\\u{191a0}-\\u{191d2}\\u{1aff0}-\\u{1aff3}\\u{1aff5}-\\u{1affb}\\u{1affd}-\\u{1affe}\\u{1b000}-\\u{1b128}\\u{1b132}\\u{1b150}-\\u{1b152}\\u{1b155}\\u{1b164}-\\u{1b168}\\u{1b170}-\\u{1b2fb}\\u{1d300}-\\u{1d356}\\u{1d360}-\\u{1d376}\\u{1f1ae}\\u{1f200}\\u{1f202}\\u{1f210}-\\u{1f219}\\u{1f21b}-\\u{1f22e}\\u{1f230}-\\u{1f231}\\u{1f237}\\u{1f23b}\\u{1f240}-\\u{1f248}\\u{1f260}-\\u{1f265}\\u{1f7da}\\u{20000}-\\u{3fffd}",Sa=new RegExp(`[${Tn}]`,"u"),YS=new RegExp(`^((?![*_])[\\s\\p{P}\\p{S}${Tn}])`,"u");function Ub(l,a,r){return new RegExp(`^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)${l}(\\*+)(?=[\\s]|$)|${r}(\\*+)(?!\\*)(?=${a}|$)|(?!\\*)${a}(\\*+)(?=${r})|[\\s](\\*+)(?!\\*)(?=${l})|(?!\\*)${l}(\\*+)(?!\\*)(?=${l})|${r}(\\*+)(?=${r})`,"gu")}function GS(l,a,r){return new RegExp(`^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)${l}(_+)(?=[\\s]|$)|${r}(_+)(?!_)(?=${a}|$)|(?!_)${a}(_+)(?=${r})|[\\s](_+)(?!_)(?=${l})|(?!_)${l}(_+)(?!_)(?=${l})`,"gu")}function XS(l,a,r){return new RegExp(`^[^~]+(?=[^~])|(?!~)${l}(~~?)(?=[\\s]|$)|${r}(~~?)(?!~)(?=${a}|$)|(?!~)${a}(~~?)(?=${r})|[\\s](~~?)(?!~)(?=${l})|(?!~)${l}(~~?)(?!~)(?=${l})|${r}(~~?)(?=${r})`,"gu")}const $b=`[\\p{P}\\p{S}${Tn}]`,Hb=`[\\s\\p{P}\\p{S}${Tn}]`,Bb=`[^\\s\\p{P}\\p{S}${Tn}]`,QS=`(?![*_])[\\p{P}\\p{S}${Tn}]`,ZS=`(?![*_])[\\s\\p{P}\\p{S}${Tn}]`,VS=`(?:[^\\s\\p{P}\\p{S}${Tn}]|[*_])`,KS=`(?!~)[\\p{P}\\p{S}${Tn}]`,IS=`(?!~)[\\s\\p{P}\\p{S}${Tn}]`,JS=`(?:[^\\s\\p{P}\\p{S}${Tn}]|~)`,FS=Ub($b,Hb,Bb),PS=Ub(KS,IS,JS),WS=GS($b,Hb,Bb),hx=XS(QS,ZS,VS);function mx(l,a,r){let u=YS.test(l);if(!u&&l){const d=a.length-r.length;if(d>=1){let f=d-1,h=a.charCodeAt(f);if(h>=65024&&h<=65038&&f>=1&&(f--,h=a.charCodeAt(f)),(h&64512)===56320&&f>=1){const p=a.codePointAt(f-1);p!==void 0&&p>65535&&(p>=917760&&p<=917999?u=!0:u=Sa.test(String.fromCodePoint(p)))}else u=Sa.test(String.fromCharCode(h))}}return u}function px(l,a){if(!(l[1]||l[2]||l[3]||l[4]))return!1;const r=String.fromCodePoint(l[0].codePointAt(0)),u=l.index+l[0].length,d=u<a.length?String.fromCodePoint(a.codePointAt(u)):"";return Sa.test(r)||Sa.test(d)}function Rf(l){return l.length>=5}function ew(l){return!!(l[1]||l[2]||l[3]||l[4])}function tw(l){return Rf(l)?!!l[4]:!!l[3]}function nw(l){return Rf(l)?l[1]||l[3]||"":l[1]||l[2]||""}function jc(l){let a=l.length;const r=a-1;for(let u=0;u<r;){const d=l.charCodeAt(u++);if(d<55296||56320<=d)continue;const f=l.charCodeAt(u);f<56320||57344<=f||(u++,a--)}return a}function lw(){return{tokenizer:{emStrong(l,a,r=""){const{rules:u}=this,d=u.inline.emStrongLDelim.exec(l);if(!d)return!1;const f=Rf(d);if(f&&!ew(d))return;if(tw(d)&&r.match(u.other.unicodeAlphaNumeric))return!1;const h=nw(d),p=mx(r,a,l);if(!h||!r||u.inline.punctuation.exec(r)||p||Sa.test(h)){const m=jc(d[0])-1;let b,v,y=m,S=0;const T=f&&r===d[0][0],k=u.inline.emStrongRDelimAst.source.includes("(?!~)");let x;d[0][0]==="*"?x=k?PS:FS:x=WS,x.lastIndex=0;const j=a.slice(-1*l.length+m);let E;for(;(E=x.exec(j))!=null;){if(b=E[1]||E[2]||E[3]||E[4]||E[5]||E[6],!b)continue;v=jc(b);const A=px(E,j),X=!!(E[3]||E[4]),J=!!(E[5]||E[6]);if(X&&!A){y+=v;continue}if(J||A){if(m%3&&!((m+v)%3)){S+=v;continue}if(T&&J)break}if(y-=v,y>0)continue;v=Math.min(v,v+y+S);const F=E[0].codePointAt(0)>65535?2:1,G=l.slice(0,m+E.index+F+v);if(Math.min(m,v)%2){const B=G.slice(1,-1);return{type:"em",raw:G,text:B,tokens:this.lexer.inlineTokens(B)}}const L=G.slice(2,-2);return{type:"strong",raw:G,text:L,tokens:this.lexer.inlineTokens(L)}}}},del(l,a,r=""){const{rules:u}=this,d=u.inline.delLDelim.exec(l);if(!d)return!1;const f=d[1]||"",h=mx(r,a,l);if(!f||!r||u.inline.punctuation.exec(r)||h||Sa.test(f)){const p=jc(d[0])-1;let m,b,v=p;hx.lastIndex=0;const y=a.slice(-1*l.length+p);let S;for(;(S=hx.exec(y))!=null;){if(m=S[1]||S[2]||S[3]||S[4]||S[5]||S[6],!m||(b=jc(m),b!==p))continue;const T=px(S,y);if((S[3]||S[4])&&!T){v+=b;continue}if(v-=b,v>0)continue;b=Math.min(b,b+v);const k=S[0].codePointAt(0)>65535?2:1,x=l.slice(0,p+S.index+k+b),j=x.slice(p,-p);return{type:"del",raw:x,text:j,tokens:this.lexer.inlineTokens(j)}}}}}}}function Mi(l){return l.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;")}let tf,sw;function aw(){return sw??(sw=$N(()=>import("./math-zZ4JA8eM.js"),__vite__mapDeps([0,1])).then(l=>{tf=l.default}))}function iw(l){let a=!1;return Ui.walkTokens(Ui.lexer(l),r=>{(r.type==="inlineMath"||r.type==="displayMath")&&(a=!0)}),a}function gx(l,a,r){if(!tf)return Mi(r);try{return tf.renderToString(l,{displayMode:a,throwOnError:!0,trust:!1})}catch{return Mi(r)}}const Ui=new Db({extensions:[{name:"displayMath",level:"block",start(l){return l.search(/\$\$|\\\[/)},tokenizer(l){const a=/^(?:\$\$([\s\S]+?)\$\$|\\\[([\s\S]+?)\\\])(?:\n|$)/.exec(l);if(a)return{type:"displayMath",raw:a[0],text:a[1]??a[2]}},renderer(l){return`<div class="math-display">${gx(String(l.text),!0,l.raw.trimEnd())}</div>`}},{name:"inlineMath",level:"inline",start(l){return l.search(/\$|\\\(/)},tokenizer(l){const a=/^(?:\$(?!\$|\s)([^$`\n]*?[^$`\s])\$(?!\d)|\\\((.+?)\\\))/.exec(l);if(a)return{type:"inlineMath",raw:a[0],text:a[1]??a[2]}},renderer(l){return gx(String(l.text),!1,l.raw)}}],renderer:{html(l){return Mi(l.text??"")},code(l){var u;const a=((u=l.lang)==null?void 0:u.trim().split(/\s+/)[0])??"";return`<div class="code-block">${a?`<div class="code-head">${Mi(a)}</div>`:""}<button type="button" class="code-copy" aria-label="复制代码" title="复制代码">${Pd("copy",15)}</button><pre><code>${Mi(l.text)}
169
+ </code></pre></div>`}}});Ui.use(lw());const rw=/^(https?:|mailto:|\/|#|\.)/i;function cw(l){return Ui.parse(l,{async:!1,gfm:!0,breaks:!0}).replace(/<a href="([^"]*)"/g,(r,u)=>rw.test(u.trim())?`<a target="_blank" rel="noreferrer" href="${u}"`:"<a")}function uw(l){const a=[];for(const u of Ui.lexer(l,{gfm:!0})){const d=u.type==="table",f=a.at(-1);f&&!f.table&&!d?f.md+=u.raw:a.push({table:d,md:u.raw})}const r=a.filter(u=>u.table||u.md.trim());return r.length?r:[{table:!1,md:l}]}function wa({text:l,className:a,streaming:r}){const[,u]=w.useState(0);return w.useEffect(()=>{let d=!0;return iw(l)&&aw().then(()=>{d&&u(f=>f+1)}).catch(()=>{}),()=>{d=!1}},[l]),i.jsx("div",{className:a,onClick:d=>{var p,m;const f=d.target.closest(".code-copy");if(!f)return;d.stopPropagation();const h=((m=(p=f.closest(".code-block"))==null?void 0:p.querySelector("code"))==null?void 0:m.textContent)??"";Sf(h.endsWith(`
170
+ `)?h.slice(0,-1):h).then(b=>{if(!b){Lc("复制失败:浏览器不允许写入剪贴板");return}f.innerHTML=Pd("check",15),f.setAttribute("aria-label","已复制"),window.setTimeout(()=>{f.innerHTML=Pd("copy",15),f.setAttribute("aria-label","复制代码")},1500)})},dangerouslySetInnerHTML:{__html:cw(l)+(r?'<span class="cur"></span>':"")}})}const ow={".png":"image",".jpg":"image",".jpeg":"image",".gif":"image",".webp":"image",".avif":"image",".bmp":"image",".ico":"image",".svg":"svg",".pdf":"pdf",".mp3":"audio",".wav":"audio",".ogg":"audio",".m4a":"audio",".flac":"audio",".aac":"audio",".mp4":"video",".webm":"video",".mov":"video",".m4v":"video",".md":"markdown",".markdown":"markdown",".json":"json",".jsonl":"json",".ndjson":"json",".csv":"csv",".tsv":"csv",".html":"html",".htm":"html",".xml":"xml",".ts":"code",".tsx":"code",".js":"code",".jsx":"code",".mjs":"code",".cjs":"code",".py":"code",".sh":"code",".bash":"code",".zsh":"code",".go":"code",".rs":"code",".java":"code",".kt":"code",".swift":"code",".c":"code",".h":"code",".cc":"code",".cpp":"code",".hpp":"code",".cs":"code",".rb":"code",".php":"code",".scala":"code",".lua":"code",".pl":"code",".css":"code",".scss":"code",".less":"code",".vue":"code",".svelte":"code",".yaml":"code",".yml":"code",".toml":"code",".ini":"code",".conf":"code",".cfg":"code",".properties":"code",".sql":"code",".graphql":"code",".proto":"code",".diff":"code",".patch":"code",".log":"text",".txt":"text",".text":"text"};function dw(l){const a=l.lastIndexOf(".");return a>0?l.slice(a).toLowerCase():""}function fw(l){return ow[dw(l)]}function hw(l,a){return Array.from({length:a},(r,u)=>{const d=Math.floor(u*l.length/a),f=Math.floor((u+1)*l.length/a);let h=0;for(let p=d;p<f;p++)h=Math.max(h,Math.abs(l[p]));return h})}let fa=null;function mw({path:l,name:a,fallback:r}){const u=w.useRef(null),[d,f]=w.useState(null),[h,p]=w.useState(0),[m,b]=w.useState(0),[v,y]=w.useState(!0),[S,T]=w.useState(1);w.useEffect(()=>{const j=new AbortController;let E;return(async()=>{var A;try{const X=await fetch(Yt(l),{signal:j.signal});if(!X.ok||Number(X.headers.get("content-length"))>20*1024*1024)return;const J=(A=X.body)==null?void 0:A.getReader();if(!J)return;const F=[];let G=0;for(;;){const{done:ne,value:Se}=await J.read();if(ne)break;if(G+=Se.byteLength,G>20*1024*1024){await J.cancel();return}F.push(Se)}const L=new Uint8Array(G);let B=0;for(const ne of F)L.set(ne,B),B+=ne.byteLength;E=new AudioContext;const ae=await E.decodeAudioData(L.buffer);j.signal.aborted||f(hw(ae.getChannelData(0),50))}catch{}finally{E&&E.close()}})(),()=>{j.abort(),fa===u.current&&(fa=null)}},[l]);const k=m?Math.min(1,h/m):0,x=j=>`${Math.floor(j/60)}:${String(Math.floor(j%60)).padStart(2,"0")}`;return i.jsxs("div",{className:"media-audio",children:[i.jsx("audio",{ref:u,src:Yt(l),preload:"metadata",onError:r,onPlay:j=>{fa&&fa!==j.currentTarget&&fa.pause(),fa=j.currentTarget,y(!1)},onPause:()=>y(!0),onTimeUpdate:j=>p(j.currentTarget.currentTime),onLoadedMetadata:j=>b(j.currentTarget.duration)}),i.jsx("button",{className:"audio-play","aria-label":v?"播放":"暂停",onClick:()=>{const j=u.current;j&&(j.paused?j.play().catch(r):j.pause())},children:i.jsx("svg",{viewBox:"0 0 24 24",width:"16",height:"16","aria-hidden":"true",fill:"currentColor",children:v?i.jsx("path",{d:"M8.5 5.8v12.4a1 1 0 0 0 1.5.86l10-6.2a1 1 0 0 0 0-1.72l-10-6.2a1 1 0 0 0-1.5.86Z"}):i.jsx("path",{d:"M7 5h3.5v14H7zM13.5 5H17v14h-3.5z"})})}),i.jsxs("div",{className:"audio-main",children:[i.jsx("button",{className:"audio-name",onClick:()=>Hl(l,a),children:a}),i.jsxs("div",{className:"audio-track",children:[d?i.jsx("div",{className:"audio-bars","aria-hidden":"true",children:d.map((j,E)=>i.jsx("i",{className:E/d.length<k?"played":"",style:{height:`${Math.max(12,j*100)}%`}},E))}):i.jsx("div",{className:"audio-line",children:i.jsx("i",{style:{width:`${k*100}%`}})}),i.jsx("input",{type:"range","aria-label":"播放进度",min:0,max:m||0,step:"0.01",value:Math.min(h,m||0),onChange:j=>{u.current&&(u.current.currentTime=Number(j.target.value))}})]})]}),i.jsx("span",{className:"audio-time",children:x(m||0)}),i.jsxs("button",{className:"audio-rate",onClick:()=>{const j=S===1?1.5:S===1.5?2:1;T(j),u.current&&(u.current.playbackRate=j)},children:[S,"×"]})]})}function vx({path:l,name:a,fallback:r}){const[u,d]=w.useState(!1);if(u)return r;const f=fw(l);return f==="audio"?i.jsx(mw,{path:l,name:a,fallback:()=>d(!0)}):f==="video"?i.jsxs("div",{className:"media-video",children:[i.jsx("video",{controls:!0,playsInline:!0,preload:"metadata",src:Yt(l),onError:()=>d(!0)}),i.jsx("button",{onClick:()=>Hl(l,a),children:a})]}):r}const pw=50,gw=110;function vw({photos:l,onOpen:a}){const[r,u]=w.useState(0),[d,f]=w.useState(0),h=w.useRef(null),p=l.length,m=Math.min(1,Math.abs(d)/gw),b=v=>{const y=h.current;h.current=null,y&&(y.moved?Math.abs(d)>pw&&u((r+1)%p):v&&a(l[r]),f(0))};return i.jsx("div",{className:`album-stack${d?" dragging":""}`,role:"group","aria-label":`${p} 张图片,左右滑动切换,点一下查看`,onPointerDown:v=>{h.current={id:v.pointerId,x:v.clientX,moved:!1},v.currentTarget.setPointerCapture(v.pointerId)},onPointerMove:v=>{const y=h.current;if(!y||y.id!==v.pointerId)return;const S=v.clientX-y.x;!y.moved&&Math.abs(S)<6||(y.moved=!0,f(S))},onPointerUp:()=>b(!0),onPointerCancel:()=>b(!1),children:l.map((v,y)=>{const S=(y-r+p)%p;if(S>2)return null;const k={"--d":S===0?0:S-m,"--dx":S===0?`${d}px`:"0px","--rot":S===0?`${d*.06}deg`:"0deg",zIndex:p-S};return i.jsx("img",{src:Hi(v),alt:"",draggable:!1,style:k},v)})})}const Lb=["日","一","二","三","四","五","六"];function Ai(l){return`${String(l.getHours()).padStart(2,"0")}:${String(l.getMinutes()).padStart(2,"0")}`}function Df(l,a){const r=new Date(l),u=new Date(a.getFullYear(),a.getMonth(),a.getDate()).getTime(),d=new Date(r.getFullYear(),r.getMonth(),r.getDate()).getTime();return Math.round((u-d)/864e5)}function Ul(l,a=new Date){const r=new Date(l);if(Number.isNaN(r.getTime()))return"";const u=Df(l,a);return u===0?`今天 ${Ai(r)}`:u===1?`昨天 ${Ai(r)}`:u===-1?`明天 ${Ai(r)}`:`${r.getMonth()+1}月${r.getDate()}日 ${Ai(r)}`}function Ec(l,a=new Date){if(!l)return"";const r=new Date(l);if(Number.isNaN(r.getTime()))return"";const u=Df(l,a);return u===0?Ai(r):u===1?"昨天":`${r.getMonth()+1}月${r.getDate()}日`}function Uf(l,a=Date.now()){const r=Math.max(0,Math.round((a-new Date(l).getTime())/6e4));if(r<1)return"刚刚";if(r<60)return`${r} 分钟`;const u=Math.floor(r/60),d=r%60;return d?`${u} 小时 ${d} 分钟`:`${u} 小时`}function qc(l){const a=Math.max(0,Math.round(l/1e3));if(a<60)return`${a} 秒`;const r=Math.floor(a/60);if(r<60){const u=a%60;return u?`${r} 分 ${u} 秒`:`${r} 分钟`}return`${Math.floor(r/60)} 小时 ${r%60} 分钟`}function xx(l){if(l<1e3)return String(l);const a=l/1e3;return`${a<10?a.toFixed(1):Math.round(a)}k`}function $f(l){return l<1024?`${l} B`:l<1024*1024?`${l<10240?(l/1024).toFixed(1):Math.round(l/1024)} KB`:l<1024*1024*1024?`${(l/1024/1024).toFixed(1)} MB`:`${(l/1024/1024/1024).toFixed(1)} GB`}function xw(l,a=new Date){return Df(l,a)===0}function bw(l,a){return l?new Date(a).getTime()-new Date(l).getTime()>300*1e3:!1}function Hf(l){const a={kind:"raw",hour:9,minute:0,weekday:5,day:1,raw:l},r=l.trim().split(/\s+/);if(r.length!==5)return a;const[u,d,f,h,p]=r;if(!/^\d+$/.test(u)||!/^\d+$/.test(d)||h!=="*")return a;const m=Number(u),b=Number(d);return m>59||b>23?a:f==="*"&&p==="*"?{...a,kind:"daily",hour:b,minute:m}:f==="*"&&/^\d$/.test(p)?{...a,kind:"weekly",hour:b,minute:m,weekday:Number(p)}:/^\d{1,2}$/.test(f)&&p==="*"?{...a,kind:"monthly",hour:b,minute:m,day:Number(f)}:a}function yw(l){const a=String(l.minute).padStart(2,"0"),r=String(l.hour).padStart(2,"0");return l.kind==="daily"?`${l.minute} ${l.hour} * * *`:l.kind==="weekly"?`${l.minute} ${l.hour} * * ${l.weekday}`:l.kind==="monthly"?`${l.minute} ${l.hour} ${l.day} * *`:l.raw.trim()||`${a} ${r} * * *`}function Bf(l){const a=Hf(l),r=`${String(a.hour).padStart(2,"0")}:${String(a.minute).padStart(2,"0")}`;return a.kind==="daily"?`每天 ${r}`:a.kind==="weekly"?`每周${Lb[a.weekday]??"?"} ${r}`:a.kind==="monthly"?`每月${a.day}日 ${r}`:l}function kw(l,a,r){const u=a-l.x,d=r-l.y;let f=l.direction;return f==="pending"&&Math.hypot(u,d)>8&&(u<-8&&Math.abs(u)>Math.abs(d)*1.5?f="horizontal":(Math.abs(d)>Math.abs(u)||u>8)&&(f="vertical")),{...l,direction:f,distance:f==="horizontal"?Math.max(0,-u):0}}function bx(l){return l.direction==="horizontal"&&l.distance>48}function jw(l,a){return{top:l.bottom+8+92<=a.bottom?l.bottom+8:Math.max(a.top+8,l.top-92-8),left:Math.max(a.left+8,Math.min(l.right-160,a.right-168))}}function Nw(l,a){return a.type==="open"?a.id:a.type==="outside"&&a.inside?l:null}const Sw={memory:"mem",rule:"rule",routine:"clock",split:"split",info:"info"};function ww(){const[l,a]=w.useState(()=>window.matchMedia("(hover: none)").matches);return w.useEffect(()=>{const r=window.matchMedia("(hover: none)"),u=()=>a(r.matches);return r.addEventListener("change",u),()=>r.removeEventListener("change",u)},[]),l}function nf({text:l,itemId:a,menu:r=!1,close:u}){const[d,f]=w.useState(!1),h=w.useRef(0);w.useEffect(()=>()=>window.clearTimeout(h.current),[]);const p=async()=>{if(!await Sf(l)){Lc("复制失败:浏览器不允许写入剪贴板");return}if(r){u==null||u();return}f(!0),window.clearTimeout(h.current),h.current=window.setTimeout(()=>f(!1),1500)};return i.jsxs("div",{className:`tools${r?" menu":""}`,children:[i.jsxs("button",{title:"回复","aria-label":"回复",onClick:()=>{_c({itemId:a,text:ms(l).slice(0,60)}),Di(),u==null||u()},children:[i.jsx(Z,{name:"reply",size:16}),r?"回复":null]}),i.jsxs("button",{className:d?"copied":"",title:d?"已复制":"复制","aria-label":d?"已复制":"复制",onClick:()=>void p(),children:[i.jsx(Z,{name:d?"check":"copy",size:16}),r?"复制":null]})]})}function yx({anchor:l,text:a,itemId:r,close:u}){const[d,f]=w.useState(null),h=w.useRef(null);if(w.useLayoutEffect(()=>{const v=l.current,y=v==null?void 0:v.closest(".mmsgs, .msgs");v&&y&&f({bubble:v.getBoundingClientRect(),area:y.getBoundingClientRect()})},[l]),w.useLayoutEffect(()=>{!d||!h.current||!l.current||h.current.replaceChildren(l.current.cloneNode(!0))},[l,d]),!d)return null;const{bubble:p,area:m}=d,b=jw(p,m);return RN.createPortal(i.jsxs("div",{className:"message-popup",onPointerDown:v=>v.stopPropagation(),children:[i.jsx("div",{className:"message-shade",style:{left:m.left,top:m.top,width:m.width,height:m.height},onPointerDown:u}),i.jsx("div",{ref:h,className:"message-popup-bubble",style:{left:p.left,top:p.top,width:p.width}}),i.jsx("div",{className:"message-popup-menu",style:b,children:i.jsx(nf,{text:a,itemId:r,menu:!0,close:u})})]}),document.body)}function Tw(l,a){const r=l.currentTarget.closest(".col"),u=[...(r==null?void 0:r.querySelectorAll(".message-row[data-item-id]"))??[]].find(f=>f.dataset.itemId===a),d=u==null?void 0:u.querySelector(".hov.msg > .u, .hov.msg > .b");d&&(d.scrollIntoView({behavior:window.matchMedia("(prefers-reduced-motion: reduce)").matches?"instant":"smooth",block:"center"}),d.classList.remove("quote-flash"),d.offsetWidth,d.classList.add("quote-flash"),window.setTimeout(()=>d.classList.remove("quote-flash"),1100))}const Cc={running:{text:"进行中",icon:"spin",cls:"spin"},queued:{text:"排队中",icon:"clock",cls:""},waiting:{text:"待确认",icon:"pause",cls:""},done:{text:"已完成",icon:"check",cls:""},stuck:{text:"受阻",icon:"close",cls:""},failed:{text:"失败",icon:"close",cls:""},stopped:{text:"已停止",icon:"stop",cls:""}};function kx(l){const a=l.durationMs??(l.startedAt&&l.endedAt?Date.parse(l.endedAt)-Date.parse(l.startedAt):void 0);return a===void 0?void 0:qc(a)}function Ew({job:l,fresh:a}){const r=Ee(),[u,d]=w.useState(!1),[f,h]=w.useState(""),[p,m]=w.useState(!1),b=Bn(u,200),v=Cc[l.status],y=l.status==="done",S=l.status==="running",T=S||l.status==="waiting",k=l.status==="stuck"||l.status==="failed",x=Vx(l),j=r.assistants.find(A=>A.id===l.assistantId),E=w.useRef(l.status);return w.useEffect(()=>{if(E.current===l.status)return;E.current=l.status,m(!0);const A=window.setTimeout(()=>m(!1),400);return()=>window.clearTimeout(A)},[l.status]),i.jsx("div",{className:`hov${a?" enter":""}`,id:`job-${l.id}`,children:i.jsxs("div",{className:"b jobcard",role:"button",tabIndex:0,onClick:()=>ps(l.id),onKeyDown:A=>{A.key==="Enter"&&ps(l.id)},children:[i.jsxs("div",{className:"tt",children:[j?i.jsx("span",{className:"jav",children:i.jsx(bt,{sprite:j.sprite,prop:j.prop,size:40})}):null,i.jsx("span",{className:"jt",children:l.title}),i.jsxs("span",{className:`st${y?" done":""}`,children:[i.jsxs("span",{className:"stico",children:[i.jsx(Z,{name:"spin",size:14,w:2,className:`spin stspin${S?"":" off"}`}),S?null:i.jsx(Z,{name:v.icon,size:14,w:2,className:`stic${y?" pop":""}${p?" anim":""}`})]}),v.text,S?` · ${Uf(l.startedAt??l.createdAt)}`:kx(l)?` · 用时 ${kx(l)}`:null]})]}),x?i.jsx("div",{className:`meta${k?" bad":""}`,children:x}):null,T||S?i.jsxs("div",{className:"acts",children:[T?i.jsxs("button",{className:`btn job-reply${u?" selected":""}`,"aria-pressed":u,onClick:A=>{A.stopPropagation(),d(X=>!X)},children:[i.jsx(Z,{name:"edit",size:14}),"补充要求"]}):null,S?i.jsxs("button",{className:"btn job-stop",onClick:A=>{A.stopPropagation(),ub(l.id)},children:[i.jsx(Z,{name:"stop",size:14}),"停止"]}):null]}):null,b.mounted?i.jsx("div",{className:`replywrap${b.leaving?" leaving":""}`,onClick:A=>A.stopPropagation(),children:i.jsx("div",{className:"replyclip",children:i.jsxs("div",{className:"replybox",children:[i.jsx("input",{autoFocus:!0,value:f,placeholder:"补充说明或更正方向",onChange:A=>h(A.target.value),onKeyDown:A=>{A.key==="Enter"&&f.trim()&&(Vd(l.id,f.trim()),h(""),d(!1)),A.key==="Escape"&&d(!1)}}),i.jsx("button",{className:"pbtn solid",onClick:()=>{f.trim()&&Vd(l.id,f.trim()),h(""),d(!1)},children:"发送"})]})})}):null]})})}function jx({draft:l}){const a=Ee(),r=l.status==="created"&&l.createdAssistantId,u=r?a.assistants.find(h=>h.id===l.createdAssistantId):void 0,d=(u==null?void 0:u.prop)??l.prop,f=!!r&&!u;return i.jsxs("div",{className:"draft",children:[i.jsxs("div",{className:"top",children:[i.jsx(bt,{sprite:(u==null?void 0:u.sprite)??l.sprite,prop:d,size:46}),i.jsxs("div",{children:[i.jsx("div",{className:"dn",children:l.name}),i.jsx("div",{className:"ds",children:l.status==="created"?"新助手 · 已创建":"新助手 · 草稿"})]})]}),i.jsxs("div",{className:"kv",children:[i.jsx("span",{className:"k",children:"职责"}),i.jsx("span",{children:l.dutyLong})]}),i.jsx("div",{className:`expand${r?"":" open"}`,inert:!!r,children:i.jsxs("div",{children:[i.jsxs("div",{className:"kv",children:[i.jsx("span",{className:"k",children:"定时任务"}),i.jsx("span",{className:l.routinesText?void 0:"none",children:l.routinesText||"没有"})]}),i.jsxs("div",{className:"kv",children:[i.jsx("span",{className:"k",children:"执行前确认"}),i.jsx("span",{className:l.askFirst.length?void 0:"none",children:l.askFirst.join(" · ")||"没有"})]}),i.jsxs("div",{className:"kv",children:[i.jsx("span",{className:"k",children:"补充说明"}),l.instructions.length?i.jsx("span",{children:l.instructions.map((h,p)=>i.jsx("span",{className:"line",children:h},p))}):i.jsx("span",{className:"none",children:"没有"})]}),i.jsxs("div",{className:"kv",children:[i.jsx("span",{className:"k",children:"迁移"}),i.jsxs("span",{children:[l.carry.conversations," 段对话"]})]})]})}),i.jsxs("div",{className:"acts swap",style:{marginTop:12},children:[i.jsxs("div",{className:r?"off":void 0,children:[i.jsx("button",{className:"btn solid",onClick:()=>void lN(l.id),children:"创建"}),i.jsx("button",{className:"btn",style:{background:"var(--bubble)"},onClick:()=>{xf("请修改草稿:"),Di()},children:"修改草稿"})]}),i.jsx("div",{className:r?void 0:"off",children:i.jsx("button",{className:"btn solid",disabled:f,onClick:()=>void ln(l.createdAssistantId),children:f?"已并回 Hob":"已创建 · 查看"})})]})]})}function Cw({delegation:l,fresh:a}){const r=Ee(),[u,d]=w.useState(!1),f=r.assistants.find(b=>b.id===l.to),h=(f==null?void 0:f.name)??l.to,p={running:"进行中",waiting:"等你确认",done:"已完成",stuck:"受阻",interrupted:"已中断",returned:"已退回"},m=Object.values(r.approvals).filter(b=>b.status==="pending"&&((l.approvalIds??[]).includes(b.id)||!!(b.jobId&&l.jobIds.includes(b.jobId))));return i.jsx("div",{className:`hov${a?" enter":""}`,id:`delegation-${l.id}`,children:i.jsxs("div",{className:"b jobcard delegation-card",children:[i.jsxs("div",{className:"tt",children:[f?i.jsx("span",{className:"jav",children:i.jsx(bt,{sprite:f.sprite,prop:f.prop,size:40})}):null,i.jsxs("span",{className:"jt",children:["交给「",h,"」"]}),i.jsxs("span",{className:`st${l.status==="done"?" done":""}${l.status==="stuck"||l.status==="interrupted"||l.status==="returned"?" bad":""}`,children:[i.jsx(Z,{name:l.status==="running"?"spin":l.status==="done"?"check":l.status==="waiting"?"pause":"close",className:l.status==="running"?"spin":"",size:14}),p[l.status]]})]}),i.jsx("button",{className:`delegation-text${u?" expanded":""}`,onClick:()=>d(!u),title:u?"收起":"查看全文",children:l.text}),l.status==="returned"&&l.reply?i.jsx("div",{className:"note",children:l.reply}):null,l.jobIds.map(b=>{const v=r.jobs[b];return v?i.jsxs("button",{className:`delegation-job ${v.status}`,onClick:()=>ps(b),title:Cc[v.status].text,children:[i.jsx(Z,{name:Cc[v.status].icon,size:14,w:2,className:Cc[v.status].cls}),i.jsx("span",{children:v.title}),i.jsx(Z,{name:"chev",size:14,className:"go"})]},b):null}),m.map(b=>i.jsx(qb,{approval:b,fresh:!1},b.id)),i.jsxs("div",{className:"delegation-actions",children:[i.jsxs("button",{onClick:()=>void bf(l.to,l.id,!0),children:["去「",h,"」看看 →"]}),l.status==="interrupted"?i.jsx("button",{onClick:()=>void aN(l.id),children:"重新转交"}):null]})]})})}function qb({approval:l,fresh:a}){var T;const r=l.options.find(k=>k.key===l.chosen),u=l.status==="answered"&&r?l.chosen:void 0,[d,f]=w.useState(null),[h,p]=w.useState(""),m=d??u,b=d!==null,v=l.status==="answered"?l.answerText:void 0,y=h.trim(),S=()=>{y&&Kv(l.id,{text:y})};return i.jsxs("div",{className:`b q${a?" enter":""}`,children:[i.jsx("div",{className:"qt",children:l.title}),l.detail?i.jsx("div",{className:"qs",children:l.detail}):null,i.jsxs("div",{className:"opts",children:[v?i.jsxs("div",{className:"opt chosen",children:[i.jsx("span",{className:"key",children:i.jsx(Z,{name:"user",size:12})}),v,i.jsx("span",{className:"ck",children:i.jsx(Z,{name:"check",size:16})})]}):m&&!b?i.jsxs("div",{className:"opt chosen",children:[i.jsx("span",{className:"key",children:m}),(T=l.options.find(k=>k.key===m))==null?void 0:T.label,i.jsx("span",{className:"ck",children:i.jsx(Z,{name:"check",size:16})})]}):l.options.map(k=>{const x=k.key===m;return i.jsx("div",{className:`optrow${b&&!x?" away":""}`,children:i.jsx("div",{className:"optclip",children:i.jsxs("button",{className:`opt${x?" chosen":""}`,disabled:b,onClick:()=>{f(k.key),Kv(l.id,{key:k.key})},children:[i.jsx("span",{className:"key",children:k.key}),k.label,x&&b?i.jsx("span",{className:"ck",children:i.jsx(Z,{name:"check",size:16})}):null]})})},k.key)}),v||b||m?null:i.jsxs("div",{className:"other",children:[i.jsx("input",{value:h,placeholder:"其他想法…",onChange:k=>p(k.target.value),onKeyDown:k=>{k.key==="Enter"&&!k.nativeEvent.isComposing&&S()}}),y?i.jsx("button",{className:"ib other-send",title:"发送",onClick:S,children:i.jsx(Z,{name:"send",size:16})}):null]})]})]})}function Aw({name:l,path:a,meta:r,fresh:u}){return i.jsxs("button",{className:`att filecard${u?" enter":""}`,onClick:()=>Hl(a,l),children:[i.jsx("span",{className:"ico",children:i.jsx(Z,{name:Bi(a),size:18})}),i.jsxs("span",{children:[i.jsx("span",{className:"n",style:{display:"block"},children:l}),r?i.jsx("span",{className:"m",children:r}):null]})]})}function zw({name:l,path:a,fresh:r}){return i.jsx("button",{className:`imgcard${r?" enter":""}`,onClick:()=>Hl(a),title:l,children:i.jsx("img",{src:Hi(a),alt:l,loading:"lazy"})})}function _w(l){const a=w.useRef(null);return w.useLayoutEffect(()=>{const r=a.current;if(!r||(r.style.maxWidth="",l===void 0))return;let u=!0;const d=()=>{if(!u)return;r.style.maxWidth="";const f=r.getBoundingClientRect();if(!f.width)return;let h=0;const p=document.createRange(),m=document.createTreeWalker(r,NodeFilter.SHOW_ELEMENT|NodeFilter.SHOW_TEXT);for(let v=m.nextNode();v;v=m.nextNode()){let y;if(v instanceof Element){if(getComputedStyle(v).display!=="inline")continue;y=v.getClientRects()}else p.selectNodeContents(v),y=p.getClientRects();for(const S of y)h=Math.max(h,S.right)}if(!h)return;const b=Math.ceil(h-f.left+parseFloat(getComputedStyle(r).paddingRight));b>=f.width-1||(r.style.maxWidth=`${b}px`,r.getBoundingClientRect().height>f.height+.5&&(r.style.maxWidth=""))};return d(),document.fonts.ready.then(d),()=>{u=!1}},[l]),a}function Ow({item:l,inlineDraft:a,fresh:r,tools:u}){var T,k,x,j;const d=Ee(),f=r?" enter":"",[h,p]=w.useState(!1),m=_w(l.kind==="user"&&!((T=l.files)!=null&&T.length)?l.text:void 0),b=u.touch?E=>E.preventDefault():void 0,v=u.distance?{transform:`translateX(-${Math.min(64,u.distance*.8)}px)`,transition:"none"}:void 0,y=Math.min(1,u.distance/48),S=u.distance>0?i.jsx("span",{className:`swipe-reply${u.ready?" ready":""}`,style:{opacity:y,transform:`scale(${y})`},children:i.jsx("span",{className:"swipe-reply-inner",children:i.jsx(Z,{name:"reply",size:18})})}):null;if(l.kind==="user"){const E=((k=l.files)==null?void 0:k.filter(Oi))??[],A=((x=l.files)==null?void 0:x.filter(ne=>!Oi(ne)))??[],X=E.length===1,J=E.length>1,F=!!(l.from||l.quote||l.text||A.length),G=tN(d,d.sel,l.id),L=ne=>{ne.startsWith("pending/")||Hl(ne,Si(ne))},B=(ne,Se)=>i.jsx("button",{className:Se,onClick:()=>L(ne),title:Si(ne),children:i.jsx("img",{src:Hi(ne),alt:Si(ne),loading:"lazy"})},ne),ae=ne=>i.jsxs("button",{className:"ufile",onClick:()=>L(ne),children:[i.jsx("span",{className:"fi",children:i.jsx(Z,{name:Bi(ne),size:16})}),i.jsx("span",{className:"fn",children:Si(ne)})]});return i.jsxs("div",{className:"message-row right",id:l.from?`forward-${l.from.delegationId}`:void 0,"data-item-id":l.id,onPointerDown:u.start,onContextMenu:b,children:[S,(G==null?void 0:G.status)==="failed"?i.jsx("button",{className:"send-failed",title:"重试","aria-label":"未送达,重试",onClick:()=>Vv(G.assistantId,G.localId),children:"!"}):G&&((j=l.files)!=null&&j.length)?i.jsx("span",{className:"send-progress","aria-label":"正在发送",children:i.jsx(Z,{name:"spin",size:16,w:2.2,className:"spin"})}):null,i.jsxs("div",{className:`hov right msg${r?" enter-right":""}${G?" pending":""}`,children:[J?i.jsxs("div",{className:`u-album${h?" open":""}`,ref:F?void 0:m,style:F?void 0:v,children:[i.jsx("button",{className:"album-pill",onClick:()=>p(!h),children:h?"收起":`展开 ${E.length}`}),h?i.jsx("div",{className:"album-list",children:E.map(ne=>B(ne,"u-photo album-item"))}):i.jsx(vw,{photos:E,onOpen:L})]}):null,X?i.jsx("div",{className:"u-solo",ref:F?void 0:m,style:F?void 0:v,children:B(E[0],"u-photo album-item")}):null,F?i.jsxs("div",{className:"u",ref:m,style:v,children:[l.from?i.jsxs("button",{className:"forward-label",onClick:()=>void(l.from.assistantId==="hob"?bf(l.from.assistantId,l.from.delegationId,!1):Iv(l.from.assistantId,l.from.delegationId,!1)),children:[(()=>{const ne=d.assistants.find(Se=>Se.id===l.from.assistantId);return ne?i.jsx(bt,{sprite:ne.sprite,prop:ne.prop,size:16}):null})(),"转自 ",l.from.assistantId==="hob"?l.from.name:`「${l.from.name}」`]}):null,l.quote?i.jsx("button",{className:"quote",onClick:ne=>Tw(ne,l.quote.itemId),children:l.quote.text}):null,l.text?i.jsx("span",{className:"u-text",children:l.text}):null,A.map(ne=>ne.startsWith("pending/")?i.jsx(w.Fragment,{children:ae(ne)},ne):i.jsx(vx,{path:ne,name:Si(ne),fallback:ae(ne)},ne))]}):null,(G==null?void 0:G.status)==="failed"?i.jsxs("div",{className:"send-status",children:["未送达",i.jsx("button",{onClick:()=>Vv(G.assistantId,G.localId),children:"重试"}),i.jsx("button",{onClick:()=>eN(G.assistantId,G.localId),children:"删除"})]}):null,G?null:i.jsx(nf,{text:l.text,itemId:l.id})]}),u.open?i.jsx(yx,{anchor:m,text:l.text,itemId:l.id,close:u.close}):null]})}if(l.kind==="assistant")return i.jsxs(i.Fragment,{children:[l.routine?i.jsxs("div",{className:`tag${r?" enter-fade":""}`,children:[i.jsx(Z,{name:"clock",size:13}),l.routine.name]}):null,i.jsxs("div",{className:"message-row","data-item-id":l.id,onPointerDown:u.start,onContextMenu:b,children:[S,i.jsxs("div",{className:`hov msg${f}`,children:[uw(l.text).map((E,A,X)=>E.table?i.jsx("div",{className:"tablecard",ref:A===0?m:void 0,style:A===0?v:void 0,children:i.jsx(wa,{text:E.md})},A):i.jsxs("div",{className:`b${a&&A===X.length-1?" wide":""}`,ref:A===0?m:void 0,style:A===0?v:void 0,children:[i.jsx(wa,{text:E.md,streaming:l.streaming&&A===X.length-1}),a&&A===X.length-1?i.jsx(jx,{draft:a}):null]},A)),i.jsx(nf,{text:l.text,itemId:l.id})]}),u.open?i.jsx(yx,{anchor:m,text:l.text,itemId:l.id,close:u.close}):null]})]});if(l.kind==="note")return i.jsxs("div",{className:`sys${r?" enter-fade":""}`,id:l.handbackId?`handback-${l.handbackId}`:void 0,children:[l.icon!=="split"?i.jsx(Z,{name:Sw[l.icon],size:14}):null,l.handbackId?i.jsx("button",{onClick:()=>void Iv("hob",l.handbackId,!0),children:l.text}):l.text]});if(l.kind==="question"){const E=d.approvals[l.approvalId];return E?i.jsx(qb,{approval:E,fresh:r}):null}if(l.kind==="job"){const E=d.jobs[l.jobId];return E?i.jsx(Ew,{job:E,fresh:r}):null}if(l.kind==="draft"){const E=d.drafts[l.draftId];return E?i.jsx("div",{className:`b wide${f}`,children:i.jsx(jx,{draft:E})}):null}if(l.kind==="delegation"){const E=d.delegations[l.delegationId];return E?i.jsx(Cw,{delegation:E,fresh:r}):null}return Oi(l.path)?i.jsx(zw,{path:l.path,name:l.name,fresh:r}):i.jsx(vx,{path:l.path,name:l.name,fallback:i.jsx(Aw,{path:l.path,name:l.name,meta:l.meta,fresh:r})})}function Mw(l,a){return l?l.kind==="user"!=(a.kind==="user")||!!a.lead:!1}function Yb({items:l}){const a=Ee(),r=ww(),[u,d]=w.useReducer(Nw,null),f=w.useRef(null),[h,p]=w.useState(null);w.useEffect(()=>{const b=()=>{f.current&&window.clearTimeout(f.current.timer),f.current=null,p(null)},v=k=>{d({type:"outside",inside:k.target instanceof Element&&!!k.target.closest(".tools.menu")})},y=k=>{var E;const x=f.current;if(!x||x.pointerId!==k.pointerId)return;if(x.swipe=kw(x.swipe,k.clientX,k.clientY),Math.hypot(k.clientX-x.swipe.x,k.clientY-x.swipe.y)>10&&window.clearTimeout(x.timer),x.swipe.direction==="vertical"){b();return}if(x.swipe.direction!=="horizontal")return;window.clearTimeout(x.timer);const j=bx(x.swipe);if(j&&!x.ready&&((E=navigator.vibrate)==null||E.call(navigator,10)),x.ready=j,window.matchMedia("(prefers-reduced-motion: reduce)").matches){j&&(_c({itemId:x.id,text:ms(x.text).slice(0,60)}),Di(),b());return}p({id:x.id,distance:x.swipe.distance,ready:j})},S=k=>{const x=f.current;!x||x.pointerId!==k.pointerId||(bx(x.swipe)&&(_c({itemId:x.id,text:ms(x.text).slice(0,60)}),Di()),b())},T=()=>{b(),d({type:"close"})};return document.addEventListener("pointerdown",v,!0),document.addEventListener("pointermove",y,!0),document.addEventListener("pointerup",S,!0),document.addEventListener("pointercancel",b,!0),document.addEventListener("scroll",T,!0),()=>{b(),document.removeEventListener("pointerdown",v,!0),document.removeEventListener("pointermove",y,!0),document.removeEventListener("pointerup",S,!0),document.removeEventListener("pointercancel",b,!0),document.removeEventListener("scroll",T,!0)}},[]);const m=[];l.length&&!xw(l[0].at)&&l[0].kind!=="note"&&m.push(i.jsx("div",{className:"div",children:Ul(l[0].at)},"first-div"));for(let b=0;b<l.length;b++){const v=l[b],y=l[b-1],S=l[b+1],T=H1(v.id),k=v.kind==="assistant"&&(S==null?void 0:S.kind)==="draft"?a.drafts[S.draftId]:void 0,x={open:r&&u===v.id,touch:r,distance:(h==null?void 0:h.id)===v.id?h.distance:0,ready:(h==null?void 0:h.id)===v.id&&h.ready,close:()=>d({type:"close"}),start:r?j=>{if(j.pointerType!=="touch"||v.kind!=="user"&&v.kind!=="assistant"||j.target.closest("a,button,input,textarea,select,[contenteditable],.draft,.album-stack"))return;f.current&&window.clearTimeout(f.current.timer);const{clientX:E,clientY:A,pointerId:X}=j,J=window.setTimeout(()=>{f.current=null,d({type:"open",id:v.id})},500);f.current={timer:J,pointerId:X,id:v.id,text:v.text,swipe:{x:E,y:A,direction:"pending",distance:0},ready:!1}}:void 0};k&&b++,m.push(i.jsxs(w.Fragment,{children:[bw(y==null?void 0:y.at,v.at)?i.jsx("div",{className:`div${T?" enter-fade":""}`,children:Ul(v.at)}):Mw(y,v)?i.jsx("div",{className:"g"}):null,i.jsx(Ow,{item:v,inlineDraft:k,fresh:T,tools:x})]},v.id))}for(const b of U1(Object.values(a.livePages),a.sel))m.push(i.jsxs("button",{className:`att filecard${b.state==="failed"?" bad":""}`,onClick:()=>jN(b.callId),children:[i.jsx("span",{className:"ico",children:i.jsx(Z,{name:b.state==="writing"?"spin":"close",className:b.state==="writing"?"spin":"",size:18})}),i.jsxs("span",{children:[i.jsx("span",{className:"n",style:{display:"block"},children:b.title||"正在写页面…"}),i.jsx("span",{className:"m",children:b.state==="failed"?`生成失败:${b.error}`:"生成中"})]})]},b.callId));return i.jsx(i.Fragment,{children:m})}function Gb({leaving:l,gap:a,a:r}){var u,d;return i.jsxs(i.Fragment,{children:[a?i.jsx("div",{className:"g"}):null,i.jsx("div",{className:`hov think${l?" leaving":""}`,children:i.jsxs("div",{className:"activity-line",role:"status",children:[i.jsx(bt,{sprite:r.sprite,prop:r.prop,size:46,free:!0,motion:((u=r.activity)==null?void 0:u.state)==="tool"?"work":"think"}),i.jsx("span",{className:"activity-shimmer",children:((d=r.activity)==null?void 0:d.label)??"正在想…"})]})})]})}function Xb(l,a,r,u){const d=w.useRef(!0),f=w.useRef({key:"",len:0});w.useEffect(()=>{const h=l.current;if(!h)return;let p=h.scrollTop;const m=()=>{h.scrollHeight-h.scrollTop-h.clientHeight<80?d.current=!0:h.scrollTop<p-2&&(d.current=!1),p=h.scrollTop},b=new ResizeObserver(()=>{d.current&&(h.scrollTop=h.scrollHeight,p=h.scrollTop)});h.addEventListener("scroll",m,{passive:!0}),b.observe(h);for(const v of Array.from(h.children))b.observe(v);return()=>{h.removeEventListener("scroll",m),b.disconnect()}},[l]),w.useLayoutEffect(()=>{const h=l.current;if(!h)return;const p=f.current;f.current={key:a,len:r},p.key!==a||r<p.len?(d.current=!0,h.scrollTop=h.scrollHeight):r>p.len&&(d.current||u)&&(d.current=!0,h.scrollTo({top:h.scrollHeight,behavior:"smooth"}))},[l,a,r,u])}function Qb(l){return(l==null?void 0:l.kind)==="user"&&!l.from}const Rw=["查看这台电脑的磁盘和内存占用","每天早上 9 点给我一份科技新闻简报","把附件里的会议记录整理成要点"];function Zb({a:l}){const r=Ee().settings.settings.models,u=r.roster.length>0&&r.conversation.ref!=="";return i.jsxs("div",{className:"hello",children:[i.jsx(bt,{sprite:l.sprite,prop:l.prop,size:88,free:!0,motion:"home"}),i.jsx("div",{className:"t",children:`我是${Vb(l.name,!1)}${l.primary?",你的主助手":""}`}),i.jsx("div",{className:"d",children:l.primary?"交给我的事,我会分派给后台任务执行,完成、受阻或需要你确认时再告诉你;也可以让我定时执行。同类工作多了,我会建议创建专属助手。":`负责${l.duty}。`}),u?l.primary?i.jsx("div",{className:"ex",children:Rw.map(d=>i.jsx("button",{className:"btn",onClick:()=>{xf(d),Di()},children:d},d))}):null:i.jsxs("div",{className:"setup",children:[i.jsx("div",{children:"开始使用前,请先添加模型服务商并选择模型。"}),i.jsx("button",{className:"btn solid",onClick:()=>{jf(),va("providers")},children:"前往设置"})]})]})}function Vb(l,a=!0){const r=u=>!!(u&&/[A-Za-z0-9]/.test(u));return`${r(l[0])?" ":""}${l}${a&&r(l.at(-1))?" ":""}`}function Kb(l,a){return`${l??""}|${a??0}`}function Dw(){var m;const l=Ee(),a=l.assistants.find(b=>b.id===l.sel),r=rb(l,l.sel),u=!!(a&&l.sel&&r.length===0&&l.items[l.sel]!==void 0&&!a.busy),d=w.useRef(null),f=Kb(l.sel,l.sel?l.itemGen[l.sel]:0),h=!!(a!=null&&a.busy)&&!Gx(r),p=Bn(h,180);return Xb(d,f,r.length,Qb(r.at(-1))),i.jsxs("main",{className:"chat",children:[i.jsxs("div",{className:"head",children:[a?i.jsx(bt,{sprite:a.sprite,prop:a.prop,size:24}):null,i.jsx("span",{className:"nm",children:(a==null?void 0:a.name)??""}),i.jsx("span",{className:"sp"}),l.collapsed?i.jsx("button",{className:"ib",title:"展开右栏",onClick:gN,children:i.jsx(Z,{name:"panel",size:18})}):null]}),i.jsx("div",{className:"msgs",ref:d,children:i.jsxs("div",{className:`col${u?" mid":""}`,children:[u&&a?i.jsx(Zb,{a}):i.jsx(Yb,{items:r}),p.mounted&&a?i.jsx(Gb,{a,leaving:p.leaving,gap:((m=r.at(-1))==null?void 0:m.kind)==="user"}):null]})}),i.jsx(Ib,{})]})}function Ib({variant:l="desktop"}){var m;const a=Ee(),r=a.assistants.find(b=>b.id===a.sel),u=w.useRef(null),d=a.text.trim().length>0||a.attachments.length>0,f=Bn(a.quote!==null,180);w.useLayoutEffect(()=>{const b=u.current;if(!b)return;b.style.height="auto";const v=l==="mobile"?120:180;b.style.height=`${Math.min(b.scrollHeight,v)}px`},[a.text,a.nonce,l]),w.useEffect(()=>{var b;a.nonce&&((b=u.current)==null||b.focus())},[a.nonce]);const h=w.useRef(null);w.useLayoutEffect(()=>{const b=h.current,v=b==null?void 0:b.closest(".chat");if(!b||!v)return;const y=new ResizeObserver(()=>v.style.setProperty("--comp-h",`${b.offsetHeight}px`));return y.observe(b),()=>y.disconnect()},[l]);const p=i.jsxs("div",{className:l==="mobile"?"mcomp":"comp",children:[f.mounted?i.jsxs("div",{className:`comp-quote${f.leaving?" leaving":""}`,children:[i.jsx("div",{className:"quote",children:(m=a.quote)==null?void 0:m.text}),i.jsx("button",{className:"ib",style:{width:20,height:20},onClick:()=>_c(null),title:"取消引用",children:i.jsx(Z,{name:"close",size:13})})]}):null,a.attachments.length?i.jsx("div",{className:"comp-files",children:a.attachments.map(b=>{const v=b.path??$c(b),y=b.status==="uploading"?" uploading":b.status==="failed"?" failed":"";return Oi(b.name)?i.jsxs("span",{className:`comp-thumb${y}`,children:[i.jsx("img",{src:Hi(v),alt:b.name}),b.status==="uploading"?i.jsx("span",{className:"att-spin",children:i.jsx(Z,{name:"spin",size:18,w:2.2,className:"spin"})}):null,b.status==="failed"?i.jsx("span",{className:"att-bad",children:"!"}):null,i.jsx("button",{onClick:()=>Qv(b.id),title:"移除","aria-label":"移除",children:i.jsx(Z,{name:"close",size:11,w:2.2})})]},b.id):i.jsxs("span",{className:`filechip${y}`,children:[i.jsx("span",{className:"fi",children:b.status==="uploading"?i.jsx(Z,{name:"spin",size:16,w:2.2,className:"spin"}):i.jsx(Z,{name:Bi(b.name),size:16})}),i.jsx("span",{className:"fn",children:b.name}),i.jsx("button",{onClick:()=>Qv(b.id),title:"移除","aria-label":"移除",children:i.jsx(Z,{name:"close",size:12})})]},b.id)})}):null,i.jsxs("div",{className:"comp-main",children:[i.jsxs("label",{className:"pl",title:"加文件",children:[i.jsx(Z,{name:"plus",size:19}),i.jsx("input",{type:"file",multiple:!0,hidden:!0,onChange:b=>{const v=Array.from(b.target.files??[]);b.target.value="",v.length&&Pj(v)}})]}),i.jsx("textarea",{ref:u,className:"ta",rows:1,value:a.text,placeholder:`给${Vb((r==null?void 0:r.name)??"")}发消息`,onChange:b=>xf(b.target.value),onKeyDown:b=>{b.key==="Enter"&&!b.shiftKey&&!b.nativeEvent.isComposing&&(b.preventDefault(),Zv())}}),r!=null&&r.busy&&!d?i.jsx("button",{className:"sendbtn stop",title:"停止",onClick:()=>void nN(r.id),children:i.jsx(Z,{name:"stop",size:18})}):i.jsx("button",{className:"sendbtn",title:"发送",disabled:!d,onClick:()=>void Zv(),children:i.jsx(Z,{name:"send",size:17})})]})]});return l==="mobile"?i.jsx("div",{className:"mcomp-wrap",ref:h,children:p}):i.jsx("div",{className:"compwrap",ref:h,children:i.jsx("div",{className:"col",children:p})})}function Uw(){var m;const l=Ee(),a=l.assistants.find(b=>b.id===l.sel),r=rb(l,l.sel),u=!!(a&&l.sel&&r.length===0&&l.items[l.sel]!==void 0&&!a.busy),d=w.useRef(null),f=!!(a!=null&&a.busy)&&!Gx(r),h=Bn(f,180),p=Kb(l.sel,l.sel?l.itemGen[l.sel]:0);return Xb(d,p,r.length,Qb(r.at(-1))),i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"mchat-head",children:[i.jsx("button",{className:"ib",style:{marginLeft:-8},title:"返回",onClick:()=>gb("list"),children:i.jsx(Z,{name:"left",size:22})}),a?i.jsx(bt,{sprite:a.sprite,prop:a.prop,size:30}):null,i.jsx("span",{className:"nm",children:(a==null?void 0:a.name)??""}),i.jsx("span",{className:"sp"}),i.jsx("button",{className:"ib",title:"助手信息",onClick:vN,children:i.jsx(Z,{name:"more",size:20})})]}),i.jsx("div",{className:"mmsgs",ref:d,children:i.jsxs("div",{className:`col${u?" mid":""}`,children:[u&&a?i.jsx(Zb,{a}):i.jsx(Yb,{items:r}),h.mounted&&a?i.jsx(Gb,{a,leaving:h.leaving,gap:((m=r.at(-1))==null?void 0:m.kind)==="user"}):null]})}),i.jsx(Ib,{variant:"mobile"})]})}const $w="document.addEventListener('click',function(e){if(!e.isTrusted)return;const a=e.target.closest('a[href]');if(!a||!/^https?:\\/\\//i.test(a.getAttribute('href')||''))return;let u;try{u=new URL(a.href)}catch{return}if(!['http:','https:'].includes(u.protocol))return;e.preventDefault();if(window.parent!==window)window.parent.postMessage({type:'hob-page-link',url:u.href},'*');else window.open(u.href,'_blank','noopener')});",Hw="addEventListener('DOMContentLoaded',function(){document.querySelectorAll('main table').forEach(function(t){if(t.parentElement.classList.contains('tw'))return;var w=document.createElement('div');w.className='tw';t.before(w);w.append(t)});document.querySelectorAll('main figure>svg').forEach(function(g){var v=g.viewBox&&g.viewBox.baseVal;if(v&&v.width)g.style.minWidth=Math.round(v.width*0.75)+'px'})});",Bw="(function(){function f(){var h=location.hash;document.documentElement.classList.toggle('dark',h==='#dark'||(h!=='#light'&&matchMedia('(prefers-color-scheme: dark)').matches))}f();addEventListener('hashchange',f)})();",Lw="default-src 'none'; style-src 'unsafe-inline'; script-src 'unsafe-inline'; img-src data: https:; media-src data: https:; font-src data:",qw=`:root{--bg:#fff;--soft:#f5f5f2;--line:#e8e8e5;--ink:#18181a;--muted:#6d6d72;--faint:#a4a4a9;--accent:#ff6a2b;--accent-soft:#fff0e7;--ok:#1f9a5f;--ok-soft:#e8f5ee;--warn:#b7740a;--warn-soft:#fbf2df;--bad:#d92d20;--bad-soft:#fcebe9;color-scheme:light}
171
+ :root.dark{--bg:#151516;--soft:#1f1f21;--line:#2c2c2f;--ink:#ececed;--muted:#a1a1a7;--faint:#6b6b71;--accent:#ff7a42;--accent-soft:#36211a;--ok:#3cc183;--ok-soft:#15281e;--warn:#e9a53a;--warn-soft:#2c2414;--bad:#ff6b5e;--bad-soft:#321b19;color-scheme:dark}
172
+ *{box-sizing:border-box}
173
+ html{background:var(--bg);color:var(--ink);font:16px/1.75 system-ui,-apple-system,"PingFang SC","Hiragino Sans GB","Noto Sans CJK SC","Microsoft YaHei",sans-serif;-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility}
174
+ body{margin:0;padding:52px 24px 80px}
175
+ .page{max-width:760px;margin:0 auto}
176
+ .hd{margin-bottom:40px;padding-bottom:28px;border-bottom:1px solid var(--line)}
177
+ .hd h1{font-size:32px;line-height:1.25;letter-spacing:-.015em;margin:0 0 10px;font-weight:700}
178
+ .hd p{margin:0;color:var(--muted);font-size:17px;line-height:1.6}
179
+ h2{font-size:22px;line-height:1.35;letter-spacing:-.01em;margin:48px 0 14px;font-weight:700}
180
+ h3{font-size:16.5px;line-height:1.45;margin:28px 0 8px;font-weight:650}
181
+ main>h2:first-child,main>section:first-child>h2:first-child{margin-top:0}
182
+ p,ul,ol,table,pre,figure,blockquote,.note,.cards,.cols,.kpis,.steps{margin:0 0 18px}
183
+ ul,ol{padding-left:1.4em}li{margin:5px 0}li::marker{color:var(--faint)}
184
+ a{color:var(--accent);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--accent) 35%,transparent)}
185
+ strong,b{font-weight:650}
186
+ .muted{color:var(--muted)}.accent{color:var(--accent)}.ok{color:var(--ok)}.warn{color:var(--warn)}.bad{color:var(--bad)}
187
+ code{font:.88em/1.5 ui-monospace,"SF Mono","JetBrains Mono",Menlo,Consolas,monospace;background:var(--soft);padding:.12em .4em;border-radius:5px}
188
+ pre{background:var(--soft);border-radius:12px;padding:14px 18px;overflow:auto;line-height:1.6}pre code{background:none;padding:0;font-size:13.5px}
189
+ blockquote{border-left:3px solid var(--line);padding:2px 0 2px 16px;color:var(--muted)}
190
+ hr{border:0;border-top:1px solid var(--line);margin:36px 0}
191
+ table{width:100%;border-collapse:collapse;font-size:14.5px;line-height:1.6}
192
+ .tw{overflow-x:auto;margin:0 0 18px}.tw>table{margin:0}
193
+ th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
194
+ th{font-size:13px;font-weight:600;color:var(--muted);border-bottom-width:1.5px;white-space:nowrap}
195
+ td{min-width:5.5em}
196
+ th:first-child,td:first-child{padding-left:0}th:last-child,td:last-child{padding-right:0}
197
+ .cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
198
+ .card{background:var(--soft);border-radius:14px;padding:16px 18px}.card h3{margin:0 0 6px;font-size:15.5px}
199
+ .cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px 28px}
200
+ .cols>div>h3:first-child{margin-top:0}
201
+ .kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}
202
+ .kpi{border:1px solid var(--line);border-radius:14px;padding:14px 16px 12px}
203
+ .kpi b{display:block;font-size:28px;line-height:1.2;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.kpi span{color:var(--muted);font-size:13.5px}
204
+ .steps{list-style:none;padding:0;counter-reset:s}
205
+ .steps>li{position:relative;margin:0;padding:1px 0 20px 44px;counter-increment:s}
206
+ .steps>li::before{content:counter(s);position:absolute;left:0;top:0;width:28px;height:28px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-weight:700;font-size:14px;line-height:28px;text-align:center}
207
+ .steps>li::after{content:"";position:absolute;left:13.5px;top:34px;bottom:6px;width:1px;background:var(--line)}
208
+ .steps>li:last-child{padding-bottom:0}.steps>li:last-child::after{display:none}.steps>li>b:first-child{display:block}
209
+ .note{border-radius:12px;padding:12px 16px;background:var(--accent-soft)}.note.ok{background:var(--ok-soft)}.note.warn{background:var(--warn-soft)}.note.bad{background:var(--bad-soft)}
210
+ .card>:last-child,.note>:last-child,.cols>div>:last-child,section>:last-child{margin-bottom:0}
211
+ .tag{display:inline-block;font-size:12px;line-height:1.7;padding:0 8px;border-radius:99px;background:var(--soft);color:var(--muted);vertical-align:.08em;white-space:nowrap}
212
+ .card .tag{background:var(--bg)}
213
+ .tag.accent{background:var(--accent-soft);color:var(--accent)}.tag.ok{background:var(--ok-soft);color:var(--ok)}.tag.warn{background:var(--warn-soft);color:var(--warn)}.tag.bad{background:var(--bad-soft);color:var(--bad)}
214
+ figure{margin:28px 0;overflow-x:auto}img,svg{max-width:100%;height:auto}figure>svg,figure>img{display:block;margin:0 auto}
215
+ figcaption{color:var(--muted);font-size:13.5px;margin-top:10px;text-align:center}
216
+ svg{color:var(--ink)}svg text{fill:var(--ink);font-family:inherit;font-size:13px}
217
+ svg .box{fill:var(--bg);stroke:var(--line);stroke-width:1.5}svg .hl{fill:var(--accent-soft);stroke:var(--accent);stroke-width:1.5}
218
+ svg .line{fill:none;stroke:var(--faint);stroke-width:1.5}svg text.muted{fill:var(--muted)}svg text.accent{fill:var(--accent)}
219
+ @media (max-width:600px){body{padding:32px 18px 64px}.hd{margin-bottom:32px}.hd h1{font-size:26px}h2{font-size:19.5px;margin-top:40px}}`,$d=l=>l.replace(/[&<>"]/g,a=>({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;"})[a]);function Yw(){return Gw("","","").replace("</body>",`<script>
220
+ (function(){
221
+ let latest, scheduled = false, follow = true;
222
+ addEventListener('scroll', function(){ follow = document.documentElement.scrollHeight - innerHeight - scrollY < 48; }, {passive:true});
223
+ addEventListener('message', function(e){
224
+ if(e.source !== parent || e.data?.type !== 'hob-page-live') return;
225
+ latest = e.data;
226
+ if(scheduled) return;
227
+ scheduled = true;
228
+ requestAnimationFrame(function(){
229
+ scheduled = false;
230
+ document.documentElement.classList.toggle('dark', !!latest.dark);
231
+ document.title = latest.title || '';
232
+ document.querySelector('.hd h1').textContent = latest.title || '';
233
+ document.querySelector('.hd p').textContent = latest.summary || '';
234
+ const main = document.querySelector('main');
235
+ const template = document.createElement('template');
236
+ template.innerHTML = (latest.html || '').replace(/<[^>]*$/, '');
237
+ template.content.querySelectorAll('script,iframe,object,embed').forEach(function(el){el.remove()});
238
+ template.content.querySelectorAll('*').forEach(function(el){
239
+ Array.from(el.attributes).forEach(function(a){if(/^on/i.test(a.name)||a.name.toLowerCase()==='srcdoc'||/^\\s*javascript:/i.test(a.value))el.removeAttribute(a.name)});
240
+ });
241
+ main.innerHTML = template.innerHTML;
242
+ main.querySelectorAll('table').forEach(function(t){const w=document.createElement('div');w.className='tw';t.before(w);w.append(t)});
243
+ main.querySelectorAll('figure>svg').forEach(function(g){const v=g.viewBox&&g.viewBox.baseVal;if(v&&v.width)g.style.minWidth=Math.round(v.width*.75)+'px'});
244
+ if(follow) scrollTo(0, document.documentElement.scrollHeight);
245
+ });
246
+ });
247
+ })();<\/script></body>`)}function Gw(l,a,r){return`<!doctype html>
248
+ <html lang="zh-CN"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1">
249
+ <meta http-equiv="Content-Security-Policy" content="${Lw}">
250
+ <title>${$d(l)}</title><script>${Bw}${Hw}<\/script><style>${qw}</style></head>
251
+ <body><div class="page"><header class="hd"><h1>${$d(l)}</h1><p>${$d(a)}</p></header>
252
+ <main>
253
+ ${r}
254
+ </main></div><script>${$w}<\/script></body></html>
255
+ `}function Xw(l){const[a,...r]=l;return a?a.map((u,d)=>r.length>0&&r.every(f=>{var p;const h=(p=f[d])==null?void 0:p.trim();return!!h&&/^[+-]?(?:\d+\.?\d*|\.\d+)(?:e[+-]?\d+)?$/i.test(h)&&Number.isFinite(Number(h))})):[]}const Qw=1024*1024;function Hd(){const l=Ee(),a=l.filePreview,r=Bn(!!a,180),u=w.useRef(a);a&&(u.current=a),w.useEffect(()=>{if(!a)return;const f=h=>{h.key==="Escape"&&Mc()};return window.addEventListener("keydown",f),()=>window.removeEventListener("keydown",f)},[a]);const d=a??u.current;return!r.mounted||!d?null:i.jsx("div",{className:`fpwrap${r.leaving?" leaving":""}`,onClick:Mc,children:i.jsx("div",{className:`fp${d.full?" full":""}`,onClick:f=>f.stopPropagation(),children:d.liveId&&l.livePages[d.liveId]?i.jsx(Zw,{page:l.livePages[d.liveId]}):i.jsx(Vw,{path:d.path,title:d.title})})})}function Zw({page:l}){const a=w.useRef(null),r=w.useRef(l);r.current=l;const[u,d]=w.useState(null),f=w.useMemo(()=>Yw(),[]),h=()=>{var m,b;return(b=(m=a.current)==null?void 0:m.contentWindow)==null?void 0:b.postMessage({type:"hob-page-live",title:r.current.title,summary:r.current.summary,html:r.current.html,dark:document.documentElement.classList.contains("dark")},"*")};w.useEffect(()=>{h()},[l]),w.useEffect(()=>{const m=new MutationObserver(h);m.observe(document.documentElement,{attributes:!0,attributeFilter:["class"]});const b=v=>{var y,S,T;if(!(v.source!==((y=a.current)==null?void 0:y.contentWindow)||((S=v.data)==null?void 0:S.type)!=="hob-page-link"||!((T=navigator.userActivation)!=null&&T.isActive)))try{const k=new URL(v.data.url);["http:","https:"].includes(k.protocol)&&window.open(k.href,"_blank","noopener")}catch{}};return window.addEventListener("message",b),()=>{m.disconnect(),window.removeEventListener("message",b)}},[]),w.useEffect(()=>{let m=!0;return l.path&&vb(l.path).then(b=>{m&&d(b)}).catch(b=>Lc(`无法加载文件信息:${b instanceof Error?b.message:String(b)}`)),()=>{m=!1}},[l.path]);const p=l.state!=="done";return i.jsxs(i.Fragment,{children:[i.jsx(Jb,{name:l.title||"正在写页面…",meta:u,path:l.path||"page.html",liveStatus:l.state==="writing"?"正在生成…":l.state==="failed"?`生成失败:${l.error}`:void 0,disabled:p}),i.jsx("div",{className:"fp-body",children:l.state==="done"&&/<\s*script\b/i.test(l.html)&&u?i.jsx(Fb,{meta:u}):i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"fp-note",children:"网页在隔离环境中显示,不能访问 Hob 的数据。"}),i.jsx("iframe",{ref:a,className:"fp-frame",sandbox:"allow-scripts",srcDoc:f,onLoad:h,title:l.title||"正在写页面"})]})})]})}function Vw({path:l,title:a}){const[r,u]=w.useState({state:"loading"});w.useEffect(()=>{let h=!0;return u({state:"loading"}),vb(l).then(p=>{h&&u({state:"ok",meta:p})}).catch(p=>{if(!h)return;const m=p instanceof Error?p.message:String(p),b=m.includes("只允许读 Hob 自己的文件");u({state:"error",outside:b,message:m})}),()=>{h=!1}},[l]);const d=r.state==="ok"?r.meta:null,f=a??(d==null?void 0:d.name)??l.split("/").pop()??l;return i.jsxs(i.Fragment,{children:[i.jsx(Jb,{name:f,meta:d,path:l}),i.jsx("div",{className:"fp-body",children:r.state==="loading"?i.jsx("div",{className:"fp-center dim",children:"正在读取文件信息…"}):r.state==="error"?i.jsx("div",{className:"fp-center",children:i.jsxs("div",{className:"fp-nofile",children:[i.jsx(Z,{name:"doc",size:22}),i.jsx("div",{children:r.outside?"这个文件不在 Hob 的数据目录里,无法预览":r.message}),i.jsx("button",{className:"pbtn",onClick:()=>void Sf(l).then(h=>Lc(h?"路径已复制":"复制失败:浏览器不允许写入剪贴板")),children:"复制路径"})]})}):i.jsx(Kw,{meta:r.meta})})]})}function Jb({name:l,meta:a,path:r,liveStatus:u,disabled:d}){return i.jsxs("div",{className:"fphead",children:[i.jsx("button",{className:"ib",title:"关闭",onClick:Mc,children:i.jsx(Z,{name:"left",size:18})}),i.jsx(Z,{name:Bi(r),size:18,className:"fp-file-icon"}),i.jsxs("div",{className:"fpt",children:[i.jsx("div",{className:"n",title:l,children:l}),u?i.jsx("div",{className:"m",children:u}):a?i.jsxs("div",{className:"m",children:[$f(a.size)," · ",Ul(a.modifiedAt)]}):null]}),d?i.jsx("button",{className:"ib fp-act",title:"下载",disabled:!0,children:i.jsx(Z,{name:"dl",size:17})}):i.jsx("a",{className:"ib fp-act",title:"下载",href:Yt(r),download:l,children:i.jsx(Z,{name:"dl",size:17})}),i.jsx("button",{className:"ib fp-act",title:"在新窗口打开",disabled:d,onClick:()=>window.open(Yt(r,{inline:!0}),"_blank","noopener"),children:i.jsx(Z,{name:"out",size:17})}),i.jsx("button",{className:"ib fp-act fp-wide-btn",title:"切换全宽",onClick:NN,children:i.jsx(Z,{name:"dbl",size:17})})]})}function Fb({meta:l}){const a=w.useRef(null);return w.useEffect(()=>{const r=u=>{var d,f,h;if(!(!l.page||u.source!==((d=a.current)==null?void 0:d.contentWindow)||((f=u.data)==null?void 0:f.type)!=="hob-page-link"||!((h=navigator.userActivation)!=null&&h.isActive)))try{const p=new URL(u.data.url);(p.protocol==="https:"||p.protocol==="http:")&&window.open(p.href,"_blank","noopener")}catch{}};return window.addEventListener("message",r),()=>window.removeEventListener("message",r)},[l.page]),i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"fp-note",children:"网页在隔离环境中显示,不能访问 Hob 的数据。"}),i.jsx("iframe",{ref:a,className:"fp-frame",sandbox:"allow-scripts",src:Yt(l.path,{inline:!0})+(l.page?document.documentElement.classList.contains("dark")?"#dark":"#light":""),title:l.name})]})}function Kw({meta:l}){switch(l.kind){case"image":return i.jsx(Nx,{path:l.path,name:l.name,svg:!1});case"svg":return i.jsx(Nx,{path:l.path,name:l.name,svg:!0});case"pdf":return i.jsx("iframe",{className:"fp-frame",src:Yt(l.path),title:l.name});case"audio":return i.jsx("div",{className:"fp-center",children:i.jsx("audio",{controls:!0,src:Yt(l.path)})});case"video":return i.jsx("div",{className:"fp-center",children:i.jsx("video",{controls:!0,src:Yt(l.path)})});case"html":return i.jsx(Fb,{meta:l});case"other":return i.jsx("div",{className:"fp-center",children:i.jsxs("div",{className:"fp-nofile",children:[i.jsx(Z,{name:"doc",size:22}),i.jsx("div",{children:"这种文件不在浏览器里预览,可以下载后打开。"}),i.jsx("a",{className:"pbtn solid",href:Yt(l.path),download:l.name,children:"下载"})]})});default:return i.jsx(Iw,{meta:l})}}function Nx({path:l,name:a,svg:r}){const[u,d]=w.useState(!1),f=Yt(l,r?{inline:!0}:void 0),[h,p]=w.useState(r);return w.useEffect(()=>{if(!u)return;const m=b=>{b.key==="Escape"&&(b.stopImmediatePropagation(),d(!1))};return window.addEventListener("keydown",m,!0),()=>window.removeEventListener("keydown",m,!0)},[u]),i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"fp-img",children:i.jsxs("button",{onClick:()=>d(!0),title:"放大",className:h?void 0:"fp-img-loading",children:[h?null:i.jsx("img",{className:"fp-img-thumb",src:Hi(l),alt:"","aria-hidden":"true"}),i.jsx("img",{src:f,alt:a,onLoad:()=>p(!0),onError:()=>p(!0),style:h?void 0:{position:"absolute",opacity:0}})]})}),u?i.jsx("div",{className:"lightbox",role:"dialog","aria-label":a,onClick:()=>d(!1),children:i.jsx("img",{src:f,alt:a})}):null]})}function Iw({meta:l}){const[a,r]=w.useState(null),[u,d]=w.useState(null);if(w.useEffect(()=>{let h=!0;return r(null),d(null),(async()=>{try{const p=await fetch(Yt(l.path,{truncate:!0}));if(!p.ok)throw new Error(`读取失败(${p.status})`);h&&r(await p.text())}catch(p){h&&d(p instanceof Error?p.message:String(p))}})(),()=>{h=!1}},[l.path]),u)return i.jsx("div",{className:"fp-center fp-nofile",children:u});if(a===null)return i.jsx("div",{className:"fp-center dim",children:"正在读取内容…"});const f=l.size>Qw?i.jsxs("div",{className:"fp-note",children:["文件有 ",$f(l.size),",只显示前 1 MB,完整内容请下载。"]}):null;if(l.kind==="markdown")return i.jsxs(i.Fragment,{children:[f,i.jsx(wa,{className:"fp-md markdown-body",text:a})]});if(l.kind==="json"){let h=a;try{h=JSON.stringify(JSON.parse(a),null,2)}catch{}return i.jsxs(i.Fragment,{children:[f,i.jsx(Sx,{text:h})]})}return l.kind==="csv"?i.jsxs(i.Fragment,{children:[f,i.jsx(Jw,{text:a,tsv:l.mime.includes("tab-separated")})]}):i.jsxs(i.Fragment,{children:[f,i.jsx(Sx,{text:a})]})}function Sx({text:l}){const[a,r]=w.useState(!0),u=w.useMemo(()=>l.split(`
256
+ `),[l]);return i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"fp-codebar",children:[i.jsxs("span",{className:"dim",children:[u.length," 行"]}),i.jsx("button",{className:"pbtn",onClick:()=>r(!a),children:a?"不自动换行":"自动换行"})]}),i.jsx("div",{className:`fp-code mono${a?" wrap":""}`,children:u.map((d,f)=>i.jsxs("div",{className:"cl",children:[i.jsx("span",{className:"ln",children:f+1}),i.jsx("span",{className:"ct",children:d||" "})]},f))})]})}function Jw({text:l,tsv:a}){const r=w.useMemo(()=>Fw(l,a?" ":","),[l,a]),u=w.useMemo(()=>Xw(r),[r]),d=r.slice(0,1e3),[f,...h]=d;return i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"fp-codebar",children:i.jsxs("span",{className:"dim",children:[r.length," 行",r.length>1e3?"(只显示前 1000 行)":""]})}),i.jsx("div",{className:"fp-table-wrap",children:i.jsxs("table",{className:"fp-table",children:[f?i.jsx("thead",{children:i.jsx("tr",{children:f.map((p,m)=>i.jsx("th",{className:u[m]?"numeric":void 0,children:p},m))})}):null,i.jsx("tbody",{children:h.map((p,m)=>i.jsx("tr",{children:p.map((b,v)=>i.jsx("td",{className:u[v]?"numeric":void 0,children:b},v))},m))})]})})]})}function Fw(l,a){const r=[];let u=[],d="",f=!1;for(let h=0;h<l.length;h+=1){const p=l[h];f?p==='"'?l[h+1]==='"'?(d+='"',h+=1):f=!1:d+=p:p==='"'?f=!0:p===a?(u.push(d),d=""):p===`
257
+ `?(u.push(d),r.push(u),u=[],d=""):p!=="\r"&&(d+=p)}return(d||u.length)&&(u.push(d),r.push(u)),r}const Pb={queued:{text:"排队中",icon:"clock"},running:{text:"进行中",icon:"spin",spin:!0},waiting:{text:"待确认",icon:"pause"},done:{text:"已完成",icon:"check"},stuck:{text:"受阻",icon:"close",bad:!0},failed:{text:"失败",icon:"close",bad:!0},stopped:{text:"已停止",icon:"stop"}},Pw={off:"关",minimal:"最低",low:"低",medium:"中",high:"高",xhigh:"很高",max:"最高"},Ww=["running","waiting","queued","done","stuck","failed","stopped"],e2={bash:"term",overview:"clock",generate_image:"image",read:"doc",write:"edit",edit:"edit",ls:"doc",grep:"search",find:"search",report:"rule",ask_user:"info"};function zi(l){return l.status==="running"||l.status==="queued"||l.status==="waiting"}function Lf({job:l}){const a=Pb[l.status];return i.jsxs("span",{className:`jt-st${a.bad?" bad":""}${l.status==="done"?" ok":""}${l.status==="running"?" live":""}`,children:[i.jsx(Z,{name:a.icon,size:13,className:`${a.spin?"spin ":""}${a.bad?"bad":""}`}),a.text]})}function Bd({embedded:l=!1}){const a=Ee(),r=a.detail,u=Bn(!!r,180),d=w.useRef(r);r&&(d.current=r),w.useEffect(()=>{if(!r)return;const p=m=>{m.key==="Escape"&&!a.filePreview&&Ei()};return window.addEventListener("keydown",p),()=>window.removeEventListener("keydown",p)},[r,a.filePreview]);const f=r??d.current;if(!u.mounted||!f)return null;const h=f.kind==="job"&&a.worklog;return i.jsx("div",{className:`${l?"jd-embedded":"jd-overlay"}${u.leaving?" leaving":""}`,onClick:l?void 0:Ei,children:i.jsxs("div",{className:"jd",onClick:p=>p.stopPropagation(),children:[i.jsxs("div",{className:"jdhead",children:[i.jsx("button",{className:"ib",title:h?"返回任务记录":"关闭",onClick:h?db:Ei,children:i.jsx(Z,{name:"left",size:18})}),i.jsx("span",{className:"t",children:f.kind==="jobs"?"任务记录":"任务"}),i.jsx("button",{className:"ib",title:"关闭",onClick:Ei,children:i.jsx(Z,{name:"close",size:17})})]}),f.kind==="jobs"?i.jsx(o2,{}):i.jsx(t2,{id:f.id},f.id)]})})}function t2({id:l}){var j,E;const a=Ee(),r=a.jobs[l],u=a.steps[l],d=w.useRef(null),f=w.useRef(r?zi(r):!0),[h,p]=w.useState(null);if(w.useEffect(()=>{gf().then(A=>p((A==null?void 0:A.models)??null))},[]),w.useEffect(()=>{const A=d.current;if(!A)return;const X=()=>{f.current=A.scrollHeight-A.scrollTop-A.clientHeight<80};return A.addEventListener("scroll",X),()=>A.removeEventListener("scroll",X)},[]),w.useEffect(()=>{var J;const A=d.current,X=(J=u==null?void 0:u[u.length-1])==null?void 0:J.queued;A&&(f.current||X)&&(A.scrollTop=A.scrollHeight,f.current=!0)},[u==null?void 0:u.length,(j=u==null?void 0:u[u.length-1])==null?void 0:j.id]),!r)return i.jsx("div",{className:"jdbody",children:i.jsx("div",{className:"empty",children:"无法读取这个任务。"})});const m=a.assistants.find(A=>A.id===r.assistantId),b=!zi(r),v=r.model?((E=h==null?void 0:h.find(A=>A.ref===r.model))==null?void 0:E.name)??r.model:"",y=r.startedAt??r.createdAt,S=r.durationMs??(zi(r)?Date.now()-new Date(y).getTime():void 0),T=r.usage,k=Vx(r),x=u===void 0?void 0:oj(u);return i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"jdbody",ref:d,children:[i.jsx("div",{className:"jd-title",children:r.title}),i.jsxs("div",{className:"jd-meta",children:[i.jsx(Lf,{job:r}),m||r.assistantName?i.jsxs("span",{className:"jd-owner",children:[m?i.jsx(bt,{sprite:m.sprite,prop:m.prop,size:16}):null,(m==null?void 0:m.name)??r.assistantName]}):null,i.jsx("span",{children:Ul(y)}),S!==void 0?i.jsxs("span",{children:["用时 ",qc(S)]}):null]}),r.model||T?i.jsxs("div",{className:"jd-meta dim",children:[r.model?i.jsx("span",{className:v===r.model?"mono":void 0,title:r.model,children:v}):null,r.thinking?i.jsxs("span",{children:["思考 ",Pw[r.thinking]??r.thinking]}):null,r.modelReason?i.jsx("span",{children:r.modelReason}):null,T?i.jsxs("span",{children:["输入 ",xx(T.input)," · 输出 ",xx(T.output),T.cost>0?` · $${T.cost.toFixed(4)}`:""]}):null]}):null,k?i.jsx("div",{className:"jd-reason",children:k}):null,b?i.jsx(wx,{job:r}):null,i.jsx("div",{className:"lbl",children:"任务内容"}),i.jsx("div",{className:"jd-instruction",children:r.instruction}),i.jsx("div",{className:"lbl",children:"执行过程"}),i.jsx("div",{className:"jd-timeline",children:x===void 0?i.jsx("div",{className:"empty",children:"正在读取执行过程…"}):x.rows.length||x.thinking?i.jsxs(i.Fragment,{children:[x.rows.map(A=>i.jsx(l2,{step:A,cwd:r.cwd},A.id)),x.thinking?i.jsx(s2,{text:x.thinking}):null]}):i.jsx("div",{className:"empty",children:"还没有执行步骤。"})}),i.jsx(u2,{job:r}),b?null:i.jsx(wx,{job:r})]}),zi(r)?i.jsx(n2,{job:r}):null]})}function n2({job:l}){const[a,r]=w.useState(""),u=a.trim().length>0,d=()=>{if(!u)return;const f=a.trim();r(""),Vd(l.id,f).then(h=>{h||r(p=>p||f)})};return i.jsxs("div",{className:"jd-foot",children:[i.jsx("input",{value:a,placeholder:"补充说明或更正方向",onChange:f=>r(f.target.value),onKeyDown:f=>{f.key==="Enter"&&!f.nativeEvent.isComposing&&d()}}),i.jsx("button",{className:"pbtn solid",disabled:!u,onClick:d,children:"发送"}),l.status==="running"?i.jsx("button",{className:"pbtn",onClick:()=>void ub(l.id),children:"停止"}):null]})}function l2({step:l,cwd:a}){const[r,u]=w.useState(!1),d=Bn(r,180);if(l.kind==="text")return l.from==="user"?i.jsxs("div",{className:`jd-mine${l.queued?" queued":""}`,children:[l.text,l.queued?i.jsx("div",{className:"jd-mine-note",children:"已送达,当前这一步做完后读取"}):null]}):i.jsxs("div",{className:"jd-textrow",children:[l.thinking?i.jsx(Wb,{text:l.thinking,open:!1}):null,i.jsx(wa,{className:"jd-text",text:l.text??""})]});const f=l.title??l.name??"",h=pj(f);return i.jsxs("div",{className:`jd-tool${l.isError?" bad":""}${r?" open":""}`,children:[i.jsxs("button",{className:"jd-tool-head",onClick:()=>u(p=>!p),children:[i.jsx("span",{className:"ico",children:l.running?i.jsx(Z,{name:"spin",size:14,className:"spin"}):i.jsx(Z,{name:e2[l.name??""]??(/^(lore|memory)_/.test(l.name??"")?"mem":"more"),size:14})}),i.jsx("span",{className:"tt",children:h.map((p,m)=>i.jsx("span",{className:p.mono?"mono":void 0,children:p.text},m))}),l.thinking?i.jsx("span",{className:"blb",title:"有思考过程",children:i.jsx(Z,{name:"bulb",size:13})}):null,i.jsx("span",{className:"tm",children:l.isError?"出错":l.durationMs&&l.durationMs>=1e3?qc(l.durationMs):""}),i.jsx(Z,{name:r?"down":"chev",size:13})]}),i.jsx("div",{className:`expand${r?" open":""}`,inert:!r,children:i.jsx("div",{children:d.mounted?i.jsx(i2,{step:l,cwd:a}):null})})]})}function Wb({text:l,open:a}){const[r,u]=w.useState(a);return i.jsxs("div",{className:"jd-think-in",children:[i.jsxs("button",{className:"jd-think-head",title:r?"收起思考过程":"展开思考过程",onClick:()=>u(d=>!d),children:[i.jsx("span",{className:"ico",children:i.jsx(Z,{name:"bulb",size:13})}),i.jsx("span",{className:"tt",children:"思考过程"}),i.jsx(Z,{name:r?"down":"chev",size:12})]}),r?i.jsx("div",{className:"jd-think-body",children:l}):null]})}function s2({text:l}){const[a,r]=w.useState(!1);return i.jsxs("div",{className:"jd-think",children:[i.jsxs("button",{onClick:()=>r(u=>!u),children:[i.jsx("span",{className:"ico",children:i.jsx(Z,{name:"bulb",size:14})}),i.jsx("span",{className:"tt",children:"思考中"}),i.jsx(Z,{name:a?"down":"chev",size:13})]}),a?i.jsx("div",{className:"jd-think-body",children:l}):null]})}function a2(l){var r;const a=(r=l.args)==null?void 0:r.edits;return Array.isArray(a)?a.map(u=>({oldText:String((u==null?void 0:u.oldText)??""),newText:String((u==null?void 0:u.newText)??"")})):[]}function lf({path:l,cwd:a}){if(!l)return null;const r=l.startsWith("/")?l:a?`${a.replace(/\/+$/,"")}/${l}`:null;return r?i.jsx("button",{className:"jd-kv mono jd-path",title:r,onClick:()=>Hl(r),children:l}):i.jsx("div",{className:"jd-kv mono",children:l})}function i2({step:l,cwd:a}){const r=l.args??{},u=a2(l);return i.jsxs("div",{className:"jd-tool-body",children:[l.thinking?i.jsx(Wb,{text:l.thinking,open:!0}):null,u.length?i.jsxs(i.Fragment,{children:[i.jsx(lf,{path:String(r.path??""),cwd:a}),u.map((d,f)=>i.jsx(c2,{before:d.oldText,after:d.newText},f))]}):i.jsx(r2,{step:l,args:r,cwd:a}),l.output?i.jsx(sf,{text:l.output,className:"jd-out mono"}):null,l.outputPath?i.jsxs("button",{className:"jd-file",onClick:()=>Hl(l.outputPath),children:[i.jsx(Z,{name:"doc",size:12}),"完整输出"]}):null]})}function r2({step:l,args:a,cwd:r}){if(l.name==="bash")return i.jsx(sf,{text:String(a.command??""),className:"jd-arg mono",lines:8});if(l.name==="write")return i.jsxs("div",{className:"jd-kv-wrap",children:[i.jsx(lf,{path:String(a.path??""),cwd:r}),i.jsxs("span",{className:"jd-kv-len",children:[String(a.contentLength??0)," 字"]})]});if(l.name==="read"||l.name==="ls"||l.name==="edit")return i.jsx(lf,{path:String(a.path??""),cwd:r});const u=JSON.stringify(a,null,2);return u==="{}"?null:i.jsx(sf,{text:u,className:"jd-arg mono",lines:6})}function c2({before:l,after:a}){const[r,u]=w.useState(!1),d=fj(l,a),f=r?d:d.slice(0,24);return i.jsxs("div",{className:"jd-diff",children:[f.map((h,p)=>i.jsxs("div",{className:`dl ${h.sign==="-"?"del":h.sign==="+"?"add":""}`,children:[i.jsx("span",{className:"sg",children:h.sign}),i.jsx("span",{className:"mono",children:h.text||" "})]},p)),d.length>f.length?i.jsxs("button",{className:"jd-more",onClick:()=>u(!0),children:["展开全部 ",d.length," 行"]}):null]})}function sf({text:l,className:a,lines:r=12}){const[u,d]=w.useState(!1),f=l.split(`
258
+ `).length;return i.jsxs(i.Fragment,{children:[i.jsx("pre",{className:`${a}${u?" all":""}`,style:u?void 0:{maxHeight:`${r*1.6}em`},children:l}),f>r?i.jsx("button",{className:"jd-more",onClick:()=>d(!u),children:u?"收起":`展开全部 ${f} 行`}):null]})}function wx({job:l}){return l.summary?i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"lbl",children:"报告"}),i.jsx(wa,{className:"jd-report",text:l.summary})]}):null}function u2({job:l}){const[a,r]=w.useState(null);w.useEffect(()=>{let f=!0;return r(null),kN(l.id).then(h=>{f&&r((h==null?void 0:h.files)??[])}),()=>{f=!1}},[l.id]);const u=new Set,d=[];for(const f of l.files??[])u.has(f)||(u.add(f),d.push({path:f,rel:f.split("/").pop()??f}));for(const f of a??[])u.has(f.path)||(u.add(f.path),d.push({path:f.path,rel:f.rel,size:f.size}));return d.length?i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"lbl",children:"产出文件"}),d.map(f=>i.jsxs("button",{className:"att plain filecard",onClick:()=>Hl(f.path),children:[i.jsx("span",{className:"ico",children:i.jsx(Z,{name:Bi(f.path),size:18})}),i.jsxs("span",{children:[i.jsx("span",{className:"n",style:{display:"block"},children:f.rel.split("/").pop()}),i.jsxs("span",{className:"m",children:[f.rel,f.size!==void 0?` · ${$f(f.size)}`:""]})]})]},f.path))]}):null}function o2(){const l=Ee(),a=l.worklog,r=(a==null?void 0:a.assistantId)??null,u=(a==null?void 0:a.status)??null;return i.jsxs("div",{className:"jdbody",children:[i.jsxs("div",{className:"jd-filters",children:[i.jsxs("select",{className:"pick",value:r??"",onChange:d=>void Id({assistantId:d.target.value||null,status:u}),children:[i.jsx("option",{value:"",children:"全部助手"}),l.assistants.map(d=>i.jsx("option",{value:d.id,children:d.name},d.id))]}),i.jsxs("select",{className:"pick",value:u??"",onChange:d=>void Id({assistantId:r,status:d.target.value||null}),children:[i.jsx("option",{value:"",children:"全部状态"}),Ww.map(d=>i.jsx("option",{value:d,children:Pb[d].text},d))]}),i.jsx("span",{className:"sp"}),a?i.jsxs("span",{className:"dim",children:[a.jobs.length," 个"]}):null]}),a===null?i.jsx("div",{className:"empty",children:"正在读取任务记录…"}):a.jobs.length?i.jsx("div",{className:"jd-rows",children:a.jobs.map(d=>{const f=l.jobs[d.id]??d,h=l.assistants.find(p=>p.id===f.assistantId);return i.jsxs("button",{className:"jd-row",onClick:()=>{h&&ln(f.assistantId,!1,!0,!0),ps(f.id)},children:[h?i.jsx(bt,{sprite:h.sprite,prop:h.prop,size:26}):i.jsx("span",{style:{width:26}}),i.jsx("span",{className:"n",children:f.title}),i.jsx(Lf,{job:f}),i.jsx("span",{className:"tm",children:Ul(f.startedAt??f.createdAt)}),i.jsx("span",{className:"du",children:f.durationMs!==void 0?qc(f.durationMs):zi(f)?Uf(f.startedAt??f.createdAt):""})]},f.id)})}):i.jsx("div",{className:"empty",children:"没有符合条件的任务。"}),a!=null&&a.hasMore?i.jsx("button",{className:"pbtn jd-morebtn",onClick:()=>void fN(),children:a.loading?"正在读取…":"加载更多"}):null]})}function d2(){const l=Ee(),[a,r]=w.useState(""),[u,d]=w.useState(!1);w.useEffect(()=>{if(!l.error)return;d(!0);const h=window.setTimeout(()=>d(!1),260);return()=>window.clearTimeout(h)},[l.error]);const f=()=>{a&&Kj(a)};return i.jsx("div",{className:"login",children:i.jsxs("div",{className:"card",children:[i.jsx(bt,{sprite:"hob",size:88,free:!0,motion:"home"}),i.jsx("div",{className:"nm",children:"Hob"}),i.jsx("div",{className:"ds",children:"请输入密码"}),i.jsx("label",{className:`field${u?" shake":""}`,children:i.jsx("input",{type:"password",autoFocus:!0,value:a,placeholder:"密码",onChange:h=>r(h.target.value),onKeyDown:h=>{h.key==="Enter"&&f()}})}),i.jsx("button",{className:"btn solid",onClick:f,disabled:l.loggingIn,children:l.loggingIn?"正在登录…":"登录"}),l.error?i.jsx("div",{className:"err",style:{width:"100%"},children:l.error}):null]})})}const f2=5,h2=24*3600*1e3;function Ri(l,a){var u;const r=a.trim();return r?l.name.includes(r)||l.duty.includes(r)||(((u=l.last)==null?void 0:u.text)??"").includes(r):!0}function Tx(l,a){var r,u;return(((r=a.last)==null?void 0:r.at)??"").localeCompare(((u=l.last)==null?void 0:u.at)??"")}const Ex=l=>l.status==="running"||l.status==="queued"||l.status==="waiting";function e0(l,a){return(a.startedAt??a.createdAt).localeCompare(l.startedAt??l.createdAt)}function t0(l,a){return(a.endedAt??a.createdAt).localeCompare(l.endedAt??l.createdAt)}function Cx(l){const a=Hf(l.schedules[0]??"");return a.kind==="raw"?1440:a.hour*60+a.minute}function m2(l,a=Date.now()){const r=l.query.trim().length>0,u=new Date(a-h2).toISOString(),d=Object.values(l.jobs),f=l.assistants.filter(T=>T.pinned&&!T.hidden&&Ri(T,l.query)),h=l.assistants.filter(T=>!T.pinned&&!T.hidden&&Ri(T,l.query)).sort(Tx),p=l.assistants.filter(T=>T.hidden&&Ri(T,l.query)).sort(Tx),m=r?[]:Object.values(l.approvals).filter(T=>T.status==="pending").sort((T,k)=>k.createdAt.localeCompare(T.createdAt)),b=r?[]:d.filter(Ex).sort(e0),v=r?[]:d.filter(T=>!Ex(T)&&(T.endedAt??T.createdAt)>u).sort(t0).slice(0,f2),y=r?[]:l.routines.filter(T=>T.active).sort((T,k)=>Cx(T)-Cx(k)),S=!r&&!m.length&&!b.length&&!h.length&&!p.length&&!v.length&&!y.length;return{searching:r,pins:f,rows:h,hidden:p,asks:m,live:b,recent:v,routines:y,empty:S}}function n0(l){let a=l.trim();for(;;){const u=a.replace(/^cd\s+(?:"[^"]*"|'[^']*'|[^\s;&|]+)\s*(?:&&|;)\s*/,"").replace(/^timeout\s+(?:-[ks]\s+\S+\s+|-\S+\s+)*\d+(?:\.\d+)?[smhd]?\s+/,"");if(u===a)break;a=u}const r=p2.exec(a);if(r){let u=r[2];const d=Ax(u);if(d){let[f,h]=d;const p=/^(?:ba)?sh\s+-l?c\s+/.exec(f),m=p?Ax(f.slice(p[0].length)):void 0;m&&(f=m[0]+m[1]),u=f+h}a=`${r[1]}: ${n0(u)}`}return a||l.trim()}const p2=/^ssh\s+(?:-[BbcDEeFIiJLlmOoPpQRSWw]\s*\S+\s+|-[46AaCfGgKkMNnqsTtVvXxYy]+\s+)*([^\s'"-]\S*)\s+(.+)$/s;function Ax(l){const a=/^'([^']*)'?/.exec(l)??/^"((?:[^"\\]|\\.)*)"?/s.exec(l);return a?[l[0]==='"'?a[1].replace(/\\(["\\$`])/g,"$1"):a[1],l.slice(a[0].length)]:void 0}const pa=["off","minimal","low","medium","high","xhigh","max"];function l0(l){return(l==null?void 0:l.thinkingLevels)??["off"]}function $i(l,a){const r=l0(l);if(!l||r.includes(a))return a;const u=pa.indexOf(a);return[...r].reverse().find(d=>pa.indexOf(d)<=u)??"off"}function g2(l,a){const r=a.trim().toLowerCase();return r?l.filter(u=>u.name.toLowerCase().includes(r)||u.ref.toLowerCase().includes(r)):l}function v2(l){const a=[];for(const r of l){let u=a.find(d=>d.provider===r.provider);u||(u={provider:r.provider,models:[]},a.push(u)),u.models.push(r)}return a}const af={queued:"排队中",running:"进行中",waiting:"待确认",done:"已完成",stuck:"受阻",failed:"失败",stopped:"已停止"},x2={读:"读取",跑:"运行",改:"修改",写:"写入",搜:"搜索"};function rf(l){return[x2[l.verb]??l.verb,l.verb==="跑"?n0(l.text):l.text]}function s0({mobile:l=!1}){var m;const a=Ee(),r=a.panel.kind,u=((m=a.assistants.find(b=>b.id===a.sel))==null?void 0:m.name)??"",d=r==="routine"?"定时任务":r==="newRoutine"?"新建定时任务":r==="now"?l?u:"":"助手设置",f=()=>r==="now"?Fd():Nf(),h=w.useRef(!0);w.useEffect(()=>{h.current=!1},[]);const p=r==="routine"?`routine:${a.panel.id}`:r;return i.jsxs("aside",{className:"panel",children:[i.jsxs("div",{className:"phead",children:[r==="now"?l?i.jsx("button",{className:"ib",onClick:Fd,title:"收起",children:i.jsx(Z,{name:"left",size:17})}):null:i.jsx("button",{className:"ib",onClick:f,title:"返回",children:i.jsx(Z,{name:"left",size:17})}),i.jsx("span",{className:"t",children:d}),r==="now"?i.jsx("button",{className:"ib",title:"助手设置",onClick:mb,children:i.jsx(Z,{name:"gear",size:17})}):null,l?null:i.jsx("button",{className:"ib",title:"收起右栏",onClick:pN,children:i.jsx(Z,{name:"dbl",size:17})})]}),i.jsx("div",{className:`pbody${h.current?"":r==="now"?" from-left":" from-right"}`,children:r==="routine"?i.jsx(j2,{id:a.panel.kind==="routine"?a.panel.id:""},a.panel.kind==="routine"?a.panel.id:""):r==="newRoutine"?i.jsx(k2,{}):r==="assistant"?i.jsx(C2,{},a.sel??"hob"):i.jsx(y2,{})},h.current?"first":p)]})}const b2=l=>l.id;function y2(){var k;const l=Ee(),a=Object.values(l.jobs),r=x=>x.assistantId===(l.sel??"hob"),u=x=>!!x&&(x.status==="running"||x.status==="queued"),d=a.filter(x=>r(x)&&u(x)).sort(e0)[0],f=a.filter(x=>r(x)&&!u(x)).sort(t0)[0],h=d??f,p=l.routines.filter(x=>x.assistantId===l.sel),m=Qx(p,b2,l.sel??""),b=((k=l.profiles[l.sel??"hob"])==null?void 0:k.worklog)??[],v=((h==null?void 0:h.activity)??[]).slice(-8),y=v.map(x=>`${x.at}|${x.verb}|${x.text}`),S=w.useRef(null);S.current===null&&(S.current=new Set(y));const T=new Set(y.filter(x=>!S.current.has(x)));return w.useEffect(()=>{for(const x of y)S.current.add(x)}),i.jsxs(i.Fragment,{children:[h?i.jsxs(i.Fragment,{children:[i.jsxs("button",{className:`screen jd-open${d?"":" idle"}`,title:"打开任务详情",onClick:()=>ps(h.id),children:[v.map((x,j)=>x.verb==="$"?i.jsxs("div",{className:T.has(y[j])?"new":void 0,children:[i.jsx("span",{className:"p",children:"$"})," ",x.text]},y[j]):i.jsxs("div",{className:T.has(y[j])?"new":void 0,children:[i.jsx("span",{className:"v",children:rf(x)[0]}),rf(x)[1]]},y[j])),d?i.jsx("div",{children:i.jsx("span",{className:"cur"})}):i.jsxs("div",{className:"end",children:["— ",af[h.status]," —"]})]}),i.jsxs("div",{className:"caprow",children:[i.jsx("button",{className:"cap jd-open",onClick:()=>ps(h.id),children:d?`进行中 · ${h.title}`:`上一个任务 · ${h.title} · ${af[h.status]}`}),i.jsx("button",{className:"more",onClick:()=>yf(l.sel??"hob"),children:"任务记录"})]})]}):i.jsx("div",{className:"slot pslot",children:"分派的任务会显示在这里"}),l.sel==="hob"?Object.values(l.delegations).filter(x=>x.status==="running"||x.status==="waiting").map(x=>{const j=l.assistants.find(E=>E.id===x.to);return i.jsxs("button",{className:"delegation-panel",onClick:()=>void bf("hob",x.id,!1),children:[i.jsx(Z,{name:x.status==="waiting"?"pause":"spin",size:14,className:x.status==="running"?"spin":""}),"交给「",(j==null?void 0:j.name)??x.to,"」 · ",x.status==="waiting"?"等你确认":"进行中"]},x.id)}):null,i.jsxs("div",{className:"sech",children:[i.jsx("span",{children:"定时任务"}),i.jsx("button",{className:"ib",style:{width:18,height:18},title:"新建定时任务",onClick:mN,children:i.jsx(Z,{name:"plus",size:16})})]}),m.length?m.map(x=>i.jsx("div",{className:`rtrow${x.state==="still"?"":` ${x.state}`}`,children:i.jsx("div",{className:"rtclip",children:i.jsxs("button",{className:`rt${x.item.active?"":" paused"}`,onClick:()=>kf(x.key),children:[i.jsx(Z,{name:x.item.active?"clock":"pause",size:17}),i.jsxs("div",{children:[i.jsx("div",{className:"n",children:x.item.name}),i.jsx("div",{className:"s",children:x.item.active?Bf(x.item.schedules[0]??""):"已暂停"})]})]})})},x.key)):i.jsx("div",{className:"empty",children:"这个助手还没有定时任务"}),b.length?i.jsxs("div",{className:"wlgroup",children:[i.jsx("div",{className:"sech",children:i.jsx("span",{children:"工作日志"})}),b.slice(0,6).map((x,j)=>i.jsxs("div",{className:"wl",children:[i.jsx("span",{className:"t",children:Ul(x.at)}),i.jsx("span",{children:ms(x.text)})]},`${x.at}-${j}`))]}):null]})}function a0({value:l,onSave:a,onRemove:r}){const[u,d]=w.useState(!1),f=Hf(l);if(!u)return i.jsxs("button",{className:"w",onClick:()=>d(!0),children:[i.jsx(Z,{name:"clock",size:15}),Bf(l)]});const h=m=>{const b=f.kind==="raw"?{...f,kind:"daily"}:f;a(yw({...b,...m}))},p=`${String(f.hour).padStart(2,"0")}:${String(f.minute).padStart(2,"0")}`;return i.jsxs("div",{className:"w sched-edit",children:[i.jsxs("select",{value:f.kind,onChange:m=>h({kind:m.target.value}),children:[i.jsx("option",{value:"daily",children:"每天"}),i.jsx("option",{value:"weekly",children:"每周"}),i.jsx("option",{value:"monthly",children:"每月"}),i.jsx("option",{value:"raw",children:"自定义"})]}),f.kind==="weekly"?i.jsx("select",{value:f.weekday,onChange:m=>h({weekday:Number(m.target.value)}),children:Lb.map((m,b)=>i.jsxs("option",{value:b,children:["周",m]},b))}):null,f.kind==="monthly"?i.jsx("input",{type:"number",min:1,max:28,value:f.day,onChange:m=>h({day:Number(m.target.value)||1})}):null,f.kind==="raw"?i.jsx("input",{className:"rawcron",value:f.raw,onChange:m=>a(m.target.value)}):i.jsx("input",{type:"time",value:p,onChange:m=>{const[b,v]=m.target.value.split(":").map(Number);h({hour:b||0,minute:v||0})}}),r?i.jsx("button",{className:"pbtn",onClick:r,children:"删除"}):null,i.jsx("button",{className:"pbtn",onClick:()=>d(!1),children:"完成"})]})}function k2(){const l=Ee(),[a,r]=w.useState(""),[u,d]=w.useState(""),[f,h]=w.useState("0 9 * * *"),[p,m]=w.useState(!1),b=a.trim()!==""&&u.trim()!==""&&!p,v=async()=>{m(!0),await iN({assistantId:l.sel??"hob",name:a.trim(),instruction:u.trim(),schedules:[f],active:!0}),m(!1)};return i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"lbl",children:"名称"}),i.jsx("label",{className:"field",children:i.jsx("input",{autoFocus:!0,value:a,placeholder:"如「每日简报」",onChange:y=>r(y.target.value)})}),i.jsx("div",{className:"lbl",children:"任务内容"}),i.jsx("label",{className:"field",children:i.jsx("textarea",{rows:4,value:u,placeholder:"到点后交给后台任务执行的内容,写清楚需要什么结果",onChange:y=>d(y.target.value)})}),i.jsx("div",{className:"lbl",children:"执行时间"}),i.jsx("div",{className:"when",children:i.jsx(a0,{value:f,onSave:h})}),i.jsxs("div",{className:"ctl",children:[i.jsx("span",{className:"sp"}),i.jsx("button",{className:"pbtn",onClick:Nf,children:"取消"}),i.jsx("button",{className:"pbtn solid",disabled:!b,onClick:()=>void v(),children:"创建"})]})]})}function j2({id:l}){const a=Ee(),r=a.routines.find(u=>u.id===l);return r?i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"ctl",children:[i.jsx("button",{className:`tog${r.active?"":" off"}`,title:r.active?"暂停":"启用",onClick:()=>void da(r.id,{active:!r.active})}),i.jsx("span",{style:{fontSize:14},children:"启用"}),i.jsx("span",{className:"sp"}),i.jsx("button",{className:"pbtn solid",onClick:()=>void cN(r.id),children:"立即运行"})]}),i.jsx("div",{className:"lbl",children:"名称"}),i.jsx("label",{className:"field",children:i.jsx("input",{defaultValue:r.name,onBlur:u=>{const d=u.target.value.trim();d&&d!==r.name&&da(r.id,{name:d})}})}),i.jsx("div",{className:"lbl",children:"任务内容"}),i.jsx("label",{className:"field",children:i.jsx("textarea",{rows:4,defaultValue:r.instruction,onBlur:u=>{u.target.value!==r.instruction&&da(r.id,{instruction:u.target.value})}})}),i.jsx("div",{className:"lbl",children:"执行时间"}),i.jsxs("div",{className:"when",children:[r.schedules.map((u,d)=>i.jsx(a0,{value:u,onSave:f=>{const h=r.schedules.slice();h[d]=f,da(r.id,{schedules:h})},onRemove:r.schedules.length>1?()=>void da(r.id,{schedules:r.schedules.filter((f,h)=>h!==d)}):void 0},d)),i.jsxs("button",{className:"w",onClick:()=>void da(r.id,{schedules:[...r.schedules,"0 9 * * *"]}),children:[i.jsx(Z,{name:"plus",size:14}),"添加执行时间"]})]}),i.jsx("div",{className:"lbl",children:"运行记录"}),r.runs.length?r.runs.map(u=>{const d=a.jobs[u.jobId],f=(d==null?void 0:d.status)??u.status,h=f==="running"||f==="queued",p=f==="failed"||f==="stuck";return i.jsxs("button",{className:`run${p?" bad":""}`,onClick:()=>void hN(r.assistantId,u.jobId),children:[i.jsx("span",{children:Ul(u.at)}),i.jsx(Z,{name:h?"spin":p?"close":"check",size:16,className:h?"spin":""})]},u.jobId)}):i.jsx("div",{className:"empty",children:"还没有运行记录"}),i.jsx("div",{style:{marginTop:18},children:i.jsx("button",{className:"pbtn",onClick:async()=>{window.confirm(`删除定时任务「${r.name}」?已有的运行记录会保留在对话里。`)&&(await rN(r.id),Nf())},children:"删除定时任务"})})]}):i.jsx("div",{className:"empty",children:"这个定时任务已不存在。"})}function Yc(l){const[a,r]=w.useState(null),[u,d]=w.useState(!1);return w.useEffect(()=>{if(a!=="已保存")return;const h=setTimeout(()=>r(null),3e3);return()=>clearTimeout(h)},[a]),{save:async h=>{d(!0);const p=await Kd(l,h);return d(!1),r(p??"已保存"),!p},busy:u,message:a,fail:h=>r(h)}}function Gc({message:l}){return l?i.jsx("div",{role:"status",className:l==="已保存"?"okline":"badline",children:l}):null}function Nc({value:l,multiline:a,placeholder:r,save:u}){const[d,f]=w.useState(l);w.useEffect(()=>f(l),[l]);const h={value:d,placeholder:r,onChange:p=>f(p.target.value),onBlur:()=>{d!==l&&u(d).then(p=>{p||f(l)})},onKeyDown:p=>{p.key==="Enter"&&!p.shiftKey&&(p.preventDefault(),p.currentTarget.blur())}};return i.jsx("label",{className:"field",children:a?i.jsx("textarea",{rows:4,...h}):i.jsx("input",{...h})})}function N2({aid:l}){const a=Ee(),r=Yc(l),u=a.profiles[l],[d,f]=w.useState(null);w.useEffect(()=>{gf().then(f)},[]);const h=a.settings.settings.models.roster;if(!u)return null;const p=u.assistant.models??{},m=a.settings.settings.models,b=j=>{var E;return((E=d==null?void 0:d.models.find(A=>A.ref===j))==null?void 0:E.name)??j},v=j=>h.find(E=>E.ref===j),y=j=>void r.save({models:j}),S=j=>E=>{var X;const A={...p};if(E){const J=j==="conversation"?m.conversation.thinking:m.work.thinking;A[j]={ref:E,thinking:$i(d==null?void 0:d.models.find(F=>F.ref===E),((X=v(E))==null?void 0:X.thinking)??J)}}else delete A[j];y(A)},T=p.allowed??[],k=j=>{const E={...p};j.length?E.allowed=j:delete E.allowed,y(E)},x=(j,E)=>{var A;return i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"lbl",children:j}),i.jsx("div",{className:"ctl",children:i.jsxs("select",{className:"pick grow",value:((A=p[E])==null?void 0:A.ref)??"",onChange:X=>S(E)(X.target.value),children:[i.jsxs("option",{value:"",children:["跟随全局(",b(E==="conversation"?m.conversation.ref:m.work.ref),")"]}),h.map(X=>i.jsx("option",{value:X.ref,children:b(X.ref)},X.ref))]})})]})};return i.jsxs(i.Fragment,{children:[i.jsx(Gc,{message:r.message}),x("对话模型","conversation"),x("默认任务模型","work"),i.jsx("div",{className:"lbl",children:"可分派的模型"}),i.jsxs("div",{className:"ctl",children:[i.jsx("button",{className:`pbtn${T.length?"":" solid"}`,onClick:()=>k([]),children:"全部"}),i.jsx("button",{className:`pbtn${T.length?" solid":""}`,onClick:()=>k(h.map(j=>j.ref)),children:"指定"}),i.jsx("span",{className:"note",style:{margin:0},children:T.length?`已选 ${T.length} 个`:`可用模型共 ${h.length} 个`})]}),T.length?i.jsx("div",{className:"chips",style:{marginTop:8},children:h.map(j=>{const E=T.includes(j.ref);return i.jsx("button",{className:`chip${E?" on":""}`,onClick:()=>k(E?T.filter(A=>A!==j.ref):[...T,j.ref]),children:b(j.ref)},j.ref)})}):null]})}function S2({aid:l}){const a=Ee(),r=Yc(l),u=a.profiles[l];if(!u)return null;const d=u.assistant.abilities??{exec:!0,write:!0,image:!0},f=a.settings.settings.image.source!=="off",h=m=>void r.save({abilities:{...d,...m}}),p=(m,b,v,y)=>i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"ctl",children:[i.jsx("span",{style:{fontSize:14},children:m}),i.jsx("span",{className:"sp"}),i.jsx("button",{className:`tog${b?"":" off"}`,title:b?"关闭":"开启",onClick:v})]}),y?i.jsx("div",{className:"note",children:y}):null]});return i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"lbl",children:"能力"}),i.jsx(Gc,{message:r.message}),p("执行命令",d.exec,()=>h({exec:!d.exec}),"开启后,任务可以运行命令,并可通过命令访问网络。"),p("修改文件",d.write,()=>h({write:!d.write}),"开启后,任务可以创建和修改文件。"),f?p("图像生成",d.image,()=>h({image:!d.image}),"开启后,任务可以生成图片,图片以缩略图显示在对话中。"):i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"ctl",style:{marginTop:8},children:[i.jsx("span",{style:{fontSize:14,color:"var(--text3)"},children:"图像生成"}),i.jsx("span",{className:"sp"}),i.jsx("button",{className:"tog off",disabled:!0,title:"需要先在 设置 → 图像生成 中完成配置"})]}),i.jsx("div",{className:"note",children:"需要先在 设置 → 图像生成 中完成配置。"})]}),i.jsx("div",{className:"note",children:"读取文件始终可用。"})]})}function w2({aid:l,sprite:a,prop:r,onDone:u}){const d=Yc(l),f=kb(a)??{prop:"hob",color:"slate"},h=p=>{p!==a&&d.save({sprite:p})};return i.jsxs(i.Fragment,{children:[i.jsx(Gc,{message:d.message}),i.jsxs("div",{className:"sprite-pick",children:[r?i.jsx("button",{className:f.prop==="custom"?"on":void 0,title:"自画道具",onClick:()=>h(Dd(f.color)),children:i.jsx(bt,{sprite:Dd(f.color),prop:r,size:34})}):null,wN.map(p=>i.jsx("button",{className:p===f.prop?"on":void 0,title:gs[p].label,onClick:()=>h(Ud(p,f.color)),children:i.jsx(bt,{sprite:Ud(p,f.color),size:34})},p))]}),i.jsxs("div",{className:"sprite-colors",children:[TN.map(p=>i.jsx("button",{className:p===f.color?"on":void 0,title:ja[p].name,style:{background:ja[p].o},onClick:()=>h(f.prop==="custom"?Dd(p):Ud(f.prop,p))},p)),i.jsx("button",{className:"pbtn",onClick:u,children:"完成"})]})]})}function T2({aid:l,rule:a}){const[r,u]=w.useState(!1),[d,f]=w.useState(a.text),[h,p]=w.useState(!1),[m,b]=w.useState(!1),[v,y]=w.useState(null),S=w.useRef(!1);w.useEffect(()=>{if(v!=="已保存")return;const x=setTimeout(()=>y(null),3e3);return()=>clearTimeout(x)},[v]);const T=async x=>{b(!0);const j=await oN(l,{id:a.id,...x});b(!1),y(j??"已保存"),j||u(!1)},k=()=>{if(S.current){S.current=!1;return}const x=d.trim();if(x===a.text){u(!1);return}if(!x){y("规则内容不能为空。");return}T({text:x})};return i.jsxs("div",{className:"rule-wrap",children:[i.jsxs("div",{className:"rule",children:[r?i.jsx("input",{className:"rule-input",autoFocus:!0,value:d,maxLength:1e3,disabled:m,onChange:x=>f(x.target.value),onBlur:k,onKeyDown:x=>{x.key==="Enter"&&x.currentTarget.blur(),x.key==="Escape"&&(S.current=!0,f(a.text),u(!1))}}):i.jsx("button",{className:"rule-text",onClick:()=>{S.current=!1,f(a.text),u(!0)},disabled:m,title:"编辑规则",children:a.text}),i.jsxs("span",{className:"v",children:[i.jsx("button",{className:"rule-mode",disabled:m,onClick:()=>void T({mode:a.mode==="ask"?"allow":"ask"}),title:"切换确认方式",children:a.mode==="ask"?"需确认":"直接执行"}),i.jsx("button",{className:"del",title:"删除这条规则",disabled:m,onClick:()=>p(!0),children:i.jsx(Z,{name:"close",size:13})})]})]}),h?i.jsxs("div",{className:"rule-confirm",children:[i.jsx("span",{children:"确定删除这条规则?"}),i.jsx("button",{className:"pbtn",onClick:()=>p(!1),children:"取消"}),i.jsx("button",{className:"pbtn danger",onClick:()=>void dN(l,a.id),children:"确认删除"})]}):null,v?i.jsx("div",{className:v==="已保存"?"okline":"badline",role:"status",children:v}):null]})}function E2({aid:l}){const[a,r]=w.useState(!1),[u,d]=w.useState(""),[f,h]=w.useState("ask"),[p,m]=w.useState(!1),[b,v]=w.useState(null);w.useEffect(()=>{if(b!=="已保存")return;const T=setTimeout(()=>v(null),3e3);return()=>clearTimeout(T)},[b]);const y=()=>{r(!1),d(""),h("ask"),v(null)},S=async()=>{if(p||!u.trim())return;m(!0),v(null);const T=await uN(l,u.trim(),f);if(m(!1),T){v(T);return}d(""),h("ask"),r(!1),v("已保存")};return i.jsxs("div",{className:"rule-wrap",children:[a?i.jsxs("form",{className:"rule-new",onSubmit:T=>{T.preventDefault(),S()},onKeyDown:T=>{T.key==="Escape"&&!p&&(T.preventDefault(),y())},children:[i.jsx("input",{className:"rule-input",autoFocus:!0,"aria-label":"规则文字",placeholder:"输入规则内容",maxLength:1e3,value:u,disabled:p,onChange:T=>d(T.target.value)}),i.jsxs("div",{className:"ctl",children:[i.jsxs("select",{className:"pick","aria-label":"规则确认方式",value:f,disabled:p,onChange:T=>h(T.target.value),children:[i.jsx("option",{value:"ask",children:"需确认"}),i.jsx("option",{value:"allow",children:"直接执行"})]}),i.jsx("span",{className:"sp"}),i.jsx("button",{type:"button",className:"pbtn",disabled:p,onClick:y,children:"取消"}),i.jsx("button",{type:"submit",className:"pbtn solid",disabled:p||!u.trim(),children:p?"正在保存…":"保存"})]})]}):i.jsx("button",{className:"rule-add",onClick:()=>{v(null),r(!0)},children:"+ 新增规则"}),b?i.jsx("div",{className:b==="已保存"?"okline":"badline",role:"status",children:b}):null]})}function C2(){const l=Ee(),a=l.sel??"hob",r=l.profiles[a],[u,d]=w.useState(!1),[f,h]=w.useState(!1),p=Yc(a);if(!r)return i.jsx("div",{className:"empty",children:"正在读取档案…"});const m=r.assistant;return i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"pgroup",children:[i.jsx("div",{className:"sech",children:i.jsx("span",{children:"基本信息"})}),i.jsx("div",{className:"bigav",children:i.jsx(bt,{sprite:m.sprite,prop:m.prop,size:96,free:!0,motion:"home",onClick:()=>d(b=>!b),title:"换头像"})}),u?i.jsx(w2,{aid:a,sprite:m.sprite,prop:m.prop,onDone:()=>d(!1)}):null,i.jsx(Gc,{message:p.message}),i.jsx("div",{className:"lbl",children:"名字"}),i.jsx(Nc,{value:m.name,save:b=>b.trim()?p.save({name:b.trim()}):(p.fail("名字不能为空。"),Promise.resolve(!1))}),i.jsx("div",{className:"lbl",children:"职责简介"}),i.jsx(Nc,{value:m.duty,save:b=>p.save({duty:b})}),i.jsx("div",{className:"lbl",children:"详细职责"}),i.jsx(Nc,{multiline:!0,value:m.dutyLong??"",save:b=>p.save({dutyLong:b})}),i.jsx("div",{className:"lbl",children:"补充说明"}),i.jsx(Nc,{multiline:!0,value:m.instructions,placeholder:"这个助手特有的做法,如“周报先列要点再展开”",save:b=>p.save({instructions:b})})]}),i.jsxs("div",{className:"pgroup",children:[i.jsx("div",{className:"sech",children:i.jsx("span",{children:"工作方式"})}),i.jsx("div",{className:"lbl",children:"执行前确认"}),i.jsx("div",{className:"note",children:"标为「需确认」的事项,助手执行前会先征求你的同意。"}),i.jsxs("div",{className:"field",style:{padding:"2px 12px"},children:[r.rules.length?r.rules.map(b=>i.jsx(T2,{aid:a,rule:b},b.id)):i.jsx("div",{className:"empty",children:"还没有需要执行前确认的规则"}),i.jsx(E2,{aid:a},a)]}),i.jsx(N2,{aid:a}),i.jsx(S2,{aid:a})]}),i.jsxs("div",{className:"pgroup",children:[i.jsx("div",{className:"sech",children:i.jsx("span",{children:"显示与通知"})}),i.jsx("div",{className:"lbl",children:"通知"}),i.jsxs("div",{className:"ctl",children:[i.jsx("span",{style:{fontSize:14},children:"需要确认时通知我"}),i.jsx("span",{className:"sp"}),i.jsx("button",{className:`tog${m.notify?"":" off"}`,title:m.notify?"关闭通知":"开启通知",disabled:p.busy,onClick:()=>void p.save({notify:!m.notify})})]}),i.jsx("div",{className:"note",children:"要在手机上接收推送,请先在 设置 → 通知 中开启本机推送。"}),m.primary?null:i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"lbl",children:"位置"}),i.jsxs("div",{className:"ctl",children:[i.jsx("span",{style:{fontSize:14},children:"放在顶部"}),i.jsx("span",{className:"sp"}),i.jsx("button",{className:`tog${m.pinned?"":" off"}`,title:m.pinned?"取消置顶":"放在顶部",disabled:p.busy,onClick:()=>void p.save({pinned:!m.pinned})})]})]}),m.primary?null:i.jsx("div",{className:"mergebar",children:i.jsx("button",{className:"pbtn",onClick:()=>void p.save({hidden:!m.hidden}),children:m.hidden?"放回列表":"收起这个助手"})})]}),m.primary?null:i.jsxs("div",{className:"pgroup",children:[i.jsx("div",{className:"sech",children:i.jsx("span",{children:"危险操作"})}),i.jsx("div",{className:"mergebar",children:f?i.jsxs("div",{className:"mergeconfirm",children:["将「",m.name,"」并回 Hob?它的定时任务和执行前确认规则会转给 Hob,对话记录会保留归档,这个助手会从列表中移除。",i.jsxs("div",{className:"acts",children:[i.jsx("button",{className:"pbtn solid",onClick:()=>void sN(a),children:"确认并回"}),i.jsx("button",{className:"pbtn",onClick:()=>h(!1),children:"取消"})]})]}):i.jsx("button",{className:"pbtn danger",onClick:()=>h(!0),children:"并回 Hob"})})]})]})}function zx(l,a){return a.busy||Object.values(l.jobs).some(r=>r.assistantId===a.id&&["running","queued","waiting"].includes(r.status))||Object.values(l.delegations).some(r=>(r.from===a.id||r.to===a.id)&&["running","waiting"].includes(r.status))}function qf(l){const a=Ee();return!l||!zx(a,l)?{busy:!1,slot:0}:{busy:!0,slot:a.assistants.filter(r=>zx(a,r)).findIndex(r=>r.id===l.id)}}function i0(l,a){const r=Ee();if(Object.values(r.approvals).some(d=>d.status==="pending"&&d.assistantId===l.id))return"ask";const u=Object.values(r.jobs).filter(d=>d.assistantId===l.id&&d.endedAt).sort((d,f)=>(f.endedAt??"").localeCompare(d.endedAt??""))[0];return l.unread>0&&u&&(u.status==="stuck"||u.status==="failed")?"stuck":a?"busy":void 0}function r0({a:l,sel:a,size:r=52}){const u=xb(l),{busy:d,slot:f}=qf(l),h=i0(l,d);return i.jsxs("button",{className:`pin${a?" sel":""}`,...u.handlers,onClick:()=>{u.takeHeld()||ln(l.id)},children:[i.jsx(bt,{sprite:l.sprite,prop:l.prop,size:r,motion:d&&!a?"peek":void 0,slot:f,mark:h}),l.unread>0?i.jsx("span",{className:"badge",children:l.unread>99?"99+":l.unread}):null,i.jsx("div",{className:"nm",children:l.name}),i.jsx("div",{className:"sub",children:l.duty})]})}function c0(l){return l===1?{cls:" n1",size:72}:l===2?{cls:" n2",size:62}:{cls:"",size:52}}function _x({a:l,sel:a,size:r=42,onClick:u}){var m;const d=xb(l),{busy:f,slot:h}=qf(l),p=i0(l,f);return i.jsxs("button",{className:`row${a?" sel":""}`,...d.handlers,onClick:()=>{d.takeHeld()||(u?u():ln(l.id))},children:[i.jsx(bt,{sprite:l.sprite,prop:l.prop,size:r,motion:f&&!a?"peek":void 0,slot:h,mark:p}),i.jsxs("div",{className:"main",children:[i.jsxs("div",{className:"l1",children:[i.jsx("span",{className:"nm",children:l.name}),i.jsx("span",{className:"tm",children:Ec((m=l.last)==null?void 0:m.at)})]}),i.jsx("div",{className:"pv",children:l.last?ms(l.last.text):l.duty})]})]})}function A2(l,a){const r=l.activity.at(-1);return[a==null?void 0:a.name,r?rf(r).join(" "):""].filter(Boolean).join(" · ")}function Ox(l,a){a&&ln(l.assistantId),ps(l.id)}function Mx({job:l,owner:a,time:r,text:u,size:d,onClick:f,moving:h}){return i.jsxs("button",{className:"row job",onClick:f,children:[i.jsx(cf,{owner:a,size:d,moving:h}),i.jsx("span",{className:"nm",children:l.title}),i.jsx("span",{className:"tm",children:r}),i.jsx("span",{className:"pv",children:ms(u)}),i.jsx(Lf,{job:l})]})}function ha({title:l,more:a,children:r}){return i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"gt",children:[i.jsx("span",{children:l}),a]}),r]})}function cf({owner:l,size:a,moving:r}){const{slot:u}=qf(l);return l?i.jsx(bt,{sprite:l.sprite,prop:l.prop,size:a,motion:r?"peek":void 0,slot:u}):i.jsx("span",{style:{width:a,flex:"none"}})}function Rx({title:l,text:a}){return i.jsx(ha,{title:l,children:i.jsx("div",{className:"slot",children:a})})}function u0({size:l=42,markSel:a=!1}){const r=Ee(),[u,d]=w.useState(!0),f=m2(r),h=v=>r.assistants.find(y=>y.id===v),p=!u||f.searching,m=new Set,b=v=>{const y=h(v.assistantId);return!(y!=null&&y.hidden)||p||a&&y.id===r.sel||m.has(y.id)?!1:(m.add(y.id),!0)};return i.jsxs(i.Fragment,{children:[f.asks.length?i.jsx(ha,{title:"待确认",children:f.asks.map(v=>{var y;return i.jsxs("button",{className:"row",onClick:()=>void ln(v.assistantId),children:[i.jsx(cf,{owner:h(v.assistantId),size:l}),i.jsxs("div",{className:"main",children:[i.jsxs("div",{className:"l1",children:[i.jsx("span",{className:"nm",children:v.title}),i.jsx("span",{className:"tm",children:Ec(v.createdAt)})]}),i.jsxs("div",{className:"pv",children:[((y=h(v.assistantId))==null?void 0:y.name)??""," · 等待你的选择"]})]})]},v.id)})}):null,f.live.length?i.jsx(ha,{title:"进行中",children:f.live.map(v=>i.jsx(Mx,{job:v,owner:h(v.assistantId),moving:b(v),time:Uf(v.startedAt??v.createdAt),text:A2(v,h(v.assistantId)),size:l,onClick:()=>Ox(v,h(v.assistantId))},v.id))}):null,f.rows.length||f.hidden.length?i.jsxs(ha,{title:"日常",children:[f.rows.map(v=>i.jsx(_x,{a:v,size:l,sel:a&&v.id===r.sel},v.id)),f.hidden.length&&!f.searching?i.jsxs("button",{className:"fold",onClick:()=>d(v=>!v),children:[i.jsx("span",{children:"收起的助手"}),i.jsxs("span",{children:[f.hidden.length,i.jsx(Z,{name:u?"chev":"down",size:13})]})]}):null,i.jsx("div",{className:`expand${p?" open":""}`,inert:!p,children:i.jsx("div",{children:f.hidden.map(v=>i.jsx(_x,{a:v,size:l,sel:a&&v.id===r.sel},v.id))})})]}):null,f.recent.length?i.jsx(ha,{title:"最近任务",more:i.jsx("button",{className:"more",onClick:()=>yf(),children:"全部"}),children:f.recent.map(v=>i.jsx(Mx,{job:v,owner:h(v.assistantId),time:Ec(v.endedAt??v.createdAt),text:v.summary||v.statusReason||"",size:l,onClick:()=>Ox(v,h(v.assistantId))},v.id))}):null,f.routines.length?i.jsx(ha,{title:"定时任务",children:f.routines.map(v=>{const y=v.runs[0];return i.jsxs("button",{className:"row",onClick:()=>{ln(v.assistantId,!1,!1),kf(v.id)},children:[i.jsx(cf,{owner:h(v.assistantId),size:l}),i.jsxs("div",{className:"main",children:[i.jsxs("div",{className:"l1",children:[i.jsx("span",{className:"nm",children:v.name}),i.jsx("span",{className:"tm",children:Bf(v.schedules[0]??"")})]}),i.jsx("div",{className:"pv",children:y?`上次运行 ${Ec(y.at)} · ${af[y.status]}`:"尚未运行"})]})]},v.id)})}):null,f.empty?i.jsxs(i.Fragment,{children:[i.jsx(Rx,{title:"最近任务",text:"分派的任务会显示在这里"}),i.jsx(Rx,{title:"定时任务",text:"定时任务会显示在这里"})]}):null]})}function z2(){const l=Ee(),a=l.assistants.filter(u=>u.pinned&&!u.hidden&&Ri(u,l.query)),r=c0(a.length);return i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"mhead",children:[i.jsx("button",{className:"me",title:"设置",onClick:jf,children:i.jsx(Z,{name:"user",size:17})}),i.jsx("span",{className:"sp"}),l.search?i.jsxs("div",{className:"msearch",children:[i.jsx(Z,{name:"search",size:15}),i.jsx("input",{autoFocus:!0,value:l.query,placeholder:"搜索助手",onChange:u=>pb(u.target.value)}),i.jsx("button",{onClick:()=>Fv(!1),title:"关闭搜索",children:i.jsx(Z,{name:"close",size:14})})]}):i.jsxs(i.Fragment,{children:[i.jsx("button",{className:"ib",title:"搜索助手",onClick:()=>Fv(!0),children:i.jsx(Z,{name:"search",size:19})}),i.jsx("button",{className:"ib",title:"创建专属助手",onClick:hb,children:i.jsx(Z,{name:"plus",size:21})})]})]}),i.jsx("div",{className:`mpins${r.cls}`,children:a.map(u=>i.jsx(r0,{a:u,size:r.size},u.id))}),i.jsx("div",{className:"mlist",children:i.jsx(u0,{size:36})})]})}function _2({leaving:l}){return i.jsx("div",{className:`mfull${l?" leaving":""}`,children:i.jsx(s0,{mobile:!0})})}const o0={smart:[{value:25,label:"一般"},{value:50,label:"较聪明"},{value:75,label:"很聪明"},{value:100,label:"最聪明"}],cost:[{value:0,label:"免费"},{value:20,label:"很低"},{value:50,label:"中等"},{value:75,label:"较高"},{value:100,label:"特别贵"}],speed:[{value:25,label:"较慢"},{value:50,label:"中等"},{value:75,label:"较快"},{value:100,label:"很快"}]};function Yf(l){const a=`${l.id} ${l.name}`;return/(?:^|[^a-z])mini|haiku|lite/i.test(a)?{smart:40,cost:10,speed:95}:/flash/i.test(a)?{smart:60,cost:20,speed:85}:/gpt[-\s]?[56](?:\D|$)|opus|pro|sol/i.test(a)?{smart:90,cost:80,speed:40}:l.reasoning?{smart:70,cost:50,speed:50}:{smart:50,cost:50,speed:60}}function Dx(l,a){return o0[l].reduce((r,u)=>Math.abs(u.value-a)<Math.abs(r.value-a)?u:r).label}function d0(l){return`聪明 ${l.smart}% · 成本 ${l.cost}% · 速度 ${l.speed}%`}function Gf(l){if(l>=1e6){const a=l/1e6;return`${Number.isInteger(a)?a:a.toFixed(1)}M`}return`${Math.round(l/1e3)}K`}function ht({title:l,desc:a}){return i.jsxs("div",{className:"setintro",children:[i.jsx("div",{className:"h",children:l}),i.jsx("div",{className:"d",children:a})]})}function Ta({items:l,value:a,onChange:r,disabled:u}){return i.jsx("div",{className:"seg",role:"radiogroup",style:{"--seg-count":l.length,"--seg-index":Math.max(0,l.findIndex(d=>d.key===a))},children:l.map(d=>i.jsx("button",{role:"radio","aria-checked":a===d.key,className:a===d.key?"on":void 0,onClick:()=>r(d.key),disabled:u,children:d.label},d.key))})}function Ne({children:l}){return i.jsx("div",{className:"group",children:l})}function ys({saved:l,error:a,children:r}){return i.jsxs("div",{className:"sfoot",children:[l&&!a?i.jsx("span",{className:"okline",children:"已保存"}):null,a?i.jsx("span",{className:"badline",children:a}):null,i.jsx("span",{className:"sp"}),r]})}function ba(){const[l,a]=w.useState(null),[r,u]=w.useState(!1);return w.useEffect(()=>{if(l!=="已保存")return;const f=setTimeout(()=>a(null),3e3);return()=>clearTimeout(f)},[l]),{save:async f=>{u(!0);const h=await pf(f);return u(!1),a(h?"已保存":Dl().notice??"保存失败,请重试。"),h},busy:r,message:l}}function pn({message:l,toast:a=!1}){return l?i.jsx("span",{className:`${l==="已保存"?"okline":"badline"}${a?" savetoast":""}`,role:"status",children:l}):null}function ya({value:l,placeholder:a,multiline:r,onSave:u}){const[d,f]=w.useState(l),[h,p]=w.useState(!1);w.useEffect(()=>f(l),[l]);const m=async()=>{if(h||d===l)return;p(!0);const v=await u(d);p(!1),v||f(l)},b={value:d,placeholder:a,disabled:h,onChange:v=>f(v.target.value),onBlur:()=>void m(),onKeyDown:v=>{v.key==="Enter"&&!v.shiftKey&&(v.preventDefault(),v.currentTarget.blur())}};return i.jsx("div",{className:"field",children:r?i.jsx("textarea",{...b,rows:3}):i.jsx("input",{...b})})}const Ld=[{id:"general",label:"通用"},{id:"providers",label:"服务商"},{id:"models",label:"模型"},{id:"memory",label:"记忆"},{id:"image",label:"图像生成"},{id:"search",label:"联网搜索"},{id:"skills",label:"技能"},{id:"work",label:"任务"},{id:"push",label:"通知"},{id:"about",label:"关于"}],O2=[{key:"system",label:"跟随系统"},{key:"light",label:"浅色"},{key:"dark",label:"深色"}];function M2(){var a;return((a=Intl.supportedValuesOf)==null?void 0:a.call(Intl,"timeZone"))??[]}function R2({narrow:l,leaving:a}){var f,h;const r=Ee(),u=r.section??(l?null:"general"),d=w.useRef(null);return w.useEffect(()=>{var p;(p=d.current)==null||p.scrollTo(0,0)},[u,r.sub]),l&&u===null?i.jsxs("div",{className:`setpage narrow${a?" leaving":""}`,children:[i.jsxs("div",{className:"sethead",children:[i.jsx("button",{className:"ib",title:"返回",onClick:Jd,children:i.jsx(Z,{name:"left",size:17})}),i.jsx("span",{className:"t",children:"设置"})]}),i.jsx("div",{className:"setbody",children:Ld.map(p=>i.jsxs("button",{className:"setitem",onClick:()=>va(p.id),children:[i.jsx("span",{children:p.label}),i.jsx(Z,{name:"chev",size:15})]},p.id))})]}):i.jsxs("div",{className:`setpage${l?" narrow":""}${a?" leaving":""}`,children:[l?i.jsxs("div",{className:"sethead",children:[i.jsx("button",{className:"ib",title:"返回",onClick:r.sub?gn:()=>va(null),children:i.jsx(Z,{name:"left",size:17})}),i.jsx("span",{className:"t",children:((f=r.sub)==null?void 0:f.title)??((h=Ld.find(p=>p.id===u))==null?void 0:h.label)??"设置"})]}):i.jsxs("div",{className:"setnav",children:[i.jsx("div",{className:"setnavtitle",children:"设置"}),Ld.map(p=>i.jsx("button",{className:`navrow${u===p.id?" sel":""}`,onClick:()=>va(p.id),children:p.label},p.id)),i.jsx("span",{className:"sp"}),i.jsx("button",{className:"navrow",onClick:Jd,children:"返回 Hob"})]}),i.jsx("div",{className:"setmain",ref:d,children:u==="providers"?i.jsx(L2,{}):u==="models"?i.jsx(V2,{}):u==="memory"?i.jsx(n3,{}):u==="image"?i.jsx(i3,{}):u==="search"?i.jsx(f3,{}):u==="skills"?i.jsx(u3,{}):u==="work"?i.jsx(F2,{}):u==="push"?i.jsx(P2,{}):u==="about"?i.jsx(m3,{}):i.jsx(D2,{})})]})}function D2(){const l=Ee(),a=l.settings.settings.general.aboutYou,r=ba(),u=ba(),d=ba(),[f,h]=w.useState(null);return w.useEffect(()=>{if(!f)return;const p=setTimeout(()=>h(null),4e3);return()=>clearTimeout(p)},[f]),i.jsxs(i.Fragment,{children:[i.jsx(ht,{title:"通用",desc:"主题、时区、个人信息、登录密码。"}),i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:"主题"}),i.jsx(Ta,{items:O2,value:l.theme,disabled:r.busy,onChange:p=>void r.save({general:{theme:p}})}),i.jsx(pn,{message:r.message})]}),i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:"时区"}),i.jsx(U2,{value:l.settings.settings.general.timezone,onSave:p=>u.save({general:{timezone:p}})}),i.jsx(pn,{message:u.message}),i.jsx("div",{className:"note",children:"助手的「现在时间」和定时任务都按这个时区算。"})]}),i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:"展示页面"}),i.jsx("button",{className:`tog${l.settings.settings.general.showPage===!1?" off":""}`,"aria-label":"展示页面","aria-pressed":l.settings.settings.general.showPage!==!1,disabled:r.busy,onClick:()=>void r.save({general:{showPage:l.settings.settings.general.showPage===!1}})}),i.jsx(pn,{message:r.message}),i.jsx("div",{className:"note",children:"允许助手把适合可视化的内容展示为页面。"})]}),i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:"个人信息"}),i.jsx("div",{className:"lbl sub",children:"称呼"}),i.jsx(ya,{placeholder:"如「王先生」",value:a.name,onSave:p=>d.save({general:{aboutYou:{name:p.trim()}}})}),i.jsx("div",{className:"lbl sub",children:"语言"}),i.jsx(ya,{placeholder:"如「中文」",value:a.language,onSave:p=>d.save({general:{aboutYou:{language:p.trim()}}})}),i.jsx("div",{className:"lbl sub",children:"其他"}),i.jsx(ya,{multiline:!0,placeholder:"如「不要看融资新闻」",value:a.notes,onSave:p=>d.save({general:{aboutYou:{notes:p}}})}),i.jsx(pn,{message:d.message}),i.jsx("div",{className:"note",children:"所有助手都会参考这些信息;未填写的项不使用。"})]}),i.jsx(Ne,{children:i.jsxs("div",{className:"formcard",children:[i.jsx($2,{onDone:h}),f?i.jsx("div",{className:"note",children:f}):null]})})]})}function U2({value:l,onSave:a}){const r=M2(),[u,d]=w.useState(l),[f,h]=w.useState(!1),[p,m]=w.useState(null),b=w.useRef(null);w.useEffect(()=>d(l),[l]),w.useEffect(()=>{if(!f)return;const S=T=>{var k;(k=b.current)!=null&&k.contains(T.target)||h(!1)};return document.addEventListener("mousedown",S),()=>document.removeEventListener("mousedown",S)},[f]);const v=r.filter(S=>S.toLowerCase().includes(u.trim().toLowerCase())).slice(0,40),y=S=>{h(!1),m(null),d(S),S!==l&&a(S).then(T=>{T||d(l)})};return i.jsxs("div",{className:"tz",ref:b,children:[i.jsx("label",{className:"field",children:i.jsx("input",{value:u,placeholder:"搜索时区,如 Berlin",onFocus:()=>h(!0),onKeyDown:S=>{S.key==="Enter"&&(S.preventDefault(),S.currentTarget.blur())},onChange:S=>{d(S.target.value),h(!0)},onBlur:()=>{u.trim()!==l&&(r.includes(u.trim())?y(u.trim()):(d(l),m("时区无效,请从列表中选择。")))}})}),p?i.jsx("div",{className:"badline",role:"status",children:p}):null,f&&v.length?i.jsx("div",{className:"tzlist",children:v.map(S=>i.jsx("button",{className:S===l?"sel":"",onMouseDown:()=>y(S),children:S},S))}):null]})}function $2({onDone:l}){const[a,r]=w.useState(""),[u,d]=w.useState(""),[f,h]=w.useState(""),[p,m]=w.useState(!1),b=async()=>{if(p)return;if(!a||!u){l("请填写旧密码和新密码。");return}if(u!==f){l("两次输入的新密码不一致。");return}m(!0);const v=await Sj(a,u);if(m(!1),v){l(`修改失败:${v}`);return}r(""),d(""),h(""),l("密码已修改。")};return i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"lbl",children:"登录密码"}),i.jsx("div",{className:"field",children:i.jsx("input",{type:"password",placeholder:"旧密码",value:a,onChange:v=>r(v.target.value)})}),i.jsx("div",{className:"field",children:i.jsx("input",{type:"password",placeholder:"新密码",value:u,onChange:v=>d(v.target.value)})}),i.jsx("div",{className:"field",children:i.jsx("input",{type:"password",placeholder:"再次输入新密码",value:f,onChange:v=>h(v.target.value)})}),i.jsxs(ys,{saved:!1,error:null,children:[a||u||f?i.jsx("span",{className:"note",children:"未保存的修改"}):null,i.jsx("button",{className:"pbtn",disabled:p||!(a||u||f),onClick:()=>{r(""),d(""),h(""),l("")},children:"取消"}),i.jsx("button",{className:"pbtn solid",onClick:()=>void b(),disabled:p||!a||!u||!f,children:p?"正在验证…":"保存"})]})]})}function f0({value:l,options:a,label:r,icon:u,onChange:d}){return i.jsxs("span",{className:"ctl",children:[u?i.jsx(Z,{name:u,size:14}):null,i.jsx("select",{className:"pick","aria-label":r,value:l,onChange:f=>d(f.target.value),children:a.map(f=>i.jsx("option",{value:f.value,children:f.text},f.value))})]})}function h0({value:l,model:a,onChange:r}){const u=l0(a);return u.length===1?null:i.jsx(f0,{value:l,label:"思考强度",icon:"bulb",options:u.map(d=>({value:d,text:Tc[d]})),onChange:r})}function Ux({modelRef:l,info:a,disabled:r,onSaved:u}){const[d,f]=w.useState(!1),[h,p]=w.useState(null),[m,b]=w.useState(""),[v,y]=w.useState(!1),[S,T]=w.useState(null),[k,x]=w.useState(!1);w.useEffect(()=>{if(!k)return;const G=setTimeout(()=>x(!1),3e3);return()=>clearTimeout(G)},[k]);const j=h??a.levels,E=pa.filter(G=>!j.some(L=>L.level===G)),A=h!==null,X=G=>{p(G.slice().sort((L,B)=>pa.indexOf(L.level)-pa.indexOf(B.level))),T(null),x(!1)},J=async G=>{y(!0),T(null);const L=await Ej(l,G);if(y(!1),!L.ok){p(null),T(L.error);return}p(null),x(!0),u(L.thinking,L.settings)},F=(G=j)=>{const L={};for(const B of pa){const ae=G.find(ne=>ne.level===B);L[B]=ae?ae.text.trim():null}J(L)};return i.jsxs("div",{className:"think-levels",children:[i.jsxs("button",{className:"thinkhead",onClick:()=>f(G=>!G),disabled:v,children:[i.jsx("span",{className:"lbl sub",children:"思考档"}),i.jsxs("span",{className:"note",children:[j.length," 档",a.custom?" · 有自定义":" · 默认"]}),i.jsx(Z,{name:d?"down":"chev",size:14})]}),i.jsx("div",{className:`expand${d?" open":""}`,inert:!d,children:i.jsxs("div",{children:[i.jsx("div",{className:"thinkrows",children:j.map(G=>i.jsxs("div",{className:"thinkrow",children:[i.jsx("span",{className:"tname",children:Tc[G.level]}),i.jsx("input",{className:"ttext",value:G.text,placeholder:"默认",title:"留空就按服务商协议的默认值发",onChange:L=>X(j.map(B=>B.level===G.level?{...B,text:L.target.value}:B)),onBlur:()=>{A&&F()},onKeyDown:L=>{L.key==="Enter"&&L.currentTarget.blur()},disabled:v||r}),G.level==="off"?i.jsx("span",{className:"rremove still",title:"关闭这一档不能删","aria-hidden":!0}):i.jsx("button",{className:"rremove",title:`删掉「${Tc[G.level]}」`,onClick:()=>F(j.filter(L=>L.level!==G.level)),disabled:v||r,children:i.jsx(Z,{name:"close",size:13})})]},G.level))}),i.jsxs("div",{className:"ctl",style:{gap:8,flexWrap:"wrap",marginTop:10},children:[i.jsxs("select",{className:"pick",value:m,onChange:G=>b(G.target.value),disabled:v||r||!E.length,"aria-label":"添加思考档",children:[i.jsx("option",{value:"",children:E.length?"选择档位":"七个档都用上了"}),E.map(G=>i.jsx("option",{value:G,children:Tc[G]},G))]}),i.jsx("button",{className:"pbtn",onClick:()=>{m&&(F([...j,{level:m,text:""}]),b(""))},disabled:v||r||!m,children:"添加思考档"}),i.jsx("span",{className:"sp"}),a.custom?i.jsx("button",{className:"pbtn",onClick:()=>void J(null),disabled:v||r,children:"恢复默认"}):null]}),i.jsx("div",{className:"note",children:"留空就按服务商协议的默认值发;填了才按你写的发(例如 DeepSeek 的「中」填 high)。 关闭这一档不能删,其余档删掉后不再出现在思考强度里。"}),S?i.jsx("div",{className:"badline",children:S}):null,k?i.jsx("div",{className:"okline",children:"已保存思考档"}):null]})})]})}function m0({info:l}){const a=Gf(l.contextWindow);return i.jsxs("span",{className:"caps",children:[l.input.includes("image")?i.jsx("span",{title:"支持图片输入","aria-label":"支持图片输入",children:i.jsx(Z,{name:"image",size:14})}):null,l.reasoning?i.jsx("span",{title:"支持推理","aria-label":"支持推理",children:i.jsx(Z,{name:"bulb",size:14})}):null,i.jsx("span",{className:"ctx",title:`上下文 ${a}`,children:a})]})}const p0=[{key:"openai-completions",label:"OpenAI 兼容"},{key:"openai-responses",label:"OpenAI Responses 兼容"},{key:"anthropic-messages",label:"Anthropic 兼容"},{key:"google-generative-ai",label:"Google 兼容"}],H2=Object.fromEntries(p0.map(l=>[l.key,l.label])),Sc=128e3,qd=l=>l.toLowerCase().replace(/[^a-z0-9._-]+/g,"-").replace(/^-+|-+$/g,""),B2={literal:"包含 Key",env:"包含 Key",command:"需手动填写",none:"无 Key"};function L2(){const a=Ee().sub,[r,u]=w.useState(null),[d,f]=w.useState(null),[h,p]=w.useState(null),[m,b]=w.useState({}),v=(T,k)=>b(x=>({...x,[T]:k}));if(w.useEffect(()=>{Tj().then(T=>T.ok?u(T.view):f(T.error))},[]),w.useEffect(()=>{a&&p(null)},[a]),w.useEffect(()=>{r&&b(T=>Object.fromEntries(Object.entries(T).filter(([k])=>r.providers.some(x=>x.id===k))))},[r]),d)return i.jsx("div",{className:"note",children:d});if(!r)return i.jsx("div",{className:"empty",children:"正在读取服务商…"});const y=(T,k)=>{k.startsWith("已导入")&&b({}),u(T),p(k),gn()},S=(T,k,x)=>{u(j=>j&&{...j,settings:x,models:{...j.models,[T]:(j.models[T]??[]).map(E=>E.ref===k.ref?k:E)}})};return(a==null?void 0:a.kind)==="provider"?i.jsx(Y2,{id:a.id,view:r,onView:u,onSaved:y,onThinking:S,onConnection:v}):(a==null?void 0:a.kind)==="addProvider"?i.jsx(G2,{view:r,onSaved:y,onConnection:v}):(a==null?void 0:a.kind)==="importProviders"?i.jsx(X2,{onSaved:y}):i.jsx(q2,{view:r,notice:h,connectionStatus:m})}function q2({view:l,notice:a,connectionStatus:r}){const u=f=>{var h;return((h=l.builtin.find(p=>p.id===f))==null?void 0:h.name)??f},d=f=>f.kind==="builtin"?u(f.id):f.name;return i.jsxs(i.Fragment,{children:[i.jsx(ht,{title:"服务商",desc:"模型服务商与 API Key。内置服务商只需填写 API Key;兼容接口需填写服务地址、协议与模型。API Key 只保存在本机,保存后不再显示。"}),i.jsxs(Ne,{children:[i.jsx("div",{className:"ctl",children:i.jsx("button",{className:"pbtn solid",onClick:()=>sl({kind:"addProvider",title:"添加服务商"}),children:"添加服务商"})}),i.jsx("div",{className:"lbl",children:"已配置的服务商"}),i.jsxs("div",{className:"roster",children:[l.providers.map(f=>{var h;return i.jsxs("button",{className:"rrow",onClick:()=>sl({kind:"provider",id:f.id,title:d(f)}),children:[i.jsxs("div",{className:"rmain",children:[i.jsx("div",{className:"rname",children:d(f)}),i.jsx("div",{className:"rprov",children:f.kind==="builtin"?"内置服务商":"兼容接口"})]}),i.jsx("span",{className:f.keyConfigured&&r[f.id]!=="failed"?"note":"badline",children:f.keyConfigured?`${r[f.id]==="connected"?"已连接":r[f.id]==="failed"?"连接失败":"未验证"} · ${((h=l.models[f.id])==null?void 0:h.length)??0} 个模型`:"未填 Key"}),i.jsx(Z,{name:"chev",size:15,className:"rgo"})]},f.id)}),i.jsxs("button",{className:"maddrow",onClick:()=>sl({kind:"importProviders",title:"从本机导入"}),children:[i.jsx(Z,{name:"doc",size:16}),"从本机导入"]})]}),l.providers.length?null:i.jsx("div",{className:"note",children:"尚未配置服务商。请先添加服务商,再选择需要使用的模型。"}),i.jsx("div",{className:"note",children:"从本机导入会只读本机配置并一次性复制到 Hob,不会修改来源。"}),a?i.jsx("div",{className:"okline",children:a}):null]})]})}function Y2({id:l,view:a,onView:r,onSaved:u,onThinking:d,onConnection:f}){const h=a.providers.find(m=>m.id===l);if(w.useEffect(()=>{h||gn()},[h]),!h)return null;const p=h.kind==="builtin"?{kind:"builtin",isNew:!1,id:h.id,key:""}:{kind:"custom",isNew:!1,id:h.id,name:h.name,api:h.api,baseUrl:h.baseUrl,key:"",models:h.models};return i.jsx(g0,{view:a,initial:p,onSaved:u,onView:r,onConnection:f,onThinking:(m,b)=>d(l,m,b),extra:i.jsx(Q2,{view:a,provider:h,onDeleted:m=>{r(m),gn()}})})}function G2({view:l,onSaved:a,onConnection:r}){const[u,d]=w.useState(null),[f,h]=w.useState(null),p=l.builtin.filter(b=>!l.providers.some(v=>v.id===b.id));if(u===null)return i.jsxs(i.Fragment,{children:[i.jsx(Ln,{label:"服务商"}),i.jsx(ht,{title:"添加服务商",desc:"内置服务商只需填写 API Key;兼容接口需填写服务地址、协议与模型。"}),i.jsx(Ne,{children:i.jsxs("div",{className:"mcard",children:[i.jsxs("button",{className:"mrow",onClick:()=>d("builtin"),children:[i.jsxs("span",{className:"mtop",children:[i.jsx("span",{className:"mname",children:"内置服务商"}),i.jsx("span",{className:"sp"}),i.jsx(Z,{name:"chev",size:14})]}),i.jsx("span",{className:"mprev",children:"提供完整的模型目录,填写 API Key 即可。"})]}),i.jsxs("button",{className:"mrow",onClick:()=>d("custom"),children:[i.jsxs("span",{className:"mtop",children:[i.jsx("span",{className:"mname",children:"兼容接口"}),i.jsx("span",{className:"sp"}),i.jsx(Z,{name:"chev",size:14})]}),i.jsx("span",{className:"mprev",children:"填写服务地址、协议与模型;模型列表可从接口获取。"})]})]})})]});if(u==="builtin"&&f===null)return i.jsxs(i.Fragment,{children:[i.jsxs("button",{className:"subback",onClick:()=>d(null),children:[i.jsx(Z,{name:"left",size:15}),"添加服务商"]}),i.jsx(ht,{title:"选择内置服务商",desc:"选择服务商后填写 API Key。"}),i.jsx(Ne,{children:i.jsx("div",{className:"mcard",children:p.length?p.map(b=>i.jsxs("button",{className:"mrow",onClick:()=>h(b.id),children:[i.jsxs("span",{className:"mtop",children:[i.jsx("span",{className:"mname",children:b.name}),i.jsx("span",{className:"sp"}),i.jsx(Z,{name:"chev",size:14})]}),i.jsx("span",{className:"mprev",children:"内置服务商"})]},b.id)):i.jsx("div",{className:"empty",children:"所有内置服务商均已添加。"})})})]});const m=u==="builtin"?{kind:"builtin",isNew:!0,id:f??"",key:""}:{kind:"custom",isNew:!0,id:"",name:"",api:"openai-completions",baseUrl:"",key:"",models:[]};return i.jsx(g0,{view:l,initial:m,onSaved:a,onConnection:r,onThinking:()=>{}})}function X2({onSaved:l}){const[a,r]=w.useState(null),[u,d]=w.useState(new Set),[f,h]=w.useState(!1),[p,m]=w.useState(null);w.useEffect(()=>{zj().then(y=>{if(!y.ok){m(y.error);return}r(y.view),d(new Set(y.view.items.filter(S=>S.selectable&&!S.exists).map(S=>S.id)))})},[]);const b=y=>d(S=>{const T=new Set(S);return T.has(y)?T.delete(y):T.add(y),T}),v=async()=>{if(f||!u.size)return;h(!0),m(null);const y=[...u],S=await _j(y);if(h(!1),!S.ok){m(S.error);return}l(S.view,`已导入 ${y.length} 个服务商`)};return i.jsxs(i.Fragment,{children:[i.jsx(Ln,{label:"服务商"}),i.jsx(ht,{title:"从本机导入",desc:"读取本机其他客户端保存的服务商配置。来源文件只读,导入后 Key 存入 Hob,不再显示。"}),a===null?p?null:i.jsx("div",{className:"empty",children:"正在读取…"}):i.jsxs(Ne,{children:[i.jsxs("div",{className:"sline",children:["来源:",a.source]}),a.items.length?i.jsx("div",{className:"roster",style:{marginTop:8},children:a.items.map(y=>i.jsxs("label",{className:`rrow${y.selectable?"":" gone"}`,children:[i.jsx("input",{type:"checkbox",className:"rcheck",checked:u.has(y.id),disabled:!y.selectable||f,onChange:()=>b(y.id)}),i.jsxs("div",{className:"rmain",children:[i.jsxs("div",{className:"rname",children:[y.id,i.jsxs("span",{className:"rtags",children:[i.jsx("span",{className:"rtag",children:y.kind==="builtin"?"内置服务商":`兼容接口${y.api?` · ${H2[y.api]}`:""}`}),y.models?i.jsxs("span",{className:"rtag",children:[y.models," 个模型"]}):null,y.exists?i.jsx("span",{className:"rtag",children:"将覆盖"}):null]})]}),y.baseUrl?i.jsx("div",{className:"rprov",children:y.baseUrl}):null,i.jsx("div",{className:"rfoot",children:i.jsx("span",{className:y.key==="none"&&!y.note?"rtag bad":"rtag",children:B2[y.key]})}),y.note?i.jsx("div",{className:"note",children:y.note}):null]})]},y.id))}):i.jsx("div",{className:"empty",style:{marginTop:8},children:"未找到可导入的配置。"}),i.jsxs("div",{className:"ctl",style:{gap:8,flexWrap:"wrap",marginTop:10},children:[i.jsx("button",{className:"pbtn solid",onClick:()=>void v(),disabled:f||!u.size,children:f?"正在导入…":"导入所选"}),i.jsx("button",{className:"pbtn",onClick:gn,disabled:f,children:"取消"})]})]}),p?i.jsx("div",{className:"badline",children:p}):null]})}function Q2({view:l,provider:a,onDeleted:r}){var S;const[u,d]=w.useState(!1),[f,h]=w.useState(null),[p,m]=w.useState(!1),b=["conversation","work"].filter(T=>l.settings.settings.models[T].ref.startsWith(`${a.id}/`)),v=a.kind==="builtin"?((S=l.builtin.find(T=>T.id===a.id))==null?void 0:S.name)??a.id:a.name,y=async()=>{if(u)return;d(!0),h(null);const T=await Cj(a.id);if(d(!1),!T.ok){h(T.error);return}r(T.view)};return i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:"危险操作"}),i.jsx("div",{className:"mcard",children:p?i.jsxs("div",{className:"ctl",style:{padding:12,gap:8,flexWrap:"wrap"},children:[i.jsxs("span",{children:["删除「",v,"」后,该服务商的模型将不可用。",b.length?`受影响的默认模型:${b.map(T=>T==="conversation"?"对话":"任务执行").join("、")}。`:"当前默认模型不受影响。"]}),i.jsx("button",{className:"pbtn",onClick:()=>m(!1),disabled:u,children:"取消"}),i.jsx("button",{className:"pbtn danger",onClick:()=>void y(),disabled:u,children:"确认删除"})]}):i.jsx("button",{className:"mline danger",onClick:()=>m(!0),disabled:u,children:"删除服务商"})}),f?i.jsx("div",{className:"badline",children:f}):null]})}function g0({view:l,initial:a,onSaved:r,onView:u,onConnection:d,onThinking:f,extra:h}){var ve,Oe,Me;const p=Ee(),[m,b]=w.useState(a),[v,y]=w.useState(!1),[S,T]=w.useState(null);w.useEffect(()=>{if(!S||S!=="已保存")return;const U=setTimeout(()=>T(null),3e3);return()=>clearTimeout(U)},[S]);const[k,x]=w.useState([]),[j,E]=w.useState(a.isNew||!((ve=l.providers.find(U=>U.id===a.id))!=null&&ve.keyConfigured)),[A,X]=w.useState(null),[J,F]=w.useState(null),[G,L]=w.useState(null),[B,ae]=w.useState(!1),ne=new Set(l.providers.map(U=>U.id)),Se=U=>{var P;return((P=l.builtin.find(ce=>ce.id===U))==null?void 0:P.name)??U},Ze=U=>{var P;return(P=l.models[m.id])==null?void 0:P.find(ce=>ce.id===U)},fe=U=>b(P=>({...P,...U})),Ve=m.isNew||JSON.stringify(m)!==JSON.stringify(a),Ue=m.kind==="builtin"?{kind:"builtin",id:m.id,...m.key.trim()?{apiKey:m.key.trim()}:{}}:{kind:"custom",...m.id?{id:m.id}:{},api:m.api,baseUrl:m.baseUrl.trim(),...m.key.trim()?{apiKey:m.key.trim()}:{}},W=JSON.stringify(Ue),he=async()=>{if(B)return;ae(!0),L(null),F(null);const U=await Uv(Ue);if(ae(!1),!Ve&&m.id&&d(m.id,U?"failed":"connected"),U){X(null),L(U);return}X(W),F("连接成功")},de=U=>{const P=`${m.id}/${U.id}`,ce=p.settings.settings.models,yt=ce.roster.some(mt=>mt.ref===P),Ct=ce.conversation.ref===P||ce.work.ref===P;return i.jsxs("label",{className:"ctl",children:[i.jsx("input",{type:"checkbox",checked:yt,disabled:m.isNew||!Ze(U.id)||v||B||Ct,onChange:()=>{const mt=yt?ce.roster.filter(tt=>tt.ref!==P):[...ce.roster,{ref:P,note:"",scores:Yf({id:U.id,name:U.name??U.id,reasoning:!!U.reasoning}),scoresConfirmed:!1}];y(!0),T(null),pf({models:{roster:mt}}).then(tt=>{y(!1),T(tt?"已保存":"保存失败,请重试。")})}}),i.jsx("span",{children:Ct?"默认模型已加入":"加入可用模型"})]})},$e=async()=>{if(m.kind!=="custom"||B)return;ae(!0),L(null);const U=await Aj({api:m.api,baseUrl:m.baseUrl.trim(),...m.key.trim()?{apiKey:m.key.trim()}:{},...m.id?{id:m.id}:{}});if(ae(!1),!U.ok){L(U.error),x([]);return}x(U.models)},we=async U=>{if(m.kind!=="custom")return;if(m.isNew){fe({models:U});return}const P=l.providers.find(tt=>tt.id===m.id);if(!P||P.kind!=="custom")return;ae(!0),L(null);const{id:ce,keyConfigured:yt,...Ct}=P,mt=await Dv(ce,{...Ct,models:U});if(ae(!1),!mt.ok){L(mt.error);return}fe({models:U}),u==null||u(mt.view),T("已保存")},zt=U=>{if(m.kind!=="custom")return;const P=m.models.some(ce=>ce.id===U.id);we(P?m.models.filter(ce=>ce.id!==U.id):[...m.models,{id:U.id,...U.name?{name:U.name}:{}}])},Gt=U=>{if(m.kind!=="custom")return;const P=U.trim();!P||m.models.some(ce=>ce.id===P)||we([...m.models,{id:P}])},Xt=(U,P)=>{m.kind==="custom"&&we(m.models.map(ce=>ce.id===U?{...ce,...P}:ce))},_=U=>{const P=l.models[U]??[];return P.length?i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"lbl",children:"模型"}),i.jsx("div",{className:"roster",children:P.map(ce=>{var yt;return i.jsx("div",{className:"rrow",children:i.jsxs("div",{className:"rmain",children:[i.jsxs("div",{className:"rname",children:[ce.name,i.jsx("span",{className:"rtags",children:i.jsx("span",{className:"rtag mono",children:ce.id})})]}),i.jsxs("div",{className:"caps",children:[(yt=ce.input)!=null&&yt.includes("image")?i.jsx("span",{title:"支持图片输入","aria-label":"支持图片输入",children:i.jsx(Z,{name:"image",size:14})}):null,ce.reasoning?i.jsx("span",{title:"支持推理","aria-label":"支持推理",children:i.jsx(Z,{name:"bulb",size:14})}):null,ce.contextWindow?i.jsx("span",{className:"ctx",children:Gf(ce.contextWindow)}):null]}),de(ce),ce.reasoning?i.jsx(Ux,{modelRef:ce.ref,info:ce,disabled:B,onSaved:f}):i.jsx("div",{className:"note",children:"不推理,没有思考档。"})]})},ce.id)})}),i.jsx("div",{className:"note",children:"模型由服务商提供。会推理的模型可以改每个思考档发给服务商的字符。"})]}):null},V=async()=>{if(B)return;ae(!0),L(null);const U=l.providers.find(Ct=>Ct.id===m.id),P=m.kind==="builtin"?{kind:"builtin",...m.key.trim()?{key:m.key.trim()}:{}}:{kind:"custom",name:m.name.trim(),api:m.api,baseUrl:m.baseUrl.trim(),models:m.models,...(U==null?void 0:U.kind)==="custom"&&U.extra?{extra:U.extra}:{},...m.key.trim()?{key:m.key.trim()}:{}},ce=m.kind==="custom"&&m.isNew?m.id.trim()||qd(m.name):m.id;if(!ce){ae(!1),L("保存失败:请填写标识。模型引用使用该标识,只能包含小写字母、数字、点和短横线,例如 my-proxy。");return}if(m.isNew&&ne.has(ce)){ae(!1),L("该服务商标识已存在,请使用其他标识。");return}if(A!==W){F("正在验证连接…");const Ct=await Uv(Ue);if(F(null),Ct){ae(!1),L(`测试连接失败:${Ct}`);return}}const yt=await Dv(ce,P);if(ae(!1),!yt.ok){L(yt.error);return}d(ce,"connected"),r(yt.view,"已保存")},K=m.kind==="builtin"?m.isNew?"添加内置服务商":Se(m.id):m.isNew?"添加兼容接口":m.name||"兼容接口",te=m.kind==="builtin"?m.id:m.id||qd(m.name);return i.jsxs(i.Fragment,{children:[i.jsx(Ln,{label:"服务商"}),i.jsx(ht,{title:K,desc:te?i.jsx("span",{className:"mono",children:te}):null}),m.kind==="builtin"?i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:"连接"}),i.jsxs("div",{className:"formcard",children:[i.jsx("div",{className:"lbl sub",children:"服务商"}),i.jsx("div",{className:"ctl",children:i.jsx("select",{className:"pick grow",value:m.id,onChange:U=>fe({id:U.target.value}),disabled:!0,children:l.builtin.filter(U=>!m.isNew||!ne.has(U.id)).map(U=>i.jsxs("option",{value:U.id,children:[U.name,ne.has(U.id)?"(已配置)":""]},U.id))})}),i.jsx("div",{className:"lbl sub",children:"API Key"}),j?i.jsx("div",{className:"field",children:i.jsx("input",{type:"password",value:m.key,placeholder:(Oe=l.providers.find(U=>U.id===m.id))!=null&&Oe.keyConfigured?"已保存,留空则沿用":"sk-…",onChange:U=>fe({key:U.target.value}),disabled:B})}):i.jsxs("div",{className:"ctl",children:[i.jsx("span",{className:"note",children:"已保存"}),i.jsx("button",{className:"pbtn",onClick:()=>E(!0),children:"更换"})]}),i.jsxs("div",{className:"ctl",children:[i.jsx("button",{className:"pbtn",disabled:B,onClick:()=>void he(),children:"测试连接"}),i.jsx("span",{className:"note",children:"测试会请求模型,可能产生费用。"}),J&&A===W?i.jsx("span",{className:"okline",children:J}):null]}),i.jsx($x,{busy:B,error:G,dirty:Ve,onCancel:gn,onSave:()=>void V()})]})]}):i.jsxs(i.Fragment,{children:[i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:"连接"}),i.jsxs("div",{className:"formcard",children:[i.jsx("div",{className:"lbl sub",children:"名称"}),i.jsx("div",{className:"field",children:i.jsx("input",{value:m.name,placeholder:"如「我的代理」",onChange:U=>fe({name:U.target.value}),disabled:B})}),m.isNew?i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"lbl sub",children:"标识"}),i.jsx("div",{className:"field",children:i.jsx("input",{value:m.id,placeholder:qd(m.name)||"my-proxy",onChange:U=>fe({id:U.target.value}),disabled:B})}),i.jsx("div",{className:"note",children:"模型引用使用该标识,例如 my-proxy/gpt-x。留空则按名称自动生成。"})]}):i.jsxs("div",{className:"note mono",children:["标识:",m.id]}),i.jsx("div",{className:"lbl sub",children:"协议"}),i.jsx("div",{className:"ctl",children:i.jsx("select",{className:"pick grow",value:m.api,onChange:U=>fe({api:U.target.value}),disabled:B,children:p0.map(U=>i.jsx("option",{value:U.key,children:U.label},U.key))})}),i.jsx("div",{className:"lbl sub",children:"服务地址"}),i.jsx("div",{className:"field",children:i.jsx("input",{value:m.baseUrl,placeholder:"http://127.0.0.1:8080/v1",onChange:U=>fe({baseUrl:U.target.value}),disabled:B})}),i.jsx("div",{className:"lbl sub",children:"API Key"}),j?i.jsx("div",{className:"field",children:i.jsx("input",{type:"password",value:m.key,placeholder:(Me=l.providers.find(U=>U.id===m.id))!=null&&Me.keyConfigured?"已保存,留空则沿用":"sk-…",onChange:U=>fe({key:U.target.value}),disabled:B})}):i.jsxs("div",{className:"ctl",children:[i.jsx("span",{className:"note",children:"已保存"}),i.jsx("button",{className:"pbtn",onClick:()=>E(!0),children:"更换"})]}),i.jsxs("div",{className:"ctl",style:{gap:8,flexWrap:"wrap"},children:[i.jsx("button",{className:"pbtn",disabled:B||!m.baseUrl.trim(),onClick:()=>void he(),children:"测试连接"}),J&&A===W?i.jsx("span",{className:"okline",children:J}):null,i.jsx("button",{className:"pbtn",onClick:()=>void $e(),disabled:B||!m.baseUrl.trim(),children:B?"正在获取…":"获取模型列表"}),i.jsx("span",{className:"note",children:"从接口获取模型列表,选择需要使用的模型。"})]}),i.jsx($x,{busy:B,error:G,dirty:Ve,onCancel:gn,onSave:()=>void V()})]})]}),k.length?i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:"接口上的模型"}),i.jsx("div",{className:"chips",children:k.map(U=>{const P=m.models.some(ce=>ce.id===U.id);return i.jsx("button",{className:`chip${P?" on":""}`,onClick:()=>zt(U),disabled:B,children:U.name??U.id},U.id)})}),i.jsx("div",{className:"note",children:"点击添加或移除,添加后可在下方修改模型能力。"})]}):null,i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:"模型"}),m.models.length?i.jsx("div",{className:"roster",children:m.models.map(U=>{var P;return i.jsxs("div",{className:"rrow",children:[i.jsxs("div",{className:"rmain",children:[i.jsx("div",{className:"rname mono",children:U.id}),i.jsxs("div",{className:"rfoot",children:[i.jsx("button",{className:`chip${(P=U.input)!=null&&P.includes("image")?" on":""}`,onClick:()=>{var ce;return Xt(U.id,{input:(ce=U.input)!=null&&ce.includes("image")?["text"]:["text","image"]})},disabled:B,children:"支持图片输入"}),i.jsx("button",{className:`chip${U.reasoning?" on":""}`,onClick:()=>Xt(U.id,{reasoning:!U.reasoning}),disabled:B,children:"支持推理"}),i.jsx("span",{className:"rtag",children:"上下文"}),i.jsx("input",{className:"pmctx",type:"number",min:1,defaultValue:U.contextWindow??Sc,title:"上下文窗口(token)",onBlur:ce=>{const yt=Number(ce.target.value)||Sc;yt!==(U.contextWindow??Sc)&&Xt(U.id,{contextWindow:yt})},onKeyDown:ce=>{ce.key==="Enter"&&ce.currentTarget.blur()},disabled:B},`${U.id}:${U.contextWindow??Sc}`)]}),de(U),U.reasoning?Ze(U.id)?i.jsx(Ux,{modelRef:`${m.id}/${U.id}`,info:Ze(U.id),disabled:B,onSaved:f}):i.jsx("div",{className:"note",children:"保存服务商后可以设置思考档。"}):null]}),i.jsx("button",{className:"rremove",title:"移除该模型",disabled:B,onClick:()=>void we(m.models.filter(ce=>ce.id!==U.id)),children:i.jsx(Z,{name:"close",size:13})})]},U.id)})}):i.jsx("div",{className:"empty",children:"尚未添加模型。可获取模型列表后勾选,或手动填写模型 ID。"}),i.jsx(Z2,{disabled:B,onAdd:Gt})]})]}),m.kind==="builtin"&&!m.isNew?i.jsx(Ne,{children:_(m.id)}):null,S?i.jsx("div",{className:S==="已保存"?"okline":"badline",role:"status",children:S}):null,h]})}function Z2({disabled:l,onAdd:a}){const[r,u]=w.useState(""),d=()=>{r.trim()&&(a(r),u(""))};return i.jsxs("div",{className:"ctl",style:{gap:8,marginTop:10},children:[i.jsx("div",{className:"field",style:{flex:1},children:i.jsx("input",{value:r,placeholder:"手动填写模型 ID,如 gpt-4o-mini",onChange:f=>u(f.target.value),onKeyDown:f=>{f.key==="Enter"&&d()},disabled:l})}),i.jsx("button",{className:"pbtn",onClick:d,disabled:l||!r.trim(),children:"添加"})]})}function $x({busy:l,error:a,dirty:r,onCancel:u,onSave:d}){return i.jsxs(ys,{saved:!1,error:a,children:[!a&&r?i.jsx("span",{className:"note",children:"未保存的修改"}):null,i.jsx("button",{className:"pbtn",onClick:u,disabled:l,children:"取消"}),i.jsx("button",{className:"pbtn solid",onClick:d,disabled:l||!r,children:l?"正在验证…":"保存"})]})}function V2(){var u,d;const l=Ee(),[a,r]=w.useState(null);return w.useEffect(()=>{gf().then(r)},[]),a?((u=l.sub)==null?void 0:u.kind)==="model"?i.jsx(I2,{view:a,modelRef:l.sub.ref}):((d=l.sub)==null?void 0:d.kind)==="addModels"?i.jsx(J2,{view:a}):i.jsx(K2,{view:a}):i.jsx("div",{className:"empty",children:"正在读取模型列表…"})}function uf(l,a){return{scores:l.scores??Yf(a??{id:l.ref.split("/").at(-1)??l.ref,name:"",reasoning:!1}),unconfirmed:!l.scores||l.scoresConfirmed!==!0}}function v0({entry:l,info:a,update:r,collapsible:u=!1}){const d=uf(l,a),[f,h]=w.useState(!u||d.unconfirmed),[p,m]=w.useState(d.scores),[b,v]=w.useState(l.note),y=w.useRef(!1),S=w.useRef(p);S.current=p,w.useEffect(()=>{y.current||m(uf(l,a).scores)},[l.scores,a]),w.useEffect(()=>v(l.note),[l.note]);const T=j=>r({scores:j,scoresConfirmed:!0}),k=()=>{if(!y.current)return;y.current=!1;const j=l.scores,E=S.current;(!j||l.scoresConfirmed!==!0||j.smart!==E.smart||j.cost!==E.cost||j.speed!==E.speed)&&T(E)};if(!f)return i.jsxs("div",{className:"ctl",children:[i.jsx("span",{className:"note",children:d0(l.scores??p)}),i.jsx("button",{className:"pbtn",onClick:()=>h(!0),children:"修改"})]});const x={smart:"聪明程度",cost:"成本",speed:"速度"};return i.jsxs("div",{className:"group",children:[i.jsxs("div",{className:"note",children:["Hob 按用途选择分派任务的模型。",d.unconfirmed?"数值按模型名称推测,请确认。":""]}),Object.keys(x).map(j=>i.jsxs("div",{className:"score-row",children:[i.jsxs("div",{className:"score-head",children:[i.jsx("label",{htmlFor:`${l.ref}-${j}`,children:x[j]}),i.jsxs("span",{children:[Dx(j,p[j])," · ",p[j],"%"]})]}),i.jsx("input",{id:`${l.ref}-${j}`,className:"score-range",type:"range",min:"0",max:"100",step:"5",value:p[j],onChange:E=>{y.current=!0,m({...S.current,[j]:Number(E.target.value)})},onPointerUp:k,onTouchEnd:k,onKeyUp:k,onBlur:k}),i.jsx("div",{className:"score-ticks",children:o0[j].map(E=>i.jsx("button",{style:{left:`${E.value}%`},className:E.value===0?"first":E.value===100?"last":void 0,"aria-pressed":E.label===Dx(j,p[j]),onClick:()=>{const A={...S.current,[j]:E.value};m(A),T(A)},children:E.label},E.value))})]},j)),i.jsx("div",{className:"field",children:i.jsx("input",{value:b,onChange:j=>v(j.target.value),onBlur:()=>{b!==l.note&&r({note:b})},onKeyDown:j=>{j.key==="Enter"&&j.currentTarget.blur()},placeholder:"补充说明(选填),如「中文写作特别好」"})}),u?i.jsx("div",{className:"ctl",children:i.jsx("button",{className:"pbtn",onClick:()=>h(!1),children:"收起"})}):null]})}function Xf(){const a=Ee().settings.settings.models,r=ba(),u=p=>void r.save({models:p});return{models:a,save:u,setRoster:p=>u({roster:p}),update:(p,m)=>void r.save(b=>({models:{roster:b.models.roster.map(v=>v.ref===p?{...v,...m}:v)}})),roles:p=>[a.conversation.ref===p?"对话":null,a.work.ref===p?"任务执行":null].filter(m=>m!==null),feedback:r}}function Ln({label:l="模型"}){return i.jsxs("button",{className:"subback",onClick:gn,children:[i.jsx(Z,{name:"left",size:15}),l]})}function K2({view:l}){const{models:a,save:r,roles:u,feedback:d}=Xf(),f=new Map(l.models.map(m=>[m.ref,m])),h=m=>[...a.roster.length?[]:[{value:"",text:"未设置"}],...a.roster.filter(b=>f.has(b.ref)||b.ref===m).map(b=>{var v;return{value:b.ref,text:((v=f.get(b.ref))==null?void 0:v.name)??b.ref}})],p=(m,b,v)=>i.jsxs("div",{className:"mline",children:[i.jsx("span",{className:"k",children:b}),i.jsxs("span",{className:"vals",children:[i.jsx(f0,{value:a[m].ref,label:v,options:h(a[m].ref),onChange:y=>r({[m]:{ref:y,thinking:$i(f.get(y),a[m].thinking)}})}),i.jsx(h0,{value:$i(f.get(a[m].ref),a[m].thinking),model:f.get(a[m].ref),onChange:y=>r({[m]:{...a[m],thinking:y}})})]})]});return i.jsxs(i.Fragment,{children:[i.jsx(ht,{title:"模型",desc:"可用模型来自「服务商」,默认模型从可用模型中选择。"}),i.jsx(pn,{message:d.message,toast:!0}),i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:"默认模型"}),i.jsxs("div",{className:"mcard",children:[p("conversation","对话","对话模型"),p("work","任务执行","默认任务模型")]}),i.jsx("div",{className:"note",children:"助手分派任务时未指定模型,使用任务执行的模型。"}),i.jsx("div",{className:"lbl",children:"任务的思考档"}),i.jsx(Ta,{items:[{key:"auto",label:"助手按任务选择"},{key:"fixed",label:"固定使用默认档"}],value:a.thinkingChoice??"auto",disabled:d.busy,onChange:m=>r({thinkingChoice:m})}),i.jsx("div",{className:"note",children:"按任务选择时,助手会给简单的活用低档、复杂的活用高档;固定时一律使用上面设置的默认档。"})]}),i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:"可用模型"}),i.jsxs("div",{className:"mcard",children:[a.roster.map(m=>{const b=f.get(m.ref),v=(b==null?void 0:b.name)??m.ref,y=uf(m,b);return i.jsxs("button",{className:`mrow${b?"":" gone"}`,onClick:()=>sl({kind:"model",ref:m.ref,title:v}),children:[i.jsxs("span",{className:"mtop",children:[i.jsx("span",{className:"mname",children:v}),i.jsx("span",{className:"sp"}),b?i.jsx(m0,{info:b}):i.jsx("span",{className:"mbad",children:"不可用"}),i.jsx(Z,{name:"chev",size:14})]}),i.jsxs("span",{className:"mprev",children:[u(m.ref).map(S=>i.jsx("span",{className:"mrole",children:S},S)),d0(y.scores),y.unconfirmed?i.jsx("span",{className:"model-use-warning",children:"请确认用途"}):null,b?null:" · 该模型的服务商已删除或未配置 Key"]})]},m.ref)}),i.jsxs("button",{className:"maddrow",onClick:()=>sl({kind:"addModels",title:"添加模型"}),children:[i.jsx(Z,{name:"plus",size:16}),"添加模型"]})]}),i.jsx("div",{className:"note",children:"助手分派任务时,按用途说明在可用模型中选择。"})]})]})}function I2({view:l,modelRef:a}){const{models:r,setRoster:u,update:d,roles:f,feedback:h}=Xf(),[p,m]=w.useState(!1),b=r.roster.find(S=>S.ref===a);if(w.useEffect(()=>{b||gn()},[b]),!b)return null;const v=l.models.find(S=>S.ref===a),y=f(a);return i.jsxs(i.Fragment,{children:[i.jsx(Ln,{}),i.jsx(ht,{title:(v==null?void 0:v.name)??a,desc:i.jsx("span",{className:"mono",children:a})}),i.jsx(pn,{message:h.message,toast:!0}),i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:"用途说明"}),i.jsx(v0,{entry:b,info:v,update:S=>d(a,S)})]}),v!=null&&v.reasoning?i.jsxs(Ne,{children:[i.jsx("div",{className:"mcard",children:i.jsxs("div",{className:"mline",children:[i.jsx("span",{className:"k",children:"分派时的思考强度"}),i.jsx(h0,{value:$i(v,b.thinking??r.work.thinking),model:v,onChange:S=>d(a,{thinking:S})})]})}),i.jsx("div",{className:"note",children:"助手把任务分派给这个模型时使用。作为默认模型时,以「默认模型」中的设置为准。"})]}):null,i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:"信息"}),i.jsxs("div",{className:"kvcard",children:[i.jsxs("div",{className:"kvrow",children:[i.jsx("span",{className:"k",children:"服务商"}),i.jsx("span",{className:"v",children:(v==null?void 0:v.provider)??"不可用"})]}),v?i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"kvrow",children:[i.jsxs("span",{className:"k kicon",children:[i.jsx(Z,{name:"image",size:14}),"图片输入"]}),i.jsx("span",{className:"v",children:v.input.includes("image")?"支持":"不支持"})]}),i.jsxs("div",{className:"kvrow",children:[i.jsxs("span",{className:"k kicon",children:[i.jsx(Z,{name:"bulb",size:14}),"推理"]}),i.jsx("span",{className:"v",children:v.reasoning?"支持":"不支持"})]}),i.jsxs("div",{className:"kvrow",children:[i.jsx("span",{className:"k",children:"上下文"}),i.jsx("span",{className:"v",children:Gf(v.contextWindow)})]})]}):null]})]}),i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:"危险操作"}),i.jsx("div",{className:"mcard",children:p?i.jsxs("div",{className:"ctl",style:{flexWrap:"wrap",padding:12},children:[i.jsx("span",{children:"确定从可用模型中移除?"}),i.jsx("button",{className:"pbtn",onClick:()=>m(!1),children:"取消"}),i.jsx("button",{className:"pbtn danger",onClick:()=>u(r.roster.filter(S=>S.ref!==a)),children:"确认移除"})]}):i.jsx("button",{className:"mline danger",disabled:y.length>0,onClick:()=>m(!0),children:"从可用模型中移除"})}),y.length?i.jsxs("div",{className:"note",children:["这是",y.join("和"),"的默认模型。要移除,请先在「默认模型」中更换。"]}):null]})]})}function J2({view:l}){const{models:a,setRoster:r,roles:u,update:d,feedback:f}=Xf(),[h,p]=w.useState(""),m=new Set(a.roster.map(x=>x.ref)),[b,v]=w.useState(()=>[...new Set(l.models.filter(x=>m.has(x.ref)).map(x=>x.provider))]),y=v2(g2(l.models,h)),S=h.trim().length>0,T=x=>v(j=>j.includes(x)?j.filter(E=>E!==x):[...j,x]),k=x=>r(m.has(x.ref)?a.roster.filter(j=>j.ref!==x.ref):[...a.roster,{ref:x.ref,scores:Yf(x),note:"",scoresConfirmed:!1,...x.reasoning?{thinking:$i(x,"medium")}:{}}]);return i.jsxs(i.Fragment,{children:[i.jsx(Ln,{}),i.jsx(ht,{title:"添加模型",desc:"「服务商」提供的全部模型,打勾的已在可用模型中。"}),i.jsx(pn,{message:f.message,toast:!0}),l.models.length===0?i.jsxs(Ne,{children:[i.jsx("div",{className:"empty",children:"尚无可用模型。请先在「服务商」中配置服务商并填写 API Key。"}),i.jsx("div",{className:"ctl",children:i.jsx("button",{className:"pbtn",onClick:()=>va("providers"),children:"配置服务商"})})]}):i.jsxs("div",{className:"mcard",children:[i.jsxs("label",{className:"mfind",children:[i.jsx(Z,{name:"search",size:15}),i.jsx("input",{value:h,placeholder:"搜索名称或引用,如 claude",onChange:x=>p(x.target.value)})]}),y.length===0?i.jsx("div",{className:"mempty",children:"没有匹配的模型。"}):y.map(x=>{const j=S||b.includes(x.provider),E=x.models.filter(A=>m.has(A.ref)).length;return i.jsxs(w.Fragment,{children:[i.jsxs("button",{className:"mgroup","aria-expanded":j,onClick:()=>T(x.provider),children:[i.jsx("span",{className:"n",children:x.provider}),i.jsx("span",{className:"c",children:E?`已加入 ${E} / ${x.models.length}`:x.models.length}),i.jsx(Z,{name:j?"down":"chev",size:14})]}),j?x.models.map(A=>{const X=m.has(A.ref),J=u(A.ref).length>0,F=a.roster.find(G=>G.ref===A.ref);return i.jsxs("div",{children:[i.jsxs("button",{className:`madd${X?" on":""}`,disabled:J,title:J?"默认模型不能在这里移除":X?"从可用模型中移除":"加入可用模型",onClick:()=>k(A),children:[i.jsx("span",{className:"mname",children:A.name}),i.jsx(m0,{info:A}),i.jsx(Z,{name:X?"check":"plus",size:16,className:"mtog"})]}),F?i.jsx("div",{className:"model-use-inline",children:i.jsx(v0,{entry:F,info:A,collapsible:!0,update:G=>d(A.ref,G)})}):null]},A.ref)}):null]},x.provider)})]})]})}function F2(){const a=Ee().settings.settings.work,r=ba(),u=d=>r.save({work:d});return i.jsxs(i.Fragment,{children:[i.jsx(ht,{title:"任务",desc:"任务并行数、无响应判定时间,以及全部任务的任务记录。"}),i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:"最大并行任务数"}),i.jsx("div",{className:"ctl",children:i.jsx("select",{className:"pick",value:a.maxJobs,disabled:r.busy,onChange:d=>void u({maxJobs:Number(d.target.value)}),children:[1,2,3,4,5,6,7,8].map(d=>i.jsx("option",{value:d,children:d},d))})}),i.jsx("div",{className:"note",children:"同时运行的最大任务数,超出后排队。"}),i.jsx(pn,{message:r.message})]}),i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:"无响应判定时间"}),i.jsx("div",{className:"lbl sub",children:"任务"}),i.jsxs("div",{className:"ctl",children:[i.jsx(ya,{value:String(a.jobStallMinutes),onSave:d=>u({jobStallMinutes:Number(d)})}),i.jsx("span",{className:"note",children:"分钟"})]}),i.jsx("div",{className:"lbl sub",children:"助手回复"}),i.jsxs("div",{className:"ctl",children:[i.jsx(ya,{value:String(a.routerStallMinutes),onSave:d=>u({routerStallMinutes:Number(d)})}),i.jsx("span",{className:"note",children:"分钟"})]}),i.jsx(pn,{message:r.message}),i.jsx("div",{className:"note",children:"修改后立即生效,无需重启。"})]}),i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:"任务记录"}),i.jsx("div",{className:"ctl",children:i.jsx("button",{className:"pbtn",onClick:()=>yf(),children:"查看全部任务"})}),i.jsx("div",{className:"note",children:"可查看每个任务的完整执行过程。"})]})]})}function P2(){const l=Ee(),a=ba(),[r,u]=w.useState(null),[d,f]=w.useState(null),[h,p]=w.useState(null),[m,b]=w.useState(null),[v,y]=w.useState(!1),[S,T]=w.useState(null),[k,x]=w.useState(null),j=ff(),E=()=>void hf().then(L=>p((L==null?void 0:L.endpoint)??null));if(w.useEffect(()=>{Bc().then(L=>L.ok?u(L.view):f(L.error)),E()},[]),d)return i.jsx("div",{className:"note",children:d});if(!r)return i.jsx("div",{className:"empty",children:"正在读取推送设置…"});const A=typeof Notification<"u"&&Notification.permission==="denied",X=!!(h&&r.devices.some(L=>L.endpoint===h)),J=async()=>{if(!v){y(!0),T(null),x(null);try{const L=X?await Xj():await Gj();if(!L.ok){T(L.error);return}u(L.view),E(),x(X?"此设备将不再接收推送":"此设备将接收推送")}finally{y(!1)}}},F=async L=>{const B=await Wx(L);if(!B.ok){T(B.error);return}u(B.view),b(null),E()},G=async()=>{if(!v){y(!0),T(null),x(null);try{const L=await Zj();if(!L.ok){T(L.error);return}x(L.sent?"测试通知已发送":"未发送:这台设备尚未订阅")}finally{y(!1)}}};return i.jsxs(i.Fragment,{children:[i.jsx(ht,{title:"通知",desc:"本机推送与已订阅的设备。"}),i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:"本机推送"}),j?i.jsxs("div",{className:"ctl",children:[i.jsx("span",{style:{fontSize:14},children:"需要确认或任务受阻时推送给我"}),i.jsx("span",{className:"sp"}),i.jsx("button",{className:`tog${X?"":" off"}`,title:X?"关闭本机推送":"开启本机推送",onClick:()=>void J(),disabled:v})]}):i.jsx("div",{className:"note",children:"这个浏览器不支持推送:请使用 Chrome、Edge、Safari 16.4+,或在 iPhone 上将 Hob 添加到主屏幕。"}),A?i.jsx("div",{className:"note",children:"浏览器已拒绝通知权限:点击地址栏左侧的图标 → 通知 → 允许,然后刷新本页并重新开启。"}):null,i.jsx("div",{className:"note",children:"页面在前台时不推送,页面不在前台或锁屏时才推送。各助手还需在助手设置中开启「需要确认时通知我」。"}),i.jsx("div",{className:"note",children:"在 iPhone 上需先将 Hob 添加到主屏幕,再从主屏幕打开才能接收推送。"})]}),i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:"已订阅的设备"}),r.devices.length?r.devices.map(L=>i.jsxs("div",{className:"dev",children:[i.jsx("span",{className:"n",children:L.label}),i.jsx("span",{className:"tm",children:Ul(L.createdAt)}),i.jsx("span",{className:"sp"}),m===L.endpoint?i.jsxs(i.Fragment,{children:[i.jsx("span",{className:"note",children:"确认删除?"}),i.jsx("button",{className:"pbtn",onClick:()=>b(null),children:"取消"}),i.jsx("button",{className:"pbtn danger",onClick:()=>void F(L.endpoint),children:"确认删除"})]}):i.jsx("button",{className:"del",title:"删除这台设备",onClick:()=>b(L.endpoint),children:"删除"})]},L.endpoint)):i.jsx("div",{className:"empty",children:"暂无已订阅的设备"}),i.jsxs("div",{className:"ctl",children:[i.jsx("button",{className:"pbtn",onClick:()=>void G(),disabled:v||!r.devices.length,children:"发送测试通知"}),k&&!S?i.jsx("span",{className:"okline",children:k}):null,S?i.jsx("span",{className:"badline",children:S}):null]})]}),i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:"推送服务联系邮箱(选填)"}),i.jsx(ya,{placeholder:"name@example.com",value:l.settings.settings.push.email,onSave:L=>a.save({push:{email:L.trim()}})}),i.jsx(pn,{message:a.message}),i.jsx("div",{className:"note",children:"推送服务使用此地址联系你;留空使用 hob@localhost。"})]})]})}const _i="https://api.loremem.com",W2={saas:"https://app.loremem.com/login"},e3=[{key:"saas",label:"Lore 云服务"},{key:"self",label:"自部署"}],t3=[{key:"local",label:"本地记忆"},{key:"lore",label:"Lore"},{key:"off",label:"关闭"}],Hx={invalid_url:"服务地址无效。",insecure_http:"公网地址必须使用 https,明文 http 仅允许本机或局域网地址。",missing_token:"缺少 API Token。",unauthorized:"API Token 被拒绝。",unreachable:"无法连接该地址。"},of=l=>l.trim().replace(/\/+$/,"");function Bx(l){return l===null||of(l)===_i?"saas":"self"}function n3(){const[l,a]=w.useState(null),[r,u]=w.useState(null),[d,f]=w.useState(null),[h,p]=w.useState("saas"),[m,b]=w.useState(_i),[v,y]=w.useState(""),[S,T]=w.useState(!1),[k,x]=w.useState(!1),[j,E]=w.useState(null),[A,X]=w.useState(!1),[J,F]=w.useState(null),[G,L]=w.useState(!1),[B,ae]=w.useState(null),[ne,Se]=w.useState(null),[Ze,fe]=w.useState(!1);w.useEffect(()=>{if(!G)return;const K=setTimeout(()=>L(!1),3e3);return()=>clearTimeout(K)},[G]);const Ve=K=>{a(K),u(null),f(null),p(Bx(K.lore.baseUrl)),b(K.lore.baseUrl??_i),y(""),T(!1),x(!1),E(null),F(null),L(!1)};if(w.useEffect(()=>{Md().then(K=>{K.ok?Ve(K.config):u(K.error)})},[]),r)return i.jsx("div",{className:"note",children:r});if(!l)return i.jsx("div",{className:"empty",children:"正在读取记忆设置…"});const Ue=d??l.provider,W=l.lore.tokenConfigured&&of(m)===of(l.lore.baseUrl??""),he=d==="lore"&&!S?l.lore.configured:k,de=d!==null||S,$e=async K=>{if(A)return;if(K===l.provider){f(null);return}if(F(null),L(!1),K==="lore"&&!l.lore.configured){f("lore");return}X(!0);const te=await Bv(l.revision,K);if(X(!1),!te.ok){F(te.error);return}Ve(te.config),L(!0)},we=K=>{A||(K(),T(!0),x(!1),E(null),F(null),L(!1))},zt=K=>we(()=>{p(K),b(K==="saas"?_i:Bx(l.lore.baseUrl)==="self"?l.lore.baseUrl??"":"")}),Gt=async()=>{if(A)return;X(!0),Se(null),fe(!1);const K=await qj();if(!K.ok){X(!1),Se(K.error);return}if(ae({source:K.view.source,found:K.view.found}),!K.view.found){X(!1);return}const te=await Yj();if(X(!1),!te.ok){Se(te.error);return}Ve(te.config),f("lore"),fe(!0)},Xt=async()=>{if(A)return;X(!0),E(null);const K={baseUrl:m.trim(),...v?{token:v}:{}},te=await Lv(K);if(X(!1),!te.ok){E({ok:!1,text:te.error});return}te.result.ok?(x(!0),E({ok:!0,text:"已连接"})):E({ok:!1,text:Hx[te.result.reason]})},_=async()=>{if(A||!de)return;if(X(!0),F(null),Ue==="lore"&&!he){const ve=await Lv({baseUrl:m.trim(),...v?{token:v}:{}});if(!ve.ok){X(!1),F(ve.error);return}if(!ve.result.ok){X(!1),F(Hx[ve.result.reason]);return}x(!0)}let K=l;if(Ue==="lore"&&S){const ve=await Lj({baseUrl:m.trim(),...v?{token:v}:{}});if(!ve.ok){X(!1),F(ve.error);return}K=ve.config}const te=await Bv(K.revision,Ue);if(X(!1),!te.ok){F(te.error),/已刷新/.test(te.error)&&Md().then(ve=>ve.ok&&Ve(ve.config));return}Ve(te.config),L(!0)},V=l.provider==="lore"?l.lore.configured?"Lore · 已连接":"Lore · 尚未配置完成:请填写服务地址与 API Token 后保存":l.provider==="local"?"本地记忆 · 已启用":"关闭 · 助手不使用长期记忆";return i.jsxs(i.Fragment,{children:[i.jsx(ht,{title:"记忆",desc:"所有助手共用同一份长期记忆。各助手特有的做法写在助手设置的「补充说明」中。"}),i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:"提供者"}),i.jsx(Ta,{items:t3,value:Ue,onChange:K=>void $e(K),disabled:A}),i.jsx("div",{className:"sline",children:V}),i.jsx(pn,{message:J??(G?"已保存":null)})]}),Ue==="lore"?i.jsxs(i.Fragment,{children:[i.jsx(Ne,{children:i.jsxs("div",{className:"formcard",children:[i.jsx("div",{className:"lbl",children:"部署方式"}),i.jsx(Ta,{items:e3,value:h,onChange:zt,disabled:A}),i.jsx("div",{className:"lbl",children:"服务地址"}),h==="saas"?i.jsx("div",{className:"field ro",children:_i}):i.jsx("div",{className:"field",children:i.jsx("input",{value:m,placeholder:"http://192.168.1.10:18901",onChange:K=>we(()=>b(K.target.value)),disabled:A})}),i.jsxs("div",{className:"lblrow",children:[i.jsx("span",{className:"lbl",children:"Token"}),i.jsx("a",{className:"link",href:W2.saas,target:"_blank",rel:"noreferrer",children:"注册 / 登录 Lore"})]}),i.jsx("div",{className:"field",children:i.jsx("input",{type:"password",value:v,placeholder:W?"已保存,留空则沿用":"lm_…",onChange:K=>we(()=>y(K.target.value)),disabled:A})}),i.jsxs("div",{className:"ctl",style:{gap:10,flexWrap:"wrap"},children:[i.jsx("button",{className:"pbtn",onClick:()=>void Xt(),disabled:A||m.trim()==="",children:"测试连接"}),j?i.jsx("span",{className:j.ok?"okline":"badline",children:j.text}):null]}),i.jsxs(ys,{saved:G&&!de,error:J,children:[!J&&de?i.jsx("span",{className:"note",children:"未保存的修改"}):null,i.jsx("button",{className:"pbtn",onClick:()=>void Md().then(K=>K.ok?Ve(K.config):u(K.error)),disabled:A||!de,children:"取消"}),i.jsx("button",{className:"pbtn solid",onClick:()=>void _(),disabled:A||!de,children:A?"正在验证…":"保存"})]})]})}),i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:"本机配置"}),i.jsxs("div",{className:"ctl",style:{gap:10,flexWrap:"wrap"},children:[i.jsx("button",{className:"pbtn",onClick:()=>void Gt(),disabled:A,children:A?"正在导入…":"从本机导入"}),Ze?i.jsx("span",{className:"okline",children:"已导入本机的连接"}):null]}),i.jsx("div",{className:"note",children:"读取这台电脑上已保存的 Lore 连接,导入后无需重新填写。"}),B?i.jsxs("div",{className:"sline",children:["来源:",B.source]}):null,B&&!B.found?i.jsx("div",{className:"note",children:"未找到可导入的配置。"}):null,ne?i.jsx("div",{className:"badline",children:ne}):null]})]}):null]})}const l3=[{key:"off",label:"关闭"},{key:"openai",label:"OpenAI 兼容接口"}],s3=["1024x1024","1536x1024","1024x1536","512x512"],a3=l=>l.trim().replace(/\/+$/,"");function i3(){const a=Ee().settings.settings.image,[r,u]=w.useState(a.source),[d,f]=w.useState(a.source==="openai"?a.baseUrl:""),[h,p]=w.useState(a.source==="openai"?a.model:""),[m,b]=w.useState(a.source==="openai"?a.size??"":""),[v,y]=w.useState(""),[S,T]=w.useState(!1),[k,x]=w.useState(null),[j,E]=w.useState(null),[A,X]=w.useState(!1),[J,F]=w.useState(null),[G,L]=w.useState(null);w.useEffect(()=>{if(!J)return;const fe=setTimeout(()=>F(null),3e3);return()=>clearTimeout(fe)},[J]),w.useEffect(()=>{Bj().then(fe=>{fe&&T(fe.keyConfigured)})},[]);const B=r==="openai"?{source:"openai",baseUrl:a3(d),model:h.trim(),...m?{size:m}:{}}:{source:"off"},ae=JSON.stringify(B)!==JSON.stringify(a)||v.trim()!=="",ne=JSON.stringify({form:B,apiKey:v.trim()});w.useEffect(()=>{x(null),E(null)},[ne]);const Se=async()=>{if(A)return;X(!0),x(null);const fe=await Hv({image:B,...v.trim()?{apiKey:v.trim()}:{}});X(!1),fe.ok?(E(ne),x({ok:!0,text:"生成成功",path:fe.path})):(E(null),x({ok:!1,text:fe.error}))},Ze=async()=>{if(A||!ae)return;if(X(!0),L(null),F(null),B.source==="openai"&&j!==ne){const Ve=await Hv({image:B,...v.trim()?{apiKey:v.trim()}:{}});if(!Ve.ok){X(!1),E(null),L(`测试连接失败:${Ve.error}`);return}E(ne),x({ok:!0,text:"生成成功",path:Ve.path})}const fe=await $v(B,v.trim()||void 0);if(X(!1),!fe.ok){L(fe.error);return}B.source==="openai"&&(f(B.baseUrl),p(B.model)),y(""),T(fe.keyConfigured),x(null),F("已保存")};return i.jsxs(i.Fragment,{children:[i.jsx(ht,{title:"图像生成",desc:"选择图像生成方式:关闭,或使用 OpenAI 兼容接口。配置完成后,开启了图像生成能力的助手可以在任务中生成图片。"}),i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:"生成方式"}),i.jsx(Ta,{items:l3,value:r,onChange:fe=>{x(null),L(null),F(null),fe==="off"&&a.source!=="off"?(X(!0),$v({source:"off"}).then(Ve=>{if(X(!1),!Ve.ok){L(Ve.error);return}u("off"),y(""),F("已保存")})):u(fe)},disabled:A})]}),r==="openai"?i.jsx(Ne,{children:i.jsxs("div",{className:"formcard",children:[i.jsx("div",{className:"lbl",children:"服务地址"}),i.jsx("div",{className:"field",children:i.jsx("input",{value:d,placeholder:"http://127.0.0.1:8080/v1",onChange:fe=>f(fe.target.value),disabled:A})}),i.jsx("div",{className:"lbl",children:"模型名称"}),i.jsx("div",{className:"field",children:i.jsx("input",{value:h,placeholder:"gpt-image-1",onChange:fe=>p(fe.target.value),disabled:A})}),i.jsx("div",{className:"lbl",children:"默认尺寸"}),i.jsx("div",{className:"ctl",children:i.jsxs("select",{className:"pick grow",value:m,onChange:fe=>b(fe.target.value),disabled:A,children:[i.jsx("option",{value:"",children:"不指定,使用接口默认值"}),s3.map(fe=>i.jsx("option",{value:fe,children:fe},fe))]})}),i.jsx("div",{className:"lbl",children:"API Key"}),i.jsx("div",{className:"field",children:i.jsx("input",{type:"password",value:v,placeholder:S?"已保存,留空则沿用":"sk-…",onChange:fe=>y(fe.target.value),disabled:A})}),i.jsx("div",{className:"note",children:"API Key 只保存在本机,保存后不再显示。保存前会生成测试图片,可能产生费用。"}),i.jsx("div",{className:"lbl",children:"测试"}),i.jsxs("div",{className:"testrow",children:[i.jsx("button",{className:"pbtn",onClick:()=>void Se(),disabled:A,children:A?"正在生成…":"生成测试图片"}),k?i.jsxs("div",{className:"testout",children:[i.jsx("span",{className:k.ok?"okline":"badline",children:k.text}),k.ok&&k.path?i.jsx("button",{className:"imgcard testshot",onClick:()=>window.open(Yt(k.path),"_blank","noopener"),title:"查看原图",children:i.jsx("img",{src:Yt(k.path),alt:"生成的图片"})}):null]}):null]}),i.jsxs(ys,{saved:J!==null&&!ae,error:G,children:[!G&&ae?i.jsx("span",{className:"note",children:"未保存的修改"}):null,i.jsx("button",{className:"pbtn",disabled:A||!ae,onClick:()=>{u(a.source),f(a.source==="openai"?a.baseUrl:""),p(a.source==="openai"?a.model:""),b(a.source==="openai"?a.size??"":""),y(""),x(null),E(null),L(null)},children:"取消"}),i.jsx("button",{className:"pbtn solid",onClick:()=>void Ze(),disabled:A||!ae,children:A?"正在验证…":"保存"})]})]})}):i.jsx(pn,{message:G??J})]})}const r3={hob:"Hob 的技能",common:"通用技能 · ~/.agents/skills",lore:"Lore 技能"},c3=[{key:"claude",label:"Claude Code"},{key:"codex",label:"Codex"},{key:"pi",label:"pi"}],Yd=l=>`${l.source}:${l.id}`,xs=l=>l instanceof Error?l.message:String(l);function u3(){const l=Ee(),a=l.sub,[r,u]=w.useState(null),[d,f]=w.useState(null),[h,p]=w.useState(null),m=async()=>{try{u(await Oj()),f(null)}catch(T){f(xs(T))}};w.useEffect(()=>{m()},[]),w.useEffect(()=>{a&&p(null)},[a]);const b=async T=>{var E;const k=`${T.source}:${T.name}`,x=((E=l.settings.settings.skills)==null?void 0:E.disabled)??[],j=T.enabled?[...x,k]:x.filter(A=>A!==k);await pf({skills:{disabled:j}})?await m():f(Dl().notice??"保存失败")},v=T=>{m(),p(T),gn()};if(!r)return d?i.jsx("div",{className:"badline",children:d}):i.jsx("div",{className:"empty",children:"正在读取技能…"});if((a==null?void 0:a.kind)==="skill")return i.jsx(o3,{skill:r.skills.find(T=>Yd(T)===a.key),onDeleted:v});if((a==null?void 0:a.kind)==="importSkills")return i.jsx(d3,{onDone:v});const y=(T,k)=>T.length?T.map(x=>i.jsxs("div",{className:`rrow${x.enabled?"":" gone"}`,children:[i.jsxs("button",{className:"rmain rbtn",onClick:()=>sl({kind:"skill",key:Yd(x),title:x.name}),children:[i.jsxs("div",{className:"rname",children:[x.name,x.overridden?i.jsx("span",{className:"rtag",children:"被同名技能覆盖"}):null]}),i.jsx("div",{className:"rprov rclamp",children:x.description})]}),i.jsx("button",{className:`tog${x.enabled?"":" off"}`,"aria-label":`${x.name}启用`,"aria-pressed":x.enabled,onClick:()=>void b(x)})]},Yd(x))):i.jsx("div",{className:"rempty",children:k}),S=r.skills.filter(T=>T.source==="hob");return i.jsxs(i.Fragment,{children:[i.jsx(ht,{title:"技能",desc:"技能是写好的做法说明,任务按需读取。同名时 Hob 的技能优先,其次是 Lore,最后是通用技能。"}),i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:"Hob 的技能"}),i.jsxs("div",{className:"roster",children:[y(S,"还没有技能,可以从其他工具导入"),i.jsxs("button",{className:"maddrow",onClick:()=>sl({kind:"importSkills",title:"导入技能"}),children:[i.jsx(Z,{name:"plus",size:16}),"从 Claude Code、Codex、pi 导入"]})]}),h?i.jsx("div",{className:"okline",children:h}):null]}),i.jsxs(Ne,{children:[i.jsxs("div",{className:"lbl",children:["通用技能 ",i.jsx("span",{className:"lbl-aside",children:"~/.agents/skills"})]}),i.jsx("div",{className:"roster",children:y(r.skills.filter(T=>T.source==="common"),"目录中没有技能")})]}),i.jsxs(Ne,{children:[i.jsxs("div",{className:"lbl",children:["Lore 技能",r.loreActive&&r.loreUrl?i.jsx("a",{className:"lbl-aside",href:r.loreUrl,target:"_blank",rel:"noreferrer",children:"在 Lore 控制台管理"}):null]}),r.loreActive?i.jsx("div",{className:"roster",children:y(r.skills.filter(T=>T.source==="lore"),"Lore 中没有技能")}):i.jsx("div",{className:"note",children:"在 设置 → 记忆 中连接 Lore 后,这里会列出 Lore 中的技能。"})]}),d?i.jsx("div",{className:"badline",role:"alert",children:d}):null]})}function o3({skill:l,onDeleted:a}){const[r,u]=w.useState(null);if(!l)return i.jsxs(i.Fragment,{children:[i.jsx(Ln,{label:"技能"}),i.jsx("div",{className:"note",children:"技能不存在或已删除。"})]});const d=async()=>{if(window.confirm(`删除技能「${l.name}」?此操作不能撤销。`))try{await Dj(l.id),a(`已删除「${l.name}」`)}catch(f){u(xs(f))}};return i.jsxs(i.Fragment,{children:[i.jsx(Ln,{label:"技能"}),i.jsx(ht,{title:l.name,desc:l.description}),i.jsxs("div",{className:"sline",children:[r3[l.source],l.overridden?" · 被优先级更高的同名技能覆盖":"",l.enabled?"":" · 已停用"]}),i.jsx(wa,{className:"skill-doc fp-md markdown-body",text:l.content}),l.source==="hob"?i.jsx(ys,{saved:!1,error:r,children:i.jsx("button",{className:"pbtn danger",onClick:()=>void d(),children:"删除技能"})}):null]})}function d3({onDone:l}){const[a,r]=w.useState("claude"),[u,d]=w.useState(null),[f,h]=w.useState([]),[p,m]=w.useState(!1),[b,v]=w.useState(!1),[y,S]=w.useState(null);w.useEffect(()=>{let k=!0;return d(null),h([]),S(null),Mj(a).then(x=>{k&&d(x)}).catch(x=>{k&&S(xs(x))}),()=>{k=!1}},[a]);const T=async()=>{v(!0),S(null);try{const k=await Rj(a,f,p),x=[...k.skipped,...k.errors];x.length?S(x.join(";")):l(`已导入 ${k.imported.length} 个技能`)}catch(k){S(xs(k))}finally{v(!1)}};return i.jsxs(i.Fragment,{children:[i.jsx(Ln,{label:"技能"}),i.jsx(ht,{title:"导入技能",desc:"从其他工具的技能目录复制到 Hob,来源只读。"}),i.jsx(Ne,{children:i.jsx(Ta,{items:c3,value:a,onChange:r,disabled:b})}),i.jsxs(Ne,{children:[u===null?y?null:i.jsx("div",{className:"empty",children:"正在读取…"}):u.found?i.jsx("div",{className:"roster",children:u.skills.length?u.skills.map(k=>i.jsxs("label",{className:"rrow",children:[i.jsx("input",{type:"checkbox",className:"rcheck",checked:f.includes(k.id),disabled:b,onChange:x=>h(x.target.checked?[...f,k.id]:f.filter(j=>j!==k.id))}),i.jsxs("div",{className:"rmain",children:[i.jsxs("div",{className:"rname",children:[k.name,k.exists?i.jsx("span",{className:"rtag",children:"已存在"}):null]}),i.jsx("div",{className:"rprov rclamp",children:k.description})]})]},k.id)):i.jsx("div",{className:"rempty",children:"目录中没有技能"})}):i.jsx("div",{className:"empty",children:"未找到这个工具的技能目录。"}),u==null?void 0:u.skipped.map(k=>i.jsx("div",{className:"note",children:k},k))]}),u!=null&&u.skills.some(k=>k.exists)?i.jsxs("label",{className:"ctl skill-overwrite",children:[i.jsx("input",{type:"checkbox",className:"rcheck",checked:p,onChange:k=>m(k.target.checked)}),"覆盖已存在的同名技能"]}):null,i.jsxs(ys,{saved:!1,error:y,children:[i.jsx("button",{className:"pbtn",onClick:gn,disabled:b,children:"取消"}),i.jsx("button",{className:"pbtn solid",disabled:b||!f.length,onClick:()=>void T(),children:b?"正在导入…":f.length?`导入 ${f.length} 个`:"导入所选"})]})]})}const us={searxng:{label:"SearXNG",desc:"自建的元搜索服务,填写服务地址即可",url:!0,keyOptional:!0},exa:{label:"Exa",desc:"语义搜索,适合查找技术资料"},tavily:{label:"Tavily",desc:"面向 AI 的搜索接口"},brave:{label:"Brave Search",desc:"Brave 的独立网页索引"},serper:{label:"Serper",desc:"Google 搜索结果"},jina:{label:"Jina",desc:"搜索并读取网页正文"},firecrawl:{label:"Firecrawl",desc:"搜索并抓取网页正文"},perplexity:{label:"Perplexity",desc:"带摘要的搜索结果"},youcom:{label:"You.com",desc:"You.com 搜索接口"},ollama:{label:"Ollama",desc:"Ollama 的网页搜索",url:!0}};function f3(){const l=Ee(),a=l.sub,r=l.settings.settings.search,[u,d]=w.useState(null),[f,h]=w.useState(null),[p,m]=w.useState(!1),b=async()=>d(await Uj());w.useEffect(()=>{b().catch(x=>h(xs(x)))},[]),w.useEffect(()=>{a&&h(null)},[a]);const v=x=>{var j;return((j=u==null?void 0:u.providers.find(E=>E.name===x))==null?void 0:j.keyConfigured)??!1},y=async(x,j)=>{m(!0);try{const E=await Hj(x,j);return E?(h(E),E):(await b(),null)}catch(E){const A=xs(E);return h(A),A}finally{m(!1)}},S=r.filter(x=>x.enabled),T=(x,j)=>{const E=S.map(J=>J.name),A=E.indexOf(x),X=A+j;X<0||X>=E.length||([E[A],E[X]]=[E[X],E[A]],y([...E.map(J=>r.find(F=>F.name===J)),...r.filter(J=>!J.enabled)]))};if((a==null?void 0:a.kind)==="searchProvider"){const x=r.find(j=>j.name===a.name);return x?i.jsx(h3,{provider:x,configured:v(x.name),busy:p,save:(j,E)=>y(r.map(A=>A.name===j.name?j:A),E===void 0?void 0:{[j.name]:E})}):i.jsxs(i.Fragment,{children:[i.jsx(Ln,{label:"联网搜索"}),i.jsx("div",{className:"note",children:"没有这个服务商。"})]})}const k=x=>v(x.name)?"已配置 Key":x.baseUrl?"已填服务地址":"未配置";return i.jsxs(i.Fragment,{children:[i.jsx(ht,{title:"联网搜索",desc:"助手和任务通过这里的服务商搜索网页、读取正文。可以启用多个,按顺序使用,前一个失败时自动换下一个。"}),i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:"已启用"}),S.length?i.jsx("div",{className:"roster",children:S.map((x,j)=>i.jsxs("div",{className:"rrow",children:[i.jsx("span",{className:"rorder",children:j+1}),i.jsxs("button",{className:"rmain rbtn",onClick:()=>sl({kind:"searchProvider",name:x.name,title:us[x.name].label}),children:[i.jsx("div",{className:"rname",children:us[x.name].label}),i.jsx("div",{className:"rprov",children:us[x.name].desc})]}),i.jsx("button",{className:"ib rmove",title:"上移",disabled:p||j===0,onClick:()=>T(x.name,-1),children:i.jsx(Z,{name:"down",size:15,className:"up"})}),i.jsx("button",{className:"ib rmove",title:"下移",disabled:p||j===S.length-1,onClick:()=>T(x.name,1),children:i.jsx(Z,{name:"down",size:15})})]},x.name))}):i.jsx("div",{className:"note",children:"尚未启用服务商,助手和任务暂时不能联网搜索。"}),f?i.jsx("div",{className:"badline",children:f}):null]}),i.jsxs(Ne,{children:[i.jsx("div",{className:"lbl",children:S.length?"其他服务商":"选择服务商"}),i.jsx("div",{className:"roster",children:r.filter(x=>!x.enabled).map(x=>i.jsxs("button",{className:"rrow",onClick:()=>sl({kind:"searchProvider",name:x.name,title:us[x.name].label}),children:[i.jsxs("div",{className:"rmain",children:[i.jsx("div",{className:"rname",children:us[x.name].label}),i.jsx("div",{className:"rprov",children:us[x.name].desc})]}),i.jsx("span",{className:"note",children:k(x)}),i.jsx(Z,{name:"chev",size:15,className:"rgo"})]},x.name))})]})]})}function h3({provider:l,configured:a,busy:r,save:u}){const d=us[l.name],[f,h]=w.useState(l.baseUrl??""),[p,m]=w.useState(""),[b,v]=w.useState(null),[y,S]=w.useState(!1),[T,k]=w.useState(null),[x,j]=w.useState(!1);w.useEffect(()=>h(l.baseUrl??""),[l.baseUrl]);const E=f.trim()!==(l.baseUrl??"")||!!p.trim(),A=a||!!p.trim()||d.keyOptional&&!!f.trim(),X=async()=>{S(!0),v(null);try{const G=await $j(l.name,f.trim(),p.trim()||void 0);return v({ok:G.ok,text:G.ok?`搜索成功,返回 ${G.count} 条结果`:G.error??"搜索失败"}),G.ok}catch(G){return v({ok:!1,text:xs(G)}),!1}finally{S(!1)}},J=async(G,L)=>{k(null),j(!1);const B=await u(G,L);return B?(k(B),!1):(j(!0),!0)},F=async()=>{await X()&&await J({...l,baseUrl:f.trim()||void 0},p.trim()||void 0)&&m("")};return i.jsxs(i.Fragment,{children:[i.jsx(Ln,{label:"联网搜索"}),i.jsx(ht,{title:d.label,desc:d.desc}),i.jsxs(Ne,{children:[i.jsxs("div",{className:"ctl",children:[i.jsx("span",{style:{fontSize:14},children:"启用"}),i.jsx("span",{className:"sp"}),i.jsx("button",{className:`tog${l.enabled?"":" off"}`,"aria-label":`${d.label}启用`,"aria-pressed":l.enabled,disabled:r||!l.enabled&&!A,onClick:()=>void J({...l,enabled:!l.enabled})})]}),!l.enabled&&!A?i.jsxs("div",{className:"note",children:[d.url?"填写服务地址":"填写 API Key","并保存后即可启用。"]}):null]}),i.jsx(Ne,{children:i.jsxs("div",{className:"formcard",children:[d.url?i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"lbl",children:"服务地址"}),i.jsx("div",{className:"field",children:i.jsx("input",{value:f,onChange:G=>{h(G.target.value),v(null)},placeholder:"http://127.0.0.1:8888",disabled:r})})]}):null,i.jsxs("div",{className:"lbl",children:["API Key",d.keyOptional?"(可选)":""]}),i.jsx("div",{className:"field",children:i.jsx("input",{type:"password",value:p,onChange:G=>{m(G.target.value),v(null)},placeholder:a?"已保存,留空则沿用":"填写 API Key",disabled:r})}),i.jsx("div",{className:"note",children:"API Key 只保存在本机,保存后不再显示。"}),i.jsxs("div",{className:"testrow",children:[i.jsx("button",{className:"pbtn",onClick:()=>void X(),disabled:r||y,children:y?"正在搜索…":"测试搜索"}),b?i.jsx("span",{className:b.ok?"okline":"badline",children:b.text}):null]}),i.jsxs(ys,{saved:x&&!E,error:T,children:[a?i.jsx("button",{className:"pbtn",disabled:r,onClick:()=>void J(l,""),children:"删除 Key"}):null,i.jsx("button",{className:"pbtn solid",disabled:r||y||!E,onClick:()=>void F(),children:"保存"})]})]})})]})}function m3(){const[l,a]=w.useState(null);if(w.useEffect(()=>{wj().then(a)},[]),!l)return i.jsx("div",{className:"empty",children:"正在读取版本信息…"});const r=[["Hob 版本",l.version],["数据目录",l.home]];return i.jsxs(i.Fragment,{children:[i.jsx(ht,{title:"关于",desc:"Hob 的版本与数据目录。"}),i.jsx("div",{className:"kvcard",children:r.map(([u,d])=>i.jsxs("div",{className:"kvrow",children:[i.jsx("span",{className:"k",children:u}),i.jsx("span",{className:"v",children:d})]},u))})]})}const p3=l=>l.id;function g3(){const l=Ee(),a=l.assistants.filter(d=>d.pinned&&!d.hidden&&Ri(d,l.query)),r=Qx(a,p3),u=c0(a.length);return i.jsxs("aside",{className:"side",children:[i.jsxs("div",{className:"side-top",children:[i.jsxs("div",{className:"search",children:[i.jsx(Z,{name:"search",size:15}),i.jsx("input",{value:l.query,placeholder:"搜索助手",onChange:d=>pb(d.target.value)})]}),i.jsx("button",{className:"ib",title:"创建专属助手",onClick:hb,children:i.jsx(Z,{name:"plus",size:18})})]}),i.jsxs("div",{className:"side-scroll",children:[i.jsx("div",{className:`pins${u.cls}`,children:r.map(d=>i.jsx("div",{className:`srow${d.state==="still"?"":` ${d.state}`}`,children:i.jsx("div",{className:"srowclip",children:i.jsx(r0,{a:d.item,sel:d.item.id===l.sel,size:u.size})})},d.key))}),i.jsx(u0,{size:42,markSel:!0})]}),i.jsx("div",{className:"side-foot",children:i.jsxs("button",{className:"frow",onClick:jf,children:[i.jsx(Z,{name:"gear",size:18}),i.jsx("span",{className:"sp",children:"设置"})]})})]})}function v3(){"serviceWorker"in navigator&&window.addEventListener("load",()=>{navigator.serviceWorker.register("/sw.js").then(l=>{const a=r=>{r&&r.addEventListener("statechange",()=>{r.state==="installed"&&navigator.serviceWorker.controller&&bN()})};a(l.installing),l.addEventListener("updatefound",()=>a(l.installing))}).catch(()=>{})})}async function x3(){var u;if(!("serviceWorker"in navigator)){location.reload();return}let l=!1;const a=()=>{l||(l=!0,location.reload())};navigator.serviceWorker.addEventListener("controllerchange",a,{once:!0});const r=await navigator.serviceWorker.getRegistration();(u=r==null?void 0:r.waiting)==null||u.postMessage("skip-waiting"),setTimeout(a,1200)}function b3(l){return l.replace(/^无法连接 Hob:/,"")}function y3(){const l=Ee(),[a,r]=w.useState(()=>window.innerWidth<768),u=Bn(l.mobile==="chat"&&!!l.sel,240),d=Bn(l.page==="settings",180),f=Bn(l.sheet,180);if(w.useLayoutEffect(()=>{Kx(l,a)},[l.phase,l.page,l.mobile,l.sheet,l.detail,l.filePreview,l.theme,a]),w.useEffect(()=>{Vj()},[]),w.useEffect(()=>{const p=()=>r(window.innerWidth<768);return window.addEventListener("resize",p),()=>window.removeEventListener("resize",p)},[]),w.useEffect(()=>{const p=setInterval(()=>yN(),3e4);return()=>clearInterval(p)},[]),w.useEffect(()=>{const p=l.assistants.reduce((m,b)=>m+b.unread,0);document.title=p>0?`(${p}) Hob`:"Hob"},[l.assistants]),w.useEffect(()=>{if(!l.notice)return;const p=setTimeout(()=>xN(),6e3);return()=>clearTimeout(p)},[l.notice]),l.phase==="login")return i.jsx(d2,{});if(l.phase==="error")return i.jsx("div",{className:"boot",children:i.jsxs("div",{className:"boot-card",children:[i.jsx("div",{className:"t",children:"无法连接 Hob"}),i.jsx("div",{className:"d",children:"请检查网络,或确认 Hob 服务已启动。"}),i.jsx("button",{className:"btn solid",onClick:()=>location.reload(),children:"重试"}),l.error?i.jsx("div",{className:"raw",children:b3(l.error)}):null]})});if(l.phase==="loading")return i.jsx("div",{className:"boot",children:i.jsxs("div",{className:"boot-loading",children:[i.jsx(bt,{sprite:"hob",size:92,motion:"think"}),i.jsx("span",{className:"activity-shimmer",children:"正在连接 Hob…"})]})});const h=l.notice?i.jsx("div",{className:"toast",children:l.notice}):l.updateReady?i.jsx("button",{className:"upd",onClick:()=>void x3(),children:"有新版本,点击更新"}):null;return d.mounted?i.jsxs(i.Fragment,{children:[i.jsx(R2,{narrow:a,leaving:d.leaving}),i.jsx(Bd,{}),i.jsx(Hd,{}),h]}):a?i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"mapp",children:[i.jsx("div",{className:`mpane list${l.mobile==="chat"?" back":""}`,children:i.jsx(z2,{})}),u.mounted?i.jsx("div",{className:`mpane chat${u.leaving?" out":""}`,children:i.jsx(Uw,{})}):null,f.mounted?i.jsx(_2,{leaving:f.leaving}):null]}),i.jsx(Wv,{}),i.jsx(Bd,{}),i.jsx(Hd,{}),h]}):i.jsxs("div",{className:"app",children:[i.jsx(g3,{}),i.jsx(Dw,{}),i.jsx("div",{className:`panelwrap${l.detail?" detail":l.collapsed?" off":""}`,children:l.detail?i.jsx(Bd,{embedded:!0}):i.jsx(s0,{})}),i.jsx(Hd,{}),i.jsx(Wv,{}),l.offline?i.jsx("div",{className:"toast",children:l.offline}):null,h]})}function Gd(l,a){var u,d,f;if(!a)return[];const r=[];return l.page==="settings"?(r.push("settings"),l.section&&r.push("section"),l.sub&&r.push("sub")):(l.mobile==="chat"&&l.sel&&r.push("chat"),l.sheet&&r.push("sheet")),(((u=l.detail)==null?void 0:u.kind)==="jobs"||((d=l.detail)==null?void 0:d.kind)==="job"&&l.worklog)&&r.push("jobs"),((f=l.detail)==null?void 0:f.kind)==="job"&&r.push("job"),l.filePreview&&r.push("file"),r}const k3={file:Mc,job:db,jobs:Ei,sheet:Fd,chat:()=>gb("list"),sub:gn,section:()=>va(null),settings:Jd};function j3(l=()=>window.innerWidth<768){let a=0,r=0,u=!1;const d=()=>location.pathname+location.search+C1(Dl(),l());history.replaceState({hobDepth:0},"",d());const f=()=>{if(u||r>0)return;const h=Gd(Dl(),l()).length;if(a>h){r++,history.go(h-a),a=h;return}for(;a<h;)history.pushState({hobDepth:++a},"",d());d()!==location.pathname+location.search+location.hash&&history.replaceState(history.state,"",d())};window.addEventListener("popstate",h=>{var m;if(r>0){r--,f();return}const p=Number(((m=h.state)==null?void 0:m.hobDepth)??0);a=p,u=!0;for(let b=0;b<10;b++){const v=Gd(Dl(),l()).at(-1);if(!v||Gd(Dl(),l()).length<=p)break;k3[v]()}u=!1,f()}),Px(f),f()}w1.createRoot(document.getElementById("root")).render(i.jsx(y3,{}));j3();document.addEventListener("gesturestart",l=>l.preventDefault());v3();