@coralai/sps-cli 0.57.15 → 0.58.1

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 (143) hide show
  1. package/README-CN.md +123 -2
  2. package/README.md +123 -2
  3. package/dist/commands/codexProxyCommand.d.ts +2 -0
  4. package/dist/commands/codexProxyCommand.d.ts.map +1 -0
  5. package/dist/commands/codexProxyCommand.js +81 -0
  6. package/dist/commands/codexProxyCommand.js.map +1 -0
  7. package/dist/commands/graphCommand.d.ts +2 -0
  8. package/dist/commands/graphCommand.d.ts.map +1 -0
  9. package/dist/commands/graphCommand.js +97 -0
  10. package/dist/commands/graphCommand.js.map +1 -0
  11. package/dist/commands/imCommand.d.ts +2 -0
  12. package/dist/commands/imCommand.d.ts.map +1 -0
  13. package/dist/commands/imCommand.js +34 -0
  14. package/dist/commands/imCommand.js.map +1 -0
  15. package/dist/commands/pipelineTick.d.ts.map +1 -1
  16. package/dist/commands/pipelineTick.js +9 -0
  17. package/dist/commands/pipelineTick.js.map +1 -1
  18. package/dist/commands/setup.d.ts.map +1 -1
  19. package/dist/commands/setup.js +3 -0
  20. package/dist/commands/setup.js.map +1 -1
  21. package/dist/commands/tick.d.ts.map +1 -1
  22. package/dist/commands/tick.js +10 -0
  23. package/dist/commands/tick.js.map +1 -1
  24. package/dist/console/index.d.ts.map +1 -1
  25. package/dist/console/index.js +25 -13
  26. package/dist/console/index.js.map +1 -1
  27. package/dist/console/routes/channels.d.ts +3 -0
  28. package/dist/console/routes/channels.d.ts.map +1 -0
  29. package/dist/console/routes/channels.js +43 -0
  30. package/dist/console/routes/channels.js.map +1 -0
  31. package/dist/console/routes/chat.d.ts.map +1 -1
  32. package/dist/console/routes/chat.js +49 -7
  33. package/dist/console/routes/chat.js.map +1 -1
  34. package/dist/console/routes/codexProxy.d.ts +11 -0
  35. package/dist/console/routes/codexProxy.d.ts.map +1 -0
  36. package/dist/console/routes/codexProxy.js +58 -0
  37. package/dist/console/routes/codexProxy.js.map +1 -0
  38. package/dist/console/routes/graph.d.ts +13 -0
  39. package/dist/console/routes/graph.d.ts.map +1 -0
  40. package/dist/console/routes/graph.js +65 -0
  41. package/dist/console/routes/graph.js.map +1 -0
  42. package/dist/console/routes/providers.d.ts.map +1 -1
  43. package/dist/console/routes/providers.js +6 -2
  44. package/dist/console/routes/providers.js.map +1 -1
  45. package/dist/console-assets/assets/index-CKM0zA_z.js +666 -0
  46. package/dist/console-assets/assets/index-DVnv2TaM.css +10 -0
  47. package/dist/console-assets/index.html +2 -2
  48. package/dist/core/agents/sidecar/CodexProxyManager.d.ts +74 -0
  49. package/dist/core/agents/sidecar/CodexProxyManager.d.ts.map +1 -0
  50. package/dist/core/agents/sidecar/CodexProxyManager.js +292 -0
  51. package/dist/core/agents/sidecar/CodexProxyManager.js.map +1 -0
  52. package/dist/core/agents/workerAnthropicEnv.d.ts +23 -0
  53. package/dist/core/agents/workerAnthropicEnv.d.ts.map +1 -0
  54. package/dist/core/agents/workerAnthropicEnv.js +22 -0
  55. package/dist/core/agents/workerAnthropicEnv.js.map +1 -0
  56. package/dist/core/claudeJsonl.d.ts +2 -0
  57. package/dist/core/claudeJsonl.d.ts.map +1 -1
  58. package/dist/core/claudeJsonl.js +29 -0
  59. package/dist/core/claudeJsonl.js.map +1 -1
  60. package/dist/core/codegraph/CodeGraphService.d.ts +45 -0
  61. package/dist/core/codegraph/CodeGraphService.d.ts.map +1 -0
  62. package/dist/core/codegraph/CodeGraphService.js +141 -0
  63. package/dist/core/codegraph/CodeGraphService.js.map +1 -0
  64. package/dist/engines/StageEngine.d.ts.map +1 -1
  65. package/dist/engines/StageEngine.js +14 -0
  66. package/dist/engines/StageEngine.js.map +1 -1
  67. package/dist/engines/smartarrange/runner.d.ts.map +1 -1
  68. package/dist/engines/smartarrange/runner.js +2 -0
  69. package/dist/engines/smartarrange/runner.js.map +1 -1
  70. package/dist/im/IMAdapter.d.ts +40 -0
  71. package/dist/im/IMAdapter.d.ts.map +1 -0
  72. package/dist/im/IMAdapter.js +2 -0
  73. package/dist/im/IMAdapter.js.map +1 -0
  74. package/dist/im/IMGatewayManager.d.ts +13 -0
  75. package/dist/im/IMGatewayManager.d.ts.map +1 -0
  76. package/dist/im/IMGatewayManager.js +90 -0
  77. package/dist/im/IMGatewayManager.js.map +1 -0
  78. package/dist/im/adapters/dingtalkAdapter.d.ts +46 -0
  79. package/dist/im/adapters/dingtalkAdapter.d.ts.map +1 -0
  80. package/dist/im/adapters/dingtalkAdapter.js +157 -0
  81. package/dist/im/adapters/dingtalkAdapter.js.map +1 -0
  82. package/dist/im/adapters/discordAdapter.d.ts +43 -0
  83. package/dist/im/adapters/discordAdapter.d.ts.map +1 -0
  84. package/dist/im/adapters/discordAdapter.js +170 -0
  85. package/dist/im/adapters/discordAdapter.js.map +1 -0
  86. package/dist/im/adapters/feishuAdapter.d.ts +44 -0
  87. package/dist/im/adapters/feishuAdapter.d.ts.map +1 -0
  88. package/dist/im/adapters/feishuAdapter.js +154 -0
  89. package/dist/im/adapters/feishuAdapter.js.map +1 -0
  90. package/dist/im/adapters/matrixAdapter.d.ts +42 -0
  91. package/dist/im/adapters/matrixAdapter.d.ts.map +1 -0
  92. package/dist/im/adapters/matrixAdapter.js +106 -0
  93. package/dist/im/adapters/matrixAdapter.js.map +1 -0
  94. package/dist/im/adapters/slackAdapter.d.ts +41 -0
  95. package/dist/im/adapters/slackAdapter.d.ts.map +1 -0
  96. package/dist/im/adapters/slackAdapter.js +129 -0
  97. package/dist/im/adapters/slackAdapter.js.map +1 -0
  98. package/dist/im/adapters/telegramAdapter.d.ts +43 -0
  99. package/dist/im/adapters/telegramAdapter.d.ts.map +1 -0
  100. package/dist/im/adapters/telegramAdapter.js +147 -0
  101. package/dist/im/adapters/telegramAdapter.js.map +1 -0
  102. package/dist/im/binding.d.ts +24 -0
  103. package/dist/im/binding.d.ts.map +1 -0
  104. package/dist/im/binding.js +57 -0
  105. package/dist/im/binding.js.map +1 -0
  106. package/dist/im/chatBridge.d.ts +39 -0
  107. package/dist/im/chatBridge.d.ts.map +1 -0
  108. package/dist/im/chatBridge.js +215 -0
  109. package/dist/im/chatBridge.js.map +1 -0
  110. package/dist/im/router.d.ts +29 -0
  111. package/dist/im/router.d.ts.map +1 -0
  112. package/dist/im/router.js +120 -0
  113. package/dist/im/router.js.map +1 -0
  114. package/dist/im/types.d.ts +71 -0
  115. package/dist/im/types.d.ts.map +1 -0
  116. package/dist/im/types.js +25 -0
  117. package/dist/im/types.js.map +1 -0
  118. package/dist/main.js +29 -1
  119. package/dist/main.js.map +1 -1
  120. package/dist/manager/makeBackendFactory.d.ts.map +1 -1
  121. package/dist/manager/makeBackendFactory.js +4 -1
  122. package/dist/manager/makeBackendFactory.js.map +1 -1
  123. package/dist/shared/runtimeSchemas.d.ts +0 -2
  124. package/dist/shared/runtimeSchemas.d.ts.map +1 -1
  125. package/dist/shared/runtimeSchemas.js +3 -1
  126. package/dist/shared/runtimeSchemas.js.map +1 -1
  127. package/package.json +4 -1
  128. package/project-template/.claude/CLAUDE.md +81 -0
  129. package/project-template/.claude/hooks/start.sh +44 -0
  130. package/project-template/.claude/hooks/stop.sh +54 -0
  131. package/project-template/.claude/rules/.gitkeep +0 -0
  132. package/project-template/.claude/settings.json +32 -0
  133. package/project-template/.claude/settings.local.json.template +3 -0
  134. package/project-template/.claude/skills/.gitkeep +0 -0
  135. package/project-template/README.md +10 -0
  136. package/project-template/batch_scheduler.sh +8 -0
  137. package/project-template/conf.template +61 -0
  138. package/project-template/deploy.sh +3 -0
  139. package/project-template/pm_meta/.gitkeep +0 -0
  140. package/skills/sps-memory/SKILL.md +51 -0
  141. package/skills/sps-pipeline/SKILL.md +476 -0
  142. package/dist/console-assets/assets/index-BAA5k08F.js +0 -641
  143. package/dist/console-assets/assets/index-nY53xZWk.css +0 -10
@@ -0,0 +1,666 @@
1
+ var LM=Object.defineProperty;var _1=e=>{throw TypeError(e)};var IM=(e,t,n)=>t in e?LM(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var j1=(e,t,n)=>IM(e,typeof t!="symbol"?t+"":t,n),yg=(e,t,n)=>t.has(e)||_1("Cannot "+n);var X=(e,t,n)=>(yg(e,t,"read from private field"),n?n.call(e):t.get(e)),Ve=(e,t,n)=>t.has(e)?_1("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,n),De=(e,t,n,r)=>(yg(e,t,"write to private field"),r?r.call(e,n):t.set(e,n),n),ut=(e,t,n)=>(yg(e,t,"access private method"),n);var bf=(e,t,n,r)=>({set _(a){De(e,t,a,n)},get _(){return X(e,t,r)}});(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const a of document.querySelectorAll('link[rel="modulepreload"]'))r(a);new MutationObserver(a=>{for(const o of a)if(o.type==="childList")for(const l of o.addedNodes)l.tagName==="LINK"&&l.rel==="modulepreload"&&r(l)}).observe(document,{childList:!0,subtree:!0});function n(a){const o={};return a.integrity&&(o.integrity=a.integrity),a.referrerPolicy&&(o.referrerPolicy=a.referrerPolicy),a.crossOrigin==="use-credentials"?o.credentials="include":a.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function r(a){if(a.ep)return;a.ep=!0;const o=n(a);fetch(a.href,o)}})();function Fu(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var bg={exports:{}},Qc={};/**
2
+ * @license React
3
+ * react-jsx-runtime.production.js
4
+ *
5
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
6
+ *
7
+ * This source code is licensed under the MIT license found in the
8
+ * LICENSE file in the root directory of this source tree.
9
+ */var C1;function zM(){if(C1)return Qc;C1=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.fragment");function n(r,a,o){var l=null;if(o!==void 0&&(l=""+o),a.key!==void 0&&(l=""+a.key),"key"in a){o={};for(var d in a)d!=="key"&&(o[d]=a[d])}else o=a;return a=o.ref,{$$typeof:e,type:r,key:l,ref:a!==void 0?a:null,props:o}}return Qc.Fragment=t,Qc.jsx=n,Qc.jsxs=n,Qc}var A1;function PM(){return A1||(A1=1,bg.exports=zM()),bg.exports}var u=PM(),xg={exports:{}},at={};/**
10
+ * @license React
11
+ * react.production.js
12
+ *
13
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
14
+ *
15
+ * This source code is licensed under the MIT license found in the
16
+ * LICENSE file in the root directory of this source tree.
17
+ */var T1;function BM(){if(T1)return at;T1=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),a=Symbol.for("react.profiler"),o=Symbol.for("react.consumer"),l=Symbol.for("react.context"),d=Symbol.for("react.forward_ref"),f=Symbol.for("react.suspense"),h=Symbol.for("react.memo"),g=Symbol.for("react.lazy"),m=Symbol.for("react.activity"),y=Symbol.iterator;function b(z){return z===null||typeof z!="object"?null:(z=y&&z[y]||z["@@iterator"],typeof z=="function"?z:null)}var k={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},v=Object.assign,S={};function E(z,G,P){this.props=z,this.context=G,this.refs=S,this.updater=P||k}E.prototype.isReactComponent={},E.prototype.setState=function(z,G){if(typeof z!="object"&&typeof z!="function"&&z!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,z,G,"setState")},E.prototype.forceUpdate=function(z){this.updater.enqueueForceUpdate(this,z,"forceUpdate")};function j(){}j.prototype=E.prototype;function N(z,G,P){this.props=z,this.context=G,this.refs=S,this.updater=P||k}var _=N.prototype=new j;_.constructor=N,v(_,E.prototype),_.isPureReactComponent=!0;var O=Array.isArray;function T(){}var I={H:null,A:null,T:null,S:null},R=Object.prototype.hasOwnProperty;function F(z,G,P){var oe=P.ref;return{$$typeof:e,type:z,key:G,ref:oe!==void 0?oe:null,props:P}}function M(z,G){return F(z.type,G,z.props)}function U(z){return typeof z=="object"&&z!==null&&z.$$typeof===e}function q(z){var G={"=":"=0",":":"=2"};return"$"+z.replace(/[=:]/g,function(P){return G[P]})}var Y=/\/+/g;function D(z,G){return typeof z=="object"&&z!==null&&z.key!=null?q(""+z.key):G.toString(36)}function H(z){switch(z.status){case"fulfilled":return z.value;case"rejected":throw z.reason;default:switch(typeof z.status=="string"?z.then(T,T):(z.status="pending",z.then(function(G){z.status==="pending"&&(z.status="fulfilled",z.value=G)},function(G){z.status==="pending"&&(z.status="rejected",z.reason=G)})),z.status){case"fulfilled":return z.value;case"rejected":throw z.reason}}throw z}function B(z,G,P,oe,be){var xe=typeof z;(xe==="undefined"||xe==="boolean")&&(z=null);var we=!1;if(z===null)we=!0;else switch(xe){case"bigint":case"string":case"number":we=!0;break;case"object":switch(z.$$typeof){case e:case t:we=!0;break;case g:return we=z._init,B(we(z._payload),G,P,oe,be)}}if(we)return be=be(z),we=oe===""?"."+D(z,0):oe,O(be)?(P="",we!=null&&(P=we.replace(Y,"$&/")+"/"),B(be,G,P,"",function(Ce){return Ce})):be!=null&&(U(be)&&(be=M(be,P+(be.key==null||z&&z.key===be.key?"":(""+be.key).replace(Y,"$&/")+"/")+we)),G.push(be)),1;we=0;var J=oe===""?".":oe+":";if(O(z))for(var de=0;de<z.length;de++)oe=z[de],xe=J+D(oe,de),we+=B(oe,G,P,xe,be);else if(de=b(z),typeof de=="function")for(z=de.call(z),de=0;!(oe=z.next()).done;)oe=oe.value,xe=J+D(oe,de++),we+=B(oe,G,P,xe,be);else if(xe==="object"){if(typeof z.then=="function")return B(H(z),G,P,oe,be);throw G=String(z),Error("Objects are not valid as a React child (found: "+(G==="[object Object]"?"object with keys {"+Object.keys(z).join(", ")+"}":G)+"). If you meant to render a collection of children, use an array instead.")}return we}function V(z,G,P){if(z==null)return z;var oe=[],be=0;return B(z,oe,"","",function(xe){return G.call(P,xe,be++)}),oe}function Q(z){if(z._status===-1){var G=z._result;G=G(),G.then(function(P){(z._status===0||z._status===-1)&&(z._status=1,z._result=P)},function(P){(z._status===0||z._status===-1)&&(z._status=2,z._result=P)}),z._status===-1&&(z._status=0,z._result=G)}if(z._status===1)return z._result.default;throw z._result}var K=typeof reportError=="function"?reportError:function(z){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var G=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof z=="object"&&z!==null&&typeof z.message=="string"?String(z.message):String(z),error:z});if(!window.dispatchEvent(G))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",z);return}console.error(z)},L={map:V,forEach:function(z,G,P){V(z,function(){G.apply(this,arguments)},P)},count:function(z){var G=0;return V(z,function(){G++}),G},toArray:function(z){return V(z,function(G){return G})||[]},only:function(z){if(!U(z))throw Error("React.Children.only expected to receive a single React element child.");return z}};return at.Activity=m,at.Children=L,at.Component=E,at.Fragment=n,at.Profiler=a,at.PureComponent=N,at.StrictMode=r,at.Suspense=f,at.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=I,at.__COMPILER_RUNTIME={__proto__:null,c:function(z){return I.H.useMemoCache(z)}},at.cache=function(z){return function(){return z.apply(null,arguments)}},at.cacheSignal=function(){return null},at.cloneElement=function(z,G,P){if(z==null)throw Error("The argument must be a React element, but you passed "+z+".");var oe=v({},z.props),be=z.key;if(G!=null)for(xe in G.key!==void 0&&(be=""+G.key),G)!R.call(G,xe)||xe==="key"||xe==="__self"||xe==="__source"||xe==="ref"&&G.ref===void 0||(oe[xe]=G[xe]);var xe=arguments.length-2;if(xe===1)oe.children=P;else if(1<xe){for(var we=Array(xe),J=0;J<xe;J++)we[J]=arguments[J+2];oe.children=we}return F(z.type,be,oe)},at.createContext=function(z){return z={$$typeof:l,_currentValue:z,_currentValue2:z,_threadCount:0,Provider:null,Consumer:null},z.Provider=z,z.Consumer={$$typeof:o,_context:z},z},at.createElement=function(z,G,P){var oe,be={},xe=null;if(G!=null)for(oe in G.key!==void 0&&(xe=""+G.key),G)R.call(G,oe)&&oe!=="key"&&oe!=="__self"&&oe!=="__source"&&(be[oe]=G[oe]);var we=arguments.length-2;if(we===1)be.children=P;else if(1<we){for(var J=Array(we),de=0;de<we;de++)J[de]=arguments[de+2];be.children=J}if(z&&z.defaultProps)for(oe in we=z.defaultProps,we)be[oe]===void 0&&(be[oe]=we[oe]);return F(z,xe,be)},at.createRef=function(){return{current:null}},at.forwardRef=function(z){return{$$typeof:d,render:z}},at.isValidElement=U,at.lazy=function(z){return{$$typeof:g,_payload:{_status:-1,_result:z},_init:Q}},at.memo=function(z,G){return{$$typeof:h,type:z,compare:G===void 0?null:G}},at.startTransition=function(z){var G=I.T,P={};I.T=P;try{var oe=z(),be=I.S;be!==null&&be(P,oe),typeof oe=="object"&&oe!==null&&typeof oe.then=="function"&&oe.then(T,K)}catch(xe){K(xe)}finally{G!==null&&P.types!==null&&(G.types=P.types),I.T=G}},at.unstable_useCacheRefresh=function(){return I.H.useCacheRefresh()},at.use=function(z){return I.H.use(z)},at.useActionState=function(z,G,P){return I.H.useActionState(z,G,P)},at.useCallback=function(z,G){return I.H.useCallback(z,G)},at.useContext=function(z){return I.H.useContext(z)},at.useDebugValue=function(){},at.useDeferredValue=function(z,G){return I.H.useDeferredValue(z,G)},at.useEffect=function(z,G){return I.H.useEffect(z,G)},at.useEffectEvent=function(z){return I.H.useEffectEvent(z)},at.useId=function(){return I.H.useId()},at.useImperativeHandle=function(z,G,P){return I.H.useImperativeHandle(z,G,P)},at.useInsertionEffect=function(z,G){return I.H.useInsertionEffect(z,G)},at.useLayoutEffect=function(z,G){return I.H.useLayoutEffect(z,G)},at.useMemo=function(z,G){return I.H.useMemo(z,G)},at.useOptimistic=function(z,G){return I.H.useOptimistic(z,G)},at.useReducer=function(z,G,P){return I.H.useReducer(z,G,P)},at.useRef=function(z){return I.H.useRef(z)},at.useState=function(z){return I.H.useState(z)},at.useSyncExternalStore=function(z,G,P){return I.H.useSyncExternalStore(z,G,P)},at.useTransition=function(){return I.H.useTransition()},at.version="19.2.5",at}var M1;function qu(){return M1||(M1=1,xg.exports=BM()),xg.exports}var C=qu();const UM=Fu(C);var vg={exports:{}},Wc={},wg={exports:{}},kg={};/**
18
+ * @license React
19
+ * scheduler.production.js
20
+ *
21
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
22
+ *
23
+ * This source code is licensed under the MIT license found in the
24
+ * LICENSE file in the root directory of this source tree.
25
+ */var D1;function $M(){return D1||(D1=1,(function(e){function t(B,V){var Q=B.length;B.push(V);e:for(;0<Q;){var K=Q-1>>>1,L=B[K];if(0<a(L,V))B[K]=V,B[Q]=L,Q=K;else break e}}function n(B){return B.length===0?null:B[0]}function r(B){if(B.length===0)return null;var V=B[0],Q=B.pop();if(Q!==V){B[0]=Q;e:for(var K=0,L=B.length,z=L>>>1;K<z;){var G=2*(K+1)-1,P=B[G],oe=G+1,be=B[oe];if(0>a(P,Q))oe<L&&0>a(be,P)?(B[K]=be,B[oe]=Q,K=oe):(B[K]=P,B[G]=Q,K=G);else if(oe<L&&0>a(be,Q))B[K]=be,B[oe]=Q,K=oe;else break e}}return V}function a(B,V){var Q=B.sortIndex-V.sortIndex;return Q!==0?Q:B.id-V.id}if(e.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var o=performance;e.unstable_now=function(){return o.now()}}else{var l=Date,d=l.now();e.unstable_now=function(){return l.now()-d}}var f=[],h=[],g=1,m=null,y=3,b=!1,k=!1,v=!1,S=!1,E=typeof setTimeout=="function"?setTimeout:null,j=typeof clearTimeout=="function"?clearTimeout:null,N=typeof setImmediate<"u"?setImmediate:null;function _(B){for(var V=n(h);V!==null;){if(V.callback===null)r(h);else if(V.startTime<=B)r(h),V.sortIndex=V.expirationTime,t(f,V);else break;V=n(h)}}function O(B){if(v=!1,_(B),!k)if(n(f)!==null)k=!0,T||(T=!0,q());else{var V=n(h);V!==null&&H(O,V.startTime-B)}}var T=!1,I=-1,R=5,F=-1;function M(){return S?!0:!(e.unstable_now()-F<R)}function U(){if(S=!1,T){var B=e.unstable_now();F=B;var V=!0;try{e:{k=!1,v&&(v=!1,j(I),I=-1),b=!0;var Q=y;try{t:{for(_(B),m=n(f);m!==null&&!(m.expirationTime>B&&M());){var K=m.callback;if(typeof K=="function"){m.callback=null,y=m.priorityLevel;var L=K(m.expirationTime<=B);if(B=e.unstable_now(),typeof L=="function"){m.callback=L,_(B),V=!0;break t}m===n(f)&&r(f),_(B)}else r(f);m=n(f)}if(m!==null)V=!0;else{var z=n(h);z!==null&&H(O,z.startTime-B),V=!1}}break e}finally{m=null,y=Q,b=!1}V=void 0}}finally{V?q():T=!1}}}var q;if(typeof N=="function")q=function(){N(U)};else if(typeof MessageChannel<"u"){var Y=new MessageChannel,D=Y.port2;Y.port1.onmessage=U,q=function(){D.postMessage(null)}}else q=function(){E(U,0)};function H(B,V){I=E(function(){B(e.unstable_now())},V)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(B){B.callback=null},e.unstable_forceFrameRate=function(B){0>B||125<B?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):R=0<B?Math.floor(1e3/B):5},e.unstable_getCurrentPriorityLevel=function(){return y},e.unstable_next=function(B){switch(y){case 1:case 2:case 3:var V=3;break;default:V=y}var Q=y;y=V;try{return B()}finally{y=Q}},e.unstable_requestPaint=function(){S=!0},e.unstable_runWithPriority=function(B,V){switch(B){case 1:case 2:case 3:case 4:case 5:break;default:B=3}var Q=y;y=B;try{return V()}finally{y=Q}},e.unstable_scheduleCallback=function(B,V,Q){var K=e.unstable_now();switch(typeof Q=="object"&&Q!==null?(Q=Q.delay,Q=typeof Q=="number"&&0<Q?K+Q:K):Q=K,B){case 1:var L=-1;break;case 2:L=250;break;case 5:L=1073741823;break;case 4:L=1e4;break;default:L=5e3}return L=Q+L,B={id:g++,callback:V,priorityLevel:B,startTime:Q,expirationTime:L,sortIndex:-1},Q>K?(B.sortIndex=Q,t(h,B),n(f)===null&&B===n(h)&&(v?(j(I),I=-1):v=!0,H(O,Q-K))):(B.sortIndex=L,t(f,B),k||b||(k=!0,T||(T=!0,q()))),B},e.unstable_shouldYield=M,e.unstable_wrapCallback=function(B){var V=y;return function(){var Q=y;y=V;try{return B.apply(this,arguments)}finally{y=Q}}}})(kg)),kg}var O1;function FM(){return O1||(O1=1,wg.exports=$M()),wg.exports}var Eg={exports:{}},Hn={};/**
26
+ * @license React
27
+ * react-dom.production.js
28
+ *
29
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
30
+ *
31
+ * This source code is licensed under the MIT license found in the
32
+ * LICENSE file in the root directory of this source tree.
33
+ */var R1;function qM(){if(R1)return Hn;R1=1;var e=qu();function t(f){var h="https://react.dev/errors/"+f;if(1<arguments.length){h+="?args[]="+encodeURIComponent(arguments[1]);for(var g=2;g<arguments.length;g++)h+="&args[]="+encodeURIComponent(arguments[g])}return"Minified React error #"+f+"; visit "+h+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function n(){}var r={d:{f:n,r:function(){throw Error(t(522))},D:n,C:n,L:n,m:n,X:n,S:n,M:n},p:0,findDOMNode:null},a=Symbol.for("react.portal");function o(f,h,g){var m=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:a,key:m==null?null:""+m,children:f,containerInfo:h,implementation:g}}var l=e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function d(f,h){if(f==="font")return"";if(typeof h=="string")return h==="use-credentials"?h:""}return Hn.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=r,Hn.createPortal=function(f,h){var g=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!h||h.nodeType!==1&&h.nodeType!==9&&h.nodeType!==11)throw Error(t(299));return o(f,h,null,g)},Hn.flushSync=function(f){var h=l.T,g=r.p;try{if(l.T=null,r.p=2,f)return f()}finally{l.T=h,r.p=g,r.d.f()}},Hn.preconnect=function(f,h){typeof f=="string"&&(h?(h=h.crossOrigin,h=typeof h=="string"?h==="use-credentials"?h:"":void 0):h=null,r.d.C(f,h))},Hn.prefetchDNS=function(f){typeof f=="string"&&r.d.D(f)},Hn.preinit=function(f,h){if(typeof f=="string"&&h&&typeof h.as=="string"){var g=h.as,m=d(g,h.crossOrigin),y=typeof h.integrity=="string"?h.integrity:void 0,b=typeof h.fetchPriority=="string"?h.fetchPriority:void 0;g==="style"?r.d.S(f,typeof h.precedence=="string"?h.precedence:void 0,{crossOrigin:m,integrity:y,fetchPriority:b}):g==="script"&&r.d.X(f,{crossOrigin:m,integrity:y,fetchPriority:b,nonce:typeof h.nonce=="string"?h.nonce:void 0})}},Hn.preinitModule=function(f,h){if(typeof f=="string")if(typeof h=="object"&&h!==null){if(h.as==null||h.as==="script"){var g=d(h.as,h.crossOrigin);r.d.M(f,{crossOrigin:g,integrity:typeof h.integrity=="string"?h.integrity:void 0,nonce:typeof h.nonce=="string"?h.nonce:void 0})}}else h==null&&r.d.M(f)},Hn.preload=function(f,h){if(typeof f=="string"&&typeof h=="object"&&h!==null&&typeof h.as=="string"){var g=h.as,m=d(g,h.crossOrigin);r.d.L(f,g,{crossOrigin:m,integrity:typeof h.integrity=="string"?h.integrity:void 0,nonce:typeof h.nonce=="string"?h.nonce:void 0,type:typeof h.type=="string"?h.type:void 0,fetchPriority:typeof h.fetchPriority=="string"?h.fetchPriority:void 0,referrerPolicy:typeof h.referrerPolicy=="string"?h.referrerPolicy:void 0,imageSrcSet:typeof h.imageSrcSet=="string"?h.imageSrcSet:void 0,imageSizes:typeof h.imageSizes=="string"?h.imageSizes:void 0,media:typeof h.media=="string"?h.media:void 0})}},Hn.preloadModule=function(f,h){if(typeof f=="string")if(h){var g=d(h.as,h.crossOrigin);r.d.m(f,{as:typeof h.as=="string"&&h.as!=="script"?h.as:void 0,crossOrigin:g,integrity:typeof h.integrity=="string"?h.integrity:void 0})}else r.d.m(f)},Hn.requestFormReset=function(f){r.d.r(f)},Hn.unstable_batchedUpdates=function(f,h){return f(h)},Hn.useFormState=function(f,h,g){return l.H.useFormState(f,h,g)},Hn.useFormStatus=function(){return l.H.useHostTransitionStatus()},Hn.version="19.2.5",Hn}var L1;function JS(){if(L1)return Eg.exports;L1=1;function e(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),Eg.exports=qM(),Eg.exports}/**
34
+ * @license React
35
+ * react-dom-client.production.js
36
+ *
37
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
38
+ *
39
+ * This source code is licensed under the MIT license found in the
40
+ * LICENSE file in the root directory of this source tree.
41
+ */var I1;function HM(){if(I1)return Wc;I1=1;var e=FM(),t=qu(),n=JS();function r(i){var s="https://react.dev/errors/"+i;if(1<arguments.length){s+="?args[]="+encodeURIComponent(arguments[1]);for(var c=2;c<arguments.length;c++)s+="&args[]="+encodeURIComponent(arguments[c])}return"Minified React error #"+i+"; visit "+s+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function a(i){return!(!i||i.nodeType!==1&&i.nodeType!==9&&i.nodeType!==11)}function o(i){var s=i,c=i;if(i.alternate)for(;s.return;)s=s.return;else{i=s;do s=i,(s.flags&4098)!==0&&(c=s.return),i=s.return;while(i)}return s.tag===3?c:null}function l(i){if(i.tag===13){var s=i.memoizedState;if(s===null&&(i=i.alternate,i!==null&&(s=i.memoizedState)),s!==null)return s.dehydrated}return null}function d(i){if(i.tag===31){var s=i.memoizedState;if(s===null&&(i=i.alternate,i!==null&&(s=i.memoizedState)),s!==null)return s.dehydrated}return null}function f(i){if(o(i)!==i)throw Error(r(188))}function h(i){var s=i.alternate;if(!s){if(s=o(i),s===null)throw Error(r(188));return s!==i?null:i}for(var c=i,p=s;;){var x=c.return;if(x===null)break;var w=x.alternate;if(w===null){if(p=x.return,p!==null){c=p;continue}break}if(x.child===w.child){for(w=x.child;w;){if(w===c)return f(x),i;if(w===p)return f(x),s;w=w.sibling}throw Error(r(188))}if(c.return!==p.return)c=x,p=w;else{for(var A=!1,$=x.child;$;){if($===c){A=!0,c=x,p=w;break}if($===p){A=!0,p=x,c=w;break}$=$.sibling}if(!A){for($=w.child;$;){if($===c){A=!0,c=w,p=x;break}if($===p){A=!0,p=w,c=x;break}$=$.sibling}if(!A)throw Error(r(189))}}if(c.alternate!==p)throw Error(r(190))}if(c.tag!==3)throw Error(r(188));return c.stateNode.current===c?i:s}function g(i){var s=i.tag;if(s===5||s===26||s===27||s===6)return i;for(i=i.child;i!==null;){if(s=g(i),s!==null)return s;i=i.sibling}return null}var m=Object.assign,y=Symbol.for("react.element"),b=Symbol.for("react.transitional.element"),k=Symbol.for("react.portal"),v=Symbol.for("react.fragment"),S=Symbol.for("react.strict_mode"),E=Symbol.for("react.profiler"),j=Symbol.for("react.consumer"),N=Symbol.for("react.context"),_=Symbol.for("react.forward_ref"),O=Symbol.for("react.suspense"),T=Symbol.for("react.suspense_list"),I=Symbol.for("react.memo"),R=Symbol.for("react.lazy"),F=Symbol.for("react.activity"),M=Symbol.for("react.memo_cache_sentinel"),U=Symbol.iterator;function q(i){return i===null||typeof i!="object"?null:(i=U&&i[U]||i["@@iterator"],typeof i=="function"?i:null)}var Y=Symbol.for("react.client.reference");function D(i){if(i==null)return null;if(typeof i=="function")return i.$$typeof===Y?null:i.displayName||i.name||null;if(typeof i=="string")return i;switch(i){case v:return"Fragment";case E:return"Profiler";case S:return"StrictMode";case O:return"Suspense";case T:return"SuspenseList";case F:return"Activity"}if(typeof i=="object")switch(i.$$typeof){case k:return"Portal";case N:return i.displayName||"Context";case j:return(i._context.displayName||"Context")+".Consumer";case _:var s=i.render;return i=i.displayName,i||(i=s.displayName||s.name||"",i=i!==""?"ForwardRef("+i+")":"ForwardRef"),i;case I:return s=i.displayName||null,s!==null?s:D(i.type)||"Memo";case R:s=i._payload,i=i._init;try{return D(i(s))}catch{}}return null}var H=Array.isArray,B=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,V=n.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Q={pending:!1,data:null,method:null,action:null},K=[],L=-1;function z(i){return{current:i}}function G(i){0>L||(i.current=K[L],K[L]=null,L--)}function P(i,s){L++,K[L]=i.current,i.current=s}var oe=z(null),be=z(null),xe=z(null),we=z(null);function J(i,s){switch(P(xe,s),P(be,i),P(oe,null),s.nodeType){case 9:case 11:i=(i=s.documentElement)&&(i=i.namespaceURI)?Qw(i):0;break;default:if(i=s.tagName,s=s.namespaceURI)s=Qw(s),i=Ww(s,i);else switch(i){case"svg":i=1;break;case"math":i=2;break;default:i=0}}G(oe),P(oe,i)}function de(){G(oe),G(be),G(xe)}function Ce(i){i.memoizedState!==null&&P(we,i);var s=oe.current,c=Ww(s,i.type);s!==c&&(P(be,i),P(oe,c))}function Re(i){be.current===i&&(G(oe),G(be)),we.current===i&&(G(we),Kc._currentValue=Q)}var Me,le;function Ne(i){if(Me===void 0)try{throw Error()}catch(c){var s=c.stack.trim().match(/\n( *(at )?)/);Me=s&&s[1]||"",le=-1<c.stack.indexOf(`
42
+ at`)?" (<anonymous>)":-1<c.stack.indexOf("@")?"@unknown:0:0":""}return`
43
+ `+Me+i+le}var Te=!1;function ke(i,s){if(!i||Te)return"";Te=!0;var c=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var p={DetermineComponentFrameRoot:function(){try{if(s){var ye=function(){throw Error()};if(Object.defineProperty(ye.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(ye,[])}catch(ce){var se=ce}Reflect.construct(i,[],ye)}else{try{ye.call()}catch(ce){se=ce}i.call(ye.prototype)}}else{try{throw Error()}catch(ce){se=ce}(ye=i())&&typeof ye.catch=="function"&&ye.catch(function(){})}}catch(ce){if(ce&&se&&typeof ce.stack=="string")return[ce.stack,se.stack]}return[null,null]}};p.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var x=Object.getOwnPropertyDescriptor(p.DetermineComponentFrameRoot,"name");x&&x.configurable&&Object.defineProperty(p.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var w=p.DetermineComponentFrameRoot(),A=w[0],$=w[1];if(A&&$){var W=A.split(`
44
+ `),ae=$.split(`
45
+ `);for(x=p=0;p<W.length&&!W[p].includes("DetermineComponentFrameRoot");)p++;for(;x<ae.length&&!ae[x].includes("DetermineComponentFrameRoot");)x++;if(p===W.length||x===ae.length)for(p=W.length-1,x=ae.length-1;1<=p&&0<=x&&W[p]!==ae[x];)x--;for(;1<=p&&0<=x;p--,x--)if(W[p]!==ae[x]){if(p!==1||x!==1)do if(p--,x--,0>x||W[p]!==ae[x]){var fe=`
46
+ `+W[p].replace(" at new "," at ");return i.displayName&&fe.includes("<anonymous>")&&(fe=fe.replace("<anonymous>",i.displayName)),fe}while(1<=p&&0<=x);break}}}finally{Te=!1,Error.prepareStackTrace=c}return(c=i?i.displayName||i.name:"")?Ne(c):""}function Qe(i,s){switch(i.tag){case 26:case 27:case 5:return Ne(i.type);case 16:return Ne("Lazy");case 13:return i.child!==s&&s!==null?Ne("Suspense Fallback"):Ne("Suspense");case 19:return Ne("SuspenseList");case 0:case 15:return ke(i.type,!1);case 11:return ke(i.type.render,!1);case 1:return ke(i.type,!0);case 31:return Ne("Activity");default:return""}}function re(i){try{var s="",c=null;do s+=Qe(i,c),c=i,i=i.return;while(i);return s}catch(p){return`
47
+ Error generating stack: `+p.message+`
48
+ `+p.stack}}var Ae=Object.prototype.hasOwnProperty,ue=e.unstable_scheduleCallback,he=e.unstable_cancelCallback,ge=e.unstable_shouldYield,Le=e.unstable_requestPaint,ze=e.unstable_now,Fe=e.unstable_getCurrentPriorityLevel,te=e.unstable_ImmediatePriority,ve=e.unstable_UserBlockingPriority,Ie=e.unstable_NormalPriority,Ze=e.unstable_LowPriority,it=e.unstable_IdlePriority,At=e.log,Un=e.unstable_setDisableYieldValue,un=null,Mt=null;function Qt(i){if(typeof At=="function"&&Un(i),Mt&&typeof Mt.setStrictMode=="function")try{Mt.setStrictMode(un,i)}catch{}}var yt=Math.clz32?Math.clz32:ko,Tr=Math.log,Rn=Math.LN2;function ko(i){return i>>>=0,i===0?32:31-(Tr(i)/Rn|0)|0}var zi=256,wa=262144,Pi=4194304;function $n(i){var s=i&42;if(s!==0)return s;switch(i&-i){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return i&261888;case 262144:case 524288:case 1048576:case 2097152:return i&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return i&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return i}}function Z(i,s,c){var p=i.pendingLanes;if(p===0)return 0;var x=0,w=i.suspendedLanes,A=i.pingedLanes;i=i.warmLanes;var $=p&134217727;return $!==0?(p=$&~w,p!==0?x=$n(p):(A&=$,A!==0?x=$n(A):c||(c=$&~i,c!==0&&(x=$n(c))))):($=p&~w,$!==0?x=$n($):A!==0?x=$n(A):c||(c=p&~i,c!==0&&(x=$n(c)))),x===0?0:s!==0&&s!==x&&(s&w)===0&&(w=x&-x,c=s&-s,w>=c||w===32&&(c&4194048)!==0)?s:x}function pe(i,s){return(i.pendingLanes&~(i.suspendedLanes&~i.pingedLanes)&s)===0}function je(i,s){switch(i){case 1:case 2:case 4:case 8:case 64:return s+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 s+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 rt(){var i=Pi;return Pi<<=1,(Pi&62914560)===0&&(Pi=4194304),i}function Ft(i){for(var s=[],c=0;31>c;c++)s.push(i);return s}function Ot(i,s){i.pendingLanes|=s,s!==268435456&&(i.suspendedLanes=0,i.pingedLanes=0,i.warmLanes=0)}function $e(i,s,c,p,x,w){var A=i.pendingLanes;i.pendingLanes=c,i.suspendedLanes=0,i.pingedLanes=0,i.warmLanes=0,i.expiredLanes&=c,i.entangledLanes&=c,i.errorRecoveryDisabledLanes&=c,i.shellSuspendCounter=0;var $=i.entanglements,W=i.expirationTimes,ae=i.hiddenUpdates;for(c=A&~c;0<c;){var fe=31-yt(c),ye=1<<fe;$[fe]=0,W[fe]=-1;var se=ae[fe];if(se!==null)for(ae[fe]=null,fe=0;fe<se.length;fe++){var ce=se[fe];ce!==null&&(ce.lane&=-536870913)}c&=~ye}p!==0&&Pe(i,p,0),w!==0&&x===0&&i.tag!==0&&(i.suspendedLanes|=w&~(A&~s))}function Pe(i,s,c){i.pendingLanes|=s,i.suspendedLanes&=~s;var p=31-yt(s);i.entangledLanes|=s,i.entanglements[p]=i.entanglements[p]|1073741824|c&261930}function et(i,s){var c=i.entangledLanes|=s;for(i=i.entanglements;c;){var p=31-yt(c),x=1<<p;x&s|i[p]&s&&(i[p]|=s),c&=~x}}function rn(i,s){var c=s&-s;return c=(c&42)!==0?1:Vt(c),(c&(i.suspendedLanes|s))!==0?0:c}function Vt(i){switch(i){case 2:i=1;break;case 8:i=4;break;case 32:i=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:i=128;break;case 268435456:i=134217728;break;default:i=0}return i}function Qr(i){return i&=-i,2<i?8<i?(i&134217727)!==0?32:268435456:8:2}function ka(){var i=V.p;return i!==0?i:(i=window.event,i===void 0?32:x1(i.type))}function Ea(i,s){var c=V.p;try{return V.p=i,s()}finally{V.p=c}}var Mr=Math.random().toString(36).slice(2),an="__reactFiber$"+Mr,Tn="__reactProps$"+Mr,Wr="__reactContainer$"+Mr,Sa="__reactEvents$"+Mr,Es="__reactListeners$"+Mr,Na="__reactHandles$"+Mr,Eo="__reactResources$"+Mr,Bi="__reactMarker$"+Mr;function Ss(i){delete i[an],delete i[Tn],delete i[Sa],delete i[Es],delete i[Na]}function Ln(i){var s=i[an];if(s)return s;for(var c=i.parentNode;c;){if(s=c[Wr]||c[an]){if(c=s.alternate,s.child!==null||c!==null&&c.child!==null)for(i=r1(i);i!==null;){if(c=i[an])return c;i=r1(i)}return s}i=c,c=i.parentNode}return null}function Xr(i){if(i=i[an]||i[Wr]){var s=i.tag;if(s===5||s===6||s===13||s===31||s===26||s===27||s===3)return i}return null}function Zr(i){var s=i.tag;if(s===5||s===26||s===27||s===6)return i.stateNode;throw Error(r(33))}function yi(i){var s=i[Eo];return s||(s=i[Eo]={hoistableStyles:new Map,hoistableScripts:new Map}),s}function dn(i){i[Bi]=!0}var So=new Set,Ui={};function Jr(i,s){Ee(i,s),Ee(i+"Capture",s)}function Ee(i,s){for(Ui[i]=s,i=0;i<s.length;i++)So.add(s[i])}var Ge=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]*$"),ft={},Nt={};function sn(i){return Ae.call(Nt,i)?!0:Ae.call(ft,i)?!1:Ge.test(i)?Nt[i]=!0:(ft[i]=!0,!1)}function Mn(i,s,c){if(sn(s))if(c===null)i.removeAttribute(s);else{switch(typeof c){case"undefined":case"function":case"symbol":i.removeAttribute(s);return;case"boolean":var p=s.toLowerCase().slice(0,5);if(p!=="data-"&&p!=="aria-"){i.removeAttribute(s);return}}i.setAttribute(s,""+c)}}function Qn(i,s,c){if(c===null)i.removeAttribute(s);else{switch(typeof c){case"undefined":case"function":case"symbol":case"boolean":i.removeAttribute(s);return}i.setAttribute(s,""+c)}}function Fn(i,s,c,p){if(p===null)i.removeAttribute(c);else{switch(typeof p){case"undefined":case"function":case"symbol":case"boolean":i.removeAttribute(c);return}i.setAttributeNS(s,c,""+p)}}function zt(i){switch(typeof i){case"bigint":case"boolean":case"number":case"string":case"undefined":return i;case"object":return i;default:return""}}function Wn(i){var s=i.type;return(i=i.nodeName)&&i.toLowerCase()==="input"&&(s==="checkbox"||s==="radio")}function No(i,s,c){var p=Object.getOwnPropertyDescriptor(i.constructor.prototype,s);if(!i.hasOwnProperty(s)&&typeof p<"u"&&typeof p.get=="function"&&typeof p.set=="function"){var x=p.get,w=p.set;return Object.defineProperty(i,s,{configurable:!0,get:function(){return x.call(this)},set:function(A){c=""+A,w.call(this,A)}}),Object.defineProperty(i,s,{enumerable:p.enumerable}),{getValue:function(){return c},setValue:function(A){c=""+A},stopTracking:function(){i._valueTracker=null,delete i[s]}}}}function _a(i){if(!i._valueTracker){var s=Wn(i)?"checked":"value";i._valueTracker=No(i,s,""+i[s])}}function bi(i){if(!i)return!1;var s=i._valueTracker;if(!s)return!0;var c=s.getValue(),p="";return i&&(p=Wn(i)?i.checked?"true":"false":i.value),i=p,i!==c?(s.setValue(i),!0):!1}function ja(i){if(i=i||(typeof document<"u"?document:void 0),typeof i>"u")return null;try{return i.activeElement||i.body}catch{return i.body}}var _o=/[\n"\\]/g;function qn(i){return i.replace(_o,function(s){return"\\"+s.charCodeAt(0).toString(16)+" "})}function Ns(i,s,c,p,x,w,A,$){i.name="",A!=null&&typeof A!="function"&&typeof A!="symbol"&&typeof A!="boolean"?i.type=A:i.removeAttribute("type"),s!=null?A==="number"?(s===0&&i.value===""||i.value!=s)&&(i.value=""+zt(s)):i.value!==""+zt(s)&&(i.value=""+zt(s)):A!=="submit"&&A!=="reset"||i.removeAttribute("value"),s!=null?Ca(i,A,zt(s)):c!=null?Ca(i,A,zt(c)):p!=null&&i.removeAttribute("value"),x==null&&w!=null&&(i.defaultChecked=!!w),x!=null&&(i.checked=x&&typeof x!="function"&&typeof x!="symbol"),$!=null&&typeof $!="function"&&typeof $!="symbol"&&typeof $!="boolean"?i.name=""+zt($):i.removeAttribute("name")}function ei(i,s,c,p,x,w,A,$){if(w!=null&&typeof w!="function"&&typeof w!="symbol"&&typeof w!="boolean"&&(i.type=w),s!=null||c!=null){if(!(w!=="submit"&&w!=="reset"||s!=null)){_a(i);return}c=c!=null?""+zt(c):"",s=s!=null?""+zt(s):c,$||s===i.value||(i.value=s),i.defaultValue=s}p=p??x,p=typeof p!="function"&&typeof p!="symbol"&&!!p,i.checked=$?i.checked:!!p,i.defaultChecked=!!p,A!=null&&typeof A!="function"&&typeof A!="symbol"&&typeof A!="boolean"&&(i.name=A),_a(i)}function Ca(i,s,c){s==="number"&&ja(i.ownerDocument)===i||i.defaultValue===""+c||(i.defaultValue=""+c)}function jn(i,s,c,p){if(i=i.options,s){s={};for(var x=0;x<c.length;x++)s["$"+c[x]]=!0;for(c=0;c<i.length;c++)x=s.hasOwnProperty("$"+i[c].value),i[c].selected!==x&&(i[c].selected=x),x&&p&&(i[c].defaultSelected=!0)}else{for(c=""+zt(c),s=null,x=0;x<i.length;x++){if(i[x].value===c){i[x].selected=!0,p&&(i[x].defaultSelected=!0);return}s!==null||i[x].disabled||(s=i[x])}s!==null&&(s.selected=!0)}}function _s(i,s,c){if(s!=null&&(s=""+zt(s),s!==i.value&&(i.value=s),c==null)){i.defaultValue!==s&&(i.defaultValue=s);return}i.defaultValue=c!=null?""+zt(c):""}function jo(i,s,c,p){if(s==null){if(p!=null){if(c!=null)throw Error(r(92));if(H(p)){if(1<p.length)throw Error(r(93));p=p[0]}c=p}c==null&&(c=""),s=c}c=zt(s),i.defaultValue=c,p=i.textContent,p===c&&p!==""&&p!==null&&(i.value=p),_a(i)}function nt(i,s){if(s){var c=i.firstChild;if(c&&c===i.lastChild&&c.nodeType===3){c.nodeValue=s;return}}i.textContent=s}var od=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 bn(i,s,c){var p=s.indexOf("--")===0;c==null||typeof c=="boolean"||c===""?p?i.setProperty(s,""):s==="float"?i.cssFloat="":i[s]="":p?i.setProperty(s,c):typeof c!="number"||c===0||od.has(s)?s==="float"?i.cssFloat=c:i[s]=(""+c).trim():i[s]=c+"px"}function Rt(i,s,c){if(s!=null&&typeof s!="object")throw Error(r(62));if(i=i.style,c!=null){for(var p in c)!c.hasOwnProperty(p)||s!=null&&s.hasOwnProperty(p)||(p.indexOf("--")===0?i.setProperty(p,""):p==="float"?i.cssFloat="":i[p]="");for(var x in s)p=s[x],s.hasOwnProperty(x)&&c[x]!==p&&bn(i,x,p)}else for(var w in s)s.hasOwnProperty(w)&&bn(i,w,s[w])}function Aa(i){if(i.indexOf("-")===-1)return!1;switch(i){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 $i=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"],["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"]]),sc=/^[\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 Ta(i){return sc.test(""+i)?"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')":i}function _e(){}var qe=null;function ot(i){return i=i.target||i.srcElement||window,i.correspondingUseElement&&(i=i.correspondingUseElement),i.nodeType===3?i.parentNode:i}var bt=null,on=null;function Dr(i){var s=Xr(i);if(s&&(i=s.stateNode)){var c=i[Tn]||null;e:switch(i=s.stateNode,s.type){case"input":if(Ns(i,c.value,c.defaultValue,c.defaultValue,c.checked,c.defaultChecked,c.type,c.name),s=c.name,c.type==="radio"&&s!=null){for(c=i;c.parentNode;)c=c.parentNode;for(c=c.querySelectorAll('input[name="'+qn(""+s)+'"][type="radio"]'),s=0;s<c.length;s++){var p=c[s];if(p!==i&&p.form===i.form){var x=p[Tn]||null;if(!x)throw Error(r(90));Ns(p,x.value,x.defaultValue,x.defaultValue,x.checked,x.defaultChecked,x.type,x.name)}}for(s=0;s<c.length;s++)p=c[s],p.form===i.form&&bi(p)}break e;case"textarea":_s(i,c.value,c.defaultValue);break e;case"select":s=c.value,s!=null&&jn(i,!!c.multiple,s,!1)}}}var oc=!1;function ld(i,s,c){if(oc)return i(s,c);oc=!0;try{var p=i(s);return p}finally{if(oc=!1,(bt!==null||on!==null)&&(Qd(),bt&&(s=bt,i=on,on=bt=null,Dr(s),i)))for(s=0;s<i.length;s++)Dr(i[s])}}function lc(i,s){var c=i.stateNode;if(c===null)return null;var p=c[Tn]||null;if(p===null)return null;c=p[s];e:switch(s){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(p=!p.disabled)||(i=i.type,p=!(i==="button"||i==="input"||i==="select"||i==="textarea")),i=!p;break e;default:i=!1}if(i)return null;if(c&&typeof c!="function")throw Error(r(231,s,typeof c));return c}var Fi=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),yp=!1;if(Fi)try{var cc={};Object.defineProperty(cc,"passive",{get:function(){yp=!0}}),window.addEventListener("test",cc,cc),window.removeEventListener("test",cc,cc)}catch{yp=!1}var Ma=null,bp=null,cd=null;function Wx(){if(cd)return cd;var i,s=bp,c=s.length,p,x="value"in Ma?Ma.value:Ma.textContent,w=x.length;for(i=0;i<c&&s[i]===x[i];i++);var A=c-i;for(p=1;p<=A&&s[c-p]===x[w-p];p++);return cd=x.slice(i,1<p?1-p:void 0)}function ud(i){var s=i.keyCode;return"charCode"in i?(i=i.charCode,i===0&&s===13&&(i=13)):i=s,i===10&&(i=13),32<=i||i===13?i:0}function dd(){return!0}function Xx(){return!1}function rr(i){function s(c,p,x,w,A){this._reactName=c,this._targetInst=x,this.type=p,this.nativeEvent=w,this.target=A,this.currentTarget=null;for(var $ in i)i.hasOwnProperty($)&&(c=i[$],this[$]=c?c(w):w[$]);return this.isDefaultPrevented=(w.defaultPrevented!=null?w.defaultPrevented:w.returnValue===!1)?dd:Xx,this.isPropagationStopped=Xx,this}return m(s.prototype,{preventDefault:function(){this.defaultPrevented=!0;var c=this.nativeEvent;c&&(c.preventDefault?c.preventDefault():typeof c.returnValue!="unknown"&&(c.returnValue=!1),this.isDefaultPrevented=dd)},stopPropagation:function(){var c=this.nativeEvent;c&&(c.stopPropagation?c.stopPropagation():typeof c.cancelBubble!="unknown"&&(c.cancelBubble=!0),this.isPropagationStopped=dd)},persist:function(){},isPersistent:dd}),s}var js={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(i){return i.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},fd=rr(js),uc=m({},js,{view:0,detail:0}),OA=rr(uc),xp,vp,dc,hd=m({},uc,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:kp,button:0,buttons:0,relatedTarget:function(i){return i.relatedTarget===void 0?i.fromElement===i.srcElement?i.toElement:i.fromElement:i.relatedTarget},movementX:function(i){return"movementX"in i?i.movementX:(i!==dc&&(dc&&i.type==="mousemove"?(xp=i.screenX-dc.screenX,vp=i.screenY-dc.screenY):vp=xp=0,dc=i),xp)},movementY:function(i){return"movementY"in i?i.movementY:vp}}),Zx=rr(hd),RA=m({},hd,{dataTransfer:0}),LA=rr(RA),IA=m({},uc,{relatedTarget:0}),wp=rr(IA),zA=m({},js,{animationName:0,elapsedTime:0,pseudoElement:0}),PA=rr(zA),BA=m({},js,{clipboardData:function(i){return"clipboardData"in i?i.clipboardData:window.clipboardData}}),UA=rr(BA),$A=m({},js,{data:0}),Jx=rr($A),FA={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},qA={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"},HA={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function KA(i){var s=this.nativeEvent;return s.getModifierState?s.getModifierState(i):(i=HA[i])?!!s[i]:!1}function kp(){return KA}var GA=m({},uc,{key:function(i){if(i.key){var s=FA[i.key]||i.key;if(s!=="Unidentified")return s}return i.type==="keypress"?(i=ud(i),i===13?"Enter":String.fromCharCode(i)):i.type==="keydown"||i.type==="keyup"?qA[i.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:kp,charCode:function(i){return i.type==="keypress"?ud(i):0},keyCode:function(i){return i.type==="keydown"||i.type==="keyup"?i.keyCode:0},which:function(i){return i.type==="keypress"?ud(i):i.type==="keydown"||i.type==="keyup"?i.keyCode:0}}),VA=rr(GA),YA=m({},hd,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),ev=rr(YA),QA=m({},uc,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:kp}),WA=rr(QA),XA=m({},js,{propertyName:0,elapsedTime:0,pseudoElement:0}),ZA=rr(XA),JA=m({},hd,{deltaX:function(i){return"deltaX"in i?i.deltaX:"wheelDeltaX"in i?-i.wheelDeltaX:0},deltaY:function(i){return"deltaY"in i?i.deltaY:"wheelDeltaY"in i?-i.wheelDeltaY:"wheelDelta"in i?-i.wheelDelta:0},deltaZ:0,deltaMode:0}),eT=rr(JA),tT=m({},js,{newState:0,oldState:0}),nT=rr(tT),rT=[9,13,27,32],Ep=Fi&&"CompositionEvent"in window,fc=null;Fi&&"documentMode"in document&&(fc=document.documentMode);var iT=Fi&&"TextEvent"in window&&!fc,tv=Fi&&(!Ep||fc&&8<fc&&11>=fc),nv=" ",rv=!1;function iv(i,s){switch(i){case"keyup":return rT.indexOf(s.keyCode)!==-1;case"keydown":return s.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function av(i){return i=i.detail,typeof i=="object"&&"data"in i?i.data:null}var Co=!1;function aT(i,s){switch(i){case"compositionend":return av(s);case"keypress":return s.which!==32?null:(rv=!0,nv);case"textInput":return i=s.data,i===nv&&rv?null:i;default:return null}}function sT(i,s){if(Co)return i==="compositionend"||!Ep&&iv(i,s)?(i=Wx(),cd=bp=Ma=null,Co=!1,i):null;switch(i){case"paste":return null;case"keypress":if(!(s.ctrlKey||s.altKey||s.metaKey)||s.ctrlKey&&s.altKey){if(s.char&&1<s.char.length)return s.char;if(s.which)return String.fromCharCode(s.which)}return null;case"compositionend":return tv&&s.locale!=="ko"?null:s.data;default:return null}}var oT={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 sv(i){var s=i&&i.nodeName&&i.nodeName.toLowerCase();return s==="input"?!!oT[i.type]:s==="textarea"}function ov(i,s,c,p){bt?on?on.push(p):on=[p]:bt=p,s=nf(s,"onChange"),0<s.length&&(c=new fd("onChange","change",null,c,p),i.push({event:c,listeners:s}))}var hc=null,pc=null;function lT(i){qw(i,0)}function pd(i){var s=Zr(i);if(bi(s))return i}function lv(i,s){if(i==="change")return s}var cv=!1;if(Fi){var Sp;if(Fi){var Np="oninput"in document;if(!Np){var uv=document.createElement("div");uv.setAttribute("oninput","return;"),Np=typeof uv.oninput=="function"}Sp=Np}else Sp=!1;cv=Sp&&(!document.documentMode||9<document.documentMode)}function dv(){hc&&(hc.detachEvent("onpropertychange",fv),pc=hc=null)}function fv(i){if(i.propertyName==="value"&&pd(pc)){var s=[];ov(s,pc,i,ot(i)),ld(lT,s)}}function cT(i,s,c){i==="focusin"?(dv(),hc=s,pc=c,hc.attachEvent("onpropertychange",fv)):i==="focusout"&&dv()}function uT(i){if(i==="selectionchange"||i==="keyup"||i==="keydown")return pd(pc)}function dT(i,s){if(i==="click")return pd(s)}function fT(i,s){if(i==="input"||i==="change")return pd(s)}function hT(i,s){return i===s&&(i!==0||1/i===1/s)||i!==i&&s!==s}var gr=typeof Object.is=="function"?Object.is:hT;function mc(i,s){if(gr(i,s))return!0;if(typeof i!="object"||i===null||typeof s!="object"||s===null)return!1;var c=Object.keys(i),p=Object.keys(s);if(c.length!==p.length)return!1;for(p=0;p<c.length;p++){var x=c[p];if(!Ae.call(s,x)||!gr(i[x],s[x]))return!1}return!0}function hv(i){for(;i&&i.firstChild;)i=i.firstChild;return i}function pv(i,s){var c=hv(i);i=0;for(var p;c;){if(c.nodeType===3){if(p=i+c.textContent.length,i<=s&&p>=s)return{node:c,offset:s-i};i=p}e:{for(;c;){if(c.nextSibling){c=c.nextSibling;break e}c=c.parentNode}c=void 0}c=hv(c)}}function mv(i,s){return i&&s?i===s?!0:i&&i.nodeType===3?!1:s&&s.nodeType===3?mv(i,s.parentNode):"contains"in i?i.contains(s):i.compareDocumentPosition?!!(i.compareDocumentPosition(s)&16):!1:!1}function gv(i){i=i!=null&&i.ownerDocument!=null&&i.ownerDocument.defaultView!=null?i.ownerDocument.defaultView:window;for(var s=ja(i.document);s instanceof i.HTMLIFrameElement;){try{var c=typeof s.contentWindow.location.href=="string"}catch{c=!1}if(c)i=s.contentWindow;else break;s=ja(i.document)}return s}function _p(i){var s=i&&i.nodeName&&i.nodeName.toLowerCase();return s&&(s==="input"&&(i.type==="text"||i.type==="search"||i.type==="tel"||i.type==="url"||i.type==="password")||s==="textarea"||i.contentEditable==="true")}var pT=Fi&&"documentMode"in document&&11>=document.documentMode,Ao=null,jp=null,gc=null,Cp=!1;function yv(i,s,c){var p=c.window===c?c.document:c.nodeType===9?c:c.ownerDocument;Cp||Ao==null||Ao!==ja(p)||(p=Ao,"selectionStart"in p&&_p(p)?p={start:p.selectionStart,end:p.selectionEnd}:(p=(p.ownerDocument&&p.ownerDocument.defaultView||window).getSelection(),p={anchorNode:p.anchorNode,anchorOffset:p.anchorOffset,focusNode:p.focusNode,focusOffset:p.focusOffset}),gc&&mc(gc,p)||(gc=p,p=nf(jp,"onSelect"),0<p.length&&(s=new fd("onSelect","select",null,s,c),i.push({event:s,listeners:p}),s.target=Ao)))}function Cs(i,s){var c={};return c[i.toLowerCase()]=s.toLowerCase(),c["Webkit"+i]="webkit"+s,c["Moz"+i]="moz"+s,c}var To={animationend:Cs("Animation","AnimationEnd"),animationiteration:Cs("Animation","AnimationIteration"),animationstart:Cs("Animation","AnimationStart"),transitionrun:Cs("Transition","TransitionRun"),transitionstart:Cs("Transition","TransitionStart"),transitioncancel:Cs("Transition","TransitionCancel"),transitionend:Cs("Transition","TransitionEnd")},Ap={},bv={};Fi&&(bv=document.createElement("div").style,"AnimationEvent"in window||(delete To.animationend.animation,delete To.animationiteration.animation,delete To.animationstart.animation),"TransitionEvent"in window||delete To.transitionend.transition);function As(i){if(Ap[i])return Ap[i];if(!To[i])return i;var s=To[i],c;for(c in s)if(s.hasOwnProperty(c)&&c in bv)return Ap[i]=s[c];return i}var xv=As("animationend"),vv=As("animationiteration"),wv=As("animationstart"),mT=As("transitionrun"),gT=As("transitionstart"),yT=As("transitioncancel"),kv=As("transitionend"),Ev=new Map,Tp="abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");Tp.push("scrollEnd");function ti(i,s){Ev.set(i,s),Jr(s,[i])}var md=typeof reportError=="function"?reportError:function(i){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var s=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof i=="object"&&i!==null&&typeof i.message=="string"?String(i.message):String(i),error:i});if(!window.dispatchEvent(s))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",i);return}console.error(i)},Or=[],Mo=0,Mp=0;function gd(){for(var i=Mo,s=Mp=Mo=0;s<i;){var c=Or[s];Or[s++]=null;var p=Or[s];Or[s++]=null;var x=Or[s];Or[s++]=null;var w=Or[s];if(Or[s++]=null,p!==null&&x!==null){var A=p.pending;A===null?x.next=x:(x.next=A.next,A.next=x),p.pending=x}w!==0&&Sv(c,x,w)}}function yd(i,s,c,p){Or[Mo++]=i,Or[Mo++]=s,Or[Mo++]=c,Or[Mo++]=p,Mp|=p,i.lanes|=p,i=i.alternate,i!==null&&(i.lanes|=p)}function Dp(i,s,c,p){return yd(i,s,c,p),bd(i)}function Ts(i,s){return yd(i,null,null,s),bd(i)}function Sv(i,s,c){i.lanes|=c;var p=i.alternate;p!==null&&(p.lanes|=c);for(var x=!1,w=i.return;w!==null;)w.childLanes|=c,p=w.alternate,p!==null&&(p.childLanes|=c),w.tag===22&&(i=w.stateNode,i===null||i._visibility&1||(x=!0)),i=w,w=w.return;return i.tag===3?(w=i.stateNode,x&&s!==null&&(x=31-yt(c),i=w.hiddenUpdates,p=i[x],p===null?i[x]=[s]:p.push(s),s.lane=c|536870912),w):null}function bd(i){if(50<Pc)throw Pc=0,$m=null,Error(r(185));for(var s=i.return;s!==null;)i=s,s=i.return;return i.tag===3?i.stateNode:null}var Do={};function bT(i,s,c,p){this.tag=i,this.key=c,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=s,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=p,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function yr(i,s,c,p){return new bT(i,s,c,p)}function Op(i){return i=i.prototype,!(!i||!i.isReactComponent)}function qi(i,s){var c=i.alternate;return c===null?(c=yr(i.tag,s,i.key,i.mode),c.elementType=i.elementType,c.type=i.type,c.stateNode=i.stateNode,c.alternate=i,i.alternate=c):(c.pendingProps=s,c.type=i.type,c.flags=0,c.subtreeFlags=0,c.deletions=null),c.flags=i.flags&65011712,c.childLanes=i.childLanes,c.lanes=i.lanes,c.child=i.child,c.memoizedProps=i.memoizedProps,c.memoizedState=i.memoizedState,c.updateQueue=i.updateQueue,s=i.dependencies,c.dependencies=s===null?null:{lanes:s.lanes,firstContext:s.firstContext},c.sibling=i.sibling,c.index=i.index,c.ref=i.ref,c.refCleanup=i.refCleanup,c}function Nv(i,s){i.flags&=65011714;var c=i.alternate;return c===null?(i.childLanes=0,i.lanes=s,i.child=null,i.subtreeFlags=0,i.memoizedProps=null,i.memoizedState=null,i.updateQueue=null,i.dependencies=null,i.stateNode=null):(i.childLanes=c.childLanes,i.lanes=c.lanes,i.child=c.child,i.subtreeFlags=0,i.deletions=null,i.memoizedProps=c.memoizedProps,i.memoizedState=c.memoizedState,i.updateQueue=c.updateQueue,i.type=c.type,s=c.dependencies,i.dependencies=s===null?null:{lanes:s.lanes,firstContext:s.firstContext}),i}function xd(i,s,c,p,x,w){var A=0;if(p=i,typeof i=="function")Op(i)&&(A=1);else if(typeof i=="string")A=EM(i,c,oe.current)?26:i==="html"||i==="head"||i==="body"?27:5;else e:switch(i){case F:return i=yr(31,c,s,x),i.elementType=F,i.lanes=w,i;case v:return Ms(c.children,x,w,s);case S:A=8,x|=24;break;case E:return i=yr(12,c,s,x|2),i.elementType=E,i.lanes=w,i;case O:return i=yr(13,c,s,x),i.elementType=O,i.lanes=w,i;case T:return i=yr(19,c,s,x),i.elementType=T,i.lanes=w,i;default:if(typeof i=="object"&&i!==null)switch(i.$$typeof){case N:A=10;break e;case j:A=9;break e;case _:A=11;break e;case I:A=14;break e;case R:A=16,p=null;break e}A=29,c=Error(r(130,i===null?"null":typeof i,"")),p=null}return s=yr(A,c,s,x),s.elementType=i,s.type=p,s.lanes=w,s}function Ms(i,s,c,p){return i=yr(7,i,p,s),i.lanes=c,i}function Rp(i,s,c){return i=yr(6,i,null,s),i.lanes=c,i}function _v(i){var s=yr(18,null,null,0);return s.stateNode=i,s}function Lp(i,s,c){return s=yr(4,i.children!==null?i.children:[],i.key,s),s.lanes=c,s.stateNode={containerInfo:i.containerInfo,pendingChildren:null,implementation:i.implementation},s}var jv=new WeakMap;function Rr(i,s){if(typeof i=="object"&&i!==null){var c=jv.get(i);return c!==void 0?c:(s={value:i,source:s,stack:re(s)},jv.set(i,s),s)}return{value:i,source:s,stack:re(s)}}var Oo=[],Ro=0,vd=null,yc=0,Lr=[],Ir=0,Da=null,xi=1,vi="";function Hi(i,s){Oo[Ro++]=yc,Oo[Ro++]=vd,vd=i,yc=s}function Cv(i,s,c){Lr[Ir++]=xi,Lr[Ir++]=vi,Lr[Ir++]=Da,Da=i;var p=xi;i=vi;var x=32-yt(p)-1;p&=~(1<<x),c+=1;var w=32-yt(s)+x;if(30<w){var A=x-x%5;w=(p&(1<<A)-1).toString(32),p>>=A,x-=A,xi=1<<32-yt(s)+x|c<<x|p,vi=w+i}else xi=1<<w|c<<x|p,vi=i}function Ip(i){i.return!==null&&(Hi(i,1),Cv(i,1,0))}function zp(i){for(;i===vd;)vd=Oo[--Ro],Oo[Ro]=null,yc=Oo[--Ro],Oo[Ro]=null;for(;i===Da;)Da=Lr[--Ir],Lr[Ir]=null,vi=Lr[--Ir],Lr[Ir]=null,xi=Lr[--Ir],Lr[Ir]=null}function Av(i,s){Lr[Ir++]=xi,Lr[Ir++]=vi,Lr[Ir++]=Da,xi=s.id,vi=s.overflow,Da=i}var In=null,Wt=null,wt=!1,Oa=null,zr=!1,Pp=Error(r(519));function Ra(i){var s=Error(r(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?"text":"HTML",""));throw bc(Rr(s,i)),Pp}function Tv(i){var s=i.stateNode,c=i.type,p=i.memoizedProps;switch(s[an]=i,s[Tn]=p,c){case"dialog":mt("cancel",s),mt("close",s);break;case"iframe":case"object":case"embed":mt("load",s);break;case"video":case"audio":for(c=0;c<Uc.length;c++)mt(Uc[c],s);break;case"source":mt("error",s);break;case"img":case"image":case"link":mt("error",s),mt("load",s);break;case"details":mt("toggle",s);break;case"input":mt("invalid",s),ei(s,p.value,p.defaultValue,p.checked,p.defaultChecked,p.type,p.name,!0);break;case"select":mt("invalid",s);break;case"textarea":mt("invalid",s),jo(s,p.value,p.defaultValue,p.children)}c=p.children,typeof c!="string"&&typeof c!="number"&&typeof c!="bigint"||s.textContent===""+c||p.suppressHydrationWarning===!0||Vw(s.textContent,c)?(p.popover!=null&&(mt("beforetoggle",s),mt("toggle",s)),p.onScroll!=null&&mt("scroll",s),p.onScrollEnd!=null&&mt("scrollend",s),p.onClick!=null&&(s.onclick=_e),s=!0):s=!1,s||Ra(i,!0)}function Mv(i){for(In=i.return;In;)switch(In.tag){case 5:case 31:case 13:zr=!1;return;case 27:case 3:zr=!0;return;default:In=In.return}}function Lo(i){if(i!==In)return!1;if(!wt)return Mv(i),wt=!0,!1;var s=i.tag,c;if((c=s!==3&&s!==27)&&((c=s===5)&&(c=i.type,c=!(c!=="form"&&c!=="button")||ng(i.type,i.memoizedProps)),c=!c),c&&Wt&&Ra(i),Mv(i),s===13){if(i=i.memoizedState,i=i!==null?i.dehydrated:null,!i)throw Error(r(317));Wt=n1(i)}else if(s===31){if(i=i.memoizedState,i=i!==null?i.dehydrated:null,!i)throw Error(r(317));Wt=n1(i)}else s===27?(s=Wt,Ya(i.type)?(i=og,og=null,Wt=i):Wt=s):Wt=In?Br(i.stateNode.nextSibling):null;return!0}function Ds(){Wt=In=null,wt=!1}function Bp(){var i=Oa;return i!==null&&(or===null?or=i:or.push.apply(or,i),Oa=null),i}function bc(i){Oa===null?Oa=[i]:Oa.push(i)}var Up=z(null),Os=null,Ki=null;function La(i,s,c){P(Up,s._currentValue),s._currentValue=c}function Gi(i){i._currentValue=Up.current,G(Up)}function $p(i,s,c){for(;i!==null;){var p=i.alternate;if((i.childLanes&s)!==s?(i.childLanes|=s,p!==null&&(p.childLanes|=s)):p!==null&&(p.childLanes&s)!==s&&(p.childLanes|=s),i===c)break;i=i.return}}function Fp(i,s,c,p){var x=i.child;for(x!==null&&(x.return=i);x!==null;){var w=x.dependencies;if(w!==null){var A=x.child;w=w.firstContext;e:for(;w!==null;){var $=w;w=x;for(var W=0;W<s.length;W++)if($.context===s[W]){w.lanes|=c,$=w.alternate,$!==null&&($.lanes|=c),$p(w.return,c,i),p||(A=null);break e}w=$.next}}else if(x.tag===18){if(A=x.return,A===null)throw Error(r(341));A.lanes|=c,w=A.alternate,w!==null&&(w.lanes|=c),$p(A,c,i),A=null}else A=x.child;if(A!==null)A.return=x;else for(A=x;A!==null;){if(A===i){A=null;break}if(x=A.sibling,x!==null){x.return=A.return,A=x;break}A=A.return}x=A}}function Io(i,s,c,p){i=null;for(var x=s,w=!1;x!==null;){if(!w){if((x.flags&524288)!==0)w=!0;else if((x.flags&262144)!==0)break}if(x.tag===10){var A=x.alternate;if(A===null)throw Error(r(387));if(A=A.memoizedProps,A!==null){var $=x.type;gr(x.pendingProps.value,A.value)||(i!==null?i.push($):i=[$])}}else if(x===we.current){if(A=x.alternate,A===null)throw Error(r(387));A.memoizedState.memoizedState!==x.memoizedState.memoizedState&&(i!==null?i.push(Kc):i=[Kc])}x=x.return}i!==null&&Fp(s,i,c,p),s.flags|=262144}function wd(i){for(i=i.firstContext;i!==null;){if(!gr(i.context._currentValue,i.memoizedValue))return!0;i=i.next}return!1}function Rs(i){Os=i,Ki=null,i=i.dependencies,i!==null&&(i.firstContext=null)}function zn(i){return Dv(Os,i)}function kd(i,s){return Os===null&&Rs(i),Dv(i,s)}function Dv(i,s){var c=s._currentValue;if(s={context:s,memoizedValue:c,next:null},Ki===null){if(i===null)throw Error(r(308));Ki=s,i.dependencies={lanes:0,firstContext:s},i.flags|=524288}else Ki=Ki.next=s;return c}var xT=typeof AbortController<"u"?AbortController:function(){var i=[],s=this.signal={aborted:!1,addEventListener:function(c,p){i.push(p)}};this.abort=function(){s.aborted=!0,i.forEach(function(c){return c()})}},vT=e.unstable_scheduleCallback,wT=e.unstable_NormalPriority,xn={$$typeof:N,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function qp(){return{controller:new xT,data:new Map,refCount:0}}function xc(i){i.refCount--,i.refCount===0&&vT(wT,function(){i.controller.abort()})}var vc=null,Hp=0,zo=0,Po=null;function kT(i,s){if(vc===null){var c=vc=[];Hp=0,zo=Vm(),Po={status:"pending",value:void 0,then:function(p){c.push(p)}}}return Hp++,s.then(Ov,Ov),s}function Ov(){if(--Hp===0&&vc!==null){Po!==null&&(Po.status="fulfilled");var i=vc;vc=null,zo=0,Po=null;for(var s=0;s<i.length;s++)(0,i[s])()}}function ET(i,s){var c=[],p={status:"pending",value:null,reason:null,then:function(x){c.push(x)}};return i.then(function(){p.status="fulfilled",p.value=s;for(var x=0;x<c.length;x++)(0,c[x])(s)},function(x){for(p.status="rejected",p.reason=x,x=0;x<c.length;x++)(0,c[x])(void 0)}),p}var Rv=B.S;B.S=function(i,s){yw=ze(),typeof s=="object"&&s!==null&&typeof s.then=="function"&&kT(i,s),Rv!==null&&Rv(i,s)};var Ls=z(null);function Kp(){var i=Ls.current;return i!==null?i:qt.pooledCache}function Ed(i,s){s===null?P(Ls,Ls.current):P(Ls,s.pool)}function Lv(){var i=Kp();return i===null?null:{parent:xn._currentValue,pool:i}}var Bo=Error(r(460)),Gp=Error(r(474)),Sd=Error(r(542)),Nd={then:function(){}};function Iv(i){return i=i.status,i==="fulfilled"||i==="rejected"}function zv(i,s,c){switch(c=i[c],c===void 0?i.push(s):c!==s&&(s.then(_e,_e),s=c),s.status){case"fulfilled":return s.value;case"rejected":throw i=s.reason,Bv(i),i;default:if(typeof s.status=="string")s.then(_e,_e);else{if(i=qt,i!==null&&100<i.shellSuspendCounter)throw Error(r(482));i=s,i.status="pending",i.then(function(p){if(s.status==="pending"){var x=s;x.status="fulfilled",x.value=p}},function(p){if(s.status==="pending"){var x=s;x.status="rejected",x.reason=p}})}switch(s.status){case"fulfilled":return s.value;case"rejected":throw i=s.reason,Bv(i),i}throw zs=s,Bo}}function Is(i){try{var s=i._init;return s(i._payload)}catch(c){throw c!==null&&typeof c=="object"&&typeof c.then=="function"?(zs=c,Bo):c}}var zs=null;function Pv(){if(zs===null)throw Error(r(459));var i=zs;return zs=null,i}function Bv(i){if(i===Bo||i===Sd)throw Error(r(483))}var Uo=null,wc=0;function _d(i){var s=wc;return wc+=1,Uo===null&&(Uo=[]),zv(Uo,i,s)}function kc(i,s){s=s.props.ref,i.ref=s!==void 0?s:null}function jd(i,s){throw s.$$typeof===y?Error(r(525)):(i=Object.prototype.toString.call(s),Error(r(31,i==="[object Object]"?"object with keys {"+Object.keys(s).join(", ")+"}":i)))}function Uv(i){function s(ne,ee){if(i){var ie=ne.deletions;ie===null?(ne.deletions=[ee],ne.flags|=16):ie.push(ee)}}function c(ne,ee){if(!i)return null;for(;ee!==null;)s(ne,ee),ee=ee.sibling;return null}function p(ne){for(var ee=new Map;ne!==null;)ne.key!==null?ee.set(ne.key,ne):ee.set(ne.index,ne),ne=ne.sibling;return ee}function x(ne,ee){return ne=qi(ne,ee),ne.index=0,ne.sibling=null,ne}function w(ne,ee,ie){return ne.index=ie,i?(ie=ne.alternate,ie!==null?(ie=ie.index,ie<ee?(ne.flags|=67108866,ee):ie):(ne.flags|=67108866,ee)):(ne.flags|=1048576,ee)}function A(ne){return i&&ne.alternate===null&&(ne.flags|=67108866),ne}function $(ne,ee,ie,me){return ee===null||ee.tag!==6?(ee=Rp(ie,ne.mode,me),ee.return=ne,ee):(ee=x(ee,ie),ee.return=ne,ee)}function W(ne,ee,ie,me){var Ye=ie.type;return Ye===v?fe(ne,ee,ie.props.children,me,ie.key):ee!==null&&(ee.elementType===Ye||typeof Ye=="object"&&Ye!==null&&Ye.$$typeof===R&&Is(Ye)===ee.type)?(ee=x(ee,ie.props),kc(ee,ie),ee.return=ne,ee):(ee=xd(ie.type,ie.key,ie.props,null,ne.mode,me),kc(ee,ie),ee.return=ne,ee)}function ae(ne,ee,ie,me){return ee===null||ee.tag!==4||ee.stateNode.containerInfo!==ie.containerInfo||ee.stateNode.implementation!==ie.implementation?(ee=Lp(ie,ne.mode,me),ee.return=ne,ee):(ee=x(ee,ie.children||[]),ee.return=ne,ee)}function fe(ne,ee,ie,me,Ye){return ee===null||ee.tag!==7?(ee=Ms(ie,ne.mode,me,Ye),ee.return=ne,ee):(ee=x(ee,ie),ee.return=ne,ee)}function ye(ne,ee,ie){if(typeof ee=="string"&&ee!==""||typeof ee=="number"||typeof ee=="bigint")return ee=Rp(""+ee,ne.mode,ie),ee.return=ne,ee;if(typeof ee=="object"&&ee!==null){switch(ee.$$typeof){case b:return ie=xd(ee.type,ee.key,ee.props,null,ne.mode,ie),kc(ie,ee),ie.return=ne,ie;case k:return ee=Lp(ee,ne.mode,ie),ee.return=ne,ee;case R:return ee=Is(ee),ye(ne,ee,ie)}if(H(ee)||q(ee))return ee=Ms(ee,ne.mode,ie,null),ee.return=ne,ee;if(typeof ee.then=="function")return ye(ne,_d(ee),ie);if(ee.$$typeof===N)return ye(ne,kd(ne,ee),ie);jd(ne,ee)}return null}function se(ne,ee,ie,me){var Ye=ee!==null?ee.key:null;if(typeof ie=="string"&&ie!==""||typeof ie=="number"||typeof ie=="bigint")return Ye!==null?null:$(ne,ee,""+ie,me);if(typeof ie=="object"&&ie!==null){switch(ie.$$typeof){case b:return ie.key===Ye?W(ne,ee,ie,me):null;case k:return ie.key===Ye?ae(ne,ee,ie,me):null;case R:return ie=Is(ie),se(ne,ee,ie,me)}if(H(ie)||q(ie))return Ye!==null?null:fe(ne,ee,ie,me,null);if(typeof ie.then=="function")return se(ne,ee,_d(ie),me);if(ie.$$typeof===N)return se(ne,ee,kd(ne,ie),me);jd(ne,ie)}return null}function ce(ne,ee,ie,me,Ye){if(typeof me=="string"&&me!==""||typeof me=="number"||typeof me=="bigint")return ne=ne.get(ie)||null,$(ee,ne,""+me,Ye);if(typeof me=="object"&&me!==null){switch(me.$$typeof){case b:return ne=ne.get(me.key===null?ie:me.key)||null,W(ee,ne,me,Ye);case k:return ne=ne.get(me.key===null?ie:me.key)||null,ae(ee,ne,me,Ye);case R:return me=Is(me),ce(ne,ee,ie,me,Ye)}if(H(me)||q(me))return ne=ne.get(ie)||null,fe(ee,ne,me,Ye,null);if(typeof me.then=="function")return ce(ne,ee,ie,_d(me),Ye);if(me.$$typeof===N)return ce(ne,ee,ie,kd(ee,me),Ye);jd(ee,me)}return null}function Ue(ne,ee,ie,me){for(var Ye=null,_t=null,He=ee,ct=ee=0,vt=null;He!==null&&ct<ie.length;ct++){He.index>ct?(vt=He,He=null):vt=He.sibling;var jt=se(ne,He,ie[ct],me);if(jt===null){He===null&&(He=vt);break}i&&He&&jt.alternate===null&&s(ne,He),ee=w(jt,ee,ct),_t===null?Ye=jt:_t.sibling=jt,_t=jt,He=vt}if(ct===ie.length)return c(ne,He),wt&&Hi(ne,ct),Ye;if(He===null){for(;ct<ie.length;ct++)He=ye(ne,ie[ct],me),He!==null&&(ee=w(He,ee,ct),_t===null?Ye=He:_t.sibling=He,_t=He);return wt&&Hi(ne,ct),Ye}for(He=p(He);ct<ie.length;ct++)vt=ce(He,ne,ct,ie[ct],me),vt!==null&&(i&&vt.alternate!==null&&He.delete(vt.key===null?ct:vt.key),ee=w(vt,ee,ct),_t===null?Ye=vt:_t.sibling=vt,_t=vt);return i&&He.forEach(function(Ja){return s(ne,Ja)}),wt&&Hi(ne,ct),Ye}function tt(ne,ee,ie,me){if(ie==null)throw Error(r(151));for(var Ye=null,_t=null,He=ee,ct=ee=0,vt=null,jt=ie.next();He!==null&&!jt.done;ct++,jt=ie.next()){He.index>ct?(vt=He,He=null):vt=He.sibling;var Ja=se(ne,He,jt.value,me);if(Ja===null){He===null&&(He=vt);break}i&&He&&Ja.alternate===null&&s(ne,He),ee=w(Ja,ee,ct),_t===null?Ye=Ja:_t.sibling=Ja,_t=Ja,He=vt}if(jt.done)return c(ne,He),wt&&Hi(ne,ct),Ye;if(He===null){for(;!jt.done;ct++,jt=ie.next())jt=ye(ne,jt.value,me),jt!==null&&(ee=w(jt,ee,ct),_t===null?Ye=jt:_t.sibling=jt,_t=jt);return wt&&Hi(ne,ct),Ye}for(He=p(He);!jt.done;ct++,jt=ie.next())jt=ce(He,ne,ct,jt.value,me),jt!==null&&(i&&jt.alternate!==null&&He.delete(jt.key===null?ct:jt.key),ee=w(jt,ee,ct),_t===null?Ye=jt:_t.sibling=jt,_t=jt);return i&&He.forEach(function(RM){return s(ne,RM)}),wt&&Hi(ne,ct),Ye}function Ut(ne,ee,ie,me){if(typeof ie=="object"&&ie!==null&&ie.type===v&&ie.key===null&&(ie=ie.props.children),typeof ie=="object"&&ie!==null){switch(ie.$$typeof){case b:e:{for(var Ye=ie.key;ee!==null;){if(ee.key===Ye){if(Ye=ie.type,Ye===v){if(ee.tag===7){c(ne,ee.sibling),me=x(ee,ie.props.children),me.return=ne,ne=me;break e}}else if(ee.elementType===Ye||typeof Ye=="object"&&Ye!==null&&Ye.$$typeof===R&&Is(Ye)===ee.type){c(ne,ee.sibling),me=x(ee,ie.props),kc(me,ie),me.return=ne,ne=me;break e}c(ne,ee);break}else s(ne,ee);ee=ee.sibling}ie.type===v?(me=Ms(ie.props.children,ne.mode,me,ie.key),me.return=ne,ne=me):(me=xd(ie.type,ie.key,ie.props,null,ne.mode,me),kc(me,ie),me.return=ne,ne=me)}return A(ne);case k:e:{for(Ye=ie.key;ee!==null;){if(ee.key===Ye)if(ee.tag===4&&ee.stateNode.containerInfo===ie.containerInfo&&ee.stateNode.implementation===ie.implementation){c(ne,ee.sibling),me=x(ee,ie.children||[]),me.return=ne,ne=me;break e}else{c(ne,ee);break}else s(ne,ee);ee=ee.sibling}me=Lp(ie,ne.mode,me),me.return=ne,ne=me}return A(ne);case R:return ie=Is(ie),Ut(ne,ee,ie,me)}if(H(ie))return Ue(ne,ee,ie,me);if(q(ie)){if(Ye=q(ie),typeof Ye!="function")throw Error(r(150));return ie=Ye.call(ie),tt(ne,ee,ie,me)}if(typeof ie.then=="function")return Ut(ne,ee,_d(ie),me);if(ie.$$typeof===N)return Ut(ne,ee,kd(ne,ie),me);jd(ne,ie)}return typeof ie=="string"&&ie!==""||typeof ie=="number"||typeof ie=="bigint"?(ie=""+ie,ee!==null&&ee.tag===6?(c(ne,ee.sibling),me=x(ee,ie),me.return=ne,ne=me):(c(ne,ee),me=Rp(ie,ne.mode,me),me.return=ne,ne=me),A(ne)):c(ne,ee)}return function(ne,ee,ie,me){try{wc=0;var Ye=Ut(ne,ee,ie,me);return Uo=null,Ye}catch(He){if(He===Bo||He===Sd)throw He;var _t=yr(29,He,null,ne.mode);return _t.lanes=me,_t.return=ne,_t}finally{}}}var Ps=Uv(!0),$v=Uv(!1),Ia=!1;function Vp(i){i.updateQueue={baseState:i.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Yp(i,s){i=i.updateQueue,s.updateQueue===i&&(s.updateQueue={baseState:i.baseState,firstBaseUpdate:i.firstBaseUpdate,lastBaseUpdate:i.lastBaseUpdate,shared:i.shared,callbacks:null})}function za(i){return{lane:i,tag:0,payload:null,callback:null,next:null}}function Pa(i,s,c){var p=i.updateQueue;if(p===null)return null;if(p=p.shared,(Tt&2)!==0){var x=p.pending;return x===null?s.next=s:(s.next=x.next,x.next=s),p.pending=s,s=bd(i),Sv(i,null,c),s}return yd(i,p,s,c),bd(i)}function Ec(i,s,c){if(s=s.updateQueue,s!==null&&(s=s.shared,(c&4194048)!==0)){var p=s.lanes;p&=i.pendingLanes,c|=p,s.lanes=c,et(i,c)}}function Qp(i,s){var c=i.updateQueue,p=i.alternate;if(p!==null&&(p=p.updateQueue,c===p)){var x=null,w=null;if(c=c.firstBaseUpdate,c!==null){do{var A={lane:c.lane,tag:c.tag,payload:c.payload,callback:null,next:null};w===null?x=w=A:w=w.next=A,c=c.next}while(c!==null);w===null?x=w=s:w=w.next=s}else x=w=s;c={baseState:p.baseState,firstBaseUpdate:x,lastBaseUpdate:w,shared:p.shared,callbacks:p.callbacks},i.updateQueue=c;return}i=c.lastBaseUpdate,i===null?c.firstBaseUpdate=s:i.next=s,c.lastBaseUpdate=s}var Wp=!1;function Sc(){if(Wp){var i=Po;if(i!==null)throw i}}function Nc(i,s,c,p){Wp=!1;var x=i.updateQueue;Ia=!1;var w=x.firstBaseUpdate,A=x.lastBaseUpdate,$=x.shared.pending;if($!==null){x.shared.pending=null;var W=$,ae=W.next;W.next=null,A===null?w=ae:A.next=ae,A=W;var fe=i.alternate;fe!==null&&(fe=fe.updateQueue,$=fe.lastBaseUpdate,$!==A&&($===null?fe.firstBaseUpdate=ae:$.next=ae,fe.lastBaseUpdate=W))}if(w!==null){var ye=x.baseState;A=0,fe=ae=W=null,$=w;do{var se=$.lane&-536870913,ce=se!==$.lane;if(ce?(xt&se)===se:(p&se)===se){se!==0&&se===zo&&(Wp=!0),fe!==null&&(fe=fe.next={lane:0,tag:$.tag,payload:$.payload,callback:null,next:null});e:{var Ue=i,tt=$;se=s;var Ut=c;switch(tt.tag){case 1:if(Ue=tt.payload,typeof Ue=="function"){ye=Ue.call(Ut,ye,se);break e}ye=Ue;break e;case 3:Ue.flags=Ue.flags&-65537|128;case 0:if(Ue=tt.payload,se=typeof Ue=="function"?Ue.call(Ut,ye,se):Ue,se==null)break e;ye=m({},ye,se);break e;case 2:Ia=!0}}se=$.callback,se!==null&&(i.flags|=64,ce&&(i.flags|=8192),ce=x.callbacks,ce===null?x.callbacks=[se]:ce.push(se))}else ce={lane:se,tag:$.tag,payload:$.payload,callback:$.callback,next:null},fe===null?(ae=fe=ce,W=ye):fe=fe.next=ce,A|=se;if($=$.next,$===null){if($=x.shared.pending,$===null)break;ce=$,$=ce.next,ce.next=null,x.lastBaseUpdate=ce,x.shared.pending=null}}while(!0);fe===null&&(W=ye),x.baseState=W,x.firstBaseUpdate=ae,x.lastBaseUpdate=fe,w===null&&(x.shared.lanes=0),qa|=A,i.lanes=A,i.memoizedState=ye}}function Fv(i,s){if(typeof i!="function")throw Error(r(191,i));i.call(s)}function qv(i,s){var c=i.callbacks;if(c!==null)for(i.callbacks=null,i=0;i<c.length;i++)Fv(c[i],s)}var $o=z(null),Cd=z(0);function Hv(i,s){i=ta,P(Cd,i),P($o,s),ta=i|s.baseLanes}function Xp(){P(Cd,ta),P($o,$o.current)}function Zp(){ta=Cd.current,G($o),G(Cd)}var br=z(null),Pr=null;function Ba(i){var s=i.alternate;P(gn,gn.current&1),P(br,i),Pr===null&&(s===null||$o.current!==null||s.memoizedState!==null)&&(Pr=i)}function Jp(i){P(gn,gn.current),P(br,i),Pr===null&&(Pr=i)}function Kv(i){i.tag===22?(P(gn,gn.current),P(br,i),Pr===null&&(Pr=i)):Ua()}function Ua(){P(gn,gn.current),P(br,br.current)}function xr(i){G(br),Pr===i&&(Pr=null),G(gn)}var gn=z(0);function Ad(i){for(var s=i;s!==null;){if(s.tag===13){var c=s.memoizedState;if(c!==null&&(c=c.dehydrated,c===null||ag(c)||sg(c)))return s}else if(s.tag===19&&(s.memoizedProps.revealOrder==="forwards"||s.memoizedProps.revealOrder==="backwards"||s.memoizedProps.revealOrder==="unstable_legacy-backwards"||s.memoizedProps.revealOrder==="together")){if((s.flags&128)!==0)return s}else if(s.child!==null){s.child.return=s,s=s.child;continue}if(s===i)break;for(;s.sibling===null;){if(s.return===null||s.return===i)return null;s=s.return}s.sibling.return=s.return,s=s.sibling}return null}var Vi=0,lt=null,Pt=null,vn=null,Td=!1,Fo=!1,Bs=!1,Md=0,_c=0,qo=null,ST=0;function fn(){throw Error(r(321))}function em(i,s){if(s===null)return!1;for(var c=0;c<s.length&&c<i.length;c++)if(!gr(i[c],s[c]))return!1;return!0}function tm(i,s,c,p,x,w){return Vi=w,lt=s,s.memoizedState=null,s.updateQueue=null,s.lanes=0,B.H=i===null||i.memoizedState===null?C0:gm,Bs=!1,w=c(p,x),Bs=!1,Fo&&(w=Vv(s,c,p,x)),Gv(i),w}function Gv(i){B.H=Ac;var s=Pt!==null&&Pt.next!==null;if(Vi=0,vn=Pt=lt=null,Td=!1,_c=0,qo=null,s)throw Error(r(300));i===null||wn||(i=i.dependencies,i!==null&&wd(i)&&(wn=!0))}function Vv(i,s,c,p){lt=i;var x=0;do{if(Fo&&(qo=null),_c=0,Fo=!1,25<=x)throw Error(r(301));if(x+=1,vn=Pt=null,i.updateQueue!=null){var w=i.updateQueue;w.lastEffect=null,w.events=null,w.stores=null,w.memoCache!=null&&(w.memoCache.index=0)}B.H=A0,w=s(c,p)}while(Fo);return w}function NT(){var i=B.H,s=i.useState()[0];return s=typeof s.then=="function"?jc(s):s,i=i.useState()[0],(Pt!==null?Pt.memoizedState:null)!==i&&(lt.flags|=1024),s}function nm(){var i=Md!==0;return Md=0,i}function rm(i,s,c){s.updateQueue=i.updateQueue,s.flags&=-2053,i.lanes&=~c}function im(i){if(Td){for(i=i.memoizedState;i!==null;){var s=i.queue;s!==null&&(s.pending=null),i=i.next}Td=!1}Vi=0,vn=Pt=lt=null,Fo=!1,_c=Md=0,qo=null}function Xn(){var i={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return vn===null?lt.memoizedState=vn=i:vn=vn.next=i,vn}function yn(){if(Pt===null){var i=lt.alternate;i=i!==null?i.memoizedState:null}else i=Pt.next;var s=vn===null?lt.memoizedState:vn.next;if(s!==null)vn=s,Pt=i;else{if(i===null)throw lt.alternate===null?Error(r(467)):Error(r(310));Pt=i,i={memoizedState:Pt.memoizedState,baseState:Pt.baseState,baseQueue:Pt.baseQueue,queue:Pt.queue,next:null},vn===null?lt.memoizedState=vn=i:vn=vn.next=i}return vn}function Dd(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function jc(i){var s=_c;return _c+=1,qo===null&&(qo=[]),i=zv(qo,i,s),s=lt,(vn===null?s.memoizedState:vn.next)===null&&(s=s.alternate,B.H=s===null||s.memoizedState===null?C0:gm),i}function Od(i){if(i!==null&&typeof i=="object"){if(typeof i.then=="function")return jc(i);if(i.$$typeof===N)return zn(i)}throw Error(r(438,String(i)))}function am(i){var s=null,c=lt.updateQueue;if(c!==null&&(s=c.memoCache),s==null){var p=lt.alternate;p!==null&&(p=p.updateQueue,p!==null&&(p=p.memoCache,p!=null&&(s={data:p.data.map(function(x){return x.slice()}),index:0})))}if(s==null&&(s={data:[],index:0}),c===null&&(c=Dd(),lt.updateQueue=c),c.memoCache=s,c=s.data[s.index],c===void 0)for(c=s.data[s.index]=Array(i),p=0;p<i;p++)c[p]=M;return s.index++,c}function Yi(i,s){return typeof s=="function"?s(i):s}function Rd(i){var s=yn();return sm(s,Pt,i)}function sm(i,s,c){var p=i.queue;if(p===null)throw Error(r(311));p.lastRenderedReducer=c;var x=i.baseQueue,w=p.pending;if(w!==null){if(x!==null){var A=x.next;x.next=w.next,w.next=A}s.baseQueue=x=w,p.pending=null}if(w=i.baseState,x===null)i.memoizedState=w;else{s=x.next;var $=A=null,W=null,ae=s,fe=!1;do{var ye=ae.lane&-536870913;if(ye!==ae.lane?(xt&ye)===ye:(Vi&ye)===ye){var se=ae.revertLane;if(se===0)W!==null&&(W=W.next={lane:0,revertLane:0,gesture:null,action:ae.action,hasEagerState:ae.hasEagerState,eagerState:ae.eagerState,next:null}),ye===zo&&(fe=!0);else if((Vi&se)===se){ae=ae.next,se===zo&&(fe=!0);continue}else ye={lane:0,revertLane:ae.revertLane,gesture:null,action:ae.action,hasEagerState:ae.hasEagerState,eagerState:ae.eagerState,next:null},W===null?($=W=ye,A=w):W=W.next=ye,lt.lanes|=se,qa|=se;ye=ae.action,Bs&&c(w,ye),w=ae.hasEagerState?ae.eagerState:c(w,ye)}else se={lane:ye,revertLane:ae.revertLane,gesture:ae.gesture,action:ae.action,hasEagerState:ae.hasEagerState,eagerState:ae.eagerState,next:null},W===null?($=W=se,A=w):W=W.next=se,lt.lanes|=ye,qa|=ye;ae=ae.next}while(ae!==null&&ae!==s);if(W===null?A=w:W.next=$,!gr(w,i.memoizedState)&&(wn=!0,fe&&(c=Po,c!==null)))throw c;i.memoizedState=w,i.baseState=A,i.baseQueue=W,p.lastRenderedState=w}return x===null&&(p.lanes=0),[i.memoizedState,p.dispatch]}function om(i){var s=yn(),c=s.queue;if(c===null)throw Error(r(311));c.lastRenderedReducer=i;var p=c.dispatch,x=c.pending,w=s.memoizedState;if(x!==null){c.pending=null;var A=x=x.next;do w=i(w,A.action),A=A.next;while(A!==x);gr(w,s.memoizedState)||(wn=!0),s.memoizedState=w,s.baseQueue===null&&(s.baseState=w),c.lastRenderedState=w}return[w,p]}function Yv(i,s,c){var p=lt,x=yn(),w=wt;if(w){if(c===void 0)throw Error(r(407));c=c()}else c=s();var A=!gr((Pt||x).memoizedState,c);if(A&&(x.memoizedState=c,wn=!0),x=x.queue,um(Xv.bind(null,p,x,i),[i]),x.getSnapshot!==s||A||vn!==null&&vn.memoizedState.tag&1){if(p.flags|=2048,Ho(9,{destroy:void 0},Wv.bind(null,p,x,c,s),null),qt===null)throw Error(r(349));w||(Vi&127)!==0||Qv(p,s,c)}return c}function Qv(i,s,c){i.flags|=16384,i={getSnapshot:s,value:c},s=lt.updateQueue,s===null?(s=Dd(),lt.updateQueue=s,s.stores=[i]):(c=s.stores,c===null?s.stores=[i]:c.push(i))}function Wv(i,s,c,p){s.value=c,s.getSnapshot=p,Zv(s)&&Jv(i)}function Xv(i,s,c){return c(function(){Zv(s)&&Jv(i)})}function Zv(i){var s=i.getSnapshot;i=i.value;try{var c=s();return!gr(i,c)}catch{return!0}}function Jv(i){var s=Ts(i,2);s!==null&&lr(s,i,2)}function lm(i){var s=Xn();if(typeof i=="function"){var c=i;if(i=c(),Bs){Qt(!0);try{c()}finally{Qt(!1)}}}return s.memoizedState=s.baseState=i,s.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Yi,lastRenderedState:i},s}function e0(i,s,c,p){return i.baseState=c,sm(i,Pt,typeof p=="function"?p:Yi)}function _T(i,s,c,p,x){if(zd(i))throw Error(r(485));if(i=s.action,i!==null){var w={payload:x,action:i,next:null,isTransition:!0,status:"pending",value:null,reason:null,listeners:[],then:function(A){w.listeners.push(A)}};B.T!==null?c(!0):w.isTransition=!1,p(w),c=s.pending,c===null?(w.next=s.pending=w,t0(s,w)):(w.next=c.next,s.pending=c.next=w)}}function t0(i,s){var c=s.action,p=s.payload,x=i.state;if(s.isTransition){var w=B.T,A={};B.T=A;try{var $=c(x,p),W=B.S;W!==null&&W(A,$),n0(i,s,$)}catch(ae){cm(i,s,ae)}finally{w!==null&&A.types!==null&&(w.types=A.types),B.T=w}}else try{w=c(x,p),n0(i,s,w)}catch(ae){cm(i,s,ae)}}function n0(i,s,c){c!==null&&typeof c=="object"&&typeof c.then=="function"?c.then(function(p){r0(i,s,p)},function(p){return cm(i,s,p)}):r0(i,s,c)}function r0(i,s,c){s.status="fulfilled",s.value=c,i0(s),i.state=c,s=i.pending,s!==null&&(c=s.next,c===s?i.pending=null:(c=c.next,s.next=c,t0(i,c)))}function cm(i,s,c){var p=i.pending;if(i.pending=null,p!==null){p=p.next;do s.status="rejected",s.reason=c,i0(s),s=s.next;while(s!==p)}i.action=null}function i0(i){i=i.listeners;for(var s=0;s<i.length;s++)(0,i[s])()}function a0(i,s){return s}function s0(i,s){if(wt){var c=qt.formState;if(c!==null){e:{var p=lt;if(wt){if(Wt){t:{for(var x=Wt,w=zr;x.nodeType!==8;){if(!w){x=null;break t}if(x=Br(x.nextSibling),x===null){x=null;break t}}w=x.data,x=w==="F!"||w==="F"?x:null}if(x){Wt=Br(x.nextSibling),p=x.data==="F!";break e}}Ra(p)}p=!1}p&&(s=c[0])}}return c=Xn(),c.memoizedState=c.baseState=s,p={pending:null,lanes:0,dispatch:null,lastRenderedReducer:a0,lastRenderedState:s},c.queue=p,c=N0.bind(null,lt,p),p.dispatch=c,p=lm(!1),w=mm.bind(null,lt,!1,p.queue),p=Xn(),x={state:s,dispatch:null,action:i,pending:null},p.queue=x,c=_T.bind(null,lt,x,w,c),x.dispatch=c,p.memoizedState=i,[s,c,!1]}function o0(i){var s=yn();return l0(s,Pt,i)}function l0(i,s,c){if(s=sm(i,s,a0)[0],i=Rd(Yi)[0],typeof s=="object"&&s!==null&&typeof s.then=="function")try{var p=jc(s)}catch(A){throw A===Bo?Sd:A}else p=s;s=yn();var x=s.queue,w=x.dispatch;return c!==s.memoizedState&&(lt.flags|=2048,Ho(9,{destroy:void 0},jT.bind(null,x,c),null)),[p,w,i]}function jT(i,s){i.action=s}function c0(i){var s=yn(),c=Pt;if(c!==null)return l0(s,c,i);yn(),s=s.memoizedState,c=yn();var p=c.queue.dispatch;return c.memoizedState=i,[s,p,!1]}function Ho(i,s,c,p){return i={tag:i,create:c,deps:p,inst:s,next:null},s=lt.updateQueue,s===null&&(s=Dd(),lt.updateQueue=s),c=s.lastEffect,c===null?s.lastEffect=i.next=i:(p=c.next,c.next=i,i.next=p,s.lastEffect=i),i}function u0(){return yn().memoizedState}function Ld(i,s,c,p){var x=Xn();lt.flags|=i,x.memoizedState=Ho(1|s,{destroy:void 0},c,p===void 0?null:p)}function Id(i,s,c,p){var x=yn();p=p===void 0?null:p;var w=x.memoizedState.inst;Pt!==null&&p!==null&&em(p,Pt.memoizedState.deps)?x.memoizedState=Ho(s,w,c,p):(lt.flags|=i,x.memoizedState=Ho(1|s,w,c,p))}function d0(i,s){Ld(8390656,8,i,s)}function um(i,s){Id(2048,8,i,s)}function CT(i){lt.flags|=4;var s=lt.updateQueue;if(s===null)s=Dd(),lt.updateQueue=s,s.events=[i];else{var c=s.events;c===null?s.events=[i]:c.push(i)}}function f0(i){var s=yn().memoizedState;return CT({ref:s,nextImpl:i}),function(){if((Tt&2)!==0)throw Error(r(440));return s.impl.apply(void 0,arguments)}}function h0(i,s){return Id(4,2,i,s)}function p0(i,s){return Id(4,4,i,s)}function m0(i,s){if(typeof s=="function"){i=i();var c=s(i);return function(){typeof c=="function"?c():s(null)}}if(s!=null)return i=i(),s.current=i,function(){s.current=null}}function g0(i,s,c){c=c!=null?c.concat([i]):null,Id(4,4,m0.bind(null,s,i),c)}function dm(){}function y0(i,s){var c=yn();s=s===void 0?null:s;var p=c.memoizedState;return s!==null&&em(s,p[1])?p[0]:(c.memoizedState=[i,s],i)}function b0(i,s){var c=yn();s=s===void 0?null:s;var p=c.memoizedState;if(s!==null&&em(s,p[1]))return p[0];if(p=i(),Bs){Qt(!0);try{i()}finally{Qt(!1)}}return c.memoizedState=[p,s],p}function fm(i,s,c){return c===void 0||(Vi&1073741824)!==0&&(xt&261930)===0?i.memoizedState=s:(i.memoizedState=c,i=xw(),lt.lanes|=i,qa|=i,c)}function x0(i,s,c,p){return gr(c,s)?c:$o.current!==null?(i=fm(i,c,p),gr(i,s)||(wn=!0),i):(Vi&42)===0||(Vi&1073741824)!==0&&(xt&261930)===0?(wn=!0,i.memoizedState=c):(i=xw(),lt.lanes|=i,qa|=i,s)}function v0(i,s,c,p,x){var w=V.p;V.p=w!==0&&8>w?w:8;var A=B.T,$={};B.T=$,mm(i,!1,s,c);try{var W=x(),ae=B.S;if(ae!==null&&ae($,W),W!==null&&typeof W=="object"&&typeof W.then=="function"){var fe=ET(W,p);Cc(i,s,fe,kr(i))}else Cc(i,s,p,kr(i))}catch(ye){Cc(i,s,{then:function(){},status:"rejected",reason:ye},kr())}finally{V.p=w,A!==null&&$.types!==null&&(A.types=$.types),B.T=A}}function AT(){}function hm(i,s,c,p){if(i.tag!==5)throw Error(r(476));var x=w0(i).queue;v0(i,x,s,Q,c===null?AT:function(){return k0(i),c(p)})}function w0(i){var s=i.memoizedState;if(s!==null)return s;s={memoizedState:Q,baseState:Q,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Yi,lastRenderedState:Q},next:null};var c={};return s.next={memoizedState:c,baseState:c,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Yi,lastRenderedState:c},next:null},i.memoizedState=s,i=i.alternate,i!==null&&(i.memoizedState=s),s}function k0(i){var s=w0(i);s.next===null&&(s=i.alternate.memoizedState),Cc(i,s.next.queue,{},kr())}function pm(){return zn(Kc)}function E0(){return yn().memoizedState}function S0(){return yn().memoizedState}function TT(i){for(var s=i.return;s!==null;){switch(s.tag){case 24:case 3:var c=kr();i=za(c);var p=Pa(s,i,c);p!==null&&(lr(p,s,c),Ec(p,s,c)),s={cache:qp()},i.payload=s;return}s=s.return}}function MT(i,s,c){var p=kr();c={lane:p,revertLane:0,gesture:null,action:c,hasEagerState:!1,eagerState:null,next:null},zd(i)?_0(s,c):(c=Dp(i,s,c,p),c!==null&&(lr(c,i,p),j0(c,s,p)))}function N0(i,s,c){var p=kr();Cc(i,s,c,p)}function Cc(i,s,c,p){var x={lane:p,revertLane:0,gesture:null,action:c,hasEagerState:!1,eagerState:null,next:null};if(zd(i))_0(s,x);else{var w=i.alternate;if(i.lanes===0&&(w===null||w.lanes===0)&&(w=s.lastRenderedReducer,w!==null))try{var A=s.lastRenderedState,$=w(A,c);if(x.hasEagerState=!0,x.eagerState=$,gr($,A))return yd(i,s,x,0),qt===null&&gd(),!1}catch{}finally{}if(c=Dp(i,s,x,p),c!==null)return lr(c,i,p),j0(c,s,p),!0}return!1}function mm(i,s,c,p){if(p={lane:2,revertLane:Vm(),gesture:null,action:p,hasEagerState:!1,eagerState:null,next:null},zd(i)){if(s)throw Error(r(479))}else s=Dp(i,c,p,2),s!==null&&lr(s,i,2)}function zd(i){var s=i.alternate;return i===lt||s!==null&&s===lt}function _0(i,s){Fo=Td=!0;var c=i.pending;c===null?s.next=s:(s.next=c.next,c.next=s),i.pending=s}function j0(i,s,c){if((c&4194048)!==0){var p=s.lanes;p&=i.pendingLanes,c|=p,s.lanes=c,et(i,c)}}var Ac={readContext:zn,use:Od,useCallback:fn,useContext:fn,useEffect:fn,useImperativeHandle:fn,useLayoutEffect:fn,useInsertionEffect:fn,useMemo:fn,useReducer:fn,useRef:fn,useState:fn,useDebugValue:fn,useDeferredValue:fn,useTransition:fn,useSyncExternalStore:fn,useId:fn,useHostTransitionStatus:fn,useFormState:fn,useActionState:fn,useOptimistic:fn,useMemoCache:fn,useCacheRefresh:fn};Ac.useEffectEvent=fn;var C0={readContext:zn,use:Od,useCallback:function(i,s){return Xn().memoizedState=[i,s===void 0?null:s],i},useContext:zn,useEffect:d0,useImperativeHandle:function(i,s,c){c=c!=null?c.concat([i]):null,Ld(4194308,4,m0.bind(null,s,i),c)},useLayoutEffect:function(i,s){return Ld(4194308,4,i,s)},useInsertionEffect:function(i,s){Ld(4,2,i,s)},useMemo:function(i,s){var c=Xn();s=s===void 0?null:s;var p=i();if(Bs){Qt(!0);try{i()}finally{Qt(!1)}}return c.memoizedState=[p,s],p},useReducer:function(i,s,c){var p=Xn();if(c!==void 0){var x=c(s);if(Bs){Qt(!0);try{c(s)}finally{Qt(!1)}}}else x=s;return p.memoizedState=p.baseState=x,i={pending:null,lanes:0,dispatch:null,lastRenderedReducer:i,lastRenderedState:x},p.queue=i,i=i.dispatch=MT.bind(null,lt,i),[p.memoizedState,i]},useRef:function(i){var s=Xn();return i={current:i},s.memoizedState=i},useState:function(i){i=lm(i);var s=i.queue,c=N0.bind(null,lt,s);return s.dispatch=c,[i.memoizedState,c]},useDebugValue:dm,useDeferredValue:function(i,s){var c=Xn();return fm(c,i,s)},useTransition:function(){var i=lm(!1);return i=v0.bind(null,lt,i.queue,!0,!1),Xn().memoizedState=i,[!1,i]},useSyncExternalStore:function(i,s,c){var p=lt,x=Xn();if(wt){if(c===void 0)throw Error(r(407));c=c()}else{if(c=s(),qt===null)throw Error(r(349));(xt&127)!==0||Qv(p,s,c)}x.memoizedState=c;var w={value:c,getSnapshot:s};return x.queue=w,d0(Xv.bind(null,p,w,i),[i]),p.flags|=2048,Ho(9,{destroy:void 0},Wv.bind(null,p,w,c,s),null),c},useId:function(){var i=Xn(),s=qt.identifierPrefix;if(wt){var c=vi,p=xi;c=(p&~(1<<32-yt(p)-1)).toString(32)+c,s="_"+s+"R_"+c,c=Md++,0<c&&(s+="H"+c.toString(32)),s+="_"}else c=ST++,s="_"+s+"r_"+c.toString(32)+"_";return i.memoizedState=s},useHostTransitionStatus:pm,useFormState:s0,useActionState:s0,useOptimistic:function(i){var s=Xn();s.memoizedState=s.baseState=i;var c={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return s.queue=c,s=mm.bind(null,lt,!0,c),c.dispatch=s,[i,s]},useMemoCache:am,useCacheRefresh:function(){return Xn().memoizedState=TT.bind(null,lt)},useEffectEvent:function(i){var s=Xn(),c={impl:i};return s.memoizedState=c,function(){if((Tt&2)!==0)throw Error(r(440));return c.impl.apply(void 0,arguments)}}},gm={readContext:zn,use:Od,useCallback:y0,useContext:zn,useEffect:um,useImperativeHandle:g0,useInsertionEffect:h0,useLayoutEffect:p0,useMemo:b0,useReducer:Rd,useRef:u0,useState:function(){return Rd(Yi)},useDebugValue:dm,useDeferredValue:function(i,s){var c=yn();return x0(c,Pt.memoizedState,i,s)},useTransition:function(){var i=Rd(Yi)[0],s=yn().memoizedState;return[typeof i=="boolean"?i:jc(i),s]},useSyncExternalStore:Yv,useId:E0,useHostTransitionStatus:pm,useFormState:o0,useActionState:o0,useOptimistic:function(i,s){var c=yn();return e0(c,Pt,i,s)},useMemoCache:am,useCacheRefresh:S0};gm.useEffectEvent=f0;var A0={readContext:zn,use:Od,useCallback:y0,useContext:zn,useEffect:um,useImperativeHandle:g0,useInsertionEffect:h0,useLayoutEffect:p0,useMemo:b0,useReducer:om,useRef:u0,useState:function(){return om(Yi)},useDebugValue:dm,useDeferredValue:function(i,s){var c=yn();return Pt===null?fm(c,i,s):x0(c,Pt.memoizedState,i,s)},useTransition:function(){var i=om(Yi)[0],s=yn().memoizedState;return[typeof i=="boolean"?i:jc(i),s]},useSyncExternalStore:Yv,useId:E0,useHostTransitionStatus:pm,useFormState:c0,useActionState:c0,useOptimistic:function(i,s){var c=yn();return Pt!==null?e0(c,Pt,i,s):(c.baseState=i,[i,c.queue.dispatch])},useMemoCache:am,useCacheRefresh:S0};A0.useEffectEvent=f0;function ym(i,s,c,p){s=i.memoizedState,c=c(p,s),c=c==null?s:m({},s,c),i.memoizedState=c,i.lanes===0&&(i.updateQueue.baseState=c)}var bm={enqueueSetState:function(i,s,c){i=i._reactInternals;var p=kr(),x=za(p);x.payload=s,c!=null&&(x.callback=c),s=Pa(i,x,p),s!==null&&(lr(s,i,p),Ec(s,i,p))},enqueueReplaceState:function(i,s,c){i=i._reactInternals;var p=kr(),x=za(p);x.tag=1,x.payload=s,c!=null&&(x.callback=c),s=Pa(i,x,p),s!==null&&(lr(s,i,p),Ec(s,i,p))},enqueueForceUpdate:function(i,s){i=i._reactInternals;var c=kr(),p=za(c);p.tag=2,s!=null&&(p.callback=s),s=Pa(i,p,c),s!==null&&(lr(s,i,c),Ec(s,i,c))}};function T0(i,s,c,p,x,w,A){return i=i.stateNode,typeof i.shouldComponentUpdate=="function"?i.shouldComponentUpdate(p,w,A):s.prototype&&s.prototype.isPureReactComponent?!mc(c,p)||!mc(x,w):!0}function M0(i,s,c,p){i=s.state,typeof s.componentWillReceiveProps=="function"&&s.componentWillReceiveProps(c,p),typeof s.UNSAFE_componentWillReceiveProps=="function"&&s.UNSAFE_componentWillReceiveProps(c,p),s.state!==i&&bm.enqueueReplaceState(s,s.state,null)}function Us(i,s){var c=s;if("ref"in s){c={};for(var p in s)p!=="ref"&&(c[p]=s[p])}if(i=i.defaultProps){c===s&&(c=m({},c));for(var x in i)c[x]===void 0&&(c[x]=i[x])}return c}function D0(i){md(i)}function O0(i){console.error(i)}function R0(i){md(i)}function Pd(i,s){try{var c=i.onUncaughtError;c(s.value,{componentStack:s.stack})}catch(p){setTimeout(function(){throw p})}}function L0(i,s,c){try{var p=i.onCaughtError;p(c.value,{componentStack:c.stack,errorBoundary:s.tag===1?s.stateNode:null})}catch(x){setTimeout(function(){throw x})}}function xm(i,s,c){return c=za(c),c.tag=3,c.payload={element:null},c.callback=function(){Pd(i,s)},c}function I0(i){return i=za(i),i.tag=3,i}function z0(i,s,c,p){var x=c.type.getDerivedStateFromError;if(typeof x=="function"){var w=p.value;i.payload=function(){return x(w)},i.callback=function(){L0(s,c,p)}}var A=c.stateNode;A!==null&&typeof A.componentDidCatch=="function"&&(i.callback=function(){L0(s,c,p),typeof x!="function"&&(Ha===null?Ha=new Set([this]):Ha.add(this));var $=p.stack;this.componentDidCatch(p.value,{componentStack:$!==null?$:""})})}function DT(i,s,c,p,x){if(c.flags|=32768,p!==null&&typeof p=="object"&&typeof p.then=="function"){if(s=c.alternate,s!==null&&Io(s,c,x,!0),c=br.current,c!==null){switch(c.tag){case 31:case 13:return Pr===null?Wd():c.alternate===null&&hn===0&&(hn=3),c.flags&=-257,c.flags|=65536,c.lanes=x,p===Nd?c.flags|=16384:(s=c.updateQueue,s===null?c.updateQueue=new Set([p]):s.add(p),Hm(i,p,x)),!1;case 22:return c.flags|=65536,p===Nd?c.flags|=16384:(s=c.updateQueue,s===null?(s={transitions:null,markerInstances:null,retryQueue:new Set([p])},c.updateQueue=s):(c=s.retryQueue,c===null?s.retryQueue=new Set([p]):c.add(p)),Hm(i,p,x)),!1}throw Error(r(435,c.tag))}return Hm(i,p,x),Wd(),!1}if(wt)return s=br.current,s!==null?((s.flags&65536)===0&&(s.flags|=256),s.flags|=65536,s.lanes=x,p!==Pp&&(i=Error(r(422),{cause:p}),bc(Rr(i,c)))):(p!==Pp&&(s=Error(r(423),{cause:p}),bc(Rr(s,c))),i=i.current.alternate,i.flags|=65536,x&=-x,i.lanes|=x,p=Rr(p,c),x=xm(i.stateNode,p,x),Qp(i,x),hn!==4&&(hn=2)),!1;var w=Error(r(520),{cause:p});if(w=Rr(w,c),zc===null?zc=[w]:zc.push(w),hn!==4&&(hn=2),s===null)return!0;p=Rr(p,c),c=s;do{switch(c.tag){case 3:return c.flags|=65536,i=x&-x,c.lanes|=i,i=xm(c.stateNode,p,i),Qp(c,i),!1;case 1:if(s=c.type,w=c.stateNode,(c.flags&128)===0&&(typeof s.getDerivedStateFromError=="function"||w!==null&&typeof w.componentDidCatch=="function"&&(Ha===null||!Ha.has(w))))return c.flags|=65536,x&=-x,c.lanes|=x,x=I0(x),z0(x,i,c,p),Qp(c,x),!1}c=c.return}while(c!==null);return!1}var vm=Error(r(461)),wn=!1;function Pn(i,s,c,p){s.child=i===null?$v(s,null,c,p):Ps(s,i.child,c,p)}function P0(i,s,c,p,x){c=c.render;var w=s.ref;if("ref"in p){var A={};for(var $ in p)$!=="ref"&&(A[$]=p[$])}else A=p;return Rs(s),p=tm(i,s,c,A,w,x),$=nm(),i!==null&&!wn?(rm(i,s,x),Qi(i,s,x)):(wt&&$&&Ip(s),s.flags|=1,Pn(i,s,p,x),s.child)}function B0(i,s,c,p,x){if(i===null){var w=c.type;return typeof w=="function"&&!Op(w)&&w.defaultProps===void 0&&c.compare===null?(s.tag=15,s.type=w,U0(i,s,w,p,x)):(i=xd(c.type,null,p,s,s.mode,x),i.ref=s.ref,i.return=s,s.child=i)}if(w=i.child,!Cm(i,x)){var A=w.memoizedProps;if(c=c.compare,c=c!==null?c:mc,c(A,p)&&i.ref===s.ref)return Qi(i,s,x)}return s.flags|=1,i=qi(w,p),i.ref=s.ref,i.return=s,s.child=i}function U0(i,s,c,p,x){if(i!==null){var w=i.memoizedProps;if(mc(w,p)&&i.ref===s.ref)if(wn=!1,s.pendingProps=p=w,Cm(i,x))(i.flags&131072)!==0&&(wn=!0);else return s.lanes=i.lanes,Qi(i,s,x)}return wm(i,s,c,p,x)}function $0(i,s,c,p){var x=p.children,w=i!==null?i.memoizedState:null;if(i===null&&s.stateNode===null&&(s.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),p.mode==="hidden"){if((s.flags&128)!==0){if(w=w!==null?w.baseLanes|c:c,i!==null){for(p=s.child=i.child,x=0;p!==null;)x=x|p.lanes|p.childLanes,p=p.sibling;p=x&~w}else p=0,s.child=null;return F0(i,s,w,c,p)}if((c&536870912)!==0)s.memoizedState={baseLanes:0,cachePool:null},i!==null&&Ed(s,w!==null?w.cachePool:null),w!==null?Hv(s,w):Xp(),Kv(s);else return p=s.lanes=536870912,F0(i,s,w!==null?w.baseLanes|c:c,c,p)}else w!==null?(Ed(s,w.cachePool),Hv(s,w),Ua(),s.memoizedState=null):(i!==null&&Ed(s,null),Xp(),Ua());return Pn(i,s,x,c),s.child}function Tc(i,s){return i!==null&&i.tag===22||s.stateNode!==null||(s.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),s.sibling}function F0(i,s,c,p,x){var w=Kp();return w=w===null?null:{parent:xn._currentValue,pool:w},s.memoizedState={baseLanes:c,cachePool:w},i!==null&&Ed(s,null),Xp(),Kv(s),i!==null&&Io(i,s,p,!0),s.childLanes=x,null}function Bd(i,s){return s=$d({mode:s.mode,children:s.children},i.mode),s.ref=i.ref,i.child=s,s.return=i,s}function q0(i,s,c){return Ps(s,i.child,null,c),i=Bd(s,s.pendingProps),i.flags|=2,xr(s),s.memoizedState=null,i}function OT(i,s,c){var p=s.pendingProps,x=(s.flags&128)!==0;if(s.flags&=-129,i===null){if(wt){if(p.mode==="hidden")return i=Bd(s,p),s.lanes=536870912,Tc(null,i);if(Jp(s),(i=Wt)?(i=t1(i,zr),i=i!==null&&i.data==="&"?i:null,i!==null&&(s.memoizedState={dehydrated:i,treeContext:Da!==null?{id:xi,overflow:vi}:null,retryLane:536870912,hydrationErrors:null},c=_v(i),c.return=s,s.child=c,In=s,Wt=null)):i=null,i===null)throw Ra(s);return s.lanes=536870912,null}return Bd(s,p)}var w=i.memoizedState;if(w!==null){var A=w.dehydrated;if(Jp(s),x)if(s.flags&256)s.flags&=-257,s=q0(i,s,c);else if(s.memoizedState!==null)s.child=i.child,s.flags|=128,s=null;else throw Error(r(558));else if(wn||Io(i,s,c,!1),x=(c&i.childLanes)!==0,wn||x){if(p=qt,p!==null&&(A=rn(p,c),A!==0&&A!==w.retryLane))throw w.retryLane=A,Ts(i,A),lr(p,i,A),vm;Wd(),s=q0(i,s,c)}else i=w.treeContext,Wt=Br(A.nextSibling),In=s,wt=!0,Oa=null,zr=!1,i!==null&&Av(s,i),s=Bd(s,p),s.flags|=4096;return s}return i=qi(i.child,{mode:p.mode,children:p.children}),i.ref=s.ref,s.child=i,i.return=s,i}function Ud(i,s){var c=s.ref;if(c===null)i!==null&&i.ref!==null&&(s.flags|=4194816);else{if(typeof c!="function"&&typeof c!="object")throw Error(r(284));(i===null||i.ref!==c)&&(s.flags|=4194816)}}function wm(i,s,c,p,x){return Rs(s),c=tm(i,s,c,p,void 0,x),p=nm(),i!==null&&!wn?(rm(i,s,x),Qi(i,s,x)):(wt&&p&&Ip(s),s.flags|=1,Pn(i,s,c,x),s.child)}function H0(i,s,c,p,x,w){return Rs(s),s.updateQueue=null,c=Vv(s,p,c,x),Gv(i),p=nm(),i!==null&&!wn?(rm(i,s,w),Qi(i,s,w)):(wt&&p&&Ip(s),s.flags|=1,Pn(i,s,c,w),s.child)}function K0(i,s,c,p,x){if(Rs(s),s.stateNode===null){var w=Do,A=c.contextType;typeof A=="object"&&A!==null&&(w=zn(A)),w=new c(p,w),s.memoizedState=w.state!==null&&w.state!==void 0?w.state:null,w.updater=bm,s.stateNode=w,w._reactInternals=s,w=s.stateNode,w.props=p,w.state=s.memoizedState,w.refs={},Vp(s),A=c.contextType,w.context=typeof A=="object"&&A!==null?zn(A):Do,w.state=s.memoizedState,A=c.getDerivedStateFromProps,typeof A=="function"&&(ym(s,c,A,p),w.state=s.memoizedState),typeof c.getDerivedStateFromProps=="function"||typeof w.getSnapshotBeforeUpdate=="function"||typeof w.UNSAFE_componentWillMount!="function"&&typeof w.componentWillMount!="function"||(A=w.state,typeof w.componentWillMount=="function"&&w.componentWillMount(),typeof w.UNSAFE_componentWillMount=="function"&&w.UNSAFE_componentWillMount(),A!==w.state&&bm.enqueueReplaceState(w,w.state,null),Nc(s,p,w,x),Sc(),w.state=s.memoizedState),typeof w.componentDidMount=="function"&&(s.flags|=4194308),p=!0}else if(i===null){w=s.stateNode;var $=s.memoizedProps,W=Us(c,$);w.props=W;var ae=w.context,fe=c.contextType;A=Do,typeof fe=="object"&&fe!==null&&(A=zn(fe));var ye=c.getDerivedStateFromProps;fe=typeof ye=="function"||typeof w.getSnapshotBeforeUpdate=="function",$=s.pendingProps!==$,fe||typeof w.UNSAFE_componentWillReceiveProps!="function"&&typeof w.componentWillReceiveProps!="function"||($||ae!==A)&&M0(s,w,p,A),Ia=!1;var se=s.memoizedState;w.state=se,Nc(s,p,w,x),Sc(),ae=s.memoizedState,$||se!==ae||Ia?(typeof ye=="function"&&(ym(s,c,ye,p),ae=s.memoizedState),(W=Ia||T0(s,c,W,p,se,ae,A))?(fe||typeof w.UNSAFE_componentWillMount!="function"&&typeof w.componentWillMount!="function"||(typeof w.componentWillMount=="function"&&w.componentWillMount(),typeof w.UNSAFE_componentWillMount=="function"&&w.UNSAFE_componentWillMount()),typeof w.componentDidMount=="function"&&(s.flags|=4194308)):(typeof w.componentDidMount=="function"&&(s.flags|=4194308),s.memoizedProps=p,s.memoizedState=ae),w.props=p,w.state=ae,w.context=A,p=W):(typeof w.componentDidMount=="function"&&(s.flags|=4194308),p=!1)}else{w=s.stateNode,Yp(i,s),A=s.memoizedProps,fe=Us(c,A),w.props=fe,ye=s.pendingProps,se=w.context,ae=c.contextType,W=Do,typeof ae=="object"&&ae!==null&&(W=zn(ae)),$=c.getDerivedStateFromProps,(ae=typeof $=="function"||typeof w.getSnapshotBeforeUpdate=="function")||typeof w.UNSAFE_componentWillReceiveProps!="function"&&typeof w.componentWillReceiveProps!="function"||(A!==ye||se!==W)&&M0(s,w,p,W),Ia=!1,se=s.memoizedState,w.state=se,Nc(s,p,w,x),Sc();var ce=s.memoizedState;A!==ye||se!==ce||Ia||i!==null&&i.dependencies!==null&&wd(i.dependencies)?(typeof $=="function"&&(ym(s,c,$,p),ce=s.memoizedState),(fe=Ia||T0(s,c,fe,p,se,ce,W)||i!==null&&i.dependencies!==null&&wd(i.dependencies))?(ae||typeof w.UNSAFE_componentWillUpdate!="function"&&typeof w.componentWillUpdate!="function"||(typeof w.componentWillUpdate=="function"&&w.componentWillUpdate(p,ce,W),typeof w.UNSAFE_componentWillUpdate=="function"&&w.UNSAFE_componentWillUpdate(p,ce,W)),typeof w.componentDidUpdate=="function"&&(s.flags|=4),typeof w.getSnapshotBeforeUpdate=="function"&&(s.flags|=1024)):(typeof w.componentDidUpdate!="function"||A===i.memoizedProps&&se===i.memoizedState||(s.flags|=4),typeof w.getSnapshotBeforeUpdate!="function"||A===i.memoizedProps&&se===i.memoizedState||(s.flags|=1024),s.memoizedProps=p,s.memoizedState=ce),w.props=p,w.state=ce,w.context=W,p=fe):(typeof w.componentDidUpdate!="function"||A===i.memoizedProps&&se===i.memoizedState||(s.flags|=4),typeof w.getSnapshotBeforeUpdate!="function"||A===i.memoizedProps&&se===i.memoizedState||(s.flags|=1024),p=!1)}return w=p,Ud(i,s),p=(s.flags&128)!==0,w||p?(w=s.stateNode,c=p&&typeof c.getDerivedStateFromError!="function"?null:w.render(),s.flags|=1,i!==null&&p?(s.child=Ps(s,i.child,null,x),s.child=Ps(s,null,c,x)):Pn(i,s,c,x),s.memoizedState=w.state,i=s.child):i=Qi(i,s,x),i}function G0(i,s,c,p){return Ds(),s.flags|=256,Pn(i,s,c,p),s.child}var km={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function Em(i){return{baseLanes:i,cachePool:Lv()}}function Sm(i,s,c){return i=i!==null?i.childLanes&~c:0,s&&(i|=wr),i}function V0(i,s,c){var p=s.pendingProps,x=!1,w=(s.flags&128)!==0,A;if((A=w)||(A=i!==null&&i.memoizedState===null?!1:(gn.current&2)!==0),A&&(x=!0,s.flags&=-129),A=(s.flags&32)!==0,s.flags&=-33,i===null){if(wt){if(x?Ba(s):Ua(),(i=Wt)?(i=t1(i,zr),i=i!==null&&i.data!=="&"?i:null,i!==null&&(s.memoizedState={dehydrated:i,treeContext:Da!==null?{id:xi,overflow:vi}:null,retryLane:536870912,hydrationErrors:null},c=_v(i),c.return=s,s.child=c,In=s,Wt=null)):i=null,i===null)throw Ra(s);return sg(i)?s.lanes=32:s.lanes=536870912,null}var $=p.children;return p=p.fallback,x?(Ua(),x=s.mode,$=$d({mode:"hidden",children:$},x),p=Ms(p,x,c,null),$.return=s,p.return=s,$.sibling=p,s.child=$,p=s.child,p.memoizedState=Em(c),p.childLanes=Sm(i,A,c),s.memoizedState=km,Tc(null,p)):(Ba(s),Nm(s,$))}var W=i.memoizedState;if(W!==null&&($=W.dehydrated,$!==null)){if(w)s.flags&256?(Ba(s),s.flags&=-257,s=_m(i,s,c)):s.memoizedState!==null?(Ua(),s.child=i.child,s.flags|=128,s=null):(Ua(),$=p.fallback,x=s.mode,p=$d({mode:"visible",children:p.children},x),$=Ms($,x,c,null),$.flags|=2,p.return=s,$.return=s,p.sibling=$,s.child=p,Ps(s,i.child,null,c),p=s.child,p.memoizedState=Em(c),p.childLanes=Sm(i,A,c),s.memoizedState=km,s=Tc(null,p));else if(Ba(s),sg($)){if(A=$.nextSibling&&$.nextSibling.dataset,A)var ae=A.dgst;A=ae,p=Error(r(419)),p.stack="",p.digest=A,bc({value:p,source:null,stack:null}),s=_m(i,s,c)}else if(wn||Io(i,s,c,!1),A=(c&i.childLanes)!==0,wn||A){if(A=qt,A!==null&&(p=rn(A,c),p!==0&&p!==W.retryLane))throw W.retryLane=p,Ts(i,p),lr(A,i,p),vm;ag($)||Wd(),s=_m(i,s,c)}else ag($)?(s.flags|=192,s.child=i.child,s=null):(i=W.treeContext,Wt=Br($.nextSibling),In=s,wt=!0,Oa=null,zr=!1,i!==null&&Av(s,i),s=Nm(s,p.children),s.flags|=4096);return s}return x?(Ua(),$=p.fallback,x=s.mode,W=i.child,ae=W.sibling,p=qi(W,{mode:"hidden",children:p.children}),p.subtreeFlags=W.subtreeFlags&65011712,ae!==null?$=qi(ae,$):($=Ms($,x,c,null),$.flags|=2),$.return=s,p.return=s,p.sibling=$,s.child=p,Tc(null,p),p=s.child,$=i.child.memoizedState,$===null?$=Em(c):(x=$.cachePool,x!==null?(W=xn._currentValue,x=x.parent!==W?{parent:W,pool:W}:x):x=Lv(),$={baseLanes:$.baseLanes|c,cachePool:x}),p.memoizedState=$,p.childLanes=Sm(i,A,c),s.memoizedState=km,Tc(i.child,p)):(Ba(s),c=i.child,i=c.sibling,c=qi(c,{mode:"visible",children:p.children}),c.return=s,c.sibling=null,i!==null&&(A=s.deletions,A===null?(s.deletions=[i],s.flags|=16):A.push(i)),s.child=c,s.memoizedState=null,c)}function Nm(i,s){return s=$d({mode:"visible",children:s},i.mode),s.return=i,i.child=s}function $d(i,s){return i=yr(22,i,null,s),i.lanes=0,i}function _m(i,s,c){return Ps(s,i.child,null,c),i=Nm(s,s.pendingProps.children),i.flags|=2,s.memoizedState=null,i}function Y0(i,s,c){i.lanes|=s;var p=i.alternate;p!==null&&(p.lanes|=s),$p(i.return,s,c)}function jm(i,s,c,p,x,w){var A=i.memoizedState;A===null?i.memoizedState={isBackwards:s,rendering:null,renderingStartTime:0,last:p,tail:c,tailMode:x,treeForkCount:w}:(A.isBackwards=s,A.rendering=null,A.renderingStartTime=0,A.last=p,A.tail=c,A.tailMode=x,A.treeForkCount=w)}function Q0(i,s,c){var p=s.pendingProps,x=p.revealOrder,w=p.tail;p=p.children;var A=gn.current,$=(A&2)!==0;if($?(A=A&1|2,s.flags|=128):A&=1,P(gn,A),Pn(i,s,p,c),p=wt?yc:0,!$&&i!==null&&(i.flags&128)!==0)e:for(i=s.child;i!==null;){if(i.tag===13)i.memoizedState!==null&&Y0(i,c,s);else if(i.tag===19)Y0(i,c,s);else if(i.child!==null){i.child.return=i,i=i.child;continue}if(i===s)break e;for(;i.sibling===null;){if(i.return===null||i.return===s)break e;i=i.return}i.sibling.return=i.return,i=i.sibling}switch(x){case"forwards":for(c=s.child,x=null;c!==null;)i=c.alternate,i!==null&&Ad(i)===null&&(x=c),c=c.sibling;c=x,c===null?(x=s.child,s.child=null):(x=c.sibling,c.sibling=null),jm(s,!1,x,c,w,p);break;case"backwards":case"unstable_legacy-backwards":for(c=null,x=s.child,s.child=null;x!==null;){if(i=x.alternate,i!==null&&Ad(i)===null){s.child=x;break}i=x.sibling,x.sibling=c,c=x,x=i}jm(s,!0,c,null,w,p);break;case"together":jm(s,!1,null,null,void 0,p);break;default:s.memoizedState=null}return s.child}function Qi(i,s,c){if(i!==null&&(s.dependencies=i.dependencies),qa|=s.lanes,(c&s.childLanes)===0)if(i!==null){if(Io(i,s,c,!1),(c&s.childLanes)===0)return null}else return null;if(i!==null&&s.child!==i.child)throw Error(r(153));if(s.child!==null){for(i=s.child,c=qi(i,i.pendingProps),s.child=c,c.return=s;i.sibling!==null;)i=i.sibling,c=c.sibling=qi(i,i.pendingProps),c.return=s;c.sibling=null}return s.child}function Cm(i,s){return(i.lanes&s)!==0?!0:(i=i.dependencies,!!(i!==null&&wd(i)))}function RT(i,s,c){switch(s.tag){case 3:J(s,s.stateNode.containerInfo),La(s,xn,i.memoizedState.cache),Ds();break;case 27:case 5:Ce(s);break;case 4:J(s,s.stateNode.containerInfo);break;case 10:La(s,s.type,s.memoizedProps.value);break;case 31:if(s.memoizedState!==null)return s.flags|=128,Jp(s),null;break;case 13:var p=s.memoizedState;if(p!==null)return p.dehydrated!==null?(Ba(s),s.flags|=128,null):(c&s.child.childLanes)!==0?V0(i,s,c):(Ba(s),i=Qi(i,s,c),i!==null?i.sibling:null);Ba(s);break;case 19:var x=(i.flags&128)!==0;if(p=(c&s.childLanes)!==0,p||(Io(i,s,c,!1),p=(c&s.childLanes)!==0),x){if(p)return Q0(i,s,c);s.flags|=128}if(x=s.memoizedState,x!==null&&(x.rendering=null,x.tail=null,x.lastEffect=null),P(gn,gn.current),p)break;return null;case 22:return s.lanes=0,$0(i,s,c,s.pendingProps);case 24:La(s,xn,i.memoizedState.cache)}return Qi(i,s,c)}function W0(i,s,c){if(i!==null)if(i.memoizedProps!==s.pendingProps)wn=!0;else{if(!Cm(i,c)&&(s.flags&128)===0)return wn=!1,RT(i,s,c);wn=(i.flags&131072)!==0}else wn=!1,wt&&(s.flags&1048576)!==0&&Cv(s,yc,s.index);switch(s.lanes=0,s.tag){case 16:e:{var p=s.pendingProps;if(i=Is(s.elementType),s.type=i,typeof i=="function")Op(i)?(p=Us(i,p),s.tag=1,s=K0(null,s,i,p,c)):(s.tag=0,s=wm(null,s,i,p,c));else{if(i!=null){var x=i.$$typeof;if(x===_){s.tag=11,s=P0(null,s,i,p,c);break e}else if(x===I){s.tag=14,s=B0(null,s,i,p,c);break e}}throw s=D(i)||i,Error(r(306,s,""))}}return s;case 0:return wm(i,s,s.type,s.pendingProps,c);case 1:return p=s.type,x=Us(p,s.pendingProps),K0(i,s,p,x,c);case 3:e:{if(J(s,s.stateNode.containerInfo),i===null)throw Error(r(387));p=s.pendingProps;var w=s.memoizedState;x=w.element,Yp(i,s),Nc(s,p,null,c);var A=s.memoizedState;if(p=A.cache,La(s,xn,p),p!==w.cache&&Fp(s,[xn],c,!0),Sc(),p=A.element,w.isDehydrated)if(w={element:p,isDehydrated:!1,cache:A.cache},s.updateQueue.baseState=w,s.memoizedState=w,s.flags&256){s=G0(i,s,p,c);break e}else if(p!==x){x=Rr(Error(r(424)),s),bc(x),s=G0(i,s,p,c);break e}else{switch(i=s.stateNode.containerInfo,i.nodeType){case 9:i=i.body;break;default:i=i.nodeName==="HTML"?i.ownerDocument.body:i}for(Wt=Br(i.firstChild),In=s,wt=!0,Oa=null,zr=!0,c=$v(s,null,p,c),s.child=c;c;)c.flags=c.flags&-3|4096,c=c.sibling}else{if(Ds(),p===x){s=Qi(i,s,c);break e}Pn(i,s,p,c)}s=s.child}return s;case 26:return Ud(i,s),i===null?(c=o1(s.type,null,s.pendingProps,null))?s.memoizedState=c:wt||(c=s.type,i=s.pendingProps,p=rf(xe.current).createElement(c),p[an]=s,p[Tn]=i,Bn(p,c,i),dn(p),s.stateNode=p):s.memoizedState=o1(s.type,i.memoizedProps,s.pendingProps,i.memoizedState),null;case 27:return Ce(s),i===null&&wt&&(p=s.stateNode=i1(s.type,s.pendingProps,xe.current),In=s,zr=!0,x=Wt,Ya(s.type)?(og=x,Wt=Br(p.firstChild)):Wt=x),Pn(i,s,s.pendingProps.children,c),Ud(i,s),i===null&&(s.flags|=4194304),s.child;case 5:return i===null&&wt&&((x=p=Wt)&&(p=uM(p,s.type,s.pendingProps,zr),p!==null?(s.stateNode=p,In=s,Wt=Br(p.firstChild),zr=!1,x=!0):x=!1),x||Ra(s)),Ce(s),x=s.type,w=s.pendingProps,A=i!==null?i.memoizedProps:null,p=w.children,ng(x,w)?p=null:A!==null&&ng(x,A)&&(s.flags|=32),s.memoizedState!==null&&(x=tm(i,s,NT,null,null,c),Kc._currentValue=x),Ud(i,s),Pn(i,s,p,c),s.child;case 6:return i===null&&wt&&((i=c=Wt)&&(c=dM(c,s.pendingProps,zr),c!==null?(s.stateNode=c,In=s,Wt=null,i=!0):i=!1),i||Ra(s)),null;case 13:return V0(i,s,c);case 4:return J(s,s.stateNode.containerInfo),p=s.pendingProps,i===null?s.child=Ps(s,null,p,c):Pn(i,s,p,c),s.child;case 11:return P0(i,s,s.type,s.pendingProps,c);case 7:return Pn(i,s,s.pendingProps,c),s.child;case 8:return Pn(i,s,s.pendingProps.children,c),s.child;case 12:return Pn(i,s,s.pendingProps.children,c),s.child;case 10:return p=s.pendingProps,La(s,s.type,p.value),Pn(i,s,p.children,c),s.child;case 9:return x=s.type._context,p=s.pendingProps.children,Rs(s),x=zn(x),p=p(x),s.flags|=1,Pn(i,s,p,c),s.child;case 14:return B0(i,s,s.type,s.pendingProps,c);case 15:return U0(i,s,s.type,s.pendingProps,c);case 19:return Q0(i,s,c);case 31:return OT(i,s,c);case 22:return $0(i,s,c,s.pendingProps);case 24:return Rs(s),p=zn(xn),i===null?(x=Kp(),x===null&&(x=qt,w=qp(),x.pooledCache=w,w.refCount++,w!==null&&(x.pooledCacheLanes|=c),x=w),s.memoizedState={parent:p,cache:x},Vp(s),La(s,xn,x)):((i.lanes&c)!==0&&(Yp(i,s),Nc(s,null,null,c),Sc()),x=i.memoizedState,w=s.memoizedState,x.parent!==p?(x={parent:p,cache:p},s.memoizedState=x,s.lanes===0&&(s.memoizedState=s.updateQueue.baseState=x),La(s,xn,p)):(p=w.cache,La(s,xn,p),p!==x.cache&&Fp(s,[xn],c,!0))),Pn(i,s,s.pendingProps.children,c),s.child;case 29:throw s.pendingProps}throw Error(r(156,s.tag))}function Wi(i){i.flags|=4}function Am(i,s,c,p,x){if((s=(i.mode&32)!==0)&&(s=!1),s){if(i.flags|=16777216,(x&335544128)===x)if(i.stateNode.complete)i.flags|=8192;else if(Ew())i.flags|=8192;else throw zs=Nd,Gp}else i.flags&=-16777217}function X0(i,s){if(s.type!=="stylesheet"||(s.state.loading&4)!==0)i.flags&=-16777217;else if(i.flags|=16777216,!f1(s))if(Ew())i.flags|=8192;else throw zs=Nd,Gp}function Fd(i,s){s!==null&&(i.flags|=4),i.flags&16384&&(s=i.tag!==22?rt():536870912,i.lanes|=s,Yo|=s)}function Mc(i,s){if(!wt)switch(i.tailMode){case"hidden":s=i.tail;for(var c=null;s!==null;)s.alternate!==null&&(c=s),s=s.sibling;c===null?i.tail=null:c.sibling=null;break;case"collapsed":c=i.tail;for(var p=null;c!==null;)c.alternate!==null&&(p=c),c=c.sibling;p===null?s||i.tail===null?i.tail=null:i.tail.sibling=null:p.sibling=null}}function Xt(i){var s=i.alternate!==null&&i.alternate.child===i.child,c=0,p=0;if(s)for(var x=i.child;x!==null;)c|=x.lanes|x.childLanes,p|=x.subtreeFlags&65011712,p|=x.flags&65011712,x.return=i,x=x.sibling;else for(x=i.child;x!==null;)c|=x.lanes|x.childLanes,p|=x.subtreeFlags,p|=x.flags,x.return=i,x=x.sibling;return i.subtreeFlags|=p,i.childLanes=c,s}function LT(i,s,c){var p=s.pendingProps;switch(zp(s),s.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Xt(s),null;case 1:return Xt(s),null;case 3:return c=s.stateNode,p=null,i!==null&&(p=i.memoizedState.cache),s.memoizedState.cache!==p&&(s.flags|=2048),Gi(xn),de(),c.pendingContext&&(c.context=c.pendingContext,c.pendingContext=null),(i===null||i.child===null)&&(Lo(s)?Wi(s):i===null||i.memoizedState.isDehydrated&&(s.flags&256)===0||(s.flags|=1024,Bp())),Xt(s),null;case 26:var x=s.type,w=s.memoizedState;return i===null?(Wi(s),w!==null?(Xt(s),X0(s,w)):(Xt(s),Am(s,x,null,p,c))):w?w!==i.memoizedState?(Wi(s),Xt(s),X0(s,w)):(Xt(s),s.flags&=-16777217):(i=i.memoizedProps,i!==p&&Wi(s),Xt(s),Am(s,x,i,p,c)),null;case 27:if(Re(s),c=xe.current,x=s.type,i!==null&&s.stateNode!=null)i.memoizedProps!==p&&Wi(s);else{if(!p){if(s.stateNode===null)throw Error(r(166));return Xt(s),null}i=oe.current,Lo(s)?Tv(s):(i=i1(x,p,c),s.stateNode=i,Wi(s))}return Xt(s),null;case 5:if(Re(s),x=s.type,i!==null&&s.stateNode!=null)i.memoizedProps!==p&&Wi(s);else{if(!p){if(s.stateNode===null)throw Error(r(166));return Xt(s),null}if(w=oe.current,Lo(s))Tv(s);else{var A=rf(xe.current);switch(w){case 1:w=A.createElementNS("http://www.w3.org/2000/svg",x);break;case 2:w=A.createElementNS("http://www.w3.org/1998/Math/MathML",x);break;default:switch(x){case"svg":w=A.createElementNS("http://www.w3.org/2000/svg",x);break;case"math":w=A.createElementNS("http://www.w3.org/1998/Math/MathML",x);break;case"script":w=A.createElement("div"),w.innerHTML="<script><\/script>",w=w.removeChild(w.firstChild);break;case"select":w=typeof p.is=="string"?A.createElement("select",{is:p.is}):A.createElement("select"),p.multiple?w.multiple=!0:p.size&&(w.size=p.size);break;default:w=typeof p.is=="string"?A.createElement(x,{is:p.is}):A.createElement(x)}}w[an]=s,w[Tn]=p;e:for(A=s.child;A!==null;){if(A.tag===5||A.tag===6)w.appendChild(A.stateNode);else if(A.tag!==4&&A.tag!==27&&A.child!==null){A.child.return=A,A=A.child;continue}if(A===s)break e;for(;A.sibling===null;){if(A.return===null||A.return===s)break e;A=A.return}A.sibling.return=A.return,A=A.sibling}s.stateNode=w;e:switch(Bn(w,x,p),x){case"button":case"input":case"select":case"textarea":p=!!p.autoFocus;break e;case"img":p=!0;break e;default:p=!1}p&&Wi(s)}}return Xt(s),Am(s,s.type,i===null?null:i.memoizedProps,s.pendingProps,c),null;case 6:if(i&&s.stateNode!=null)i.memoizedProps!==p&&Wi(s);else{if(typeof p!="string"&&s.stateNode===null)throw Error(r(166));if(i=xe.current,Lo(s)){if(i=s.stateNode,c=s.memoizedProps,p=null,x=In,x!==null)switch(x.tag){case 27:case 5:p=x.memoizedProps}i[an]=s,i=!!(i.nodeValue===c||p!==null&&p.suppressHydrationWarning===!0||Vw(i.nodeValue,c)),i||Ra(s,!0)}else i=rf(i).createTextNode(p),i[an]=s,s.stateNode=i}return Xt(s),null;case 31:if(c=s.memoizedState,i===null||i.memoizedState!==null){if(p=Lo(s),c!==null){if(i===null){if(!p)throw Error(r(318));if(i=s.memoizedState,i=i!==null?i.dehydrated:null,!i)throw Error(r(557));i[an]=s}else Ds(),(s.flags&128)===0&&(s.memoizedState=null),s.flags|=4;Xt(s),i=!1}else c=Bp(),i!==null&&i.memoizedState!==null&&(i.memoizedState.hydrationErrors=c),i=!0;if(!i)return s.flags&256?(xr(s),s):(xr(s),null);if((s.flags&128)!==0)throw Error(r(558))}return Xt(s),null;case 13:if(p=s.memoizedState,i===null||i.memoizedState!==null&&i.memoizedState.dehydrated!==null){if(x=Lo(s),p!==null&&p.dehydrated!==null){if(i===null){if(!x)throw Error(r(318));if(x=s.memoizedState,x=x!==null?x.dehydrated:null,!x)throw Error(r(317));x[an]=s}else Ds(),(s.flags&128)===0&&(s.memoizedState=null),s.flags|=4;Xt(s),x=!1}else x=Bp(),i!==null&&i.memoizedState!==null&&(i.memoizedState.hydrationErrors=x),x=!0;if(!x)return s.flags&256?(xr(s),s):(xr(s),null)}return xr(s),(s.flags&128)!==0?(s.lanes=c,s):(c=p!==null,i=i!==null&&i.memoizedState!==null,c&&(p=s.child,x=null,p.alternate!==null&&p.alternate.memoizedState!==null&&p.alternate.memoizedState.cachePool!==null&&(x=p.alternate.memoizedState.cachePool.pool),w=null,p.memoizedState!==null&&p.memoizedState.cachePool!==null&&(w=p.memoizedState.cachePool.pool),w!==x&&(p.flags|=2048)),c!==i&&c&&(s.child.flags|=8192),Fd(s,s.updateQueue),Xt(s),null);case 4:return de(),i===null&&Xm(s.stateNode.containerInfo),Xt(s),null;case 10:return Gi(s.type),Xt(s),null;case 19:if(G(gn),p=s.memoizedState,p===null)return Xt(s),null;if(x=(s.flags&128)!==0,w=p.rendering,w===null)if(x)Mc(p,!1);else{if(hn!==0||i!==null&&(i.flags&128)!==0)for(i=s.child;i!==null;){if(w=Ad(i),w!==null){for(s.flags|=128,Mc(p,!1),i=w.updateQueue,s.updateQueue=i,Fd(s,i),s.subtreeFlags=0,i=c,c=s.child;c!==null;)Nv(c,i),c=c.sibling;return P(gn,gn.current&1|2),wt&&Hi(s,p.treeForkCount),s.child}i=i.sibling}p.tail!==null&&ze()>Vd&&(s.flags|=128,x=!0,Mc(p,!1),s.lanes=4194304)}else{if(!x)if(i=Ad(w),i!==null){if(s.flags|=128,x=!0,i=i.updateQueue,s.updateQueue=i,Fd(s,i),Mc(p,!0),p.tail===null&&p.tailMode==="hidden"&&!w.alternate&&!wt)return Xt(s),null}else 2*ze()-p.renderingStartTime>Vd&&c!==536870912&&(s.flags|=128,x=!0,Mc(p,!1),s.lanes=4194304);p.isBackwards?(w.sibling=s.child,s.child=w):(i=p.last,i!==null?i.sibling=w:s.child=w,p.last=w)}return p.tail!==null?(i=p.tail,p.rendering=i,p.tail=i.sibling,p.renderingStartTime=ze(),i.sibling=null,c=gn.current,P(gn,x?c&1|2:c&1),wt&&Hi(s,p.treeForkCount),i):(Xt(s),null);case 22:case 23:return xr(s),Zp(),p=s.memoizedState!==null,i!==null?i.memoizedState!==null!==p&&(s.flags|=8192):p&&(s.flags|=8192),p?(c&536870912)!==0&&(s.flags&128)===0&&(Xt(s),s.subtreeFlags&6&&(s.flags|=8192)):Xt(s),c=s.updateQueue,c!==null&&Fd(s,c.retryQueue),c=null,i!==null&&i.memoizedState!==null&&i.memoizedState.cachePool!==null&&(c=i.memoizedState.cachePool.pool),p=null,s.memoizedState!==null&&s.memoizedState.cachePool!==null&&(p=s.memoizedState.cachePool.pool),p!==c&&(s.flags|=2048),i!==null&&G(Ls),null;case 24:return c=null,i!==null&&(c=i.memoizedState.cache),s.memoizedState.cache!==c&&(s.flags|=2048),Gi(xn),Xt(s),null;case 25:return null;case 30:return null}throw Error(r(156,s.tag))}function IT(i,s){switch(zp(s),s.tag){case 1:return i=s.flags,i&65536?(s.flags=i&-65537|128,s):null;case 3:return Gi(xn),de(),i=s.flags,(i&65536)!==0&&(i&128)===0?(s.flags=i&-65537|128,s):null;case 26:case 27:case 5:return Re(s),null;case 31:if(s.memoizedState!==null){if(xr(s),s.alternate===null)throw Error(r(340));Ds()}return i=s.flags,i&65536?(s.flags=i&-65537|128,s):null;case 13:if(xr(s),i=s.memoizedState,i!==null&&i.dehydrated!==null){if(s.alternate===null)throw Error(r(340));Ds()}return i=s.flags,i&65536?(s.flags=i&-65537|128,s):null;case 19:return G(gn),null;case 4:return de(),null;case 10:return Gi(s.type),null;case 22:case 23:return xr(s),Zp(),i!==null&&G(Ls),i=s.flags,i&65536?(s.flags=i&-65537|128,s):null;case 24:return Gi(xn),null;case 25:return null;default:return null}}function Z0(i,s){switch(zp(s),s.tag){case 3:Gi(xn),de();break;case 26:case 27:case 5:Re(s);break;case 4:de();break;case 31:s.memoizedState!==null&&xr(s);break;case 13:xr(s);break;case 19:G(gn);break;case 10:Gi(s.type);break;case 22:case 23:xr(s),Zp(),i!==null&&G(Ls);break;case 24:Gi(xn)}}function Dc(i,s){try{var c=s.updateQueue,p=c!==null?c.lastEffect:null;if(p!==null){var x=p.next;c=x;do{if((c.tag&i)===i){p=void 0;var w=c.create,A=c.inst;p=w(),A.destroy=p}c=c.next}while(c!==x)}}catch($){It(s,s.return,$)}}function $a(i,s,c){try{var p=s.updateQueue,x=p!==null?p.lastEffect:null;if(x!==null){var w=x.next;p=w;do{if((p.tag&i)===i){var A=p.inst,$=A.destroy;if($!==void 0){A.destroy=void 0,x=s;var W=c,ae=$;try{ae()}catch(fe){It(x,W,fe)}}}p=p.next}while(p!==w)}}catch(fe){It(s,s.return,fe)}}function J0(i){var s=i.updateQueue;if(s!==null){var c=i.stateNode;try{qv(s,c)}catch(p){It(i,i.return,p)}}}function ew(i,s,c){c.props=Us(i.type,i.memoizedProps),c.state=i.memoizedState;try{c.componentWillUnmount()}catch(p){It(i,s,p)}}function Oc(i,s){try{var c=i.ref;if(c!==null){switch(i.tag){case 26:case 27:case 5:var p=i.stateNode;break;case 30:p=i.stateNode;break;default:p=i.stateNode}typeof c=="function"?i.refCleanup=c(p):c.current=p}}catch(x){It(i,s,x)}}function wi(i,s){var c=i.ref,p=i.refCleanup;if(c!==null)if(typeof p=="function")try{p()}catch(x){It(i,s,x)}finally{i.refCleanup=null,i=i.alternate,i!=null&&(i.refCleanup=null)}else if(typeof c=="function")try{c(null)}catch(x){It(i,s,x)}else c.current=null}function tw(i){var s=i.type,c=i.memoizedProps,p=i.stateNode;try{e:switch(s){case"button":case"input":case"select":case"textarea":c.autoFocus&&p.focus();break e;case"img":c.src?p.src=c.src:c.srcSet&&(p.srcset=c.srcSet)}}catch(x){It(i,i.return,x)}}function Tm(i,s,c){try{var p=i.stateNode;iM(p,i.type,c,s),p[Tn]=s}catch(x){It(i,i.return,x)}}function nw(i){return i.tag===5||i.tag===3||i.tag===26||i.tag===27&&Ya(i.type)||i.tag===4}function Mm(i){e:for(;;){for(;i.sibling===null;){if(i.return===null||nw(i.return))return null;i=i.return}for(i.sibling.return=i.return,i=i.sibling;i.tag!==5&&i.tag!==6&&i.tag!==18;){if(i.tag===27&&Ya(i.type)||i.flags&2||i.child===null||i.tag===4)continue e;i.child.return=i,i=i.child}if(!(i.flags&2))return i.stateNode}}function Dm(i,s,c){var p=i.tag;if(p===5||p===6)i=i.stateNode,s?(c.nodeType===9?c.body:c.nodeName==="HTML"?c.ownerDocument.body:c).insertBefore(i,s):(s=c.nodeType===9?c.body:c.nodeName==="HTML"?c.ownerDocument.body:c,s.appendChild(i),c=c._reactRootContainer,c!=null||s.onclick!==null||(s.onclick=_e));else if(p!==4&&(p===27&&Ya(i.type)&&(c=i.stateNode,s=null),i=i.child,i!==null))for(Dm(i,s,c),i=i.sibling;i!==null;)Dm(i,s,c),i=i.sibling}function qd(i,s,c){var p=i.tag;if(p===5||p===6)i=i.stateNode,s?c.insertBefore(i,s):c.appendChild(i);else if(p!==4&&(p===27&&Ya(i.type)&&(c=i.stateNode),i=i.child,i!==null))for(qd(i,s,c),i=i.sibling;i!==null;)qd(i,s,c),i=i.sibling}function rw(i){var s=i.stateNode,c=i.memoizedProps;try{for(var p=i.type,x=s.attributes;x.length;)s.removeAttributeNode(x[0]);Bn(s,p,c),s[an]=i,s[Tn]=c}catch(w){It(i,i.return,w)}}var Xi=!1,kn=!1,Om=!1,iw=typeof WeakSet=="function"?WeakSet:Set,Dn=null;function zT(i,s){if(i=i.containerInfo,eg=df,i=gv(i),_p(i)){if("selectionStart"in i)var c={start:i.selectionStart,end:i.selectionEnd};else e:{c=(c=i.ownerDocument)&&c.defaultView||window;var p=c.getSelection&&c.getSelection();if(p&&p.rangeCount!==0){c=p.anchorNode;var x=p.anchorOffset,w=p.focusNode;p=p.focusOffset;try{c.nodeType,w.nodeType}catch{c=null;break e}var A=0,$=-1,W=-1,ae=0,fe=0,ye=i,se=null;t:for(;;){for(var ce;ye!==c||x!==0&&ye.nodeType!==3||($=A+x),ye!==w||p!==0&&ye.nodeType!==3||(W=A+p),ye.nodeType===3&&(A+=ye.nodeValue.length),(ce=ye.firstChild)!==null;)se=ye,ye=ce;for(;;){if(ye===i)break t;if(se===c&&++ae===x&&($=A),se===w&&++fe===p&&(W=A),(ce=ye.nextSibling)!==null)break;ye=se,se=ye.parentNode}ye=ce}c=$===-1||W===-1?null:{start:$,end:W}}else c=null}c=c||{start:0,end:0}}else c=null;for(tg={focusedElem:i,selectionRange:c},df=!1,Dn=s;Dn!==null;)if(s=Dn,i=s.child,(s.subtreeFlags&1028)!==0&&i!==null)i.return=s,Dn=i;else for(;Dn!==null;){switch(s=Dn,w=s.alternate,i=s.flags,s.tag){case 0:if((i&4)!==0&&(i=s.updateQueue,i=i!==null?i.events:null,i!==null))for(c=0;c<i.length;c++)x=i[c],x.ref.impl=x.nextImpl;break;case 11:case 15:break;case 1:if((i&1024)!==0&&w!==null){i=void 0,c=s,x=w.memoizedProps,w=w.memoizedState,p=c.stateNode;try{var Ue=Us(c.type,x);i=p.getSnapshotBeforeUpdate(Ue,w),p.__reactInternalSnapshotBeforeUpdate=i}catch(tt){It(c,c.return,tt)}}break;case 3:if((i&1024)!==0){if(i=s.stateNode.containerInfo,c=i.nodeType,c===9)ig(i);else if(c===1)switch(i.nodeName){case"HEAD":case"HTML":case"BODY":ig(i);break;default:i.textContent=""}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if((i&1024)!==0)throw Error(r(163))}if(i=s.sibling,i!==null){i.return=s.return,Dn=i;break}Dn=s.return}}function aw(i,s,c){var p=c.flags;switch(c.tag){case 0:case 11:case 15:Ji(i,c),p&4&&Dc(5,c);break;case 1:if(Ji(i,c),p&4)if(i=c.stateNode,s===null)try{i.componentDidMount()}catch(A){It(c,c.return,A)}else{var x=Us(c.type,s.memoizedProps);s=s.memoizedState;try{i.componentDidUpdate(x,s,i.__reactInternalSnapshotBeforeUpdate)}catch(A){It(c,c.return,A)}}p&64&&J0(c),p&512&&Oc(c,c.return);break;case 3:if(Ji(i,c),p&64&&(i=c.updateQueue,i!==null)){if(s=null,c.child!==null)switch(c.child.tag){case 27:case 5:s=c.child.stateNode;break;case 1:s=c.child.stateNode}try{qv(i,s)}catch(A){It(c,c.return,A)}}break;case 27:s===null&&p&4&&rw(c);case 26:case 5:Ji(i,c),s===null&&p&4&&tw(c),p&512&&Oc(c,c.return);break;case 12:Ji(i,c);break;case 31:Ji(i,c),p&4&&lw(i,c);break;case 13:Ji(i,c),p&4&&cw(i,c),p&64&&(i=c.memoizedState,i!==null&&(i=i.dehydrated,i!==null&&(c=GT.bind(null,c),fM(i,c))));break;case 22:if(p=c.memoizedState!==null||Xi,!p){s=s!==null&&s.memoizedState!==null||kn,x=Xi;var w=kn;Xi=p,(kn=s)&&!w?ea(i,c,(c.subtreeFlags&8772)!==0):Ji(i,c),Xi=x,kn=w}break;case 30:break;default:Ji(i,c)}}function sw(i){var s=i.alternate;s!==null&&(i.alternate=null,sw(s)),i.child=null,i.deletions=null,i.sibling=null,i.tag===5&&(s=i.stateNode,s!==null&&Ss(s)),i.stateNode=null,i.return=null,i.dependencies=null,i.memoizedProps=null,i.memoizedState=null,i.pendingProps=null,i.stateNode=null,i.updateQueue=null}var Zt=null,ir=!1;function Zi(i,s,c){for(c=c.child;c!==null;)ow(i,s,c),c=c.sibling}function ow(i,s,c){if(Mt&&typeof Mt.onCommitFiberUnmount=="function")try{Mt.onCommitFiberUnmount(un,c)}catch{}switch(c.tag){case 26:kn||wi(c,s),Zi(i,s,c),c.memoizedState?c.memoizedState.count--:c.stateNode&&(c=c.stateNode,c.parentNode.removeChild(c));break;case 27:kn||wi(c,s);var p=Zt,x=ir;Ya(c.type)&&(Zt=c.stateNode,ir=!1),Zi(i,s,c),Fc(c.stateNode),Zt=p,ir=x;break;case 5:kn||wi(c,s);case 6:if(p=Zt,x=ir,Zt=null,Zi(i,s,c),Zt=p,ir=x,Zt!==null)if(ir)try{(Zt.nodeType===9?Zt.body:Zt.nodeName==="HTML"?Zt.ownerDocument.body:Zt).removeChild(c.stateNode)}catch(w){It(c,s,w)}else try{Zt.removeChild(c.stateNode)}catch(w){It(c,s,w)}break;case 18:Zt!==null&&(ir?(i=Zt,Jw(i.nodeType===9?i.body:i.nodeName==="HTML"?i.ownerDocument.body:i,c.stateNode),nl(i)):Jw(Zt,c.stateNode));break;case 4:p=Zt,x=ir,Zt=c.stateNode.containerInfo,ir=!0,Zi(i,s,c),Zt=p,ir=x;break;case 0:case 11:case 14:case 15:$a(2,c,s),kn||$a(4,c,s),Zi(i,s,c);break;case 1:kn||(wi(c,s),p=c.stateNode,typeof p.componentWillUnmount=="function"&&ew(c,s,p)),Zi(i,s,c);break;case 21:Zi(i,s,c);break;case 22:kn=(p=kn)||c.memoizedState!==null,Zi(i,s,c),kn=p;break;default:Zi(i,s,c)}}function lw(i,s){if(s.memoizedState===null&&(i=s.alternate,i!==null&&(i=i.memoizedState,i!==null))){i=i.dehydrated;try{nl(i)}catch(c){It(s,s.return,c)}}}function cw(i,s){if(s.memoizedState===null&&(i=s.alternate,i!==null&&(i=i.memoizedState,i!==null&&(i=i.dehydrated,i!==null))))try{nl(i)}catch(c){It(s,s.return,c)}}function PT(i){switch(i.tag){case 31:case 13:case 19:var s=i.stateNode;return s===null&&(s=i.stateNode=new iw),s;case 22:return i=i.stateNode,s=i._retryCache,s===null&&(s=i._retryCache=new iw),s;default:throw Error(r(435,i.tag))}}function Hd(i,s){var c=PT(i);s.forEach(function(p){if(!c.has(p)){c.add(p);var x=VT.bind(null,i,p);p.then(x,x)}})}function ar(i,s){var c=s.deletions;if(c!==null)for(var p=0;p<c.length;p++){var x=c[p],w=i,A=s,$=A;e:for(;$!==null;){switch($.tag){case 27:if(Ya($.type)){Zt=$.stateNode,ir=!1;break e}break;case 5:Zt=$.stateNode,ir=!1;break e;case 3:case 4:Zt=$.stateNode.containerInfo,ir=!0;break e}$=$.return}if(Zt===null)throw Error(r(160));ow(w,A,x),Zt=null,ir=!1,w=x.alternate,w!==null&&(w.return=null),x.return=null}if(s.subtreeFlags&13886)for(s=s.child;s!==null;)uw(s,i),s=s.sibling}var ni=null;function uw(i,s){var c=i.alternate,p=i.flags;switch(i.tag){case 0:case 11:case 14:case 15:ar(s,i),sr(i),p&4&&($a(3,i,i.return),Dc(3,i),$a(5,i,i.return));break;case 1:ar(s,i),sr(i),p&512&&(kn||c===null||wi(c,c.return)),p&64&&Xi&&(i=i.updateQueue,i!==null&&(p=i.callbacks,p!==null&&(c=i.shared.hiddenCallbacks,i.shared.hiddenCallbacks=c===null?p:c.concat(p))));break;case 26:var x=ni;if(ar(s,i),sr(i),p&512&&(kn||c===null||wi(c,c.return)),p&4){var w=c!==null?c.memoizedState:null;if(p=i.memoizedState,c===null)if(p===null)if(i.stateNode===null){e:{p=i.type,c=i.memoizedProps,x=x.ownerDocument||x;t:switch(p){case"title":w=x.getElementsByTagName("title")[0],(!w||w[Bi]||w[an]||w.namespaceURI==="http://www.w3.org/2000/svg"||w.hasAttribute("itemprop"))&&(w=x.createElement(p),x.head.insertBefore(w,x.querySelector("head > title"))),Bn(w,p,c),w[an]=i,dn(w),p=w;break e;case"link":var A=u1("link","href",x).get(p+(c.href||""));if(A){for(var $=0;$<A.length;$++)if(w=A[$],w.getAttribute("href")===(c.href==null||c.href===""?null:c.href)&&w.getAttribute("rel")===(c.rel==null?null:c.rel)&&w.getAttribute("title")===(c.title==null?null:c.title)&&w.getAttribute("crossorigin")===(c.crossOrigin==null?null:c.crossOrigin)){A.splice($,1);break t}}w=x.createElement(p),Bn(w,p,c),x.head.appendChild(w);break;case"meta":if(A=u1("meta","content",x).get(p+(c.content||""))){for($=0;$<A.length;$++)if(w=A[$],w.getAttribute("content")===(c.content==null?null:""+c.content)&&w.getAttribute("name")===(c.name==null?null:c.name)&&w.getAttribute("property")===(c.property==null?null:c.property)&&w.getAttribute("http-equiv")===(c.httpEquiv==null?null:c.httpEquiv)&&w.getAttribute("charset")===(c.charSet==null?null:c.charSet)){A.splice($,1);break t}}w=x.createElement(p),Bn(w,p,c),x.head.appendChild(w);break;default:throw Error(r(468,p))}w[an]=i,dn(w),p=w}i.stateNode=p}else d1(x,i.type,i.stateNode);else i.stateNode=c1(x,p,i.memoizedProps);else w!==p?(w===null?c.stateNode!==null&&(c=c.stateNode,c.parentNode.removeChild(c)):w.count--,p===null?d1(x,i.type,i.stateNode):c1(x,p,i.memoizedProps)):p===null&&i.stateNode!==null&&Tm(i,i.memoizedProps,c.memoizedProps)}break;case 27:ar(s,i),sr(i),p&512&&(kn||c===null||wi(c,c.return)),c!==null&&p&4&&Tm(i,i.memoizedProps,c.memoizedProps);break;case 5:if(ar(s,i),sr(i),p&512&&(kn||c===null||wi(c,c.return)),i.flags&32){x=i.stateNode;try{nt(x,"")}catch(Ue){It(i,i.return,Ue)}}p&4&&i.stateNode!=null&&(x=i.memoizedProps,Tm(i,x,c!==null?c.memoizedProps:x)),p&1024&&(Om=!0);break;case 6:if(ar(s,i),sr(i),p&4){if(i.stateNode===null)throw Error(r(162));p=i.memoizedProps,c=i.stateNode;try{c.nodeValue=p}catch(Ue){It(i,i.return,Ue)}}break;case 3:if(of=null,x=ni,ni=af(s.containerInfo),ar(s,i),ni=x,sr(i),p&4&&c!==null&&c.memoizedState.isDehydrated)try{nl(s.containerInfo)}catch(Ue){It(i,i.return,Ue)}Om&&(Om=!1,dw(i));break;case 4:p=ni,ni=af(i.stateNode.containerInfo),ar(s,i),sr(i),ni=p;break;case 12:ar(s,i),sr(i);break;case 31:ar(s,i),sr(i),p&4&&(p=i.updateQueue,p!==null&&(i.updateQueue=null,Hd(i,p)));break;case 13:ar(s,i),sr(i),i.child.flags&8192&&i.memoizedState!==null!=(c!==null&&c.memoizedState!==null)&&(Gd=ze()),p&4&&(p=i.updateQueue,p!==null&&(i.updateQueue=null,Hd(i,p)));break;case 22:x=i.memoizedState!==null;var W=c!==null&&c.memoizedState!==null,ae=Xi,fe=kn;if(Xi=ae||x,kn=fe||W,ar(s,i),kn=fe,Xi=ae,sr(i),p&8192)e:for(s=i.stateNode,s._visibility=x?s._visibility&-2:s._visibility|1,x&&(c===null||W||Xi||kn||$s(i)),c=null,s=i;;){if(s.tag===5||s.tag===26){if(c===null){W=c=s;try{if(w=W.stateNode,x)A=w.style,typeof A.setProperty=="function"?A.setProperty("display","none","important"):A.display="none";else{$=W.stateNode;var ye=W.memoizedProps.style,se=ye!=null&&ye.hasOwnProperty("display")?ye.display:null;$.style.display=se==null||typeof se=="boolean"?"":(""+se).trim()}}catch(Ue){It(W,W.return,Ue)}}}else if(s.tag===6){if(c===null){W=s;try{W.stateNode.nodeValue=x?"":W.memoizedProps}catch(Ue){It(W,W.return,Ue)}}}else if(s.tag===18){if(c===null){W=s;try{var ce=W.stateNode;x?e1(ce,!0):e1(W.stateNode,!1)}catch(Ue){It(W,W.return,Ue)}}}else if((s.tag!==22&&s.tag!==23||s.memoizedState===null||s===i)&&s.child!==null){s.child.return=s,s=s.child;continue}if(s===i)break e;for(;s.sibling===null;){if(s.return===null||s.return===i)break e;c===s&&(c=null),s=s.return}c===s&&(c=null),s.sibling.return=s.return,s=s.sibling}p&4&&(p=i.updateQueue,p!==null&&(c=p.retryQueue,c!==null&&(p.retryQueue=null,Hd(i,c))));break;case 19:ar(s,i),sr(i),p&4&&(p=i.updateQueue,p!==null&&(i.updateQueue=null,Hd(i,p)));break;case 30:break;case 21:break;default:ar(s,i),sr(i)}}function sr(i){var s=i.flags;if(s&2){try{for(var c,p=i.return;p!==null;){if(nw(p)){c=p;break}p=p.return}if(c==null)throw Error(r(160));switch(c.tag){case 27:var x=c.stateNode,w=Mm(i);qd(i,w,x);break;case 5:var A=c.stateNode;c.flags&32&&(nt(A,""),c.flags&=-33);var $=Mm(i);qd(i,$,A);break;case 3:case 4:var W=c.stateNode.containerInfo,ae=Mm(i);Dm(i,ae,W);break;default:throw Error(r(161))}}catch(fe){It(i,i.return,fe)}i.flags&=-3}s&4096&&(i.flags&=-4097)}function dw(i){if(i.subtreeFlags&1024)for(i=i.child;i!==null;){var s=i;dw(s),s.tag===5&&s.flags&1024&&s.stateNode.reset(),i=i.sibling}}function Ji(i,s){if(s.subtreeFlags&8772)for(s=s.child;s!==null;)aw(i,s.alternate,s),s=s.sibling}function $s(i){for(i=i.child;i!==null;){var s=i;switch(s.tag){case 0:case 11:case 14:case 15:$a(4,s,s.return),$s(s);break;case 1:wi(s,s.return);var c=s.stateNode;typeof c.componentWillUnmount=="function"&&ew(s,s.return,c),$s(s);break;case 27:Fc(s.stateNode);case 26:case 5:wi(s,s.return),$s(s);break;case 22:s.memoizedState===null&&$s(s);break;case 30:$s(s);break;default:$s(s)}i=i.sibling}}function ea(i,s,c){for(c=c&&(s.subtreeFlags&8772)!==0,s=s.child;s!==null;){var p=s.alternate,x=i,w=s,A=w.flags;switch(w.tag){case 0:case 11:case 15:ea(x,w,c),Dc(4,w);break;case 1:if(ea(x,w,c),p=w,x=p.stateNode,typeof x.componentDidMount=="function")try{x.componentDidMount()}catch(ae){It(p,p.return,ae)}if(p=w,x=p.updateQueue,x!==null){var $=p.stateNode;try{var W=x.shared.hiddenCallbacks;if(W!==null)for(x.shared.hiddenCallbacks=null,x=0;x<W.length;x++)Fv(W[x],$)}catch(ae){It(p,p.return,ae)}}c&&A&64&&J0(w),Oc(w,w.return);break;case 27:rw(w);case 26:case 5:ea(x,w,c),c&&p===null&&A&4&&tw(w),Oc(w,w.return);break;case 12:ea(x,w,c);break;case 31:ea(x,w,c),c&&A&4&&lw(x,w);break;case 13:ea(x,w,c),c&&A&4&&cw(x,w);break;case 22:w.memoizedState===null&&ea(x,w,c),Oc(w,w.return);break;case 30:break;default:ea(x,w,c)}s=s.sibling}}function Rm(i,s){var c=null;i!==null&&i.memoizedState!==null&&i.memoizedState.cachePool!==null&&(c=i.memoizedState.cachePool.pool),i=null,s.memoizedState!==null&&s.memoizedState.cachePool!==null&&(i=s.memoizedState.cachePool.pool),i!==c&&(i!=null&&i.refCount++,c!=null&&xc(c))}function Lm(i,s){i=null,s.alternate!==null&&(i=s.alternate.memoizedState.cache),s=s.memoizedState.cache,s!==i&&(s.refCount++,i!=null&&xc(i))}function ri(i,s,c,p){if(s.subtreeFlags&10256)for(s=s.child;s!==null;)fw(i,s,c,p),s=s.sibling}function fw(i,s,c,p){var x=s.flags;switch(s.tag){case 0:case 11:case 15:ri(i,s,c,p),x&2048&&Dc(9,s);break;case 1:ri(i,s,c,p);break;case 3:ri(i,s,c,p),x&2048&&(i=null,s.alternate!==null&&(i=s.alternate.memoizedState.cache),s=s.memoizedState.cache,s!==i&&(s.refCount++,i!=null&&xc(i)));break;case 12:if(x&2048){ri(i,s,c,p),i=s.stateNode;try{var w=s.memoizedProps,A=w.id,$=w.onPostCommit;typeof $=="function"&&$(A,s.alternate===null?"mount":"update",i.passiveEffectDuration,-0)}catch(W){It(s,s.return,W)}}else ri(i,s,c,p);break;case 31:ri(i,s,c,p);break;case 13:ri(i,s,c,p);break;case 23:break;case 22:w=s.stateNode,A=s.alternate,s.memoizedState!==null?w._visibility&2?ri(i,s,c,p):Rc(i,s):w._visibility&2?ri(i,s,c,p):(w._visibility|=2,Ko(i,s,c,p,(s.subtreeFlags&10256)!==0||!1)),x&2048&&Rm(A,s);break;case 24:ri(i,s,c,p),x&2048&&Lm(s.alternate,s);break;default:ri(i,s,c,p)}}function Ko(i,s,c,p,x){for(x=x&&((s.subtreeFlags&10256)!==0||!1),s=s.child;s!==null;){var w=i,A=s,$=c,W=p,ae=A.flags;switch(A.tag){case 0:case 11:case 15:Ko(w,A,$,W,x),Dc(8,A);break;case 23:break;case 22:var fe=A.stateNode;A.memoizedState!==null?fe._visibility&2?Ko(w,A,$,W,x):Rc(w,A):(fe._visibility|=2,Ko(w,A,$,W,x)),x&&ae&2048&&Rm(A.alternate,A);break;case 24:Ko(w,A,$,W,x),x&&ae&2048&&Lm(A.alternate,A);break;default:Ko(w,A,$,W,x)}s=s.sibling}}function Rc(i,s){if(s.subtreeFlags&10256)for(s=s.child;s!==null;){var c=i,p=s,x=p.flags;switch(p.tag){case 22:Rc(c,p),x&2048&&Rm(p.alternate,p);break;case 24:Rc(c,p),x&2048&&Lm(p.alternate,p);break;default:Rc(c,p)}s=s.sibling}}var Lc=8192;function Go(i,s,c){if(i.subtreeFlags&Lc)for(i=i.child;i!==null;)hw(i,s,c),i=i.sibling}function hw(i,s,c){switch(i.tag){case 26:Go(i,s,c),i.flags&Lc&&i.memoizedState!==null&&SM(c,ni,i.memoizedState,i.memoizedProps);break;case 5:Go(i,s,c);break;case 3:case 4:var p=ni;ni=af(i.stateNode.containerInfo),Go(i,s,c),ni=p;break;case 22:i.memoizedState===null&&(p=i.alternate,p!==null&&p.memoizedState!==null?(p=Lc,Lc=16777216,Go(i,s,c),Lc=p):Go(i,s,c));break;default:Go(i,s,c)}}function pw(i){var s=i.alternate;if(s!==null&&(i=s.child,i!==null)){s.child=null;do s=i.sibling,i.sibling=null,i=s;while(i!==null)}}function Ic(i){var s=i.deletions;if((i.flags&16)!==0){if(s!==null)for(var c=0;c<s.length;c++){var p=s[c];Dn=p,gw(p,i)}pw(i)}if(i.subtreeFlags&10256)for(i=i.child;i!==null;)mw(i),i=i.sibling}function mw(i){switch(i.tag){case 0:case 11:case 15:Ic(i),i.flags&2048&&$a(9,i,i.return);break;case 3:Ic(i);break;case 12:Ic(i);break;case 22:var s=i.stateNode;i.memoizedState!==null&&s._visibility&2&&(i.return===null||i.return.tag!==13)?(s._visibility&=-3,Kd(i)):Ic(i);break;default:Ic(i)}}function Kd(i){var s=i.deletions;if((i.flags&16)!==0){if(s!==null)for(var c=0;c<s.length;c++){var p=s[c];Dn=p,gw(p,i)}pw(i)}for(i=i.child;i!==null;){switch(s=i,s.tag){case 0:case 11:case 15:$a(8,s,s.return),Kd(s);break;case 22:c=s.stateNode,c._visibility&2&&(c._visibility&=-3,Kd(s));break;default:Kd(s)}i=i.sibling}}function gw(i,s){for(;Dn!==null;){var c=Dn;switch(c.tag){case 0:case 11:case 15:$a(8,c,s);break;case 23:case 22:if(c.memoizedState!==null&&c.memoizedState.cachePool!==null){var p=c.memoizedState.cachePool.pool;p!=null&&p.refCount++}break;case 24:xc(c.memoizedState.cache)}if(p=c.child,p!==null)p.return=c,Dn=p;else e:for(c=i;Dn!==null;){p=Dn;var x=p.sibling,w=p.return;if(sw(p),p===c){Dn=null;break e}if(x!==null){x.return=w,Dn=x;break e}Dn=w}}}var BT={getCacheForType:function(i){var s=zn(xn),c=s.data.get(i);return c===void 0&&(c=i(),s.data.set(i,c)),c},cacheSignal:function(){return zn(xn).controller.signal}},UT=typeof WeakMap=="function"?WeakMap:Map,Tt=0,qt=null,pt=null,xt=0,Lt=0,vr=null,Fa=!1,Vo=!1,Im=!1,ta=0,hn=0,qa=0,Fs=0,zm=0,wr=0,Yo=0,zc=null,or=null,Pm=!1,Gd=0,yw=0,Vd=1/0,Yd=null,Ha=null,Cn=0,Ka=null,Qo=null,na=0,Bm=0,Um=null,bw=null,Pc=0,$m=null;function kr(){return(Tt&2)!==0&&xt!==0?xt&-xt:B.T!==null?Vm():ka()}function xw(){if(wr===0)if((xt&536870912)===0||wt){var i=wa;wa<<=1,(wa&3932160)===0&&(wa=262144),wr=i}else wr=536870912;return i=br.current,i!==null&&(i.flags|=32),wr}function lr(i,s,c){(i===qt&&(Lt===2||Lt===9)||i.cancelPendingCommit!==null)&&(Wo(i,0),Ga(i,xt,wr,!1)),Ot(i,c),((Tt&2)===0||i!==qt)&&(i===qt&&((Tt&2)===0&&(Fs|=c),hn===4&&Ga(i,xt,wr,!1)),ki(i))}function vw(i,s,c){if((Tt&6)!==0)throw Error(r(327));var p=!c&&(s&127)===0&&(s&i.expiredLanes)===0||pe(i,s),x=p?qT(i,s):qm(i,s,!0),w=p;do{if(x===0){Vo&&!p&&Ga(i,s,0,!1);break}else{if(c=i.current.alternate,w&&!$T(c)){x=qm(i,s,!1),w=!1;continue}if(x===2){if(w=s,i.errorRecoveryDisabledLanes&w)var A=0;else A=i.pendingLanes&-536870913,A=A!==0?A:A&536870912?536870912:0;if(A!==0){s=A;e:{var $=i;x=zc;var W=$.current.memoizedState.isDehydrated;if(W&&(Wo($,A).flags|=256),A=qm($,A,!1),A!==2){if(Im&&!W){$.errorRecoveryDisabledLanes|=w,Fs|=w,x=4;break e}w=or,or=x,w!==null&&(or===null?or=w:or.push.apply(or,w))}x=A}if(w=!1,x!==2)continue}}if(x===1){Wo(i,0),Ga(i,s,0,!0);break}e:{switch(p=i,w=x,w){case 0:case 1:throw Error(r(345));case 4:if((s&4194048)!==s)break;case 6:Ga(p,s,wr,!Fa);break e;case 2:or=null;break;case 3:case 5:break;default:throw Error(r(329))}if((s&62914560)===s&&(x=Gd+300-ze(),10<x)){if(Ga(p,s,wr,!Fa),Z(p,0,!0)!==0)break e;na=s,p.timeoutHandle=Xw(ww.bind(null,p,c,or,Yd,Pm,s,wr,Fs,Yo,Fa,w,"Throttled",-0,0),x);break e}ww(p,c,or,Yd,Pm,s,wr,Fs,Yo,Fa,w,null,-0,0)}}break}while(!0);ki(i)}function ww(i,s,c,p,x,w,A,$,W,ae,fe,ye,se,ce){if(i.timeoutHandle=-1,ye=s.subtreeFlags,ye&8192||(ye&16785408)===16785408){ye={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:_e},hw(s,w,ye);var Ue=(w&62914560)===w?Gd-ze():(w&4194048)===w?yw-ze():0;if(Ue=NM(ye,Ue),Ue!==null){na=w,i.cancelPendingCommit=Ue(Aw.bind(null,i,s,w,c,p,x,A,$,W,fe,ye,null,se,ce)),Ga(i,w,A,!ae);return}}Aw(i,s,w,c,p,x,A,$,W)}function $T(i){for(var s=i;;){var c=s.tag;if((c===0||c===11||c===15)&&s.flags&16384&&(c=s.updateQueue,c!==null&&(c=c.stores,c!==null)))for(var p=0;p<c.length;p++){var x=c[p],w=x.getSnapshot;x=x.value;try{if(!gr(w(),x))return!1}catch{return!1}}if(c=s.child,s.subtreeFlags&16384&&c!==null)c.return=s,s=c;else{if(s===i)break;for(;s.sibling===null;){if(s.return===null||s.return===i)return!0;s=s.return}s.sibling.return=s.return,s=s.sibling}}return!0}function Ga(i,s,c,p){s&=~zm,s&=~Fs,i.suspendedLanes|=s,i.pingedLanes&=~s,p&&(i.warmLanes|=s),p=i.expirationTimes;for(var x=s;0<x;){var w=31-yt(x),A=1<<w;p[w]=-1,x&=~A}c!==0&&Pe(i,c,s)}function Qd(){return(Tt&6)===0?(Bc(0),!1):!0}function Fm(){if(pt!==null){if(Lt===0)var i=pt.return;else i=pt,Ki=Os=null,im(i),Uo=null,wc=0,i=pt;for(;i!==null;)Z0(i.alternate,i),i=i.return;pt=null}}function Wo(i,s){var c=i.timeoutHandle;c!==-1&&(i.timeoutHandle=-1,oM(c)),c=i.cancelPendingCommit,c!==null&&(i.cancelPendingCommit=null,c()),na=0,Fm(),qt=i,pt=c=qi(i.current,null),xt=s,Lt=0,vr=null,Fa=!1,Vo=pe(i,s),Im=!1,Yo=wr=zm=Fs=qa=hn=0,or=zc=null,Pm=!1,(s&8)!==0&&(s|=s&32);var p=i.entangledLanes;if(p!==0)for(i=i.entanglements,p&=s;0<p;){var x=31-yt(p),w=1<<x;s|=i[x],p&=~w}return ta=s,gd(),c}function kw(i,s){lt=null,B.H=Ac,s===Bo||s===Sd?(s=Pv(),Lt=3):s===Gp?(s=Pv(),Lt=4):Lt=s===vm?8:s!==null&&typeof s=="object"&&typeof s.then=="function"?6:1,vr=s,pt===null&&(hn=1,Pd(i,Rr(s,i.current)))}function Ew(){var i=br.current;return i===null?!0:(xt&4194048)===xt?Pr===null:(xt&62914560)===xt||(xt&536870912)!==0?i===Pr:!1}function Sw(){var i=B.H;return B.H=Ac,i===null?Ac:i}function Nw(){var i=B.A;return B.A=BT,i}function Wd(){hn=4,Fa||(xt&4194048)!==xt&&br.current!==null||(Vo=!0),(qa&134217727)===0&&(Fs&134217727)===0||qt===null||Ga(qt,xt,wr,!1)}function qm(i,s,c){var p=Tt;Tt|=2;var x=Sw(),w=Nw();(qt!==i||xt!==s)&&(Yd=null,Wo(i,s)),s=!1;var A=hn;e:do try{if(Lt!==0&&pt!==null){var $=pt,W=vr;switch(Lt){case 8:Fm(),A=6;break e;case 3:case 2:case 9:case 6:br.current===null&&(s=!0);var ae=Lt;if(Lt=0,vr=null,Xo(i,$,W,ae),c&&Vo){A=0;break e}break;default:ae=Lt,Lt=0,vr=null,Xo(i,$,W,ae)}}FT(),A=hn;break}catch(fe){kw(i,fe)}while(!0);return s&&i.shellSuspendCounter++,Ki=Os=null,Tt=p,B.H=x,B.A=w,pt===null&&(qt=null,xt=0,gd()),A}function FT(){for(;pt!==null;)_w(pt)}function qT(i,s){var c=Tt;Tt|=2;var p=Sw(),x=Nw();qt!==i||xt!==s?(Yd=null,Vd=ze()+500,Wo(i,s)):Vo=pe(i,s);e:do try{if(Lt!==0&&pt!==null){s=pt;var w=vr;t:switch(Lt){case 1:Lt=0,vr=null,Xo(i,s,w,1);break;case 2:case 9:if(Iv(w)){Lt=0,vr=null,jw(s);break}s=function(){Lt!==2&&Lt!==9||qt!==i||(Lt=7),ki(i)},w.then(s,s);break e;case 3:Lt=7;break e;case 4:Lt=5;break e;case 7:Iv(w)?(Lt=0,vr=null,jw(s)):(Lt=0,vr=null,Xo(i,s,w,7));break;case 5:var A=null;switch(pt.tag){case 26:A=pt.memoizedState;case 5:case 27:var $=pt;if(A?f1(A):$.stateNode.complete){Lt=0,vr=null;var W=$.sibling;if(W!==null)pt=W;else{var ae=$.return;ae!==null?(pt=ae,Xd(ae)):pt=null}break t}}Lt=0,vr=null,Xo(i,s,w,5);break;case 6:Lt=0,vr=null,Xo(i,s,w,6);break;case 8:Fm(),hn=6;break e;default:throw Error(r(462))}}HT();break}catch(fe){kw(i,fe)}while(!0);return Ki=Os=null,B.H=p,B.A=x,Tt=c,pt!==null?0:(qt=null,xt=0,gd(),hn)}function HT(){for(;pt!==null&&!ge();)_w(pt)}function _w(i){var s=W0(i.alternate,i,ta);i.memoizedProps=i.pendingProps,s===null?Xd(i):pt=s}function jw(i){var s=i,c=s.alternate;switch(s.tag){case 15:case 0:s=H0(c,s,s.pendingProps,s.type,void 0,xt);break;case 11:s=H0(c,s,s.pendingProps,s.type.render,s.ref,xt);break;case 5:im(s);default:Z0(c,s),s=pt=Nv(s,ta),s=W0(c,s,ta)}i.memoizedProps=i.pendingProps,s===null?Xd(i):pt=s}function Xo(i,s,c,p){Ki=Os=null,im(s),Uo=null,wc=0;var x=s.return;try{if(DT(i,x,s,c,xt)){hn=1,Pd(i,Rr(c,i.current)),pt=null;return}}catch(w){if(x!==null)throw pt=x,w;hn=1,Pd(i,Rr(c,i.current)),pt=null;return}s.flags&32768?(wt||p===1?i=!0:Vo||(xt&536870912)!==0?i=!1:(Fa=i=!0,(p===2||p===9||p===3||p===6)&&(p=br.current,p!==null&&p.tag===13&&(p.flags|=16384))),Cw(s,i)):Xd(s)}function Xd(i){var s=i;do{if((s.flags&32768)!==0){Cw(s,Fa);return}i=s.return;var c=LT(s.alternate,s,ta);if(c!==null){pt=c;return}if(s=s.sibling,s!==null){pt=s;return}pt=s=i}while(s!==null);hn===0&&(hn=5)}function Cw(i,s){do{var c=IT(i.alternate,i);if(c!==null){c.flags&=32767,pt=c;return}if(c=i.return,c!==null&&(c.flags|=32768,c.subtreeFlags=0,c.deletions=null),!s&&(i=i.sibling,i!==null)){pt=i;return}pt=i=c}while(i!==null);hn=6,pt=null}function Aw(i,s,c,p,x,w,A,$,W){i.cancelPendingCommit=null;do Zd();while(Cn!==0);if((Tt&6)!==0)throw Error(r(327));if(s!==null){if(s===i.current)throw Error(r(177));if(w=s.lanes|s.childLanes,w|=Mp,$e(i,c,w,A,$,W),i===qt&&(pt=qt=null,xt=0),Qo=s,Ka=i,na=c,Bm=w,Um=x,bw=p,(s.subtreeFlags&10256)!==0||(s.flags&10256)!==0?(i.callbackNode=null,i.callbackPriority=0,YT(Ie,function(){return Rw(),null})):(i.callbackNode=null,i.callbackPriority=0),p=(s.flags&13878)!==0,(s.subtreeFlags&13878)!==0||p){p=B.T,B.T=null,x=V.p,V.p=2,A=Tt,Tt|=4;try{zT(i,s,c)}finally{Tt=A,V.p=x,B.T=p}}Cn=1,Tw(),Mw(),Dw()}}function Tw(){if(Cn===1){Cn=0;var i=Ka,s=Qo,c=(s.flags&13878)!==0;if((s.subtreeFlags&13878)!==0||c){c=B.T,B.T=null;var p=V.p;V.p=2;var x=Tt;Tt|=4;try{uw(s,i);var w=tg,A=gv(i.containerInfo),$=w.focusedElem,W=w.selectionRange;if(A!==$&&$&&$.ownerDocument&&mv($.ownerDocument.documentElement,$)){if(W!==null&&_p($)){var ae=W.start,fe=W.end;if(fe===void 0&&(fe=ae),"selectionStart"in $)$.selectionStart=ae,$.selectionEnd=Math.min(fe,$.value.length);else{var ye=$.ownerDocument||document,se=ye&&ye.defaultView||window;if(se.getSelection){var ce=se.getSelection(),Ue=$.textContent.length,tt=Math.min(W.start,Ue),Ut=W.end===void 0?tt:Math.min(W.end,Ue);!ce.extend&&tt>Ut&&(A=Ut,Ut=tt,tt=A);var ne=pv($,tt),ee=pv($,Ut);if(ne&&ee&&(ce.rangeCount!==1||ce.anchorNode!==ne.node||ce.anchorOffset!==ne.offset||ce.focusNode!==ee.node||ce.focusOffset!==ee.offset)){var ie=ye.createRange();ie.setStart(ne.node,ne.offset),ce.removeAllRanges(),tt>Ut?(ce.addRange(ie),ce.extend(ee.node,ee.offset)):(ie.setEnd(ee.node,ee.offset),ce.addRange(ie))}}}}for(ye=[],ce=$;ce=ce.parentNode;)ce.nodeType===1&&ye.push({element:ce,left:ce.scrollLeft,top:ce.scrollTop});for(typeof $.focus=="function"&&$.focus(),$=0;$<ye.length;$++){var me=ye[$];me.element.scrollLeft=me.left,me.element.scrollTop=me.top}}df=!!eg,tg=eg=null}finally{Tt=x,V.p=p,B.T=c}}i.current=s,Cn=2}}function Mw(){if(Cn===2){Cn=0;var i=Ka,s=Qo,c=(s.flags&8772)!==0;if((s.subtreeFlags&8772)!==0||c){c=B.T,B.T=null;var p=V.p;V.p=2;var x=Tt;Tt|=4;try{aw(i,s.alternate,s)}finally{Tt=x,V.p=p,B.T=c}}Cn=3}}function Dw(){if(Cn===4||Cn===3){Cn=0,Le();var i=Ka,s=Qo,c=na,p=bw;(s.subtreeFlags&10256)!==0||(s.flags&10256)!==0?Cn=5:(Cn=0,Qo=Ka=null,Ow(i,i.pendingLanes));var x=i.pendingLanes;if(x===0&&(Ha=null),Qr(c),s=s.stateNode,Mt&&typeof Mt.onCommitFiberRoot=="function")try{Mt.onCommitFiberRoot(un,s,void 0,(s.current.flags&128)===128)}catch{}if(p!==null){s=B.T,x=V.p,V.p=2,B.T=null;try{for(var w=i.onRecoverableError,A=0;A<p.length;A++){var $=p[A];w($.value,{componentStack:$.stack})}}finally{B.T=s,V.p=x}}(na&3)!==0&&Zd(),ki(i),x=i.pendingLanes,(c&261930)!==0&&(x&42)!==0?i===$m?Pc++:(Pc=0,$m=i):Pc=0,Bc(0)}}function Ow(i,s){(i.pooledCacheLanes&=s)===0&&(s=i.pooledCache,s!=null&&(i.pooledCache=null,xc(s)))}function Zd(){return Tw(),Mw(),Dw(),Rw()}function Rw(){if(Cn!==5)return!1;var i=Ka,s=Bm;Bm=0;var c=Qr(na),p=B.T,x=V.p;try{V.p=32>c?32:c,B.T=null,c=Um,Um=null;var w=Ka,A=na;if(Cn=0,Qo=Ka=null,na=0,(Tt&6)!==0)throw Error(r(331));var $=Tt;if(Tt|=4,mw(w.current),fw(w,w.current,A,c),Tt=$,Bc(0,!1),Mt&&typeof Mt.onPostCommitFiberRoot=="function")try{Mt.onPostCommitFiberRoot(un,w)}catch{}return!0}finally{V.p=x,B.T=p,Ow(i,s)}}function Lw(i,s,c){s=Rr(c,s),s=xm(i.stateNode,s,2),i=Pa(i,s,2),i!==null&&(Ot(i,2),ki(i))}function It(i,s,c){if(i.tag===3)Lw(i,i,c);else for(;s!==null;){if(s.tag===3){Lw(s,i,c);break}else if(s.tag===1){var p=s.stateNode;if(typeof s.type.getDerivedStateFromError=="function"||typeof p.componentDidCatch=="function"&&(Ha===null||!Ha.has(p))){i=Rr(c,i),c=I0(2),p=Pa(s,c,2),p!==null&&(z0(c,p,s,i),Ot(p,2),ki(p));break}}s=s.return}}function Hm(i,s,c){var p=i.pingCache;if(p===null){p=i.pingCache=new UT;var x=new Set;p.set(s,x)}else x=p.get(s),x===void 0&&(x=new Set,p.set(s,x));x.has(c)||(Im=!0,x.add(c),i=KT.bind(null,i,s,c),s.then(i,i))}function KT(i,s,c){var p=i.pingCache;p!==null&&p.delete(s),i.pingedLanes|=i.suspendedLanes&c,i.warmLanes&=~c,qt===i&&(xt&c)===c&&(hn===4||hn===3&&(xt&62914560)===xt&&300>ze()-Gd?(Tt&2)===0&&Wo(i,0):zm|=c,Yo===xt&&(Yo=0)),ki(i)}function Iw(i,s){s===0&&(s=rt()),i=Ts(i,s),i!==null&&(Ot(i,s),ki(i))}function GT(i){var s=i.memoizedState,c=0;s!==null&&(c=s.retryLane),Iw(i,c)}function VT(i,s){var c=0;switch(i.tag){case 31:case 13:var p=i.stateNode,x=i.memoizedState;x!==null&&(c=x.retryLane);break;case 19:p=i.stateNode;break;case 22:p=i.stateNode._retryCache;break;default:throw Error(r(314))}p!==null&&p.delete(s),Iw(i,c)}function YT(i,s){return ue(i,s)}var Jd=null,Zo=null,Km=!1,ef=!1,Gm=!1,Va=0;function ki(i){i!==Zo&&i.next===null&&(Zo===null?Jd=Zo=i:Zo=Zo.next=i),ef=!0,Km||(Km=!0,WT())}function Bc(i,s){if(!Gm&&ef){Gm=!0;do for(var c=!1,p=Jd;p!==null;){if(i!==0){var x=p.pendingLanes;if(x===0)var w=0;else{var A=p.suspendedLanes,$=p.pingedLanes;w=(1<<31-yt(42|i)+1)-1,w&=x&~(A&~$),w=w&201326741?w&201326741|1:w?w|2:0}w!==0&&(c=!0,Uw(p,w))}else w=xt,w=Z(p,p===qt?w:0,p.cancelPendingCommit!==null||p.timeoutHandle!==-1),(w&3)===0||pe(p,w)||(c=!0,Uw(p,w));p=p.next}while(c);Gm=!1}}function QT(){zw()}function zw(){ef=Km=!1;var i=0;Va!==0&&sM()&&(i=Va);for(var s=ze(),c=null,p=Jd;p!==null;){var x=p.next,w=Pw(p,s);w===0?(p.next=null,c===null?Jd=x:c.next=x,x===null&&(Zo=c)):(c=p,(i!==0||(w&3)!==0)&&(ef=!0)),p=x}Cn!==0&&Cn!==5||Bc(i),Va!==0&&(Va=0)}function Pw(i,s){for(var c=i.suspendedLanes,p=i.pingedLanes,x=i.expirationTimes,w=i.pendingLanes&-62914561;0<w;){var A=31-yt(w),$=1<<A,W=x[A];W===-1?(($&c)===0||($&p)!==0)&&(x[A]=je($,s)):W<=s&&(i.expiredLanes|=$),w&=~$}if(s=qt,c=xt,c=Z(i,i===s?c:0,i.cancelPendingCommit!==null||i.timeoutHandle!==-1),p=i.callbackNode,c===0||i===s&&(Lt===2||Lt===9)||i.cancelPendingCommit!==null)return p!==null&&p!==null&&he(p),i.callbackNode=null,i.callbackPriority=0;if((c&3)===0||pe(i,c)){if(s=c&-c,s===i.callbackPriority)return s;switch(p!==null&&he(p),Qr(c)){case 2:case 8:c=ve;break;case 32:c=Ie;break;case 268435456:c=it;break;default:c=Ie}return p=Bw.bind(null,i),c=ue(c,p),i.callbackPriority=s,i.callbackNode=c,s}return p!==null&&p!==null&&he(p),i.callbackPriority=2,i.callbackNode=null,2}function Bw(i,s){if(Cn!==0&&Cn!==5)return i.callbackNode=null,i.callbackPriority=0,null;var c=i.callbackNode;if(Zd()&&i.callbackNode!==c)return null;var p=xt;return p=Z(i,i===qt?p:0,i.cancelPendingCommit!==null||i.timeoutHandle!==-1),p===0?null:(vw(i,p,s),Pw(i,ze()),i.callbackNode!=null&&i.callbackNode===c?Bw.bind(null,i):null)}function Uw(i,s){if(Zd())return null;vw(i,s,!0)}function WT(){lM(function(){(Tt&6)!==0?ue(te,QT):zw()})}function Vm(){if(Va===0){var i=zo;i===0&&(i=zi,zi<<=1,(zi&261888)===0&&(zi=256)),Va=i}return Va}function $w(i){return i==null||typeof i=="symbol"||typeof i=="boolean"?null:typeof i=="function"?i:Ta(""+i)}function Fw(i,s){var c=s.ownerDocument.createElement("input");return c.name=s.name,c.value=s.value,i.id&&c.setAttribute("form",i.id),s.parentNode.insertBefore(c,s),i=new FormData(i),c.parentNode.removeChild(c),i}function XT(i,s,c,p,x){if(s==="submit"&&c&&c.stateNode===x){var w=$w((x[Tn]||null).action),A=p.submitter;A&&(s=(s=A[Tn]||null)?$w(s.formAction):A.getAttribute("formAction"),s!==null&&(w=s,A=null));var $=new fd("action","action",null,p,x);i.push({event:$,listeners:[{instance:null,listener:function(){if(p.defaultPrevented){if(Va!==0){var W=A?Fw(x,A):new FormData(x);hm(c,{pending:!0,data:W,method:x.method,action:w},null,W)}}else typeof w=="function"&&($.preventDefault(),W=A?Fw(x,A):new FormData(x),hm(c,{pending:!0,data:W,method:x.method,action:w},w,W))},currentTarget:x}]})}}for(var Ym=0;Ym<Tp.length;Ym++){var Qm=Tp[Ym],ZT=Qm.toLowerCase(),JT=Qm[0].toUpperCase()+Qm.slice(1);ti(ZT,"on"+JT)}ti(xv,"onAnimationEnd"),ti(vv,"onAnimationIteration"),ti(wv,"onAnimationStart"),ti("dblclick","onDoubleClick"),ti("focusin","onFocus"),ti("focusout","onBlur"),ti(mT,"onTransitionRun"),ti(gT,"onTransitionStart"),ti(yT,"onTransitionCancel"),ti(kv,"onTransitionEnd"),Ee("onMouseEnter",["mouseout","mouseover"]),Ee("onMouseLeave",["mouseout","mouseover"]),Ee("onPointerEnter",["pointerout","pointerover"]),Ee("onPointerLeave",["pointerout","pointerover"]),Jr("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),Jr("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),Jr("onBeforeInput",["compositionend","keypress","textInput","paste"]),Jr("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),Jr("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),Jr("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Uc="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(" "),eM=new Set("beforetoggle cancel close invalid load scroll scrollend toggle".split(" ").concat(Uc));function qw(i,s){s=(s&4)!==0;for(var c=0;c<i.length;c++){var p=i[c],x=p.event;p=p.listeners;e:{var w=void 0;if(s)for(var A=p.length-1;0<=A;A--){var $=p[A],W=$.instance,ae=$.currentTarget;if($=$.listener,W!==w&&x.isPropagationStopped())break e;w=$,x.currentTarget=ae;try{w(x)}catch(fe){md(fe)}x.currentTarget=null,w=W}else for(A=0;A<p.length;A++){if($=p[A],W=$.instance,ae=$.currentTarget,$=$.listener,W!==w&&x.isPropagationStopped())break e;w=$,x.currentTarget=ae;try{w(x)}catch(fe){md(fe)}x.currentTarget=null,w=W}}}}function mt(i,s){var c=s[Sa];c===void 0&&(c=s[Sa]=new Set);var p=i+"__bubble";c.has(p)||(Hw(s,i,2,!1),c.add(p))}function Wm(i,s,c){var p=0;s&&(p|=4),Hw(c,i,p,s)}var tf="_reactListening"+Math.random().toString(36).slice(2);function Xm(i){if(!i[tf]){i[tf]=!0,So.forEach(function(c){c!=="selectionchange"&&(eM.has(c)||Wm(c,!1,i),Wm(c,!0,i))});var s=i.nodeType===9?i:i.ownerDocument;s===null||s[tf]||(s[tf]=!0,Wm("selectionchange",!1,s))}}function Hw(i,s,c,p){switch(x1(s)){case 2:var x=CM;break;case 8:x=AM;break;default:x=fg}c=x.bind(null,s,c,i),x=void 0,!yp||s!=="touchstart"&&s!=="touchmove"&&s!=="wheel"||(x=!0),p?x!==void 0?i.addEventListener(s,c,{capture:!0,passive:x}):i.addEventListener(s,c,!0):x!==void 0?i.addEventListener(s,c,{passive:x}):i.addEventListener(s,c,!1)}function Zm(i,s,c,p,x){var w=p;if((s&1)===0&&(s&2)===0&&p!==null)e:for(;;){if(p===null)return;var A=p.tag;if(A===3||A===4){var $=p.stateNode.containerInfo;if($===x)break;if(A===4)for(A=p.return;A!==null;){var W=A.tag;if((W===3||W===4)&&A.stateNode.containerInfo===x)return;A=A.return}for(;$!==null;){if(A=Ln($),A===null)return;if(W=A.tag,W===5||W===6||W===26||W===27){p=w=A;continue e}$=$.parentNode}}p=p.return}ld(function(){var ae=w,fe=ot(c),ye=[];e:{var se=Ev.get(i);if(se!==void 0){var ce=fd,Ue=i;switch(i){case"keypress":if(ud(c)===0)break e;case"keydown":case"keyup":ce=VA;break;case"focusin":Ue="focus",ce=wp;break;case"focusout":Ue="blur",ce=wp;break;case"beforeblur":case"afterblur":ce=wp;break;case"click":if(c.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":ce=Zx;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":ce=LA;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":ce=WA;break;case xv:case vv:case wv:ce=PA;break;case kv:ce=ZA;break;case"scroll":case"scrollend":ce=OA;break;case"wheel":ce=eT;break;case"copy":case"cut":case"paste":ce=UA;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":ce=ev;break;case"toggle":case"beforetoggle":ce=nT}var tt=(s&4)!==0,Ut=!tt&&(i==="scroll"||i==="scrollend"),ne=tt?se!==null?se+"Capture":null:se;tt=[];for(var ee=ae,ie;ee!==null;){var me=ee;if(ie=me.stateNode,me=me.tag,me!==5&&me!==26&&me!==27||ie===null||ne===null||(me=lc(ee,ne),me!=null&&tt.push($c(ee,me,ie))),Ut)break;ee=ee.return}0<tt.length&&(se=new ce(se,Ue,null,c,fe),ye.push({event:se,listeners:tt}))}}if((s&7)===0){e:{if(se=i==="mouseover"||i==="pointerover",ce=i==="mouseout"||i==="pointerout",se&&c!==qe&&(Ue=c.relatedTarget||c.fromElement)&&(Ln(Ue)||Ue[Wr]))break e;if((ce||se)&&(se=fe.window===fe?fe:(se=fe.ownerDocument)?se.defaultView||se.parentWindow:window,ce?(Ue=c.relatedTarget||c.toElement,ce=ae,Ue=Ue?Ln(Ue):null,Ue!==null&&(Ut=o(Ue),tt=Ue.tag,Ue!==Ut||tt!==5&&tt!==27&&tt!==6)&&(Ue=null)):(ce=null,Ue=ae),ce!==Ue)){if(tt=Zx,me="onMouseLeave",ne="onMouseEnter",ee="mouse",(i==="pointerout"||i==="pointerover")&&(tt=ev,me="onPointerLeave",ne="onPointerEnter",ee="pointer"),Ut=ce==null?se:Zr(ce),ie=Ue==null?se:Zr(Ue),se=new tt(me,ee+"leave",ce,c,fe),se.target=Ut,se.relatedTarget=ie,me=null,Ln(fe)===ae&&(tt=new tt(ne,ee+"enter",Ue,c,fe),tt.target=ie,tt.relatedTarget=Ut,me=tt),Ut=me,ce&&Ue)t:{for(tt=tM,ne=ce,ee=Ue,ie=0,me=ne;me;me=tt(me))ie++;me=0;for(var Ye=ee;Ye;Ye=tt(Ye))me++;for(;0<ie-me;)ne=tt(ne),ie--;for(;0<me-ie;)ee=tt(ee),me--;for(;ie--;){if(ne===ee||ee!==null&&ne===ee.alternate){tt=ne;break t}ne=tt(ne),ee=tt(ee)}tt=null}else tt=null;ce!==null&&Kw(ye,se,ce,tt,!1),Ue!==null&&Ut!==null&&Kw(ye,Ut,Ue,tt,!0)}}e:{if(se=ae?Zr(ae):window,ce=se.nodeName&&se.nodeName.toLowerCase(),ce==="select"||ce==="input"&&se.type==="file")var _t=lv;else if(sv(se))if(cv)_t=fT;else{_t=uT;var He=cT}else ce=se.nodeName,!ce||ce.toLowerCase()!=="input"||se.type!=="checkbox"&&se.type!=="radio"?ae&&Aa(ae.elementType)&&(_t=lv):_t=dT;if(_t&&(_t=_t(i,ae))){ov(ye,_t,c,fe);break e}He&&He(i,se,ae),i==="focusout"&&ae&&se.type==="number"&&ae.memoizedProps.value!=null&&Ca(se,"number",se.value)}switch(He=ae?Zr(ae):window,i){case"focusin":(sv(He)||He.contentEditable==="true")&&(Ao=He,jp=ae,gc=null);break;case"focusout":gc=jp=Ao=null;break;case"mousedown":Cp=!0;break;case"contextmenu":case"mouseup":case"dragend":Cp=!1,yv(ye,c,fe);break;case"selectionchange":if(pT)break;case"keydown":case"keyup":yv(ye,c,fe)}var ct;if(Ep)e:{switch(i){case"compositionstart":var vt="onCompositionStart";break e;case"compositionend":vt="onCompositionEnd";break e;case"compositionupdate":vt="onCompositionUpdate";break e}vt=void 0}else Co?iv(i,c)&&(vt="onCompositionEnd"):i==="keydown"&&c.keyCode===229&&(vt="onCompositionStart");vt&&(tv&&c.locale!=="ko"&&(Co||vt!=="onCompositionStart"?vt==="onCompositionEnd"&&Co&&(ct=Wx()):(Ma=fe,bp="value"in Ma?Ma.value:Ma.textContent,Co=!0)),He=nf(ae,vt),0<He.length&&(vt=new Jx(vt,i,null,c,fe),ye.push({event:vt,listeners:He}),ct?vt.data=ct:(ct=av(c),ct!==null&&(vt.data=ct)))),(ct=iT?aT(i,c):sT(i,c))&&(vt=nf(ae,"onBeforeInput"),0<vt.length&&(He=new Jx("onBeforeInput","beforeinput",null,c,fe),ye.push({event:He,listeners:vt}),He.data=ct)),XT(ye,i,ae,c,fe)}qw(ye,s)})}function $c(i,s,c){return{instance:i,listener:s,currentTarget:c}}function nf(i,s){for(var c=s+"Capture",p=[];i!==null;){var x=i,w=x.stateNode;if(x=x.tag,x!==5&&x!==26&&x!==27||w===null||(x=lc(i,c),x!=null&&p.unshift($c(i,x,w)),x=lc(i,s),x!=null&&p.push($c(i,x,w))),i.tag===3)return p;i=i.return}return[]}function tM(i){if(i===null)return null;do i=i.return;while(i&&i.tag!==5&&i.tag!==27);return i||null}function Kw(i,s,c,p,x){for(var w=s._reactName,A=[];c!==null&&c!==p;){var $=c,W=$.alternate,ae=$.stateNode;if($=$.tag,W!==null&&W===p)break;$!==5&&$!==26&&$!==27||ae===null||(W=ae,x?(ae=lc(c,w),ae!=null&&A.unshift($c(c,ae,W))):x||(ae=lc(c,w),ae!=null&&A.push($c(c,ae,W)))),c=c.return}A.length!==0&&i.push({event:s,listeners:A})}var nM=/\r\n?/g,rM=/\u0000|\uFFFD/g;function Gw(i){return(typeof i=="string"?i:""+i).replace(nM,`
49
+ `).replace(rM,"")}function Vw(i,s){return s=Gw(s),Gw(i)===s}function Bt(i,s,c,p,x,w){switch(c){case"children":typeof p=="string"?s==="body"||s==="textarea"&&p===""||nt(i,p):(typeof p=="number"||typeof p=="bigint")&&s!=="body"&&nt(i,""+p);break;case"className":Qn(i,"class",p);break;case"tabIndex":Qn(i,"tabindex",p);break;case"dir":case"role":case"viewBox":case"width":case"height":Qn(i,c,p);break;case"style":Rt(i,p,w);break;case"data":if(s!=="object"){Qn(i,"data",p);break}case"src":case"href":if(p===""&&(s!=="a"||c!=="href")){i.removeAttribute(c);break}if(p==null||typeof p=="function"||typeof p=="symbol"||typeof p=="boolean"){i.removeAttribute(c);break}p=Ta(""+p),i.setAttribute(c,p);break;case"action":case"formAction":if(typeof p=="function"){i.setAttribute(c,"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 w=="function"&&(c==="formAction"?(s!=="input"&&Bt(i,s,"name",x.name,x,null),Bt(i,s,"formEncType",x.formEncType,x,null),Bt(i,s,"formMethod",x.formMethod,x,null),Bt(i,s,"formTarget",x.formTarget,x,null)):(Bt(i,s,"encType",x.encType,x,null),Bt(i,s,"method",x.method,x,null),Bt(i,s,"target",x.target,x,null)));if(p==null||typeof p=="symbol"||typeof p=="boolean"){i.removeAttribute(c);break}p=Ta(""+p),i.setAttribute(c,p);break;case"onClick":p!=null&&(i.onclick=_e);break;case"onScroll":p!=null&&mt("scroll",i);break;case"onScrollEnd":p!=null&&mt("scrollend",i);break;case"dangerouslySetInnerHTML":if(p!=null){if(typeof p!="object"||!("__html"in p))throw Error(r(61));if(c=p.__html,c!=null){if(x.children!=null)throw Error(r(60));i.innerHTML=c}}break;case"multiple":i.multiple=p&&typeof p!="function"&&typeof p!="symbol";break;case"muted":i.muted=p&&typeof p!="function"&&typeof p!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(p==null||typeof p=="function"||typeof p=="boolean"||typeof p=="symbol"){i.removeAttribute("xlink:href");break}c=Ta(""+p),i.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",c);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":p!=null&&typeof p!="function"&&typeof p!="symbol"?i.setAttribute(c,""+p):i.removeAttribute(c);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":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":p&&typeof p!="function"&&typeof p!="symbol"?i.setAttribute(c,""):i.removeAttribute(c);break;case"capture":case"download":p===!0?i.setAttribute(c,""):p!==!1&&p!=null&&typeof p!="function"&&typeof p!="symbol"?i.setAttribute(c,p):i.removeAttribute(c);break;case"cols":case"rows":case"size":case"span":p!=null&&typeof p!="function"&&typeof p!="symbol"&&!isNaN(p)&&1<=p?i.setAttribute(c,p):i.removeAttribute(c);break;case"rowSpan":case"start":p==null||typeof p=="function"||typeof p=="symbol"||isNaN(p)?i.removeAttribute(c):i.setAttribute(c,p);break;case"popover":mt("beforetoggle",i),mt("toggle",i),Mn(i,"popover",p);break;case"xlinkActuate":Fn(i,"http://www.w3.org/1999/xlink","xlink:actuate",p);break;case"xlinkArcrole":Fn(i,"http://www.w3.org/1999/xlink","xlink:arcrole",p);break;case"xlinkRole":Fn(i,"http://www.w3.org/1999/xlink","xlink:role",p);break;case"xlinkShow":Fn(i,"http://www.w3.org/1999/xlink","xlink:show",p);break;case"xlinkTitle":Fn(i,"http://www.w3.org/1999/xlink","xlink:title",p);break;case"xlinkType":Fn(i,"http://www.w3.org/1999/xlink","xlink:type",p);break;case"xmlBase":Fn(i,"http://www.w3.org/XML/1998/namespace","xml:base",p);break;case"xmlLang":Fn(i,"http://www.w3.org/XML/1998/namespace","xml:lang",p);break;case"xmlSpace":Fn(i,"http://www.w3.org/XML/1998/namespace","xml:space",p);break;case"is":Mn(i,"is",p);break;case"innerText":case"textContent":break;default:(!(2<c.length)||c[0]!=="o"&&c[0]!=="O"||c[1]!=="n"&&c[1]!=="N")&&(c=$i.get(c)||c,Mn(i,c,p))}}function Jm(i,s,c,p,x,w){switch(c){case"style":Rt(i,p,w);break;case"dangerouslySetInnerHTML":if(p!=null){if(typeof p!="object"||!("__html"in p))throw Error(r(61));if(c=p.__html,c!=null){if(x.children!=null)throw Error(r(60));i.innerHTML=c}}break;case"children":typeof p=="string"?nt(i,p):(typeof p=="number"||typeof p=="bigint")&&nt(i,""+p);break;case"onScroll":p!=null&&mt("scroll",i);break;case"onScrollEnd":p!=null&&mt("scrollend",i);break;case"onClick":p!=null&&(i.onclick=_e);break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":break;case"innerText":case"textContent":break;default:if(!Ui.hasOwnProperty(c))e:{if(c[0]==="o"&&c[1]==="n"&&(x=c.endsWith("Capture"),s=c.slice(2,x?c.length-7:void 0),w=i[Tn]||null,w=w!=null?w[c]:null,typeof w=="function"&&i.removeEventListener(s,w,x),typeof p=="function")){typeof w!="function"&&w!==null&&(c in i?i[c]=null:i.hasAttribute(c)&&i.removeAttribute(c)),i.addEventListener(s,p,x);break e}c in i?i[c]=p:p===!0?i.setAttribute(c,""):Mn(i,c,p)}}}function Bn(i,s,c){switch(s){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":mt("error",i),mt("load",i);var p=!1,x=!1,w;for(w in c)if(c.hasOwnProperty(w)){var A=c[w];if(A!=null)switch(w){case"src":p=!0;break;case"srcSet":x=!0;break;case"children":case"dangerouslySetInnerHTML":throw Error(r(137,s));default:Bt(i,s,w,A,c,null)}}x&&Bt(i,s,"srcSet",c.srcSet,c,null),p&&Bt(i,s,"src",c.src,c,null);return;case"input":mt("invalid",i);var $=w=A=x=null,W=null,ae=null;for(p in c)if(c.hasOwnProperty(p)){var fe=c[p];if(fe!=null)switch(p){case"name":x=fe;break;case"type":A=fe;break;case"checked":W=fe;break;case"defaultChecked":ae=fe;break;case"value":w=fe;break;case"defaultValue":$=fe;break;case"children":case"dangerouslySetInnerHTML":if(fe!=null)throw Error(r(137,s));break;default:Bt(i,s,p,fe,c,null)}}ei(i,w,$,W,ae,A,x,!1);return;case"select":mt("invalid",i),p=A=w=null;for(x in c)if(c.hasOwnProperty(x)&&($=c[x],$!=null))switch(x){case"value":w=$;break;case"defaultValue":A=$;break;case"multiple":p=$;default:Bt(i,s,x,$,c,null)}s=w,c=A,i.multiple=!!p,s!=null?jn(i,!!p,s,!1):c!=null&&jn(i,!!p,c,!0);return;case"textarea":mt("invalid",i),w=x=p=null;for(A in c)if(c.hasOwnProperty(A)&&($=c[A],$!=null))switch(A){case"value":p=$;break;case"defaultValue":x=$;break;case"children":w=$;break;case"dangerouslySetInnerHTML":if($!=null)throw Error(r(91));break;default:Bt(i,s,A,$,c,null)}jo(i,p,x,w);return;case"option":for(W in c)if(c.hasOwnProperty(W)&&(p=c[W],p!=null))switch(W){case"selected":i.selected=p&&typeof p!="function"&&typeof p!="symbol";break;default:Bt(i,s,W,p,c,null)}return;case"dialog":mt("beforetoggle",i),mt("toggle",i),mt("cancel",i),mt("close",i);break;case"iframe":case"object":mt("load",i);break;case"video":case"audio":for(p=0;p<Uc.length;p++)mt(Uc[p],i);break;case"image":mt("error",i),mt("load",i);break;case"details":mt("toggle",i);break;case"embed":case"source":case"link":mt("error",i),mt("load",i);case"area":case"base":case"br":case"col":case"hr":case"keygen":case"meta":case"param":case"track":case"wbr":case"menuitem":for(ae in c)if(c.hasOwnProperty(ae)&&(p=c[ae],p!=null))switch(ae){case"children":case"dangerouslySetInnerHTML":throw Error(r(137,s));default:Bt(i,s,ae,p,c,null)}return;default:if(Aa(s)){for(fe in c)c.hasOwnProperty(fe)&&(p=c[fe],p!==void 0&&Jm(i,s,fe,p,c,void 0));return}}for($ in c)c.hasOwnProperty($)&&(p=c[$],p!=null&&Bt(i,s,$,p,c,null))}function iM(i,s,c,p){switch(s){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"input":var x=null,w=null,A=null,$=null,W=null,ae=null,fe=null;for(ce in c){var ye=c[ce];if(c.hasOwnProperty(ce)&&ye!=null)switch(ce){case"checked":break;case"value":break;case"defaultValue":W=ye;default:p.hasOwnProperty(ce)||Bt(i,s,ce,null,p,ye)}}for(var se in p){var ce=p[se];if(ye=c[se],p.hasOwnProperty(se)&&(ce!=null||ye!=null))switch(se){case"type":w=ce;break;case"name":x=ce;break;case"checked":ae=ce;break;case"defaultChecked":fe=ce;break;case"value":A=ce;break;case"defaultValue":$=ce;break;case"children":case"dangerouslySetInnerHTML":if(ce!=null)throw Error(r(137,s));break;default:ce!==ye&&Bt(i,s,se,ce,p,ye)}}Ns(i,A,$,W,ae,fe,w,x);return;case"select":ce=A=$=se=null;for(w in c)if(W=c[w],c.hasOwnProperty(w)&&W!=null)switch(w){case"value":break;case"multiple":ce=W;default:p.hasOwnProperty(w)||Bt(i,s,w,null,p,W)}for(x in p)if(w=p[x],W=c[x],p.hasOwnProperty(x)&&(w!=null||W!=null))switch(x){case"value":se=w;break;case"defaultValue":$=w;break;case"multiple":A=w;default:w!==W&&Bt(i,s,x,w,p,W)}s=$,c=A,p=ce,se!=null?jn(i,!!c,se,!1):!!p!=!!c&&(s!=null?jn(i,!!c,s,!0):jn(i,!!c,c?[]:"",!1));return;case"textarea":ce=se=null;for($ in c)if(x=c[$],c.hasOwnProperty($)&&x!=null&&!p.hasOwnProperty($))switch($){case"value":break;case"children":break;default:Bt(i,s,$,null,p,x)}for(A in p)if(x=p[A],w=c[A],p.hasOwnProperty(A)&&(x!=null||w!=null))switch(A){case"value":se=x;break;case"defaultValue":ce=x;break;case"children":break;case"dangerouslySetInnerHTML":if(x!=null)throw Error(r(91));break;default:x!==w&&Bt(i,s,A,x,p,w)}_s(i,se,ce);return;case"option":for(var Ue in c)if(se=c[Ue],c.hasOwnProperty(Ue)&&se!=null&&!p.hasOwnProperty(Ue))switch(Ue){case"selected":i.selected=!1;break;default:Bt(i,s,Ue,null,p,se)}for(W in p)if(se=p[W],ce=c[W],p.hasOwnProperty(W)&&se!==ce&&(se!=null||ce!=null))switch(W){case"selected":i.selected=se&&typeof se!="function"&&typeof se!="symbol";break;default:Bt(i,s,W,se,p,ce)}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 tt in c)se=c[tt],c.hasOwnProperty(tt)&&se!=null&&!p.hasOwnProperty(tt)&&Bt(i,s,tt,null,p,se);for(ae in p)if(se=p[ae],ce=c[ae],p.hasOwnProperty(ae)&&se!==ce&&(se!=null||ce!=null))switch(ae){case"children":case"dangerouslySetInnerHTML":if(se!=null)throw Error(r(137,s));break;default:Bt(i,s,ae,se,p,ce)}return;default:if(Aa(s)){for(var Ut in c)se=c[Ut],c.hasOwnProperty(Ut)&&se!==void 0&&!p.hasOwnProperty(Ut)&&Jm(i,s,Ut,void 0,p,se);for(fe in p)se=p[fe],ce=c[fe],!p.hasOwnProperty(fe)||se===ce||se===void 0&&ce===void 0||Jm(i,s,fe,se,p,ce);return}}for(var ne in c)se=c[ne],c.hasOwnProperty(ne)&&se!=null&&!p.hasOwnProperty(ne)&&Bt(i,s,ne,null,p,se);for(ye in p)se=p[ye],ce=c[ye],!p.hasOwnProperty(ye)||se===ce||se==null&&ce==null||Bt(i,s,ye,se,p,ce)}function Yw(i){switch(i){case"css":case"script":case"font":case"img":case"image":case"input":case"link":return!0;default:return!1}}function aM(){if(typeof performance.getEntriesByType=="function"){for(var i=0,s=0,c=performance.getEntriesByType("resource"),p=0;p<c.length;p++){var x=c[p],w=x.transferSize,A=x.initiatorType,$=x.duration;if(w&&$&&Yw(A)){for(A=0,$=x.responseEnd,p+=1;p<c.length;p++){var W=c[p],ae=W.startTime;if(ae>$)break;var fe=W.transferSize,ye=W.initiatorType;fe&&Yw(ye)&&(W=W.responseEnd,A+=fe*(W<$?1:($-ae)/(W-ae)))}if(--p,s+=8*(w+A)/(x.duration/1e3),i++,10<i)break}}if(0<i)return s/i/1e6}return navigator.connection&&(i=navigator.connection.downlink,typeof i=="number")?i:5}var eg=null,tg=null;function rf(i){return i.nodeType===9?i:i.ownerDocument}function Qw(i){switch(i){case"http://www.w3.org/2000/svg":return 1;case"http://www.w3.org/1998/Math/MathML":return 2;default:return 0}}function Ww(i,s){if(i===0)switch(s){case"svg":return 1;case"math":return 2;default:return 0}return i===1&&s==="foreignObject"?0:i}function ng(i,s){return i==="textarea"||i==="noscript"||typeof s.children=="string"||typeof s.children=="number"||typeof s.children=="bigint"||typeof s.dangerouslySetInnerHTML=="object"&&s.dangerouslySetInnerHTML!==null&&s.dangerouslySetInnerHTML.__html!=null}var rg=null;function sM(){var i=window.event;return i&&i.type==="popstate"?i===rg?!1:(rg=i,!0):(rg=null,!1)}var Xw=typeof setTimeout=="function"?setTimeout:void 0,oM=typeof clearTimeout=="function"?clearTimeout:void 0,Zw=typeof Promise=="function"?Promise:void 0,lM=typeof queueMicrotask=="function"?queueMicrotask:typeof Zw<"u"?function(i){return Zw.resolve(null).then(i).catch(cM)}:Xw;function cM(i){setTimeout(function(){throw i})}function Ya(i){return i==="head"}function Jw(i,s){var c=s,p=0;do{var x=c.nextSibling;if(i.removeChild(c),x&&x.nodeType===8)if(c=x.data,c==="/$"||c==="/&"){if(p===0){i.removeChild(x),nl(s);return}p--}else if(c==="$"||c==="$?"||c==="$~"||c==="$!"||c==="&")p++;else if(c==="html")Fc(i.ownerDocument.documentElement);else if(c==="head"){c=i.ownerDocument.head,Fc(c);for(var w=c.firstChild;w;){var A=w.nextSibling,$=w.nodeName;w[Bi]||$==="SCRIPT"||$==="STYLE"||$==="LINK"&&w.rel.toLowerCase()==="stylesheet"||c.removeChild(w),w=A}}else c==="body"&&Fc(i.ownerDocument.body);c=x}while(c);nl(s)}function e1(i,s){var c=i;i=0;do{var p=c.nextSibling;if(c.nodeType===1?s?(c._stashedDisplay=c.style.display,c.style.display="none"):(c.style.display=c._stashedDisplay||"",c.getAttribute("style")===""&&c.removeAttribute("style")):c.nodeType===3&&(s?(c._stashedText=c.nodeValue,c.nodeValue=""):c.nodeValue=c._stashedText||""),p&&p.nodeType===8)if(c=p.data,c==="/$"){if(i===0)break;i--}else c!=="$"&&c!=="$?"&&c!=="$~"&&c!=="$!"||i++;c=p}while(c)}function ig(i){var s=i.firstChild;for(s&&s.nodeType===10&&(s=s.nextSibling);s;){var c=s;switch(s=s.nextSibling,c.nodeName){case"HTML":case"HEAD":case"BODY":ig(c),Ss(c);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if(c.rel.toLowerCase()==="stylesheet")continue}i.removeChild(c)}}function uM(i,s,c,p){for(;i.nodeType===1;){var x=c;if(i.nodeName.toLowerCase()!==s.toLowerCase()){if(!p&&(i.nodeName!=="INPUT"||i.type!=="hidden"))break}else if(p){if(!i[Bi])switch(s){case"meta":if(!i.hasAttribute("itemprop"))break;return i;case"link":if(w=i.getAttribute("rel"),w==="stylesheet"&&i.hasAttribute("data-precedence"))break;if(w!==x.rel||i.getAttribute("href")!==(x.href==null||x.href===""?null:x.href)||i.getAttribute("crossorigin")!==(x.crossOrigin==null?null:x.crossOrigin)||i.getAttribute("title")!==(x.title==null?null:x.title))break;return i;case"style":if(i.hasAttribute("data-precedence"))break;return i;case"script":if(w=i.getAttribute("src"),(w!==(x.src==null?null:x.src)||i.getAttribute("type")!==(x.type==null?null:x.type)||i.getAttribute("crossorigin")!==(x.crossOrigin==null?null:x.crossOrigin))&&w&&i.hasAttribute("async")&&!i.hasAttribute("itemprop"))break;return i;default:return i}}else if(s==="input"&&i.type==="hidden"){var w=x.name==null?null:""+x.name;if(x.type==="hidden"&&i.getAttribute("name")===w)return i}else return i;if(i=Br(i.nextSibling),i===null)break}return null}function dM(i,s,c){if(s==="")return null;for(;i.nodeType!==3;)if((i.nodeType!==1||i.nodeName!=="INPUT"||i.type!=="hidden")&&!c||(i=Br(i.nextSibling),i===null))return null;return i}function t1(i,s){for(;i.nodeType!==8;)if((i.nodeType!==1||i.nodeName!=="INPUT"||i.type!=="hidden")&&!s||(i=Br(i.nextSibling),i===null))return null;return i}function ag(i){return i.data==="$?"||i.data==="$~"}function sg(i){return i.data==="$!"||i.data==="$?"&&i.ownerDocument.readyState!=="loading"}function fM(i,s){var c=i.ownerDocument;if(i.data==="$~")i._reactRetry=s;else if(i.data!=="$?"||c.readyState!=="loading")s();else{var p=function(){s(),c.removeEventListener("DOMContentLoaded",p)};c.addEventListener("DOMContentLoaded",p),i._reactRetry=p}}function Br(i){for(;i!=null;i=i.nextSibling){var s=i.nodeType;if(s===1||s===3)break;if(s===8){if(s=i.data,s==="$"||s==="$!"||s==="$?"||s==="$~"||s==="&"||s==="F!"||s==="F")break;if(s==="/$"||s==="/&")return null}}return i}var og=null;function n1(i){i=i.nextSibling;for(var s=0;i;){if(i.nodeType===8){var c=i.data;if(c==="/$"||c==="/&"){if(s===0)return Br(i.nextSibling);s--}else c!=="$"&&c!=="$!"&&c!=="$?"&&c!=="$~"&&c!=="&"||s++}i=i.nextSibling}return null}function r1(i){i=i.previousSibling;for(var s=0;i;){if(i.nodeType===8){var c=i.data;if(c==="$"||c==="$!"||c==="$?"||c==="$~"||c==="&"){if(s===0)return i;s--}else c!=="/$"&&c!=="/&"||s++}i=i.previousSibling}return null}function i1(i,s,c){switch(s=rf(c),i){case"html":if(i=s.documentElement,!i)throw Error(r(452));return i;case"head":if(i=s.head,!i)throw Error(r(453));return i;case"body":if(i=s.body,!i)throw Error(r(454));return i;default:throw Error(r(451))}}function Fc(i){for(var s=i.attributes;s.length;)i.removeAttributeNode(s[0]);Ss(i)}var Ur=new Map,a1=new Set;function af(i){return typeof i.getRootNode=="function"?i.getRootNode():i.nodeType===9?i:i.ownerDocument}var ra=V.d;V.d={f:hM,r:pM,D:mM,C:gM,L:yM,m:bM,X:vM,S:xM,M:wM};function hM(){var i=ra.f(),s=Qd();return i||s}function pM(i){var s=Xr(i);s!==null&&s.tag===5&&s.type==="form"?k0(s):ra.r(i)}var Jo=typeof document>"u"?null:document;function s1(i,s,c){var p=Jo;if(p&&typeof s=="string"&&s){var x=qn(s);x='link[rel="'+i+'"][href="'+x+'"]',typeof c=="string"&&(x+='[crossorigin="'+c+'"]'),a1.has(x)||(a1.add(x),i={rel:i,crossOrigin:c,href:s},p.querySelector(x)===null&&(s=p.createElement("link"),Bn(s,"link",i),dn(s),p.head.appendChild(s)))}}function mM(i){ra.D(i),s1("dns-prefetch",i,null)}function gM(i,s){ra.C(i,s),s1("preconnect",i,s)}function yM(i,s,c){ra.L(i,s,c);var p=Jo;if(p&&i&&s){var x='link[rel="preload"][as="'+qn(s)+'"]';s==="image"&&c&&c.imageSrcSet?(x+='[imagesrcset="'+qn(c.imageSrcSet)+'"]',typeof c.imageSizes=="string"&&(x+='[imagesizes="'+qn(c.imageSizes)+'"]')):x+='[href="'+qn(i)+'"]';var w=x;switch(s){case"style":w=el(i);break;case"script":w=tl(i)}Ur.has(w)||(i=m({rel:"preload",href:s==="image"&&c&&c.imageSrcSet?void 0:i,as:s},c),Ur.set(w,i),p.querySelector(x)!==null||s==="style"&&p.querySelector(qc(w))||s==="script"&&p.querySelector(Hc(w))||(s=p.createElement("link"),Bn(s,"link",i),dn(s),p.head.appendChild(s)))}}function bM(i,s){ra.m(i,s);var c=Jo;if(c&&i){var p=s&&typeof s.as=="string"?s.as:"script",x='link[rel="modulepreload"][as="'+qn(p)+'"][href="'+qn(i)+'"]',w=x;switch(p){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":w=tl(i)}if(!Ur.has(w)&&(i=m({rel:"modulepreload",href:i},s),Ur.set(w,i),c.querySelector(x)===null)){switch(p){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(c.querySelector(Hc(w)))return}p=c.createElement("link"),Bn(p,"link",i),dn(p),c.head.appendChild(p)}}}function xM(i,s,c){ra.S(i,s,c);var p=Jo;if(p&&i){var x=yi(p).hoistableStyles,w=el(i);s=s||"default";var A=x.get(w);if(!A){var $={loading:0,preload:null};if(A=p.querySelector(qc(w)))$.loading=5;else{i=m({rel:"stylesheet",href:i,"data-precedence":s},c),(c=Ur.get(w))&&lg(i,c);var W=A=p.createElement("link");dn(W),Bn(W,"link",i),W._p=new Promise(function(ae,fe){W.onload=ae,W.onerror=fe}),W.addEventListener("load",function(){$.loading|=1}),W.addEventListener("error",function(){$.loading|=2}),$.loading|=4,sf(A,s,p)}A={type:"stylesheet",instance:A,count:1,state:$},x.set(w,A)}}}function vM(i,s){ra.X(i,s);var c=Jo;if(c&&i){var p=yi(c).hoistableScripts,x=tl(i),w=p.get(x);w||(w=c.querySelector(Hc(x)),w||(i=m({src:i,async:!0},s),(s=Ur.get(x))&&cg(i,s),w=c.createElement("script"),dn(w),Bn(w,"link",i),c.head.appendChild(w)),w={type:"script",instance:w,count:1,state:null},p.set(x,w))}}function wM(i,s){ra.M(i,s);var c=Jo;if(c&&i){var p=yi(c).hoistableScripts,x=tl(i),w=p.get(x);w||(w=c.querySelector(Hc(x)),w||(i=m({src:i,async:!0,type:"module"},s),(s=Ur.get(x))&&cg(i,s),w=c.createElement("script"),dn(w),Bn(w,"link",i),c.head.appendChild(w)),w={type:"script",instance:w,count:1,state:null},p.set(x,w))}}function o1(i,s,c,p){var x=(x=xe.current)?af(x):null;if(!x)throw Error(r(446));switch(i){case"meta":case"title":return null;case"style":return typeof c.precedence=="string"&&typeof c.href=="string"?(s=el(c.href),c=yi(x).hoistableStyles,p=c.get(s),p||(p={type:"style",instance:null,count:0,state:null},c.set(s,p)),p):{type:"void",instance:null,count:0,state:null};case"link":if(c.rel==="stylesheet"&&typeof c.href=="string"&&typeof c.precedence=="string"){i=el(c.href);var w=yi(x).hoistableStyles,A=w.get(i);if(A||(x=x.ownerDocument||x,A={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},w.set(i,A),(w=x.querySelector(qc(i)))&&!w._p&&(A.instance=w,A.state.loading=5),Ur.has(i)||(c={rel:"preload",as:"style",href:c.href,crossOrigin:c.crossOrigin,integrity:c.integrity,media:c.media,hrefLang:c.hrefLang,referrerPolicy:c.referrerPolicy},Ur.set(i,c),w||kM(x,i,c,A.state))),s&&p===null)throw Error(r(528,""));return A}if(s&&p!==null)throw Error(r(529,""));return null;case"script":return s=c.async,c=c.src,typeof c=="string"&&s&&typeof s!="function"&&typeof s!="symbol"?(s=tl(c),c=yi(x).hoistableScripts,p=c.get(s),p||(p={type:"script",instance:null,count:0,state:null},c.set(s,p)),p):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,i))}}function el(i){return'href="'+qn(i)+'"'}function qc(i){return'link[rel="stylesheet"]['+i+"]"}function l1(i){return m({},i,{"data-precedence":i.precedence,precedence:null})}function kM(i,s,c,p){i.querySelector('link[rel="preload"][as="style"]['+s+"]")?p.loading=1:(s=i.createElement("link"),p.preload=s,s.addEventListener("load",function(){return p.loading|=1}),s.addEventListener("error",function(){return p.loading|=2}),Bn(s,"link",c),dn(s),i.head.appendChild(s))}function tl(i){return'[src="'+qn(i)+'"]'}function Hc(i){return"script[async]"+i}function c1(i,s,c){if(s.count++,s.instance===null)switch(s.type){case"style":var p=i.querySelector('style[data-href~="'+qn(c.href)+'"]');if(p)return s.instance=p,dn(p),p;var x=m({},c,{"data-href":c.href,"data-precedence":c.precedence,href:null,precedence:null});return p=(i.ownerDocument||i).createElement("style"),dn(p),Bn(p,"style",x),sf(p,c.precedence,i),s.instance=p;case"stylesheet":x=el(c.href);var w=i.querySelector(qc(x));if(w)return s.state.loading|=4,s.instance=w,dn(w),w;p=l1(c),(x=Ur.get(x))&&lg(p,x),w=(i.ownerDocument||i).createElement("link"),dn(w);var A=w;return A._p=new Promise(function($,W){A.onload=$,A.onerror=W}),Bn(w,"link",p),s.state.loading|=4,sf(w,c.precedence,i),s.instance=w;case"script":return w=tl(c.src),(x=i.querySelector(Hc(w)))?(s.instance=x,dn(x),x):(p=c,(x=Ur.get(w))&&(p=m({},c),cg(p,x)),i=i.ownerDocument||i,x=i.createElement("script"),dn(x),Bn(x,"link",p),i.head.appendChild(x),s.instance=x);case"void":return null;default:throw Error(r(443,s.type))}else s.type==="stylesheet"&&(s.state.loading&4)===0&&(p=s.instance,s.state.loading|=4,sf(p,c.precedence,i));return s.instance}function sf(i,s,c){for(var p=c.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),x=p.length?p[p.length-1]:null,w=x,A=0;A<p.length;A++){var $=p[A];if($.dataset.precedence===s)w=$;else if(w!==x)break}w?w.parentNode.insertBefore(i,w.nextSibling):(s=c.nodeType===9?c.head:c,s.insertBefore(i,s.firstChild))}function lg(i,s){i.crossOrigin==null&&(i.crossOrigin=s.crossOrigin),i.referrerPolicy==null&&(i.referrerPolicy=s.referrerPolicy),i.title==null&&(i.title=s.title)}function cg(i,s){i.crossOrigin==null&&(i.crossOrigin=s.crossOrigin),i.referrerPolicy==null&&(i.referrerPolicy=s.referrerPolicy),i.integrity==null&&(i.integrity=s.integrity)}var of=null;function u1(i,s,c){if(of===null){var p=new Map,x=of=new Map;x.set(c,p)}else x=of,p=x.get(c),p||(p=new Map,x.set(c,p));if(p.has(i))return p;for(p.set(i,null),c=c.getElementsByTagName(i),x=0;x<c.length;x++){var w=c[x];if(!(w[Bi]||w[an]||i==="link"&&w.getAttribute("rel")==="stylesheet")&&w.namespaceURI!=="http://www.w3.org/2000/svg"){var A=w.getAttribute(s)||"";A=i+A;var $=p.get(A);$?$.push(w):p.set(A,[w])}}return p}function d1(i,s,c){i=i.ownerDocument||i,i.head.insertBefore(c,s==="title"?i.querySelector("head > title"):null)}function EM(i,s,c){if(c===1||s.itemProp!=null)return!1;switch(i){case"meta":case"title":return!0;case"style":if(typeof s.precedence!="string"||typeof s.href!="string"||s.href==="")break;return!0;case"link":if(typeof s.rel!="string"||typeof s.href!="string"||s.href===""||s.onLoad||s.onError)break;switch(s.rel){case"stylesheet":return i=s.disabled,typeof s.precedence=="string"&&i==null;default:return!0}case"script":if(s.async&&typeof s.async!="function"&&typeof s.async!="symbol"&&!s.onLoad&&!s.onError&&s.src&&typeof s.src=="string")return!0}return!1}function f1(i){return!(i.type==="stylesheet"&&(i.state.loading&3)===0)}function SM(i,s,c,p){if(c.type==="stylesheet"&&(typeof p.media!="string"||matchMedia(p.media).matches!==!1)&&(c.state.loading&4)===0){if(c.instance===null){var x=el(p.href),w=s.querySelector(qc(x));if(w){s=w._p,s!==null&&typeof s=="object"&&typeof s.then=="function"&&(i.count++,i=lf.bind(i),s.then(i,i)),c.state.loading|=4,c.instance=w,dn(w);return}w=s.ownerDocument||s,p=l1(p),(x=Ur.get(x))&&lg(p,x),w=w.createElement("link"),dn(w);var A=w;A._p=new Promise(function($,W){A.onload=$,A.onerror=W}),Bn(w,"link",p),c.instance=w}i.stylesheets===null&&(i.stylesheets=new Map),i.stylesheets.set(c,s),(s=c.state.preload)&&(c.state.loading&3)===0&&(i.count++,c=lf.bind(i),s.addEventListener("load",c),s.addEventListener("error",c))}}var ug=0;function NM(i,s){return i.stylesheets&&i.count===0&&uf(i,i.stylesheets),0<i.count||0<i.imgCount?function(c){var p=setTimeout(function(){if(i.stylesheets&&uf(i,i.stylesheets),i.unsuspend){var w=i.unsuspend;i.unsuspend=null,w()}},6e4+s);0<i.imgBytes&&ug===0&&(ug=62500*aM());var x=setTimeout(function(){if(i.waitingForImages=!1,i.count===0&&(i.stylesheets&&uf(i,i.stylesheets),i.unsuspend)){var w=i.unsuspend;i.unsuspend=null,w()}},(i.imgBytes>ug?50:800)+s);return i.unsuspend=c,function(){i.unsuspend=null,clearTimeout(p),clearTimeout(x)}}:null}function lf(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)uf(this,this.stylesheets);else if(this.unsuspend){var i=this.unsuspend;this.unsuspend=null,i()}}}var cf=null;function uf(i,s){i.stylesheets=null,i.unsuspend!==null&&(i.count++,cf=new Map,s.forEach(_M,i),cf=null,lf.call(i))}function _M(i,s){if(!(s.state.loading&4)){var c=cf.get(i);if(c)var p=c.get(null);else{c=new Map,cf.set(i,c);for(var x=i.querySelectorAll("link[data-precedence],style[data-precedence]"),w=0;w<x.length;w++){var A=x[w];(A.nodeName==="LINK"||A.getAttribute("media")!=="not all")&&(c.set(A.dataset.precedence,A),p=A)}p&&c.set(null,p)}x=s.instance,A=x.getAttribute("data-precedence"),w=c.get(A)||p,w===p&&c.set(null,x),c.set(A,x),this.count++,p=lf.bind(this),x.addEventListener("load",p),x.addEventListener("error",p),w?w.parentNode.insertBefore(x,w.nextSibling):(i=i.nodeType===9?i.head:i,i.insertBefore(x,i.firstChild)),s.state.loading|=4}}var Kc={$$typeof:N,Provider:null,Consumer:null,_currentValue:Q,_currentValue2:Q,_threadCount:0};function jM(i,s,c,p,x,w,A,$,W){this.tag=1,this.containerInfo=i,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=Ft(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Ft(0),this.hiddenUpdates=Ft(null),this.identifierPrefix=p,this.onUncaughtError=x,this.onCaughtError=w,this.onRecoverableError=A,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=W,this.incompleteTransitions=new Map}function h1(i,s,c,p,x,w,A,$,W,ae,fe,ye){return i=new jM(i,s,c,A,W,ae,fe,ye,$),s=1,w===!0&&(s|=24),w=yr(3,null,null,s),i.current=w,w.stateNode=i,s=qp(),s.refCount++,i.pooledCache=s,s.refCount++,w.memoizedState={element:p,isDehydrated:c,cache:s},Vp(w),i}function p1(i){return i?(i=Do,i):Do}function m1(i,s,c,p,x,w){x=p1(x),p.context===null?p.context=x:p.pendingContext=x,p=za(s),p.payload={element:c},w=w===void 0?null:w,w!==null&&(p.callback=w),c=Pa(i,p,s),c!==null&&(lr(c,i,s),Ec(c,i,s))}function g1(i,s){if(i=i.memoizedState,i!==null&&i.dehydrated!==null){var c=i.retryLane;i.retryLane=c!==0&&c<s?c:s}}function dg(i,s){g1(i,s),(i=i.alternate)&&g1(i,s)}function y1(i){if(i.tag===13||i.tag===31){var s=Ts(i,67108864);s!==null&&lr(s,i,67108864),dg(i,67108864)}}function b1(i){if(i.tag===13||i.tag===31){var s=kr();s=Vt(s);var c=Ts(i,s);c!==null&&lr(c,i,s),dg(i,s)}}var df=!0;function CM(i,s,c,p){var x=B.T;B.T=null;var w=V.p;try{V.p=2,fg(i,s,c,p)}finally{V.p=w,B.T=x}}function AM(i,s,c,p){var x=B.T;B.T=null;var w=V.p;try{V.p=8,fg(i,s,c,p)}finally{V.p=w,B.T=x}}function fg(i,s,c,p){if(df){var x=hg(p);if(x===null)Zm(i,s,p,ff,c),v1(i,p);else if(MM(x,i,s,c,p))p.stopPropagation();else if(v1(i,p),s&4&&-1<TM.indexOf(i)){for(;x!==null;){var w=Xr(x);if(w!==null)switch(w.tag){case 3:if(w=w.stateNode,w.current.memoizedState.isDehydrated){var A=$n(w.pendingLanes);if(A!==0){var $=w;for($.pendingLanes|=2,$.entangledLanes|=2;A;){var W=1<<31-yt(A);$.entanglements[1]|=W,A&=~W}ki(w),(Tt&6)===0&&(Vd=ze()+500,Bc(0))}}break;case 31:case 13:$=Ts(w,2),$!==null&&lr($,w,2),Qd(),dg(w,2)}if(w=hg(p),w===null&&Zm(i,s,p,ff,c),w===x)break;x=w}x!==null&&p.stopPropagation()}else Zm(i,s,p,null,c)}}function hg(i){return i=ot(i),pg(i)}var ff=null;function pg(i){if(ff=null,i=Ln(i),i!==null){var s=o(i);if(s===null)i=null;else{var c=s.tag;if(c===13){if(i=l(s),i!==null)return i;i=null}else if(c===31){if(i=d(s),i!==null)return i;i=null}else if(c===3){if(s.stateNode.current.memoizedState.isDehydrated)return s.tag===3?s.stateNode.containerInfo:null;i=null}else s!==i&&(i=null)}}return ff=i,null}function x1(i){switch(i){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"resize":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"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"scroll":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 8;case"message":switch(Fe()){case te:return 2;case ve:return 8;case Ie:case Ze:return 32;case it:return 268435456;default:return 32}default:return 32}}var mg=!1,Qa=null,Wa=null,Xa=null,Gc=new Map,Vc=new Map,Za=[],TM="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 v1(i,s){switch(i){case"focusin":case"focusout":Qa=null;break;case"dragenter":case"dragleave":Wa=null;break;case"mouseover":case"mouseout":Xa=null;break;case"pointerover":case"pointerout":Gc.delete(s.pointerId);break;case"gotpointercapture":case"lostpointercapture":Vc.delete(s.pointerId)}}function Yc(i,s,c,p,x,w){return i===null||i.nativeEvent!==w?(i={blockedOn:s,domEventName:c,eventSystemFlags:p,nativeEvent:w,targetContainers:[x]},s!==null&&(s=Xr(s),s!==null&&y1(s)),i):(i.eventSystemFlags|=p,s=i.targetContainers,x!==null&&s.indexOf(x)===-1&&s.push(x),i)}function MM(i,s,c,p,x){switch(s){case"focusin":return Qa=Yc(Qa,i,s,c,p,x),!0;case"dragenter":return Wa=Yc(Wa,i,s,c,p,x),!0;case"mouseover":return Xa=Yc(Xa,i,s,c,p,x),!0;case"pointerover":var w=x.pointerId;return Gc.set(w,Yc(Gc.get(w)||null,i,s,c,p,x)),!0;case"gotpointercapture":return w=x.pointerId,Vc.set(w,Yc(Vc.get(w)||null,i,s,c,p,x)),!0}return!1}function w1(i){var s=Ln(i.target);if(s!==null){var c=o(s);if(c!==null){if(s=c.tag,s===13){if(s=l(c),s!==null){i.blockedOn=s,Ea(i.priority,function(){b1(c)});return}}else if(s===31){if(s=d(c),s!==null){i.blockedOn=s,Ea(i.priority,function(){b1(c)});return}}else if(s===3&&c.stateNode.current.memoizedState.isDehydrated){i.blockedOn=c.tag===3?c.stateNode.containerInfo:null;return}}}i.blockedOn=null}function hf(i){if(i.blockedOn!==null)return!1;for(var s=i.targetContainers;0<s.length;){var c=hg(i.nativeEvent);if(c===null){c=i.nativeEvent;var p=new c.constructor(c.type,c);qe=p,c.target.dispatchEvent(p),qe=null}else return s=Xr(c),s!==null&&y1(s),i.blockedOn=c,!1;s.shift()}return!0}function k1(i,s,c){hf(i)&&c.delete(s)}function DM(){mg=!1,Qa!==null&&hf(Qa)&&(Qa=null),Wa!==null&&hf(Wa)&&(Wa=null),Xa!==null&&hf(Xa)&&(Xa=null),Gc.forEach(k1),Vc.forEach(k1)}function pf(i,s){i.blockedOn===s&&(i.blockedOn=null,mg||(mg=!0,e.unstable_scheduleCallback(e.unstable_NormalPriority,DM)))}var mf=null;function E1(i){mf!==i&&(mf=i,e.unstable_scheduleCallback(e.unstable_NormalPriority,function(){mf===i&&(mf=null);for(var s=0;s<i.length;s+=3){var c=i[s],p=i[s+1],x=i[s+2];if(typeof p!="function"){if(pg(p||c)===null)continue;break}var w=Xr(c);w!==null&&(i.splice(s,3),s-=3,hm(w,{pending:!0,data:x,method:c.method,action:p},p,x))}}))}function nl(i){function s(W){return pf(W,i)}Qa!==null&&pf(Qa,i),Wa!==null&&pf(Wa,i),Xa!==null&&pf(Xa,i),Gc.forEach(s),Vc.forEach(s);for(var c=0;c<Za.length;c++){var p=Za[c];p.blockedOn===i&&(p.blockedOn=null)}for(;0<Za.length&&(c=Za[0],c.blockedOn===null);)w1(c),c.blockedOn===null&&Za.shift();if(c=(i.ownerDocument||i).$$reactFormReplay,c!=null)for(p=0;p<c.length;p+=3){var x=c[p],w=c[p+1],A=x[Tn]||null;if(typeof w=="function")A||E1(c);else if(A){var $=null;if(w&&w.hasAttribute("formAction")){if(x=w,A=w[Tn]||null)$=A.formAction;else if(pg(x)!==null)continue}else $=A.action;typeof $=="function"?c[p+1]=$:(c.splice(p,3),p-=3),E1(c)}}}function S1(){function i(w){w.canIntercept&&w.info==="react-transition"&&w.intercept({handler:function(){return new Promise(function(A){return x=A})},focusReset:"manual",scroll:"manual"})}function s(){x!==null&&(x(),x=null),p||setTimeout(c,20)}function c(){if(!p&&!navigation.transition){var w=navigation.currentEntry;w&&w.url!=null&&navigation.navigate(w.url,{state:w.getState(),info:"react-transition",history:"replace"})}}if(typeof navigation=="object"){var p=!1,x=null;return navigation.addEventListener("navigate",i),navigation.addEventListener("navigatesuccess",s),navigation.addEventListener("navigateerror",s),setTimeout(c,100),function(){p=!0,navigation.removeEventListener("navigate",i),navigation.removeEventListener("navigatesuccess",s),navigation.removeEventListener("navigateerror",s),x!==null&&(x(),x=null)}}}function gg(i){this._internalRoot=i}gf.prototype.render=gg.prototype.render=function(i){var s=this._internalRoot;if(s===null)throw Error(r(409));var c=s.current,p=kr();m1(c,p,i,s,null,null)},gf.prototype.unmount=gg.prototype.unmount=function(){var i=this._internalRoot;if(i!==null){this._internalRoot=null;var s=i.containerInfo;m1(i.current,2,null,i,null,null),Qd(),s[Wr]=null}};function gf(i){this._internalRoot=i}gf.prototype.unstable_scheduleHydration=function(i){if(i){var s=ka();i={blockedOn:null,target:i,priority:s};for(var c=0;c<Za.length&&s!==0&&s<Za[c].priority;c++);Za.splice(c,0,i),c===0&&w1(i)}};var N1=t.version;if(N1!=="19.2.5")throw Error(r(527,N1,"19.2.5"));V.findDOMNode=function(i){var s=i._reactInternals;if(s===void 0)throw typeof i.render=="function"?Error(r(188)):(i=Object.keys(i).join(","),Error(r(268,i)));return i=h(s),i=i!==null?g(i):null,i=i===null?null:i.stateNode,i};var OM={bundleType:0,version:"19.2.5",rendererPackageName:"react-dom",currentDispatcherRef:B,reconcilerVersion:"19.2.5"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var yf=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!yf.isDisabled&&yf.supportsFiber)try{un=yf.inject(OM),Mt=yf}catch{}}return Wc.createRoot=function(i,s){if(!a(i))throw Error(r(299));var c=!1,p="",x=D0,w=O0,A=R0;return s!=null&&(s.unstable_strictMode===!0&&(c=!0),s.identifierPrefix!==void 0&&(p=s.identifierPrefix),s.onUncaughtError!==void 0&&(x=s.onUncaughtError),s.onCaughtError!==void 0&&(w=s.onCaughtError),s.onRecoverableError!==void 0&&(A=s.onRecoverableError)),s=h1(i,1,!1,null,null,c,p,null,x,w,A,S1),i[Wr]=s.current,Xm(i),new gg(s)},Wc.hydrateRoot=function(i,s,c){if(!a(i))throw Error(r(299));var p=!1,x="",w=D0,A=O0,$=R0,W=null;return c!=null&&(c.unstable_strictMode===!0&&(p=!0),c.identifierPrefix!==void 0&&(x=c.identifierPrefix),c.onUncaughtError!==void 0&&(w=c.onUncaughtError),c.onCaughtError!==void 0&&(A=c.onCaughtError),c.onRecoverableError!==void 0&&($=c.onRecoverableError),c.formState!==void 0&&(W=c.formState)),s=h1(i,1,!0,s,c??null,p,x,W,w,A,$,S1),s.context=p1(null),c=s.current,p=kr(),p=Vt(p),x=za(p),x.callback=null,Pa(c,x,p),c=p,s.current.lanes=c,Ot(s,c),ki(s),i[Wr]=s.current,Xm(i),new gf(s)},Wc.version="19.2.5",Wc}var z1;function KM(){if(z1)return vg.exports;z1=1;function e(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),vg.exports=HM(),vg.exports}var GM=KM(),Kl=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},Xs,os,El,FS,VM=(FS=class extends Kl{constructor(){super();Ve(this,Xs);Ve(this,os);Ve(this,El);De(this,El,t=>{if(typeof window<"u"&&window.addEventListener){const n=()=>t();return window.addEventListener("visibilitychange",n,!1),()=>{window.removeEventListener("visibilitychange",n)}}})}onSubscribe(){X(this,os)||this.setEventListener(X(this,El))}onUnsubscribe(){var t;this.hasListeners()||((t=X(this,os))==null||t.call(this),De(this,os,void 0))}setEventListener(t){var n;De(this,El,t),(n=X(this,os))==null||n.call(this),De(this,os,t(r=>{typeof r=="boolean"?this.setFocused(r):this.onFocus()}))}setFocused(t){X(this,Xs)!==t&&(De(this,Xs,t),this.onFocus())}onFocus(){const t=this.isFocused();this.listeners.forEach(n=>{n(t)})}isFocused(){var t;return typeof X(this,Xs)=="boolean"?X(this,Xs):((t=globalThis.document)==null?void 0:t.visibilityState)!=="hidden"}},Xs=new WeakMap,os=new WeakMap,El=new WeakMap,FS),vb=new VM,YM={setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e)},ls,xb,qS,QM=(qS=class{constructor(){Ve(this,ls,YM);Ve(this,xb,!1)}setTimeoutProvider(e){De(this,ls,e)}setTimeout(e,t){return X(this,ls).setTimeout(e,t)}clearTimeout(e){X(this,ls).clearTimeout(e)}setInterval(e,t){return X(this,ls).setInterval(e,t)}clearInterval(e){X(this,ls).clearInterval(e)}},ls=new WeakMap,xb=new WeakMap,qS),Gs=new QM;function WM(e){setTimeout(e,0)}var XM=typeof window>"u"||"Deno"in globalThis;function er(){}function ZM(e,t){return typeof e=="function"?e(t):e}function vy(e){return typeof e=="number"&&e>=0&&e!==1/0}function eN(e,t){return Math.max(e+(t||0)-Date.now(),0)}function gs(e,t){return typeof e=="function"?e(t):e}function qr(e,t){return typeof e=="function"?e(t):e}function P1(e,t){const{type:n="all",exact:r,fetchStatus:a,predicate:o,queryKey:l,stale:d}=e;if(l){if(r){if(t.queryHash!==wb(l,t.options))return!1}else if(!yu(t.queryKey,l))return!1}if(n!=="all"){const f=t.isActive();if(n==="active"&&!f||n==="inactive"&&f)return!1}return!(typeof d=="boolean"&&t.isStale()!==d||a&&a!==t.state.fetchStatus||o&&!o(t))}function B1(e,t){const{exact:n,status:r,predicate:a,mutationKey:o}=e;if(o){if(!t.options.mutationKey)return!1;if(n){if(lo(t.options.mutationKey)!==lo(o))return!1}else if(!yu(t.options.mutationKey,o))return!1}return!(r&&t.state.status!==r||a&&!a(t))}function wb(e,t){return((t==null?void 0:t.queryKeyHashFn)||lo)(e)}function lo(e){return JSON.stringify(e,(t,n)=>wy(n)?Object.keys(n).sort().reduce((r,a)=>(r[a]=n[a],r),{}):n)}function yu(e,t){return e===t?!0:typeof e!=typeof t?!1:e&&t&&typeof e=="object"&&typeof t=="object"?Object.keys(t).every(n=>yu(e[n],t[n])):!1}var JM=Object.prototype.hasOwnProperty;function tN(e,t,n=0){if(e===t)return e;if(n>500)return t;const r=U1(e)&&U1(t);if(!r&&!(wy(e)&&wy(t)))return t;const o=(r?e:Object.keys(e)).length,l=r?t:Object.keys(t),d=l.length,f=r?new Array(d):{};let h=0;for(let g=0;g<d;g++){const m=r?g:l[g],y=e[m],b=t[m];if(y===b){f[m]=y,(r?g<o:JM.call(e,m))&&h++;continue}if(y===null||b===null||typeof y!="object"||typeof b!="object"){f[m]=b;continue}const k=tN(y,b,n+1);f[m]=k,k===y&&h++}return o===d&&h===o?e:f}function ah(e,t){if(!t||Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(e[n]!==t[n])return!1;return!0}function U1(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function wy(e){if(!$1(e))return!1;const t=e.constructor;if(t===void 0)return!0;const n=t.prototype;return!(!$1(n)||!n.hasOwnProperty("isPrototypeOf")||Object.getPrototypeOf(e)!==Object.prototype)}function $1(e){return Object.prototype.toString.call(e)==="[object Object]"}function eD(e){return new Promise(t=>{Gs.setTimeout(t,e)})}function ky(e,t,n){return typeof n.structuralSharing=="function"?n.structuralSharing(e,t):n.structuralSharing!==!1?tN(e,t):t}function tD(e,t,n=0){const r=[...e,t];return n&&r.length>n?r.slice(1):r}function nD(e,t,n=0){const r=[t,...e];return n&&r.length>n?r.slice(0,-1):r}var kb=Symbol();function nN(e,t){return!e.queryFn&&(t!=null&&t.initialPromise)?()=>t.initialPromise:!e.queryFn||e.queryFn===kb?()=>Promise.reject(new Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}function Eb(e,t){return typeof e=="function"?e(...t):!!e}function rD(e,t,n){let r=!1,a;return Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(a??(a=t()),r||(r=!0,a.aborted?n():a.addEventListener("abort",n,{once:!0})),a)}),e}var bu=(()=>{let e=()=>XM;return{isServer(){return e()},setIsServer(t){e=t}}})();function Ey(){let e,t;const n=new Promise((a,o)=>{e=a,t=o});n.status="pending",n.catch(()=>{});function r(a){Object.assign(n,a),delete n.resolve,delete n.reject}return n.resolve=a=>{r({status:"fulfilled",value:a}),e(a)},n.reject=a=>{r({status:"rejected",reason:a}),t(a)},n}var iD=WM;function aD(){let e=[],t=0,n=d=>{d()},r=d=>{d()},a=iD;const o=d=>{t?e.push(d):a(()=>{n(d)})},l=()=>{const d=e;e=[],d.length&&a(()=>{r(()=>{d.forEach(f=>{n(f)})})})};return{batch:d=>{let f;t++;try{f=d()}finally{t--,t||l()}return f},batchCalls:d=>(...f)=>{o(()=>{d(...f)})},schedule:o,setNotifyFunction:d=>{n=d},setBatchNotifyFunction:d=>{r=d},setScheduler:d=>{a=d}}}var An=aD(),Sl,cs,Nl,HS,sD=(HS=class extends Kl{constructor(){super();Ve(this,Sl,!0);Ve(this,cs);Ve(this,Nl);De(this,Nl,t=>{if(typeof window<"u"&&window.addEventListener){const n=()=>t(!0),r=()=>t(!1);return window.addEventListener("online",n,!1),window.addEventListener("offline",r,!1),()=>{window.removeEventListener("online",n),window.removeEventListener("offline",r)}}})}onSubscribe(){X(this,cs)||this.setEventListener(X(this,Nl))}onUnsubscribe(){var t;this.hasListeners()||((t=X(this,cs))==null||t.call(this),De(this,cs,void 0))}setEventListener(t){var n;De(this,Nl,t),(n=X(this,cs))==null||n.call(this),De(this,cs,t(this.setOnline.bind(this)))}setOnline(t){X(this,Sl)!==t&&(De(this,Sl,t),this.listeners.forEach(r=>{r(t)}))}isOnline(){return X(this,Sl)}},Sl=new WeakMap,cs=new WeakMap,Nl=new WeakMap,HS),sh=new sD;function oD(e){return Math.min(1e3*2**e,3e4)}function rN(e){return(e??"online")==="online"?sh.isOnline():!0}var Sy=class extends Error{constructor(e){super("CancelledError"),this.revert=e==null?void 0:e.revert,this.silent=e==null?void 0:e.silent}};function iN(e){let t=!1,n=0,r;const a=Ey(),o=()=>a.status!=="pending",l=v=>{var S;if(!o()){const E=new Sy(v);y(E),(S=e.onCancel)==null||S.call(e,E)}},d=()=>{t=!0},f=()=>{t=!1},h=()=>vb.isFocused()&&(e.networkMode==="always"||sh.isOnline())&&e.canRun(),g=()=>rN(e.networkMode)&&e.canRun(),m=v=>{o()||(r==null||r(),a.resolve(v))},y=v=>{o()||(r==null||r(),a.reject(v))},b=()=>new Promise(v=>{var S;r=E=>{(o()||h())&&v(E)},(S=e.onPause)==null||S.call(e)}).then(()=>{var v;r=void 0,o()||(v=e.onContinue)==null||v.call(e)}),k=()=>{if(o())return;let v;const S=n===0?e.initialPromise:void 0;try{v=S??e.fn()}catch(E){v=Promise.reject(E)}Promise.resolve(v).then(m).catch(E=>{var T;if(o())return;const j=e.retry??(bu.isServer()?0:3),N=e.retryDelay??oD,_=typeof N=="function"?N(n,E):N,O=j===!0||typeof j=="number"&&n<j||typeof j=="function"&&j(n,E);if(t||!O){y(E);return}n++,(T=e.onFail)==null||T.call(e,n,E),eD(_).then(()=>h()?void 0:b()).then(()=>{t?y(E):k()})})};return{promise:a,status:()=>a.status,cancel:l,continue:()=>(r==null||r(),a),cancelRetry:d,continueRetry:f,canStart:g,start:()=>(g()?k():b().then(k),a)}}var Zs,KS,aN=(KS=class{constructor(){Ve(this,Zs)}destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),vy(this.gcTime)&&De(this,Zs,Gs.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(bu.isServer()?1/0:300*1e3))}clearGcTimeout(){X(this,Zs)!==void 0&&(Gs.clearTimeout(X(this,Zs)),De(this,Zs,void 0))}},Zs=new WeakMap,KS),Js,_l,Fr,eo,On,zu,to,Sr,sN,aa,GS,lD=(GS=class extends aN{constructor(t){super();Ve(this,Sr);Ve(this,Js);Ve(this,_l);Ve(this,Fr);Ve(this,eo);Ve(this,On);Ve(this,zu);Ve(this,to);De(this,to,!1),De(this,zu,t.defaultOptions),this.setOptions(t.options),this.observers=[],De(this,eo,t.client),De(this,Fr,X(this,eo).getQueryCache()),this.queryKey=t.queryKey,this.queryHash=t.queryHash,De(this,Js,q1(this.options)),this.state=t.state??X(this,Js),this.scheduleGc()}get meta(){return this.options.meta}get promise(){var t;return(t=X(this,On))==null?void 0:t.promise}setOptions(t){if(this.options={...X(this,zu),...t},this.updateGcTime(this.options.gcTime),this.state&&this.state.data===void 0){const n=q1(this.options);n.data!==void 0&&(this.setState(F1(n.data,n.dataUpdatedAt)),De(this,Js,n))}}optionalRemove(){!this.observers.length&&this.state.fetchStatus==="idle"&&X(this,Fr).remove(this)}setData(t,n){const r=ky(this.state.data,t,this.options);return ut(this,Sr,aa).call(this,{data:r,type:"success",dataUpdatedAt:n==null?void 0:n.updatedAt,manual:n==null?void 0:n.manual}),r}setState(t,n){ut(this,Sr,aa).call(this,{type:"setState",state:t,setStateOptions:n})}cancel(t){var r,a;const n=(r=X(this,On))==null?void 0:r.promise;return(a=X(this,On))==null||a.cancel(t),n?n.then(er).catch(er):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}get resetState(){return X(this,Js)}reset(){this.destroy(),this.setState(this.resetState)}isActive(){return this.observers.some(t=>qr(t.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===kb||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0?this.observers.some(t=>gs(t.options.staleTime,this)==="static"):!1}isStale(){return this.getObserversCount()>0?this.observers.some(t=>t.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(t=0){return this.state.data===void 0?!0:t==="static"?!1:this.state.isInvalidated?!0:!eN(this.state.dataUpdatedAt,t)}onFocus(){var n;const t=this.observers.find(r=>r.shouldFetchOnWindowFocus());t==null||t.refetch({cancelRefetch:!1}),(n=X(this,On))==null||n.continue()}onOnline(){var n;const t=this.observers.find(r=>r.shouldFetchOnReconnect());t==null||t.refetch({cancelRefetch:!1}),(n=X(this,On))==null||n.continue()}addObserver(t){this.observers.includes(t)||(this.observers.push(t),this.clearGcTimeout(),X(this,Fr).notify({type:"observerAdded",query:this,observer:t}))}removeObserver(t){this.observers.includes(t)&&(this.observers=this.observers.filter(n=>n!==t),this.observers.length||(X(this,On)&&(X(this,to)||ut(this,Sr,sN).call(this)?X(this,On).cancel({revert:!0}):X(this,On).cancelRetry()),this.scheduleGc()),X(this,Fr).notify({type:"observerRemoved",query:this,observer:t}))}getObserversCount(){return this.observers.length}invalidate(){this.state.isInvalidated||ut(this,Sr,aa).call(this,{type:"invalidate"})}async fetch(t,n){var f,h,g,m,y,b,k,v,S,E,j,N;if(this.state.fetchStatus!=="idle"&&((f=X(this,On))==null?void 0:f.status())!=="rejected"){if(this.state.data!==void 0&&(n!=null&&n.cancelRefetch))this.cancel({silent:!0});else if(X(this,On))return X(this,On).continueRetry(),X(this,On).promise}if(t&&this.setOptions(t),!this.options.queryFn){const _=this.observers.find(O=>O.options.queryFn);_&&this.setOptions(_.options)}const r=new AbortController,a=_=>{Object.defineProperty(_,"signal",{enumerable:!0,get:()=>(De(this,to,!0),r.signal)})},o=()=>{const _=nN(this.options,n),T=(()=>{const I={client:X(this,eo),queryKey:this.queryKey,meta:this.meta};return a(I),I})();return De(this,to,!1),this.options.persister?this.options.persister(_,T,this):_(T)},d=(()=>{const _={fetchOptions:n,options:this.options,queryKey:this.queryKey,client:X(this,eo),state:this.state,fetchFn:o};return a(_),_})();(h=this.options.behavior)==null||h.onFetch(d,this),De(this,_l,this.state),(this.state.fetchStatus==="idle"||this.state.fetchMeta!==((g=d.fetchOptions)==null?void 0:g.meta))&&ut(this,Sr,aa).call(this,{type:"fetch",meta:(m=d.fetchOptions)==null?void 0:m.meta}),De(this,On,iN({initialPromise:n==null?void 0:n.initialPromise,fn:d.fetchFn,onCancel:_=>{_ instanceof Sy&&_.revert&&this.setState({...X(this,_l),fetchStatus:"idle"}),r.abort()},onFail:(_,O)=>{ut(this,Sr,aa).call(this,{type:"failed",failureCount:_,error:O})},onPause:()=>{ut(this,Sr,aa).call(this,{type:"pause"})},onContinue:()=>{ut(this,Sr,aa).call(this,{type:"continue"})},retry:d.options.retry,retryDelay:d.options.retryDelay,networkMode:d.options.networkMode,canRun:()=>!0}));try{const _=await X(this,On).start();if(_===void 0)throw new Error(`${this.queryHash} data is undefined`);return this.setData(_),(b=(y=X(this,Fr).config).onSuccess)==null||b.call(y,_,this),(v=(k=X(this,Fr).config).onSettled)==null||v.call(k,_,this.state.error,this),_}catch(_){if(_ instanceof Sy){if(_.silent)return X(this,On).promise;if(_.revert){if(this.state.data===void 0)throw _;return this.state.data}}throw ut(this,Sr,aa).call(this,{type:"error",error:_}),(E=(S=X(this,Fr).config).onError)==null||E.call(S,_,this),(N=(j=X(this,Fr).config).onSettled)==null||N.call(j,this.state.data,_,this),_}finally{this.scheduleGc()}}},Js=new WeakMap,_l=new WeakMap,Fr=new WeakMap,eo=new WeakMap,On=new WeakMap,zu=new WeakMap,to=new WeakMap,Sr=new WeakSet,sN=function(){return this.state.fetchStatus==="paused"&&this.state.status==="pending"},aa=function(t){const n=r=>{switch(t.type){case"failed":return{...r,fetchFailureCount:t.failureCount,fetchFailureReason:t.error};case"pause":return{...r,fetchStatus:"paused"};case"continue":return{...r,fetchStatus:"fetching"};case"fetch":return{...r,...oN(r.data,this.options),fetchMeta:t.meta??null};case"success":const a={...r,...F1(t.data,t.dataUpdatedAt),dataUpdateCount:r.dataUpdateCount+1,...!t.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};return De(this,_l,t.manual?a:void 0),a;case"error":const o=t.error;return{...r,error:o,errorUpdateCount:r.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:r.fetchFailureCount+1,fetchFailureReason:o,fetchStatus:"idle",status:"error",isInvalidated:!0};case"invalidate":return{...r,isInvalidated:!0};case"setState":return{...r,...t.state}}};this.state=n(this.state),An.batch(()=>{this.observers.forEach(r=>{r.onQueryUpdate()}),X(this,Fr).notify({query:this,type:"updated",action:t})})},GS);function oN(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:rN(t.networkMode)?"fetching":"paused",...e===void 0&&{error:null,status:"pending"}}}function F1(e,t){return{data:e,dataUpdatedAt:t??Date.now(),error:null,isInvalidated:!1,status:"success"}}function q1(e){const t=typeof e.initialData=="function"?e.initialData():e.initialData,n=t!==void 0,r=n?typeof e.initialDataUpdatedAt=="function"?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:n?r??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:n?"success":"pending",fetchStatus:"idle"}}var ur,kt,Pu,Zn,no,jl,sa,us,Bu,Cl,Al,ro,io,ds,Tl,Dt,su,Ny,_y,jy,Cy,Ay,Ty,My,lN,VS,cD=(VS=class extends Kl{constructor(t,n){super();Ve(this,Dt);Ve(this,ur);Ve(this,kt);Ve(this,Pu);Ve(this,Zn);Ve(this,no);Ve(this,jl);Ve(this,sa);Ve(this,us);Ve(this,Bu);Ve(this,Cl);Ve(this,Al);Ve(this,ro);Ve(this,io);Ve(this,ds);Ve(this,Tl,new Set);this.options=n,De(this,ur,t),De(this,us,null),De(this,sa,Ey()),this.bindMethods(),this.setOptions(n)}bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(X(this,kt).addObserver(this),H1(X(this,kt),this.options)?ut(this,Dt,su).call(this):this.updateResult(),ut(this,Dt,Cy).call(this))}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return Dy(X(this,kt),this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return Dy(X(this,kt),this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,ut(this,Dt,Ay).call(this),ut(this,Dt,Ty).call(this),X(this,kt).removeObserver(this)}setOptions(t){const n=this.options,r=X(this,kt);if(this.options=X(this,ur).defaultQueryOptions(t),this.options.enabled!==void 0&&typeof this.options.enabled!="boolean"&&typeof this.options.enabled!="function"&&typeof qr(this.options.enabled,X(this,kt))!="boolean")throw new Error("Expected enabled to be a boolean or a callback that returns a boolean");ut(this,Dt,My).call(this),X(this,kt).setOptions(this.options),n._defaulted&&!ah(this.options,n)&&X(this,ur).getQueryCache().notify({type:"observerOptionsUpdated",query:X(this,kt),observer:this});const a=this.hasListeners();a&&K1(X(this,kt),r,this.options,n)&&ut(this,Dt,su).call(this),this.updateResult(),a&&(X(this,kt)!==r||qr(this.options.enabled,X(this,kt))!==qr(n.enabled,X(this,kt))||gs(this.options.staleTime,X(this,kt))!==gs(n.staleTime,X(this,kt)))&&ut(this,Dt,Ny).call(this);const o=ut(this,Dt,_y).call(this);a&&(X(this,kt)!==r||qr(this.options.enabled,X(this,kt))!==qr(n.enabled,X(this,kt))||o!==X(this,ds))&&ut(this,Dt,jy).call(this,o)}getOptimisticResult(t){const n=X(this,ur).getQueryCache().build(X(this,ur),t),r=this.createResult(n,t);return dD(this,r)&&(De(this,Zn,r),De(this,jl,this.options),De(this,no,X(this,kt).state)),r}getCurrentResult(){return X(this,Zn)}trackResult(t,n){return new Proxy(t,{get:(r,a)=>(this.trackProp(a),n==null||n(a),a==="promise"&&(this.trackProp("data"),!this.options.experimental_prefetchInRender&&X(this,sa).status==="pending"&&X(this,sa).reject(new Error("experimental_prefetchInRender feature flag is not enabled"))),Reflect.get(r,a))})}trackProp(t){X(this,Tl).add(t)}getCurrentQuery(){return X(this,kt)}refetch({...t}={}){return this.fetch({...t})}fetchOptimistic(t){const n=X(this,ur).defaultQueryOptions(t),r=X(this,ur).getQueryCache().build(X(this,ur),n);return r.fetch().then(()=>this.createResult(r,n))}fetch(t){return ut(this,Dt,su).call(this,{...t,cancelRefetch:t.cancelRefetch??!0}).then(()=>(this.updateResult(),X(this,Zn)))}createResult(t,n){var F;const r=X(this,kt),a=this.options,o=X(this,Zn),l=X(this,no),d=X(this,jl),h=t!==r?t.state:X(this,Pu),{state:g}=t;let m={...g},y=!1,b;if(n._optimisticResults){const M=this.hasListeners(),U=!M&&H1(t,n),q=M&&K1(t,r,n,a);(U||q)&&(m={...m,...oN(g.data,t.options)}),n._optimisticResults==="isRestoring"&&(m.fetchStatus="idle")}let{error:k,errorUpdatedAt:v,status:S}=m;b=m.data;let E=!1;if(n.placeholderData!==void 0&&b===void 0&&S==="pending"){let M;o!=null&&o.isPlaceholderData&&n.placeholderData===(d==null?void 0:d.placeholderData)?(M=o.data,E=!0):M=typeof n.placeholderData=="function"?n.placeholderData((F=X(this,Al))==null?void 0:F.state.data,X(this,Al)):n.placeholderData,M!==void 0&&(S="success",b=ky(o==null?void 0:o.data,M,n),y=!0)}if(n.select&&b!==void 0&&!E)if(o&&b===(l==null?void 0:l.data)&&n.select===X(this,Bu))b=X(this,Cl);else try{De(this,Bu,n.select),b=n.select(b),b=ky(o==null?void 0:o.data,b,n),De(this,Cl,b),De(this,us,null)}catch(M){De(this,us,M)}X(this,us)&&(k=X(this,us),b=X(this,Cl),v=Date.now(),S="error");const j=m.fetchStatus==="fetching",N=S==="pending",_=S==="error",O=N&&j,T=b!==void 0,R={status:S,fetchStatus:m.fetchStatus,isPending:N,isSuccess:S==="success",isError:_,isInitialLoading:O,isLoading:O,data:b,dataUpdatedAt:m.dataUpdatedAt,error:k,errorUpdatedAt:v,failureCount:m.fetchFailureCount,failureReason:m.fetchFailureReason,errorUpdateCount:m.errorUpdateCount,isFetched:t.isFetched(),isFetchedAfterMount:m.dataUpdateCount>h.dataUpdateCount||m.errorUpdateCount>h.errorUpdateCount,isFetching:j,isRefetching:j&&!N,isLoadingError:_&&!T,isPaused:m.fetchStatus==="paused",isPlaceholderData:y,isRefetchError:_&&T,isStale:Sb(t,n),refetch:this.refetch,promise:X(this,sa),isEnabled:qr(n.enabled,t)!==!1};if(this.options.experimental_prefetchInRender){const M=R.data!==void 0,U=R.status==="error"&&!M,q=H=>{U?H.reject(R.error):M&&H.resolve(R.data)},Y=()=>{const H=De(this,sa,R.promise=Ey());q(H)},D=X(this,sa);switch(D.status){case"pending":t.queryHash===r.queryHash&&q(D);break;case"fulfilled":(U||R.data!==D.value)&&Y();break;case"rejected":(!U||R.error!==D.reason)&&Y();break}}return R}updateResult(){const t=X(this,Zn),n=this.createResult(X(this,kt),this.options);if(De(this,no,X(this,kt).state),De(this,jl,this.options),X(this,no).data!==void 0&&De(this,Al,X(this,kt)),ah(n,t))return;De(this,Zn,n);const r=()=>{if(!t)return!0;const{notifyOnChangeProps:a}=this.options,o=typeof a=="function"?a():a;if(o==="all"||!o&&!X(this,Tl).size)return!0;const l=new Set(o??X(this,Tl));return this.options.throwOnError&&l.add("error"),Object.keys(X(this,Zn)).some(d=>{const f=d;return X(this,Zn)[f]!==t[f]&&l.has(f)})};ut(this,Dt,lN).call(this,{listeners:r()})}onQueryUpdate(){this.updateResult(),this.hasListeners()&&ut(this,Dt,Cy).call(this)}},ur=new WeakMap,kt=new WeakMap,Pu=new WeakMap,Zn=new WeakMap,no=new WeakMap,jl=new WeakMap,sa=new WeakMap,us=new WeakMap,Bu=new WeakMap,Cl=new WeakMap,Al=new WeakMap,ro=new WeakMap,io=new WeakMap,ds=new WeakMap,Tl=new WeakMap,Dt=new WeakSet,su=function(t){ut(this,Dt,My).call(this);let n=X(this,kt).fetch(this.options,t);return t!=null&&t.throwOnError||(n=n.catch(er)),n},Ny=function(){ut(this,Dt,Ay).call(this);const t=gs(this.options.staleTime,X(this,kt));if(bu.isServer()||X(this,Zn).isStale||!vy(t))return;const r=eN(X(this,Zn).dataUpdatedAt,t)+1;De(this,ro,Gs.setTimeout(()=>{X(this,Zn).isStale||this.updateResult()},r))},_y=function(){return(typeof this.options.refetchInterval=="function"?this.options.refetchInterval(X(this,kt)):this.options.refetchInterval)??!1},jy=function(t){ut(this,Dt,Ty).call(this),De(this,ds,t),!(bu.isServer()||qr(this.options.enabled,X(this,kt))===!1||!vy(X(this,ds))||X(this,ds)===0)&&De(this,io,Gs.setInterval(()=>{(this.options.refetchIntervalInBackground||vb.isFocused())&&ut(this,Dt,su).call(this)},X(this,ds)))},Cy=function(){ut(this,Dt,Ny).call(this),ut(this,Dt,jy).call(this,ut(this,Dt,_y).call(this))},Ay=function(){X(this,ro)!==void 0&&(Gs.clearTimeout(X(this,ro)),De(this,ro,void 0))},Ty=function(){X(this,io)!==void 0&&(Gs.clearInterval(X(this,io)),De(this,io,void 0))},My=function(){const t=X(this,ur).getQueryCache().build(X(this,ur),this.options);if(t===X(this,kt))return;const n=X(this,kt);De(this,kt,t),De(this,Pu,t.state),this.hasListeners()&&(n==null||n.removeObserver(this),t.addObserver(this))},lN=function(t){An.batch(()=>{t.listeners&&this.listeners.forEach(n=>{n(X(this,Zn))}),X(this,ur).getQueryCache().notify({query:X(this,kt),type:"observerResultsUpdated"})})},VS);function uD(e,t){return qr(t.enabled,e)!==!1&&e.state.data===void 0&&!(e.state.status==="error"&&t.retryOnMount===!1)}function H1(e,t){return uD(e,t)||e.state.data!==void 0&&Dy(e,t,t.refetchOnMount)}function Dy(e,t,n){if(qr(t.enabled,e)!==!1&&gs(t.staleTime,e)!=="static"){const r=typeof n=="function"?n(e):n;return r==="always"||r!==!1&&Sb(e,t)}return!1}function K1(e,t,n,r){return(e!==t||qr(r.enabled,e)===!1)&&(!n.suspense||e.state.status!=="error")&&Sb(e,n)}function Sb(e,t){return qr(t.enabled,e)!==!1&&e.isStaleByTime(gs(t.staleTime,e))}function dD(e,t){return!ah(e.getCurrentResult(),t)}function G1(e){return{onFetch:(t,n)=>{var g,m,y,b,k;const r=t.options,a=(y=(m=(g=t.fetchOptions)==null?void 0:g.meta)==null?void 0:m.fetchMore)==null?void 0:y.direction,o=((b=t.state.data)==null?void 0:b.pages)||[],l=((k=t.state.data)==null?void 0:k.pageParams)||[];let d={pages:[],pageParams:[]},f=0;const h=async()=>{let v=!1;const S=N=>{rD(N,()=>t.signal,()=>v=!0)},E=nN(t.options,t.fetchOptions),j=async(N,_,O)=>{if(v)return Promise.reject();if(_==null&&N.pages.length)return Promise.resolve(N);const I=(()=>{const U={client:t.client,queryKey:t.queryKey,pageParam:_,direction:O?"backward":"forward",meta:t.options.meta};return S(U),U})(),R=await E(I),{maxPages:F}=t.options,M=O?nD:tD;return{pages:M(N.pages,R,F),pageParams:M(N.pageParams,_,F)}};if(a&&o.length){const N=a==="backward",_=N?fD:V1,O={pages:o,pageParams:l},T=_(r,O);d=await j(O,T,N)}else{const N=e??o.length;do{const _=f===0?l[0]??r.initialPageParam:V1(r,d);if(f>0&&_==null)break;d=await j(d,_),f++}while(f<N)}return d};t.options.persister?t.fetchFn=()=>{var v,S;return(S=(v=t.options).persister)==null?void 0:S.call(v,h,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},n)}:t.fetchFn=h}}}function V1(e,{pages:t,pageParams:n}){const r=t.length-1;return t.length>0?e.getNextPageParam(t[r],t,n[r],n):void 0}function fD(e,{pages:t,pageParams:n}){var r;return t.length>0?(r=e.getPreviousPageParam)==null?void 0:r.call(e,t[0],t,n[0],n):void 0}var Uu,Ni,Kn,ao,_i,is,YS,hD=(YS=class extends aN{constructor(t){super();Ve(this,_i);Ve(this,Uu);Ve(this,Ni);Ve(this,Kn);Ve(this,ao);De(this,Uu,t.client),this.mutationId=t.mutationId,De(this,Kn,t.mutationCache),De(this,Ni,[]),this.state=t.state||cN(),this.setOptions(t.options),this.scheduleGc()}setOptions(t){this.options=t,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(t){X(this,Ni).includes(t)||(X(this,Ni).push(t),this.clearGcTimeout(),X(this,Kn).notify({type:"observerAdded",mutation:this,observer:t}))}removeObserver(t){De(this,Ni,X(this,Ni).filter(n=>n!==t)),this.scheduleGc(),X(this,Kn).notify({type:"observerRemoved",mutation:this,observer:t})}optionalRemove(){X(this,Ni).length||(this.state.status==="pending"?this.scheduleGc():X(this,Kn).remove(this))}continue(){var t;return((t=X(this,ao))==null?void 0:t.continue())??this.execute(this.state.variables)}async execute(t){var l,d,f,h,g,m,y,b,k,v,S,E,j,N,_,O,T,I;const n=()=>{ut(this,_i,is).call(this,{type:"continue"})},r={client:X(this,Uu),meta:this.options.meta,mutationKey:this.options.mutationKey};De(this,ao,iN({fn:()=>this.options.mutationFn?this.options.mutationFn(t,r):Promise.reject(new Error("No mutationFn found")),onFail:(R,F)=>{ut(this,_i,is).call(this,{type:"failed",failureCount:R,error:F})},onPause:()=>{ut(this,_i,is).call(this,{type:"pause"})},onContinue:n,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>X(this,Kn).canRun(this)}));const a=this.state.status==="pending",o=!X(this,ao).canStart();try{if(a)n();else{ut(this,_i,is).call(this,{type:"pending",variables:t,isPaused:o}),X(this,Kn).config.onMutate&&await X(this,Kn).config.onMutate(t,this,r);const F=await((d=(l=this.options).onMutate)==null?void 0:d.call(l,t,r));F!==this.state.context&&ut(this,_i,is).call(this,{type:"pending",context:F,variables:t,isPaused:o})}const R=await X(this,ao).start();return await((h=(f=X(this,Kn).config).onSuccess)==null?void 0:h.call(f,R,t,this.state.context,this,r)),await((m=(g=this.options).onSuccess)==null?void 0:m.call(g,R,t,this.state.context,r)),await((b=(y=X(this,Kn).config).onSettled)==null?void 0:b.call(y,R,null,this.state.variables,this.state.context,this,r)),await((v=(k=this.options).onSettled)==null?void 0:v.call(k,R,null,t,this.state.context,r)),ut(this,_i,is).call(this,{type:"success",data:R}),R}catch(R){try{await((E=(S=X(this,Kn).config).onError)==null?void 0:E.call(S,R,t,this.state.context,this,r))}catch(F){Promise.reject(F)}try{await((N=(j=this.options).onError)==null?void 0:N.call(j,R,t,this.state.context,r))}catch(F){Promise.reject(F)}try{await((O=(_=X(this,Kn).config).onSettled)==null?void 0:O.call(_,void 0,R,this.state.variables,this.state.context,this,r))}catch(F){Promise.reject(F)}try{await((I=(T=this.options).onSettled)==null?void 0:I.call(T,void 0,R,t,this.state.context,r))}catch(F){Promise.reject(F)}throw ut(this,_i,is).call(this,{type:"error",error:R}),R}finally{X(this,Kn).runNext(this)}}},Uu=new WeakMap,Ni=new WeakMap,Kn=new WeakMap,ao=new WeakMap,_i=new WeakSet,is=function(t){const n=r=>{switch(t.type){case"failed":return{...r,failureCount:t.failureCount,failureReason:t.error};case"pause":return{...r,isPaused:!0};case"continue":return{...r,isPaused:!1};case"pending":return{...r,context:t.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:t.isPaused,status:"pending",variables:t.variables,submittedAt:Date.now()};case"success":return{...r,data:t.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...r,data:void 0,error:t.error,failureCount:r.failureCount+1,failureReason:t.error,isPaused:!1,status:"error"}}};this.state=n(this.state),An.batch(()=>{X(this,Ni).forEach(r=>{r.onMutationUpdate(t)}),X(this,Kn).notify({mutation:this,type:"updated",action:t})})},YS);function cN(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}var oa,ai,$u,QS,pD=(QS=class extends Kl{constructor(t={}){super();Ve(this,oa);Ve(this,ai);Ve(this,$u);this.config=t,De(this,oa,new Set),De(this,ai,new Map),De(this,$u,0)}build(t,n,r){const a=new hD({client:t,mutationCache:this,mutationId:++bf(this,$u)._,options:t.defaultMutationOptions(n),state:r});return this.add(a),a}add(t){X(this,oa).add(t);const n=xf(t);if(typeof n=="string"){const r=X(this,ai).get(n);r?r.push(t):X(this,ai).set(n,[t])}this.notify({type:"added",mutation:t})}remove(t){if(X(this,oa).delete(t)){const n=xf(t);if(typeof n=="string"){const r=X(this,ai).get(n);if(r)if(r.length>1){const a=r.indexOf(t);a!==-1&&r.splice(a,1)}else r[0]===t&&X(this,ai).delete(n)}}this.notify({type:"removed",mutation:t})}canRun(t){const n=xf(t);if(typeof n=="string"){const r=X(this,ai).get(n),a=r==null?void 0:r.find(o=>o.state.status==="pending");return!a||a===t}else return!0}runNext(t){var r;const n=xf(t);if(typeof n=="string"){const a=(r=X(this,ai).get(n))==null?void 0:r.find(o=>o!==t&&o.state.isPaused);return(a==null?void 0:a.continue())??Promise.resolve()}else return Promise.resolve()}clear(){An.batch(()=>{X(this,oa).forEach(t=>{this.notify({type:"removed",mutation:t})}),X(this,oa).clear(),X(this,ai).clear()})}getAll(){return Array.from(X(this,oa))}find(t){const n={exact:!0,...t};return this.getAll().find(r=>B1(n,r))}findAll(t={}){return this.getAll().filter(n=>B1(t,n))}notify(t){An.batch(()=>{this.listeners.forEach(n=>{n(t)})})}resumePausedMutations(){const t=this.getAll().filter(n=>n.state.isPaused);return An.batch(()=>Promise.all(t.map(n=>n.continue().catch(er))))}},oa=new WeakMap,ai=new WeakMap,$u=new WeakMap,QS);function xf(e){var t;return(t=e.options.scope)==null?void 0:t.id}var la,fs,dr,ca,pa,Gf,Oy,WS,mD=(WS=class extends Kl{constructor(n,r){super();Ve(this,pa);Ve(this,la);Ve(this,fs);Ve(this,dr);Ve(this,ca);De(this,la,n),this.setOptions(r),this.bindMethods(),ut(this,pa,Gf).call(this)}bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)}setOptions(n){var a;const r=this.options;this.options=X(this,la).defaultMutationOptions(n),ah(this.options,r)||X(this,la).getMutationCache().notify({type:"observerOptionsUpdated",mutation:X(this,dr),observer:this}),r!=null&&r.mutationKey&&this.options.mutationKey&&lo(r.mutationKey)!==lo(this.options.mutationKey)?this.reset():((a=X(this,dr))==null?void 0:a.state.status)==="pending"&&X(this,dr).setOptions(this.options)}onUnsubscribe(){var n;this.hasListeners()||(n=X(this,dr))==null||n.removeObserver(this)}onMutationUpdate(n){ut(this,pa,Gf).call(this),ut(this,pa,Oy).call(this,n)}getCurrentResult(){return X(this,fs)}reset(){var n;(n=X(this,dr))==null||n.removeObserver(this),De(this,dr,void 0),ut(this,pa,Gf).call(this),ut(this,pa,Oy).call(this)}mutate(n,r){var a;return De(this,ca,r),(a=X(this,dr))==null||a.removeObserver(this),De(this,dr,X(this,la).getMutationCache().build(X(this,la),this.options)),X(this,dr).addObserver(this),X(this,dr).execute(n)}},la=new WeakMap,fs=new WeakMap,dr=new WeakMap,ca=new WeakMap,pa=new WeakSet,Gf=function(){var r;const n=((r=X(this,dr))==null?void 0:r.state)??cN();De(this,fs,{...n,isPending:n.status==="pending",isSuccess:n.status==="success",isError:n.status==="error",isIdle:n.status==="idle",mutate:this.mutate,reset:this.reset})},Oy=function(n){An.batch(()=>{var r,a,o,l,d,f,h,g;if(X(this,ca)&&this.hasListeners()){const m=X(this,fs).variables,y=X(this,fs).context,b={client:X(this,la),meta:this.options.meta,mutationKey:this.options.mutationKey};if((n==null?void 0:n.type)==="success"){try{(a=(r=X(this,ca)).onSuccess)==null||a.call(r,n.data,m,y,b)}catch(k){Promise.reject(k)}try{(l=(o=X(this,ca)).onSettled)==null||l.call(o,n.data,null,m,y,b)}catch(k){Promise.reject(k)}}else if((n==null?void 0:n.type)==="error"){try{(f=(d=X(this,ca)).onError)==null||f.call(d,n.error,m,y,b)}catch(k){Promise.reject(k)}try{(g=(h=X(this,ca)).onSettled)==null||g.call(h,void 0,n.error,m,y,b)}catch(k){Promise.reject(k)}}}this.listeners.forEach(m=>{m(X(this,fs))})})},WS),ji,XS,gD=(XS=class extends Kl{constructor(t={}){super();Ve(this,ji);this.config=t,De(this,ji,new Map)}build(t,n,r){const a=n.queryKey,o=n.queryHash??wb(a,n);let l=this.get(o);return l||(l=new lD({client:t,queryKey:a,queryHash:o,options:t.defaultQueryOptions(n),state:r,defaultOptions:t.getQueryDefaults(a)}),this.add(l)),l}add(t){X(this,ji).has(t.queryHash)||(X(this,ji).set(t.queryHash,t),this.notify({type:"added",query:t}))}remove(t){const n=X(this,ji).get(t.queryHash);n&&(t.destroy(),n===t&&X(this,ji).delete(t.queryHash),this.notify({type:"removed",query:t}))}clear(){An.batch(()=>{this.getAll().forEach(t=>{this.remove(t)})})}get(t){return X(this,ji).get(t)}getAll(){return[...X(this,ji).values()]}find(t){const n={exact:!0,...t};return this.getAll().find(r=>P1(n,r))}findAll(t={}){const n=this.getAll();return Object.keys(t).length>0?n.filter(r=>P1(t,r)):n}notify(t){An.batch(()=>{this.listeners.forEach(n=>{n(t)})})}onFocus(){An.batch(()=>{this.getAll().forEach(t=>{t.onFocus()})})}onOnline(){An.batch(()=>{this.getAll().forEach(t=>{t.onOnline()})})}},ji=new WeakMap,XS),pn,hs,ps,Ml,Dl,ms,Ol,Rl,ZS,yD=(ZS=class{constructor(e={}){Ve(this,pn);Ve(this,hs);Ve(this,ps);Ve(this,Ml);Ve(this,Dl);Ve(this,ms);Ve(this,Ol);Ve(this,Rl);De(this,pn,e.queryCache||new gD),De(this,hs,e.mutationCache||new pD),De(this,ps,e.defaultOptions||{}),De(this,Ml,new Map),De(this,Dl,new Map),De(this,ms,0)}mount(){bf(this,ms)._++,X(this,ms)===1&&(De(this,Ol,vb.subscribe(async e=>{e&&(await this.resumePausedMutations(),X(this,pn).onFocus())})),De(this,Rl,sh.subscribe(async e=>{e&&(await this.resumePausedMutations(),X(this,pn).onOnline())})))}unmount(){var e,t;bf(this,ms)._--,X(this,ms)===0&&((e=X(this,Ol))==null||e.call(this),De(this,Ol,void 0),(t=X(this,Rl))==null||t.call(this),De(this,Rl,void 0))}isFetching(e){return X(this,pn).findAll({...e,fetchStatus:"fetching"}).length}isMutating(e){return X(this,hs).findAll({...e,status:"pending"}).length}getQueryData(e){var n;const t=this.defaultQueryOptions({queryKey:e});return(n=X(this,pn).get(t.queryHash))==null?void 0:n.state.data}ensureQueryData(e){const t=this.defaultQueryOptions(e),n=X(this,pn).build(this,t),r=n.state.data;return r===void 0?this.fetchQuery(e):(e.revalidateIfStale&&n.isStaleByTime(gs(t.staleTime,n))&&this.prefetchQuery(t),Promise.resolve(r))}getQueriesData(e){return X(this,pn).findAll(e).map(({queryKey:t,state:n})=>{const r=n.data;return[t,r]})}setQueryData(e,t,n){const r=this.defaultQueryOptions({queryKey:e}),a=X(this,pn).get(r.queryHash),o=a==null?void 0:a.state.data,l=ZM(t,o);if(l!==void 0)return X(this,pn).build(this,r).setData(l,{...n,manual:!0})}setQueriesData(e,t,n){return An.batch(()=>X(this,pn).findAll(e).map(({queryKey:r})=>[r,this.setQueryData(r,t,n)]))}getQueryState(e){var n;const t=this.defaultQueryOptions({queryKey:e});return(n=X(this,pn).get(t.queryHash))==null?void 0:n.state}removeQueries(e){const t=X(this,pn);An.batch(()=>{t.findAll(e).forEach(n=>{t.remove(n)})})}resetQueries(e,t){const n=X(this,pn);return An.batch(()=>(n.findAll(e).forEach(r=>{r.reset()}),this.refetchQueries({type:"active",...e},t)))}cancelQueries(e,t={}){const n={revert:!0,...t},r=An.batch(()=>X(this,pn).findAll(e).map(a=>a.cancel(n)));return Promise.all(r).then(er).catch(er)}invalidateQueries(e,t={}){return An.batch(()=>(X(this,pn).findAll(e).forEach(n=>{n.invalidate()}),(e==null?void 0:e.refetchType)==="none"?Promise.resolve():this.refetchQueries({...e,type:(e==null?void 0:e.refetchType)??(e==null?void 0:e.type)??"active"},t)))}refetchQueries(e,t={}){const n={...t,cancelRefetch:t.cancelRefetch??!0},r=An.batch(()=>X(this,pn).findAll(e).filter(a=>!a.isDisabled()&&!a.isStatic()).map(a=>{let o=a.fetch(void 0,n);return n.throwOnError||(o=o.catch(er)),a.state.fetchStatus==="paused"?Promise.resolve():o}));return Promise.all(r).then(er)}fetchQuery(e){const t=this.defaultQueryOptions(e);t.retry===void 0&&(t.retry=!1);const n=X(this,pn).build(this,t);return n.isStaleByTime(gs(t.staleTime,n))?n.fetch(t):Promise.resolve(n.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(er).catch(er)}fetchInfiniteQuery(e){return e.behavior=G1(e.pages),this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(er).catch(er)}ensureInfiniteQueryData(e){return e.behavior=G1(e.pages),this.ensureQueryData(e)}resumePausedMutations(){return sh.isOnline()?X(this,hs).resumePausedMutations():Promise.resolve()}getQueryCache(){return X(this,pn)}getMutationCache(){return X(this,hs)}getDefaultOptions(){return X(this,ps)}setDefaultOptions(e){De(this,ps,e)}setQueryDefaults(e,t){X(this,Ml).set(lo(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){const t=[...X(this,Ml).values()],n={};return t.forEach(r=>{yu(e,r.queryKey)&&Object.assign(n,r.defaultOptions)}),n}setMutationDefaults(e,t){X(this,Dl).set(lo(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){const t=[...X(this,Dl).values()],n={};return t.forEach(r=>{yu(e,r.mutationKey)&&Object.assign(n,r.defaultOptions)}),n}defaultQueryOptions(e){if(e._defaulted)return e;const t={...X(this,ps).queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return t.queryHash||(t.queryHash=wb(t.queryKey,t)),t.refetchOnReconnect===void 0&&(t.refetchOnReconnect=t.networkMode!=="always"),t.throwOnError===void 0&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode="offlineFirst"),t.queryFn===kb&&(t.enabled=!1),t}defaultMutationOptions(e){return e!=null&&e._defaulted?e:{...X(this,ps).mutations,...(e==null?void 0:e.mutationKey)&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){X(this,pn).clear(),X(this,hs).clear()}},pn=new WeakMap,hs=new WeakMap,ps=new WeakMap,Ml=new WeakMap,Dl=new WeakMap,ms=new WeakMap,Ol=new WeakMap,Rl=new WeakMap,ZS),uN=C.createContext(void 0),Gt=e=>{const t=C.useContext(uN);if(!t)throw new Error("No QueryClient set, use QueryClientProvider to set one");return t},bD=({client:e,children:t})=>(C.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),u.jsx(uN.Provider,{value:e,children:t})),dN=C.createContext(!1),xD=()=>C.useContext(dN);dN.Provider;function vD(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var wD=C.createContext(vD()),kD=()=>C.useContext(wD),ED=(e,t,n)=>{const r=n!=null&&n.state.error&&typeof e.throwOnError=="function"?Eb(e.throwOnError,[n.state.error,n]):e.throwOnError;(e.suspense||e.experimental_prefetchInRender||r)&&(t.isReset()||(e.retryOnMount=!1))},SD=e=>{C.useEffect(()=>{e.clearReset()},[e])},ND=({result:e,errorResetBoundary:t,throwOnError:n,query:r,suspense:a})=>e.isError&&!t.isReset()&&!e.isFetching&&r&&(a&&e.data===void 0||Eb(n,[e.error,r])),_D=e=>{if(e.suspense){const n=a=>a==="static"?a:Math.max(a??1e3,1e3),r=e.staleTime;e.staleTime=typeof r=="function"?(...a)=>n(r(...a)):n(r),typeof e.gcTime=="number"&&(e.gcTime=Math.max(e.gcTime,1e3))}},jD=(e,t)=>e.isLoading&&e.isFetching&&!t,CD=(e,t)=>(e==null?void 0:e.suspense)&&t.isPending,Y1=(e,t,n)=>t.fetchOptimistic(e).catch(()=>{n.clearReset()});function AD(e,t,n){var y,b,k,v;const r=xD(),a=kD(),o=Gt(),l=o.defaultQueryOptions(e);(b=(y=o.getDefaultOptions().queries)==null?void 0:y._experimental_beforeQuery)==null||b.call(y,l);const d=o.getQueryCache().get(l.queryHash);l._optimisticResults=r?"isRestoring":"optimistic",_D(l),ED(l,a,d),SD(a);const f=!o.getQueryCache().get(l.queryHash),[h]=C.useState(()=>new t(o,l)),g=h.getOptimisticResult(l),m=!r&&e.subscribed!==!1;if(C.useSyncExternalStore(C.useCallback(S=>{const E=m?h.subscribe(An.batchCalls(S)):er;return h.updateResult(),E},[h,m]),()=>h.getCurrentResult(),()=>h.getCurrentResult()),C.useEffect(()=>{h.setOptions(l)},[l,h]),CD(l,g))throw Y1(l,h,a);if(ND({result:g,errorResetBoundary:a,throwOnError:l.throwOnError,query:d,suspense:l.suspense}))throw g.error;if((v=(k=o.getDefaultOptions().queries)==null?void 0:k._experimental_afterQuery)==null||v.call(k,l,g),l.experimental_prefetchInRender&&!bu.isServer()&&jD(g,r)){const S=f?Y1(l,h,a):d==null?void 0:d.promise;S==null||S.catch(er).finally(()=>{h.updateResult()})}return l.notifyOnChangeProps?g:h.trackResult(g)}function Xe(e,t){return AD(e,cD)}function Ct(e,t){const n=Gt(),[r]=C.useState(()=>new mD(n,e));C.useEffect(()=>{r.setOptions(e)},[r,e]);const a=C.useSyncExternalStore(C.useCallback(l=>r.subscribe(An.batchCalls(l)),[r]),()=>r.getCurrentResult(),()=>r.getCurrentResult()),o=C.useCallback((l,d)=>{r.mutate(l,d).catch(er)},[r]);if(a.error&&Eb(r.options.throwOnError,[a.error]))throw a.error;return{...a,mutate:o,mutateAsync:a.mutate}}/**
50
+ * react-router v7.14.2
51
+ *
52
+ * Copyright (c) Remix Software Inc.
53
+ *
54
+ * This source code is licensed under the MIT license found in the
55
+ * LICENSE.md file in the root directory of this source tree.
56
+ *
57
+ * @license MIT
58
+ */var Q1="popstate";function W1(e){return typeof e=="object"&&e!=null&&"pathname"in e&&"search"in e&&"hash"in e&&"state"in e&&"key"in e}function TD(e={}){function t(r,a){var h;let o=(h=a.state)==null?void 0:h.masked,{pathname:l,search:d,hash:f}=o||r.location;return Ry("",{pathname:l,search:d,hash:f},a.state&&a.state.usr||null,a.state&&a.state.key||"default",o?{pathname:r.location.pathname,search:r.location.search,hash:r.location.hash}:void 0)}function n(r,a){return typeof a=="string"?a:xu(a)}return DD(t,n,null,e)}function Jt(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function Gr(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function MD(){return Math.random().toString(36).substring(2,10)}function X1(e,t){return{usr:e.state,key:e.key,idx:t,masked:e.unstable_mask?{pathname:e.pathname,search:e.search,hash:e.hash}:void 0}}function Ry(e,t,n=null,r,a){return{pathname:typeof e=="string"?e:e.pathname,search:"",hash:"",...typeof t=="string"?Gl(t):t,state:n,key:t&&t.key||r||MD(),unstable_mask:a}}function xu({pathname:e="/",search:t="",hash:n=""}){return t&&t!=="?"&&(e+=t.charAt(0)==="?"?t:"?"+t),n&&n!=="#"&&(e+=n.charAt(0)==="#"?n:"#"+n),e}function Gl(e){let t={};if(e){let n=e.indexOf("#");n>=0&&(t.hash=e.substring(n),e=e.substring(0,n));let r=e.indexOf("?");r>=0&&(t.search=e.substring(r),e=e.substring(0,r)),e&&(t.pathname=e)}return t}function DD(e,t,n,r={}){let{window:a=document.defaultView,v5Compat:o=!1}=r,l=a.history,d="POP",f=null,h=g();h==null&&(h=0,l.replaceState({...l.state,idx:h},""));function g(){return(l.state||{idx:null}).idx}function m(){d="POP";let S=g(),E=S==null?null:S-h;h=S,f&&f({action:d,location:v.location,delta:E})}function y(S,E){d="PUSH";let j=W1(S)?S:Ry(v.location,S,E);h=g()+1;let N=X1(j,h),_=v.createHref(j.unstable_mask||j);try{l.pushState(N,"",_)}catch(O){if(O instanceof DOMException&&O.name==="DataCloneError")throw O;a.location.assign(_)}o&&f&&f({action:d,location:v.location,delta:1})}function b(S,E){d="REPLACE";let j=W1(S)?S:Ry(v.location,S,E);h=g();let N=X1(j,h),_=v.createHref(j.unstable_mask||j);l.replaceState(N,"",_),o&&f&&f({action:d,location:v.location,delta:0})}function k(S){return OD(S)}let v={get action(){return d},get location(){return e(a,l)},listen(S){if(f)throw new Error("A history only accepts one active listener");return a.addEventListener(Q1,m),f=S,()=>{a.removeEventListener(Q1,m),f=null}},createHref(S){return t(a,S)},createURL:k,encodeLocation(S){let E=k(S);return{pathname:E.pathname,search:E.search,hash:E.hash}},push:y,replace:b,go(S){return l.go(S)}};return v}function OD(e,t=!1){let n="http://localhost";typeof window<"u"&&(n=window.location.origin!=="null"?window.location.origin:window.location.href),Jt(n,"No window.location.(origin|href) available to create URL");let r=typeof e=="string"?e:xu(e);return r=r.replace(/ $/,"%20"),!t&&r.startsWith("//")&&(r=n+r),new URL(r,n)}function fN(e,t,n="/"){return RD(e,t,n,!1)}function RD(e,t,n,r){let a=typeof t=="string"?Gl(t):t,o=ma(a.pathname||"/",n);if(o==null)return null;let l=hN(e);LD(l);let d=null;for(let f=0;d==null&&f<l.length;++f){let h=GD(o);d=HD(l[f],h,r)}return d}function hN(e,t=[],n=[],r="",a=!1){let o=(l,d,f=a,h)=>{let g={relativePath:h===void 0?l.path||"":h,caseSensitive:l.caseSensitive===!0,childrenIndex:d,route:l};if(g.relativePath.startsWith("/")){if(!g.relativePath.startsWith(r)&&f)return;Jt(g.relativePath.startsWith(r),`Absolute route path "${g.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),g.relativePath=g.relativePath.slice(r.length)}let m=ui([r,g.relativePath]),y=n.concat(g);l.children&&l.children.length>0&&(Jt(l.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${m}".`),hN(l.children,t,y,m,f)),!(l.path==null&&!l.index)&&t.push({path:m,score:FD(m,l.index),routesMeta:y})};return e.forEach((l,d)=>{var f;if(l.path===""||!((f=l.path)!=null&&f.includes("?")))o(l,d);else for(let h of pN(l.path))o(l,d,!0,h)}),t}function pN(e){let t=e.split("/");if(t.length===0)return[];let[n,...r]=t,a=n.endsWith("?"),o=n.replace(/\?$/,"");if(r.length===0)return a?[o,""]:[o];let l=pN(r.join("/")),d=[];return d.push(...l.map(f=>f===""?o:[o,f].join("/"))),a&&d.push(...l),d.map(f=>e.startsWith("/")&&f===""?"/":f)}function LD(e){e.sort((t,n)=>t.score!==n.score?n.score-t.score:qD(t.routesMeta.map(r=>r.childrenIndex),n.routesMeta.map(r=>r.childrenIndex)))}var ID=/^:[\w-]+$/,zD=3,PD=2,BD=1,UD=10,$D=-2,Z1=e=>e==="*";function FD(e,t){let n=e.split("/"),r=n.length;return n.some(Z1)&&(r+=$D),t&&(r+=PD),n.filter(a=>!Z1(a)).reduce((a,o)=>a+(ID.test(o)?zD:o===""?BD:UD),r)}function qD(e,t){return e.length===t.length&&e.slice(0,-1).every((r,a)=>r===t[a])?e[e.length-1]-t[t.length-1]:0}function HD(e,t,n=!1){let{routesMeta:r}=e,a={},o="/",l=[];for(let d=0;d<r.length;++d){let f=r[d],h=d===r.length-1,g=o==="/"?t:t.slice(o.length)||"/",m=oh({path:f.relativePath,caseSensitive:f.caseSensitive,end:h},g),y=f.route;if(!m&&h&&n&&!r[r.length-1].route.index&&(m=oh({path:f.relativePath,caseSensitive:f.caseSensitive,end:!1},g)),!m)return null;Object.assign(a,m.params),l.push({params:a,pathname:ui([o,m.pathname]),pathnameBase:WD(ui([o,m.pathnameBase])),route:y}),m.pathnameBase!=="/"&&(o=ui([o,m.pathnameBase]))}return l}function oh(e,t){typeof e=="string"&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=KD(e.path,e.caseSensitive,e.end),a=t.match(n);if(!a)return null;let o=a[0],l=o.replace(/(.)\/+$/,"$1"),d=a.slice(1);return{params:r.reduce((h,{paramName:g,isOptional:m},y)=>{if(g==="*"){let k=d[y]||"";l=o.slice(0,o.length-k.length).replace(/(.)\/+$/,"$1")}const b=d[y];return m&&!b?h[g]=void 0:h[g]=(b||"").replace(/%2F/g,"/"),h},{}),pathname:o,pathnameBase:l,pattern:e}}function KD(e,t=!1,n=!0){Gr(e==="*"||!e.endsWith("*")||e.endsWith("/*"),`Route path "${e}" will be treated as if it were "${e.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${e.replace(/\*$/,"/*")}".`);let r=[],a="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(l,d,f,h,g)=>{if(r.push({paramName:d,isOptional:f!=null}),f){let m=g.charAt(h+l.length);return m&&m!=="/"?"/([^\\/]*)":"(?:/([^\\/]*))?"}return"/([^\\/]+)"}).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return e.endsWith("*")?(r.push({paramName:"*"}),a+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?a+="\\/*$":e!==""&&e!=="/"&&(a+="(?:(?=\\/|$))"),[new RegExp(a,t?void 0:"i"),r]}function GD(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return Gr(!1,`The URL path "${e}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${t}).`),e}}function ma(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith("/")?t.length-1:t.length,r=e.charAt(n);return r&&r!=="/"?null:e.slice(n)||"/"}var VD=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i;function YD(e,t="/"){let{pathname:n,search:r="",hash:a=""}=typeof e=="string"?Gl(e):e,o;return n?(n=mN(n),n.startsWith("/")?o=J1(n.substring(1),"/"):o=J1(n,t)):o=t,{pathname:o,search:XD(r),hash:ZD(a)}}function J1(e,t){let n=lh(t).split("/");return e.split("/").forEach(a=>{a===".."?n.length>1&&n.pop():a!=="."&&n.push(a)}),n.length>1?n.join("/"):"/"}function Sg(e,t,n,r){return`Cannot include a '${e}' character in a manually specified \`to.${t}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${n}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function QD(e){return e.filter((t,n)=>n===0||t.route.path&&t.route.path.length>0)}function Nb(e){let t=QD(e);return t.map((n,r)=>r===t.length-1?n.pathname:n.pathnameBase)}function Oh(e,t,n,r=!1){let a;typeof e=="string"?a=Gl(e):(a={...e},Jt(!a.pathname||!a.pathname.includes("?"),Sg("?","pathname","search",a)),Jt(!a.pathname||!a.pathname.includes("#"),Sg("#","pathname","hash",a)),Jt(!a.search||!a.search.includes("#"),Sg("#","search","hash",a)));let o=e===""||a.pathname==="",l=o?"/":a.pathname,d;if(l==null)d=n;else{let m=t.length-1;if(!r&&l.startsWith("..")){let y=l.split("/");for(;y[0]==="..";)y.shift(),m-=1;a.pathname=y.join("/")}d=m>=0?t[m]:"/"}let f=YD(a,d),h=l&&l!=="/"&&l.endsWith("/"),g=(o||l===".")&&n.endsWith("/");return!f.pathname.endsWith("/")&&(h||g)&&(f.pathname+="/"),f}var mN=e=>e.replace(/\/\/+/g,"/"),ui=e=>mN(e.join("/")),lh=e=>e.replace(/\/+$/,""),WD=e=>lh(e).replace(/^\/*/,"/"),XD=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,ZD=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e,JD=class{constructor(e,t,n,r=!1){this.status=e,this.statusText=t||"",this.internal=r,n instanceof Error?(this.data=n.toString(),this.error=n):this.data=n}};function eO(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}function tO(e){let t=e.map(n=>n.route.path).filter(Boolean);return ui(t)||"/"}var gN=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";function yN(e,t){let n=e;if(typeof n!="string"||!VD.test(n))return{absoluteURL:void 0,isExternal:!1,to:n};let r=n,a=!1;if(gN)try{let o=new URL(window.location.href),l=n.startsWith("//")?new URL(o.protocol+n):new URL(n),d=ma(l.pathname,t);l.origin===o.origin&&d!=null?n=d+l.search+l.hash:a=!0}catch{Gr(!1,`<Link to="${n}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:r,isExternal:a,to:n}}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var bN=["POST","PUT","PATCH","DELETE"];new Set(bN);var nO=["GET",...bN];new Set(nO);var Vl=C.createContext(null);Vl.displayName="DataRouter";var Rh=C.createContext(null);Rh.displayName="DataRouterState";var xN=C.createContext(!1);function rO(){return C.useContext(xN)}var vN=C.createContext({isTransitioning:!1});vN.displayName="ViewTransition";var iO=C.createContext(new Map);iO.displayName="Fetchers";var aO=C.createContext(null);aO.displayName="Await";var Ar=C.createContext(null);Ar.displayName="Navigation";var Hu=C.createContext(null);Hu.displayName="Location";var Yr=C.createContext({outlet:null,matches:[],isDataRoute:!1});Yr.displayName="Route";var _b=C.createContext(null);_b.displayName="RouteError";var wN="REACT_ROUTER_ERROR",sO="REDIRECT",oO="ROUTE_ERROR_RESPONSE";function lO(e){if(e.startsWith(`${wN}:${sO}:{`))try{let t=JSON.parse(e.slice(28));if(typeof t=="object"&&t&&typeof t.status=="number"&&typeof t.statusText=="string"&&typeof t.location=="string"&&typeof t.reloadDocument=="boolean"&&typeof t.replace=="boolean")return t}catch{}}function cO(e){if(e.startsWith(`${wN}:${oO}:{`))try{let t=JSON.parse(e.slice(40));if(typeof t=="object"&&t&&typeof t.status=="number"&&typeof t.statusText=="string")return new JD(t.status,t.statusText,t.data)}catch{}}function uO(e,{relative:t}={}){Jt(Yl(),"useHref() may be used only in the context of a <Router> component.");let{basename:n,navigator:r}=C.useContext(Ar),{hash:a,pathname:o,search:l}=Ku(e,{relative:t}),d=o;return n!=="/"&&(d=o==="/"?n:ui([n,o])),r.createHref({pathname:d,search:l,hash:a})}function Yl(){return C.useContext(Hu)!=null}function pi(){return Jt(Yl(),"useLocation() may be used only in the context of a <Router> component."),C.useContext(Hu).location}var kN="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function EN(e){C.useContext(Ar).static||C.useLayoutEffect(e)}function vs(){let{isDataRoute:e}=C.useContext(Yr);return e?NO():dO()}function dO(){Jt(Yl(),"useNavigate() may be used only in the context of a <Router> component.");let e=C.useContext(Vl),{basename:t,navigator:n}=C.useContext(Ar),{matches:r}=C.useContext(Yr),{pathname:a}=pi(),o=JSON.stringify(Nb(r)),l=C.useRef(!1);return EN(()=>{l.current=!0}),C.useCallback((f,h={})=>{if(Gr(l.current,kN),!l.current)return;if(typeof f=="number"){n.go(f);return}let g=Oh(f,JSON.parse(o),a,h.relative==="path");e==null&&t!=="/"&&(g.pathname=g.pathname==="/"?t:ui([t,g.pathname])),(h.replace?n.replace:n.push)(g,h.state,h)},[t,n,o,a,e])}var fO=C.createContext(null);function hO(e){let t=C.useContext(Yr).outlet;return C.useMemo(()=>t&&C.createElement(fO.Provider,{value:e},t),[t,e])}function jb(){let{matches:e}=C.useContext(Yr),t=e[e.length-1];return(t==null?void 0:t.params)??{}}function Ku(e,{relative:t}={}){let{matches:n}=C.useContext(Yr),{pathname:r}=pi(),a=JSON.stringify(Nb(n));return C.useMemo(()=>Oh(e,JSON.parse(a),r,t==="path"),[e,a,r,t])}function pO(e,t){return SN(e,t)}function SN(e,t,n){var S;Jt(Yl(),"useRoutes() may be used only in the context of a <Router> component.");let{navigator:r}=C.useContext(Ar),{matches:a}=C.useContext(Yr),o=a[a.length-1],l=o?o.params:{},d=o?o.pathname:"/",f=o?o.pathnameBase:"/",h=o&&o.route;{let E=h&&h.path||"";_N(d,!h||E.endsWith("*")||E.endsWith("*?"),`You rendered descendant <Routes> (or called \`useRoutes()\`) at "${d}" (under <Route path="${E}">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.
59
+
60
+ Please change the parent <Route path="${E}"> to <Route path="${E==="/"?"*":`${E}/*`}">.`)}let g=pi(),m;if(t){let E=typeof t=="string"?Gl(t):t;Jt(f==="/"||((S=E.pathname)==null?void 0:S.startsWith(f)),`When overriding the location using \`<Routes location>\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${f}" but pathname "${E.pathname}" was given in the \`location\` prop.`),m=E}else m=g;let y=m.pathname||"/",b=y;if(f!=="/"){let E=f.replace(/^\//,"").split("/");b="/"+y.replace(/^\//,"").split("/").slice(E.length).join("/")}let k=fN(e,{pathname:b});Gr(h||k!=null,`No routes matched location "${m.pathname}${m.search}${m.hash}" `),Gr(k==null||k[k.length-1].route.element!==void 0||k[k.length-1].route.Component!==void 0||k[k.length-1].route.lazy!==void 0,`Matched leaf route at location "${m.pathname}${m.search}${m.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`);let v=xO(k&&k.map(E=>Object.assign({},E,{params:Object.assign({},l,E.params),pathname:ui([f,r.encodeLocation?r.encodeLocation(E.pathname.replace(/%/g,"%25").replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:E.pathname]),pathnameBase:E.pathnameBase==="/"?f:ui([f,r.encodeLocation?r.encodeLocation(E.pathnameBase.replace(/%/g,"%25").replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:E.pathnameBase])})),a,n);return t&&v?C.createElement(Hu.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",unstable_mask:void 0,...m},navigationType:"POP"}},v):v}function mO(){let e=SO(),t=eO(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,r="rgba(200,200,200, 0.5)",a={padding:"0.5rem",backgroundColor:r},o={padding:"2px 4px",backgroundColor:r},l=null;return console.error("Error handled by React Router default ErrorBoundary:",e),l=C.createElement(C.Fragment,null,C.createElement("p",null,"💿 Hey developer 👋"),C.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",C.createElement("code",{style:o},"ErrorBoundary")," or"," ",C.createElement("code",{style:o},"errorElement")," prop on your route.")),C.createElement(C.Fragment,null,C.createElement("h2",null,"Unexpected Application Error!"),C.createElement("h3",{style:{fontStyle:"italic"}},t),n?C.createElement("pre",{style:a},n):null,l)}var gO=C.createElement(mO,null),NN=class extends C.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||t.revalidation!=="idle"&&e.revalidation==="idle"?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:e.error!==void 0?e.error:t.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){this.props.onError?this.props.onError(e,t):console.error("React Router caught the following error during render",e)}render(){let e=this.state.error;if(this.context&&typeof e=="object"&&e&&"digest"in e&&typeof e.digest=="string"){const n=cO(e.digest);n&&(e=n)}let t=e!==void 0?C.createElement(Yr.Provider,{value:this.props.routeContext},C.createElement(_b.Provider,{value:e,children:this.props.component})):this.props.children;return this.context?C.createElement(yO,{error:e},t):t}};NN.contextType=xN;var Ng=new WeakMap;function yO({children:e,error:t}){let{basename:n}=C.useContext(Ar);if(typeof t=="object"&&t&&"digest"in t&&typeof t.digest=="string"){let r=lO(t.digest);if(r){let a=Ng.get(t);if(a)throw a;let o=yN(r.location,n);if(gN&&!Ng.get(t))if(o.isExternal||r.reloadDocument)window.location.href=o.absoluteURL||o.to;else{const l=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(o.to,{replace:r.replace}));throw Ng.set(t,l),l}return C.createElement("meta",{httpEquiv:"refresh",content:`0;url=${o.absoluteURL||o.to}`})}}return e}function bO({routeContext:e,match:t,children:n}){let r=C.useContext(Vl);return r&&r.static&&r.staticContext&&(t.route.errorElement||t.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=t.route.id),C.createElement(Yr.Provider,{value:e},n)}function xO(e,t=[],n){let r=n==null?void 0:n.state;if(e==null){if(!r)return null;if(r.errors)e=r.matches;else if(t.length===0&&!r.initialized&&r.matches.length>0)e=r.matches;else return null}let a=e,o=r==null?void 0:r.errors;if(o!=null){let g=a.findIndex(m=>m.route.id&&(o==null?void 0:o[m.route.id])!==void 0);Jt(g>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(o).join(",")}`),a=a.slice(0,Math.min(a.length,g+1))}let l=!1,d=-1;if(n&&r){l=r.renderFallback;for(let g=0;g<a.length;g++){let m=a[g];if((m.route.HydrateFallback||m.route.hydrateFallbackElement)&&(d=g),m.route.id){let{loaderData:y,errors:b}=r,k=m.route.loader&&!y.hasOwnProperty(m.route.id)&&(!b||b[m.route.id]===void 0);if(m.route.lazy||k){n.isStatic&&(l=!0),d>=0?a=a.slice(0,d+1):a=[a[0]];break}}}}let f=n==null?void 0:n.onError,h=r&&f?(g,m)=>{var y,b;f(g,{location:r.location,params:((b=(y=r.matches)==null?void 0:y[0])==null?void 0:b.params)??{},unstable_pattern:tO(r.matches),errorInfo:m})}:void 0;return a.reduceRight((g,m,y)=>{let b,k=!1,v=null,S=null;r&&(b=o&&m.route.id?o[m.route.id]:void 0,v=m.route.errorElement||gO,l&&(d<0&&y===0?(_N("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),k=!0,S=null):d===y&&(k=!0,S=m.route.hydrateFallbackElement||null)));let E=t.concat(a.slice(0,y+1)),j=()=>{let N;return b?N=v:k?N=S:m.route.Component?N=C.createElement(m.route.Component,null):m.route.element?N=m.route.element:N=g,C.createElement(bO,{match:m,routeContext:{outlet:g,matches:E,isDataRoute:r!=null},children:N})};return r&&(m.route.ErrorBoundary||m.route.errorElement||y===0)?C.createElement(NN,{location:r.location,revalidation:r.revalidation,component:v,error:b,children:j(),routeContext:{outlet:null,matches:E,isDataRoute:!0},onError:h}):j()},null)}function Cb(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function vO(e){let t=C.useContext(Vl);return Jt(t,Cb(e)),t}function wO(e){let t=C.useContext(Rh);return Jt(t,Cb(e)),t}function kO(e){let t=C.useContext(Yr);return Jt(t,Cb(e)),t}function Ab(e){let t=kO(e),n=t.matches[t.matches.length-1];return Jt(n.route.id,`${e} can only be used on routes that contain a unique "id"`),n.route.id}function EO(){return Ab("useRouteId")}function SO(){var r;let e=C.useContext(_b),t=wO("useRouteError"),n=Ab("useRouteError");return e!==void 0?e:(r=t.errors)==null?void 0:r[n]}function NO(){let{router:e}=vO("useNavigate"),t=Ab("useNavigate"),n=C.useRef(!1);return EN(()=>{n.current=!0}),C.useCallback(async(a,o={})=>{Gr(n.current,kN),n.current&&(typeof a=="number"?await e.navigate(a):await e.navigate(a,{fromRouteId:t,...o}))},[e,t])}var ek={};function _N(e,t,n){!t&&!ek[e]&&(ek[e]=!0,Gr(!1,n))}C.memo(_O);function _O({routes:e,future:t,state:n,isStatic:r,onError:a}){return SN(e,void 0,{state:n,isStatic:r,onError:a})}function jO({to:e,replace:t,state:n,relative:r}){Jt(Yl(),"<Navigate> may be used only in the context of a <Router> component.");let{static:a}=C.useContext(Ar);Gr(!a,"<Navigate> must not be used on the initial render in a <StaticRouter>. This is a no-op, but you should modify your code so the <Navigate> is only ever rendered in response to some user interaction or state change.");let{matches:o}=C.useContext(Yr),{pathname:l}=pi(),d=vs(),f=Oh(e,Nb(o),l,r==="path"),h=JSON.stringify(f);return C.useEffect(()=>{d(JSON.parse(h),{replace:t,state:n,relative:r})},[d,h,r,t,n]),null}function CO(e){return hO(e.context)}function En(e){Jt(!1,"A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>.")}function AO({basename:e="/",children:t=null,location:n,navigationType:r="POP",navigator:a,static:o=!1,unstable_useTransitions:l}){Jt(!Yl(),"You cannot render a <Router> inside another <Router>. You should never have more than one in your app.");let d=e.replace(/^\/*/,"/"),f=C.useMemo(()=>({basename:d,navigator:a,static:o,unstable_useTransitions:l,future:{}}),[d,a,o,l]);typeof n=="string"&&(n=Gl(n));let{pathname:h="/",search:g="",hash:m="",state:y=null,key:b="default",unstable_mask:k}=n,v=C.useMemo(()=>{let S=ma(h,d);return S==null?null:{location:{pathname:S,search:g,hash:m,state:y,key:b,unstable_mask:k},navigationType:r}},[d,h,g,m,y,b,r,k]);return Gr(v!=null,`<Router basename="${d}"> is not able to match the URL "${h}${g}${m}" because it does not start with the basename, so the <Router> won't render anything.`),v==null?null:C.createElement(Ar.Provider,{value:f},C.createElement(Hu.Provider,{children:t,value:v}))}function TO({children:e,location:t}){return pO(Ly(e),t)}function Ly(e,t=[]){let n=[];return C.Children.forEach(e,(r,a)=>{if(!C.isValidElement(r))return;let o=[...t,a];if(r.type===C.Fragment){n.push.apply(n,Ly(r.props.children,o));return}Jt(r.type===En,`[${typeof r.type=="string"?r.type:r.type.name}] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>`),Jt(!r.props.index||!r.props.children,"An index route cannot have child routes.");let l={id:r.props.id||o.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,middleware:r.props.middleware,loader:r.props.loader,action:r.props.action,hydrateFallbackElement:r.props.hydrateFallbackElement,HydrateFallback:r.props.HydrateFallback,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.hasErrorBoundary===!0||r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(l.children=Ly(r.props.children,o)),n.push(l)}),n}var Vf="get",Yf="application/x-www-form-urlencoded";function Lh(e){return typeof HTMLElement<"u"&&e instanceof HTMLElement}function MO(e){return Lh(e)&&e.tagName.toLowerCase()==="button"}function DO(e){return Lh(e)&&e.tagName.toLowerCase()==="form"}function OO(e){return Lh(e)&&e.tagName.toLowerCase()==="input"}function RO(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function LO(e,t){return e.button===0&&(!t||t==="_self")&&!RO(e)}function Iy(e=""){return new URLSearchParams(typeof e=="string"||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce((t,n)=>{let r=e[n];return t.concat(Array.isArray(r)?r.map(a=>[n,a]):[[n,r]])},[]))}function IO(e,t){let n=Iy(e);return t&&t.forEach((r,a)=>{n.has(a)||t.getAll(a).forEach(o=>{n.append(a,o)})}),n}var vf=null;function zO(){if(vf===null)try{new FormData(document.createElement("form"),0),vf=!1}catch{vf=!0}return vf}var PO=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function _g(e){return e!=null&&!PO.has(e)?(Gr(!1,`"${e}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${Yf}"`),null):e}function BO(e,t){let n,r,a,o,l;if(DO(e)){let d=e.getAttribute("action");r=d?ma(d,t):null,n=e.getAttribute("method")||Vf,a=_g(e.getAttribute("enctype"))||Yf,o=new FormData(e)}else if(MO(e)||OO(e)&&(e.type==="submit"||e.type==="image")){let d=e.form;if(d==null)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let f=e.getAttribute("formaction")||d.getAttribute("action");if(r=f?ma(f,t):null,n=e.getAttribute("formmethod")||d.getAttribute("method")||Vf,a=_g(e.getAttribute("formenctype"))||_g(d.getAttribute("enctype"))||Yf,o=new FormData(d,e),!zO()){let{name:h,type:g,value:m}=e;if(g==="image"){let y=h?`${h}.`:"";o.append(`${y}x`,"0"),o.append(`${y}y`,"0")}else h&&o.append(h,m)}}else{if(Lh(e))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');n=Vf,r=null,a=Yf,l=e}return o&&a==="text/plain"&&(l=o,o=void 0),{action:r,method:n.toLowerCase(),encType:a,formData:o,body:l}}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");function Tb(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function jN(e,t,n,r){let a=typeof e=="string"?new URL(e,typeof window>"u"?"server://singlefetch/":window.location.origin):e;return n?a.pathname.endsWith("/")?a.pathname=`${a.pathname}_.${r}`:a.pathname=`${a.pathname}.${r}`:a.pathname==="/"?a.pathname=`_root.${r}`:t&&ma(a.pathname,t)==="/"?a.pathname=`${lh(t)}/_root.${r}`:a.pathname=`${lh(a.pathname)}.${r}`,a}async function UO(e,t){if(e.id in t)return t[e.id];try{let n=await import(e.module);return t[e.id]=n,n}catch(n){return console.error(`Error loading route module \`${e.module}\`, reloading page...`),console.error(n),window.__reactRouterContext&&window.__reactRouterContext.isSpaMode,window.location.reload(),new Promise(()=>{})}}function $O(e){return e==null?!1:e.href==null?e.rel==="preload"&&typeof e.imageSrcSet=="string"&&typeof e.imageSizes=="string":typeof e.rel=="string"&&typeof e.href=="string"}async function FO(e,t,n){let r=await Promise.all(e.map(async a=>{let o=t.routes[a.route.id];if(o){let l=await UO(o,n);return l.links?l.links():[]}return[]}));return GO(r.flat(1).filter($O).filter(a=>a.rel==="stylesheet"||a.rel==="preload").map(a=>a.rel==="stylesheet"?{...a,rel:"prefetch",as:"style"}:{...a,rel:"prefetch"}))}function tk(e,t,n,r,a,o){let l=(f,h)=>n[h]?f.route.id!==n[h].route.id:!0,d=(f,h)=>{var g;return n[h].pathname!==f.pathname||((g=n[h].route.path)==null?void 0:g.endsWith("*"))&&n[h].params["*"]!==f.params["*"]};return o==="assets"?t.filter((f,h)=>l(f,h)||d(f,h)):o==="data"?t.filter((f,h)=>{var m;let g=r.routes[f.route.id];if(!g||!g.hasLoader)return!1;if(l(f,h)||d(f,h))return!0;if(f.route.shouldRevalidate){let y=f.route.shouldRevalidate({currentUrl:new URL(a.pathname+a.search+a.hash,window.origin),currentParams:((m=n[0])==null?void 0:m.params)||{},nextUrl:new URL(e,window.origin),nextParams:f.params,defaultShouldRevalidate:!0});if(typeof y=="boolean")return y}return!0}):[]}function qO(e,t,{includeHydrateFallback:n}={}){return HO(e.map(r=>{let a=t.routes[r.route.id];if(!a)return[];let o=[a.module];return a.clientActionModule&&(o=o.concat(a.clientActionModule)),a.clientLoaderModule&&(o=o.concat(a.clientLoaderModule)),n&&a.hydrateFallbackModule&&(o=o.concat(a.hydrateFallbackModule)),a.imports&&(o=o.concat(a.imports)),o}).flat(1))}function HO(e){return[...new Set(e)]}function KO(e){let t={},n=Object.keys(e).sort();for(let r of n)t[r]=e[r];return t}function GO(e,t){let n=new Set;return new Set(t),e.reduce((r,a)=>{let o=JSON.stringify(KO(a));return n.has(o)||(n.add(o),r.push({key:o,link:a})),r},[])}function Mb(){let e=C.useContext(Vl);return Tb(e,"You must render this element inside a <DataRouterContext.Provider> element"),e}function VO(){let e=C.useContext(Rh);return Tb(e,"You must render this element inside a <DataRouterStateContext.Provider> element"),e}var Db=C.createContext(void 0);Db.displayName="FrameworkContext";function Ob(){let e=C.useContext(Db);return Tb(e,"You must render this element inside a <HydratedRouter> element"),e}function YO(e,t){let n=C.useContext(Db),[r,a]=C.useState(!1),[o,l]=C.useState(!1),{onFocus:d,onBlur:f,onMouseEnter:h,onMouseLeave:g,onTouchStart:m}=t,y=C.useRef(null);C.useEffect(()=>{if(e==="render"&&l(!0),e==="viewport"){let v=E=>{E.forEach(j=>{l(j.isIntersecting)})},S=new IntersectionObserver(v,{threshold:.5});return y.current&&S.observe(y.current),()=>{S.disconnect()}}},[e]),C.useEffect(()=>{if(r){let v=setTimeout(()=>{l(!0)},100);return()=>{clearTimeout(v)}}},[r]);let b=()=>{a(!0)},k=()=>{a(!1),l(!1)};return n?e!=="intent"?[o,y,{}]:[o,y,{onFocus:Xc(d,b),onBlur:Xc(f,k),onMouseEnter:Xc(h,b),onMouseLeave:Xc(g,k),onTouchStart:Xc(m,b)}]:[!1,y,{}]}function Xc(e,t){return n=>{e&&e(n),n.defaultPrevented||t(n)}}function QO({page:e,...t}){let n=rO(),{router:r}=Mb(),a=C.useMemo(()=>fN(r.routes,e,r.basename),[r.routes,e,r.basename]);return a?n?C.createElement(XO,{page:e,matches:a,...t}):C.createElement(ZO,{page:e,matches:a,...t}):null}function WO(e){let{manifest:t,routeModules:n}=Ob(),[r,a]=C.useState([]);return C.useEffect(()=>{let o=!1;return FO(e,t,n).then(l=>{o||a(l)}),()=>{o=!0}},[e,t,n]),r}function XO({page:e,matches:t,...n}){let r=pi(),{future:a}=Ob(),{basename:o}=Mb(),l=C.useMemo(()=>{if(e===r.pathname+r.search+r.hash)return[];let d=jN(e,o,a.unstable_trailingSlashAwareDataRequests,"rsc"),f=!1,h=[];for(let g of t)typeof g.route.shouldRevalidate=="function"?f=!0:h.push(g.route.id);return f&&h.length>0&&d.searchParams.set("_routes",h.join(",")),[d.pathname+d.search]},[o,a.unstable_trailingSlashAwareDataRequests,e,r,t]);return C.createElement(C.Fragment,null,l.map(d=>C.createElement("link",{key:d,rel:"prefetch",as:"fetch",href:d,...n})))}function ZO({page:e,matches:t,...n}){let r=pi(),{future:a,manifest:o,routeModules:l}=Ob(),{basename:d}=Mb(),{loaderData:f,matches:h}=VO(),g=C.useMemo(()=>tk(e,t,h,o,r,"data"),[e,t,h,o,r]),m=C.useMemo(()=>tk(e,t,h,o,r,"assets"),[e,t,h,o,r]),y=C.useMemo(()=>{if(e===r.pathname+r.search+r.hash)return[];let v=new Set,S=!1;if(t.forEach(j=>{var _;let N=o.routes[j.route.id];!N||!N.hasLoader||(!g.some(O=>O.route.id===j.route.id)&&j.route.id in f&&((_=l[j.route.id])!=null&&_.shouldRevalidate)||N.hasClientLoader?S=!0:v.add(j.route.id))}),v.size===0)return[];let E=jN(e,d,a.unstable_trailingSlashAwareDataRequests,"data");return S&&v.size>0&&E.searchParams.set("_routes",t.filter(j=>v.has(j.route.id)).map(j=>j.route.id).join(",")),[E.pathname+E.search]},[d,a.unstable_trailingSlashAwareDataRequests,f,r,o,g,t,e,l]),b=C.useMemo(()=>qO(m,o),[m,o]),k=WO(m);return C.createElement(C.Fragment,null,y.map(v=>C.createElement("link",{key:v,rel:"prefetch",as:"fetch",href:v,...n})),b.map(v=>C.createElement("link",{key:v,rel:"modulepreload",href:v,...n})),k.map(({key:v,link:S})=>C.createElement("link",{key:v,nonce:n.nonce,...S,crossOrigin:S.crossOrigin??n.crossOrigin})))}function JO(...e){return t=>{e.forEach(n=>{typeof n=="function"?n(t):n!=null&&(n.current=t)})}}var eR=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";try{eR&&(window.__reactRouterVersion="7.14.2")}catch{}function tR({basename:e,children:t,unstable_useTransitions:n,window:r}){let a=C.useRef();a.current==null&&(a.current=TD({window:r,v5Compat:!0}));let o=a.current,[l,d]=C.useState({action:o.action,location:o.location}),f=C.useCallback(h=>{n===!1?d(h):C.startTransition(()=>d(h))},[n]);return C.useLayoutEffect(()=>o.listen(f),[o,f]),C.createElement(AO,{basename:e,children:t,location:l.location,navigationType:l.action,navigator:o,unstable_useTransitions:n})}var CN=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,bs=C.forwardRef(function({onClick:t,discover:n="render",prefetch:r="none",relative:a,reloadDocument:o,replace:l,unstable_mask:d,state:f,target:h,to:g,preventScrollReset:m,viewTransition:y,unstable_defaultShouldRevalidate:b,...k},v){let{basename:S,navigator:E,unstable_useTransitions:j}=C.useContext(Ar),N=typeof g=="string"&&CN.test(g),_=yN(g,S);g=_.to;let O=uO(g,{relative:a}),T=pi(),I=null;if(d){let H=Oh(d,[],T.unstable_mask?T.unstable_mask.pathname:"/",!0);S!=="/"&&(H.pathname=H.pathname==="/"?S:ui([S,H.pathname])),I=E.createHref(H)}let[R,F,M]=YO(r,k),U=iR(g,{replace:l,unstable_mask:d,state:f,target:h,preventScrollReset:m,relative:a,viewTransition:y,unstable_defaultShouldRevalidate:b,unstable_useTransitions:j});function q(H){t&&t(H),H.defaultPrevented||U(H)}let Y=!(_.isExternal||o),D=C.createElement("a",{...k,...M,href:(Y?I:void 0)||_.absoluteURL||O,onClick:Y?q:t,ref:JO(v,F),target:h,"data-discover":!N&&n==="render"?"true":void 0});return R&&!N?C.createElement(C.Fragment,null,D,C.createElement(QO,{page:O})):D});bs.displayName="Link";var AN=C.forwardRef(function({"aria-current":t="page",caseSensitive:n=!1,className:r="",end:a=!1,style:o,to:l,viewTransition:d,children:f,...h},g){let m=Ku(l,{relative:h.relative}),y=pi(),b=C.useContext(Rh),{navigator:k,basename:v}=C.useContext(Ar),S=b!=null&&cR(m)&&d===!0,E=k.encodeLocation?k.encodeLocation(m).pathname:m.pathname,j=y.pathname,N=b&&b.navigation&&b.navigation.location?b.navigation.location.pathname:null;n||(j=j.toLowerCase(),N=N?N.toLowerCase():null,E=E.toLowerCase()),N&&v&&(N=ma(N,v)||N);const _=E!=="/"&&E.endsWith("/")?E.length-1:E.length;let O=j===E||!a&&j.startsWith(E)&&j.charAt(_)==="/",T=N!=null&&(N===E||!a&&N.startsWith(E)&&N.charAt(E.length)==="/"),I={isActive:O,isPending:T,isTransitioning:S},R=O?t:void 0,F;typeof r=="function"?F=r(I):F=[r,O?"active":null,T?"pending":null,S?"transitioning":null].filter(Boolean).join(" ");let M=typeof o=="function"?o(I):o;return C.createElement(bs,{...h,"aria-current":R,className:F,ref:g,style:M,to:l,viewTransition:d},typeof f=="function"?f(I):f)});AN.displayName="NavLink";var nR=C.forwardRef(({discover:e="render",fetcherKey:t,navigate:n,reloadDocument:r,replace:a,state:o,method:l=Vf,action:d,onSubmit:f,relative:h,preventScrollReset:g,viewTransition:m,unstable_defaultShouldRevalidate:y,...b},k)=>{let{unstable_useTransitions:v}=C.useContext(Ar),S=oR(),E=lR(d,{relative:h}),j=l.toLowerCase()==="get"?"get":"post",N=typeof d=="string"&&CN.test(d),_=O=>{if(f&&f(O),O.defaultPrevented)return;O.preventDefault();let T=O.nativeEvent.submitter,I=(T==null?void 0:T.getAttribute("formmethod"))||l,R=()=>S(T||O.currentTarget,{fetcherKey:t,method:I,navigate:n,replace:a,state:o,relative:h,preventScrollReset:g,viewTransition:m,unstable_defaultShouldRevalidate:y});v&&n!==!1?C.startTransition(()=>R()):R()};return C.createElement("form",{ref:k,method:j,action:E,onSubmit:r?f:_,...b,"data-discover":!N&&e==="render"?"true":void 0})});nR.displayName="Form";function rR(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function TN(e){let t=C.useContext(Vl);return Jt(t,rR(e)),t}function iR(e,{target:t,replace:n,unstable_mask:r,state:a,preventScrollReset:o,relative:l,viewTransition:d,unstable_defaultShouldRevalidate:f,unstable_useTransitions:h}={}){let g=vs(),m=pi(),y=Ku(e,{relative:l});return C.useCallback(b=>{if(LO(b,t)){b.preventDefault();let k=n!==void 0?n:xu(m)===xu(y),v=()=>g(e,{replace:k,unstable_mask:r,state:a,preventScrollReset:o,relative:l,viewTransition:d,unstable_defaultShouldRevalidate:f});h?C.startTransition(()=>v()):v()}},[m,g,y,n,r,a,t,e,o,l,d,f,h])}function MN(e){Gr(typeof URLSearchParams<"u","You cannot use the `useSearchParams` hook in a browser that does not support the URLSearchParams API. If you need to support Internet Explorer 11, we recommend you load a polyfill such as https://github.com/ungap/url-search-params.");let t=C.useRef(Iy(e)),n=C.useRef(!1),r=pi(),a=C.useMemo(()=>IO(r.search,n.current?null:t.current),[r.search]),o=vs(),l=C.useCallback((d,f)=>{const h=Iy(typeof d=="function"?d(new URLSearchParams(a)):d);n.current=!0,o("?"+h,f)},[o,a]);return[a,l]}var aR=0,sR=()=>`__${String(++aR)}__`;function oR(){let{router:e}=TN("useSubmit"),{basename:t}=C.useContext(Ar),n=EO(),r=e.fetch,a=e.navigate;return C.useCallback(async(o,l={})=>{let{action:d,method:f,encType:h,formData:g,body:m}=BO(o,t);if(l.navigate===!1){let y=l.fetcherKey||sR();await r(y,n,l.action||d,{unstable_defaultShouldRevalidate:l.unstable_defaultShouldRevalidate,preventScrollReset:l.preventScrollReset,formData:g,body:m,formMethod:l.method||f,formEncType:l.encType||h,flushSync:l.flushSync})}else await a(l.action||d,{unstable_defaultShouldRevalidate:l.unstable_defaultShouldRevalidate,preventScrollReset:l.preventScrollReset,formData:g,body:m,formMethod:l.method||f,formEncType:l.encType||h,replace:l.replace,state:l.state,fromRouteId:n,flushSync:l.flushSync,viewTransition:l.viewTransition})},[r,a,t,n])}function lR(e,{relative:t}={}){let{basename:n}=C.useContext(Ar),r=C.useContext(Yr);Jt(r,"useFormAction must be used inside a RouteContext");let[a]=r.matches.slice(-1),o={...Ku(e||".",{relative:t})},l=pi();if(e==null){o.search=l.search;let d=new URLSearchParams(o.search),f=d.getAll("index");if(f.some(g=>g==="")){d.delete("index"),f.filter(m=>m).forEach(m=>d.append("index",m));let g=d.toString();o.search=g?`?${g}`:""}}return(!e||e===".")&&a.route.index&&(o.search=o.search?o.search.replace(/^\?/,"?index&"):"?index"),n!=="/"&&(o.pathname=o.pathname==="/"?n:ui([n,o.pathname])),xu(o)}function cR(e,{relative:t}={}){let n=C.useContext(vN);Jt(n!=null,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?");let{basename:r}=TN("useViewTransitionState"),a=Ku(e,{relative:t});if(!n.isTransitioning)return!1;let o=ma(n.currentLocation.pathname,r)||n.currentLocation.pathname,l=ma(n.nextLocation.pathname,r)||n.nextLocation.pathname;return oh(a.pathname,l)!=null||oh(a.pathname,o)!=null}JS();/**
61
+ * @license lucide-react v0.544.0 - ISC
62
+ *
63
+ * This source code is licensed under the ISC license.
64
+ * See the LICENSE file in the root directory of this source tree.
65
+ */const uR=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),dR=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,n,r)=>r?r.toUpperCase():n.toLowerCase()),nk=e=>{const t=dR(e);return t.charAt(0).toUpperCase()+t.slice(1)},DN=(...e)=>e.filter((t,n,r)=>!!t&&t.trim()!==""&&r.indexOf(t)===n).join(" ").trim(),fR=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0};/**
66
+ * @license lucide-react v0.544.0 - ISC
67
+ *
68
+ * This source code is licensed under the ISC license.
69
+ * See the LICENSE file in the root directory of this source tree.
70
+ */var hR={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};/**
71
+ * @license lucide-react v0.544.0 - ISC
72
+ *
73
+ * This source code is licensed under the ISC license.
74
+ * See the LICENSE file in the root directory of this source tree.
75
+ */const pR=C.forwardRef(({color:e="currentColor",size:t=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:a="",children:o,iconNode:l,...d},f)=>C.createElement("svg",{ref:f,...hR,width:t,height:t,stroke:e,strokeWidth:r?Number(n)*24/Number(t):n,className:DN("lucide",a),...!o&&!fR(d)&&{"aria-hidden":"true"},...d},[...l.map(([h,g])=>C.createElement(h,g)),...Array.isArray(o)?o:[o]]));/**
76
+ * @license lucide-react v0.544.0 - ISC
77
+ *
78
+ * This source code is licensed under the ISC license.
79
+ * See the LICENSE file in the root directory of this source tree.
80
+ */const Oe=(e,t)=>{const n=C.forwardRef(({className:r,...a},o)=>C.createElement(pR,{ref:o,iconNode:t,className:DN(`lucide-${uR(nk(e))}`,`lucide-${e}`,r),...a}));return n.displayName=nk(e),n};/**
81
+ * @license lucide-react v0.544.0 - ISC
82
+ *
83
+ * This source code is licensed under the ISC license.
84
+ * See the LICENSE file in the root directory of this source tree.
85
+ */const mR=[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]],Ih=Oe("activity",mR);/**
86
+ * @license lucide-react v0.544.0 - ISC
87
+ *
88
+ * This source code is licensed under the ISC license.
89
+ * See the LICENSE file in the root directory of this source tree.
90
+ */const gR=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],yR=Oe("arrow-down",gR);/**
91
+ * @license lucide-react v0.544.0 - ISC
92
+ *
93
+ * This source code is licensed under the ISC license.
94
+ * See the LICENSE file in the root directory of this source tree.
95
+ */const bR=[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]],ON=Oe("arrow-left",bR);/**
96
+ * @license lucide-react v0.544.0 - ISC
97
+ *
98
+ * This source code is licensed under the ISC license.
99
+ * See the LICENSE file in the root directory of this source tree.
100
+ */const xR=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],RN=Oe("arrow-up",xR);/**
101
+ * @license lucide-react v0.544.0 - ISC
102
+ *
103
+ * This source code is licensed under the ISC license.
104
+ * See the LICENSE file in the root directory of this source tree.
105
+ */const vR=[["path",{d:"M18 6V4a2 2 0 1 0-4 0v2",key:"1aquzs"}],["path",{d:"M20 15v6a1 1 0 0 1-1 1H6.5a1 1 0 0 1 0-5H20",key:"1rkj32"}],["path",{d:"M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H10",key:"18wgow"}],["rect",{x:"12",y:"6",width:"8",height:"5",rx:"1",key:"73l30o"}]],wR=Oe("book-lock",vR);/**
106
+ * @license lucide-react v0.544.0 - ISC
107
+ *
108
+ * This source code is licensed under the ISC license.
109
+ * See the LICENSE file in the root directory of this source tree.
110
+ */const kR=[["path",{d:"M12 18V5",key:"adv99a"}],["path",{d:"M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4",key:"1e3is1"}],["path",{d:"M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5",key:"1gqd8o"}],["path",{d:"M17.997 5.125a4 4 0 0 1 2.526 5.77",key:"iwvgf7"}],["path",{d:"M18 18a4 4 0 0 0 2-7.464",key:"efp6ie"}],["path",{d:"M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517",key:"1gq6am"}],["path",{d:"M6 18a4 4 0 0 1-2-7.464",key:"k1g0md"}],["path",{d:"M6.003 5.125a4 4 0 0 0-2.526 5.77",key:"q97ue3"}]],ER=Oe("brain",kR);/**
111
+ * @license lucide-react v0.544.0 - ISC
112
+ *
113
+ * This source code is licensed under the ISC license.
114
+ * See the LICENSE file in the root directory of this source tree.
115
+ */const SR=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],NR=Oe("check",SR);/**
116
+ * @license lucide-react v0.544.0 - ISC
117
+ *
118
+ * This source code is licensed under the ISC license.
119
+ * See the LICENSE file in the root directory of this source tree.
120
+ */const _R=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],Ql=Oe("chevron-down",_R);/**
121
+ * @license lucide-react v0.544.0 - ISC
122
+ *
123
+ * This source code is licensed under the ISC license.
124
+ * See the LICENSE file in the root directory of this source tree.
125
+ */const jR=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],Wl=Oe("chevron-right",jR);/**
126
+ * @license lucide-react v0.544.0 - ISC
127
+ *
128
+ * This source code is licensed under the ISC license.
129
+ * See the LICENSE file in the root directory of this source tree.
130
+ */const CR=[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]],AR=Oe("chevron-up",CR);/**
131
+ * @license lucide-react v0.544.0 - ISC
132
+ *
133
+ * This source code is licensed under the ISC license.
134
+ * See the LICENSE file in the root directory of this source tree.
135
+ */const TR=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]],vu=Oe("circle-alert",TR);/**
136
+ * @license lucide-react v0.544.0 - ISC
137
+ *
138
+ * This source code is licensed under the ISC license.
139
+ * See the LICENSE file in the root directory of this source tree.
140
+ */const MR=[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]],ch=Oe("circle-check-big",MR);/**
141
+ * @license lucide-react v0.544.0 - ISC
142
+ *
143
+ * This source code is licensed under the ISC license.
144
+ * See the LICENSE file in the root directory of this source tree.
145
+ */const DR=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],wu=Oe("circle-check",DR);/**
146
+ * @license lucide-react v0.544.0 - ISC
147
+ *
148
+ * This source code is licensed under the ISC license.
149
+ * See the LICENSE file in the root directory of this source tree.
150
+ */const OR=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]],LN=Oe("circle-x",OR);/**
151
+ * @license lucide-react v0.544.0 - ISC
152
+ *
153
+ * This source code is licensed under the ISC license.
154
+ * See the LICENSE file in the root directory of this source tree.
155
+ */const RR=[["path",{d:"M12 6v6l4 2",key:"mmk7yg"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],IN=Oe("clock",RR);/**
156
+ * @license lucide-react v0.544.0 - ISC
157
+ *
158
+ * This source code is licensed under the ISC license.
159
+ * See the LICENSE file in the root directory of this source tree.
160
+ */const LR=[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]],IR=Oe("copy",LR);/**
161
+ * @license lucide-react v0.544.0 - ISC
162
+ *
163
+ * This source code is licensed under the ISC license.
164
+ * See the LICENSE file in the root directory of this source tree.
165
+ */const zR=[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]],uh=Oe("cpu",zR);/**
166
+ * @license lucide-react v0.544.0 - ISC
167
+ *
168
+ * This source code is licensed under the ISC license.
169
+ * See the LICENSE file in the root directory of this source tree.
170
+ */const PR=[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]],zh=Oe("download",PR);/**
171
+ * @license lucide-react v0.544.0 - ISC
172
+ *
173
+ * This source code is licensed under the ISC license.
174
+ * See the LICENSE file in the root directory of this source tree.
175
+ */const BR=[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]],UR=Oe("external-link",BR);/**
176
+ * @license lucide-react v0.544.0 - ISC
177
+ *
178
+ * This source code is licensed under the ISC license.
179
+ * See the LICENSE file in the root directory of this source tree.
180
+ */const $R=[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]],FR=Oe("eye",$R);/**
181
+ * @license lucide-react v0.544.0 - ISC
182
+ *
183
+ * This source code is licensed under the ISC license.
184
+ * See the LICENSE file in the root directory of this source tree.
185
+ */const qR=[["path",{d:"M10 12.5 8 15l2 2.5",key:"1tg20x"}],["path",{d:"m14 12.5 2 2.5-2 2.5",key:"yinavb"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7z",key:"1mlx9k"}]],rk=Oe("file-code",qR);/**
186
+ * @license lucide-react v0.544.0 - ISC
187
+ *
188
+ * This source code is licensed under the ISC license.
189
+ * See the LICENSE file in the root directory of this source tree.
190
+ */const HR=[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]],Gu=Oe("file-text",HR);/**
191
+ * @license lucide-react v0.544.0 - ISC
192
+ *
193
+ * This source code is licensed under the ISC license.
194
+ * See the LICENSE file in the root directory of this source tree.
195
+ */const KR=[["path",{d:"M9 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v5",key:"1w6njk"}],["circle",{cx:"13",cy:"12",r:"2",key:"1j92g6"}],["path",{d:"M18 19c-2.8 0-5-2.2-5-5v8",key:"pkpw2h"}],["circle",{cx:"20",cy:"19",r:"2",key:"1obnsp"}]],GR=Oe("folder-git-2",KR);/**
196
+ * @license lucide-react v0.544.0 - ISC
197
+ *
198
+ * This source code is licensed under the ISC license.
199
+ * See the LICENSE file in the root directory of this source tree.
200
+ */const VR=[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]],zN=Oe("folder-open",VR);/**
201
+ * @license lucide-react v0.544.0 - ISC
202
+ *
203
+ * This source code is licensed under the ISC license.
204
+ * See the LICENSE file in the root directory of this source tree.
205
+ */const YR=[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]],ku=Oe("folder",YR);/**
206
+ * @license lucide-react v0.544.0 - ISC
207
+ *
208
+ * This source code is licensed under the ISC license.
209
+ * See the LICENSE file in the root directory of this source tree.
210
+ */const QR=[["path",{d:"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z",key:"sc7q7i"}]],WR=Oe("funnel",QR);/**
211
+ * @license lucide-react v0.544.0 - ISC
212
+ *
213
+ * This source code is licensed under the ISC license.
214
+ * See the LICENSE file in the root directory of this source tree.
215
+ */const XR=[["line",{x1:"6",x2:"6",y1:"3",y2:"15",key:"17qcm7"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}],["path",{d:"M18 9a9 9 0 0 1-9 9",key:"n2h4wq"}]],ZR=Oe("git-branch",XR);/**
216
+ * @license lucide-react v0.544.0 - ISC
217
+ *
218
+ * This source code is licensed under the ISC license.
219
+ * See the LICENSE file in the root directory of this source tree.
220
+ */const JR=[["circle",{cx:"5",cy:"6",r:"3",key:"1qnov2"}],["path",{d:"M5 9v12",key:"ih889a"}],["circle",{cx:"19",cy:"18",r:"3",key:"1qljk2"}],["path",{d:"m15 9-3-3 3-3",key:"1lwv8l"}],["path",{d:"M12 6h5a2 2 0 0 1 2 2v7",key:"1yj91y"}]],eL=Oe("git-pull-request-arrow",JR);/**
221
+ * @license lucide-react v0.544.0 - ISC
222
+ *
223
+ * This source code is licensed under the ISC license.
224
+ * See the LICENSE file in the root directory of this source tree.
225
+ */const tL=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]],nL=Oe("globe",tL);/**
226
+ * @license lucide-react v0.544.0 - ISC
227
+ *
228
+ * This source code is licensed under the ISC license.
229
+ * See the LICENSE file in the root directory of this source tree.
230
+ */const rL=[["path",{d:"m15 12-9.373 9.373a1 1 0 0 1-3.001-3L12 9",key:"1hayfq"}],["path",{d:"m18 15 4-4",key:"16gjal"}],["path",{d:"m21.5 11.5-1.914-1.914A2 2 0 0 1 19 8.172v-.344a2 2 0 0 0-.586-1.414l-1.657-1.657A6 6 0 0 0 12.516 3H9l1.243 1.243A6 6 0 0 1 12 8.485V10l2 2h1.172a2 2 0 0 1 1.414.586L18.5 14.5",key:"15ts47"}]],iL=Oe("hammer",rL);/**
231
+ * @license lucide-react v0.544.0 - ISC
232
+ *
233
+ * This source code is licensed under the ISC license.
234
+ * See the LICENSE file in the root directory of this source tree.
235
+ */const aL=[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]],sL=Oe("history",aL);/**
236
+ * @license lucide-react v0.544.0 - ISC
237
+ *
238
+ * This source code is licensed under the ISC license.
239
+ * See the LICENSE file in the root directory of this source tree.
240
+ */const oL=[["path",{d:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8",key:"5wwlr5"}],["path",{d:"M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"r6nss1"}]],lL=Oe("house",oL);/**
241
+ * @license lucide-react v0.544.0 - ISC
242
+ *
243
+ * This source code is licensed under the ISC license.
244
+ * See the LICENSE file in the root directory of this source tree.
245
+ */const cL=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]],uL=Oe("image",cL);/**
246
+ * @license lucide-react v0.544.0 - ISC
247
+ *
248
+ * This source code is licensed under the ISC license.
249
+ * See the LICENSE file in the root directory of this source tree.
250
+ */const dL=[["path",{d:"M5 3v14",key:"9nsxs2"}],["path",{d:"M12 3v8",key:"1h2ygw"}],["path",{d:"M19 3v18",key:"1sk56x"}]],fL=Oe("kanban",dL);/**
251
+ * @license lucide-react v0.544.0 - ISC
252
+ *
253
+ * This source code is licensed under the ISC license.
254
+ * See the LICENSE file in the root directory of this source tree.
255
+ */const hL=[["path",{d:"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z",key:"1s6t7t"}],["circle",{cx:"16.5",cy:"7.5",r:".5",fill:"currentColor",key:"w0ekpg"}]],pL=Oe("key-round",hL);/**
256
+ * @license lucide-react v0.544.0 - ISC
257
+ *
258
+ * This source code is licensed under the ISC license.
259
+ * See the LICENSE file in the root directory of this source tree.
260
+ */const mL=[["rect",{width:"7",height:"7",x:"3",y:"3",rx:"1",key:"1g98yp"}],["rect",{width:"7",height:"7",x:"14",y:"3",rx:"1",key:"6d4xhi"}],["rect",{width:"7",height:"7",x:"14",y:"14",rx:"1",key:"nxv5o0"}],["rect",{width:"7",height:"7",x:"3",y:"14",rx:"1",key:"1bb6yr"}]],PN=Oe("layout-grid",mL);/**
261
+ * @license lucide-react v0.544.0 - ISC
262
+ *
263
+ * This source code is licensed under the ISC license.
264
+ * See the LICENSE file in the root directory of this source tree.
265
+ */const gL=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]],We=Oe("loader-circle",gL);/**
266
+ * @license lucide-react v0.544.0 - ISC
267
+ *
268
+ * This source code is licensed under the ISC license.
269
+ * See the LICENSE file in the root directory of this source tree.
270
+ */const yL=[["path",{d:"M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719",key:"1sd12s"}]],ik=Oe("message-circle",yL);/**
271
+ * @license lucide-react v0.544.0 - ISC
272
+ *
273
+ * This source code is licensed under the ISC license.
274
+ * See the LICENSE file in the root directory of this source tree.
275
+ */const bL=[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]],BN=Oe("message-square",bL);/**
276
+ * @license lucide-react v0.544.0 - ISC
277
+ *
278
+ * This source code is licensed under the ISC license.
279
+ * See the LICENSE file in the root directory of this source tree.
280
+ */const xL=[["rect",{x:"16",y:"16",width:"6",height:"6",rx:"1",key:"4q2zg0"}],["rect",{x:"2",y:"16",width:"6",height:"6",rx:"1",key:"8cvhb9"}],["rect",{x:"9",y:"2",width:"6",height:"6",rx:"1",key:"1egb70"}],["path",{d:"M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3",key:"1jsf9p"}],["path",{d:"M12 12V8",key:"2874zd"}]],UN=Oe("network",xL);/**
281
+ * @license lucide-react v0.544.0 - ISC
282
+ *
283
+ * This source code is licensed under the ISC license.
284
+ * See the LICENSE file in the root directory of this source tree.
285
+ */const vL=[["path",{d:"M13.4 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-7.4",key:"re6nr2"}],["path",{d:"M2 6h4",key:"aawbzj"}],["path",{d:"M2 10h4",key:"l0bgd4"}],["path",{d:"M2 14h4",key:"1gsvsf"}],["path",{d:"M2 18h4",key:"1bu2t1"}],["path",{d:"M21.378 5.626a1 1 0 1 0-3.004-3.004l-5.01 5.012a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506z",key:"pqwjuv"}]],$N=Oe("notebook-pen",vL);/**
286
+ * @license lucide-react v0.544.0 - ISC
287
+ *
288
+ * This source code is licensed under the ISC license.
289
+ * See the LICENSE file in the root directory of this source tree.
290
+ */const wL=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M15 3v18",key:"14nvp0"}],["path",{d:"m8 9 3 3-3 3",key:"12hl5m"}]],kL=Oe("panel-right-close",wL);/**
291
+ * @license lucide-react v0.544.0 - ISC
292
+ *
293
+ * This source code is licensed under the ISC license.
294
+ * See the LICENSE file in the root directory of this source tree.
295
+ */const EL=[["path",{d:"m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551",key:"1miecu"}]],SL=Oe("paperclip",EL);/**
296
+ * @license lucide-react v0.544.0 - ISC
297
+ *
298
+ * This source code is licensed under the ISC license.
299
+ * See the LICENSE file in the root directory of this source tree.
300
+ */const NL=[["rect",{x:"14",y:"3",width:"5",height:"18",rx:"1",key:"kaeet6"}],["rect",{x:"5",y:"3",width:"5",height:"18",rx:"1",key:"1wsw3u"}]],_L=Oe("pause",NL);/**
301
+ * @license lucide-react v0.544.0 - ISC
302
+ *
303
+ * This source code is licensed under the ISC license.
304
+ * See the LICENSE file in the root directory of this source tree.
305
+ */const jL=[["path",{d:"M13 21h8",key:"1jsn5i"}],["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}]],Ph=Oe("pen-line",jL);/**
306
+ * @license lucide-react v0.544.0 - ISC
307
+ *
308
+ * This source code is licensed under the ISC license.
309
+ * See the LICENSE file in the root directory of this source tree.
310
+ */const CL=[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]],AL=Oe("pencil",CL);/**
311
+ * @license lucide-react v0.544.0 - ISC
312
+ *
313
+ * This source code is licensed under the ISC license.
314
+ * See the LICENSE file in the root directory of this source tree.
315
+ */const TL=[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]],Vu=Oe("play",TL);/**
316
+ * @license lucide-react v0.544.0 - ISC
317
+ *
318
+ * This source code is licensed under the ISC license.
319
+ * See the LICENSE file in the root directory of this source tree.
320
+ */const ML=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]],pr=Oe("plus",ML);/**
321
+ * @license lucide-react v0.544.0 - ISC
322
+ *
323
+ * This source code is licensed under the ISC license.
324
+ * See the LICENSE file in the root directory of this source tree.
325
+ */const DL=[["path",{d:"M15.39 4.39a1 1 0 0 0 1.68-.474 2.5 2.5 0 1 1 3.014 3.015 1 1 0 0 0-.474 1.68l1.683 1.682a2.414 2.414 0 0 1 0 3.414L19.61 15.39a1 1 0 0 1-1.68-.474 2.5 2.5 0 1 0-3.014 3.015 1 1 0 0 1 .474 1.68l-1.683 1.682a2.414 2.414 0 0 1-3.414 0L8.61 19.61a1 1 0 0 0-1.68.474 2.5 2.5 0 1 1-3.014-3.015 1 1 0 0 0 .474-1.68l-1.683-1.682a2.414 2.414 0 0 1 0-3.414L4.39 8.61a1 1 0 0 1 1.68.474 2.5 2.5 0 1 0 3.014-3.015 1 1 0 0 1-.474-1.68l1.683-1.682a2.414 2.414 0 0 1 3.414 0z",key:"w46dr5"}]],OL=Oe("puzzle",DL);/**
326
+ * @license lucide-react v0.544.0 - ISC
327
+ *
328
+ * This source code is licensed under the ISC license.
329
+ * See the LICENSE file in the root directory of this source tree.
330
+ */const RL=[["path",{d:"M16.247 7.761a6 6 0 0 1 0 8.478",key:"1fwjs5"}],["path",{d:"M19.075 4.933a10 10 0 0 1 0 14.134",key:"ehdyv1"}],["path",{d:"M4.925 19.067a10 10 0 0 1 0-14.134",key:"1q22gi"}],["path",{d:"M7.753 16.239a6 6 0 0 1 0-8.478",key:"r2q7qm"}],["circle",{cx:"12",cy:"12",r:"2",key:"1c9p78"}]],FN=Oe("radio",RL);/**
331
+ * @license lucide-react v0.544.0 - ISC
332
+ *
333
+ * This source code is licensed under the ISC license.
334
+ * See the LICENSE file in the root directory of this source tree.
335
+ */const LL=[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]],ga=Oe("refresh-cw",LL);/**
336
+ * @license lucide-react v0.544.0 - ISC
337
+ *
338
+ * This source code is licensed under the ISC license.
339
+ * See the LICENSE file in the root directory of this source tree.
340
+ */const IL=[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]],Rb=Oe("rotate-ccw",IL);/**
341
+ * @license lucide-react v0.544.0 - ISC
342
+ *
343
+ * This source code is licensed under the ISC license.
344
+ * See the LICENSE file in the root directory of this source tree.
345
+ */const zL=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M21 9H3",key:"1338ky"}],["path",{d:"M21 15H3",key:"9uk58r"}]],PL=Oe("rows-3",zL);/**
346
+ * @license lucide-react v0.544.0 - ISC
347
+ *
348
+ * This source code is licensed under the ISC license.
349
+ * See the LICENSE file in the root directory of this source tree.
350
+ */const BL=[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]],Oi=Oe("save",BL);/**
351
+ * @license lucide-react v0.544.0 - ISC
352
+ *
353
+ * This source code is licensed under the ISC license.
354
+ * See the LICENSE file in the root directory of this source tree.
355
+ */const UL=[["path",{d:"M15 12h-5",key:"r7krc0"}],["path",{d:"M15 8h-5",key:"1khuty"}],["path",{d:"M19 17V5a2 2 0 0 0-2-2H4",key:"zz82l3"}],["path",{d:"M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3",key:"1ph1d7"}]],qN=Oe("scroll-text",UL);/**
356
+ * @license lucide-react v0.544.0 - ISC
357
+ *
358
+ * This source code is licensed under the ISC license.
359
+ * See the LICENSE file in the root directory of this source tree.
360
+ */const $L=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],co=Oe("search",$L);/**
361
+ * @license lucide-react v0.544.0 - ISC
362
+ *
363
+ * This source code is licensed under the ISC license.
364
+ * See the LICENSE file in the root directory of this source tree.
365
+ */const FL=[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]],HN=Oe("settings",FL);/**
366
+ * @license lucide-react v0.544.0 - ISC
367
+ *
368
+ * This source code is licensed under the ISC license.
369
+ * See the LICENSE file in the root directory of this source tree.
370
+ */const qL=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],KN=Oe("shield-check",qL);/**
371
+ * @license lucide-react v0.544.0 - ISC
372
+ *
373
+ * This source code is licensed under the ISC license.
374
+ * See the LICENSE file in the root directory of this source tree.
375
+ */const HL=[["path",{d:"m12.5 17-.5-1-.5 1h1z",key:"3me087"}],["path",{d:"M15 22a1 1 0 0 0 1-1v-1a2 2 0 0 0 1.56-3.25 8 8 0 1 0-11.12 0A2 2 0 0 0 8 20v1a1 1 0 0 0 1 1z",key:"1o5pge"}],["circle",{cx:"15",cy:"12",r:"1",key:"1tmaij"}],["circle",{cx:"9",cy:"12",r:"1",key:"1vctgf"}]],KL=Oe("skull",HL);/**
376
+ * @license lucide-react v0.544.0 - ISC
377
+ *
378
+ * This source code is licensed under the ISC license.
379
+ * See the LICENSE file in the root directory of this source tree.
380
+ */const GL=[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]],Ll=Oe("sparkles",GL);/**
381
+ * @license lucide-react v0.544.0 - ISC
382
+ *
383
+ * This source code is licensed under the ISC license.
384
+ * See the LICENSE file in the root directory of this source tree.
385
+ */const VL=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]],Lb=Oe("square",VL);/**
386
+ * @license lucide-react v0.544.0 - ISC
387
+ *
388
+ * This source code is licensed under the ISC license.
389
+ * See the LICENSE file in the root directory of this source tree.
390
+ */const YL=[["path",{d:"M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z",key:"r04s7s"}]],GN=Oe("star",YL);/**
391
+ * @license lucide-react v0.544.0 - ISC
392
+ *
393
+ * This source code is licensed under the ISC license.
394
+ * See the LICENSE file in the root directory of this source tree.
395
+ */const QL=[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]],VN=Oe("terminal",QL);/**
396
+ * @license lucide-react v0.544.0 - ISC
397
+ *
398
+ * This source code is licensed under the ISC license.
399
+ * See the LICENSE file in the root directory of this source tree.
400
+ */const WL=[["path",{d:"M10 2h4",key:"n1abiw"}],["path",{d:"M12 14v-4",key:"1evpnu"}],["path",{d:"M4 13a8 8 0 0 1 8-7 8 8 0 1 1-5.3 14L4 17.6",key:"1ts96g"}],["path",{d:"M9 17H4v5",key:"8t5av"}]],XL=Oe("timer-reset",WL);/**
401
+ * @license lucide-react v0.544.0 - ISC
402
+ *
403
+ * This source code is licensed under the ISC license.
404
+ * See the LICENSE file in the root directory of this source tree.
405
+ */const ZL=[["line",{x1:"10",x2:"14",y1:"2",y2:"2",key:"14vaq8"}],["line",{x1:"12",x2:"15",y1:"14",y2:"11",key:"17fdiu"}],["circle",{cx:"12",cy:"14",r:"8",key:"1e1u0o"}]],JL=Oe("timer",ZL);/**
406
+ * @license lucide-react v0.544.0 - ISC
407
+ *
408
+ * This source code is licensed under the ISC license.
409
+ * See the LICENSE file in the root directory of this source tree.
410
+ */const e3=[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]],fi=Oe("trash-2",e3);/**
411
+ * @license lucide-react v0.544.0 - ISC
412
+ *
413
+ * This source code is licensed under the ISC license.
414
+ * See the LICENSE file in the root directory of this source tree.
415
+ */const t3=[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]],n3=Oe("triangle-alert",t3);/**
416
+ * @license lucide-react v0.544.0 - ISC
417
+ *
418
+ * This source code is licensed under the ISC license.
419
+ * See the LICENSE file in the root directory of this source tree.
420
+ */const r3=[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]],YN=Oe("upload",r3);/**
421
+ * @license lucide-react v0.544.0 - ISC
422
+ *
423
+ * This source code is licensed under the ISC license.
424
+ * See the LICENSE file in the root directory of this source tree.
425
+ */const i3=[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]],QN=Oe("users",i3);/**
426
+ * @license lucide-react v0.544.0 - ISC
427
+ *
428
+ * This source code is licensed under the ISC license.
429
+ * See the LICENSE file in the root directory of this source tree.
430
+ */const a3=[["rect",{width:"8",height:"8",x:"3",y:"3",rx:"2",key:"by2w9f"}],["path",{d:"M7 11v4a2 2 0 0 0 2 2h4",key:"xkn7yn"}],["rect",{width:"8",height:"8",x:"13",y:"13",rx:"2",key:"1cgmvn"}]],Ib=Oe("workflow",a3);/**
431
+ * @license lucide-react v0.544.0 - ISC
432
+ *
433
+ * This source code is licensed under the ISC license.
434
+ * See the LICENSE file in the root directory of this source tree.
435
+ */const s3=[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z",key:"1ngwbx"}]],WN=Oe("wrench",s3);/**
436
+ * @license lucide-react v0.544.0 - ISC
437
+ *
438
+ * This source code is licensed under the ISC license.
439
+ * See the LICENSE file in the root directory of this source tree.
440
+ */const o3=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],Nn=Oe("x",o3);/**
441
+ * @license lucide-react v0.544.0 - ISC
442
+ *
443
+ * This source code is licensed under the ISC license.
444
+ * See the LICENSE file in the root directory of this source tree.
445
+ */const l3=[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]],c3=Oe("zap",l3),u3={"app.title":"SPS Console","nav.chat":"Chat","nav.projects":"Projects","nav.board":"Board","nav.workers":"Workers","nav.logs":"Logs","nav.skills":"Skills","nav.system":"System","nav.processes":"Processes","nav.audit":"Audit Log","nav.memory":"Memory","nav.plugins":"Plugins","plugins.h1":"Plugins 🧩","plugins.desc":"Global plugin toggles. Applies to newly dispatched cards.","plugins.tab.memory":"Memory","plugins.tab.channel":"Channel","plugins.tab.model":"Model","plugins.tab.tool":"Tool","plugins.comingSoon":"Coming soon","plugins.model.title":"Agent models","plugins.model.desc":"Configure both agents (global). worker=claude executes, review·designer=openai supervises+orchestrates.","plugins.model.worker":"Worker (executes / claude)","plugins.model.reviewer":"Review·Designer (supervisor / openai)","plugins.model.provider":"Provider","plugins.model.model":"Model","plugins.model.official":"Official claude (default)","plugins.model.save":"Save","plugins.model.saved":"Saved","plugins.model.error":"Save failed","nav.arrange":"Arrange","arrange.h1":"SmartArrange 🧭","arrange.project":"Project","arrange.none":'Not started — click "Start" above to launch (task list appears in seconds; approve to run). If the dropdown is empty, create a project in SmartArrange mode first.',"arrange.start":"Start","arrange.stop":"Stop","arrange.startErr":"Start/stop failed","arrange.view":"Toggle canvas view","arrange.viewFree":"Free","arrange.viewLane":"Lanes","arrange.starting":"Starting — breaking down the task list…","arrange.planning":"Breaking down the task list…","arrange.orchestrating":"Orchestrating…","arrange.status":"Status","arrange.goal":"Goal","arrange.plan":"Task list + card chain","arrange.approve":"Approve plan","arrange.approveErr":"Approve failed","arrange.tasks":"Task list","arrange.collapse":"Collapse","arrange.expand":"Expand task list","arrange.noCards":"No cards yet — waiting for the orchestrator to dispatch (starts after approval).","arrange.cardPrompt":"Card prompt","arrange.cardSkills":"Skills","arrange.cardTask":"Task","arrange.cardLog":"Log","arrange.close":"Close","arrange.cardsCount":"cards","nav.aria":"Main navigation","memory.sub":"Cross-project memory · agentmemory proxied behind console auth","memory.searchPlaceholder":"Search memory… (e.g. how to fix the art race)","memory.search":"Search","memory.results":"Results","memory.rawHint":"(raw observation · distilled lessons appear after live capture + compression)","memory.sessions":"Recent sessions","memory.empty":"No memory yet · accumulates after live capture (P1)","processes.title":"Processes","processes.subtitle":"Claude processes launched by SPS ACP (others, e.g. your own session, are not shown)","processes.refresh":"Refresh","processes.aliveCount":"{n} running","processes.col.kind":"Type","processes.col.slot":"Slot","processes.col.project":"Project","processes.col.state":"State","processes.col.memory":"Memory","processes.col.action":"Action","processes.empty":"No SPS processes","processes.filter.all":"All","processes.filter.alive":"Running","processes.filter.offline":"Offline","processes.kind.all":"All types","processes.kind.worker":"Worker","processes.kind.chat":"Chat","processes.kill":"Kill","processes.killConfirm":"Kill process {slot}?","audit.title":"Audit Log","audit.subtitle":"Project lifecycle: create / modify / delete","audit.refresh":"Refresh","audit.filter.all":"All","audit.action.create":"Create","audit.action.modify":"Modify","audit.action.delete":"Delete","audit.action.daemon":"Daemon","audit.col.time":"Time","audit.col.action":"Action","audit.col.project":"Project","audit.col.detail":"Detail","audit.empty":"No audit records","lang.toggle.aria":"Switch interface language","lang.en":"EN","lang.zh":"中","status.server":"server","status.offline":"offline","status.sse.open":"SSE","status.sse.connecting":"SSE·connect","status.sse.down":"SSE·down","status.pipelines.tooltip":"Active pipelines","status.workers.tooltip":"Active workers","status.pipeline.unit":"pipeline","status.worker.unit":"worker","common.save":"Save","common.cancel":"Cancel","common.delete":"Delete","common.confirm":"Confirm","common.create":"Create","common.edit":"Edit","common.close":"Close","common.loading":"Loading…","common.error":"Error","common.retry":"Retry","common.empty":"Nothing here yet","common.search":"Search","common.refresh":"Refresh","common.copy":"Copy","common.copied":"Copied","common.yes":"Yes","common.no":"No","common.required":"Required","common.optional":"Optional","common.ok":"OK","projects.title":"Projects 🎯","projects.count":"{count} local project(s)","projects.refresh.hint":"Click refresh to retry","projects.new":"New project","projects.selectHint":"Select a project on the left to see its details.","projects.sort.label":"Sort by","projects.sort.activity":"Activity","projects.sort.date":"Modified","projects.sort.name":"Name","projects.load.failed":"Failed to load","projects.empty.title":"No projects yet ✨","projects.empty.hint":"Run {cmd} to create your first project.","newProject.title":"New project","newProject.subtitle":"Set up a project; the worker will run automatically","newProject.field.mode":"Execution mode","newProject.field.mode.pipeline":"Auto pipeline","newProject.field.mode.pipelineDesc":"Fixed-stage pipeline, claude worker runs cards","newProject.field.mode.smart":"SmartArrange","newProject.field.mode.smartDesc":"OpenAI monitor dispatches cards + claude worker","newProject.field.mode.pipelineHint":"Classic mode: you create cards, worker runs them by stage.","newProject.field.mode.smartHint":"Give one goal; the OpenAI monitor probes output each round, dispatches task cards dynamically, drives claude to finish.","newProject.field.goal":"Goal (GOAL.md)","newProject.field.goal.hint":"Written to docs/GOAL.md; SmartArrange derives the task list from it. Missing → tick skips the project.","newProject.field.goal.placeholder":"e.g. Build a pure-frontend, single-file Snake browser game…","newProject.field.name":"Project name","newProject.field.name.help":"Lowercase letters, digits, _ and - only","newProject.field.dir":"Parent directory","newProject.field.dir.preview":"Project will be created at →","newProject.field.dir.help":"Absolute path; will be created if missing","newProject.field.branch":"Merge target branch","newProject.field.branch.help":"Default: main","newProject.field.maxWorkers":"Max concurrent workers","newProject.field.maxWorkers.help":"Per-project worker count (1 recommended)","newProject.field.ackTimeout":"ACK timeout (seconds)","newProject.field.ackTimeout.help":"How long to wait for the worker to ACK (default 300)","newProject.field.gitlabProject":"GitLab/GitHub remote","newProject.field.gitlabProject.help":"Format: user/repo (optional)","newProject.field.matrixRoom":"Matrix room ID","newProject.field.matrixRoom.help":"Optional, falls back to global default","newProject.field.git":"Enable git","newProject.field.git.help":"Off → non-code project, no commit/push/MR steps","newProject.submit":"Create project","newProject.creating":"Creating…","newProject.created":"Project created","newProject.error.dirRequired":"Project directory is required","newProject.dir.browse":"Browse","newProject.dir.browseAria":"Pick directory","newProject.back":"Back","newProject.back.aria":"Back to projects","newProject.field.name.placeholder":"e.g. acme-web","newProject.field.name.example":"Letters, digits, underscore, hyphen. e.g. acme-web","newProject.field.name.invalid":"Name only allows a-z A-Z 0-9 _ -","newProject.field.dir.long":"Absolute path of the PARENT directory. The project gets its own <name> subdir created under it (like git clone), avoiding accidental use of a shared directory.","newProject.field.dir.placeholder":"/home/you/projects","newProject.field.dir.createIfMissing":"Auto-create if missing (recommended — otherwise .claude/ install gets skipped)","newProject.field.dir.pickerTitle":"Pick project directory","newProject.field.maxWorkers.short":"Max workers","newProject.field.ackTimeout.minutes":"ACK timeout (min)","newProject.field.ackTimeout.minutes.help":"How long after dispatch before the worker is considered failed if no ACK","newProject.field.git.label":"Enable Git (worker auto commit + push)","newProject.field.git.detail":"When off, the worker only does the task, no version control — fits docs / data-processing non-code projects.","newProject.field.git.branch":"Merge branch","newProject.field.gitlabProject.label":"Git remote project path","newProject.field.gitlabProject.help2":"Like user/repo. Empty = skip remote API (commit/push local only)","newProject.field.gitlabProject.placeholder":"user/repo","newProject.field.gitlabProjectId":"GitLab project ID","newProject.field.gitlabProjectId.help":"Number; leave blank for GitHub","newProject.field.gitlabProjectId.placeholder":"42","newProject.section.notifications":"Notifications","newProject.field.matrixRoom.label":"Matrix room ID","newProject.field.matrixRoom.help2":"Empty = use global config; blank = no notifications","newProject.field.matrixRoom.placeholder":"!abc:matrix.example.com","newProject.error.create.title":"Create failed","projectDetail.tab.pipeline":"Pipeline","projectDetail.tab.conf":"Conf","projectDetail.tab.delete":"Delete project","projectDetail.delete.title":"Delete this project","projectDetail.delete.warn":"This will remove the project conf, runtime, and worktrees. The repository under {repoDir} is untouched.","projectDetail.delete.confirmLabel":"Type the project name to confirm","projectDetail.delete.button":"Delete project","projectDetail.delete.deleting":"Deleting…","projectDetail.lastActivity":"Last activity","projectDetail.notFound":"Project not found","projectDetail.notFoundHint":"It may have been deleted or renamed.","projectDetail.backToList":"Back to projects","pipeline.editor.title":"Pipeline YAML","pipeline.editor.savedAt":"Saved {time}","pipeline.editor.unsaved":"Unsaved changes","pipeline.editor.save":"Save","pipeline.editor.saving":"Saving…","pipeline.editor.reload":"Reload from disk","pipeline.editor.discard.title":"Discard unsaved changes?","pipeline.editor.discard.body":"Your edits will be lost.","pipeline.editor.errors":"YAML parse errors","pipeline.editor.list":"Pipelines","pipeline.editor.list.add":"New pipeline","pipeline.editor.list.delete":"Delete pipeline","pipeline.editor.list.use":"Use as active","pipeline.editor.list.activeBadge":"active","pipeline.editor.list.sample":"sample","pipeline.editor.delete.confirm.title":"Delete pipeline {name}?","pipeline.editor.delete.confirm.body":"This action cannot be undone.","pipeline.newDialog.title":"New pipeline","pipeline.newDialog.field.filename":"Filename","pipeline.newDialog.field.filename.help":"Letters, digits, _ and - only; .yaml will be appended","pipeline.newDialog.field.copyFrom":"Copy from","pipeline.newDialog.copyFrom.sample":"sample template","pipeline.newDialog.copyFrom.active":"current active","pipeline.newDialog.create":"Create","projectDetail.tab.overview":"Overview","projectDetail.tab.config":"Config","projectDetail.tab.pipelines":"Pipelines","projectDetail.tab.danger":"Danger zone","projectDetail.openBoard":"Board","projectDetail.overview.repoDir":"Repo path","projectDetail.overview.pmBackend":"PM backend","projectDetail.overview.agent":"Agent","projectDetail.overview.cards":"Cards","projectDetail.overview.cards.value":"{total} total · {inprogress} in progress · {done} done","projectDetail.overview.workers":"Workers","projectDetail.overview.workers.value":"{total} total ({active} active)","projectDetail.overview.pipeline":"Pipeline","projectDetail.overview.lastActivity":"Last activity","projectDetail.overview.notFound":"Project {name} not found or unreadable.","projectDetail.config.confDirty":"● Unsaved changes","projectDetail.config.reload":"Reload","projectDetail.config.save":"Save","projectDetail.config.saveAria":"Save config","projectDetail.config.editorAria":"conf file editor","projectDetail.config.error.conflict.title":"Config was modified elsewhere","projectDetail.config.error.conflict.body":"The conf file was changed while you were editing. Click Reload, then re-edit.","projectDetail.config.error.save.title":"Save failed","projectDetail.config.error.load":"Load failed: {detail}","projectDetail.pipelines.title":"Pipelines","projectDetail.pipelines.add":"New pipeline","projectDetail.pipelines.empty":'No pipeline files yet. Click "New pipeline" to start.',"projectDetail.pipelines.activeBadge":"active","projectDetail.pipelines.edit":"Edit","projectDetail.pipelines.editAria":"Edit {name}","projectDetail.pipelines.switch":"Switch","projectDetail.pipelines.switchAria":"Switch to {name}","projectDetail.pipelines.switch.confirm.title":"Switch to {name}","projectDetail.pipelines.switch.confirm.body":"The current project.yaml will be overwritten with the contents of {name}. Continue?","projectDetail.pipelines.switch.confirm.button":"Switch","projectDetail.pipelines.switch.error":"Switch failed","projectDetail.pipelines.delete.confirm.title":"Delete {name}","projectDetail.pipelines.delete.confirm.body":"This pipeline file will be permanently deleted.","projectDetail.pipelines.delete.error":"Delete failed","projectDetail.pipelines.deleteAria":"Delete {name}","projectDetail.pipelines.create.error":"Create failed","projectDetail.danger.title":"Delete project","projectDetail.danger.body":"This clears {path} (all cards, runtime, logs).","projectDetail.danger.includeClaude.label":"Also clear repo's .claude/","projectDetail.danger.includeClaude.note":"The repo itself is untouched; only this directory is cleaned.","projectDetail.danger.confirmPrompt":"Type the project name {name} to confirm:","projectDetail.danger.deleteAria":"Permanently delete project","projectDetail.danger.deleteButton":"Permanently delete","projectDetail.danger.deleted.title":"Deleted","projectDetail.danger.deleted.bodyWithList":`Project deleted. Also cleaned up:
446
+ {paths}`,"projectDetail.danger.deleted.body":"Project deleted.","projectDetail.danger.error":"Delete failed","pipelineEditor.close":"Close","pipelineEditor.error.conflict.title":"File was modified elsewhere","pipelineEditor.error.yaml.title":"YAML syntax error","pipelineEditor.error.save.title":"Save failed","pipelineEditor.error.serialize.title":"YAML serialize failed","pipelineEditor.error.load":"Load failed: {detail}","pipelineEditor.mode.structured":"Structured","pipelineEditor.mode.yaml":"Raw YAML","pipelineEditor.parseError.prefix":"YAML parse: {detail}","pipelineEditor.activeWarning":"⚠ This is the active pipeline — saving will take effect on the next tick","pipelineEditor.yamlAria":"pipeline YAML editor","pipelineEditor.status.unsaved":"● Unsaved","pipelineEditor.status.saved":"Saved","pipelineEditor.status.noChanges":"No changes","pipelineEditor.reload":"Reload","pipelineEditor.save":"Save","pipelineEditor.saveAria":"Save pipeline","pipelineEditor.activeBadge":"active","pipelineEditor.modeHint":"project = event-driven pipeline (default) · steps = sequential script","pipelineEditor.stages.heading":"Stages ({count})","pipelineEditor.stages.add":"Add stage","pipelineEditor.stages.empty":'No stages yet. Click "Add stage" to start.',"pipelineEditor.stage.name.hint":"Unique stage name","pipelineEditor.stage.profile.hint":"skill profile, may be empty","pipelineEditor.stage.cardState.hint":"Card state during this stage","pipelineEditor.stage.timeout.hint":"Optional, e.g. 30m 2h","pipelineEditor.stage.trigger.hint":"Trigger condition, blank uses default","pipelineEditor.stage.onComplete.hint":"Action on success","pipelineEditor.stage.onFail.action.hint":"Action on failure, e.g. label NEEDS-FIX","pipelineEditor.stage.onFail.comment.hint":"Comment written on the card","pipelineEditor.stage.halt.note":"(stops pipeline on failure; uncheck to continue with next card)","pipelineEditor.stage.moveUp":"Move up","pipelineEditor.stage.moveDown":"Move down","pipelineEditor.stage.remove":"Remove stage","newPipelineDialog.title":"New pipeline","newPipelineDialog.field.filename.label":"Filename","newPipelineDialog.field.filename.placeholder":"e.g. ci","newPipelineDialog.field.filename.help":"Will be saved as {filename}. Only a-z A-Z 0-9 _ - allowed; an existing file errors 409.","newPipelineDialog.section.template":"Initial content","newPipelineDialog.template.blank.label":"Blank template","newPipelineDialog.template.blank.desc":"Minimal 1-stage pipeline (develop → Done)","newPipelineDialog.template.sample.label":"Tutorial template","newPipelineDialog.template.sample.desc":"Copied from sample.yaml.example (annotated, every field explained)","newPipelineDialog.template.sample.unavailable":"sample.yaml.example does not exist","newPipelineDialog.template.active.label":"Copy current active","newPipelineDialog.template.active.desc":"Copied from project.yaml (build on the current config)","newPipelineDialog.template.active.unavailable":"project.yaml does not exist","newPipelineDialog.create.aria":"Create pipeline","newPipelineDialog.cancel":"Cancel","board.title":"Board ✨","board.title.bare":"Board","board.subtitle":"{name} · {cards} cards · {workers} workers active","board.pickPrompt.title":"Pick a project 🎯","board.pickPrompt.body":"The board is per-project. Pick one to start:","board.action.start":"Start","board.action.stop":"Stop","board.action.startAria":"Start pipeline","board.action.stopAria":"Stop pipeline","board.action.startError":"Failed to start pipeline","board.action.stopError":"Failed to stop pipeline","board.action.reset":"Reset","board.action.resetError":"Reset failed","board.action.reset.confirm.title":"Reset the entire pipeline","board.action.reset.confirm.body":"This clears all cards’ run state, worker markers, and branches. Cannot be undone.","board.action.reset.confirm.button":"Reset all","board.action.newCard":"New card","board.action.newCard.error":"Failed to create card","board.action.moveCard.error":"Failed to move card","board.search.placeholder":"Search title / skill / label…","board.search.aria":"Search cards","board.filter.clear":"Clear","board.filter.clearAria":"Clear filters","board.filter.aria":"Filter by {label}","board.filter.clearSelection":"Clear selection","board.error.loadCards":"Failed to load cards","board.col.planning":"Planning","board.col.backlog":"Backlog","board.col.todo":"Todo","board.col.inprogress":"Inprogress","board.col.qa":"QA / Review","board.col.done":"Done","kanban.checklist.label":"Checklist {done}/{total}","kanban.checklist.more":"… {count} more","kanban.column.empty":"— empty —","kanban.time.justNow":"just now","kanban.time.minutes":"{n}m ago","kanban.time.hours":"{n}h ago","kanban.time.days":"{n}d ago","newCard.title":"New card","newCard.field.title":"Title *","newCard.field.title.placeholder":"e.g. Add GitHub OAuth login","newCard.field.title.help":"Short, clear goal (<200 chars)","newCard.field.description":"Description","newCard.field.description.placeholder":"User story, requirements, acceptance criteria, references… Claude reads this when starting","newCard.field.description.help":"Markdown supported. If empty, Claude only sees the title.","newCard.field.skills":"Skills","newCard.field.skills.help":"Pick which skills get loaded (via frontmatter `skills:`). Optional — worker falls back to project-level skills.","newCard.field.skills.loading":"Loading skills…","newCard.field.skills.error":"Failed to load skills (creation still works): {detail}","newCard.field.skills.selected":"{count} selected: {names}","newCard.field.dispatch":"Dispatch","newCard.field.dispatch.label":"Dispatch immediately (go straight to Backlog)","newCard.field.dispatch.help":"Default off: card lands in Planning to wait; drag to Backlog when ready. On: skip Planning, the next tick assigns a worker.","newCard.create.aria":"Create card","cardDetail.loading":"Loading…","cardDetail.error.load":"Failed to load card","cardDetail.tabs.overview":"Overview","cardDetail.tabs.body":"Description","cardDetail.tabs.checklist":"Checklist","cardDetail.tabs.history":"History","cardDetail.tabs.actions":"Actions","cardDetail.field.state":"State","cardDetail.field.skills":"Skills","cardDetail.field.labels":"Labels","cardDetail.field.branch":"Branch","cardDetail.field.assignee":"Assignee","cardDetail.field.created":"Created","cardDetail.field.updated":"Updated","cardDetail.field.empty":"—","cardDetail.actions.delete":"Delete card","cardDetail.actions.delete.confirm.title":"Delete card #{seq}","cardDetail.actions.delete.confirm.body":"This card will be permanently deleted.","cardDetail.actions.delete.error":"Delete failed","cardDetail.actions.update.error":"Update failed","cardDetail.body.empty":"No description","cardDetail.checklist.empty":"No checklist","cardDetail.checklist.progress":"Progress {done}/{total}","cardDetail.history.empty":"No history","cardDetail.notFound":"Card #{seq} not found","cardDetail.copy.aria":"Copy seq","cardDetail.close.aria":"Close","cardDetail.save":"Save","cardDetail.saving":"Saving…","workers.title":"Workers 👷","workers.summary":"Across {projects} projects · {running} running · {starting} starting · {stuck} stuck · {crashed} crashed · {idle} idle","workers.summary.stuck":"{n} stuck","workers.summary.crashed":"{n} crashed","workers.refresh.aria":"Refresh","workers.refresh":"Refresh","workers.error.load":"Load failed: {detail}","workers.empty.hint":"Click a project / worker to see details","logs.title":"Logs 📜","logs.subtitle.allProjects":"All projects","logs.subtitle.project":"{name} live tail","logs.filter.errors":"Errors only","logs.filter.errors.aria":"Show errors only","logs.filter.search.placeholder":"Filter messages…","logs.empty":"No logs yet — waiting for events","logs.error.load":"Failed to load logs","logs.refresh":"Refresh","logs.refresh.aria":"Refresh logs","logs.scroll.bottom.aria":"Scroll to bottom","logs.scroll.pause":"Paused (autoscroll off)","logs.scroll.resume":"Resume autoscroll","logs.subtitle.allProjectsCount":"All projects ({count})","logs.poll.5s":"5s polling","logs.paused":"⏸ PAUSED","logs.mode.live":"Live","logs.mode.history":"History","logs.history.startAria":"Query start time","logs.history.queryAria":"Query","logs.history.query":"Query","logs.filter.project.aria":"Filter project","logs.filter.project.all":"All projects","logs.filter.keyword.placeholder":"Filter keyword…","logs.filter.keyword.aria":"Filter logs","logs.empty.match":"No matching logs","skills.title":"Skills 🧠","skills.subtitle":"Skills shared across projects (managed via `sps skill ...`)","skills.empty.title":"No skills yet","skills.empty.hint":"Run {cmd} to sync the bundled skills.","skills.linked.tooltip":"linked into this project","skills.frozen.tooltip":"frozen (per-project copy)","skills.category.all":"All","skills.category.language":"language","skills.category.end":"end","skills.category.persona":"persona","skills.category.workflow":"workflow","skills.category.other":"other","skills.subtitleCount":"{count} user-level skill(s)","skills.search.placeholder":"Search skill…","skills.search.aria":"Search skill","skillDetail.actionFailed":"{label} failed","skillDetail.unfreezeAction":"Unfreeze","skillDetail.freezeAction":"Freeze","skillDetail.removeAction":"Remove","skillDetail.removeConfirm.title":"Remove {name} from {project}","skillDetail.removeConfirm.body":"The skill link will be removed; the project will not see this skill on next run.","skillDetail.removeConfirm.button":"Remove","skillDetail.unfreezeConfirm.title":"Unfreeze {name} @ {project}","skillDetail.unfreezeConfirm.body":"Local changes to this skill will be overwritten with the latest shared version.","skillDetail.unfreezeConfirm.button":"Unfreeze","skillDetail.close.aria":"Close","skillDetail.loading":"Loading…","skillDetail.error.load":"Load failed: {detail}","skillDetail.section.projects":"Per-project link status","skillDetail.section.empty":"No projects yet. Create one first.","skillDetail.section.preview":"SKILL.md preview","skillDetail.toggleSection.aria":"{action} {file}","skillDetail.expand":"Expand","skillDetail.collapse":"Collapse","system.title":"System 🛠","system.subtitle":"Global config + diagnostics + upgrades","system.section.env":"Global env","system.section.env.help":"Stored in ~/.coral/env (mode 600). Used by all projects.","system.section.env.save":"Save env","system.section.env.error.conflict":"env was modified elsewhere","system.section.env.error.save":"Failed to save env","system.section.env.error.load":"Failed to load env","system.section.env.dirtyDot":"● Unsaved","system.section.env.aria":"env editor","system.section.env.reload":"Reload","system.section.upgrade":"Upgrade","system.section.upgrade.current":"Current: v{version}","system.section.upgrade.latest":"Latest on npm: v{version}","system.section.upgrade.uptodate":"Up to date","system.section.upgrade.update":"Upgrade now","system.section.upgrade.upgrading":"Upgrading…","system.section.upgrade.checking":"Checking npm…","system.section.upgrade.checkError":"Check failed: {detail}","system.section.upgrade.upgradeError":"Upgrade failed: {detail}","system.section.upgrade.upgradeError.title":"Upgrade failed","system.section.upgrade.command":"Or run in terminal: {cmd}","system.section.upgrade.runningPipelines":"Pipelines running — stop them first: {projects}","system.section.diagnostics":"Diagnostics","system.section.diagnostics.help":"Run sps doctor across all projects, see failures at a glance","system.section.diagnostics.run":"Run diagnostics","system.section.diagnostics.running":"Running…","system.section.diagnostics.empty":"No projects","system.section.diagnostics.checkAria":"Check {project}","system.section.diagnostics.statusOk":"OK","system.section.diagnostics.statusFail":"Issues","system.section.diagnostics.error":"Diagnostic failed: {detail}","system.h1":"System ⚙️","system.runtime":"Runtime","system.memory.title":"Memory backend","system.memory.desc":"Global setting: which backend workers read/write memory through. Applies to newly dispatched cards.","system.memory.provider":"Backend","system.memory.url":"Custom URL","system.memory.url.placeholder":"http://127.0.0.1:3111","system.memory.save":"Save","system.memory.save.aria":"Save memory backend setting","system.memory.saved":"Saved","system.memory.error":"Save failed","system.memory.opt.none":"Off (none)","system.memory.opt.builtin":"Local file memory (builtin)","system.memory.opt.agentmemory":"agentmemory (semantic)","system.memory.opt.custom":"Custom REST (custom)","system.env.title.code":"~/.coral/env","system.env.title.prefix":"Global config ","system.env.edit.aria":"Edit env file","system.env.edit.button":"Edit","system.env.editing.label":"⚠ Editing","system.env.empty.before":'env file does not exist. Click "Edit" or run ',"system.env.empty.after":" in the terminal.","system.env.warning":"⚠ This file contains plaintext credentials. Keep mode 0600 on save.","system.env.aria":"env editor","system.env.dirtyMark":" · ● Unsaved","system.env.cancel":"Cancel","system.env.save":"Save","system.env.save.aria":"Save env","system.env.error.conflict.title":"env was modified elsewhere","system.env.error.save.title":"Save failed","system.env.error.conflict.body":"Cancel and reopen the editor.","system.upgrade.title":"Version","system.upgrade.checkLatest.aria":"Check latest version","system.upgrade.checkUpdate":"Check update","system.upgrade.label.current":"sps-cli (current)","system.upgrade.label.latest":"npm (latest)","system.upgrade.latestPill":"latest","system.upgrade.button.upgradeAria":"Upgrade to latest","system.upgrade.button.upgrade":"Upgrade","system.upgrade.button.copyAria":"Copy upgrade command","system.upgrade.button.copyTitle":"Copy command (run manually if auto upgrade fails)","system.upgrade.button.copy":"Copy command","system.upgrade.label.installed":"Installed","system.upgrade.installed.ok":"Active (restart console to see)","system.upgrade.installed.fail":"Upgrade not effective","system.upgrade.label.check":"Check","system.upgrade.confirm.title":"Upgrade sps-cli","system.upgrade.confirm.body":"Current {current}, upgrade to {latest}. Requires all pipelines stopped. Restart sps console after upgrade.","system.upgrade.confirm.button":"Upgrade","system.upgrade.success.title":"Upgrade complete","system.upgrade.success.body":'Installed v{version}. Run `pkill -f "sps console"` and restart to see it.',"system.upgrade.notEffective.title":"Upgrade not effective","system.upgrade.notEffective.same":"npm finished but the version did not change (still {version}) — likely a permissions or registry issue. Copy the command below to run manually.","system.upgrade.notEffective.notInstalled":"npm did not install a new version. Copy the command to run manually, or check the log below.","system.upgrade.error.title":"Upgrade failed","system.upgrade.copy.success.title":"Command copied","system.upgrade.copy.success.body":`Paste it into a terminal:
447
+ {cmd}`,"system.upgrade.copy.fail.title":"Copy failed","system.upgrade.copy.fail.body":`Copy manually:
448
+ {cmd}`,"system.diagnostics.title":"Project health check","system.diagnostics.checkAll":"Check all","system.diagnostics.empty":"No projects yet.","system.diagnostics.expandAria":"Expand","system.diagnostics.collapseAria":"Collapse","system.diagnostics.never":'Click "Check" to run sps doctor',"system.diagnostics.checkAria":"Check","system.diagnostics.check":"Check","system.diagnostics.noFixesNeeded":"Nothing to fix","system.diagnostics.fix.tip":"Run sps doctor <proj> --fix: auto-create .claude/hooks/stop.sh, state.json, etc.","system.diagnostics.fixAria":"Auto fix","system.diagnostics.fix":"Fix","system.diagnostics.fixed":"Fixed","system.diagnostics.error.fix":"doctor fix failed","system.diagnostics.error.check":"doctor check failed","chat.title":"Chat 💬","chat.empty.title":"Chat 💬","chat.empty.hint":'Click "New chat" on the left to start a session, or just type below — a session will be auto-created.',"chat.empty.shortcuts":"Enter to send · Shift+Enter for newline · streamed reply","chat.list.heading":"History {count}","chat.list.new":"New chat","chat.list.empty":"No chats yet. Click above to start.","chat.list.delete.aria":"Delete chat","chat.list.deleteCli.aria":"Remove this CLI session from the Console (does not affect Claude jsonl history)","chat.list.openAria":"Open chat {title}{cwd}","chat.list.cwdSuffix":" (cwd: {cwd})","chat.list.msgs":"{count} msg · {time}","chat.list.olderToggle":"Earlier · {count}","chat.detail.model.tooltip":"Current model in use","chat.detail.claudeSession.tooltip":"Underlying claude session id — the anchor for resuming session & memory","chat.delete.confirm.title":"Delete chat","chat.delete.confirm.body.cli":"Will be removed from the Console list (the daemon session is stopped). The Claude CLI history under ~/.claude/projects is preserved — to continue, run `sps agent --chat --name <name>` in a terminal.","chat.delete.confirm.body.console":"Chat history will be permanently deleted.","chat.delete.confirm.button":"Delete","chat.cli.banner.bold":"CLI session","chat.cli.banner":"This session was created by sps agent. The Console only shows history. To continue, run in a terminal:","chat.input.placeholder":"Say something… (Enter to send, Shift+Enter for newline, drag files / paste images)","chat.input.dragOver":"Drop to attach…","chat.input.aria":"Message input","chat.input.attach.aria":"Attach a local file","chat.input.attach.title":"Attach a local file (also drag / paste images)","chat.input.send":"Send","chat.input.send.aria":"Send","chat.input.interrupt":"Stop","chat.input.interrupt.aria":"Stop generation","chat.input.uploading":"Uploading…","chat.input.removeAttachment":"Remove {name}","chat.error.interrupt.title":"Interrupt failed","chat.cliBadge":"CLI","chat.cliBadge.tooltip":"Created by sps agent CLI; history is read live from Claude jsonl (read-only).","chat.session.title":"{title}","chat.session.id":"{id}","chat.session.empty":"Type a question below to start · Enter to send · Shift+Enter for newline","notFound.title":"404","notFound.body":"This page does not exist.","notFound.home":"Back to home","workers.active.empty":"No workers running.","workers.alerts.allHealthy":"All workers healthy","workers.alerts.pidDead":"PID dead.","workers.alerts.markerStale":"marker stale {ago}.","workers.capacity.col.project":"Project","workers.capacity.col.usage":"Usage","workers.capacity.col.other":"Other","workers.capacity.detailHint":"details →","workers.panel.boardLink":"Board →","workers.panel.loading":"Loading workers…","workers.panel.empty.slots":"This project has no worker slots.","workers.panel.empty.noWorker":"No workers","workers.panel.empty.pickOne":"Pick a worker","workers.panel.idle.short":"idle","workers.panel.section.currentCard":"Current card","workers.panel.idle.full":"Slot idle, no current card.","workers.panel.section.claudeOutput":"Claude output · last {n} lines","workers.panel.output.loading":"Loading…","workers.panel.output.empty":"No session output yet. The worker needs a few seconds to start.","workers.panel.section.heartbeat":"Supervisor heartbeat · last {n} lines","workers.panel.heartbeat.fullLog":"View full log →","workers.panel.action.restart":"Restart","workers.panel.action.restart.confirm.title":"Restart worker-{slot}","workers.panel.action.restart.confirm.body":"Kill the process, then re-launch onto #{seq}","workers.panel.action.restart.confirm.button":"Restart","workers.panel.action.restart.error":"Restart failed","workers.panel.action.kill":"Kill","workers.panel.action.kill.confirm.title":"Kill worker-{slot}","workers.panel.action.kill.confirm.body":"The current task will be force-aborted.","workers.panel.action.kill.confirm.button":"Kill","workers.panel.action.kill.error":"Kill failed","dialog.confirm.default":"OK","dialog.alert.default":"Got it","dialog.cancel.default":"Cancel","dirPicker.title.default":"Pick a directory","dirPicker.close.aria":"Close","dirPicker.up.aria":"Parent directory","dirPicker.up.title":"Parent directory","dirPicker.home.aria":"Back to home","dirPicker.home.title":"Back to home","dirPicker.loading":"Loading…","dirPicker.error.title":"Read failed","dirPicker.empty":"— empty —","dirPicker.enter.aria":"Enter {name}/","dirPicker.pickFile.aria":"Pick {name} (double-click to confirm)","dirPicker.fileLocked":"File not selectable","dirPicker.cancel":"Cancel","dirPicker.useFile":"Use this file","dirPicker.useFile.tooltip.empty":"Click a file first","dirPicker.useDir":"Use this directory","errorBoundary.title":"💥 UI crashed","errorBoundary.refresh":"Refresh page","chat.error.create.title":"Failed to create chat","chat.error.send.title":"Send failed","chat.error.fileTooBig.title":"File too large","chat.error.fileTooBig.body":"Per-file limit is 50 MB; this is {size} MB ({name})","chat.error.uploadAttachment.title":"Attachment upload failed","chat.placeholder.attachment":"(attachment)","chat.placeholder.viewAttachment":"(see attachment)","chat.placeholder.attachmentTitle":"Attachment","chat.attachment.previewTooltip":`{name}
449
+ {path}
450
+ Click to preview`,"chat.attachment.previewSimpleTooltip":`{name}
451
+ Click to zoom`,"chat.attachment.preview.aria":"Preview {name}","chat.attachment.close.aria":"Close","chat.attachment.readErr":"Read failed: {detail}","chat.attachment.loading":"Loading…","chat.attachment.unsupported":"This file type cannot be previewed inline.","chat.attachment.download":"Download","chat.message.role.you":"You","chat.message.role.error":"Error","chat.message.role.assistant":"assistant","chat.message.truncated":"⚠ Output exceeded 10MB and was truncated","chat.filePicker.title":"Pick attachment file","chat.newSession.title":"New chat","chat.newSession.title.aria":"New chat","chat.newSession.close.aria":"Close","chat.newSession.field.agent":"Agent","chat.newSession.field.title":"Title (optional)","chat.newSession.field.title.placeholder":"Empty = auto-generate from first message","chat.newSession.field.cwd":"Working directory (optional)","chat.newSession.field.cwd.browse":"Browse","chat.newSession.field.cwd.browseAria":"Pick directory","chat.newSession.field.cwd.title":"Pick directory","chat.newSession.field.cwd.help1":"The agent reads/writes files here. Absolute path; must exist.","chat.newSession.field.cwd.help2":"Empty = use the daemon’s startup cwd.","chat.newSession.cancel":"Cancel","chat.newSession.create":"Create","cardModal.editing":"⚠ Editing","cardModal.title.aria":"Card title","cardModal.editAria":"Edit card","cardModal.edit":"Edit","cardModal.close.aria":"Close","cardModal.error.save.title":"Save failed","cardModal.error.load":"Load failed: {detail}","cardModal.skills.loading":"Loading skill list…","cardModal.label.removeAria":"Remove {label}","cardModal.label.addPlaceholder":"+ Add label","cardModal.label.addAria":"Add label","cardModal.label.note":"Note: AI-PIPELINE / STARTED-* / COMPLETED-* / NEEDS-FIX are managed by the pipeline; manual changes may be overwritten","cardModal.section.description":"Description","cardModal.section.empty":"(empty)","cardModal.section.checklist":"Checklist","cardModal.checklist.empty":"No checklist items. Add `- [ ] item` syntax in the description.","cardModal.section.log":"Log","cardModal.body.aria":"Card description","cardModal.body.replaceNote":'Only replaces the "## Description" section; checklist and log sections are untouched.',"cardModal.action.launch":"Launch worker","cardModal.action.launch.disabledDone":"Card is done; drag back to Todo to launch","cardModal.action.launch.disabledRunning":"Pipeline is running — supervisor dispatches automatically, no manual launch needed","cardModal.action.launch.error":"Launch worker failed","cardModal.action.reset":"Reset card","cardModal.action.reset.confirm.title":"Reset card #{seq}","cardModal.action.reset.confirm.body":"Card state goes back to initial; checklist progress is cleared.","cardModal.action.reset.confirm.button":"Reset","cardModal.action.reset.error":"Reset failed","cardModal.action.delete":"Delete card","cardModal.action.delete.confirm1.title":"Delete card #{seq}","cardModal.action.delete.confirm1.body":'About to delete "{title}". This cannot be undone (the md file is physically removed). Continue?',"cardModal.action.delete.confirm1.button":"Continue","cardModal.action.delete.confirm2.title":"Final confirmation","cardModal.action.delete.confirm2.body":"Please re-confirm deleting card #{seq}.","projectDetail.tab.skills":"Skills","projectDetail.tab.rules":"Rules","projectDetail.skills.title":"Skill whitelist","projectDetail.skills.desc":"Pick which skills this project loads. Narrows what workers, subagents and chat see — cuts token cost.","projectDetail.skills.noPolicy":"No whitelist — all skills are available (subagents load the full set from disk).","projectDetail.skills.hasPolicy":"Whitelist active — {count} skill(s) eligible.","projectDetail.skills.save":"Save whitelist","projectDetail.skills.clear":"Clear (load all)","projectDetail.skills.saveError":"Failed to save whitelist","projectDetail.skills.applied":"Saved. Projected {linked} linked, {pruned} pruned.","projectDetail.skills.unknown":"Unknown skill name(s), ignored: {names}","projectDetail.skills.empty":"No skills installed. Run `sps skill sync` first.","projectDetail.skills.selectAll":"Select all","projectDetail.skills.selectNone":"Select none","projectDetail.rules.title":"Project rules (read-only)","projectDetail.rules.readonly":"sps-cli only reads these. Editing is done at project creation or by an agent later.","projectDetail.rules.missing":"Not present","nav.prompts":"Prompts","prompts.title":"Prompt library","prompts.desc":"Reusable prompts with {{variable}} templates. Insert them into chat.","prompts.new":"New prompt","prompts.search":"Search prompts…","prompts.empty":"No prompts yet. Create one.","prompts.name":"Name","prompts.namePlaceholder":"kebab-case, e.g. code-review","prompts.nameError":"Name must be kebab-case (a-z, 0-9, dashes).","prompts.description":"Description","prompts.tags":"Tags","prompts.tagsPlaceholder":"comma,separated","prompts.body":"Body","prompts.bodyPlaceholder":"Write your prompt. Use {{variable}} for fill-ins.","prompts.favorite":"Favorite","prompts.save":"Save","prompts.delete":"Delete","prompts.deleteConfirm":'Delete prompt "{name}"? This removes the file.',"prompts.saveError":"Failed to save prompt","prompts.vars":"Variables: {names}","prompts.noVars":"No variables","prompts.insert":"Insert a prompt","prompts.selectHint":"Select a prompt on the left, or create a new one.","prompts.tagAdd":"Type a tag, press Enter","prompts.ai":"AI generate","prompts.ai.title":"AI generate a prompt","prompts.ai.intent":"Describe what you want","prompts.ai.placeholder":"e.g. a prompt for reviewing TypeScript code for security issues","prompts.ai.submit":"Generate","prompts.ai.wait":"The agent is writing… this can take a while.","prompts.ai.error":"Generation failed","skills.import":"Import","skills.import.title":"Import a skill","skills.import.name":"Name (kebab-case)","skills.import.body":"SKILL.md content","skills.import.submit":"Import","skills.import.error":"Import failed","skills.export":"Export SKILL.md","skills.updates.badge":"{count} update(s) available","skills.updates.none":"Up to date","skills.ai":"AI create","skills.ai.title":"AI create a skill","skills.ai.name":"Name (kebab-case)","skills.ai.intent":"What is this skill for?","skills.ai.placeholder":"e.g. how to write idiomatic Rust error handling","skills.ai.submit":"Create","skills.ai.wait":"The agent is writing the skill… this can take a while.","skills.ai.error":"Create failed","projectDetail.tab.graph":"Code Graph","graph.title":"Code Graph","graph.desc":"A symbol-level dependency graph of this project (tree-sitter, zero-token). Gives agents surgical context so they explore fewer files.","graph.build":"Build graph","graph.rebuild":"Rebuild","graph.building":"Building…","graph.sync":"Sync","graph.syncing":"Syncing…","graph.sync.desc":"Incremental — only re-index changed files (fast)","graph.empty":"No graph yet — build one to enable agent navigation and the dependency view.","graph.buildFailed":"Build failed","graph.stat.files":"Files","graph.stat.nodes":"Nodes","graph.stat.edges":"Edges","graph.stat.db":"DB size","graph.stat.lastBuilt":"Last built","graph.viz.title":"File dependency graph","graph.viz.loading":"Loading graph…","graph.viz.empty":"Build the graph to see the dependency view.","graph.viz.hint":"Node = file · edge = import · drag to explore · search to highlight","graph.viz.search":"Highlight files…"},d3={"app.title":"SPS 控制台","nav.chat":"对话","nav.projects":"项目","nav.board":"看板","nav.workers":"Workers","nav.logs":"日志","nav.skills":"技能","nav.system":"系统","nav.processes":"进程","nav.audit":"审计日志","nav.memory":"记忆","nav.plugins":"插件","plugins.h1":"插件 🧩","plugins.desc":"全局插件开关。改动对之后新派发的卡生效。","plugins.tab.memory":"记忆","plugins.tab.channel":"频道","plugins.tab.model":"模型","plugins.tab.tool":"工具","plugins.comingSoon":"即将上线","plugins.model.title":"智能体模型","plugins.model.desc":"配置两个智能体的模型(全局)。worker=claude 执行、review·designer=openai 监工+编排。","plugins.model.worker":"Worker(执行 / claude)","plugins.model.reviewer":"Review·Designer(监工 / openai)","plugins.model.provider":"Provider","plugins.model.model":"模型","plugins.model.official":"官方 claude(默认)","plugins.model.save":"保存","plugins.model.saved":"已保存","plugins.model.error":"保存失败","nav.arrange":"编排","arrange.h1":"智能编排 🧭","arrange.project":"项目","arrange.none":"尚未开始 — 点上方「启动」拉起编排(几秒后出任务清单,确认即跑)。若下拉无项目,先在「新建项目」选智能编排模式。","arrange.start":"启动","arrange.stop":"停止","arrange.startErr":"启动/停止失败","arrange.view":"切换画板视图","arrange.viewFree":"自由","arrange.viewLane":"泳道","arrange.starting":"启动中,正在拆解任务清单…","arrange.planning":"正在拆解任务清单…","arrange.orchestrating":"正在编排中…","arrange.status":"状态","arrange.goal":"目标","arrange.plan":"任务清单 + 卡链路","arrange.approve":"确认任务清单","arrange.approveErr":"确认失败","arrange.tasks":"任务清单","arrange.collapse":"收起","arrange.expand":"展开任务清单","arrange.noCards":"暂无卡片 — 等待 orchestrator 派卡(确认清单后开始)。","arrange.cardPrompt":"卡片提示词","arrange.cardSkills":"技能","arrange.cardTask":"所属任务","arrange.cardLog":"日志","arrange.close":"关闭","arrange.cardsCount":"张卡","nav.aria":"主导航","memory.sub":"跨项目记忆 · 经 console 鉴权代理 agentmemory","memory.searchPlaceholder":"搜索记忆…(如:三消美术竞态怎么修)","memory.search":"搜索","memory.results":"召回结果","memory.rawHint":"(原始观察 · 接入实时捕获+压缩后这里会显示提炼的教训)","memory.sessions":"最近会话","memory.empty":"暂无记忆 · 接入实时捕获(P1)后自动累积","processes.title":"进程监控","processes.subtitle":"SPS ACP 启动的 claude 进程(其它途径启动的,如你自己的会话,不显示)","processes.refresh":"刷新","processes.aliveCount":"运行中 {n}","processes.col.kind":"类型","processes.col.slot":"会话槽","processes.col.project":"项目","processes.col.state":"状态","processes.col.memory":"内存","processes.col.action":"操作","processes.empty":"没有 SPS 进程","processes.filter.all":"全部","processes.filter.alive":"运行中","processes.filter.offline":"离线","processes.kind.all":"全部类型","processes.kind.worker":"构建 Worker","processes.kind.chat":"对话","processes.kill":"关闭","processes.killConfirm":"确定关闭进程 {slot}?","audit.title":"审计日志","audit.subtitle":"项目生命周期:创建 / 修改 / 删除","audit.refresh":"刷新","audit.filter.all":"全部","audit.action.create":"创建","audit.action.modify":"修改","audit.action.delete":"删除","audit.action.daemon":"Daemon","audit.col.time":"时间","audit.col.action":"动作","audit.col.project":"项目","audit.col.detail":"详情","audit.empty":"暂无审计记录","lang.toggle.aria":"切换界面语言","lang.en":"EN","lang.zh":"中","status.server":"服务","status.offline":"离线","status.sse.open":"SSE","status.sse.connecting":"SSE·连接中","status.sse.down":"SSE·断开","status.pipelines.tooltip":"活跃流水线数","status.workers.tooltip":"活跃 Worker 数","status.pipeline.unit":"流水线","status.worker.unit":"Worker","common.save":"保存","common.cancel":"取消","common.delete":"删除","common.confirm":"确认","common.create":"创建","common.edit":"编辑","common.close":"关闭","common.loading":"加载中…","common.error":"出错","common.retry":"重试","common.empty":"暂无内容","common.search":"搜索","common.refresh":"刷新","common.copy":"复制","common.copied":"已复制","common.yes":"是","common.no":"否","common.required":"必填","common.optional":"可选","common.ok":"好","projects.title":"项目 🎯","projects.count":"本机有 {count} 个项目","projects.refresh.hint":"点击刷新重试","projects.new":"新建项目","projects.selectHint":"在左侧选择一个项目查看详情。","projects.sort.label":"排序方式","projects.sort.activity":"活跃度","projects.sort.date":"修改日期","projects.sort.name":"名字","projects.load.failed":"加载失败","projects.empty.title":"还没有项目 ✨","projects.empty.hint":"运行 {cmd} 创建第一个项目。","newProject.title":"新建项目","newProject.subtitle":"配置一个项目,worker 自动开跑","newProject.field.mode":"执行模式","newProject.field.mode.pipeline":"自动工作流","newProject.field.mode.pipelineDesc":"固定阶段流水线,claude worker 按卡执行","newProject.field.mode.smart":"智能编排","newProject.field.mode.smartDesc":"OpenAI 监工动态派卡 + claude worker 执行","newProject.field.mode.pipelineHint":"传统模式:你建卡片,worker 按阶段跑。","newProject.field.mode.smartHint":"给一个总目标,OpenAI 监工每轮探查产物、动态生成任务卡、驱动 claude 完成。","newProject.field.goal":"总目标 (GOAL.md)","newProject.field.goal.hint":"写入 docs/GOAL.md;智能编排据此拆任务清单。缺失则 tick 跳过该项目。","newProject.field.goal.placeholder":"例:做一个纯前端、单文件可运行的贪吃蛇网页小游戏…","newProject.field.name":"项目名","newProject.field.name.help":"只允许小写字母、数字、_ 和 -","newProject.field.dir":"父目录","newProject.field.dir.preview":"项目将创建在 →","newProject.field.dir.help":"绝对路径;不存在会自动创建","newProject.field.branch":"合并目标分支","newProject.field.branch.help":"默认 main","newProject.field.maxWorkers":"最大并发 Worker 数","newProject.field.maxWorkers.help":"单项目并发数(推荐 1)","newProject.field.ackTimeout":"ACK 超时(秒)","newProject.field.ackTimeout.help":"Worker 响应等待秒数(默认 300)","newProject.field.gitlabProject":"GitLab/GitHub 远程","newProject.field.gitlabProject.help":"格式:用户名/仓库(可选)","newProject.field.matrixRoom":"Matrix 房间 ID","newProject.field.matrixRoom.help":"可选;不填则用全局默认","newProject.field.git":"启用 git","newProject.field.git.help":"关闭 → 非代码项目,跳过 commit/push/MR","newProject.submit":"创建项目","newProject.creating":"创建中…","newProject.created":"项目已创建","newProject.error.dirRequired":"项目目录必填","newProject.dir.browse":"浏览","newProject.dir.browseAria":"选择目录","newProject.back":"返回","newProject.back.aria":"返回项目列表","newProject.field.name.placeholder":"例如:acme-web","newProject.field.name.example":"只能用字母、数字、下划线、连字符。例如 acme-web","newProject.field.name.invalid":"名称只能包含 a-z A-Z 0-9 _ -","newProject.field.dir.long":"本机绝对路径的【父目录】。项目会在它下面自动建一个【项目名】子目录(类似 git clone),避免误用共享目录。","newProject.field.dir.placeholder":"/home/you/projects","newProject.field.dir.createIfMissing":"目录不存在时自动创建(推荐 —— 否则 .claude/ 安装会被跳过)","newProject.field.dir.pickerTitle":"选择项目目录","newProject.field.maxWorkers.short":"最大 Worker 数","newProject.field.ackTimeout.minutes":"ACK 超时(分钟)","newProject.field.ackTimeout.minutes.help":"Worker 启动后多久没 ACK 视为失败","newProject.field.git.label":"启用 Git(Worker 自动 commit + push)","newProject.field.git.detail":"关闭后 Worker 只做任务、不做版本控制;适合文档/数据处理等非代码项目。","newProject.field.git.branch":"合并分支","newProject.field.gitlabProject.label":"Git 远程项目路径","newProject.field.gitlabProject.help2":"如 user/repo,空则跳过远程 API(只本地 commit/push)","newProject.field.gitlabProject.placeholder":"user/repo","newProject.field.gitlabProjectId":"GitLab 项目 ID","newProject.field.gitlabProjectId.help":"数字;GitHub 用户留空","newProject.field.gitlabProjectId.placeholder":"42","newProject.section.notifications":"通知","newProject.field.matrixRoom.label":"Matrix 房间 ID","newProject.field.matrixRoom.help2":"空则使用全局配置;不填 = 不通知","newProject.field.matrixRoom.placeholder":"!abc:matrix.example.com","newProject.error.create.title":"创建失败","projectDetail.tab.pipeline":"流水线","projectDetail.tab.conf":"配置","projectDetail.tab.delete":"删除项目","projectDetail.delete.title":"删除该项目","projectDetail.delete.warn":"会删除项目配置、运行时和 worktree。{repoDir} 下的代码仓库不动。","projectDetail.delete.confirmLabel":"输入项目名以确认","projectDetail.delete.button":"删除项目","projectDetail.delete.deleting":"删除中…","projectDetail.lastActivity":"最后活跃","projectDetail.notFound":"项目不存在","projectDetail.notFoundHint":"可能已被删除或重命名。","projectDetail.backToList":"返回项目列表","pipeline.editor.title":"流水线 YAML","pipeline.editor.savedAt":"{time} 已保存","pipeline.editor.unsaved":"有未保存的修改","pipeline.editor.save":"保存","pipeline.editor.saving":"保存中…","pipeline.editor.reload":"从磁盘重新加载","pipeline.editor.discard.title":"放弃未保存的修改?","pipeline.editor.discard.body":"你的编辑会丢失。","pipeline.editor.errors":"YAML 解析错误","pipeline.editor.list":"流水线","pipeline.editor.list.add":"新建流水线","pipeline.editor.list.delete":"删除流水线","pipeline.editor.list.use":"设为当前","pipeline.editor.list.activeBadge":"当前","pipeline.editor.list.sample":"示例","pipeline.editor.delete.confirm.title":"删除流水线 {name}?","pipeline.editor.delete.confirm.body":"此操作不可撤销。","pipeline.newDialog.title":"新建流水线","pipeline.newDialog.field.filename":"文件名","pipeline.newDialog.field.filename.help":"只允许字母、数字、_ 和 -;自动追加 .yaml","pipeline.newDialog.field.copyFrom":"复制自","pipeline.newDialog.copyFrom.sample":"示例模板","pipeline.newDialog.copyFrom.active":"当前活动","pipeline.newDialog.create":"创建","projectDetail.tab.overview":"概览","projectDetail.tab.config":"配置","projectDetail.tab.pipelines":"流水线","projectDetail.tab.danger":"危险操作","projectDetail.openBoard":"看板","projectDetail.overview.repoDir":"仓库路径","projectDetail.overview.pmBackend":"PM 后端","projectDetail.overview.agent":"Agent","projectDetail.overview.cards":"卡片","projectDetail.overview.cards.value":"共 {total} 张 · {inprogress} 进行中 · {done} 完成","projectDetail.overview.workers":"Worker","projectDetail.overview.workers.value":"共 {total} 个({active} 活跃)","projectDetail.overview.pipeline":"Pipeline","projectDetail.overview.lastActivity":"最近活动","projectDetail.overview.notFound":"项目 {name} 不存在或无法读取。","projectDetail.config.confDirty":"● 未保存的修改","projectDetail.config.reload":"重新加载","projectDetail.config.save":"保存","projectDetail.config.saveAria":"保存配置","projectDetail.config.editorAria":"conf 文件编辑器","projectDetail.config.error.conflict.title":"配置已被其他地方修改","projectDetail.config.error.conflict.body":'conf 文件在你编辑期间被改过。点"重新加载"后再编辑。',"projectDetail.config.error.save.title":"保存失败","projectDetail.config.error.load":"加载失败:{detail}","projectDetail.pipelines.title":"流水线","projectDetail.pipelines.add":"新建流水线","projectDetail.pipelines.empty":'还没有流水线文件。点"新建流水线"开始。',"projectDetail.pipelines.activeBadge":"当前","projectDetail.pipelines.edit":"编辑","projectDetail.pipelines.editAria":"编辑 {name}","projectDetail.pipelines.switch":"切换","projectDetail.pipelines.switchAria":"切换到 {name}","projectDetail.pipelines.switch.confirm.title":"切换到 {name}","projectDetail.pipelines.switch.confirm.body":"当前 project.yaml 会被 {name} 的内容覆盖。继续?","projectDetail.pipelines.switch.confirm.button":"切换","projectDetail.pipelines.switch.error":"切换失败","projectDetail.pipelines.delete.confirm.title":"删除 {name}","projectDetail.pipelines.delete.confirm.body":"这个流水线文件会被永久删除。","projectDetail.pipelines.delete.error":"删除失败","projectDetail.pipelines.deleteAria":"删除 {name}","projectDetail.pipelines.create.error":"创建失败","projectDetail.danger.title":"删除项目","projectDetail.danger.body":"这会清理 {path}(包括所有卡片、runtime、logs)。","projectDetail.danger.includeClaude.label":"同时清理 repo 的 .claude/","projectDetail.danger.includeClaude.note":"repo 本身不动,只清这个目录。","projectDetail.danger.confirmPrompt":"输入项目名 {name} 确认:","projectDetail.danger.deleteAria":"永久删除项目","projectDetail.danger.deleteButton":"永久删除","projectDetail.danger.deleted.title":"已删除","projectDetail.danger.deleted.bodyWithList":`项目已删除。同时清理了:
452
+ {paths}`,"projectDetail.danger.deleted.body":"项目已删除。","projectDetail.danger.error":"删除失败","pipelineEditor.close":"关闭","pipelineEditor.error.conflict.title":"文件已被其他地方修改","pipelineEditor.error.yaml.title":"YAML 语法错误","pipelineEditor.error.save.title":"保存失败","pipelineEditor.error.serialize.title":"YAML 序列化失败","pipelineEditor.error.load":"加载失败:{detail}","pipelineEditor.mode.structured":"结构化","pipelineEditor.mode.yaml":"原始 YAML","pipelineEditor.parseError.prefix":"YAML 解析:{detail}","pipelineEditor.activeWarning":"⚠ 这是当前激活的流水线,保存后下一轮 tick 生效","pipelineEditor.yamlAria":"pipeline YAML 编辑器","pipelineEditor.status.unsaved":"● 未保存","pipelineEditor.status.saved":"已保存","pipelineEditor.status.noChanges":"无变化","pipelineEditor.reload":"重新加载","pipelineEditor.save":"保存","pipelineEditor.saveAria":"保存 pipeline","pipelineEditor.activeBadge":"当前","pipelineEditor.modeHint":"project = 事件驱动流水线(默认) · steps = 顺序脚本","pipelineEditor.stages.heading":"Stages({count})","pipelineEditor.stages.add":"添加 stage","pipelineEditor.stages.empty":'还没 stage。点"添加 stage"开始。',"pipelineEditor.stage.name.hint":"stage 唯一名","pipelineEditor.stage.profile.hint":"skill 画像,可空","pipelineEditor.stage.cardState.hint":"本 stage 期间卡片状态","pipelineEditor.stage.timeout.hint":"可选,如 30m 2h","pipelineEditor.stage.trigger.hint":"触发条件,可空走默认","pipelineEditor.stage.onComplete.hint":"成功后动作","pipelineEditor.stage.onFail.action.hint":"失败时动作,如 label NEEDS-FIX","pipelineEditor.stage.onFail.comment.hint":"写进卡片的注释","pipelineEditor.stage.halt.note":"(失败后停流水线;去掉则继续下一张卡)","pipelineEditor.stage.moveUp":"上移","pipelineEditor.stage.moveDown":"下移","pipelineEditor.stage.remove":"删除 stage","newPipelineDialog.title":"新建流水线","newPipelineDialog.field.filename.label":"文件名","newPipelineDialog.field.filename.placeholder":"例如 ci","newPipelineDialog.field.filename.help":"实际会保存为 {filename}。只允许 a-z A-Z 0-9 _ -;已有同名文件会 409 报错。","newPipelineDialog.section.template":"初始内容","newPipelineDialog.template.blank.label":"空白模板","newPipelineDialog.template.blank.desc":"最简 1 stage(develop → Done)","newPipelineDialog.template.sample.label":"教学模板","newPipelineDialog.template.sample.desc":"从 sample.yaml.example 复制(带注释,讲解所有字段)","newPipelineDialog.template.sample.unavailable":"sample.yaml.example 不存在","newPipelineDialog.template.active.label":"复制当前活动的","newPipelineDialog.template.active.desc":"从 project.yaml 复制(基于目前的配置改)","newPipelineDialog.template.active.unavailable":"project.yaml 不存在","newPipelineDialog.create.aria":"创建 pipeline","newPipelineDialog.cancel":"取消","board.title":"看板 ✨","board.title.bare":"看板","board.subtitle":"{name} · {cards} 张卡片 · {workers} workers 活跃","board.pickPrompt.title":"选择一个项目 🎯","board.pickPrompt.body":"看板按项目分。挑一个开始:","board.action.start":"启动","board.action.stop":"停止","board.action.startAria":"启动 pipeline","board.action.stopAria":"停止 pipeline","board.action.startError":"启动 pipeline 失败","board.action.stopError":"停止 pipeline 失败","board.action.reset":"重置","board.action.resetError":"重置失败","board.action.reset.confirm.title":"重置整个流水线","board.action.reset.confirm.body":"这会清空所有卡片的运行状态、worker marker、分支。不可撤销。","board.action.reset.confirm.button":"重置全部","board.action.newCard":"新卡片","board.action.newCard.error":"新建卡片失败","board.action.moveCard.error":"移动卡片失败","board.search.placeholder":"搜索标题 / skill / label…","board.search.aria":"搜索卡片","board.filter.clear":"清空","board.filter.clearAria":"清空筛选","board.filter.aria":"按 {label} 筛选","board.filter.clearSelection":"清空选择","board.error.loadCards":"加载卡片失败","board.col.planning":"Planning","board.col.backlog":"Backlog","board.col.todo":"Todo","board.col.inprogress":"Inprogress","board.col.qa":"QA / Review","board.col.done":"Done","kanban.checklist.label":"检查清单 {done}/{total}","kanban.checklist.more":"… 还有 {count} 条","kanban.column.empty":"— 空 —","kanban.time.justNow":"刚才","kanban.time.minutes":"{n} 分钟前","kanban.time.hours":"{n} 小时前","kanban.time.days":"{n} 天前","newCard.title":"新建卡片","newCard.field.title":"标题 *","newCard.field.title.placeholder":"例如:接入 GitHub OAuth 登录","newCard.field.title.help":"写简短明了的目标(<200 字符)","newCard.field.description":"描述","newCard.field.description.placeholder":"用户故事、需求、验收标准、参考资料… Claude 启动时会读这里的内容","newCard.field.description.help":"支持 markdown。空的话就只有 title,Claude 只能靠 title 推断要做啥。","newCard.field.skills":"技能","newCard.field.skills.help":"勾选哪些 skill 会被加载(走 frontmatter `skills:`)。不选也行,Worker 默认加载项目级 skills。","newCard.field.skills.loading":"加载 skill 列表…","newCard.field.skills.error":"skill 列表加载失败,不影响创建:{detail}","newCard.field.skills.selected":"已选 {count} 个:{names}","newCard.field.dispatch":"派发","newCard.field.dispatch.label":"立即派发执行(直接进 Backlog)","newCard.field.dispatch.help":"默认不勾:卡进 Planning 暂存,等你看板上拖到 Backlog 再开工。勾上:跳过暂存,下次 tick 直接派 worker 跑。","newCard.create.aria":"创建卡片","cardDetail.loading":"加载中…","cardDetail.error.load":"卡片加载失败","cardDetail.tabs.overview":"概览","cardDetail.tabs.body":"描述","cardDetail.tabs.checklist":"检查清单","cardDetail.tabs.history":"历史","cardDetail.tabs.actions":"操作","cardDetail.field.state":"状态","cardDetail.field.skills":"技能","cardDetail.field.labels":"标签","cardDetail.field.branch":"分支","cardDetail.field.assignee":"处理人","cardDetail.field.created":"创建时间","cardDetail.field.updated":"更新时间","cardDetail.field.empty":"—","cardDetail.actions.delete":"删除卡片","cardDetail.actions.delete.confirm.title":"删除卡片 #{seq}","cardDetail.actions.delete.confirm.body":"该卡片会被永久删除。","cardDetail.actions.delete.error":"删除失败","cardDetail.actions.update.error":"更新失败","cardDetail.body.empty":"没有描述","cardDetail.checklist.empty":"没有检查清单","cardDetail.checklist.progress":"进度 {done}/{total}","cardDetail.history.empty":"没有历史记录","cardDetail.notFound":"卡片 #{seq} 不存在","cardDetail.copy.aria":"复制 seq","cardDetail.close.aria":"关闭","cardDetail.save":"保存","cardDetail.saving":"保存中…","workers.title":"Workers 👷","workers.summary":"跨 {projects} 项目 · {running} 跑 · {starting} 启动 · {stuck} 卡 · {crashed} 崩 · {idle} 闲","workers.summary.stuck":"{n} 卡","workers.summary.crashed":"{n} 崩","workers.refresh.aria":"刷新","workers.refresh":"刷新","workers.error.load":"加载失败:{detail}","workers.empty.hint":"点击项目 / worker 查看详情","logs.title":"日志 📜","logs.subtitle.allProjects":"全部项目","logs.subtitle.project":"{name} 实时日志","logs.filter.errors":"只看错误","logs.filter.errors.aria":"只显示错误","logs.filter.search.placeholder":"过滤消息…","logs.empty":"还没有日志 —— 等待事件中","logs.error.load":"日志加载失败","logs.refresh":"刷新","logs.refresh.aria":"刷新日志","logs.scroll.bottom.aria":"滚动到底部","logs.scroll.pause":"已暂停(自动滚动关闭)","logs.scroll.resume":"恢复自动滚动","logs.subtitle.allProjectsCount":"全部项目({count})","logs.poll.5s":"5s 轮询","logs.paused":"⏸ 已暂停","logs.mode.live":"实时","logs.mode.history":"历史","logs.history.startAria":"查询起始时间","logs.history.queryAria":"查询","logs.history.query":"查询","logs.filter.project.aria":"筛选项目","logs.filter.project.all":"全部项目","logs.filter.keyword.placeholder":"过滤关键字…","logs.filter.keyword.aria":"过滤日志","logs.empty.match":"没有匹配的日志","skills.title":"技能 🧠","skills.subtitle":"跨项目共用的 skill(用 `sps skill ...` 管理)","skills.empty.title":"还没有 skill","skills.empty.hint":"运行 {cmd} 同步 bundled skills。","skills.linked.tooltip":"已链接到该项目","skills.frozen.tooltip":"已冻结(项目独立副本)","skills.category.all":"全部","skills.category.language":"语言","skills.category.end":"终端","skills.category.persona":"角色","skills.category.workflow":"流程","skills.category.other":"其它","skills.subtitleCount":"{count} 个 user-level skill","skills.search.placeholder":"搜索 skill…","skills.search.aria":"搜索 skill","skillDetail.actionFailed":"{label}失败","skillDetail.unfreezeAction":"解冻","skillDetail.freezeAction":"冻结","skillDetail.removeAction":"移除","skillDetail.removeConfirm.title":"从 {project} 移除 {name}","skillDetail.removeConfirm.body":"skill 链接会被解除,项目后续运行时将无法使用该 skill。","skillDetail.removeConfirm.button":"移除","skillDetail.unfreezeConfirm.title":"解冻 {name} @ {project}","skillDetail.unfreezeConfirm.body":"本地对这个 skill 的改动会被覆盖,回到最新共享版本。","skillDetail.unfreezeConfirm.button":"解冻","skillDetail.close.aria":"关闭","skillDetail.loading":"加载中…","skillDetail.error.load":"加载失败:{detail}","skillDetail.section.projects":"项目链接状态","skillDetail.section.empty":"还没有任何项目。先去创建一个项目。","skillDetail.section.preview":"SKILL.md 预览","skillDetail.toggleSection.aria":"{action} {file}","skillDetail.expand":"展开","skillDetail.collapse":"收起","system.title":"系统 🛠","system.subtitle":"全局配置 + 诊断 + 升级","system.section.env":"全局 env","system.section.env.help":"存储在 ~/.coral/env(mode 600)。所有项目共用。","system.section.env.save":"保存 env","system.section.env.error.conflict":"env 已被其它地方修改","system.section.env.error.save":"保存 env 失败","system.section.env.error.load":"加载 env 失败","system.section.env.dirtyDot":"● 未保存","system.section.env.aria":"env 编辑器","system.section.env.reload":"重新加载","system.section.upgrade":"升级","system.section.upgrade.current":"当前:v{version}","system.section.upgrade.latest":"npm 最新:v{version}","system.section.upgrade.uptodate":"已是最新","system.section.upgrade.update":"立即升级","system.section.upgrade.upgrading":"升级中…","system.section.upgrade.checking":"正在查询 npm…","system.section.upgrade.checkError":"查询失败:{detail}","system.section.upgrade.upgradeError":"升级失败:{detail}","system.section.upgrade.upgradeError.title":"升级失败","system.section.upgrade.command":"或在终端执行:{cmd}","system.section.upgrade.runningPipelines":"有 pipeline 在跑,先停止:{projects}","system.section.diagnostics":"诊断","system.section.diagnostics.help":"一次性跑所有项目的 sps doctor,看哪些项目出问题","system.section.diagnostics.run":"运行诊断","system.section.diagnostics.running":"运行中…","system.section.diagnostics.empty":"没有项目","system.section.diagnostics.checkAria":"检查 {project}","system.section.diagnostics.statusOk":"正常","system.section.diagnostics.statusFail":"有问题","system.section.diagnostics.error":"诊断失败:{detail}","system.h1":"系统 ⚙️","system.runtime":"运行时","system.memory.title":"记忆后端","system.memory.desc":"全局设置:worker 的记忆读写走哪个后端。改动对新派发的卡生效。","system.memory.provider":"后端","system.memory.url":"自定义 URL","system.memory.url.placeholder":"http://127.0.0.1:3111","system.memory.save":"保存","system.memory.save.aria":"保存记忆后端设置","system.memory.saved":"已保存","system.memory.error":"保存失败","system.memory.opt.none":"关闭(none)","system.memory.opt.builtin":"本地文件记忆(builtin)","system.memory.opt.agentmemory":"agentmemory(语义库)","system.memory.opt.custom":"自定义 REST(custom)","system.env.title.code":"~/.coral/env","system.env.title.prefix":"全局配置 ","system.env.edit.aria":"编辑 env 文件","system.env.edit.button":"编辑","system.env.editing.label":"⚠ 编辑模式","system.env.empty.before":'env 文件不存在。点"编辑"或者终端运行 ',"system.env.empty.after":"。","system.env.warning":"⚠ 文件包含凭证明文。保存时保持 0600 权限。","system.env.aria":"env 文件编辑器","system.env.dirtyMark":" · ● 未保存","system.env.cancel":"取消","system.env.save":"保存","system.env.save.aria":"保存 env","system.env.error.conflict.title":"env 被其他地方修改了","system.env.error.save.title":"保存失败","system.env.error.conflict.body":"请点取消后重开编辑。","system.upgrade.title":"版本","system.upgrade.checkLatest.aria":"检查最新版本","system.upgrade.checkUpdate":"检查更新","system.upgrade.label.current":"sps-cli(当前)","system.upgrade.label.latest":"npm(最新)","system.upgrade.latestPill":"最新","system.upgrade.button.upgradeAria":"升级到最新版本","system.upgrade.button.upgrade":"升级","system.upgrade.button.copyAria":"复制升级命令","system.upgrade.button.copyTitle":"自动升级失败时手动跑","system.upgrade.button.copy":"复制命令","system.upgrade.label.installed":"已安装","system.upgrade.installed.ok":"已生效(重启 console 后可见)","system.upgrade.installed.fail":"未升级成功","system.upgrade.label.check":"检查","system.upgrade.confirm.title":"升级 sps-cli","system.upgrade.confirm.body":"当前 {current},升级到 {latest}。要求所有 pipeline 已停止。升级后请重启 sps console 生效。","system.upgrade.confirm.button":"升级","system.upgrade.success.title":"升级完成","system.upgrade.success.body":'装上了 v{version}。请 `pkill -f "sps console"` 再重启以生效。',"system.upgrade.notEffective.title":"升级未生效","system.upgrade.notEffective.same":"npm 执行完毕但版本没变(仍 {version})——多半是权限或 registry 问题。可复制下面的命令在终端手动跑。","system.upgrade.notEffective.notInstalled":"npm 没装上新版本。可复制命令手动跑,或看下面日志定位。","system.upgrade.error.title":"升级失败","system.upgrade.copy.success.title":"命令已复制","system.upgrade.copy.success.body":`粘贴到终端运行即可:
453
+ {cmd}`,"system.upgrade.copy.fail.title":"复制失败","system.upgrade.copy.fail.body":`请手动复制:
454
+ {cmd}`,"system.diagnostics.title":"项目健康检查","system.diagnostics.checkAll":"检查全部","system.diagnostics.empty":"还没有项目。","system.diagnostics.expandAria":"展开","system.diagnostics.collapseAria":"折叠","system.diagnostics.never":'点 "检查" 运行 sps doctor',"system.diagnostics.checkAria":"检查","system.diagnostics.check":"检查","system.diagnostics.noFixesNeeded":"已无可修问题","system.diagnostics.fix.tip":"调 sps doctor <proj> --fix:自动创建 .claude/hooks/stop.sh、state.json 等","system.diagnostics.fixAria":"自动修复","system.diagnostics.fix":"修复","system.diagnostics.fixed":"已修复","system.diagnostics.error.fix":"doctor 修复失败","system.diagnostics.error.check":"doctor 检查失败","chat.title":"对话 💬","chat.empty.title":"对话 💬","chat.empty.hint":'点左上角"新建对话"开始一个 session。或直接在下方输入,会自动建 session。',"chat.empty.shortcuts":"Enter 发送 · Shift+Enter 换行 · 内容流式返回","chat.list.heading":"历史 {count}","chat.list.new":"新建对话","chat.list.empty":"还没对话。点上面新建。","chat.list.delete.aria":"删除对话","chat.list.deleteCli.aria":"从 Console 移除该 CLI 会话(不影响 Claude jsonl 存档)","chat.list.openAria":"打开对话 {title}{cwd}","chat.list.cwdSuffix":"(工作目录 {cwd})","chat.list.msgs":"{count} 条 · {time}","chat.list.olderToggle":"更早 · {count} 条","chat.detail.model.tooltip":"当前使用的模型","chat.detail.claudeSession.tooltip":"底层 claude 会话 id —— 恢复会话与记忆的锚","chat.delete.confirm.title":"删除对话","chat.delete.confirm.body.cli":"会从 Console 列表移除(停 daemon 会话)。Claude CLI 在 ~/.claude/projects 下的对话存档会保留 —— 想恢复到终端继续聊就重新跑 sps agent --chat --name <名>。","chat.delete.confirm.body.console":"对话记录会永久删除,不可恢复。","chat.delete.confirm.button":"删除","chat.cli.banner.bold":"CLI 会话","chat.cli.banner":"这是 CLI 会话(由 sps agent 创建),Console 仅展示历史。续聊请在终端运行:","chat.input.placeholder":"说点什么… (Enter 发送,Shift+Enter 换行,可拖入文件 / 粘贴图片)","chat.input.dragOver":"松开鼠标以附加文件…","chat.input.aria":"消息输入","chat.input.attach.aria":"附加本地文件","chat.input.attach.title":"附加本地文件(也可拖拽 / 粘贴图片)","chat.input.send":"发送","chat.input.send.aria":"发送","chat.input.interrupt":"中断","chat.input.interrupt.aria":"中断生成","chat.input.uploading":"上传中…","chat.input.removeAttachment":"移除 {name}","chat.error.interrupt.title":"中断失败","chat.cliBadge":"CLI","chat.cliBadge.tooltip":"该会话由 sps agent CLI 创建,从 Claude jsonl 实时读取(只读)","chat.session.title":"{title}","chat.session.id":"{id}","chat.session.empty":"下方输入问题开始对话 · Enter 发送 · Shift+Enter 换行","notFound.title":"404","notFound.body":"这个页面不存在。","notFound.home":"回到首页","workers.active.empty":"没有 worker 在运行。","workers.alerts.allHealthy":"全部 worker 健康","workers.alerts.pidDead":"PID 已死。","workers.alerts.markerStale":"marker 停 {ago}。","workers.capacity.col.project":"项目","workers.capacity.col.usage":"占用","workers.capacity.col.other":"其它","workers.capacity.detailHint":"详情 →","workers.panel.boardLink":"看板 →","workers.panel.loading":"加载 workers…","workers.panel.empty.slots":"该项目没有 worker slot。","workers.panel.empty.noWorker":"无 worker","workers.panel.empty.pickOne":"请选择一个 worker","workers.panel.idle.short":"空闲","workers.panel.section.currentCard":"当前卡片","workers.panel.idle.full":"slot 空闲,没有当前卡片。","workers.panel.section.claudeOutput":"Claude 输出 · 最近 {n} 行","workers.panel.output.loading":"加载中…","workers.panel.output.empty":"还没收到 session 输出。Worker 刚启动时需要几秒。","workers.panel.section.heartbeat":"Supervisor 心跳 · 最近 {n} 行","workers.panel.heartbeat.fullLog":"查看完整 log →","workers.panel.action.restart":"重启","workers.panel.action.restart.confirm.title":"重启 worker-{slot}","workers.panel.action.restart.confirm.body":"先杀进程,再重新 launch 到 #{seq}","workers.panel.action.restart.confirm.button":"重启","workers.panel.action.restart.error":"重启失败","workers.panel.action.kill":"终止","workers.panel.action.kill.confirm.title":"终止 worker-{slot}","workers.panel.action.kill.confirm.body":"当前任务强制中断。","workers.panel.action.kill.confirm.button":"终止","workers.panel.action.kill.error":"终止失败","dialog.confirm.default":"确定","dialog.alert.default":"知道了","dialog.cancel.default":"取消","dirPicker.title.default":"选择目录","dirPicker.close.aria":"关闭","dirPicker.up.aria":"上级目录","dirPicker.up.title":"上级目录","dirPicker.home.aria":"回到 Home","dirPicker.home.title":"回到 Home","dirPicker.loading":"加载中...","dirPicker.error.title":"读取失败","dirPicker.empty":"— 空目录 —","dirPicker.enter.aria":"进入 {name}/","dirPicker.pickFile.aria":"选择 {name}(双击直接确认)","dirPicker.fileLocked":"文件不可选","dirPicker.cancel":"取消","dirPicker.useFile":"使用此文件","dirPicker.useFile.tooltip.empty":"请先点选一个文件","dirPicker.useDir":"选此目录","errorBoundary.title":"💥 UI 崩了","errorBoundary.refresh":"刷新页面","chat.error.create.title":"新建对话失败","chat.error.send.title":"发送失败","chat.error.fileTooBig.title":"文件超过上限","chat.error.fileTooBig.body":"单文件上限 50 MB;当前 {size} MB({name})","chat.error.uploadAttachment.title":"附件上传失败","chat.placeholder.attachment":"(附件)","chat.placeholder.viewAttachment":"(请查看附件)","chat.placeholder.attachmentTitle":"附件","chat.attachment.previewTooltip":`{name}
455
+ {path}
456
+ 点击预览`,"chat.attachment.previewSimpleTooltip":`{name}
457
+ 点击放大`,"chat.attachment.preview.aria":"预览 {name}","chat.attachment.close.aria":"关闭","chat.attachment.readErr":"读取失败:{detail}","chat.attachment.loading":"加载中...","chat.attachment.unsupported":"此文件类型不支持内联预览。","chat.attachment.download":"下载","chat.message.role.you":"你","chat.message.role.error":"错误","chat.message.role.assistant":"assistant","chat.message.truncated":"⚠ 输出超过 10MB,已截断","chat.filePicker.title":"选择附件文件","chat.newSession.title":"新建对话","chat.newSession.title.aria":"新建对话","chat.newSession.close.aria":"关闭","chat.newSession.field.agent":"Agent","chat.newSession.field.title":"标题(可选)","chat.newSession.field.title.placeholder":"留空 = 自动用首条消息生成","chat.newSession.field.cwd":"工作目录(可选)","chat.newSession.field.cwd.browse":"浏览","chat.newSession.field.cwd.browseAria":"浏览选择目录","chat.newSession.field.cwd.title":"选择目录","chat.newSession.field.cwd.help1":"Agent 在该目录下读写文件。绝对路径,必须存在。","chat.newSession.field.cwd.help2":"留空则用 daemon 启动时的目录。","chat.newSession.cancel":"取消","chat.newSession.create":"创建","cardModal.editing":"⚠ 编辑中","cardModal.title.aria":"卡片标题","cardModal.editAria":"编辑卡片","cardModal.edit":"编辑","cardModal.close.aria":"关闭","cardModal.error.save.title":"保存失败","cardModal.error.load":"加载失败:{detail}","cardModal.skills.loading":"加载 skill 列表…","cardModal.label.removeAria":"删除 {label}","cardModal.label.addPlaceholder":"+ 添加 label","cardModal.label.addAria":"添加 label","cardModal.label.note":"注意:AI-PIPELINE / STARTED-* / COMPLETED-* / NEEDS-FIX 由流水线自动管理,手动改可能被覆盖","cardModal.section.description":"描述","cardModal.section.empty":"(空)","cardModal.section.checklist":"检查清单","cardModal.checklist.empty":"暂无清单项。在描述里用 `- [ ] 项` 语法添加。","cardModal.section.log":"日志","cardModal.body.aria":"卡片描述","cardModal.body.replaceNote":'只替换 "## 描述" 段的内容;检查清单和日志段不动。',"cardModal.action.launch":"启动 worker","cardModal.action.launch.disabledDone":"卡片已完成;先拖回 Todo 再启动","cardModal.action.launch.disabledRunning":"Pipeline 正在跑——supervisor 会自动 dispatch,无需手动启动","cardModal.action.launch.error":"启动 worker 失败","cardModal.action.reset":"重置卡片","cardModal.action.reset.confirm.title":"重置卡片 #{seq}","cardModal.action.reset.confirm.body":"卡片状态会回到初始,已做的 checklist 会清空。","cardModal.action.reset.confirm.button":"重置","cardModal.action.reset.error":"重置失败","cardModal.action.delete":"删除卡片","cardModal.action.delete.confirm1.title":"删除卡片 #{seq}","cardModal.action.delete.confirm1.body":'即将删除 "{title}"。此操作不可恢复(md 文件将被物理删除)。是否继续?',"cardModal.action.delete.confirm1.button":"继续","cardModal.action.delete.confirm2.title":"最终确认","cardModal.action.delete.confirm2.body":"请再次确认删除卡片 #{seq}。","projectDetail.tab.skills":"技能","projectDetail.tab.rules":"规则","projectDetail.skills.title":"Skill 白名单","projectDetail.skills.desc":"选择本项目加载哪些 skill。收窄 worker、subagent 与 chat 能看到的范围,降低 token 消耗。","projectDetail.skills.noPolicy":"未设白名单 —— 全部 skill 都可用(subagent 会从磁盘吃全量)。","projectDetail.skills.hasPolicy":"白名单已生效 —— {count} 个 skill 合格。","projectDetail.skills.save":"保存白名单","projectDetail.skills.clear":"清除(加载全部)","projectDetail.skills.saveError":"保存白名单失败","projectDetail.skills.applied":"已保存。投影 {linked} 个链接,清理 {pruned} 个。","projectDetail.skills.unknown":"未识别的 skill 名(已忽略):{names}","projectDetail.skills.empty":"尚无已安装的 skill,先跑 `sps skill sync`。","projectDetail.skills.selectAll":"全选","projectDetail.skills.selectNone":"全不选","projectDetail.rules.title":"项目规则(只读)","projectDetail.rules.readonly":"sps-cli 只读这些文件。编辑在项目创建时或日后由 agent 协助完成。","projectDetail.rules.missing":"不存在","nav.prompts":"提示词","prompts.title":"提示词库","prompts.desc":"带 {{变量}} 模板的可复用提示词,可插入到会话中。","prompts.new":"新建提示词","prompts.search":"搜索提示词…","prompts.empty":"还没有提示词,新建一个。","prompts.name":"名称","prompts.namePlaceholder":"kebab-case,如 code-review","prompts.nameError":"名称须为 kebab-case(小写字母、数字、连字符)。","prompts.description":"描述","prompts.tags":"标签","prompts.tagsPlaceholder":"逗号,分隔","prompts.body":"正文","prompts.bodyPlaceholder":"写你的提示词。用 {{变量}} 做填充位。","prompts.favorite":"收藏","prompts.save":"保存","prompts.delete":"删除","prompts.deleteConfirm":"删除提示词「{name}」?会移除文件。","prompts.saveError":"保存提示词失败","prompts.vars":"变量:{names}","prompts.noVars":"无变量","prompts.insert":"插入提示词","prompts.selectHint":"在左侧选择一个提示词,或新建一个。","prompts.tagAdd":"输入标签后按 Enter","prompts.ai":"AI 生成","prompts.ai.title":"AI 生成提示词","prompts.ai.intent":"描述你想要什么","prompts.ai.placeholder":"例如:一个用于审查 TypeScript 代码安全问题的提示词","prompts.ai.submit":"生成","prompts.ai.wait":"agent 正在生成…可能需要一会儿。","prompts.ai.error":"生成失败","skills.import":"导入","skills.import.title":"导入 Skill","skills.import.name":"名称(kebab-case)","skills.import.body":"SKILL.md 内容","skills.import.submit":"导入","skills.import.error":"导入失败","skills.export":"导出 SKILL.md","skills.updates.badge":"有 {count} 个可更新","skills.updates.none":"已是最新","skills.ai":"AI 创建","skills.ai.title":"AI 创建 Skill","skills.ai.name":"名称(kebab-case)","skills.ai.intent":"这个 skill 用来做什么?","skills.ai.placeholder":"例如:如何写地道的 Rust 错误处理","skills.ai.submit":"创建","skills.ai.wait":"agent 正在生成 skill…可能需要一会儿。","skills.ai.error":"创建失败","projectDetail.tab.graph":"代码图谱","graph.title":"代码图谱","graph.desc":"本项目的符号级依赖图(tree-sitter,零 token)。给 agent 精准上下文,少读文件、省 token。","graph.build":"建图","graph.rebuild":"重建","graph.building":"建图中…","graph.sync":"增量同步","graph.syncing":"同步中…","graph.sync.desc":"增量 —— 只重新索引变化的文件(快)","graph.empty":"尚未建图 —— 建一次即可启用 agent 导航与依赖图。","graph.buildFailed":"建图失败","graph.stat.files":"文件","graph.stat.nodes":"节点","graph.stat.edges":"边","graph.stat.db":"DB 体积","graph.stat.lastBuilt":"上次建图","graph.viz.title":"文件依赖图","graph.viz.loading":"加载图谱…","graph.viz.empty":"建图后可查看依赖图。","graph.viz.hint":"节点=文件 · 边=import · 拖拽探索 · 搜索高亮","graph.viz.search":"高亮文件…"},XN=C.createContext(null),ZN="sps-console-lang";function f3(){if(typeof window>"u")return"en";try{const e=window.localStorage.getItem(ZN);if(e==="en"||e==="zh")return e}catch{}return"en"}function h3(e){try{window.localStorage.setItem(ZN,e)}catch{}}function p3({children:e}){const[t,n]=C.useState(()=>f3());C.useEffect(()=>{typeof document<"u"&&(document.documentElement.lang=t==="zh"?"zh-CN":"en")},[t]);const r=C.useCallback(l=>{n(l),h3(l)},[]),a=C.useMemo(()=>{const l=t==="zh"?d3:u3;return(d,f)=>{let h=l[d]??d;if(f)for(const[g,m]of Object.entries(f))m!==void 0&&(h=h.replace(`{${g}}`,String(m)));return h}},[t]),o=C.useMemo(()=>({lang:t,setLang:r,t:a}),[t,r,a]);return u.jsx(XN.Provider,{value:o,children:e})}function JN(){const e=C.useContext(XN);if(!e)throw new Error("useLang must be used inside I18nProvider");return e}function Be(){return JN().t}function m3(){const{lang:e,setLang:t,t:n}=JN();return u.jsxs("div",{role:"group","aria-label":n("lang.toggle.aria"),className:"flex border-2 border-[var(--color-text)] rounded-lg overflow-hidden shadow-[2px_2px_0_var(--color-text)]",children:[u.jsx(ak,{active:e==="en",onClick:()=>t("en"),label:n("lang.en"),ariaLabel:"English"}),u.jsx(ak,{active:e==="zh",onClick:()=>t("zh"),label:n("lang.zh"),ariaLabel:"中文"})]})}function ak({active:e,onClick:t,label:n,ariaLabel:r}){return u.jsx("button",{type:"button",onClick:t,"aria-label":r,"aria-pressed":e,className:["flex-1 py-1.5 text-xs font-bold font-[family-name:var(--font-mono)] cursor-pointer transition-colors",e?"bg-[var(--color-accent-mint)] text-[var(--color-text)]":"bg-[var(--color-bg)] text-[var(--color-text-muted)] hover:bg-[var(--color-bg-cream)]"].join(" "),children:n})}const g3=[{to:"/chat",labelKey:"nav.chat",icon:BN},{to:"/projects",labelKey:"nav.projects",icon:PN},{to:"/board",labelKey:"nav.board",icon:fL},{to:"/workers",labelKey:"nav.workers",icon:QN},{to:"/logs",labelKey:"nav.logs",icon:Gu},{to:"/skills",labelKey:"nav.skills",icon:nL},{to:"/prompts",labelKey:"nav.prompts",icon:$N},{to:"/arrange",labelKey:"nav.arrange",icon:Ib},{to:"/plugins",labelKey:"nav.plugins",icon:OL},{to:"/system",labelKey:"nav.system",icon:HN},{to:"/processes",labelKey:"nav.processes",icon:uh},{to:"/audit",labelKey:"nav.audit",icon:qN},{to:"/memory",labelKey:"nav.memory",icon:ER}];function y3(){const e=Be();return u.jsxs(u.Fragment,{children:[u.jsxs("div",{className:"font-[family-name:var(--font-heading)] font-bold text-lg px-3 pt-2 pb-4 flex items-center gap-3 text-[var(--color-text)]",children:[u.jsx("span",{className:"w-5 h-5 rounded-md bg-[var(--color-accent-mint)] border-2 border-[var(--color-text)] shadow-[2px_2px_0_var(--color-text)]"}),e("app.title")]}),u.jsx("nav",{className:"flex flex-col gap-1.5 mt-2","aria-label":e("nav.aria"),children:g3.map(t=>{const n=t.icon;return u.jsxs(AN,{to:t.to,className:({isActive:r})=>["flex items-center gap-3 px-3 py-2.5 rounded-xl font-semibold text-sm cursor-pointer transition-transform duration-150","border-2 border-transparent",r?"bg-[var(--color-accent-mint)] border-[var(--color-text)] shadow-[3px_3px_0_var(--color-text)] font-bold":"text-[var(--color-text)] hover:bg-[var(--color-bg-cream)] hover:border-[var(--color-text)] hover:shadow-[3px_3px_0_var(--color-text)] hover:-translate-x-px hover:-translate-y-px"].join(" "),children:[u.jsx(n,{size:18,strokeWidth:2.5}),e(t.labelKey)]},t.to)})}),u.jsx("div",{className:"mt-auto pt-3",children:u.jsx(m3,{})})]})}class b3 extends Error{constructor(t,n,r){super(n),this.status=t,this.detail=r,this.name="ApiError"}}async function zb(e){const t=await e.text().catch(()=>"");let n=t,r=`${e.status} ${e.statusText}`;try{const a=JSON.parse(t);if(n=a,a&&typeof a=="object"){const o=a,l=o.detail??o.title??o.message;typeof l=="string"&&l&&(r=l)}}catch{t&&(r=t.slice(0,300))}return new b3(e.status,r,n)}async function ht(e){const t=await fetch(e,{headers:{Accept:"application/json"}});if(!t.ok)throw await zb(t);return await t.json()}async function Ri(e,t){return e_("POST",e,t)}async function Pb(e,t){return e_("PUT",e,t)}async function x3(e){const t=await fetch(e,{method:"DELETE",headers:{Accept:"application/json"}});if(!t.ok)throw await zb(t)}async function e_(e,t,n){const r=await fetch(t,{method:e,headers:{Accept:"application/json","Content-Type":"application/json"},body:n===void 0?void 0:JSON.stringify(n)});if(!r.ok)throw await zb(r);return await r.json()}function t_(){return ht("/api/system/info")}function v3(){return ht("/api/system/env")}function w3(){return ht("/api/system/env/raw")}async function k3(e,t){const n=await fetch("/api/system/env",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({content:e,etag:t})});if(!n.ok){const r=await n.text(),a=new Error(`${n.status}: ${r}`);throw a.status=n.status,a}return n.json()}function E3(){return ht("/api/system/memory")}async function S3(e,t){const n=await fetch("/api/system/memory",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({provider:e,url:t})});if(!n.ok)throw new Error(`${n.status}: ${await n.text()}`);return n.json()}function n_(){return ht("/api/system/agents")}async function N3(e){const t=await fetch("/api/system/agents",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok)throw new Error(`${t.status}: ${await t.text()}`);return t.json()}function _3(){return ht("/api/system/latest-version")}async function j3(){const e=await fetch("/api/system/upgrade",{method:"POST"});if(!e.ok&&e.status!==409)throw new Error(`${e.status}: ${await e.text()}`);return e.json()}async function C3(e,t=!1){const n=t?"?fix=1":"",r=await fetch(`/api/system/doctor/${encodeURIComponent(e)}${n}`,{method:"POST"});if(!r.ok)throw new Error(`${r.status}: ${await r.text()}`);return r.json()}function ba(){return ht("/api/projects")}function A3(e){return ht(`/api/projects/${encodeURIComponent(e)}`)}async function T3(e){const t=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok){const n=await t.text();throw new Error(`${t.status}: ${n}`)}return t.json()}function M3(e){return ht(`/api/projects/${encodeURIComponent(e)}/conf`)}async function D3(e,t,n){const r=await fetch(`/api/projects/${encodeURIComponent(e)}/conf`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({content:t,etag:n})});if(!r.ok){const a=await r.text(),o=new Error(`${r.status}: ${a}`);throw o.status=r.status,o}return r.json()}async function O3(e,t={}){const n=await fetch(`/api/projects/${encodeURIComponent(e)}`,{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!n.ok){const r=await n.text();throw new Error(`${n.status}: ${r}`)}return n.json()}function R3(e){return ht(`/api/projects/${encodeURIComponent(e)}/pipelines`)}async function L3(e,t){const n=await fetch(`/api/projects/${encodeURIComponent(e)}/pipeline`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({pipeline:t})});if(!n.ok){const r=await n.text();throw new Error(`${n.status}: ${r}`)}return n.json()}function I3(e,t){return ht(`/api/projects/${encodeURIComponent(e)}/pipelines/${encodeURIComponent(t)}`)}async function z3(e,t,n,r){const a=await fetch(`/api/projects/${encodeURIComponent(e)}/pipelines/${encodeURIComponent(t)}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({content:n,etag:r})});if(!a.ok){const o=await a.text(),l=new Error(`${a.status}: ${o}`);throw l.status=a.status,l}return a.json()}async function P3(e,t,n="blank"){const r=await fetch(`/api/projects/${encodeURIComponent(e)}/pipelines`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:t,template:n})});if(!r.ok){const a=await r.text();throw new Error(`${r.status}: ${a}`)}return r.json()}async function B3(e,t){const n=await fetch(`/api/projects/${encodeURIComponent(e)}/pipelines/${encodeURIComponent(t)}`,{method:"DELETE"});if(!n.ok){const r=await n.text();throw new Error(`${n.status}: ${r}`)}}function U3(){var f;const e=Be(),t=Xe({queryKey:["system-info"],queryFn:t_,refetchInterval:3e4}),n=Xe({queryKey:["projects"],queryFn:ba,refetchInterval:1e4}),r=F3(),a=!t.isError,o=((f=n.data)==null?void 0:f.data)??[],l=o.filter(h=>h.pipelineStatus==="running").length,d=o.reduce((h,g)=>h+g.workers.active,0);return u.jsxs("div",{className:"h-10 flex items-center gap-3 px-6 font-[family-name:var(--font-mono)] text-[11px] text-[var(--color-text-muted)]",children:[u.jsx("span",{className:"nb-status",style:{background:a?"var(--color-running-bg)":"var(--color-crashed-bg)",color:a?"var(--color-running)":"var(--color-crashed)",padding:"2px 8px 2px 7px"},children:e(a?"status.server":"status.offline")}),u.jsx($3,{state:r}),u.jsx("span",{className:"text-[var(--color-text-subtle)]",children:"·"}),u.jsxs("span",{className:"flex items-center gap-1",title:e("status.pipelines.tooltip"),children:[u.jsx(Ih,{size:10,strokeWidth:2.5}),u.jsx("span",{className:"font-bold text-[var(--color-text)]",children:l})," ",e("status.pipeline.unit")]}),u.jsx("span",{className:"text-[var(--color-text-subtle)]",children:"·"}),u.jsxs("span",{className:"flex items-center gap-1",title:e("status.workers.tooltip"),children:[u.jsx(FN,{size:10,strokeWidth:2.5}),u.jsx("span",{className:"font-bold text-[var(--color-text)]",children:d})," ",e("status.worker.unit")]}),u.jsx("span",{className:"text-[var(--color-text-subtle)]",children:"·"}),u.jsxs("span",{children:["localhost:",window.location.port]}),t.data&&u.jsxs(u.Fragment,{children:[u.jsx("span",{className:"text-[var(--color-text-subtle)]",children:"·"}),u.jsxs("span",{children:["v",t.data.version]}),u.jsx("span",{className:"text-[var(--color-text-subtle)]",children:"·"}),u.jsxs("span",{children:["node ",t.data.nodeVersion]})]})]})}function $3({state:e}){const t=Be();return e==="open"?u.jsx("span",{className:"nb-status",style:{background:"var(--color-running-bg)",color:"var(--color-running)",padding:"2px 8px 2px 7px"},children:t("status.sse.open")}):e==="connecting"?u.jsx("span",{className:"nb-status",style:{background:"var(--color-stuck-bg)",color:"var(--color-stuck)",padding:"2px 8px 2px 7px"},children:t("status.sse.connecting")}):u.jsxs("span",{className:"nb-status",style:{background:"var(--color-crashed-bg)",color:"var(--color-crashed)",padding:"2px 8px 2px 7px"},children:[u.jsx(vu,{size:9,strokeWidth:2.5}),t("status.sse.down")]})}function F3(){const[e,t]=C.useState("connecting");return C.useEffect(()=>{let n=null,r=null,a=!1;const o=()=>{a||(n=new EventSource("/stream/heartbeat"),n.addEventListener("server.heartbeat",()=>t("open")),n.addEventListener("open",()=>t("open")),n.addEventListener("error",()=>{(n==null?void 0:n.readyState)===EventSource.CLOSED?(t("closed"),r==null&&(r=setTimeout(()=>{r=null,n==null||n.close(),o()},1e4))):t("connecting")}))};return o(),()=>{a=!0,r!=null&&clearTimeout(r),n==null||n.close()}},[]),e}function q3(){return u.jsxs("div",{className:"grid grid-cols-[240px_1fr] grid-rows-[1fr_40px] h-screen",children:[u.jsx("aside",{className:"row-span-1 row-start-1 border-r-[3px] border-[var(--color-text)] bg-[var(--color-bg)] p-4 flex flex-col",children:u.jsx(y3,{})}),u.jsx("main",{className:"row-start-1 overflow-auto p-6 flex flex-col gap-4",children:u.jsx(CO,{})}),u.jsx("footer",{className:"col-span-2 row-start-2 border-t-[3px] border-[var(--color-text)] bg-[var(--color-bg)]",children:u.jsx(U3,{})})]})}function zy(e,t){try{const n=JSON.stringify({message:(e instanceof Error?e.message:String(e)).slice(0,1e3),stack:(e instanceof Error?e.stack??"":"").slice(0,4e3),url:typeof window<"u"?window.location.href:"",ua:typeof navigator<"u"?navigator.userAgent:"",ts:new Date().toISOString(),context:t==null?void 0:t.slice(0,200)});fetch("/api/system/client-errors",{method:"POST",headers:{"Content-Type":"application/json"},body:n,keepalive:!0}).catch(()=>{})}catch{}}function H3(){typeof window>"u"||(window.addEventListener("error",e=>{zy(e.error??e.message??"unknown error","window.error")}),window.addEventListener("unhandledrejection",e=>{const t=e.reason;zy(t instanceof Error?t:String(t),"unhandledrejection")}))}class K3 extends C.Component{constructor(){super(...arguments);j1(this,"state",{error:null})}static getDerivedStateFromError(n){return{error:n}}componentDidCatch(n,r){var a;zy(n,`ErrorBoundary: ${((a=r.componentStack)==null?void 0:a.slice(0,200))??""}`),console.error("[ErrorBoundary]",n,r)}render(){if(this.state.error){const n=(()=>{try{return window.localStorage.getItem("sps-console-lang")==="zh"?"zh":"en"}catch{return"en"}})(),r=n==="zh"?"💥 UI 崩了":"💥 UI crashed",a=n==="zh"?"刷新页面":"Refresh page";return u.jsx("div",{className:"p-6",children:u.jsxs("div",{className:"nb-card max-w-2xl bg-[var(--color-crashed-bg)]",children:[u.jsx("h2",{className:"font-[family-name:var(--font-heading)] text-2xl font-bold mb-2",children:r}),u.jsx("p",{className:"text-sm mb-3 text-[var(--color-text-muted)]",children:this.state.error.message}),u.jsxs("details",{className:"text-xs mb-4",children:[u.jsx("summary",{className:"cursor-pointer font-semibold",children:"stack"}),u.jsx("pre",{className:"mt-2 font-[family-name:var(--font-mono)] overflow-auto max-h-60 bg-[var(--color-bg)] border-2 border-[var(--color-text)] rounded-md p-3",children:this.state.error.stack??"(no stack)"})]}),u.jsx("button",{className:"nb-btn nb-btn-mint",type:"button",onClick:()=>{this.setState({error:null}),window.location.reload()},children:a})]})})}return this.props.children}}function Bb(e,t){const[n,r]=C.useState(()=>{try{const a=localStorage.getItem(e);return a!==null?JSON.parse(a):t}catch{return t}});return C.useEffect(()=>{try{localStorage.setItem(e,JSON.stringify(n))}catch{}},[e,n]),[n,r]}const wf=e=>e.lastActivityAt?Date.parse(e.lastActivityAt):0;function Ub(e,t){const n=[...e];return t==="name"?n.sort((r,a)=>r.name.localeCompare(a.name)):t==="date"?n.sort((r,a)=>wf(a)-wf(r)):n.sort((r,a)=>{const o=r.pipelineStatus==="running"?1:0,l=a.pipelineStatus==="running"?1:0;return o!==l?l-o:wf(a)-wf(r)})}function G3({title:e,body:t,confirm:n,cancel:r,onConfirm:a,onCancel:o,danger:l}){const d=Be();return C.useEffect(()=>{const f=h=>{h.key==="Escape"&&o()};return window.addEventListener("keydown",f),()=>window.removeEventListener("keydown",f)},[o]),u.jsx("div",{role:"dialog","aria-modal":"true","aria-labelledby":"confirm-title",className:"fixed inset-0 z-50 flex items-center justify-center p-6 bg-black/30",children:u.jsxs("div",{className:"nb-card max-w-md w-full",children:[u.jsx("h2",{id:"confirm-title",className:"font-[family-name:var(--font-heading)] text-xl font-bold mb-2",children:e}),u.jsx("p",{className:"text-sm text-[var(--color-text-muted)] mb-5",children:t}),u.jsxs("div",{className:"flex gap-3 justify-end",children:[u.jsx("button",{className:"nb-btn",onClick:o,type:"button",children:r??d("dialog.cancel.default")}),u.jsx("button",{className:l?"nb-btn nb-btn-danger":"nb-btn nb-btn-yellow",onClick:async()=>{await a()},type:"button",children:n})]})]})})}const r_=C.createContext(null);function V3({children:e}){const t=Be(),[n,r]=C.useState(null),a=C.useCallback(d=>new Promise(f=>{r({kind:"confirm",opts:d,resolve:h=>{r(null),f(h)}})}),[]),o=C.useCallback(d=>new Promise(f=>{r({kind:"alert",opts:d,resolve:()=>{r(null),f()}})}),[]),l=C.useCallback(d=>new Promise(f=>{r({kind:"prompt",opts:d,resolve:h=>{r(null),f(h)}})}),[]);return u.jsxs(r_.Provider,{value:{confirm:a,alert:o,prompt:l},children:[e,(n==null?void 0:n.kind)==="confirm"&&u.jsx(G3,{title:n.opts.title,body:n.opts.body,confirm:n.opts.confirm??t("dialog.confirm.default"),cancel:n.opts.cancel,danger:n.opts.danger,onConfirm:()=>n.resolve(!0),onCancel:()=>n.resolve(!1)}),(n==null?void 0:n.kind)==="alert"&&u.jsx(Y3,{title:n.opts.title,body:n.opts.body,confirm:n.opts.confirm??t("dialog.alert.default"),onClose:()=>n.resolve()}),(n==null?void 0:n.kind)==="prompt"&&u.jsx(Q3,{title:n.opts.title,body:n.opts.body,placeholder:n.opts.placeholder,defaultValue:n.opts.defaultValue,confirm:n.opts.confirm??t("dialog.confirm.default"),cancel:n.opts.cancel??t("dialog.cancel.default"),onConfirm:d=>n.resolve(d),onCancel:()=>n.resolve(null)})]})}function mn(){const e=C.useContext(r_);if(!e)throw new Error("useDialog must be used inside <DialogProvider>");return e}function Y3({title:e,body:t,confirm:n,onClose:r}){return C.useEffect(()=>{const a=o=>{(o.key==="Escape"||o.key==="Enter")&&r()};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[r]),u.jsx("div",{role:"dialog","aria-modal":"true",className:"fixed inset-0 z-50 flex items-center justify-center p-6 bg-black/30",children:u.jsxs("div",{className:"nb-card max-w-md w-full",children:[u.jsx("h2",{className:"font-[family-name:var(--font-heading)] text-xl font-bold mb-2",children:e}),u.jsx("p",{className:"text-sm text-[var(--color-text-muted)] mb-5 whitespace-pre-wrap break-words",children:t}),u.jsx("div",{className:"flex gap-3 justify-end",children:u.jsx("button",{className:"nb-btn nb-btn-primary",onClick:r,type:"button",autoFocus:!0,children:n})})]})})}function Q3({title:e,body:t,placeholder:n,defaultValue:r,confirm:a,cancel:o,onConfirm:l,onCancel:d}){const[f,h]=C.useState(r??""),g=C.useRef(null);C.useEffect(()=>{var b,k;(b=g.current)==null||b.focus(),(k=g.current)==null||k.select();const y=v=>{v.key==="Escape"&&d()};return window.addEventListener("keydown",y),()=>window.removeEventListener("keydown",y)},[d]);const m=()=>{const y=f.trim();y&&l(y)};return u.jsx("div",{role:"dialog","aria-modal":"true",className:"fixed inset-0 z-50 flex items-center justify-center p-6 bg-black/30",children:u.jsxs("div",{className:"nb-card max-w-md w-full",children:[u.jsx("h2",{className:"font-[family-name:var(--font-heading)] text-xl font-bold mb-2",children:e}),t&&u.jsx("p",{className:"text-sm text-[var(--color-text-muted)] mb-3 whitespace-pre-wrap break-words",children:t}),u.jsx("input",{ref:g,type:"text",className:"nb-input w-full mb-5",placeholder:n,value:f,onChange:y=>h(y.target.value),onKeyDown:y=>{y.key==="Enter"&&!y.nativeEvent.isComposing&&(y.preventDefault(),m())}}),u.jsxs("div",{className:"flex gap-3 justify-end",children:[u.jsx("button",{className:"nb-btn",onClick:d,type:"button",children:o}),u.jsx("button",{className:"nb-btn nb-btn-primary",onClick:m,type:"button",disabled:!f.trim(),children:a})]})]})})}const $b=Symbol.for("yaml.alias"),Py=Symbol.for("yaml.document"),ys=Symbol.for("yaml.map"),i_=Symbol.for("yaml.pair"),Di=Symbol.for("yaml.scalar"),Xl=Symbol.for("yaml.seq"),Vr=Symbol.for("yaml.node.type"),ws=e=>!!e&&typeof e=="object"&&e[Vr]===$b,bo=e=>!!e&&typeof e=="object"&&e[Vr]===Py,Zl=e=>!!e&&typeof e=="object"&&e[Vr]===ys,en=e=>!!e&&typeof e=="object"&&e[Vr]===i_,Kt=e=>!!e&&typeof e=="object"&&e[Vr]===Di,Jl=e=>!!e&&typeof e=="object"&&e[Vr]===Xl;function ln(e){if(e&&typeof e=="object")switch(e[Vr]){case ys:case Xl:return!0}return!1}function cn(e){if(e&&typeof e=="object")switch(e[Vr]){case $b:case ys:case Di:case Xl:return!0}return!1}const a_=e=>(Kt(e)||ln(e))&&!!e.anchor,fr=Symbol("break visit"),s_=Symbol("skip children"),Ti=Symbol("remove node");function xo(e,t){const n=o_(t);bo(e)?fl(null,e.contents,n,Object.freeze([e]))===Ti&&(e.contents=null):fl(null,e,n,Object.freeze([]))}xo.BREAK=fr;xo.SKIP=s_;xo.REMOVE=Ti;function fl(e,t,n,r){const a=l_(e,t,n,r);if(cn(a)||en(a))return c_(e,r,a),fl(e,a,n,r);if(typeof a!="symbol"){if(ln(t)){r=Object.freeze(r.concat(t));for(let o=0;o<t.items.length;++o){const l=fl(o,t.items[o],n,r);if(typeof l=="number")o=l-1;else{if(l===fr)return fr;l===Ti&&(t.items.splice(o,1),o-=1)}}}else if(en(t)){r=Object.freeze(r.concat(t));const o=fl("key",t.key,n,r);if(o===fr)return fr;o===Ti&&(t.key=null);const l=fl("value",t.value,n,r);if(l===fr)return fr;l===Ti&&(t.value=null)}}return a}async function Bh(e,t){const n=o_(t);bo(e)?await hl(null,e.contents,n,Object.freeze([e]))===Ti&&(e.contents=null):await hl(null,e,n,Object.freeze([]))}Bh.BREAK=fr;Bh.SKIP=s_;Bh.REMOVE=Ti;async function hl(e,t,n,r){const a=await l_(e,t,n,r);if(cn(a)||en(a))return c_(e,r,a),hl(e,a,n,r);if(typeof a!="symbol"){if(ln(t)){r=Object.freeze(r.concat(t));for(let o=0;o<t.items.length;++o){const l=await hl(o,t.items[o],n,r);if(typeof l=="number")o=l-1;else{if(l===fr)return fr;l===Ti&&(t.items.splice(o,1),o-=1)}}}else if(en(t)){r=Object.freeze(r.concat(t));const o=await hl("key",t.key,n,r);if(o===fr)return fr;o===Ti&&(t.key=null);const l=await hl("value",t.value,n,r);if(l===fr)return fr;l===Ti&&(t.value=null)}}return a}function o_(e){return typeof e=="object"&&(e.Collection||e.Node||e.Value)?Object.assign({Alias:e.Node,Map:e.Node,Scalar:e.Node,Seq:e.Node},e.Value&&{Map:e.Value,Scalar:e.Value,Seq:e.Value},e.Collection&&{Map:e.Collection,Seq:e.Collection},e):e}function l_(e,t,n,r){var a,o,l,d,f;if(typeof n=="function")return n(e,t,r);if(Zl(t))return(a=n.Map)==null?void 0:a.call(n,e,t,r);if(Jl(t))return(o=n.Seq)==null?void 0:o.call(n,e,t,r);if(en(t))return(l=n.Pair)==null?void 0:l.call(n,e,t,r);if(Kt(t))return(d=n.Scalar)==null?void 0:d.call(n,e,t,r);if(ws(t))return(f=n.Alias)==null?void 0:f.call(n,e,t,r)}function c_(e,t,n){const r=t[t.length-1];if(ln(r))r.items[e]=n;else if(en(r))e==="key"?r.key=n:r.value=n;else if(bo(r))r.contents=n;else{const a=ws(r)?"alias":"scalar";throw new Error(`Cannot replace node with ${a} parent`)}}const W3={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},X3=e=>e.replace(/[!,[\]{}]/g,t=>W3[t]);class tr{constructor(t,n){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},tr.defaultYaml,t),this.tags=Object.assign({},tr.defaultTags,n)}clone(){const t=new tr(this.yaml,this.tags);return t.docStart=this.docStart,t}atDocument(){const t=new tr(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:tr.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},tr.defaultTags);break}return t}add(t,n){this.atNextDocument&&(this.yaml={explicit:tr.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},tr.defaultTags),this.atNextDocument=!1);const r=t.trim().split(/[ \t]+/),a=r.shift();switch(a){case"%TAG":{if(r.length!==2&&(n(0,"%TAG directive should contain exactly two parts"),r.length<2))return!1;const[o,l]=r;return this.tags[o]=l,!0}case"%YAML":{if(this.yaml.explicit=!0,r.length!==1)return n(0,"%YAML directive should contain exactly one part"),!1;const[o]=r;if(o==="1.1"||o==="1.2")return this.yaml.version=o,!0;{const l=/^\d+\.\d+$/.test(o);return n(6,`Unsupported YAML version ${o}`,l),!1}}default:return n(0,`Unknown directive ${a}`,!0),!1}}tagName(t,n){if(t==="!")return"!";if(t[0]!=="!")return n(`Not a valid tag: ${t}`),null;if(t[1]==="<"){const l=t.slice(2,-1);return l==="!"||l==="!!"?(n(`Verbatim tags aren't resolved, so ${t} is invalid.`),null):(t[t.length-1]!==">"&&n("Verbatim tags must end with a >"),l)}const[,r,a]=t.match(/^(.*!)([^!]*)$/s);a||n(`The ${t} tag has no suffix`);const o=this.tags[r];if(o)try{return o+decodeURIComponent(a)}catch(l){return n(String(l)),null}return r==="!"?t:(n(`Could not resolve tag: ${t}`),null)}tagString(t){for(const[n,r]of Object.entries(this.tags))if(t.startsWith(r))return n+X3(t.substring(r.length));return t[0]==="!"?t:`!<${t}>`}toString(t){const n=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],r=Object.entries(this.tags);let a;if(t&&r.length>0&&cn(t.contents)){const o={};xo(t.contents,(l,d)=>{cn(d)&&d.tag&&(o[d.tag]=!0)}),a=Object.keys(o)}else a=[];for(const[o,l]of r)o==="!!"&&l==="tag:yaml.org,2002:"||(!t||a.some(d=>d.startsWith(l)))&&n.push(`%TAG ${o} ${l}`);return n.join(`
458
+ `)}}tr.defaultYaml={explicit:!1,version:"1.2"};tr.defaultTags={"!!":"tag:yaml.org,2002:"};function u_(e){if(/[\x00-\x19\s,[\]{}]/.test(e)){const n=`Anchor must not contain whitespace or control characters: ${JSON.stringify(e)}`;throw new Error(n)}return!0}function d_(e){const t=new Set;return xo(e,{Value(n,r){r.anchor&&t.add(r.anchor)}}),t}function f_(e,t){for(let n=1;;++n){const r=`${e}${n}`;if(!t.has(r))return r}}function Z3(e,t){const n=[],r=new Map;let a=null;return{onAnchor:o=>{n.push(o),a??(a=d_(e));const l=f_(t,a);return a.add(l),l},setAnchors:()=>{for(const o of n){const l=r.get(o);if(typeof l=="object"&&l.anchor&&(Kt(l.node)||ln(l.node)))l.node.anchor=l.anchor;else{const d=new Error("Failed to resolve repeated object (this should not happen)");throw d.source=o,d}}},sourceObjects:r}}function pl(e,t,n,r){if(r&&typeof r=="object")if(Array.isArray(r))for(let a=0,o=r.length;a<o;++a){const l=r[a],d=pl(e,r,String(a),l);d===void 0?delete r[a]:d!==l&&(r[a]=d)}else if(r instanceof Map)for(const a of Array.from(r.keys())){const o=r.get(a),l=pl(e,r,a,o);l===void 0?r.delete(a):l!==o&&r.set(a,l)}else if(r instanceof Set)for(const a of Array.from(r)){const o=pl(e,r,a,a);o===void 0?r.delete(a):o!==a&&(r.delete(a),r.add(o))}else for(const[a,o]of Object.entries(r)){const l=pl(e,r,a,o);l===void 0?delete r[a]:l!==o&&(r[a]=l)}return e.call(t,n,r)}function Kr(e,t,n){if(Array.isArray(e))return e.map((r,a)=>Kr(r,String(a),n));if(e&&typeof e.toJSON=="function"){if(!n||!a_(e))return e.toJSON(t,n);const r={aliasCount:0,count:1,res:void 0};n.anchors.set(e,r),n.onCreate=o=>{r.res=o,delete n.onCreate};const a=e.toJSON(t,n);return n.onCreate&&n.onCreate(a),a}return typeof e=="bigint"&&!(n!=null&&n.keep)?Number(e):e}class Fb{constructor(t){Object.defineProperty(this,Vr,{value:t})}clone(){const t=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(t.range=this.range.slice()),t}toJS(t,{mapAsMap:n,maxAliasCount:r,onAnchor:a,reviver:o}={}){if(!bo(t))throw new TypeError("A document argument is required");const l={anchors:new Map,doc:t,keep:!0,mapAsMap:n===!0,mapKeyWarned:!1,maxAliasCount:typeof r=="number"?r:100},d=Kr(this,"",l);if(typeof a=="function")for(const{count:f,res:h}of l.anchors.values())a(h,f);return typeof o=="function"?pl(o,{"":d},"",d):d}}class Uh extends Fb{constructor(t){super($b),this.source=t,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(t,n){let r;n!=null&&n.aliasResolveCache?r=n.aliasResolveCache:(r=[],xo(t,{Node:(o,l)=>{(ws(l)||a_(l))&&r.push(l)}}),n&&(n.aliasResolveCache=r));let a;for(const o of r){if(o===this)break;o.anchor===this.source&&(a=o)}return a}toJSON(t,n){if(!n)return{source:this.source};const{anchors:r,doc:a,maxAliasCount:o}=n,l=this.resolve(a,n);if(!l){const f=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(f)}let d=r.get(l);if(d||(Kr(l,null,n),d=r.get(l)),(d==null?void 0:d.res)===void 0){const f="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(f)}if(o>=0&&(d.count+=1,d.aliasCount===0&&(d.aliasCount=Qf(a,l,r)),d.count*d.aliasCount>o)){const f="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(f)}return d.res}toString(t,n,r){const a=`*${this.source}`;if(t){if(u_(this.source),t.options.verifyAliasOrder&&!t.anchors.has(this.source)){const o=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(o)}if(t.implicitKey)return`${a} `}return a}}function Qf(e,t,n){if(ws(t)){const r=t.resolve(e),a=n&&r&&n.get(r);return a?a.count*a.aliasCount:0}else if(ln(t)){let r=0;for(const a of t.items){const o=Qf(e,a,n);o>r&&(r=o)}return r}else if(en(t)){const r=Qf(e,t.key,n),a=Qf(e,t.value,n);return Math.max(r,a)}return 1}const h_=e=>!e||typeof e!="function"&&typeof e!="object";class st extends Fb{constructor(t){super(Di),this.value=t}toJSON(t,n){return n!=null&&n.keep?this.value:Kr(this.value,t,n)}toString(){return String(this.value)}}st.BLOCK_FOLDED="BLOCK_FOLDED";st.BLOCK_LITERAL="BLOCK_LITERAL";st.PLAIN="PLAIN";st.QUOTE_DOUBLE="QUOTE_DOUBLE";st.QUOTE_SINGLE="QUOTE_SINGLE";const J3="tag:yaml.org,2002:";function eI(e,t,n){if(t){const r=n.filter(o=>o.tag===t),a=r.find(o=>!o.format)??r[0];if(!a)throw new Error(`Tag ${t} not found`);return a}return n.find(r=>{var a;return((a=r.identify)==null?void 0:a.call(r,e))&&!r.format})}function Eu(e,t,n){var m,y,b;if(bo(e)&&(e=e.contents),cn(e))return e;if(en(e)){const k=(y=(m=n.schema[ys]).createNode)==null?void 0:y.call(m,n.schema,null,n);return k.items.push(e),k}(e instanceof String||e instanceof Number||e instanceof Boolean||typeof BigInt<"u"&&e instanceof BigInt)&&(e=e.valueOf());const{aliasDuplicateObjects:r,onAnchor:a,onTagObj:o,schema:l,sourceObjects:d}=n;let f;if(r&&e&&typeof e=="object"){if(f=d.get(e),f)return f.anchor??(f.anchor=a(e)),new Uh(f.anchor);f={anchor:null,node:null},d.set(e,f)}t!=null&&t.startsWith("!!")&&(t=J3+t.slice(2));let h=eI(e,t,l.tags);if(!h){if(e&&typeof e.toJSON=="function"&&(e=e.toJSON()),!e||typeof e!="object"){const k=new st(e);return f&&(f.node=k),k}h=e instanceof Map?l[ys]:Symbol.iterator in Object(e)?l[Xl]:l[ys]}o&&(o(h),delete n.onTagObj);const g=h!=null&&h.createNode?h.createNode(n.schema,e,n):typeof((b=h==null?void 0:h.nodeClass)==null?void 0:b.from)=="function"?h.nodeClass.from(n.schema,e,n):new st(e);return t?g.tag=t:h.default||(g.tag=h.tag),f&&(f.node=g),g}function dh(e,t,n){let r=n;for(let a=t.length-1;a>=0;--a){const o=t[a];if(typeof o=="number"&&Number.isInteger(o)&&o>=0){const l=[];l[o]=r,r=l}else r=new Map([[o,r]])}return Eu(r,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:e,sourceObjects:new Map})}const ou=e=>e==null||typeof e=="object"&&!!e[Symbol.iterator]().next().done;class p_ extends Fb{constructor(t,n){super(t),Object.defineProperty(this,"schema",{value:n,configurable:!0,enumerable:!1,writable:!0})}clone(t){const n=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return t&&(n.schema=t),n.items=n.items.map(r=>cn(r)||en(r)?r.clone(t):r),this.range&&(n.range=this.range.slice()),n}addIn(t,n){if(ou(t))this.add(n);else{const[r,...a]=t,o=this.get(r,!0);if(ln(o))o.addIn(a,n);else if(o===void 0&&this.schema)this.set(r,dh(this.schema,a,n));else throw new Error(`Expected YAML collection at ${r}. Remaining path: ${a}`)}}deleteIn(t){const[n,...r]=t;if(r.length===0)return this.delete(n);const a=this.get(n,!0);if(ln(a))return a.deleteIn(r);throw new Error(`Expected YAML collection at ${n}. Remaining path: ${r}`)}getIn(t,n){const[r,...a]=t,o=this.get(r,!0);return a.length===0?!n&&Kt(o)?o.value:o:ln(o)?o.getIn(a,n):void 0}hasAllNullValues(t){return this.items.every(n=>{if(!en(n))return!1;const r=n.value;return r==null||t&&Kt(r)&&r.value==null&&!r.commentBefore&&!r.comment&&!r.tag})}hasIn(t){const[n,...r]=t;if(r.length===0)return this.has(n);const a=this.get(n,!0);return ln(a)?a.hasIn(r):!1}setIn(t,n){const[r,...a]=t;if(a.length===0)this.set(r,n);else{const o=this.get(r,!0);if(ln(o))o.setIn(a,n);else if(o===void 0&&this.schema)this.set(r,dh(this.schema,a,n));else throw new Error(`Expected YAML collection at ${r}. Remaining path: ${a}`)}}}const tI=e=>e.replace(/^(?!$)(?: $)?/gm,"#");function ua(e,t){return/^\n+$/.test(e)?e.substring(1):t?e.replace(/^(?! *$)/gm,t):e}const Vs=(e,t,n)=>e.endsWith(`
459
+ `)?ua(n,t):n.includes(`
460
+ `)?`
461
+ `+ua(n,t):(e.endsWith(" ")?"":" ")+n,m_="flow",By="block",Wf="quoted";function $h(e,t,n="flow",{indentAtStart:r,lineWidth:a=80,minContentWidth:o=20,onFold:l,onOverflow:d}={}){if(!a||a<0)return e;a<o&&(o=0);const f=Math.max(1+o,1+a-t.length);if(e.length<=f)return e;const h=[],g={};let m=a-t.length;typeof r=="number"&&(r>a-Math.max(2,o)?h.push(0):m=a-r);let y,b,k=!1,v=-1,S=-1,E=-1;n===By&&(v=sk(e,v,t.length),v!==-1&&(m=v+f));for(let N;N=e[v+=1];){if(n===Wf&&N==="\\"){switch(S=v,e[v+1]){case"x":v+=3;break;case"u":v+=5;break;case"U":v+=9;break;default:v+=1}E=v}if(N===`
462
+ `)n===By&&(v=sk(e,v,t.length)),m=v+t.length+f,y=void 0;else{if(N===" "&&b&&b!==" "&&b!==`
463
+ `&&b!==" "){const _=e[v+1];_&&_!==" "&&_!==`
464
+ `&&_!==" "&&(y=v)}if(v>=m)if(y)h.push(y),m=y+f,y=void 0;else if(n===Wf){for(;b===" "||b===" ";)b=N,N=e[v+=1],k=!0;const _=v>E+1?v-2:S-1;if(g[_])return e;h.push(_),g[_]=!0,m=_+f,y=void 0}else k=!0}b=N}if(k&&d&&d(),h.length===0)return e;l&&l();let j=e.slice(0,h[0]);for(let N=0;N<h.length;++N){const _=h[N],O=h[N+1]||e.length;_===0?j=`
465
+ ${t}${e.slice(0,O)}`:(n===Wf&&g[_]&&(j+=`${e[_]}\\`),j+=`
466
+ ${t}${e.slice(_+1,O)}`)}return j}function sk(e,t,n){let r=t,a=t+1,o=e[a];for(;o===" "||o===" ";)if(t<a+n)o=e[++t];else{do o=e[++t];while(o&&o!==`
467
+ `);r=t,a=t+1,o=e[a]}return r}const Fh=(e,t)=>({indentAtStart:t?e.indent.length:e.indentAtStart,lineWidth:e.options.lineWidth,minContentWidth:e.options.minContentWidth}),qh=e=>/^(%|---|\.\.\.)/m.test(e);function nI(e,t,n){if(!t||t<0)return!1;const r=t-n,a=e.length;if(a<=r)return!1;for(let o=0,l=0;o<a;++o)if(e[o]===`
468
+ `){if(o-l>r)return!0;if(l=o+1,a-l<=r)return!1}return!0}function uu(e,t){const n=JSON.stringify(e);if(t.options.doubleQuotedAsJSON)return n;const{implicitKey:r}=t,a=t.options.doubleQuotedMinMultiLineLength,o=t.indent||(qh(e)?" ":"");let l="",d=0;for(let f=0,h=n[f];h;h=n[++f])if(h===" "&&n[f+1]==="\\"&&n[f+2]==="n"&&(l+=n.slice(d,f)+"\\ ",f+=1,d=f,h="\\"),h==="\\")switch(n[f+1]){case"u":{l+=n.slice(d,f);const g=n.substr(f+2,4);switch(g){case"0000":l+="\\0";break;case"0007":l+="\\a";break;case"000b":l+="\\v";break;case"001b":l+="\\e";break;case"0085":l+="\\N";break;case"00a0":l+="\\_";break;case"2028":l+="\\L";break;case"2029":l+="\\P";break;default:g.substr(0,2)==="00"?l+="\\x"+g.substr(2):l+=n.substr(f,6)}f+=5,d=f+1}break;case"n":if(r||n[f+2]==='"'||n.length<a)f+=1;else{for(l+=n.slice(d,f)+`
469
+
470
+ `;n[f+2]==="\\"&&n[f+3]==="n"&&n[f+4]!=='"';)l+=`
471
+ `,f+=2;l+=o,n[f+2]===" "&&(l+="\\"),f+=1,d=f+1}break;default:f+=1}return l=d?l+n.slice(d):n,r?l:$h(l,o,Wf,Fh(t,!1))}function Uy(e,t){if(t.options.singleQuote===!1||t.implicitKey&&e.includes(`
472
+ `)||/[ \t]\n|\n[ \t]/.test(e))return uu(e,t);const n=t.indent||(qh(e)?" ":""),r="'"+e.replace(/'/g,"''").replace(/\n+/g,`$&
473
+ ${n}`)+"'";return t.implicitKey?r:$h(r,n,m_,Fh(t,!1))}function ml(e,t){const{singleQuote:n}=t.options;let r;if(n===!1)r=uu;else{const a=e.includes('"'),o=e.includes("'");a&&!o?r=Uy:o&&!a?r=uu:r=n?Uy:uu}return r(e,t)}let $y;try{$y=new RegExp(`(^|(?<!
474
+ ))
475
+ +(?!
476
+ |$)`,"g")}catch{$y=/\n+(?!\n|$)/g}function Xf({comment:e,type:t,value:n},r,a,o){const{blockQuote:l,commentString:d,lineWidth:f}=r.options;if(!l||/\n[\t ]+$/.test(n))return ml(n,r);const h=r.indent||(r.forceBlockIndent||qh(n)?" ":""),g=l==="literal"?!0:l==="folded"||t===st.BLOCK_FOLDED?!1:t===st.BLOCK_LITERAL?!0:!nI(n,f,h.length);if(!n)return g?`|
477
+ `:`>
478
+ `;let m,y;for(y=n.length;y>0;--y){const O=n[y-1];if(O!==`
479
+ `&&O!==" "&&O!==" ")break}let b=n.substring(y);const k=b.indexOf(`
480
+ `);k===-1?m="-":n===b||k!==b.length-1?(m="+",o&&o()):m="",b&&(n=n.slice(0,-b.length),b[b.length-1]===`
481
+ `&&(b=b.slice(0,-1)),b=b.replace($y,`$&${h}`));let v=!1,S,E=-1;for(S=0;S<n.length;++S){const O=n[S];if(O===" ")v=!0;else if(O===`
482
+ `)E=S;else break}let j=n.substring(0,E<S?E+1:S);j&&(n=n.substring(j.length),j=j.replace(/\n+/g,`$&${h}`));let _=(v?h?"2":"1":"")+m;if(e&&(_+=" "+d(e.replace(/ ?[\r\n]+/g," ")),a&&a()),!g){const O=n.replace(/\n+/g,`
483
+ $&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${h}`);let T=!1;const I=Fh(r,!0);l!=="folded"&&t!==st.BLOCK_FOLDED&&(I.onOverflow=()=>{T=!0});const R=$h(`${j}${O}${b}`,h,By,I);if(!T)return`>${_}
484
+ ${h}${R}`}return n=n.replace(/\n+/g,`$&${h}`),`|${_}
485
+ ${h}${j}${n}${b}`}function rI(e,t,n,r){const{type:a,value:o}=e,{actualString:l,implicitKey:d,indent:f,indentStep:h,inFlow:g}=t;if(d&&o.includes(`
486
+ `)||g&&/[[\]{},]/.test(o))return ml(o,t);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(o))return d||g||!o.includes(`
487
+ `)?ml(o,t):Xf(e,t,n,r);if(!d&&!g&&a!==st.PLAIN&&o.includes(`
488
+ `))return Xf(e,t,n,r);if(qh(o)){if(f==="")return t.forceBlockIndent=!0,Xf(e,t,n,r);if(d&&f===h)return ml(o,t)}const m=o.replace(/\n+/g,`$&
489
+ ${f}`);if(l){const y=v=>{var S;return v.default&&v.tag!=="tag:yaml.org,2002:str"&&((S=v.test)==null?void 0:S.test(m))},{compat:b,tags:k}=t.doc.schema;if(k.some(y)||b!=null&&b.some(y))return ml(o,t)}return d?m:$h(m,f,m_,Fh(t,!1))}function Yu(e,t,n,r){const{implicitKey:a,inFlow:o}=t,l=typeof e.value=="string"?e:Object.assign({},e,{value:String(e.value)});let{type:d}=e;d!==st.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(l.value)&&(d=st.QUOTE_DOUBLE);const f=g=>{switch(g){case st.BLOCK_FOLDED:case st.BLOCK_LITERAL:return a||o?ml(l.value,t):Xf(l,t,n,r);case st.QUOTE_DOUBLE:return uu(l.value,t);case st.QUOTE_SINGLE:return Uy(l.value,t);case st.PLAIN:return rI(l,t,n,r);default:return null}};let h=f(d);if(h===null){const{defaultKeyType:g,defaultStringType:m}=t.options,y=a&&g||m;if(h=f(y),h===null)throw new Error(`Unsupported default string type ${y}`)}return h}function g_(e,t){const n=Object.assign({blockQuote:!0,commentString:tI,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trailingComma:!1,trueStr:"true",verifyAliasOrder:!0},e.schema.toStringOptions,t);let r;switch(n.collectionStyle){case"block":r=!1;break;case"flow":r=!0;break;default:r=null}return{anchors:new Set,doc:e,flowCollectionPadding:n.flowCollectionPadding?" ":"",indent:"",indentStep:typeof n.indent=="number"?" ".repeat(n.indent):" ",inFlow:r,options:n}}function iI(e,t){var a;if(t.tag){const o=e.filter(l=>l.tag===t.tag);if(o.length>0)return o.find(l=>l.format===t.format)??o[0]}let n,r;if(Kt(t)){r=t.value;let o=e.filter(l=>{var d;return(d=l.identify)==null?void 0:d.call(l,r)});if(o.length>1){const l=o.filter(d=>d.test);l.length>0&&(o=l)}n=o.find(l=>l.format===t.format)??o.find(l=>!l.format)}else r=t,n=e.find(o=>o.nodeClass&&r instanceof o.nodeClass);if(!n){const o=((a=r==null?void 0:r.constructor)==null?void 0:a.name)??(r===null?"null":typeof r);throw new Error(`Tag not resolved for ${o} value`)}return n}function aI(e,t,{anchors:n,doc:r}){if(!r.directives)return"";const a=[],o=(Kt(e)||ln(e))&&e.anchor;o&&u_(o)&&(n.add(o),a.push(`&${o}`));const l=e.tag??(t.default?null:t.tag);return l&&a.push(r.directives.tagString(l)),a.join(" ")}function Il(e,t,n,r){var f;if(en(e))return e.toString(t,n,r);if(ws(e)){if(t.doc.directives)return e.toString(t);if((f=t.resolvedAliases)!=null&&f.has(e))throw new TypeError("Cannot stringify circular structure without alias nodes");t.resolvedAliases?t.resolvedAliases.add(e):t.resolvedAliases=new Set([e]),e=e.resolve(t.doc)}let a;const o=cn(e)?e:t.doc.createNode(e,{onTagObj:h=>a=h});a??(a=iI(t.doc.schema.tags,o));const l=aI(o,a,t);l.length>0&&(t.indentAtStart=(t.indentAtStart??0)+l.length+1);const d=typeof a.stringify=="function"?a.stringify(o,t,n,r):Kt(o)?Yu(o,t,n,r):o.toString(t,n,r);return l?Kt(o)||d[0]==="{"||d[0]==="["?`${l} ${d}`:`${l}
490
+ ${t.indent}${d}`:d}function sI({key:e,value:t},n,r,a){const{allNullValues:o,doc:l,indent:d,indentStep:f,options:{commentString:h,indentSeq:g,simpleKeys:m}}=n;let y=cn(e)&&e.comment||null;if(m){if(y)throw new Error("With simple keys, key nodes cannot have comments");if(ln(e)||!cn(e)&&typeof e=="object"){const I="With simple keys, collection cannot be used as a key value";throw new Error(I)}}let b=!m&&(!e||y&&t==null&&!n.inFlow||ln(e)||(Kt(e)?e.type===st.BLOCK_FOLDED||e.type===st.BLOCK_LITERAL:typeof e=="object"));n=Object.assign({},n,{allNullValues:!1,implicitKey:!b&&(m||!o),indent:d+f});let k=!1,v=!1,S=Il(e,n,()=>k=!0,()=>v=!0);if(!b&&!n.inFlow&&S.length>1024){if(m)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");b=!0}if(n.inFlow){if(o||t==null)return k&&r&&r(),S===""?"?":b?`? ${S}`:S}else if(o&&!m||t==null&&b)return S=`? ${S}`,y&&!k?S+=Vs(S,n.indent,h(y)):v&&a&&a(),S;k&&(y=null),b?(y&&(S+=Vs(S,n.indent,h(y))),S=`? ${S}
491
+ ${d}:`):(S=`${S}:`,y&&(S+=Vs(S,n.indent,h(y))));let E,j,N;cn(t)?(E=!!t.spaceBefore,j=t.commentBefore,N=t.comment):(E=!1,j=null,N=null,t&&typeof t=="object"&&(t=l.createNode(t))),n.implicitKey=!1,!b&&!y&&Kt(t)&&(n.indentAtStart=S.length+1),v=!1,!g&&f.length>=2&&!n.inFlow&&!b&&Jl(t)&&!t.flow&&!t.tag&&!t.anchor&&(n.indent=n.indent.substring(2));let _=!1;const O=Il(t,n,()=>_=!0,()=>v=!0);let T=" ";if(y||E||j){if(T=E?`
492
+ `:"",j){const I=h(j);T+=`
493
+ ${ua(I,n.indent)}`}O===""&&!n.inFlow?T===`
494
+ `&&N&&(T=`
495
+
496
+ `):T+=`
497
+ ${n.indent}`}else if(!b&&ln(t)){const I=O[0],R=O.indexOf(`
498
+ `),F=R!==-1,M=n.inFlow??t.flow??t.items.length===0;if(F||!M){let U=!1;if(F&&(I==="&"||I==="!")){let q=O.indexOf(" ");I==="&"&&q!==-1&&q<R&&O[q+1]==="!"&&(q=O.indexOf(" ",q+1)),(q===-1||R<q)&&(U=!0)}U||(T=`
499
+ ${n.indent}`)}}else(O===""||O[0]===`
500
+ `)&&(T="");return S+=T+O,n.inFlow?_&&r&&r():N&&!_?S+=Vs(S,n.indent,h(N)):v&&a&&a(),S}function y_(e,t){(e==="debug"||e==="warn")&&console.warn(t)}const kf="<<",fa={identify:e=>e===kf||typeof e=="symbol"&&e.description===kf,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new st(Symbol(kf)),{addToJSMap:b_}),stringify:()=>kf},oI=(e,t)=>(fa.identify(t)||Kt(t)&&(!t.type||t.type===st.PLAIN)&&fa.identify(t.value))&&(e==null?void 0:e.doc.schema.tags.some(n=>n.tag===fa.tag&&n.default));function b_(e,t,n){if(n=e&&ws(n)?n.resolve(e.doc):n,Jl(n))for(const r of n.items)jg(e,t,r);else if(Array.isArray(n))for(const r of n)jg(e,t,r);else jg(e,t,n)}function jg(e,t,n){const r=e&&ws(n)?n.resolve(e.doc):n;if(!Zl(r))throw new Error("Merge sources must be maps or map aliases");const a=r.toJSON(null,e,Map);for(const[o,l]of a)t instanceof Map?t.has(o)||t.set(o,l):t instanceof Set?t.add(o):Object.prototype.hasOwnProperty.call(t,o)||Object.defineProperty(t,o,{value:l,writable:!0,enumerable:!0,configurable:!0});return t}function x_(e,t,{key:n,value:r}){if(cn(n)&&n.addToJSMap)n.addToJSMap(e,t,r);else if(oI(e,n))b_(e,t,r);else{const a=Kr(n,"",e);if(t instanceof Map)t.set(a,Kr(r,a,e));else if(t instanceof Set)t.add(a);else{const o=lI(n,a,e),l=Kr(r,o,e);o in t?Object.defineProperty(t,o,{value:l,writable:!0,enumerable:!0,configurable:!0}):t[o]=l}}return t}function lI(e,t,n){if(t===null)return"";if(typeof t!="object")return String(t);if(cn(e)&&(n!=null&&n.doc)){const r=g_(n.doc,{});r.anchors=new Set;for(const o of n.anchors.keys())r.anchors.add(o.anchor);r.inFlow=!0,r.inStringifyKey=!0;const a=e.toString(r);if(!n.mapKeyWarned){let o=JSON.stringify(a);o.length>40&&(o=o.substring(0,36)+'..."'),y_(n.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${o}. Set mapAsMap: true to use object keys.`),n.mapKeyWarned=!0}return a}return JSON.stringify(t)}function qb(e,t,n){const r=Eu(e,void 0,n),a=Eu(t,void 0,n);return new Vn(r,a)}class Vn{constructor(t,n=null){Object.defineProperty(this,Vr,{value:i_}),this.key=t,this.value=n}clone(t){let{key:n,value:r}=this;return cn(n)&&(n=n.clone(t)),cn(r)&&(r=r.clone(t)),new Vn(n,r)}toJSON(t,n){const r=n!=null&&n.mapAsMap?new Map:{};return x_(n,r,this)}toString(t,n,r){return t!=null&&t.doc?sI(this,t,n,r):JSON.stringify(this)}}function v_(e,t,n){return(t.inFlow??e.flow?uI:cI)(e,t,n)}function cI({comment:e,items:t},n,{blockItemPrefix:r,flowChars:a,itemIndent:o,onChompKeep:l,onComment:d}){const{indent:f,options:{commentString:h}}=n,g=Object.assign({},n,{indent:o,type:null});let m=!1;const y=[];for(let k=0;k<t.length;++k){const v=t[k];let S=null;if(cn(v))!m&&v.spaceBefore&&y.push(""),fh(n,y,v.commentBefore,m),v.comment&&(S=v.comment);else if(en(v)){const j=cn(v.key)?v.key:null;j&&(!m&&j.spaceBefore&&y.push(""),fh(n,y,j.commentBefore,m))}m=!1;let E=Il(v,g,()=>S=null,()=>m=!0);S&&(E+=Vs(E,o,h(S))),m&&S&&(m=!1),y.push(r+E)}let b;if(y.length===0)b=a.start+a.end;else{b=y[0];for(let k=1;k<y.length;++k){const v=y[k];b+=v?`
501
+ ${f}${v}`:`
502
+ `}}return e?(b+=`
503
+ `+ua(h(e),f),d&&d()):m&&l&&l(),b}function uI({items:e},t,{flowChars:n,itemIndent:r}){const{indent:a,indentStep:o,flowCollectionPadding:l,options:{commentString:d}}=t;r+=o;const f=Object.assign({},t,{indent:r,inFlow:!0,type:null});let h=!1,g=0;const m=[];for(let k=0;k<e.length;++k){const v=e[k];let S=null;if(cn(v))v.spaceBefore&&m.push(""),fh(t,m,v.commentBefore,!1),v.comment&&(S=v.comment);else if(en(v)){const j=cn(v.key)?v.key:null;j&&(j.spaceBefore&&m.push(""),fh(t,m,j.commentBefore,!1),j.comment&&(h=!0));const N=cn(v.value)?v.value:null;N?(N.comment&&(S=N.comment),N.commentBefore&&(h=!0)):v.value==null&&(j!=null&&j.comment)&&(S=j.comment)}S&&(h=!0);let E=Il(v,f,()=>S=null);h||(h=m.length>g||E.includes(`
504
+ `)),k<e.length-1?E+=",":t.options.trailingComma&&(t.options.lineWidth>0&&(h||(h=m.reduce((j,N)=>j+N.length+2,2)+(E.length+2)>t.options.lineWidth)),h&&(E+=",")),S&&(E+=Vs(E,r,d(S))),m.push(E),g=m.length}const{start:y,end:b}=n;if(m.length===0)return y+b;if(!h){const k=m.reduce((v,S)=>v+S.length+2,2);h=t.options.lineWidth>0&&k>t.options.lineWidth}if(h){let k=y;for(const v of m)k+=v?`
505
+ ${o}${a}${v}`:`
506
+ `;return`${k}
507
+ ${a}${b}`}else return`${y}${l}${m.join(" ")}${l}${b}`}function fh({indent:e,options:{commentString:t}},n,r,a){if(r&&a&&(r=r.replace(/^\n+/,"")),r){const o=ua(t(r),e);n.push(o.trimStart())}}function Ys(e,t){const n=Kt(t)?t.value:t;for(const r of e)if(en(r)&&(r.key===t||r.key===n||Kt(r.key)&&r.key.value===n))return r}class Nr extends p_{static get tagName(){return"tag:yaml.org,2002:map"}constructor(t){super(ys,t),this.items=[]}static from(t,n,r){const{keepUndefined:a,replacer:o}=r,l=new this(t),d=(f,h)=>{if(typeof o=="function")h=o.call(n,f,h);else if(Array.isArray(o)&&!o.includes(f))return;(h!==void 0||a)&&l.items.push(qb(f,h,r))};if(n instanceof Map)for(const[f,h]of n)d(f,h);else if(n&&typeof n=="object")for(const f of Object.keys(n))d(f,n[f]);return typeof t.sortMapEntries=="function"&&l.items.sort(t.sortMapEntries),l}add(t,n){var l;let r;en(t)?r=t:!t||typeof t!="object"||!("key"in t)?r=new Vn(t,t==null?void 0:t.value):r=new Vn(t.key,t.value);const a=Ys(this.items,r.key),o=(l=this.schema)==null?void 0:l.sortMapEntries;if(a){if(!n)throw new Error(`Key ${r.key} already set`);Kt(a.value)&&h_(r.value)?a.value.value=r.value:a.value=r.value}else if(o){const d=this.items.findIndex(f=>o(r,f)<0);d===-1?this.items.push(r):this.items.splice(d,0,r)}else this.items.push(r)}delete(t){const n=Ys(this.items,t);return n?this.items.splice(this.items.indexOf(n),1).length>0:!1}get(t,n){const r=Ys(this.items,t),a=r==null?void 0:r.value;return(!n&&Kt(a)?a.value:a)??void 0}has(t){return!!Ys(this.items,t)}set(t,n){this.add(new Vn(t,n),!0)}toJSON(t,n,r){const a=r?new r:n!=null&&n.mapAsMap?new Map:{};n!=null&&n.onCreate&&n.onCreate(a);for(const o of this.items)x_(n,a,o);return a}toString(t,n,r){if(!t)return JSON.stringify(this);for(const a of this.items)if(!en(a))throw new Error(`Map items must all be pairs; found ${JSON.stringify(a)} instead`);return!t.allNullValues&&this.hasAllNullValues(!1)&&(t=Object.assign({},t,{allNullValues:!0})),v_(this,t,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:t.indent||"",onChompKeep:r,onComment:n})}}const ec={collection:"map",default:!0,nodeClass:Nr,tag:"tag:yaml.org,2002:map",resolve(e,t){return Zl(e)||t("Expected a mapping for this tag"),e},createNode:(e,t,n)=>Nr.from(e,t,n)};class xs extends p_{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(t){super(Xl,t),this.items=[]}add(t){this.items.push(t)}delete(t){const n=Ef(t);return typeof n!="number"?!1:this.items.splice(n,1).length>0}get(t,n){const r=Ef(t);if(typeof r!="number")return;const a=this.items[r];return!n&&Kt(a)?a.value:a}has(t){const n=Ef(t);return typeof n=="number"&&n<this.items.length}set(t,n){const r=Ef(t);if(typeof r!="number")throw new Error(`Expected a valid index, not ${t}.`);const a=this.items[r];Kt(a)&&h_(n)?a.value=n:this.items[r]=n}toJSON(t,n){const r=[];n!=null&&n.onCreate&&n.onCreate(r);let a=0;for(const o of this.items)r.push(Kr(o,String(a++),n));return r}toString(t,n,r){return t?v_(this,t,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:(t.indent||"")+" ",onChompKeep:r,onComment:n}):JSON.stringify(this)}static from(t,n,r){const{replacer:a}=r,o=new this(t);if(n&&Symbol.iterator in Object(n)){let l=0;for(let d of n){if(typeof a=="function"){const f=n instanceof Set?d:String(l++);d=a.call(n,f,d)}o.items.push(Eu(d,void 0,r))}}return o}}function Ef(e){let t=Kt(e)?e.value:e;return t&&typeof t=="string"&&(t=Number(t)),typeof t=="number"&&Number.isInteger(t)&&t>=0?t:null}const tc={collection:"seq",default:!0,nodeClass:xs,tag:"tag:yaml.org,2002:seq",resolve(e,t){return Jl(e)||t("Expected a sequence for this tag"),e},createNode:(e,t,n)=>xs.from(e,t,n)},Hh={identify:e=>typeof e=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:e=>e,stringify(e,t,n,r){return t=Object.assign({actualString:!0},t),Yu(e,t,n,r)}},Kh={identify:e=>e==null,createNode:()=>new st(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new st(null),stringify:({source:e},t)=>typeof e=="string"&&Kh.test.test(e)?e:t.options.nullStr},Hb={identify:e=>typeof e=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:e=>new st(e[0]==="t"||e[0]==="T"),stringify({source:e,value:t},n){if(e&&Hb.test.test(e)){const r=e[0]==="t"||e[0]==="T";if(t===r)return e}return t?n.options.trueStr:n.options.falseStr}};function mi({format:e,minFractionDigits:t,tag:n,value:r}){if(typeof r=="bigint")return String(r);const a=typeof r=="number"?r:Number(r);if(!isFinite(a))return isNaN(a)?".nan":a<0?"-.inf":".inf";let o=Object.is(r,-0)?"-0":JSON.stringify(r);if(!e&&t&&(!n||n==="tag:yaml.org,2002:float")&&/^\d/.test(o)){let l=o.indexOf(".");l<0&&(l=o.length,o+=".");let d=t-(o.length-l-1);for(;d-- >0;)o+="0"}return o}const w_={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:e=>e.slice(-3).toLowerCase()==="nan"?NaN:e[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:mi},k_={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:e=>parseFloat(e),stringify(e){const t=Number(e.value);return isFinite(t)?t.toExponential():mi(e)}},E_={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(e){const t=new st(parseFloat(e)),n=e.indexOf(".");return n!==-1&&e[e.length-1]==="0"&&(t.minFractionDigits=e.length-n-1),t},stringify:mi},Gh=e=>typeof e=="bigint"||Number.isInteger(e),Kb=(e,t,n,{intAsBigInt:r})=>r?BigInt(e):parseInt(e.substring(t),n);function S_(e,t,n){const{value:r}=e;return Gh(r)&&r>=0?n+r.toString(t):mi(e)}const N_={identify:e=>Gh(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(e,t,n)=>Kb(e,2,8,n),stringify:e=>S_(e,8,"0o")},__={identify:Gh,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(e,t,n)=>Kb(e,0,10,n),stringify:mi},j_={identify:e=>Gh(e)&&e>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(e,t,n)=>Kb(e,2,16,n),stringify:e=>S_(e,16,"0x")},dI=[ec,tc,Hh,Kh,Hb,N_,__,j_,w_,k_,E_];function ok(e){return typeof e=="bigint"||Number.isInteger(e)}const Sf=({value:e})=>JSON.stringify(e),fI=[{identify:e=>typeof e=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:e=>e,stringify:Sf},{identify:e=>e==null,createNode:()=>new st(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:Sf},{identify:e=>typeof e=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:e=>e==="true",stringify:Sf},{identify:ok,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(e,t,{intAsBigInt:n})=>n?BigInt(e):parseInt(e,10),stringify:({value:e})=>ok(e)?e.toString():JSON.stringify(e)},{identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:e=>parseFloat(e),stringify:Sf}],hI={default:!0,tag:"",test:/^/,resolve(e,t){return t(`Unresolved plain scalar ${JSON.stringify(e)}`),e}},pI=[ec,tc].concat(fI,hI),Gb={identify:e=>e instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(e,t){if(typeof atob=="function"){const n=atob(e.replace(/[\n\r]/g,"")),r=new Uint8Array(n.length);for(let a=0;a<n.length;++a)r[a]=n.charCodeAt(a);return r}else return t("This environment does not support reading binary tags; either Buffer or atob is required"),e},stringify({comment:e,type:t,value:n},r,a,o){if(!n)return"";const l=n;let d;if(typeof btoa=="function"){let f="";for(let h=0;h<l.length;++h)f+=String.fromCharCode(l[h]);d=btoa(f)}else throw new Error("This environment does not support writing binary tags; either Buffer or btoa is required");if(t??(t=st.BLOCK_LITERAL),t!==st.QUOTE_DOUBLE){const f=Math.max(r.options.lineWidth-r.indent.length,r.options.minContentWidth),h=Math.ceil(d.length/f),g=new Array(h);for(let m=0,y=0;m<h;++m,y+=f)g[m]=d.substr(y,f);d=g.join(t===st.BLOCK_LITERAL?`
508
+ `:" ")}return Yu({comment:e,type:t,value:d},r,a,o)}};function C_(e,t){if(Jl(e))for(let n=0;n<e.items.length;++n){let r=e.items[n];if(!en(r)){if(Zl(r)){r.items.length>1&&t("Each pair must have its own sequence indicator");const a=r.items[0]||new Vn(new st(null));if(r.commentBefore&&(a.key.commentBefore=a.key.commentBefore?`${r.commentBefore}
509
+ ${a.key.commentBefore}`:r.commentBefore),r.comment){const o=a.value??a.key;o.comment=o.comment?`${r.comment}
510
+ ${o.comment}`:r.comment}r=a}e.items[n]=en(r)?r:new Vn(r)}}else t("Expected a sequence for this tag");return e}function A_(e,t,n){const{replacer:r}=n,a=new xs(e);a.tag="tag:yaml.org,2002:pairs";let o=0;if(t&&Symbol.iterator in Object(t))for(let l of t){typeof r=="function"&&(l=r.call(t,String(o++),l));let d,f;if(Array.isArray(l))if(l.length===2)d=l[0],f=l[1];else throw new TypeError(`Expected [key, value] tuple: ${l}`);else if(l&&l instanceof Object){const h=Object.keys(l);if(h.length===1)d=h[0],f=l[d];else throw new TypeError(`Expected tuple with one key, not ${h.length} keys`)}else d=l;a.items.push(qb(d,f,n))}return a}const Vb={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:C_,createNode:A_};class bl extends xs{constructor(){super(),this.add=Nr.prototype.add.bind(this),this.delete=Nr.prototype.delete.bind(this),this.get=Nr.prototype.get.bind(this),this.has=Nr.prototype.has.bind(this),this.set=Nr.prototype.set.bind(this),this.tag=bl.tag}toJSON(t,n){if(!n)return super.toJSON(t);const r=new Map;n!=null&&n.onCreate&&n.onCreate(r);for(const a of this.items){let o,l;if(en(a)?(o=Kr(a.key,"",n),l=Kr(a.value,o,n)):o=Kr(a,"",n),r.has(o))throw new Error("Ordered maps must not include duplicate keys");r.set(o,l)}return r}static from(t,n,r){const a=A_(t,n,r),o=new this;return o.items=a.items,o}}bl.tag="tag:yaml.org,2002:omap";const Yb={collection:"seq",identify:e=>e instanceof Map,nodeClass:bl,default:!1,tag:"tag:yaml.org,2002:omap",resolve(e,t){const n=C_(e,t),r=[];for(const{key:a}of n.items)Kt(a)&&(r.includes(a.value)?t(`Ordered maps must not include duplicate keys: ${a.value}`):r.push(a.value));return Object.assign(new bl,n)},createNode:(e,t,n)=>bl.from(e,t,n)};function T_({value:e,source:t},n){return t&&(e?M_:D_).test.test(t)?t:e?n.options.trueStr:n.options.falseStr}const M_={identify:e=>e===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new st(!0),stringify:T_},D_={identify:e=>e===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new st(!1),stringify:T_},mI={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:e=>e.slice(-3).toLowerCase()==="nan"?NaN:e[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:mi},gI={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:e=>parseFloat(e.replace(/_/g,"")),stringify(e){const t=Number(e.value);return isFinite(t)?t.toExponential():mi(e)}},yI={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(e){const t=new st(parseFloat(e.replace(/_/g,""))),n=e.indexOf(".");if(n!==-1){const r=e.substring(n+1).replace(/_/g,"");r[r.length-1]==="0"&&(t.minFractionDigits=r.length)}return t},stringify:mi},Qu=e=>typeof e=="bigint"||Number.isInteger(e);function Vh(e,t,n,{intAsBigInt:r}){const a=e[0];if((a==="-"||a==="+")&&(t+=1),e=e.substring(t).replace(/_/g,""),r){switch(n){case 2:e=`0b${e}`;break;case 8:e=`0o${e}`;break;case 16:e=`0x${e}`;break}const l=BigInt(e);return a==="-"?BigInt(-1)*l:l}const o=parseInt(e,n);return a==="-"?-1*o:o}function Qb(e,t,n){const{value:r}=e;if(Qu(r)){const a=r.toString(t);return r<0?"-"+n+a.substr(1):n+a}return mi(e)}const bI={identify:Qu,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(e,t,n)=>Vh(e,2,2,n),stringify:e=>Qb(e,2,"0b")},xI={identify:Qu,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(e,t,n)=>Vh(e,1,8,n),stringify:e=>Qb(e,8,"0")},vI={identify:Qu,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(e,t,n)=>Vh(e,0,10,n),stringify:mi},wI={identify:Qu,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(e,t,n)=>Vh(e,2,16,n),stringify:e=>Qb(e,16,"0x")};class xl extends Nr{constructor(t){super(t),this.tag=xl.tag}add(t){let n;en(t)?n=t:t&&typeof t=="object"&&"key"in t&&"value"in t&&t.value===null?n=new Vn(t.key,null):n=new Vn(t,null),Ys(this.items,n.key)||this.items.push(n)}get(t,n){const r=Ys(this.items,t);return!n&&en(r)?Kt(r.key)?r.key.value:r.key:r}set(t,n){if(typeof n!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof n}`);const r=Ys(this.items,t);r&&!n?this.items.splice(this.items.indexOf(r),1):!r&&n&&this.items.push(new Vn(t))}toJSON(t,n){return super.toJSON(t,n,Set)}toString(t,n,r){if(!t)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},t,{allNullValues:!0}),n,r);throw new Error("Set items must all have null values")}static from(t,n,r){const{replacer:a}=r,o=new this(t);if(n&&Symbol.iterator in Object(n))for(let l of n)typeof a=="function"&&(l=a.call(n,l,l)),o.items.push(qb(l,null,r));return o}}xl.tag="tag:yaml.org,2002:set";const Wb={collection:"map",identify:e=>e instanceof Set,nodeClass:xl,default:!1,tag:"tag:yaml.org,2002:set",createNode:(e,t,n)=>xl.from(e,t,n),resolve(e,t){if(Zl(e)){if(e.hasAllNullValues(!0))return Object.assign(new xl,e);t("Set items must all have null values")}else t("Expected a mapping for this tag");return e}};function Xb(e,t){const n=e[0],r=n==="-"||n==="+"?e.substring(1):e,a=l=>t?BigInt(l):Number(l),o=r.replace(/_/g,"").split(":").reduce((l,d)=>l*a(60)+a(d),a(0));return n==="-"?a(-1)*o:o}function O_(e){let{value:t}=e,n=l=>l;if(typeof t=="bigint")n=l=>BigInt(l);else if(isNaN(t)||!isFinite(t))return mi(e);let r="";t<0&&(r="-",t*=n(-1));const a=n(60),o=[t%a];return t<60?o.unshift(0):(t=(t-o[0])/a,o.unshift(t%a),t>=60&&(t=(t-o[0])/a,o.unshift(t))),r+o.map(l=>String(l).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}const R_={identify:e=>typeof e=="bigint"||Number.isInteger(e),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(e,t,{intAsBigInt:n})=>Xb(e,n),stringify:O_},L_={identify:e=>typeof e=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:e=>Xb(e,!1),stringify:O_},Yh={identify:e=>e instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(e){const t=e.match(Yh.test);if(!t)throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd");const[,n,r,a,o,l,d]=t.map(Number),f=t[7]?Number((t[7]+"00").substr(1,3)):0;let h=Date.UTC(n,r-1,a,o||0,l||0,d||0,f);const g=t[8];if(g&&g!=="Z"){let m=Xb(g,!1);Math.abs(m)<30&&(m*=60),h-=6e4*m}return new Date(h)},stringify:({value:e})=>(e==null?void 0:e.toISOString().replace(/(T00:00:00)?\.000Z$/,""))??""},lk=[ec,tc,Hh,Kh,M_,D_,bI,xI,vI,wI,mI,gI,yI,Gb,fa,Yb,Vb,Wb,R_,L_,Yh],ck=new Map([["core",dI],["failsafe",[ec,tc,Hh]],["json",pI],["yaml11",lk],["yaml-1.1",lk]]),uk={binary:Gb,bool:Hb,float:E_,floatExp:k_,floatNaN:w_,floatTime:L_,int:__,intHex:j_,intOct:N_,intTime:R_,map:ec,merge:fa,null:Kh,omap:Yb,pairs:Vb,seq:tc,set:Wb,timestamp:Yh},kI={"tag:yaml.org,2002:binary":Gb,"tag:yaml.org,2002:merge":fa,"tag:yaml.org,2002:omap":Yb,"tag:yaml.org,2002:pairs":Vb,"tag:yaml.org,2002:set":Wb,"tag:yaml.org,2002:timestamp":Yh};function Cg(e,t,n){const r=ck.get(t);if(r&&!e)return n&&!r.includes(fa)?r.concat(fa):r.slice();let a=r;if(!a)if(Array.isArray(e))a=[];else{const o=Array.from(ck.keys()).filter(l=>l!=="yaml11").map(l=>JSON.stringify(l)).join(", ");throw new Error(`Unknown schema "${t}"; use one of ${o} or define customTags array`)}if(Array.isArray(e))for(const o of e)a=a.concat(o);else typeof e=="function"&&(a=e(a.slice()));return n&&(a=a.concat(fa)),a.reduce((o,l)=>{const d=typeof l=="string"?uk[l]:l;if(!d){const f=JSON.stringify(l),h=Object.keys(uk).map(g=>JSON.stringify(g)).join(", ");throw new Error(`Unknown custom tag ${f}; use one of ${h}`)}return o.includes(d)||o.push(d),o},[])}const EI=(e,t)=>e.key<t.key?-1:e.key>t.key?1:0;let I_=class z_{constructor({compat:t,customTags:n,merge:r,resolveKnownTags:a,schema:o,sortMapEntries:l,toStringDefaults:d}){this.compat=Array.isArray(t)?Cg(t,"compat"):t?Cg(null,t):null,this.name=typeof o=="string"&&o||"core",this.knownTags=a?kI:{},this.tags=Cg(n,this.name,r),this.toStringOptions=d??null,Object.defineProperty(this,ys,{value:ec}),Object.defineProperty(this,Di,{value:Hh}),Object.defineProperty(this,Xl,{value:tc}),this.sortMapEntries=typeof l=="function"?l:l===!0?EI:null}clone(){const t=Object.create(z_.prototype,Object.getOwnPropertyDescriptors(this));return t.tags=this.tags.slice(),t}};function SI(e,t){var f;const n=[];let r=t.directives===!0;if(t.directives!==!1&&e.directives){const h=e.directives.toString(e);h?(n.push(h),r=!0):e.directives.docStart&&(r=!0)}r&&n.push("---");const a=g_(e,t),{commentString:o}=a.options;if(e.commentBefore){n.length!==1&&n.unshift("");const h=o(e.commentBefore);n.unshift(ua(h,""))}let l=!1,d=null;if(e.contents){if(cn(e.contents)){if(e.contents.spaceBefore&&r&&n.push(""),e.contents.commentBefore){const m=o(e.contents.commentBefore);n.push(ua(m,""))}a.forceBlockIndent=!!e.comment,d=e.contents.comment}const h=d?void 0:()=>l=!0;let g=Il(e.contents,a,()=>d=null,h);d&&(g+=Vs(g,"",o(d))),(g[0]==="|"||g[0]===">")&&n[n.length-1]==="---"?n[n.length-1]=`--- ${g}`:n.push(g)}else n.push(Il(e.contents,a));if((f=e.directives)!=null&&f.docEnd)if(e.comment){const h=o(e.comment);h.includes(`
511
+ `)?(n.push("..."),n.push(ua(h,""))):n.push(`... ${h}`)}else n.push("...");else{let h=e.comment;h&&l&&(h=h.replace(/^\n+/,"")),h&&((!l||d)&&n[n.length-1]!==""&&n.push(""),n.push(ua(o(h),"")))}return n.join(`
512
+ `)+`
513
+ `}class nc{constructor(t,n,r){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,Vr,{value:Py});let a=null;typeof n=="function"||Array.isArray(n)?a=n:r===void 0&&n&&(r=n,n=void 0);const o=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},r);this.options=o;let{version:l}=o;r!=null&&r._directives?(this.directives=r._directives.atDocument(),this.directives.yaml.explicit&&(l=this.directives.yaml.version)):this.directives=new tr({version:l}),this.setSchema(l,r),this.contents=t===void 0?null:this.createNode(t,a,r)}clone(){const t=Object.create(nc.prototype,{[Vr]:{value:Py}});return t.commentBefore=this.commentBefore,t.comment=this.comment,t.errors=this.errors.slice(),t.warnings=this.warnings.slice(),t.options=Object.assign({},this.options),this.directives&&(t.directives=this.directives.clone()),t.schema=this.schema.clone(),t.contents=cn(this.contents)?this.contents.clone(t.schema):this.contents,this.range&&(t.range=this.range.slice()),t}add(t){rl(this.contents)&&this.contents.add(t)}addIn(t,n){rl(this.contents)&&this.contents.addIn(t,n)}createAlias(t,n){if(!t.anchor){const r=d_(this);t.anchor=!n||r.has(n)?f_(n||"a",r):n}return new Uh(t.anchor)}createNode(t,n,r){let a;if(typeof n=="function")t=n.call({"":t},"",t),a=n;else if(Array.isArray(n)){const S=j=>typeof j=="number"||j instanceof String||j instanceof Number,E=n.filter(S).map(String);E.length>0&&(n=n.concat(E)),a=n}else r===void 0&&n&&(r=n,n=void 0);const{aliasDuplicateObjects:o,anchorPrefix:l,flow:d,keepUndefined:f,onTagObj:h,tag:g}=r??{},{onAnchor:m,setAnchors:y,sourceObjects:b}=Z3(this,l||"a"),k={aliasDuplicateObjects:o??!0,keepUndefined:f??!1,onAnchor:m,onTagObj:h,replacer:a,schema:this.schema,sourceObjects:b},v=Eu(t,g,k);return d&&ln(v)&&(v.flow=!0),y(),v}createPair(t,n,r={}){const a=this.createNode(t,null,r),o=this.createNode(n,null,r);return new Vn(a,o)}delete(t){return rl(this.contents)?this.contents.delete(t):!1}deleteIn(t){return ou(t)?this.contents==null?!1:(this.contents=null,!0):rl(this.contents)?this.contents.deleteIn(t):!1}get(t,n){return ln(this.contents)?this.contents.get(t,n):void 0}getIn(t,n){return ou(t)?!n&&Kt(this.contents)?this.contents.value:this.contents:ln(this.contents)?this.contents.getIn(t,n):void 0}has(t){return ln(this.contents)?this.contents.has(t):!1}hasIn(t){return ou(t)?this.contents!==void 0:ln(this.contents)?this.contents.hasIn(t):!1}set(t,n){this.contents==null?this.contents=dh(this.schema,[t],n):rl(this.contents)&&this.contents.set(t,n)}setIn(t,n){ou(t)?this.contents=n:this.contents==null?this.contents=dh(this.schema,Array.from(t),n):rl(this.contents)&&this.contents.setIn(t,n)}setSchema(t,n={}){typeof t=="number"&&(t=String(t));let r;switch(t){case"1.1":this.directives?this.directives.yaml.version="1.1":this.directives=new tr({version:"1.1"}),r={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":this.directives?this.directives.yaml.version=t:this.directives=new tr({version:t}),r={resolveKnownTags:!0,schema:"core"};break;case null:this.directives&&delete this.directives,r=null;break;default:{const a=JSON.stringify(t);throw new Error(`Expected '1.1', '1.2' or null as first argument, but found: ${a}`)}}if(n.schema instanceof Object)this.schema=n.schema;else if(r)this.schema=new I_(Object.assign(r,n));else throw new Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:t,jsonArg:n,mapAsMap:r,maxAliasCount:a,onAnchor:o,reviver:l}={}){const d={anchors:new Map,doc:this,keep:!t,mapAsMap:r===!0,mapKeyWarned:!1,maxAliasCount:typeof a=="number"?a:100},f=Kr(this.contents,n??"",d);if(typeof o=="function")for(const{count:h,res:g}of d.anchors.values())o(g,h);return typeof l=="function"?pl(l,{"":f},"",f):f}toJSON(t,n){return this.toJS({json:!0,jsonArg:t,mapAsMap:!1,onAnchor:n})}toString(t={}){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");if("indent"in t&&(!Number.isInteger(t.indent)||Number(t.indent)<=0)){const n=JSON.stringify(t.indent);throw new Error(`"indent" option must be a positive integer, not ${n}`)}return SI(this,t)}}function rl(e){if(ln(e))return!0;throw new Error("Expected a YAML collection as document contents")}class Zb extends Error{constructor(t,n,r,a){super(),this.name=t,this.code=r,this.message=a,this.pos=n}}class Qs extends Zb{constructor(t,n,r){super("YAMLParseError",t,n,r)}}class P_ extends Zb{constructor(t,n,r){super("YAMLWarning",t,n,r)}}const hh=(e,t)=>n=>{if(n.pos[0]===-1)return;n.linePos=n.pos.map(d=>t.linePos(d));const{line:r,col:a}=n.linePos[0];n.message+=` at line ${r}, column ${a}`;let o=a-1,l=e.substring(t.lineStarts[r-1],t.lineStarts[r]).replace(/[\n\r]+$/,"");if(o>=60&&l.length>80){const d=Math.min(o-39,l.length-79);l="…"+l.substring(d),o-=d-1}if(l.length>80&&(l=l.substring(0,79)+"…"),r>1&&/^ *$/.test(l.substring(0,o))){let d=e.substring(t.lineStarts[r-2],t.lineStarts[r-1]);d.length>80&&(d=d.substring(0,79)+`…
514
+ `),l=d+l}if(/[^ ]/.test(l)){let d=1;const f=n.linePos[1];(f==null?void 0:f.line)===r&&f.col>a&&(d=Math.max(1,Math.min(f.col-a,80-o)));const h=" ".repeat(o)+"^".repeat(d);n.message+=`:
515
+
516
+ ${l}
517
+ ${h}
518
+ `}};function zl(e,{flow:t,indicator:n,next:r,offset:a,onError:o,parentIndent:l,startOnNewline:d}){let f=!1,h=d,g=d,m="",y="",b=!1,k=!1,v=null,S=null,E=null,j=null,N=null,_=null,O=null;for(const R of e)switch(k&&(R.type!=="space"&&R.type!=="newline"&&R.type!=="comma"&&o(R.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),k=!1),v&&(h&&R.type!=="comment"&&R.type!=="newline"&&o(v,"TAB_AS_INDENT","Tabs are not allowed as indentation"),v=null),R.type){case"space":!t&&(n!=="doc-start"||(r==null?void 0:r.type)!=="flow-collection")&&R.source.includes(" ")&&(v=R),g=!0;break;case"comment":{g||o(R,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");const F=R.source.substring(1)||" ";m?m+=y+F:m=F,y="",h=!1;break}case"newline":h?m?m+=R.source:(!_||n!=="seq-item-ind")&&(f=!0):y+=R.source,h=!0,b=!0,(S||E)&&(j=R),g=!0;break;case"anchor":S&&o(R,"MULTIPLE_ANCHORS","A node can have at most one anchor"),R.source.endsWith(":")&&o(R.offset+R.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0),S=R,O??(O=R.offset),h=!1,g=!1,k=!0;break;case"tag":{E&&o(R,"MULTIPLE_TAGS","A node can have at most one tag"),E=R,O??(O=R.offset),h=!1,g=!1,k=!0;break}case n:(S||E)&&o(R,"BAD_PROP_ORDER",`Anchors and tags must be after the ${R.source} indicator`),_&&o(R,"UNEXPECTED_TOKEN",`Unexpected ${R.source} in ${t??"collection"}`),_=R,h=n==="seq-item-ind"||n==="explicit-key-ind",g=!1;break;case"comma":if(t){N&&o(R,"UNEXPECTED_TOKEN",`Unexpected , in ${t}`),N=R,h=!1,g=!1;break}default:o(R,"UNEXPECTED_TOKEN",`Unexpected ${R.type} token`),h=!1,g=!1}const T=e[e.length-1],I=T?T.offset+T.source.length:a;return k&&r&&r.type!=="space"&&r.type!=="newline"&&r.type!=="comma"&&(r.type!=="scalar"||r.source!=="")&&o(r.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),v&&(h&&v.indent<=l||(r==null?void 0:r.type)==="block-map"||(r==null?void 0:r.type)==="block-seq")&&o(v,"TAB_AS_INDENT","Tabs are not allowed as indentation"),{comma:N,found:_,spaceBefore:f,comment:m,hasNewline:b,anchor:S,tag:E,newlineAfterProp:j,end:I,start:O??I}}function Su(e){if(!e)return null;switch(e.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(e.source.includes(`
519
+ `))return!0;if(e.end){for(const t of e.end)if(t.type==="newline")return!0}return!1;case"flow-collection":for(const t of e.items){for(const n of t.start)if(n.type==="newline")return!0;if(t.sep){for(const n of t.sep)if(n.type==="newline")return!0}if(Su(t.key)||Su(t.value))return!0}return!1;default:return!0}}function Fy(e,t,n){if((t==null?void 0:t.type)==="flow-collection"){const r=t.end[0];r.indent===e&&(r.source==="]"||r.source==="}")&&Su(t)&&n(r,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}function B_(e,t,n){const{uniqueKeys:r}=e.options;if(r===!1)return!1;const a=typeof r=="function"?r:(o,l)=>o===l||Kt(o)&&Kt(l)&&o.value===l.value;return t.some(o=>a(o.key,n))}const dk="All mapping items must start at the same column";function NI({composeNode:e,composeEmptyNode:t},n,r,a,o){var g;const l=(o==null?void 0:o.nodeClass)??Nr,d=new l(n.schema);n.atRoot&&(n.atRoot=!1);let f=r.offset,h=null;for(const m of r.items){const{start:y,key:b,sep:k,value:v}=m,S=zl(y,{indicator:"explicit-key-ind",next:b??(k==null?void 0:k[0]),offset:f,onError:a,parentIndent:r.indent,startOnNewline:!0}),E=!S.found;if(E){if(b&&(b.type==="block-seq"?a(f,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key"):"indent"in b&&b.indent!==r.indent&&a(f,"BAD_INDENT",dk)),!S.anchor&&!S.tag&&!k){h=S.end,S.comment&&(d.comment?d.comment+=`
520
+ `+S.comment:d.comment=S.comment);continue}(S.newlineAfterProp||Su(b))&&a(b??y[y.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else((g=S.found)==null?void 0:g.indent)!==r.indent&&a(f,"BAD_INDENT",dk);n.atKey=!0;const j=S.end,N=b?e(n,b,S,a):t(n,j,y,null,S,a);n.schema.compat&&Fy(r.indent,b,a),n.atKey=!1,B_(n,d.items,N)&&a(j,"DUPLICATE_KEY","Map keys must be unique");const _=zl(k??[],{indicator:"map-value-ind",next:v,offset:N.range[2],onError:a,parentIndent:r.indent,startOnNewline:!b||b.type==="block-scalar"});if(f=_.end,_.found){E&&((v==null?void 0:v.type)==="block-map"&&!_.hasNewline&&a(f,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings"),n.options.strict&&S.start<_.found.offset-1024&&a(N.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key"));const O=v?e(n,v,_,a):t(n,f,k,null,_,a);n.schema.compat&&Fy(r.indent,v,a),f=O.range[2];const T=new Vn(N,O);n.options.keepSourceTokens&&(T.srcToken=m),d.items.push(T)}else{E&&a(N.range,"MISSING_CHAR","Implicit map keys need to be followed by map values"),_.comment&&(N.comment?N.comment+=`
521
+ `+_.comment:N.comment=_.comment);const O=new Vn(N);n.options.keepSourceTokens&&(O.srcToken=m),d.items.push(O)}}return h&&h<f&&a(h,"IMPOSSIBLE","Map comment with trailing content"),d.range=[r.offset,f,h??f],d}function _I({composeNode:e,composeEmptyNode:t},n,r,a,o){const l=(o==null?void 0:o.nodeClass)??xs,d=new l(n.schema);n.atRoot&&(n.atRoot=!1),n.atKey&&(n.atKey=!1);let f=r.offset,h=null;for(const{start:g,value:m}of r.items){const y=zl(g,{indicator:"seq-item-ind",next:m,offset:f,onError:a,parentIndent:r.indent,startOnNewline:!0});if(!y.found)if(y.anchor||y.tag||m)(m==null?void 0:m.type)==="block-seq"?a(y.end,"BAD_INDENT","All sequence items must start at the same column"):a(f,"MISSING_CHAR","Sequence item without - indicator");else{h=y.end,y.comment&&(d.comment=y.comment);continue}const b=m?e(n,m,y,a):t(n,y.end,g,null,y,a);n.schema.compat&&Fy(r.indent,m,a),f=b.range[2],d.items.push(b)}return d.range=[r.offset,f,h??f],d}function Wu(e,t,n,r){let a="";if(e){let o=!1,l="";for(const d of e){const{source:f,type:h}=d;switch(h){case"space":o=!0;break;case"comment":{n&&!o&&r(d,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");const g=f.substring(1)||" ";a?a+=l+g:a=g,l="";break}case"newline":a&&(l+=f),o=!0;break;default:r(d,"UNEXPECTED_TOKEN",`Unexpected ${h} at node end`)}t+=f.length}}return{comment:a,offset:t}}const Ag="Block collections are not allowed within flow collections",Tg=e=>e&&(e.type==="block-map"||e.type==="block-seq");function jI({composeNode:e,composeEmptyNode:t},n,r,a,o){var S;const l=r.start.source==="{",d=l?"flow map":"flow sequence",f=(o==null?void 0:o.nodeClass)??(l?Nr:xs),h=new f(n.schema);h.flow=!0;const g=n.atRoot;g&&(n.atRoot=!1),n.atKey&&(n.atKey=!1);let m=r.offset+r.start.source.length;for(let E=0;E<r.items.length;++E){const j=r.items[E],{start:N,key:_,sep:O,value:T}=j,I=zl(N,{flow:d,indicator:"explicit-key-ind",next:_??(O==null?void 0:O[0]),offset:m,onError:a,parentIndent:r.indent,startOnNewline:!1});if(!I.found){if(!I.anchor&&!I.tag&&!O&&!T){E===0&&I.comma?a(I.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${d}`):E<r.items.length-1&&a(I.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${d}`),I.comment&&(h.comment?h.comment+=`
522
+ `+I.comment:h.comment=I.comment),m=I.end;continue}!l&&n.options.strict&&Su(_)&&a(_,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(E===0)I.comma&&a(I.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${d}`);else if(I.comma||a(I.start,"MISSING_CHAR",`Missing , between ${d} items`),I.comment){let R="";e:for(const F of N)switch(F.type){case"comma":case"space":break;case"comment":R=F.source.substring(1);break e;default:break e}if(R){let F=h.items[h.items.length-1];en(F)&&(F=F.value??F.key),F.comment?F.comment+=`
523
+ `+R:F.comment=R,I.comment=I.comment.substring(R.length+1)}}if(!l&&!O&&!I.found){const R=T?e(n,T,I,a):t(n,I.end,O,null,I,a);h.items.push(R),m=R.range[2],Tg(T)&&a(R.range,"BLOCK_IN_FLOW",Ag)}else{n.atKey=!0;const R=I.end,F=_?e(n,_,I,a):t(n,R,N,null,I,a);Tg(_)&&a(F.range,"BLOCK_IN_FLOW",Ag),n.atKey=!1;const M=zl(O??[],{flow:d,indicator:"map-value-ind",next:T,offset:F.range[2],onError:a,parentIndent:r.indent,startOnNewline:!1});if(M.found){if(!l&&!I.found&&n.options.strict){if(O)for(const Y of O){if(Y===M.found)break;if(Y.type==="newline"){a(Y,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}I.start<M.found.offset-1024&&a(M.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else T&&("source"in T&&((S=T.source)==null?void 0:S[0])===":"?a(T,"MISSING_CHAR",`Missing space after : in ${d}`):a(M.start,"MISSING_CHAR",`Missing , or : between ${d} items`));const U=T?e(n,T,M,a):M.found?t(n,M.end,O,null,M,a):null;U?Tg(T)&&a(U.range,"BLOCK_IN_FLOW",Ag):M.comment&&(F.comment?F.comment+=`
524
+ `+M.comment:F.comment=M.comment);const q=new Vn(F,U);if(n.options.keepSourceTokens&&(q.srcToken=j),l){const Y=h;B_(n,Y.items,F)&&a(R,"DUPLICATE_KEY","Map keys must be unique"),Y.items.push(q)}else{const Y=new Nr(n.schema);Y.flow=!0,Y.items.push(q);const D=(U??F).range;Y.range=[F.range[0],D[1],D[2]],h.items.push(Y)}m=U?U.range[2]:M.end}}const y=l?"}":"]",[b,...k]=r.end;let v=m;if((b==null?void 0:b.source)===y)v=b.offset+b.source.length;else{const E=d[0].toUpperCase()+d.substring(1),j=g?`${E} must end with a ${y}`:`${E} in block collection must be sufficiently indented and end with a ${y}`;a(m,g?"MISSING_CHAR":"BAD_INDENT",j),b&&b.source.length!==1&&k.unshift(b)}if(k.length>0){const E=Wu(k,v,n.options.strict,a);E.comment&&(h.comment?h.comment+=`
525
+ `+E.comment:h.comment=E.comment),h.range=[r.offset,v,E.offset]}else h.range=[r.offset,v,v];return h}function Mg(e,t,n,r,a,o){const l=n.type==="block-map"?NI(e,t,n,r,o):n.type==="block-seq"?_I(e,t,n,r,o):jI(e,t,n,r,o),d=l.constructor;return a==="!"||a===d.tagName?(l.tag=d.tagName,l):(a&&(l.tag=a),l)}function CI(e,t,n,r,a){var y;const o=r.tag,l=o?t.directives.tagName(o.source,b=>a(o,"TAG_RESOLVE_FAILED",b)):null;if(n.type==="block-seq"){const{anchor:b,newlineAfterProp:k}=r,v=b&&o?b.offset>o.offset?b:o:b??o;v&&(!k||k.offset<v.offset)&&a(v,"MISSING_CHAR","Missing newline after block sequence props")}const d=n.type==="block-map"?"map":n.type==="block-seq"?"seq":n.start.source==="{"?"map":"seq";if(!o||!l||l==="!"||l===Nr.tagName&&d==="map"||l===xs.tagName&&d==="seq")return Mg(e,t,n,a,l);let f=t.schema.tags.find(b=>b.tag===l&&b.collection===d);if(!f){const b=t.schema.knownTags[l];if((b==null?void 0:b.collection)===d)t.schema.tags.push(Object.assign({},b,{default:!1})),f=b;else return b?a(o,"BAD_COLLECTION_TYPE",`${b.tag} used for ${d} collection, but expects ${b.collection??"scalar"}`,!0):a(o,"TAG_RESOLVE_FAILED",`Unresolved tag: ${l}`,!0),Mg(e,t,n,a,l)}const h=Mg(e,t,n,a,l,f),g=((y=f.resolve)==null?void 0:y.call(f,h,b=>a(o,"TAG_RESOLVE_FAILED",b),t.options))??h,m=cn(g)?g:new st(g);return m.range=h.range,m.tag=l,f!=null&&f.format&&(m.format=f.format),m}function U_(e,t,n){const r=t.offset,a=AI(t,e.options.strict,n);if(!a)return{value:"",type:null,comment:"",range:[r,r,r]};const o=a.mode===">"?st.BLOCK_FOLDED:st.BLOCK_LITERAL,l=t.source?TI(t.source):[];let d=l.length;for(let v=l.length-1;v>=0;--v){const S=l[v][1];if(S===""||S==="\r")d=v;else break}if(d===0){const v=a.chomp==="+"&&l.length>0?`
526
+ `.repeat(Math.max(1,l.length-1)):"";let S=r+a.length;return t.source&&(S+=t.source.length),{value:v,type:o,comment:a.comment,range:[r,S,S]}}let f=t.indent+a.indent,h=t.offset+a.length,g=0;for(let v=0;v<d;++v){const[S,E]=l[v];if(E===""||E==="\r")a.indent===0&&S.length>f&&(f=S.length);else{S.length<f&&n(h+S.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator"),a.indent===0&&(f=S.length),g=v,f===0&&!e.atRoot&&n(h,"BAD_INDENT","Block scalar values in collections must be indented");break}h+=S.length+E.length+1}for(let v=l.length-1;v>=d;--v)l[v][0].length>f&&(d=v+1);let m="",y="",b=!1;for(let v=0;v<g;++v)m+=l[v][0].slice(f)+`
527
+ `;for(let v=g;v<d;++v){let[S,E]=l[v];h+=S.length+E.length+1;const j=E[E.length-1]==="\r";if(j&&(E=E.slice(0,-1)),E&&S.length<f){const _=`Block scalar lines must not be less indented than their ${a.indent?"explicit indentation indicator":"first line"}`;n(h-E.length-(j?2:1),"BAD_INDENT",_),S=""}o===st.BLOCK_LITERAL?(m+=y+S.slice(f)+E,y=`
528
+ `):S.length>f||E[0]===" "?(y===" "?y=`
529
+ `:!b&&y===`
530
+ `&&(y=`
531
+
532
+ `),m+=y+S.slice(f)+E,y=`
533
+ `,b=!0):E===""?y===`
534
+ `?m+=`
535
+ `:y=`
536
+ `:(m+=y+E,y=" ",b=!1)}switch(a.chomp){case"-":break;case"+":for(let v=d;v<l.length;++v)m+=`
537
+ `+l[v][0].slice(f);m[m.length-1]!==`
538
+ `&&(m+=`
539
+ `);break;default:m+=`
540
+ `}const k=r+a.length+t.source.length;return{value:m,type:o,comment:a.comment,range:[r,k,k]}}function AI({offset:e,props:t},n,r){if(t[0].type!=="block-scalar-header")return r(t[0],"IMPOSSIBLE","Block scalar header not found"),null;const{source:a}=t[0],o=a[0];let l=0,d="",f=-1;for(let y=1;y<a.length;++y){const b=a[y];if(!d&&(b==="-"||b==="+"))d=b;else{const k=Number(b);!l&&k?l=k:f===-1&&(f=e+y)}}f!==-1&&r(f,"UNEXPECTED_TOKEN",`Block scalar header includes extra characters: ${a}`);let h=!1,g="",m=a.length;for(let y=1;y<t.length;++y){const b=t[y];switch(b.type){case"space":h=!0;case"newline":m+=b.source.length;break;case"comment":n&&!h&&r(b,"MISSING_CHAR","Comments must be separated from other tokens by white space characters"),m+=b.source.length,g=b.source.substring(1);break;case"error":r(b,"UNEXPECTED_TOKEN",b.message),m+=b.source.length;break;default:{const k=`Unexpected token in block scalar header: ${b.type}`;r(b,"UNEXPECTED_TOKEN",k);const v=b.source;v&&typeof v=="string"&&(m+=v.length)}}}return{mode:o,indent:l,chomp:d,comment:g,length:m}}function TI(e){const t=e.split(/\n( *)/),n=t[0],r=n.match(/^( *)/),o=[r!=null&&r[1]?[r[1],n.slice(r[1].length)]:["",n]];for(let l=1;l<t.length;l+=2)o.push([t[l],t[l+1]]);return o}function $_(e,t,n){const{offset:r,type:a,source:o,end:l}=e;let d,f;const h=(y,b,k)=>n(r+y,b,k);switch(a){case"scalar":d=st.PLAIN,f=MI(o,h);break;case"single-quoted-scalar":d=st.QUOTE_SINGLE,f=DI(o,h);break;case"double-quoted-scalar":d=st.QUOTE_DOUBLE,f=OI(o,h);break;default:return n(e,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${a}`),{value:"",type:null,comment:"",range:[r,r+o.length,r+o.length]}}const g=r+o.length,m=Wu(l,g,t,n);return{value:f,type:d,comment:m.comment,range:[r,g,m.offset]}}function MI(e,t){let n="";switch(e[0]){case" ":n="a tab character";break;case",":n="flow indicator character ,";break;case"%":n="directive indicator character %";break;case"|":case">":{n=`block scalar indicator ${e[0]}`;break}case"@":case"`":{n=`reserved character ${e[0]}`;break}}return n&&t(0,"BAD_SCALAR_START",`Plain value cannot start with ${n}`),F_(e)}function DI(e,t){return(e[e.length-1]!=="'"||e.length===1)&&t(e.length,"MISSING_CHAR","Missing closing 'quote"),F_(e.slice(1,-1)).replace(/''/g,"'")}function F_(e){let t,n;try{t=new RegExp(`(.*?)(?<![ ])[ ]*\r?
541
+ `,"sy"),n=new RegExp(`[ ]*(.*?)(?:(?<![ ])[ ]*)?\r?
542
+ `,"sy")}catch{t=/(.*?)[ \t]*\r?\n/sy,n=/[ \t]*(.*?)[ \t]*\r?\n/sy}let r=t.exec(e);if(!r)return e;let a=r[1],o=" ",l=t.lastIndex;for(n.lastIndex=l;r=n.exec(e);)r[1]===""?o===`
543
+ `?a+=o:o=`
544
+ `:(a+=o+r[1],o=" "),l=n.lastIndex;const d=/[ \t]*(.*)/sy;return d.lastIndex=l,r=d.exec(e),a+o+((r==null?void 0:r[1])??"")}function OI(e,t){let n="";for(let r=1;r<e.length-1;++r){const a=e[r];if(!(a==="\r"&&e[r+1]===`
545
+ `))if(a===`
546
+ `){const{fold:o,offset:l}=RI(e,r);n+=o,r=l}else if(a==="\\"){let o=e[++r];const l=LI[o];if(l)n+=l;else if(o===`
547
+ `)for(o=e[r+1];o===" "||o===" ";)o=e[++r+1];else if(o==="\r"&&e[r+1]===`
548
+ `)for(o=e[++r+1];o===" "||o===" ";)o=e[++r+1];else if(o==="x"||o==="u"||o==="U"){const d={x:2,u:4,U:8}[o];n+=II(e,r+1,d,t),r+=d}else{const d=e.substr(r-1,2);t(r-1,"BAD_DQ_ESCAPE",`Invalid escape sequence ${d}`),n+=d}}else if(a===" "||a===" "){const o=r;let l=e[r+1];for(;l===" "||l===" ";)l=e[++r+1];l!==`
549
+ `&&!(l==="\r"&&e[r+2]===`
550
+ `)&&(n+=r>o?e.slice(o,r+1):a)}else n+=a}return(e[e.length-1]!=='"'||e.length===1)&&t(e.length,"MISSING_CHAR",'Missing closing "quote'),n}function RI(e,t){let n="",r=e[t+1];for(;(r===" "||r===" "||r===`
551
+ `||r==="\r")&&!(r==="\r"&&e[t+2]!==`
552
+ `);)r===`
553
+ `&&(n+=`
554
+ `),t+=1,r=e[t+1];return n||(n=" "),{fold:n,offset:t}}const LI={0:"\0",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:`
555
+ `,r:"\r",t:" ",v:"\v",N:"…",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\"," ":" "};function II(e,t,n,r){const a=e.substr(t,n),l=a.length===n&&/^[0-9a-fA-F]+$/.test(a)?parseInt(a,16):NaN;if(isNaN(l)){const d=e.substr(t-2,n+2);return r(t-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${d}`),d}return String.fromCodePoint(l)}function q_(e,t,n,r){const{value:a,type:o,comment:l,range:d}=t.type==="block-scalar"?U_(e,t,r):$_(t,e.options.strict,r),f=n?e.directives.tagName(n.source,m=>r(n,"TAG_RESOLVE_FAILED",m)):null;let h;e.options.stringKeys&&e.atKey?h=e.schema[Di]:f?h=zI(e.schema,a,f,n,r):t.type==="scalar"?h=PI(e,a,t,r):h=e.schema[Di];let g;try{const m=h.resolve(a,y=>r(n??t,"TAG_RESOLVE_FAILED",y),e.options);g=Kt(m)?m:new st(m)}catch(m){const y=m instanceof Error?m.message:String(m);r(n??t,"TAG_RESOLVE_FAILED",y),g=new st(a)}return g.range=d,g.source=a,o&&(g.type=o),f&&(g.tag=f),h.format&&(g.format=h.format),l&&(g.comment=l),g}function zI(e,t,n,r,a){var d;if(n==="!")return e[Di];const o=[];for(const f of e.tags)if(!f.collection&&f.tag===n)if(f.default&&f.test)o.push(f);else return f;for(const f of o)if((d=f.test)!=null&&d.test(t))return f;const l=e.knownTags[n];return l&&!l.collection?(e.tags.push(Object.assign({},l,{default:!1,test:void 0})),l):(a(r,"TAG_RESOLVE_FAILED",`Unresolved tag: ${n}`,n!=="tag:yaml.org,2002:str"),e[Di])}function PI({atKey:e,directives:t,schema:n},r,a,o){const l=n.tags.find(d=>{var f;return(d.default===!0||e&&d.default==="key")&&((f=d.test)==null?void 0:f.test(r))})||n[Di];if(n.compat){const d=n.compat.find(f=>{var h;return f.default&&((h=f.test)==null?void 0:h.test(r))})??n[Di];if(l.tag!==d.tag){const f=t.tagString(l.tag),h=t.tagString(d.tag),g=`Value may be parsed as either ${f} or ${h}`;o(a,"TAG_RESOLVE_FAILED",g,!0)}}return l}function BI(e,t,n){if(t){n??(n=t.length);for(let r=n-1;r>=0;--r){let a=t[r];switch(a.type){case"space":case"comment":case"newline":e-=a.source.length;continue}for(a=t[++r];(a==null?void 0:a.type)==="space";)e+=a.source.length,a=t[++r];break}}return e}const UI={composeNode:H_,composeEmptyNode:Jb};function H_(e,t,n,r){const a=e.atKey,{spaceBefore:o,comment:l,anchor:d,tag:f}=n;let h,g=!0;switch(t.type){case"alias":h=$I(e,t,r),(d||f)&&r(t,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":h=q_(e,t,f,r),d&&(h.anchor=d.source.substring(1));break;case"block-map":case"block-seq":case"flow-collection":try{h=CI(UI,e,t,n,r),d&&(h.anchor=d.source.substring(1))}catch(m){const y=m instanceof Error?m.message:String(m);r(t,"RESOURCE_EXHAUSTION",y)}break;default:{const m=t.type==="error"?t.message:`Unsupported token (type: ${t.type})`;r(t,"UNEXPECTED_TOKEN",m),g=!1}}return h??(h=Jb(e,t.offset,void 0,null,n,r)),d&&h.anchor===""&&r(d,"BAD_ALIAS","Anchor cannot be an empty string"),a&&e.options.stringKeys&&(!Kt(h)||typeof h.value!="string"||h.tag&&h.tag!=="tag:yaml.org,2002:str")&&r(f??t,"NON_STRING_KEY","With stringKeys, all keys must be strings"),o&&(h.spaceBefore=!0),l&&(t.type==="scalar"&&t.source===""?h.comment=l:h.commentBefore=l),e.options.keepSourceTokens&&g&&(h.srcToken=t),h}function Jb(e,t,n,r,{spaceBefore:a,comment:o,anchor:l,tag:d,end:f},h){const g={type:"scalar",offset:BI(t,n,r),indent:-1,source:""},m=q_(e,g,d,h);return l&&(m.anchor=l.source.substring(1),m.anchor===""&&h(l,"BAD_ALIAS","Anchor cannot be an empty string")),a&&(m.spaceBefore=!0),o&&(m.comment=o,m.range[2]=f),m}function $I({options:e},{offset:t,source:n,end:r},a){const o=new Uh(n.substring(1));o.source===""&&a(t,"BAD_ALIAS","Alias cannot be an empty string"),o.source.endsWith(":")&&a(t+n.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);const l=t+n.length,d=Wu(r,l,e.strict,a);return o.range=[t,l,d.offset],d.comment&&(o.comment=d.comment),o}function FI(e,t,{offset:n,start:r,value:a,end:o},l){const d=Object.assign({_directives:t},e),f=new nc(void 0,d),h={atKey:!1,atRoot:!0,directives:f.directives,options:f.options,schema:f.schema},g=zl(r,{indicator:"doc-start",next:a??(o==null?void 0:o[0]),offset:n,onError:l,parentIndent:0,startOnNewline:!0});g.found&&(f.directives.docStart=!0,a&&(a.type==="block-map"||a.type==="block-seq")&&!g.hasNewline&&l(g.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")),f.contents=a?H_(h,a,g,l):Jb(h,g.end,r,null,g,l);const m=f.contents.range[2],y=Wu(o,m,!1,l);return y.comment&&(f.comment=y.comment),f.range=[n,m,y.offset],f}function Zc(e){if(typeof e=="number")return[e,e+1];if(Array.isArray(e))return e.length===2?e:[e[0],e[1]];const{offset:t,source:n}=e;return[t,t+(typeof n=="string"?n.length:1)]}function fk(e){var a;let t="",n=!1,r=!1;for(let o=0;o<e.length;++o){const l=e[o];switch(l[0]){case"#":t+=(t===""?"":r?`
556
+
557
+ `:`
558
+ `)+(l.substring(1)||" "),n=!0,r=!1;break;case"%":((a=e[o+1])==null?void 0:a[0])!=="#"&&(o+=1),n=!1;break;default:n||(r=!0),n=!1}}return{comment:t,afterEmptyLine:r}}class ex{constructor(t={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(n,r,a,o)=>{const l=Zc(n);o?this.warnings.push(new P_(l,r,a)):this.errors.push(new Qs(l,r,a))},this.directives=new tr({version:t.version||"1.2"}),this.options=t}decorate(t,n){const{comment:r,afterEmptyLine:a}=fk(this.prelude);if(r){const o=t.contents;if(n)t.comment=t.comment?`${t.comment}
559
+ ${r}`:r;else if(a||t.directives.docStart||!o)t.commentBefore=r;else if(ln(o)&&!o.flow&&o.items.length>0){let l=o.items[0];en(l)&&(l=l.key);const d=l.commentBefore;l.commentBefore=d?`${r}
560
+ ${d}`:r}else{const l=o.commentBefore;o.commentBefore=l?`${r}
561
+ ${l}`:r}}n?(Array.prototype.push.apply(t.errors,this.errors),Array.prototype.push.apply(t.warnings,this.warnings)):(t.errors=this.errors,t.warnings=this.warnings),this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:fk(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(t,n=!1,r=-1){for(const a of t)yield*this.next(a);yield*this.end(n,r)}*next(t){switch(t.type){case"directive":this.directives.add(t.source,(n,r,a)=>{const o=Zc(t);o[0]+=n,this.onError(o,"BAD_DIRECTIVE",r,a)}),this.prelude.push(t.source),this.atDirectives=!0;break;case"document":{const n=FI(this.options,this.directives,t,this.onError);this.atDirectives&&!n.directives.docStart&&this.onError(t,"MISSING_CHAR","Missing directives-end/doc-start indicator line"),this.decorate(n,!1),this.doc&&(yield this.doc),this.doc=n,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(t.source);break;case"error":{const n=t.source?`${t.message}: ${JSON.stringify(t.source)}`:t.message,r=new Qs(Zc(t),"UNEXPECTED_TOKEN",n);this.atDirectives||!this.doc?this.errors.push(r):this.doc.errors.push(r);break}case"doc-end":{if(!this.doc){const r="Unexpected doc-end without preceding document";this.errors.push(new Qs(Zc(t),"UNEXPECTED_TOKEN",r));break}this.doc.directives.docEnd=!0;const n=Wu(t.end,t.offset+t.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),n.comment){const r=this.doc.comment;this.doc.comment=r?`${r}
562
+ ${n.comment}`:n.comment}this.doc.range[2]=n.offset;break}default:this.errors.push(new Qs(Zc(t),"UNEXPECTED_TOKEN",`Unsupported token ${t.type}`))}}*end(t=!1,n=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(t){const r=Object.assign({_directives:this.directives},this.options),a=new nc(void 0,r);this.atDirectives&&this.onError(n,"MISSING_CHAR","Missing directives-end indicator line"),a.range=[0,n,n],this.decorate(a,!1),yield a}}}function qI(e,t=!0,n){if(e){const r=(a,o,l)=>{const d=typeof a=="number"?a:Array.isArray(a)?a[0]:a.offset;if(n)n(d,o,l);else throw new Qs([d,d+1],o,l)};switch(e.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return $_(e,t,r);case"block-scalar":return U_({options:{strict:t}},e,r)}}return null}function HI(e,t){const{implicitKey:n=!1,indent:r,inFlow:a=!1,offset:o=-1,type:l="PLAIN"}=t,d=Yu({type:l,value:e},{implicitKey:n,indent:r>0?" ".repeat(r):"",inFlow:a,options:{blockQuote:!0,lineWidth:-1}}),f=t.end??[{type:"newline",offset:-1,indent:r,source:`
563
+ `}];switch(d[0]){case"|":case">":{const h=d.indexOf(`
564
+ `),g=d.substring(0,h),m=d.substring(h+1)+`
565
+ `,y=[{type:"block-scalar-header",offset:o,indent:r,source:g}];return K_(y,f)||y.push({type:"newline",offset:-1,indent:r,source:`
566
+ `}),{type:"block-scalar",offset:o,indent:r,props:y,source:m}}case'"':return{type:"double-quoted-scalar",offset:o,indent:r,source:d,end:f};case"'":return{type:"single-quoted-scalar",offset:o,indent:r,source:d,end:f};default:return{type:"scalar",offset:o,indent:r,source:d,end:f}}}function KI(e,t,n={}){let{afterKey:r=!1,implicitKey:a=!1,inFlow:o=!1,type:l}=n,d="indent"in e?e.indent:null;if(r&&typeof d=="number"&&(d+=2),!l)switch(e.type){case"single-quoted-scalar":l="QUOTE_SINGLE";break;case"double-quoted-scalar":l="QUOTE_DOUBLE";break;case"block-scalar":{const h=e.props[0];if(h.type!=="block-scalar-header")throw new Error("Invalid block scalar header");l=h.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:l="PLAIN"}const f=Yu({type:l,value:t},{implicitKey:a||d===null,indent:d!==null&&d>0?" ".repeat(d):"",inFlow:o,options:{blockQuote:!0,lineWidth:-1}});switch(f[0]){case"|":case">":GI(e,f);break;case'"':Dg(e,f,"double-quoted-scalar");break;case"'":Dg(e,f,"single-quoted-scalar");break;default:Dg(e,f,"scalar")}}function GI(e,t){const n=t.indexOf(`
567
+ `),r=t.substring(0,n),a=t.substring(n+1)+`
568
+ `;if(e.type==="block-scalar"){const o=e.props[0];if(o.type!=="block-scalar-header")throw new Error("Invalid block scalar header");o.source=r,e.source=a}else{const{offset:o}=e,l="indent"in e?e.indent:-1,d=[{type:"block-scalar-header",offset:o,indent:l,source:r}];K_(d,"end"in e?e.end:void 0)||d.push({type:"newline",offset:-1,indent:l,source:`
569
+ `});for(const f of Object.keys(e))f!=="type"&&f!=="offset"&&delete e[f];Object.assign(e,{type:"block-scalar",indent:l,props:d,source:a})}}function K_(e,t){if(t)for(const n of t)switch(n.type){case"space":case"comment":e.push(n);break;case"newline":return e.push(n),!0}return!1}function Dg(e,t,n){switch(e.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":e.type=n,e.source=t;break;case"block-scalar":{const r=e.props.slice(1);let a=t.length;e.props[0].type==="block-scalar-header"&&(a-=e.props[0].source.length);for(const o of r)o.offset+=a;delete e.props,Object.assign(e,{type:n,source:t,end:r});break}case"block-map":case"block-seq":{const a={type:"newline",offset:e.offset+t.length,indent:e.indent,source:`
570
+ `};delete e.items,Object.assign(e,{type:n,source:t,end:[a]});break}default:{const r="indent"in e?e.indent:-1,a="end"in e&&Array.isArray(e.end)?e.end.filter(o=>o.type==="space"||o.type==="comment"||o.type==="newline"):[];for(const o of Object.keys(e))o!=="type"&&o!=="offset"&&delete e[o];Object.assign(e,{type:n,indent:r,source:t,end:a})}}}const VI=e=>"type"in e?ph(e):Zf(e);function ph(e){switch(e.type){case"block-scalar":{let t="";for(const n of e.props)t+=ph(n);return t+e.source}case"block-map":case"block-seq":{let t="";for(const n of e.items)t+=Zf(n);return t}case"flow-collection":{let t=e.start.source;for(const n of e.items)t+=Zf(n);for(const n of e.end)t+=n.source;return t}case"document":{let t=Zf(e);if(e.end)for(const n of e.end)t+=n.source;return t}default:{let t=e.source;if("end"in e&&e.end)for(const n of e.end)t+=n.source;return t}}}function Zf({start:e,key:t,sep:n,value:r}){let a="";for(const o of e)a+=o.source;if(t&&(a+=ph(t)),n)for(const o of n)a+=o.source;return r&&(a+=ph(r)),a}const qy=Symbol("break visit"),YI=Symbol("skip children"),G_=Symbol("remove item");function uo(e,t){"type"in e&&e.type==="document"&&(e={start:e.start,value:e.value}),V_(Object.freeze([]),e,t)}uo.BREAK=qy;uo.SKIP=YI;uo.REMOVE=G_;uo.itemAtPath=(e,t)=>{let n=e;for(const[r,a]of t){const o=n==null?void 0:n[r];if(o&&"items"in o)n=o.items[a];else return}return n};uo.parentCollection=(e,t)=>{const n=uo.itemAtPath(e,t.slice(0,-1)),r=t[t.length-1][0],a=n==null?void 0:n[r];if(a&&"items"in a)return a;throw new Error("Parent collection not found")};function V_(e,t,n){let r=n(t,e);if(typeof r=="symbol")return r;for(const a of["key","value"]){const o=t[a];if(o&&"items"in o){for(let l=0;l<o.items.length;++l){const d=V_(Object.freeze(e.concat([[a,l]])),o.items[l],n);if(typeof d=="number")l=d-1;else{if(d===qy)return qy;d===G_&&(o.items.splice(l,1),l-=1)}}typeof r=="function"&&a==="key"&&(r=r(t,e))}}return typeof r=="function"?r(t,e):r}const Qh="\uFEFF",Wh="",Xh="",Nu="",QI=e=>!!e&&"items"in e,WI=e=>!!e&&(e.type==="scalar"||e.type==="single-quoted-scalar"||e.type==="double-quoted-scalar"||e.type==="block-scalar");function XI(e){switch(e){case Qh:return"<BOM>";case Wh:return"<DOC>";case Xh:return"<FLOW_END>";case Nu:return"<SCALAR>";default:return JSON.stringify(e)}}function Y_(e){switch(e){case Qh:return"byte-order-mark";case Wh:return"doc-mode";case Xh:return"flow-error-end";case Nu:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case`
571
+ `:case`\r
572
+ `:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(e[0]){case" ":case" ":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}const ZI=Object.freeze(Object.defineProperty({__proto__:null,BOM:Qh,DOCUMENT:Wh,FLOW_END:Xh,SCALAR:Nu,createScalarToken:HI,isCollection:QI,isScalar:WI,prettyToken:XI,resolveAsScalar:qI,setScalarValue:KI,stringify:VI,tokenType:Y_,visit:uo},Symbol.toStringTag,{value:"Module"}));function ii(e){switch(e){case void 0:case" ":case`
573
+ `:case"\r":case" ":return!0;default:return!1}}const hk=new Set("0123456789ABCDEFabcdef"),JI=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),Nf=new Set(",[]{}"),ez=new Set(` ,[]{}
574
+ \r `),Og=e=>!e||ez.has(e);class Q_{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(t,n=!1){if(t){if(typeof t!="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+t:t,this.lineEndPos=null}this.atEnd=!n;let r=this.next??"stream";for(;r&&(n||this.hasChars(1));)r=yield*this.parseNext(r)}atLineEnd(){let t=this.pos,n=this.buffer[t];for(;n===" "||n===" ";)n=this.buffer[++t];return!n||n==="#"||n===`
575
+ `?!0:n==="\r"?this.buffer[t+1]===`
576
+ `:!1}charAt(t){return this.buffer[this.pos+t]}continueScalar(t){let n=this.buffer[t];if(this.indentNext>0){let r=0;for(;n===" ";)n=this.buffer[++r+t];if(n==="\r"){const a=this.buffer[r+t+1];if(a===`
577
+ `||!a&&!this.atEnd)return t+r+1}return n===`
578
+ `||r>=this.indentNext||!n&&!this.atEnd?t+r:-1}if(n==="-"||n==="."){const r=this.buffer.substr(t,3);if((r==="---"||r==="...")&&ii(this.buffer[t+3]))return-1}return t}getLine(){let t=this.lineEndPos;return(typeof t!="number"||t!==-1&&t<this.pos)&&(t=this.buffer.indexOf(`
579
+ `,this.pos),this.lineEndPos=t),t===-1?this.atEnd?this.buffer.substring(this.pos):null:(this.buffer[t-1]==="\r"&&(t-=1),this.buffer.substring(this.pos,t))}hasChars(t){return this.pos+t<=this.buffer.length}setNext(t){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=t,null}peek(t){return this.buffer.substr(this.pos,t)}*parseNext(t){switch(t){case"stream":return yield*this.parseStream();case"line-start":return yield*this.parseLineStart();case"block-start":return yield*this.parseBlockStart();case"doc":return yield*this.parseDocument();case"flow":return yield*this.parseFlowCollection();case"quoted-scalar":return yield*this.parseQuotedScalar();case"block-scalar":return yield*this.parseBlockScalar();case"plain-scalar":return yield*this.parsePlainScalar()}}*parseStream(){let t=this.getLine();if(t===null)return this.setNext("stream");if(t[0]===Qh&&(yield*this.pushCount(1),t=t.substring(1)),t[0]==="%"){let n=t.length,r=t.indexOf("#");for(;r!==-1;){const o=t[r-1];if(o===" "||o===" "){n=r-1;break}else r=t.indexOf("#",r+1)}for(;;){const o=t[n-1];if(o===" "||o===" ")n-=1;else break}const a=(yield*this.pushCount(n))+(yield*this.pushSpaces(!0));return yield*this.pushCount(t.length-a),this.pushNewline(),"stream"}if(this.atLineEnd()){const n=yield*this.pushSpaces(!0);return yield*this.pushCount(t.length-n),yield*this.pushNewline(),"stream"}return yield Wh,yield*this.parseLineStart()}*parseLineStart(){const t=this.charAt(0);if(!t&&!this.atEnd)return this.setNext("line-start");if(t==="-"||t==="."){if(!this.atEnd&&!this.hasChars(4))return this.setNext("line-start");const n=this.peek(3);if((n==="---"||n==="...")&&ii(this.charAt(3)))return yield*this.pushCount(3),this.indentValue=0,this.indentNext=0,n==="---"?"doc":"stream"}return this.indentValue=yield*this.pushSpaces(!1),this.indentNext>this.indentValue&&!ii(this.charAt(1))&&(this.indentNext=this.indentValue),yield*this.parseBlockStart()}*parseBlockStart(){const[t,n]=this.peek(2);if(!n&&!this.atEnd)return this.setNext("block-start");if((t==="-"||t==="?"||t===":")&&ii(n)){const r=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=r,yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);const t=this.getLine();if(t===null)return this.setNext("doc");let n=yield*this.pushIndicators();switch(t[n]){case"#":yield*this.pushCount(t.length-n);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(Og),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return n+=yield*this.parseBlockScalarHeader(),n+=yield*this.pushSpaces(!0),yield*this.pushCount(t.length-n),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let t,n,r=-1;do t=yield*this.pushNewline(),t>0?(n=yield*this.pushSpaces(!1),this.indentValue=r=n):n=0,n+=yield*this.pushSpaces(!0);while(t+n>0);const a=this.getLine();if(a===null)return this.setNext("flow");if((r!==-1&&r<this.indentNext&&a[0]!=="#"||r===0&&(a.startsWith("---")||a.startsWith("..."))&&ii(a[3]))&&!(r===this.indentNext-1&&this.flowLevel===1&&(a[0]==="]"||a[0]==="}")))return this.flowLevel=0,yield Xh,yield*this.parseLineStart();let o=0;for(;a[o]===",";)o+=yield*this.pushCount(1),o+=yield*this.pushSpaces(!0),this.flowKey=!1;switch(o+=yield*this.pushIndicators(),a[o]){case void 0:return"flow";case"#":return yield*this.pushCount(a.length-o),"flow";case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel+=1,"flow";case"}":case"]":return yield*this.pushCount(1),this.flowKey=!0,this.flowLevel-=1,this.flowLevel?"flow":"doc";case"*":return yield*this.pushUntil(Og),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{const l=this.charAt(1);if(this.flowKey||ii(l)||l===",")return this.flowKey=!1,yield*this.pushCount(1),yield*this.pushSpaces(!0),"flow"}default:return this.flowKey=!1,yield*this.parsePlainScalar()}}*parseQuotedScalar(){const t=this.charAt(0);let n=this.buffer.indexOf(t,this.pos+1);if(t==="'")for(;n!==-1&&this.buffer[n+1]==="'";)n=this.buffer.indexOf("'",n+2);else for(;n!==-1;){let o=0;for(;this.buffer[n-1-o]==="\\";)o+=1;if(o%2===0)break;n=this.buffer.indexOf('"',n+1)}const r=this.buffer.substring(0,n);let a=r.indexOf(`
580
+ `,this.pos);if(a!==-1){for(;a!==-1;){const o=this.continueScalar(a+1);if(o===-1)break;a=r.indexOf(`
581
+ `,o)}a!==-1&&(n=a-(r[a-1]==="\r"?2:1))}if(n===-1){if(!this.atEnd)return this.setNext("quoted-scalar");n=this.buffer.length}return yield*this.pushToIndex(n+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let t=this.pos;for(;;){const n=this.buffer[++t];if(n==="+")this.blockScalarKeep=!0;else if(n>"0"&&n<="9")this.blockScalarIndent=Number(n)-1;else if(n!=="-")break}return yield*this.pushUntil(n=>ii(n)||n==="#")}*parseBlockScalar(){let t=this.pos-1,n=0,r;e:for(let o=this.pos;r=this.buffer[o];++o)switch(r){case" ":n+=1;break;case`
582
+ `:t=o,n=0;break;case"\r":{const l=this.buffer[o+1];if(!l&&!this.atEnd)return this.setNext("block-scalar");if(l===`
583
+ `)break}default:break e}if(!r&&!this.atEnd)return this.setNext("block-scalar");if(n>=this.indentNext){this.blockScalarIndent===-1?this.indentNext=n:this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{const o=this.continueScalar(t+1);if(o===-1)break;t=this.buffer.indexOf(`
584
+ `,o)}while(t!==-1);if(t===-1){if(!this.atEnd)return this.setNext("block-scalar");t=this.buffer.length}}let a=t+1;for(r=this.buffer[a];r===" ";)r=this.buffer[++a];if(r===" "){for(;r===" "||r===" "||r==="\r"||r===`
585
+ `;)r=this.buffer[++a];t=a-1}else if(!this.blockScalarKeep)do{let o=t-1,l=this.buffer[o];l==="\r"&&(l=this.buffer[--o]);const d=o;for(;l===" ";)l=this.buffer[--o];if(l===`
586
+ `&&o>=this.pos&&o+1+n>d)t=o;else break}while(!0);return yield Nu,yield*this.pushToIndex(t+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){const t=this.flowLevel>0;let n=this.pos-1,r=this.pos-1,a;for(;a=this.buffer[++r];)if(a===":"){const o=this.buffer[r+1];if(ii(o)||t&&Nf.has(o))break;n=r}else if(ii(a)){let o=this.buffer[r+1];if(a==="\r"&&(o===`
587
+ `?(r+=1,a=`
588
+ `,o=this.buffer[r+1]):n=r),o==="#"||t&&Nf.has(o))break;if(a===`
589
+ `){const l=this.continueScalar(r+1);if(l===-1)break;r=Math.max(r,l-2)}}else{if(t&&Nf.has(a))break;n=r}return!a&&!this.atEnd?this.setNext("plain-scalar"):(yield Nu,yield*this.pushToIndex(n+1,!0),t?"flow":"doc")}*pushCount(t){return t>0?(yield this.buffer.substr(this.pos,t),this.pos+=t,t):0}*pushToIndex(t,n){const r=this.buffer.slice(this.pos,t);return r?(yield r,this.pos+=r.length,r.length):(n&&(yield""),0)}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"&":return(yield*this.pushUntil(Og))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{const t=this.flowLevel>0,n=this.charAt(1);if(ii(n)||t&&Nf.has(n))return t?this.flowKey&&(this.flowKey=!1):this.indentNext=this.indentValue+1,(yield*this.pushCount(1))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators())}}return 0}*pushTag(){if(this.charAt(1)==="<"){let t=this.pos+2,n=this.buffer[t];for(;!ii(n)&&n!==">";)n=this.buffer[++t];return yield*this.pushToIndex(n===">"?t+1:t,!1)}else{let t=this.pos+1,n=this.buffer[t];for(;n;)if(JI.has(n))n=this.buffer[++t];else if(n==="%"&&hk.has(this.buffer[t+1])&&hk.has(this.buffer[t+2]))n=this.buffer[t+=3];else break;return yield*this.pushToIndex(t,!1)}}*pushNewline(){const t=this.buffer[this.pos];return t===`
590
+ `?yield*this.pushCount(1):t==="\r"&&this.charAt(1)===`
591
+ `?yield*this.pushCount(2):0}*pushSpaces(t){let n=this.pos-1,r;do r=this.buffer[++n];while(r===" "||t&&r===" ");const a=n-this.pos;return a>0&&(yield this.buffer.substr(this.pos,a),this.pos=n),a}*pushUntil(t){let n=this.pos,r=this.buffer[n];for(;!t(r);)r=this.buffer[++n];return yield*this.pushToIndex(n,!1)}}class W_{constructor(){this.lineStarts=[],this.addNewLine=t=>this.lineStarts.push(t),this.linePos=t=>{let n=0,r=this.lineStarts.length;for(;n<r;){const o=n+r>>1;this.lineStarts[o]<t?n=o+1:r=o}if(this.lineStarts[n]===t)return{line:n+1,col:1};if(n===0)return{line:0,col:t};const a=this.lineStarts[n-1];return{line:n,col:t-a+1}}}}function as(e,t){for(let n=0;n<e.length;++n)if(e[n].type===t)return!0;return!1}function pk(e){for(let t=0;t<e.length;++t)switch(e[t].type){case"space":case"comment":case"newline":break;default:return t}return-1}function X_(e){switch(e==null?void 0:e.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function _f(e){switch(e.type){case"document":return e.start;case"block-map":{const t=e.items[e.items.length-1];return t.sep??t.start}case"block-seq":return e.items[e.items.length-1].start;default:return[]}}function il(e){var n;if(e.length===0)return[];let t=e.length;e:for(;--t>=0;)switch(e[t].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break e}for(;((n=e[++t])==null?void 0:n.type)==="space";);return e.splice(t,e.length)}function mk(e){if(e.start.type==="flow-seq-start")for(const t of e.items)t.sep&&!t.value&&!as(t.start,"explicit-key-ind")&&!as(t.sep,"map-value-ind")&&(t.key&&(t.value=t.key),delete t.key,X_(t.value)?t.value.end?Array.prototype.push.apply(t.value.end,t.sep):t.value.end=t.sep:Array.prototype.push.apply(t.start,t.sep),delete t.sep)}class tx{constructor(t){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new Q_,this.onNewLine=t}*parse(t,n=!1){this.onNewLine&&this.offset===0&&this.onNewLine(0);for(const r of this.lexer.lex(t,n))yield*this.next(r);n||(yield*this.end())}*next(t){if(this.source=t,this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=t.length;return}const n=Y_(t);if(n)if(n==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=n,yield*this.step(),n){case"newline":this.atNewLine=!0,this.indent=0,this.onNewLine&&this.onNewLine(this.offset+t.length);break;case"space":this.atNewLine&&t[0]===" "&&(this.indent+=t.length);break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":this.atNewLine&&(this.indent+=t.length);break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=t.length}else{const r=`Not a YAML token: ${t}`;yield*this.pop({type:"error",offset:this.offset,message:r,source:t}),this.offset+=t.length}}*end(){for(;this.stack.length>0;)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){const t=this.peek(1);if(this.type==="doc-end"&&(t==null?void 0:t.type)!=="doc-end"){for(;this.stack.length>0;)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!t)return yield*this.stream();switch(t.type){case"document":return yield*this.document(t);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(t);case"block-scalar":return yield*this.blockScalar(t);case"block-map":return yield*this.blockMap(t);case"block-seq":return yield*this.blockSequence(t);case"flow-collection":return yield*this.flowCollection(t);case"doc-end":return yield*this.documentEnd(t)}yield*this.pop()}peek(t){return this.stack[this.stack.length-t]}*pop(t){const n=t??this.stack.pop();if(!n)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield n;else{const r=this.peek(1);switch(n.type==="block-scalar"?n.indent="indent"in r?r.indent:0:n.type==="flow-collection"&&r.type==="document"&&(n.indent=0),n.type==="flow-collection"&&mk(n),r.type){case"document":r.value=n;break;case"block-scalar":r.props.push(n);break;case"block-map":{const a=r.items[r.items.length-1];if(a.value){r.items.push({start:[],key:n,sep:[]}),this.onKeyLine=!0;return}else if(a.sep)a.value=n;else{Object.assign(a,{key:n,sep:[]}),this.onKeyLine=!a.explicitKey;return}break}case"block-seq":{const a=r.items[r.items.length-1];a.value?r.items.push({start:[],value:n}):a.value=n;break}case"flow-collection":{const a=r.items[r.items.length-1];!a||a.value?r.items.push({start:[],key:n,sep:[]}):a.sep?a.value=n:Object.assign(a,{key:n,sep:[]});return}default:yield*this.pop(),yield*this.pop(n)}if((r.type==="document"||r.type==="block-map"||r.type==="block-seq")&&(n.type==="block-map"||n.type==="block-seq")){const a=n.items[n.items.length-1];a&&!a.sep&&!a.value&&a.start.length>0&&pk(a.start)===-1&&(n.indent===0||a.start.every(o=>o.type!=="comment"||o.indent<n.indent))&&(r.type==="document"?r.end=a.start:r.items.push({start:a.start}),n.items.splice(-1,1))}}}*stream(){switch(this.type){case"directive-line":yield{type:"directive",offset:this.offset,source:this.source};return;case"byte-order-mark":case"space":case"comment":case"newline":yield this.sourceToken;return;case"doc-mode":case"doc-start":{const t={type:"document",offset:this.offset,start:[]};this.type==="doc-start"&&t.start.push(this.sourceToken),this.stack.push(t);return}}yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document(t){if(t.value)return yield*this.lineEnd(t);switch(this.type){case"doc-start":{pk(t.start)!==-1?(yield*this.pop(),yield*this.step()):t.start.push(this.sourceToken);return}case"anchor":case"tag":case"space":case"comment":case"newline":t.start.push(this.sourceToken);return}const n=this.startBlockValue(t);n?this.stack.push(n):yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML document`,source:this.source}}*scalar(t){if(this.type==="map-value-ind"){const n=_f(this.peek(2)),r=il(n);let a;t.end?(a=t.end,a.push(this.sourceToken),delete t.end):a=[this.sourceToken];const o={type:"block-map",offset:t.offset,indent:t.indent,items:[{start:r,key:t,sep:a}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=o}else yield*this.lineEnd(t)}*blockScalar(t){switch(this.type){case"space":case"comment":case"newline":t.props.push(this.sourceToken);return;case"scalar":if(t.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let n=this.source.indexOf(`
592
+ `)+1;for(;n!==0;)this.onNewLine(this.offset+n),n=this.source.indexOf(`
593
+ `,n)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(t){var r;const n=t.items[t.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,n.value){const a="end"in n.value?n.value.end:void 0,o=Array.isArray(a)?a[a.length-1]:void 0;(o==null?void 0:o.type)==="comment"?a==null||a.push(this.sourceToken):t.items.push({start:[this.sourceToken]})}else n.sep?n.sep.push(this.sourceToken):n.start.push(this.sourceToken);return;case"space":case"comment":if(n.value)t.items.push({start:[this.sourceToken]});else if(n.sep)n.sep.push(this.sourceToken);else{if(this.atIndentedComment(n.start,t.indent)){const a=t.items[t.items.length-2],o=(r=a==null?void 0:a.value)==null?void 0:r.end;if(Array.isArray(o)){Array.prototype.push.apply(o,n.start),o.push(this.sourceToken),t.items.pop();return}}n.start.push(this.sourceToken)}return}if(this.indent>=t.indent){const a=!this.onKeyLine&&this.indent===t.indent,o=a&&(n.sep||n.explicitKey)&&this.type!=="seq-item-ind";let l=[];if(o&&n.sep&&!n.value){const d=[];for(let f=0;f<n.sep.length;++f){const h=n.sep[f];switch(h.type){case"newline":d.push(f);break;case"space":break;case"comment":h.indent>t.indent&&(d.length=0);break;default:d.length=0}}d.length>=2&&(l=n.sep.splice(d[1]))}switch(this.type){case"anchor":case"tag":o||n.value?(l.push(this.sourceToken),t.items.push({start:l}),this.onKeyLine=!0):n.sep?n.sep.push(this.sourceToken):n.start.push(this.sourceToken);return;case"explicit-key-ind":!n.sep&&!n.explicitKey?(n.start.push(this.sourceToken),n.explicitKey=!0):o||n.value?(l.push(this.sourceToken),t.items.push({start:l,explicitKey:!0})):this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]}),this.onKeyLine=!0;return;case"map-value-ind":if(n.explicitKey)if(n.sep)if(n.value)t.items.push({start:[],key:null,sep:[this.sourceToken]});else if(as(n.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:l,key:null,sep:[this.sourceToken]}]});else if(X_(n.key)&&!as(n.sep,"newline")){const d=il(n.start),f=n.key,h=n.sep;h.push(this.sourceToken),delete n.key,delete n.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:d,key:f,sep:h}]})}else l.length>0?n.sep=n.sep.concat(l,this.sourceToken):n.sep.push(this.sourceToken);else if(as(n.start,"newline"))Object.assign(n,{key:null,sep:[this.sourceToken]});else{const d=il(n.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:d,key:null,sep:[this.sourceToken]}]})}else n.sep?n.value||o?t.items.push({start:l,key:null,sep:[this.sourceToken]}):as(n.sep,"map-value-ind")?this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]}):n.sep.push(this.sourceToken):Object.assign(n,{key:null,sep:[this.sourceToken]});this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{const d=this.flowScalar(this.type);o||n.value?(t.items.push({start:l,key:d,sep:[]}),this.onKeyLine=!0):n.sep?this.stack.push(d):(Object.assign(n,{key:d,sep:[]}),this.onKeyLine=!0);return}default:{const d=this.startBlockValue(t);if(d){if(d.type==="block-seq"){if(!n.explicitKey&&n.sep&&!as(n.sep,"newline")){yield*this.pop({type:"error",offset:this.offset,message:"Unexpected block-seq-ind on same line with key",source:this.source});return}}else a&&t.items.push({start:l});this.stack.push(d);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(t){var r;const n=t.items[t.items.length-1];switch(this.type){case"newline":if(n.value){const a="end"in n.value?n.value.end:void 0,o=Array.isArray(a)?a[a.length-1]:void 0;(o==null?void 0:o.type)==="comment"?a==null||a.push(this.sourceToken):t.items.push({start:[this.sourceToken]})}else n.start.push(this.sourceToken);return;case"space":case"comment":if(n.value)t.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(n.start,t.indent)){const a=t.items[t.items.length-2],o=(r=a==null?void 0:a.value)==null?void 0:r.end;if(Array.isArray(o)){Array.prototype.push.apply(o,n.start),o.push(this.sourceToken),t.items.pop();return}}n.start.push(this.sourceToken)}return;case"anchor":case"tag":if(n.value||this.indent<=t.indent)break;n.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==t.indent)break;n.value||as(n.start,"seq-item-ind")?t.items.push({start:[this.sourceToken]}):n.start.push(this.sourceToken);return}if(this.indent>t.indent){const a=this.startBlockValue(t);if(a){this.stack.push(a);return}}yield*this.pop(),yield*this.step()}*flowCollection(t){const n=t.items[t.items.length-1];if(this.type==="flow-error-end"){let r;do yield*this.pop(),r=this.peek(1);while((r==null?void 0:r.type)==="flow-collection")}else if(t.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":!n||n.sep?t.items.push({start:[this.sourceToken]}):n.start.push(this.sourceToken);return;case"map-value-ind":!n||n.value?t.items.push({start:[],key:null,sep:[this.sourceToken]}):n.sep?n.sep.push(this.sourceToken):Object.assign(n,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":!n||n.value?t.items.push({start:[this.sourceToken]}):n.sep?n.sep.push(this.sourceToken):n.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{const a=this.flowScalar(this.type);!n||n.value?t.items.push({start:[],key:a,sep:[]}):n.sep?this.stack.push(a):Object.assign(n,{key:a,sep:[]});return}case"flow-map-end":case"flow-seq-end":t.end.push(this.sourceToken);return}const r=this.startBlockValue(t);r?this.stack.push(r):(yield*this.pop(),yield*this.step())}else{const r=this.peek(2);if(r.type==="block-map"&&(this.type==="map-value-ind"&&r.indent===t.indent||this.type==="newline"&&!r.items[r.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&r.type!=="flow-collection"){const a=_f(r),o=il(a);mk(t);const l=t.end.splice(1,t.end.length);l.push(this.sourceToken);const d={type:"block-map",offset:t.offset,indent:t.indent,items:[{start:o,key:t,sep:l}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=d}else yield*this.lineEnd(t)}}flowScalar(t){if(this.onNewLine){let n=this.source.indexOf(`
594
+ `)+1;for(;n!==0;)this.onNewLine(this.offset+n),n=this.source.indexOf(`
595
+ `,n)+1}return{type:t,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(t){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;const n=_f(t),r=il(n);return r.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:r,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;const n=_f(t),r=il(n);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:r,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(t,n){return this.type!=="comment"||this.indent<=n?!1:t.every(r=>r.type==="newline"||r.type==="space")}*documentEnd(t){this.type!=="doc-mode"&&(t.end?t.end.push(this.sourceToken):t.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop()))}*lineEnd(t){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;case"space":case"comment":default:t.end?t.end.push(this.sourceToken):t.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop())}}}function Z_(e){const t=e.prettyErrors!==!1;return{lineCounter:e.lineCounter||t&&new W_||null,prettyErrors:t}}function tz(e,t={}){const{lineCounter:n,prettyErrors:r}=Z_(t),a=new tx(n==null?void 0:n.addNewLine),o=new ex(t),l=Array.from(o.compose(a.parse(e)));if(r&&n)for(const d of l)d.errors.forEach(hh(e,n)),d.warnings.forEach(hh(e,n));return l.length>0?l:Object.assign([],{empty:!0},o.streamInfo())}function J_(e,t={}){const{lineCounter:n,prettyErrors:r}=Z_(t),a=new tx(n==null?void 0:n.addNewLine),o=new ex(t);let l=null;for(const d of o.compose(a.parse(e),!0,e.length))if(!l)l=d;else if(l.options.logLevel!=="silent"){l.errors.push(new Qs(d.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}return r&&n&&(l.errors.forEach(hh(e,n)),l.warnings.forEach(hh(e,n))),l}function nz(e,t,n){let r;typeof t=="function"?r=t:n===void 0&&t&&typeof t=="object"&&(n=t);const a=J_(e,n);if(!a)return null;if(a.warnings.forEach(o=>y_(a.options.logLevel,o)),a.errors.length>0){if(a.options.logLevel!=="silent")throw a.errors[0];a.errors=[]}return a.toJS(Object.assign({reviver:r},n))}function rz(e,t,n){let r=null;if(typeof t=="function"||Array.isArray(t)?r=t:n===void 0&&t&&(n=t),typeof n=="string"&&(n=n.length),typeof n=="number"){const a=Math.round(n);n=a<1?void 0:a>8?{indent:8}:{indent:a}}if(e===void 0){const{keepUndefined:a}=n??t??{};if(!a)return}return bo(e)&&!r?e.toString(n):new nc(e,r,n).toString(n)}const gk=Object.freeze(Object.defineProperty({__proto__:null,Alias:Uh,CST:ZI,Composer:ex,Document:nc,Lexer:Q_,LineCounter:W_,Pair:Vn,Parser:tx,Scalar:st,Schema:I_,YAMLError:Zb,YAMLMap:Nr,YAMLParseError:Qs,YAMLSeq:xs,YAMLWarning:P_,isAlias:ws,isCollection:ln,isDocument:bo,isMap:Zl,isNode:cn,isPair:en,isScalar:Kt,isSeq:Jl,parse:nz,parseAllDocuments:tz,parseDocument:J_,stringify:rz,visit:xo,visitAsync:Bh},Symbol.toStringTag,{value:"Module"}));function iz({projectName:e,file:t,onClose:n,onSaved:r}){const a=Be(),o=Gt(),{alert:l}=mn(),{data:d,isLoading:f,isError:h,error:g,refetch:m}=Xe({queryKey:["pipeline-file",e,t],queryFn:()=>I3(e,t)}),[y,b]=C.useState("structured"),[k,v]=C.useState(null),[S,E]=C.useState(null);C.useEffect(()=>{d&&k===null&&(v(d.content),E(d.etag),d.parseError&&b("yaml"))},[d,k]),C.useEffect(()=>{const I=R=>{R.key==="Escape"&&n()};return window.addEventListener("keydown",I),()=>window.removeEventListener("keydown",I)},[n]);const j=Ct({mutationFn:()=>{if(k===null||S===null)throw new Error("no draft");return z3(e,t,k,S)},onSuccess:I=>{E(I.etag),o.invalidateQueries({queryKey:["pipeline-file",e,t]}),o.invalidateQueries({queryKey:["project-pipelines",e]}),r()},onError:I=>{const R=I.status;l({title:a(R===409?"pipelineEditor.error.conflict.title":R===422?"pipelineEditor.error.yaml.title":"pipelineEditor.error.save.title"),body:I instanceof Error?I.message:String(I)})}}),N=k!==null&&d&&k!==d.content,{parsed:_,parseError:O}=C.useMemo(()=>{if(k===null)return{parsed:null,parseError:null};try{return{parsed:gk.parse(k)??{},parseError:null}}catch(I){return{parsed:null,parseError:I instanceof Error?I.message:String(I)}}},[k]),T=I=>{try{const R=gk.stringify(I,{lineWidth:0});v(R)}catch(R){l({title:a("pipelineEditor.error.serialize.title"),body:R instanceof Error?R.message:String(R)})}};return u.jsx("div",{role:"dialog","aria-modal":"true",className:"fixed inset-0 z-40 flex items-start justify-center p-6 bg-black/30 overflow-auto",children:u.jsxs("div",{className:"nb-card mt-8 w-full max-w-4xl flex flex-col",style:{maxHeight:"calc(100vh - 64px)"},children:[u.jsxs("header",{className:"flex items-start justify-between gap-3 mb-3 flex-shrink-0",children:[u.jsxs("div",{children:[u.jsxs("h2",{className:"font-[family-name:var(--font-heading)] text-2xl font-bold flex items-center gap-2",children:[u.jsx(rk,{size:20,strokeWidth:2.5}),u.jsx("code",{className:"font-[family-name:var(--font-mono)] text-lg",children:t}),(d==null?void 0:d.isActive)&&u.jsx("span",{className:"nb-status",style:{background:"var(--color-running-bg)",color:"var(--color-running)",padding:"2px 8px"},children:a("pipelineEditor.activeBadge")})]}),u.jsxs("p",{className:"text-xs text-[var(--color-text-muted)] font-[family-name:var(--font-mono)] mt-1",children:[e,"/pipelines/",t,S&&` · etag ${S}`]})]}),u.jsx("button",{className:"nb-btn nb-btn-mint p-2",onClick:n,type:"button","aria-label":a("pipelineEditor.close"),children:u.jsx(Nn,{size:14,strokeWidth:3})})]}),f&&u.jsx("p",{className:"text-[var(--color-text-muted)]",children:a("common.loading")}),h&&u.jsx("p",{className:"text-[var(--color-crashed)]",children:a("pipelineEditor.error.load",{detail:g instanceof Error?g.message:String(g)})}),d&&k!==null&&u.jsxs(u.Fragment,{children:[u.jsxs("div",{className:"flex items-center gap-3 mb-3 flex-shrink-0 flex-wrap",children:[u.jsxs("div",{className:"flex gap-1 p-1 bg-[var(--color-bg)] border-[2px] border-[var(--color-text)] rounded-full shadow-[2px_2px_0_var(--color-text)]",children:[u.jsxs("button",{type:"button",onClick:()=>b("structured"),"aria-pressed":y==="structured",disabled:!!O,className:["px-3 py-1 rounded-full text-xs font-bold flex items-center gap-1.5",y==="structured"?"bg-[var(--color-primary)] text-[var(--color-text)] shadow-[1px_1px_0_var(--color-text)]":"text-[var(--color-text-muted)]",O?"opacity-50 cursor-not-allowed":""].join(" "),title:O??void 0,children:[u.jsx(Gu,{size:11,strokeWidth:2.5}),a("pipelineEditor.mode.structured")]}),u.jsxs("button",{type:"button",onClick:()=>b("yaml"),"aria-pressed":y==="yaml",className:["px-3 py-1 rounded-full text-xs font-bold flex items-center gap-1.5",y==="yaml"?"bg-[var(--color-primary)] text-[var(--color-text)] shadow-[1px_1px_0_var(--color-text)]":"text-[var(--color-text-muted)]"].join(" "),children:[u.jsx(rk,{size:11,strokeWidth:2.5}),a("pipelineEditor.mode.yaml")]})]}),O&&u.jsxs("div",{className:"flex items-center gap-1 text-xs text-[var(--color-crashed)] font-bold",children:[u.jsx(vu,{size:12,strokeWidth:2.5}),a("pipelineEditor.parseError.prefix",{detail:O})]}),(d==null?void 0:d.isActive)&&u.jsx("span",{className:"text-xs text-[var(--color-stuck)] font-bold ml-auto",children:a("pipelineEditor.activeWarning")})]}),u.jsxs("div",{className:"flex-1 overflow-auto",children:[y==="structured"&&_&&u.jsx(az,{parsed:_,onChange:T}),y==="yaml"&&u.jsx("textarea",{className:"nb-input w-full font-[family-name:var(--font-mono)] text-xs",style:{minHeight:400,resize:"vertical"},value:k,onChange:I=>v(I.target.value),spellCheck:!1,"aria-label":a("pipelineEditor.yamlAria")})]}),u.jsxs("div",{className:"flex items-center justify-between mt-3 pt-3 border-t-2 border-dashed border-[var(--color-text)] flex-shrink-0",children:[u.jsx("span",{className:"text-xs text-[var(--color-text-muted)]",children:N?u.jsx("span",{className:"text-[var(--color-stuck)] font-bold",children:a("pipelineEditor.status.unsaved")}):j.isSuccess?u.jsxs("span",{className:"text-[var(--color-running)] font-bold flex items-center gap-1",children:[u.jsx(wu,{size:12,strokeWidth:2.5})," ",a("pipelineEditor.status.saved")]}):a("pipelineEditor.status.noChanges")}),u.jsxs("div",{className:"flex gap-2",children:[u.jsx("button",{className:"nb-btn",style:{padding:"6px 14px"},onClick:()=>{v(null),m()},disabled:j.isPending,type:"button",children:a("pipelineEditor.reload")}),u.jsxs("button",{className:"nb-btn nb-btn-primary",style:{padding:"6px 14px"},onClick:()=>j.mutate(),disabled:!N||j.isPending,type:"button","aria-label":a("pipelineEditor.saveAria"),children:[j.isPending?u.jsx(We,{size:13,strokeWidth:3,className:"animate-spin"}):u.jsx(Oi,{size:13,strokeWidth:3}),a("pipelineEditor.save")]})]})]})]})]})})}function az({parsed:e,onChange:t}){const n=Be(),r=e.stages??[],a=h=>{t({...e,stages:h})},o=()=>{a([...r,{name:`stage-${r.length+1}`,on_complete:"move_card Done"}])},l=h=>{a(r.filter((g,m)=>m!==h))},d=(h,g)=>{const m=[...r],y=h+g;y<0||y>=m.length||([m[h],m[y]]=[m[y],m[h]],a(m))},f=(h,g)=>{a(r.map((m,y)=>y===h?{...m,...g}:m))};return u.jsxs("div",{className:"flex flex-col gap-4",children:[u.jsxs("div",{className:"flex items-center gap-3 p-3 bg-[var(--color-bg-cream)] border-2 border-[var(--color-text)] rounded-lg",children:[u.jsxs("label",{className:"flex items-center gap-2 text-sm",children:[u.jsx("span",{className:"font-bold",children:"mode:"}),u.jsxs("select",{className:"nb-input",style:{padding:"4px 10px",fontSize:12},value:e.mode??"project",onChange:h=>t({...e,mode:h.target.value}),children:[u.jsx("option",{value:"project",children:"project"}),u.jsx("option",{value:"steps",children:"steps"})]})]}),u.jsx("span",{className:"text-xs text-[var(--color-text-muted)]",children:n("pipelineEditor.modeHint")})]}),u.jsxs("div",{children:[u.jsxs("div",{className:"flex items-center justify-between mb-2",children:[u.jsx("h3",{className:"font-[family-name:var(--font-heading)] text-sm font-bold uppercase tracking-wider",children:n("pipelineEditor.stages.heading",{count:r.length})}),u.jsxs("button",{type:"button",className:"nb-btn nb-btn-mint",style:{padding:"4px 12px",fontSize:12},onClick:o,"aria-label":n("pipelineEditor.stages.add"),children:[u.jsx(pr,{size:11,strokeWidth:3})," ",n("pipelineEditor.stages.add")]})]}),r.length===0?u.jsx("p",{className:"text-sm text-[var(--color-text-muted)] italic p-4 border-2 border-dashed border-[var(--color-text)] rounded-lg text-center",children:n("pipelineEditor.stages.empty")}):u.jsx("div",{className:"flex flex-col gap-3",children:r.map((h,g)=>u.jsx(sz,{stage:h,index:g,total:r.length,onChange:m=>f(g,m),onRemove:()=>l(g),onMoveUp:()=>d(g,-1),onMoveDown:()=>d(g,1)},g))})]})]})}function sz({stage:e,index:t,total:n,onChange:r,onRemove:a,onMoveUp:o,onMoveDown:l}){const d=Be(),f=e.on_fail??{};return u.jsxs("div",{className:"nb-card bg-[var(--color-bg-cream)] p-4",children:[u.jsxs("div",{className:"flex items-center justify-between mb-3",children:[u.jsxs("h4",{className:"font-[family-name:var(--font-heading)] font-bold text-sm",children:["Stage #",t+1,e.name&&u.jsx("code",{className:"ml-2 text-xs font-[family-name:var(--font-mono)] bg-[var(--color-bg)] border-2 border-[var(--color-text)] px-2 py-0.5 rounded",children:e.name})]}),u.jsxs("div",{className:"flex gap-1",children:[u.jsx("button",{type:"button",className:"nb-btn",style:{padding:"3px 8px"},onClick:o,disabled:t===0,"aria-label":d("pipelineEditor.stage.moveUp"),children:u.jsx(AR,{size:12,strokeWidth:3})}),u.jsx("button",{type:"button",className:"nb-btn",style:{padding:"3px 8px"},onClick:l,disabled:t===n-1,"aria-label":d("pipelineEditor.stage.moveDown"),children:u.jsx(Ql,{size:12,strokeWidth:3})}),u.jsx("button",{type:"button",className:"nb-btn nb-btn-danger",style:{padding:"3px 8px"},onClick:a,"aria-label":d("pipelineEditor.stage.remove"),children:u.jsx(fi,{size:12,strokeWidth:3})})]})]}),u.jsxs("div",{className:"grid grid-cols-2 gap-3 text-sm",children:[u.jsx(es,{label:"name",hint:d("pipelineEditor.stage.name.hint"),children:u.jsx("input",{type:"text",className:"nb-input w-full font-[family-name:var(--font-mono)] text-xs",value:e.name??"",onChange:h=>r({name:h.target.value}),placeholder:"develop"})}),u.jsx(es,{label:"profile",hint:d("pipelineEditor.stage.profile.hint"),children:u.jsx("input",{type:"text",className:"nb-input w-full font-[family-name:var(--font-mono)] text-xs",value:e.profile??"",onChange:h=>r({profile:h.target.value||void 0}),placeholder:"fullstack"})}),u.jsx(es,{label:"card_state",hint:d("pipelineEditor.stage.cardState.hint"),children:u.jsx("input",{type:"text",className:"nb-input w-full font-[family-name:var(--font-mono)] text-xs",value:e.card_state??"",onChange:h=>r({card_state:h.target.value||void 0}),placeholder:"Inprogress"})}),u.jsx(es,{label:"timeout",hint:d("pipelineEditor.stage.timeout.hint"),children:u.jsx("input",{type:"text",className:"nb-input w-full font-[family-name:var(--font-mono)] text-xs",value:e.timeout??"",onChange:h=>r({timeout:h.target.value||void 0}),placeholder:"2h"})}),u.jsx(es,{label:"trigger",hint:d("pipelineEditor.stage.trigger.hint"),children:u.jsx("input",{type:"text",className:"nb-input w-full font-[family-name:var(--font-mono)] text-xs",value:e.trigger??"",onChange:h=>r({trigger:h.target.value||void 0}),placeholder:"card_enters 'Todo'"})}),u.jsx(es,{label:"on_complete",hint:d("pipelineEditor.stage.onComplete.hint"),children:u.jsx("input",{type:"text",className:"nb-input w-full font-[family-name:var(--font-mono)] text-xs",value:e.on_complete??"",onChange:h=>r({on_complete:h.target.value}),placeholder:"move_card Done"})})]}),u.jsxs("div",{className:"mt-4 pt-3 border-t-2 border-dashed border-[var(--color-text)]",children:[u.jsx("h5",{className:"text-xs font-bold uppercase tracking-wider mb-2 text-[var(--color-text-muted)]",children:"on_fail"}),u.jsxs("div",{className:"grid grid-cols-2 gap-3 text-sm",children:[u.jsx(es,{label:"action",hint:d("pipelineEditor.stage.onFail.action.hint"),children:u.jsx("input",{type:"text",className:"nb-input w-full font-[family-name:var(--font-mono)] text-xs",value:f.action??"",onChange:h=>r({on_fail:{...f,action:h.target.value||void 0}}),placeholder:"label NEEDS-FIX"})}),u.jsx(es,{label:"comment",hint:d("pipelineEditor.stage.onFail.comment.hint"),children:u.jsx("input",{type:"text",className:"nb-input w-full font-[family-name:var(--font-mono)] text-xs",value:f.comment??"",onChange:h=>r({on_fail:{...f,comment:h.target.value||void 0}}),placeholder:"Worker failed. Check logs."})})]}),u.jsxs("label",{className:"flex items-center gap-2 mt-3 text-sm cursor-pointer",children:[u.jsx("input",{type:"checkbox",checked:f.halt??!0,onChange:h=>r({on_fail:{...f,halt:h.target.checked}})}),u.jsx("span",{className:"font-bold",children:"halt"}),u.jsx("span",{className:"text-xs text-[var(--color-text-muted)]",children:d("pipelineEditor.stage.halt.note")})]})]})]})}function es({label:e,hint:t,children:n}){return u.jsxs("label",{className:"flex flex-col gap-1",children:[u.jsx("span",{className:"text-xs font-bold font-[family-name:var(--font-mono)]",children:e}),n,t&&u.jsx("span",{className:"text-[10px] text-[var(--color-text-muted)]",children:t})]})}function oz({onCancel:e,onCreate:t,hasActive:n,hasSample:r,isPending:a}){const o=Be(),[l,d]=C.useState(""),[f,h]=C.useState("blank");C.useEffect(()=>{const S=E=>{E.key==="Escape"&&e()};return window.addEventListener("keydown",S),()=>window.removeEventListener("keydown",S)},[e]);const g=l.trim(),m=g.endsWith(".yaml")?g:g?`${g}.yaml`:"",y=m&&/^[a-zA-Z0-9_.-]+\.yaml$/.test(m),b=()=>{!y||a||t(m,f)},v=o("newPipelineDialog.field.filename.help",{filename:"__FN__"}).split("__FN__");return u.jsx("div",{role:"dialog","aria-modal":"true",className:"fixed inset-0 z-50 flex items-center justify-center p-6 bg-black/30",children:u.jsxs("div",{className:"nb-card max-w-md w-full",children:[u.jsxs("header",{className:"flex items-start justify-between mb-4",children:[u.jsx("h2",{className:"font-[family-name:var(--font-heading)] text-xl font-bold",children:o("newPipelineDialog.title")}),u.jsx("button",{className:"nb-btn nb-btn-mint p-2",onClick:e,type:"button","aria-label":o("common.close"),children:u.jsx(Nn,{size:14,strokeWidth:3})})]}),u.jsxs("form",{onSubmit:S=>{S.preventDefault(),b()},className:"flex flex-col gap-4",children:[u.jsxs("label",{className:"flex flex-col gap-1.5",children:[u.jsx("span",{className:"text-sm font-bold",children:o("newPipelineDialog.field.filename.label")}),u.jsx("input",{type:"text",className:"nb-input w-full font-[family-name:var(--font-mono)]",placeholder:o("newPipelineDialog.field.filename.placeholder"),value:l,onChange:S=>d(S.target.value),autoFocus:!0}),u.jsxs("span",{className:"text-xs text-[var(--color-text-muted)]",children:[v[0],u.jsx("code",{className:"font-[family-name:var(--font-mono)]",children:m||"xxx.yaml"}),v[1]]})]}),u.jsxs("fieldset",{className:"flex flex-col gap-2",children:[u.jsx("legend",{className:"text-sm font-bold mb-1",children:o("newPipelineDialog.section.template")}),u.jsx(Rg,{value:"blank",current:f,label:o("newPipelineDialog.template.blank.label"),desc:o("newPipelineDialog.template.blank.desc"),onSelect:h}),u.jsx(Rg,{value:"sample",current:f,label:o("newPipelineDialog.template.sample.label"),desc:o("newPipelineDialog.template.sample.desc"),onSelect:h,disabled:!r,disabledReason:o("newPipelineDialog.template.sample.unavailable")}),u.jsx(Rg,{value:"active",current:f,label:o("newPipelineDialog.template.active.label"),desc:o("newPipelineDialog.template.active.desc"),onSelect:h,disabled:!n,disabledReason:o("newPipelineDialog.template.active.unavailable")})]}),u.jsxs("div",{className:"flex gap-3 justify-end pt-2",children:[u.jsx("button",{className:"nb-btn",onClick:e,type:"button",disabled:a,children:o("common.cancel")}),u.jsxs("button",{className:"nb-btn nb-btn-primary",type:"submit",disabled:!y||a,"aria-label":o("newPipelineDialog.create.aria"),children:[a?u.jsx(We,{size:13,strokeWidth:3,className:"animate-spin"}):u.jsx(pr,{size:13,strokeWidth:3}),o("common.create")]})]})]})]})})}function Rg({value:e,current:t,label:n,desc:r,onSelect:a,disabled:o,disabledReason:l}){const d=t===e;return u.jsxs("label",{className:["flex items-start gap-2 p-2 rounded-lg border-2 cursor-pointer",o?"border-[var(--color-border-light)] opacity-50 cursor-not-allowed":d?"bg-[var(--color-accent-mint)] border-[var(--color-text)] shadow-[2px_2px_0_var(--color-text)]":"border-[var(--color-border-light)] hover:bg-[var(--color-bg-cream)] hover:border-[var(--color-text)]"].join(" "),children:[u.jsx("input",{type:"radio",name:"pipeline-template",value:e,checked:d,disabled:o,onChange:()=>a(e),className:"mt-1 flex-shrink-0"}),u.jsxs("div",{className:"flex-1",children:[u.jsx("div",{className:"text-sm font-bold",children:n}),u.jsx("div",{className:"text-xs text-[var(--color-text-muted)]",children:o?l:r})]})]})}function lz(e){return ht(`/api/rules/${encodeURIComponent(e)}`)}function nx(e){const t=e?`?project=${encodeURIComponent(e)}`:"";return ht(`/api/skills${t}`)}function cz(e){return ht(`/api/skills/${encodeURIComponent(e)}`)}function uz(e,t){return ht(`/api/skills/${encodeURIComponent(e)}/references/${encodeURIComponent(t)}`)}async function dz(e,t){const n=await fetch(e,{method:"POST",headers:void 0,body:void 0});if(!n.ok)throw new Error(`${n.status}: ${await n.text()}`);return n.json().catch(()=>({}))}function fz(){return dz("/api/skills/sync")}function hz(e){return ht(`/api/skills/policy/${encodeURIComponent(e)}`)}function pz(e,t){return Pb(`/api/skills/policy/${encodeURIComponent(e)}`,t)}function mz(){return ht("/api/skills/updates")}function gz(e,t,n){return Ri("/api/skills/import",{name:e,files:t,overwrite:n})}function yz(e){return ht(`/api/skills/${encodeURIComponent(e)}/export`)}function bz(e,t){return Ri("/api/skills/create",{name:e,intent:t})}function e2(){return u.jsx("div",{className:"nb-card",children:u.jsxs("p",{className:"text-[var(--color-text-muted)] flex items-center gap-2",children:[u.jsx(We,{size:14,className:"animate-spin"})," …"]})})}function t2({msg:e}){return u.jsx("div",{className:"nb-card bg-[var(--color-crashed-bg)]",children:u.jsx("p",{children:e})})}function xz({name:e}){var b,k;const t=Be(),n=Gt(),{alert:r}=mn(),a=Xe({queryKey:["skill-policy",e],queryFn:()=>hz(e),enabled:!!e}),o=(b=a.data)==null?void 0:b.data,[l,d]=C.useState(null),[f,h]=C.useState(null);C.useEffect(()=>{var v;o&&l===null&&d((v=o.policy.allow)!=null&&v.length?new Set(o.policy.allow):new Set(o.skills.map(S=>S.name)))},[o,l]);const g=Ct({mutationFn:v=>pz(e,v),onSuccess:v=>{h(v),d(null),n.invalidateQueries({queryKey:["skill-policy",e]})},onError:v=>void r({title:t("projectDetail.skills.saveError"),body:v instanceof Error?v.message:String(v)})});if(a.isLoading||o&&l===null)return u.jsx(e2,{});if(a.isError)return u.jsx(t2,{msg:a.error instanceof Error?a.error.message:String(a.error)});if(!o||!l)return null;if(o.skills.length===0)return u.jsx("div",{className:"nb-card",children:u.jsx("p",{className:"text-[var(--color-text-muted)]",children:t("projectDetail.skills.empty")})});const m=o.eligible!==null,y=v=>d(S=>{const E=new Set(S);return E.has(v)?E.delete(v):E.add(v),E});return u.jsxs("div",{className:"nb-card flex flex-col gap-4 h-full min-h-0",children:[u.jsxs("div",{className:"shrink-0",children:[u.jsxs("h2",{className:"font-[family-name:var(--font-heading)] text-lg font-bold flex items-center gap-2",children:[u.jsx(KN,{size:18,strokeWidth:2.5}),t("projectDetail.skills.title")]}),u.jsx("p",{className:"text-sm text-[var(--color-text-muted)] mt-1",children:t("projectDetail.skills.desc")}),u.jsx("p",{className:"text-sm mt-1 font-medium",children:m?t("projectDetail.skills.hasPolicy",{count:String(((k=o.eligible)==null?void 0:k.length)??0)}):t("projectDetail.skills.noPolicy")})]}),u.jsxs("div",{className:"flex gap-2 shrink-0",children:[u.jsx("button",{type:"button",className:"nb-btn",style:{padding:"4px 10px",fontSize:12},onClick:()=>d(new Set(o.skills.map(v=>v.name))),children:t("projectDetail.skills.selectAll")}),u.jsx("button",{type:"button",className:"nb-btn",style:{padding:"4px 10px",fontSize:12},onClick:()=>d(new Set),children:t("projectDetail.skills.selectNone")})]}),u.jsx("div",{className:"flex flex-col gap-1 flex-1 min-h-0 overflow-auto border-2 border-[var(--color-text)] rounded p-2",children:o.skills.map(v=>u.jsxs("label",{className:"flex items-start gap-2 px-2 py-1 rounded hover:bg-[var(--color-bg-cream)] cursor-pointer",children:[u.jsx("input",{type:"checkbox",checked:l.has(v.name),onChange:()=>y(v.name),className:"mt-1"}),u.jsxs("span",{className:"flex-1",children:[u.jsx("code",{className:"font-[family-name:var(--font-mono)] text-sm font-bold",children:v.name}),u.jsx("span",{className:"ml-2 text-[10px] uppercase text-[var(--color-text-muted)]",children:v.category}),v.description&&u.jsx("span",{className:"block text-xs text-[var(--color-text-muted)]",children:v.description})]})]},v.name))}),u.jsxs("div",{className:"flex items-center gap-2 flex-wrap shrink-0",children:[u.jsxs("button",{type:"button",className:"nb-btn nb-btn-mint",disabled:g.isPending,onClick:()=>g.mutate({allow:[...l]}),children:[g.isPending?u.jsx(We,{size:14,className:"animate-spin"}):u.jsx(Oi,{size:14,strokeWidth:3}),t("projectDetail.skills.save")]}),u.jsxs("button",{type:"button",className:"nb-btn",disabled:g.isPending,onClick:()=>g.mutate({}),children:[u.jsx(Rb,{size:14,strokeWidth:3}),t("projectDetail.skills.clear")]}),u.jsxs("span",{className:"text-sm text-[var(--color-text-muted)]",children:[l.size,"/",o.skills.length]})]}),f&&u.jsxs("div",{className:"text-sm border-2 border-[var(--color-text)] rounded p-2 bg-[var(--color-bg-cream)]",children:[u.jsx("p",{children:t("projectDetail.skills.applied",{linked:String(f.applied.linked),pruned:String(f.applied.pruned)})}),f.unknown.length>0&&u.jsx("p",{className:"text-[var(--color-text-muted)]",children:t("projectDetail.skills.unknown",{names:f.unknown.join(", ")})})]})]})}function vz({name:e}){var a;const t=Be(),n=Xe({queryKey:["rules",e],queryFn:()=>lz(e),enabled:!!e});if(n.isLoading)return u.jsx(e2,{});if(n.isError)return u.jsx(t2,{msg:n.error instanceof Error?n.error.message:String(n.error)});const r=((a=n.data)==null?void 0:a.data)??[];return u.jsxs("div",{className:"flex flex-col gap-4 min-h-full",children:[u.jsx("p",{className:"text-sm text-[var(--color-text-muted)]",children:t("projectDetail.rules.readonly")}),r.map(o=>u.jsxs("div",{className:"nb-card",children:[u.jsxs("div",{className:"flex items-center gap-2 mb-2",children:[u.jsx("code",{className:"font-[family-name:var(--font-mono)] text-sm font-bold bg-[var(--color-bg-cream)] border-2 border-[var(--color-text)] px-2 py-0.5 rounded",children:o.name}),!o.exists&&u.jsx("span",{className:"text-xs text-[var(--color-text-muted)]",children:t("projectDetail.rules.missing")})]}),o.exists&&u.jsx("pre",{className:"overflow-auto max-h-[28rem] text-xs font-[family-name:var(--font-mono)] whitespace-pre-wrap break-words bg-[var(--color-bg-cream)] border-2 border-[var(--color-text)] rounded p-3",children:o.content})]},o.name))]})}const Zh=e=>`/api/projects/${encodeURIComponent(e)}/graph`;function wz(e){return ht(`${Zh(e)}/status`)}function kz(e){return ht(`${Zh(e)}/data`)}function Ez(e){return Ri(`${Zh(e)}/build`)}function Sz(e){return Ri(`${Zh(e)}/sync`)}const Nz={typescript:"#1D4E89",tsx:"#2563EB",javascript:"#B8860B",json:"#6B7280",yaml:"#C2410C"},jf=e=>Nz[e]??"#2D6A4F";function yk(e){return[parseInt(e.slice(1,3),16),parseInt(e.slice(3,5),16),parseInt(e.slice(5,7),16)]}const _z=e=>Math.max(8,Math.min(22,8+e*2.5));function jz(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(0)} KB`:`${(e/1024/1024).toFixed(2)} MB`}function Cz(e){if(!e)return"—";const t=new Date(e);if(Number.isNaN(t.getTime()))return"—";const n=r=>String(r).padStart(2,"0");return`${t.getFullYear()}-${n(t.getMonth()+1)}-${n(t.getDate())} ${n(t.getHours())}:${n(t.getMinutes())}`}function Az({name:e,status:t}){var y,b,k,v;const n=Be(),r=Xe({queryKey:["graph-data",e],queryFn:()=>kz(e)}),[a,o]=C.useState(""),l=C.useRef(null),d=C.useRef(null),f=C.useRef(null),h=C.useRef(null),g=[...new Set((((b=(y=r.data)==null?void 0:y.data)==null?void 0:b.nodes)??[]).map(S=>S.language))];if(C.useEffect(()=>{h.current&&(h.current.search=a.trim().toLowerCase())},[a]),C.useEffect(()=>{var Me;const S=(Me=r.data)==null?void 0:Me.data,E=d.current,j=l.current;if(!S||!S.nodes.length||!E||!j)return;const N=E.getContext("2d");if(!N)return;const _={};for(const le of S.links)_[le.source]=(_[le.source]??0)+1,_[le.target]=(_[le.target]??0)+1;const O=S.nodes.length,T=window.devicePixelRatio||1,I=j.getBoundingClientRect(),R=I.width||800,F=I.height||500,M=Math.min(R,F)*.35+O*1.5,U=S.nodes.map((le,Ne)=>{const Te=2*Math.PI*Ne/Math.max(O,1),ke=_[le.id]??0;return{id:le.id,language:le.language,symbols:le.symbols,deg:ke,name:le.id.split("/").pop()||le.id,x:Math.cos(Te)*M+Math.sin(Ne*12.9898)*43758.5453%1*40,y:Math.sin(Te)*M+Math.sin(Ne*78.233)*12345.678%1*40,vx:0,vy:0,r:_z(ke)}}),q={};for(const le of U)q[le.id]=le;const Y=S.links.map(le=>({source:le.source,target:le.target,weight:le.weight})),D={nodes:U,edges:Y,map:q,panX:R/2,panY:F/2,zoom:1,drag:null,mouseX:0,mouseY:0,raf:null,tick:0,quiet:0,sel:null,search:a.trim().toLowerCase(),fitted:!1};h.current=D;const H=()=>{const le=j.getBoundingClientRect();E.width=le.width*T,E.height=le.height*T,E.style.width=le.width+"px",E.style.height=le.height+"px",N.setTransform(T,0,0,T,0,0)};H();const B=new ResizeObserver(H);B.observe(j);const V=()=>{let le=1/0,Ne=1/0,Te=-1/0,ke=-1/0;for(const ue of U)le=Math.min(le,ue.x-ue.r),Ne=Math.min(Ne,ue.y-ue.r),Te=Math.max(Te,ue.x+ue.r),ke=Math.max(ke,ue.y+ue.r);const Qe=E.width/T,re=E.height/T,Ae=Math.min(Qe/Math.max(Te-le,1),re/Math.max(ke-Ne,1),1.4)*.88;D.zoom=Ae,D.panX=Qe/2-(le+Te)/2*Ae,D.panY=re/2-(Ne+ke)/2*Ae},Q=()=>{const le=U.length;D.tick++;const Ne=.9-Math.min(.4,D.tick/1500),Te=le>1e3?3e3:le>100?2e3:le>50?1200:800,ke=le>100?.002:.005,Qe=le>1e3?.012:le>100?.005:.01,re=le>1e3?6:le>200?12:24;for(let he=0;he<le;he++){const ge=U[he];let Le=-ge.x*Qe,ze=-ge.y*Qe;for(let Fe=0;Fe<le;Fe++){if(he===Fe)continue;const te=U[Fe],ve=ge.x-te.x,Ie=ge.y-te.y,Ze=ve*ve+Ie*Ie||1,it=Math.sqrt(Ze),At=Te/Ze;Le+=ve/it*At,ze+=Ie/it*At}if(ge!==D.drag){let Fe=(ge.vx+Le)*Ne,te=(ge.vy+ze)*Ne;Fe=Math.max(-re,Math.min(re,Fe)),te=Math.max(-re,Math.min(re,te)),ge.vx=Fe,ge.vy=te}}for(const he of Y){const ge=q[he.source],Le=q[he.target];if(!ge||!Le)continue;const ze=Le.x-ge.x,Fe=Le.y-ge.y,te=Math.sqrt(ze*ze+Fe*Fe)||1,ve=(te-100)*ke,Ie=ze/te*ve,Ze=Fe/te*ve;ge!==D.drag&&(ge.vx+=Ie,ge.vy+=Ze),Le!==D.drag&&(Le.vx-=Ie,Le.vy-=Ze)}let Ae=0;for(const he of U)he!==D.drag&&(he.x+=he.vx,he.y+=he.vy,Ae+=he.vx*he.vx+he.vy*he.vy);(le?Math.sqrt(Ae/le):0)<.05&&D.tick>60&&!D.drag?D.quiet++:D.quiet=0,!D.fitted&&(D.quiet>8||D.tick>400)&&(D.fitted=!0,V())},K=()=>{const le=E.width/T,Ne=E.height/T;N.clearRect(0,0,le,Ne),N.strokeStyle="rgba(45,55,72,0.05)",N.lineWidth=.5;for(let ue=0;ue<le;ue+=24)N.beginPath(),N.moveTo(ue,0),N.lineTo(ue,Ne),N.stroke();for(let ue=0;ue<Ne;ue+=24)N.beginPath(),N.moveTo(0,ue),N.lineTo(le,ue),N.stroke();N.save(),N.translate(D.panX,D.panY),N.scale(D.zoom,D.zoom);const Te=D.search,ke=U.length>40;let Qe=null;if(!D.drag){const ue=E.getBoundingClientRect(),he=(D.mouseX-ue.left-D.panX)/D.zoom,ge=(D.mouseY-ue.top-D.panY)/D.zoom;for(let Le=U.length-1;Le>=0;Le--){const ze=U[Le],Fe=ze.x-he,te=ze.y-ge;if(Fe*Fe+te*te<ze.r*ze.r+25){Qe=ze.id;break}}}const re=D.sel||Qe;for(const ue of Y){const he=q[ue.source],ge=q[ue.target];if(!he||!ge)continue;const Le=Te&&!(he.name.toLowerCase().includes(Te)||ge.name.toLowerCase().includes(Te)),ze=re&&(ue.source===re||ue.target===re),Fe=ge.x-he.x,te=ge.y-he.y,ve=Math.sqrt(Fe*Fe+te*te)||1,Ie=ke?12:18,Ze=(he.x+ge.x)/2+-te/ve*Ie,it=(he.y+ge.y)/2+Fe/ve*Ie,[At,Un,un]=yk(jf(he.language));let Mt;if(Le?Mt=.05:re&&ze?Mt=.6:re&&!ze?Mt=.05:Mt=ke?.14:.24,N.beginPath(),N.moveTo(he.x,he.y),N.quadraticCurveTo(Ze,it,ge.x,ge.y),N.strokeStyle=`rgba(${At},${Un},${un},${Mt})`,N.lineWidth=ze?2+ue.weight*.4:1+ue.weight*.25,N.stroke(),!ke||ze){const Qt=Math.atan2(ge.y-it,ge.x-Ze),yt=5+N.lineWidth;N.beginPath(),N.moveTo(ge.x-ge.r*Math.cos(Qt),ge.y-ge.r*Math.sin(Qt)),N.lineTo(ge.x-(ge.r+yt)*Math.cos(Qt-.3),ge.y-(ge.r+yt)*Math.sin(Qt-.3)),N.lineTo(ge.x-(ge.r+yt)*Math.cos(Qt+.3),ge.y-(ge.r+yt)*Math.sin(Qt+.3)),N.closePath(),N.fillStyle=`rgba(${At},${Un},${un},${Le?.05:ze?.55:.18})`,N.fill()}}const Ae=ke?1.5:.5;for(const ue of U){const he=jf(ue.language),ge=D.sel===ue.id,Le=Qe===ue.id,ze=!Te||ue.name.toLowerCase().includes(Te),Fe=re&&ue.id!==re&&!Y.some(At=>At.source===re&&At.target===ue.id||At.target===re&&At.source===ue.id),te=ze?Fe?.2:1:.12;N.save(),N.globalAlpha=te,ze&&!Fe&&(ge||Le||!Te)&&(N.shadowColor=he,N.shadowBlur=ge?20:Le?16:ke?4:8);const[ve,Ie,Ze]=yk(he),it=N.createRadialGradient(ue.x-ue.r*.3,ue.y-ue.r*.3,0,ue.x,ue.y,ue.r*1.2);if(it.addColorStop(0,`rgba(${Math.min(255,ve+60)},${Math.min(255,Ie+60)},${Math.min(255,Ze+60)},0.95)`),it.addColorStop(1,he),N.beginPath(),N.arc(ue.x,ue.y,ue.r,0,Math.PI*2),N.fillStyle=it,N.fill(),N.shadowBlur=0,N.lineWidth=ge?2.5:1,N.strokeStyle=ge?"#111827":"rgba(255,255,255,0.7)",N.stroke(),N.restore(),ze&&!Fe&&(ge||Le||D.zoom>Ae)){const At=1/D.zoom;N.save(),N.globalAlpha=te,N.fillStyle="rgba(45,55,72,0.92)",N.font=`${(10*At).toFixed(1)}px 'DM Sans', sans-serif`,N.textAlign="center",N.fillText(ue.name,ue.x,ue.y+ue.r+11*At),N.restore()}}N.restore()},L=()=>{if(Q(),K(),D.quiet>40&&!D.drag){D.raf=null;return}D.raf=requestAnimationFrame(L)},z=()=>{D.raf==null&&(D.quiet=0,D.raf=requestAnimationFrame(L))};D.raf=requestAnimationFrame(L);let G=!1,P=0,oe=0;const be=le=>{const Ne=E.getBoundingClientRect();return{x:(le.clientX-Ne.left-D.panX)/D.zoom,y:(le.clientY-Ne.top-D.panY)/D.zoom}},xe=(le,Ne)=>{for(let Te=U.length-1;Te>=0;Te--){const ke=U[Te];if(!ke)continue;const Qe=ke.x-le,re=ke.y-Ne;if(Qe*Qe+re*re<ke.r*ke.r+25)return ke}return null},we=le=>{const Ne=be(le),Te=xe(Ne.x,Ne.y);Te?D.drag=Te:G=!0,P=le.clientX,oe=le.clientY,z()},J=le=>{const Ne=le.clientX-P,Te=le.clientY-oe;D.drag?(D.drag.x+=Ne/D.zoom,D.drag.y+=Te/D.zoom,D.drag.vx=0,D.drag.vy=0,z()):G&&(D.panX+=Ne,D.panY+=Te,z()),P=le.clientX,oe=le.clientY,D.mouseX=le.clientX,D.mouseY=le.clientY;const ke=f.current,Qe=be(le),re=!D.drag&&!G?xe(Qe.x,Qe.y):null;if(ke)if(re){const Ae=Y.filter(he=>he.source===re.id||he.target===re.id).length;ke.innerHTML=`<div style="font-weight:700;word-break:break-all">${re.id}</div><div style="margin-top:4px;color:#64748b;font-family:var(--font-mono,monospace)"><span style="color:${jf(re.language)}">●</span> ${re.language} · ${re.symbols} symbols · ${Ae} links</div>`;const ue=E.getBoundingClientRect();ke.style.left=le.clientX-ue.left+14+"px",ke.style.top=le.clientY-ue.top+14+"px",ke.style.display="block",E.style.cursor="pointer"}else ke.style.display="none",E.style.cursor=D.drag||G?"grabbing":"grab";z()},de=le=>{D.drag&&!G?Math.abs(le.clientX-P)>3||(D.sel=D.sel===D.drag.id?null:D.drag.id):G&&Math.abs(le.clientX-P)<3&&Math.abs(le.clientY-oe)<3&&(D.sel=null),D.drag=null,G=!1,z()},Ce=le=>{le.preventDefault();const Ne=E.getBoundingClientRect(),Te=le.clientX-Ne.left,ke=le.clientY-Ne.top,Qe=le.deltaY>0?.9:1.1,re=Math.max(.1,Math.min(5,D.zoom*Qe));D.panX=Te-(Te-D.panX)/D.zoom*re,D.panY=ke-(ke-D.panY)/D.zoom*re,D.zoom=re,z()},Re=()=>{f.current&&(f.current.style.display="none")};return E.addEventListener("mousedown",we),window.addEventListener("mousemove",J),window.addEventListener("mouseup",de),E.addEventListener("wheel",Ce,{passive:!1}),E.addEventListener("mouseleave",Re),()=>{D.raf!=null&&cancelAnimationFrame(D.raf),B.disconnect(),E.removeEventListener("mousedown",we),window.removeEventListener("mousemove",J),window.removeEventListener("mouseup",de),E.removeEventListener("wheel",Ce),E.removeEventListener("mouseleave",Re),h.current=null}},[r.data]),r.isLoading)return u.jsxs("div",{className:"nb-card flex items-center gap-2 text-sm text-[var(--color-text-muted)]",children:[u.jsx(We,{size:14,className:"animate-spin"})," ",n("graph.viz.loading")]});if(!((v=(k=r.data)==null?void 0:k.data)!=null&&v.nodes.length))return u.jsx("div",{className:"nb-card text-sm text-[var(--color-text-muted)]",children:n("graph.viz.empty")});const m=[{label:n("graph.stat.files"),value:t.files.toLocaleString()},{label:n("graph.stat.nodes"),value:t.nodes.toLocaleString()},{label:n("graph.stat.edges"),value:t.edges.toLocaleString()},{label:n("graph.stat.db"),value:jz(t.dbSizeBytes)},{label:n("graph.stat.lastBuilt"),value:Cz(t.lastIndexedAt)}];return u.jsxs("div",{ref:l,className:"relative w-full flex-1 min-h-[420px] nb-card p-0 overflow-hidden",style:{background:"var(--color-bg-cream)"},children:[u.jsx("canvas",{ref:d,className:"block absolute inset-0",style:{cursor:"grab"}}),u.jsx("div",{ref:f,className:"absolute z-40 pointer-events-none nb-card bg-[var(--color-bg)] px-3 py-2 text-xs max-w-xs",style:{display:"none"}}),u.jsxs("div",{className:"absolute top-3 right-3 w-52 flex flex-col gap-2 pointer-events-none",children:[u.jsxs("div",{className:"relative pointer-events-auto",children:[u.jsx(co,{size:14,className:"absolute left-3 top-1/2 -translate-y-1/2 text-[var(--color-text-subtle)]"}),u.jsx("input",{className:"nb-input pl-9 w-full text-sm",placeholder:n("graph.viz.search"),value:a,onChange:S=>o(S.target.value),"aria-label":n("graph.viz.search")})]}),u.jsxs("div",{className:"nb-card p-3 flex flex-col gap-1.5 pointer-events-auto bg-[var(--color-bg)]",children:[m.map(S=>u.jsxs("div",{className:"flex items-center justify-between gap-2 text-xs",children:[u.jsx("span",{className:"text-[var(--color-text-subtle)] shrink-0",children:S.label}),u.jsx("span",{className:"font-bold font-[family-name:var(--font-mono)] text-right",children:S.value})]},S.label)),u.jsx("div",{className:"mt-1 pt-1.5 border-t-[1.5px] border-dashed border-[var(--color-border-light)] flex flex-wrap gap-x-2 gap-y-1",children:g.map(S=>u.jsxs("span",{className:"inline-flex items-center gap-1 text-[10px] font-[family-name:var(--font-mono)]",children:[u.jsx("span",{className:"inline-block w-2.5 h-2.5 rounded-full border-[1.5px] border-[var(--color-text)]",style:{background:jf(S)}}),S]},S))})]}),u.jsx("p",{className:"text-[10px] text-[var(--color-text-subtle)] text-right leading-tight pointer-events-none",children:n("graph.viz.hint")})]})]})}function Tz({name:e}){var m,y;const t=Be(),n=Gt(),r=Xe({queryKey:["graph-status",e],queryFn:()=>wz(e)}),a=()=>{n.invalidateQueries({queryKey:["graph-status",e]}),n.invalidateQueries({queryKey:["graph-data",e]})},o=Ct({mutationFn:()=>Ez(e),onSuccess:a}),l=Ct({mutationFn:()=>Sz(e),onSuccess:a}),d=((m=r.data)==null?void 0:m.data)??null,f=o.isPending,h=l.isPending,g=f||h;return u.jsxs("div",{className:"flex flex-col gap-3 max-w-full flex-1 min-h-0",children:[u.jsxs("header",{className:"flex items-center justify-between flex-wrap gap-3 shrink-0",children:[u.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[u.jsx(UN,{size:20,strokeWidth:2.5,className:"shrink-0"}),u.jsx("h2",{className:"font-[family-name:var(--font-heading)] text-xl font-bold shrink-0",children:t("graph.title")}),u.jsx("span",{className:"text-xs text-[var(--color-text-muted)] truncate hidden sm:inline",children:t("graph.desc")})]}),u.jsxs("div",{className:"flex items-center gap-2 shrink-0",children:[d&&u.jsxs("button",{className:"nb-btn shrink-0",onClick:()=>l.mutate(),disabled:g,type:"button",title:t("graph.sync.desc"),children:[h?u.jsx(We,{size:14,strokeWidth:2.5,className:"animate-spin"}):u.jsx(eL,{size:14,strokeWidth:2.5}),t(h?"graph.syncing":"graph.sync")]}),u.jsxs("button",{className:"nb-btn nb-btn-mint shrink-0",onClick:()=>o.mutate(),disabled:g,type:"button",children:[f?u.jsx(We,{size:14,strokeWidth:2.5,className:"animate-spin"}):d?u.jsx(ga,{size:14,strokeWidth:2.5}):u.jsx(iL,{size:14,strokeWidth:2.5}),t(f?"graph.building":d?"graph.rebuild":"graph.build")]})]})]}),(o.isError||l.isError)&&u.jsxs("div",{className:"nb-card bg-[var(--color-crashed-bg)] text-sm shrink-0",children:[t("graph.buildFailed"),": ",((y=o.error||l.error)==null?void 0:y.message)??""]}),r.isLoading?u.jsxs("div",{className:"nb-card flex items-center gap-2 text-sm text-[var(--color-text-muted)]",children:[u.jsx(We,{size:14,className:"animate-spin"})," ",t("graph.viz.loading")]}):d?u.jsx(Az,{name:e,status:d}):u.jsx("div",{className:"nb-card text-sm text-[var(--color-text-muted)]",children:t("graph.empty")})]})}const Mz=["overview","config","pipelines","skills","rules","graph","danger"];function Dz({name:e,embedded:t}={}){var g;const n=Be(),{name:r=""}=jb(),a=e??r,o=vs(),[l,d]=Bb("projectDetail.tab","overview"),f=Mz.includes(l)?l:"overview",h=Xe({queryKey:["project",a],queryFn:()=>A3(a),enabled:!!a});return u.jsxs("div",{className:"flex flex-col gap-4 w-full flex-1 min-h-0",children:[u.jsxs("header",{className:"flex items-center gap-3 shrink-0",children:[!t&&u.jsxs("button",{type:"button",onClick:()=>o("/projects"),className:"nb-btn",style:{padding:"6px 12px"},"aria-label":n("newProject.back.aria"),children:[u.jsx(ON,{size:14,strokeWidth:3}),n("newProject.back")]}),u.jsx("h1",{className:"font-[family-name:var(--font-heading)] text-3xl font-bold flex-1 truncate",children:a})]}),u.jsxs("nav",{className:"flex items-center gap-2 flex-wrap shrink-0",children:[u.jsx(qs,{current:f,value:"overview",onSelect:d,icon:GR,children:n("projectDetail.tab.overview")}),u.jsx(qs,{current:f,value:"config",onSelect:d,icon:HN,children:n("projectDetail.tab.config")}),u.jsx(qs,{current:f,value:"pipelines",onSelect:d,icon:Ib,children:n("projectDetail.tab.pipelines")}),u.jsx(qs,{current:f,value:"skills",onSelect:d,icon:KN,children:n("projectDetail.tab.skills")}),u.jsx(qs,{current:f,value:"rules",onSelect:d,icon:wR,children:n("projectDetail.tab.rules")}),u.jsx(qs,{current:f,value:"graph",onSelect:d,icon:UN,children:n("projectDetail.tab.graph")}),u.jsx(qs,{current:f,value:"danger",onSelect:d,icon:fi,children:n("projectDetail.tab.danger")}),u.jsx(bs,{to:`/board?project=${encodeURIComponent(a)}`,className:"nb-btn nb-btn-mint ml-auto",children:n("projectDetail.openBoard")})]}),u.jsxs("div",{className:"flex-1 min-h-0 overflow-y-auto pr-1 flex flex-col",children:[f==="overview"&&u.jsx(Oz,{name:a,data:h.data,loading:h.isLoading}),f==="config"&&u.jsx(Rz,{name:a}),f==="pipelines"&&u.jsx(Lz,{name:a}),f==="skills"&&u.jsx(xz,{name:a}),f==="rules"&&u.jsx(vz,{name:a}),f==="graph"&&u.jsx(Tz,{name:a}),f==="danger"&&u.jsx(Iz,{name:a,repoDir:((g=h.data)==null?void 0:g.repoDir)??null})]})]})}function qs({current:e,value:t,onSelect:n,icon:r,children:a}){const o=e===t;return u.jsxs("button",{type:"button",onClick:()=>n(t),"aria-current":o?"page":void 0,className:["nb-btn",o?"nb-btn-primary":""].join(" "),style:{padding:"6px 14px",fontSize:13},children:[u.jsx(r,{size:13,strokeWidth:2.5}),a]})}function Oz({name:e,data:t,loading:n}){const r=Be();return n?u.jsx("div",{className:"nb-card",children:u.jsx("p",{className:"text-[var(--color-text-muted)]",children:r("common.loading")})}):t?u.jsx("div",{className:"nb-card",children:u.jsxs("dl",{className:"grid grid-cols-[160px_1fr] gap-y-3 text-sm",children:[u.jsx("dt",{className:"font-bold",children:r("projectDetail.overview.repoDir")}),u.jsx("dd",{className:"font-[family-name:var(--font-mono)]",children:t.repoDir??"—"}),u.jsx("dt",{className:"font-bold",children:r("projectDetail.overview.pmBackend")}),u.jsx("dd",{className:"font-[family-name:var(--font-mono)]",children:t.pmBackend}),u.jsx("dt",{className:"font-bold",children:r("projectDetail.overview.agent")}),u.jsx("dd",{className:"font-[family-name:var(--font-mono)]",children:t.agentProvider}),u.jsx("dt",{className:"font-bold",children:r("projectDetail.overview.cards")}),u.jsx("dd",{className:"font-[family-name:var(--font-mono)]",children:r("projectDetail.overview.cards.value",{total:t.cards.total,inprogress:t.cards.inprogress,done:t.cards.done})}),u.jsx("dt",{className:"font-bold",children:r("projectDetail.overview.workers")}),u.jsx("dd",{className:"font-[family-name:var(--font-mono)]",children:r("projectDetail.overview.workers.value",{total:t.workers.total,active:t.workers.active})}),u.jsx("dt",{className:"font-bold",children:r("projectDetail.overview.pipeline")}),u.jsx("dd",{className:"font-[family-name:var(--font-mono)]",children:t.pipelineStatus}),u.jsx("dt",{className:"font-bold",children:r("projectDetail.overview.lastActivity")}),u.jsx("dd",{className:"font-[family-name:var(--font-mono)]",children:t.lastActivityAt?new Date(t.lastActivityAt).toLocaleString():"—"})]})}):u.jsx("div",{className:"nb-card bg-[var(--color-crashed-bg)]",children:u.jsx("p",{children:r("projectDetail.overview.notFound",{name:e})})})}function Rz({name:e}){const t=Be(),n=Gt(),{alert:r}=mn(),{data:a,isLoading:o,isError:l,error:d,refetch:f}=Xe({queryKey:["project-conf",e],queryFn:()=>M3(e)}),[h,g]=C.useState(null),[m,y]=C.useState(null);C.useEffect(()=>{a&&h===null&&(g(a.content),y(a.etag))},[a,h]);const b=h!==null&&a!==void 0&&h!==a.content,k=Ct({mutationFn:()=>{if(h===null||m===null)throw new Error("no draft");return D3(e,h,m)},onSuccess:v=>{y(v.etag),n.invalidateQueries({queryKey:["project-conf",e]}),n.invalidateQueries({queryKey:["project",e]})},onError:v=>{const S=v.status;r({title:t(S===409?"projectDetail.config.error.conflict.title":"projectDetail.config.error.save.title"),body:S===409?t("projectDetail.config.error.conflict.body"):v instanceof Error?v.message:String(v)})}});return o?u.jsx("div",{className:"nb-card",children:u.jsx("p",{className:"text-[var(--color-text-muted)]",children:t("common.loading")})}):l?u.jsx("div",{className:"nb-card bg-[var(--color-crashed-bg)]",children:u.jsx("p",{children:t("projectDetail.config.error.load",{detail:d instanceof Error?d.message:String(d)})})}):u.jsxs("div",{className:"nb-card",children:[u.jsxs("div",{className:"flex items-center justify-between mb-3",children:[u.jsxs("div",{children:[u.jsx("h2",{className:"font-[family-name:var(--font-heading)] text-lg font-bold",children:u.jsxs("code",{className:"font-[family-name:var(--font-mono)] text-sm bg-[var(--color-bg-cream)] border-2 border-[var(--color-text)] px-2 py-0.5 rounded",children:["~/.coral/projects/",e,"/conf"]})}),m&&u.jsxs("p",{className:"text-xs text-[var(--color-text-muted)] font-[family-name:var(--font-mono)] mt-1",children:["etag: ",m]})]}),u.jsxs("div",{className:"flex gap-2",children:[u.jsxs("button",{type:"button",className:"nb-btn",style:{padding:"6px 12px"},onClick:()=>{g(null),f()},disabled:k.isPending,"aria-label":t("projectDetail.config.reload"),children:[u.jsx(ga,{size:13,strokeWidth:2.5}),t("projectDetail.config.reload")]}),u.jsxs("button",{type:"button",className:"nb-btn nb-btn-primary",style:{padding:"6px 12px"},onClick:()=>k.mutate(),disabled:!b||k.isPending,"aria-label":t("projectDetail.config.saveAria"),children:[k.isPending?u.jsx(We,{size:13,strokeWidth:3,className:"animate-spin"}):k.isSuccess&&!b?u.jsx(NR,{size:13,strokeWidth:3}):u.jsx(Oi,{size:13,strokeWidth:3}),t("projectDetail.config.save")]})]})]}),u.jsx("textarea",{className:"nb-input w-full font-[family-name:var(--font-mono)] text-xs",style:{minHeight:480,resize:"vertical"},value:h??"",onChange:v=>g(v.target.value),spellCheck:!1,"aria-label":t("projectDetail.config.editorAria")}),b&&u.jsx("p",{className:"text-xs text-[var(--color-stuck)] mt-2 font-bold",children:t("projectDetail.config.confDirty")})]})}function Lz({name:e}){const t=Be(),n=Gt(),{confirm:r,alert:a}=mn(),{data:o,isLoading:l}=Xe({queryKey:["project-pipelines",e],queryFn:()=>R3(e)}),[d,f]=C.useState(null),[h,g]=C.useState(!1),m=Ct({mutationFn:v=>L3(e,v),onSuccess:()=>n.invalidateQueries({queryKey:["project-pipelines",e]}),onError:v=>{a({title:t("projectDetail.pipelines.switch.error"),body:v instanceof Error?v.message:String(v)})}}),y=Ct({mutationFn:v=>B3(e,v),onSuccess:()=>n.invalidateQueries({queryKey:["project-pipelines",e]}),onError:v=>{a({title:t("projectDetail.pipelines.delete.error"),body:v instanceof Error?v.message:String(v)})}}),b=Ct({mutationFn:v=>P3(e,v.name,v.template),onSuccess:v=>{n.invalidateQueries({queryKey:["project-pipelines",e]}),g(!1),f(v.name)},onError:v=>{a({title:t("projectDetail.pipelines.create.error"),body:v instanceof Error?v.message:String(v)})}});if(l)return u.jsx("div",{className:"nb-card",children:u.jsx("p",{className:"text-[var(--color-text-muted)]",children:t("common.loading")})});const k=[];o!=null&&o.active&&k.push({name:o.active,isActive:!0});for(const v of(o==null?void 0:o.available)??[])k.push({name:v.name,isActive:!1});return u.jsxs(u.Fragment,{children:[u.jsxs("div",{className:"nb-card",children:[u.jsxs("div",{className:"flex items-center justify-between mb-3",children:[u.jsx("h2",{className:"font-[family-name:var(--font-heading)] text-lg font-bold",children:t("projectDetail.pipelines.title")}),u.jsxs("button",{type:"button",className:"nb-btn nb-btn-mint",style:{padding:"6px 12px",fontSize:12},onClick:()=>g(!0),disabled:b.isPending,"aria-label":t("projectDetail.pipelines.add"),children:[u.jsx(pr,{size:12,strokeWidth:3}),t("projectDetail.pipelines.add")]})]}),k.length===0?u.jsx("p",{className:"text-sm text-[var(--color-text-muted)] italic p-4 border-2 border-dashed border-[var(--color-text)] rounded-lg text-center",children:t("projectDetail.pipelines.empty")}):u.jsx("ul",{className:"flex flex-col gap-2",children:k.map(v=>u.jsxs("li",{className:"flex items-center gap-3 p-3 bg-[var(--color-bg-cream)] border-2 border-[var(--color-text)] rounded-lg",children:[u.jsx(Ib,{size:16,strokeWidth:2.5}),u.jsx("span",{className:"font-[family-name:var(--font-mono)] font-bold flex-1",children:v.name}),v.isActive&&u.jsx("span",{className:"nb-status",style:{background:"var(--color-running-bg)",color:"var(--color-running)"},children:t("projectDetail.pipelines.activeBadge")}),u.jsxs("div",{className:"flex gap-1",children:[u.jsxs("button",{type:"button",className:"nb-btn",style:{padding:"4px 10px",fontSize:11},onClick:()=>f(v.name),"aria-label":t("projectDetail.pipelines.editAria",{name:v.name}),children:[u.jsx(Ph,{size:11,strokeWidth:2.5}),t("projectDetail.pipelines.edit")]}),!v.isActive&&u.jsxs(u.Fragment,{children:[u.jsx("button",{type:"button",className:"nb-btn nb-btn-primary",style:{padding:"4px 10px",fontSize:11},onClick:async()=>{await r({title:t("projectDetail.pipelines.switch.confirm.title",{name:v.name}),body:t("projectDetail.pipelines.switch.confirm.body",{name:v.name}),confirm:t("projectDetail.pipelines.switch.confirm.button")})&&m.mutate(v.name)},disabled:m.isPending,"aria-label":t("projectDetail.pipelines.switchAria",{name:v.name}),children:t("projectDetail.pipelines.switch")}),u.jsx("button",{type:"button",className:"nb-btn nb-btn-danger",style:{padding:"4px 10px",fontSize:11},onClick:async()=>{await r({title:t("projectDetail.pipelines.delete.confirm.title",{name:v.name}),body:t("projectDetail.pipelines.delete.confirm.body"),confirm:t("common.delete"),danger:!0})&&y.mutate(v.name)},disabled:y.isPending,"aria-label":t("projectDetail.pipelines.deleteAria",{name:v.name}),children:u.jsx(fi,{size:11,strokeWidth:2.5})})]})]})]},v.name))})]}),d&&u.jsx(iz,{projectName:e,file:d,onClose:()=>f(null),onSaved:()=>{n.invalidateQueries({queryKey:["project-pipelines",e]})}}),h&&u.jsx(oz,{hasActive:!!(o!=null&&o.active),hasSample:!0,isPending:b.isPending,onCancel:()=>g(!1),onCreate:(v,S)=>b.mutate({name:v,template:S})})]})}function Iz({name:e,repoDir:t}){const n=Be(),r=vs(),a=Gt(),{alert:o}=mn(),[l,d]=C.useState(""),[f,h]=C.useState(!0),g=Ct({mutationFn:()=>O3(e,{includeClaudeDir:f}),onSuccess:v=>{a.invalidateQueries({queryKey:["projects"]});const S=v.claudeRemoved.filter(E=>E.ok).map(E=>E.path);o({title:n("projectDetail.danger.deleted.title"),body:S.length>0?n("projectDetail.danger.deleted.bodyWithList",{paths:S.join(`
596
+ `)}):n("projectDetail.danger.deleted.body")}).then(()=>r("/projects"))},onError:v=>{o({title:n("projectDetail.danger.error"),body:v instanceof Error?v.message:String(v)})}}),y=n("projectDetail.danger.body",{path:"__PATH__"}).split("__PATH__"),k=n("projectDetail.danger.confirmPrompt",{name:"__NAME__"}).split("__NAME__");return u.jsxs("div",{className:"nb-card bg-[var(--color-crashed-bg)]",children:[u.jsx("h2",{className:"font-[family-name:var(--font-heading)] text-lg font-bold mb-2 text-[var(--color-crashed)]",children:n("projectDetail.danger.title")}),u.jsxs("p",{className:"text-sm mb-4",children:[y[0],u.jsxs("code",{className:"font-[family-name:var(--font-mono)] bg-[var(--color-bg)] border-2 border-[var(--color-text)] px-1.5 py-0.5 rounded",children:["~/.coral/projects/",e,"/"]}),y[1]]}),t&&u.jsxs("label",{className:"flex items-start gap-2 mb-4 p-3 bg-[var(--color-bg)] border-2 border-[var(--color-text)] rounded-lg cursor-pointer",children:[u.jsx("input",{type:"checkbox",checked:f,onChange:v=>h(v.target.checked),className:"mt-0.5"}),u.jsxs("div",{className:"flex-1",children:[u.jsx("div",{className:"text-sm font-bold",children:n("projectDetail.danger.includeClaude.label")}),u.jsxs("div",{className:"text-xs text-[var(--color-text-muted)] font-[family-name:var(--font-mono)]",children:[t,"/.claude/"]}),u.jsx("div",{className:"text-xs text-[var(--color-text-muted)] mt-1",children:n("projectDetail.danger.includeClaude.note")})]})]}),u.jsx("div",{className:"mb-4",children:u.jsxs("label",{className:"flex flex-col gap-1.5",children:[u.jsxs("span",{className:"text-sm font-bold",children:[k[0],u.jsx("code",{className:"font-[family-name:var(--font-mono)] text-xs",children:e}),k[1]]}),u.jsx("input",{type:"text",className:"nb-input w-full font-[family-name:var(--font-mono)]",value:l,onChange:v=>d(v.target.value),placeholder:e})]})}),u.jsxs("button",{type:"button",className:"nb-btn nb-btn-danger",disabled:l!==e||g.isPending,onClick:()=>g.mutate(),"aria-label":n("projectDetail.danger.deleteAria"),children:[g.isPending?u.jsx(We,{size:14,strokeWidth:3,className:"animate-spin"}):u.jsx(fi,{size:14,strokeWidth:3}),n("projectDetail.danger.deleteButton")]})]})}function zz(e){const t=e?`?path=${encodeURIComponent(e)}`:"";return ht(`/api/fs/browse${t}`)}const n2=50*1024*1024;async function Pz(e,t){if(t.size>n2)throw new Error(`文件超过 50 MB 上限(当前 ${(t.size/1024/1024).toFixed(2)} MB)`);const n=new FormData;n.append("sessionId",e),n.append("file",t,t.name);const r=await fetch("/api/fs/upload",{method:"POST",body:n});if(!r.ok){const a=await r.text();throw new Error(`${r.status}: ${a}`)}return await r.json()}function Hy(e,t){return`/api/fs/file?${new URLSearchParams({path:t,sessionId:e}).toString()}`}function rx({initialPath:e,onCancel:t,onSelect:n,title:r,mode:a="directory"}){var v,S,E;const o=Be(),l=r??o("dirPicker.title.default"),[d,f]=C.useState(e??null),[h,g]=C.useState(null),m=Xe({queryKey:["fs-browse",d],queryFn:()=>zz(d??void 0),staleTime:0,gcTime:0}),y=((v=m.data)==null?void 0:v.path)??d??"",b=((S=m.data)==null?void 0:S.parent)??null,k=((E=m.data)==null?void 0:E.home)??null;return C.useEffect(()=>{const j=N=>{N.key==="Escape"&&(N.preventDefault(),t())};return window.addEventListener("keydown",j),()=>window.removeEventListener("keydown",j)},[t]),u.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-[rgba(45,55,72,0.5)] p-4",role:"presentation",children:u.jsxs("div",{className:"nb-card bg-[var(--color-bg)] max-w-lg w-full p-5 flex flex-col",style:{maxHeight:"70vh"},role:"dialog","aria-modal":"true","aria-label":l,children:[u.jsxs("header",{className:"flex items-center justify-between mb-3 shrink-0",children:[u.jsx("h3",{className:"font-[family-name:var(--font-heading)] font-bold text-base",children:l}),u.jsx("button",{type:"button",className:"p-1 hover:bg-[var(--color-bg-cream)] rounded",onClick:t,"aria-label":o("dirPicker.close.aria"),children:u.jsx(Nn,{size:14,strokeWidth:3})})]}),u.jsxs("div",{className:"flex items-center gap-2 mb-3 shrink-0",children:[u.jsx("button",{type:"button",className:"nb-btn flex-shrink-0",style:{padding:"4px 10px",fontSize:12},onClick:()=>b&&f(b),disabled:!b||m.isLoading,"aria-label":o("dirPicker.up.aria"),title:o("dirPicker.up.title"),children:u.jsx(RN,{size:12,strokeWidth:3})}),u.jsx("button",{type:"button",className:"nb-btn flex-shrink-0",style:{padding:"4px 10px",fontSize:12},onClick:()=>k&&f(k),disabled:!k||m.isLoading,"aria-label":o("dirPicker.home.aria"),title:o("dirPicker.home.title"),children:u.jsx(lL,{size:12,strokeWidth:3})}),u.jsx("div",{className:"flex-1 min-w-0 nb-input font-[family-name:var(--font-mono)] text-xs px-2 py-1.5 truncate",title:y,dir:"rtl",children:y||"..."})]}),u.jsxs("div",{className:"flex-1 overflow-y-auto border-2 border-[var(--color-text)] rounded-lg bg-[var(--color-bg-cream)] min-h-0",children:[m.isLoading&&u.jsxs("div",{className:"flex items-center justify-center py-12 text-[var(--color-text-muted)]",children:[u.jsx(We,{size:16,strokeWidth:3,className:"animate-spin mr-2"}),o("dirPicker.loading")]}),m.isError&&u.jsxs("div",{className:"p-4 text-sm text-[var(--color-crashed)]",children:[u.jsx("p",{className:"font-bold mb-1",children:o("dirPicker.error.title")}),u.jsx("p",{className:"text-xs font-[family-name:var(--font-mono)] break-all",children:m.error instanceof Error?m.error.message:String(m.error)})]}),m.data&&u.jsxs("ul",{className:"divide-y-2 divide-[var(--color-text)]/20",children:[m.data.entries.length===0&&u.jsx("li",{className:"p-4 text-xs text-[var(--color-text-subtle)] italic text-center",children:o("dirPicker.empty")}),m.data.entries.map(j=>{const N=(()=>{const T=y.endsWith("/")||y.endsWith("\\")?"":"/";return`${y}${T}${j.name}`})(),_=a==="file"&&h===N,O=j.isDirectory||a==="file";return u.jsx("li",{children:u.jsxs("button",{type:"button",className:["w-full flex items-center gap-2 px-3 py-2 text-left text-sm font-[family-name:var(--font-mono)]","disabled:opacity-50 disabled:cursor-not-allowed",_?"bg-[var(--color-accent-mint)] font-bold":"hover:bg-[var(--color-accent-mint)]"].join(" "),disabled:!O,onClick:()=>{j.isDirectory?(g(null),f(N)):a==="file"&&g(N)},onDoubleClick:()=>{a==="file"&&!j.isDirectory&&n(N)},title:j.isDirectory?o("dirPicker.enter.aria",{name:j.name}):a==="file"?o("dirPicker.pickFile.aria",{name:j.name}):o("dirPicker.fileLocked"),children:[j.isDirectory?u.jsx(ku,{size:14,strokeWidth:2.5,className:"flex-shrink-0 text-[var(--color-text)]"}):u.jsx("span",{className:"w-3.5 h-3.5 flex-shrink-0"}),u.jsx("span",{className:"truncate",children:j.name}),j.isDirectory&&u.jsx(Wl,{size:12,strokeWidth:2.5,className:"ml-auto flex-shrink-0 text-[var(--color-text-muted)]"})]})},j.name)})]})]}),u.jsxs("div",{className:"flex gap-2 justify-end pt-3 shrink-0",children:[u.jsx("button",{type:"button",className:"nb-btn",onClick:t,children:o("dirPicker.cancel")}),a==="file"?u.jsxs("button",{type:"button",className:"nb-btn nb-btn-primary",onClick:()=>h&&n(h),disabled:!h||m.isLoading||m.isError,title:h??o("dirPicker.useFile.tooltip.empty"),children:[u.jsx(wu,{size:14,strokeWidth:3}),o("dirPicker.useFile")]}):u.jsxs("button",{type:"button",className:"nb-btn nb-btn-primary",onClick:()=>n(y),disabled:!y||m.isLoading||m.isError,children:[u.jsx(wu,{size:14,strokeWidth:3}),o("dirPicker.useDir")]})]})]})})}function r2({onCancel:e,onCreated:t}={}){var T,I,R,F;const n=Be(),r=vs(),a=Gt(),{alert:o}=mn(),l=e??(()=>r("/projects")),[d,f]=C.useState({name:"",projectDir:"",enableGit:!0,createIfMissing:!0,mergeBranch:"main",maxWorkers:"1",ackTimeoutMin:"5",pipelineMode:"pipeline"}),h=d.pipelineMode==="smartArrange",g=Xe({queryKey:["system-agents"],queryFn:n_}),m=((T=g.data)==null?void 0:T.agents.worker.model)??"",y=((I=g.data)==null?void 0:I.agents.reviewer.model)??"",b=[...new Set((((R=g.data)==null?void 0:R.providers.anthropic)??[]).flatMap(M=>M.models))],k=[...new Set((((F=g.data)==null?void 0:F.providers.openai)??[]).flatMap(M=>M.models))],[v,S]=C.useState(!1),E=Ct({mutationFn:M=>T3(M),onSuccess:M=>{a.invalidateQueries({queryKey:["projects"]}),t?t(M.name):r(`/projects/${encodeURIComponent(M.name)}`)},onError:M=>{o({title:n("newProject.error.create.title"),body:M instanceof Error?M.message:String(M)})}}),j=/^[a-zA-Z0-9_-]+$/.test(d.name),N=j&&d.projectDir.trim()!==""&&!E.isPending,_=d.projectDir.trim().replace(/\/+$/,""),O=_&&d.name?_.split("/").pop()===d.name?_:`${_}/${d.name}`:"";return u.jsxs("div",{className:"w-full",children:[u.jsxs("div",{className:"nb-card flex flex-col gap-4",children:[u.jsxs("header",{className:"flex items-center gap-3",children:[u.jsxs("button",{type:"button",onClick:l,className:"nb-btn",style:{padding:"6px 12px"},"aria-label":n("newProject.back.aria"),children:[u.jsx(ON,{size:14,strokeWidth:3}),n("newProject.back")]}),u.jsx("h1",{className:"font-[family-name:var(--font-heading)] text-2xl font-bold",children:n("newProject.title")})]}),u.jsxs("form",{onSubmit:M=>{M.preventDefault(),N&&E.mutate(d)},className:"grid grid-cols-1 md:grid-cols-2 gap-x-6 gap-y-4",children:[u.jsx($r,{className:"md:col-span-2",label:n("newProject.field.mode"),hint:n(h?"newProject.field.mode.smartHint":"newProject.field.mode.pipelineHint"),children:u.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-3",children:["pipeline","smartArrange"].map(M=>{const U=d.pipelineMode===M;return u.jsxs("button",{type:"button",onClick:()=>f({...d,pipelineMode:M}),"aria-pressed":U,className:["text-left rounded-xl border-2 p-3 transition-all",U?"bg-[var(--color-accent-mint)] border-[var(--color-text)] shadow-[3px_3px_0_var(--color-text)] font-bold":"bg-[var(--color-bg)] border-[var(--color-border-light)] hover:border-[var(--color-text)]"].join(" "),children:[u.jsx("div",{className:"text-sm font-bold",children:n(M==="pipeline"?"newProject.field.mode.pipeline":"newProject.field.mode.smart")}),u.jsx("div",{className:"text-xs text-[var(--color-text-muted)] mt-0.5",children:n(M==="pipeline"?"newProject.field.mode.pipelineDesc":"newProject.field.mode.smartDesc")})]},M)})})}),h&&u.jsx($r,{className:"md:col-span-2",label:n("newProject.field.goal"),hint:n("newProject.field.goal.hint"),children:u.jsx("textarea",{className:"nb-input w-full font-[family-name:var(--font-mono)] text-sm",style:{minHeight:110,resize:"vertical"},placeholder:n("newProject.field.goal.placeholder"),value:d.goal??"",onChange:M=>f({...d,goal:M.target.value})})}),u.jsxs($r,{label:"Worker 模型",hint:`默认:${m||"全局默认"}(留空用默认)`,children:[u.jsx("input",{className:"nb-input w-full font-[family-name:var(--font-mono)] text-xs",value:d.workerModel??"",onChange:M=>f({...d,workerModel:M.target.value}),placeholder:m,list:"np-worker-models",spellCheck:!1}),u.jsx("datalist",{id:"np-worker-models",children:b.map(M=>u.jsx("option",{value:M},M))})]}),h&&u.jsxs($r,{label:"OpenAI Agent(监工)模型",hint:`默认:${y||"全局默认"}(留空用默认)`,children:[u.jsx("input",{className:"nb-input w-full font-[family-name:var(--font-mono)] text-xs",value:d.reviewerModel??"",onChange:M=>f({...d,reviewerModel:M.target.value}),placeholder:y,list:"np-reviewer-models",spellCheck:!1}),u.jsx("datalist",{id:"np-reviewer-models",children:k.map(M=>u.jsx("option",{value:M},M))})]}),u.jsxs($r,{label:n("newProject.field.name"),hint:n("newProject.field.name.example"),children:[u.jsx("input",{type:"text",className:"nb-input w-full font-[family-name:var(--font-mono)]",placeholder:n("newProject.field.name.placeholder"),value:d.name,onChange:M=>f({...d,name:M.target.value}),autoFocus:!0,required:!0}),d.name&&!j&&u.jsx("p",{className:"text-xs text-[var(--color-crashed)] mt-1",children:n("newProject.field.name.invalid")})]}),u.jsxs($r,{className:"md:col-span-2",label:n("newProject.field.dir"),hint:n("newProject.field.dir.long"),children:[u.jsxs("div",{className:"flex gap-2",children:[u.jsx("input",{type:"text",className:"nb-input flex-1 font-[family-name:var(--font-mono)]",placeholder:n("newProject.field.dir.placeholder"),value:d.projectDir,onChange:M=>f({...d,projectDir:M.target.value}),required:!0}),u.jsxs("button",{type:"button",className:"nb-btn flex-shrink-0",onClick:()=>S(!0),"aria-label":n("newProject.dir.browseAria"),title:n("newProject.dir.browseAria"),children:[u.jsx(zN,{size:14,strokeWidth:2.5}),n("newProject.dir.browse")]})]}),O&&u.jsxs("p",{className:"text-xs mt-1.5 font-[family-name:var(--font-mono)]",children:[u.jsxs("span",{className:"text-[var(--color-text-muted)]",children:[n("newProject.field.dir.preview")," "]}),u.jsx("span",{className:"font-bold",children:O})]}),u.jsxs("label",{className:"flex items-center gap-2 mt-2 cursor-pointer select-none",children:[u.jsx("input",{type:"checkbox",checked:d.createIfMissing!==!1,onChange:M=>f({...d,createIfMissing:M.target.checked}),className:"w-4 h-4 cursor-pointer"}),u.jsx("span",{className:"text-xs text-[var(--color-text-muted)]",children:n("newProject.field.dir.createIfMissing")})]})]}),u.jsx($r,{label:n("newProject.field.maxWorkers.short"),children:u.jsx("input",{type:"number",min:"1",max:"8",className:"nb-input w-full font-[family-name:var(--font-mono)]",value:d.maxWorkers,onChange:M=>f({...d,maxWorkers:M.target.value})})}),u.jsx($r,{label:n("newProject.field.ackTimeout.minutes"),hint:n("newProject.field.ackTimeout.minutes.help"),children:u.jsx("input",{type:"number",min:"1",max:"30",className:"nb-input w-full font-[family-name:var(--font-mono)]",value:d.ackTimeoutMin??"5",onChange:M=>f({...d,ackTimeoutMin:M.target.value})})}),u.jsxs("div",{className:"md:col-span-2 pt-3 border-t-2 border-[var(--color-text)] border-dashed",children:[u.jsxs("label",{className:"flex items-center gap-3 mb-3 cursor-pointer select-none",children:[u.jsx("input",{type:"checkbox",checked:d.enableGit??!0,onChange:M=>f({...d,enableGit:M.target.checked}),className:"w-4 h-4 cursor-pointer"}),u.jsx("span",{className:"text-sm font-bold",children:n("newProject.field.git.label")})]}),u.jsx("p",{className:"text-xs text-[var(--color-text-muted)] mb-3",children:n("newProject.field.git.detail")}),d.enableGit!==!1&&u.jsxs("div",{className:"flex flex-col gap-4 bg-[var(--color-bg-cream)] border-2 border-[var(--color-text)] rounded-lg p-4",children:[u.jsx($r,{label:n("newProject.field.git.branch"),children:u.jsx("input",{type:"text",className:"nb-input w-full font-[family-name:var(--font-mono)]",value:d.mergeBranch??"main",onChange:M=>f({...d,mergeBranch:M.target.value})})}),u.jsx($r,{label:n("newProject.field.gitlabProject.label"),hint:n("newProject.field.gitlabProject.help2"),children:u.jsx("input",{type:"text",className:"nb-input w-full font-[family-name:var(--font-mono)]",placeholder:n("newProject.field.gitlabProject.placeholder"),value:d.gitlabProject??"",onChange:M=>f({...d,gitlabProject:M.target.value})})}),d.gitlabProject&&u.jsx($r,{label:n("newProject.field.gitlabProjectId"),hint:n("newProject.field.gitlabProjectId.help"),children:u.jsx("input",{type:"text",className:"nb-input w-full font-[family-name:var(--font-mono)]",placeholder:n("newProject.field.gitlabProjectId.placeholder"),value:d.gitlabProjectId??"",onChange:M=>f({...d,gitlabProjectId:M.target.value})})})]})]}),u.jsxs("div",{className:"md:col-span-2 pt-3 border-t-2 border-[var(--color-text)] border-dashed",children:[u.jsx("h3",{className:"font-[family-name:var(--font-heading)] text-sm font-bold uppercase tracking-wider mb-3 text-[var(--color-text-muted)]",children:n("newProject.section.notifications")}),u.jsx($r,{label:n("newProject.field.matrixRoom.label"),hint:n("newProject.field.matrixRoom.help2"),children:u.jsx("input",{type:"text",className:"nb-input w-full font-[family-name:var(--font-mono)]",placeholder:n("newProject.field.matrixRoom.placeholder"),value:d.matrixRoomId??"",onChange:M=>f({...d,matrixRoomId:M.target.value})})})]}),u.jsxs("div",{className:"md:col-span-2 flex gap-3 justify-end pt-3",children:[u.jsx("button",{type:"button",className:"nb-btn",onClick:l,disabled:E.isPending,children:n("common.cancel")}),u.jsx("button",{type:"submit",className:"nb-btn nb-btn-primary",disabled:!N,"aria-label":n("newProject.submit"),children:E.isPending?u.jsxs(u.Fragment,{children:[u.jsx(We,{size:14,strokeWidth:3,className:"animate-spin"}),n("newProject.creating")]}):u.jsxs(u.Fragment,{children:[u.jsx(pr,{size:14,strokeWidth:3}),n("common.create")]})})]})]})]}),v&&u.jsx(rx,{title:n("newProject.field.dir.pickerTitle"),initialPath:d.projectDir.trim()||void 0,onCancel:()=>S(!1),onSelect:M=>{f({...d,projectDir:M}),S(!1)}})]})}function $r({label:e,hint:t,children:n,className:r}){return u.jsxs("label",{className:`flex flex-col gap-1.5 ${r??""}`,children:[u.jsx("span",{className:"text-sm font-bold",children:e}),n,t&&u.jsx("span",{className:"text-xs text-[var(--color-text-muted)]",children:t})]})}function Bz({onClose:e,onCreated:t}){return u.jsx("div",{className:"fixed inset-0 z-50 flex items-start justify-center bg-black/30 p-4 overflow-auto",children:u.jsx("div",{className:"w-full max-w-4xl my-8",children:u.jsx(r2,{onCancel:e,onCreated:n=>{e(),t(n)}})})})}const bk="projects.last",Uz=["activity","date","name"];function xk(){const e=Be(),t=vs(),{name:n}=jb(),[r,a]=Bb("projects.sort","activity"),[o,l]=C.useState(!1),{data:d,isLoading:f,isError:h,error:g,refetch:m}=Xe({queryKey:["projects"],queryFn:ba}),y=k=>t(`/projects/${encodeURIComponent(k)}`),b=d?Ub(d.data,r):[];return C.useEffect(()=>{if(n)try{localStorage.setItem(bk,n)}catch{}},[n]),C.useEffect(()=>{if(n||!d)return;let k=null;try{k=localStorage.getItem(bk)}catch{}k&&d.data.some(v=>v.name===k)&&t(`/projects/${encodeURIComponent(k)}`,{replace:!0})},[n,d,t]),u.jsxs("div",{className:"flex flex-col flex-1 min-h-0 w-full",children:[h?u.jsxs("div",{className:"nb-card bg-[var(--color-crashed-bg)]",children:[u.jsx("h2",{className:"font-[family-name:var(--font-heading)] text-xl font-bold mb-2",children:e("projects.load.failed")}),u.jsx("p",{className:"text-sm text-[var(--color-text)]",children:g instanceof Error?g.message:String(g)}),u.jsx("button",{className:"nb-btn mt-4",onClick:()=>m(),type:"button",children:e("common.retry")})]}):d&&d.data.length===0?u.jsx(Hz,{onNew:()=>l(!0)}):u.jsxs("div",{className:"flex gap-5 flex-1 min-h-0",children:[u.jsxs("aside",{className:"w-80 shrink-0 flex flex-col min-h-0",children:[u.jsxs("div",{className:"shrink-0 flex flex-col gap-2 pb-3",children:[u.jsxs("div",{className:"flex items-center justify-between gap-2",children:[u.jsxs("div",{className:"min-w-0",children:[u.jsx("h1",{className:"font-[family-name:var(--font-heading)] text-2xl font-bold truncate",children:e("projects.title")}),u.jsx("p",{className:"text-xs text-[var(--color-text-muted)]",children:d?e("projects.count",{count:d.data.length}):e("common.loading")})]}),u.jsxs("button",{className:"nb-btn nb-btn-primary shrink-0",type:"button",onClick:()=>l(!0),"aria-label":e("projects.new"),children:[u.jsx(pr,{size:16,strokeWidth:3}),e("projects.new")]})]}),u.jsxs("div",{className:"flex items-center gap-2",children:[u.jsx("div",{className:"inline-flex flex-1 border-[3px] border-[var(--color-text)] rounded-xl overflow-hidden shadow-[3px_3px_0_var(--color-text)]",role:"group","aria-label":e("projects.sort.label"),children:Uz.map(k=>u.jsx("button",{type:"button","aria-pressed":r===k,onClick:()=>a(k),className:["flex-1 px-2 py-1.5 text-xs font-bold font-[family-name:var(--font-mono)] focus-visible:outline focus-visible:outline-2",r===k?"bg-[var(--color-accent-mint)]":"bg-[var(--color-bg)] hover:bg-[var(--color-bg-cream)]"].join(" "),children:e(`projects.sort.${k}`)},k))}),u.jsx("button",{className:"nb-btn nb-btn-yellow shrink-0",style:{padding:"6px 10px"},onClick:()=>m(),type:"button","aria-label":e("common.refresh"),children:u.jsx(Ih,{size:16,strokeWidth:2.5})})]})]}),u.jsx("ul",{className:"flex-1 min-h-0 overflow-y-auto flex flex-col gap-2 pr-1",children:f?u.jsx(qz,{}):b.map(k=>u.jsx($z,{project:k,selected:k.name===n,onClick:()=>y(k.name)},k.name))})]}),u.jsx("div",{className:"flex-1 min-w-0 min-h-0 flex flex-col",children:n?u.jsx(Dz,{name:n,embedded:!0}):u.jsx("div",{className:"nb-card",children:u.jsx("p",{className:"text-[var(--color-text-muted)]",children:e("projects.selectHint")})})})]}),o&&u.jsx(Bz,{onClose:()=>l(!1),onCreated:y})]})}function $z({project:e,selected:t,onClick:n}){return u.jsx("li",{children:u.jsxs("button",{type:"button",onClick:n,className:`nb-card w-full text-left ${t?"bg-[var(--color-accent-mint)]":""}`,style:{padding:"10px 12px"},children:[u.jsxs("div",{className:"flex items-center justify-between gap-2",children:[u.jsx("h3",{className:"font-[family-name:var(--font-heading)] font-bold truncate",children:e.name}),u.jsx(Fz,{status:e.pipelineStatus})]}),e.repoDir&&u.jsx("p",{className:"text-[10px] font-[family-name:var(--font-mono)] text-[var(--color-text-muted)] truncate mt-0.5",children:e.repoDir}),u.jsxs("div",{className:"flex gap-3 text-[11px] font-[family-name:var(--font-mono)] text-[var(--color-text-muted)] mt-1.5",children:[u.jsxs("span",{children:[e.cards.total," cards"]}),u.jsxs("span",{children:[e.cards.inprogress," run"]}),u.jsxs("span",{children:[e.workers.active,"/",e.workers.total," w"]})]})]})})}function Fz({status:e}){const t={running:{bg:"var(--color-running-bg)",label:"running"},idle:{bg:"var(--color-idle-bg)",label:"idle"},stopping:{bg:"var(--color-stuck-bg)",label:"stopping"},error:{bg:"var(--color-crashed-bg)",label:"error"}},{bg:n,label:r}=t[e],a=e==="running"?"var(--color-running)":e==="error"?"var(--color-crashed)":e==="stopping"?"var(--color-stuck)":"var(--color-idle)";return u.jsx("span",{className:"nb-status",style:{background:n,color:a},children:r})}function qz(){return u.jsx(u.Fragment,{children:[0,1,2].map(e=>u.jsxs("div",{className:"nb-card opacity-60 animate-pulse",style:{padding:"10px 12px"},children:[u.jsx("div",{className:"h-5 w-28 bg-[var(--color-border-light)] rounded-md mb-2"}),u.jsx("div",{className:"h-3 w-2/3 bg-[var(--color-border-light)] rounded-md"})]},e))})}function Hz({onNew:e}){const t=Be(),n=t("projects.empty.hint",{cmd:"__CMD__"}),[r,a]=n.split("__CMD__");return u.jsxs("div",{className:"nb-card bg-[var(--color-accent-yellow)] flex items-center gap-6 p-8",children:[u.jsx("div",{className:"w-20 h-20 rounded-2xl bg-[var(--color-accent-mint)] border-[3px] border-[var(--color-text)] shadow-[3px_3px_0_var(--color-text)] flex items-center justify-center",children:u.jsx(QN,{size:32,strokeWidth:2.5})}),u.jsxs("div",{className:"flex-1",children:[u.jsx("h2",{className:"font-[family-name:var(--font-heading)] text-2xl font-bold mb-2",children:t("projects.empty.title")}),u.jsxs("p",{className:"text-sm text-[var(--color-text)] mb-4",children:[r,u.jsx("code",{className:"bg-[var(--color-bg)] border-2 border-[var(--color-text)] px-2 py-0.5 rounded-md font-[family-name:var(--font-mono)]",children:"sps project init <name>"}),a]}),u.jsxs("button",{className:"nb-btn nb-btn-primary",type:"button",onClick:e,children:[u.jsx(pr,{size:16,strokeWidth:3}),t("projects.new")]})]})]})}function Kz({project:e,isPending:t,onCancel:n,onCreate:r}){var N;const a=Be(),[o,l]=C.useState(""),[d,f]=C.useState(""),[h,g]=C.useState(new Set),[m,y]=C.useState(!1),b=Xe({queryKey:["skills-all",e],queryFn:()=>nx(e)});C.useEffect(()=>{const _=O=>{O.key==="Escape"&&n()};return window.addEventListener("keydown",_),()=>window.removeEventListener("keydown",_)},[n]);const v=o.trim().length>0&&o.trim().length<=200&&!t,S=_=>{const O=new Set(h);O.has(_)?O.delete(_):O.add(_),g(O)},E=()=>{v&&r({title:o.trim(),description:d.trim(),skills:[...h],labels:["AI-PIPELINE"],initialState:m?"Backlog":"Planning"})},j=((N=b.data)==null?void 0:N.data)??[];return u.jsx("div",{role:"dialog","aria-modal":"true",className:"fixed inset-0 z-40 flex items-start justify-center p-6 bg-black/30 overflow-auto",children:u.jsxs("div",{className:"nb-card mt-8 w-full max-w-xl flex flex-col",style:{maxHeight:"calc(100vh - 64px)"},children:[u.jsxs("header",{className:"flex items-center justify-between mb-4 flex-shrink-0",children:[u.jsx("h2",{className:"font-[family-name:var(--font-heading)] text-2xl font-bold",children:a("newCard.title")}),u.jsx("button",{className:"nb-btn nb-btn-mint p-2",onClick:n,type:"button","aria-label":a("common.close"),children:u.jsx(Nn,{size:14,strokeWidth:3})})]}),u.jsxs("form",{onSubmit:_=>{_.preventDefault(),E()},className:"flex flex-col gap-4 overflow-auto",children:[u.jsxs("label",{className:"flex flex-col gap-1.5",children:[u.jsx("span",{className:"text-sm font-bold",children:a("newCard.field.title")}),u.jsx("input",{type:"text",className:"nb-input w-full",placeholder:a("newCard.field.title.placeholder"),value:o,onChange:_=>l(_.target.value),maxLength:200,autoFocus:!0,required:!0}),u.jsx("span",{className:"text-xs text-[var(--color-text-muted)]",children:a("newCard.field.title.help")})]}),u.jsxs("label",{className:"flex flex-col gap-1.5",children:[u.jsx("span",{className:"text-sm font-bold",children:a("newCard.field.description")}),u.jsx("textarea",{className:"nb-input w-full",style:{minHeight:120,resize:"vertical"},placeholder:a("newCard.field.description.placeholder"),value:d,onChange:_=>f(_.target.value)}),u.jsx("span",{className:"text-xs text-[var(--color-text-muted)]",children:a("newCard.field.description.help")})]}),u.jsxs("div",{className:"flex flex-col gap-2",children:[u.jsx("span",{className:"text-sm font-bold",children:a("newCard.field.skills")}),u.jsx("span",{className:"text-xs text-[var(--color-text-muted)]",children:a("newCard.field.skills.help")}),b.isLoading&&u.jsx("p",{className:"text-xs text-[var(--color-text-muted)] italic",children:a("newCard.field.skills.loading")}),b.isError&&u.jsx("p",{className:"text-xs text-[var(--color-crashed)]",children:a("newCard.field.skills.error",{detail:b.error instanceof Error?b.error.message:String(b.error)})}),j.length>0&&u.jsx("div",{className:"flex flex-wrap gap-2",children:j.map(_=>{const O=h.has(_.name);return u.jsx("button",{type:"button",onClick:()=>S(_.name),className:["px-2.5 py-1 text-xs font-[family-name:var(--font-mono)] rounded-full border-2 transition-all",O?"bg-[var(--color-accent-mint)] border-[var(--color-text)] shadow-[2px_2px_0_var(--color-text)] font-bold":"bg-[var(--color-bg)] border-[var(--color-border-light)] hover:border-[var(--color-text)]"].join(" "),"aria-pressed":O,children:_.name},_.name)})}),h.size>0&&u.jsx("p",{className:"text-xs text-[var(--color-text-muted)]",children:a("newCard.field.skills.selected",{count:h.size,names:[...h].join(", ")})})]}),u.jsxs("div",{className:"flex flex-col gap-2",children:[u.jsx("span",{className:"text-sm font-bold",children:a("newCard.field.dispatch")}),u.jsxs("label",{className:"flex items-center gap-3 cursor-pointer select-none p-3 border-[2px] border-[var(--color-text)] rounded-lg bg-[var(--color-bg-cream)]",children:[u.jsx("input",{type:"checkbox",className:"w-4 h-4 accent-[var(--color-cta)] cursor-pointer",checked:m,onChange:_=>y(_.target.checked)}),u.jsxs("div",{className:"flex-1",children:[u.jsx("div",{className:"text-sm font-bold",children:a("newCard.field.dispatch.label")}),u.jsx("div",{className:"text-xs text-[var(--color-text-muted)] mt-0.5",children:a("newCard.field.dispatch.help")})]})]})]})]}),u.jsxs("div",{className:"flex gap-2 justify-end mt-4 pt-3 border-t-2 border-dashed border-[var(--color-text)] flex-shrink-0",children:[u.jsx("button",{className:"nb-btn",style:{padding:"6px 14px"},onClick:n,disabled:t,type:"button",children:a("common.cancel")}),u.jsxs("button",{className:"nb-btn nb-btn-primary",style:{padding:"6px 14px"},onClick:E,disabled:!v,type:"button","aria-label":a("newCard.create.aria"),children:[t?u.jsx(We,{size:13,strokeWidth:3,className:"animate-spin"}):u.jsx(pr,{size:13,strokeWidth:3}),a("common.create")]})]})]})})}function Gz(e){return ht(`/api/projects/${encodeURIComponent(e)}/cards`)}function Vz(e,t){return ht(`/api/projects/${encodeURIComponent(e)}/cards/${t}`)}async function rc(e,t){const n=await fetch(e,{method:"POST",headers:t?{"Content-Type":"application/json"}:void 0,body:t?JSON.stringify(t):void 0});if(!n.ok){const r=await n.text();throw new Error(`${n.status} ${n.statusText}: ${r}`)}return n.json().catch(()=>({}))}function Yz(e,t){return rc(`/api/projects/${encodeURIComponent(e)}/cards/${t}/reset`)}async function Qz(e,t){const n=await fetch(`/api/projects/${encodeURIComponent(e)}/cards/${t}`,{method:"DELETE"});if(!n.ok){const r=await n.text();throw new Error(`${n.status}: ${r}`)}}function Wz(e,t){return rc(`/api/projects/${encodeURIComponent(e)}/cards/${t}/launch`)}function Xz(e,t){const n=typeof t=="string"?{title:t}:t;return rc(`/api/projects/${encodeURIComponent(e)}/cards`,n)}async function Zz(e,t,n){const r=await fetch(`/api/projects/${encodeURIComponent(e)}/cards/${t}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({state:n})});if(!r.ok){const a=await r.text();throw new Error(`${r.status}: ${a}`)}}async function Jz(e,t,n){const r=await fetch(`/api/projects/${encodeURIComponent(e)}/cards/${t}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});if(!r.ok){const a=await r.text();throw new Error(`${r.status}: ${a}`)}return r.json()}function i2(e){return rc(`/api/projects/${encodeURIComponent(e)}/pipeline/start`)}function a2(e){return rc(`/api/projects/${encodeURIComponent(e)}/pipeline/stop`)}function e4(e,t){return rc(`/api/projects/${encodeURIComponent(e)}/pipeline/reset`,t??{})}function t4(e){const t=Gt();C.useEffect(()=>{if(!e)return;const n=`/stream/projects/${encodeURIComponent(e)}`,r=new EventSource(n),a=d=>{try{const f=JSON.parse(d.data);t.invalidateQueries({queryKey:["cards",f.project]}),t.invalidateQueries({queryKey:["card",f.project,f.seq]}),t.invalidateQueries({queryKey:["projects"]})}catch{}},o=d=>{try{const f=JSON.parse(d.data);t.invalidateQueries({queryKey:["workers",f.project]}),t.invalidateQueries({queryKey:["projects"]})}catch{}},l=d=>{try{const f=JSON.parse(d.data);t.invalidateQueries({queryKey:["pipeline-status",f.project]}),t.invalidateQueries({queryKey:["projects"]})}catch{}};return r.addEventListener("card.created",a),r.addEventListener("card.updated",a),r.addEventListener("card.moved",a),r.addEventListener("card.deleted",a),r.addEventListener("worker.updated",o),r.addEventListener("worker.added",o),r.addEventListener("worker.deleted",o),r.addEventListener("pipeline.status",l),r.addEventListener("pipeline.started",l),r.addEventListener("pipeline.stopped",l),()=>r.close()},[e,t])}const n4=new Set(["python","typescript","golang","rust","kotlin","swift","java"]),r4=new Set(["frontend","backend","mobile","database","devops"]),i4=new Set(["backend-architect","frontend-developer","code-reviewer","database-optimizer","devops-automator","security-engineer","qa-tester","security","qa","architect","db-opt"]),a4=new Set(["coding-standards","tdd-workflow","git-workflow","architecture-decision-records","debugging-workflow"]);function s4(e){return n4.has(e)?"lang":r4.has(e)?"end":i4.has(e)?"persona":a4.has(e)?"workflow":"other"}const o4={lang:"var(--color-accent-purple)",end:"var(--color-secondary)",persona:"var(--color-primary)",workflow:"var(--color-accent-mint)",other:"var(--color-bg)"};function ix({name:e}){const t=o4[s4(e)];return u.jsx("span",{className:"nb-badge",style:{background:t},children:e})}function s2({label:e,kind:t="default"}){const n=t==="warn"?"var(--color-accent-pink)":t==="accent"?"var(--color-accent-yellow)":"var(--color-bg-cream)";return u.jsx("span",{className:"nb-badge",style:{background:n},children:e})}function l4({card:e,onClick:t,done:n,draggable:r}){const a=Be(),o=e.labels.some(l=>l.startsWith("STARTED-"))&&!n;return u.jsxs("article",{onClick:t,onKeyDown:l=>{(l.key==="Enter"||l.key===" ")&&(l.preventDefault(),t())},draggable:r,onDragStart:l=>{l.dataTransfer.setData("application/x-sps-card-seq",String(e.seq)),l.dataTransfer.effectAllowed="move"},tabIndex:0,role:"button","aria-label":`Card #${e.seq}: ${e.title}`,className:["bg-[var(--color-bg)] border-[3px] border-[var(--color-text)] rounded-xl p-3","shadow-[3px_3px_0_var(--color-text)] cursor-pointer","transition-[transform,box-shadow] duration-[180ms] ease-out","hover:-translate-x-0.5 hover:-translate-y-0.5 hover:shadow-[5px_5px_0_var(--color-text)]","focus:outline-none focus-visible:ring-[3px] focus-visible:ring-offset-2 focus-visible:ring-[var(--color-text)]",n?"opacity-60":"",r?"active:cursor-grabbing":""].join(" "),children:[u.jsxs("div",{className:"flex items-center justify-between gap-2 mb-2",children:[u.jsxs("span",{className:"font-[family-name:var(--font-mono)] font-bold text-[11px] px-2 py-0.5 bg-[var(--color-bg-cream)] border-2 border-[var(--color-text)] rounded-full",children:["#",e.seq]}),o&&u.jsx("span",{className:"nb-status",style:{background:"var(--color-running-bg)",color:"var(--color-running)"},children:"running"})]}),u.jsx("p",{className:`font-bold text-sm leading-5 mb-2 line-clamp-2 ${n?"line-through decoration-2":""}`,children:e.title}),(e.skills.length>0||e.labels.length>0)&&u.jsxs("div",{className:"flex flex-wrap gap-1 mb-2",children:[e.skills.slice(0,3).map(l=>u.jsx(ix,{name:l},l)),e.labels.filter(l=>l==="NEEDS-FIX").map(l=>u.jsx(s2,{label:l,kind:"warn"},l))]}),e.checklist&&e.checklist.total>0&&u.jsx(c4,{stats:e.checklist}),u.jsxs("div",{className:"pt-2 border-t-[1.5px] border-dashed border-[var(--color-border-light)] flex items-center gap-2 text-[11px] font-[family-name:var(--font-mono)] text-[var(--color-text-subtle)]",children:[u.jsx("span",{children:u4(e.updatedAt??e.createdAt,a)}),e.branch&&u.jsxs("span",{className:"truncate",children:["· ",e.branch]})]})]})}function c4({stats:e}){const t=Be();return u.jsxs("div",{className:"mb-2",children:[u.jsxs("div",{className:"flex items-center justify-between text-[11px] font-[family-name:var(--font-mono)] mb-1",children:[u.jsx("span",{className:"font-bold",children:t("kanban.checklist.label",{done:e.done,total:e.total})}),u.jsxs("span",{className:"text-[var(--color-text-subtle)]",children:[e.percent,"%"]})]}),u.jsx("div",{className:"w-full h-1.5 bg-[var(--color-bg-cream)] border-2 border-[var(--color-text)] rounded-full overflow-hidden mb-1.5",children:u.jsx("div",{className:"h-full bg-[var(--color-cta)] transition-[width] duration-200",style:{width:`${e.percent}%`}})}),u.jsxs("ul",{className:"text-[11px] space-y-0.5",children:[e.items.slice(0,3).map((n,r)=>u.jsxs("li",{className:`flex items-start gap-1 ${n.done?"opacity-60 line-through":""}`,children:[u.jsx("span",{className:"flex-shrink-0 mt-0.5",children:n.done?"✓":"○"}),u.jsx("span",{className:"line-clamp-1",children:n.text})]},r)),e.items.length>3&&u.jsx("li",{className:"text-[var(--color-text-subtle)] italic pl-3",children:t("kanban.checklist.more",{count:e.items.length-3})})]})]})}function u4(e,t){if(!e)return"—";const n=new Date(e),r=Date.now()-n.getTime();return r<6e4?t("kanban.time.justNow"):r<36e5?t("kanban.time.minutes",{n:Math.floor(r/6e4)}):r<864e5?t("kanban.time.hours",{n:Math.floor(r/36e5)}):n.toLocaleDateString()}function d4({label:e,bg:t,cards:n,onCardClick:r,onDropCard:a}){const o=Be(),[l,d]=C.useState(!1);return u.jsxs("div",{className:["flex flex-col p-3 rounded-2xl border-[3px] min-h-[280px] h-full min-h-0 overflow-hidden","transition-all",l?"border-[var(--color-cta)] shadow-[4px_4px_0_var(--color-cta)]":"border-[var(--color-text)]"].join(" "),style:{background:t},onDragOver:f=>{!a||!f.dataTransfer.types.includes("application/x-sps-card-seq")||(f.preventDefault(),f.dataTransfer.dropEffect="move",l||d(!0))},onDragLeave:()=>d(!1),onDrop:f=>{if(d(!1),!a)return;const h=f.dataTransfer.getData("application/x-sps-card-seq"),g=Number.parseInt(h,10);Number.isFinite(g)&&(f.preventDefault(),a(g))},children:[u.jsxs("div",{className:"flex items-center justify-between px-1 pb-2 mb-2 border-b-2 border-[var(--color-text)] shrink-0",children:[u.jsx("span",{className:"font-[family-name:var(--font-heading)] font-bold text-sm uppercase tracking-wider",children:e}),u.jsx("span",{className:"font-[family-name:var(--font-mono)] font-bold text-xs px-2 py-0.5 bg-[var(--color-bg)] border-2 border-[var(--color-text)] rounded-full",children:n.length})]}),u.jsxs("div",{className:"flex flex-col gap-2 flex-1 min-h-0 overflow-y-auto pr-1 -mr-1",style:{scrollbarWidth:"thin",scrollbarColor:"var(--color-text) transparent"},children:[n.length===0&&u.jsx("div",{className:"text-xs text-[var(--color-text-muted)] text-center py-6 italic",children:o("kanban.column.empty")}),n.map(f=>u.jsx(l4,{card:f,onClick:()=>r(f),done:e==="Done",draggable:!!a},f.seq))]})]})}function Ky(e,t){if(!e)return"";const n=e.split(`
597
+ `),r=new RegExp(`^##\\s+${t}\\s*$`),a=n.findIndex(l=>r.test(l));if(a===-1)return"";let o=n.length;for(let l=a+1;l<n.length;l++)if(/^##\s+/.test(n[l]??"")){o=l;break}return n.slice(a+1,o).join(`
598
+ `).trim()}function Lg(e){return Ky(e,"描述")}function f4({project:e,seq:t,onClose:n,onChanged:r}){var V,Q,K,L,z,G,P,oe,be,xe,we;const a=Be(),o=Gt(),{confirm:l,alert:d}=mn(),{data:f,isLoading:h,isError:g,error:m,refetch:y}=Xe({queryKey:["card",e,t],queryFn:()=>Vz(e,t)}),[b,k]=C.useState(!1),[v,S]=C.useState(""),[E,j]=C.useState(""),[N,_]=C.useState(new Set),[O,T]=C.useState([]),[I,R]=C.useState(""),F=Xe({queryKey:["skills-all",e],queryFn:()=>nx(e),enabled:b}),U=((Q=(V=Xe({queryKey:["projects"],queryFn:ba,refetchInterval:1e4}).data)==null?void 0:V.data.find(J=>J.name===e))==null?void 0:Q.pipelineStatus)==="running";C.useEffect(()=>{b&&f&&(S(f.title),j(Lg(f.body)),_(new Set(f.skills)),T([...f.labels]))},[b,f]),C.useEffect(()=>{const J=de=>{de.key==="Escape"&&(b?k(!1):n())};return window.addEventListener("keydown",J),()=>window.removeEventListener("keydown",J)},[n,b]);const q=Ct({mutationFn:()=>{if(!f)throw new Error("no data");const J={},de=v.trim();de&&de!==f.title&&(J.title=de);const Ce=Lg(f.body);E!==Ce&&(J.description=E);const Re=[...N].sort(),Me=[...f.skills].sort();return JSON.stringify(Re)!==JSON.stringify(Me)&&(J.skills=Re),JSON.stringify(O)!==JSON.stringify(f.labels)&&(J.labels=O),Object.keys(J).length===0?Promise.resolve({ok:!0,noop:!0}):Jz(e,t,J)},onSuccess:()=>{o.invalidateQueries({queryKey:["card",e,t]}),o.invalidateQueries({queryKey:["cards",e]}),k(!1),r()},onError:J=>{d({title:a("cardModal.error.save.title"),body:J instanceof Error?J.message:String(J)})}}),Y=C.useMemo(()=>{if(!b||!f)return!1;if(v.trim()!==f.title||E!==Lg(f.body))return!0;const J=[...N].sort(),de=[...f.skills].sort();return JSON.stringify(J)!==JSON.stringify(de)||JSON.stringify(O)!==JSON.stringify(f.labels)},[b,f,v,E,N,O]),D=J=>{const de=new Set(N);de.has(J)?de.delete(J):de.add(J),_(de)},H=()=>{const J=I.trim();if(J){if(O.includes(J)){R("");return}T([...O,J]),R("")}},B=J=>{T(O.filter(de=>de!==J))};return u.jsx("div",{role:"dialog","aria-modal":"true","aria-labelledby":"card-modal-title",className:"fixed inset-0 z-40 flex items-start justify-center p-6 bg-black/30 overflow-auto",children:u.jsxs("div",{className:"nb-card mt-12 w-full max-w-3xl bg-[var(--color-bg)]",children:[u.jsxs("header",{className:"flex items-start justify-between gap-4 mb-4",children:[u.jsxs("div",{className:"flex-1 min-w-0",children:[u.jsxs("div",{className:"flex items-center gap-3 mb-1",children:[u.jsxs("span",{className:"font-[family-name:var(--font-mono)] font-bold text-xs px-2 py-0.5 bg-[var(--color-accent-purple)] border-2 border-[var(--color-text)] rounded-full",children:["#",t]}),(f==null?void 0:f.state)&&u.jsx("span",{className:"font-[family-name:var(--font-mono)] text-xs px-2 py-0.5 bg-[var(--color-bg-cream)] border-2 border-[var(--color-text)] rounded-full font-semibold",children:f.state}),b&&u.jsx("span",{className:"text-xs font-bold text-[var(--color-stuck)]",children:a("cardModal.editing")})]}),b?u.jsx("input",{type:"text",className:"nb-input w-full font-[family-name:var(--font-heading)] text-xl font-bold",value:v,onChange:J=>S(J.target.value),maxLength:200,"aria-label":a("cardModal.title.aria")}):u.jsx("h2",{id:"card-modal-title",className:"font-[family-name:var(--font-heading)] text-2xl font-bold break-words",children:(f==null?void 0:f.title)??a("common.loading")})]}),u.jsxs("div",{className:"flex gap-2 flex-shrink-0",children:[!b&&f&&u.jsxs("button",{onClick:()=>k(!0),className:"nb-btn",style:{padding:"6px 12px"},type:"button","aria-label":a("cardModal.editAria"),children:[u.jsx(Ph,{size:12,strokeWidth:2.5})," ",a("cardModal.edit")]}),u.jsx("button",{onClick:n,className:"nb-btn nb-btn-mint p-2","aria-label":a("cardModal.close.aria"),type:"button",children:u.jsx(Nn,{size:14,strokeWidth:3})})]})]}),h&&u.jsx("p",{className:"text-[var(--color-text-muted)]",children:a("common.loading")}),g&&u.jsx("p",{className:"text-[var(--color-crashed)]",children:a("cardModal.error.load",{detail:m instanceof Error?m.message:String(m)})}),f&&u.jsxs("div",{className:"flex flex-col gap-4",children:[f.branch&&!b&&u.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[u.jsx(ZR,{size:14}),u.jsx("span",{className:"font-[family-name:var(--font-mono)]",children:f.branch})]}),b?u.jsxs(u.Fragment,{children:[u.jsxs("div",{children:[u.jsx("div",{className:"text-sm font-bold mb-1.5",children:"Skills"}),F.isLoading&&u.jsx("p",{className:"text-xs text-[var(--color-text-muted)] italic",children:a("cardModal.skills.loading")}),F.data&&F.data.data.length>0&&u.jsx("div",{className:"flex flex-wrap gap-1.5",children:F.data.data.map(J=>{const de=N.has(J.name);return u.jsx("button",{type:"button",onClick:()=>D(J.name),"aria-pressed":de,className:["px-2.5 py-1 text-xs font-[family-name:var(--font-mono)] rounded-full border-2 transition-all",de?"bg-[var(--color-accent-mint)] border-[var(--color-text)] shadow-[2px_2px_0_var(--color-text)] font-bold":"bg-[var(--color-bg)] border-[var(--color-border-light)] hover:border-[var(--color-text)]"].join(" "),children:J.name},J.name)})})]}),u.jsxs("div",{children:[u.jsx("div",{className:"text-sm font-bold mb-1.5",children:"Labels"}),u.jsxs("div",{className:"flex flex-wrap gap-1.5 items-center",children:[O.map(J=>u.jsxs("span",{className:"inline-flex items-center gap-1 px-2 py-0.5 text-xs font-[family-name:var(--font-mono)] bg-[var(--color-accent-yellow)] border-2 border-[var(--color-text)] rounded-full",children:[J,u.jsx("button",{type:"button",onClick:()=>B(J),className:"hover:text-[var(--color-crashed)]","aria-label":a("cardModal.label.removeAria",{label:J}),children:u.jsx(Nn,{size:10,strokeWidth:3})})]},J)),u.jsx("input",{type:"text",className:"nb-input",style:{padding:"4px 8px",fontSize:12,width:140},placeholder:a("cardModal.label.addPlaceholder"),value:I,onChange:J=>R(J.target.value),onKeyDown:J=>{J.key==="Enter"&&!J.nativeEvent.isComposing&&(J.preventDefault(),H())}}),I&&u.jsx("button",{type:"button",className:"nb-btn",style:{padding:"2px 6px",fontSize:11},onClick:H,"aria-label":a("cardModal.label.addAria"),children:u.jsx(pr,{size:10,strokeWidth:3})})]}),u.jsx("p",{className:"text-[10px] text-[var(--color-text-muted)] mt-1",children:a("cardModal.label.note")})]})]}):u.jsxs(u.Fragment,{children:[f.skills.length>0&&u.jsxs("div",{children:[u.jsx("div",{className:"text-sm font-bold mb-1.5",children:"Skills"}),u.jsx("div",{className:"flex items-center gap-2 flex-wrap",children:f.skills.map(J=>u.jsx(ix,{name:J},J))})]}),f.labels.length>0&&u.jsxs("div",{children:[u.jsx("div",{className:"text-sm font-bold mb-1.5",children:"Labels"}),u.jsx("div",{className:"flex items-center gap-2 flex-wrap",children:f.labels.map(J=>u.jsx(s2,{label:J,kind:J==="NEEDS-FIX"?"warn":"default"},J))})]})]}),b?u.jsxs(u.Fragment,{children:[u.jsxs("div",{children:[u.jsx("h3",{className:"font-[family-name:var(--font-heading)] text-sm font-bold mb-2 uppercase tracking-wider",children:a("cardModal.section.description")}),u.jsx("textarea",{className:"nb-input w-full font-[family-name:var(--font-mono)] text-xs",style:{minHeight:180,resize:"vertical"},value:E,onChange:J=>j(J.target.value),"aria-label":a("cardModal.body.aria")}),u.jsx("p",{className:"text-[10px] text-[var(--color-text-muted)] mt-1",children:a("cardModal.body.replaceNote")})]}),(((oe=f.checklist)==null?void 0:oe.total)??0)>0&&u.jsxs("div",{className:"nb-card bg-[var(--color-bg-cream)] p-3",children:[u.jsx("div",{className:"flex items-center justify-between mb-2",children:u.jsxs("span",{className:"font-bold text-sm",children:[a("cardModal.section.checklist")," ",((be=f.checklist)==null?void 0:be.done)??0,"/",((xe=f.checklist)==null?void 0:xe.total)??0]})}),u.jsx("ul",{className:"text-sm space-y-1",children:(((we=f.checklist)==null?void 0:we.items)??[]).map((J,de)=>u.jsxs("li",{className:`flex items-start gap-2 ${J.done?"opacity-60 line-through":""}`,children:[u.jsx("span",{children:J.done?"✓":"○"}),u.jsx("span",{children:J.text})]},de))})]})]}):u.jsxs(u.Fragment,{children:[u.jsxs("div",{children:[u.jsx("h3",{className:"font-[family-name:var(--font-heading)] text-sm font-bold mb-2 uppercase tracking-wider",children:a("cardModal.section.description")}),u.jsx("pre",{className:"text-xs whitespace-pre-wrap font-[family-name:var(--font-mono)] bg-[var(--color-bg-cream)] border-2 border-[var(--color-text)] rounded-lg p-4 max-h-64 overflow-auto",children:Ky(f.body,"描述")||a("cardModal.section.empty")})]}),u.jsxs("div",{children:[u.jsxs("h3",{className:"font-[family-name:var(--font-heading)] text-sm font-bold mb-2 uppercase tracking-wider",children:[a("cardModal.section.checklist")," ",u.jsxs("span",{className:"text-[var(--color-text-muted)] normal-case tracking-normal",children:[((K=f.checklist)==null?void 0:K.done)??0,"/",((L=f.checklist)==null?void 0:L.total)??0]})]}),u.jsx("div",{className:"nb-card bg-[var(--color-bg-cream)] p-3",children:(((z=f.checklist)==null?void 0:z.total)??0)>0?u.jsxs(u.Fragment,{children:[u.jsx("div",{className:"flex items-center justify-end mb-2",children:u.jsx("div",{className:"w-24 h-2 bg-[var(--color-bg)] border-2 border-[var(--color-text)] rounded-full overflow-hidden",children:u.jsx("div",{className:"h-full bg-[var(--color-cta)]",style:{width:`${((G=f.checklist)==null?void 0:G.percent)??0}%`}})})}),u.jsx("ul",{className:"text-sm space-y-1",children:(((P=f.checklist)==null?void 0:P.items)??[]).map((J,de)=>u.jsxs("li",{className:`flex items-start gap-2 ${J.done?"opacity-60 line-through":""}`,children:[u.jsx("span",{children:J.done?"✓":"○"}),u.jsx("span",{children:J.text})]},de))})]}):u.jsx("p",{className:"text-xs text-[var(--color-text-muted)] italic",children:a("cardModal.checklist.empty")})})]}),u.jsxs("div",{children:[u.jsx("h3",{className:"font-[family-name:var(--font-heading)] text-sm font-bold mb-2 uppercase tracking-wider",children:a("cardModal.section.log")}),u.jsx("pre",{className:"text-xs whitespace-pre-wrap font-[family-name:var(--font-mono)] bg-[var(--color-bg-cream)] border-2 border-[var(--color-text)] rounded-lg p-4 max-h-64 overflow-auto",children:Ky(f.body,"日志")||a("cardModal.section.empty")})]})]}),u.jsx("div",{className:"flex gap-2 pt-2 border-t-2 border-[var(--color-border-light)] justify-end flex-wrap",children:b?u.jsxs(u.Fragment,{children:[u.jsx("button",{className:"nb-btn",type:"button",onClick:()=>{k(!1),y()},disabled:q.isPending,children:a("common.cancel")}),u.jsxs("button",{className:"nb-btn nb-btn-primary",type:"button",onClick:()=>q.mutate(),disabled:!Y||!v.trim()||q.isPending,"aria-label":a("cardDetail.save"),children:[q.isPending?u.jsx(We,{size:14,strokeWidth:3,className:"animate-spin"}):u.jsx(Oi,{size:14,strokeWidth:3}),a("common.save")]})]}):u.jsxs(u.Fragment,{children:[u.jsxs("button",{className:"nb-btn nb-btn-primary",type:"button",disabled:f.state==="Done"||U,title:f.state==="Done"?a("cardModal.action.launch.disabledDone"):U?a("cardModal.action.launch.disabledRunning"):void 0,onClick:async()=>{try{await Wz(e,t),r()}catch(J){d({title:a("cardModal.action.launch.error"),body:J instanceof Error?J.message:String(J)})}},children:[u.jsx(Vu,{size:14,strokeWidth:3}),a("cardModal.action.launch")]}),u.jsxs("button",{className:"nb-btn nb-btn-yellow",type:"button",onClick:async()=>{if(await l({title:a("cardModal.action.reset.confirm.title",{seq:t}),body:a("cardModal.action.reset.confirm.body"),confirm:a("cardModal.action.reset.confirm.button"),danger:!0}))try{await Yz(e,t),r(),n()}catch(de){d({title:a("cardModal.action.reset.error"),body:de instanceof Error?de.message:String(de)})}},children:[u.jsx(Rb,{size:14,strokeWidth:2.5}),a("cardModal.action.reset")]}),u.jsxs("button",{className:"nb-btn",style:{background:"var(--color-crashed)",color:"var(--color-bg)"},type:"button",onClick:async()=>{if(!(!await l({title:a("cardModal.action.delete.confirm1.title",{seq:t}),body:a("cardModal.action.delete.confirm1.body",{title:f.title}),confirm:a("cardModal.action.delete.confirm1.button"),danger:!0})||!await l({title:a("cardModal.action.delete.confirm2.title"),body:a("cardModal.action.delete.confirm2.body",{seq:t}),confirm:a("cardModal.action.delete"),danger:!0})))try{await Qz(e,t),r(),n()}catch(Ce){d({title:a("projectDetail.pipelines.delete.error"),body:Ce instanceof Error?Ce.message:String(Ce)})}},"aria-label":a("cardModal.action.delete"),children:[u.jsx(fi,{size:14,strokeWidth:2.5}),a("cardModal.action.delete")]})]})})]})]})})}function h4({current:e,onChange:t}){const[n,r]=C.useState(!1),a=C.useRef(null),{data:o}=Xe({queryKey:["projects"],queryFn:ba});return C.useEffect(()=>{const l=d=>{var f;(f=a.current)!=null&&f.contains(d.target)||r(!1)};return document.addEventListener("mousedown",l),()=>document.removeEventListener("mousedown",l)},[]),u.jsxs("div",{className:"relative",ref:a,children:[u.jsxs("button",{type:"button",className:"inline-flex items-center gap-2 px-3 py-2 bg-[var(--color-bg)] border-[3px] border-[var(--color-text)] rounded-xl shadow-[3px_3px_0_var(--color-text)] font-[family-name:var(--font-mono)] text-sm font-bold hover:-translate-x-px hover:-translate-y-px hover:shadow-[4px_4px_0_var(--color-text)] transition-[transform,box-shadow] duration-150",onClick:()=>r(l=>!l),children:[e,u.jsx(Ql,{size:14,strokeWidth:2.5})]}),n&&o&&u.jsx("div",{className:"absolute right-0 mt-2 z-20 min-w-[200px] max-h-[60vh] overflow-y-auto bg-[var(--color-bg)] border-[3px] border-[var(--color-text)] rounded-xl shadow-[5px_5px_0_var(--color-text)]",children:Ub(o.data,"activity").map(l=>{const d=l.pipelineStatus==="running";return u.jsxs("button",{type:"button",onClick:()=>{t(l.name),r(!1)},className:["w-full text-left px-4 py-2 text-sm font-semibold flex items-center gap-2",l.name===e?"bg-[var(--color-accent-mint)]":"hover:bg-[var(--color-bg-cream)]"].join(" "),children:[d&&u.jsx(Vu,{size:12,strokeWidth:3,className:"text-[var(--color-running)] shrink-0","aria-label":"运行中"}),u.jsx("span",{className:"font-[family-name:var(--font-mono)]",children:l.name}),u.jsxs("span",{className:"ml-auto text-xs text-[var(--color-text-muted)]",children:[l.cards.total," cards"]})]},l.name)})})]})}const p4=[{state:"Planning",labelKey:"board.col.planning",bg:"var(--color-accent-purple)"},{state:"Backlog",labelKey:"board.col.backlog",bg:"var(--color-bg-cream)"},{state:"Todo",labelKey:"board.col.todo",bg:"var(--color-accent-yellow)"},{state:"Inprogress",labelKey:"board.col.inprogress",bg:"var(--color-secondary)"},{state:"QA",labelKey:"board.col.qa",bg:"var(--color-accent-pink)"},{state:"Done",labelKey:"board.col.done",bg:"var(--color-accent-mint)"}],o2="sps-console:last-board-project";function m4(){if(typeof window>"u")return null;try{return localStorage.getItem(o2)}catch{return null}}function g4(e){if(!(typeof window>"u"))try{localStorage.setItem(o2,e)}catch{}}function y4(){var B,V,Q;const e=Be(),[t,n]=MN(),r=t.get("project"),[a,o]=C.useState(null),[l,d]=C.useState(""),[f,h]=C.useState(()=>new Set),[g,m]=C.useState(()=>new Set),{confirm:y,alert:b}=mn();t4(r);const k=Xe({queryKey:["projects"],queryFn:ba}),v=Xe({queryKey:["cards",r],queryFn:()=>Gz(r??""),enabled:!!r}),S=Gt(),E=()=>{S.invalidateQueries({queryKey:["cards",r]}),S.invalidateQueries({queryKey:["projects"]}),S.invalidateQueries({queryKey:["pipeline-status",r]})},j=K=>{n({project:K})};C.useEffect(()=>{var L;if(r){g4(r);return}const K=m4();K&&((L=k.data)!=null&&L.data.some(z=>z.name===K))&&n({project:K},{replace:!0})},[r,k.data,n]);const N=Ct({mutationFn:()=>i2(r),onSuccess:()=>{E()},onError:K=>{b({title:e("board.action.startError"),body:K instanceof Error?K.message:String(K)})}}),_=Ct({mutationFn:()=>a2(r),onSuccess:()=>E(),onError:K=>{b({title:e("board.action.stopError"),body:K instanceof Error?K.message:String(K)})}}),O=Ct({mutationFn:()=>e4(r,{all:!0}),onSuccess:()=>E(),onError:K=>{b({title:e("board.action.resetError"),body:K instanceof Error?K.message:String(K)})}}),[T,I]=C.useState(!1),R=Ct({mutationFn:K=>Xz(r,K),onSuccess:()=>{E(),I(!1)},onError:K=>{b({title:e("board.action.newCard.error"),body:K instanceof Error?K.message:String(K)})}}),F=Ct({mutationFn:({seq:K,state:L})=>Zz(r,K,L),onMutate:async({seq:K,state:L})=>{await S.cancelQueries({queryKey:["cards",r]});const z=S.getQueryData(["cards",r]);return z&&S.setQueryData(["cards",r],{...z,data:z.data.map(G=>G.seq===K?{...G,state:L}:G)}),{prev:z}},onError:(K,L,z)=>{z!=null&&z.prev&&S.setQueryData(["cards",r],z.prev),b({title:e("board.action.moveCard.error"),body:K instanceof Error?K.message:String(K)})},onSettled:()=>{S.invalidateQueries({queryKey:["cards",r]})}}),M=((B=v.data)==null?void 0:B.data)??[],{allSkills:U,allLabels:q}=C.useMemo(()=>{const K=new Set,L=new Set;for(const z of M){for(const G of z.skills)K.add(G);for(const G of z.labels)L.add(G)}return{allSkills:[...K].sort(),allLabels:[...L].sort()}},[M]);if(!r)return u.jsxs("div",{className:"flex flex-col gap-6 w-full",children:[u.jsx("h1",{className:"font-[family-name:var(--font-heading)] text-4xl font-bold",children:e("board.title.bare")}),u.jsxs("div",{className:"nb-card bg-[var(--color-accent-yellow)] max-w-2xl",children:[u.jsx("h2",{className:"font-[family-name:var(--font-heading)] text-xl font-bold mb-3",children:e("board.pickPrompt.title")}),u.jsx("p",{className:"text-sm mb-4 text-[var(--color-text-muted)]",children:e("board.pickPrompt.body")}),u.jsx("div",{className:"flex flex-wrap gap-2",children:(V=k.data)==null?void 0:V.data.map(K=>u.jsx("button",{className:"nb-btn nb-btn-blue",onClick:()=>j(K.name),type:"button",children:K.name},K.name))})]})]});const Y=M.filter(K=>{if(l){const L=l.toLowerCase();if(!(K.title.toLowerCase().includes(L)||K.skills.some(G=>G.toLowerCase().includes(L))||K.labels.some(G=>G.toLowerCase().includes(L))))return!1}return!(f.size>0&&!K.skills.some(z=>f.has(z))||g.size>0&&!K.labels.some(z=>g.has(z)))}),D=(Q=k.data)==null?void 0:Q.data.find(K=>K.name===r),H=(D==null?void 0:D.pipelineStatus)==="running";return u.jsxs("div",{className:"flex flex-col gap-4 max-w-full flex-1 min-h-0",children:[u.jsxs("header",{className:"flex items-center justify-between flex-wrap gap-3 shrink-0",children:[u.jsxs("div",{children:[u.jsx("h1",{className:"font-[family-name:var(--font-heading)] text-4xl font-bold tracking-tight",children:e("board.title")}),u.jsx("p",{className:"text-[var(--color-text-muted)] text-sm mt-1",children:D?e("board.subtitle",{name:D.name,cards:D.cards.total,workers:D.workers.active}):e("common.loading")})]}),u.jsxs("div",{className:"flex items-center gap-3 flex-wrap",children:[u.jsx(h4,{current:r,onChange:j}),u.jsxs("button",{className:H?"nb-btn nb-btn-danger":"nb-btn nb-btn-primary",onClick:()=>H?_.mutate():N.mutate(),disabled:N.isPending||_.isPending,type:"button","aria-label":e(H?"board.action.stopAria":"board.action.startAria"),title:e(H?"board.action.stopAria":"board.action.startAria"),children:[N.isPending||_.isPending?u.jsx(We,{size:14,strokeWidth:3,className:"animate-spin"}):H?u.jsx(Lb,{size:14,strokeWidth:3}):u.jsx(Vu,{size:14,strokeWidth:3}),e(H?"board.action.stop":"board.action.start")]}),u.jsxs("button",{className:"nb-btn nb-btn-yellow",type:"button",onClick:async()=>{await y({title:e("board.action.reset.confirm.title"),body:e("board.action.reset.confirm.body"),confirm:e("board.action.reset.confirm.button"),danger:!0})&&O.mutate()},disabled:O.isPending,children:[O.isPending?u.jsx(We,{size:14,strokeWidth:3,className:"animate-spin"}):u.jsx(Rb,{size:14,strokeWidth:2.5}),e("board.action.reset")]}),u.jsxs("button",{className:"nb-btn nb-btn-mint",type:"button",onClick:()=>I(!0),disabled:R.isPending,children:[R.isPending?u.jsx(We,{size:14,strokeWidth:3,className:"animate-spin"}):u.jsx(pr,{size:14,strokeWidth:3}),e("board.action.newCard")]})]})]}),u.jsxs("div",{className:"flex items-center gap-3 flex-wrap shrink-0",children:[u.jsxs("div",{className:"relative flex-1 max-w-md",children:[u.jsx(co,{size:14,className:"absolute left-3 top-1/2 -translate-y-1/2 text-[var(--color-text-subtle)]"}),u.jsx("input",{className:"nb-input pl-9 w-full",placeholder:e("board.search.placeholder"),value:l,onChange:K=>d(K.target.value),"aria-label":e("board.search.aria")})]}),u.jsx(vk,{label:"skill",options:U,selected:f,onChange:h}),u.jsx(vk,{label:"label",options:q,selected:g,onChange:m}),(l||f.size>0||g.size>0)&&u.jsxs("button",{className:"nb-btn",style:{padding:"4px 10px",fontSize:11},onClick:()=>{d(""),h(new Set),m(new Set)},type:"button","aria-label":e("board.filter.clearAria"),children:[u.jsx(Nn,{size:11,strokeWidth:3}),e("board.filter.clear")]}),u.jsxs("span",{className:"text-xs text-[var(--color-text-muted)] flex items-center gap-1 font-[family-name:var(--font-mono)]",children:[u.jsx(WR,{size:12}),Y.length," / ",M.length]})]}),v.isError&&u.jsxs("div",{className:"nb-card bg-[var(--color-crashed-bg)]",children:[u.jsx("p",{className:"font-semibold",children:e("board.error.loadCards")}),u.jsx("p",{className:"text-sm mt-1 text-[var(--color-text-muted)]",children:v.error instanceof Error?v.error.message:String(v.error)})]}),!v.isError&&u.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-6 auto-rows-fr gap-3 flex-1 min-h-0",children:p4.map(K=>u.jsx(d4,{label:e(K.labelKey),bg:K.bg,cards:Y.filter(b4(K.state)),onCardClick:L=>o(L.seq),onDropCard:L=>F.mutate({seq:L,state:K.state})},K.state))}),a!==null&&u.jsx(f4,{project:r,seq:a,onClose:()=>o(null),onChanged:E}),T&&u.jsx(Kz,{project:r,isPending:R.isPending,onCancel:()=>I(!1),onCreate:K=>R.mutate(K)})]})}function b4(e){return t=>e==="QA"?t.state==="QA"||t.state==="Review":e==="Done"?t.state==="Done"||t.state==="Canceled":t.state===e}function vk({label:e,options:t,selected:n,onChange:r}){const a=Be(),[o,l]=C.useState(!1),d=C.useRef(null);C.useEffect(()=>{if(!o)return;const m=b=>{var k;(k=d.current)!=null&&k.contains(b.target)||l(!1)},y=b=>{b.key==="Escape"&&l(!1)};return window.addEventListener("click",m),window.addEventListener("keydown",y),()=>{window.removeEventListener("click",m),window.removeEventListener("keydown",y)}},[o]);const f=m=>{const y=new Set(n);y.has(m)?y.delete(m):y.add(m),r(y)},h=t.length===0,g=n.size;return u.jsxs("div",{ref:d,className:"relative",children:[u.jsxs("button",{type:"button",className:"nb-btn",style:{padding:"6px 12px",fontSize:12},onClick:()=>!h&&l(m=>!m),disabled:h,"aria-haspopup":"listbox","aria-expanded":o,"aria-label":a("board.filter.aria",{label:e}),children:[e,g>0&&u.jsx("span",{className:"ml-1 px-1.5 py-0.5 text-[10px] font-bold rounded-full bg-[var(--color-primary)] text-[var(--color-text)] border border-[var(--color-text)]",children:g}),u.jsx(Ql,{size:11,strokeWidth:3,className:["transition-transform",o?"rotate-180":""].join(" ")})]}),o&&u.jsxs("div",{role:"listbox",className:"absolute left-0 top-full mt-2 z-20 min-w-[200px] max-h-64 overflow-auto nb-card p-2",style:{padding:8},children:[t.map(m=>{const y=n.has(m);return u.jsxs("label",{className:["flex items-center gap-2 px-2 py-1.5 rounded cursor-pointer text-sm font-[family-name:var(--font-mono)]",y?"bg-[var(--color-accent-mint)]":"hover:bg-[var(--color-bg-cream)]"].join(" "),children:[u.jsx("input",{type:"checkbox",checked:y,onChange:()=>f(m),className:"flex-shrink-0"}),u.jsx("span",{className:"truncate",children:m})]},m)}),g>0&&u.jsx("button",{type:"button",className:"w-full mt-2 pt-2 border-t-2 border-dashed border-[var(--color-text)] text-xs font-bold text-[var(--color-crashed)] text-center",onClick:()=>r(new Set),children:a("board.filter.clearSelection")})]})]})}function x4(){return ht("/api/workers/all")}function v4(e){return ht(`/api/projects/${encodeURIComponent(e)}/workers`)}function w4(e,t){return ht(`/api/projects/${encodeURIComponent(e)}/workers/${t}`)}async function l2(e,t){const n=await fetch(e,{method:"POST",headers:t?{"Content-Type":"application/json"}:void 0,body:t?JSON.stringify(t):void 0});if(!n.ok)throw new Error(`${n.status}: ${await n.text()}`);return n.json().catch(()=>({}))}function wk(e,t){return l2(`/api/projects/${encodeURIComponent(e)}/workers/${t}/kill`)}function k4(e,t,n){return l2(`/api/projects/${encodeURIComponent(e)}/workers/${t}/launch`,n?{seq:n}:void 0)}function ax({state:e}){const n={running:{bg:"var(--color-running-bg)",color:"var(--color-running)",label:"running"},starting:{bg:"var(--color-secondary)",color:"var(--color-text)",label:"starting",icon:u.jsx(We,{size:9,strokeWidth:3,className:"animate-spin"})},stuck:{bg:"var(--color-stuck-bg)",color:"var(--color-stuck)",label:"stuck"},crashed:{bg:"var(--color-crashed-bg)",color:"var(--color-crashed)",label:"crashed",icon:u.jsx(KL,{size:9,strokeWidth:2.5})},idle:{bg:"var(--color-idle-bg)",color:"var(--color-idle)",label:"idle"}}[e];return u.jsxs("span",{className:"nb-status inline-flex items-center gap-1",style:{background:n.bg,color:n.color},children:[n.icon,n.label]})}function sx(e){if(e==null||e<=0)return"—";const t=Math.floor(e/1e3),n=Math.floor(t/3600),r=Math.floor(t%3600/60),a=t%60;return n>0?`${n}h ${r}m`:r>0?`${r}m ${a}s`:`${a}s`}function E4(e){if(e==null||e<=0)return"text-[var(--color-text-muted)]";const t=e/6e4;return t<10?"text-[var(--color-running)]":t<60?"text-[var(--color-stuck)]":"text-[var(--color-crashed)]"}function ox(e){const t=Date.now()-new Date(e).getTime();return t<6e4?`${Math.floor(t/1e3)}s 前`:t<36e5?`${Math.floor(t/6e4)}m 前`:`${Math.floor(t/36e5)}h 前`}function S4({alerts:e,selected:t,onSelect:n}){const r=Be();return e.length===0?u.jsxs("div",{className:"nb-card bg-[var(--color-running-bg)] flex items-center gap-3",children:[u.jsx(wu,{size:18,strokeWidth:2.5,className:"text-[var(--color-running)]"}),u.jsx("span",{className:"text-sm font-bold text-[var(--color-running)]",children:r("workers.alerts.allHealthy")})]}):u.jsxs("section",{children:[u.jsxs("h2",{className:"font-[family-name:var(--font-heading)] text-sm font-bold uppercase tracking-wider mb-2 flex items-center gap-2 text-[var(--color-crashed)]",children:[u.jsx(n3,{size:14,strokeWidth:2.5}),"Alerts (",e.length,")"]}),u.jsx("div",{className:"flex flex-col gap-2",children:e.map(a=>{const o=(t==null?void 0:t.project)===a.project&&(t==null?void 0:t.slot)===a.slot;return u.jsxs("button",{type:"button",onClick:()=>n(a.project,a.slot),className:["nb-card p-3 text-left",a.state==="crashed"?"bg-[var(--color-crashed-bg)]":"bg-[var(--color-stuck-bg)]",o?"ring-4 ring-[var(--color-text)]":""].join(" "),children:[u.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[u.jsx(ax,{state:a.state}),u.jsxs("span",{className:"font-[family-name:var(--font-mono)] font-bold",children:[a.project,"/worker-",a.slot]}),a.card&&u.jsxs("span",{className:"truncate",children:["#",a.card.seq," ",a.card.title]}),u.jsxs("span",{className:"ml-auto text-xs text-[var(--color-text-muted)] font-[family-name:var(--font-mono)] flex items-center gap-1",children:[u.jsx(IN,{size:10,strokeWidth:2.5}),sx(a.runtimeMs)]})]}),a.markerUpdatedAt&&u.jsx("div",{className:"text-xs text-[var(--color-text-muted)] mt-1 font-[family-name:var(--font-mono)]",children:a.state==="crashed"?r("workers.alerts.pidDead"):r("workers.alerts.markerStale",{ago:ox(a.markerUpdatedAt)})})]},`${a.project}-${a.slot}`)})})]})}function N4({active:e,selected:t,onSelect:n}){const r=Be();return e.length===0?u.jsx("div",{className:"nb-card bg-[var(--color-bg-cream)]",children:u.jsx("p",{className:"text-sm text-[var(--color-text-muted)] italic",children:r("workers.active.empty")})}):u.jsxs("section",{children:[u.jsxs("h2",{className:"font-[family-name:var(--font-heading)] text-sm font-bold uppercase tracking-wider mb-2 flex items-center gap-2",children:[u.jsx(Ih,{size:14,strokeWidth:2.5}),"Active (",e.length,")"]}),u.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3",children:e.map(a=>{const o=(t==null?void 0:t.project)===a.project&&(t==null?void 0:t.slot)===a.slot;return u.jsxs("button",{type:"button",onClick:()=>n(a.project,a.slot),className:["nb-card p-3 text-left",a.state==="starting"?"bg-[var(--color-secondary)]":"bg-[var(--color-running-bg)]",o?"ring-4 ring-[var(--color-text)]":""].join(" "),children:[u.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[u.jsx(ax,{state:a.state}),u.jsxs("span",{className:"font-[family-name:var(--font-mono)] font-bold text-sm flex-1 truncate",children:[a.project,"/worker-",a.slot]}),u.jsx("span",{className:`text-xs font-[family-name:var(--font-mono)] ${E4(a.runtimeMs)}`,children:sx(a.runtimeMs)})]}),a.card&&u.jsxs("div",{className:"text-sm font-semibold mb-1 truncate",children:["#",a.card.seq," · ",a.card.title]}),u.jsxs("div",{className:"text-xs text-[var(--color-text-muted)] font-[family-name:var(--font-mono)] flex items-center gap-2 mb-1",children:[a.stage&&u.jsxs("span",{children:["stage: ",a.stage]}),a.markerUpdatedAt&&u.jsxs("span",{className:"ml-auto",children:["marker ",ox(a.markerUpdatedAt)]})]}),a.lastLogLine&&u.jsxs("div",{className:"text-[11px] font-[family-name:var(--font-mono)] text-[var(--color-text-muted)] bg-[var(--color-bg)] border-2 border-[var(--color-text)] rounded px-2 py-1 mt-2 truncate",children:[u.jsx(VN,{size:9,strokeWidth:2.5,className:"inline-block mr-1 align-text-bottom"}),a.lastLogLine.msg]})]},`${a.project}-${a.slot}`)})})]})}function _4({capacity:e,selected:t,onSelect:n}){const r=Be();return e.length===0?null:u.jsxs("section",{className:"flex flex-col min-h-0 flex-1",children:[u.jsx("h2",{className:"font-[family-name:var(--font-heading)] text-sm font-bold uppercase tracking-wider mb-2 shrink-0",children:"Capacity"}),u.jsx("div",{className:"nb-card p-0 overflow-y-auto min-h-0 flex-1",children:u.jsxs("table",{className:"w-full text-sm",children:[u.jsx("thead",{children:u.jsxs("tr",{className:"bg-[var(--color-bg-cream)] border-b-2 border-[var(--color-text)]",children:[u.jsx("th",{className:"px-3 py-2 text-left font-bold text-xs uppercase tracking-wider",children:r("workers.capacity.col.project")}),u.jsx("th",{className:"px-3 py-2 text-left font-bold text-xs uppercase tracking-wider",children:r("workers.capacity.col.usage")}),u.jsx("th",{className:"px-3 py-2 text-right font-bold text-xs uppercase tracking-wider",children:"running"}),u.jsx("th",{className:"px-3 py-2 text-right font-bold text-xs uppercase tracking-wider",children:r("workers.capacity.col.other")}),u.jsx("th",{className:"px-3 py-2"})]})}),u.jsx("tbody",{children:e.map(a=>{const o=a.running+a.starting+a.stuck+a.crashed,l=(t==null?void 0:t.project)===a.project;return u.jsxs("tr",{onClick:()=>n(a.project),className:["border-b border-dashed border-[var(--color-border-light)] last:border-0 cursor-pointer hover:bg-[var(--color-accent-yellow)]",l?"bg-[var(--color-accent-yellow)]":""].join(" "),children:[u.jsx("td",{className:"px-3 py-2 font-[family-name:var(--font-mono)] font-bold",children:a.project}),u.jsx("td",{className:"px-3 py-2",children:u.jsx(j4,{total:a.total,cap:a})}),u.jsxs("td",{className:"px-3 py-2 text-right font-[family-name:var(--font-mono)]",children:[u.jsx("span",{className:"text-[var(--color-running)] font-bold",children:a.running}),u.jsxs("span",{className:"text-[var(--color-text-muted)]",children:["/",a.total]})]}),u.jsxs("td",{className:"px-3 py-2 text-right text-xs font-[family-name:var(--font-mono)] text-[var(--color-text-muted)]",children:[a.starting>0&&u.jsxs("span",{className:"mr-2",children:["starting ",a.starting]}),a.stuck>0&&u.jsxs("span",{className:"text-[var(--color-stuck)] font-bold mr-2",children:["stuck ",a.stuck]}),a.crashed>0&&u.jsxs("span",{className:"text-[var(--color-crashed)] font-bold mr-2",children:["crashed ",a.crashed]}),o===0&&u.jsx("span",{children:"idle"})]}),u.jsx("td",{className:"px-3 py-2 text-right",children:u.jsx("span",{className:"text-xs text-[var(--color-text-muted)]",children:r("workers.capacity.detailHint")})})]},a.project)})})]})})]})}function j4({total:e,cap:t}){const n=[];for(let r=0;r<t.crashed;r++)n.push("crashed");for(let r=0;r<t.stuck;r++)n.push("stuck");for(let r=0;r<t.starting;r++)n.push("starting");for(let r=0;r<t.running;r++)n.push("running");for(let r=0;r<t.idle;r++)n.push("idle");return u.jsxs("div",{className:"flex gap-1 items-center",children:[n.map((r,a)=>u.jsx("span",{className:"inline-block w-3 h-3 rounded-full border-2 border-[var(--color-text)]",style:{background:C4(r)},title:r},a)),u.jsxs("span",{className:"text-xs text-[var(--color-text-muted)] ml-2 font-[family-name:var(--font-mono)]",children:[e," slot",e!==1?"s":""]})]})}function C4(e){switch(e){case"running":return"var(--color-running-bg)";case"starting":return"var(--color-secondary)";case"stuck":return"var(--color-stuck-bg)";case"crashed":return"var(--color-crashed-bg)";default:return"var(--color-idle-bg)"}}function A4({project:e,initialSlot:t,onChange:n}){var h;const r=Be(),a=Xe({queryKey:["workers",e],queryFn:()=>v4(e),refetchInterval:3e3}),o=((h=a.data)==null?void 0:h.data)??[],[l,d]=C.useState(null);C.useEffect(()=>{if(o.length===0){d(null);return}const g=o[0].slot;d(m=>m!=null&&o.some(y=>y.slot===m)?m:t!=null&&o.some(y=>y.slot===t)?t:g)},[e,t,o.length]);const f=o.find(g=>g.slot===l)??null;return u.jsxs("div",{className:"flex flex-col h-full",children:[u.jsxs("div",{className:"px-4 py-3 border-b-2 border-[var(--color-text)] bg-[var(--color-bg-cream)]",children:[u.jsxs("div",{className:"flex items-center justify-between mb-2",children:[u.jsx("span",{className:"font-[family-name:var(--font-mono)] font-bold truncate",children:e}),u.jsx(bs,{to:`/board?project=${encodeURIComponent(e)}`,className:"text-xs underline text-[var(--color-text-muted)] hover:text-[var(--color-text)]",children:r("workers.panel.boardLink")})]}),a.isLoading&&o.length===0?u.jsx("p",{className:"text-xs text-[var(--color-text-muted)] italic",children:r("workers.panel.loading")}):o.length===0?u.jsx("p",{className:"text-xs text-[var(--color-text-muted)] italic",children:r("workers.panel.empty.slots")}):u.jsx("div",{className:"flex flex-wrap gap-2",children:o.map(g=>u.jsx(T4,{worker:g,active:g.slot===l,onClick:()=>d(g.slot)},g.slot))})]}),f?u.jsx(M4,{project:e,worker:f,onChange:n}):u.jsx("div",{className:"flex-1 flex items-center justify-center p-6 text-center",children:u.jsx("p",{className:"text-sm text-[var(--color-text-muted)]",children:o.length===0?r("workers.panel.empty.noWorker"):r("workers.panel.empty.pickOne")})})]})}function T4({worker:e,active:t,onClick:n}){const r=Be();return u.jsxs("button",{type:"button",onClick:n,className:["nb-card p-2 text-left min-w-[130px] transition-transform",t?"ring-4 ring-[var(--color-text)]":"opacity-80 hover:opacity-100"].join(" "),children:[u.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[u.jsx(ax,{state:e.state}),u.jsxs("span",{className:"font-[family-name:var(--font-mono)] font-bold text-xs",children:["worker-",e.slot]})]}),e.card?u.jsxs("div",{className:"text-[11px] truncate font-[family-name:var(--font-mono)]",children:["#",e.card.seq," ",e.card.title]}):u.jsx("div",{className:"text-[11px] text-[var(--color-text-muted)] italic",children:r("workers.panel.idle.short")})]})}function M4({project:e,worker:t,onChange:n}){var y,b;const r=Be(),{confirm:a,alert:o}=mn(),l=t.state==="crashed"||t.state==="stuck",d=Xe({queryKey:["worker-detail",e,t.slot],queryFn:()=>w4(e,t.slot),refetchInterval:3e3}),f=((y=d.data)==null?void 0:y.recentOutput)??[],h=((b=d.data)==null?void 0:b.recentLogs)??[],g=C.useRef(null),m=C.useRef(!0);return C.useEffect(()=>{const k=g.current;k&&m.current&&(k.scrollTop=k.scrollHeight)},[f]),u.jsxs(u.Fragment,{children:[u.jsxs("div",{className:"flex-1 overflow-auto p-4 flex flex-col gap-4",children:[t.card?u.jsxs("div",{children:[u.jsx("div",{className:"text-xs font-bold uppercase tracking-wider text-[var(--color-text-muted)] mb-1",children:r("workers.panel.section.currentCard")}),u.jsxs("div",{className:"text-sm font-semibold break-words",children:["#",t.card.seq," · ",t.card.title]})]}):u.jsx("div",{className:"text-sm text-[var(--color-text-muted)] italic",children:r("workers.panel.idle.full")}),u.jsxs("dl",{className:"grid grid-cols-[100px_1fr] gap-y-2 text-sm",children:[u.jsx("dt",{className:"font-bold",children:"Stage"}),u.jsx("dd",{className:"font-[family-name:var(--font-mono)]",children:t.stage??"—"}),u.jsx("dt",{className:"font-bold",children:"PID"}),u.jsx("dd",{className:"font-[family-name:var(--font-mono)]",children:t.pid??"—"}),u.jsx("dt",{className:"font-bold",children:"Runtime"}),u.jsx("dd",{className:"font-[family-name:var(--font-mono)]",children:sx(t.runtimeMs)}),u.jsx("dt",{className:"font-bold",children:"Started"}),u.jsx("dd",{className:"font-[family-name:var(--font-mono)] text-xs",children:t.startedAt?new Date(t.startedAt).toLocaleString():"—"}),u.jsx("dt",{className:"font-bold",children:"Marker"}),u.jsx("dd",{className:"font-[family-name:var(--font-mono)] text-xs",children:t.markerUpdatedAt?ox(t.markerUpdatedAt):"—"})]}),u.jsxs("div",{children:[u.jsxs("div",{className:"text-xs font-bold uppercase tracking-wider text-[var(--color-text-muted)] mb-1 flex items-center gap-1",children:[u.jsx(VN,{size:10,strokeWidth:2.5}),r("workers.panel.section.claudeOutput",{n:f.length})]}),d.isLoading&&f.length===0?u.jsx("p",{className:"text-xs text-[var(--color-text-muted)] italic",children:r("workers.panel.output.loading")}):f.length===0?u.jsx("p",{className:"text-xs text-[var(--color-text-muted)] italic",children:r("workers.panel.output.empty")}):u.jsx("pre",{ref:g,onScroll:k=>{const v=k.currentTarget;m.current=v.scrollHeight-v.scrollTop-v.clientHeight<24},className:"text-xs font-[family-name:var(--font-mono)] bg-[var(--color-bg-cream)] border-2 border-[var(--color-text)] rounded p-2 max-h-80 overflow-auto whitespace-pre-wrap break-words",children:f.map(k=>`${k.ts?`${k.ts} [${k.kind}] `:`[${k.kind}] `}${k.text}`).join(`
599
+ `)})]}),h.length>0&&u.jsxs("div",{children:[u.jsx("div",{className:"text-xs font-bold uppercase tracking-wider text-[var(--color-text-muted)] mb-1 opacity-60",children:r("workers.panel.section.heartbeat",{n:h.length})}),u.jsx("pre",{className:"text-xs font-[family-name:var(--font-mono)] bg-[var(--color-bg-cream)] border-2 border-[var(--color-text)] rounded p-2 max-h-40 overflow-auto whitespace-pre-wrap break-words opacity-80",children:h.map(k=>`${k.ts??""} [${k.level}] ${k.msg}`).join(`
600
+ `)}),u.jsx(bs,{to:`/logs?project=${encodeURIComponent(e)}&worker=${t.slot}`,className:"text-xs underline text-[var(--color-running)] mt-1 inline-block",children:r("workers.panel.heartbeat.fullLog")})]})]}),u.jsxs("div",{className:"px-4 py-3 border-t-2 border-[var(--color-text)] bg-[var(--color-bg-cream)] flex gap-2 justify-end flex-wrap",children:[l&&t.card&&u.jsxs("button",{type:"button",className:"nb-btn nb-btn-mint",style:{padding:"4px 10px",fontSize:11},onClick:async()=>{if(await a({title:r("workers.panel.action.restart.confirm.title",{slot:t.slot}),body:r("workers.panel.action.restart.confirm.body",{seq:t.card.seq}),confirm:r("workers.panel.action.restart.confirm.button")})){try{await wk(e,t.slot)}catch{}try{await k4(e,t.slot,t.card.seq),n()}catch(v){o({title:r("workers.panel.action.restart.error"),body:v instanceof Error?v.message:String(v)})}}},children:[u.jsx(XL,{size:11,strokeWidth:2.5})," ",r("workers.panel.action.restart")]}),t.state!=="idle"&&u.jsxs("button",{type:"button",className:"nb-btn nb-btn-danger",style:{padding:"4px 10px",fontSize:11},onClick:async()=>{if(await a({title:r("workers.panel.action.kill.confirm.title",{slot:t.slot}),body:r("workers.panel.action.kill.confirm.body"),confirm:r("workers.panel.action.kill.confirm.button"),danger:!0}))try{await wk(e,t.slot),n()}catch(v){o({title:r("workers.panel.action.kill.error"),body:v instanceof Error?v.message:String(v)})}},children:[u.jsx(c3,{size:11,strokeWidth:2.5})," ",r("workers.panel.action.kill")]})]})]})}function D4(){var l;const e=Be(),t=Gt(),[n,r]=C.useState(null),a=Xe({queryKey:["workers-agg"],queryFn:x4,refetchInterval:5e3});C.useEffect(()=>{if(!a.data)return;const d=a.data.capacity.map(h=>h.project),f=[];for(const h of d){const g=new EventSource(`/stream/projects/${encodeURIComponent(h)}`),m=()=>{t.invalidateQueries({queryKey:["workers-agg"]})};g.addEventListener("worker.updated",m),g.addEventListener("worker.added",m),g.addEventListener("worker.deleted",m),g.addEventListener("card.updated",m),f.push(g)}return()=>{for(const h of f)h.close()}},[(l=a.data)==null?void 0:l.capacity.map(d=>d.project).join(","),t]);const o=C.useMemo(()=>{if(!a.data)return{projects:0,running:0,starting:0,stuck:0,crashed:0,idle:0};const d={projects:a.data.capacity.length,running:0,starting:0,stuck:0,crashed:0,idle:0};for(const f of a.data.capacity)d.running+=f.running,d.starting+=f.starting,d.stuck+=f.stuck,d.crashed+=f.crashed,d.idle+=f.idle;return d},[a.data]);return u.jsxs("div",{className:"flex flex-col gap-4 h-[calc(100vh-140px)]",children:[u.jsxs("header",{className:"flex items-center justify-between flex-wrap gap-3",children:[u.jsxs("div",{children:[u.jsx("h1",{className:"font-[family-name:var(--font-heading)] text-4xl font-bold tracking-tight",children:e("workers.title")}),u.jsx("p",{className:"text-sm text-[var(--color-text-muted)] mt-1",children:e("workers.summary",{projects:o.projects,running:o.running,starting:o.starting,stuck:o.stuck,crashed:o.crashed,idle:o.idle})})]}),u.jsxs("button",{className:"nb-btn",style:{padding:"6px 12px",fontSize:12},onClick:()=>a.refetch(),disabled:a.isFetching,type:"button","aria-label":e("workers.refresh.aria"),children:[a.isFetching?u.jsx(We,{size:12,strokeWidth:3,className:"animate-spin"}):u.jsx(ga,{size:12,strokeWidth:2.5}),e("workers.refresh")]})]}),u.jsxs("div",{className:"grid grid-cols-1 xl:grid-cols-2 gap-4 flex-1 min-h-0",children:[u.jsxs("div",{className:"flex flex-col gap-4 min-h-0 pr-2",children:[a.isLoading&&u.jsx("p",{className:"text-[var(--color-text-muted)] italic",children:e("common.loading")}),a.isError&&u.jsx("div",{className:"nb-card bg-[var(--color-crashed-bg)]",children:u.jsx("p",{children:e("workers.error.load",{detail:a.error instanceof Error?a.error.message:String(a.error)})})}),a.data&&u.jsxs(u.Fragment,{children:[u.jsx(S4,{alerts:a.data.alerts,selected:n,onSelect:(d,f)=>r({project:d,slot:f})}),u.jsx(N4,{active:a.data.active,selected:n,onSelect:(d,f)=>r({project:d,slot:f})}),u.jsx(_4,{capacity:a.data.capacity,selected:n,onSelect:d=>r({project:d})})]})]}),u.jsx("aside",{className:"nb-card p-0 overflow-hidden flex flex-col h-full",children:n?u.jsx(A4,{project:n.project,initialSlot:n.slot,onChange:()=>t.invalidateQueries({queryKey:["workers-agg"]})}):u.jsx("div",{className:"flex-1 flex items-center justify-center p-6 text-center",children:u.jsxs("div",{children:[u.jsx(Ih,{size:32,className:"mx-auto mb-3 text-[var(--color-text-subtle)]",strokeWidth:2}),u.jsx("p",{className:"text-sm text-[var(--color-text-muted)]",children:e("workers.empty.hint")})]})})})]})]})}function O4(e){const t=new URLSearchParams;return e.project&&t.set("project",e.project),e.worker&&t.set("worker",e.worker),t.set("limit",String(e.limit)),e.since&&t.set("since",e.since),ht(`/api/logs?${t}`)}function R4(e){const t=new URLSearchParams({project:e.project});return e.worker&&t.set("worker",e.worker),`/stream/logs?${t}`}const L4=["error","warn","info","debug"],I4=["error","warn","info"];function z4(){var F,M;const e=Be(),[t,n]=MN(),r=t.get("project"),a=t.get("worker")??"",[o,l]=C.useState([]),[d,f]=C.useState(!1),[h,g]=C.useState(!0),[m,y]=C.useState(()=>new Set(I4)),[b,k]=C.useState(""),[v,S]=C.useState("live"),[E,j]=C.useState(()=>{const U=new Date(Date.now()-36e5),q=Y=>String(Y).padStart(2,"0");return`${U.getFullYear()}-${q(U.getMonth()+1)}-${q(U.getDate())}T${q(U.getHours())}:${q(U.getMinutes())}`}),N=C.useRef(null),_=!r,O=Xe({queryKey:["projects"],queryFn:ba}),{data:T,refetch:I}=Xe({queryKey:["logs",r??"agg",a,v,v==="history"?E:"live"],queryFn:()=>O4({project:r||void 0,worker:a||void 0,limit:v==="history"?2e3:500,since:v==="history"?new Date(E).toISOString():void 0}),refetchInterval:_&&v==="live"?5e3:!1});C.useEffect(()=>{T!=null&&T.data&&l(T.data)},[T]),C.useEffect(()=>{if(!r||v!=="live")return;const U=R4({project:r,worker:a||void 0}),q=new EventSource(U);return q.addEventListener("log.line",Y=>{if(!d)try{const D=JSON.parse(Y.data);l(H=>{const B=[...H,D];return B.length>5e3&&B.splice(0,B.length-5e3),B})}catch{}}),()=>q.close()},[r,a,d,v]),C.useEffect(()=>{if(!h)return;const U=N.current;U&&(U.scrollTop=U.scrollHeight)},[o,h]);const R=C.useMemo(()=>{const U=b.toLowerCase();return o.filter(q=>!(!m.has(q.level)||U&&!q.msg.toLowerCase().includes(U)))},[o,m,b]);return u.jsxs("div",{className:"flex flex-col gap-4 max-w-full",children:[u.jsx("header",{className:"flex items-center justify-between gap-3 flex-wrap",children:u.jsxs("div",{children:[u.jsx("h1",{className:"font-[family-name:var(--font-heading)] text-4xl font-bold tracking-tight",children:e("logs.title")}),u.jsxs("p",{className:"text-sm text-[var(--color-text-muted)] mt-1",children:[_?e("logs.subtitle.allProjectsCount",{count:((F=O.data)==null?void 0:F.data.length)??0}):r,a&&` · worker-${a}`," · ",_&&v==="live"?e("logs.poll.5s"):"tail -f"," · ",o.length," lines",d&&u.jsx("span",{className:"text-[var(--color-stuck)] ml-2 font-bold",children:e("logs.paused")})]})]})}),u.jsxs("div",{className:"flex items-center gap-2 flex-wrap",children:[u.jsxs("div",{className:"flex gap-1 p-1 bg-[var(--color-bg)] border-[2px] border-[var(--color-text)] rounded-full shadow-[2px_2px_0_var(--color-text)]",children:[u.jsxs("button",{type:"button",onClick:()=>S("live"),"aria-pressed":v==="live",className:["px-3 py-1 rounded-full text-xs font-bold flex items-center gap-1.5",v==="live"?"bg-[var(--color-primary)] text-[var(--color-text)] shadow-[1px_1px_0_var(--color-text)]":"text-[var(--color-text-muted)]"].join(" "),children:[u.jsx(FN,{size:11,strokeWidth:2.5}),e("logs.mode.live")]}),u.jsxs("button",{type:"button",onClick:()=>S("history"),"aria-pressed":v==="history",className:["px-3 py-1 rounded-full text-xs font-bold flex items-center gap-1.5",v==="history"?"bg-[var(--color-primary)] text-[var(--color-text)] shadow-[1px_1px_0_var(--color-text)]":"text-[var(--color-text-muted)]"].join(" "),children:[u.jsx(sL,{size:11,strokeWidth:2.5}),e("logs.mode.history")]})]}),v==="history"&&u.jsxs(u.Fragment,{children:[u.jsx("input",{type:"datetime-local",className:"nb-input",style:{padding:"4px 8px",fontSize:12},value:E,onChange:U=>j(U.target.value),"aria-label":e("logs.history.startAria")}),u.jsxs("button",{className:"nb-btn nb-btn-primary",style:{padding:"6px 12px",fontSize:12},onClick:()=>I(),type:"button","aria-label":e("logs.history.queryAria"),children:[u.jsx(co,{size:11,strokeWidth:3}),e("logs.history.query")]})]}),u.jsxs("div",{className:"relative",children:[u.jsx(ku,{size:14,strokeWidth:2.5,className:"absolute left-3 top-1/2 -translate-y-1/2 pointer-events-none text-[var(--color-text)]"}),u.jsxs("select",{className:"nb-input appearance-none pl-9 pr-9 font-[family-name:var(--font-mono)] cursor-pointer",style:{padding:"10px 36px 10px 36px",fontSize:13,minWidth:180},value:r??"",onChange:U=>{const q=U.target.value;n(q?{project:q}:{})},"aria-label":e("logs.filter.project.aria"),children:[u.jsx("option",{value:"",children:e("logs.filter.project.all")}),Ub(((M=O.data)==null?void 0:M.data)??[],"activity").map(U=>u.jsx("option",{value:U.name,children:U.name},U.name))]}),u.jsx(Ql,{size:14,strokeWidth:3,className:"absolute right-3 top-1/2 -translate-y-1/2 pointer-events-none text-[var(--color-text)]"})]}),u.jsxs("div",{className:"relative flex-1 max-w-md",children:[u.jsx(co,{size:14,className:"absolute left-3 top-1/2 -translate-y-1/2 text-[var(--color-text-subtle)]"}),u.jsx("input",{className:"nb-input pl-9 w-full",placeholder:e("logs.filter.keyword.placeholder"),value:b,onChange:U=>k(U.target.value),"aria-label":e("logs.filter.keyword.aria")})]}),u.jsx("div",{className:"flex items-center gap-1 p-1 bg-[var(--color-bg)] border-[2px] border-[var(--color-text)] rounded-full shadow-[2px_2px_0_var(--color-text)]",children:L4.map(U=>u.jsx(P4,{level:U,enabled:m.has(U),onToggle:()=>{y(q=>{const Y=new Set(q);return Y.has(U)?Y.delete(U):Y.add(U),Y})}},U))}),u.jsxs("div",{className:"ml-auto flex gap-2",children:[v==="live"&&u.jsxs(u.Fragment,{children:[u.jsx("button",{className:"nb-btn",style:{padding:"6px 12px",fontSize:12},onClick:()=>g(U=>!U),type:"button",children:h?"✓ Auto-scroll":"Auto-scroll"}),u.jsx("button",{className:"nb-btn",style:{padding:"6px 12px",fontSize:12},onClick:()=>f(U=>!U),type:"button",children:d?u.jsxs(u.Fragment,{children:[u.jsx(Vu,{size:12,strokeWidth:3})," Resume"]}):u.jsxs(u.Fragment,{children:[u.jsx(_L,{size:12,strokeWidth:3})," Pause"]})})]}),u.jsxs("button",{className:"nb-btn",style:{padding:"6px 12px",fontSize:12},onClick:()=>{const U=new Blob([R.map(D=>D.raw).join(`
601
+ `)],{type:"text/plain"}),q=URL.createObjectURL(U),Y=document.createElement("a");Y.href=q,Y.download=`${r}-log-${Date.now()}.log`,Y.click(),URL.revokeObjectURL(q)},type:"button",children:[u.jsx(zh,{size:12,strokeWidth:2.5})," Export"]})]})]}),u.jsxs("div",{className:"nb-card p-0 overflow-hidden",children:[u.jsxs("div",{className:"px-4 py-2 bg-[var(--color-bg-cream)] border-b-2 border-[var(--color-text)] flex items-center justify-between font-[family-name:var(--font-mono)] text-xs",children:[u.jsx("span",{className:"text-[var(--color-text-muted)]",children:(T==null?void 0:T.file)??"~/.coral/projects/.../logs/*.log"}),v==="live"?u.jsx("span",{className:"nb-status",style:{background:"var(--color-running-bg)",color:"var(--color-running)"},children:"live"}):u.jsx("span",{className:"nb-status",style:{background:"var(--color-accent-purple)",color:"var(--color-text)"},children:"history"})]}),u.jsxs("div",{ref:N,className:"overflow-auto font-[family-name:var(--font-mono)] text-[12px] leading-[22px] max-h-[70vh] bg-[var(--color-bg)] p-2",onScroll:U=>{const q=U.currentTarget;!(q.scrollHeight-q.scrollTop-q.clientHeight<40)&&h&&g(!1)},children:[R.map((U,q)=>u.jsx(B4,{line:U},q)),R.length===0&&u.jsx("div",{className:"text-center py-12 text-[var(--color-text-subtle)]",children:e("logs.empty.match")})]})]})]})}function P4({level:e,enabled:t,onToggle:n}){const r={error:"var(--color-crashed-bg)",warn:"var(--color-stuck-bg)",info:"var(--color-secondary)",debug:"var(--color-accent-purple)"},a={error:"var(--color-crashed)",warn:"var(--color-stuck)",info:"var(--color-text)",debug:"var(--color-text)"};return u.jsx("button",{type:"button",onClick:n,"aria-pressed":t,className:["px-3 py-0.5 rounded-full font-[family-name:var(--font-mono)] text-[10px] font-bold tracking-widest cursor-pointer",t?"border-[1.5px] border-[var(--color-text)]":"text-[var(--color-text-subtle)]"].join(" "),style:t?{background:r[e],color:a[e]}:{},children:e.toUpperCase()})}function B4({line:e}){var r;const t={error:"bg-[var(--color-crashed)] text-[var(--color-text)]",warn:"bg-[var(--color-stuck)] text-[var(--color-text)]",info:"bg-[var(--color-secondary)] text-[var(--color-text)]",debug:"",trace:""},n=!!e.project;return u.jsxs("div",{className:["grid gap-2 px-2 py-0.5 rounded hover:bg-[var(--color-bg-cream)]",n?"grid-cols-[100px_90px_60px_1fr]":"grid-cols-[100px_60px_1fr]"].join(" "),children:[u.jsx("span",{className:"text-[var(--color-text-subtle)] whitespace-nowrap",children:e.ts?((r=e.ts.split("T")[1])==null?void 0:r.replace("Z",""))??e.ts:"--"}),n&&u.jsx("span",{className:"truncate text-[var(--color-text-muted)] font-bold",title:e.project,children:e.project}),u.jsx("span",{className:`text-center font-bold ${t[e.level]??""}`,style:{borderRadius:4,padding:"0 6px"},children:e.level.toUpperCase()}),u.jsx("span",{className:"truncate text-[var(--color-text)]",children:e.msg})]})}function c2(){return ht("/api/gen/jobs")}function U4(e,t){const n={};return(e[e.length-1]===""?[...e,""]:e).join((n.padRight?" ":"")+","+(n.padLeft===!1?"":" ")).trim()}const $4=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,F4=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,q4={};function kk(e,t){return(q4.jsx?F4:$4).test(e)}const H4=/[ \t\n\f\r]/g;function K4(e){return typeof e=="object"?e.type==="text"?Ek(e.value):!1:Ek(e)}function Ek(e){return e.replace(H4,"")===""}class Xu{constructor(t,n,r){this.normal=n,this.property=t,r&&(this.space=r)}}Xu.prototype.normal={};Xu.prototype.property={};Xu.prototype.space=void 0;function u2(e,t){const n={},r={};for(const a of e)Object.assign(n,a.property),Object.assign(r,a.normal);return new Xu(n,r,t)}function Gy(e){return e.toLowerCase()}class mr{constructor(t,n){this.attribute=n,this.property=t}}mr.prototype.attribute="";mr.prototype.booleanish=!1;mr.prototype.boolean=!1;mr.prototype.commaOrSpaceSeparated=!1;mr.prototype.commaSeparated=!1;mr.prototype.defined=!1;mr.prototype.mustUseProperty=!1;mr.prototype.number=!1;mr.prototype.overloadedBoolean=!1;mr.prototype.property="";mr.prototype.spaceSeparated=!1;mr.prototype.space=void 0;let G4=0;const dt=vo(),Sn=vo(),Vy=vo(),Se=vo(),Yt=vo(),vl=vo(),Er=vo();function vo(){return 2**++G4}const Yy=Object.freeze(Object.defineProperty({__proto__:null,boolean:dt,booleanish:Sn,commaOrSpaceSeparated:Er,commaSeparated:vl,number:Se,overloadedBoolean:Vy,spaceSeparated:Yt},Symbol.toStringTag,{value:"Module"})),Ig=Object.keys(Yy);class lx extends mr{constructor(t,n,r,a){let o=-1;if(super(t,n),Sk(this,"space",a),typeof r=="number")for(;++o<Ig.length;){const l=Ig[o];Sk(this,Ig[o],(r&Yy[l])===Yy[l])}}}lx.prototype.defined=!0;function Sk(e,t,n){n&&(e[t]=n)}function ic(e){const t={},n={};for(const[r,a]of Object.entries(e.properties)){const o=new lx(r,e.transform(e.attributes||{},r),a,e.space);e.mustUseProperty&&e.mustUseProperty.includes(r)&&(o.mustUseProperty=!0),t[r]=o,n[Gy(r)]=r,n[Gy(o.attribute)]=r}return new Xu(t,n,e.space)}const d2=ic({properties:{ariaActiveDescendant:null,ariaAtomic:Sn,ariaAutoComplete:null,ariaBusy:Sn,ariaChecked:Sn,ariaColCount:Se,ariaColIndex:Se,ariaColSpan:Se,ariaControls:Yt,ariaCurrent:null,ariaDescribedBy:Yt,ariaDetails:null,ariaDisabled:Sn,ariaDropEffect:Yt,ariaErrorMessage:null,ariaExpanded:Sn,ariaFlowTo:Yt,ariaGrabbed:Sn,ariaHasPopup:null,ariaHidden:Sn,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:Yt,ariaLevel:Se,ariaLive:null,ariaModal:Sn,ariaMultiLine:Sn,ariaMultiSelectable:Sn,ariaOrientation:null,ariaOwns:Yt,ariaPlaceholder:null,ariaPosInSet:Se,ariaPressed:Sn,ariaReadOnly:Sn,ariaRelevant:null,ariaRequired:Sn,ariaRoleDescription:Yt,ariaRowCount:Se,ariaRowIndex:Se,ariaRowSpan:Se,ariaSelected:Sn,ariaSetSize:Se,ariaSort:null,ariaValueMax:Se,ariaValueMin:Se,ariaValueNow:Se,ariaValueText:null,role:null},transform(e,t){return t==="role"?t:"aria-"+t.slice(4).toLowerCase()}});function f2(e,t){return t in e?e[t]:t}function h2(e,t){return f2(e,t.toLowerCase())}const V4=ic({attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:vl,acceptCharset:Yt,accessKey:Yt,action:null,allow:null,allowFullScreen:dt,allowPaymentRequest:dt,allowUserMedia:dt,alt:null,as:null,async:dt,autoCapitalize:null,autoComplete:Yt,autoFocus:dt,autoPlay:dt,blocking:Yt,capture:null,charSet:null,checked:dt,cite:null,className:Yt,cols:Se,colSpan:null,content:null,contentEditable:Sn,controls:dt,controlsList:Yt,coords:Se|vl,crossOrigin:null,data:null,dateTime:null,decoding:null,default:dt,defer:dt,dir:null,dirName:null,disabled:dt,download:Vy,draggable:Sn,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:dt,formTarget:null,headers:Yt,height:Se,hidden:Vy,high:Se,href:null,hrefLang:null,htmlFor:Yt,httpEquiv:Yt,id:null,imageSizes:null,imageSrcSet:null,inert:dt,inputMode:null,integrity:null,is:null,isMap:dt,itemId:null,itemProp:Yt,itemRef:Yt,itemScope:dt,itemType:Yt,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:dt,low:Se,manifest:null,max:null,maxLength:Se,media:null,method:null,min:null,minLength:Se,multiple:dt,muted:dt,name:null,nonce:null,noModule:dt,noValidate:dt,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:dt,optimum:Se,pattern:null,ping:Yt,placeholder:null,playsInline:dt,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:dt,referrerPolicy:null,rel:Yt,required:dt,reversed:dt,rows:Se,rowSpan:Se,sandbox:Yt,scope:null,scoped:dt,seamless:dt,selected:dt,shadowRootClonable:dt,shadowRootDelegatesFocus:dt,shadowRootMode:null,shape:null,size:Se,sizes:null,slot:null,span:Se,spellCheck:Sn,src:null,srcDoc:null,srcLang:null,srcSet:null,start:Se,step:null,style:null,tabIndex:Se,target:null,title:null,translate:null,type:null,typeMustMatch:dt,useMap:null,value:Sn,width:Se,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:Yt,axis:null,background:null,bgColor:null,border:Se,borderColor:null,bottomMargin:Se,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:dt,declare:dt,event:null,face:null,frame:null,frameBorder:null,hSpace:Se,leftMargin:Se,link:null,longDesc:null,lowSrc:null,marginHeight:Se,marginWidth:Se,noResize:dt,noHref:dt,noShade:dt,noWrap:dt,object:null,profile:null,prompt:null,rev:null,rightMargin:Se,rules:null,scheme:null,scrolling:Sn,standby:null,summary:null,text:null,topMargin:Se,valueType:null,version:null,vAlign:null,vLink:null,vSpace:Se,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:dt,disableRemotePlayback:dt,prefix:null,property:null,results:Se,security:null,unselectable:null},space:"html",transform:h2}),Y4=ic({attributes:{accentHeight:"accent-height",alignmentBaseline:"alignment-baseline",arabicForm:"arabic-form",baselineShift:"baseline-shift",capHeight:"cap-height",className:"class",clipPath:"clip-path",clipRule:"clip-rule",colorInterpolation:"color-interpolation",colorInterpolationFilters:"color-interpolation-filters",colorProfile:"color-profile",colorRendering:"color-rendering",crossOrigin:"crossorigin",dataType:"datatype",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",hrefLang:"hreflang",horizAdvX:"horiz-adv-x",horizOriginX:"horiz-origin-x",horizOriginY:"horiz-origin-y",imageRendering:"image-rendering",letterSpacing:"letter-spacing",lightingColor:"lighting-color",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",navDown:"nav-down",navDownLeft:"nav-down-left",navDownRight:"nav-down-right",navLeft:"nav-left",navNext:"nav-next",navPrev:"nav-prev",navRight:"nav-right",navUp:"nav-up",navUpLeft:"nav-up-left",navUpRight:"nav-up-right",onAbort:"onabort",onActivate:"onactivate",onAfterPrint:"onafterprint",onBeforePrint:"onbeforeprint",onBegin:"onbegin",onCancel:"oncancel",onCanPlay:"oncanplay",onCanPlayThrough:"oncanplaythrough",onChange:"onchange",onClick:"onclick",onClose:"onclose",onCopy:"oncopy",onCueChange:"oncuechange",onCut:"oncut",onDblClick:"ondblclick",onDrag:"ondrag",onDragEnd:"ondragend",onDragEnter:"ondragenter",onDragExit:"ondragexit",onDragLeave:"ondragleave",onDragOver:"ondragover",onDragStart:"ondragstart",onDrop:"ondrop",onDurationChange:"ondurationchange",onEmptied:"onemptied",onEnd:"onend",onEnded:"onended",onError:"onerror",onFocus:"onfocus",onFocusIn:"onfocusin",onFocusOut:"onfocusout",onHashChange:"onhashchange",onInput:"oninput",onInvalid:"oninvalid",onKeyDown:"onkeydown",onKeyPress:"onkeypress",onKeyUp:"onkeyup",onLoad:"onload",onLoadedData:"onloadeddata",onLoadedMetadata:"onloadedmetadata",onLoadStart:"onloadstart",onMessage:"onmessage",onMouseDown:"onmousedown",onMouseEnter:"onmouseenter",onMouseLeave:"onmouseleave",onMouseMove:"onmousemove",onMouseOut:"onmouseout",onMouseOver:"onmouseover",onMouseUp:"onmouseup",onMouseWheel:"onmousewheel",onOffline:"onoffline",onOnline:"ononline",onPageHide:"onpagehide",onPageShow:"onpageshow",onPaste:"onpaste",onPause:"onpause",onPlay:"onplay",onPlaying:"onplaying",onPopState:"onpopstate",onProgress:"onprogress",onRateChange:"onratechange",onRepeat:"onrepeat",onReset:"onreset",onResize:"onresize",onScroll:"onscroll",onSeeked:"onseeked",onSeeking:"onseeking",onSelect:"onselect",onShow:"onshow",onStalled:"onstalled",onStorage:"onstorage",onSubmit:"onsubmit",onSuspend:"onsuspend",onTimeUpdate:"ontimeupdate",onToggle:"ontoggle",onUnload:"onunload",onVolumeChange:"onvolumechange",onWaiting:"onwaiting",onZoom:"onzoom",overlinePosition:"overline-position",overlineThickness:"overline-thickness",paintOrder:"paint-order",panose1:"panose-1",pointerEvents:"pointer-events",referrerPolicy:"referrerpolicy",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",tabIndex:"tabindex",textAnchor:"text-anchor",textDecoration:"text-decoration",textRendering:"text-rendering",transformOrigin:"transform-origin",typeOf:"typeof",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",xHeight:"x-height",playbackOrder:"playbackorder",timelineBegin:"timelinebegin"},properties:{about:Er,accentHeight:Se,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:Se,amplitude:Se,arabicForm:null,ascent:Se,attributeName:null,attributeType:null,azimuth:Se,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:Se,by:null,calcMode:null,capHeight:Se,className:Yt,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:Se,diffuseConstant:Se,direction:null,display:null,dur:null,divisor:Se,dominantBaseline:null,download:dt,dx:null,dy:null,edgeMode:null,editable:null,elevation:Se,enableBackground:null,end:null,event:null,exponent:Se,externalResourcesRequired:null,fill:null,fillOpacity:Se,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:vl,g2:vl,glyphName:vl,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:Se,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:Se,horizOriginX:Se,horizOriginY:Se,id:null,ideographic:Se,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:Se,k:Se,k1:Se,k2:Se,k3:Se,k4:Se,kernelMatrix:Er,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:Se,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:Se,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:Se,overlineThickness:Se,paintOrder:null,panose1:null,path:null,pathLength:Se,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:Yt,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:Se,pointsAtY:Se,pointsAtZ:Se,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:Er,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:Er,rev:Er,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:Er,requiredFeatures:Er,requiredFonts:Er,requiredFormats:Er,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:Se,specularExponent:Se,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:Se,strikethroughThickness:Se,string:null,stroke:null,strokeDashArray:Er,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:Se,strokeOpacity:Se,strokeWidth:null,style:null,surfaceScale:Se,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:Er,tabIndex:Se,tableValues:null,target:null,targetX:Se,targetY:Se,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:Er,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:Se,underlineThickness:Se,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:Se,values:null,vAlphabetic:Se,vMathematical:Se,vectorEffect:null,vHanging:Se,vIdeographic:Se,version:null,vertAdvY:Se,vertOriginX:Se,vertOriginY:Se,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:Se,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:"svg",transform:f2}),p2=ic({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:"xlink",transform(e,t){return"xlink:"+t.slice(5).toLowerCase()}}),m2=ic({attributes:{xmlnsxlink:"xmlns:xlink"},properties:{xmlnsXLink:null,xmlns:null},space:"xmlns",transform:h2}),g2=ic({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:"xml",transform(e,t){return"xml:"+t.slice(3).toLowerCase()}}),Q4={classId:"classID",dataType:"datatype",itemId:"itemID",strokeDashArray:"strokeDasharray",strokeDashOffset:"strokeDashoffset",strokeLineCap:"strokeLinecap",strokeLineJoin:"strokeLinejoin",strokeMiterLimit:"strokeMiterlimit",typeOf:"typeof",xLinkActuate:"xlinkActuate",xLinkArcRole:"xlinkArcrole",xLinkHref:"xlinkHref",xLinkRole:"xlinkRole",xLinkShow:"xlinkShow",xLinkTitle:"xlinkTitle",xLinkType:"xlinkType",xmlnsXLink:"xmlnsXlink"},W4=/[A-Z]/g,Nk=/-[a-z]/g,X4=/^data[-\w.:]+$/i;function Z4(e,t){const n=Gy(t);let r=t,a=mr;if(n in e.normal)return e.property[e.normal[n]];if(n.length>4&&n.slice(0,4)==="data"&&X4.test(t)){if(t.charAt(4)==="-"){const o=t.slice(5).replace(Nk,eP);r="data"+o.charAt(0).toUpperCase()+o.slice(1)}else{const o=t.slice(4);if(!Nk.test(o)){let l=o.replace(W4,J4);l.charAt(0)!=="-"&&(l="-"+l),t="data"+l}}a=lx}return new a(r,t)}function J4(e){return"-"+e.toLowerCase()}function eP(e){return e.charAt(1).toUpperCase()}const tP=u2([d2,V4,p2,m2,g2],"html"),cx=u2([d2,Y4,p2,m2,g2],"svg");function nP(e){return e.join(" ").trim()}var al={},zg,_k;function rP(){if(_k)return zg;_k=1;var e=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,t=/\n/g,n=/^\s*/,r=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,a=/^:\s*/,o=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,l=/^[;\s]*/,d=/^\s+|\s+$/g,f=`
602
+ `,h="/",g="*",m="",y="comment",b="declaration";function k(S,E){if(typeof S!="string")throw new TypeError("First argument must be a string");if(!S)return[];E=E||{};var j=1,N=1;function _(D){var H=D.match(t);H&&(j+=H.length);var B=D.lastIndexOf(f);N=~B?D.length-B:N+D.length}function O(){var D={line:j,column:N};return function(H){return H.position=new T(D),F(),H}}function T(D){this.start=D,this.end={line:j,column:N},this.source=E.source}T.prototype.content=S;function I(D){var H=new Error(E.source+":"+j+":"+N+": "+D);if(H.reason=D,H.filename=E.source,H.line=j,H.column=N,H.source=S,!E.silent)throw H}function R(D){var H=D.exec(S);if(H){var B=H[0];return _(B),S=S.slice(B.length),H}}function F(){R(n)}function M(D){var H;for(D=D||[];H=U();)H!==!1&&D.push(H);return D}function U(){var D=O();if(!(h!=S.charAt(0)||g!=S.charAt(1))){for(var H=2;m!=S.charAt(H)&&(g!=S.charAt(H)||h!=S.charAt(H+1));)++H;if(H+=2,m===S.charAt(H-1))return I("End of comment missing");var B=S.slice(2,H-2);return N+=2,_(B),S=S.slice(H),N+=2,D({type:y,comment:B})}}function q(){var D=O(),H=R(r);if(H){if(U(),!R(a))return I("property missing ':'");var B=R(o),V=D({type:b,property:v(H[0].replace(e,m)),value:B?v(B[0].replace(e,m)):m});return R(l),V}}function Y(){var D=[];M(D);for(var H;H=q();)H!==!1&&(D.push(H),M(D));return D}return F(),Y()}function v(S){return S?S.replace(d,m):m}return zg=k,zg}var jk;function iP(){if(jk)return al;jk=1;var e=al&&al.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(al,"__esModule",{value:!0}),al.default=n;const t=e(rP());function n(r,a){let o=null;if(!r||typeof r!="string")return o;const l=(0,t.default)(r),d=typeof a=="function";return l.forEach(f=>{if(f.type!=="declaration")return;const{property:h,value:g}=f;d?a(h,g,f):g&&(o=o||{},o[h]=g)}),o}return al}var Jc={},Ck;function aP(){if(Ck)return Jc;Ck=1,Object.defineProperty(Jc,"__esModule",{value:!0}),Jc.camelCase=void 0;var e=/^--[a-zA-Z0-9_-]+$/,t=/-([a-z])/g,n=/^[^-]+$/,r=/^-(webkit|moz|ms|o|khtml)-/,a=/^-(ms)-/,o=function(h){return!h||n.test(h)||e.test(h)},l=function(h,g){return g.toUpperCase()},d=function(h,g){return"".concat(g,"-")},f=function(h,g){return g===void 0&&(g={}),o(h)?h:(h=h.toLowerCase(),g.reactCompat?h=h.replace(a,d):h=h.replace(r,d),h.replace(t,l))};return Jc.camelCase=f,Jc}var eu,Ak;function sP(){if(Ak)return eu;Ak=1;var e=eu&&eu.__importDefault||function(a){return a&&a.__esModule?a:{default:a}},t=e(iP()),n=aP();function r(a,o){var l={};return!a||typeof a!="string"||(0,t.default)(a,function(d,f){d&&f&&(l[(0,n.camelCase)(d,o)]=f)}),l}return r.default=r,eu=r,eu}var oP=sP();const lP=Fu(oP),y2=b2("end"),ux=b2("start");function b2(e){return t;function t(n){const r=n&&n.position&&n.position[e]||{};if(typeof r.line=="number"&&r.line>0&&typeof r.column=="number"&&r.column>0)return{line:r.line,column:r.column,offset:typeof r.offset=="number"&&r.offset>-1?r.offset:void 0}}}function cP(e){const t=ux(e),n=y2(e);if(t&&n)return{start:t,end:n}}function du(e){return!e||typeof e!="object"?"":"position"in e||"type"in e?Tk(e.position):"start"in e||"end"in e?Tk(e):"line"in e||"column"in e?Qy(e):""}function Qy(e){return Mk(e&&e.line)+":"+Mk(e&&e.column)}function Tk(e){return Qy(e&&e.start)+"-"+Qy(e&&e.end)}function Mk(e){return e&&typeof e=="number"?e:1}class Yn extends Error{constructor(t,n,r){super(),typeof n=="string"&&(r=n,n=void 0);let a="",o={},l=!1;if(n&&("line"in n&&"column"in n?o={place:n}:"start"in n&&"end"in n?o={place:n}:"type"in n?o={ancestors:[n],place:n.position}:o={...n}),typeof t=="string"?a=t:!o.cause&&t&&(l=!0,a=t.message,o.cause=t),!o.ruleId&&!o.source&&typeof r=="string"){const f=r.indexOf(":");f===-1?o.ruleId=r:(o.source=r.slice(0,f),o.ruleId=r.slice(f+1))}if(!o.place&&o.ancestors&&o.ancestors){const f=o.ancestors[o.ancestors.length-1];f&&(o.place=f.position)}const d=o.place&&"start"in o.place?o.place.start:o.place;this.ancestors=o.ancestors||void 0,this.cause=o.cause||void 0,this.column=d?d.column:void 0,this.fatal=void 0,this.file="",this.message=a,this.line=d?d.line:void 0,this.name=du(o.place)||"1:1",this.place=o.place||void 0,this.reason=this.message,this.ruleId=o.ruleId||void 0,this.source=o.source||void 0,this.stack=l&&o.cause&&typeof o.cause.stack=="string"?o.cause.stack:"",this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}}Yn.prototype.file="";Yn.prototype.name="";Yn.prototype.reason="";Yn.prototype.message="";Yn.prototype.stack="";Yn.prototype.column=void 0;Yn.prototype.line=void 0;Yn.prototype.ancestors=void 0;Yn.prototype.cause=void 0;Yn.prototype.fatal=void 0;Yn.prototype.place=void 0;Yn.prototype.ruleId=void 0;Yn.prototype.source=void 0;const dx={}.hasOwnProperty,uP=new Map,dP=/[A-Z]/g,fP=new Set(["table","tbody","thead","tfoot","tr"]),hP=new Set(["td","th"]),x2="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function pP(e,t){if(!t||t.Fragment===void 0)throw new TypeError("Expected `Fragment` in options");const n=t.filePath||void 0;let r;if(t.development){if(typeof t.jsxDEV!="function")throw new TypeError("Expected `jsxDEV` in options when `development: true`");r=kP(n,t.jsxDEV)}else{if(typeof t.jsx!="function")throw new TypeError("Expected `jsx` in production options");if(typeof t.jsxs!="function")throw new TypeError("Expected `jsxs` in production options");r=wP(n,t.jsx,t.jsxs)}const a={Fragment:t.Fragment,ancestors:[],components:t.components||{},create:r,elementAttributeNameCase:t.elementAttributeNameCase||"react",evaluater:t.createEvaluater?t.createEvaluater():void 0,filePath:n,ignoreInvalidStyle:t.ignoreInvalidStyle||!1,passKeys:t.passKeys!==!1,passNode:t.passNode||!1,schema:t.space==="svg"?cx:tP,stylePropertyNameCase:t.stylePropertyNameCase||"dom",tableCellAlignToStyle:t.tableCellAlignToStyle!==!1},o=v2(a,e,void 0);return o&&typeof o!="string"?o:a.create(e,a.Fragment,{children:o||void 0},void 0)}function v2(e,t,n){if(t.type==="element")return mP(e,t,n);if(t.type==="mdxFlowExpression"||t.type==="mdxTextExpression")return gP(e,t);if(t.type==="mdxJsxFlowElement"||t.type==="mdxJsxTextElement")return bP(e,t,n);if(t.type==="mdxjsEsm")return yP(e,t);if(t.type==="root")return xP(e,t,n);if(t.type==="text")return vP(e,t)}function mP(e,t,n){const r=e.schema;let a=r;t.tagName.toLowerCase()==="svg"&&r.space==="html"&&(a=cx,e.schema=a),e.ancestors.push(t);const o=k2(e,t.tagName,!1),l=EP(e,t);let d=hx(e,t);return fP.has(t.tagName)&&(d=d.filter(function(f){return typeof f=="string"?!K4(f):!0})),w2(e,l,o,t),fx(l,d),e.ancestors.pop(),e.schema=r,e.create(t,o,l,n)}function gP(e,t){if(t.data&&t.data.estree&&e.evaluater){const r=t.data.estree.body[0];return r.type,e.evaluater.evaluateExpression(r.expression)}_u(e,t.position)}function yP(e,t){if(t.data&&t.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(t.data.estree);_u(e,t.position)}function bP(e,t,n){const r=e.schema;let a=r;t.name==="svg"&&r.space==="html"&&(a=cx,e.schema=a),e.ancestors.push(t);const o=t.name===null?e.Fragment:k2(e,t.name,!0),l=SP(e,t),d=hx(e,t);return w2(e,l,o,t),fx(l,d),e.ancestors.pop(),e.schema=r,e.create(t,o,l,n)}function xP(e,t,n){const r={};return fx(r,hx(e,t)),e.create(t,e.Fragment,r,n)}function vP(e,t){return t.value}function w2(e,t,n,r){typeof n!="string"&&n!==e.Fragment&&e.passNode&&(t.node=r)}function fx(e,t){if(t.length>0){const n=t.length>1?t:t[0];n&&(e.children=n)}}function wP(e,t,n){return r;function r(a,o,l,d){const h=Array.isArray(l.children)?n:t;return d?h(o,l,d):h(o,l)}}function kP(e,t){return n;function n(r,a,o,l){const d=Array.isArray(o.children),f=ux(r);return t(a,o,l,d,{columnNumber:f?f.column-1:void 0,fileName:e,lineNumber:f?f.line:void 0},void 0)}}function EP(e,t){const n={};let r,a;for(a in t.properties)if(a!=="children"&&dx.call(t.properties,a)){const o=NP(e,a,t.properties[a]);if(o){const[l,d]=o;e.tableCellAlignToStyle&&l==="align"&&typeof d=="string"&&hP.has(t.tagName)?r=d:n[l]=d}}if(r){const o=n.style||(n.style={});o[e.stylePropertyNameCase==="css"?"text-align":"textAlign"]=r}return n}function SP(e,t){const n={};for(const r of t.attributes)if(r.type==="mdxJsxExpressionAttribute")if(r.data&&r.data.estree&&e.evaluater){const o=r.data.estree.body[0];o.type;const l=o.expression;l.type;const d=l.properties[0];d.type,Object.assign(n,e.evaluater.evaluateExpression(d.argument))}else _u(e,t.position);else{const a=r.name;let o;if(r.value&&typeof r.value=="object")if(r.value.data&&r.value.data.estree&&e.evaluater){const d=r.value.data.estree.body[0];d.type,o=e.evaluater.evaluateExpression(d.expression)}else _u(e,t.position);else o=r.value===null?!0:r.value;n[a]=o}return n}function hx(e,t){const n=[];let r=-1;const a=e.passKeys?new Map:uP;for(;++r<t.children.length;){const o=t.children[r];let l;if(e.passKeys){const f=o.type==="element"?o.tagName:o.type==="mdxJsxFlowElement"||o.type==="mdxJsxTextElement"?o.name:void 0;if(f){const h=a.get(f)||0;l=f+"-"+h,a.set(f,h+1)}}const d=v2(e,o,l);d!==void 0&&n.push(d)}return n}function NP(e,t,n){const r=Z4(e.schema,t);if(!(n==null||typeof n=="number"&&Number.isNaN(n))){if(Array.isArray(n)&&(n=r.commaSeparated?U4(n):nP(n)),r.property==="style"){let a=typeof n=="object"?n:_P(e,String(n));return e.stylePropertyNameCase==="css"&&(a=jP(a)),["style",a]}return[e.elementAttributeNameCase==="react"&&r.space?Q4[r.property]||r.property:r.attribute,n]}}function _P(e,t){try{return lP(t,{reactCompat:!0})}catch(n){if(e.ignoreInvalidStyle)return{};const r=n,a=new Yn("Cannot parse `style` attribute",{ancestors:e.ancestors,cause:r,ruleId:"style",source:"hast-util-to-jsx-runtime"});throw a.file=e.filePath||void 0,a.url=x2+"#cannot-parse-style-attribute",a}}function k2(e,t,n){let r;if(!n)r={type:"Literal",value:t};else if(t.includes(".")){const a=t.split(".");let o=-1,l;for(;++o<a.length;){const d=kk(a[o])?{type:"Identifier",name:a[o]}:{type:"Literal",value:a[o]};l=l?{type:"MemberExpression",object:l,property:d,computed:!!(o&&d.type==="Literal"),optional:!1}:d}r=l}else r=kk(t)&&!/^[a-z]/.test(t)?{type:"Identifier",name:t}:{type:"Literal",value:t};if(r.type==="Literal"){const a=r.value;return dx.call(e.components,a)?e.components[a]:a}if(e.evaluater)return e.evaluater.evaluateExpression(r);_u(e)}function _u(e,t){const n=new Yn("Cannot handle MDX estrees without `createEvaluater`",{ancestors:e.ancestors,place:t,ruleId:"mdx-estree",source:"hast-util-to-jsx-runtime"});throw n.file=e.filePath||void 0,n.url=x2+"#cannot-handle-mdx-estrees-without-createevaluater",n}function jP(e){const t={};let n;for(n in e)dx.call(e,n)&&(t[CP(n)]=e[n]);return t}function CP(e){let t=e.replace(dP,AP);return t.slice(0,3)==="ms-"&&(t="-"+t),t}function AP(e){return"-"+e.toLowerCase()}const Pg={action:["form"],cite:["blockquote","del","ins","q"],data:["object"],formAction:["button","input"],href:["a","area","base","link"],icon:["menuitem"],itemId:null,manifest:["html"],ping:["a","area"],poster:["video"],src:["audio","embed","iframe","img","input","script","source","track","video"]},TP={};function px(e,t){const n=TP,r=typeof n.includeImageAlt=="boolean"?n.includeImageAlt:!0,a=typeof n.includeHtml=="boolean"?n.includeHtml:!0;return E2(e,r,a)}function E2(e,t,n){if(MP(e)){if("value"in e)return e.type==="html"&&!n?"":e.value;if(t&&"alt"in e&&e.alt)return e.alt;if("children"in e)return Dk(e.children,t,n)}return Array.isArray(e)?Dk(e,t,n):""}function Dk(e,t,n){const r=[];let a=-1;for(;++a<e.length;)r[a]=E2(e[a],t,n);return r.join("")}function MP(e){return!!(e&&typeof e=="object")}const Ok=document.createElement("i");function mx(e){const t="&"+e+";";Ok.innerHTML=t;const n=Ok.textContent;return n.charCodeAt(n.length-1)===59&&e!=="semi"||n===t?!1:n}function jr(e,t,n,r){const a=e.length;let o=0,l;if(t<0?t=-t>a?0:a+t:t=t>a?a:t,n=n>0?n:0,r.length<1e4)l=Array.from(r),l.unshift(t,n),e.splice(...l);else for(n&&e.splice(t,n);o<r.length;)l=r.slice(o,o+1e4),l.unshift(t,0),e.splice(...l),o+=1e4,t+=1e4}function Hr(e,t){return e.length>0?(jr(e,e.length,0,t),e):t}const Rk={}.hasOwnProperty;function S2(e){const t={};let n=-1;for(;++n<e.length;)DP(t,e[n]);return t}function DP(e,t){let n;for(n in t){const a=(Rk.call(e,n)?e[n]:void 0)||(e[n]={}),o=t[n];let l;if(o)for(l in o){Rk.call(a,l)||(a[l]=[]);const d=o[l];OP(a[l],Array.isArray(d)?d:d?[d]:[])}}}function OP(e,t){let n=-1;const r=[];for(;++n<t.length;)(t[n].add==="after"?e:r).push(t[n]);jr(e,0,0,r)}function N2(e,t){const n=Number.parseInt(e,t);return n<9||n===11||n>13&&n<32||n>126&&n<160||n>55295&&n<57344||n>64975&&n<65008||(n&65535)===65535||(n&65535)===65534||n>1114111?"�":String.fromCodePoint(n)}function di(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const nr=ks(/[A-Za-z]/),Gn=ks(/[\dA-Za-z]/),RP=ks(/[#-'*+\--9=?A-Z^-~]/);function mh(e){return e!==null&&(e<32||e===127)}const Wy=ks(/\d/),LP=ks(/[\dA-Fa-f]/),IP=ks(/[!-/:-@[-`{-~]/);function Je(e){return e!==null&&e<-2}function Ht(e){return e!==null&&(e<0||e===32)}function gt(e){return e===-2||e===-1||e===32}const Jh=ks(new RegExp("\\p{P}|\\p{S}","u")),fo=ks(/\s/);function ks(e){return t;function t(n){return n!==null&&n>-1&&e.test(String.fromCharCode(n))}}function ac(e){const t=[];let n=-1,r=0,a=0;for(;++n<e.length;){const o=e.charCodeAt(n);let l="";if(o===37&&Gn(e.charCodeAt(n+1))&&Gn(e.charCodeAt(n+2)))a=2;else if(o<128)/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(o))||(l=String.fromCharCode(o));else if(o>55295&&o<57344){const d=e.charCodeAt(n+1);o<56320&&d>56319&&d<57344?(l=String.fromCharCode(o,d),a=1):l="�"}else l=String.fromCharCode(o);l&&(t.push(e.slice(r,n),encodeURIComponent(l)),r=n+a+1,l=""),a&&(n+=a,a=0)}return t.join("")+e.slice(r)}function Et(e,t,n,r){const a=r?r-1:Number.POSITIVE_INFINITY;let o=0;return l;function l(f){return gt(f)?(e.enter(n),d(f)):t(f)}function d(f){return gt(f)&&o++<a?(e.consume(f),d):(e.exit(n),t(f))}}const zP={tokenize:PP};function PP(e){const t=e.attempt(this.parser.constructs.contentInitial,r,a);let n;return t;function r(d){if(d===null){e.consume(d);return}return e.enter("lineEnding"),e.consume(d),e.exit("lineEnding"),Et(e,t,"linePrefix")}function a(d){return e.enter("paragraph"),o(d)}function o(d){const f=e.enter("chunkText",{contentType:"text",previous:n});return n&&(n.next=f),n=f,l(d)}function l(d){if(d===null){e.exit("chunkText"),e.exit("paragraph"),e.consume(d);return}return Je(d)?(e.consume(d),e.exit("chunkText"),o):(e.consume(d),l)}}const BP={tokenize:UP},Lk={tokenize:$P};function UP(e){const t=this,n=[];let r=0,a,o,l;return d;function d(N){if(r<n.length){const _=n[r];return t.containerState=_[1],e.attempt(_[0].continuation,f,h)(N)}return h(N)}function f(N){if(r++,t.containerState._closeFlow){t.containerState._closeFlow=void 0,a&&j();const _=t.events.length;let O=_,T;for(;O--;)if(t.events[O][0]==="exit"&&t.events[O][1].type==="chunkFlow"){T=t.events[O][1].end;break}E(r);let I=_;for(;I<t.events.length;)t.events[I][1].end={...T},I++;return jr(t.events,O+1,0,t.events.slice(_)),t.events.length=I,h(N)}return d(N)}function h(N){if(r===n.length){if(!a)return y(N);if(a.currentConstruct&&a.currentConstruct.concrete)return k(N);t.interrupt=!!(a.currentConstruct&&!a._gfmTableDynamicInterruptHack)}return t.containerState={},e.check(Lk,g,m)(N)}function g(N){return a&&j(),E(r),y(N)}function m(N){return t.parser.lazy[t.now().line]=r!==n.length,l=t.now().offset,k(N)}function y(N){return t.containerState={},e.attempt(Lk,b,k)(N)}function b(N){return r++,n.push([t.currentConstruct,t.containerState]),y(N)}function k(N){if(N===null){a&&j(),E(0),e.consume(N);return}return a=a||t.parser.flow(t.now()),e.enter("chunkFlow",{_tokenizer:a,contentType:"flow",previous:o}),v(N)}function v(N){if(N===null){S(e.exit("chunkFlow"),!0),E(0),e.consume(N);return}return Je(N)?(e.consume(N),S(e.exit("chunkFlow")),r=0,t.interrupt=void 0,d):(e.consume(N),v)}function S(N,_){const O=t.sliceStream(N);if(_&&O.push(null),N.previous=o,o&&(o.next=N),o=N,a.defineSkip(N.start),a.write(O),t.parser.lazy[N.start.line]){let T=a.events.length;for(;T--;)if(a.events[T][1].start.offset<l&&(!a.events[T][1].end||a.events[T][1].end.offset>l))return;const I=t.events.length;let R=I,F,M;for(;R--;)if(t.events[R][0]==="exit"&&t.events[R][1].type==="chunkFlow"){if(F){M=t.events[R][1].end;break}F=!0}for(E(r),T=I;T<t.events.length;)t.events[T][1].end={...M},T++;jr(t.events,R+1,0,t.events.slice(I)),t.events.length=T}}function E(N){let _=n.length;for(;_-- >N;){const O=n[_];t.containerState=O[1],O[0].exit.call(t,e)}n.length=N}function j(){a.write([null]),o=void 0,a=void 0,t.containerState._closeFlow=void 0}}function $P(e,t,n){return Et(e,e.attempt(this.parser.constructs.document,t,n),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function Pl(e){if(e===null||Ht(e)||fo(e))return 1;if(Jh(e))return 2}function ep(e,t,n){const r=[];let a=-1;for(;++a<e.length;){const o=e[a].resolveAll;o&&!r.includes(o)&&(t=o(t,n),r.push(o))}return t}const Xy={name:"attention",resolveAll:FP,tokenize:qP};function FP(e,t){let n=-1,r,a,o,l,d,f,h,g;for(;++n<e.length;)if(e[n][0]==="enter"&&e[n][1].type==="attentionSequence"&&e[n][1]._close){for(r=n;r--;)if(e[r][0]==="exit"&&e[r][1].type==="attentionSequence"&&e[r][1]._open&&t.sliceSerialize(e[r][1]).charCodeAt(0)===t.sliceSerialize(e[n][1]).charCodeAt(0)){if((e[r][1]._close||e[n][1]._open)&&(e[n][1].end.offset-e[n][1].start.offset)%3&&!((e[r][1].end.offset-e[r][1].start.offset+e[n][1].end.offset-e[n][1].start.offset)%3))continue;f=e[r][1].end.offset-e[r][1].start.offset>1&&e[n][1].end.offset-e[n][1].start.offset>1?2:1;const m={...e[r][1].end},y={...e[n][1].start};Ik(m,-f),Ik(y,f),l={type:f>1?"strongSequence":"emphasisSequence",start:m,end:{...e[r][1].end}},d={type:f>1?"strongSequence":"emphasisSequence",start:{...e[n][1].start},end:y},o={type:f>1?"strongText":"emphasisText",start:{...e[r][1].end},end:{...e[n][1].start}},a={type:f>1?"strong":"emphasis",start:{...l.start},end:{...d.end}},e[r][1].end={...l.start},e[n][1].start={...d.end},h=[],e[r][1].end.offset-e[r][1].start.offset&&(h=Hr(h,[["enter",e[r][1],t],["exit",e[r][1],t]])),h=Hr(h,[["enter",a,t],["enter",l,t],["exit",l,t],["enter",o,t]]),h=Hr(h,ep(t.parser.constructs.insideSpan.null,e.slice(r+1,n),t)),h=Hr(h,[["exit",o,t],["enter",d,t],["exit",d,t],["exit",a,t]]),e[n][1].end.offset-e[n][1].start.offset?(g=2,h=Hr(h,[["enter",e[n][1],t],["exit",e[n][1],t]])):g=0,jr(e,r-1,n-r+3,h),n=r+h.length-g-2;break}}for(n=-1;++n<e.length;)e[n][1].type==="attentionSequence"&&(e[n][1].type="data");return e}function qP(e,t){const n=this.parser.constructs.attentionMarkers.null,r=this.previous,a=Pl(r);let o;return l;function l(f){return o=f,e.enter("attentionSequence"),d(f)}function d(f){if(f===o)return e.consume(f),d;const h=e.exit("attentionSequence"),g=Pl(f),m=!g||g===2&&a||n.includes(f),y=!a||a===2&&g||n.includes(r);return h._open=!!(o===42?m:m&&(a||!y)),h._close=!!(o===42?y:y&&(g||!m)),t(f)}}function Ik(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}const HP={name:"autolink",tokenize:KP};function KP(e,t,n){let r=0;return a;function a(b){return e.enter("autolink"),e.enter("autolinkMarker"),e.consume(b),e.exit("autolinkMarker"),e.enter("autolinkProtocol"),o}function o(b){return nr(b)?(e.consume(b),l):b===64?n(b):h(b)}function l(b){return b===43||b===45||b===46||Gn(b)?(r=1,d(b)):h(b)}function d(b){return b===58?(e.consume(b),r=0,f):(b===43||b===45||b===46||Gn(b))&&r++<32?(e.consume(b),d):(r=0,h(b))}function f(b){return b===62?(e.exit("autolinkProtocol"),e.enter("autolinkMarker"),e.consume(b),e.exit("autolinkMarker"),e.exit("autolink"),t):b===null||b===32||b===60||mh(b)?n(b):(e.consume(b),f)}function h(b){return b===64?(e.consume(b),g):RP(b)?(e.consume(b),h):n(b)}function g(b){return Gn(b)?m(b):n(b)}function m(b){return b===46?(e.consume(b),r=0,g):b===62?(e.exit("autolinkProtocol").type="autolinkEmail",e.enter("autolinkMarker"),e.consume(b),e.exit("autolinkMarker"),e.exit("autolink"),t):y(b)}function y(b){if((b===45||Gn(b))&&r++<63){const k=b===45?y:m;return e.consume(b),k}return n(b)}}const Zu={partial:!0,tokenize:GP};function GP(e,t,n){return r;function r(o){return gt(o)?Et(e,a,"linePrefix")(o):a(o)}function a(o){return o===null||Je(o)?t(o):n(o)}}const _2={continuation:{tokenize:YP},exit:QP,name:"blockQuote",tokenize:VP};function VP(e,t,n){const r=this;return a;function a(l){if(l===62){const d=r.containerState;return d.open||(e.enter("blockQuote",{_container:!0}),d.open=!0),e.enter("blockQuotePrefix"),e.enter("blockQuoteMarker"),e.consume(l),e.exit("blockQuoteMarker"),o}return n(l)}function o(l){return gt(l)?(e.enter("blockQuotePrefixWhitespace"),e.consume(l),e.exit("blockQuotePrefixWhitespace"),e.exit("blockQuotePrefix"),t):(e.exit("blockQuotePrefix"),t(l))}}function YP(e,t,n){const r=this;return a;function a(l){return gt(l)?Et(e,o,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(l):o(l)}function o(l){return e.attempt(_2,t,n)(l)}}function QP(e){e.exit("blockQuote")}const j2={name:"characterEscape",tokenize:WP};function WP(e,t,n){return r;function r(o){return e.enter("characterEscape"),e.enter("escapeMarker"),e.consume(o),e.exit("escapeMarker"),a}function a(o){return IP(o)?(e.enter("characterEscapeValue"),e.consume(o),e.exit("characterEscapeValue"),e.exit("characterEscape"),t):n(o)}}const C2={name:"characterReference",tokenize:XP};function XP(e,t,n){const r=this;let a=0,o,l;return d;function d(m){return e.enter("characterReference"),e.enter("characterReferenceMarker"),e.consume(m),e.exit("characterReferenceMarker"),f}function f(m){return m===35?(e.enter("characterReferenceMarkerNumeric"),e.consume(m),e.exit("characterReferenceMarkerNumeric"),h):(e.enter("characterReferenceValue"),o=31,l=Gn,g(m))}function h(m){return m===88||m===120?(e.enter("characterReferenceMarkerHexadecimal"),e.consume(m),e.exit("characterReferenceMarkerHexadecimal"),e.enter("characterReferenceValue"),o=6,l=LP,g):(e.enter("characterReferenceValue"),o=7,l=Wy,g(m))}function g(m){if(m===59&&a){const y=e.exit("characterReferenceValue");return l===Gn&&!mx(r.sliceSerialize(y))?n(m):(e.enter("characterReferenceMarker"),e.consume(m),e.exit("characterReferenceMarker"),e.exit("characterReference"),t)}return l(m)&&a++<o?(e.consume(m),g):n(m)}}const zk={partial:!0,tokenize:JP},Pk={concrete:!0,name:"codeFenced",tokenize:ZP};function ZP(e,t,n){const r=this,a={partial:!0,tokenize:O};let o=0,l=0,d;return f;function f(T){return h(T)}function h(T){const I=r.events[r.events.length-1];return o=I&&I[1].type==="linePrefix"?I[2].sliceSerialize(I[1],!0).length:0,d=T,e.enter("codeFenced"),e.enter("codeFencedFence"),e.enter("codeFencedFenceSequence"),g(T)}function g(T){return T===d?(l++,e.consume(T),g):l<3?n(T):(e.exit("codeFencedFenceSequence"),gt(T)?Et(e,m,"whitespace")(T):m(T))}function m(T){return T===null||Je(T)?(e.exit("codeFencedFence"),r.interrupt?t(T):e.check(zk,v,_)(T)):(e.enter("codeFencedFenceInfo"),e.enter("chunkString",{contentType:"string"}),y(T))}function y(T){return T===null||Je(T)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),m(T)):gt(T)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),Et(e,b,"whitespace")(T)):T===96&&T===d?n(T):(e.consume(T),y)}function b(T){return T===null||Je(T)?m(T):(e.enter("codeFencedFenceMeta"),e.enter("chunkString",{contentType:"string"}),k(T))}function k(T){return T===null||Je(T)?(e.exit("chunkString"),e.exit("codeFencedFenceMeta"),m(T)):T===96&&T===d?n(T):(e.consume(T),k)}function v(T){return e.attempt(a,_,S)(T)}function S(T){return e.enter("lineEnding"),e.consume(T),e.exit("lineEnding"),E}function E(T){return o>0&&gt(T)?Et(e,j,"linePrefix",o+1)(T):j(T)}function j(T){return T===null||Je(T)?e.check(zk,v,_)(T):(e.enter("codeFlowValue"),N(T))}function N(T){return T===null||Je(T)?(e.exit("codeFlowValue"),j(T)):(e.consume(T),N)}function _(T){return e.exit("codeFenced"),t(T)}function O(T,I,R){let F=0;return M;function M(H){return T.enter("lineEnding"),T.consume(H),T.exit("lineEnding"),U}function U(H){return T.enter("codeFencedFence"),gt(H)?Et(T,q,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(H):q(H)}function q(H){return H===d?(T.enter("codeFencedFenceSequence"),Y(H)):R(H)}function Y(H){return H===d?(F++,T.consume(H),Y):F>=l?(T.exit("codeFencedFenceSequence"),gt(H)?Et(T,D,"whitespace")(H):D(H)):R(H)}function D(H){return H===null||Je(H)?(T.exit("codeFencedFence"),I(H)):R(H)}}}function JP(e,t,n){const r=this;return a;function a(l){return l===null?n(l):(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),o)}function o(l){return r.parser.lazy[r.now().line]?n(l):t(l)}}const Bg={name:"codeIndented",tokenize:t5},e5={partial:!0,tokenize:n5};function t5(e,t,n){const r=this;return a;function a(h){return e.enter("codeIndented"),Et(e,o,"linePrefix",5)(h)}function o(h){const g=r.events[r.events.length-1];return g&&g[1].type==="linePrefix"&&g[2].sliceSerialize(g[1],!0).length>=4?l(h):n(h)}function l(h){return h===null?f(h):Je(h)?e.attempt(e5,l,f)(h):(e.enter("codeFlowValue"),d(h))}function d(h){return h===null||Je(h)?(e.exit("codeFlowValue"),l(h)):(e.consume(h),d)}function f(h){return e.exit("codeIndented"),t(h)}}function n5(e,t,n){const r=this;return a;function a(l){return r.parser.lazy[r.now().line]?n(l):Je(l)?(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),a):Et(e,o,"linePrefix",5)(l)}function o(l){const d=r.events[r.events.length-1];return d&&d[1].type==="linePrefix"&&d[2].sliceSerialize(d[1],!0).length>=4?t(l):Je(l)?a(l):n(l)}}const r5={name:"codeText",previous:a5,resolve:i5,tokenize:s5};function i5(e){let t=e.length-4,n=3,r,a;if((e[n][1].type==="lineEnding"||e[n][1].type==="space")&&(e[t][1].type==="lineEnding"||e[t][1].type==="space")){for(r=n;++r<t;)if(e[r][1].type==="codeTextData"){e[n][1].type="codeTextPadding",e[t][1].type="codeTextPadding",n+=2,t-=2;break}}for(r=n-1,t++;++r<=t;)a===void 0?r!==t&&e[r][1].type!=="lineEnding"&&(a=r):(r===t||e[r][1].type==="lineEnding")&&(e[a][1].type="codeTextData",r!==a+2&&(e[a][1].end=e[r-1][1].end,e.splice(a+2,r-a-2),t-=r-a-2,r=a+2),a=void 0);return e}function a5(e){return e!==96||this.events[this.events.length-1][1].type==="characterEscape"}function s5(e,t,n){let r=0,a,o;return l;function l(m){return e.enter("codeText"),e.enter("codeTextSequence"),d(m)}function d(m){return m===96?(e.consume(m),r++,d):(e.exit("codeTextSequence"),f(m))}function f(m){return m===null?n(m):m===32?(e.enter("space"),e.consume(m),e.exit("space"),f):m===96?(o=e.enter("codeTextSequence"),a=0,g(m)):Je(m)?(e.enter("lineEnding"),e.consume(m),e.exit("lineEnding"),f):(e.enter("codeTextData"),h(m))}function h(m){return m===null||m===32||m===96||Je(m)?(e.exit("codeTextData"),f(m)):(e.consume(m),h)}function g(m){return m===96?(e.consume(m),a++,g):a===r?(e.exit("codeTextSequence"),e.exit("codeText"),t(m)):(o.type="codeTextData",h(m))}}class o5{constructor(t){this.left=t?[...t]:[],this.right=[]}get(t){if(t<0||t>=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+t+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return t<this.left.length?this.left[t]:this.right[this.right.length-t+this.left.length-1]}get length(){return this.left.length+this.right.length}shift(){return this.setCursor(0),this.right.pop()}slice(t,n){const r=n??Number.POSITIVE_INFINITY;return r<this.left.length?this.left.slice(t,r):t>this.left.length?this.right.slice(this.right.length-r+this.left.length,this.right.length-t+this.left.length).reverse():this.left.slice(t).concat(this.right.slice(this.right.length-r+this.left.length).reverse())}splice(t,n,r){const a=n||0;this.setCursor(Math.trunc(t));const o=this.right.splice(this.right.length-a,Number.POSITIVE_INFINITY);return r&&tu(this.left,r),o.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(t){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(t)}pushMany(t){this.setCursor(Number.POSITIVE_INFINITY),tu(this.left,t)}unshift(t){this.setCursor(0),this.right.push(t)}unshiftMany(t){this.setCursor(0),tu(this.right,t.reverse())}setCursor(t){if(!(t===this.left.length||t>this.left.length&&this.right.length===0||t<0&&this.left.length===0))if(t<this.left.length){const n=this.left.splice(t,Number.POSITIVE_INFINITY);tu(this.right,n.reverse())}else{const n=this.right.splice(this.left.length+this.right.length-t,Number.POSITIVE_INFINITY);tu(this.left,n.reverse())}}}function tu(e,t){let n=0;if(t.length<1e4)e.push(...t);else for(;n<t.length;)e.push(...t.slice(n,n+1e4)),n+=1e4}function A2(e){const t={};let n=-1,r,a,o,l,d,f,h;const g=new o5(e);for(;++n<g.length;){for(;n in t;)n=t[n];if(r=g.get(n),n&&r[1].type==="chunkFlow"&&g.get(n-1)[1].type==="listItemPrefix"&&(f=r[1]._tokenizer.events,o=0,o<f.length&&f[o][1].type==="lineEndingBlank"&&(o+=2),o<f.length&&f[o][1].type==="content"))for(;++o<f.length&&f[o][1].type!=="content";)f[o][1].type==="chunkText"&&(f[o][1]._isInFirstContentOfListItem=!0,o++);if(r[0]==="enter")r[1].contentType&&(Object.assign(t,l5(g,n)),n=t[n],h=!0);else if(r[1]._container){for(o=n,a=void 0;o--;)if(l=g.get(o),l[1].type==="lineEnding"||l[1].type==="lineEndingBlank")l[0]==="enter"&&(a&&(g.get(a)[1].type="lineEndingBlank"),l[1].type="lineEnding",a=o);else if(!(l[1].type==="linePrefix"||l[1].type==="listItemIndent"))break;a&&(r[1].end={...g.get(a)[1].start},d=g.slice(a,n),d.unshift(r),g.splice(a,n-a+1,d))}}return jr(e,0,Number.POSITIVE_INFINITY,g.slice(0)),!h}function l5(e,t){const n=e.get(t)[1],r=e.get(t)[2];let a=t-1;const o=[];let l=n._tokenizer;l||(l=r.parser[n.contentType](n.start),n._contentTypeTextTrailing&&(l._contentTypeTextTrailing=!0));const d=l.events,f=[],h={};let g,m,y=-1,b=n,k=0,v=0;const S=[v];for(;b;){for(;e.get(++a)[1]!==b;);o.push(a),b._tokenizer||(g=r.sliceStream(b),b.next||g.push(null),m&&l.defineSkip(b.start),b._isInFirstContentOfListItem&&(l._gfmTasklistFirstContentOfListItem=!0),l.write(g),b._isInFirstContentOfListItem&&(l._gfmTasklistFirstContentOfListItem=void 0)),m=b,b=b.next}for(b=n;++y<d.length;)d[y][0]==="exit"&&d[y-1][0]==="enter"&&d[y][1].type===d[y-1][1].type&&d[y][1].start.line!==d[y][1].end.line&&(v=y+1,S.push(v),b._tokenizer=void 0,b.previous=void 0,b=b.next);for(l.events=[],b?(b._tokenizer=void 0,b.previous=void 0):S.pop(),y=S.length;y--;){const E=d.slice(S[y],S[y+1]),j=o.pop();f.push([j,j+E.length-1]),e.splice(j,2,E)}for(f.reverse(),y=-1;++y<f.length;)h[k+f[y][0]]=k+f[y][1],k+=f[y][1]-f[y][0]-1;return h}const c5={resolve:d5,tokenize:f5},u5={partial:!0,tokenize:h5};function d5(e){return A2(e),e}function f5(e,t){let n;return r;function r(d){return e.enter("content"),n=e.enter("chunkContent",{contentType:"content"}),a(d)}function a(d){return d===null?o(d):Je(d)?e.check(u5,l,o)(d):(e.consume(d),a)}function o(d){return e.exit("chunkContent"),e.exit("content"),t(d)}function l(d){return e.consume(d),e.exit("chunkContent"),n.next=e.enter("chunkContent",{contentType:"content",previous:n}),n=n.next,a}}function h5(e,t,n){const r=this;return a;function a(l){return e.exit("chunkContent"),e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),Et(e,o,"linePrefix")}function o(l){if(l===null||Je(l))return n(l);const d=r.events[r.events.length-1];return!r.parser.constructs.disable.null.includes("codeIndented")&&d&&d[1].type==="linePrefix"&&d[2].sliceSerialize(d[1],!0).length>=4?t(l):e.interrupt(r.parser.constructs.flow,n,t)(l)}}function T2(e,t,n,r,a,o,l,d,f){const h=f||Number.POSITIVE_INFINITY;let g=0;return m;function m(E){return E===60?(e.enter(r),e.enter(a),e.enter(o),e.consume(E),e.exit(o),y):E===null||E===32||E===41||mh(E)?n(E):(e.enter(r),e.enter(l),e.enter(d),e.enter("chunkString",{contentType:"string"}),v(E))}function y(E){return E===62?(e.enter(o),e.consume(E),e.exit(o),e.exit(a),e.exit(r),t):(e.enter(d),e.enter("chunkString",{contentType:"string"}),b(E))}function b(E){return E===62?(e.exit("chunkString"),e.exit(d),y(E)):E===null||E===60||Je(E)?n(E):(e.consume(E),E===92?k:b)}function k(E){return E===60||E===62||E===92?(e.consume(E),b):b(E)}function v(E){return!g&&(E===null||E===41||Ht(E))?(e.exit("chunkString"),e.exit(d),e.exit(l),e.exit(r),t(E)):g<h&&E===40?(e.consume(E),g++,v):E===41?(e.consume(E),g--,v):E===null||E===32||E===40||mh(E)?n(E):(e.consume(E),E===92?S:v)}function S(E){return E===40||E===41||E===92?(e.consume(E),v):v(E)}}function M2(e,t,n,r,a,o){const l=this;let d=0,f;return h;function h(b){return e.enter(r),e.enter(a),e.consume(b),e.exit(a),e.enter(o),g}function g(b){return d>999||b===null||b===91||b===93&&!f||b===94&&!d&&"_hiddenFootnoteSupport"in l.parser.constructs?n(b):b===93?(e.exit(o),e.enter(a),e.consume(b),e.exit(a),e.exit(r),t):Je(b)?(e.enter("lineEnding"),e.consume(b),e.exit("lineEnding"),g):(e.enter("chunkString",{contentType:"string"}),m(b))}function m(b){return b===null||b===91||b===93||Je(b)||d++>999?(e.exit("chunkString"),g(b)):(e.consume(b),f||(f=!gt(b)),b===92?y:m)}function y(b){return b===91||b===92||b===93?(e.consume(b),d++,m):m(b)}}function D2(e,t,n,r,a,o){let l;return d;function d(y){return y===34||y===39||y===40?(e.enter(r),e.enter(a),e.consume(y),e.exit(a),l=y===40?41:y,f):n(y)}function f(y){return y===l?(e.enter(a),e.consume(y),e.exit(a),e.exit(r),t):(e.enter(o),h(y))}function h(y){return y===l?(e.exit(o),f(l)):y===null?n(y):Je(y)?(e.enter("lineEnding"),e.consume(y),e.exit("lineEnding"),Et(e,h,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),g(y))}function g(y){return y===l||y===null||Je(y)?(e.exit("chunkString"),h(y)):(e.consume(y),y===92?m:g)}function m(y){return y===l||y===92?(e.consume(y),g):g(y)}}function fu(e,t){let n;return r;function r(a){return Je(a)?(e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),n=!0,r):gt(a)?Et(e,r,n?"linePrefix":"lineSuffix")(a):t(a)}}const p5={name:"definition",tokenize:g5},m5={partial:!0,tokenize:y5};function g5(e,t,n){const r=this;let a;return o;function o(b){return e.enter("definition"),l(b)}function l(b){return M2.call(r,e,d,n,"definitionLabel","definitionLabelMarker","definitionLabelString")(b)}function d(b){return a=di(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)),b===58?(e.enter("definitionMarker"),e.consume(b),e.exit("definitionMarker"),f):n(b)}function f(b){return Ht(b)?fu(e,h)(b):h(b)}function h(b){return T2(e,g,n,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(b)}function g(b){return e.attempt(m5,m,m)(b)}function m(b){return gt(b)?Et(e,y,"whitespace")(b):y(b)}function y(b){return b===null||Je(b)?(e.exit("definition"),r.parser.defined.push(a),t(b)):n(b)}}function y5(e,t,n){return r;function r(d){return Ht(d)?fu(e,a)(d):n(d)}function a(d){return D2(e,o,n,"definitionTitle","definitionTitleMarker","definitionTitleString")(d)}function o(d){return gt(d)?Et(e,l,"whitespace")(d):l(d)}function l(d){return d===null||Je(d)?t(d):n(d)}}const b5={name:"hardBreakEscape",tokenize:x5};function x5(e,t,n){return r;function r(o){return e.enter("hardBreakEscape"),e.consume(o),a}function a(o){return Je(o)?(e.exit("hardBreakEscape"),t(o)):n(o)}}const v5={name:"headingAtx",resolve:w5,tokenize:k5};function w5(e,t){let n=e.length-2,r=3,a,o;return e[r][1].type==="whitespace"&&(r+=2),n-2>r&&e[n][1].type==="whitespace"&&(n-=2),e[n][1].type==="atxHeadingSequence"&&(r===n-1||n-4>r&&e[n-2][1].type==="whitespace")&&(n-=r+1===n?2:4),n>r&&(a={type:"atxHeadingText",start:e[r][1].start,end:e[n][1].end},o={type:"chunkText",start:e[r][1].start,end:e[n][1].end,contentType:"text"},jr(e,r,n-r+1,[["enter",a,t],["enter",o,t],["exit",o,t],["exit",a,t]])),e}function k5(e,t,n){let r=0;return a;function a(g){return e.enter("atxHeading"),o(g)}function o(g){return e.enter("atxHeadingSequence"),l(g)}function l(g){return g===35&&r++<6?(e.consume(g),l):g===null||Ht(g)?(e.exit("atxHeadingSequence"),d(g)):n(g)}function d(g){return g===35?(e.enter("atxHeadingSequence"),f(g)):g===null||Je(g)?(e.exit("atxHeading"),t(g)):gt(g)?Et(e,d,"whitespace")(g):(e.enter("atxHeadingText"),h(g))}function f(g){return g===35?(e.consume(g),f):(e.exit("atxHeadingSequence"),d(g))}function h(g){return g===null||g===35||Ht(g)?(e.exit("atxHeadingText"),d(g)):(e.consume(g),h)}}const E5=["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","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],Bk=["pre","script","style","textarea"],S5={concrete:!0,name:"htmlFlow",resolveTo:j5,tokenize:C5},N5={partial:!0,tokenize:T5},_5={partial:!0,tokenize:A5};function j5(e){let t=e.length;for(;t--&&!(e[t][0]==="enter"&&e[t][1].type==="htmlFlow"););return t>1&&e[t-2][1].type==="linePrefix"&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2)),e}function C5(e,t,n){const r=this;let a,o,l,d,f;return h;function h(P){return g(P)}function g(P){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(P),m}function m(P){return P===33?(e.consume(P),y):P===47?(e.consume(P),o=!0,v):P===63?(e.consume(P),a=3,r.interrupt?t:L):nr(P)?(e.consume(P),l=String.fromCharCode(P),S):n(P)}function y(P){return P===45?(e.consume(P),a=2,b):P===91?(e.consume(P),a=5,d=0,k):nr(P)?(e.consume(P),a=4,r.interrupt?t:L):n(P)}function b(P){return P===45?(e.consume(P),r.interrupt?t:L):n(P)}function k(P){const oe="CDATA[";return P===oe.charCodeAt(d++)?(e.consume(P),d===oe.length?r.interrupt?t:q:k):n(P)}function v(P){return nr(P)?(e.consume(P),l=String.fromCharCode(P),S):n(P)}function S(P){if(P===null||P===47||P===62||Ht(P)){const oe=P===47,be=l.toLowerCase();return!oe&&!o&&Bk.includes(be)?(a=1,r.interrupt?t(P):q(P)):E5.includes(l.toLowerCase())?(a=6,oe?(e.consume(P),E):r.interrupt?t(P):q(P)):(a=7,r.interrupt&&!r.parser.lazy[r.now().line]?n(P):o?j(P):N(P))}return P===45||Gn(P)?(e.consume(P),l+=String.fromCharCode(P),S):n(P)}function E(P){return P===62?(e.consume(P),r.interrupt?t:q):n(P)}function j(P){return gt(P)?(e.consume(P),j):M(P)}function N(P){return P===47?(e.consume(P),M):P===58||P===95||nr(P)?(e.consume(P),_):gt(P)?(e.consume(P),N):M(P)}function _(P){return P===45||P===46||P===58||P===95||Gn(P)?(e.consume(P),_):O(P)}function O(P){return P===61?(e.consume(P),T):gt(P)?(e.consume(P),O):N(P)}function T(P){return P===null||P===60||P===61||P===62||P===96?n(P):P===34||P===39?(e.consume(P),f=P,I):gt(P)?(e.consume(P),T):R(P)}function I(P){return P===f?(e.consume(P),f=null,F):P===null||Je(P)?n(P):(e.consume(P),I)}function R(P){return P===null||P===34||P===39||P===47||P===60||P===61||P===62||P===96||Ht(P)?O(P):(e.consume(P),R)}function F(P){return P===47||P===62||gt(P)?N(P):n(P)}function M(P){return P===62?(e.consume(P),U):n(P)}function U(P){return P===null||Je(P)?q(P):gt(P)?(e.consume(P),U):n(P)}function q(P){return P===45&&a===2?(e.consume(P),B):P===60&&a===1?(e.consume(P),V):P===62&&a===4?(e.consume(P),z):P===63&&a===3?(e.consume(P),L):P===93&&a===5?(e.consume(P),K):Je(P)&&(a===6||a===7)?(e.exit("htmlFlowData"),e.check(N5,G,Y)(P)):P===null||Je(P)?(e.exit("htmlFlowData"),Y(P)):(e.consume(P),q)}function Y(P){return e.check(_5,D,G)(P)}function D(P){return e.enter("lineEnding"),e.consume(P),e.exit("lineEnding"),H}function H(P){return P===null||Je(P)?Y(P):(e.enter("htmlFlowData"),q(P))}function B(P){return P===45?(e.consume(P),L):q(P)}function V(P){return P===47?(e.consume(P),l="",Q):q(P)}function Q(P){if(P===62){const oe=l.toLowerCase();return Bk.includes(oe)?(e.consume(P),z):q(P)}return nr(P)&&l.length<8?(e.consume(P),l+=String.fromCharCode(P),Q):q(P)}function K(P){return P===93?(e.consume(P),L):q(P)}function L(P){return P===62?(e.consume(P),z):P===45&&a===2?(e.consume(P),L):q(P)}function z(P){return P===null||Je(P)?(e.exit("htmlFlowData"),G(P)):(e.consume(P),z)}function G(P){return e.exit("htmlFlow"),t(P)}}function A5(e,t,n){const r=this;return a;function a(l){return Je(l)?(e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),o):n(l)}function o(l){return r.parser.lazy[r.now().line]?n(l):t(l)}}function T5(e,t,n){return r;function r(a){return e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),e.attempt(Zu,t,n)}}const M5={name:"htmlText",tokenize:D5};function D5(e,t,n){const r=this;let a,o,l;return d;function d(L){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(L),f}function f(L){return L===33?(e.consume(L),h):L===47?(e.consume(L),O):L===63?(e.consume(L),N):nr(L)?(e.consume(L),R):n(L)}function h(L){return L===45?(e.consume(L),g):L===91?(e.consume(L),o=0,k):nr(L)?(e.consume(L),j):n(L)}function g(L){return L===45?(e.consume(L),b):n(L)}function m(L){return L===null?n(L):L===45?(e.consume(L),y):Je(L)?(l=m,V(L)):(e.consume(L),m)}function y(L){return L===45?(e.consume(L),b):m(L)}function b(L){return L===62?B(L):L===45?y(L):m(L)}function k(L){const z="CDATA[";return L===z.charCodeAt(o++)?(e.consume(L),o===z.length?v:k):n(L)}function v(L){return L===null?n(L):L===93?(e.consume(L),S):Je(L)?(l=v,V(L)):(e.consume(L),v)}function S(L){return L===93?(e.consume(L),E):v(L)}function E(L){return L===62?B(L):L===93?(e.consume(L),E):v(L)}function j(L){return L===null||L===62?B(L):Je(L)?(l=j,V(L)):(e.consume(L),j)}function N(L){return L===null?n(L):L===63?(e.consume(L),_):Je(L)?(l=N,V(L)):(e.consume(L),N)}function _(L){return L===62?B(L):N(L)}function O(L){return nr(L)?(e.consume(L),T):n(L)}function T(L){return L===45||Gn(L)?(e.consume(L),T):I(L)}function I(L){return Je(L)?(l=I,V(L)):gt(L)?(e.consume(L),I):B(L)}function R(L){return L===45||Gn(L)?(e.consume(L),R):L===47||L===62||Ht(L)?F(L):n(L)}function F(L){return L===47?(e.consume(L),B):L===58||L===95||nr(L)?(e.consume(L),M):Je(L)?(l=F,V(L)):gt(L)?(e.consume(L),F):B(L)}function M(L){return L===45||L===46||L===58||L===95||Gn(L)?(e.consume(L),M):U(L)}function U(L){return L===61?(e.consume(L),q):Je(L)?(l=U,V(L)):gt(L)?(e.consume(L),U):F(L)}function q(L){return L===null||L===60||L===61||L===62||L===96?n(L):L===34||L===39?(e.consume(L),a=L,Y):Je(L)?(l=q,V(L)):gt(L)?(e.consume(L),q):(e.consume(L),D)}function Y(L){return L===a?(e.consume(L),a=void 0,H):L===null?n(L):Je(L)?(l=Y,V(L)):(e.consume(L),Y)}function D(L){return L===null||L===34||L===39||L===60||L===61||L===96?n(L):L===47||L===62||Ht(L)?F(L):(e.consume(L),D)}function H(L){return L===47||L===62||Ht(L)?F(L):n(L)}function B(L){return L===62?(e.consume(L),e.exit("htmlTextData"),e.exit("htmlText"),t):n(L)}function V(L){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(L),e.exit("lineEnding"),Q}function Q(L){return gt(L)?Et(e,K,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(L):K(L)}function K(L){return e.enter("htmlTextData"),l(L)}}const gx={name:"labelEnd",resolveAll:I5,resolveTo:z5,tokenize:P5},O5={tokenize:B5},R5={tokenize:U5},L5={tokenize:$5};function I5(e){let t=-1;const n=[];for(;++t<e.length;){const r=e[t][1];if(n.push(e[t]),r.type==="labelImage"||r.type==="labelLink"||r.type==="labelEnd"){const a=r.type==="labelImage"?4:2;r.type="data",t+=a}}return e.length!==n.length&&jr(e,0,e.length,n),e}function z5(e,t){let n=e.length,r=0,a,o,l,d;for(;n--;)if(a=e[n][1],o){if(a.type==="link"||a.type==="labelLink"&&a._inactive)break;e[n][0]==="enter"&&a.type==="labelLink"&&(a._inactive=!0)}else if(l){if(e[n][0]==="enter"&&(a.type==="labelImage"||a.type==="labelLink")&&!a._balanced&&(o=n,a.type!=="labelLink")){r=2;break}}else a.type==="labelEnd"&&(l=n);const f={type:e[o][1].type==="labelLink"?"link":"image",start:{...e[o][1].start},end:{...e[e.length-1][1].end}},h={type:"label",start:{...e[o][1].start},end:{...e[l][1].end}},g={type:"labelText",start:{...e[o+r+2][1].end},end:{...e[l-2][1].start}};return d=[["enter",f,t],["enter",h,t]],d=Hr(d,e.slice(o+1,o+r+3)),d=Hr(d,[["enter",g,t]]),d=Hr(d,ep(t.parser.constructs.insideSpan.null,e.slice(o+r+4,l-3),t)),d=Hr(d,[["exit",g,t],e[l-2],e[l-1],["exit",h,t]]),d=Hr(d,e.slice(l+1)),d=Hr(d,[["exit",f,t]]),jr(e,o,e.length,d),e}function P5(e,t,n){const r=this;let a=r.events.length,o,l;for(;a--;)if((r.events[a][1].type==="labelImage"||r.events[a][1].type==="labelLink")&&!r.events[a][1]._balanced){o=r.events[a][1];break}return d;function d(y){return o?o._inactive?m(y):(l=r.parser.defined.includes(di(r.sliceSerialize({start:o.end,end:r.now()}))),e.enter("labelEnd"),e.enter("labelMarker"),e.consume(y),e.exit("labelMarker"),e.exit("labelEnd"),f):n(y)}function f(y){return y===40?e.attempt(O5,g,l?g:m)(y):y===91?e.attempt(R5,g,l?h:m)(y):l?g(y):m(y)}function h(y){return e.attempt(L5,g,m)(y)}function g(y){return t(y)}function m(y){return o._balanced=!0,n(y)}}function B5(e,t,n){return r;function r(m){return e.enter("resource"),e.enter("resourceMarker"),e.consume(m),e.exit("resourceMarker"),a}function a(m){return Ht(m)?fu(e,o)(m):o(m)}function o(m){return m===41?g(m):T2(e,l,d,"resourceDestination","resourceDestinationLiteral","resourceDestinationLiteralMarker","resourceDestinationRaw","resourceDestinationString",32)(m)}function l(m){return Ht(m)?fu(e,f)(m):g(m)}function d(m){return n(m)}function f(m){return m===34||m===39||m===40?D2(e,h,n,"resourceTitle","resourceTitleMarker","resourceTitleString")(m):g(m)}function h(m){return Ht(m)?fu(e,g)(m):g(m)}function g(m){return m===41?(e.enter("resourceMarker"),e.consume(m),e.exit("resourceMarker"),e.exit("resource"),t):n(m)}}function U5(e,t,n){const r=this;return a;function a(d){return M2.call(r,e,o,l,"reference","referenceMarker","referenceString")(d)}function o(d){return r.parser.defined.includes(di(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)))?t(d):n(d)}function l(d){return n(d)}}function $5(e,t,n){return r;function r(o){return e.enter("reference"),e.enter("referenceMarker"),e.consume(o),e.exit("referenceMarker"),a}function a(o){return o===93?(e.enter("referenceMarker"),e.consume(o),e.exit("referenceMarker"),e.exit("reference"),t):n(o)}}const F5={name:"labelStartImage",resolveAll:gx.resolveAll,tokenize:q5};function q5(e,t,n){const r=this;return a;function a(d){return e.enter("labelImage"),e.enter("labelImageMarker"),e.consume(d),e.exit("labelImageMarker"),o}function o(d){return d===91?(e.enter("labelMarker"),e.consume(d),e.exit("labelMarker"),e.exit("labelImage"),l):n(d)}function l(d){return d===94&&"_hiddenFootnoteSupport"in r.parser.constructs?n(d):t(d)}}const H5={name:"labelStartLink",resolveAll:gx.resolveAll,tokenize:K5};function K5(e,t,n){const r=this;return a;function a(l){return e.enter("labelLink"),e.enter("labelMarker"),e.consume(l),e.exit("labelMarker"),e.exit("labelLink"),o}function o(l){return l===94&&"_hiddenFootnoteSupport"in r.parser.constructs?n(l):t(l)}}const Ug={name:"lineEnding",tokenize:G5};function G5(e,t){return n;function n(r){return e.enter("lineEnding"),e.consume(r),e.exit("lineEnding"),Et(e,t,"linePrefix")}}const Jf={name:"thematicBreak",tokenize:V5};function V5(e,t,n){let r=0,a;return o;function o(h){return e.enter("thematicBreak"),l(h)}function l(h){return a=h,d(h)}function d(h){return h===a?(e.enter("thematicBreakSequence"),f(h)):r>=3&&(h===null||Je(h))?(e.exit("thematicBreak"),t(h)):n(h)}function f(h){return h===a?(e.consume(h),r++,f):(e.exit("thematicBreakSequence"),gt(h)?Et(e,d,"whitespace")(h):d(h))}}const cr={continuation:{tokenize:X5},exit:J5,name:"list",tokenize:W5},Y5={partial:!0,tokenize:eB},Q5={partial:!0,tokenize:Z5};function W5(e,t,n){const r=this,a=r.events[r.events.length-1];let o=a&&a[1].type==="linePrefix"?a[2].sliceSerialize(a[1],!0).length:0,l=0;return d;function d(b){const k=r.containerState.type||(b===42||b===43||b===45?"listUnordered":"listOrdered");if(k==="listUnordered"?!r.containerState.marker||b===r.containerState.marker:Wy(b)){if(r.containerState.type||(r.containerState.type=k,e.enter(k,{_container:!0})),k==="listUnordered")return e.enter("listItemPrefix"),b===42||b===45?e.check(Jf,n,h)(b):h(b);if(!r.interrupt||b===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),f(b)}return n(b)}function f(b){return Wy(b)&&++l<10?(e.consume(b),f):(!r.interrupt||l<2)&&(r.containerState.marker?b===r.containerState.marker:b===41||b===46)?(e.exit("listItemValue"),h(b)):n(b)}function h(b){return e.enter("listItemMarker"),e.consume(b),e.exit("listItemMarker"),r.containerState.marker=r.containerState.marker||b,e.check(Zu,r.interrupt?n:g,e.attempt(Y5,y,m))}function g(b){return r.containerState.initialBlankLine=!0,o++,y(b)}function m(b){return gt(b)?(e.enter("listItemPrefixWhitespace"),e.consume(b),e.exit("listItemPrefixWhitespace"),y):n(b)}function y(b){return r.containerState.size=o+r.sliceSerialize(e.exit("listItemPrefix"),!0).length,t(b)}}function X5(e,t,n){const r=this;return r.containerState._closeFlow=void 0,e.check(Zu,a,o);function a(d){return r.containerState.furtherBlankLines=r.containerState.furtherBlankLines||r.containerState.initialBlankLine,Et(e,t,"listItemIndent",r.containerState.size+1)(d)}function o(d){return r.containerState.furtherBlankLines||!gt(d)?(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,l(d)):(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,e.attempt(Q5,t,l)(d))}function l(d){return r.containerState._closeFlow=!0,r.interrupt=void 0,Et(e,e.attempt(cr,t,n),"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(d)}}function Z5(e,t,n){const r=this;return Et(e,a,"listItemIndent",r.containerState.size+1);function a(o){const l=r.events[r.events.length-1];return l&&l[1].type==="listItemIndent"&&l[2].sliceSerialize(l[1],!0).length===r.containerState.size?t(o):n(o)}}function J5(e){e.exit(this.containerState.type)}function eB(e,t,n){const r=this;return Et(e,a,"listItemPrefixWhitespace",r.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function a(o){const l=r.events[r.events.length-1];return!gt(o)&&l&&l[1].type==="listItemPrefixWhitespace"?t(o):n(o)}}const Uk={name:"setextUnderline",resolveTo:tB,tokenize:nB};function tB(e,t){let n=e.length,r,a,o;for(;n--;)if(e[n][0]==="enter"){if(e[n][1].type==="content"){r=n;break}e[n][1].type==="paragraph"&&(a=n)}else e[n][1].type==="content"&&e.splice(n,1),!o&&e[n][1].type==="definition"&&(o=n);const l={type:"setextHeading",start:{...e[r][1].start},end:{...e[e.length-1][1].end}};return e[a][1].type="setextHeadingText",o?(e.splice(a,0,["enter",l,t]),e.splice(o+1,0,["exit",e[r][1],t]),e[r][1].end={...e[o][1].end}):e[r][1]=l,e.push(["exit",l,t]),e}function nB(e,t,n){const r=this;let a;return o;function o(h){let g=r.events.length,m;for(;g--;)if(r.events[g][1].type!=="lineEnding"&&r.events[g][1].type!=="linePrefix"&&r.events[g][1].type!=="content"){m=r.events[g][1].type==="paragraph";break}return!r.parser.lazy[r.now().line]&&(r.interrupt||m)?(e.enter("setextHeadingLine"),a=h,l(h)):n(h)}function l(h){return e.enter("setextHeadingLineSequence"),d(h)}function d(h){return h===a?(e.consume(h),d):(e.exit("setextHeadingLineSequence"),gt(h)?Et(e,f,"lineSuffix")(h):f(h))}function f(h){return h===null||Je(h)?(e.exit("setextHeadingLine"),t(h)):n(h)}}const rB={tokenize:iB};function iB(e){const t=this,n=e.attempt(Zu,r,e.attempt(this.parser.constructs.flowInitial,a,Et(e,e.attempt(this.parser.constructs.flow,a,e.attempt(c5,a)),"linePrefix")));return n;function r(o){if(o===null){e.consume(o);return}return e.enter("lineEndingBlank"),e.consume(o),e.exit("lineEndingBlank"),t.currentConstruct=void 0,n}function a(o){if(o===null){e.consume(o);return}return e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),t.currentConstruct=void 0,n}}const aB={resolveAll:R2()},sB=O2("string"),oB=O2("text");function O2(e){return{resolveAll:R2(e==="text"?lB:void 0),tokenize:t};function t(n){const r=this,a=this.parser.constructs[e],o=n.attempt(a,l,d);return l;function l(g){return h(g)?o(g):d(g)}function d(g){if(g===null){n.consume(g);return}return n.enter("data"),n.consume(g),f}function f(g){return h(g)?(n.exit("data"),o(g)):(n.consume(g),f)}function h(g){if(g===null)return!0;const m=a[g];let y=-1;if(m)for(;++y<m.length;){const b=m[y];if(!b.previous||b.previous.call(r,r.previous))return!0}return!1}}}function R2(e){return t;function t(n,r){let a=-1,o;for(;++a<=n.length;)o===void 0?n[a]&&n[a][1].type==="data"&&(o=a,a++):(!n[a]||n[a][1].type!=="data")&&(a!==o+2&&(n[o][1].end=n[a-1][1].end,n.splice(o+2,a-o-2),a=o+2),o=void 0);return e?e(n,r):n}}function lB(e,t){let n=0;for(;++n<=e.length;)if((n===e.length||e[n][1].type==="lineEnding")&&e[n-1][1].type==="data"){const r=e[n-1][1],a=t.sliceStream(r);let o=a.length,l=-1,d=0,f;for(;o--;){const h=a[o];if(typeof h=="string"){for(l=h.length;h.charCodeAt(l-1)===32;)d++,l--;if(l)break;l=-1}else if(h===-2)f=!0,d++;else if(h!==-1){o++;break}}if(t._contentTypeTextTrailing&&n===e.length&&(d=0),d){const h={type:n===e.length||f||d<2?"lineSuffix":"hardBreakTrailing",start:{_bufferIndex:o?l:r.start._bufferIndex+l,_index:r.start._index+o,line:r.end.line,column:r.end.column-d,offset:r.end.offset-d},end:{...r.end}};r.end={...h.start},r.start.offset===r.end.offset?Object.assign(r,h):(e.splice(n,0,["enter",h,t],["exit",h,t]),n+=2)}n++}return e}const cB={42:cr,43:cr,45:cr,48:cr,49:cr,50:cr,51:cr,52:cr,53:cr,54:cr,55:cr,56:cr,57:cr,62:_2},uB={91:p5},dB={[-2]:Bg,[-1]:Bg,32:Bg},fB={35:v5,42:Jf,45:[Uk,Jf],60:S5,61:Uk,95:Jf,96:Pk,126:Pk},hB={38:C2,92:j2},pB={[-5]:Ug,[-4]:Ug,[-3]:Ug,33:F5,38:C2,42:Xy,60:[HP,M5],91:H5,92:[b5,j2],93:gx,95:Xy,96:r5},mB={null:[Xy,aB]},gB={null:[42,95]},yB={null:[]},bB=Object.freeze(Object.defineProperty({__proto__:null,attentionMarkers:gB,contentInitial:uB,disable:yB,document:cB,flow:fB,flowInitial:dB,insideSpan:mB,string:hB,text:pB},Symbol.toStringTag,{value:"Module"}));function xB(e,t,n){let r={_bufferIndex:-1,_index:0,line:n&&n.line||1,column:n&&n.column||1,offset:n&&n.offset||0};const a={},o=[];let l=[],d=[];const f={attempt:I(O),check:I(T),consume:j,enter:N,exit:_,interrupt:I(T,{interrupt:!0})},h={code:null,containerState:{},defineSkip:v,events:[],now:k,parser:e,previous:null,sliceSerialize:y,sliceStream:b,write:m};let g=t.tokenize.call(h,f);return t.resolveAll&&o.push(t),h;function m(U){return l=Hr(l,U),S(),l[l.length-1]!==null?[]:(R(t,0),h.events=ep(o,h.events,h),h.events)}function y(U,q){return wB(b(U),q)}function b(U){return vB(l,U)}function k(){const{_bufferIndex:U,_index:q,line:Y,column:D,offset:H}=r;return{_bufferIndex:U,_index:q,line:Y,column:D,offset:H}}function v(U){a[U.line]=U.column,M()}function S(){let U;for(;r._index<l.length;){const q=l[r._index];if(typeof q=="string")for(U=r._index,r._bufferIndex<0&&(r._bufferIndex=0);r._index===U&&r._bufferIndex<q.length;)E(q.charCodeAt(r._bufferIndex));else E(q)}}function E(U){g=g(U)}function j(U){Je(U)?(r.line++,r.column=1,r.offset+=U===-3?2:1,M()):U!==-1&&(r.column++,r.offset++),r._bufferIndex<0?r._index++:(r._bufferIndex++,r._bufferIndex===l[r._index].length&&(r._bufferIndex=-1,r._index++)),h.previous=U}function N(U,q){const Y=q||{};return Y.type=U,Y.start=k(),h.events.push(["enter",Y,h]),d.push(Y),Y}function _(U){const q=d.pop();return q.end=k(),h.events.push(["exit",q,h]),q}function O(U,q){R(U,q.from)}function T(U,q){q.restore()}function I(U,q){return Y;function Y(D,H,B){let V,Q,K,L;return Array.isArray(D)?G(D):"tokenize"in D?G([D]):z(D);function z(xe){return we;function we(J){const de=J!==null&&xe[J],Ce=J!==null&&xe.null,Re=[...Array.isArray(de)?de:de?[de]:[],...Array.isArray(Ce)?Ce:Ce?[Ce]:[]];return G(Re)(J)}}function G(xe){return V=xe,Q=0,xe.length===0?B:P(xe[Q])}function P(xe){return we;function we(J){return L=F(),K=xe,xe.partial||(h.currentConstruct=xe),xe.name&&h.parser.constructs.disable.null.includes(xe.name)?be():xe.tokenize.call(q?Object.assign(Object.create(h),q):h,f,oe,be)(J)}}function oe(xe){return U(K,L),H}function be(xe){return L.restore(),++Q<V.length?P(V[Q]):B}}}function R(U,q){U.resolveAll&&!o.includes(U)&&o.push(U),U.resolve&&jr(h.events,q,h.events.length-q,U.resolve(h.events.slice(q),h)),U.resolveTo&&(h.events=U.resolveTo(h.events,h))}function F(){const U=k(),q=h.previous,Y=h.currentConstruct,D=h.events.length,H=Array.from(d);return{from:D,restore:B};function B(){r=U,h.previous=q,h.currentConstruct=Y,h.events.length=D,d=H,M()}}function M(){r.line in a&&r.column<2&&(r.column=a[r.line],r.offset+=a[r.line]-1)}}function vB(e,t){const n=t.start._index,r=t.start._bufferIndex,a=t.end._index,o=t.end._bufferIndex;let l;if(n===a)l=[e[n].slice(r,o)];else{if(l=e.slice(n,a),r>-1){const d=l[0];typeof d=="string"?l[0]=d.slice(r):l.shift()}o>0&&l.push(e[a].slice(0,o))}return l}function wB(e,t){let n=-1;const r=[];let a;for(;++n<e.length;){const o=e[n];let l;if(typeof o=="string")l=o;else switch(o){case-5:{l="\r";break}case-4:{l=`
603
+ `;break}case-3:{l=`\r
604
+ `;break}case-2:{l=t?" ":" ";break}case-1:{if(!t&&a)continue;l=" ";break}default:l=String.fromCharCode(o)}a=o===-2,r.push(l)}return r.join("")}function kB(e){const r={constructs:S2([bB,...(e||{}).extensions||[]]),content:a(zP),defined:[],document:a(BP),flow:a(rB),lazy:{},string:a(sB),text:a(oB)};return r;function a(o){return l;function l(d){return xB(r,o,d)}}}function EB(e){for(;!A2(e););return e}const $k=/[\0\t\n\r]/g;function SB(){let e=1,t="",n=!0,r;return a;function a(o,l,d){const f=[];let h,g,m,y,b;for(o=t+(typeof o=="string"?o.toString():new TextDecoder(l||void 0).decode(o)),m=0,t="",n&&(o.charCodeAt(0)===65279&&m++,n=void 0);m<o.length;){if($k.lastIndex=m,h=$k.exec(o),y=h&&h.index!==void 0?h.index:o.length,b=o.charCodeAt(y),!h){t=o.slice(m);break}if(b===10&&m===y&&r)f.push(-3),r=void 0;else switch(r&&(f.push(-5),r=void 0),m<y&&(f.push(o.slice(m,y)),e+=y-m),b){case 0:{f.push(65533),e++;break}case 9:{for(g=Math.ceil(e/4)*4,f.push(-2);e++<g;)f.push(-1);break}case 10:{f.push(-4),e=1;break}default:r=!0,e=1}m=y+1}return d&&(r&&f.push(-5),t&&f.push(t),f.push(null)),f}}const NB=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function _B(e){return e.replace(NB,jB)}function jB(e,t,n){if(t)return t;if(n.charCodeAt(0)===35){const a=n.charCodeAt(1),o=a===120||a===88;return N2(n.slice(o?2:1),o?16:10)}return mx(n)||e}const L2={}.hasOwnProperty;function CB(e,t,n){return t&&typeof t=="object"&&(n=t,t=void 0),AB(n)(EB(kB(n).document().write(SB()(e,t,!0))))}function AB(e){const t={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:o(Ae),autolinkProtocol:F,autolinkEmail:F,atxHeading:o(Te),blockQuote:o(Ce),characterEscape:F,characterReference:F,codeFenced:o(Re),codeFencedFenceInfo:l,codeFencedFenceMeta:l,codeIndented:o(Re,l),codeText:o(Me,l),codeTextData:F,data:F,codeFlowValue:F,definition:o(le),definitionDestinationString:l,definitionLabelString:l,definitionTitleString:l,emphasis:o(Ne),hardBreakEscape:o(ke),hardBreakTrailing:o(ke),htmlFlow:o(Qe,l),htmlFlowData:F,htmlText:o(Qe,l),htmlTextData:F,image:o(re),label:l,link:o(Ae),listItem:o(he),listItemValue:y,listOrdered:o(ue,m),listUnordered:o(ue),paragraph:o(ge),reference:P,referenceString:l,resourceDestinationString:l,resourceTitleString:l,setextHeading:o(Te),strong:o(Le),thematicBreak:o(Fe)},exit:{atxHeading:f(),atxHeadingSequence:O,autolink:f(),autolinkEmail:de,autolinkProtocol:J,blockQuote:f(),characterEscapeValue:M,characterReferenceMarkerHexadecimal:be,characterReferenceMarkerNumeric:be,characterReferenceValue:xe,characterReference:we,codeFenced:f(S),codeFencedFence:v,codeFencedFenceInfo:b,codeFencedFenceMeta:k,codeFlowValue:M,codeIndented:f(E),codeText:f(H),codeTextData:M,data:M,definition:f(),definitionDestinationString:_,definitionLabelString:j,definitionTitleString:N,emphasis:f(),hardBreakEscape:f(q),hardBreakTrailing:f(q),htmlFlow:f(Y),htmlFlowData:M,htmlText:f(D),htmlTextData:M,image:f(V),label:K,labelText:Q,lineEnding:U,link:f(B),listItem:f(),listOrdered:f(),listUnordered:f(),paragraph:f(),referenceString:oe,resourceDestinationString:L,resourceTitleString:z,resource:G,setextHeading:f(R),setextHeadingLineSequence:I,setextHeadingText:T,strong:f(),thematicBreak:f()}};I2(t,(e||{}).mdastExtensions||[]);const n={};return r;function r(te){let ve={type:"root",children:[]};const Ie={stack:[ve],tokenStack:[],config:t,enter:d,exit:h,buffer:l,resume:g,data:n},Ze=[];let it=-1;for(;++it<te.length;)if(te[it][1].type==="listOrdered"||te[it][1].type==="listUnordered")if(te[it][0]==="enter")Ze.push(it);else{const At=Ze.pop();it=a(te,At,it)}for(it=-1;++it<te.length;){const At=t[te[it][0]];L2.call(At,te[it][1].type)&&At[te[it][1].type].call(Object.assign({sliceSerialize:te[it][2].sliceSerialize},Ie),te[it][1])}if(Ie.tokenStack.length>0){const At=Ie.tokenStack[Ie.tokenStack.length-1];(At[1]||Fk).call(Ie,void 0,At[0])}for(ve.position={start:ts(te.length>0?te[0][1].start:{line:1,column:1,offset:0}),end:ts(te.length>0?te[te.length-2][1].end:{line:1,column:1,offset:0})},it=-1;++it<t.transforms.length;)ve=t.transforms[it](ve)||ve;return ve}function a(te,ve,Ie){let Ze=ve-1,it=-1,At=!1,Un,un,Mt,Qt;for(;++Ze<=Ie;){const yt=te[Ze];switch(yt[1].type){case"listUnordered":case"listOrdered":case"blockQuote":{yt[0]==="enter"?it++:it--,Qt=void 0;break}case"lineEndingBlank":{yt[0]==="enter"&&(Un&&!Qt&&!it&&!Mt&&(Mt=Ze),Qt=void 0);break}case"linePrefix":case"listItemValue":case"listItemMarker":case"listItemPrefix":case"listItemPrefixWhitespace":break;default:Qt=void 0}if(!it&&yt[0]==="enter"&&yt[1].type==="listItemPrefix"||it===-1&&yt[0]==="exit"&&(yt[1].type==="listUnordered"||yt[1].type==="listOrdered")){if(Un){let Tr=Ze;for(un=void 0;Tr--;){const Rn=te[Tr];if(Rn[1].type==="lineEnding"||Rn[1].type==="lineEndingBlank"){if(Rn[0]==="exit")continue;un&&(te[un][1].type="lineEndingBlank",At=!0),Rn[1].type="lineEnding",un=Tr}else if(!(Rn[1].type==="linePrefix"||Rn[1].type==="blockQuotePrefix"||Rn[1].type==="blockQuotePrefixWhitespace"||Rn[1].type==="blockQuoteMarker"||Rn[1].type==="listItemIndent"))break}Mt&&(!un||Mt<un)&&(Un._spread=!0),Un.end=Object.assign({},un?te[un][1].start:yt[1].end),te.splice(un||Ze,0,["exit",Un,yt[2]]),Ze++,Ie++}if(yt[1].type==="listItemPrefix"){const Tr={type:"listItem",_spread:!1,start:Object.assign({},yt[1].start),end:void 0};Un=Tr,te.splice(Ze,0,["enter",Tr,yt[2]]),Ze++,Ie++,Mt=void 0,Qt=!0}}}return te[ve][1]._spread=At,Ie}function o(te,ve){return Ie;function Ie(Ze){d.call(this,te(Ze),Ze),ve&&ve.call(this,Ze)}}function l(){this.stack.push({type:"fragment",children:[]})}function d(te,ve,Ie){this.stack[this.stack.length-1].children.push(te),this.stack.push(te),this.tokenStack.push([ve,Ie||void 0]),te.position={start:ts(ve.start),end:void 0}}function f(te){return ve;function ve(Ie){te&&te.call(this,Ie),h.call(this,Ie)}}function h(te,ve){const Ie=this.stack.pop(),Ze=this.tokenStack.pop();if(Ze)Ze[0].type!==te.type&&(ve?ve.call(this,te,Ze[0]):(Ze[1]||Fk).call(this,te,Ze[0]));else throw new Error("Cannot close `"+te.type+"` ("+du({start:te.start,end:te.end})+"): it’s not open");Ie.position.end=ts(te.end)}function g(){return px(this.stack.pop())}function m(){this.data.expectingFirstListItemValue=!0}function y(te){if(this.data.expectingFirstListItemValue){const ve=this.stack[this.stack.length-2];ve.start=Number.parseInt(this.sliceSerialize(te),10),this.data.expectingFirstListItemValue=void 0}}function b(){const te=this.resume(),ve=this.stack[this.stack.length-1];ve.lang=te}function k(){const te=this.resume(),ve=this.stack[this.stack.length-1];ve.meta=te}function v(){this.data.flowCodeInside||(this.buffer(),this.data.flowCodeInside=!0)}function S(){const te=this.resume(),ve=this.stack[this.stack.length-1];ve.value=te.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g,""),this.data.flowCodeInside=void 0}function E(){const te=this.resume(),ve=this.stack[this.stack.length-1];ve.value=te.replace(/(\r?\n|\r)$/g,"")}function j(te){const ve=this.resume(),Ie=this.stack[this.stack.length-1];Ie.label=ve,Ie.identifier=di(this.sliceSerialize(te)).toLowerCase()}function N(){const te=this.resume(),ve=this.stack[this.stack.length-1];ve.title=te}function _(){const te=this.resume(),ve=this.stack[this.stack.length-1];ve.url=te}function O(te){const ve=this.stack[this.stack.length-1];if(!ve.depth){const Ie=this.sliceSerialize(te).length;ve.depth=Ie}}function T(){this.data.setextHeadingSlurpLineEnding=!0}function I(te){const ve=this.stack[this.stack.length-1];ve.depth=this.sliceSerialize(te).codePointAt(0)===61?1:2}function R(){this.data.setextHeadingSlurpLineEnding=void 0}function F(te){const Ie=this.stack[this.stack.length-1].children;let Ze=Ie[Ie.length-1];(!Ze||Ze.type!=="text")&&(Ze=ze(),Ze.position={start:ts(te.start),end:void 0},Ie.push(Ze)),this.stack.push(Ze)}function M(te){const ve=this.stack.pop();ve.value+=this.sliceSerialize(te),ve.position.end=ts(te.end)}function U(te){const ve=this.stack[this.stack.length-1];if(this.data.atHardBreak){const Ie=ve.children[ve.children.length-1];Ie.position.end=ts(te.end),this.data.atHardBreak=void 0;return}!this.data.setextHeadingSlurpLineEnding&&t.canContainEols.includes(ve.type)&&(F.call(this,te),M.call(this,te))}function q(){this.data.atHardBreak=!0}function Y(){const te=this.resume(),ve=this.stack[this.stack.length-1];ve.value=te}function D(){const te=this.resume(),ve=this.stack[this.stack.length-1];ve.value=te}function H(){const te=this.resume(),ve=this.stack[this.stack.length-1];ve.value=te}function B(){const te=this.stack[this.stack.length-1];if(this.data.inReference){const ve=this.data.referenceType||"shortcut";te.type+="Reference",te.referenceType=ve,delete te.url,delete te.title}else delete te.identifier,delete te.label;this.data.referenceType=void 0}function V(){const te=this.stack[this.stack.length-1];if(this.data.inReference){const ve=this.data.referenceType||"shortcut";te.type+="Reference",te.referenceType=ve,delete te.url,delete te.title}else delete te.identifier,delete te.label;this.data.referenceType=void 0}function Q(te){const ve=this.sliceSerialize(te),Ie=this.stack[this.stack.length-2];Ie.label=_B(ve),Ie.identifier=di(ve).toLowerCase()}function K(){const te=this.stack[this.stack.length-1],ve=this.resume(),Ie=this.stack[this.stack.length-1];if(this.data.inReference=!0,Ie.type==="link"){const Ze=te.children;Ie.children=Ze}else Ie.alt=ve}function L(){const te=this.resume(),ve=this.stack[this.stack.length-1];ve.url=te}function z(){const te=this.resume(),ve=this.stack[this.stack.length-1];ve.title=te}function G(){this.data.inReference=void 0}function P(){this.data.referenceType="collapsed"}function oe(te){const ve=this.resume(),Ie=this.stack[this.stack.length-1];Ie.label=ve,Ie.identifier=di(this.sliceSerialize(te)).toLowerCase(),this.data.referenceType="full"}function be(te){this.data.characterReferenceType=te.type}function xe(te){const ve=this.sliceSerialize(te),Ie=this.data.characterReferenceType;let Ze;Ie?(Ze=N2(ve,Ie==="characterReferenceMarkerNumeric"?10:16),this.data.characterReferenceType=void 0):Ze=mx(ve);const it=this.stack[this.stack.length-1];it.value+=Ze}function we(te){const ve=this.stack.pop();ve.position.end=ts(te.end)}function J(te){M.call(this,te);const ve=this.stack[this.stack.length-1];ve.url=this.sliceSerialize(te)}function de(te){M.call(this,te);const ve=this.stack[this.stack.length-1];ve.url="mailto:"+this.sliceSerialize(te)}function Ce(){return{type:"blockquote",children:[]}}function Re(){return{type:"code",lang:null,meta:null,value:""}}function Me(){return{type:"inlineCode",value:""}}function le(){return{type:"definition",identifier:"",label:null,title:null,url:""}}function Ne(){return{type:"emphasis",children:[]}}function Te(){return{type:"heading",depth:0,children:[]}}function ke(){return{type:"break"}}function Qe(){return{type:"html",value:""}}function re(){return{type:"image",title:null,url:"",alt:null}}function Ae(){return{type:"link",title:null,url:"",children:[]}}function ue(te){return{type:"list",ordered:te.type==="listOrdered",start:null,spread:te._spread,children:[]}}function he(te){return{type:"listItem",spread:te._spread,checked:null,children:[]}}function ge(){return{type:"paragraph",children:[]}}function Le(){return{type:"strong",children:[]}}function ze(){return{type:"text",value:""}}function Fe(){return{type:"thematicBreak"}}}function ts(e){return{line:e.line,column:e.column,offset:e.offset}}function I2(e,t){let n=-1;for(;++n<t.length;){const r=t[n];Array.isArray(r)?I2(e,r):TB(e,r)}}function TB(e,t){let n;for(n in t)if(L2.call(t,n))switch(n){case"canContainEols":{const r=t[n];r&&e[n].push(...r);break}case"transforms":{const r=t[n];r&&e[n].push(...r);break}case"enter":case"exit":{const r=t[n];r&&Object.assign(e[n],r);break}}}function Fk(e,t){throw e?new Error("Cannot close `"+e.type+"` ("+du({start:e.start,end:e.end})+"): a different token (`"+t.type+"`, "+du({start:t.start,end:t.end})+") is open"):new Error("Cannot close document, a token (`"+t.type+"`, "+du({start:t.start,end:t.end})+") is still open")}function MB(e){const t=this;t.parser=n;function n(r){return CB(r,{...t.data("settings"),...e,extensions:t.data("micromarkExtensions")||[],mdastExtensions:t.data("fromMarkdownExtensions")||[]})}}function DB(e,t){const n={type:"element",tagName:"blockquote",properties:{},children:e.wrap(e.all(t),!0)};return e.patch(t,n),e.applyData(t,n)}function OB(e,t){const n={type:"element",tagName:"br",properties:{},children:[]};return e.patch(t,n),[e.applyData(t,n),{type:"text",value:`
605
+ `}]}function RB(e,t){const n=t.value?t.value+`
606
+ `:"",r={},a=t.lang?t.lang.split(/\s+/):[];a.length>0&&(r.className=["language-"+a[0]]);let o={type:"element",tagName:"code",properties:r,children:[{type:"text",value:n}]};return t.meta&&(o.data={meta:t.meta}),e.patch(t,o),o=e.applyData(t,o),o={type:"element",tagName:"pre",properties:{},children:[o]},e.patch(t,o),o}function LB(e,t){const n={type:"element",tagName:"del",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function IB(e,t){const n={type:"element",tagName:"em",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function zB(e,t){const n=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",r=String(t.identifier).toUpperCase(),a=ac(r.toLowerCase()),o=e.footnoteOrder.indexOf(r);let l,d=e.footnoteCounts.get(r);d===void 0?(d=0,e.footnoteOrder.push(r),l=e.footnoteOrder.length):l=o+1,d+=1,e.footnoteCounts.set(r,d);const f={type:"element",tagName:"a",properties:{href:"#"+n+"fn-"+a,id:n+"fnref-"+a+(d>1?"-"+d:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(l)}]};e.patch(t,f);const h={type:"element",tagName:"sup",properties:{},children:[f]};return e.patch(t,h),e.applyData(t,h)}function PB(e,t){const n={type:"element",tagName:"h"+t.depth,properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function BB(e,t){if(e.options.allowDangerousHtml){const n={type:"raw",value:t.value};return e.patch(t,n),e.applyData(t,n)}}function z2(e,t){const n=t.referenceType;let r="]";if(n==="collapsed"?r+="[]":n==="full"&&(r+="["+(t.label||t.identifier)+"]"),t.type==="imageReference")return[{type:"text",value:"!["+t.alt+r}];const a=e.all(t),o=a[0];o&&o.type==="text"?o.value="["+o.value:a.unshift({type:"text",value:"["});const l=a[a.length-1];return l&&l.type==="text"?l.value+=r:a.push({type:"text",value:r}),a}function UB(e,t){const n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return z2(e,t);const a={src:ac(r.url||""),alt:t.alt};r.title!==null&&r.title!==void 0&&(a.title=r.title);const o={type:"element",tagName:"img",properties:a,children:[]};return e.patch(t,o),e.applyData(t,o)}function $B(e,t){const n={src:ac(t.url)};t.alt!==null&&t.alt!==void 0&&(n.alt=t.alt),t.title!==null&&t.title!==void 0&&(n.title=t.title);const r={type:"element",tagName:"img",properties:n,children:[]};return e.patch(t,r),e.applyData(t,r)}function FB(e,t){const n={type:"text",value:t.value.replace(/\r?\n|\r/g," ")};e.patch(t,n);const r={type:"element",tagName:"code",properties:{},children:[n]};return e.patch(t,r),e.applyData(t,r)}function qB(e,t){const n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return z2(e,t);const a={href:ac(r.url||"")};r.title!==null&&r.title!==void 0&&(a.title=r.title);const o={type:"element",tagName:"a",properties:a,children:e.all(t)};return e.patch(t,o),e.applyData(t,o)}function HB(e,t){const n={href:ac(t.url)};t.title!==null&&t.title!==void 0&&(n.title=t.title);const r={type:"element",tagName:"a",properties:n,children:e.all(t)};return e.patch(t,r),e.applyData(t,r)}function KB(e,t,n){const r=e.all(t),a=n?GB(n):P2(t),o={},l=[];if(typeof t.checked=="boolean"){const g=r[0];let m;g&&g.type==="element"&&g.tagName==="p"?m=g:(m={type:"element",tagName:"p",properties:{},children:[]},r.unshift(m)),m.children.length>0&&m.children.unshift({type:"text",value:" "}),m.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:t.checked,disabled:!0},children:[]}),o.className=["task-list-item"]}let d=-1;for(;++d<r.length;){const g=r[d];(a||d!==0||g.type!=="element"||g.tagName!=="p")&&l.push({type:"text",value:`
607
+ `}),g.type==="element"&&g.tagName==="p"&&!a?l.push(...g.children):l.push(g)}const f=r[r.length-1];f&&(a||f.type!=="element"||f.tagName!=="p")&&l.push({type:"text",value:`
608
+ `});const h={type:"element",tagName:"li",properties:o,children:l};return e.patch(t,h),e.applyData(t,h)}function GB(e){let t=!1;if(e.type==="list"){t=e.spread||!1;const n=e.children;let r=-1;for(;!t&&++r<n.length;)t=P2(n[r])}return t}function P2(e){const t=e.spread;return t??e.children.length>1}function VB(e,t){const n={},r=e.all(t);let a=-1;for(typeof t.start=="number"&&t.start!==1&&(n.start=t.start);++a<r.length;){const l=r[a];if(l.type==="element"&&l.tagName==="li"&&l.properties&&Array.isArray(l.properties.className)&&l.properties.className.includes("task-list-item")){n.className=["contains-task-list"];break}}const o={type:"element",tagName:t.ordered?"ol":"ul",properties:n,children:e.wrap(r,!0)};return e.patch(t,o),e.applyData(t,o)}function YB(e,t){const n={type:"element",tagName:"p",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function QB(e,t){const n={type:"root",children:e.wrap(e.all(t))};return e.patch(t,n),e.applyData(t,n)}function WB(e,t){const n={type:"element",tagName:"strong",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function XB(e,t){const n=e.all(t),r=n.shift(),a=[];if(r){const l={type:"element",tagName:"thead",properties:{},children:e.wrap([r],!0)};e.patch(t.children[0],l),a.push(l)}if(n.length>0){const l={type:"element",tagName:"tbody",properties:{},children:e.wrap(n,!0)},d=ux(t.children[1]),f=y2(t.children[t.children.length-1]);d&&f&&(l.position={start:d,end:f}),a.push(l)}const o={type:"element",tagName:"table",properties:{},children:e.wrap(a,!0)};return e.patch(t,o),e.applyData(t,o)}function ZB(e,t,n){const r=n?n.children:void 0,o=(r?r.indexOf(t):1)===0?"th":"td",l=n&&n.type==="table"?n.align:void 0,d=l?l.length:t.children.length;let f=-1;const h=[];for(;++f<d;){const m=t.children[f],y={},b=l?l[f]:void 0;b&&(y.align=b);let k={type:"element",tagName:o,properties:y,children:[]};m&&(k.children=e.all(m),e.patch(m,k),k=e.applyData(m,k)),h.push(k)}const g={type:"element",tagName:"tr",properties:{},children:e.wrap(h,!0)};return e.patch(t,g),e.applyData(t,g)}function JB(e,t){const n={type:"element",tagName:"td",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}const qk=9,Hk=32;function e6(e){const t=String(e),n=/\r?\n|\r/g;let r=n.exec(t),a=0;const o=[];for(;r;)o.push(Kk(t.slice(a,r.index),a>0,!0),r[0]),a=r.index+r[0].length,r=n.exec(t);return o.push(Kk(t.slice(a),a>0,!1)),o.join("")}function Kk(e,t,n){let r=0,a=e.length;if(t){let o=e.codePointAt(r);for(;o===qk||o===Hk;)r++,o=e.codePointAt(r)}if(n){let o=e.codePointAt(a-1);for(;o===qk||o===Hk;)a--,o=e.codePointAt(a-1)}return a>r?e.slice(r,a):""}function t6(e,t){const n={type:"text",value:e6(String(t.value))};return e.patch(t,n),e.applyData(t,n)}function n6(e,t){const n={type:"element",tagName:"hr",properties:{},children:[]};return e.patch(t,n),e.applyData(t,n)}const r6={blockquote:DB,break:OB,code:RB,delete:LB,emphasis:IB,footnoteReference:zB,heading:PB,html:BB,imageReference:UB,image:$B,inlineCode:FB,linkReference:qB,link:HB,listItem:KB,list:VB,paragraph:YB,root:QB,strong:WB,table:XB,tableCell:JB,tableRow:ZB,text:t6,thematicBreak:n6,toml:Cf,yaml:Cf,definition:Cf,footnoteDefinition:Cf};function Cf(){}const B2=-1,tp=0,hu=1,gh=2,yx=3,bx=4,xx=5,vx=6,U2=7,$2=8,Gk=typeof self=="object"?self:globalThis,i6=(e,t)=>{const n=(a,o)=>(e.set(o,a),a),r=a=>{if(e.has(a))return e.get(a);const[o,l]=t[a];switch(o){case tp:case B2:return n(l,a);case hu:{const d=n([],a);for(const f of l)d.push(r(f));return d}case gh:{const d=n({},a);for(const[f,h]of l)d[r(f)]=r(h);return d}case yx:return n(new Date(l),a);case bx:{const{source:d,flags:f}=l;return n(new RegExp(d,f),a)}case xx:{const d=n(new Map,a);for(const[f,h]of l)d.set(r(f),r(h));return d}case vx:{const d=n(new Set,a);for(const f of l)d.add(r(f));return d}case U2:{const{name:d,message:f}=l;return n(new Gk[d](f),a)}case $2:return n(BigInt(l),a);case"BigInt":return n(Object(BigInt(l)),a);case"ArrayBuffer":return n(new Uint8Array(l).buffer,l);case"DataView":{const{buffer:d}=new Uint8Array(l);return n(new DataView(d),l)}}return n(new Gk[o](l),a)};return r},Vk=e=>i6(new Map,e)(0),sl="",{toString:a6}={},{keys:s6}=Object,nu=e=>{const t=typeof e;if(t!=="object"||!e)return[tp,t];const n=a6.call(e).slice(8,-1);switch(n){case"Array":return[hu,sl];case"Object":return[gh,sl];case"Date":return[yx,sl];case"RegExp":return[bx,sl];case"Map":return[xx,sl];case"Set":return[vx,sl];case"DataView":return[hu,n]}return n.includes("Array")?[hu,n]:n.includes("Error")?[U2,n]:[gh,n]},Af=([e,t])=>e===tp&&(t==="function"||t==="symbol"),o6=(e,t,n,r)=>{const a=(l,d)=>{const f=r.push(l)-1;return n.set(d,f),f},o=l=>{if(n.has(l))return n.get(l);let[d,f]=nu(l);switch(d){case tp:{let g=l;switch(f){case"bigint":d=$2,g=l.toString();break;case"function":case"symbol":if(e)throw new TypeError("unable to serialize "+f);g=null;break;case"undefined":return a([B2],l)}return a([d,g],l)}case hu:{if(f){let y=l;return f==="DataView"?y=new Uint8Array(l.buffer):f==="ArrayBuffer"&&(y=new Uint8Array(l)),a([f,[...y]],l)}const g=[],m=a([d,g],l);for(const y of l)g.push(o(y));return m}case gh:{if(f)switch(f){case"BigInt":return a([f,l.toString()],l);case"Boolean":case"Number":case"String":return a([f,l.valueOf()],l)}if(t&&"toJSON"in l)return o(l.toJSON());const g=[],m=a([d,g],l);for(const y of s6(l))(e||!Af(nu(l[y])))&&g.push([o(y),o(l[y])]);return m}case yx:return a([d,l.toISOString()],l);case bx:{const{source:g,flags:m}=l;return a([d,{source:g,flags:m}],l)}case xx:{const g=[],m=a([d,g],l);for(const[y,b]of l)(e||!(Af(nu(y))||Af(nu(b))))&&g.push([o(y),o(b)]);return m}case vx:{const g=[],m=a([d,g],l);for(const y of l)(e||!Af(nu(y)))&&g.push(o(y));return m}}const{message:h}=l;return a([d,{name:f,message:h}],l)};return o},Yk=(e,{json:t,lossy:n}={})=>{const r=[];return o6(!(t||n),!!t,new Map,r)(e),r},yh=typeof structuredClone=="function"?(e,t)=>t&&("json"in t||"lossy"in t)?Vk(Yk(e,t)):structuredClone(e):(e,t)=>Vk(Yk(e,t));function l6(e,t){const n=[{type:"text",value:"↩"}];return t>1&&n.push({type:"element",tagName:"sup",properties:{},children:[{type:"text",value:String(t)}]}),n}function c6(e,t){return"Back to reference "+(e+1)+(t>1?"-"+t:"")}function u6(e){const t=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",n=e.options.footnoteBackContent||l6,r=e.options.footnoteBackLabel||c6,a=e.options.footnoteLabel||"Footnotes",o=e.options.footnoteLabelTagName||"h2",l=e.options.footnoteLabelProperties||{className:["sr-only"]},d=[];let f=-1;for(;++f<e.footnoteOrder.length;){const h=e.footnoteById.get(e.footnoteOrder[f]);if(!h)continue;const g=e.all(h),m=String(h.identifier).toUpperCase(),y=ac(m.toLowerCase());let b=0;const k=[],v=e.footnoteCounts.get(m);for(;v!==void 0&&++b<=v;){k.length>0&&k.push({type:"text",value:" "});let j=typeof n=="string"?n:n(f,b);typeof j=="string"&&(j={type:"text",value:j}),k.push({type:"element",tagName:"a",properties:{href:"#"+t+"fnref-"+y+(b>1?"-"+b:""),dataFootnoteBackref:"",ariaLabel:typeof r=="string"?r:r(f,b),className:["data-footnote-backref"]},children:Array.isArray(j)?j:[j]})}const S=g[g.length-1];if(S&&S.type==="element"&&S.tagName==="p"){const j=S.children[S.children.length-1];j&&j.type==="text"?j.value+=" ":S.children.push({type:"text",value:" "}),S.children.push(...k)}else g.push(...k);const E={type:"element",tagName:"li",properties:{id:t+"fn-"+y},children:e.wrap(g,!0)};e.patch(h,E),d.push(E)}if(d.length!==0)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:o,properties:{...yh(l),id:"footnote-label"},children:[{type:"text",value:a}]},{type:"text",value:`
609
+ `},{type:"element",tagName:"ol",properties:{},children:e.wrap(d,!0)},{type:"text",value:`
610
+ `}]}}const Ju=(function(e){if(e==null)return p6;if(typeof e=="function")return np(e);if(typeof e=="object")return Array.isArray(e)?d6(e):f6(e);if(typeof e=="string")return h6(e);throw new Error("Expected function, string, or object as test")});function d6(e){const t=[];let n=-1;for(;++n<e.length;)t[n]=Ju(e[n]);return np(r);function r(...a){let o=-1;for(;++o<t.length;)if(t[o].apply(this,a))return!0;return!1}}function f6(e){const t=e;return np(n);function n(r){const a=r;let o;for(o in e)if(a[o]!==t[o])return!1;return!0}}function h6(e){return np(t);function t(n){return n&&n.type===e}}function np(e){return t;function t(n,r,a){return!!(m6(n)&&e.call(this,n,typeof r=="number"?r:void 0,a||void 0))}}function p6(){return!0}function m6(e){return e!==null&&typeof e=="object"&&"type"in e}const F2=[],g6=!0,Zy=!1,y6="skip";function q2(e,t,n,r){let a;typeof t=="function"&&typeof n!="function"?(r=n,n=t):a=t;const o=Ju(a),l=r?-1:1;d(e,void 0,[])();function d(f,h,g){const m=f&&typeof f=="object"?f:{};if(typeof m.type=="string"){const b=typeof m.tagName=="string"?m.tagName:typeof m.name=="string"?m.name:void 0;Object.defineProperty(y,"name",{value:"node ("+(f.type+(b?"<"+b+">":""))+")"})}return y;function y(){let b=F2,k,v,S;if((!t||o(f,h,g[g.length-1]||void 0))&&(b=b6(n(f,g)),b[0]===Zy))return b;if("children"in f&&f.children){const E=f;if(E.children&&b[0]!==y6)for(v=(r?E.children.length:-1)+l,S=g.concat(E);v>-1&&v<E.children.length;){const j=E.children[v];if(k=d(j,v,S)(),k[0]===Zy)return k;v=typeof k[1]=="number"?k[1]:v+l}}return b}}}function b6(e){return Array.isArray(e)?e:typeof e=="number"?[g6,e]:e==null?F2:[e]}function rp(e,t,n,r){let a,o,l;typeof t=="function"&&typeof n!="function"?(o=void 0,l=t,a=n):(o=t,l=n,a=r),q2(e,o,d,a);function d(f,h){const g=h[h.length-1],m=g?g.children.indexOf(f):void 0;return l(f,m,g)}}const Jy={}.hasOwnProperty,x6={};function v6(e,t){const n=t||x6,r=new Map,a=new Map,o=new Map,l={...r6,...n.handlers},d={all:h,applyData:k6,definitionById:r,footnoteById:a,footnoteCounts:o,footnoteOrder:[],handlers:l,one:f,options:n,patch:w6,wrap:S6};return rp(e,function(g){if(g.type==="definition"||g.type==="footnoteDefinition"){const m=g.type==="definition"?r:a,y=String(g.identifier).toUpperCase();m.has(y)||m.set(y,g)}}),d;function f(g,m){const y=g.type,b=d.handlers[y];if(Jy.call(d.handlers,y)&&b)return b(d,g,m);if(d.options.passThrough&&d.options.passThrough.includes(y)){if("children"in g){const{children:v,...S}=g,E=yh(S);return E.children=d.all(g),E}return yh(g)}return(d.options.unknownHandler||E6)(d,g,m)}function h(g){const m=[];if("children"in g){const y=g.children;let b=-1;for(;++b<y.length;){const k=d.one(y[b],g);if(k){if(b&&y[b-1].type==="break"&&(!Array.isArray(k)&&k.type==="text"&&(k.value=Qk(k.value)),!Array.isArray(k)&&k.type==="element")){const v=k.children[0];v&&v.type==="text"&&(v.value=Qk(v.value))}Array.isArray(k)?m.push(...k):m.push(k)}}}return m}}function w6(e,t){e.position&&(t.position=cP(e))}function k6(e,t){let n=t;if(e&&e.data){const r=e.data.hName,a=e.data.hChildren,o=e.data.hProperties;if(typeof r=="string")if(n.type==="element")n.tagName=r;else{const l="children"in n?n.children:[n];n={type:"element",tagName:r,properties:{},children:l}}n.type==="element"&&o&&Object.assign(n.properties,yh(o)),"children"in n&&n.children&&a!==null&&a!==void 0&&(n.children=a)}return n}function E6(e,t){const n=t.data||{},r="value"in t&&!(Jy.call(n,"hProperties")||Jy.call(n,"hChildren"))?{type:"text",value:t.value}:{type:"element",tagName:"div",properties:{},children:e.all(t)};return e.patch(t,r),e.applyData(t,r)}function S6(e,t){const n=[];let r=-1;for(t&&n.push({type:"text",value:`
611
+ `});++r<e.length;)r&&n.push({type:"text",value:`
612
+ `}),n.push(e[r]);return t&&e.length>0&&n.push({type:"text",value:`
613
+ `}),n}function Qk(e){let t=0,n=e.charCodeAt(t);for(;n===9||n===32;)t++,n=e.charCodeAt(t);return e.slice(t)}function Wk(e,t){const n=v6(e,t),r=n.one(e,void 0),a=u6(n),o=Array.isArray(r)?{type:"root",children:r}:r||{type:"root",children:[]};return a&&o.children.push({type:"text",value:`
614
+ `},a),o}function N6(e,t){return e&&"run"in e?async function(n,r){const a=Wk(n,{file:r,...t});await e.run(a,r)}:function(n,r){return Wk(n,{file:r,...e||t})}}function Xk(e){if(e)throw e}var $g,Zk;function _6(){if(Zk)return $g;Zk=1;var e=Object.prototype.hasOwnProperty,t=Object.prototype.toString,n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,a=function(h){return typeof Array.isArray=="function"?Array.isArray(h):t.call(h)==="[object Array]"},o=function(h){if(!h||t.call(h)!=="[object Object]")return!1;var g=e.call(h,"constructor"),m=h.constructor&&h.constructor.prototype&&e.call(h.constructor.prototype,"isPrototypeOf");if(h.constructor&&!g&&!m)return!1;var y;for(y in h);return typeof y>"u"||e.call(h,y)},l=function(h,g){n&&g.name==="__proto__"?n(h,g.name,{enumerable:!0,configurable:!0,value:g.newValue,writable:!0}):h[g.name]=g.newValue},d=function(h,g){if(g==="__proto__")if(e.call(h,g)){if(r)return r(h,g).value}else return;return h[g]};return $g=function f(){var h,g,m,y,b,k,v=arguments[0],S=1,E=arguments.length,j=!1;for(typeof v=="boolean"&&(j=v,v=arguments[1]||{},S=2),(v==null||typeof v!="object"&&typeof v!="function")&&(v={});S<E;++S)if(h=arguments[S],h!=null)for(g in h)m=d(v,g),y=d(h,g),v!==y&&(j&&y&&(o(y)||(b=a(y)))?(b?(b=!1,k=m&&a(m)?m:[]):k=m&&o(m)?m:{},l(v,{name:g,newValue:f(j,k,y)})):typeof y<"u"&&l(v,{name:g,newValue:y}));return v},$g}var j6=_6();const Fg=Fu(j6);function eb(e){if(typeof e!="object"||e===null)return!1;const t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)}function C6(){const e=[],t={run:n,use:r};return t;function n(...a){let o=-1;const l=a.pop();if(typeof l!="function")throw new TypeError("Expected function as last argument, not "+l);d(null,...a);function d(f,...h){const g=e[++o];let m=-1;if(f){l(f);return}for(;++m<a.length;)(h[m]===null||h[m]===void 0)&&(h[m]=a[m]);a=h,g?A6(g,d)(...h):l(null,...h)}}function r(a){if(typeof a!="function")throw new TypeError("Expected `middelware` to be a function, not "+a);return e.push(a),t}}function A6(e,t){let n;return r;function r(...l){const d=e.length>l.length;let f;d&&l.push(a);try{f=e.apply(this,l)}catch(h){const g=h;if(d&&n)throw g;return a(g)}d||(f&&f.then&&typeof f.then=="function"?f.then(o,a):f instanceof Error?a(f):o(f))}function a(l,...d){n||(n=!0,t(l,...d))}function o(l){a(null,l)}}const Si={basename:T6,dirname:M6,extname:D6,join:O6,sep:"/"};function T6(e,t){if(t!==void 0&&typeof t!="string")throw new TypeError('"ext" argument must be a string');ed(e);let n=0,r=-1,a=e.length,o;if(t===void 0||t.length===0||t.length>e.length){for(;a--;)if(e.codePointAt(a)===47){if(o){n=a+1;break}}else r<0&&(o=!0,r=a+1);return r<0?"":e.slice(n,r)}if(t===e)return"";let l=-1,d=t.length-1;for(;a--;)if(e.codePointAt(a)===47){if(o){n=a+1;break}}else l<0&&(o=!0,l=a+1),d>-1&&(e.codePointAt(a)===t.codePointAt(d--)?d<0&&(r=a):(d=-1,r=l));return n===r?r=l:r<0&&(r=e.length),e.slice(n,r)}function M6(e){if(ed(e),e.length===0)return".";let t=-1,n=e.length,r;for(;--n;)if(e.codePointAt(n)===47){if(r){t=n;break}}else r||(r=!0);return t<0?e.codePointAt(0)===47?"/":".":t===1&&e.codePointAt(0)===47?"//":e.slice(0,t)}function D6(e){ed(e);let t=e.length,n=-1,r=0,a=-1,o=0,l;for(;t--;){const d=e.codePointAt(t);if(d===47){if(l){r=t+1;break}continue}n<0&&(l=!0,n=t+1),d===46?a<0?a=t:o!==1&&(o=1):a>-1&&(o=-1)}return a<0||n<0||o===0||o===1&&a===n-1&&a===r+1?"":e.slice(a,n)}function O6(...e){let t=-1,n;for(;++t<e.length;)ed(e[t]),e[t]&&(n=n===void 0?e[t]:n+"/"+e[t]);return n===void 0?".":R6(n)}function R6(e){ed(e);const t=e.codePointAt(0)===47;let n=L6(e,!t);return n.length===0&&!t&&(n="."),n.length>0&&e.codePointAt(e.length-1)===47&&(n+="/"),t?"/"+n:n}function L6(e,t){let n="",r=0,a=-1,o=0,l=-1,d,f;for(;++l<=e.length;){if(l<e.length)d=e.codePointAt(l);else{if(d===47)break;d=47}if(d===47){if(!(a===l-1||o===1))if(a!==l-1&&o===2){if(n.length<2||r!==2||n.codePointAt(n.length-1)!==46||n.codePointAt(n.length-2)!==46){if(n.length>2){if(f=n.lastIndexOf("/"),f!==n.length-1){f<0?(n="",r=0):(n=n.slice(0,f),r=n.length-1-n.lastIndexOf("/")),a=l,o=0;continue}}else if(n.length>0){n="",r=0,a=l,o=0;continue}}t&&(n=n.length>0?n+"/..":"..",r=2)}else n.length>0?n+="/"+e.slice(a+1,l):n=e.slice(a+1,l),r=l-a-1;a=l,o=0}else d===46&&o>-1?o++:o=-1}return n}function ed(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const I6={cwd:z6};function z6(){return"/"}function tb(e){return!!(e!==null&&typeof e=="object"&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&e.auth===void 0)}function P6(e){if(typeof e=="string")e=new URL(e);else if(!tb(e)){const t=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw t.code="ERR_INVALID_ARG_TYPE",t}if(e.protocol!=="file:"){const t=new TypeError("The URL must be of scheme file");throw t.code="ERR_INVALID_URL_SCHEME",t}return B6(e)}function B6(e){if(e.hostname!==""){const r=new TypeError('File URL host must be "localhost" or empty on darwin');throw r.code="ERR_INVALID_FILE_URL_HOST",r}const t=e.pathname;let n=-1;for(;++n<t.length;)if(t.codePointAt(n)===37&&t.codePointAt(n+1)===50){const r=t.codePointAt(n+2);if(r===70||r===102){const a=new TypeError("File URL path must not include encoded / characters");throw a.code="ERR_INVALID_FILE_URL_PATH",a}}return decodeURIComponent(t)}const qg=["history","path","basename","stem","extname","dirname"];class H2{constructor(t){let n;t?tb(t)?n={path:t}:typeof t=="string"||U6(t)?n={value:t}:n=t:n={},this.cwd="cwd"in n?"":I6.cwd(),this.data={},this.history=[],this.messages=[],this.value,this.map,this.result,this.stored;let r=-1;for(;++r<qg.length;){const o=qg[r];o in n&&n[o]!==void 0&&n[o]!==null&&(this[o]=o==="history"?[...n[o]]:n[o])}let a;for(a in n)qg.includes(a)||(this[a]=n[a])}get basename(){return typeof this.path=="string"?Si.basename(this.path):void 0}set basename(t){Kg(t,"basename"),Hg(t,"basename"),this.path=Si.join(this.dirname||"",t)}get dirname(){return typeof this.path=="string"?Si.dirname(this.path):void 0}set dirname(t){Jk(this.basename,"dirname"),this.path=Si.join(t||"",this.basename)}get extname(){return typeof this.path=="string"?Si.extname(this.path):void 0}set extname(t){if(Hg(t,"extname"),Jk(this.dirname,"extname"),t){if(t.codePointAt(0)!==46)throw new Error("`extname` must start with `.`");if(t.includes(".",1))throw new Error("`extname` cannot contain multiple dots")}this.path=Si.join(this.dirname,this.stem+(t||""))}get path(){return this.history[this.history.length-1]}set path(t){tb(t)&&(t=P6(t)),Kg(t,"path"),this.path!==t&&this.history.push(t)}get stem(){return typeof this.path=="string"?Si.basename(this.path,this.extname):void 0}set stem(t){Kg(t,"stem"),Hg(t,"stem"),this.path=Si.join(this.dirname||"",t+(this.extname||""))}fail(t,n,r){const a=this.message(t,n,r);throw a.fatal=!0,a}info(t,n,r){const a=this.message(t,n,r);return a.fatal=void 0,a}message(t,n,r){const a=new Yn(t,n,r);return this.path&&(a.name=this.path+":"+a.name,a.file=this.path),a.fatal=!1,this.messages.push(a),a}toString(t){return this.value===void 0?"":typeof this.value=="string"?this.value:new TextDecoder(t||void 0).decode(this.value)}}function Hg(e,t){if(e&&e.includes(Si.sep))throw new Error("`"+t+"` cannot be a path: did not expect `"+Si.sep+"`")}function Kg(e,t){if(!e)throw new Error("`"+t+"` cannot be empty")}function Jk(e,t){if(!e)throw new Error("Setting `"+t+"` requires `path` to be set too")}function U6(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const $6=(function(e){const r=this.constructor.prototype,a=r[e],o=function(){return a.apply(o,arguments)};return Object.setPrototypeOf(o,r),o}),F6={}.hasOwnProperty;class wx extends $6{constructor(){super("copy"),this.Compiler=void 0,this.Parser=void 0,this.attachers=[],this.compiler=void 0,this.freezeIndex=-1,this.frozen=void 0,this.namespace={},this.parser=void 0,this.transformers=C6()}copy(){const t=new wx;let n=-1;for(;++n<this.attachers.length;){const r=this.attachers[n];t.use(...r)}return t.data(Fg(!0,{},this.namespace)),t}data(t,n){return typeof t=="string"?arguments.length===2?(Yg("data",this.frozen),this.namespace[t]=n,this):F6.call(this.namespace,t)&&this.namespace[t]||void 0:t?(Yg("data",this.frozen),this.namespace=t,this):this.namespace}freeze(){if(this.frozen)return this;const t=this;for(;++this.freezeIndex<this.attachers.length;){const[n,...r]=this.attachers[this.freezeIndex];if(r[0]===!1)continue;r[0]===!0&&(r[0]=void 0);const a=n.call(t,...r);typeof a=="function"&&this.transformers.use(a)}return this.frozen=!0,this.freezeIndex=Number.POSITIVE_INFINITY,this}parse(t){this.freeze();const n=Tf(t),r=this.parser||this.Parser;return Gg("parse",r),r(String(n),n)}process(t,n){const r=this;return this.freeze(),Gg("process",this.parser||this.Parser),Vg("process",this.compiler||this.Compiler),n?a(void 0,n):new Promise(a);function a(o,l){const d=Tf(t),f=r.parse(d);r.run(f,d,function(g,m,y){if(g||!m||!y)return h(g);const b=m,k=r.stringify(b,y);K6(k)?y.value=k:y.result=k,h(g,y)});function h(g,m){g||!m?l(g):o?o(m):n(void 0,m)}}}processSync(t){let n=!1,r;return this.freeze(),Gg("processSync",this.parser||this.Parser),Vg("processSync",this.compiler||this.Compiler),this.process(t,a),tE("processSync","process",n),r;function a(o,l){n=!0,Xk(o),r=l}}run(t,n,r){eE(t),this.freeze();const a=this.transformers;return!r&&typeof n=="function"&&(r=n,n=void 0),r?o(void 0,r):new Promise(o);function o(l,d){const f=Tf(n);a.run(t,f,h);function h(g,m,y){const b=m||t;g?d(g):l?l(b):r(void 0,b,y)}}}runSync(t,n){let r=!1,a;return this.run(t,n,o),tE("runSync","run",r),a;function o(l,d){Xk(l),a=d,r=!0}}stringify(t,n){this.freeze();const r=Tf(n),a=this.compiler||this.Compiler;return Vg("stringify",a),eE(t),a(t,r)}use(t,...n){const r=this.attachers,a=this.namespace;if(Yg("use",this.frozen),t!=null)if(typeof t=="function")f(t,n);else if(typeof t=="object")Array.isArray(t)?d(t):l(t);else throw new TypeError("Expected usable value, not `"+t+"`");return this;function o(h){if(typeof h=="function")f(h,[]);else if(typeof h=="object")if(Array.isArray(h)){const[g,...m]=h;f(g,m)}else l(h);else throw new TypeError("Expected usable value, not `"+h+"`")}function l(h){if(!("plugins"in h)&&!("settings"in h))throw new Error("Expected usable value but received an empty preset, which is probably a mistake: presets typically come with `plugins` and sometimes with `settings`, but this has neither");d(h.plugins),h.settings&&(a.settings=Fg(!0,a.settings,h.settings))}function d(h){let g=-1;if(h!=null)if(Array.isArray(h))for(;++g<h.length;){const m=h[g];o(m)}else throw new TypeError("Expected a list of plugins, not `"+h+"`")}function f(h,g){let m=-1,y=-1;for(;++m<r.length;)if(r[m][0]===h){y=m;break}if(y===-1)r.push([h,...g]);else if(g.length>0){let[b,...k]=g;const v=r[y][1];eb(v)&&eb(b)&&(b=Fg(!0,v,b)),r[y]=[h,b,...k]}}}}const q6=new wx().freeze();function Gg(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `parser`")}function Vg(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `compiler`")}function Yg(e,t){if(t)throw new Error("Cannot call `"+e+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function eE(e){if(!eb(e)||typeof e.type!="string")throw new TypeError("Expected node, got `"+e+"`")}function tE(e,t,n){if(!n)throw new Error("`"+e+"` finished async. Use `"+t+"` instead")}function Tf(e){return H6(e)?e:new H2(e)}function H6(e){return!!(e&&typeof e=="object"&&"message"in e&&"messages"in e)}function K6(e){return typeof e=="string"||G6(e)}function G6(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const V6="https://github.com/remarkjs/react-markdown/blob/main/changelog.md",nE=[],rE={allowDangerousHtml:!0},Y6=/^(https?|ircs?|mailto|xmpp)$/i,Q6=[{from:"astPlugins",id:"remove-buggy-html-in-markdown-parser"},{from:"allowDangerousHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"allowNode",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowElement"},{from:"allowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowedElements"},{from:"className",id:"remove-classname"},{from:"disallowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"disallowedElements"},{from:"escapeHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"includeElementIndex",id:"#remove-includeelementindex"},{from:"includeNodeIndex",id:"change-includenodeindex-to-includeelementindex"},{from:"linkTarget",id:"remove-linktarget"},{from:"plugins",id:"change-plugins-to-remarkplugins",to:"remarkPlugins"},{from:"rawSourcePos",id:"#remove-rawsourcepos"},{from:"renderers",id:"change-renderers-to-components",to:"components"},{from:"source",id:"change-source-to-children",to:"children"},{from:"sourcePos",id:"#remove-sourcepos"},{from:"transformImageUri",id:"#add-urltransform",to:"urlTransform"},{from:"transformLinkUri",id:"#add-urltransform",to:"urlTransform"}];function kx(e){const t=W6(e),n=X6(e);return Z6(t.runSync(t.parse(n),n),e)}function W6(e){const t=e.rehypePlugins||nE,n=e.remarkPlugins||nE,r=e.remarkRehypeOptions?{...e.remarkRehypeOptions,...rE}:rE;return q6().use(MB).use(n).use(N6,r).use(t)}function X6(e){const t=e.children||"",n=new H2;return typeof t=="string"&&(n.value=t),n}function Z6(e,t){const n=t.allowedElements,r=t.allowElement,a=t.components,o=t.disallowedElements,l=t.skipHtml,d=t.unwrapDisallowed,f=t.urlTransform||J6;for(const g of Q6)Object.hasOwn(t,g.from)&&(""+g.from+(g.to?"use `"+g.to+"` instead":"remove it")+V6+g.id,void 0);return rp(e,h),pP(e,{Fragment:u.Fragment,components:a,ignoreInvalidStyle:!0,jsx:u.jsx,jsxs:u.jsxs,passKeys:!0,passNode:!0});function h(g,m,y){if(g.type==="raw"&&y&&typeof m=="number")return l?y.children.splice(m,1):y.children[m]={type:"text",value:g.value},m;if(g.type==="element"){let b;for(b in Pg)if(Object.hasOwn(Pg,b)&&Object.hasOwn(g.properties,b)){const k=g.properties[b],v=Pg[b];(v===null||v.includes(g.tagName))&&(g.properties[b]=f(String(k||""),b,g))}}if(g.type==="element"){let b=n?!n.includes(g.tagName):o?o.includes(g.tagName):!1;if(!b&&r&&typeof m=="number"&&(b=!r(g,m,y)),b&&y&&typeof m=="number")return d&&g.children?y.children.splice(m,1,...g.children):y.children.splice(m,1),m}}}function J6(e){const t=e.indexOf(":"),n=e.indexOf("?"),r=e.indexOf("#"),a=e.indexOf("/");return t===-1||a!==-1&&t>a||n!==-1&&t>n||r!==-1&&t>r||Y6.test(e.slice(0,t))?e:""}function iE(e,t){const n=String(e);if(typeof t!="string")throw new TypeError("Expected character");let r=0,a=n.indexOf(t);for(;a!==-1;)r++,a=n.indexOf(t,a+t.length);return r}function eU(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}function tU(e,t,n){const a=Ju((n||{}).ignore||[]),o=nU(t);let l=-1;for(;++l<o.length;)q2(e,"text",d);function d(h,g){let m=-1,y;for(;++m<g.length;){const b=g[m],k=y?y.children:void 0;if(a(b,k?k.indexOf(b):void 0,y))return;y=b}if(y)return f(h,g)}function f(h,g){const m=g[g.length-1],y=o[l][0],b=o[l][1];let k=0;const S=m.children.indexOf(h);let E=!1,j=[];y.lastIndex=0;let N=y.exec(h.value);for(;N;){const _=N.index,O={index:N.index,input:N.input,stack:[...g,h]};let T=b(...N,O);if(typeof T=="string"&&(T=T.length>0?{type:"text",value:T}:void 0),T===!1?y.lastIndex=_+1:(k!==_&&j.push({type:"text",value:h.value.slice(k,_)}),Array.isArray(T)?j.push(...T):T&&j.push(T),k=_+N[0].length,E=!0),!y.global)break;N=y.exec(h.value)}return E?(k<h.value.length&&j.push({type:"text",value:h.value.slice(k)}),m.children.splice(S,1,...j)):j=[h],S+j.length}}function nU(e){const t=[];if(!Array.isArray(e))throw new TypeError("Expected find and replace tuple or list of tuples");const n=!e[0]||Array.isArray(e[0])?e:[e];let r=-1;for(;++r<n.length;){const a=n[r];t.push([rU(a[0]),iU(a[1])])}return t}function rU(e){return typeof e=="string"?new RegExp(eU(e),"g"):e}function iU(e){return typeof e=="function"?e:function(){return e}}const Qg="phrasing",Wg=["autolink","link","image","label"];function aU(){return{transforms:[fU],enter:{literalAutolink:oU,literalAutolinkEmail:Xg,literalAutolinkHttp:Xg,literalAutolinkWww:Xg},exit:{literalAutolink:dU,literalAutolinkEmail:uU,literalAutolinkHttp:lU,literalAutolinkWww:cU}}}function sU(){return{unsafe:[{character:"@",before:"[+\\-.\\w]",after:"[\\-.\\w]",inConstruct:Qg,notInConstruct:Wg},{character:".",before:"[Ww]",after:"[\\-.\\w]",inConstruct:Qg,notInConstruct:Wg},{character:":",before:"[ps]",after:"\\/",inConstruct:Qg,notInConstruct:Wg}]}}function oU(e){this.enter({type:"link",title:null,url:"",children:[]},e)}function Xg(e){this.config.enter.autolinkProtocol.call(this,e)}function lU(e){this.config.exit.autolinkProtocol.call(this,e)}function cU(e){this.config.exit.data.call(this,e);const t=this.stack[this.stack.length-1];t.type,t.url="http://"+this.sliceSerialize(e)}function uU(e){this.config.exit.autolinkEmail.call(this,e)}function dU(e){this.exit(e)}function fU(e){tU(e,[[/(https?:\/\/|www(?=\.))([-.\w]+)([^ \t\r\n]*)/gi,hU],[new RegExp("(?<=^|\\s|\\p{P}|\\p{S})([-.\\w+]+)@([-\\w]+(?:\\.[-\\w]+)+)","gu"),pU]],{ignore:["link","linkReference"]})}function hU(e,t,n,r,a){let o="";if(!K2(a)||(/^w/i.test(t)&&(n=t+n,t="",o="http://"),!mU(n)))return!1;const l=gU(n+r);if(!l[0])return!1;const d={type:"link",title:null,url:o+t+l[0],children:[{type:"text",value:t+l[0]}]};return l[1]?[d,{type:"text",value:l[1]}]:d}function pU(e,t,n,r){return!K2(r,!0)||/[-\d_]$/.test(n)?!1:{type:"link",title:null,url:"mailto:"+t+"@"+n,children:[{type:"text",value:t+"@"+n}]}}function mU(e){const t=e.split(".");return!(t.length<2||t[t.length-1]&&(/_/.test(t[t.length-1])||!/[a-zA-Z\d]/.test(t[t.length-1]))||t[t.length-2]&&(/_/.test(t[t.length-2])||!/[a-zA-Z\d]/.test(t[t.length-2])))}function gU(e){const t=/[!"&'),.:;<>?\]}]+$/.exec(e);if(!t)return[e,void 0];e=e.slice(0,t.index);let n=t[0],r=n.indexOf(")");const a=iE(e,"(");let o=iE(e,")");for(;r!==-1&&a>o;)e+=n.slice(0,r+1),n=n.slice(r+1),r=n.indexOf(")"),o++;return[e,n]}function K2(e,t){const n=e.input.charCodeAt(e.index-1);return(e.index===0||fo(n)||Jh(n))&&(!t||n!==47)}G2.peek=NU;function yU(){this.buffer()}function bU(e){this.enter({type:"footnoteReference",identifier:"",label:""},e)}function xU(){this.buffer()}function vU(e){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},e)}function wU(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=di(this.sliceSerialize(e)).toLowerCase(),n.label=t}function kU(e){this.exit(e)}function EU(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=di(this.sliceSerialize(e)).toLowerCase(),n.label=t}function SU(e){this.exit(e)}function NU(){return"["}function G2(e,t,n,r){const a=n.createTracker(r);let o=a.move("[^");const l=n.enter("footnoteReference"),d=n.enter("reference");return o+=a.move(n.safe(n.associationId(e),{after:"]",before:o})),d(),l(),o+=a.move("]"),o}function _U(){return{enter:{gfmFootnoteCallString:yU,gfmFootnoteCall:bU,gfmFootnoteDefinitionLabelString:xU,gfmFootnoteDefinition:vU},exit:{gfmFootnoteCallString:wU,gfmFootnoteCall:kU,gfmFootnoteDefinitionLabelString:EU,gfmFootnoteDefinition:SU}}}function jU(e){let t=!1;return e&&e.firstLineBlank&&(t=!0),{handlers:{footnoteDefinition:n,footnoteReference:G2},unsafe:[{character:"[",inConstruct:["label","phrasing","reference"]}]};function n(r,a,o,l){const d=o.createTracker(l);let f=d.move("[^");const h=o.enter("footnoteDefinition"),g=o.enter("label");return f+=d.move(o.safe(o.associationId(r),{before:f,after:"]"})),g(),f+=d.move("]:"),r.children&&r.children.length>0&&(d.shift(4),f+=d.move((t?`
615
+ `:" ")+o.indentLines(o.containerFlow(r,d.current()),t?V2:CU))),h(),f}}function CU(e,t,n){return t===0?e:V2(e,t,n)}function V2(e,t,n){return(n?"":" ")+e}const AU=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"];Y2.peek=RU;function TU(){return{canContainEols:["delete"],enter:{strikethrough:DU},exit:{strikethrough:OU}}}function MU(){return{unsafe:[{character:"~",inConstruct:"phrasing",notInConstruct:AU}],handlers:{delete:Y2}}}function DU(e){this.enter({type:"delete",children:[]},e)}function OU(e){this.exit(e)}function Y2(e,t,n,r){const a=n.createTracker(r),o=n.enter("strikethrough");let l=a.move("~~");return l+=n.containerPhrasing(e,{...a.current(),before:l,after:"~"}),l+=a.move("~~"),o(),l}function RU(){return"~"}function LU(e){return e.length}function IU(e,t){const n=t||{},r=(n.align||[]).concat(),a=n.stringLength||LU,o=[],l=[],d=[],f=[];let h=0,g=-1;for(;++g<e.length;){const v=[],S=[];let E=-1;for(e[g].length>h&&(h=e[g].length);++E<e[g].length;){const j=zU(e[g][E]);if(n.alignDelimiters!==!1){const N=a(j);S[E]=N,(f[E]===void 0||N>f[E])&&(f[E]=N)}v.push(j)}l[g]=v,d[g]=S}let m=-1;if(typeof r=="object"&&"length"in r)for(;++m<h;)o[m]=aE(r[m]);else{const v=aE(r);for(;++m<h;)o[m]=v}m=-1;const y=[],b=[];for(;++m<h;){const v=o[m];let S="",E="";v===99?(S=":",E=":"):v===108?S=":":v===114&&(E=":");let j=n.alignDelimiters===!1?1:Math.max(1,f[m]-S.length-E.length);const N=S+"-".repeat(j)+E;n.alignDelimiters!==!1&&(j=S.length+j+E.length,j>f[m]&&(f[m]=j),b[m]=j),y[m]=N}l.splice(1,0,y),d.splice(1,0,b),g=-1;const k=[];for(;++g<l.length;){const v=l[g],S=d[g];m=-1;const E=[];for(;++m<h;){const j=v[m]||"";let N="",_="";if(n.alignDelimiters!==!1){const O=f[m]-(S[m]||0),T=o[m];T===114?N=" ".repeat(O):T===99?O%2?(N=" ".repeat(O/2+.5),_=" ".repeat(O/2-.5)):(N=" ".repeat(O/2),_=N):_=" ".repeat(O)}n.delimiterStart!==!1&&!m&&E.push("|"),n.padding!==!1&&!(n.alignDelimiters===!1&&j==="")&&(n.delimiterStart!==!1||m)&&E.push(" "),n.alignDelimiters!==!1&&E.push(N),E.push(j),n.alignDelimiters!==!1&&E.push(_),n.padding!==!1&&E.push(" "),(n.delimiterEnd!==!1||m!==h-1)&&E.push("|")}k.push(n.delimiterEnd===!1?E.join("").replace(/ +$/,""):E.join(""))}return k.join(`
616
+ `)}function zU(e){return e==null?"":String(e)}function aE(e){const t=typeof e=="string"?e.codePointAt(0):0;return t===67||t===99?99:t===76||t===108?108:t===82||t===114?114:0}function PU(e,t,n,r){const a=n.enter("blockquote"),o=n.createTracker(r);o.move("> "),o.shift(2);const l=n.indentLines(n.containerFlow(e,o.current()),BU);return a(),l}function BU(e,t,n){return">"+(n?"":" ")+e}function UU(e,t){return sE(e,t.inConstruct,!0)&&!sE(e,t.notInConstruct,!1)}function sE(e,t,n){if(typeof t=="string"&&(t=[t]),!t||t.length===0)return n;let r=-1;for(;++r<t.length;)if(e.includes(t[r]))return!0;return!1}function oE(e,t,n,r){let a=-1;for(;++a<n.unsafe.length;)if(n.unsafe[a].character===`
617
+ `&&UU(n.stack,n.unsafe[a]))return/[ \t]/.test(r.before)?"":" ";return`\\
618
+ `}function $U(e,t){const n=String(e);let r=n.indexOf(t),a=r,o=0,l=0;if(typeof t!="string")throw new TypeError("Expected substring");for(;r!==-1;)r===a?++o>l&&(l=o):o=1,a=r+t.length,r=n.indexOf(t,a);return l}function FU(e,t){return!!(t.options.fences===!1&&e.value&&!e.lang&&/[^ \r\n]/.test(e.value)&&!/^[\t ]*(?:[\r\n]|$)|(?:^|[\r\n])[\t ]*$/.test(e.value))}function qU(e){const t=e.options.fence||"`";if(t!=="`"&&t!=="~")throw new Error("Cannot serialize code with `"+t+"` for `options.fence`, expected `` ` `` or `~`");return t}function HU(e,t,n,r){const a=qU(n),o=e.value||"",l=a==="`"?"GraveAccent":"Tilde";if(FU(e,n)){const m=n.enter("codeIndented"),y=n.indentLines(o,KU);return m(),y}const d=n.createTracker(r),f=a.repeat(Math.max($U(o,a)+1,3)),h=n.enter("codeFenced");let g=d.move(f);if(e.lang){const m=n.enter(`codeFencedLang${l}`);g+=d.move(n.safe(e.lang,{before:g,after:" ",encode:["`"],...d.current()})),m()}if(e.lang&&e.meta){const m=n.enter(`codeFencedMeta${l}`);g+=d.move(" "),g+=d.move(n.safe(e.meta,{before:g,after:`
619
+ `,encode:["`"],...d.current()})),m()}return g+=d.move(`
620
+ `),o&&(g+=d.move(o+`
621
+ `)),g+=d.move(f),h(),g}function KU(e,t,n){return(n?"":" ")+e}function Ex(e){const t=e.options.quote||'"';if(t!=='"'&&t!=="'")throw new Error("Cannot serialize title with `"+t+"` for `options.quote`, expected `\"`, or `'`");return t}function GU(e,t,n,r){const a=Ex(n),o=a==='"'?"Quote":"Apostrophe",l=n.enter("definition");let d=n.enter("label");const f=n.createTracker(r);let h=f.move("[");return h+=f.move(n.safe(n.associationId(e),{before:h,after:"]",...f.current()})),h+=f.move("]: "),d(),!e.url||/[\0- \u007F]/.test(e.url)?(d=n.enter("destinationLiteral"),h+=f.move("<"),h+=f.move(n.safe(e.url,{before:h,after:">",...f.current()})),h+=f.move(">")):(d=n.enter("destinationRaw"),h+=f.move(n.safe(e.url,{before:h,after:e.title?" ":`
622
+ `,...f.current()}))),d(),e.title&&(d=n.enter(`title${o}`),h+=f.move(" "+a),h+=f.move(n.safe(e.title,{before:h,after:a,...f.current()})),h+=f.move(a),d()),l(),h}function VU(e){const t=e.options.emphasis||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize emphasis with `"+t+"` for `options.emphasis`, expected `*`, or `_`");return t}function ju(e){return"&#x"+e.toString(16).toUpperCase()+";"}function bh(e,t,n){const r=Pl(e),a=Pl(t);return r===void 0?a===void 0?n==="_"?{inside:!0,outside:!0}:{inside:!1,outside:!1}:a===1?{inside:!0,outside:!0}:{inside:!1,outside:!0}:r===1?a===void 0?{inside:!1,outside:!1}:a===1?{inside:!0,outside:!0}:{inside:!1,outside:!1}:a===void 0?{inside:!1,outside:!1}:a===1?{inside:!0,outside:!1}:{inside:!1,outside:!1}}Q2.peek=YU;function Q2(e,t,n,r){const a=VU(n),o=n.enter("emphasis"),l=n.createTracker(r),d=l.move(a);let f=l.move(n.containerPhrasing(e,{after:a,before:d,...l.current()}));const h=f.charCodeAt(0),g=bh(r.before.charCodeAt(r.before.length-1),h,a);g.inside&&(f=ju(h)+f.slice(1));const m=f.charCodeAt(f.length-1),y=bh(r.after.charCodeAt(0),m,a);y.inside&&(f=f.slice(0,-1)+ju(m));const b=l.move(a);return o(),n.attentionEncodeSurroundingInfo={after:y.outside,before:g.outside},d+f+b}function YU(e,t,n){return n.options.emphasis||"*"}function QU(e,t){let n=!1;return rp(e,function(r){if("value"in r&&/\r?\n|\r/.test(r.value)||r.type==="break")return n=!0,Zy}),!!((!e.depth||e.depth<3)&&px(e)&&(t.options.setext||n))}function WU(e,t,n,r){const a=Math.max(Math.min(6,e.depth||1),1),o=n.createTracker(r);if(QU(e,n)){const g=n.enter("headingSetext"),m=n.enter("phrasing"),y=n.containerPhrasing(e,{...o.current(),before:`
623
+ `,after:`
624
+ `});return m(),g(),y+`
625
+ `+(a===1?"=":"-").repeat(y.length-(Math.max(y.lastIndexOf("\r"),y.lastIndexOf(`
626
+ `))+1))}const l="#".repeat(a),d=n.enter("headingAtx"),f=n.enter("phrasing");o.move(l+" ");let h=n.containerPhrasing(e,{before:"# ",after:`
627
+ `,...o.current()});return/^[\t ]/.test(h)&&(h=ju(h.charCodeAt(0))+h.slice(1)),h=h?l+" "+h:l,n.options.closeAtx&&(h+=" "+l),f(),d(),h}W2.peek=XU;function W2(e){return e.value||""}function XU(){return"<"}X2.peek=ZU;function X2(e,t,n,r){const a=Ex(n),o=a==='"'?"Quote":"Apostrophe",l=n.enter("image");let d=n.enter("label");const f=n.createTracker(r);let h=f.move("![");return h+=f.move(n.safe(e.alt,{before:h,after:"]",...f.current()})),h+=f.move("]("),d(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(d=n.enter("destinationLiteral"),h+=f.move("<"),h+=f.move(n.safe(e.url,{before:h,after:">",...f.current()})),h+=f.move(">")):(d=n.enter("destinationRaw"),h+=f.move(n.safe(e.url,{before:h,after:e.title?" ":")",...f.current()}))),d(),e.title&&(d=n.enter(`title${o}`),h+=f.move(" "+a),h+=f.move(n.safe(e.title,{before:h,after:a,...f.current()})),h+=f.move(a),d()),h+=f.move(")"),l(),h}function ZU(){return"!"}Z2.peek=JU;function Z2(e,t,n,r){const a=e.referenceType,o=n.enter("imageReference");let l=n.enter("label");const d=n.createTracker(r);let f=d.move("![");const h=n.safe(e.alt,{before:f,after:"]",...d.current()});f+=d.move(h+"]["),l();const g=n.stack;n.stack=[],l=n.enter("reference");const m=n.safe(n.associationId(e),{before:f,after:"]",...d.current()});return l(),n.stack=g,o(),a==="full"||!h||h!==m?f+=d.move(m+"]"):a==="shortcut"?f=f.slice(0,-1):f+=d.move("]"),f}function JU(){return"!"}J2.peek=e$;function J2(e,t,n){let r=e.value||"",a="`",o=-1;for(;new RegExp("(^|[^`])"+a+"([^`]|$)").test(r);)a+="`";for(/[^ \r\n]/.test(r)&&(/^[ \r\n]/.test(r)&&/[ \r\n]$/.test(r)||/^`|`$/.test(r))&&(r=" "+r+" ");++o<n.unsafe.length;){const l=n.unsafe[o],d=n.compilePattern(l);let f;if(l.atBreak)for(;f=d.exec(r);){let h=f.index;r.charCodeAt(h)===10&&r.charCodeAt(h-1)===13&&h--,r=r.slice(0,h)+" "+r.slice(f.index+1)}}return a+r+a}function e$(){return"`"}function ej(e,t){const n=px(e);return!!(!t.options.resourceLink&&e.url&&!e.title&&e.children&&e.children.length===1&&e.children[0].type==="text"&&(n===e.url||"mailto:"+n===e.url)&&/^[a-z][a-z+.-]+:/i.test(e.url)&&!/[\0- <>\u007F]/.test(e.url))}tj.peek=t$;function tj(e,t,n,r){const a=Ex(n),o=a==='"'?"Quote":"Apostrophe",l=n.createTracker(r);let d,f;if(ej(e,n)){const g=n.stack;n.stack=[],d=n.enter("autolink");let m=l.move("<");return m+=l.move(n.containerPhrasing(e,{before:m,after:">",...l.current()})),m+=l.move(">"),d(),n.stack=g,m}d=n.enter("link"),f=n.enter("label");let h=l.move("[");return h+=l.move(n.containerPhrasing(e,{before:h,after:"](",...l.current()})),h+=l.move("]("),f(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(f=n.enter("destinationLiteral"),h+=l.move("<"),h+=l.move(n.safe(e.url,{before:h,after:">",...l.current()})),h+=l.move(">")):(f=n.enter("destinationRaw"),h+=l.move(n.safe(e.url,{before:h,after:e.title?" ":")",...l.current()}))),f(),e.title&&(f=n.enter(`title${o}`),h+=l.move(" "+a),h+=l.move(n.safe(e.title,{before:h,after:a,...l.current()})),h+=l.move(a),f()),h+=l.move(")"),d(),h}function t$(e,t,n){return ej(e,n)?"<":"["}nj.peek=n$;function nj(e,t,n,r){const a=e.referenceType,o=n.enter("linkReference");let l=n.enter("label");const d=n.createTracker(r);let f=d.move("[");const h=n.containerPhrasing(e,{before:f,after:"]",...d.current()});f+=d.move(h+"]["),l();const g=n.stack;n.stack=[],l=n.enter("reference");const m=n.safe(n.associationId(e),{before:f,after:"]",...d.current()});return l(),n.stack=g,o(),a==="full"||!h||h!==m?f+=d.move(m+"]"):a==="shortcut"?f=f.slice(0,-1):f+=d.move("]"),f}function n$(){return"["}function Sx(e){const t=e.options.bullet||"*";if(t!=="*"&&t!=="+"&&t!=="-")throw new Error("Cannot serialize items with `"+t+"` for `options.bullet`, expected `*`, `+`, or `-`");return t}function r$(e){const t=Sx(e),n=e.options.bulletOther;if(!n)return t==="*"?"-":"*";if(n!=="*"&&n!=="+"&&n!=="-")throw new Error("Cannot serialize items with `"+n+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(n===t)throw new Error("Expected `bullet` (`"+t+"`) and `bulletOther` (`"+n+"`) to be different");return n}function i$(e){const t=e.options.bulletOrdered||".";if(t!=="."&&t!==")")throw new Error("Cannot serialize items with `"+t+"` for `options.bulletOrdered`, expected `.` or `)`");return t}function rj(e){const t=e.options.rule||"*";if(t!=="*"&&t!=="-"&&t!=="_")throw new Error("Cannot serialize rules with `"+t+"` for `options.rule`, expected `*`, `-`, or `_`");return t}function a$(e,t,n,r){const a=n.enter("list"),o=n.bulletCurrent;let l=e.ordered?i$(n):Sx(n);const d=e.ordered?l==="."?")":".":r$(n);let f=t&&n.bulletLastUsed?l===n.bulletLastUsed:!1;if(!e.ordered){const g=e.children?e.children[0]:void 0;if((l==="*"||l==="-")&&g&&(!g.children||!g.children[0])&&n.stack[n.stack.length-1]==="list"&&n.stack[n.stack.length-2]==="listItem"&&n.stack[n.stack.length-3]==="list"&&n.stack[n.stack.length-4]==="listItem"&&n.indexStack[n.indexStack.length-1]===0&&n.indexStack[n.indexStack.length-2]===0&&n.indexStack[n.indexStack.length-3]===0&&(f=!0),rj(n)===l&&g){let m=-1;for(;++m<e.children.length;){const y=e.children[m];if(y&&y.type==="listItem"&&y.children&&y.children[0]&&y.children[0].type==="thematicBreak"){f=!0;break}}}}f&&(l=d),n.bulletCurrent=l;const h=n.containerFlow(e,r);return n.bulletLastUsed=l,n.bulletCurrent=o,a(),h}function s$(e){const t=e.options.listItemIndent||"one";if(t!=="tab"&&t!=="one"&&t!=="mixed")throw new Error("Cannot serialize items with `"+t+"` for `options.listItemIndent`, expected `tab`, `one`, or `mixed`");return t}function o$(e,t,n,r){const a=s$(n);let o=n.bulletCurrent||Sx(n);t&&t.type==="list"&&t.ordered&&(o=(typeof t.start=="number"&&t.start>-1?t.start:1)+(n.options.incrementListMarker===!1?0:t.children.indexOf(e))+o);let l=o.length+1;(a==="tab"||a==="mixed"&&(t&&t.type==="list"&&t.spread||e.spread))&&(l=Math.ceil(l/4)*4);const d=n.createTracker(r);d.move(o+" ".repeat(l-o.length)),d.shift(l);const f=n.enter("listItem"),h=n.indentLines(n.containerFlow(e,d.current()),g);return f(),h;function g(m,y,b){return y?(b?"":" ".repeat(l))+m:(b?o:o+" ".repeat(l-o.length))+m}}function l$(e,t,n,r){const a=n.enter("paragraph"),o=n.enter("phrasing"),l=n.containerPhrasing(e,r);return o(),a(),l}const c$=Ju(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function u$(e,t,n,r){return(e.children.some(function(l){return c$(l)})?n.containerPhrasing:n.containerFlow).call(n,e,r)}function d$(e){const t=e.options.strong||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize strong with `"+t+"` for `options.strong`, expected `*`, or `_`");return t}ij.peek=f$;function ij(e,t,n,r){const a=d$(n),o=n.enter("strong"),l=n.createTracker(r),d=l.move(a+a);let f=l.move(n.containerPhrasing(e,{after:a,before:d,...l.current()}));const h=f.charCodeAt(0),g=bh(r.before.charCodeAt(r.before.length-1),h,a);g.inside&&(f=ju(h)+f.slice(1));const m=f.charCodeAt(f.length-1),y=bh(r.after.charCodeAt(0),m,a);y.inside&&(f=f.slice(0,-1)+ju(m));const b=l.move(a+a);return o(),n.attentionEncodeSurroundingInfo={after:y.outside,before:g.outside},d+f+b}function f$(e,t,n){return n.options.strong||"*"}function h$(e,t,n,r){return n.safe(e.value,r)}function p$(e){const t=e.options.ruleRepetition||3;if(t<3)throw new Error("Cannot serialize rules with repetition `"+t+"` for `options.ruleRepetition`, expected `3` or more");return t}function m$(e,t,n){const r=(rj(n)+(n.options.ruleSpaces?" ":"")).repeat(p$(n));return n.options.ruleSpaces?r.slice(0,-1):r}const aj={blockquote:PU,break:oE,code:HU,definition:GU,emphasis:Q2,hardBreak:oE,heading:WU,html:W2,image:X2,imageReference:Z2,inlineCode:J2,link:tj,linkReference:nj,list:a$,listItem:o$,paragraph:l$,root:u$,strong:ij,text:h$,thematicBreak:m$};function g$(){return{enter:{table:y$,tableData:lE,tableHeader:lE,tableRow:x$},exit:{codeText:v$,table:b$,tableData:Zg,tableHeader:Zg,tableRow:Zg}}}function y$(e){const t=e._align;this.enter({type:"table",align:t.map(function(n){return n==="none"?null:n}),children:[]},e),this.data.inTable=!0}function b$(e){this.exit(e),this.data.inTable=void 0}function x$(e){this.enter({type:"tableRow",children:[]},e)}function Zg(e){this.exit(e)}function lE(e){this.enter({type:"tableCell",children:[]},e)}function v$(e){let t=this.resume();this.data.inTable&&(t=t.replace(/\\([\\|])/g,w$));const n=this.stack[this.stack.length-1];n.type,n.value=t,this.exit(e)}function w$(e,t){return t==="|"?t:e}function k$(e){const t=e||{},n=t.tableCellPadding,r=t.tablePipeAlign,a=t.stringLength,o=n?" ":"|";return{unsafe:[{character:"\r",inConstruct:"tableCell"},{character:`
628
+ `,inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[ :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:y,table:l,tableCell:f,tableRow:d}};function l(b,k,v,S){return h(g(b,v,S),b.align)}function d(b,k,v,S){const E=m(b,v,S),j=h([E]);return j.slice(0,j.indexOf(`
629
+ `))}function f(b,k,v,S){const E=v.enter("tableCell"),j=v.enter("phrasing"),N=v.containerPhrasing(b,{...S,before:o,after:o});return j(),E(),N}function h(b,k){return IU(b,{align:k,alignDelimiters:r,padding:n,stringLength:a})}function g(b,k,v){const S=b.children;let E=-1;const j=[],N=k.enter("table");for(;++E<S.length;)j[E]=m(S[E],k,v);return N(),j}function m(b,k,v){const S=b.children;let E=-1;const j=[],N=k.enter("tableRow");for(;++E<S.length;)j[E]=f(S[E],b,k,v);return N(),j}function y(b,k,v){let S=aj.inlineCode(b,k,v);return v.stack.includes("tableCell")&&(S=S.replace(/\|/g,"\\$&")),S}}function E$(){return{exit:{taskListCheckValueChecked:cE,taskListCheckValueUnchecked:cE,paragraph:N$}}}function S$(){return{unsafe:[{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{listItem:_$}}}function cE(e){const t=this.stack[this.stack.length-2];t.type,t.checked=e.type==="taskListCheckValueChecked"}function N$(e){const t=this.stack[this.stack.length-2];if(t&&t.type==="listItem"&&typeof t.checked=="boolean"){const n=this.stack[this.stack.length-1];n.type;const r=n.children[0];if(r&&r.type==="text"){const a=t.children;let o=-1,l;for(;++o<a.length;){const d=a[o];if(d.type==="paragraph"){l=d;break}}l===n&&(r.value=r.value.slice(1),r.value.length===0?n.children.shift():n.position&&r.position&&typeof r.position.start.offset=="number"&&(r.position.start.column++,r.position.start.offset++,n.position.start=Object.assign({},r.position.start)))}}this.exit(e)}function _$(e,t,n,r){const a=e.children[0],o=typeof e.checked=="boolean"&&a&&a.type==="paragraph",l="["+(e.checked?"x":" ")+"] ",d=n.createTracker(r);o&&d.move(l);let f=aj.listItem(e,t,n,{...r,...d.current()});return o&&(f=f.replace(/^(?:[*+-]|\d+\.)([\r\n]| {1,3})/,h)),f;function h(g){return g+l}}function j$(){return[aU(),_U(),TU(),g$(),E$()]}function C$(e){return{extensions:[sU(),jU(e),MU(),k$(e),S$()]}}const A$={tokenize:L$,partial:!0},sj={tokenize:I$,partial:!0},oj={tokenize:z$,partial:!0},lj={tokenize:P$,partial:!0},T$={tokenize:B$,partial:!0},cj={name:"wwwAutolink",tokenize:O$,previous:dj},uj={name:"protocolAutolink",tokenize:R$,previous:fj},xa={name:"emailAutolink",tokenize:D$,previous:hj},Li={};function M$(){return{text:Li}}let Hs=48;for(;Hs<123;)Li[Hs]=xa,Hs++,Hs===58?Hs=65:Hs===91&&(Hs=97);Li[43]=xa;Li[45]=xa;Li[46]=xa;Li[95]=xa;Li[72]=[xa,uj];Li[104]=[xa,uj];Li[87]=[xa,cj];Li[119]=[xa,cj];function D$(e,t,n){const r=this;let a,o;return l;function l(m){return!nb(m)||!hj.call(r,r.previous)||Nx(r.events)?n(m):(e.enter("literalAutolink"),e.enter("literalAutolinkEmail"),d(m))}function d(m){return nb(m)?(e.consume(m),d):m===64?(e.consume(m),f):n(m)}function f(m){return m===46?e.check(T$,g,h)(m):m===45||m===95||Gn(m)?(o=!0,e.consume(m),f):g(m)}function h(m){return e.consume(m),a=!0,f}function g(m){return o&&a&&nr(r.previous)?(e.exit("literalAutolinkEmail"),e.exit("literalAutolink"),t(m)):n(m)}}function O$(e,t,n){const r=this;return a;function a(l){return l!==87&&l!==119||!dj.call(r,r.previous)||Nx(r.events)?n(l):(e.enter("literalAutolink"),e.enter("literalAutolinkWww"),e.check(A$,e.attempt(sj,e.attempt(oj,o),n),n)(l))}function o(l){return e.exit("literalAutolinkWww"),e.exit("literalAutolink"),t(l)}}function R$(e,t,n){const r=this;let a="",o=!1;return l;function l(m){return(m===72||m===104)&&fj.call(r,r.previous)&&!Nx(r.events)?(e.enter("literalAutolink"),e.enter("literalAutolinkHttp"),a+=String.fromCodePoint(m),e.consume(m),d):n(m)}function d(m){if(nr(m)&&a.length<5)return a+=String.fromCodePoint(m),e.consume(m),d;if(m===58){const y=a.toLowerCase();if(y==="http"||y==="https")return e.consume(m),f}return n(m)}function f(m){return m===47?(e.consume(m),o?h:(o=!0,f)):n(m)}function h(m){return m===null||mh(m)||Ht(m)||fo(m)||Jh(m)?n(m):e.attempt(sj,e.attempt(oj,g),n)(m)}function g(m){return e.exit("literalAutolinkHttp"),e.exit("literalAutolink"),t(m)}}function L$(e,t,n){let r=0;return a;function a(l){return(l===87||l===119)&&r<3?(r++,e.consume(l),a):l===46&&r===3?(e.consume(l),o):n(l)}function o(l){return l===null?n(l):t(l)}}function I$(e,t,n){let r,a,o;return l;function l(h){return h===46||h===95?e.check(lj,f,d)(h):h===null||Ht(h)||fo(h)||h!==45&&Jh(h)?f(h):(o=!0,e.consume(h),l)}function d(h){return h===95?r=!0:(a=r,r=void 0),e.consume(h),l}function f(h){return a||r||!o?n(h):t(h)}}function z$(e,t){let n=0,r=0;return a;function a(l){return l===40?(n++,e.consume(l),a):l===41&&r<n?o(l):l===33||l===34||l===38||l===39||l===41||l===42||l===44||l===46||l===58||l===59||l===60||l===63||l===93||l===95||l===126?e.check(lj,t,o)(l):l===null||Ht(l)||fo(l)?t(l):(e.consume(l),a)}function o(l){return l===41&&r++,e.consume(l),a}}function P$(e,t,n){return r;function r(d){return d===33||d===34||d===39||d===41||d===42||d===44||d===46||d===58||d===59||d===63||d===95||d===126?(e.consume(d),r):d===38?(e.consume(d),o):d===93?(e.consume(d),a):d===60||d===null||Ht(d)||fo(d)?t(d):n(d)}function a(d){return d===null||d===40||d===91||Ht(d)||fo(d)?t(d):r(d)}function o(d){return nr(d)?l(d):n(d)}function l(d){return d===59?(e.consume(d),r):nr(d)?(e.consume(d),l):n(d)}}function B$(e,t,n){return r;function r(o){return e.consume(o),a}function a(o){return Gn(o)?n(o):t(o)}}function dj(e){return e===null||e===40||e===42||e===95||e===91||e===93||e===126||Ht(e)}function fj(e){return!nr(e)}function hj(e){return!(e===47||nb(e))}function nb(e){return e===43||e===45||e===46||e===95||Gn(e)}function Nx(e){let t=e.length,n=!1;for(;t--;){const r=e[t][1];if((r.type==="labelLink"||r.type==="labelImage")&&!r._balanced){n=!0;break}if(r._gfmAutolinkLiteralWalkedInto){n=!1;break}}return e.length>0&&!n&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),n}const U$={tokenize:Y$,partial:!0};function $$(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:K$,continuation:{tokenize:G$},exit:V$}},text:{91:{name:"gfmFootnoteCall",tokenize:H$},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:F$,resolveTo:q$}}}}function F$(e,t,n){const r=this;let a=r.events.length;const o=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let l;for(;a--;){const f=r.events[a][1];if(f.type==="labelImage"){l=f;break}if(f.type==="gfmFootnoteCall"||f.type==="labelLink"||f.type==="label"||f.type==="image"||f.type==="link")break}return d;function d(f){if(!l||!l._balanced)return n(f);const h=di(r.sliceSerialize({start:l.end,end:r.now()}));return h.codePointAt(0)!==94||!o.includes(h.slice(1))?n(f):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(f),e.exit("gfmFootnoteCallLabelMarker"),t(f))}}function q$(e,t){let n=e.length;for(;n--;)if(e[n][1].type==="labelImage"&&e[n][0]==="enter"){e[n][1];break}e[n+1][1].type="data",e[n+3][1].type="gfmFootnoteCallLabelMarker";const r={type:"gfmFootnoteCall",start:Object.assign({},e[n+3][1].start),end:Object.assign({},e[e.length-1][1].end)},a={type:"gfmFootnoteCallMarker",start:Object.assign({},e[n+3][1].end),end:Object.assign({},e[n+3][1].end)};a.end.column++,a.end.offset++,a.end._bufferIndex++;const o={type:"gfmFootnoteCallString",start:Object.assign({},a.end),end:Object.assign({},e[e.length-1][1].start)},l={type:"chunkString",contentType:"string",start:Object.assign({},o.start),end:Object.assign({},o.end)},d=[e[n+1],e[n+2],["enter",r,t],e[n+3],e[n+4],["enter",a,t],["exit",a,t],["enter",o,t],["enter",l,t],["exit",l,t],["exit",o,t],e[e.length-2],e[e.length-1],["exit",r,t]];return e.splice(n,e.length-n+1,...d),e}function H$(e,t,n){const r=this,a=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let o=0,l;return d;function d(m){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(m),e.exit("gfmFootnoteCallLabelMarker"),f}function f(m){return m!==94?n(m):(e.enter("gfmFootnoteCallMarker"),e.consume(m),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",h)}function h(m){if(o>999||m===93&&!l||m===null||m===91||Ht(m))return n(m);if(m===93){e.exit("chunkString");const y=e.exit("gfmFootnoteCallString");return a.includes(di(r.sliceSerialize(y)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(m),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),t):n(m)}return Ht(m)||(l=!0),o++,e.consume(m),m===92?g:h}function g(m){return m===91||m===92||m===93?(e.consume(m),o++,h):h(m)}}function K$(e,t,n){const r=this,a=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let o,l=0,d;return f;function f(k){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(k),e.exit("gfmFootnoteDefinitionLabelMarker"),h}function h(k){return k===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(k),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",g):n(k)}function g(k){if(l>999||k===93&&!d||k===null||k===91||Ht(k))return n(k);if(k===93){e.exit("chunkString");const v=e.exit("gfmFootnoteDefinitionLabelString");return o=di(r.sliceSerialize(v)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(k),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),y}return Ht(k)||(d=!0),l++,e.consume(k),k===92?m:g}function m(k){return k===91||k===92||k===93?(e.consume(k),l++,g):g(k)}function y(k){return k===58?(e.enter("definitionMarker"),e.consume(k),e.exit("definitionMarker"),a.includes(o)||a.push(o),Et(e,b,"gfmFootnoteDefinitionWhitespace")):n(k)}function b(k){return t(k)}}function G$(e,t,n){return e.check(Zu,t,e.attempt(U$,t,n))}function V$(e){e.exit("gfmFootnoteDefinition")}function Y$(e,t,n){const r=this;return Et(e,a,"gfmFootnoteDefinitionIndent",5);function a(o){const l=r.events[r.events.length-1];return l&&l[1].type==="gfmFootnoteDefinitionIndent"&&l[2].sliceSerialize(l[1],!0).length===4?t(o):n(o)}}function Q$(e){let n=(e||{}).singleTilde;const r={name:"strikethrough",tokenize:o,resolveAll:a};return n==null&&(n=!0),{text:{126:r},insideSpan:{null:[r]},attentionMarkers:{null:[126]}};function a(l,d){let f=-1;for(;++f<l.length;)if(l[f][0]==="enter"&&l[f][1].type==="strikethroughSequenceTemporary"&&l[f][1]._close){let h=f;for(;h--;)if(l[h][0]==="exit"&&l[h][1].type==="strikethroughSequenceTemporary"&&l[h][1]._open&&l[f][1].end.offset-l[f][1].start.offset===l[h][1].end.offset-l[h][1].start.offset){l[f][1].type="strikethroughSequence",l[h][1].type="strikethroughSequence";const g={type:"strikethrough",start:Object.assign({},l[h][1].start),end:Object.assign({},l[f][1].end)},m={type:"strikethroughText",start:Object.assign({},l[h][1].end),end:Object.assign({},l[f][1].start)},y=[["enter",g,d],["enter",l[h][1],d],["exit",l[h][1],d],["enter",m,d]],b=d.parser.constructs.insideSpan.null;b&&jr(y,y.length,0,ep(b,l.slice(h+1,f),d)),jr(y,y.length,0,[["exit",m,d],["enter",l[f][1],d],["exit",l[f][1],d],["exit",g,d]]),jr(l,h-1,f-h+3,y),f=h+y.length-2;break}}for(f=-1;++f<l.length;)l[f][1].type==="strikethroughSequenceTemporary"&&(l[f][1].type="data");return l}function o(l,d,f){const h=this.previous,g=this.events;let m=0;return y;function y(k){return h===126&&g[g.length-1][1].type!=="characterEscape"?f(k):(l.enter("strikethroughSequenceTemporary"),b(k))}function b(k){const v=Pl(h);if(k===126)return m>1?f(k):(l.consume(k),m++,b);if(m<2&&!n)return f(k);const S=l.exit("strikethroughSequenceTemporary"),E=Pl(k);return S._open=!E||E===2&&!!v,S._close=!v||v===2&&!!E,d(k)}}}class W${constructor(){this.map=[]}add(t,n,r){X$(this,t,n,r)}consume(t){if(this.map.sort(function(o,l){return o[0]-l[0]}),this.map.length===0)return;let n=this.map.length;const r=[];for(;n>0;)n-=1,r.push(t.slice(this.map[n][0]+this.map[n][1]),this.map[n][2]),t.length=this.map[n][0];r.push(t.slice()),t.length=0;let a=r.pop();for(;a;){for(const o of a)t.push(o);a=r.pop()}this.map.length=0}}function X$(e,t,n,r){let a=0;if(!(n===0&&r.length===0)){for(;a<e.map.length;){if(e.map[a][0]===t){e.map[a][1]+=n,e.map[a][2].push(...r);return}a+=1}e.map.push([t,n,r])}}function Z$(e,t){let n=!1;const r=[];for(;t<e.length;){const a=e[t];if(n){if(a[0]==="enter")a[1].type==="tableContent"&&r.push(e[t+1][1].type==="tableDelimiterMarker"?"left":"none");else if(a[1].type==="tableContent"){if(e[t-1][1].type==="tableDelimiterMarker"){const o=r.length-1;r[o]=r[o]==="left"?"center":"right"}}else if(a[1].type==="tableDelimiterRow")break}else a[0]==="enter"&&a[1].type==="tableDelimiterRow"&&(n=!0);t+=1}return r}function J$(){return{flow:{null:{name:"table",tokenize:e9,resolveAll:t9}}}}function e9(e,t,n){const r=this;let a=0,o=0,l;return d;function d(M){let U=r.events.length-1;for(;U>-1;){const D=r.events[U][1].type;if(D==="lineEnding"||D==="linePrefix")U--;else break}const q=U>-1?r.events[U][1].type:null,Y=q==="tableHead"||q==="tableRow"?T:f;return Y===T&&r.parser.lazy[r.now().line]?n(M):Y(M)}function f(M){return e.enter("tableHead"),e.enter("tableRow"),h(M)}function h(M){return M===124||(l=!0,o+=1),g(M)}function g(M){return M===null?n(M):Je(M)?o>1?(o=0,r.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(M),e.exit("lineEnding"),b):n(M):gt(M)?Et(e,g,"whitespace")(M):(o+=1,l&&(l=!1,a+=1),M===124?(e.enter("tableCellDivider"),e.consume(M),e.exit("tableCellDivider"),l=!0,g):(e.enter("data"),m(M)))}function m(M){return M===null||M===124||Ht(M)?(e.exit("data"),g(M)):(e.consume(M),M===92?y:m)}function y(M){return M===92||M===124?(e.consume(M),m):m(M)}function b(M){return r.interrupt=!1,r.parser.lazy[r.now().line]?n(M):(e.enter("tableDelimiterRow"),l=!1,gt(M)?Et(e,k,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(M):k(M))}function k(M){return M===45||M===58?S(M):M===124?(l=!0,e.enter("tableCellDivider"),e.consume(M),e.exit("tableCellDivider"),v):O(M)}function v(M){return gt(M)?Et(e,S,"whitespace")(M):S(M)}function S(M){return M===58?(o+=1,l=!0,e.enter("tableDelimiterMarker"),e.consume(M),e.exit("tableDelimiterMarker"),E):M===45?(o+=1,E(M)):M===null||Je(M)?_(M):O(M)}function E(M){return M===45?(e.enter("tableDelimiterFiller"),j(M)):O(M)}function j(M){return M===45?(e.consume(M),j):M===58?(l=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(M),e.exit("tableDelimiterMarker"),N):(e.exit("tableDelimiterFiller"),N(M))}function N(M){return gt(M)?Et(e,_,"whitespace")(M):_(M)}function _(M){return M===124?k(M):M===null||Je(M)?!l||a!==o?O(M):(e.exit("tableDelimiterRow"),e.exit("tableHead"),t(M)):O(M)}function O(M){return n(M)}function T(M){return e.enter("tableRow"),I(M)}function I(M){return M===124?(e.enter("tableCellDivider"),e.consume(M),e.exit("tableCellDivider"),I):M===null||Je(M)?(e.exit("tableRow"),t(M)):gt(M)?Et(e,I,"whitespace")(M):(e.enter("data"),R(M))}function R(M){return M===null||M===124||Ht(M)?(e.exit("data"),I(M)):(e.consume(M),M===92?F:R)}function F(M){return M===92||M===124?(e.consume(M),R):R(M)}}function t9(e,t){let n=-1,r=!0,a=0,o=[0,0,0,0],l=[0,0,0,0],d=!1,f=0,h,g,m;const y=new W$;for(;++n<e.length;){const b=e[n],k=b[1];b[0]==="enter"?k.type==="tableHead"?(d=!1,f!==0&&(uE(y,t,f,h,g),g=void 0,f=0),h={type:"table",start:Object.assign({},k.start),end:Object.assign({},k.end)},y.add(n,0,[["enter",h,t]])):k.type==="tableRow"||k.type==="tableDelimiterRow"?(r=!0,m=void 0,o=[0,0,0,0],l=[0,n+1,0,0],d&&(d=!1,g={type:"tableBody",start:Object.assign({},k.start),end:Object.assign({},k.end)},y.add(n,0,[["enter",g,t]])),a=k.type==="tableDelimiterRow"?2:g?3:1):a&&(k.type==="data"||k.type==="tableDelimiterMarker"||k.type==="tableDelimiterFiller")?(r=!1,l[2]===0&&(o[1]!==0&&(l[0]=l[1],m=Mf(y,t,o,a,void 0,m),o=[0,0,0,0]),l[2]=n)):k.type==="tableCellDivider"&&(r?r=!1:(o[1]!==0&&(l[0]=l[1],m=Mf(y,t,o,a,void 0,m)),o=l,l=[o[1],n,0,0])):k.type==="tableHead"?(d=!0,f=n):k.type==="tableRow"||k.type==="tableDelimiterRow"?(f=n,o[1]!==0?(l[0]=l[1],m=Mf(y,t,o,a,n,m)):l[1]!==0&&(m=Mf(y,t,l,a,n,m)),a=0):a&&(k.type==="data"||k.type==="tableDelimiterMarker"||k.type==="tableDelimiterFiller")&&(l[3]=n)}for(f!==0&&uE(y,t,f,h,g),y.consume(t.events),n=-1;++n<t.events.length;){const b=t.events[n];b[0]==="enter"&&b[1].type==="table"&&(b[1]._align=Z$(t.events,n))}return e}function Mf(e,t,n,r,a,o){const l=r===1?"tableHeader":r===2?"tableDelimiter":"tableData",d="tableContent";n[0]!==0&&(o.end=Object.assign({},cl(t.events,n[0])),e.add(n[0],0,[["exit",o,t]]));const f=cl(t.events,n[1]);if(o={type:l,start:Object.assign({},f),end:Object.assign({},f)},e.add(n[1],0,[["enter",o,t]]),n[2]!==0){const h=cl(t.events,n[2]),g=cl(t.events,n[3]),m={type:d,start:Object.assign({},h),end:Object.assign({},g)};if(e.add(n[2],0,[["enter",m,t]]),r!==2){const y=t.events[n[2]],b=t.events[n[3]];if(y[1].end=Object.assign({},b[1].end),y[1].type="chunkText",y[1].contentType="text",n[3]>n[2]+1){const k=n[2]+1,v=n[3]-n[2]-1;e.add(k,v,[])}}e.add(n[3]+1,0,[["exit",m,t]])}return a!==void 0&&(o.end=Object.assign({},cl(t.events,a)),e.add(a,0,[["exit",o,t]]),o=void 0),o}function uE(e,t,n,r,a){const o=[],l=cl(t.events,n);a&&(a.end=Object.assign({},l),o.push(["exit",a,t])),r.end=Object.assign({},l),o.push(["exit",r,t]),e.add(n+1,0,o)}function cl(e,t){const n=e[t],r=n[0]==="enter"?"start":"end";return n[1][r]}const n9={name:"tasklistCheck",tokenize:i9};function r9(){return{text:{91:n9}}}function i9(e,t,n){const r=this;return a;function a(f){return r.previous!==null||!r._gfmTasklistFirstContentOfListItem?n(f):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(f),e.exit("taskListCheckMarker"),o)}function o(f){return Ht(f)?(e.enter("taskListCheckValueUnchecked"),e.consume(f),e.exit("taskListCheckValueUnchecked"),l):f===88||f===120?(e.enter("taskListCheckValueChecked"),e.consume(f),e.exit("taskListCheckValueChecked"),l):n(f)}function l(f){return f===93?(e.enter("taskListCheckMarker"),e.consume(f),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),d):n(f)}function d(f){return Je(f)?t(f):gt(f)?e.check({tokenize:a9},t,n)(f):n(f)}}function a9(e,t,n){return Et(e,r,"whitespace");function r(a){return a===null?n(a):t(a)}}function s9(e){return S2([M$(),$$(),Q$(e),J$(),r9()])}const o9={};function _x(e){const t=this,n=e||o9,r=t.data(),a=r.micromarkExtensions||(r.micromarkExtensions=[]),o=r.fromMarkdownExtensions||(r.fromMarkdownExtensions=[]),l=r.toMarkdownExtensions||(r.toMarkdownExtensions=[]);a.push(s9(n)),o.push(j$()),l.push(C$(n))}const dE=(function(e,t,n){const r=Ju(n);if(!e||!e.type||!e.children)throw new Error("Expected parent node");if(typeof t=="number"){if(t<0||t===Number.POSITIVE_INFINITY)throw new Error("Expected positive finite number as index")}else if(t=e.children.indexOf(t),t<0)throw new Error("Expected child node or index");for(;++t<e.children.length;)if(r(e.children[t],t,e))return e.children[t]}),wo=(function(e){if(e==null)return u9;if(typeof e=="string")return c9(e);if(typeof e=="object")return l9(e);if(typeof e=="function")return jx(e);throw new Error("Expected function, string, or array as `test`")});function l9(e){const t=[];let n=-1;for(;++n<e.length;)t[n]=wo(e[n]);return jx(r);function r(...a){let o=-1;for(;++o<t.length;)if(t[o].apply(this,a))return!0;return!1}}function c9(e){return jx(t);function t(n){return n.tagName===e}}function jx(e){return t;function t(n,r,a){return!!(d9(n)&&e.call(this,n,typeof r=="number"?r:void 0,a||void 0))}}function u9(e){return!!(e&&typeof e=="object"&&"type"in e&&e.type==="element"&&"tagName"in e&&typeof e.tagName=="string")}function d9(e){return e!==null&&typeof e=="object"&&"type"in e&&"tagName"in e}const fE=/\n/g,hE=/[\t ]+/g,rb=wo("br"),pE=wo(x9),f9=wo("p"),mE=wo("tr"),h9=wo(["datalist","head","noembed","noframes","noscript","rp","script","style","template","title",b9,v9]),pj=wo(["address","article","aside","blockquote","body","caption","center","dd","dialog","dir","dl","dt","div","figure","figcaption","footer","form,","h1","h2","h3","h4","h5","h6","header","hgroup","hr","html","legend","li","listing","main","menu","nav","ol","p","plaintext","pre","section","ul","xmp"]);function p9(e,t){const n=t||{},r="children"in e?e.children:[],a=pj(e),o=yj(e,{whitespace:n.whitespace||"normal"}),l=[];(e.type==="text"||e.type==="comment")&&l.push(...gj(e,{breakBefore:!0,breakAfter:!0}));let d=-1;for(;++d<r.length;)l.push(...mj(r[d],e,{whitespace:o,breakBefore:d?void 0:a,breakAfter:d<r.length-1?rb(r[d+1]):a}));const f=[];let h;for(d=-1;++d<l.length;){const g=l[d];typeof g=="number"?h!==void 0&&g>h&&(h=g):g&&(h!==void 0&&h>-1&&f.push(`
630
+ `.repeat(h)||" "),h=-1,f.push(g))}return f.join("")}function mj(e,t,n){return e.type==="element"?m9(e,t,n):e.type==="text"?n.whitespace==="normal"?gj(e,n):g9(e):[]}function m9(e,t,n){const r=yj(e,n),a=e.children||[];let o=-1,l=[];if(h9(e))return l;let d,f;for(rb(e)||mE(e)&&dE(t,e,mE)?f=`
631
+ `:f9(e)?(d=2,f=2):pj(e)&&(d=1,f=1);++o<a.length;)l=l.concat(mj(a[o],e,{whitespace:r,breakBefore:o?void 0:d,breakAfter:o<a.length-1?rb(a[o+1]):f}));return pE(e)&&dE(t,e,pE)&&l.push(" "),d&&l.unshift(d),f&&l.push(f),l}function gj(e,t){const n=String(e.value),r=[],a=[];let o=0;for(;o<=n.length;){fE.lastIndex=o;const f=fE.exec(n),h=f&&"index"in f?f.index:n.length;r.push(y9(n.slice(o,h).replace(/[\u061C\u200E\u200F\u202A-\u202E\u2066-\u2069]/g,""),o===0?t.breakBefore:!0,h===n.length?t.breakAfter:!0)),o=h+1}let l=-1,d;for(;++l<r.length;)r[l].charCodeAt(r[l].length-1)===8203||l<r.length-1&&r[l+1].charCodeAt(0)===8203?(a.push(r[l]),d=void 0):r[l]?(typeof d=="number"&&a.push(d),a.push(r[l]),d=0):(l===0||l===r.length-1)&&a.push(0);return a}function g9(e){return[String(e.value)]}function y9(e,t,n){const r=[];let a=0,o;for(;a<e.length;){hE.lastIndex=a;const l=hE.exec(e);o=l?l.index:e.length,!a&&!o&&l&&!t&&r.push(""),a!==o&&r.push(e.slice(a,o)),a=l?o+l[0].length:o}return a!==o&&!n&&r.push(""),r.join(" ")}function yj(e,t){if(e.type==="element"){const n=e.properties||{};switch(e.tagName){case"listing":case"plaintext":case"xmp":return"pre";case"nobr":return"nowrap";case"pre":return n.wrap?"pre-wrap":"pre";case"td":case"th":return n.noWrap?"nowrap":t.whitespace;case"textarea":return"pre-wrap"}}return t.whitespace}function b9(e){return!!(e.properties||{}).hidden}function x9(e){return e.tagName==="td"||e.tagName==="th"}function v9(e){return e.tagName==="dialog"&&!(e.properties||{}).open}function w9(e){const t=e.regex,n=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),r="decltype\\(auto\\)",a="[a-zA-Z_]\\w*::",l="(?!struct)("+r+"|"+t.optional(a)+"[a-zA-Z_]\\w*"+t.optional("<[^<>]+>")+")",d={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},h={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+"\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)"+"|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},g={className:"number",variants:[{begin:"[+-]?(?:(?:[0-9](?:'?[0-9])*\\.(?:[0-9](?:'?[0-9])*)?|\\.[0-9](?:'?[0-9])*)(?:[Ee][+-]?[0-9](?:'?[0-9])*)?|[0-9](?:'?[0-9])*[Ee][+-]?[0-9](?:'?[0-9])*|0[Xx](?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*(?:\\.(?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)?)?|\\.[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)[Pp][+-]?[0-9](?:'?[0-9])*)(?:[Ff](?:16|32|64|128)?|(BF|bf)16|[Ll]|)"},{begin:"[+-]?\\b(?:0[Bb][01](?:'?[01])*|0[Xx][0-9A-Fa-f](?:'?[0-9A-Fa-f])*|0(?:'?[0-7])*|[1-9](?:'?[0-9])*)(?:[Uu](?:LL?|ll?)|[Uu][Zz]?|(?:LL?|ll?)[Uu]?|[Zz][Uu]|)"}],relevance:0},m={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(h,{className:"string"}),{className:"string",begin:/<.*?>/},n,e.C_BLOCK_COMMENT_MODE]},y={className:"title",begin:t.optional(a)+e.IDENT_RE,relevance:0},b=t.optional(a)+e.IDENT_RE+"\\s*\\(",k=["alignas","alignof","and","and_eq","asm","atomic_cancel","atomic_commit","atomic_noexcept","auto","bitand","bitor","break","case","catch","class","co_await","co_return","co_yield","compl","concept","const_cast|10","consteval","constexpr","constinit","continue","decltype","default","delete","do","dynamic_cast|10","else","enum","explicit","export","extern","false","final","for","friend","goto","if","import","inline","module","mutable","namespace","new","noexcept","not","not_eq","nullptr","operator","or","or_eq","override","private","protected","public","reflexpr","register","reinterpret_cast|10","requires","return","sizeof","static_assert","static_cast|10","struct","switch","synchronized","template","this","thread_local","throw","transaction_safe","transaction_safe_dynamic","true","try","typedef","typeid","typename","union","using","virtual","volatile","while","xor","xor_eq"],v=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"],S=["any","auto_ptr","barrier","binary_semaphore","bitset","complex","condition_variable","condition_variable_any","counting_semaphore","deque","false_type","flat_map","flat_set","future","imaginary","initializer_list","istringstream","jthread","latch","lock_guard","multimap","multiset","mutex","optional","ostringstream","packaged_task","pair","promise","priority_queue","queue","recursive_mutex","recursive_timed_mutex","scoped_lock","set","shared_future","shared_lock","shared_mutex","shared_timed_mutex","shared_ptr","stack","string_view","stringstream","timed_mutex","thread","true_type","tuple","unique_lock","unique_ptr","unordered_map","unordered_multimap","unordered_multiset","unordered_set","variant","vector","weak_ptr","wstring","wstring_view"],E=["abort","abs","acos","apply","as_const","asin","atan","atan2","calloc","ceil","cerr","cin","clog","cos","cosh","cout","declval","endl","exchange","exit","exp","fabs","floor","fmod","forward","fprintf","fputs","free","frexp","fscanf","future","invoke","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","labs","launder","ldexp","log","log10","make_pair","make_shared","make_shared_for_overwrite","make_tuple","make_unique","malloc","memchr","memcmp","memcpy","memset","modf","move","pow","printf","putchar","puts","realloc","scanf","sin","sinh","snprintf","sprintf","sqrt","sscanf","std","stderr","stdin","stdout","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","swap","tan","tanh","terminate","to_underlying","tolower","toupper","vfprintf","visit","vprintf","vsprintf"],_={type:v,keyword:k,literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:S},O={className:"function.dispatch",relevance:0,keywords:{_hint:E},begin:t.concat(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!switch)/,/(?!while)/,e.IDENT_RE,t.lookahead(/(<[^<>]+>|)\s*\(/))},T=[O,m,d,n,e.C_BLOCK_COMMENT_MODE,g,h],I={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:_,contains:T.concat([{begin:/\(/,end:/\)/,keywords:_,contains:T.concat(["self"]),relevance:0}]),relevance:0},R={className:"function",begin:"("+l+"[\\*&\\s]+)+"+b,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:_,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:r,keywords:_,relevance:0},{begin:b,returnBegin:!0,contains:[y],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[h,g]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:_,relevance:0,contains:[n,e.C_BLOCK_COMMENT_MODE,h,g,d,{begin:/\(/,end:/\)/,keywords:_,relevance:0,contains:["self",n,e.C_BLOCK_COMMENT_MODE,h,g,d]}]},d,n,e.C_BLOCK_COMMENT_MODE,m]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:_,illegal:"</",classNameAliases:{"function.dispatch":"built_in"},contains:[].concat(I,R,O,T,[m,{begin:"\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array|tuple|optional|variant|function|flat_map|flat_set)\\s*<(?!<)",end:">",keywords:_,contains:["self",d]},{begin:e.IDENT_RE+"::",keywords:_},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}function k9(e){const t={type:["boolean","byte","word","String"],built_in:["KeyboardController","MouseController","SoftwareSerial","EthernetServer","EthernetClient","LiquidCrystal","RobotControl","GSMVoiceCall","EthernetUDP","EsploraTFT","HttpClient","RobotMotor","WiFiClient","GSMScanner","FileSystem","Scheduler","GSMServer","YunClient","YunServer","IPAddress","GSMClient","GSMModem","Keyboard","Ethernet","Console","GSMBand","Esplora","Stepper","Process","WiFiUDP","GSM_SMS","Mailbox","USBHost","Firmata","PImage","Client","Server","GSMPIN","FileIO","Bridge","Serial","EEPROM","Stream","Mouse","Audio","Servo","File","Task","GPRS","WiFi","Wire","TFT","GSM","SPI","SD"],_hints:["setup","loop","runShellCommandAsynchronously","analogWriteResolution","retrieveCallingNumber","printFirmwareVersion","analogReadResolution","sendDigitalPortPair","noListenOnLocalhost","readJoystickButton","setFirmwareVersion","readJoystickSwitch","scrollDisplayRight","getVoiceCallStatus","scrollDisplayLeft","writeMicroseconds","delayMicroseconds","beginTransmission","getSignalStrength","runAsynchronously","getAsynchronously","listenOnLocalhost","getCurrentCarrier","readAccelerometer","messageAvailable","sendDigitalPorts","lineFollowConfig","countryNameWrite","runShellCommand","readStringUntil","rewindDirectory","readTemperature","setClockDivider","readLightSensor","endTransmission","analogReference","detachInterrupt","countryNameRead","attachInterrupt","encryptionType","readBytesUntil","robotNameWrite","readMicrophone","robotNameRead","cityNameWrite","userNameWrite","readJoystickY","readJoystickX","mouseReleased","openNextFile","scanNetworks","noInterrupts","digitalWrite","beginSpeaker","mousePressed","isActionDone","mouseDragged","displayLogos","noAutoscroll","addParameter","remoteNumber","getModifiers","keyboardRead","userNameRead","waitContinue","processInput","parseCommand","printVersion","readNetworks","writeMessage","blinkVersion","cityNameRead","readMessage","setDataMode","parsePacket","isListening","setBitOrder","beginPacket","isDirectory","motorsWrite","drawCompass","digitalRead","clearScreen","serialEvent","rightToLeft","setTextSize","leftToRight","requestFrom","keyReleased","compassRead","analogWrite","interrupts","WiFiServer","disconnect","playMelody","parseFloat","autoscroll","getPINUsed","setPINUsed","setTimeout","sendAnalog","readSlider","analogRead","beginWrite","createChar","motorsStop","keyPressed","tempoWrite","readButton","subnetMask","debugPrint","macAddress","writeGreen","randomSeed","attachGPRS","readString","sendString","remotePort","releaseAll","mouseMoved","background","getXChange","getYChange","answerCall","getResult","voiceCall","endPacket","constrain","getSocket","writeJSON","getButton","available","connected","findUntil","readBytes","exitValue","readGreen","writeBlue","startLoop","IPAddress","isPressed","sendSysex","pauseMode","gatewayIP","setCursor","getOemKey","tuneWrite","noDisplay","loadImage","switchPIN","onRequest","onReceive","changePIN","playFile","noBuffer","parseInt","overflow","checkPIN","knobRead","beginTFT","bitClear","updateIR","bitWrite","position","writeRGB","highByte","writeRed","setSpeed","readBlue","noStroke","remoteIP","transfer","shutdown","hangCall","beginSMS","endWrite","attached","maintain","noCursor","checkReg","checkPUK","shiftOut","isValid","shiftIn","pulseIn","connect","println","localIP","pinMode","getIMEI","display","noBlink","process","getBand","running","beginSD","drawBMP","lowByte","setBand","release","bitRead","prepare","pointTo","readRed","setMode","noFill","remove","listen","stroke","detach","attach","noTone","exists","buffer","height","bitSet","circle","config","cursor","random","IRread","setDNS","endSMS","getKey","micros","millis","begin","print","write","ready","flush","width","isPIN","blink","clear","press","mkdir","rmdir","close","point","yield","image","BSSID","click","delay","read","text","move","peek","beep","rect","line","open","seek","fill","size","turn","stop","home","find","step","tone","sqrt","RSSI","SSID","end","bit","tan","cos","sin","pow","map","abs","max","min","get","run","put"],literal:["DIGITAL_MESSAGE","FIRMATA_STRING","ANALOG_MESSAGE","REPORT_DIGITAL","REPORT_ANALOG","INPUT_PULLUP","SET_PIN_MODE","INTERNAL2V56","SYSTEM_RESET","LED_BUILTIN","INTERNAL1V1","SYSEX_START","INTERNAL","EXTERNAL","DEFAULT","OUTPUT","INPUT","HIGH","LOW"]},n=w9(e),r=n.keywords;return r.type=[...r.type,...t.type],r.literal=[...r.literal,...t.literal],r.built_in=[...r.built_in,...t.built_in],r._hints=t._hints,n.name="Arduino",n.aliases=["ino"],n.supersetOf="cpp",n}function E9(e){const t=e.regex,n={},r={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[n]}]};Object.assign(n,{className:"variable",variants:[{begin:t.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},r]});const a={className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},o=e.inherit(e.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),l={begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},d={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,n,a]};a.contains.push(d);const f={match:/\\"/},h={className:"string",begin:/'/,end:/'/},g={match:/\\'/},m={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,n]},y=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],b=e.SHEBANG({binary:`(${y.join("|")})`,relevance:10}),k={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},v=["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],S=["true","false"],E={match:/(\/[a-z._-]+)+/},j=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],N=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],_=["autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp"],O=["chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"];return{name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:v,literal:S,built_in:[...j,...N,"set","shopt",..._,...O]},contains:[b,e.SHEBANG(),k,m,o,l,E,d,f,h,g,n]}}function S9(e){const t=e.regex,n=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),r="decltype\\(auto\\)",a="[a-zA-Z_]\\w*::",l="("+r+"|"+t.optional(a)+"[a-zA-Z_]\\w*"+t.optional("<[^<>]+>")+")",d={className:"type",variants:[{begin:"\\b[a-z\\d_]*_t\\b"},{match:/\batomic_[a-z]{3,6}\b/}]},h={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+"\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)"+"|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},g={className:"number",variants:[{match:/\b(0b[01']+)/},{match:/(-?)\b([\d']+(\.[\d']*)?|\.[\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)/},{match:/(-?)\b(0[xX][a-fA-F0-9]+(?:'[a-fA-F0-9]+)*(?:\.[a-fA-F0-9]*(?:'[a-fA-F0-9]*)*)?(?:[pP][-+]?[0-9]+)?(l|L)?(u|U)?)/},{match:/(-?)\b\d+(?:'\d+)*(?:\.\d*(?:'\d*)*)?(?:[eE][-+]?\d+)?/}],relevance:0},m={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef elifdef elifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(h,{className:"string"}),{className:"string",begin:/<.*?>/},n,e.C_BLOCK_COMMENT_MODE]},y={className:"title",begin:t.optional(a)+e.IDENT_RE,relevance:0},b=t.optional(a)+e.IDENT_RE+"\\s*\\(",S={keyword:["asm","auto","break","case","continue","default","do","else","enum","extern","for","fortran","goto","if","inline","register","restrict","return","sizeof","typeof","typeof_unqual","struct","switch","typedef","union","volatile","while","_Alignas","_Alignof","_Atomic","_Generic","_Noreturn","_Static_assert","_Thread_local","alignas","alignof","noreturn","static_assert","thread_local","_Pragma"],type:["float","double","signed","unsigned","int","short","long","char","void","_Bool","_BitInt","_Complex","_Imaginary","_Decimal32","_Decimal64","_Decimal96","_Decimal128","_Decimal64x","_Decimal128x","_Float16","_Float32","_Float64","_Float128","_Float32x","_Float64x","_Float128x","const","static","constexpr","complex","bool","imaginary"],literal:"true false NULL",built_in:"std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr"},E=[m,d,n,e.C_BLOCK_COMMENT_MODE,g,h],j={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:S,contains:E.concat([{begin:/\(/,end:/\)/,keywords:S,contains:E.concat(["self"]),relevance:0}]),relevance:0},N={begin:"("+l+"[\\*&\\s]+)+"+b,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:S,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:r,keywords:S,relevance:0},{begin:b,returnBegin:!0,contains:[e.inherit(y,{className:"title.function"})],relevance:0},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:S,relevance:0,contains:[n,e.C_BLOCK_COMMENT_MODE,h,g,d,{begin:/\(/,end:/\)/,keywords:S,relevance:0,contains:["self",n,e.C_BLOCK_COMMENT_MODE,h,g,d]}]},d,n,e.C_BLOCK_COMMENT_MODE,m]};return{name:"C",aliases:["h"],keywords:S,disableAutodetect:!0,illegal:"</",contains:[].concat(j,N,E,[m,{begin:e.IDENT_RE+"::",keywords:S},{className:"class",beginKeywords:"enum class struct union",end:/[{;:<>=]/,contains:[{beginKeywords:"final class struct"},e.TITLE_MODE]}]),exports:{preprocessor:m,strings:h,keywords:S}}}function N9(e){const t=e.regex,n=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),r="decltype\\(auto\\)",a="[a-zA-Z_]\\w*::",l="(?!struct)("+r+"|"+t.optional(a)+"[a-zA-Z_]\\w*"+t.optional("<[^<>]+>")+")",d={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},h={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+"\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)"+"|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},g={className:"number",variants:[{begin:"[+-]?(?:(?:[0-9](?:'?[0-9])*\\.(?:[0-9](?:'?[0-9])*)?|\\.[0-9](?:'?[0-9])*)(?:[Ee][+-]?[0-9](?:'?[0-9])*)?|[0-9](?:'?[0-9])*[Ee][+-]?[0-9](?:'?[0-9])*|0[Xx](?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*(?:\\.(?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)?)?|\\.[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)[Pp][+-]?[0-9](?:'?[0-9])*)(?:[Ff](?:16|32|64|128)?|(BF|bf)16|[Ll]|)"},{begin:"[+-]?\\b(?:0[Bb][01](?:'?[01])*|0[Xx][0-9A-Fa-f](?:'?[0-9A-Fa-f])*|0(?:'?[0-7])*|[1-9](?:'?[0-9])*)(?:[Uu](?:LL?|ll?)|[Uu][Zz]?|(?:LL?|ll?)[Uu]?|[Zz][Uu]|)"}],relevance:0},m={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(h,{className:"string"}),{className:"string",begin:/<.*?>/},n,e.C_BLOCK_COMMENT_MODE]},y={className:"title",begin:t.optional(a)+e.IDENT_RE,relevance:0},b=t.optional(a)+e.IDENT_RE+"\\s*\\(",k=["alignas","alignof","and","and_eq","asm","atomic_cancel","atomic_commit","atomic_noexcept","auto","bitand","bitor","break","case","catch","class","co_await","co_return","co_yield","compl","concept","const_cast|10","consteval","constexpr","constinit","continue","decltype","default","delete","do","dynamic_cast|10","else","enum","explicit","export","extern","false","final","for","friend","goto","if","import","inline","module","mutable","namespace","new","noexcept","not","not_eq","nullptr","operator","or","or_eq","override","private","protected","public","reflexpr","register","reinterpret_cast|10","requires","return","sizeof","static_assert","static_cast|10","struct","switch","synchronized","template","this","thread_local","throw","transaction_safe","transaction_safe_dynamic","true","try","typedef","typeid","typename","union","using","virtual","volatile","while","xor","xor_eq"],v=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"],S=["any","auto_ptr","barrier","binary_semaphore","bitset","complex","condition_variable","condition_variable_any","counting_semaphore","deque","false_type","flat_map","flat_set","future","imaginary","initializer_list","istringstream","jthread","latch","lock_guard","multimap","multiset","mutex","optional","ostringstream","packaged_task","pair","promise","priority_queue","queue","recursive_mutex","recursive_timed_mutex","scoped_lock","set","shared_future","shared_lock","shared_mutex","shared_timed_mutex","shared_ptr","stack","string_view","stringstream","timed_mutex","thread","true_type","tuple","unique_lock","unique_ptr","unordered_map","unordered_multimap","unordered_multiset","unordered_set","variant","vector","weak_ptr","wstring","wstring_view"],E=["abort","abs","acos","apply","as_const","asin","atan","atan2","calloc","ceil","cerr","cin","clog","cos","cosh","cout","declval","endl","exchange","exit","exp","fabs","floor","fmod","forward","fprintf","fputs","free","frexp","fscanf","future","invoke","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","labs","launder","ldexp","log","log10","make_pair","make_shared","make_shared_for_overwrite","make_tuple","make_unique","malloc","memchr","memcmp","memcpy","memset","modf","move","pow","printf","putchar","puts","realloc","scanf","sin","sinh","snprintf","sprintf","sqrt","sscanf","std","stderr","stdin","stdout","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","swap","tan","tanh","terminate","to_underlying","tolower","toupper","vfprintf","visit","vprintf","vsprintf"],_={type:v,keyword:k,literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:S},O={className:"function.dispatch",relevance:0,keywords:{_hint:E},begin:t.concat(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!switch)/,/(?!while)/,e.IDENT_RE,t.lookahead(/(<[^<>]+>|)\s*\(/))},T=[O,m,d,n,e.C_BLOCK_COMMENT_MODE,g,h],I={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:_,contains:T.concat([{begin:/\(/,end:/\)/,keywords:_,contains:T.concat(["self"]),relevance:0}]),relevance:0},R={className:"function",begin:"("+l+"[\\*&\\s]+)+"+b,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:_,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:r,keywords:_,relevance:0},{begin:b,returnBegin:!0,contains:[y],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[h,g]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:_,relevance:0,contains:[n,e.C_BLOCK_COMMENT_MODE,h,g,d,{begin:/\(/,end:/\)/,keywords:_,relevance:0,contains:["self",n,e.C_BLOCK_COMMENT_MODE,h,g,d]}]},d,n,e.C_BLOCK_COMMENT_MODE,m]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:_,illegal:"</",classNameAliases:{"function.dispatch":"built_in"},contains:[].concat(I,R,O,T,[m,{begin:"\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array|tuple|optional|variant|function|flat_map|flat_set)\\s*<(?!<)",end:">",keywords:_,contains:["self",d]},{begin:e.IDENT_RE+"::",keywords:_},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}function _9(e){const t=["bool","byte","char","decimal","delegate","double","dynamic","enum","float","int","long","nint","nuint","object","sbyte","short","string","ulong","uint","ushort"],n=["public","private","protected","static","internal","protected","abstract","async","extern","override","unsafe","virtual","new","sealed","partial"],r=["default","false","null","true"],a=["abstract","as","base","break","case","catch","class","const","continue","do","else","event","explicit","extern","finally","fixed","for","foreach","goto","if","implicit","in","interface","internal","is","lock","namespace","new","operator","out","override","params","private","protected","public","readonly","record","ref","return","scoped","sealed","sizeof","stackalloc","static","struct","switch","this","throw","try","typeof","unchecked","unsafe","using","virtual","void","volatile","while"],o=["add","alias","and","ascending","args","async","await","by","descending","dynamic","equals","file","from","get","global","group","init","into","join","let","nameof","not","notnull","on","or","orderby","partial","record","remove","required","scoped","select","set","unmanaged","value|0","var","when","where","with","yield"],l={keyword:a.concat(o),built_in:t,literal:r},d=e.inherit(e.TITLE_MODE,{begin:"[a-zA-Z](\\.?\\w)*"}),f={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0},h={className:"string",begin:/"""("*)(?!")(.|\n)*?"""\1/,relevance:1},g={className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},m=e.inherit(g,{illegal:/\n/}),y={className:"subst",begin:/\{/,end:/\}/,keywords:l},b=e.inherit(y,{illegal:/\n/}),k={className:"string",begin:/\$"/,end:'"',illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},e.BACKSLASH_ESCAPE,b]},v={className:"string",begin:/\$@"/,end:'"',contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},y]},S=e.inherit(v,{illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},b]});y.contains=[v,k,g,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,f,e.C_BLOCK_COMMENT_MODE],b.contains=[S,k,m,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,f,e.inherit(e.C_BLOCK_COMMENT_MODE,{illegal:/\n/})];const E={variants:[h,v,k,g,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},j={begin:"<",end:">",contains:[{beginKeywords:"in out"},d]},N=e.IDENT_RE+"(<"+e.IDENT_RE+"(\\s*,\\s*"+e.IDENT_RE+")*>)?(\\[\\])?",_={begin:"@"+e.IDENT_RE,relevance:0};return{name:"C#",aliases:["cs","c#"],keywords:l,illegal:/::/,contains:[e.COMMENT("///","$",{returnBegin:!0,contains:[{className:"doctag",variants:[{begin:"///",relevance:0},{begin:"<!--|-->"},{begin:"</?",end:">"}]}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"meta",begin:"#",end:"$",keywords:{keyword:"if else elif endif define undef warning error line region endregion pragma checksum"}},E,f,{beginKeywords:"class interface",relevance:0,end:/[{;=]/,illegal:/[^\s:,]/,contains:[{beginKeywords:"where class"},d,j,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"namespace",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[d,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"record",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[d,j,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"meta",begin:"^\\s*\\[(?=[\\w])",excludeBegin:!0,end:"\\]",excludeEnd:!0,contains:[{className:"string",begin:/"/,end:/"/}]},{beginKeywords:"new return throw await else",relevance:0},{className:"function",begin:"("+N+"\\s+)+"+e.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,end:/\s*[{;=]/,excludeEnd:!0,keywords:l,contains:[{beginKeywords:n.join(" "),relevance:0},{begin:e.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,contains:[e.TITLE_MODE,j],relevance:0},{match:/\(\)/},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,relevance:0,contains:[E,f,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},_]}}const j9=e=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),C9=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],A9=["defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],T9=[...C9,...A9],M9=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),D9=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),O9=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),R9=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function L9(e){const t=e.regex,n=j9(e),r={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},a="and or not only",o=/@-?\w[\w]*(-\w+)*/,l="[a-zA-Z-][a-zA-Z0-9_-]*",d=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[n.BLOCK_COMMENT,r,n.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\."+l,relevance:0},n.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+D9.join("|")+")"},{begin:":(:)?("+O9.join("|")+")"}]},n.CSS_VARIABLE,{className:"attribute",begin:"\\b("+R9.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[n.BLOCK_COMMENT,n.HEXCOLOR,n.IMPORTANT,n.CSS_NUMBER_MODE,...d,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...d,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},n.FUNCTION_DISPATCH]},{begin:t.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:o},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:a,attribute:M9.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...d,n.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+T9.join("|")+")\\b"}]}}function I9(e){const t=e.regex;return{name:"Diff",aliases:["patch"],contains:[{className:"meta",relevance:10,match:t.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/)},{className:"comment",variants:[{begin:t.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/),end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/,end:/$/}]}}function z9(e){const o={keyword:["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var"],type:["bool","byte","complex64","complex128","error","float32","float64","int8","int16","int32","int64","string","uint8","uint16","uint32","uint64","int","uint","uintptr","rune"],literal:["true","false","iota","nil"],built_in:["append","cap","close","complex","copy","imag","len","make","new","panic","print","println","real","recover","delete"]};return{name:"Go",aliases:["golang"],keywords:o,illegal:"</",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"string",variants:[e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{begin:"`",end:"`"}]},{className:"number",variants:[{match:/-?\b0[xX]\.[a-fA-F0-9](_?[a-fA-F0-9])*[pP][+-]?\d(_?\d)*i?/,relevance:0},{match:/-?\b0[xX](_?[a-fA-F0-9])+((\.([a-fA-F0-9](_?[a-fA-F0-9])*)?)?[pP][+-]?\d(_?\d)*)?i?/,relevance:0},{match:/-?\b0[oO](_?[0-7])*i?/,relevance:0},{match:/-?\.\d(_?\d)*([eE][+-]?\d(_?\d)*)?i?/,relevance:0},{match:/-?\b\d(_?\d)*(\.(\d(_?\d)*)?)?([eE][+-]?\d(_?\d)*)?i?/,relevance:0}]},{begin:/:=/},{className:"function",beginKeywords:"func",end:"\\s*(\\{|$)",excludeEnd:!0,contains:[e.TITLE_MODE,{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:o,illegal:/["']/}]}]}}function P9(e){const t=e.regex,n=/[_A-Za-z][_0-9A-Za-z]*/;return{name:"GraphQL",aliases:["gql"],case_insensitive:!0,disableAutodetect:!1,keywords:{keyword:["query","mutation","subscription","type","input","schema","directive","interface","union","scalar","fragment","enum","on"],literal:["true","false","null"]},contains:[e.HASH_COMMENT_MODE,e.QUOTE_STRING_MODE,e.NUMBER_MODE,{scope:"punctuation",match:/[.]{3}/,relevance:0},{scope:"punctuation",begin:/[\!\(\)\:\=\[\]\{\|\}]{1}/,relevance:0},{scope:"variable",begin:/\$/,end:/\W/,excludeEnd:!0,relevance:0},{scope:"meta",match:/@\w+/,excludeEnd:!0},{scope:"symbol",begin:t.concat(n,t.lookahead(/\s*:/)),relevance:0}],illegal:[/[;<']/,/BEGIN/]}}function B9(e){const t=e.regex,n={className:"number",relevance:0,variants:[{begin:/([+-]+)?[\d]+_[\d_]+/},{begin:e.NUMBER_RE}]},r=e.COMMENT();r.variants=[{begin:/;/,end:/$/},{begin:/#/,end:/$/}];const a={className:"variable",variants:[{begin:/\$[\w\d"][\w\d_]*/},{begin:/\$\{(.*?)\}/}]},o={className:"literal",begin:/\bon|off|true|false|yes|no\b/},l={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:"'''",end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"'},{begin:"'",end:"'"}]},d={begin:/\[/,end:/\]/,contains:[r,o,a,l,n,"self"],relevance:0},f=/[A-Za-z0-9_-]+/,h=/"(\\"|[^"])*"/,g=/'[^']*'/,m=t.either(f,h,g),y=t.concat(m,"(\\s*\\.\\s*",m,")*",t.lookahead(/\s*=\s*[^#\s]/));return{name:"TOML, also INI",aliases:["toml"],case_insensitive:!0,illegal:/\S/,contains:[r,{className:"section",begin:/\[+/,end:/\]+/},{begin:y,className:"attr",starts:{end:/$/,contains:[r,d,o,a,l,n]}}]}}var ul="[0-9](_*[0-9])*",Df=`\\.(${ul})`,Of="[0-9a-fA-F](_*[0-9a-fA-F])*",gE={className:"number",variants:[{begin:`(\\b(${ul})((${Df})|\\.)?|(${Df}))[eE][+-]?(${ul})[fFdD]?\\b`},{begin:`\\b(${ul})((${Df})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${Df})[fFdD]?\\b`},{begin:`\\b(${ul})[fFdD]\\b`},{begin:`\\b0[xX]((${Of})\\.?|(${Of})?\\.(${Of}))[pP][+-]?(${ul})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${Of})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function bj(e,t,n){return n===-1?"":e.replace(t,r=>bj(e,t,n-1))}function U9(e){const t=e.regex,n="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",r=n+bj("(?:<"+n+"~~~(?:\\s*,\\s*"+n+"~~~)*>)?",/~~~/g,2),f={keyword:["synchronized","abstract","private","var","static","if","const ","for","while","strictfp","finally","protected","import","native","final","void","enum","else","break","transient","catch","instanceof","volatile","case","assert","package","default","public","try","switch","continue","throws","protected","public","private","module","requires","exports","do","sealed","yield","permits","goto","when"],literal:["false","true","null"],type:["char","boolean","long","float","int","byte","short","double"],built_in:["super","this"]},h={className:"meta",begin:"@"+n,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},g={className:"params",begin:/\(/,end:/\)/,keywords:f,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:f,illegal:/<\/|#/,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[e.BACKSLASH_ESCAPE]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,n],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[t.concat(/(?!else)/,n),/\s+/,n,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,n],className:{1:"keyword",3:"title.class"},contains:[g,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+r+"\\s+)",e.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:f,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:f,relevance:0,contains:[h,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,gE,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},gE,h]}}const yE="[A-Za-z$_][0-9A-Za-z$_]*",$9=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],F9=["true","false","null","undefined","NaN","Infinity"],xj=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],vj=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],wj=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],q9=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],H9=[].concat(wj,xj,vj);function K9(e){const t=e.regex,n=(Q,{after:K})=>{const L="</"+Q[0].slice(1);return Q.input.indexOf(L,K)!==-1},r=yE,a={begin:"<>",end:"</>"},o=/<[A-Za-z0-9\\._:-]+\s*\/>/,l={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(Q,K)=>{const L=Q[0].length+Q.index,z=Q.input[L];if(z==="<"||z===","){K.ignoreMatch();return}z===">"&&(n(Q,{after:L})||K.ignoreMatch());let G;const P=Q.input.substring(L);if(G=P.match(/^\s*=/)){K.ignoreMatch();return}if((G=P.match(/^\s+extends\s+/))&&G.index===0){K.ignoreMatch();return}}},d={$pattern:yE,keyword:$9,literal:F9,built_in:H9,"variable.language":q9},f="[0-9](_?[0-9])*",h=`\\.(${f})`,g="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",m={className:"number",variants:[{begin:`(\\b(${g})((${h})|\\.)?|(${h}))[eE][+-]?(${f})\\b`},{begin:`\\b(${g})\\b((${h})\\b|\\.)?|(${h})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},y={className:"subst",begin:"\\$\\{",end:"\\}",keywords:d,contains:[]},b={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,y],subLanguage:"xml"}},k={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,y],subLanguage:"css"}},v={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,y],subLanguage:"graphql"}},S={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,y]},j={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:r+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},N=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,b,k,v,S,{match:/\$\d+/},m];y.contains=N.concat({begin:/\{/,end:/\}/,keywords:d,contains:["self"].concat(N)});const _=[].concat(j,y.contains),O=_.concat([{begin:/(\s*)\(/,end:/\)/,keywords:d,contains:["self"].concat(_)}]),T={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:d,contains:O},I={variants:[{match:[/class/,/\s+/,r,/\s+/,/extends/,/\s+/,t.concat(r,"(",t.concat(/\./,r),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,r],scope:{1:"keyword",3:"title.class"}}]},R={relevance:0,match:t.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...xj,...vj]}},F={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},M={variants:[{match:[/function/,/\s+/,r,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[T],illegal:/%/},U={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function q(Q){return t.concat("(?!",Q.join("|"),")")}const Y={match:t.concat(/\b/,q([...wj,"super","import"].map(Q=>`${Q}\\s*\\(`)),r,t.lookahead(/\s*\(/)),className:"title.function",relevance:0},D={begin:t.concat(/\./,t.lookahead(t.concat(r,/(?![0-9A-Za-z$_(])/))),end:r,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},H={match:[/get|set/,/\s+/,r,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},T]},B="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",V={match:[/const|var|let/,/\s+/,r,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(B)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[T]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:d,exports:{PARAMS_CONTAINS:O,CLASS_REFERENCE:R},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),F,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,b,k,v,S,j,{match:/\$\d+/},m,R,{scope:"attr",match:r+t.lookahead(":"),relevance:0},V,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[j,e.REGEXP_MODE,{className:"function",begin:B,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:d,contains:O}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:a.begin,end:a.end},{match:o},{begin:l.begin,"on:begin":l.isTrulyOpeningTag,end:l.end}],subLanguage:"xml",contains:[{begin:l.begin,end:l.end,skip:!0,contains:["self"]}]}]},M,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[T,e.inherit(e.TITLE_MODE,{begin:r,className:"title.function"})]},{match:/\.\.\./,relevance:0},D,{match:"\\$"+r,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[T]},Y,U,I,H,{match:/\$[(.]/}]}}function G9(e){const t={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},n={match:/[{}[\],:]/,className:"punctuation",relevance:0},r=["true","false","null"],a={scope:"literal",beginKeywords:r.join(" ")};return{name:"JSON",aliases:["jsonc"],keywords:{literal:r},contains:[t,n,e.QUOTE_STRING_MODE,a,e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}var dl="[0-9](_*[0-9])*",Rf=`\\.(${dl})`,Lf="[0-9a-fA-F](_*[0-9a-fA-F])*",V9={className:"number",variants:[{begin:`(\\b(${dl})((${Rf})|\\.)?|(${Rf}))[eE][+-]?(${dl})[fFdD]?\\b`},{begin:`\\b(${dl})((${Rf})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${Rf})[fFdD]?\\b`},{begin:`\\b(${dl})[fFdD]\\b`},{begin:`\\b0[xX]((${Lf})\\.?|(${Lf})?\\.(${Lf}))[pP][+-]?(${dl})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${Lf})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function Y9(e){const t={keyword:"abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual",built_in:"Byte Short Char Int Long Boolean Float Double Void Unit Nothing",literal:"true false null"},n={className:"keyword",begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol",begin:/@\w+/}]}},r={className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"@"},a={className:"subst",begin:/\$\{/,end:/\}/,contains:[e.C_NUMBER_MODE]},o={className:"variable",begin:"\\$"+e.UNDERSCORE_IDENT_RE},l={className:"string",variants:[{begin:'"""',end:'"""(?=[^"])',contains:[o,a]},{begin:"'",end:"'",illegal:/\n/,contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/,contains:[e.BACKSLASH_ESCAPE,o,a]}]};a.contains.push(l);const d={className:"meta",begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+e.UNDERSCORE_IDENT_RE+")?"},f={className:"meta",begin:"@"+e.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/,end:/\)/,contains:[e.inherit(l,{className:"string"}),"self"]}]},h=V9,g=e.COMMENT("/\\*","\\*/",{contains:[e.C_BLOCK_COMMENT_MODE]}),m={variants:[{className:"type",begin:e.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/,contains:[]}]},y=m;return y.variants[1].contains=[m],m.variants[1].contains=[y],{name:"Kotlin",aliases:["kt","kts"],keywords:t,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,g,n,r,d,f,{className:"function",beginKeywords:"fun",end:"[(]|$",returnBegin:!0,excludeEnd:!0,keywords:t,relevance:5,contains:[{begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"type",begin:/</,end:/>/,keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:t,relevance:0,contains:[{begin:/:/,end:/[=,\/]/,endsWithParent:!0,contains:[m,e.C_LINE_COMMENT_MODE,g],relevance:0},e.C_LINE_COMMENT_MODE,g,d,f,l,e.C_NUMBER_MODE]},g]},{begin:[/class|interface|trait/,/\s+/,e.UNDERSCORE_IDENT_RE],beginScope:{3:"title.class"},keywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0,illegal:"extends implements",contains:[{beginKeywords:"public protected internal private constructor"},e.UNDERSCORE_TITLE_MODE,{className:"type",begin:/</,end:/>/,excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,){\s]|$/,excludeBegin:!0,returnEnd:!0},d,f]},l,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:`
632
+ `},h]}}const Q9=e=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),W9=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],X9=["defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],Z9=[...W9,...X9],J9=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),kj=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),Ej=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),eF=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse(),tF=kj.concat(Ej).sort().reverse();function nF(e){const t=Q9(e),n=tF,r="and or not only",a="[\\w-]+",o="("+a+"|@\\{"+a+"\\})",l=[],d=[],f=function(N){return{className:"string",begin:"~?"+N+".*?"+N}},h=function(N,_,O){return{className:N,begin:_,relevance:O}},g={$pattern:/[a-z-]+/,keyword:r,attribute:J9.join(" ")},m={begin:"\\(",end:"\\)",contains:d,keywords:g,relevance:0};d.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,f("'"),f('"'),t.CSS_NUMBER_MODE,{begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]",excludeEnd:!0}},t.HEXCOLOR,m,h("variable","@@?"+a,10),h("variable","@\\{"+a+"\\}"),h("built_in","~?`[^`]*?`"),{className:"attribute",begin:a+"\\s*:",end:":",returnBegin:!0,excludeEnd:!0},t.IMPORTANT,{beginKeywords:"and not"},t.FUNCTION_DISPATCH);const y=d.concat({begin:/\{/,end:/\}/,contains:l}),b={beginKeywords:"when",endsWithParent:!0,contains:[{beginKeywords:"and not"}].concat(d)},k={begin:o+"\\s*:",returnBegin:!0,end:/[;}]/,relevance:0,contains:[{begin:/-(webkit|moz|ms|o)-/},t.CSS_VARIABLE,{className:"attribute",begin:"\\b("+eF.join("|")+")\\b",end:/(?=:)/,starts:{endsWithParent:!0,illegal:"[<=$]",relevance:0,contains:d}}]},v={className:"keyword",begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{end:"[;{}]",keywords:g,returnEnd:!0,contains:d,relevance:0}},S={className:"variable",variants:[{begin:"@"+a+"\\s*:",relevance:15},{begin:"@"+a}],starts:{end:"[;}]",returnEnd:!0,contains:y}},E={variants:[{begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:o,end:/\{/}],returnBegin:!0,returnEnd:!0,illegal:`[<='$"]`,relevance:0,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,b,h("keyword","all\\b"),h("variable","@\\{"+a+"\\}"),{begin:"\\b("+Z9.join("|")+")\\b",className:"selector-tag"},t.CSS_NUMBER_MODE,h("selector-tag",o,0),h("selector-id","#"+o),h("selector-class","\\."+o,0),h("selector-tag","&",0),t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",begin:":("+kj.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+Ej.join("|")+")"},{begin:/\(/,end:/\)/,relevance:0,contains:y},{begin:"!important"},t.FUNCTION_DISPATCH]},j={begin:a+`:(:)?(${n.join("|")})`,returnBegin:!0,contains:[E]};return l.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,v,S,j,k,E,b,t.FUNCTION_DISPATCH),{name:"Less",case_insensitive:!0,illegal:`[=>'/<($"]`,contains:l}}function rF(e){const t="\\[=*\\[",n="\\]=*\\]",r={begin:t,end:n,contains:["self"]},a=[e.COMMENT("--(?!"+t+")","$"),e.COMMENT("--"+t,n,{contains:[r],relevance:10})];return{name:"Lua",aliases:["pluto"],keywords:{$pattern:e.UNDERSCORE_IDENT_RE,literal:"true false nil",keyword:"and break do else elseif end for goto if in local not or repeat return then until while",built_in:"_G _ENV _VERSION __index __newindex __mode __call __metatable __tostring __len __gc __add __sub __mul __div __mod __pow __concat __unm __eq __lt __le assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring module next pairs pcall print rawequal rawget rawset require select setfenv setmetatable tonumber tostring type unpack xpcall arg self coroutine resume yield status wrap create running debug getupvalue debug sethook getmetatable gethook setmetatable setlocal traceback setfenv getinfo setupvalue getlocal getregistry getfenv io lines write close flush open output type read stderr stdin input stdout popen tmpfile math log max acos huge ldexp pi cos tanh pow deg tan cosh sinh random randomseed frexp ceil floor rad abs sqrt modf asin min mod fmod log10 atan2 exp sin atan os exit setlocale date getenv difftime remove time clock tmpname rename execute package preload loadlib loaded loaders cpath config path seeall string sub upper len gfind rep find match char dump gmatch reverse byte format gsub lower table setn insert getn foreachi maxn foreach concat sort remove"},contains:a.concat([{className:"function",beginKeywords:"function",end:"\\)",contains:[e.inherit(e.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{className:"params",begin:"\\(",endsWithParent:!0,contains:a}].concat(a)},e.C_NUMBER_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"string",begin:t,end:n,contains:[r],relevance:5}])}}function iF(e){const t={className:"variable",variants:[{begin:"\\$\\("+e.UNDERSCORE_IDENT_RE+"\\)",contains:[e.BACKSLASH_ESCAPE]},{begin:/\$[@%<?\^\+\*]/}]},n={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,t]},r={className:"variable",begin:/\$\([\w-]+\s/,end:/\)/,keywords:{built_in:"subst patsubst strip findstring filter filter-out sort word wordlist firstword lastword dir notdir suffix basename addsuffix addprefix join wildcard realpath abspath error warning shell origin flavor foreach if or and call eval file value"},contains:[t,n]},a={begin:"^"+e.UNDERSCORE_IDENT_RE+"\\s*(?=[:+?]?=)"},o={className:"meta",begin:/^\.PHONY:/,end:/$/,keywords:{$pattern:/[\.\w]+/,keyword:".PHONY"}},l={className:"section",begin:/^[^\s]+:/,end:/$/,contains:[t]};return{name:"Makefile",aliases:["mk","mak","make"],keywords:{$pattern:/[\w-]+/,keyword:"define endef undefine ifdef ifndef ifeq ifneq else endif include -include sinclude override export unexport private vpath"},contains:[e.HASH_COMMENT_MODE,t,n,r,a,o,l]}}function aF(e){const t=e.regex,n={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},r={begin:"^[-\\*]{3,}",end:"$"},a={className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))",contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},o={className:"bullet",begin:"^[ ]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},l={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},d=/[A-Za-z][A-Za-z0-9+.-]*/,f={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:t.concat(/\[.+?\]\(/,d,/:\/\/.*?\)/),relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{match:/\[(?=\])/},{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0,returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0}]},h={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},g={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},m=e.inherit(h,{contains:[]}),y=e.inherit(g,{contains:[]});h.contains.push(y),g.contains.push(m);let b=[n,f];return[h,g,m,y].forEach(E=>{E.contains=E.contains.concat(b)}),b=b.concat(h,g),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:b},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:b}]}]},n,o,h,g,{className:"quote",begin:"^>\\s+",contains:b,end:"$"},a,r,f,l,{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}function sF(e){const t={className:"built_in",begin:"\\b(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)\\w+"},n=/[a-zA-Z@][a-zA-Z0-9_]*/,d={"variable.language":["this","super"],$pattern:n,keyword:["while","export","sizeof","typedef","const","struct","for","union","volatile","static","mutable","if","do","return","goto","enum","else","break","extern","asm","case","default","register","explicit","typename","switch","continue","inline","readonly","assign","readwrite","self","@synchronized","id","typeof","nonatomic","IBOutlet","IBAction","strong","weak","copy","in","out","inout","bycopy","byref","oneway","__strong","__weak","__block","__autoreleasing","@private","@protected","@public","@try","@property","@end","@throw","@catch","@finally","@autoreleasepool","@synthesize","@dynamic","@selector","@optional","@required","@encode","@package","@import","@defs","@compatibility_alias","__bridge","__bridge_transfer","__bridge_retained","__bridge_retain","__covariant","__contravariant","__kindof","_Nonnull","_Nullable","_Null_unspecified","__FUNCTION__","__PRETTY_FUNCTION__","__attribute__","getter","setter","retain","unsafe_unretained","nonnull","nullable","null_unspecified","null_resettable","class","instancetype","NS_DESIGNATED_INITIALIZER","NS_UNAVAILABLE","NS_REQUIRES_SUPER","NS_RETURNS_INNER_POINTER","NS_INLINE","NS_AVAILABLE","NS_DEPRECATED","NS_ENUM","NS_OPTIONS","NS_SWIFT_UNAVAILABLE","NS_ASSUME_NONNULL_BEGIN","NS_ASSUME_NONNULL_END","NS_REFINED_FOR_SWIFT","NS_SWIFT_NAME","NS_SWIFT_NOTHROW","NS_DURING","NS_HANDLER","NS_ENDHANDLER","NS_VALUERETURN","NS_VOIDRETURN"],literal:["false","true","FALSE","TRUE","nil","YES","NO","NULL"],built_in:["dispatch_once_t","dispatch_queue_t","dispatch_sync","dispatch_async","dispatch_once"],type:["int","float","char","unsigned","signed","short","long","double","wchar_t","unichar","void","bool","BOOL","id|0","_Bool"]},f={$pattern:n,keyword:["@interface","@class","@protocol","@implementation"]};return{name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"],keywords:d,illegal:"</",contains:[t,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.C_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{className:"string",variants:[{begin:'@"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]}]},{className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),{className:"string",begin:/<.*?>/,end:/$/,illegal:"\\n"},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"class",begin:"("+f.keyword.join("|")+")\\b",end:/(\{|$)/,excludeEnd:!0,keywords:f,contains:[e.UNDERSCORE_TITLE_MODE]},{begin:"\\."+e.UNDERSCORE_IDENT_RE,relevance:0}]}}function oF(e){const t=e.regex,n=["abs","accept","alarm","and","atan2","bind","binmode","bless","break","caller","chdir","chmod","chomp","chop","chown","chr","chroot","class","close","closedir","connect","continue","cos","crypt","dbmclose","dbmopen","defined","delete","die","do","dump","each","else","elsif","endgrent","endhostent","endnetent","endprotoent","endpwent","endservent","eof","eval","exec","exists","exit","exp","fcntl","field","fileno","flock","for","foreach","fork","format","formline","getc","getgrent","getgrgid","getgrnam","gethostbyaddr","gethostbyname","gethostent","getlogin","getnetbyaddr","getnetbyname","getnetent","getpeername","getpgrp","getpriority","getprotobyname","getprotobynumber","getprotoent","getpwent","getpwnam","getpwuid","getservbyname","getservbyport","getservent","getsockname","getsockopt","given","glob","gmtime","goto","grep","gt","hex","if","index","int","ioctl","join","keys","kill","last","lc","lcfirst","length","link","listen","local","localtime","log","lstat","lt","ma","map","method","mkdir","msgctl","msgget","msgrcv","msgsnd","my","ne","next","no","not","oct","open","opendir","or","ord","our","pack","package","pipe","pop","pos","print","printf","prototype","push","q|0","qq","quotemeta","qw","qx","rand","read","readdir","readline","readlink","readpipe","recv","redo","ref","rename","require","reset","return","reverse","rewinddir","rindex","rmdir","say","scalar","seek","seekdir","select","semctl","semget","semop","send","setgrent","sethostent","setnetent","setpgrp","setpriority","setprotoent","setpwent","setservent","setsockopt","shift","shmctl","shmget","shmread","shmwrite","shutdown","sin","sleep","socket","socketpair","sort","splice","split","sprintf","sqrt","srand","stat","state","study","sub","substr","symlink","syscall","sysopen","sysread","sysseek","system","syswrite","tell","telldir","tie","tied","time","times","tr","truncate","uc","ucfirst","umask","undef","unless","unlink","unpack","unshift","untie","until","use","utime","values","vec","wait","waitpid","wantarray","warn","when","while","write","x|0","xor","y|0"],r=/[dualxmsipngr]{0,12}/,a={$pattern:/[\w.]+/,keyword:n.join(" ")},o={className:"subst",begin:"[$@]\\{",end:"\\}",keywords:a},l={begin:/->\{/,end:/\}/},d={scope:"attr",match:/\s+:\s*\w+(\s*\(.*?\))?/},f={scope:"variable",variants:[{begin:/\$\d/},{begin:t.concat(/[$%@](?!")(\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/,"(?![A-Za-z])(?![@$%])")},{begin:/[$%@](?!")[^\s\w{=]|\$=/,relevance:0}],contains:[d]},h={className:"number",variants:[{match:/0?\.[0-9][0-9_]+\b/},{match:/\bv?(0|[1-9][0-9_]*(\.[0-9_]+)?|[1-9][0-9_]*)\b/},{match:/\b0[0-7][0-7_]*\b/},{match:/\b0x[0-9a-fA-F][0-9a-fA-F_]*\b/},{match:/\b0b[0-1][0-1_]*\b/}],relevance:0},g=[e.BACKSLASH_ESCAPE,o,f],m=[/!/,/\//,/\|/,/\?/,/'/,/"/,/#/],y=(v,S,E="\\1")=>{const j=E==="\\1"?E:t.concat(E,S);return t.concat(t.concat("(?:",v,")"),S,/(?:\\.|[^\\\/])*?/,j,/(?:\\.|[^\\\/])*?/,E,r)},b=(v,S,E)=>t.concat(t.concat("(?:",v,")"),S,/(?:\\.|[^\\\/])*?/,E,r),k=[f,e.HASH_COMMENT_MODE,e.COMMENT(/^=\w/,/=cut/,{endsWithParent:!0}),l,{className:"string",contains:g,variants:[{begin:"q[qwxr]?\\s*\\(",end:"\\)",relevance:5},{begin:"q[qwxr]?\\s*\\[",end:"\\]",relevance:5},{begin:"q[qwxr]?\\s*\\{",end:"\\}",relevance:5},{begin:"q[qwxr]?\\s*\\|",end:"\\|",relevance:5},{begin:"q[qwxr]?\\s*<",end:">",relevance:5},{begin:"qw\\s+q",end:"q",relevance:5},{begin:"'",end:"'",contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"'},{begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE]},{begin:/\{\w+\}/,relevance:0},{begin:"-?\\w+\\s*=>",relevance:0}]},h,{begin:"(\\/\\/|"+e.RE_STARTERS_RE+"|\\b(split|return|print|reverse|grep)\\b)\\s*",keywords:"split return print reverse grep",relevance:0,contains:[e.HASH_COMMENT_MODE,{className:"regexp",variants:[{begin:y("s|tr|y",t.either(...m,{capture:!0}))},{begin:y("s|tr|y","\\(","\\)")},{begin:y("s|tr|y","\\[","\\]")},{begin:y("s|tr|y","\\{","\\}")}],relevance:2},{className:"regexp",variants:[{begin:/(m|qr)\/\//,relevance:0},{begin:b("(?:m|qr)?",/\//,/\//)},{begin:b("m|qr",t.either(...m,{capture:!0}),/\1/)},{begin:b("m|qr",/\(/,/\)/)},{begin:b("m|qr",/\[/,/\]/)},{begin:b("m|qr",/\{/,/\}/)}]}]},{className:"function",beginKeywords:"sub method",end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE,d]},{className:"class",beginKeywords:"class",end:"[;{]",excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE,d,h]},{begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$",subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}]}];return o.contains=k,l.contains=k,{name:"Perl",aliases:["pl","pm"],keywords:a,contains:k}}function lF(e){const t=e.regex,n=/(?![A-Za-z0-9])(?![$])/,r=t.concat(/[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/,n),a=t.concat(/(\\?[A-Z][a-z0-9_\x7f-\xff]+|\\?[A-Z]+(?=[A-Z][a-z0-9_\x7f-\xff])){1,}/,n),o=t.concat(/[A-Z]+/,n),l={scope:"variable",match:"\\$+"+r},d={scope:"meta",variants:[{begin:/<\?php/,relevance:10},{begin:/<\?=/},{begin:/<\?/,relevance:.1},{begin:/\?>/}]},f={scope:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]},h=e.inherit(e.APOS_STRING_MODE,{illegal:null}),g=e.inherit(e.QUOTE_STRING_MODE,{illegal:null,contains:e.QUOTE_STRING_MODE.contains.concat(f)}),m={begin:/<<<[ \t]*(?:(\w+)|"(\w+)")\n/,end:/[ \t]*(\w+)\b/,contains:e.QUOTE_STRING_MODE.contains.concat(f),"on:begin":(D,H)=>{H.data._beginMatch=D[1]||D[2]},"on:end":(D,H)=>{H.data._beginMatch!==D[1]&&H.ignoreMatch()}},y=e.END_SAME_AS_BEGIN({begin:/<<<[ \t]*'(\w+)'\n/,end:/[ \t]*(\w+)\b/}),b=`[
633
+ ]`,k={scope:"string",variants:[g,h,m,y]},v={scope:"number",variants:[{begin:"\\b0[bB][01]+(?:_[01]+)*\\b"},{begin:"\\b0[oO][0-7]+(?:_[0-7]+)*\\b"},{begin:"\\b0[xX][\\da-fA-F]+(?:_[\\da-fA-F]+)*\\b"},{begin:"(?:\\b\\d+(?:_\\d+)*(\\.(?:\\d+(?:_\\d+)*))?|\\B\\.\\d+)(?:[eE][+-]?\\d+)?"}],relevance:0},S=["false","null","true"],E=["__CLASS__","__DIR__","__FILE__","__FUNCTION__","__COMPILER_HALT_OFFSET__","__LINE__","__METHOD__","__NAMESPACE__","__TRAIT__","die","echo","exit","include","include_once","print","require","require_once","array","abstract","and","as","binary","bool","boolean","break","callable","case","catch","class","clone","const","continue","declare","default","do","double","else","elseif","empty","enddeclare","endfor","endforeach","endif","endswitch","endwhile","enum","eval","extends","final","finally","float","for","foreach","from","global","goto","if","implements","instanceof","insteadof","int","integer","interface","isset","iterable","list","match|0","mixed","new","never","object","or","private","protected","public","readonly","real","return","string","switch","throw","trait","try","unset","use","var","void","while","xor","yield"],j=["Error|0","AppendIterator","ArgumentCountError","ArithmeticError","ArrayIterator","ArrayObject","AssertionError","BadFunctionCallException","BadMethodCallException","CachingIterator","CallbackFilterIterator","CompileError","Countable","DirectoryIterator","DivisionByZeroError","DomainException","EmptyIterator","ErrorException","Exception","FilesystemIterator","FilterIterator","GlobIterator","InfiniteIterator","InvalidArgumentException","IteratorIterator","LengthException","LimitIterator","LogicException","MultipleIterator","NoRewindIterator","OutOfBoundsException","OutOfRangeException","OuterIterator","OverflowException","ParentIterator","ParseError","RangeException","RecursiveArrayIterator","RecursiveCachingIterator","RecursiveCallbackFilterIterator","RecursiveDirectoryIterator","RecursiveFilterIterator","RecursiveIterator","RecursiveIteratorIterator","RecursiveRegexIterator","RecursiveTreeIterator","RegexIterator","RuntimeException","SeekableIterator","SplDoublyLinkedList","SplFileInfo","SplFileObject","SplFixedArray","SplHeap","SplMaxHeap","SplMinHeap","SplObjectStorage","SplObserver","SplPriorityQueue","SplQueue","SplStack","SplSubject","SplTempFileObject","TypeError","UnderflowException","UnexpectedValueException","UnhandledMatchError","ArrayAccess","BackedEnum","Closure","Fiber","Generator","Iterator","IteratorAggregate","Serializable","Stringable","Throwable","Traversable","UnitEnum","WeakReference","WeakMap","Directory","__PHP_Incomplete_Class","parent","php_user_filter","self","static","stdClass"],_={keyword:E,literal:(D=>{const H=[];return D.forEach(B=>{H.push(B),B.toLowerCase()===B?H.push(B.toUpperCase()):H.push(B.toLowerCase())}),H})(S),built_in:j},O=D=>D.map(H=>H.replace(/\|\d+$/,"")),T={variants:[{match:[/new/,t.concat(b,"+"),t.concat("(?!",O(j).join("\\b|"),"\\b)"),a],scope:{1:"keyword",4:"title.class"}}]},I=t.concat(r,"\\b(?!\\()"),R={variants:[{match:[t.concat(/::/,t.lookahead(/(?!class\b)/)),I],scope:{2:"variable.constant"}},{match:[/::/,/class/],scope:{2:"variable.language"}},{match:[a,t.concat(/::/,t.lookahead(/(?!class\b)/)),I],scope:{1:"title.class",3:"variable.constant"}},{match:[a,t.concat("::",t.lookahead(/(?!class\b)/))],scope:{1:"title.class"}},{match:[a,/::/,/class/],scope:{1:"title.class",3:"variable.language"}}]},F={scope:"attr",match:t.concat(r,t.lookahead(":"),t.lookahead(/(?!::)/))},M={relevance:0,begin:/\(/,end:/\)/,keywords:_,contains:[F,l,R,e.C_BLOCK_COMMENT_MODE,k,v,T]},U={relevance:0,match:[/\b/,t.concat("(?!fn\\b|function\\b|",O(E).join("\\b|"),"|",O(j).join("\\b|"),"\\b)"),r,t.concat(b,"*"),t.lookahead(/(?=\()/)],scope:{3:"title.function.invoke"},contains:[M]};M.contains.push(U);const q=[F,R,e.C_BLOCK_COMMENT_MODE,k,v,T],Y={begin:t.concat(/#\[\s*\\?/,t.either(a,o)),beginScope:"meta",end:/]/,endScope:"meta",keywords:{literal:S,keyword:["new","array"]},contains:[{begin:/\[/,end:/]/,keywords:{literal:S,keyword:["new","array"]},contains:["self",...q]},...q,{scope:"meta",variants:[{match:a},{match:o}]}]};return{case_insensitive:!1,keywords:_,contains:[Y,e.HASH_COMMENT_MODE,e.COMMENT("//","$"),e.COMMENT("/\\*","\\*/",{contains:[{scope:"doctag",match:"@[A-Za-z]+"}]}),{match:/__halt_compiler\(\);/,keywords:"__halt_compiler",starts:{scope:"comment",end:e.MATCH_NOTHING_RE,contains:[{match:/\?>/,scope:"meta",endsParent:!0}]}},d,{scope:"variable.language",match:/\$this\b/},l,U,R,{match:[/const/,/\s/,r],scope:{1:"keyword",3:"variable.constant"}},T,{scope:"function",relevance:0,beginKeywords:"fn function",end:/[;{]/,excludeEnd:!0,illegal:"[$%\\[]",contains:[{beginKeywords:"use"},e.UNDERSCORE_TITLE_MODE,{begin:"=>",endsParent:!0},{scope:"params",begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0,keywords:_,contains:["self",Y,l,R,e.C_BLOCK_COMMENT_MODE,k,v]}]},{scope:"class",variants:[{beginKeywords:"enum",illegal:/[($"]/},{beginKeywords:"class interface trait",illegal:/[:($"]/}],relevance:0,end:/\{/,excludeEnd:!0,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",relevance:0,end:";",illegal:/[.']/,contains:[e.inherit(e.UNDERSCORE_TITLE_MODE,{scope:"title.class"})]},{beginKeywords:"use",relevance:0,end:";",contains:[{match:/\b(as|const|function)\b/,scope:"keyword"},e.UNDERSCORE_TITLE_MODE]},k,v]}}function cF(e){return{name:"PHP template",subLanguage:"xml",contains:[{begin:/<\?(php|=)?/,end:/\?>/,subLanguage:"php",contains:[{begin:"/\\*",end:"\\*/",skip:!0},{begin:'b"',end:'"',skip:!0},{begin:"b'",end:"'",skip:!0},e.inherit(e.APOS_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0})]}]}}function uF(e){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}function dF(e){const t=e.regex,n=new RegExp("[\\p{XID_Start}_]\\p{XID_Continue}*","u"),r=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],d={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:r,built_in:["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],literal:["__debug__","Ellipsis","False","None","NotImplemented","True"],type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"]},f={className:"meta",begin:/^(>>>|\.\.\.) /},h={className:"subst",begin:/\{/,end:/\}/,keywords:d,illegal:/#/},g={begin:/\{\{/,relevance:0},m={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,f],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,f],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,f,g,h]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,f,g,h]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,g,h]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,g,h]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},y="[0-9](_?[0-9])*",b=`(\\b(${y}))?\\.(${y})|\\b(${y})\\.`,k=`\\b|${r.join("|")}`,v={className:"number",relevance:0,variants:[{begin:`(\\b(${y})|(${b}))[eE][+-]?(${y})[jJ]?(?=${k})`},{begin:`(${b})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${k})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${k})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${k})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${k})`},{begin:`\\b(${y})[jJ](?=${k})`}]},S={className:"comment",begin:t.lookahead(/# type:/),end:/$/,keywords:d,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},E={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:d,contains:["self",f,v,m,e.HASH_COMMENT_MODE]}]};return h.contains=[m,v,f],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:d,illegal:/(<\/|\?)|=>/,contains:[f,v,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},m,S,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,n],scope:{1:"keyword",3:"title.function"},contains:[E]},{variants:[{match:[/\bclass/,/\s+/,n,/\s*/,/\(\s*/,n,/\s*\)/]},{match:[/\bclass/,/\s+/,n]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[v,E,m]}]}}function fF(e){return{aliases:["pycon"],contains:[{className:"meta.prompt",starts:{end:/ |$/,starts:{end:"$",subLanguage:"python"}},variants:[{begin:/^>>>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]}}function hF(e){const t=e.regex,n=/(?:(?:[a-zA-Z]|\.[._a-zA-Z])[._a-zA-Z0-9]*)|\.(?!\d)/,r=t.either(/0[xX][0-9a-fA-F]+\.[0-9a-fA-F]*[pP][+-]?\d+i?/,/0[xX][0-9a-fA-F]+(?:[pP][+-]?\d+)?[Li]?/,/(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?[Li]?/),a=/[=!<>:]=|\|\||&&|:::?|<-|<<-|->>|->|\|>|[-+*\/?!$&|:<=>@^~]|\*\*/,o=t.either(/[()]/,/[{}]/,/\[\[/,/[[\]]/,/\\/,/,/);return{name:"R",keywords:{$pattern:n,keyword:"function if in break next repeat else for while",literal:"NULL NA TRUE FALSE Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 NA_complex_|10",built_in:"LETTERS letters month.abb month.name pi T F abs acos acosh all any anyNA Arg as.call as.character as.complex as.double as.environment as.integer as.logical as.null.default as.numeric as.raw asin asinh atan atanh attr attributes baseenv browser c call ceiling class Conj cos cosh cospi cummax cummin cumprod cumsum digamma dim dimnames emptyenv exp expression floor forceAndCall gamma gc.time globalenv Im interactive invisible is.array is.atomic is.call is.character is.complex is.double is.environment is.expression is.finite is.function is.infinite is.integer is.language is.list is.logical is.matrix is.na is.name is.nan is.null is.numeric is.object is.pairlist is.raw is.recursive is.single is.symbol lazyLoadDBfetch length lgamma list log max min missing Mod names nargs nzchar oldClass on.exit pos.to.env proc.time prod quote range Re rep retracemem return round seq_along seq_len seq.int sign signif sin sinh sinpi sqrt standardGeneric substitute sum switch tan tanh tanpi tracemem trigamma trunc unclass untracemem UseMethod xtfrm"},contains:[e.COMMENT(/#'/,/$/,{contains:[{scope:"doctag",match:/@examples/,starts:{end:t.lookahead(t.either(/\n^#'\s*(?=@[a-zA-Z]+)/,/\n^(?!#')/)),endsParent:!0}},{scope:"doctag",begin:"@param",end:/$/,contains:[{scope:"variable",variants:[{match:n},{match:/`(?:\\.|[^`\\])+`/}],endsParent:!0}]},{scope:"doctag",match:/@[a-zA-Z]+/},{scope:"keyword",match:/\\[a-zA-Z]+/}]}),e.HASH_COMMENT_MODE,{scope:"string",contains:[e.BACKSLASH_ESCAPE],variants:[e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\(/,end:/\)(-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\{/,end:/\}(-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\[/,end:/\](-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\(/,end:/\)(-*)'/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\{/,end:/\}(-*)'/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\[/,end:/\](-*)'/}),{begin:'"',end:'"',relevance:0},{begin:"'",end:"'",relevance:0}]},{relevance:0,variants:[{scope:{1:"operator",2:"number"},match:[a,r]},{scope:{1:"operator",2:"number"},match:[/%[^%]*%/,r]},{scope:{1:"punctuation",2:"number"},match:[o,r]},{scope:{2:"number"},match:[/[^a-zA-Z0-9._]|^/,r]}]},{scope:{3:"operator"},match:[n,/\s+/,/<-/,/\s+/]},{scope:"operator",relevance:0,variants:[{match:a},{match:/%[^%]*%/}]},{scope:"punctuation",relevance:0,match:o},{begin:"`",end:"`",contains:[{begin:/\\./}]}]}}function pF(e){const t=e.regex,n="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",r=t.either(/\b([A-Z]+[a-z0-9]+)+/,/\b([A-Z]+[a-z0-9]+)+[A-Z]+/),a=t.concat(r,/(::\w+)*/),l={"variable.constant":["__FILE__","__LINE__","__ENCODING__"],"variable.language":["self","super"],keyword:["alias","and","begin","BEGIN","break","case","class","defined","do","else","elsif","end","END","ensure","for","if","in","module","next","not","or","redo","require","rescue","retry","return","then","undef","unless","until","when","while","yield",...["include","extend","prepend","public","private","protected","raise","throw"]],built_in:["proc","lambda","attr_accessor","attr_reader","attr_writer","define_method","private_constant","module_function"],literal:["true","false","nil"]},d={className:"doctag",begin:"@[A-Za-z]+"},f={begin:"#<",end:">"},h=[e.COMMENT("#","$",{contains:[d]}),e.COMMENT("^=begin","^=end",{contains:[d],relevance:10}),e.COMMENT("^__END__",e.MATCH_NOTHING_RE)],g={className:"subst",begin:/#\{/,end:/\}/,keywords:l},m={className:"string",contains:[e.BACKSLASH_ESCAPE,g],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:/%[qQwWx]?\(/,end:/\)/},{begin:/%[qQwWx]?\[/,end:/\]/},{begin:/%[qQwWx]?\{/,end:/\}/},{begin:/%[qQwWx]?</,end:/>/},{begin:/%[qQwWx]?\//,end:/\//},{begin:/%[qQwWx]?%/,end:/%/},{begin:/%[qQwWx]?-/,end:/-/},{begin:/%[qQwWx]?\|/,end:/\|/},{begin:/\B\?(\\\d{1,3})/},{begin:/\B\?(\\x[A-Fa-f0-9]{1,2})/},{begin:/\B\?(\\u\{?[A-Fa-f0-9]{1,6}\}?)/},{begin:/\B\?(\\M-\\C-|\\M-\\c|\\c\\M-|\\M-|\\C-\\M-)[\x20-\x7e]/},{begin:/\B\?\\(c|C-)[\x20-\x7e]/},{begin:/\B\?\\?\S/},{begin:t.concat(/<<[-~]?'?/,t.lookahead(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)),contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,contains:[e.BACKSLASH_ESCAPE,g]})]}]},y="[1-9](_?[0-9])*|0",b="[0-9](_?[0-9])*",k={className:"number",relevance:0,variants:[{begin:`\\b(${y})(\\.(${b}))?([eE][+-]?(${b})|r)?i?\\b`},{begin:"\\b0[dD][0-9](_?[0-9])*r?i?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*r?i?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*r?i?\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b"},{begin:"\\b0(_?[0-7])+r?i?\\b"}]},v={variants:[{match:/\(\)/},{className:"params",begin:/\(/,end:/(?=\))/,excludeBegin:!0,endsParent:!0,keywords:l}]},T=[m,{variants:[{match:[/class\s+/,a,/\s+<\s+/,a]},{match:[/\b(class|module)\s+/,a]}],scope:{2:"title.class",4:"title.class.inherited"},keywords:l},{match:[/(include|extend)\s+/,a],scope:{2:"title.class"},keywords:l},{relevance:0,match:[a,/\.new[. (]/],scope:{1:"title.class"}},{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"},{relevance:0,match:r,scope:"title.class"},{match:[/def/,/\s+/,n],scope:{1:"keyword",3:"title.function"},contains:[v]},{begin:e.IDENT_RE+"::"},{className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol",begin:":(?!\\s)",contains:[m,{begin:n}],relevance:0},k,{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{className:"params",begin:/\|(?!=)/,end:/\|/,excludeBegin:!0,excludeEnd:!0,relevance:0,keywords:l},{begin:"("+e.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[{className:"regexp",contains:[e.BACKSLASH_ESCAPE,g],illegal:/\n/,variants:[{begin:"/",end:"/[a-z]*"},{begin:/%r\{/,end:/\}[a-z]*/},{begin:"%r\\(",end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}]}].concat(f,h),relevance:0}].concat(f,h);g.contains=T,v.contains=T;const M=[{begin:/^\s*=>/,starts:{end:"$",contains:T}},{className:"meta.prompt",begin:"^("+"[>?]>"+"|"+"[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]"+"|"+"(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>"+")(?=[ ])",starts:{end:"$",keywords:l,contains:T}}];return h.unshift(f),{name:"Ruby",aliases:["rb","gemspec","podspec","thor","irb"],keywords:l,illegal:/\/\*/,contains:[e.SHEBANG({binary:"ruby"})].concat(M).concat(h).concat(T)}}function mF(e){const t=e.regex,n=/(r#)?/,r=t.concat(n,e.UNDERSCORE_IDENT_RE),a=t.concat(n,e.IDENT_RE),o={className:"title.function.invoke",relevance:0,begin:t.concat(/\b/,/(?!let|for|while|if|else|match\b)/,a,t.lookahead(/\s*\(/))},l="([ui](8|16|32|64|128|size)|f(32|64))?",d=["abstract","as","async","await","become","box","break","const","continue","crate","do","dyn","else","enum","extern","false","final","fn","for","if","impl","in","let","loop","macro","match","mod","move","mut","override","priv","pub","ref","return","self","Self","static","struct","super","trait","true","try","type","typeof","union","unsafe","unsized","use","virtual","where","while","yield"],f=["true","false","Some","None","Ok","Err"],h=["drop ","Copy","Send","Sized","Sync","Drop","Fn","FnMut","FnOnce","ToOwned","Clone","Debug","PartialEq","PartialOrd","Eq","Ord","AsRef","AsMut","Into","From","Default","Iterator","Extend","IntoIterator","DoubleEndedIterator","ExactSizeIterator","SliceConcatExt","ToString","assert!","assert_eq!","bitflags!","bytes!","cfg!","col!","concat!","concat_idents!","debug_assert!","debug_assert_eq!","env!","eprintln!","panic!","file!","format!","format_args!","include_bytes!","include_str!","line!","local_data_key!","module_path!","option_env!","print!","println!","select!","stringify!","try!","unimplemented!","unreachable!","vec!","write!","writeln!","macro_rules!","assert_ne!","debug_assert_ne!"],g=["i8","i16","i32","i64","i128","isize","u8","u16","u32","u64","u128","usize","f32","f64","str","char","bool","Box","Option","Result","String","Vec"];return{name:"Rust",aliases:["rs"],keywords:{$pattern:e.IDENT_RE+"!?",type:g,keyword:d,literal:f,built_in:h},illegal:"</",contains:[e.C_LINE_COMMENT_MODE,e.COMMENT("/\\*","\\*/",{contains:["self"]}),e.inherit(e.QUOTE_STRING_MODE,{begin:/b?"/,illegal:null}),{className:"symbol",begin:/'[a-zA-Z_][a-zA-Z0-9_]*(?!')/},{scope:"string",variants:[{begin:/b?r(#*)"(.|\n)*?"\1(?!#)/},{begin:/b?'/,end:/'/,contains:[{scope:"char.escape",match:/\\('|\w|x\w{2}|u\w{4}|U\w{8})/}]}]},{className:"number",variants:[{begin:"\\b0b([01_]+)"+l},{begin:"\\b0o([0-7_]+)"+l},{begin:"\\b0x([A-Fa-f0-9_]+)"+l},{begin:"\\b(\\d[\\d_]*(\\.[0-9_]+)?([eE][+-]?[0-9_]+)?)"+l}],relevance:0},{begin:[/fn/,/\s+/,r],className:{1:"keyword",3:"title.function"}},{className:"meta",begin:"#!?\\[",end:"\\]",contains:[{className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE]}]},{begin:[/let/,/\s+/,/(?:mut\s+)?/,r],className:{1:"keyword",3:"keyword",4:"variable"}},{begin:[/for/,/\s+/,r,/\s+/,/in/],className:{1:"keyword",3:"variable",5:"keyword"}},{begin:[/type/,/\s+/,r],className:{1:"keyword",3:"title.class"}},{begin:[/(?:trait|enum|struct|union|impl|for)/,/\s+/,r],className:{1:"keyword",3:"title.class"}},{begin:e.IDENT_RE+"::",keywords:{keyword:"Self",built_in:h,type:g}},{className:"punctuation",begin:"->"},o]}}const gF=e=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),yF=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],bF=["defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],xF=[...yF,...bF],vF=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),wF=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),kF=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),EF=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function SF(e){const t=gF(e),n=kF,r=wF,a="@[a-z-]+",o="and or not only",d={className:"variable",begin:"(\\$"+"[a-zA-Z-][a-zA-Z0-9_-]*"+")\\b",relevance:0};return{name:"SCSS",case_insensitive:!0,illegal:"[=/|']",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,t.CSS_NUMBER_MODE,{className:"selector-id",begin:"#[A-Za-z0-9_-]+",relevance:0},{className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0},t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-tag",begin:"\\b("+xF.join("|")+")\\b",relevance:0},{className:"selector-pseudo",begin:":("+r.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+n.join("|")+")"},d,{begin:/\(/,end:/\)/,contains:[t.CSS_NUMBER_MODE]},t.CSS_VARIABLE,{className:"attribute",begin:"\\b("+EF.join("|")+")\\b"},{begin:"\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b"},{begin:/:/,end:/[;}{]/,relevance:0,contains:[t.BLOCK_COMMENT,d,t.HEXCOLOR,t.CSS_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,t.IMPORTANT,t.FUNCTION_DISPATCH]},{begin:"@(page|font-face)",keywords:{$pattern:a,keyword:"@page @font-face"}},{begin:"@",end:"[{;]",returnBegin:!0,keywords:{$pattern:/[a-z-]+/,keyword:o,attribute:vF.join(" ")},contains:[{begin:a,className:"keyword"},{begin:/[a-z-]+(?=:)/,className:"attribute"},d,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,t.HEXCOLOR,t.CSS_NUMBER_MODE]},t.FUNCTION_DISPATCH]}}function NF(e){return{name:"Shell Session",aliases:["console","shellsession"],contains:[{className:"meta.prompt",begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/,subLanguage:"bash"}}]}}function _F(e){const t=e.regex,n=e.COMMENT("--","$"),r={scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},a={begin:/"/,end:/"/,contains:[{match:/""/}]},o=["true","false","unknown"],l=["double precision","large object","with timezone","without timezone"],d=["bigint","binary","blob","boolean","char","character","clob","date","dec","decfloat","decimal","float","int","integer","interval","nchar","nclob","national","numeric","real","row","smallint","time","timestamp","varchar","varying","varbinary"],f=["add","asc","collation","desc","final","first","last","view"],h=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year"],g=["abs","acos","array_agg","asin","atan","avg","cast","ceil","ceiling","coalesce","corr","cos","cosh","count","covar_pop","covar_samp","cume_dist","dense_rank","deref","element","exp","extract","first_value","floor","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","last_value","lead","listagg","ln","log","log10","lower","max","min","mod","nth_value","ntile","nullif","percent_rank","percentile_cont","percentile_disc","position","position_regex","power","rank","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","row_number","sin","sinh","sqrt","stddev_pop","stddev_samp","substring","substring_regex","sum","tan","tanh","translate","translate_regex","treat","trim","trim_array","unnest","upper","value_of","var_pop","var_samp","width_bucket"],m=["current_catalog","current_date","current_default_transform_group","current_path","current_role","current_schema","current_transform_group_for_type","current_user","session_user","system_time","system_user","current_time","localtime","current_timestamp","localtimestamp"],y=["create table","insert into","primary key","foreign key","not null","alter table","add constraint","grouping sets","on overflow","character set","respect nulls","ignore nulls","nulls first","nulls last","depth first","breadth first"],b=g,k=[...h,...f].filter(O=>!g.includes(O)),v={scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},S={scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},E={match:t.concat(/\b/,t.either(...b),/\s*\(/),relevance:0,keywords:{built_in:b}};function j(O){return t.concat(/\b/,t.either(...O.map(T=>T.replace(/\s+/,"\\s+"))),/\b/)}const N={scope:"keyword",match:j(y),relevance:0};function _(O,{exceptions:T,when:I}={}){const R=I;return T=T||[],O.map(F=>F.match(/\|\d+$/)||T.includes(F)?F:R(F)?`${F}|0`:F)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:_(k,{when:O=>O.length<3}),literal:o,type:d,built_in:m},contains:[{scope:"type",match:j(l)},N,E,v,r,a,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,n,S]}}function Sj(e){return e?typeof e=="string"?e:e.source:null}function ru(e){return $t("(?=",e,")")}function $t(...e){return e.map(n=>Sj(n)).join("")}function jF(e){const t=e[e.length-1];return typeof t=="object"&&t.constructor===Object?(e.splice(e.length-1,1),t):{}}function Jn(...e){return"("+(jF(e).capture?"":"?:")+e.map(r=>Sj(r)).join("|")+")"}const Cx=e=>$t(/\b/,e,/\w$/.test(e)?/\b/:/\B/),CF=["Protocol","Type"].map(Cx),bE=["init","self"].map(Cx),AF=["Any","Self"],Jg=["actor","any","associatedtype","async","await",/as\?/,/as!/,"as","borrowing","break","case","catch","class","consume","consuming","continue","convenience","copy","default","defer","deinit","didSet","distributed","do","dynamic","each","else","enum","extension","fallthrough",/fileprivate\(set\)/,"fileprivate","final","for","func","get","guard","if","import","indirect","infix",/init\?/,/init!/,"inout",/internal\(set\)/,"internal","in","is","isolated","nonisolated","lazy","let","macro","mutating","nonmutating",/open\(set\)/,"open","operator","optional","override","package","postfix","precedencegroup","prefix",/private\(set\)/,"private","protocol",/public\(set\)/,"public","repeat","required","rethrows","return","set","some","static","struct","subscript","super","switch","throws","throw",/try\?/,/try!/,"try","typealias",/unowned\(safe\)/,/unowned\(unsafe\)/,"unowned","var","weak","where","while","willSet"],xE=["false","nil","true"],TF=["assignment","associativity","higherThan","left","lowerThan","none","right"],MF=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warning"],vE=["abs","all","any","assert","assertionFailure","debugPrint","dump","fatalError","getVaList","isKnownUniquelyReferenced","max","min","numericCast","pointwiseMax","pointwiseMin","precondition","preconditionFailure","print","readLine","repeatElement","sequence","stride","swap","swift_unboxFromSwiftValueWithType","transcode","type","unsafeBitCast","unsafeDowncast","withExtendedLifetime","withUnsafeMutablePointer","withUnsafePointer","withVaList","withoutActuallyEscaping","zip"],Nj=Jn(/[/=\-+!*%<>&|^~?]/,/[\u00A1-\u00A7]/,/[\u00A9\u00AB]/,/[\u00AC\u00AE]/,/[\u00B0\u00B1]/,/[\u00B6\u00BB\u00BF\u00D7\u00F7]/,/[\u2016-\u2017]/,/[\u2020-\u2027]/,/[\u2030-\u203E]/,/[\u2041-\u2053]/,/[\u2055-\u205E]/,/[\u2190-\u23FF]/,/[\u2500-\u2775]/,/[\u2794-\u2BFF]/,/[\u2E00-\u2E7F]/,/[\u3001-\u3003]/,/[\u3008-\u3020]/,/[\u3030]/),_j=Jn(Nj,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),ey=$t(Nj,_j,"*"),jj=Jn(/[a-zA-Z_]/,/[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/,/[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/,/[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/,/[\u1E00-\u1FFF]/,/[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/,/[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/,/[\u2C00-\u2DFF\u2E80-\u2FFF]/,/[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/,/[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/,/[\uFE47-\uFEFE\uFF00-\uFFFD]/),xh=Jn(jj,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),Ei=$t(jj,xh,"*"),If=$t(/[A-Z]/,xh,"*"),DF=["attached","autoclosure",$t(/convention\(/,Jn("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","freestanding","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",$t(/objc\(/,Ei,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","resultBuilder","Sendable","testable","UIApplicationMain","unchecked","unknown","usableFromInline","warn_unqualified_access"],OF=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"];function RF(e){const t={match:/\s+/,relevance:0},n=e.COMMENT("/\\*","\\*/",{contains:["self"]}),r=[e.C_LINE_COMMENT_MODE,n],a={match:[/\./,Jn(...CF,...bE)],className:{2:"keyword"}},o={match:$t(/\./,Jn(...Jg)),relevance:0},l=Jg.filter(ke=>typeof ke=="string").concat(["_|0"]),d=Jg.filter(ke=>typeof ke!="string").concat(AF).map(Cx),f={variants:[{className:"keyword",match:Jn(...d,...bE)}]},h={$pattern:Jn(/\b\w+/,/#\w+/),keyword:l.concat(MF),literal:xE},g=[a,o,f],m={match:$t(/\./,Jn(...vE)),relevance:0},y={className:"built_in",match:$t(/\b/,Jn(...vE),/(?=\()/)},b=[m,y],k={match:/->/,relevance:0},v={className:"operator",relevance:0,variants:[{match:ey},{match:`\\.(\\.|${_j})+`}]},S=[k,v],E="([0-9]_*)+",j="([0-9a-fA-F]_*)+",N={className:"number",relevance:0,variants:[{match:`\\b(${E})(\\.(${E}))?([eE][+-]?(${E}))?\\b`},{match:`\\b0x(${j})(\\.(${j}))?([pP][+-]?(${E}))?\\b`},{match:/\b0o([0-7]_*)+\b/},{match:/\b0b([01]_*)+\b/}]},_=(ke="")=>({className:"subst",variants:[{match:$t(/\\/,ke,/[0\\tnr"']/)},{match:$t(/\\/,ke,/u\{[0-9a-fA-F]{1,8}\}/)}]}),O=(ke="")=>({className:"subst",match:$t(/\\/,ke,/[\t ]*(?:[\r\n]|\r\n)/)}),T=(ke="")=>({className:"subst",label:"interpol",begin:$t(/\\/,ke,/\(/),end:/\)/}),I=(ke="")=>({begin:$t(ke,/"""/),end:$t(/"""/,ke),contains:[_(ke),O(ke),T(ke)]}),R=(ke="")=>({begin:$t(ke,/"/),end:$t(/"/,ke),contains:[_(ke),T(ke)]}),F={className:"string",variants:[I(),I("#"),I("##"),I("###"),R(),R("#"),R("##"),R("###")]},M=[e.BACKSLASH_ESCAPE,{begin:/\[/,end:/\]/,relevance:0,contains:[e.BACKSLASH_ESCAPE]}],U={begin:/\/[^\s](?=[^/\n]*\/)/,end:/\//,contains:M},q=ke=>{const Qe=$t(ke,/\//),re=$t(/\//,ke);return{begin:Qe,end:re,contains:[...M,{scope:"comment",begin:`#(?!.*${re})`,end:/$/}]}},Y={scope:"regexp",variants:[q("###"),q("##"),q("#"),U]},D={match:$t(/`/,Ei,/`/)},H={className:"variable",match:/\$\d+/},B={className:"variable",match:`\\$${xh}+`},V=[D,H,B],Q={match:/(@|#(un)?)available/,scope:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:OF,contains:[...S,N,F]}]}},K={scope:"keyword",match:$t(/@/,Jn(...DF),ru(Jn(/\(/,/\s+/)))},L={scope:"meta",match:$t(/@/,Ei)},z=[Q,K,L],G={match:ru(/\b[A-Z]/),relevance:0,contains:[{className:"type",match:$t(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,xh,"+")},{className:"type",match:If,relevance:0},{match:/[?!]+/,relevance:0},{match:/\.\.\./,relevance:0},{match:$t(/\s+&\s+/,ru(If)),relevance:0}]},P={begin:/</,end:/>/,keywords:h,contains:[...r,...g,...z,k,G]};G.contains.push(P);const oe={match:$t(Ei,/\s*:/),keywords:"_|0",relevance:0},be={begin:/\(/,end:/\)/,relevance:0,keywords:h,contains:["self",oe,...r,Y,...g,...b,...S,N,F,...V,...z,G]},xe={begin:/</,end:/>/,keywords:"repeat each",contains:[...r,G]},we={begin:Jn(ru($t(Ei,/\s*:/)),ru($t(Ei,/\s+/,Ei,/\s*:/))),end:/:/,relevance:0,contains:[{className:"keyword",match:/\b_\b/},{className:"params",match:Ei}]},J={begin:/\(/,end:/\)/,keywords:h,contains:[we,...r,...g,...S,N,F,...z,G,be],endsParent:!0,illegal:/["']/},de={match:[/(func|macro)/,/\s+/,Jn(D.match,Ei,ey)],className:{1:"keyword",3:"title.function"},contains:[xe,J,t],illegal:[/\[/,/%/]},Ce={match:[/\b(?:subscript|init[?!]?)/,/\s*(?=[<(])/],className:{1:"keyword"},contains:[xe,J,t],illegal:/\[|%/},Re={match:[/operator/,/\s+/,ey],className:{1:"keyword",3:"title"}},Me={begin:[/precedencegroup/,/\s+/,If],className:{1:"keyword",3:"title"},contains:[G],keywords:[...TF,...xE],end:/}/},le={match:[/class\b/,/\s+/,/func\b/,/\s+/,/\b[A-Za-z_][A-Za-z0-9_]*\b/],scope:{1:"keyword",3:"keyword",5:"title.function"}},Ne={match:[/class\b/,/\s+/,/var\b/],scope:{1:"keyword",3:"keyword"}},Te={begin:[/(struct|protocol|class|extension|enum|actor)/,/\s+/,Ei,/\s*/],beginScope:{1:"keyword",3:"title.class"},keywords:h,contains:[xe,...g,{begin:/:/,end:/\{/,keywords:h,contains:[{scope:"title.class.inherited",match:If},...g],relevance:0}]};for(const ke of F.variants){const Qe=ke.contains.find(Ae=>Ae.label==="interpol");Qe.keywords=h;const re=[...g,...b,...S,N,F,...V];Qe.contains=[...re,{begin:/\(/,end:/\)/,contains:["self",...re]}]}return{name:"Swift",keywords:h,contains:[...r,de,Ce,le,Ne,Te,Re,Me,{beginKeywords:"import",end:/$/,contains:[...r],relevance:0},Y,...g,...b,...S,N,F,...V,...z,G,be]}}const vh="[A-Za-z$_][0-9A-Za-z$_]*",Cj=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],Aj=["true","false","null","undefined","NaN","Infinity"],Tj=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],Mj=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],Dj=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Oj=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],Rj=[].concat(Dj,Tj,Mj);function LF(e){const t=e.regex,n=(Q,{after:K})=>{const L="</"+Q[0].slice(1);return Q.input.indexOf(L,K)!==-1},r=vh,a={begin:"<>",end:"</>"},o=/<[A-Za-z0-9\\._:-]+\s*\/>/,l={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(Q,K)=>{const L=Q[0].length+Q.index,z=Q.input[L];if(z==="<"||z===","){K.ignoreMatch();return}z===">"&&(n(Q,{after:L})||K.ignoreMatch());let G;const P=Q.input.substring(L);if(G=P.match(/^\s*=/)){K.ignoreMatch();return}if((G=P.match(/^\s+extends\s+/))&&G.index===0){K.ignoreMatch();return}}},d={$pattern:vh,keyword:Cj,literal:Aj,built_in:Rj,"variable.language":Oj},f="[0-9](_?[0-9])*",h=`\\.(${f})`,g="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",m={className:"number",variants:[{begin:`(\\b(${g})((${h})|\\.)?|(${h}))[eE][+-]?(${f})\\b`},{begin:`\\b(${g})\\b((${h})\\b|\\.)?|(${h})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},y={className:"subst",begin:"\\$\\{",end:"\\}",keywords:d,contains:[]},b={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,y],subLanguage:"xml"}},k={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,y],subLanguage:"css"}},v={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,y],subLanguage:"graphql"}},S={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,y]},j={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:r+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},N=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,b,k,v,S,{match:/\$\d+/},m];y.contains=N.concat({begin:/\{/,end:/\}/,keywords:d,contains:["self"].concat(N)});const _=[].concat(j,y.contains),O=_.concat([{begin:/(\s*)\(/,end:/\)/,keywords:d,contains:["self"].concat(_)}]),T={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:d,contains:O},I={variants:[{match:[/class/,/\s+/,r,/\s+/,/extends/,/\s+/,t.concat(r,"(",t.concat(/\./,r),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,r],scope:{1:"keyword",3:"title.class"}}]},R={relevance:0,match:t.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...Tj,...Mj]}},F={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},M={variants:[{match:[/function/,/\s+/,r,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[T],illegal:/%/},U={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function q(Q){return t.concat("(?!",Q.join("|"),")")}const Y={match:t.concat(/\b/,q([...Dj,"super","import"].map(Q=>`${Q}\\s*\\(`)),r,t.lookahead(/\s*\(/)),className:"title.function",relevance:0},D={begin:t.concat(/\./,t.lookahead(t.concat(r,/(?![0-9A-Za-z$_(])/))),end:r,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},H={match:[/get|set/,/\s+/,r,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},T]},B="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",V={match:[/const|var|let/,/\s+/,r,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(B)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[T]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:d,exports:{PARAMS_CONTAINS:O,CLASS_REFERENCE:R},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),F,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,b,k,v,S,j,{match:/\$\d+/},m,R,{scope:"attr",match:r+t.lookahead(":"),relevance:0},V,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[j,e.REGEXP_MODE,{className:"function",begin:B,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:d,contains:O}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:a.begin,end:a.end},{match:o},{begin:l.begin,"on:begin":l.isTrulyOpeningTag,end:l.end}],subLanguage:"xml",contains:[{begin:l.begin,end:l.end,skip:!0,contains:["self"]}]}]},M,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[T,e.inherit(e.TITLE_MODE,{begin:r,className:"title.function"})]},{match:/\.\.\./,relevance:0},D,{match:"\\$"+r,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[T]},Y,U,I,H,{match:/\$[(.]/}]}}function IF(e){const t=e.regex,n=LF(e),r=vh,a=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],o={begin:[/namespace/,/\s+/,e.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},l={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:a},contains:[n.exports.CLASS_REFERENCE]},d={className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/},f=["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"],h={$pattern:vh,keyword:Cj.concat(f),literal:Aj,built_in:Rj.concat(a),"variable.language":Oj},g={className:"meta",begin:"@"+r},m=(v,S,E)=>{const j=v.contains.findIndex(N=>N.label===S);if(j===-1)throw new Error("can not find mode to replace");v.contains.splice(j,1,E)};Object.assign(n.keywords,h),n.exports.PARAMS_CONTAINS.push(g);const y=n.contains.find(v=>v.scope==="attr"),b=Object.assign({},y,{match:t.concat(r,t.lookahead(/\s*\?:/))});n.exports.PARAMS_CONTAINS.push([n.exports.CLASS_REFERENCE,y,b]),n.contains=n.contains.concat([g,o,l,b]),m(n,"shebang",e.SHEBANG()),m(n,"use_strict",d);const k=n.contains.find(v=>v.label==="func.def");return k.relevance=0,Object.assign(n,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),n}function zF(e){const t=e.regex,n={className:"string",begin:/"(""|[^/n])"C\b/},r={className:"string",begin:/"/,end:/"/,illegal:/\n/,contains:[{begin:/""/}]},a=/\d{1,2}\/\d{1,2}\/\d{4}/,o=/\d{4}-\d{1,2}-\d{1,2}/,l=/(\d|1[012])(:\d+){0,2} *(AM|PM)/,d=/\d{1,2}(:\d{1,2}){1,2}/,f={className:"literal",variants:[{begin:t.concat(/# */,t.either(o,a),/ *#/)},{begin:t.concat(/# */,d,/ *#/)},{begin:t.concat(/# */,l,/ *#/)},{begin:t.concat(/# */,t.either(o,a),/ +/,t.either(l,d),/ *#/)}]},h={className:"number",relevance:0,variants:[{begin:/\b\d[\d_]*((\.[\d_]+(E[+-]?[\d_]+)?)|(E[+-]?[\d_]+))[RFD@!#]?/},{begin:/\b\d[\d_]*((U?[SIL])|[%&])?/},{begin:/&H[\dA-F_]+((U?[SIL])|[%&])?/},{begin:/&O[0-7_]+((U?[SIL])|[%&])?/},{begin:/&B[01_]+((U?[SIL])|[%&])?/}]},g={className:"label",begin:/^\w+:/},m=e.COMMENT(/'''/,/$/,{contains:[{className:"doctag",begin:/<\/?/,end:/>/}]}),y=e.COMMENT(null,/$/,{variants:[{begin:/'/},{begin:/([\t ]|^)REM(?=\s)/}]});return{name:"Visual Basic .NET",aliases:["vb"],case_insensitive:!0,classNameAliases:{label:"symbol"},keywords:{keyword:"addhandler alias aggregate ansi as async assembly auto binary by byref byval call case catch class compare const continue custom declare default delegate dim distinct do each equals else elseif end enum erase error event exit explicit finally for friend from function get global goto group handles if implements imports in inherits interface into iterator join key let lib loop me mid module mustinherit mustoverride mybase myclass namespace narrowing new next notinheritable notoverridable of off on operator option optional order overloads overridable overrides paramarray partial preserve private property protected public raiseevent readonly redim removehandler resume return select set shadows shared skip static step stop structure strict sub synclock take text then throw to try unicode until using when where while widening with withevents writeonly yield",built_in:"addressof and andalso await directcast gettype getxmlnamespace is isfalse isnot istrue like mod nameof new not or orelse trycast typeof xor cbool cbyte cchar cdate cdbl cdec cint clng cobj csbyte cshort csng cstr cuint culng cushort",type:"boolean byte char date decimal double integer long object sbyte short single string uinteger ulong ushort",literal:"true false nothing"},illegal:"//|\\{|\\}|endif|gosub|variant|wend|^\\$ ",contains:[n,r,f,h,g,m,y,{className:"meta",begin:/[\t ]*#(const|disable|else|elseif|enable|end|externalsource|if|region)\b/,end:/$/,keywords:{keyword:"const disable else elseif enable end externalsource if region then"},contains:[y]}]}}function PF(e){e.regex;const t=e.COMMENT(/\(;/,/;\)/);t.contains.push("self");const n=e.COMMENT(/;;/,/$/),r=["anyfunc","block","br","br_if","br_table","call","call_indirect","data","drop","elem","else","end","export","func","global.get","global.set","local.get","local.set","local.tee","get_global","get_local","global","if","import","local","loop","memory","memory.grow","memory.size","module","mut","nop","offset","param","result","return","select","set_global","set_local","start","table","tee_local","then","type","unreachable"],a={begin:[/(?:func|call|call_indirect)/,/\s+/,/\$[^\s)]+/],className:{1:"keyword",3:"title.function"}},o={className:"variable",begin:/\$[\w_]+/},l={match:/(\((?!;)|\))+/,className:"punctuation",relevance:0},d={className:"number",relevance:0,match:/[+-]?\b(?:\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:[eE][+-]?\d(?:_?\d)*)?|0x[\da-fA-F](?:_?[\da-fA-F])*(?:\.[\da-fA-F](?:_?[\da-fA-D])*)?(?:[pP][+-]?\d(?:_?\d)*)?)\b|\binf\b|\bnan(?::0x[\da-fA-F](?:_?[\da-fA-D])*)?\b/},f={match:/(i32|i64|f32|f64)(?!\.)/,className:"type"},h={className:"keyword",match:/\b(f32|f64|i32|i64)(?:\.(?:abs|add|and|ceil|clz|const|convert_[su]\/i(?:32|64)|copysign|ctz|demote\/f64|div(?:_[su])?|eqz?|extend_[su]\/i32|floor|ge(?:_[su])?|gt(?:_[su])?|le(?:_[su])?|load(?:(?:8|16|32)_[su])?|lt(?:_[su])?|max|min|mul|nearest|neg?|or|popcnt|promote\/f32|reinterpret\/[fi](?:32|64)|rem_[su]|rot[lr]|shl|shr_[su]|store(?:8|16|32)?|sqrt|sub|trunc(?:_[su]\/f(?:32|64))?|wrap\/i64|xor))\b/};return{name:"WebAssembly",keywords:{$pattern:/[\w.]+/,keyword:r},contains:[n,t,{match:[/(?:offset|align)/,/\s*/,/=/],className:{1:"keyword",3:"operator"}},o,l,a,e.QUOTE_STRING_MODE,f,h,d]}}function BF(e){const t=e.regex,n=t.concat(/[\p{L}_]/u,t.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),r=/[\p{L}0-9._:-]+/u,a={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},o={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},l=e.inherit(o,{begin:/\(/,end:/\)/}),d=e.inherit(e.APOS_STRING_MODE,{className:"string"}),f=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),h={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:"attr",begin:r,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[a]},{begin:/'/,end:/'/,contains:[a]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,relevance:10,contains:[o,f,d,l,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[o,l,f,d]}]}]},e.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},a,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[f]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[h],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[h],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:t.concat(/</,t.lookahead(t.concat(n,t.either(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:n,relevance:0,starts:h}]},{className:"tag",begin:t.concat(/<\//,t.lookahead(t.concat(n,/>/))),contains:[{className:"name",begin:n,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}function UF(e){const t="true false yes no null",n="[\\w#;/?:@&=+$,.~*'()[\\]]+",r={className:"attr",variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},a={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},o={className:"string",relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:"char.escape",relevance:0}]},l={className:"string",relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,a]},d=e.inherit(l,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),y={className:"number",begin:"\\b"+"[0-9]{4}(-[0-9][0-9]){0,2}"+"([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?"+"(\\.[0-9]*)?"+"([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?"+"\\b"},b={end:",",endsWithParent:!0,excludeEnd:!0,keywords:t,relevance:0},k={begin:/\{/,end:/\}/,contains:[b],illegal:"\\n",relevance:0},v={begin:"\\[",end:"\\]",contains:[b],illegal:"\\n",relevance:0},S=[r,{className:"meta",begin:"^---\\s*$",relevance:10},{className:"string",begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!\\w+!"+n},{className:"type",begin:"!<"+n+">"},{className:"type",begin:"!"+n},{className:"type",begin:"!!"+n},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:t,keywords:{literal:t}},y,{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},k,v,o,l],E=[...S];return E.pop(),E.push(d),b.contains=E,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:S}}const $F={arduino:k9,bash:E9,c:S9,cpp:N9,csharp:_9,css:L9,diff:I9,go:z9,graphql:P9,ini:B9,java:U9,javascript:K9,json:G9,kotlin:Y9,less:nF,lua:rF,makefile:iF,markdown:aF,objectivec:sF,perl:oF,php:lF,"php-template":cF,plaintext:uF,python:dF,"python-repl":fF,r:hF,ruby:pF,rust:mF,scss:SF,shell:NF,sql:_F,swift:RF,typescript:IF,vbnet:zF,wasm:PF,xml:BF,yaml:UF};var ty,wE;function FF(){if(wE)return ty;wE=1;function e(Z){return Z instanceof Map?Z.clear=Z.delete=Z.set=function(){throw new Error("map is read-only")}:Z instanceof Set&&(Z.add=Z.clear=Z.delete=function(){throw new Error("set is read-only")}),Object.freeze(Z),Object.getOwnPropertyNames(Z).forEach(pe=>{const je=Z[pe],rt=typeof je;(rt==="object"||rt==="function")&&!Object.isFrozen(je)&&e(je)}),Z}class t{constructor(pe){pe.data===void 0&&(pe.data={}),this.data=pe.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function n(Z){return Z.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;")}function r(Z,...pe){const je=Object.create(null);for(const rt in Z)je[rt]=Z[rt];return pe.forEach(function(rt){for(const Ft in rt)je[Ft]=rt[Ft]}),je}const a="</span>",o=Z=>!!Z.scope,l=(Z,{prefix:pe})=>{if(Z.startsWith("language:"))return Z.replace("language:","language-");if(Z.includes(".")){const je=Z.split(".");return[`${pe}${je.shift()}`,...je.map((rt,Ft)=>`${rt}${"_".repeat(Ft+1)}`)].join(" ")}return`${pe}${Z}`};class d{constructor(pe,je){this.buffer="",this.classPrefix=je.classPrefix,pe.walk(this)}addText(pe){this.buffer+=n(pe)}openNode(pe){if(!o(pe))return;const je=l(pe.scope,{prefix:this.classPrefix});this.span(je)}closeNode(pe){o(pe)&&(this.buffer+=a)}value(){return this.buffer}span(pe){this.buffer+=`<span class="${pe}">`}}const f=(Z={})=>{const pe={children:[]};return Object.assign(pe,Z),pe};class h{constructor(){this.rootNode=f(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(pe){this.top.children.push(pe)}openNode(pe){const je=f({scope:pe});this.add(je),this.stack.push(je)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(pe){return this.constructor._walk(pe,this.rootNode)}static _walk(pe,je){return typeof je=="string"?pe.addText(je):je.children&&(pe.openNode(je),je.children.forEach(rt=>this._walk(pe,rt)),pe.closeNode(je)),pe}static _collapse(pe){typeof pe!="string"&&pe.children&&(pe.children.every(je=>typeof je=="string")?pe.children=[pe.children.join("")]:pe.children.forEach(je=>{h._collapse(je)}))}}class g extends h{constructor(pe){super(),this.options=pe}addText(pe){pe!==""&&this.add(pe)}startScope(pe){this.openNode(pe)}endScope(){this.closeNode()}__addSublanguage(pe,je){const rt=pe.root;je&&(rt.scope=`language:${je}`),this.add(rt)}toHTML(){return new d(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}}function m(Z){return Z?typeof Z=="string"?Z:Z.source:null}function y(Z){return v("(?=",Z,")")}function b(Z){return v("(?:",Z,")*")}function k(Z){return v("(?:",Z,")?")}function v(...Z){return Z.map(je=>m(je)).join("")}function S(Z){const pe=Z[Z.length-1];return typeof pe=="object"&&pe.constructor===Object?(Z.splice(Z.length-1,1),pe):{}}function E(...Z){return"("+(S(Z).capture?"":"?:")+Z.map(rt=>m(rt)).join("|")+")"}function j(Z){return new RegExp(Z.toString()+"|").exec("").length-1}function N(Z,pe){const je=Z&&Z.exec(pe);return je&&je.index===0}const _=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function O(Z,{joinWith:pe}){let je=0;return Z.map(rt=>{je+=1;const Ft=je;let Ot=m(rt),$e="";for(;Ot.length>0;){const Pe=_.exec(Ot);if(!Pe){$e+=Ot;break}$e+=Ot.substring(0,Pe.index),Ot=Ot.substring(Pe.index+Pe[0].length),Pe[0][0]==="\\"&&Pe[1]?$e+="\\"+String(Number(Pe[1])+Ft):($e+=Pe[0],Pe[0]==="("&&je++)}return $e}).map(rt=>`(${rt})`).join(pe)}const T=/\b\B/,I="[a-zA-Z]\\w*",R="[a-zA-Z_]\\w*",F="\\b\\d+(\\.\\d+)?",M="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",U="\\b(0b[01]+)",q="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",Y=(Z={})=>{const pe=/^#![ ]*\//;return Z.binary&&(Z.begin=v(pe,/.*\b/,Z.binary,/\b.*/)),r({scope:"meta",begin:pe,end:/$/,relevance:0,"on:begin":(je,rt)=>{je.index!==0&&rt.ignoreMatch()}},Z)},D={begin:"\\\\[\\s\\S]",relevance:0},H={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[D]},B={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[D]},V={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},Q=function(Z,pe,je={}){const rt=r({scope:"comment",begin:Z,end:pe,contains:[]},je);rt.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const Ft=E("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return rt.contains.push({begin:v(/[ ]+/,"(",Ft,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),rt},K=Q("//","$"),L=Q("/\\*","\\*/"),z=Q("#","$"),G={scope:"number",begin:F,relevance:0},P={scope:"number",begin:M,relevance:0},oe={scope:"number",begin:U,relevance:0},be={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[D,{begin:/\[/,end:/\]/,relevance:0,contains:[D]}]},xe={scope:"title",begin:I,relevance:0},we={scope:"title",begin:R,relevance:0},J={begin:"\\.\\s*"+R,relevance:0};var Ce=Object.freeze({__proto__:null,APOS_STRING_MODE:H,BACKSLASH_ESCAPE:D,BINARY_NUMBER_MODE:oe,BINARY_NUMBER_RE:U,COMMENT:Q,C_BLOCK_COMMENT_MODE:L,C_LINE_COMMENT_MODE:K,C_NUMBER_MODE:P,C_NUMBER_RE:M,END_SAME_AS_BEGIN:function(Z){return Object.assign(Z,{"on:begin":(pe,je)=>{je.data._beginMatch=pe[1]},"on:end":(pe,je)=>{je.data._beginMatch!==pe[1]&&je.ignoreMatch()}})},HASH_COMMENT_MODE:z,IDENT_RE:I,MATCH_NOTHING_RE:T,METHOD_GUARD:J,NUMBER_MODE:G,NUMBER_RE:F,PHRASAL_WORDS_MODE:V,QUOTE_STRING_MODE:B,REGEXP_MODE:be,RE_STARTERS_RE:q,SHEBANG:Y,TITLE_MODE:xe,UNDERSCORE_IDENT_RE:R,UNDERSCORE_TITLE_MODE:we});function Re(Z,pe){Z.input[Z.index-1]==="."&&pe.ignoreMatch()}function Me(Z,pe){Z.className!==void 0&&(Z.scope=Z.className,delete Z.className)}function le(Z,pe){pe&&Z.beginKeywords&&(Z.begin="\\b("+Z.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",Z.__beforeBegin=Re,Z.keywords=Z.keywords||Z.beginKeywords,delete Z.beginKeywords,Z.relevance===void 0&&(Z.relevance=0))}function Ne(Z,pe){Array.isArray(Z.illegal)&&(Z.illegal=E(...Z.illegal))}function Te(Z,pe){if(Z.match){if(Z.begin||Z.end)throw new Error("begin & end are not supported with match");Z.begin=Z.match,delete Z.match}}function ke(Z,pe){Z.relevance===void 0&&(Z.relevance=1)}const Qe=(Z,pe)=>{if(!Z.beforeMatch)return;if(Z.starts)throw new Error("beforeMatch cannot be used with starts");const je=Object.assign({},Z);Object.keys(Z).forEach(rt=>{delete Z[rt]}),Z.keywords=je.keywords,Z.begin=v(je.beforeMatch,y(je.begin)),Z.starts={relevance:0,contains:[Object.assign(je,{endsParent:!0})]},Z.relevance=0,delete je.beforeMatch},re=["of","and","for","in","not","or","if","then","parent","list","value"],Ae="keyword";function ue(Z,pe,je=Ae){const rt=Object.create(null);return typeof Z=="string"?Ft(je,Z.split(" ")):Array.isArray(Z)?Ft(je,Z):Object.keys(Z).forEach(function(Ot){Object.assign(rt,ue(Z[Ot],pe,Ot))}),rt;function Ft(Ot,$e){pe&&($e=$e.map(Pe=>Pe.toLowerCase())),$e.forEach(function(Pe){const et=Pe.split("|");rt[et[0]]=[Ot,he(et[0],et[1])]})}}function he(Z,pe){return pe?Number(pe):ge(Z)?0:1}function ge(Z){return re.includes(Z.toLowerCase())}const Le={},ze=Z=>{console.error(Z)},Fe=(Z,...pe)=>{console.log(`WARN: ${Z}`,...pe)},te=(Z,pe)=>{Le[`${Z}/${pe}`]||(console.log(`Deprecated as of ${Z}. ${pe}`),Le[`${Z}/${pe}`]=!0)},ve=new Error;function Ie(Z,pe,{key:je}){let rt=0;const Ft=Z[je],Ot={},$e={};for(let Pe=1;Pe<=pe.length;Pe++)$e[Pe+rt]=Ft[Pe],Ot[Pe+rt]=!0,rt+=j(pe[Pe-1]);Z[je]=$e,Z[je]._emit=Ot,Z[je]._multi=!0}function Ze(Z){if(Array.isArray(Z.begin)){if(Z.skip||Z.excludeBegin||Z.returnBegin)throw ze("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),ve;if(typeof Z.beginScope!="object"||Z.beginScope===null)throw ze("beginScope must be object"),ve;Ie(Z,Z.begin,{key:"beginScope"}),Z.begin=O(Z.begin,{joinWith:""})}}function it(Z){if(Array.isArray(Z.end)){if(Z.skip||Z.excludeEnd||Z.returnEnd)throw ze("skip, excludeEnd, returnEnd not compatible with endScope: {}"),ve;if(typeof Z.endScope!="object"||Z.endScope===null)throw ze("endScope must be object"),ve;Ie(Z,Z.end,{key:"endScope"}),Z.end=O(Z.end,{joinWith:""})}}function At(Z){Z.scope&&typeof Z.scope=="object"&&Z.scope!==null&&(Z.beginScope=Z.scope,delete Z.scope)}function Un(Z){At(Z),typeof Z.beginScope=="string"&&(Z.beginScope={_wrap:Z.beginScope}),typeof Z.endScope=="string"&&(Z.endScope={_wrap:Z.endScope}),Ze(Z),it(Z)}function un(Z){function pe($e,Pe){return new RegExp(m($e),"m"+(Z.case_insensitive?"i":"")+(Z.unicodeRegex?"u":"")+(Pe?"g":""))}class je{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(Pe,et){et.position=this.position++,this.matchIndexes[this.matchAt]=et,this.regexes.push([et,Pe]),this.matchAt+=j(Pe)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);const Pe=this.regexes.map(et=>et[1]);this.matcherRe=pe(O(Pe,{joinWith:"|"}),!0),this.lastIndex=0}exec(Pe){this.matcherRe.lastIndex=this.lastIndex;const et=this.matcherRe.exec(Pe);if(!et)return null;const rn=et.findIndex((Qr,ka)=>ka>0&&Qr!==void 0),Vt=this.matchIndexes[rn];return et.splice(0,rn),Object.assign(et,Vt)}}class rt{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(Pe){if(this.multiRegexes[Pe])return this.multiRegexes[Pe];const et=new je;return this.rules.slice(Pe).forEach(([rn,Vt])=>et.addRule(rn,Vt)),et.compile(),this.multiRegexes[Pe]=et,et}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(Pe,et){this.rules.push([Pe,et]),et.type==="begin"&&this.count++}exec(Pe){const et=this.getMatcher(this.regexIndex);et.lastIndex=this.lastIndex;let rn=et.exec(Pe);if(this.resumingScanAtSamePosition()&&!(rn&&rn.index===this.lastIndex)){const Vt=this.getMatcher(0);Vt.lastIndex=this.lastIndex+1,rn=Vt.exec(Pe)}return rn&&(this.regexIndex+=rn.position+1,this.regexIndex===this.count&&this.considerAll()),rn}}function Ft($e){const Pe=new rt;return $e.contains.forEach(et=>Pe.addRule(et.begin,{rule:et,type:"begin"})),$e.terminatorEnd&&Pe.addRule($e.terminatorEnd,{type:"end"}),$e.illegal&&Pe.addRule($e.illegal,{type:"illegal"}),Pe}function Ot($e,Pe){const et=$e;if($e.isCompiled)return et;[Me,Te,Un,Qe].forEach(Vt=>Vt($e,Pe)),Z.compilerExtensions.forEach(Vt=>Vt($e,Pe)),$e.__beforeBegin=null,[le,Ne,ke].forEach(Vt=>Vt($e,Pe)),$e.isCompiled=!0;let rn=null;return typeof $e.keywords=="object"&&$e.keywords.$pattern&&($e.keywords=Object.assign({},$e.keywords),rn=$e.keywords.$pattern,delete $e.keywords.$pattern),rn=rn||/\w+/,$e.keywords&&($e.keywords=ue($e.keywords,Z.case_insensitive)),et.keywordPatternRe=pe(rn,!0),Pe&&($e.begin||($e.begin=/\B|\b/),et.beginRe=pe(et.begin),!$e.end&&!$e.endsWithParent&&($e.end=/\B|\b/),$e.end&&(et.endRe=pe(et.end)),et.terminatorEnd=m(et.end)||"",$e.endsWithParent&&Pe.terminatorEnd&&(et.terminatorEnd+=($e.end?"|":"")+Pe.terminatorEnd)),$e.illegal&&(et.illegalRe=pe($e.illegal)),$e.contains||($e.contains=[]),$e.contains=[].concat(...$e.contains.map(function(Vt){return Qt(Vt==="self"?$e:Vt)})),$e.contains.forEach(function(Vt){Ot(Vt,et)}),$e.starts&&Ot($e.starts,Pe),et.matcher=Ft(et),et}if(Z.compilerExtensions||(Z.compilerExtensions=[]),Z.contains&&Z.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return Z.classNameAliases=r(Z.classNameAliases||{}),Ot(Z)}function Mt(Z){return Z?Z.endsWithParent||Mt(Z.starts):!1}function Qt(Z){return Z.variants&&!Z.cachedVariants&&(Z.cachedVariants=Z.variants.map(function(pe){return r(Z,{variants:null},pe)})),Z.cachedVariants?Z.cachedVariants:Mt(Z)?r(Z,{starts:Z.starts?r(Z.starts):null}):Object.isFrozen(Z)?r(Z):Z}var yt="11.11.1";class Tr extends Error{constructor(pe,je){super(pe),this.name="HTMLInjectionError",this.html=je}}const Rn=n,ko=r,zi=Symbol("nomatch"),wa=7,Pi=function(Z){const pe=Object.create(null),je=Object.create(null),rt=[];let Ft=!0;const Ot="Could not find the language '{}', did you forget to load/include a language module?",$e={disableAutodetect:!0,name:"Plain text",contains:[]};let Pe={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:g};function et(Ee){return Pe.noHighlightRe.test(Ee)}function rn(Ee){let Ge=Ee.className+" ";Ge+=Ee.parentNode?Ee.parentNode.className:"";const ft=Pe.languageDetectRe.exec(Ge);if(ft){const Nt=Ln(ft[1]);return Nt||(Fe(Ot.replace("{}",ft[1])),Fe("Falling back to no-highlight mode for this block.",Ee)),Nt?ft[1]:"no-highlight"}return Ge.split(/\s+/).find(Nt=>et(Nt)||Ln(Nt))}function Vt(Ee,Ge,ft){let Nt="",sn="";typeof Ge=="object"?(Nt=Ee,ft=Ge.ignoreIllegals,sn=Ge.language):(te("10.7.0","highlight(lang, code, ...args) has been deprecated."),te("10.7.0",`Please use highlight(code, options) instead.
634
+ https://github.com/highlightjs/highlight.js/issues/2277`),sn=Ee,Nt=Ge),ft===void 0&&(ft=!0);const Mn={code:Nt,language:sn};Ui("before:highlight",Mn);const Qn=Mn.result?Mn.result:Qr(Mn.language,Mn.code,ft);return Qn.code=Mn.code,Ui("after:highlight",Qn),Qn}function Qr(Ee,Ge,ft,Nt){const sn=Object.create(null);function Mn(_e,qe){return _e.keywords[qe]}function Qn(){if(!nt.keywords){bn.addText(Rt);return}let _e=0;nt.keywordPatternRe.lastIndex=0;let qe=nt.keywordPatternRe.exec(Rt),ot="";for(;qe;){ot+=Rt.substring(_e,qe.index);const bt=jn.case_insensitive?qe[0].toLowerCase():qe[0],on=Mn(nt,bt);if(on){const[Dr,oc]=on;if(bn.addText(ot),ot="",sn[bt]=(sn[bt]||0)+1,sn[bt]<=wa&&(Aa+=oc),Dr.startsWith("_"))ot+=qe[0];else{const ld=jn.classNameAliases[Dr]||Dr;Wn(qe[0],ld)}}else ot+=qe[0];_e=nt.keywordPatternRe.lastIndex,qe=nt.keywordPatternRe.exec(Rt)}ot+=Rt.substring(_e),bn.addText(ot)}function Fn(){if(Rt==="")return;let _e=null;if(typeof nt.subLanguage=="string"){if(!pe[nt.subLanguage]){bn.addText(Rt);return}_e=Qr(nt.subLanguage,Rt,!0,od[nt.subLanguage]),od[nt.subLanguage]=_e._top}else _e=Ea(Rt,nt.subLanguage.length?nt.subLanguage:null);nt.relevance>0&&(Aa+=_e.relevance),bn.__addSublanguage(_e._emitter,_e.language)}function zt(){nt.subLanguage!=null?Fn():Qn(),Rt=""}function Wn(_e,qe){_e!==""&&(bn.startScope(qe),bn.addText(_e),bn.endScope())}function No(_e,qe){let ot=1;const bt=qe.length-1;for(;ot<=bt;){if(!_e._emit[ot]){ot++;continue}const on=jn.classNameAliases[_e[ot]]||_e[ot],Dr=qe[ot];on?Wn(Dr,on):(Rt=Dr,Qn(),Rt=""),ot++}}function _a(_e,qe){return _e.scope&&typeof _e.scope=="string"&&bn.openNode(jn.classNameAliases[_e.scope]||_e.scope),_e.beginScope&&(_e.beginScope._wrap?(Wn(Rt,jn.classNameAliases[_e.beginScope._wrap]||_e.beginScope._wrap),Rt=""):_e.beginScope._multi&&(No(_e.beginScope,qe),Rt="")),nt=Object.create(_e,{parent:{value:nt}}),nt}function bi(_e,qe,ot){let bt=N(_e.endRe,ot);if(bt){if(_e["on:end"]){const on=new t(_e);_e["on:end"](qe,on),on.isMatchIgnored&&(bt=!1)}if(bt){for(;_e.endsParent&&_e.parent;)_e=_e.parent;return _e}}if(_e.endsWithParent)return bi(_e.parent,qe,ot)}function ja(_e){return nt.matcher.regexIndex===0?(Rt+=_e[0],1):(Ta=!0,0)}function _o(_e){const qe=_e[0],ot=_e.rule,bt=new t(ot),on=[ot.__beforeBegin,ot["on:begin"]];for(const Dr of on)if(Dr&&(Dr(_e,bt),bt.isMatchIgnored))return ja(qe);return ot.skip?Rt+=qe:(ot.excludeBegin&&(Rt+=qe),zt(),!ot.returnBegin&&!ot.excludeBegin&&(Rt=qe)),_a(ot,_e),ot.returnBegin?0:qe.length}function qn(_e){const qe=_e[0],ot=Ge.substring(_e.index),bt=bi(nt,_e,ot);if(!bt)return zi;const on=nt;nt.endScope&&nt.endScope._wrap?(zt(),Wn(qe,nt.endScope._wrap)):nt.endScope&&nt.endScope._multi?(zt(),No(nt.endScope,_e)):on.skip?Rt+=qe:(on.returnEnd||on.excludeEnd||(Rt+=qe),zt(),on.excludeEnd&&(Rt=qe));do nt.scope&&bn.closeNode(),!nt.skip&&!nt.subLanguage&&(Aa+=nt.relevance),nt=nt.parent;while(nt!==bt.parent);return bt.starts&&_a(bt.starts,_e),on.returnEnd?0:qe.length}function Ns(){const _e=[];for(let qe=nt;qe!==jn;qe=qe.parent)qe.scope&&_e.unshift(qe.scope);_e.forEach(qe=>bn.openNode(qe))}let ei={};function Ca(_e,qe){const ot=qe&&qe[0];if(Rt+=_e,ot==null)return zt(),0;if(ei.type==="begin"&&qe.type==="end"&&ei.index===qe.index&&ot===""){if(Rt+=Ge.slice(qe.index,qe.index+1),!Ft){const bt=new Error(`0 width match regex (${Ee})`);throw bt.languageName=Ee,bt.badRule=ei.rule,bt}return 1}if(ei=qe,qe.type==="begin")return _o(qe);if(qe.type==="illegal"&&!ft){const bt=new Error('Illegal lexeme "'+ot+'" for mode "'+(nt.scope||"<unnamed>")+'"');throw bt.mode=nt,bt}else if(qe.type==="end"){const bt=qn(qe);if(bt!==zi)return bt}if(qe.type==="illegal"&&ot==="")return Rt+=`
635
+ `,1;if(sc>1e5&&sc>qe.index*3)throw new Error("potential infinite loop, way more iterations than matches");return Rt+=ot,ot.length}const jn=Ln(Ee);if(!jn)throw ze(Ot.replace("{}",Ee)),new Error('Unknown language: "'+Ee+'"');const _s=un(jn);let jo="",nt=Nt||_s;const od={},bn=new Pe.__emitter(Pe);Ns();let Rt="",Aa=0,$i=0,sc=0,Ta=!1;try{if(jn.__emitTokens)jn.__emitTokens(Ge,bn);else{for(nt.matcher.considerAll();;){sc++,Ta?Ta=!1:nt.matcher.considerAll(),nt.matcher.lastIndex=$i;const _e=nt.matcher.exec(Ge);if(!_e)break;const qe=Ge.substring($i,_e.index),ot=Ca(qe,_e);$i=_e.index+ot}Ca(Ge.substring($i))}return bn.finalize(),jo=bn.toHTML(),{language:Ee,value:jo,relevance:Aa,illegal:!1,_emitter:bn,_top:nt}}catch(_e){if(_e.message&&_e.message.includes("Illegal"))return{language:Ee,value:Rn(Ge),illegal:!0,relevance:0,_illegalBy:{message:_e.message,index:$i,context:Ge.slice($i-100,$i+100),mode:_e.mode,resultSoFar:jo},_emitter:bn};if(Ft)return{language:Ee,value:Rn(Ge),illegal:!1,relevance:0,errorRaised:_e,_emitter:bn,_top:nt};throw _e}}function ka(Ee){const Ge={value:Rn(Ee),illegal:!1,relevance:0,_top:$e,_emitter:new Pe.__emitter(Pe)};return Ge._emitter.addText(Ee),Ge}function Ea(Ee,Ge){Ge=Ge||Pe.languages||Object.keys(pe);const ft=ka(Ee),Nt=Ge.filter(Ln).filter(Zr).map(zt=>Qr(zt,Ee,!1));Nt.unshift(ft);const sn=Nt.sort((zt,Wn)=>{if(zt.relevance!==Wn.relevance)return Wn.relevance-zt.relevance;if(zt.language&&Wn.language){if(Ln(zt.language).supersetOf===Wn.language)return 1;if(Ln(Wn.language).supersetOf===zt.language)return-1}return 0}),[Mn,Qn]=sn,Fn=Mn;return Fn.secondBest=Qn,Fn}function Mr(Ee,Ge,ft){const Nt=Ge&&je[Ge]||ft;Ee.classList.add("hljs"),Ee.classList.add(`language-${Nt}`)}function an(Ee){let Ge=null;const ft=rn(Ee);if(et(ft))return;if(Ui("before:highlightElement",{el:Ee,language:ft}),Ee.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",Ee);return}if(Ee.children.length>0&&(Pe.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(Ee)),Pe.throwUnescapedHTML))throw new Tr("One of your code blocks includes unescaped HTML.",Ee.innerHTML);Ge=Ee;const Nt=Ge.textContent,sn=ft?Vt(Nt,{language:ft,ignoreIllegals:!0}):Ea(Nt);Ee.innerHTML=sn.value,Ee.dataset.highlighted="yes",Mr(Ee,ft,sn.language),Ee.result={language:sn.language,re:sn.relevance,relevance:sn.relevance},sn.secondBest&&(Ee.secondBest={language:sn.secondBest.language,relevance:sn.secondBest.relevance}),Ui("after:highlightElement",{el:Ee,result:sn,text:Nt})}function Tn(Ee){Pe=ko(Pe,Ee)}const Wr=()=>{Na(),te("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function Sa(){Na(),te("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let Es=!1;function Na(){function Ee(){Na()}if(document.readyState==="loading"){Es||window.addEventListener("DOMContentLoaded",Ee,!1),Es=!0;return}document.querySelectorAll(Pe.cssSelector).forEach(an)}function Eo(Ee,Ge){let ft=null;try{ft=Ge(Z)}catch(Nt){if(ze("Language definition for '{}' could not be registered.".replace("{}",Ee)),Ft)ze(Nt);else throw Nt;ft=$e}ft.name||(ft.name=Ee),pe[Ee]=ft,ft.rawDefinition=Ge.bind(null,Z),ft.aliases&&Xr(ft.aliases,{languageName:Ee})}function Bi(Ee){delete pe[Ee];for(const Ge of Object.keys(je))je[Ge]===Ee&&delete je[Ge]}function Ss(){return Object.keys(pe)}function Ln(Ee){return Ee=(Ee||"").toLowerCase(),pe[Ee]||pe[je[Ee]]}function Xr(Ee,{languageName:Ge}){typeof Ee=="string"&&(Ee=[Ee]),Ee.forEach(ft=>{je[ft.toLowerCase()]=Ge})}function Zr(Ee){const Ge=Ln(Ee);return Ge&&!Ge.disableAutodetect}function yi(Ee){Ee["before:highlightBlock"]&&!Ee["before:highlightElement"]&&(Ee["before:highlightElement"]=Ge=>{Ee["before:highlightBlock"](Object.assign({block:Ge.el},Ge))}),Ee["after:highlightBlock"]&&!Ee["after:highlightElement"]&&(Ee["after:highlightElement"]=Ge=>{Ee["after:highlightBlock"](Object.assign({block:Ge.el},Ge))})}function dn(Ee){yi(Ee),rt.push(Ee)}function So(Ee){const Ge=rt.indexOf(Ee);Ge!==-1&&rt.splice(Ge,1)}function Ui(Ee,Ge){const ft=Ee;rt.forEach(function(Nt){Nt[ft]&&Nt[ft](Ge)})}function Jr(Ee){return te("10.7.0","highlightBlock will be removed entirely in v12.0"),te("10.7.0","Please use highlightElement now."),an(Ee)}Object.assign(Z,{highlight:Vt,highlightAuto:Ea,highlightAll:Na,highlightElement:an,highlightBlock:Jr,configure:Tn,initHighlighting:Wr,initHighlightingOnLoad:Sa,registerLanguage:Eo,unregisterLanguage:Bi,listLanguages:Ss,getLanguage:Ln,registerAliases:Xr,autoDetection:Zr,inherit:ko,addPlugin:dn,removePlugin:So}),Z.debugMode=function(){Ft=!1},Z.safeMode=function(){Ft=!0},Z.versionString=yt,Z.regex={concat:v,lookahead:y,either:E,optional:k,anyNumberOfTimes:b};for(const Ee in Ce)typeof Ce[Ee]=="object"&&e(Ce[Ee]);return Object.assign(Z,Ce),Z},$n=Pi({});return $n.newInstance=()=>Pi({}),ty=$n,$n.HighlightJS=$n,$n.default=$n,ty}var qF=FF();const HF=Fu(qF),kE={},KF="hljs-";function GF(e){const t=HF.newInstance();return e&&o(e),{highlight:n,highlightAuto:r,listLanguages:a,register:o,registerAlias:l,registered:d};function n(f,h,g){const m=g||kE,y=typeof m.prefix=="string"?m.prefix:KF;if(!t.getLanguage(f))throw new Error("Unknown language: `"+f+"` is not registered");t.configure({__emitter:VF,classPrefix:y});const b=t.highlight(h,{ignoreIllegals:!0,language:f});if(b.errorRaised)throw new Error("Could not highlight with `Highlight.js`",{cause:b.errorRaised});const k=b._emitter.root,v=k.data;return v.language=b.language,v.relevance=b.relevance,k}function r(f,h){const m=(h||kE).subset||a();let y=-1,b=0,k;for(;++y<m.length;){const v=m[y];if(!t.getLanguage(v))continue;const S=n(v,f,h);S.data&&S.data.relevance!==void 0&&S.data.relevance>b&&(b=S.data.relevance,k=S)}return k||{type:"root",children:[],data:{language:void 0,relevance:b}}}function a(){return t.listLanguages()}function o(f,h){if(typeof f=="string")t.registerLanguage(f,h);else{let g;for(g in f)Object.hasOwn(f,g)&&t.registerLanguage(g,f[g])}}function l(f,h){if(typeof f=="string")t.registerAliases(typeof h=="string"?h:[...h],{languageName:f});else{let g;for(g in f)if(Object.hasOwn(f,g)){const m=f[g];t.registerAliases(typeof m=="string"?m:[...m],{languageName:g})}}}function d(f){return!!t.getLanguage(f)}}class VF{constructor(t){this.options=t,this.root={type:"root",children:[],data:{language:void 0,relevance:0}},this.stack=[this.root]}addText(t){if(t==="")return;const n=this.stack[this.stack.length-1],r=n.children[n.children.length-1];r&&r.type==="text"?r.value+=t:n.children.push({type:"text",value:t})}startScope(t){this.openNode(String(t))}endScope(){this.closeNode()}__addSublanguage(t,n){const r=this.stack[this.stack.length-1],a=t.root.children;n?r.children.push({type:"element",tagName:"span",properties:{className:[n]},children:a}):r.children.push(...a)}openNode(t){const n=this,r=t.split(".").map(function(l,d){return d?l+"_".repeat(d):n.options.classPrefix+l}),a=this.stack[this.stack.length-1],o={type:"element",tagName:"span",properties:{className:r},children:[]};a.children.push(o),this.stack.push(o)}closeNode(){this.stack.pop()}finalize(){}toHTML(){return""}}const YF={};function Ax(e){const t=e||YF,n=t.aliases,r=t.detect||!1,a=t.languages||$F,o=t.plainText,l=t.prefix,d=t.subset;let f="hljs";const h=GF(a);if(n&&h.registerAlias(n),l){const g=l.indexOf("-");f=g===-1?l:l.slice(0,g)}return function(g,m){rp(g,"element",function(y,b,k){if(y.tagName!=="code"||!k||k.type!=="element"||k.tagName!=="pre")return;const v=QF(y);if(v===!1||!v&&!r||v&&o&&o.includes(v))return;Array.isArray(y.properties.className)||(y.properties.className=[]),y.properties.className.includes(f)||y.properties.className.unshift(f);const S=p9(y,{whitespace:"pre"});let E;try{E=v?h.highlight(v,S,{prefix:l}):h.highlightAuto(S,{prefix:l,subset:d})}catch(j){const N=j;if(v&&/Unknown language/.test(N.message)){m.message("Cannot highlight as `"+v+"`, it’s not registered",{ancestors:[k,y],cause:N,place:y.position,ruleId:"missing-language",source:"rehype-highlight"});return}throw N}!v&&E.data&&E.data.language&&y.properties.className.push("language-"+E.data.language),E.children.length>0&&(y.children=E.children)})}}function QF(e){const t=e.properties.className;let n=-1;if(!Array.isArray(t))return;let r;for(;++n<t.length;){const a=String(t[n]);if(a==="no-highlight"||a==="nohighlight")return!1;!r&&a.slice(0,5)==="lang-"&&(r=a.slice(5)),!r&&a.slice(0,9)==="language-"&&(r=a.slice(9))}return r}function WF({name:e,onClose:t}){const n=Be(),{data:r,isLoading:a,isError:o,error:l}=Xe({queryKey:["skill",e],queryFn:()=>cz(e)});return C.useEffect(()=>{const d=f=>{f.key==="Escape"&&t()};return window.addEventListener("keydown",d),()=>window.removeEventListener("keydown",d)},[t]),u.jsx("div",{role:"dialog","aria-modal":"true",className:"fixed inset-0 z-40 flex items-start justify-center p-6 bg-black/30 overflow-auto",children:u.jsxs("div",{className:"nb-card mt-8 w-full max-w-4xl",children:[u.jsxs("header",{className:"flex items-start justify-between gap-4 mb-4",children:[u.jsxs("div",{children:[u.jsx("h2",{className:"font-[family-name:var(--font-heading)] text-3xl font-bold",children:e}),r&&u.jsxs("p",{className:"text-sm text-[var(--color-text-muted)] mt-1",children:[r.category," · ",r.origin||"local"]})]}),u.jsx("button",{onClick:t,className:"nb-btn nb-btn-mint p-2","aria-label":n("skillDetail.close.aria"),type:"button",children:u.jsx(Nn,{size:16,strokeWidth:3})})]}),a&&u.jsx("p",{children:n("skillDetail.loading")}),o&&u.jsx("p",{className:"text-[var(--color-crashed)]",children:n("skillDetail.error.load",{detail:l instanceof Error?l.message:String(l)})}),r&&u.jsxs("div",{className:"flex flex-col gap-4",children:[u.jsxs("div",{children:[u.jsx("h3",{className:"font-[family-name:var(--font-heading)] text-sm font-bold mb-2 uppercase tracking-wider",children:n("skillDetail.section.preview")}),u.jsx("div",{className:"prose-chat bg-[var(--color-bg-cream)] border-2 border-[var(--color-text)] rounded-lg p-4 max-h-80 overflow-auto text-sm",children:r.body?u.jsx(kx,{remarkPlugins:[_x],rehypePlugins:[Ax],children:r.body}):u.jsx("p",{className:"text-[var(--color-text-muted)] italic",children:"(empty)"})})]}),r.references.length>0&&u.jsxs("div",{children:[u.jsx("h3",{className:"font-[family-name:var(--font-heading)] text-sm font-bold mb-2 uppercase tracking-wider",children:"References"}),u.jsx("ul",{className:"flex flex-col gap-2",children:r.references.map(d=>u.jsx(XF,{skillName:e,file:d.name,lines:d.lines},d.name))})]})]})]})})}function XF({skillName:e,file:t,lines:n}){const r=Be(),[a,o]=C.useState(!1),{data:l,isLoading:d,isError:f,error:h}=Xe({queryKey:["skill-ref",e,t],queryFn:()=>uz(e,t),enabled:a,staleTime:1/0});return u.jsxs("li",{className:"border-2 border-[var(--color-text)] rounded-lg overflow-hidden bg-[var(--color-bg-cream)]",children:[u.jsxs("button",{type:"button",onClick:()=>o(g=>!g),"aria-label":r("skillDetail.toggleSection.aria",{action:r(a?"skillDetail.collapse":"skillDetail.expand"),file:t}),"aria-expanded":a,className:"w-full flex items-center gap-2 px-3 py-2 text-sm font-[family-name:var(--font-mono)] hover:bg-[var(--color-accent-yellow)] transition-colors",children:[u.jsx(Wl,{size:12,strokeWidth:3,className:["transition-transform",a?"rotate-90":""].join(" ")}),u.jsx(Gu,{size:12,strokeWidth:2.5}),u.jsx("span",{className:"flex-1 text-left font-bold",children:t}),u.jsxs("span",{className:"text-xs text-[var(--color-text-subtle)]",children:[n," lines"]})]}),a&&u.jsxs("div",{className:"px-4 py-3 border-t-2 border-[var(--color-text)] bg-[var(--color-bg)] max-h-96 overflow-auto",children:[d&&u.jsx("p",{className:"text-xs text-[var(--color-text-muted)]",children:r("skillDetail.loading")}),f&&u.jsx("p",{className:"text-xs text-[var(--color-crashed)]",children:r("skillDetail.error.load",{detail:h instanceof Error?h.message:String(h)})}),l&&u.jsx("div",{className:"prose-chat text-sm",children:u.jsx(kx,{remarkPlugins:[_x],rehypePlugins:[Ax],children:l.content})})]})]})}function ZF({onClose:e}){const t=Be(),n=Gt(),{alert:r}=mn(),[a,o]=C.useState(""),[l,d]=C.useState(""),f=/^[a-z0-9][a-z0-9-]*$/.test(a),h=Ct({mutationFn:()=>gz(a,{"SKILL.md":l}),onSuccess:()=>{n.invalidateQueries({queryKey:["skills"]}),n.invalidateQueries({queryKey:["skill-updates"]}),e()},onError:g=>void r({title:t("skills.import.error"),body:g instanceof Error?g.message:String(g)})});return u.jsx("div",{className:"fixed inset-0 z-50 flex items-start justify-center bg-black/30 p-4",onClick:e,children:u.jsxs("div",{className:"nb-card mt-16 w-full max-w-xl flex flex-col gap-3",onClick:g=>g.stopPropagation(),children:[u.jsxs("div",{className:"flex items-center justify-between",children:[u.jsx("h2",{className:"font-[family-name:var(--font-heading)] text-lg font-bold",children:t("skills.import.title")}),u.jsx("button",{type:"button",className:"nb-btn p-2",onClick:e,"aria-label":"close",children:u.jsx(Nn,{size:14,strokeWidth:3})})]}),u.jsxs("label",{className:"flex flex-col gap-1",children:[u.jsx("span",{className:"text-sm font-bold",children:t("skills.import.name")}),u.jsx("input",{className:"nb-input w-full",value:a,onChange:g=>o(g.target.value),placeholder:"code-review","aria-label":t("skills.import.name")})]}),u.jsxs("label",{className:"flex flex-col gap-1",children:[u.jsx("span",{className:"text-sm font-bold",children:t("skills.import.body")}),u.jsx("textarea",{className:"nb-input w-full font-[family-name:var(--font-mono)] text-sm",rows:12,value:l,onChange:g=>d(g.target.value),placeholder:`---
636
+ name: code-review
637
+ description: ...
638
+ ---
639
+
640
+ # ...`,"aria-label":t("skills.import.body")})]}),u.jsxs("button",{type:"button",className:"nb-btn nb-btn-mint self-start",disabled:h.isPending||!f||!l.trim(),onClick:()=>h.mutate(),children:[h.isPending?u.jsx(We,{size:14,className:"animate-spin"}):u.jsx(YN,{size:14,strokeWidth:3}),t("skills.import.submit")]})]})})}function JF({onClose:e,onSubmit:t}){const n=Be(),[r,a]=C.useState(""),[o,l]=C.useState(""),d=/^[a-z0-9][a-z0-9-]*$/.test(r);return u.jsx("div",{className:"fixed inset-0 z-50 flex items-start justify-center bg-black/30 p-4 overflow-auto",children:u.jsx("div",{className:"w-full max-w-xl my-8",children:u.jsxs("div",{className:"nb-card flex flex-col gap-3",children:[u.jsxs("div",{className:"flex items-center justify-between shrink-0",children:[u.jsxs("h2",{className:"font-[family-name:var(--font-heading)] text-lg font-bold flex items-center gap-2",children:[u.jsx(Ll,{size:16,strokeWidth:2.5}),n("skills.ai.title")]}),u.jsx("button",{type:"button",className:"nb-btn p-2",onClick:e,"aria-label":"close",children:u.jsx(Nn,{size:14,strokeWidth:3})})]}),u.jsxs("label",{className:"flex flex-col gap-1",children:[u.jsx("span",{className:"text-sm font-bold",children:n("skills.ai.name")}),u.jsx("input",{type:"text",value:r,onChange:f=>a(f.target.value),placeholder:"rust-error-handling",className:"nb-input w-full font-[family-name:var(--font-mono)]","aria-label":n("skills.ai.name")})]}),u.jsxs("label",{className:"flex flex-col gap-1",children:[u.jsx("span",{className:"text-sm font-bold",children:n("skills.ai.intent")}),u.jsx("textarea",{value:o,onChange:f=>l(f.target.value),placeholder:n("skills.ai.placeholder"),rows:5,className:"nb-input w-full text-sm","aria-label":n("skills.ai.intent")})]}),u.jsxs("button",{type:"button",className:"nb-btn nb-btn-mint self-start",disabled:!d||!o.trim(),onClick:()=>t(r,o),children:[u.jsx(Ll,{size:14,strokeWidth:2.5}),n("skills.ai.submit")]})]})})})}async function e8(e){const{files:t}=await yz(e),n=t["SKILL.md"]??"",r=new Blob([n],{type:"text/markdown"}),a=URL.createObjectURL(r),o=document.createElement("a");o.href=a,o.download=`${e}.SKILL.md`,o.click(),URL.revokeObjectURL(a)}const t8=[{value:"all",labelKey:"skills.category.all"},{value:"language",labelKey:"skills.category.language"},{value:"end",labelKey:"skills.category.end"},{value:"persona",labelKey:"skills.category.persona"},{value:"workflow",labelKey:"skills.category.workflow"},{value:"other",labelKey:"skills.category.other"}],n8={language:"var(--color-accent-purple)",end:"var(--color-secondary)",persona:"var(--color-primary)",workflow:"var(--color-accent-mint)",other:"var(--color-bg-cream)"};function r8(){var R,F;const e=Be(),[t,n]=C.useState("all"),[r,a]=C.useState(""),[o,l]=C.useState(null),[d,f]=C.useState(!1),[h,g]=C.useState(!1),m=Gt(),b=(((R=Xe({queryKey:["gen-jobs"],queryFn:c2,refetchInterval:3e3}).data)==null?void 0:R.data)??[]).filter(M=>M.kind==="skill"),k=b.filter(M=>M.status!=="done"),v=C.useRef(new Set);C.useEffect(()=>{for(const M of b)(M.status==="done"||M.status==="error")&&!v.current.has(M.id)&&(v.current.add(M.id),m.invalidateQueries({queryKey:["skills"]}),m.invalidateQueries({queryKey:["skill-updates"]}))},[b,m]);const S=(M,U)=>{bz(M,U).then(()=>m.invalidateQueries({queryKey:["gen-jobs"]})).catch(()=>{})},j=(((F=Xe({queryKey:["skill-updates"],queryFn:mz}).data)==null?void 0:F.data)??[]).filter(M=>M.status!=="same").length,{data:N,isLoading:_}=Xe({queryKey:["skills"],queryFn:()=>nx()}),O=Xe({queryKey:["projects"],queryFn:ba}),T=C.useMemo(()=>((N==null?void 0:N.data)??[]).filter(U=>!(t!=="all"&&U.category!==t||r&&!U.name.toLowerCase().includes(r.toLowerCase()))),[N,t,r]),I=C.useMemo(()=>{const M=(N==null?void 0:N.data)??[],U={all:M.length};for(const q of M)U[q.category]=(U[q.category]??0)+1;return U},[N]);return u.jsxs("div",{className:"flex flex-col gap-4 max-w-full",children:[u.jsxs("header",{className:"flex items-center justify-between flex-wrap gap-3",children:[u.jsxs("div",{children:[u.jsx("h1",{className:"font-[family-name:var(--font-heading)] text-4xl font-bold",children:"Skills 🎯"}),u.jsx("p",{className:"text-sm text-[var(--color-text-muted)] mt-1",children:_?e("common.loading"):e("skills.subtitleCount",{count:(N==null?void 0:N.data.length)??0})})]}),u.jsxs("div",{className:"flex gap-3 items-center",children:[j>0&&u.jsx("span",{className:"nb-badge text-[10px]",title:e("skills.updates.badge",{count:String(j)}),children:e("skills.updates.badge",{count:String(j)})}),u.jsxs("button",{className:"nb-btn",onClick:()=>g(!0),type:"button",children:[u.jsx(Ll,{size:14,strokeWidth:2.5}),e("skills.ai")]}),u.jsxs("button",{className:"nb-btn",onClick:()=>f(!0),type:"button",children:[u.jsx(YN,{size:14,strokeWidth:2.5}),e("skills.import")]}),u.jsxs("button",{className:"nb-btn nb-btn-mint",onClick:async()=>{await fz(),m.invalidateQueries({queryKey:["skills"]}),m.invalidateQueries({queryKey:["skill-updates"]})},type:"button",children:[u.jsx(ga,{size:14,strokeWidth:2.5}),"Sync bundled"]})]})]}),u.jsxs("div",{className:"flex items-center gap-3 flex-wrap",children:[u.jsxs("div",{className:"relative flex-1 max-w-md",children:[u.jsx(co,{size:14,className:"absolute left-3 top-1/2 -translate-y-1/2 text-[var(--color-text-subtle)]"}),u.jsx("input",{className:"nb-input pl-9 w-full",placeholder:e("skills.search.placeholder"),value:r,onChange:M=>a(M.target.value),"aria-label":e("skills.search.aria")})]}),u.jsx("div",{className:"flex gap-1 p-1 bg-[var(--color-bg)] border-[2px] border-[var(--color-text)] rounded-full shadow-[2px_2px_0_var(--color-text)]",children:t8.map(M=>u.jsxs("button",{type:"button",onClick:()=>n(M.value),className:["px-3 py-1 rounded-full text-xs font-bold font-[family-name:var(--font-body)]",t===M.value?"bg-[var(--color-text)] text-[var(--color-bg)]":"text-[var(--color-text-muted)] hover:text-[var(--color-text)]"].join(" "),children:[e(M.labelKey)," ",I[M.value]]},M.value))})]}),u.jsxs("div",{className:"grid gap-4 grid-cols-[repeat(auto-fill,minmax(280px,1fr))]",children:[k.map(M=>u.jsxs("div",{className:`nb-card flex items-center gap-2 ${M.status==="error"?"bg-[var(--color-crashed-bg)]":"opacity-70"}`,children:[M.status==="running"?u.jsx(We,{size:14,className:"animate-spin"}):u.jsx(Nn,{size:14,strokeWidth:3}),u.jsx("span",{className:"text-sm text-[var(--color-text-muted)] truncate",children:M.status==="running"?`${M.label} · ${e("skills.ai.wait")}`:`${M.label}: ${M.error??e("skills.ai.error")}`})]},M.id)),T.map(M=>{var U;return u.jsx(i8,{skill:M,projectCount:((U=O.data)==null?void 0:U.data.length)??0,onOpen:()=>l(M.name),onExport:()=>void e8(M.name)},M.name)})]}),o&&u.jsx(WF,{name:o,onClose:()=>l(null)}),d&&u.jsx(ZF,{onClose:()=>f(!1)}),h&&u.jsx(JF,{onClose:()=>g(!1),onSubmit:(M,U)=>{S(M,U),g(!1)}})]})}function i8({skill:e,projectCount:t,onOpen:n,onExport:r}){const a=Be(),o=n8[e.category];return u.jsxs("article",{onClick:n,onKeyDown:l=>{(l.key==="Enter"||l.key===" ")&&(l.preventDefault(),n())},tabIndex:0,role:"button","aria-label":`Open ${e.name}`,className:"nb-card nb-card-interactive flex flex-col gap-3",children:[u.jsxs("div",{className:"flex items-center justify-between",children:[u.jsx("h3",{className:"font-[family-name:var(--font-heading)] font-bold text-lg",children:e.name}),u.jsxs("div",{className:"flex items-center gap-1.5",children:[u.jsx("button",{type:"button",className:"nb-btn p-1",onClick:l=>{l.stopPropagation(),r()},"aria-label":a("skills.export"),title:a("skills.export"),children:u.jsx(zh,{size:12,strokeWidth:2.5})}),u.jsx("span",{className:"nb-badge text-[10px]",style:{background:o},children:e.category})]})]}),u.jsx("p",{className:"text-sm text-[var(--color-text-muted)] leading-5 line-clamp-3",children:e.description||"(no description)"}),u.jsxs("div",{className:"flex items-center justify-between text-xs font-[family-name:var(--font-mono)] pt-2 border-t-[1.5px] border-dashed border-[var(--color-border-light)]",children:[u.jsx("span",{className:"font-bold",children:e.linkedProjects.length>0?`● linked in ${e.linkedProjects.length}`:"○ not linked"}),u.jsxs("span",{className:"text-[var(--color-text-subtle)]",children:[t," projects"]})]})]})}function Lj(e){const t=e?`?q=${encodeURIComponent(e)}`:"";return ht(`/api/prompts${t}`)}function Tx(e){return ht(`/api/prompts/${encodeURIComponent(e)}`)}function a8(e){return Ri("/api/prompts",e)}function s8(e,t){return Pb(`/api/prompts/${encodeURIComponent(e)}`,t)}function o8(e){return x3(`/api/prompts/${encodeURIComponent(e)}`)}function l8(e){return Ri("/api/prompts/generate",{intent:e})}function Ij(e){const t=new Set,n=[];for(const r of e.matchAll(/\{\{\s*([a-zA-Z_][a-zA-Z0-9_]*)\s*\}\}/g)){const a=r[1];a&&!t.has(a)&&(t.add(a),n.push(a))}return n}function c8(){var T,I;const e=Be(),[t,n]=Bb("prompts.last",""),[r,a]=C.useState(null),[o,l]=C.useState(!1),[d,f]=C.useState(""),[h,g]=C.useState(new Set),m=Gt(),y=Xe({queryKey:["prompts"],queryFn:()=>Lj()}),b=((T=y.data)==null?void 0:T.data)??[],k=C.useMemo(()=>[...new Set(b.flatMap(R=>R.tags))].sort(),[b]),S=(((I=Xe({queryKey:["gen-jobs"],queryFn:c2,refetchInterval:3e3}).data)==null?void 0:I.data)??[]).filter(R=>R.kind==="prompt"),E=S.filter(R=>R.status!=="done"),j=C.useRef(new Set);C.useEffect(()=>{for(const R of S)(R.status==="done"||R.status==="error")&&!j.current.has(R.id)&&(j.current.add(R.id),m.invalidateQueries({queryKey:["prompts"]}),R.status==="done"&&R.result&&n(R.result))},[S,m,n]);const N=R=>{l8(R).then(()=>m.invalidateQueries({queryKey:["gen-jobs"]})).catch(()=>{})},_=C.useMemo(()=>{const R=d.trim().toLowerCase();return b.filter(F=>!(h.size&&![...h].every(M=>F.tags.includes(M))||R&&!(F.name.toLowerCase().includes(R)||F.description.toLowerCase().includes(R)||F.tags.some(U=>U.toLowerCase().includes(R)))))},[b,h,d]);C.useEffect(()=>{t&&b.length&&!b.some(R=>R.name===t)&&n("")},[t,b,n]);const O=R=>g(F=>{const M=new Set(F);return M.has(R)?M.delete(R):M.add(R),M});return u.jsxs("div",{className:"flex flex-col flex-1 min-h-0 w-full gap-3",children:[u.jsxs("div",{className:"shrink-0 flex items-center justify-between gap-3",children:[u.jsxs("div",{children:[u.jsx("h1",{className:"font-[family-name:var(--font-heading)] text-3xl font-bold",children:e("prompts.title")}),u.jsx("p",{className:"text-sm text-[var(--color-text-muted)]",children:e("prompts.desc")})]}),u.jsxs("div",{className:"flex items-center gap-2 shrink-0",children:[u.jsxs("button",{className:"nb-btn",type:"button",onClick:()=>l(!0),children:[u.jsx(Ll,{size:14,strokeWidth:2.5}),e("prompts.ai")]}),u.jsxs("button",{className:"nb-btn nb-btn-mint",type:"button",onClick:()=>a({mode:"new"}),children:[u.jsx(pr,{size:14,strokeWidth:3}),e("prompts.new")]})]})]}),u.jsxs("div",{className:"shrink-0 flex flex-col gap-2",children:[u.jsxs("label",{className:"nb-input flex items-center gap-2 w-full",style:{padding:"6px 10px"},children:[u.jsx(co,{size:14}),u.jsx("input",{type:"text",value:d,onChange:R=>f(R.target.value),placeholder:e("prompts.search"),className:"bg-transparent outline-none flex-1 text-sm","aria-label":e("prompts.search")})]}),k.length>0&&u.jsx("div",{className:"flex flex-wrap gap-1.5",children:k.map(R=>u.jsx("button",{type:"button",onClick:()=>O(R),className:`text-xs border-2 border-[var(--color-text)] rounded-full px-2 py-0.5 ${h.has(R)?"bg-[var(--color-accent-mint)] font-bold":"bg-[var(--color-bg)]"}`,children:R},R))})]}),u.jsxs("div",{className:"flex gap-5 flex-1 min-h-0",children:[u.jsxs("aside",{className:"w-80 shrink-0 min-h-0 overflow-y-auto flex flex-col gap-2 pr-1",children:[E.map(R=>u.jsxs("div",{className:`nb-card flex items-center gap-2 ${R.status==="error"?"bg-[var(--color-crashed-bg)]":"opacity-70"}`,style:{padding:"8px 10px"},children:[R.status==="running"?u.jsx(We,{size:12,className:"animate-spin"}):u.jsx(Nn,{size:12,strokeWidth:3}),u.jsx("span",{className:"text-xs text-[var(--color-text-muted)] truncate",children:R.status==="running"?e("prompts.ai.wait"):`${e("prompts.ai.error")}: ${R.error??""}`})]},R.id)),y.isLoading?u.jsx("div",{className:"nb-card",children:u.jsx(We,{size:14,className:"animate-spin"})}):_.length===0?u.jsx("div",{className:"nb-card",children:u.jsx("p",{className:"text-sm text-[var(--color-text-muted)]",children:e("prompts.empty")})}):_.map(R=>u.jsxs("button",{type:"button",onClick:()=>n(R.name),className:`nb-card w-full text-left ${t===R.name?"bg-[var(--color-accent-mint)]":""}`,style:{padding:"8px 10px"},children:[u.jsxs("span",{className:"flex items-center gap-1.5",children:[R.favorite&&u.jsx(GN,{size:12,fill:"currentColor"}),u.jsx("code",{className:"font-[family-name:var(--font-mono)] text-sm font-bold truncate",children:R.name})]}),R.description&&u.jsx("span",{className:"block text-xs text-[var(--color-text-muted)] truncate",children:R.description})]},R.name))]}),u.jsx("div",{className:"flex-1 min-w-0 min-h-0",children:t?u.jsx(d8,{name:t,onEdit:()=>a({mode:"edit",name:t}),onDeleted:()=>n("")},t):u.jsx("div",{className:"nb-card",children:u.jsx("p",{className:"text-[var(--color-text-muted)]",children:e("prompts.selectHint")})})})]}),r&&u.jsx(h8,{name:r.mode==="edit"?r.name:null,onClose:()=>a(null),onSaved:R=>{a(null),n(R)}}),o&&u.jsx(u8,{onClose:()=>l(!1),onSubmit:R=>{N(R),l(!1)}})]})}function u8({onClose:e,onSubmit:t}){const n=Be(),[r,a]=C.useState("");return u.jsx("div",{className:"fixed inset-0 z-50 flex items-start justify-center bg-black/30 p-4 overflow-auto",children:u.jsx("div",{className:"w-full max-w-xl my-8",children:u.jsxs("div",{className:"nb-card flex flex-col gap-3",children:[u.jsxs("div",{className:"flex items-center justify-between shrink-0",children:[u.jsxs("h2",{className:"font-[family-name:var(--font-heading)] text-lg font-bold flex items-center gap-2",children:[u.jsx(Ll,{size:16,strokeWidth:2.5}),n("prompts.ai.title")]}),u.jsx("button",{type:"button",className:"nb-btn p-2",onClick:e,"aria-label":"close",children:u.jsx(Nn,{size:14,strokeWidth:3})})]}),u.jsxs("label",{className:"flex flex-col gap-1",children:[u.jsx("span",{className:"text-sm font-bold",children:n("prompts.ai.intent")}),u.jsx("textarea",{value:r,onChange:o=>a(o.target.value),placeholder:n("prompts.ai.placeholder"),rows:5,className:"nb-input w-full text-sm","aria-label":n("prompts.ai.intent")})]}),u.jsxs("button",{type:"button",className:"nb-btn nb-btn-mint self-start",disabled:!r.trim(),onClick:()=>t(r),children:[u.jsx(Ll,{size:14,strokeWidth:2.5}),n("prompts.ai.submit")]})]})})})}function d8({name:e,onEdit:t,onDeleted:n}){const r=Be(),a=Gt(),{confirm:o}=mn(),l=Xe({queryKey:["prompt",e],queryFn:()=>Tx(e)}),d=Ct({mutationFn:()=>o8(e),onSuccess:()=>{a.invalidateQueries({queryKey:["prompts"]}),n()}});if(l.isLoading)return u.jsx("div",{className:"nb-card",children:u.jsx(We,{size:14,className:"animate-spin"})});const f=l.data;if(!f)return null;const h=Ij(f.body);return u.jsxs("div",{className:"nb-card flex flex-col gap-3 h-full min-h-0",children:[u.jsxs("div",{className:"flex items-start justify-between gap-3 shrink-0",children:[u.jsxs("div",{className:"min-w-0",children:[u.jsxs("h2",{className:"font-[family-name:var(--font-heading)] text-xl font-bold flex items-center gap-2",children:[f.favorite&&u.jsx(GN,{size:16,fill:"currentColor"}),u.jsx("code",{className:"font-[family-name:var(--font-mono)] truncate",children:f.name})]}),f.description&&u.jsx("p",{className:"text-sm text-[var(--color-text-muted)]",children:f.description})]}),u.jsxs("div",{className:"flex items-center gap-2 shrink-0",children:[u.jsxs("button",{type:"button",className:"nb-btn nb-btn-mint",onClick:t,children:[u.jsx(Ph,{size:14,strokeWidth:3}),r("common.edit")]}),u.jsx("button",{type:"button",className:"nb-btn",disabled:d.isPending,onClick:async()=>{await o({title:r("prompts.delete"),body:r("prompts.deleteConfirm",{name:e})})&&d.mutate()},"aria-label":r("prompts.delete"),children:u.jsx(fi,{size:14,strokeWidth:3})})]})]}),f.tags.length>0&&u.jsx("div",{className:"flex flex-wrap gap-1.5 shrink-0",children:f.tags.map(g=>u.jsx("span",{className:"text-xs bg-[var(--color-bg-cream)] border-2 border-[var(--color-text)] rounded-full px-2 py-0.5",children:g},g))}),u.jsx("pre",{className:"flex-1 min-h-0 overflow-auto text-sm font-[family-name:var(--font-mono)] whitespace-pre-wrap break-words bg-[var(--color-bg-cream)] border-2 border-[var(--color-text)] rounded p-3",children:f.body}),u.jsx("span",{className:"text-xs text-[var(--color-text-muted)] shrink-0",children:h.length?r("prompts.vars",{names:h.join(", ")}):r("prompts.noVars")})]})}function f8({tags:e,onChange:t}){const n=Be(),[r,a]=C.useState(""),o=()=>{const l=r.trim();l&&!e.includes(l)&&t([...e,l]),a("")};return u.jsxs("div",{className:"nb-input w-full flex flex-wrap gap-1.5 items-center",children:[e.map(l=>u.jsxs("span",{className:"inline-flex items-center gap-1 text-xs bg-[var(--color-accent-mint)] border-2 border-[var(--color-text)] rounded px-1.5 py-0.5",children:[l,u.jsx("button",{type:"button",onClick:()=>t(e.filter(d=>d!==l)),"aria-label":`remove ${l}`,children:u.jsx(Nn,{size:10,strokeWidth:3})})]},l)),u.jsx("input",{className:"flex-1 min-w-[90px] bg-transparent outline-none text-sm",value:r,onChange:l=>a(l.target.value),onKeyDown:l=>{l.key==="Enter"?(l.preventDefault(),o()):l.key==="Backspace"&&!r&&e.length&&t(e.slice(0,-1))},placeholder:e.length?"":n("prompts.tagAdd"),"aria-label":n("prompts.tags")})]})}function h8({name:e,onClose:t,onSaved:n}){const r=Be(),a=Gt(),{alert:o}=mn(),l=e===null,d=Xe({queryKey:["prompt",e],queryFn:()=>Tx(e),enabled:!l}),[f,h]=C.useState(l?{name:"",description:"",tags:[],body:"",favorite:!1}:null);C.useEffect(()=>{if(!l&&d.data&&f===null){const b=d.data;h({name:b.name,description:b.description,tags:b.tags,body:b.body,favorite:b.favorite})}},[l,d.data,f]);const g=Ct({mutationFn:()=>{if(!f)throw new Error("no form");const b={description:f.description||void 0,tags:f.tags,favorite:f.favorite,body:f.body};return l?a8({name:f.name,...b}):s8(e,b)},onSuccess:b=>{a.invalidateQueries({queryKey:["prompts"]}),a.invalidateQueries({queryKey:["prompt",b.name]}),n(b.name)},onError:b=>void o({title:r("prompts.saveError"),body:b instanceof Error?b.message:String(b)})}),m=C.useMemo(()=>f?/^[a-z0-9][a-z0-9-]*$/.test(f.name):!1,[f]),y=C.useMemo(()=>f?Ij(f.body):[],[f]);return u.jsx("div",{className:"fixed inset-0 z-50 flex items-start justify-center bg-black/30 p-4 overflow-auto",children:u.jsx("div",{className:"w-full max-w-2xl my-8",children:u.jsxs("div",{className:"nb-card flex flex-col gap-3",children:[u.jsxs("div",{className:"flex items-center justify-between shrink-0",children:[u.jsx("h2",{className:"font-[family-name:var(--font-heading)] text-lg font-bold",children:l?r("prompts.new"):e}),u.jsx("button",{type:"button",className:"nb-btn p-2",onClick:t,"aria-label":"close",children:u.jsx(Nn,{size:14,strokeWidth:3})})]}),!l&&d.isLoading?u.jsx(We,{size:14,className:"animate-spin"}):f?u.jsxs(u.Fragment,{children:[u.jsxs("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-3",children:[u.jsxs("label",{className:"flex flex-col gap-1",children:[u.jsx("span",{className:"text-sm font-bold",children:r("prompts.name")}),u.jsx("input",{type:"text",value:f.name,disabled:!l,onChange:b=>h({...f,name:b.target.value}),placeholder:r("prompts.namePlaceholder"),className:"nb-input w-full","aria-label":r("prompts.name")}),l&&f.name&&!m&&u.jsx("span",{className:"text-xs text-[var(--color-crashed)]",children:r("prompts.nameError")})]}),u.jsxs("label",{className:"flex flex-col gap-1",children:[u.jsx("span",{className:"text-sm font-bold",children:r("prompts.description")}),u.jsx("input",{type:"text",value:f.description,onChange:b=>h({...f,description:b.target.value}),className:"nb-input w-full","aria-label":r("prompts.description")})]})]}),u.jsxs("label",{className:"flex flex-col gap-1",children:[u.jsx("span",{className:"text-sm font-bold",children:r("prompts.tags")}),u.jsx(f8,{tags:f.tags,onChange:b=>h({...f,tags:b})})]}),u.jsxs("label",{className:"flex flex-col gap-1",children:[u.jsx("span",{className:"text-sm font-bold",children:r("prompts.body")}),u.jsx("textarea",{value:f.body,onChange:b=>h({...f,body:b.target.value}),placeholder:r("prompts.bodyPlaceholder"),rows:12,className:"nb-input w-full font-[family-name:var(--font-mono)] text-sm","aria-label":r("prompts.body")}),u.jsx("span",{className:"text-xs text-[var(--color-text-muted)]",children:y.length?r("prompts.vars",{names:y.join(", ")}):r("prompts.noVars")})]}),u.jsxs("div",{className:"flex items-center gap-3",children:[u.jsxs("button",{type:"button",className:"nb-btn nb-btn-mint",disabled:g.isPending||l&&!m||!f.body.trim(),onClick:()=>g.mutate(),children:[g.isPending?u.jsx(We,{size:14,className:"animate-spin"}):u.jsx(Oi,{size:14,strokeWidth:3}),r("prompts.save")]}),u.jsxs("label",{className:"flex items-center gap-2 text-sm cursor-pointer",children:[u.jsx("input",{type:"checkbox",checked:f.favorite,onChange:b=>h({...f,favorite:b.target.checked})}),r("prompts.favorite")]})]})]}):null]})})})}function p8(){var o;const e=Be(),t=Xe({queryKey:["system-info"],queryFn:t_}),n=Xe({queryKey:["system-env"],queryFn:v3}),[r,a]=C.useState(!1);return u.jsxs("div",{className:"flex flex-col gap-6 w-full",children:[u.jsx("header",{children:u.jsx("h1",{className:"font-[family-name:var(--font-heading)] text-4xl font-bold",children:e("system.h1")})}),u.jsx(m8,{current:(o=t.data)==null?void 0:o.version}),u.jsxs("section",{className:"nb-card",children:[u.jsx("h2",{className:"font-[family-name:var(--font-heading)] text-xl font-bold mb-3",children:e("system.runtime")}),t.data?u.jsxs("dl",{className:"grid grid-cols-1 sm:grid-cols-[160px_1fr] gap-y-2 text-sm",children:[u.jsx("dt",{className:"font-bold",children:"Node"}),u.jsx("dd",{className:"font-[family-name:var(--font-mono)]",children:t.data.nodeVersion}),u.jsx("dt",{className:"font-bold",children:"Platform"}),u.jsx("dd",{className:"font-[family-name:var(--font-mono)]",children:t.data.platform}),u.jsx("dt",{className:"font-bold",children:"PID"}),u.jsx("dd",{className:"font-[family-name:var(--font-mono)]",children:t.data.pid??"—"}),u.jsx("dt",{className:"font-bold",children:"Uptime"}),u.jsx("dd",{className:"font-[family-name:var(--font-mono)]",children:x8(t.data.uptimeMs)})]}):u.jsx("p",{className:"text-[var(--color-text-muted)]",children:e("common.loading")})]}),u.jsxs("section",{className:"nb-card",children:[u.jsxs("div",{className:"flex items-center justify-between mb-3",children:[u.jsxs("h2",{className:"font-[family-name:var(--font-heading)] text-xl font-bold",children:[e("system.env.title.prefix"),u.jsx("code",{className:"text-sm font-[family-name:var(--font-mono)] font-normal bg-[var(--color-bg-cream)] border-2 border-[var(--color-text)] px-2 py-0.5 rounded",children:"~/.coral/env"})]}),r?u.jsx("span",{className:"text-xs text-[var(--color-stuck)] font-bold",children:e("system.env.editing.label")}):u.jsxs("button",{className:"nb-btn",style:{padding:"6px 12px",fontSize:12},onClick:()=>a(!0),type:"button","aria-label":e("system.env.edit.aria"),children:[u.jsx(Ph,{size:12,strokeWidth:2.5})," ",e("system.env.edit.button")]})]}),r?u.jsx(g8,{onClose:()=>{a(!1),n.refetch()}}):n.data&&n.data.exists?u.jsx("dl",{className:"grid grid-cols-1 sm:grid-cols-[220px_1fr] gap-y-1 text-sm font-[family-name:var(--font-mono)]",children:n.data.entries.map(l=>u.jsxs("div",{className:"contents",children:[u.jsxs("dt",{className:"font-bold flex items-center gap-2",children:[l.masked&&u.jsx("span",{className:"text-[var(--color-stuck)]",children:"🔒"}),l.key]}),u.jsx("dd",{className:"text-[var(--color-text-muted)] truncate",children:l.value})]},l.key))}):u.jsxs("p",{className:"text-[var(--color-text-muted)] text-sm",children:[e("system.env.empty.before"),u.jsx("code",{className:"bg-[var(--color-bg-cream)] border-2 border-[var(--color-text)] px-2 py-0.5 rounded font-[family-name:var(--font-mono)]",children:"sps setup"}),e("system.env.empty.after")]})]}),u.jsx(y8,{})]})}function m8({current:e}){var v;const t=Be(),{confirm:n,alert:r}=mn(),[a,o]=C.useState(!1),[l,d]=C.useState(null),f=Xe({queryKey:["latest-version"],queryFn:_3,enabled:!1}),[h,g]=C.useState(null),[m,y]=C.useState("npm i -g @coralai/sps-cli@latest"),b=async()=>{var E;if(await n({title:t("system.upgrade.confirm.title"),body:t("system.upgrade.confirm.body",{current:e??"?",latest:((E=f.data)==null?void 0:E.latest)??"?"}),confirm:t("system.upgrade.confirm.button")})){o(!0),d(null),g(null);try{const j=await j3();if(d(j.output),g(j.installedVersion),y(j.command),j.ok)r({title:t("system.upgrade.success.title"),body:t("system.upgrade.success.body",{version:j.installedVersion??"?"})});else{const N=j.installedVersion&&j.installedVersion===e?t("system.upgrade.notEffective.same",{version:j.installedVersion}):t("system.upgrade.notEffective.notInstalled");r({title:t("system.upgrade.notEffective.title"),body:N})}}catch(j){d(j.message),r({title:t("system.upgrade.error.title"),body:j.message})}finally{o(!1)}}},k=async()=>{const S=f.data&&!f.data.upToDate?`npm i -g @coralai/sps-cli@${f.data.latest}`:m;try{await navigator.clipboard.writeText(S),r({title:t("system.upgrade.copy.success.title"),body:t("system.upgrade.copy.success.body",{cmd:S})})}catch{r({title:t("system.upgrade.copy.fail.title"),body:t("system.upgrade.copy.fail.body",{cmd:S})})}};return u.jsxs("section",{className:"nb-card",children:[u.jsxs("div",{className:"flex items-center justify-between mb-3",children:[u.jsx("h2",{className:"font-[family-name:var(--font-heading)] text-xl font-bold",children:t("system.upgrade.title")}),u.jsxs("button",{className:"nb-btn",style:{padding:"6px 12px",fontSize:12},onClick:()=>f.refetch(),disabled:f.isFetching||!e,type:"button","aria-label":t("system.upgrade.checkLatest.aria"),children:[f.isFetching?u.jsx(We,{size:12,strokeWidth:3,className:"animate-spin"}):u.jsx(ga,{size:12,strokeWidth:2.5}),t("system.upgrade.checkUpdate")]})]}),u.jsxs("dl",{className:"grid grid-cols-1 sm:grid-cols-[160px_1fr] gap-y-2 text-sm",children:[u.jsx("dt",{className:"font-bold",children:t("system.upgrade.label.current")}),u.jsx("dd",{className:"font-[family-name:var(--font-mono)]",children:e??"—"}),f.data&&u.jsxs(u.Fragment,{children:[u.jsx("dt",{className:"font-bold",children:t("system.upgrade.label.latest")}),u.jsxs("dd",{className:"font-[family-name:var(--font-mono)] flex items-center gap-2 flex-wrap",children:[f.data.latest,f.data.upToDate?u.jsx("span",{className:"nb-status",style:{background:"var(--color-running-bg)",color:"var(--color-running)"},children:t("system.upgrade.latestPill")}):u.jsxs(u.Fragment,{children:[u.jsxs("button",{className:"nb-btn nb-btn-primary",style:{padding:"3px 10px",fontSize:11},onClick:b,disabled:a,type:"button","aria-label":t("system.upgrade.button.upgradeAria"),children:[a?u.jsx(We,{size:11,strokeWidth:3,className:"animate-spin"}):u.jsx(zh,{size:11,strokeWidth:2.5}),t("system.upgrade.button.upgrade")]}),u.jsxs("button",{className:"nb-btn",style:{padding:"3px 10px",fontSize:11},onClick:k,type:"button","aria-label":t("system.upgrade.button.copyAria"),title:t("system.upgrade.button.copyTitle"),children:[u.jsx(IR,{size:11,strokeWidth:2.5})," ",t("system.upgrade.button.copy")]})]})]})]}),h&&u.jsxs(u.Fragment,{children:[u.jsx("dt",{className:"font-bold",children:t("system.upgrade.label.installed")}),u.jsxs("dd",{className:"font-[family-name:var(--font-mono)] flex items-center gap-2",children:[h,h===((v=f.data)==null?void 0:v.latest)?u.jsx("span",{className:"nb-status",style:{background:"var(--color-running-bg)",color:"var(--color-running)"},children:t("system.upgrade.installed.ok")}):h===e?u.jsx("span",{className:"nb-status",style:{background:"var(--color-stuck-bg)",color:"var(--color-stuck)"},children:t("system.upgrade.installed.fail")}):null]})]}),f.isError&&u.jsxs(u.Fragment,{children:[u.jsx("dt",{className:"font-bold",children:t("system.upgrade.label.check")}),u.jsx("dd",{className:"text-[var(--color-crashed)] text-xs",children:f.error instanceof Error?f.error.message:String(f.error)})]})]}),l&&u.jsx("pre",{className:"mt-3 text-xs font-[family-name:var(--font-mono)] bg-[var(--color-bg-cream)] border-2 border-[var(--color-text)] rounded-lg p-3 max-h-40 overflow-auto whitespace-pre-wrap",children:l})]})}function g8({onClose:e}){const t=Be(),n=Gt(),{alert:r}=mn(),a=Xe({queryKey:["system-env-raw"],queryFn:w3}),[o,l]=C.useState(null),[d,f]=C.useState(null);C.useEffect(()=>{a.data&&o===null&&(l(a.data.content),f(a.data.etag))},[a.data,o]);const h=o!==null&&a.data&&o!==a.data.content,g=Ct({mutationFn:()=>{if(o===null)throw new Error("no draft");return k3(o,d??"")},onSuccess:()=>{n.invalidateQueries({queryKey:["system-env"]}),n.invalidateQueries({queryKey:["system-env-raw"]}),e()},onError:m=>{const y=m.status;r({title:t(y===409?"system.env.error.conflict.title":"system.env.error.save.title"),body:y===409?t("system.env.error.conflict.body"):m instanceof Error?m.message:String(m)})}});return a.isLoading?u.jsx("p",{className:"text-[var(--color-text-muted)]",children:t("common.loading")}):u.jsxs("div",{children:[u.jsx("p",{className:"text-xs text-[var(--color-stuck)] font-bold mb-2",children:t("system.env.warning")}),u.jsx("textarea",{className:"nb-input w-full font-[family-name:var(--font-mono)] text-xs",style:{minHeight:320,resize:"vertical"},value:o??"",onChange:m=>l(m.target.value),spellCheck:!1,"aria-label":t("system.env.aria")}),u.jsxs("div",{className:"flex items-center justify-between mt-3",children:[u.jsxs("span",{className:"text-xs text-[var(--color-text-muted)] font-[family-name:var(--font-mono)]",children:[d?`etag: ${d}`:"",h?t("system.env.dirtyMark"):""]}),u.jsxs("div",{className:"flex gap-2",children:[u.jsxs("button",{className:"nb-btn",style:{padding:"6px 12px"},onClick:e,disabled:g.isPending,type:"button",children:[u.jsx(Nn,{size:12,strokeWidth:3})," ",t("system.env.cancel")]}),u.jsxs("button",{className:"nb-btn nb-btn-primary",style:{padding:"6px 12px"},onClick:()=>g.mutate(),disabled:!h||g.isPending,type:"button","aria-label":t("system.env.save.aria"),children:[g.isPending?u.jsx(We,{size:12,strokeWidth:3,className:"animate-spin"}):u.jsx(Oi,{size:12,strokeWidth:3}),t("system.env.save")]})]})]})]})}function y8(){var y;const e=Be(),{alert:t}=mn(),n=Xe({queryKey:["projects"],queryFn:ba}),[r,a]=C.useState({}),[o,l]=C.useState({}),[d,f]=C.useState({}),h=(((y=n.data)==null?void 0:y.data)??[]).map(b=>({project:b.name})),g=async(b,k)=>{l(v=>({...v,[b]:k?"fix":"check"}));try{const v=await C3(b,k);a(S=>({...S,[b]:v})),f(S=>({...S,[b]:!0}))}catch(v){t({title:e(k?"system.diagnostics.error.fix":"system.diagnostics.error.check"),body:v instanceof Error?v.message:String(v)})}finally{l(v=>({...v,[b]:null}))}},m=async()=>{for(const b of h)await g(b.project,!1)};return u.jsxs("section",{className:"nb-card",children:[u.jsxs("div",{className:"flex items-center justify-between mb-3",children:[u.jsx("h2",{className:"font-[family-name:var(--font-heading)] text-xl font-bold",children:e("system.diagnostics.title")}),u.jsxs("button",{className:"nb-btn nb-btn-mint",style:{padding:"6px 12px",fontSize:12},onClick:()=>{m()},disabled:h.length===0||Object.values(o).some(Boolean),type:"button",children:[u.jsx(ga,{size:12,strokeWidth:2.5}),e("system.diagnostics.checkAll")]})]}),h.length===0?u.jsx("p",{className:"text-[var(--color-text-muted)] text-sm",children:e("system.diagnostics.empty")}):u.jsx("ul",{className:"flex flex-col gap-2",children:h.map(b=>{const k=r[b.project],v=o[b.project],S=k?k.checks.filter(_=>_.status==="fail").length:0,E=k?k.checks.filter(_=>_.status==="warn").length:0,j=d[b.project]??!1,N=k!=null;return u.jsxs("li",{className:"bg-[var(--color-bg-cream)] border-2 border-[var(--color-text)] rounded-lg",children:[u.jsxs("div",{className:"flex items-center gap-3 px-3 py-2",children:[u.jsxs("button",{type:"button",onClick:()=>f(_=>({..._,[b.project]:!j})),disabled:!N,className:"flex items-center gap-2 flex-1 text-left min-w-0","aria-label":e(j?"system.diagnostics.collapseAria":"system.diagnostics.expandAria"),children:[N&&k.ok?u.jsx(ch,{size:16,className:"text-[var(--color-running)] shrink-0",strokeWidth:2.5}):N?u.jsx(vu,{size:16,className:"text-[var(--color-stuck)] shrink-0",strokeWidth:2.5}):u.jsx(ch,{size:16,className:"text-[var(--color-text-subtle)] shrink-0",strokeWidth:2.5}),N&&(j?u.jsx(Ql,{size:12}):u.jsx(Wl,{size:12})),u.jsx("span",{className:"font-bold font-[family-name:var(--font-mono)]",children:b.project}),N?k.ok?u.jsx("span",{className:"text-xs text-[var(--color-running)] font-semibold",children:"OK"}):u.jsxs("span",{className:"text-xs text-[var(--color-stuck)] font-semibold",children:[S," fail · ",E," warn"]}):u.jsx("span",{className:"text-xs text-[var(--color-text-muted)]",children:e("system.diagnostics.never")})]}),u.jsxs("button",{className:"nb-btn",style:{padding:"4px 10px",fontSize:11},onClick:()=>{g(b.project,!1)},disabled:!!v,type:"button","aria-label":e("system.diagnostics.checkAria"),children:[v==="check"?u.jsx(We,{size:11,strokeWidth:3,className:"animate-spin"}):u.jsx(ga,{size:11,strokeWidth:2.5}),e("system.diagnostics.check")]}),u.jsxs("button",{className:"nb-btn nb-btn-primary",style:{padding:"4px 10px",fontSize:11},onClick:()=>{g(b.project,!0)},disabled:!!v||N&&k.ok,type:"button","aria-label":e("system.diagnostics.fixAria"),title:N&&k.ok?e("system.diagnostics.noFixesNeeded"):e("system.diagnostics.fix.tip"),children:[v==="fix"?u.jsx(We,{size:11,strokeWidth:3,className:"animate-spin"}):u.jsx(WN,{size:11,strokeWidth:2.5}),e("system.diagnostics.fix")]})]}),j&&N&&u.jsxs("div",{className:"border-t-2 border-dashed border-[var(--color-text)] px-3 py-2",children:[u.jsx("ul",{className:"flex flex-col gap-1 text-xs font-[family-name:var(--font-mono)]",children:k.checks.map((_,O)=>u.jsx(b8,{check:_},`${_.name}-${O}`))}),k.fixes.length>0&&u.jsxs("div",{className:"mt-3 bg-[var(--color-running-bg)] border-2 border-[var(--color-running)] rounded p-2",children:[u.jsx("div",{className:"text-xs font-bold text-[var(--color-running)] mb-1",children:e("system.diagnostics.fixed")}),u.jsx("ul",{className:"text-xs list-disc pl-4",children:k.fixes.map((_,O)=>u.jsx("li",{children:_},O))})]})]})]},b.project)})})]})}function b8({check:e}){const t=e.status==="pass"?u.jsx(ch,{size:12,className:"text-[var(--color-running)]",strokeWidth:2.5}):e.status==="fail"?u.jsx(vu,{size:12,className:"text-[var(--color-crashed)]",strokeWidth:2.5}):e.status==="warn"?u.jsx(vu,{size:12,className:"text-[var(--color-stuck)]",strokeWidth:2.5}):u.jsx("span",{className:"w-3 h-3 rounded-full bg-[var(--color-text-subtle)] inline-block"});return u.jsxs("li",{className:"flex items-start gap-2",children:[u.jsx("span",{className:"pt-0.5 shrink-0",children:t}),u.jsx("span",{className:"font-bold w-32 shrink-0",children:e.name}),u.jsx("span",{className:"text-[var(--color-text-muted)] break-words",children:e.message})]})}function x8(e){const t=Math.floor(e/1e3),n=Math.floor(t/3600),r=Math.floor(t%3600/60),a=t%60;return n>0?`${n}h ${r}m ${a}s`:r>0?`${r}m ${a}s`:`${a}s`}function v8(){return ht("/api/chat/sessions")}function w8(e){return ht(`/api/chat/sessions/${e}`)}async function ny(e={}){const t=await fetch("/api/chat/sessions",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok)throw new Error(`${t.status}: ${await t.text()}`);return await t.json()}async function k8(e){const t=await fetch(`/api/chat/sessions/${e}`,{method:"DELETE"});if(!t.ok)throw new Error(`${t.status}`)}async function E8(e,t,n){const r=await fetch(`/api/chat/sessions/${e}/messages`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({content:t,attachments:n})});if(!r.ok)throw new Error(`${r.status}: ${await r.text()}`);return await r.json()}async function S8(e){const t=await fetch(`/api/chat/sessions/${e}/interrupt`,{method:"POST"});if(!t.ok&&t.status!==204)throw new Error(`${t.status}: ${await t.text()}`)}function N8(e,t){const n=t?`?since=${encodeURIComponent(t)}`:"";return ht(`/api/chat/sessions/${e}/messages${n}`)}function _8({onInsert:e,disabled:t,className:n="nb-btn"}){var m;const r=Be(),[a,o]=C.useState(!1),[l,d]=C.useState(""),h=((m=Xe({queryKey:["prompts",l],queryFn:()=>Lj(l||void 0),enabled:a}).data)==null?void 0:m.data)??[],g=async y=>{try{const b=await Tx(y);e(b.body)}finally{o(!1),d("")}};return u.jsxs("div",{className:"relative flex-shrink-0",children:[u.jsx("button",{type:"button",className:n,onClick:()=>o(y=>!y),disabled:t,"aria-label":r("prompts.insert"),title:r("prompts.insert"),children:u.jsx($N,{size:15,strokeWidth:2.5})}),a&&u.jsxs("div",{className:"absolute bottom-full mb-2 left-0 z-20 w-72 nb-card max-h-80 overflow-auto flex flex-col gap-1",children:[u.jsxs("label",{className:"flex items-center gap-2 border-2 border-[var(--color-text)] rounded px-2 py-1",children:[u.jsx(co,{size:12}),u.jsx("input",{autoFocus:!0,value:l,onChange:y=>d(y.target.value),placeholder:r("prompts.search"),className:"bg-transparent outline-none flex-1 text-sm","aria-label":r("prompts.search")})]}),h.length===0?u.jsx("p",{className:"text-xs text-[var(--color-text-muted)] px-1 py-2",children:r("prompts.empty")}):h.map(y=>u.jsxs("button",{type:"button",onClick:()=>void g(y.name),className:"text-left px-2 py-1 rounded hover:bg-[var(--color-bg-cream)]",children:[u.jsx("code",{className:"font-[family-name:var(--font-mono)] text-sm font-bold",children:y.name}),y.description&&u.jsx("span",{className:"block text-xs text-[var(--color-text-muted)] truncate",children:y.description})]},y.name))]})]})}function EE(){var de,Ce,Re,Me,le,Ne,Te,ke,Qe;const e=Be(),{sessionId:t}=jb(),n=vs(),r=Gt(),{confirm:a,alert:o}=mn(),l=Xe({queryKey:["chat-sessions"],queryFn:v8,refetchInterval:5e3}),d=Xe({queryKey:["chat-session",t],queryFn:()=>w8(t??""),enabled:!!t,refetchInterval:4e3}),[f,h]=C.useState(null),g=re=>`chat-draft:${re??""}`,[m,y]=C.useState(()=>localStorage.getItem(g(t))??""),b=C.useCallback(re=>{y(Ae=>{const ue=typeof re=="function"?re(Ae):re;try{t&&localStorage.setItem(g(t),ue)}catch{}return ue})},[t]);C.useEffect(()=>{y(localStorage.getItem(g(t))??"")},[t]);const[k,v]=C.useState(!1),S=C.useRef(null),E=C.useRef(!0),[j,N]=C.useState(!1),_=()=>{const re=S.current;return!re||re.scrollHeight-re.scrollTop-re.clientHeight<40},O=C.useCallback(()=>{const re=S.current;re&&(re.scrollTop=re.scrollHeight),E.current=!0,N(!1)},[]),T=C.useCallback(()=>{const re=_();E.current=re,N(!re)},[]),I=C.useRef(null);C.useEffect(()=>{const re=I.current;re&&(re.style.height="auto",re.style.height=`${Math.min(re.scrollHeight,200)}px`,re.scrollTop=re.scrollHeight)},[m]);const R="w-8 h-8 flex items-center justify-center rounded-lg border-2 border-[var(--color-text)] bg-[var(--color-bg-cream)] hover:-translate-x-px hover:-translate-y-px hover:shadow-[2px_2px_0_var(--color-text)] transition-transform disabled:opacity-50 disabled:hover:translate-x-0 disabled:hover:translate-y-0 disabled:hover:shadow-none",[F,M]=C.useState(!1),[U,q]=C.useState([]),[Y,D]=C.useState(!1),[H,B]=C.useState(!1),[V,Q]=C.useState(!1),[K,L]=C.useState(null),[z,G]=C.useState(!1);C.useEffect(()=>{if(!t)return;const re=new EventSource(`/stream/chat/${encodeURIComponent(t)}`);let Ae=!0;return re.addEventListener("open",()=>{if(Ae){Ae=!1;return}const ue=r.getQueryData(["chat-session",t]),he=ue!=null&&ue.messages.length?ue.messages[ue.messages.length-1].ts:void 0;N8(t,he).then(ge=>{ge.data.length!==0&&r.setQueryData(["chat-session",t],Le=>{if(!Le)return Le;const ze=new Set(Le.messages.map(te=>te.id)),Fe=ge.data.filter(te=>!ze.has(te.id));return Fe.length===0?Le:{...Le,messages:[...Le.messages,...Fe],lastMessageAt:Fe[Fe.length-1].ts,messageCount:Le.messageCount+Fe.length}})}).catch(()=>{})}),re.addEventListener("chat.message",ue=>{try{const he=JSON.parse(ue.data);r.setQueryData(["chat-session",t],ge=>{if(!ge||ge.messages.some(Fe=>Fe.id===he.message.id))return ge;const ze=ge.messages.findIndex(Fe=>Fe.role==="user"&&Fe.id.startsWith("optim-")&&Fe.content===he.message.content);if(ze>=0){const Fe=[...ge.messages];return Fe[ze]=he.message,{...ge,messages:Fe}}return{...ge,messages:[...ge.messages,he.message]}})}catch{}}),re.addEventListener("chat.message.pending",ue=>{try{const he=JSON.parse(ue.data);h({id:he.assistantId,blocks:[],done:!1,finalMessage:null})}catch{}}),re.addEventListener("chat.message.chunk.text",ue=>{try{const he=JSON.parse(ue.data);h(ge=>{if(!ge||ge.id!==he.assistantId)return ge;const Le=[...ge.blocks],ze=Le[Le.length-1];return ze&&ze.type==="text"?Le[Le.length-1]={...ze,target:ze.target+he.text}:Le.push({type:"text",target:he.text,displayed:""}),{...ge,blocks:Le}})}catch{}}),re.addEventListener("chat.message.chunk.tool_use",ue=>{try{const he=JSON.parse(ue.data);h(ge=>!ge||ge.id!==he.assistantId?ge:{...ge,blocks:[...ge.blocks,{type:"tool_use",id:he.id,title:he.title,kind:he.kind,status:he.status,input:he.input,locations:he.locations}]})}catch{}}),re.addEventListener("chat.message.chunk.tool_update",ue=>{try{const he=JSON.parse(ue.data);h(ge=>!ge||ge.id!==he.assistantId?ge:{...ge,blocks:ge.blocks.map(Le=>Le.type==="tool_use"&&Le.id===he.id?{...Le,status:he.status,input:Le.input??he.input,locations:Le.locations??he.locations}:Le)})}catch{}}),re.addEventListener("chat.message.complete",ue=>{try{const he=JSON.parse(ue.data);h(ge=>ge&&ge.id===he.assistantId?{...ge,done:!0,finalMessage:he.message}:ge)}catch{}}),()=>re.close()},[t,r]),C.useEffect(()=>{if(!f)return;const re=f.blocks.reduce((ue,he)=>he.type==="text"?ue+(he.target.length-he.displayed.length):ue,0);if(re<=0){if(f.done&&f.finalMessage){const ue=f.finalMessage;r.setQueryData(["chat-session",t],he=>!he||he.messages.some(ge=>ge.id===ue.id)?he:{...he,messages:[...he.messages,ue],lastMessageAt:ue.ts,messageCount:he.messageCount+1}),r.invalidateQueries({queryKey:["chat-sessions"]}),r.invalidateQueries({queryKey:["chat-session",t]}),h(null),v(!1)}return}const Ae=setTimeout(()=>{h(ue=>{if(!ue)return ue;let he=Math.max(1,Math.ceil(re/40));const ge=ue.blocks.map(Le=>{if(Le.type!=="text"||he<=0)return Le;const ze=Le.target.length-Le.displayed.length;if(ze<=0)return Le;const Fe=Math.min(ze,he);return he-=Fe,{...Le,displayed:Le.target.slice(0,Le.displayed.length+Fe)}});return{...ue,blocks:ge}})},25);return()=>clearTimeout(Ae)},[f,r,t]),C.useEffect(()=>{if(E.current){const re=S.current;re&&(re.scrollTop=re.scrollHeight)}},[d.data,f]),C.useEffect(()=>{E.current=!0,N(!1)},[t]);const P=C.useCallback(async(re={})=>{var Ae,ue;try{const he=await ny({cwd:((Ae=re.cwd)==null?void 0:Ae.trim())||void 0,title:((ue=re.title)==null?void 0:ue.trim())||void 0,agentKind:re.agentKind});r.invalidateQueries({queryKey:["chat-sessions"]}),n(`/chat/${he.id}`),M(!1)}catch(he){o({title:e("chat.error.create.title"),body:he instanceof Error?he.message:String(he)})}},[r,n,o,e]),oe=C.useCallback(async()=>{const re=m.trim();if(!re&&U.length===0||k)return;let Ae=t;if(!Ae){const ge=await ny();r.invalidateQueries({queryKey:["chat-sessions"]}),Ae=ge.id,n(`/chat/${Ae}`,{replace:!0})}E.current=!0,N(!1);const ue=U.map(ge=>ge.path),he={id:`optim-${Date.now()}`,role:"user",content:re||e("chat.placeholder.attachment"),ts:new Date().toISOString(),status:"complete",attachments:ue.length>0?ue:void 0};r.setQueryData(["chat-session",Ae],ge=>ge?{...ge,messages:[...ge.messages,he],lastMessageAt:he.ts,messageCount:ge.messageCount+1}:{id:Ae,createdAt:he.ts,lastMessageAt:he.ts,title:re.slice(0,60)||e("chat.placeholder.attachmentTitle"),project:null,messageCount:1,messages:[he]}),b(""),q([]),v(!0);try{await E8(Ae,re||e("chat.placeholder.viewAttachment"),ue.length>0?ue:void 0)}catch(ge){v(!1),console.error("sendMessage failed",ge),o({title:e("chat.error.send.title"),body:ge instanceof Error?ge.message:String(ge)})}},[m,U,k,t,r,n,o,e]),be=C.useCallback(async re=>{if(re.size>n2){o({title:e("chat.error.fileTooBig.title"),body:e("chat.error.fileTooBig.body",{size:(re.size/1024/1024).toFixed(2),name:re.name})});return}let Ae=t;if(!Ae){const ue=await ny();r.invalidateQueries({queryKey:["chat-sessions"]}),Ae=ue.id,n(`/chat/${Ae}`,{replace:!0})}D(!0);try{const ue=await Pz(Ae,re);q(he=>[...he,{path:ue.path,name:ue.name}])}catch(ue){o({title:e("chat.error.uploadAttachment.title"),body:ue instanceof Error?ue.message:String(ue)})}finally{D(!1)}},[t,r,n,o,e]),xe=C.useCallback(re=>{q(Ae=>Ae.filter(ue=>ue.path!==re))},[]),we=C.useCallback(async(re,Ae)=>{await a({title:e("chat.delete.confirm.title"),body:e(Ae==="cli"?"chat.delete.confirm.body.cli":"chat.delete.confirm.body.console"),confirm:e("chat.delete.confirm.button"),danger:!0})&&(await k8(re),r.invalidateQueries({queryKey:["chat-sessions"]}),t===re&&n("/chat"))},[r,t,n,a,e]),J=C.useCallback(async()=>{if(t)try{await S8(t)}catch(re){o({title:e("chat.error.interrupt.title"),body:re instanceof Error?re.message:String(re)})}},[t,o,e]);return u.jsxs("div",{className:"grid grid-cols-[260px_1fr] gap-4 h-[calc(100vh-140px)]",children:[u.jsxs("aside",{className:"nb-card p-3 overflow-auto flex flex-col gap-2",children:[u.jsxs("button",{className:"nb-btn nb-btn-primary w-full justify-center",onClick:()=>M(!0),type:"button",children:[u.jsx(pr,{size:14,strokeWidth:3}),e("chat.list.new")]}),u.jsx("div",{className:"mt-2 text-xs font-[family-name:var(--font-heading)] uppercase tracking-wider text-[var(--color-text-muted)] px-2",children:e("chat.list.heading",{count:((de=l.data)==null?void 0:de.data.length)??0})}),u.jsx("div",{className:"flex flex-col gap-1.5 mt-1",children:(()=>{var Fe;const re=((Fe=l.data)==null?void 0:Fe.data)??[],Ae=Date.now(),ue=10080*60*1e3,he=te=>new Date(te.lastMessageAt??te.createdAt).getTime(),ge=re.filter(te=>Ae-he(te)<=ue),Le=re.filter(te=>Ae-he(te)>ue),ze=te=>u.jsxs("div",{className:["group flex items-start gap-2 p-2 rounded-lg border-2 border-transparent",t===te.id?"bg-[var(--color-accent-mint)] border-[var(--color-text)] shadow-[2px_2px_0_var(--color-text)]":"hover:bg-[var(--color-bg-cream)] hover:border-[var(--color-text)]"].join(" "),children:[u.jsxs("button",{type:"button","aria-label":e("chat.list.openAria",{title:te.title,cwd:te.cwd?e("chat.list.cwdSuffix",{cwd:te.cwd}):""}),onClick:()=>n(`/chat/${te.id}`),className:"flex items-start gap-2 flex-1 min-w-0 text-left",children:[u.jsx(ik,{size:14,strokeWidth:2.5,className:"mt-0.5 flex-shrink-0"}),u.jsxs("div",{className:"flex-1 min-w-0",children:[u.jsxs("div",{className:"flex items-center gap-1.5 min-w-0",children:[u.jsx("p",{className:"text-sm font-semibold truncate flex-1",children:te.title}),te.source==="cli"&&u.jsx("span",{className:"flex-shrink-0 px-1.5 py-0 rounded-md bg-[var(--color-accent-purple)] border-2 border-[var(--color-text)] text-[9px] font-[family-name:var(--font-mono)] uppercase tracking-wider leading-tight",title:e("chat.cliBadge.tooltip"),children:e("chat.cliBadge")})]}),u.jsx("p",{className:"text-[10px] text-[var(--color-text-muted)] font-[family-name:var(--font-mono)] truncate",children:e("chat.list.msgs",{count:te.messageCount,time:Bj(te.lastMessageAt??te.createdAt,e)})}),te.cwd&&u.jsxs("p",{className:"text-[10px] text-[var(--color-text-subtle)] font-[family-name:var(--font-mono)] truncate flex items-center gap-1",title:te.cwd,children:[u.jsx(ku,{size:9,strokeWidth:2.5,className:"flex-shrink-0"}),u.jsx("span",{className:"truncate",dir:"rtl",children:te.cwd})]})]})]}),u.jsx("button",{type:"button","aria-label":te.source==="cli"?e("chat.list.deleteCli.aria"):e("chat.list.delete.aria"),className:"opacity-0 group-hover:opacity-100 p-1 hover:text-[var(--color-crashed)]",onClick:ve=>{ve.stopPropagation(),we(te.id,te.source)},children:u.jsx(fi,{size:12})})]},te.id);return u.jsxs(u.Fragment,{children:[ge.map(ze),Le.length>0&&u.jsxs(u.Fragment,{children:[u.jsxs("button",{type:"button",onClick:()=>G(te=>!te),"aria-expanded":z,className:"flex items-center gap-1 px-2 py-1 mt-1 rounded-lg text-xs font-semibold text-[var(--color-text-muted)] hover:text-[var(--color-text)] hover:bg-[var(--color-bg-cream)] focus-visible:outline focus-visible:outline-2",children:[z?u.jsx(Ql,{size:12,strokeWidth:2.5}):u.jsx(Wl,{size:12,strokeWidth:2.5}),e("chat.list.olderToggle",{count:Le.length})]}),z&&Le.map(ze)]}),re.length===0&&u.jsx("p",{className:"text-xs text-[var(--color-text-subtle)] italic text-center py-4",children:e("chat.list.empty")})]})})()})]}),u.jsx("div",{className:"nb-card p-0 flex flex-col overflow-hidden",children:t?u.jsxs(u.Fragment,{children:[u.jsxs("header",{className:"px-4 py-3 border-b-2 border-[var(--color-text)] bg-[var(--color-bg-cream)]",children:[u.jsxs("div",{className:"flex items-center gap-2 flex-wrap",children:[u.jsx("h2",{className:"font-[family-name:var(--font-heading)] font-bold text-lg",children:((Ce=d.data)==null?void 0:Ce.title)??e("common.loading")}),((Re=d.data)==null?void 0:Re.model)&&u.jsxs("span",{className:"inline-flex items-center gap-1 px-2 py-0.5 rounded-md bg-[var(--color-accent-yellow)] border-2 border-[var(--color-text)] text-[10px] font-[family-name:var(--font-mono)] font-bold uppercase tracking-wider",title:e("chat.detail.model.tooltip"),children:[u.jsx(uh,{size:11,strokeWidth:2.5})," ",d.data.model]})]}),u.jsx("p",{className:"text-xs text-[var(--color-text-muted)] font-[family-name:var(--font-mono)]",children:t}),((Me=d.data)==null?void 0:Me.claudeSessionId)&&u.jsxs("p",{className:"text-xs text-[var(--color-text-subtle)] font-[family-name:var(--font-mono)] truncate",title:e("chat.detail.claudeSession.tooltip"),children:["claude: ",d.data.claudeSessionId]}),((le=d.data)==null?void 0:le.cwd)&&u.jsxs("p",{className:"text-xs text-[var(--color-text-muted)] font-[family-name:var(--font-mono)] flex items-center gap-1 mt-1",title:d.data.cwd,children:[u.jsx(ku,{size:11,strokeWidth:2.5,className:"flex-shrink-0"}),u.jsx("span",{className:"truncate",children:d.data.cwd})]})]}),u.jsxs("div",{className:"relative flex-1 flex flex-col min-h-0",children:[u.jsxs("div",{ref:S,onScroll:T,className:"flex-1 overflow-auto p-4 flex flex-col gap-4",children:[(((Ne=d.data)==null?void 0:Ne.messages)??[]).filter(re=>!(f&&re.status==="streaming")).map(re=>u.jsx(A8,{msg:re,sessionId:t??null,onPreviewAttachment:Ae=>L(Ae)},re.id)),f&&u.jsx(M8,{pending:f}),!d.isLoading&&(((Te=d.data)==null?void 0:Te.messages)??[]).length===0&&!f&&!k&&u.jsx("p",{className:"text-center text-[var(--color-text-subtle)] italic mt-12",children:e("chat.session.empty")})]}),j&&u.jsx("button",{type:"button",onClick:O,className:"absolute bottom-3 right-4 z-10 w-9 h-9 flex items-center justify-center rounded-full border-2 border-[var(--color-text)] bg-white shadow-[2px_2px_0_var(--color-text)] hover:-translate-y-px hover:shadow-[3px_3px_0_var(--color-text)] active:translate-y-px active:shadow-none transition-transform","aria-label":"滚动到底部",title:"↓ 回到底部",children:u.jsx(yR,{size:18,strokeWidth:3})})]}),((ke=d.data)==null?void 0:ke.source)==="cli"?u.jsxs("div",{className:"border-t-2 border-[var(--color-text)] p-4 bg-[var(--color-accent-purple)]",children:[u.jsxs("p",{className:"text-sm font-[family-name:var(--font-mono)] text-[var(--color-text-muted)] text-center",children:[u.jsx("strong",{children:e("chat.cli.banner.bold")})," — ",e("chat.cli.banner")]}),u.jsxs("pre",{className:"mt-2 px-3 py-2 bg-[var(--color-bg)] border-2 border-[var(--color-text)] rounded-md text-xs font-[family-name:var(--font-mono)] overflow-x-auto",children:["sps agent --chat --name ",(t??"").replace(/^session-/,"")]})]}):u.jsxs("div",{className:["border-t-2 border-[var(--color-text)] p-3 bg-[var(--color-bg-cream)] transition-colors",V?"bg-[var(--color-accent-mint)]":""].join(" "),onDragOver:re=>{re.dataTransfer.types.includes("Files")&&(re.preventDefault(),re.dataTransfer.dropEffect="copy",V||Q(!0))},onDragLeave:()=>Q(!1),onDrop:re=>{if(!re.dataTransfer.types.includes("Files"))return;re.preventDefault(),Q(!1);const Ae=Array.from(re.dataTransfer.files??[]);for(const ue of Ae)be(ue)},children:[(U.length>0||Y)&&u.jsxs("div",{className:"flex flex-wrap gap-2 mb-2",children:[U.map(re=>u.jsxs("button",{type:"button",className:"flex items-center gap-1.5 px-2 py-1 rounded-md bg-[var(--color-bg)] border-2 border-[var(--color-text)] text-xs font-[family-name:var(--font-mono)] hover:bg-[var(--color-accent-mint)] group",onClick:()=>L(re.path),title:e("chat.attachment.previewTooltip",{name:re.name,path:re.path}),children:[wh(re.path)?u.jsx(uL,{size:11,strokeWidth:2.5,className:"flex-shrink-0"}):u.jsx(Gu,{size:11,strokeWidth:2.5,className:"flex-shrink-0"}),u.jsx("span",{className:"truncate max-w-[180px]",children:re.name}),u.jsx("span",{role:"button","aria-label":e("chat.input.removeAttachment",{name:re.name}),className:"ml-1 hover:text-[var(--color-crashed)] cursor-pointer",onClick:Ae=>{Ae.stopPropagation(),xe(re.path)},children:u.jsx(Nn,{size:11,strokeWidth:3})})]},re.path)),Y&&u.jsxs("span",{className:"flex items-center gap-1.5 px-2 py-1 text-xs text-[var(--color-text-muted)] font-[family-name:var(--font-mono)]",children:[u.jsx(We,{size:11,strokeWidth:2.5,className:"animate-spin"}),e("chat.input.uploading")]})]}),u.jsxs("div",{className:"flex flex-col gap-2 rounded-2xl border-[3px] border-[var(--color-text)] bg-white px-3 py-2 shadow-[3px_3px_0_var(--color-text)] focus-within:shadow-[4px_4px_0_var(--color-text)] transition-shadow",children:[u.jsx("textarea",{ref:I,className:"w-full resize-none border-0 bg-transparent outline-none text-sm leading-relaxed max-h-[200px] px-1 pt-1",placeholder:e(V?"chat.input.dragOver":"chat.input.placeholder"),rows:1,value:m,onChange:re=>b(re.target.value),onKeyDown:re=>{re.key==="Enter"&&!re.shiftKey&&!re.nativeEvent.isComposing&&(re.preventDefault(),oe())},onPaste:re=>{const ue=Array.from(re.clipboardData.items??[]).filter(he=>he.kind==="file"&&he.type.startsWith("image/"));if(ue.length!==0){re.preventDefault();for(const he of ue){const ge=he.getAsFile();ge&&be(ge)}}},"aria-label":e("chat.input.aria")}),u.jsxs("div",{className:"flex items-center gap-1.5",children:[u.jsx("button",{type:"button",className:R,onClick:()=>B(!0),disabled:k,"aria-label":e("chat.input.attach.aria"),title:e("chat.input.attach.title"),children:u.jsx(SL,{size:15,strokeWidth:2.5})}),u.jsx(_8,{className:R,disabled:k,onInsert:re=>b(Ae=>Ae.trim()?`${Ae}
641
+ ${re}`:re)}),u.jsx("div",{className:"flex-1"}),f?u.jsx("button",{className:"w-9 h-9 flex items-center justify-center rounded-full border-2 border-[var(--color-text)] bg-[var(--color-crashed)] text-white shadow-[2px_2px_0_var(--color-text)] hover:-translate-x-px hover:-translate-y-px hover:shadow-[3px_3px_0_var(--color-text)] active:translate-x-px active:translate-y-px active:shadow-none transition-transform",onClick:J,type:"button","aria-label":e("chat.input.interrupt.aria"),title:e("chat.input.interrupt"),children:u.jsx(Lb,{size:14,strokeWidth:3})}):u.jsx("button",{className:"w-9 h-9 flex items-center justify-center rounded-full border-2 border-[var(--color-text)] bg-[var(--color-cta)] text-white shadow-[2px_2px_0_var(--color-text)] hover:-translate-x-px hover:-translate-y-px hover:shadow-[3px_3px_0_var(--color-text)] active:translate-x-px active:translate-y-px active:shadow-none transition-transform disabled:opacity-40 disabled:cursor-not-allowed disabled:hover:translate-x-0 disabled:hover:translate-y-0 disabled:hover:shadow-[2px_2px_0_var(--color-text)]",onClick:oe,disabled:!m.trim()&&U.length===0||k,type:"button","aria-label":e("chat.input.send.aria"),title:e("chat.input.send"),children:k?u.jsx(We,{size:16,strokeWidth:3,className:"animate-spin"}):u.jsx(RN,{size:18,strokeWidth:3})})]})]})]})]}):u.jsx("div",{className:"flex-1 flex items-center justify-center p-8",children:u.jsxs("div",{className:"text-center max-w-md",children:[u.jsx("div",{className:"w-20 h-20 rounded-2xl bg-[var(--color-accent-mint)] border-[3px] border-[var(--color-text)] shadow-[3px_3px_0_var(--color-text)] flex items-center justify-center mx-auto mb-4",children:u.jsx(ik,{size:32,strokeWidth:2.5})}),u.jsx("h1",{className:"font-[family-name:var(--font-heading)] text-2xl font-bold mb-2",children:e("chat.empty.title")}),u.jsx("p",{className:"text-sm text-[var(--color-text-muted)] mb-4",children:e("chat.empty.hint")}),u.jsx("p",{className:"text-xs text-[var(--color-text-subtle)] italic",children:e("chat.empty.shortcuts")})]})})}),F&&u.jsx(C8,{onCancel:()=>M(!1),onCreate:re=>P(re)}),H&&u.jsx(rx,{mode:"file",title:e("chat.filePicker.title"),initialPath:((Qe=d.data)==null?void 0:Qe.cwd)??void 0,onCancel:()=>B(!1),onSelect:re=>{q(Ae=>{if(Ae.some(he=>he.path===re))return Ae;const ue=re.split(/[\\/]/).pop()||re;return[...Ae,{path:re,name:ue}]}),B(!1)}}),K&&t&&u.jsx(j8,{sessionId:t,path:K,onClose:()=>L(null)})]})}function wh(e){return/\.(png|jpe?g|gif|webp|svg|avif)$/i.test(e)}function SE(e){return/\.pdf$/i.test(e)}function ry(e){return/\.(txt|md|log|json|yaml|yml|csv|html|xml|tsx?|jsx?|css|sh|ya?ml|conf|toml|ini|env|gitignore|sql|py|rb|go|rs|java|kt|swift|c|cc|cpp|h|hpp)$/i.test(e)}function j8({sessionId:e,path:t,onClose:n}){const r=Be(),[a,o]=C.useState(null),[l,d]=C.useState(null);C.useEffect(()=>{const g=m=>{m.key==="Escape"&&(m.preventDefault(),n())};return window.addEventListener("keydown",g),()=>window.removeEventListener("keydown",g)},[n]),C.useEffect(()=>{if(!ry(t))return;let g=!1;return fetch(Hy(e,t)).then(async m=>{if(!m.ok)throw new Error(`${m.status}`);return m.text()}).then(m=>{g||o(m.length>2e5?m.slice(0,2e5)+`
642
+
643
+ …(truncated)`:m)}).catch(m=>{g||d(m instanceof Error?m.message:String(m))}),()=>{g=!0}},[e,t]);const f=Hy(e,t),h=t.split(/[\\/]/).pop()??t;return u.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-[rgba(45,55,72,0.6)] p-4",role:"presentation",children:u.jsxs("div",{className:"nb-card bg-[var(--color-bg)] max-w-3xl w-full p-5 flex flex-col",style:{maxHeight:"85vh"},role:"dialog","aria-modal":"true","aria-label":r("chat.attachment.preview.aria",{name:h}),children:[u.jsxs("header",{className:"flex items-center justify-between mb-3 shrink-0",children:[u.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[u.jsx(FR,{size:16,strokeWidth:2.5,className:"flex-shrink-0"}),u.jsx("h3",{className:"font-[family-name:var(--font-heading)] font-bold text-base truncate",children:h})]}),u.jsx("button",{type:"button",className:"p-1 hover:bg-[var(--color-bg-cream)] rounded flex-shrink-0",onClick:n,"aria-label":r("chat.attachment.close.aria"),children:u.jsx(Nn,{size:16,strokeWidth:3})})]}),u.jsx("p",{className:"text-[10px] text-[var(--color-text-muted)] font-[family-name:var(--font-mono)] truncate mb-2 shrink-0",title:t,dir:"rtl",children:t}),u.jsxs("div",{className:"flex-1 overflow-auto border-2 border-[var(--color-text)] rounded-lg bg-[var(--color-bg-cream)] min-h-0",children:[wh(t)&&u.jsx("div",{className:"flex items-center justify-center p-4",children:u.jsx("img",{src:f,alt:`Preview: ${h}`,className:"max-w-full max-h-[60vh] object-contain"})}),SE(t)&&u.jsx("iframe",{src:f,title:`PDF: ${h}`,className:"w-full",style:{height:"60vh",border:0}}),ry(t)&&u.jsx("pre",{className:"p-3 text-xs font-[family-name:var(--font-mono)] whitespace-pre-wrap break-words",children:l?u.jsx("span",{className:"text-[var(--color-crashed)]",children:r("chat.attachment.readErr",{detail:l})}):a===null?u.jsx("span",{className:"text-[var(--color-text-muted)]",children:r("chat.attachment.loading")}):a}),!wh(t)&&!SE(t)&&!ry(t)&&u.jsxs("div",{className:"p-6 text-center text-sm text-[var(--color-text-muted)]",children:[u.jsx("p",{className:"mb-3",children:r("chat.attachment.unsupported")}),u.jsx("a",{href:f,download:h,className:"nb-btn nb-btn-primary inline-flex",children:r("chat.attachment.download")})]})]})]})})}function C8({onCancel:e,onCreate:t}){const n=Be(),[r,a]=C.useState(""),[o,l]=C.useState(""),[d,f]=C.useState("claude"),[h,g]=C.useState(!1),[m,y]=C.useState(!1);C.useEffect(()=>{if(m)return;const k=v=>{v.key==="Escape"&&(v.preventDefault(),e())};return window.addEventListener("keydown",k),()=>window.removeEventListener("keydown",k)},[e,m]);const b=async()=>{if(!h){g(!0);try{t({title:r.trim()||void 0,cwd:o.trim()||void 0,agentKind:d})}finally{g(!1)}}};return u.jsxs("div",{className:"fixed inset-0 z-40 flex items-center justify-center bg-[rgba(45,55,72,0.4)] p-4",role:"presentation",children:[u.jsxs("div",{className:"nb-card bg-[var(--color-bg)] max-w-md w-full p-5",role:"dialog","aria-modal":"true","aria-label":n("chat.newSession.title.aria"),children:[u.jsxs("header",{className:"flex items-center justify-between mb-4",children:[u.jsx("h2",{className:"font-[family-name:var(--font-heading)] font-bold text-lg",children:n("chat.newSession.title")}),u.jsx("button",{type:"button",className:"p-1 hover:bg-[var(--color-bg-cream)] rounded",onClick:e,"aria-label":n("chat.newSession.close.aria"),children:u.jsx(Nn,{size:16,strokeWidth:3})})]}),u.jsxs("div",{className:"flex flex-col gap-4",children:[u.jsxs("div",{children:[u.jsx("span",{className:"block text-xs font-bold mb-1.5 uppercase tracking-wider",children:n("chat.newSession.field.agent")}),u.jsx("div",{className:"grid grid-cols-2 gap-2",children:["claude","openai"].map(k=>{const v=d===k;return u.jsx("button",{type:"button",onClick:()=>f(k),"aria-pressed":v,className:["rounded-xl border-2 px-3 py-2 text-sm font-bold transition-all",v?"bg-[var(--color-accent-mint)] border-[var(--color-text)] shadow-[3px_3px_0_var(--color-text)]":"bg-[var(--color-bg)] border-[var(--color-border-light)] hover:border-[var(--color-text)]"].join(" "),children:k==="claude"?"Claude":"OpenAI"},k)})})]}),u.jsxs("div",{children:[u.jsx("label",{htmlFor:"new-session-title",className:"block text-xs font-bold mb-1.5 uppercase tracking-wider",children:n("chat.newSession.field.title")}),u.jsx("input",{id:"new-session-title",type:"text",className:"nb-input w-full",placeholder:n("chat.newSession.field.title.placeholder"),value:r,onChange:k=>a(k.target.value),autoFocus:!0})]}),u.jsxs("div",{children:[u.jsx("label",{htmlFor:"new-session-cwd",className:"block text-xs font-bold mb-1.5 uppercase tracking-wider",children:n("chat.newSession.field.cwd")}),u.jsxs("div",{className:"flex gap-2",children:[u.jsx("input",{id:"new-session-cwd",type:"text",className:"nb-input flex-1 font-[family-name:var(--font-mono)] text-sm",placeholder:"/home/coral/projects/my-app",value:o,onChange:k=>l(k.target.value)}),u.jsxs("button",{type:"button",className:"nb-btn flex-shrink-0",onClick:()=>y(!0),"aria-label":n("chat.newSession.field.cwd.browseAria"),title:n("chat.newSession.field.cwd.browseAria"),children:[u.jsx(zN,{size:14,strokeWidth:2.5}),n("chat.newSession.field.cwd.browse")]})]}),u.jsxs("p",{className:"text-[11px] text-[var(--color-text-muted)] mt-1.5 leading-relaxed",children:[u.jsx(ku,{size:10,strokeWidth:2.5,className:"inline mr-1 -mt-0.5"}),n("chat.newSession.field.cwd.help1")," ",n("chat.newSession.field.cwd.help2")]})]}),u.jsxs("div",{className:"flex gap-2 justify-end pt-2",children:[u.jsx("button",{type:"button",className:"nb-btn",onClick:e,children:n("chat.newSession.cancel")}),u.jsxs("button",{type:"button",className:"nb-btn nb-btn-primary",onClick:b,disabled:h,children:[h?u.jsx(We,{size:14,strokeWidth:3,className:"animate-spin"}):u.jsx(pr,{size:14,strokeWidth:3}),n("chat.newSession.create")]})]})]})]}),m&&u.jsx(rx,{initialPath:o.trim()||void 0,onCancel:()=>y(!1),onSelect:k=>{l(k),y(!1)}})]})}function A8({msg:e,sessionId:t,onPreviewAttachment:n}){const r=Be(),a=e.role==="user",o=e.role==="error",l=e.blocks&&e.blocks.length>0?e.blocks:[{type:"text",text:e.content}],d=e.attachments??[];return u.jsx("div",{className:a?"self-end max-w-3xl":"self-start max-w-3xl",children:u.jsxs("div",{className:["nb-card",a?"bg-[var(--color-secondary)]":o?"bg-[var(--color-crashed-bg)]":"bg-[var(--color-bg)]"].join(" "),children:[u.jsxs("p",{className:"text-xs font-bold uppercase tracking-wider text-[var(--color-text-muted)] mb-2 flex items-center gap-2",children:[r(a?"chat.message.role.you":o?"chat.message.role.error":"chat.message.role.assistant"),u.jsx("span",{className:"font-normal",children:"·"}),u.jsx("span",{className:"font-normal cursor-help",title:R8(e.ts),children:Bj(e.ts,r)})]}),u.jsx("div",{className:"flex flex-col gap-2",children:l.map((f,h)=>u.jsx(D8,{block:f},h))}),d.length>0&&t&&u.jsx("div",{className:"mt-3 pt-3 border-t-2 border-dashed border-[var(--color-text)]/30 flex flex-wrap gap-2",children:d.map(f=>u.jsx(T8,{sessionId:t,path:f,onPreview:()=>n(f)},f))}),e.truncated&&u.jsx("p",{className:"mt-3 px-3 py-2 bg-[var(--color-stuck-bg)] border-2 border-[var(--color-stuck)] rounded-lg text-xs text-[var(--color-stuck)] font-bold",children:r("chat.message.truncated")})]})})}function T8({sessionId:e,path:t,onPreview:n}){const r=Be(),a=t.split(/[\\/]/).pop()??t;return wh(t)?u.jsx("button",{type:"button",onClick:n,className:"block rounded-md overflow-hidden border-2 border-[var(--color-text)] hover:shadow-[2px_2px_0_var(--color-text)] transition-shadow",title:r("chat.attachment.previewSimpleTooltip",{name:a}),children:u.jsx("img",{src:Hy(e,t),alt:a,className:"block max-h-40 max-w-[12rem] object-cover",loading:"lazy"})}):u.jsxs("button",{type:"button",onClick:n,className:"flex items-center gap-1.5 px-2 py-1 rounded-md bg-[var(--color-bg)] border-2 border-[var(--color-text)] text-xs font-[family-name:var(--font-mono)] hover:bg-[var(--color-accent-mint)]",title:r("chat.attachment.previewTooltip",{name:a,path:t}),children:[u.jsx(Gu,{size:11,strokeWidth:2.5,className:"flex-shrink-0"}),u.jsx("span",{className:"truncate max-w-[200px]",children:a})]})}function M8({pending:e}){const t=(()=>{for(let n=e.blocks.length-1;n>=0;n--)if(e.blocks[n].type==="text")return n;return-1})();return u.jsx("div",{className:"self-start max-w-3xl",children:u.jsxs("div",{className:"nb-card bg-[var(--color-bg)]",children:[u.jsxs("p",{className:"text-xs font-bold uppercase tracking-wider text-[var(--color-text-muted)] mb-2 flex items-center gap-2",children:["assistant",u.jsx("span",{className:"font-normal",children:"·"}),u.jsxs("span",{className:"flex items-center gap-1 font-normal text-[var(--color-running)]",children:[u.jsx(We,{size:10,strokeWidth:3,className:"animate-spin"}),"streaming"]})]}),u.jsxs("div",{className:"flex flex-col gap-2",children:[e.blocks.length===0&&u.jsx("p",{className:"text-sm text-[var(--color-text-muted)] italic",children:"…"}),e.blocks.map((n,r)=>{if(n.type==="text"){const a=r===t;return u.jsxs("div",{className:"relative",children:[u.jsx(zj,{text:n.displayed}),a&&u.jsx("span",{className:"inline-block w-2 h-4 ml-1 bg-[var(--color-text)] animate-pulse align-middle"})]},r)}return u.jsx(Pj,{tool:n},r)})]})]})})}function D8({block:e}){return e.type==="text"?u.jsx(zj,{text:e.text}):u.jsx(Pj,{tool:e})}function zj({text:e}){return e?u.jsx("div",{className:"text-sm font-[family-name:var(--font-body)] break-words prose-chat",children:u.jsx(kx,{remarkPlugins:[_x],rehypePlugins:[Ax],children:e})}):null}function O8(e){if(e==null||typeof e!="object")return typeof e=="string"?e:"";const t=e,n=a=>typeof t[a]=="string"?t[a]:void 0;return n("file_path")??n("path")??n("notebook_path")??n("command")??n("pattern")??n("query")??n("url")??n("name")??n("description")??n("prompt")??Object.values(t).find(a=>typeof a=="string"&&a.trim())??""}function Pj({tool:e}){const[t,n]=C.useState(!1),r=e.status==="completed"||e.status==="complete",a=e.status==="failed",o=!r&&!a,l=O8(e.input),d=e.input!=null&&(typeof e.input!="object"||Object.keys(e.input).length>0);return u.jsxs("div",{className:"border-2 border-[var(--color-text)] rounded-lg overflow-hidden bg-[var(--color-bg-cream)]",children:[u.jsxs("button",{type:"button",onClick:()=>n(f=>!f),className:"w-full flex items-center gap-2 px-3 py-2 text-xs font-[family-name:var(--font-mono)] hover:bg-[var(--color-accent-yellow)] transition-colors",children:[u.jsx(Wl,{size:12,strokeWidth:3,className:["transition-transform flex-shrink-0",t?"rotate-90":""].join(" ")}),u.jsx(WN,{size:12,strokeWidth:2.5,className:"flex-shrink-0"}),u.jsx("span",{className:"font-bold flex-shrink-0",children:e.title||e.kind}),u.jsx("span",{className:"flex-1 text-left text-[var(--color-text-muted)] truncate",title:l,children:l}),o&&u.jsx(We,{size:12,strokeWidth:3,className:"animate-spin text-[var(--color-running)] flex-shrink-0"}),r&&u.jsx(wu,{size:12,strokeWidth:2.5,className:"text-[var(--color-running)] flex-shrink-0"}),a&&u.jsx(LN,{size:12,strokeWidth:2.5,className:"text-[var(--color-crashed)] flex-shrink-0"})]}),t&&u.jsxs("div",{className:"px-3 py-2 text-xs font-[family-name:var(--font-mono)] text-[var(--color-text-muted)] border-t-2 border-[var(--color-text)] space-y-1",children:[d?u.jsx("pre",{className:"whitespace-pre-wrap break-all text-[var(--color-text)] max-h-72 overflow-auto",children:typeof e.input=="string"?e.input:JSON.stringify(e.input,null,2)}):u.jsx("div",{children:"无参数"}),u.jsxs("div",{className:"opacity-60",children:["id: ",e.id," · ",e.status]})]})]})}function Bj(e,t){if(!e)return"";const n=new Date(e),r=Date.now()-n.getTime();return r<6e4?t("kanban.time.justNow"):r<36e5?t("kanban.time.minutes",{n:Math.floor(r/6e4)}):r<864e5?t("kanban.time.hours",{n:Math.floor(r/36e5)}):n.toLocaleDateString()}function R8(e){if(!e)return;const t=new Date(e),n=r=>String(r).padStart(2,"0");return`${t.getFullYear()}-${n(t.getMonth()+1)}-${n(t.getDate())} ${n(t.getHours())}:${n(t.getMinutes())}:${n(t.getSeconds())}`}function L8(){return ht("/api/processes").then(e=>e.data)}function I8(e){return Ri(`/api/processes/${e}/kill`)}function z8(){return ht("/api/processes/reclaim")}async function P8(e){const t=await fetch("/api/processes/reclaim",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({idleMinutes:e})});if(!t.ok)throw new Error(`${t.status}: ${await t.text()}`);return t.json()}const NE="border-[3px] border-[var(--color-text)] rounded-2xl bg-white shadow-[4px_4px_0_var(--color-text)]";function B8(e){if(!e)return"—";const t=Date.now()-new Date(e).getTime();if(!Number.isFinite(t)||t<0)return"—";const n=Math.floor(t/6e4);if(n<1)return"<1m";if(n<60)return`${n}m`;const r=Math.floor(n/60);return r<24?`${r}h${n%60?` ${n%60}m`:""}`:`${Math.floor(r/24)}d${r%24?` ${r%24}h`:""}`}function iy(e){return e.project?e.project:e.cwd?e.cwd.split("/").filter(Boolean).pop()??e.slot:e.slot}function _E(e){const t=/^session-chat-(.+)$/.exec(e.slot);return(t==null?void 0:t[1])??null}function U8({p:e}){const t=e.alive?e.sessionState??"alive":"offline",n=e.alive?"bg-[var(--color-accent-mint)]":"bg-[var(--color-bg-cream)] text-[var(--color-text)]/60";return u.jsxs("span",{className:`inline-flex items-center gap-1 px-2 py-0.5 rounded-lg border-2 border-[var(--color-text)] text-xs font-bold font-[family-name:var(--font-mono)] ${n}`,children:[u.jsx("span",{className:`w-2 h-2 rounded-full ${e.alive?"bg-green-600":"bg-gray-400"}`}),t]})}function $8(){var k;const e=Be(),t=Gt(),[n,r]=C.useState(null),[a,o]=C.useState("all"),l=Xe({queryKey:["processes"],queryFn:L8,refetchInterval:5e3}),d=Ct({mutationFn:I8,onSuccess:v=>{r(v.message),t.invalidateQueries({queryKey:["processes"]})},onError:v=>r(v instanceof Error?v.message:String(v))}),f=Xe({queryKey:["reclaim"],queryFn:z8}),[h,g]=C.useState("");C.useEffect(()=>{f.data&&h===""&&g(String(f.data.idleMinutes))},[f.data,h]);const m=Ct({mutationFn:v=>P8(v),onSuccess:v=>{r(`自动回收已设为 ${v.idleMinutes} 分钟空闲`),t.invalidateQueries({queryKey:["reclaim"]})},onError:v=>r(v instanceof Error?v.message:String(v))}),y=l.data??[],b=y.filter(v=>a==="all"?!0:v.kind===a);return u.jsxs("div",{className:"max-w-full",children:[u.jsxs("div",{className:"flex items-center gap-3 mb-1",children:[u.jsx(uh,{size:22,strokeWidth:2.5}),u.jsx("h1",{className:"font-[family-name:var(--font-heading)] font-bold text-2xl",children:e("processes.title")}),u.jsxs("button",{type:"button","aria-label":e("processes.refresh"),onClick:()=>t.invalidateQueries({queryKey:["processes"]}),className:"ml-auto inline-flex items-center gap-1.5 px-3 py-1.5 rounded-xl border-2 border-[var(--color-text)] bg-white text-sm font-semibold shadow-[2px_2px_0_var(--color-text)] hover:-translate-x-px hover:-translate-y-px focus-visible:outline focus-visible:outline-2",children:[l.isFetching?u.jsx(We,{size:15,className:"animate-spin"}):u.jsx(ga,{size:15}),e("processes.refresh")]})]}),u.jsxs("p",{className:"text-sm text-[var(--color-text)]/70 mb-3",children:[e("processes.subtitle")," · ",e("processes.aliveCount").replace("{n}",String(y.length))]}),u.jsxs("div",{className:`${NE} px-4 py-3 mb-4 flex flex-wrap items-center gap-2`,style:{boxShadow:"2px 2px 0 var(--color-text)"},children:[u.jsx(JL,{size:16,strokeWidth:2.5}),u.jsx("span",{className:"text-sm font-bold",children:"自动回收"}),u.jsx("span",{className:"text-sm text-[var(--color-text)]/70",children:"会话空闲"}),u.jsx("input",{type:"number",min:1,max:1440,value:h,onChange:v=>g(v.target.value),className:"w-20 px-2 py-1 rounded-lg border-2 border-[var(--color-text)] font-[family-name:var(--font-mono)] text-sm","aria-label":"自动回收空闲分钟数"}),u.jsx("span",{className:"text-sm text-[var(--color-text)]/70",children:"分钟后自动停(下次访问自动续上,不丢上下文)"}),u.jsxs("button",{type:"button",disabled:m.isPending||h===""||Number(h)===((k=f.data)==null?void 0:k.idleMinutes),onClick:()=>m.mutate(Math.round(Number(h))),className:"ml-auto inline-flex items-center gap-1.5 px-3 py-1.5 rounded-lg border-2 border-[var(--color-text)] bg-[var(--color-accent-mint)] text-sm font-bold shadow-[2px_2px_0_var(--color-text)] hover:-translate-x-px hover:-translate-y-px disabled:opacity-50 focus-visible:outline focus-visible:outline-2","aria-label":"保存自动回收设置",children:[m.isPending?u.jsx(We,{size:14,className:"animate-spin"}):u.jsx(Oi,{size:14,strokeWidth:3}),"保存"]})]}),n&&u.jsx("div",{className:"mb-3 px-3 py-2 rounded-xl border-2 border-[var(--color-text)] bg-[var(--color-bg-cream)] text-sm font-mono",children:n}),u.jsx("div",{className:"flex flex-wrap gap-2 mb-3 items-center",children:["all","worker","chat"].map(v=>u.jsx("button",{type:"button","aria-label":e(`processes.kind.${v}`),onClick:()=>o(v),className:`px-3 py-1 rounded-lg border-2 border-[var(--color-text)] text-sm font-bold shadow-[2px_2px_0_var(--color-text)] focus-visible:outline focus-visible:outline-2 ${a===v?"bg-[var(--color-accent-yellow)]":"bg-white hover:-translate-x-px hover:-translate-y-px"}`,children:e(`processes.kind.${v}`)},v))}),u.jsx("div",{className:`${NE} overflow-hidden`,children:u.jsxs("table",{className:"w-full text-sm",children:[u.jsx("thead",{className:"bg-[var(--color-bg-cream)] font-[family-name:var(--font-heading)]",children:u.jsxs("tr",{className:"text-left",children:[u.jsx("th",{className:"px-3 py-2",children:e("processes.col.kind")}),u.jsx("th",{className:"px-3 py-2",children:e("processes.col.slot")}),u.jsx("th",{className:"px-3 py-2",children:e("processes.col.project")}),u.jsx("th",{className:"px-3 py-2",children:"PID"}),u.jsx("th",{className:"px-3 py-2",children:e("processes.col.state")}),u.jsx("th",{className:"px-3 py-2",children:e("processes.col.memory")}),u.jsx("th",{className:"px-3 py-2",children:"运行时间"}),u.jsx("th",{className:"px-3 py-2",children:e("processes.col.action")})]})}),u.jsxs("tbody",{className:"font-[family-name:var(--font-mono)]",children:[b.length===0&&u.jsx("tr",{children:u.jsx("td",{colSpan:8,className:"px-3 py-6 text-center text-[var(--color-text)]/50",children:e("processes.empty")})}),b.map(v=>u.jsxs("tr",{className:"border-t-2 border-[var(--color-text)]/10",title:v.cwd??"",children:[u.jsx("td",{className:"px-3 py-2",children:u.jsx("span",{className:`inline-block px-2 py-0.5 rounded-lg border-2 border-[var(--color-text)] text-xs font-bold ${v.kind==="worker"?"bg-[var(--color-accent-yellow)]":"bg-[var(--color-accent-purple)]"}`,children:e(`processes.kind.${v.kind}`)})}),u.jsx("td",{className:"px-3 py-2 max-w-[220px] truncate",children:v.slot}),u.jsx("td",{className:"px-3 py-2 max-w-[220px] truncate",children:v.kind==="chat"&&_E(v)?u.jsxs(bs,{to:`/chat/${_E(v)}`,className:"inline-flex items-center gap-1 font-semibold text-[var(--color-text)] underline decoration-2 underline-offset-2 hover:opacity-70",title:"打开对话窗口",children:[u.jsx(BN,{size:12,strokeWidth:2.5})," ",iy(v)]}):v.kind==="worker"&&v.project?u.jsxs(bs,{to:`/board?project=${encodeURIComponent(v.project)}`,className:"inline-flex items-center gap-1 font-semibold text-[var(--color-text)] underline decoration-2 underline-offset-2 hover:opacity-70",title:"打开该项目看板",children:[u.jsx(uh,{size:12,strokeWidth:2.5})," ",iy(v)]}):u.jsx("span",{children:iy(v)})}),u.jsx("td",{className:"px-3 py-2",children:v.pid??"—"}),u.jsx("td",{className:"px-3 py-2",children:u.jsx(U8,{p:v})}),u.jsx("td",{className:"px-3 py-2",children:v.memoryMB!=null?`${v.memoryMB} MB`:"—"}),u.jsx("td",{className:"px-3 py-2",children:B8(v.startedAt)}),u.jsx("td",{className:"px-3 py-2",children:v.alive&&v.pid!=null?u.jsxs("button",{type:"button","aria-label":`${e("processes.kill")} ${v.slot}`,onClick:()=>{confirm(e("processes.killConfirm").replace("{slot}",v.slot))&&d.mutate(v.pid)},className:"inline-flex items-center gap-1 px-2.5 py-1 rounded-lg border-2 border-[var(--color-text)] bg-[var(--color-accent-pink)] text-xs font-bold shadow-[2px_2px_0_var(--color-text)] hover:-translate-x-px hover:-translate-y-px active:translate-x-0.5 active:translate-y-0.5 focus-visible:outline focus-visible:outline-2",children:[u.jsx(LN,{size:13})," ",e("processes.kill")]}):u.jsx("span",{className:"text-[var(--color-text)]/40 text-xs",children:"—"})})]},v.slot))]})]})})]})}function F8(e={}){const t=new URLSearchParams;e.project&&t.set("project",e.project),e.action&&t.set("action",e.action);const n=t.toString();return ht(`/api/audit${n?`?${n}`:""}`).then(r=>r.data)}const q8="border-[3px] border-[var(--color-text)] rounded-2xl bg-white shadow-[4px_4px_0_var(--color-text)]",H8={create:"bg-[var(--color-accent-mint)]",modify:"bg-[var(--color-accent-yellow)]",delete:"bg-[var(--color-accent-pink)]",daemon:"bg-[var(--color-accent-purple)]"};function K8(){const e=Be(),t=Gt(),[n,r]=C.useState(""),a=Xe({queryKey:["audit",n],queryFn:()=>F8(n?{action:n}:{}),refetchInterval:8e3}),o=a.data??[],l=d=>e(`audit.action.${d}`);return u.jsxs("div",{className:"max-w-full",children:[u.jsxs("div",{className:"flex items-center gap-3 mb-1",children:[u.jsx(qN,{size:22,strokeWidth:2.5}),u.jsx("h1",{className:"font-[family-name:var(--font-heading)] font-bold text-2xl",children:e("audit.title")}),u.jsxs("button",{type:"button","aria-label":e("audit.refresh"),onClick:()=>t.invalidateQueries({queryKey:["audit"]}),className:"ml-auto inline-flex items-center gap-1.5 px-3 py-1.5 rounded-xl border-2 border-[var(--color-text)] bg-white text-sm font-semibold shadow-[2px_2px_0_var(--color-text)] hover:-translate-x-px hover:-translate-y-px focus-visible:outline focus-visible:outline-2",children:[a.isFetching?u.jsx(We,{size:15,className:"animate-spin"}):u.jsx(ga,{size:15}),e("audit.refresh")]})]}),u.jsx("p",{className:"text-sm text-[var(--color-text)]/70 mb-4",children:e("audit.subtitle")}),u.jsx("div",{className:"flex gap-2 mb-3",children:["","create","modify","delete","daemon"].map(d=>u.jsx("button",{type:"button","aria-label":d?l(d):e("audit.filter.all"),onClick:()=>r(d),className:`px-3 py-1 rounded-lg border-2 border-[var(--color-text)] text-sm font-bold shadow-[2px_2px_0_var(--color-text)] focus-visible:outline focus-visible:outline-2 ${n===d?"bg-[var(--color-accent-purple)]":"bg-white hover:-translate-x-px hover:-translate-y-px"}`,children:d?l(d):e("audit.filter.all")},d||"all"))}),u.jsx("div",{className:`${q8} overflow-hidden`,children:u.jsxs("table",{className:"w-full text-sm",children:[u.jsx("thead",{className:"bg-[var(--color-bg-cream)] font-[family-name:var(--font-heading)]",children:u.jsxs("tr",{className:"text-left",children:[u.jsx("th",{className:"px-3 py-2",children:e("audit.col.time")}),u.jsx("th",{className:"px-3 py-2",children:e("audit.col.action")}),u.jsx("th",{className:"px-3 py-2",children:e("audit.col.project")}),u.jsx("th",{className:"px-3 py-2",children:e("audit.col.detail")})]})}),u.jsxs("tbody",{className:"font-[family-name:var(--font-mono)]",children:[o.length===0&&u.jsx("tr",{children:u.jsx("td",{colSpan:4,className:"px-3 py-6 text-center text-[var(--color-text)]/50",children:e("audit.empty")})}),o.map((d,f)=>u.jsxs("tr",{className:"border-t-2 border-[var(--color-text)]/10",children:[u.jsx("td",{className:"px-3 py-2 whitespace-nowrap",children:new Date(d.ts).toLocaleString()}),u.jsx("td",{className:"px-3 py-2",children:u.jsx("span",{className:`inline-block px-2 py-0.5 rounded-lg border-2 border-[var(--color-text)] text-xs font-bold ${H8[d.action]}`,children:l(d.action)})}),u.jsx("td",{className:"px-3 py-2",children:d.project}),u.jsx("td",{className:"px-3 py-2 text-[var(--color-text)]/70",children:d.detail??(d.source?`(${d.source})`:"—")})]},`${d.ts}-${f}`))]})]})})]})}const ay="rounded-xl border-[3px] border-[var(--color-text)] shadow-[3px_3px_0_var(--color-text)] bg-white p-3";function G8(){const e=Be(),[t,n]=C.useState(""),[r,a]=C.useState([]),[o,l]=C.useState([]),[d,f]=C.useState(!1),[h,g]=C.useState(null),[m,y]=C.useState(null);C.useEffect(()=>{fetch("/api/memory-cfg").then(v=>v.json()).then(v=>y(v.viewerUrl??"")).catch(()=>y(""))},[]);async function b(){try{const v=await fetch("/api/memory/sessions");if(!v.ok)throw new Error(`HTTP ${v.status}`);const S=await v.json();l((S.sessions??S??[]).slice(0,30))}catch(v){g(v instanceof Error?v.message:String(v))}}C.useEffect(()=>{b()},[]);async function k(){if(t.trim()){f(!0),g(null);try{const v=await fetch("/api/memory/smart-search",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({query:t,limit:15})});if(!v.ok)throw new Error(`HTTP ${v.status}`);const S=await v.json();a(S.results??S.hits??[])}catch(v){g(v instanceof Error?v.message:String(v))}finally{f(!1)}}}return m===null?null:m?u.jsxs("div",{className:"flex flex-col gap-4 h-full min-h-0",children:[u.jsxs("div",{className:"flex items-center gap-3 flex-wrap",children:[u.jsxs("h1",{className:"font-[family-name:var(--font-heading)] font-bold text-2xl text-[var(--color-text)]",children:["🧠 ",e("nav.memory")]}),u.jsxs("a",{href:m,target:"_blank",rel:"noreferrer",className:"text-sm font-semibold underline decoration-2 underline-offset-2 text-[var(--color-text)] hover:opacity-70",children:["↗ ",m]})]}),u.jsx("div",{className:"flex-1 min-h-0 rounded-2xl border-[3px] border-[var(--color-text)] shadow-[4px_4px_0_var(--color-text)] overflow-hidden bg-white",children:u.jsx("iframe",{src:m,title:"agentmemory dashboard",className:"w-full h-full border-0",style:{minHeight:"calc(100vh - 160px)"}})})]}):u.jsxs("div",{className:"flex flex-col gap-4",children:[u.jsxs("div",{className:"flex items-center gap-3 flex-wrap",children:[u.jsxs("h1",{className:"font-[family-name:var(--font-heading)] font-bold text-2xl text-[var(--color-text)]",children:["🧠 ",e("nav.memory")]}),u.jsx("span",{className:"text-xs text-[var(--color-text)] opacity-60",children:e("memory.sub")})]}),u.jsxs("div",{className:"flex gap-2",children:[u.jsx("input",{value:t,onChange:v=>n(v.target.value),onKeyDown:v=>v.key==="Enter"&&k(),placeholder:e("memory.searchPlaceholder"),"aria-label":e("memory.searchPlaceholder"),className:"flex-1 rounded-xl border-[3px] border-[var(--color-text)] px-3 py-2 font-[family-name:var(--font-mono)] text-sm focus-visible:shadow-[3px_3px_0_var(--color-text)] outline-none"}),u.jsx("button",{type:"button",onClick:k,disabled:d,"aria-label":e("memory.search"),className:"rounded-xl border-[3px] border-[var(--color-text)] bg-[var(--color-accent-mint)] px-4 py-2 font-bold text-sm shadow-[3px_3px_0_var(--color-text)] hover:-translate-x-px hover:-translate-y-px hover:shadow-[4px_4px_0_var(--color-text)] active:translate-x-0.5 active:translate-y-0.5 active:shadow-[1px_1px_0_var(--color-text)] disabled:opacity-50",children:d?"…":e("memory.search")})]}),h&&u.jsxs("div",{className:"text-sm text-[var(--color-accent-pink,#d6336c)] font-semibold",children:["⚠ ",h]}),r.length>0&&u.jsxs("div",{className:"flex flex-col gap-2",children:[u.jsxs("h2",{className:"font-[family-name:var(--font-heading)] font-bold text-sm text-[var(--color-text)]",children:[e("memory.results"),"(",r.length,")"]}),r.map(v=>{var S;return u.jsxs("div",{className:ay,children:[u.jsxs("div",{className:"flex items-center gap-2 text-xs opacity-60 font-[family-name:var(--font-mono)]",children:[u.jsx("span",{children:v.type||v.title}),u.jsx("span",{children:"·"}),u.jsx("span",{children:new Date(v.timestamp).toLocaleString()}),u.jsx("span",{children:"·"}),u.jsxs("span",{children:["score ",(S=v.score)==null?void 0:S.toFixed(3)]})]}),u.jsx("div",{className:"text-sm mt-1 text-[var(--color-text)]",children:v.text||v.content||v.summary||u.jsx("span",{className:"opacity-50 italic",children:e("memory.rawHint")})})]},v.obsId)})]}),u.jsxs("div",{className:"flex flex-col gap-2",children:[u.jsxs("h2",{className:"font-[family-name:var(--font-heading)] font-bold text-sm text-[var(--color-text)]",children:[e("memory.sessions"),"(",o.length,")"]}),o.length===0&&u.jsx("div",{className:`${ay} text-sm opacity-60`,children:e("memory.empty")}),o.map((v,S)=>{var E;return u.jsxs("div",{className:ay,children:[u.jsx("div",{className:"font-[family-name:var(--font-mono)] text-xs text-[var(--color-text)]",children:(v.cwd??"").split("/").pop()||((E=v.sessionId)==null?void 0:E.slice(0,8))||"?"}),v.firstPrompt&&u.jsx("div",{className:"text-xs opacity-60 mt-1 line-clamp-2",children:v.firstPrompt.slice(0,160)})]},v.sessionId??S)})]})]})}function V8(){return ht("/api/providers")}async function Y8(e,t){const n=await fetch("/api/providers",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({kind:e,entry:t})});if(!n.ok)throw new Error(`${n.status}: ${await n.text()}`);return n.json()}async function Q8(e,t){const n=await fetch(`/api/providers/${e}/${encodeURIComponent(t)}`,{method:"DELETE"});if(!n.ok)throw new Error(`${n.status}: ${await n.text()}`);return n.json()}async function W8(){return(await ht("/api/channels")).data??{console:{},adapters:[]}}async function X8(e){return(await Pb("/api/channels",e)).data}async function Z8(){return(await ht("/api/codex-proxy")).data}async function J8(){return(await Ri("/api/codex-proxy/install")).data}async function eq(e){const t=await fetch(`/api/codex-proxy?purgeAuth=${e?"1":"0"}`,{method:"DELETE",headers:{Accept:"application/json"}});if(!t.ok)throw new Error(`${t.status}: ${await t.text()}`);return(await t.json()).data}async function tq(){return(await Ri("/api/codex-proxy/auth/start")).data}async function nq(){await Ri("/api/codex-proxy/auth/cancel")}const jE=[{key:"memory",labelKey:"plugins.tab.memory"},{key:"channel",labelKey:"plugins.tab.channel"},{key:"model",labelKey:"plugins.tab.model"},{key:"tool",labelKey:"plugins.tab.tool"}];function rq(){const e=Be(),[t,n]=C.useState("memory");return u.jsxs("div",{className:"flex flex-col gap-6 w-full",children:[u.jsxs("header",{children:[u.jsx("h1",{className:"font-[family-name:var(--font-heading)] text-4xl font-bold",children:e("plugins.h1")}),u.jsx("p",{className:"text-sm text-[var(--color-text-muted)] mt-1",children:e("plugins.desc")})]}),u.jsx("div",{role:"tablist","aria-label":e("plugins.h1"),className:"flex gap-2 flex-wrap",children:jE.map(r=>{const a=t===r.key;return u.jsx("button",{role:"tab","aria-selected":a,type:"button",onClick:()=>n(r.key),className:["px-4 py-2 rounded-xl font-bold text-sm border-2 transition-transform duration-150",a?"bg-[var(--color-accent-mint)] border-[var(--color-text)] shadow-[3px_3px_0_var(--color-text)]":"border-[var(--color-text)] bg-white hover:-translate-x-px hover:-translate-y-px hover:shadow-[3px_3px_0_var(--color-text)]"].join(" "),children:e(r.labelKey)},r.key)})}),u.jsx("div",{role:"tabpanel",children:t==="memory"?u.jsx(aq,{}):t==="channel"?u.jsx(dq,{}):t==="model"?u.jsx(sq,{}):u.jsx(iq,{label:e(jE.find(r=>r.key===t).labelKey)})})]})}function iq({label:e}){const t=Be();return u.jsx("section",{className:"nb-card",children:u.jsxs("p",{className:"text-[var(--color-text-muted)] text-sm",children:[e," — ",t("plugins.comingSoon")]})})}function aq(){var k,v,S;const e=Be(),t=Gt(),{alert:n}=mn(),r=Xe({queryKey:["system-memory"],queryFn:E3}),[a,o]=C.useState(null),[l,d]=C.useState(null);C.useEffect(()=>{r.data&&a===null&&(o(r.data.provider),d(r.data.url))},[r.data,a]);const f=a??((k=r.data)==null?void 0:k.provider)??"agentmemory",h=l??((v=r.data)==null?void 0:v.url)??"",g=r.data!=null&&(f!==r.data.provider||f==="custom"&&h!==r.data.url),m=E=>{const j=`system.memory.opt.${E}`;return e(j)},y=Ct({mutationFn:()=>S3(f,f==="custom"?h:""),onSuccess:()=>{t.invalidateQueries({queryKey:["system-memory"]}),t.invalidateQueries({queryKey:["system-env"]})},onError:E=>{n({title:e("system.memory.error"),body:E instanceof Error?E.message:String(E)})}}),b=((S=r.data)==null?void 0:S.options)??["none","builtin","agentmemory","custom"];return u.jsxs("section",{className:"nb-card",children:[u.jsx("h2",{className:"font-[family-name:var(--font-heading)] text-xl font-bold mb-1",children:e("system.memory.title")}),u.jsx("p",{className:"text-xs text-[var(--color-text-muted)] mb-3",children:e("system.memory.desc")}),u.jsxs("div",{className:"flex flex-col gap-3 max-w-md",children:[u.jsxs("label",{className:"flex flex-col gap-1 text-sm",children:[u.jsx("span",{className:"font-bold",children:e("system.memory.provider")}),u.jsx("select",{className:"nb-input",value:f,onChange:E=>o(E.target.value),"aria-label":e("system.memory.provider"),children:b.map(E=>u.jsx("option",{value:E,children:m(E)},E))})]}),f==="custom"&&u.jsxs("label",{className:"flex flex-col gap-1 text-sm",children:[u.jsx("span",{className:"font-bold",children:e("system.memory.url")}),u.jsx("input",{className:"nb-input font-[family-name:var(--font-mono)] text-xs",type:"text",value:h,onChange:E=>d(E.target.value),placeholder:e("system.memory.url.placeholder"),spellCheck:!1,"aria-label":e("system.memory.url")})]}),u.jsx("div",{className:"flex justify-end",children:u.jsxs("button",{className:"nb-btn nb-btn-primary",style:{padding:"6px 12px",fontSize:12},onClick:()=>y.mutate(),disabled:!g||y.isPending,type:"button","aria-label":e("system.memory.save.aria"),children:[y.isPending?u.jsx(We,{size:12,strokeWidth:3,className:"animate-spin"}):u.jsx(Oi,{size:12,strokeWidth:3}),y.isSuccess&&!g?e("system.memory.saved"):e("system.memory.save")]})})]})]})}function sq(){var S,E,j;const e=Gt(),{alert:t,confirm:n}=mn(),r=Xe({queryKey:["providers"],queryFn:V8}),o=(S=Xe({queryKey:["system-agents"],queryFn:n_}).data)==null?void 0:S.agents,[l,d]=C.useState(null),f=Ct({mutationFn:()=>Y8(l.kind,l.entry),onSuccess:()=>{d(null),e.invalidateQueries({queryKey:["providers"]})},onError:N=>void t({title:"保存失败",body:N instanceof Error?N.message:String(N)})}),h=Ct({mutationFn:N=>Q8(N.kind,N.id),onSuccess:()=>void e.invalidateQueries({queryKey:["providers"]}),onError:N=>void t({title:"删除失败",body:N instanceof Error?N.message:String(N)})}),g=Ct({mutationFn:N=>N3(N),onSuccess:()=>void e.invalidateQueries({queryKey:["system-agents"]}),onError:N=>void t({title:"设默认失败",body:N instanceof Error?N.message:String(N)})}),m=(N,_,O)=>{if(!o)return!1;const T=N==="anthropic"?o.worker:o.reviewer;return(T.providerId||"official")===_&&T.model===O},y=(N,_,O)=>{if(!o)return;let T;if(N==="anthropic"){const I={...o.worker,model:O};_==="official"?delete I.providerId:I.providerId=_,T={...o,worker:I}}else T={...o,reviewer:{...o.reviewer,providerId:_,model:O}};g.mutate(T)},b=[{kind:"anthropic",title:"Anthropic 兼容(worker / claude)",items:((E=r.data)==null?void 0:E.anthropic)??[]},{kind:"openai",title:"OpenAI 兼容(reviewer / openai agent)",items:((j=r.data)==null?void 0:j.openai)??[]}],k=N=>d({kind:N,isNew:!0,entry:{id:"",name:"",baseUrl:"",apiKey:"",models:[]}}),v=(N,_)=>d({kind:N,isNew:!1,entry:{id:_.id,name:_.name,baseUrl:_.baseUrl,apiKey:"",models:_.models}});return u.jsxs("section",{className:"nb-card",children:[u.jsx("h2",{className:"font-[family-name:var(--font-heading)] text-xl font-bold mb-1",children:"模型 API 端点"}),u.jsx("p",{className:"text-xs text-[var(--color-text-muted)] mb-4",children:"本地官方订阅(已登录验证)自动置顶,不可编辑;下方可增删第三方兼容端点。**点模型标签设为默认**(anthropic→worker / openai→监工);✓ = 当前默认。"}),u.jsx("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-5",children:b.map(N=>u.jsxs("div",{className:"flex flex-col gap-2",children:[u.jsxs("div",{className:"flex items-center justify-between",children:[u.jsx("span",{className:"font-bold text-sm",children:N.title}),u.jsxs("button",{className:"nb-btn",style:{padding:"4px 10px",fontSize:12},type:"button",onClick:()=>k(N.kind),"aria-label":`添加 ${N.title} 端点`,children:[u.jsx(pr,{size:12,strokeWidth:3})," 添加"]})]}),N.items.length===0&&u.jsx("p",{className:"text-xs text-[var(--color-text-muted)]",children:"(无端点)"}),N.items.map(_=>_.id==="codex-proxy"?u.jsx(lq,{isDefault:O=>m(N.kind,_.id,O),pickDefault:O=>y(N.kind,_.id,O),setDefaultPending:g.isPending},_.id):u.jsxs("div",{className:["rounded-lg px-3 py-2 border-2",_.builtin?"border-[var(--color-text)] bg-[var(--color-bg-cream)]":"border-[var(--color-text)]"].join(" "),children:[u.jsxs("div",{className:"flex items-center justify-between gap-2",children:[u.jsxs("div",{className:"min-w-0",children:[u.jsx("span",{className:"font-[family-name:var(--font-mono)] font-bold text-sm",children:_.id}),u.jsxs("span",{className:"text-[var(--color-text-muted)] text-sm",children:[" · ",_.name]}),_.builtin?u.jsxs("div",{className:"text-xs text-[var(--color-text-muted)] truncate",children:["本地订阅",_.detail?` · ${_.detail}`:""," · 已验证可用"]}):u.jsxs("div",{className:"text-xs text-[var(--color-text-muted)] truncate",children:[_.baseUrl," · key ",_.hasKey?_.apiKey:"未设置"]})]}),_.builtin?u.jsx("span",{className:"shrink-0 text-[10px] font-bold px-2 py-0.5 rounded-md border-2 border-[var(--color-text)] bg-[var(--color-accent-yellow)]",children:"内置"}):u.jsxs("div",{className:"flex gap-1 shrink-0",children:[u.jsx("button",{className:"nb-btn",style:{padding:"4px 8px"},type:"button",onClick:()=>v(N.kind,_),"aria-label":`编辑 ${_.id}`,children:u.jsx(AL,{size:12,strokeWidth:3})}),u.jsx("button",{className:"nb-btn nb-btn-danger",style:{padding:"4px 8px"},type:"button",onClick:async()=>{await n({title:"删除端点",body:`删除 ${_.id}?`,danger:!0})&&h.mutate({kind:N.kind,id:_.id})},"aria-label":`删除 ${_.id}`,children:u.jsx(fi,{size:12,strokeWidth:3})})]})]}),_.models.length>0&&u.jsx("div",{className:"flex flex-wrap gap-1.5 mt-2",children:_.models.map(O=>{const T=m(N.kind,_.id,O);return u.jsxs("button",{type:"button",onClick:()=>y(N.kind,_.id,O),disabled:g.isPending,"aria-pressed":T,className:["px-2 py-0.5 rounded-md text-xs font-[family-name:var(--font-mono)] border-2 border-[var(--color-text)]",T?"bg-[var(--color-accent-mint)] font-bold":"bg-[var(--color-bg)] hover:bg-[var(--color-bg-cream)]"].join(" "),title:T?"当前默认":"设为默认",children:[O,T?" ✓":""]},O)})})]},_.id))]},N.kind))}),l&&u.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/40 p-4",onClick:()=>d(null),children:u.jsx("div",{onClick:N=>N.stopPropagation(),children:u.jsx(oq,{state:l,onChange:N=>d({...l,entry:N}),onCancel:()=>d(null),onSave:()=>f.mutate(),saving:f.isPending})})})]})}function oq({state:e,onChange:t,onCancel:n,onSave:r,saving:a}){const o=e.entry,l=f=>t({...o,...f}),d=/^[a-zA-Z0-9_-]+$/.test(o.id)&&o.name.trim()&&o.baseUrl.trim();return u.jsxs("div",{className:"border-[3px] border-[var(--color-text)] rounded-2xl p-6 bg-[var(--color-bg-cream)] shadow-[6px_6px_0_var(--color-text)] flex flex-col gap-4 w-[min(92vw,640px)] max-h-[88vh] overflow-y-auto",children:[u.jsxs("span",{className:"font-[family-name:var(--font-heading)] font-bold text-lg",children:[e.isNew?"新增端点":`编辑 ${o.id}`,u.jsxs("span",{className:"text-[var(--color-text-muted)] text-sm font-normal",children:["(",e.kind,")"]})]}),u.jsxs("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-4",children:[u.jsxs("label",{className:"flex flex-col gap-1 text-sm font-bold",children:["id(英数 _ -)",u.jsx("input",{className:"nb-input font-[family-name:var(--font-mono)]",value:o.id,disabled:!e.isNew,onChange:f=>l({id:f.target.value}),placeholder:"如 my-openai",spellCheck:!1})]}),u.jsxs("label",{className:"flex flex-col gap-1 text-sm font-bold",children:["名称",u.jsx("input",{className:"nb-input",value:o.name,onChange:f=>l({name:f.target.value}),placeholder:"显示名"})]})]}),u.jsxs("label",{className:"flex flex-col gap-1 text-sm font-bold",children:["Base URL",u.jsx("input",{className:"nb-input font-[family-name:var(--font-mono)] text-sm",value:o.baseUrl,onChange:f=>l({baseUrl:f.target.value}),placeholder:"https://api.example.com/v1",spellCheck:!1})]}),u.jsxs("label",{className:"flex flex-col gap-1 text-sm font-bold",children:["API Key",!e.isNew&&"(留空=保留)",u.jsx("input",{className:"nb-input font-[family-name:var(--font-mono)] text-sm",type:"password",value:o.apiKey??"",onChange:f=>l({apiKey:f.target.value}),placeholder:e.isNew?"sk-...":"••••(留空不改)",spellCheck:!1})]}),u.jsxs("label",{className:"flex flex-col gap-1 text-sm font-bold",children:["Models(逗号或换行分隔)",u.jsx("textarea",{className:"nb-input font-[family-name:var(--font-mono)] text-sm",rows:5,value:o.models.join(", "),onChange:f=>l({models:f.target.value.split(/[,\n]/).map(h=>h.trim()).filter(Boolean)}),placeholder:"gpt-5.4, gpt-4o",spellCheck:!1})]}),u.jsxs("div",{className:"flex justify-end gap-2 pt-1",children:[u.jsx("button",{className:"nb-btn",style:{padding:"8px 16px"},type:"button",onClick:n,children:"取消"}),u.jsxs("button",{className:"nb-btn nb-btn-primary",style:{padding:"8px 16px"},type:"button",disabled:!d||a,onClick:r,children:[a?u.jsx(We,{size:14,strokeWidth:3,className:"animate-spin"}):u.jsx(Oi,{size:14,strokeWidth:3})," 保存"]})]})]})}function lq({isDefault:e,pickDefault:t,setDefaultPending:n}){const r=Gt(),{alert:a,confirm:o}=mn(),[l,d]=C.useState(!1),[f,h]=C.useState(null),[g,m]=C.useState(!1),[y,b]=C.useState(!1),[k,v]=C.useState(!1),E=Xe({queryKey:["codex-proxy"],queryFn:Z8,refetchInterval:l?3e3:!1}).data;C.useEffect(()=>{l&&(E!=null&&E.authed)&&(d(!1),h(null),r.invalidateQueries({queryKey:["codex-proxy"]}))},[l,E==null?void 0:E.authed,r]);const j=Ct({mutationFn:J8,onSuccess:F=>{r.invalidateQueries({queryKey:["codex-proxy"]}),r.invalidateQueries({queryKey:["providers"]}),F.ok||a({title:"安装失败",body:(F.output||"未知错误").slice(-600)})},onError:F=>void a({title:"安装失败",body:F instanceof Error?F.message:String(F)})}),N=Ct({mutationFn:F=>eq(F),onSuccess:F=>{m(!1),b(!1),r.invalidateQueries({queryKey:["codex-proxy"]}),r.invalidateQueries({queryKey:["providers"]}),r.invalidateQueries({queryKey:["system-agents"]}),F.ok||a({title:"卸载未完成",body:F.note??"删除失败(可能需 sudo)"})},onError:F=>void a({title:"卸载失败",body:F instanceof Error?F.message:String(F)})}),_=async()=>{await o({title:"安装 claude-code-proxy",body:"将运行官方安装脚本(curl … install.sh | bash),下载预编译二进制到 ~/.local/bin。继续?"})&&j.mutate()},O=async()=>{d(!0),h(null);try{const F=await tq();h(F)}catch(F){d(!1),a({title:"订阅失败",body:F instanceof Error?F.message:String(F)})}},T=()=>{nq(),d(!1),h(null)},I=j.isPending||(E==null?void 0:E.installing),R=k&&(E!=null&&E.models.all.length)?E.models.all:(E==null?void 0:E.models.curated)??[];return u.jsxs("div",{className:"rounded-lg px-3 py-2 border-2 border-[var(--color-text)] bg-[var(--color-bg-cream)]",children:[u.jsxs("div",{className:"flex items-center justify-between gap-2",children:[u.jsxs("div",{className:"min-w-0",children:[u.jsx("span",{className:"font-[family-name:var(--font-mono)] font-bold text-sm",children:"codex-proxy"}),u.jsx("span",{className:"text-[var(--color-text-muted)] text-sm",children:" · ChatGPT 订阅"}),u.jsx("div",{className:"text-xs text-[var(--color-text-muted)] truncate",children:E?E.binInstalled?E.authed?`已订阅${E.account?` · ${E.account.slice(0,8)}…`:""} · worker 出 GPT`:"已安装 · 未订阅":"未安装 claude-code-proxy":"加载中…"})]}),(E==null?void 0:E.binInstalled)&&u.jsx("button",{className:"nb-btn nb-btn-danger shrink-0",style:{padding:"4px 8px"},type:"button",onClick:()=>m(!0),"aria-label":"卸载 codex-proxy",children:u.jsx(fi,{size:12,strokeWidth:3})})]}),u.jsx("div",{className:"mt-2",children:E?E.binInstalled?E.authed?u.jsxs("div",{className:"flex flex-wrap gap-1.5 items-center",children:[R.map(F=>{const M=e(F);return u.jsxs("button",{type:"button",onClick:()=>t(F),disabled:n,"aria-pressed":M,className:["px-2 py-0.5 rounded-md text-xs font-[family-name:var(--font-mono)] border-2 border-[var(--color-text)]",M?"bg-[var(--color-accent-mint)] font-bold":"bg-[var(--color-bg)] hover:bg-[var(--color-bg-cream)]"].join(" "),title:M?"当前默认":"设为 worker 默认",children:[F,M?" ✓":""]},F)}),E.models.all.length>E.models.curated.length&&u.jsx("button",{type:"button",className:"text-xs text-[var(--color-text-muted)] underline",onClick:()=>v(F=>!F),children:k?"收起":`显示全部(${E.models.all.length})`})]}):u.jsxs("button",{className:"nb-btn nb-btn-primary",style:{padding:"4px 12px",fontSize:12},type:"button",onClick:O,children:[u.jsx(pL,{size:12,strokeWidth:3})," 订阅(授权 ChatGPT)"]}):u.jsxs("button",{className:"nb-btn nb-btn-primary",style:{padding:"4px 12px",fontSize:12},type:"button",disabled:!!I,onClick:_,children:[I?u.jsx(We,{size:12,strokeWidth:3,className:"animate-spin"}):u.jsx(zh,{size:12,strokeWidth:3}),I?" 安装中…":" 安装插件"]}):u.jsx(We,{size:14,strokeWidth:3,className:"animate-spin text-[var(--color-text-muted)]"})}),l&&u.jsxs(CE,{onClose:T,children:[u.jsx("span",{className:"font-[family-name:var(--font-heading)] font-bold text-lg",children:"订阅 ChatGPT(设备码授权)"}),f!=null&&f.verificationUrl&&(f!=null&&f.userCode)?u.jsxs("div",{className:"flex flex-col gap-3 text-sm",children:[u.jsxs("div",{children:["① 打开"," ",u.jsxs("a",{href:f.verificationUrl,target:"_blank",rel:"noreferrer",className:"font-bold underline inline-flex items-center gap-1",children:[f.verificationUrl," ",u.jsx(UR,{size:12,strokeWidth:3})]})]}),u.jsxs("div",{children:["② 输入验证码:",u.jsx("code",{className:"ml-1 px-2 py-0.5 rounded-md border-2 border-[var(--color-text)] bg-[var(--color-accent-yellow)] font-bold font-[family-name:var(--font-mono)]",children:f.userCode})]}),u.jsx("div",{children:"③ 在浏览器完成授权"}),u.jsxs("div",{className:"flex items-center gap-2 text-[var(--color-text-muted)]",children:[u.jsx(We,{size:14,strokeWidth:3,className:"animate-spin"})," 等待授权…(完成后自动刷新)"]})]}):u.jsxs("div",{className:"flex flex-col gap-2 text-sm text-[var(--color-text-muted)]",children:[u.jsxs("div",{className:"flex items-center gap-2",children:[u.jsx(We,{size:14,strokeWidth:3,className:"animate-spin"})," 正在获取设备码…"]}),u.jsxs("div",{children:["若长时间无响应,可在终端运行 ",u.jsx("code",{className:"font-[family-name:var(--font-mono)]",children:"sps codex-proxy auth"}),",完成后此处自动刷新。"]})]}),u.jsx("div",{className:"flex justify-end pt-1",children:u.jsx("button",{className:"nb-btn",style:{padding:"6px 14px"},type:"button",onClick:T,children:"取消"})})]}),g&&u.jsxs(CE,{onClose:()=>m(!1),children:[u.jsx("span",{className:"font-[family-name:var(--font-heading)] font-bold text-lg",children:"卸载 claude-code-proxy"}),u.jsx("p",{className:"text-sm text-[var(--color-text-muted)]",children:"停止 proxy 并删除二进制。默认保留授权(重装免再授权)。"}),u.jsxs("label",{className:"flex items-center gap-2 text-sm font-bold",children:[u.jsx("input",{type:"checkbox",checked:y,onChange:F=>b(F.target.checked)}),"同时清除授权(~/.config/claude-code-proxy)"]}),u.jsxs("div",{className:"flex justify-end gap-2 pt-1",children:[u.jsx("button",{className:"nb-btn",style:{padding:"6px 14px"},type:"button",onClick:()=>m(!1),children:"取消"}),u.jsxs("button",{className:"nb-btn nb-btn-danger",style:{padding:"6px 14px"},type:"button",disabled:N.isPending,onClick:()=>N.mutate(y),children:[N.isPending?u.jsx(We,{size:14,strokeWidth:3,className:"animate-spin"}):u.jsx(fi,{size:14,strokeWidth:3})," 卸载"]})]})]})]})}function CE({children:e,onClose:t}){return u.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/40 p-4",onClick:t,children:u.jsx("div",{className:"border-[3px] border-[var(--color-text)] rounded-2xl p-6 bg-[var(--color-bg-cream)] shadow-[6px_6px_0_var(--color-text)] flex flex-col gap-4 w-[min(92vw,520px)]",onClick:n=>n.stopPropagation(),children:e})})}const cq=["telegram","dingtalk","matrix","slack","discord","feishu"],pu={telegram:"Telegram",dingtalk:"钉钉 (Stream)",matrix:"Matrix",slack:"Slack",discord:"Discord",feishu:"飞书 / Lark"},uq={telegram:[{key:"token",label:"Bot Token(@BotFather)",type:"password",placeholder:"123456:ABC-..."},{key:"allowedChatIds",label:"允许的 Chat ID(白名单,空=全放)",type:"list",placeholder:"逗号/换行分隔"}],dingtalk:[{key:"clientId",label:"Client ID(AppKey)",type:"text"},{key:"clientSecret",label:"Client Secret(AppSecret)",type:"password"},{key:"allowedConversations",label:"允许的会话 ID(白名单,空=全放)",type:"list"}],matrix:[{key:"homeserver",label:"Homeserver URL",type:"text",placeholder:"https://matrix.org"},{key:"accessToken",label:"Access Token",type:"password"},{key:"allowedRooms",label:"允许的 Room ID(白名单,空=全放)",type:"list"}],slack:[{key:"appToken",label:"App Token(xapp-,Socket Mode)",type:"password",placeholder:"xapp-..."},{key:"botToken",label:"Bot Token(xoxb-)",type:"password",placeholder:"xoxb-..."},{key:"allowedChannels",label:"允许的 Channel(白名单,空=全放)",type:"list"}],discord:[{key:"token",label:"Bot Token",type:"password"},{key:"allowedChannels",label:"允许的 Channel ID(白名单,空=全放)",type:"list"}],feishu:[{key:"appId",label:"App ID",type:"text"},{key:"appSecret",label:"App Secret",type:"password"},{key:"verificationToken",label:"Verification Token",type:"text"},{key:"encryptKey",label:"Encrypt Key(设了则事件 AES 解密)",type:"password"},{key:"port",label:"本机监听端口(默认 9800)",type:"number",placeholder:"9800"},{key:"path",label:"监听路径(默认 /feishu)",type:"text",placeholder:"/feishu"},{key:"allowedChats",label:"允许的 chat_id(白名单,空=全放)",type:"list"}]};function dq(){var k,v,S;const e=Gt(),{alert:t}=mn(),n=Xe({queryKey:["channels"],queryFn:W8}),[r,a]=C.useState(null),[o,l]=C.useState({type:"console"});C.useEffect(()=>{n.data&&!r&&a({console:n.data.console??{},adapters:n.data.adapters??[]})},[n.data,r]);const d=Ct({mutationFn:()=>X8(r),onSuccess:E=>{a({console:E.console??{},adapters:E.adapters??[]}),e.invalidateQueries({queryKey:["channels"]})},onError:E=>void t({title:"保存失败",body:E instanceof Error?E.message:String(E)})});if(!r)return u.jsx("section",{className:"nb-card",children:u.jsxs("p",{className:"text-sm text-[var(--color-text-muted)] flex items-center gap-2",children:[u.jsx(We,{size:14,strokeWidth:3,className:"animate-spin"})," 加载频道配置…"]})});const f=r.adapters??[],h=JSON.stringify(r)!==JSON.stringify({console:((k=n.data)==null?void 0:k.console)??{},adapters:((v=n.data)==null?void 0:v.adapters)??[]}),g=E=>{const j=[...f,{kind:E,enabled:!0}];a({...r,adapters:j}),l({type:"adapter",index:j.length-1})},m=E=>{const j=f.filter((N,_)=>_!==E);a({...r,adapters:j}),l({type:"console"})},y=(E,j)=>{const N=f.map((_,O)=>O===E?{..._,...j}:_);a({...r,adapters:N})},b=E=>a({...r,console:{...r.console,...E}});return u.jsxs("section",{className:"nb-card",children:[u.jsxs("div",{className:"flex items-start justify-between gap-3 mb-1",children:[u.jsxs("div",{children:[u.jsx("h2",{className:"font-[family-name:var(--font-heading)] text-xl font-bold",children:"频道(IM 网关)"}),u.jsxs("p",{className:"text-xs text-[var(--color-text-muted)] mt-1",children:["接入 Telegram / 钉钉 / 飞书 / Slack / Discord / Matrix。左侧选频道,右侧改设置。保存后 ",u.jsx("code",{className:"font-[family-name:var(--font-mono)]",children:"sps im"})," 重启生效。"]})]}),u.jsxs("button",{className:"nb-btn nb-btn-primary shrink-0",style:{padding:"8px 16px"},type:"button",disabled:!h||d.isPending,onClick:()=>d.mutate(),"aria-label":"保存频道配置",children:[d.isPending?u.jsx(We,{size:14,strokeWidth:3,className:"animate-spin"}):u.jsx(Oi,{size:14,strokeWidth:3})," 保存"]})]}),u.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-[220px_1fr] gap-5 mt-4",children:[u.jsxs("div",{className:"flex flex-col gap-2",children:[u.jsx(AE,{label:"console 桥接",sub:((S=r.console)==null?void 0:S.url)||"未配置",active:o.type==="console",onClick:()=>l({type:"console"})}),u.jsx("div",{className:"h-px bg-[var(--color-text)] opacity-20 my-1"}),f.length===0&&u.jsx("p",{className:"text-xs text-[var(--color-text-muted)] px-1",children:"(无频道)"}),f.map((E,j)=>u.jsx(AE,{label:pu[E.kind]??E.kind,sub:E.enabled===!1?"已停用":"启用",active:o.type==="adapter"&&o.index===j,onClick:()=>l({type:"adapter",index:j})},j)),u.jsxs("div",{className:"mt-2",children:[u.jsx("span",{className:"text-xs font-bold text-[var(--color-text-muted)]",children:"添加频道"}),u.jsx("div",{className:"flex flex-wrap gap-1.5 mt-1.5",children:cq.map(E=>u.jsxs("button",{className:"nb-btn",style:{padding:"4px 8px",fontSize:12},type:"button",onClick:()=>g(E),"aria-label":`添加 ${pu[E]} 频道`,children:[u.jsx(pr,{size:11,strokeWidth:3})," ",pu[E]]},E))})]})]}),u.jsx("div",{className:"border-2 border-[var(--color-text)] rounded-xl p-4 bg-[var(--color-bg-cream)]",children:(()=>{if(o.type!=="adapter")return u.jsx(TE,{console:r.console??{},onChange:b});const E=f[o.index];if(!E)return u.jsx(TE,{console:r.console??{},onChange:b});const j=o.index;return u.jsx(fq,{adapter:E,onChange:N=>y(j,N),onRemove:()=>m(j)})})()})]})]})}function AE({label:e,sub:t,active:n,onClick:r}){return u.jsxs("button",{type:"button",onClick:r,"aria-pressed":n,className:["text-left rounded-lg px-3 py-2 border-2 border-[var(--color-text)] transition-transform duration-150",n?"bg-[var(--color-accent-mint)] shadow-[3px_3px_0_var(--color-text)]":"bg-white hover:-translate-x-px hover:-translate-y-px hover:shadow-[3px_3px_0_var(--color-text)]"].join(" "),children:[u.jsx("div",{className:"font-bold text-sm",children:e}),u.jsx("div",{className:"text-xs text-[var(--color-text-muted)] truncate font-[family-name:var(--font-mono)]",children:t})]})}function TE({console:e,onChange:t}){return u.jsxs("div",{className:"flex flex-col gap-4",children:[u.jsxs("div",{children:[u.jsx("span",{className:"font-[family-name:var(--font-heading)] font-bold text-lg",children:"console 桥接"}),u.jsx("p",{className:"text-xs text-[var(--color-text-muted)] mt-1",children:"IM 纯文本消息桥接到项目 agent 对话。设了 URL 才启用桥接;token 为 console 鉴权令牌。"})]}),u.jsxs("label",{className:"flex flex-col gap-1 text-sm font-bold",children:["Console URL",u.jsx("input",{className:"nb-input font-[family-name:var(--font-mono)] text-sm",value:e.url??"",onChange:n=>t({url:n.target.value}),placeholder:"http://localhost:4321",spellCheck:!1})]}),u.jsxs("label",{className:"flex flex-col gap-1 text-sm font-bold",children:["Console Token(SPS_CONSOLE_TOKEN)",u.jsx("input",{className:"nb-input font-[family-name:var(--font-mono)] text-sm",type:"password",value:e.token??"",onChange:n=>t({token:n.target.value}),placeholder:"鉴权令牌(可空)",spellCheck:!1})]}),u.jsxs("label",{className:"flex flex-col gap-1 text-sm font-bold",children:["对话后端",u.jsxs("select",{className:"nb-input",value:e.agentKind??"claude",onChange:n=>t({agentKind:n.target.value}),children:[u.jsx("option",{value:"claude",children:"claude"}),u.jsx("option",{value:"openai",children:"openai"})]})]})]})}function fq({adapter:e,onChange:t,onRemove:n}){const{confirm:r}=mn(),a=uq[e.kind]??[],o=e.enabled!==!1;return u.jsxs("div",{className:"flex flex-col gap-4",children:[u.jsxs("div",{className:"flex items-start justify-between gap-2",children:[u.jsxs("div",{children:[u.jsx("span",{className:"font-[family-name:var(--font-heading)] font-bold text-lg",children:pu[e.kind]??e.kind}),u.jsxs("span",{className:"text-[var(--color-text-muted)] text-sm font-[family-name:var(--font-mono)]",children:[" · ",e.kind]})]}),u.jsxs("button",{className:"nb-btn nb-btn-danger shrink-0",style:{padding:"4px 10px",fontSize:12},type:"button",onClick:async()=>{await r({title:"删除频道",body:`删除 ${pu[e.kind]??e.kind} 频道?`,danger:!0})&&n()},"aria-label":"删除频道",children:[u.jsx(fi,{size:12,strokeWidth:3})," 删除"]})]}),u.jsxs("label",{className:"flex items-center gap-2 text-sm font-bold",children:[u.jsx("input",{type:"checkbox",checked:o,onChange:l=>t({enabled:l.target.checked})}),"启用此频道"]}),a.map(l=>u.jsx(hq,{spec:l,value:e[l.key],onChange:d=>t({[l.key]:d})},l.key))]})}function hq({spec:e,value:t,onChange:n}){if(e.type==="list"){const r=Array.isArray(t)?t.map(String):[];return u.jsxs("label",{className:"flex flex-col gap-1 text-sm font-bold",children:[e.label,u.jsx("textarea",{className:"nb-input font-[family-name:var(--font-mono)] text-sm",rows:2,value:r.join(", "),onChange:a=>{const o=a.target.value.split(/[,\n]/).map(l=>l.trim()).filter(Boolean);n(o.length?o:void 0)},placeholder:e.placeholder,spellCheck:!1})]})}return u.jsxs("label",{className:"flex flex-col gap-1 text-sm font-bold",children:[e.label,u.jsx("input",{className:"nb-input font-[family-name:var(--font-mono)] text-sm",type:e.type==="password"?"password":"text",value:t==null?"":String(t),onChange:r=>{const a=r.target.value;e.type==="number"?n(a.trim()===""?void 0:Number(a)):n(a===""?void 0:a)},placeholder:e.placeholder,spellCheck:!1})]})}function _n(e){if(typeof e=="string"||typeof e=="number")return""+e;let t="";if(Array.isArray(e))for(let n=0,r;n<e.length;n++)(r=_n(e[n]))!==""&&(t+=(t&&" ")+r);else for(let n in e)e[n]&&(t+=(t&&" ")+n);return t}var pq={value:()=>{}};function ip(){for(var e=0,t=arguments.length,n={},r;e<t;++e){if(!(r=arguments[e]+"")||r in n||/[\s.]/.test(r))throw new Error("illegal type: "+r);n[r]=[]}return new eh(n)}function eh(e){this._=e}function mq(e,t){return e.trim().split(/^|\s+/).map(function(n){var r="",a=n.indexOf(".");if(a>=0&&(r=n.slice(a+1),n=n.slice(0,a)),n&&!t.hasOwnProperty(n))throw new Error("unknown type: "+n);return{type:n,name:r}})}eh.prototype=ip.prototype={constructor:eh,on:function(e,t){var n=this._,r=mq(e+"",n),a,o=-1,l=r.length;if(arguments.length<2){for(;++o<l;)if((a=(e=r[o]).type)&&(a=gq(n[a],e.name)))return a;return}if(t!=null&&typeof t!="function")throw new Error("invalid callback: "+t);for(;++o<l;)if(a=(e=r[o]).type)n[a]=ME(n[a],e.name,t);else if(t==null)for(a in n)n[a]=ME(n[a],e.name,null);return this},copy:function(){var e={},t=this._;for(var n in t)e[n]=t[n].slice();return new eh(e)},call:function(e,t){if((a=arguments.length-2)>0)for(var n=new Array(a),r=0,a,o;r<a;++r)n[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(o=this._[e],r=0,a=o.length;r<a;++r)o[r].value.apply(t,n)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(var r=this._[e],a=0,o=r.length;a<o;++a)r[a].value.apply(t,n)}};function gq(e,t){for(var n=0,r=e.length,a;n<r;++n)if((a=e[n]).name===t)return a.value}function ME(e,t,n){for(var r=0,a=e.length;r<a;++r)if(e[r].name===t){e[r]=pq,e=e.slice(0,r).concat(e.slice(r+1));break}return n!=null&&e.push({name:t,value:n}),e}var ib="http://www.w3.org/1999/xhtml";const DE={svg:"http://www.w3.org/2000/svg",xhtml:ib,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function ap(e){var t=e+="",n=t.indexOf(":");return n>=0&&(t=e.slice(0,n))!=="xmlns"&&(e=e.slice(n+1)),DE.hasOwnProperty(t)?{space:DE[t],local:e}:e}function yq(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===ib&&t.documentElement.namespaceURI===ib?t.createElement(e):t.createElementNS(n,e)}}function bq(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function Uj(e){var t=ap(e);return(t.local?bq:yq)(t)}function xq(){}function Mx(e){return e==null?xq:function(){return this.querySelector(e)}}function vq(e){typeof e!="function"&&(e=Mx(e));for(var t=this._groups,n=t.length,r=new Array(n),a=0;a<n;++a)for(var o=t[a],l=o.length,d=r[a]=new Array(l),f,h,g=0;g<l;++g)(f=o[g])&&(h=e.call(f,f.__data__,g,o))&&("__data__"in f&&(h.__data__=f.__data__),d[g]=h);return new Cr(r,this._parents)}function wq(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function kq(){return[]}function $j(e){return e==null?kq:function(){return this.querySelectorAll(e)}}function Eq(e){return function(){return wq(e.apply(this,arguments))}}function Sq(e){typeof e=="function"?e=Eq(e):e=$j(e);for(var t=this._groups,n=t.length,r=[],a=[],o=0;o<n;++o)for(var l=t[o],d=l.length,f,h=0;h<d;++h)(f=l[h])&&(r.push(e.call(f,f.__data__,h,l)),a.push(f));return new Cr(r,a)}function Fj(e){return function(){return this.matches(e)}}function qj(e){return function(t){return t.matches(e)}}var Nq=Array.prototype.find;function _q(e){return function(){return Nq.call(this.children,e)}}function jq(){return this.firstElementChild}function Cq(e){return this.select(e==null?jq:_q(typeof e=="function"?e:qj(e)))}var Aq=Array.prototype.filter;function Tq(){return Array.from(this.children)}function Mq(e){return function(){return Aq.call(this.children,e)}}function Dq(e){return this.selectAll(e==null?Tq:Mq(typeof e=="function"?e:qj(e)))}function Oq(e){typeof e!="function"&&(e=Fj(e));for(var t=this._groups,n=t.length,r=new Array(n),a=0;a<n;++a)for(var o=t[a],l=o.length,d=r[a]=[],f,h=0;h<l;++h)(f=o[h])&&e.call(f,f.__data__,h,o)&&d.push(f);return new Cr(r,this._parents)}function Hj(e){return new Array(e.length)}function Rq(){return new Cr(this._enter||this._groups.map(Hj),this._parents)}function kh(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}kh.prototype={constructor:kh,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,t){return this._parent.insertBefore(e,t)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function Lq(e){return function(){return e}}function Iq(e,t,n,r,a,o){for(var l=0,d,f=t.length,h=o.length;l<h;++l)(d=t[l])?(d.__data__=o[l],r[l]=d):n[l]=new kh(e,o[l]);for(;l<f;++l)(d=t[l])&&(a[l]=d)}function zq(e,t,n,r,a,o,l){var d,f,h=new Map,g=t.length,m=o.length,y=new Array(g),b;for(d=0;d<g;++d)(f=t[d])&&(y[d]=b=l.call(f,f.__data__,d,t)+"",h.has(b)?a[d]=f:h.set(b,f));for(d=0;d<m;++d)b=l.call(e,o[d],d,o)+"",(f=h.get(b))?(r[d]=f,f.__data__=o[d],h.delete(b)):n[d]=new kh(e,o[d]);for(d=0;d<g;++d)(f=t[d])&&h.get(y[d])===f&&(a[d]=f)}function Pq(e){return e.__data__}function Bq(e,t){if(!arguments.length)return Array.from(this,Pq);var n=t?zq:Iq,r=this._parents,a=this._groups;typeof e!="function"&&(e=Lq(e));for(var o=a.length,l=new Array(o),d=new Array(o),f=new Array(o),h=0;h<o;++h){var g=r[h],m=a[h],y=m.length,b=Uq(e.call(g,g&&g.__data__,h,r)),k=b.length,v=d[h]=new Array(k),S=l[h]=new Array(k),E=f[h]=new Array(y);n(g,m,v,S,E,b,t);for(var j=0,N=0,_,O;j<k;++j)if(_=v[j]){for(j>=N&&(N=j+1);!(O=S[N])&&++N<k;);_._next=O||null}}return l=new Cr(l,r),l._enter=d,l._exit=f,l}function Uq(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function $q(){return new Cr(this._exit||this._groups.map(Hj),this._parents)}function Fq(e,t,n){var r=this.enter(),a=this,o=this.exit();return typeof e=="function"?(r=e(r),r&&(r=r.selection())):r=r.append(e+""),t!=null&&(a=t(a),a&&(a=a.selection())),n==null?o.remove():n(o),r&&a?r.merge(a).order():a}function qq(e){for(var t=e.selection?e.selection():e,n=this._groups,r=t._groups,a=n.length,o=r.length,l=Math.min(a,o),d=new Array(a),f=0;f<l;++f)for(var h=n[f],g=r[f],m=h.length,y=d[f]=new Array(m),b,k=0;k<m;++k)(b=h[k]||g[k])&&(y[k]=b);for(;f<a;++f)d[f]=n[f];return new Cr(d,this._parents)}function Hq(){for(var e=this._groups,t=-1,n=e.length;++t<n;)for(var r=e[t],a=r.length-1,o=r[a],l;--a>=0;)(l=r[a])&&(o&&l.compareDocumentPosition(o)^4&&o.parentNode.insertBefore(l,o),o=l);return this}function Kq(e){e||(e=Gq);function t(m,y){return m&&y?e(m.__data__,y.__data__):!m-!y}for(var n=this._groups,r=n.length,a=new Array(r),o=0;o<r;++o){for(var l=n[o],d=l.length,f=a[o]=new Array(d),h,g=0;g<d;++g)(h=l[g])&&(f[g]=h);f.sort(t)}return new Cr(a,this._parents).order()}function Gq(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}function Vq(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function Yq(){return Array.from(this)}function Qq(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],a=0,o=r.length;a<o;++a){var l=r[a];if(l)return l}return null}function Wq(){let e=0;for(const t of this)++e;return e}function Xq(){return!this.node()}function Zq(e){for(var t=this._groups,n=0,r=t.length;n<r;++n)for(var a=t[n],o=0,l=a.length,d;o<l;++o)(d=a[o])&&e.call(d,d.__data__,o,a);return this}function Jq(e){return function(){this.removeAttribute(e)}}function eH(e){return function(){this.removeAttributeNS(e.space,e.local)}}function tH(e,t){return function(){this.setAttribute(e,t)}}function nH(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function rH(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttribute(e):this.setAttribute(e,n)}}function iH(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,n)}}function aH(e,t){var n=ap(e);if(arguments.length<2){var r=this.node();return n.local?r.getAttributeNS(n.space,n.local):r.getAttribute(n)}return this.each((t==null?n.local?eH:Jq:typeof t=="function"?n.local?iH:rH:n.local?nH:tH)(n,t))}function Kj(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function sH(e){return function(){this.style.removeProperty(e)}}function oH(e,t,n){return function(){this.style.setProperty(e,t,n)}}function lH(e,t,n){return function(){var r=t.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,n)}}function cH(e,t,n){return arguments.length>1?this.each((t==null?sH:typeof t=="function"?lH:oH)(e,t,n??"")):Bl(this.node(),e)}function Bl(e,t){return e.style.getPropertyValue(t)||Kj(e).getComputedStyle(e,null).getPropertyValue(t)}function uH(e){return function(){delete this[e]}}function dH(e,t){return function(){this[e]=t}}function fH(e,t){return function(){var n=t.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function hH(e,t){return arguments.length>1?this.each((t==null?uH:typeof t=="function"?fH:dH)(e,t)):this.node()[e]}function Gj(e){return e.trim().split(/^|\s+/)}function Dx(e){return e.classList||new Vj(e)}function Vj(e){this._node=e,this._names=Gj(e.getAttribute("class")||"")}Vj.prototype={add:function(e){var t=this._names.indexOf(e);t<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function Yj(e,t){for(var n=Dx(e),r=-1,a=t.length;++r<a;)n.add(t[r])}function Qj(e,t){for(var n=Dx(e),r=-1,a=t.length;++r<a;)n.remove(t[r])}function pH(e){return function(){Yj(this,e)}}function mH(e){return function(){Qj(this,e)}}function gH(e,t){return function(){(t.apply(this,arguments)?Yj:Qj)(this,e)}}function yH(e,t){var n=Gj(e+"");if(arguments.length<2){for(var r=Dx(this.node()),a=-1,o=n.length;++a<o;)if(!r.contains(n[a]))return!1;return!0}return this.each((typeof t=="function"?gH:t?pH:mH)(n,t))}function bH(){this.textContent=""}function xH(e){return function(){this.textContent=e}}function vH(e){return function(){var t=e.apply(this,arguments);this.textContent=t??""}}function wH(e){return arguments.length?this.each(e==null?bH:(typeof e=="function"?vH:xH)(e)):this.node().textContent}function kH(){this.innerHTML=""}function EH(e){return function(){this.innerHTML=e}}function SH(e){return function(){var t=e.apply(this,arguments);this.innerHTML=t??""}}function NH(e){return arguments.length?this.each(e==null?kH:(typeof e=="function"?SH:EH)(e)):this.node().innerHTML}function _H(){this.nextSibling&&this.parentNode.appendChild(this)}function jH(){return this.each(_H)}function CH(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function AH(){return this.each(CH)}function TH(e){var t=typeof e=="function"?e:Uj(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})}function MH(){return null}function DH(e,t){var n=typeof e=="function"?e:Uj(e),r=t==null?MH:typeof t=="function"?t:Mx(t);return this.select(function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)})}function OH(){var e=this.parentNode;e&&e.removeChild(this)}function RH(){return this.each(OH)}function LH(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function IH(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function zH(e){return this.select(e?IH:LH)}function PH(e){return arguments.length?this.property("__data__",e):this.node().__data__}function BH(e){return function(t){e.call(this,t,this.__data__)}}function UH(e){return e.trim().split(/^|\s+/).map(function(t){var n="",r=t.indexOf(".");return r>=0&&(n=t.slice(r+1),t=t.slice(0,r)),{type:t,name:n}})}function $H(e){return function(){var t=this.__on;if(t){for(var n=0,r=-1,a=t.length,o;n<a;++n)o=t[n],(!e.type||o.type===e.type)&&o.name===e.name?this.removeEventListener(o.type,o.listener,o.options):t[++r]=o;++r?t.length=r:delete this.__on}}}function FH(e,t,n){return function(){var r=this.__on,a,o=BH(t);if(r){for(var l=0,d=r.length;l<d;++l)if((a=r[l]).type===e.type&&a.name===e.name){this.removeEventListener(a.type,a.listener,a.options),this.addEventListener(a.type,a.listener=o,a.options=n),a.value=t;return}}this.addEventListener(e.type,o,n),a={type:e.type,name:e.name,value:t,listener:o,options:n},r?r.push(a):this.__on=[a]}}function qH(e,t,n){var r=UH(e+""),a,o=r.length,l;if(arguments.length<2){var d=this.node().__on;if(d){for(var f=0,h=d.length,g;f<h;++f)for(a=0,g=d[f];a<o;++a)if((l=r[a]).type===g.type&&l.name===g.name)return g.value}return}for(d=t?FH:$H,a=0;a<o;++a)this.each(d(r[a],t,n));return this}function Wj(e,t,n){var r=Kj(e),a=r.CustomEvent;typeof a=="function"?a=new a(t,n):(a=r.document.createEvent("Event"),n?(a.initEvent(t,n.bubbles,n.cancelable),a.detail=n.detail):a.initEvent(t,!1,!1)),e.dispatchEvent(a)}function HH(e,t){return function(){return Wj(this,e,t)}}function KH(e,t){return function(){return Wj(this,e,t.apply(this,arguments))}}function GH(e,t){return this.each((typeof t=="function"?KH:HH)(e,t))}function*VH(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],a=0,o=r.length,l;a<o;++a)(l=r[a])&&(yield l)}var Xj=[null];function Cr(e,t){this._groups=e,this._parents=t}function td(){return new Cr([[document.documentElement]],Xj)}function YH(){return this}Cr.prototype=td.prototype={constructor:Cr,select:vq,selectAll:Sq,selectChild:Cq,selectChildren:Dq,filter:Oq,data:Bq,enter:Rq,exit:$q,join:Fq,merge:qq,selection:YH,order:Hq,sort:Kq,call:Vq,nodes:Yq,node:Qq,size:Wq,empty:Xq,each:Zq,attr:aH,style:cH,property:hH,classed:yH,text:wH,html:NH,raise:jH,lower:AH,append:TH,insert:DH,remove:RH,clone:zH,datum:PH,on:qH,dispatch:GH,[Symbol.iterator]:VH};function _r(e){return typeof e=="string"?new Cr([[document.querySelector(e)]],[document.documentElement]):new Cr([[e]],Xj)}function QH(e){let t;for(;t=e.sourceEvent;)e=t;return e}function si(e,t){if(e=QH(e),t===void 0&&(t=e.currentTarget),t){var n=t.ownerSVGElement||t;if(n.createSVGPoint){var r=n.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,r=r.matrixTransform(t.getScreenCTM().inverse()),[r.x,r.y]}if(t.getBoundingClientRect){var a=t.getBoundingClientRect();return[e.clientX-a.left-t.clientLeft,e.clientY-a.top-t.clientTop]}}return[e.pageX,e.pageY]}const WH={passive:!1},Cu={capture:!0,passive:!1};function sy(e){e.stopImmediatePropagation()}function wl(e){e.preventDefault(),e.stopImmediatePropagation()}function Zj(e){var t=e.document.documentElement,n=_r(e).on("dragstart.drag",wl,Cu);"onselectstart"in t?n.on("selectstart.drag",wl,Cu):(t.__noselect=t.style.MozUserSelect,t.style.MozUserSelect="none")}function Jj(e,t){var n=e.document.documentElement,r=_r(e).on("dragstart.drag",null);t&&(r.on("click.drag",wl,Cu),setTimeout(function(){r.on("click.drag",null)},0)),"onselectstart"in n?r.on("selectstart.drag",null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}const zf=e=>()=>e;function ab(e,{sourceEvent:t,subject:n,target:r,identifier:a,active:o,x:l,y:d,dx:f,dy:h,dispatch:g}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:a,enumerable:!0,configurable:!0},active:{value:o,enumerable:!0,configurable:!0},x:{value:l,enumerable:!0,configurable:!0},y:{value:d,enumerable:!0,configurable:!0},dx:{value:f,enumerable:!0,configurable:!0},dy:{value:h,enumerable:!0,configurable:!0},_:{value:g}})}ab.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function XH(e){return!e.ctrlKey&&!e.button}function ZH(){return this.parentNode}function JH(e,t){return t??{x:e.x,y:e.y}}function e7(){return navigator.maxTouchPoints||"ontouchstart"in this}function eC(){var e=XH,t=ZH,n=JH,r=e7,a={},o=ip("start","drag","end"),l=0,d,f,h,g,m=0;function y(_){_.on("mousedown.drag",b).filter(r).on("touchstart.drag",S).on("touchmove.drag",E,WH).on("touchend.drag touchcancel.drag",j).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function b(_,O){if(!(g||!e.call(this,_,O))){var T=N(this,t.call(this,_,O),_,O,"mouse");T&&(_r(_.view).on("mousemove.drag",k,Cu).on("mouseup.drag",v,Cu),Zj(_.view),sy(_),h=!1,d=_.clientX,f=_.clientY,T("start",_))}}function k(_){if(wl(_),!h){var O=_.clientX-d,T=_.clientY-f;h=O*O+T*T>m}a.mouse("drag",_)}function v(_){_r(_.view).on("mousemove.drag mouseup.drag",null),Jj(_.view,h),wl(_),a.mouse("end",_)}function S(_,O){if(e.call(this,_,O)){var T=_.changedTouches,I=t.call(this,_,O),R=T.length,F,M;for(F=0;F<R;++F)(M=N(this,I,_,O,T[F].identifier,T[F]))&&(sy(_),M("start",_,T[F]))}}function E(_){var O=_.changedTouches,T=O.length,I,R;for(I=0;I<T;++I)(R=a[O[I].identifier])&&(wl(_),R("drag",_,O[I]))}function j(_){var O=_.changedTouches,T=O.length,I,R;for(g&&clearTimeout(g),g=setTimeout(function(){g=null},500),I=0;I<T;++I)(R=a[O[I].identifier])&&(sy(_),R("end",_,O[I]))}function N(_,O,T,I,R,F){var M=o.copy(),U=si(F||T,O),q,Y,D;if((D=n.call(_,new ab("beforestart",{sourceEvent:T,target:y,identifier:R,active:l,x:U[0],y:U[1],dx:0,dy:0,dispatch:M}),I))!=null)return q=D.x-U[0]||0,Y=D.y-U[1]||0,function H(B,V,Q){var K=U,L;switch(B){case"start":a[R]=H,L=l++;break;case"end":delete a[R],--l;case"drag":U=si(Q||V,O),L=l;break}M.call(B,_,new ab(B,{sourceEvent:V,subject:D,target:y,identifier:R,active:L,x:U[0]+q,y:U[1]+Y,dx:U[0]-K[0],dy:U[1]-K[1],dispatch:M}),I)}}return y.filter=function(_){return arguments.length?(e=typeof _=="function"?_:zf(!!_),y):e},y.container=function(_){return arguments.length?(t=typeof _=="function"?_:zf(_),y):t},y.subject=function(_){return arguments.length?(n=typeof _=="function"?_:zf(_),y):n},y.touchable=function(_){return arguments.length?(r=typeof _=="function"?_:zf(!!_),y):r},y.on=function(){var _=o.on.apply(o,arguments);return _===o?y:_},y.clickDistance=function(_){return arguments.length?(m=(_=+_)*_,y):Math.sqrt(m)},y}function Ox(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function tC(e,t){var n=Object.create(e.prototype);for(var r in t)n[r]=t[r];return n}function nd(){}var Au=.7,Eh=1/Au,kl="\\s*([+-]?\\d+)\\s*",Tu="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Mi="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",t7=/^#([0-9a-f]{3,8})$/,n7=new RegExp(`^rgb\\(${kl},${kl},${kl}\\)$`),r7=new RegExp(`^rgb\\(${Mi},${Mi},${Mi}\\)$`),i7=new RegExp(`^rgba\\(${kl},${kl},${kl},${Tu}\\)$`),a7=new RegExp(`^rgba\\(${Mi},${Mi},${Mi},${Tu}\\)$`),s7=new RegExp(`^hsl\\(${Tu},${Mi},${Mi}\\)$`),o7=new RegExp(`^hsla\\(${Tu},${Mi},${Mi},${Tu}\\)$`),OE={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};Ox(nd,ho,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:RE,formatHex:RE,formatHex8:l7,formatHsl:c7,formatRgb:LE,toString:LE});function RE(){return this.rgb().formatHex()}function l7(){return this.rgb().formatHex8()}function c7(){return nC(this).formatHsl()}function LE(){return this.rgb().formatRgb()}function ho(e){var t,n;return e=(e+"").trim().toLowerCase(),(t=t7.exec(e))?(n=t[1].length,t=parseInt(t[1],16),n===6?IE(t):n===3?new hr(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?Pf(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?Pf(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=n7.exec(e))?new hr(t[1],t[2],t[3],1):(t=r7.exec(e))?new hr(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=i7.exec(e))?Pf(t[1],t[2],t[3],t[4]):(t=a7.exec(e))?Pf(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=s7.exec(e))?BE(t[1],t[2]/100,t[3]/100,1):(t=o7.exec(e))?BE(t[1],t[2]/100,t[3]/100,t[4]):OE.hasOwnProperty(e)?IE(OE[e]):e==="transparent"?new hr(NaN,NaN,NaN,0):null}function IE(e){return new hr(e>>16&255,e>>8&255,e&255,1)}function Pf(e,t,n,r){return r<=0&&(e=t=n=NaN),new hr(e,t,n,r)}function u7(e){return e instanceof nd||(e=ho(e)),e?(e=e.rgb(),new hr(e.r,e.g,e.b,e.opacity)):new hr}function sb(e,t,n,r){return arguments.length===1?u7(e):new hr(e,t,n,r??1)}function hr(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}Ox(hr,sb,tC(nd,{brighter(e){return e=e==null?Eh:Math.pow(Eh,e),new hr(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Au:Math.pow(Au,e),new hr(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new hr(so(this.r),so(this.g),so(this.b),Sh(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:zE,formatHex:zE,formatHex8:d7,formatRgb:PE,toString:PE}));function zE(){return`#${Ws(this.r)}${Ws(this.g)}${Ws(this.b)}`}function d7(){return`#${Ws(this.r)}${Ws(this.g)}${Ws(this.b)}${Ws((isNaN(this.opacity)?1:this.opacity)*255)}`}function PE(){const e=Sh(this.opacity);return`${e===1?"rgb(":"rgba("}${so(this.r)}, ${so(this.g)}, ${so(this.b)}${e===1?")":`, ${e})`}`}function Sh(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function so(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Ws(e){return e=so(e),(e<16?"0":"")+e.toString(16)}function BE(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new oi(e,t,n,r)}function nC(e){if(e instanceof oi)return new oi(e.h,e.s,e.l,e.opacity);if(e instanceof nd||(e=ho(e)),!e)return new oi;if(e instanceof oi)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,a=Math.min(t,n,r),o=Math.max(t,n,r),l=NaN,d=o-a,f=(o+a)/2;return d?(t===o?l=(n-r)/d+(n<r)*6:n===o?l=(r-t)/d+2:l=(t-n)/d+4,d/=f<.5?o+a:2-o-a,l*=60):d=f>0&&f<1?0:l,new oi(l,d,f,e.opacity)}function f7(e,t,n,r){return arguments.length===1?nC(e):new oi(e,t,n,r??1)}function oi(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}Ox(oi,f7,tC(nd,{brighter(e){return e=e==null?Eh:Math.pow(Eh,e),new oi(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Au:Math.pow(Au,e),new oi(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,a=2*n-r;return new hr(oy(e>=240?e-240:e+120,a,r),oy(e,a,r),oy(e<120?e+240:e-120,a,r),this.opacity)},clamp(){return new oi(UE(this.h),Bf(this.s),Bf(this.l),Sh(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=Sh(this.opacity);return`${e===1?"hsl(":"hsla("}${UE(this.h)}, ${Bf(this.s)*100}%, ${Bf(this.l)*100}%${e===1?")":`, ${e})`}`}}));function UE(e){return e=(e||0)%360,e<0?e+360:e}function Bf(e){return Math.max(0,Math.min(1,e||0))}function oy(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}const Rx=e=>()=>e;function h7(e,t){return function(n){return e+n*t}}function p7(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(r){return Math.pow(e+r*t,n)}}function m7(e){return(e=+e)==1?rC:function(t,n){return n-t?p7(t,n,e):Rx(isNaN(t)?n:t)}}function rC(e,t){var n=t-e;return n?h7(e,n):Rx(isNaN(e)?t:e)}const Nh=(function e(t){var n=m7(t);function r(a,o){var l=n((a=sb(a)).r,(o=sb(o)).r),d=n(a.g,o.g),f=n(a.b,o.b),h=rC(a.opacity,o.opacity);return function(g){return a.r=l(g),a.g=d(g),a.b=f(g),a.opacity=h(g),a+""}}return r.gamma=e,r})(1);function g7(e,t){t||(t=[]);var n=e?Math.min(t.length,e.length):0,r=t.slice(),a;return function(o){for(a=0;a<n;++a)r[a]=e[a]*(1-o)+t[a]*o;return r}}function y7(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function b7(e,t){var n=t?t.length:0,r=e?Math.min(n,e.length):0,a=new Array(r),o=new Array(n),l;for(l=0;l<r;++l)a[l]=mu(e[l],t[l]);for(;l<n;++l)o[l]=t[l];return function(d){for(l=0;l<r;++l)o[l]=a[l](d);return o}}function x7(e,t){var n=new Date;return e=+e,t=+t,function(r){return n.setTime(e*(1-r)+t*r),n}}function Ci(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}function v7(e,t){var n={},r={},a;(e===null||typeof e!="object")&&(e={}),(t===null||typeof t!="object")&&(t={});for(a in t)a in e?n[a]=mu(e[a],t[a]):r[a]=t[a];return function(o){for(a in n)r[a]=n[a](o);return r}}var ob=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,ly=new RegExp(ob.source,"g");function w7(e){return function(){return e}}function k7(e){return function(t){return e(t)+""}}function iC(e,t){var n=ob.lastIndex=ly.lastIndex=0,r,a,o,l=-1,d=[],f=[];for(e=e+"",t=t+"";(r=ob.exec(e))&&(a=ly.exec(t));)(o=a.index)>n&&(o=t.slice(n,o),d[l]?d[l]+=o:d[++l]=o),(r=r[0])===(a=a[0])?d[l]?d[l]+=a:d[++l]=a:(d[++l]=null,f.push({i:l,x:Ci(r,a)})),n=ly.lastIndex;return n<t.length&&(o=t.slice(n),d[l]?d[l]+=o:d[++l]=o),d.length<2?f[0]?k7(f[0].x):w7(t):(t=f.length,function(h){for(var g=0,m;g<t;++g)d[(m=f[g]).i]=m.x(h);return d.join("")})}function mu(e,t){var n=typeof t,r;return t==null||n==="boolean"?Rx(t):(n==="number"?Ci:n==="string"?(r=ho(t))?(t=r,Nh):iC:t instanceof ho?Nh:t instanceof Date?x7:y7(t)?g7:Array.isArray(t)?b7:typeof t.valueOf!="function"&&typeof t.toString!="function"||isNaN(t)?v7:Ci)(e,t)}var $E=180/Math.PI,lb={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function aC(e,t,n,r,a,o){var l,d,f;return(l=Math.sqrt(e*e+t*t))&&(e/=l,t/=l),(f=e*n+t*r)&&(n-=e*f,r-=t*f),(d=Math.sqrt(n*n+r*r))&&(n/=d,r/=d,f/=d),e*r<t*n&&(e=-e,t=-t,f=-f,l=-l),{translateX:a,translateY:o,rotate:Math.atan2(t,e)*$E,skewX:Math.atan(f)*$E,scaleX:l,scaleY:d}}var Uf;function E7(e){const t=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return t.isIdentity?lb:aC(t.a,t.b,t.c,t.d,t.e,t.f)}function S7(e){return e==null||(Uf||(Uf=document.createElementNS("http://www.w3.org/2000/svg","g")),Uf.setAttribute("transform",e),!(e=Uf.transform.baseVal.consolidate()))?lb:(e=e.matrix,aC(e.a,e.b,e.c,e.d,e.e,e.f))}function sC(e,t,n,r){function a(h){return h.length?h.pop()+" ":""}function o(h,g,m,y,b,k){if(h!==m||g!==y){var v=b.push("translate(",null,t,null,n);k.push({i:v-4,x:Ci(h,m)},{i:v-2,x:Ci(g,y)})}else(m||y)&&b.push("translate("+m+t+y+n)}function l(h,g,m,y){h!==g?(h-g>180?g+=360:g-h>180&&(h+=360),y.push({i:m.push(a(m)+"rotate(",null,r)-2,x:Ci(h,g)})):g&&m.push(a(m)+"rotate("+g+r)}function d(h,g,m,y){h!==g?y.push({i:m.push(a(m)+"skewX(",null,r)-2,x:Ci(h,g)}):g&&m.push(a(m)+"skewX("+g+r)}function f(h,g,m,y,b,k){if(h!==m||g!==y){var v=b.push(a(b)+"scale(",null,",",null,")");k.push({i:v-4,x:Ci(h,m)},{i:v-2,x:Ci(g,y)})}else(m!==1||y!==1)&&b.push(a(b)+"scale("+m+","+y+")")}return function(h,g){var m=[],y=[];return h=e(h),g=e(g),o(h.translateX,h.translateY,g.translateX,g.translateY,m,y),l(h.rotate,g.rotate,m,y),d(h.skewX,g.skewX,m,y),f(h.scaleX,h.scaleY,g.scaleX,g.scaleY,m,y),h=g=null,function(b){for(var k=-1,v=y.length,S;++k<v;)m[(S=y[k]).i]=S.x(b);return m.join("")}}}var N7=sC(E7,"px, ","px)","deg)"),_7=sC(S7,", ",")",")"),j7=1e-12;function FE(e){return((e=Math.exp(e))+1/e)/2}function C7(e){return((e=Math.exp(e))-1/e)/2}function A7(e){return((e=Math.exp(2*e))-1)/(e+1)}const th=(function e(t,n,r){function a(o,l){var d=o[0],f=o[1],h=o[2],g=l[0],m=l[1],y=l[2],b=g-d,k=m-f,v=b*b+k*k,S,E;if(v<j7)E=Math.log(y/h)/t,S=function(I){return[d+I*b,f+I*k,h*Math.exp(t*I*E)]};else{var j=Math.sqrt(v),N=(y*y-h*h+r*v)/(2*h*n*j),_=(y*y-h*h-r*v)/(2*y*n*j),O=Math.log(Math.sqrt(N*N+1)-N),T=Math.log(Math.sqrt(_*_+1)-_);E=(T-O)/t,S=function(I){var R=I*E,F=FE(O),M=h/(n*j)*(F*A7(t*R+O)-C7(O));return[d+M*b,f+M*k,h*F/FE(t*R+O)]}}return S.duration=E*1e3*t/Math.SQRT2,S}return a.rho=function(o){var l=Math.max(.001,+o),d=l*l,f=d*d;return e(l,d,f)},a})(Math.SQRT2,2,4);var Ul=0,lu=0,iu=0,oC=1e3,_h,cu,jh=0,po=0,sp=0,Mu=typeof performance=="object"&&performance.now?performance:Date,lC=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function Lx(){return po||(lC(T7),po=Mu.now()+sp)}function T7(){po=0}function Ch(){this._call=this._time=this._next=null}Ch.prototype=cC.prototype={constructor:Ch,restart:function(e,t,n){if(typeof e!="function")throw new TypeError("callback is not a function");n=(n==null?Lx():+n)+(t==null?0:+t),!this._next&&cu!==this&&(cu?cu._next=this:_h=this,cu=this),this._call=e,this._time=n,cb()},stop:function(){this._call&&(this._call=null,this._time=1/0,cb())}};function cC(e,t,n){var r=new Ch;return r.restart(e,t,n),r}function M7(){Lx(),++Ul;for(var e=_h,t;e;)(t=po-e._time)>=0&&e._call.call(void 0,t),e=e._next;--Ul}function qE(){po=(jh=Mu.now())+sp,Ul=lu=0;try{M7()}finally{Ul=0,O7(),po=0}}function D7(){var e=Mu.now(),t=e-jh;t>oC&&(sp-=t,jh=e)}function O7(){for(var e,t=_h,n,r=1/0;t;)t._call?(r>t._time&&(r=t._time),e=t,t=t._next):(n=t._next,t._next=null,t=e?e._next=n:_h=n);cu=e,cb(r)}function cb(e){if(!Ul){lu&&(lu=clearTimeout(lu));var t=e-po;t>24?(e<1/0&&(lu=setTimeout(qE,e-Mu.now()-sp)),iu&&(iu=clearInterval(iu))):(iu||(jh=Mu.now(),iu=setInterval(D7,oC)),Ul=1,lC(qE))}}function HE(e,t,n){var r=new Ch;return t=t==null?0:+t,r.restart(a=>{r.stop(),e(a+t)},t,n),r}var R7=ip("start","end","cancel","interrupt"),L7=[],uC=0,KE=1,ub=2,nh=3,GE=4,db=5,rh=6;function op(e,t,n,r,a,o){var l=e.__transition;if(!l)e.__transition={};else if(n in l)return;I7(e,n,{name:t,index:r,group:a,on:R7,tween:L7,time:o.time,delay:o.delay,duration:o.duration,ease:o.ease,timer:null,state:uC})}function Ix(e,t){var n=gi(e,t);if(n.state>uC)throw new Error("too late; already scheduled");return n}function Ii(e,t){var n=gi(e,t);if(n.state>nh)throw new Error("too late; already running");return n}function gi(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw new Error("transition not found");return n}function I7(e,t,n){var r=e.__transition,a;r[t]=n,n.timer=cC(o,0,n.time);function o(h){n.state=KE,n.timer.restart(l,n.delay,n.time),n.delay<=h&&l(h-n.delay)}function l(h){var g,m,y,b;if(n.state!==KE)return f();for(g in r)if(b=r[g],b.name===n.name){if(b.state===nh)return HE(l);b.state===GE?(b.state=rh,b.timer.stop(),b.on.call("interrupt",e,e.__data__,b.index,b.group),delete r[g]):+g<t&&(b.state=rh,b.timer.stop(),b.on.call("cancel",e,e.__data__,b.index,b.group),delete r[g])}if(HE(function(){n.state===nh&&(n.state=GE,n.timer.restart(d,n.delay,n.time),d(h))}),n.state=ub,n.on.call("start",e,e.__data__,n.index,n.group),n.state===ub){for(n.state=nh,a=new Array(y=n.tween.length),g=0,m=-1;g<y;++g)(b=n.tween[g].value.call(e,e.__data__,n.index,n.group))&&(a[++m]=b);a.length=m+1}}function d(h){for(var g=h<n.duration?n.ease.call(null,h/n.duration):(n.timer.restart(f),n.state=db,1),m=-1,y=a.length;++m<y;)a[m].call(e,g);n.state===db&&(n.on.call("end",e,e.__data__,n.index,n.group),f())}function f(){n.state=rh,n.timer.stop(),delete r[t];for(var h in r)return;delete e.__transition}}function ih(e,t){var n=e.__transition,r,a,o=!0,l;if(n){t=t==null?null:t+"";for(l in n){if((r=n[l]).name!==t){o=!1;continue}a=r.state>ub&&r.state<db,r.state=rh,r.timer.stop(),r.on.call(a?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete n[l]}o&&delete e.__transition}}function z7(e){return this.each(function(){ih(this,e)})}function P7(e,t){var n,r;return function(){var a=Ii(this,e),o=a.tween;if(o!==n){r=n=o;for(var l=0,d=r.length;l<d;++l)if(r[l].name===t){r=r.slice(),r.splice(l,1);break}}a.tween=r}}function B7(e,t,n){var r,a;if(typeof n!="function")throw new Error;return function(){var o=Ii(this,e),l=o.tween;if(l!==r){a=(r=l).slice();for(var d={name:t,value:n},f=0,h=a.length;f<h;++f)if(a[f].name===t){a[f]=d;break}f===h&&a.push(d)}o.tween=a}}function U7(e,t){var n=this._id;if(e+="",arguments.length<2){for(var r=gi(this.node(),n).tween,a=0,o=r.length,l;a<o;++a)if((l=r[a]).name===e)return l.value;return null}return this.each((t==null?P7:B7)(n,e,t))}function zx(e,t,n){var r=e._id;return e.each(function(){var a=Ii(this,r);(a.value||(a.value={}))[t]=n.apply(this,arguments)}),function(a){return gi(a,r).value[t]}}function dC(e,t){var n;return(typeof t=="number"?Ci:t instanceof ho?Nh:(n=ho(t))?(t=n,Nh):iC)(e,t)}function $7(e){return function(){this.removeAttribute(e)}}function F7(e){return function(){this.removeAttributeNS(e.space,e.local)}}function q7(e,t,n){var r,a=n+"",o;return function(){var l=this.getAttribute(e);return l===a?null:l===r?o:o=t(r=l,n)}}function H7(e,t,n){var r,a=n+"",o;return function(){var l=this.getAttributeNS(e.space,e.local);return l===a?null:l===r?o:o=t(r=l,n)}}function K7(e,t,n){var r,a,o;return function(){var l,d=n(this),f;return d==null?void this.removeAttribute(e):(l=this.getAttribute(e),f=d+"",l===f?null:l===r&&f===a?o:(a=f,o=t(r=l,d)))}}function G7(e,t,n){var r,a,o;return function(){var l,d=n(this),f;return d==null?void this.removeAttributeNS(e.space,e.local):(l=this.getAttributeNS(e.space,e.local),f=d+"",l===f?null:l===r&&f===a?o:(a=f,o=t(r=l,d)))}}function V7(e,t){var n=ap(e),r=n==="transform"?_7:dC;return this.attrTween(e,typeof t=="function"?(n.local?G7:K7)(n,r,zx(this,"attr."+e,t)):t==null?(n.local?F7:$7)(n):(n.local?H7:q7)(n,r,t))}function Y7(e,t){return function(n){this.setAttribute(e,t.call(this,n))}}function Q7(e,t){return function(n){this.setAttributeNS(e.space,e.local,t.call(this,n))}}function W7(e,t){var n,r;function a(){var o=t.apply(this,arguments);return o!==r&&(n=(r=o)&&Q7(e,o)),n}return a._value=t,a}function X7(e,t){var n,r;function a(){var o=t.apply(this,arguments);return o!==r&&(n=(r=o)&&Y7(e,o)),n}return a._value=t,a}function Z7(e,t){var n="attr."+e;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(t==null)return this.tween(n,null);if(typeof t!="function")throw new Error;var r=ap(e);return this.tween(n,(r.local?W7:X7)(r,t))}function J7(e,t){return function(){Ix(this,e).delay=+t.apply(this,arguments)}}function eK(e,t){return t=+t,function(){Ix(this,e).delay=t}}function tK(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?J7:eK)(t,e)):gi(this.node(),t).delay}function nK(e,t){return function(){Ii(this,e).duration=+t.apply(this,arguments)}}function rK(e,t){return t=+t,function(){Ii(this,e).duration=t}}function iK(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?nK:rK)(t,e)):gi(this.node(),t).duration}function aK(e,t){if(typeof t!="function")throw new Error;return function(){Ii(this,e).ease=t}}function sK(e){var t=this._id;return arguments.length?this.each(aK(t,e)):gi(this.node(),t).ease}function oK(e,t){return function(){var n=t.apply(this,arguments);if(typeof n!="function")throw new Error;Ii(this,e).ease=n}}function lK(e){if(typeof e!="function")throw new Error;return this.each(oK(this._id,e))}function cK(e){typeof e!="function"&&(e=Fj(e));for(var t=this._groups,n=t.length,r=new Array(n),a=0;a<n;++a)for(var o=t[a],l=o.length,d=r[a]=[],f,h=0;h<l;++h)(f=o[h])&&e.call(f,f.__data__,h,o)&&d.push(f);return new ya(r,this._parents,this._name,this._id)}function uK(e){if(e._id!==this._id)throw new Error;for(var t=this._groups,n=e._groups,r=t.length,a=n.length,o=Math.min(r,a),l=new Array(r),d=0;d<o;++d)for(var f=t[d],h=n[d],g=f.length,m=l[d]=new Array(g),y,b=0;b<g;++b)(y=f[b]||h[b])&&(m[b]=y);for(;d<r;++d)l[d]=t[d];return new ya(l,this._parents,this._name,this._id)}function dK(e){return(e+"").trim().split(/^|\s+/).every(function(t){var n=t.indexOf(".");return n>=0&&(t=t.slice(0,n)),!t||t==="start"})}function fK(e,t,n){var r,a,o=dK(t)?Ix:Ii;return function(){var l=o(this,e),d=l.on;d!==r&&(a=(r=d).copy()).on(t,n),l.on=a}}function hK(e,t){var n=this._id;return arguments.length<2?gi(this.node(),n).on.on(e):this.each(fK(n,e,t))}function pK(e){return function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}}function mK(){return this.on("end.remove",pK(this._id))}function gK(e){var t=this._name,n=this._id;typeof e!="function"&&(e=Mx(e));for(var r=this._groups,a=r.length,o=new Array(a),l=0;l<a;++l)for(var d=r[l],f=d.length,h=o[l]=new Array(f),g,m,y=0;y<f;++y)(g=d[y])&&(m=e.call(g,g.__data__,y,d))&&("__data__"in g&&(m.__data__=g.__data__),h[y]=m,op(h[y],t,n,y,h,gi(g,n)));return new ya(o,this._parents,t,n)}function yK(e){var t=this._name,n=this._id;typeof e!="function"&&(e=$j(e));for(var r=this._groups,a=r.length,o=[],l=[],d=0;d<a;++d)for(var f=r[d],h=f.length,g,m=0;m<h;++m)if(g=f[m]){for(var y=e.call(g,g.__data__,m,f),b,k=gi(g,n),v=0,S=y.length;v<S;++v)(b=y[v])&&op(b,t,n,v,y,k);o.push(y),l.push(g)}return new ya(o,l,t,n)}var bK=td.prototype.constructor;function xK(){return new bK(this._groups,this._parents)}function vK(e,t){var n,r,a;return function(){var o=Bl(this,e),l=(this.style.removeProperty(e),Bl(this,e));return o===l?null:o===n&&l===r?a:a=t(n=o,r=l)}}function fC(e){return function(){this.style.removeProperty(e)}}function wK(e,t,n){var r,a=n+"",o;return function(){var l=Bl(this,e);return l===a?null:l===r?o:o=t(r=l,n)}}function kK(e,t,n){var r,a,o;return function(){var l=Bl(this,e),d=n(this),f=d+"";return d==null&&(f=d=(this.style.removeProperty(e),Bl(this,e))),l===f?null:l===r&&f===a?o:(a=f,o=t(r=l,d))}}function EK(e,t){var n,r,a,o="style."+t,l="end."+o,d;return function(){var f=Ii(this,e),h=f.on,g=f.value[o]==null?d||(d=fC(t)):void 0;(h!==n||a!==g)&&(r=(n=h).copy()).on(l,a=g),f.on=r}}function SK(e,t,n){var r=(e+="")=="transform"?N7:dC;return t==null?this.styleTween(e,vK(e,r)).on("end.style."+e,fC(e)):typeof t=="function"?this.styleTween(e,kK(e,r,zx(this,"style."+e,t))).each(EK(this._id,e)):this.styleTween(e,wK(e,r,t),n).on("end.style."+e,null)}function NK(e,t,n){return function(r){this.style.setProperty(e,t.call(this,r),n)}}function _K(e,t,n){var r,a;function o(){var l=t.apply(this,arguments);return l!==a&&(r=(a=l)&&NK(e,l,n)),r}return o._value=t,o}function jK(e,t,n){var r="style."+(e+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(t==null)return this.tween(r,null);if(typeof t!="function")throw new Error;return this.tween(r,_K(e,t,n??""))}function CK(e){return function(){this.textContent=e}}function AK(e){return function(){var t=e(this);this.textContent=t??""}}function TK(e){return this.tween("text",typeof e=="function"?AK(zx(this,"text",e)):CK(e==null?"":e+""))}function MK(e){return function(t){this.textContent=e.call(this,t)}}function DK(e){var t,n;function r(){var a=e.apply(this,arguments);return a!==n&&(t=(n=a)&&MK(a)),t}return r._value=e,r}function OK(e){var t="text";if(arguments.length<1)return(t=this.tween(t))&&t._value;if(e==null)return this.tween(t,null);if(typeof e!="function")throw new Error;return this.tween(t,DK(e))}function RK(){for(var e=this._name,t=this._id,n=hC(),r=this._groups,a=r.length,o=0;o<a;++o)for(var l=r[o],d=l.length,f,h=0;h<d;++h)if(f=l[h]){var g=gi(f,t);op(f,e,n,h,l,{time:g.time+g.delay+g.duration,delay:0,duration:g.duration,ease:g.ease})}return new ya(r,this._parents,e,n)}function LK(){var e,t,n=this,r=n._id,a=n.size();return new Promise(function(o,l){var d={value:l},f={value:function(){--a===0&&o()}};n.each(function(){var h=Ii(this,r),g=h.on;g!==e&&(t=(e=g).copy(),t._.cancel.push(d),t._.interrupt.push(d),t._.end.push(f)),h.on=t}),a===0&&o()})}var IK=0;function ya(e,t,n,r){this._groups=e,this._parents=t,this._name=n,this._id=r}function hC(){return++IK}var ia=td.prototype;ya.prototype={constructor:ya,select:gK,selectAll:yK,selectChild:ia.selectChild,selectChildren:ia.selectChildren,filter:cK,merge:uK,selection:xK,transition:RK,call:ia.call,nodes:ia.nodes,node:ia.node,size:ia.size,empty:ia.empty,each:ia.each,on:hK,attr:V7,attrTween:Z7,style:SK,styleTween:jK,text:TK,textTween:OK,remove:mK,tween:U7,delay:tK,duration:iK,ease:sK,easeVarying:lK,end:LK,[Symbol.iterator]:ia[Symbol.iterator]};function zK(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var PK={time:null,delay:0,duration:250,ease:zK};function BK(e,t){for(var n;!(n=e.__transition)||!(n=n[t]);)if(!(e=e.parentNode))throw new Error(`transition ${t} not found`);return n}function UK(e){var t,n;e instanceof ya?(t=e._id,e=e._name):(t=hC(),(n=PK).time=Lx(),e=e==null?null:e+"");for(var r=this._groups,a=r.length,o=0;o<a;++o)for(var l=r[o],d=l.length,f,h=0;h<d;++h)(f=l[h])&&op(f,e,t,h,l,n||BK(f,t));return new ya(r,this._parents,e,t)}td.prototype.interrupt=z7;td.prototype.transition=UK;const $f=e=>()=>e;function $K(e,{sourceEvent:t,target:n,transform:r,dispatch:a}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:a}})}function da(e,t,n){this.k=e,this.x=t,this.y=n}da.prototype={constructor:da,scale:function(e){return e===1?this:new da(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new da(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var lp=new da(1,0,0);pC.prototype=da.prototype;function pC(e){for(;!e.__zoom;)if(!(e=e.parentNode))return lp;return e.__zoom}function cy(e){e.stopImmediatePropagation()}function au(e){e.preventDefault(),e.stopImmediatePropagation()}function FK(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function qK(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute("viewBox")?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function VE(){return this.__zoom||lp}function HK(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function KK(){return navigator.maxTouchPoints||"ontouchstart"in this}function GK(e,t,n){var r=e.invertX(t[0][0])-n[0][0],a=e.invertX(t[1][0])-n[1][0],o=e.invertY(t[0][1])-n[0][1],l=e.invertY(t[1][1])-n[1][1];return e.translate(a>r?(r+a)/2:Math.min(0,r)||Math.max(0,a),l>o?(o+l)/2:Math.min(0,o)||Math.max(0,l))}function mC(){var e=FK,t=qK,n=GK,r=HK,a=KK,o=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],d=250,f=th,h=ip("start","zoom","end"),g,m,y,b=500,k=150,v=0,S=10;function E(D){D.property("__zoom",VE).on("wheel.zoom",R,{passive:!1}).on("mousedown.zoom",F).on("dblclick.zoom",M).filter(a).on("touchstart.zoom",U).on("touchmove.zoom",q).on("touchend.zoom touchcancel.zoom",Y).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}E.transform=function(D,H,B,V){var Q=D.selection?D.selection():D;Q.property("__zoom",VE),D!==Q?O(D,H,B,V):Q.interrupt().each(function(){T(this,arguments).event(V).start().zoom(null,typeof H=="function"?H.apply(this,arguments):H).end()})},E.scaleBy=function(D,H,B,V){E.scaleTo(D,function(){var Q=this.__zoom.k,K=typeof H=="function"?H.apply(this,arguments):H;return Q*K},B,V)},E.scaleTo=function(D,H,B,V){E.transform(D,function(){var Q=t.apply(this,arguments),K=this.__zoom,L=B==null?_(Q):typeof B=="function"?B.apply(this,arguments):B,z=K.invert(L),G=typeof H=="function"?H.apply(this,arguments):H;return n(N(j(K,G),L,z),Q,l)},B,V)},E.translateBy=function(D,H,B,V){E.transform(D,function(){return n(this.__zoom.translate(typeof H=="function"?H.apply(this,arguments):H,typeof B=="function"?B.apply(this,arguments):B),t.apply(this,arguments),l)},null,V)},E.translateTo=function(D,H,B,V,Q){E.transform(D,function(){var K=t.apply(this,arguments),L=this.__zoom,z=V==null?_(K):typeof V=="function"?V.apply(this,arguments):V;return n(lp.translate(z[0],z[1]).scale(L.k).translate(typeof H=="function"?-H.apply(this,arguments):-H,typeof B=="function"?-B.apply(this,arguments):-B),K,l)},V,Q)};function j(D,H){return H=Math.max(o[0],Math.min(o[1],H)),H===D.k?D:new da(H,D.x,D.y)}function N(D,H,B){var V=H[0]-B[0]*D.k,Q=H[1]-B[1]*D.k;return V===D.x&&Q===D.y?D:new da(D.k,V,Q)}function _(D){return[(+D[0][0]+ +D[1][0])/2,(+D[0][1]+ +D[1][1])/2]}function O(D,H,B,V){D.on("start.zoom",function(){T(this,arguments).event(V).start()}).on("interrupt.zoom end.zoom",function(){T(this,arguments).event(V).end()}).tween("zoom",function(){var Q=this,K=arguments,L=T(Q,K).event(V),z=t.apply(Q,K),G=B==null?_(z):typeof B=="function"?B.apply(Q,K):B,P=Math.max(z[1][0]-z[0][0],z[1][1]-z[0][1]),oe=Q.__zoom,be=typeof H=="function"?H.apply(Q,K):H,xe=f(oe.invert(G).concat(P/oe.k),be.invert(G).concat(P/be.k));return function(we){if(we===1)we=be;else{var J=xe(we),de=P/J[2];we=new da(de,G[0]-J[0]*de,G[1]-J[1]*de)}L.zoom(null,we)}})}function T(D,H,B){return!B&&D.__zooming||new I(D,H)}function I(D,H){this.that=D,this.args=H,this.active=0,this.sourceEvent=null,this.extent=t.apply(D,H),this.taps=0}I.prototype={event:function(D){return D&&(this.sourceEvent=D),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(D,H){return this.mouse&&D!=="mouse"&&(this.mouse[1]=H.invert(this.mouse[0])),this.touch0&&D!=="touch"&&(this.touch0[1]=H.invert(this.touch0[0])),this.touch1&&D!=="touch"&&(this.touch1[1]=H.invert(this.touch1[0])),this.that.__zoom=H,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(D){var H=_r(this.that).datum();h.call(D,this.that,new $K(D,{sourceEvent:this.sourceEvent,target:E,transform:this.that.__zoom,dispatch:h}),H)}};function R(D,...H){if(!e.apply(this,arguments))return;var B=T(this,H).event(D),V=this.__zoom,Q=Math.max(o[0],Math.min(o[1],V.k*Math.pow(2,r.apply(this,arguments)))),K=si(D);if(B.wheel)(B.mouse[0][0]!==K[0]||B.mouse[0][1]!==K[1])&&(B.mouse[1]=V.invert(B.mouse[0]=K)),clearTimeout(B.wheel);else{if(V.k===Q)return;B.mouse=[K,V.invert(K)],ih(this),B.start()}au(D),B.wheel=setTimeout(L,k),B.zoom("mouse",n(N(j(V,Q),B.mouse[0],B.mouse[1]),B.extent,l));function L(){B.wheel=null,B.end()}}function F(D,...H){if(y||!e.apply(this,arguments))return;var B=D.currentTarget,V=T(this,H,!0).event(D),Q=_r(D.view).on("mousemove.zoom",G,!0).on("mouseup.zoom",P,!0),K=si(D,B),L=D.clientX,z=D.clientY;Zj(D.view),cy(D),V.mouse=[K,this.__zoom.invert(K)],ih(this),V.start();function G(oe){if(au(oe),!V.moved){var be=oe.clientX-L,xe=oe.clientY-z;V.moved=be*be+xe*xe>v}V.event(oe).zoom("mouse",n(N(V.that.__zoom,V.mouse[0]=si(oe,B),V.mouse[1]),V.extent,l))}function P(oe){Q.on("mousemove.zoom mouseup.zoom",null),Jj(oe.view,V.moved),au(oe),V.event(oe).end()}}function M(D,...H){if(e.apply(this,arguments)){var B=this.__zoom,V=si(D.changedTouches?D.changedTouches[0]:D,this),Q=B.invert(V),K=B.k*(D.shiftKey?.5:2),L=n(N(j(B,K),V,Q),t.apply(this,H),l);au(D),d>0?_r(this).transition().duration(d).call(O,L,V,D):_r(this).call(E.transform,L,V,D)}}function U(D,...H){if(e.apply(this,arguments)){var B=D.touches,V=B.length,Q=T(this,H,D.changedTouches.length===V).event(D),K,L,z,G;for(cy(D),L=0;L<V;++L)z=B[L],G=si(z,this),G=[G,this.__zoom.invert(G),z.identifier],Q.touch0?!Q.touch1&&Q.touch0[2]!==G[2]&&(Q.touch1=G,Q.taps=0):(Q.touch0=G,K=!0,Q.taps=1+!!g);g&&(g=clearTimeout(g)),K&&(Q.taps<2&&(m=G[0],g=setTimeout(function(){g=null},b)),ih(this),Q.start())}}function q(D,...H){if(this.__zooming){var B=T(this,H).event(D),V=D.changedTouches,Q=V.length,K,L,z,G;for(au(D),K=0;K<Q;++K)L=V[K],z=si(L,this),B.touch0&&B.touch0[2]===L.identifier?B.touch0[0]=z:B.touch1&&B.touch1[2]===L.identifier&&(B.touch1[0]=z);if(L=B.that.__zoom,B.touch1){var P=B.touch0[0],oe=B.touch0[1],be=B.touch1[0],xe=B.touch1[1],we=(we=be[0]-P[0])*we+(we=be[1]-P[1])*we,J=(J=xe[0]-oe[0])*J+(J=xe[1]-oe[1])*J;L=j(L,Math.sqrt(we/J)),z=[(P[0]+be[0])/2,(P[1]+be[1])/2],G=[(oe[0]+xe[0])/2,(oe[1]+xe[1])/2]}else if(B.touch0)z=B.touch0[0],G=B.touch0[1];else return;B.zoom("touch",n(N(L,z,G),B.extent,l))}}function Y(D,...H){if(this.__zooming){var B=T(this,H).event(D),V=D.changedTouches,Q=V.length,K,L;for(cy(D),y&&clearTimeout(y),y=setTimeout(function(){y=null},b),K=0;K<Q;++K)L=V[K],B.touch0&&B.touch0[2]===L.identifier?delete B.touch0:B.touch1&&B.touch1[2]===L.identifier&&delete B.touch1;if(B.touch1&&!B.touch0&&(B.touch0=B.touch1,delete B.touch1),B.touch0)B.touch0[1]=this.__zoom.invert(B.touch0[0]);else if(B.end(),B.taps===2&&(L=si(L,this),Math.hypot(m[0]-L[0],m[1]-L[1])<S)){var z=_r(this).on("dblclick.zoom");z&&z.apply(this,arguments)}}}return E.wheelDelta=function(D){return arguments.length?(r=typeof D=="function"?D:$f(+D),E):r},E.filter=function(D){return arguments.length?(e=typeof D=="function"?D:$f(!!D),E):e},E.touchable=function(D){return arguments.length?(a=typeof D=="function"?D:$f(!!D),E):a},E.extent=function(D){return arguments.length?(t=typeof D=="function"?D:$f([[+D[0][0],+D[0][1]],[+D[1][0],+D[1][1]]]),E):t},E.scaleExtent=function(D){return arguments.length?(o[0]=+D[0],o[1]=+D[1],E):[o[0],o[1]]},E.translateExtent=function(D){return arguments.length?(l[0][0]=+D[0][0],l[1][0]=+D[1][0],l[0][1]=+D[0][1],l[1][1]=+D[1][1],E):[[l[0][0],l[0][1]],[l[1][0],l[1][1]]]},E.constrain=function(D){return arguments.length?(n=D,E):n},E.duration=function(D){return arguments.length?(d=+D,E):d},E.interpolate=function(D){return arguments.length?(f=D,E):f},E.on=function(){var D=h.on.apply(h,arguments);return D===h?E:D},E.clickDistance=function(D){return arguments.length?(v=(D=+D)*D,E):Math.sqrt(v)},E.tapDistance=function(D){return arguments.length?(S=+D,E):S},E}const hi={error001:(e="react")=>`Seems like you have not used ${e==="svelte"?"SvelteFlowProvider":"ReactFlowProvider"} as an ancestor. Help: https://${e}flow.dev/error#001`,error002:()=>"It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.",error003:e=>`Node type "${e}" not found. Using fallback type "default".`,error004:()=>"The parent container needs a width and a height to render the graph.",error005:()=>"Only child nodes can use a parent extent.",error006:()=>"Can't create edge. An edge needs a source and a target.",error007:e=>`The old edge with id=${e} does not exist.`,error009:e=>`Marker type "${e}" doesn't exist.`,error008:(e,{id:t,sourceHandle:n,targetHandle:r})=>`Couldn't create edge for ${e} handle id: "${e==="source"?n:r}", edge id: ${t}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:e=>`Edge type "${e}" not found. Using fallback type "default".`,error012:e=>`Node with id "${e}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error013:(e="react")=>`It seems that you haven't loaded the styles. Please import '@xyflow/${e}/dist/style.css' or base.css to make sure everything is working properly.`,error014:()=>"useNodeConnections: No node ID found. Call useNodeConnections inside a custom Node or provide a node ID.",error015:()=>"It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs.",error016:e=>`Edge with id "${e}" does not exist, it may have been removed. This can happen when an edge is deleted before the "onEdgeClick" handler is called.`},Du=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],gC=["Enter"," ","Escape"],yC={"node.a11yDescription.default":"Press enter or space to select a node. Press delete to remove it and escape to cancel.","node.a11yDescription.keyboardDisabled":"Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.","node.a11yDescription.ariaLiveMessage":({direction:e,x:t,y:n})=>`Moved selected node ${e}. New position, x: ${t}, y: ${n}`,"edge.a11yDescription.default":"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.","controls.ariaLabel":"Control Panel","controls.zoomIn.ariaLabel":"Zoom In","controls.zoomOut.ariaLabel":"Zoom Out","controls.fitView.ariaLabel":"Fit View","controls.interactive.ariaLabel":"Toggle Interactivity","minimap.ariaLabel":"Mini Map","handle.ariaLabel":"Handle"};var $l;(function(e){e.Strict="strict",e.Loose="loose"})($l||($l={}));var oo;(function(e){e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal"})(oo||(oo={}));var Ou;(function(e){e.Partial="partial",e.Full="full"})(Ou||(Ou={}));const bC={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null};var ss;(function(e){e.Bezier="default",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e.SimpleBezier="simplebezier"})(ss||(ss={}));var Ah;(function(e){e.Arrow="arrow",e.ArrowClosed="arrowclosed"})(Ah||(Ah={}));var Ke;(function(e){e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom"})(Ke||(Ke={}));const YE={[Ke.Left]:Ke.Right,[Ke.Right]:Ke.Left,[Ke.Top]:Ke.Bottom,[Ke.Bottom]:Ke.Top};function xC(e){return e===null?null:e?"valid":"invalid"}const vC=e=>"id"in e&&"source"in e&&"target"in e,VK=e=>"id"in e&&"position"in e&&!("source"in e)&&!("target"in e),Px=e=>"id"in e&&"internals"in e&&!("source"in e)&&!("target"in e),rd=(e,t=[0,0])=>{const{width:n,height:r}=va(e),a=e.origin??t,o=n*a[0],l=r*a[1];return{x:e.position.x-o,y:e.position.y-l}},YK=(e,t={nodeOrigin:[0,0]})=>{if(e.length===0)return{x:0,y:0,width:0,height:0};const n=e.reduce((r,a)=>{const o=typeof a=="string";let l=!t.nodeLookup&&!o?a:void 0;t.nodeLookup&&(l=o?t.nodeLookup.get(a):Px(a)?a:t.nodeLookup.get(a.id));const d=l?Th(l,t.nodeOrigin):{x:0,y:0,x2:0,y2:0};return cp(r,d)},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return up(n)},id=(e,t={})=>{let n={x:1/0,y:1/0,x2:-1/0,y2:-1/0},r=!1;return e.forEach(a=>{(t.filter===void 0||t.filter(a))&&(n=cp(n,Th(a)),r=!0)}),r?up(n):{x:0,y:0,width:0,height:0}},Bx=(e,t,[n,r,a]=[0,0,1],o=!1,l=!1)=>{const d=(t.x-n)/a,f=(t.y-r)/a,h=t.width/a,g=t.height/a,m=[];for(const y of e.values()){const{measured:b,selectable:k=!0,hidden:v=!1}=y;if(l&&!k||v)continue;const S=b.width??y.width??y.initialWidth??0,E=b.height??y.height??y.initialHeight??0,{x:j,y:N}=y.internals.positionAbsolute,_=SC(d,f,h,g,j,N,S,E),O=S*E,T=o&&_>0;(!y.internals.handleBounds||T||_>=O||y.dragging)&&m.push(y)}return m},QK=(e,t)=>{const n=new Set;return e.forEach(r=>{n.add(r.id)}),t.filter(r=>n.has(r.source)||n.has(r.target))};function WK(e,t){const n=new Map,r=t!=null&&t.nodes?new Set(t.nodes.map(a=>a.id)):null;return e.forEach(a=>{a.measured.width&&a.measured.height&&((t==null?void 0:t.includeHiddenNodes)||!a.hidden)&&(!r||r.has(a.id))&&n.set(a.id,a)}),n}async function XK({nodes:e,width:t,height:n,panZoom:r,minZoom:a,maxZoom:o},l){if(e.size===0)return!0;const d=WK(e,l),f=id(d),h=$x(f,t,n,(l==null?void 0:l.minZoom)??a,(l==null?void 0:l.maxZoom)??o,(l==null?void 0:l.padding)??.1);return await r.setViewport(h,{duration:l==null?void 0:l.duration,ease:l==null?void 0:l.ease,interpolate:l==null?void 0:l.interpolate}),!0}function wC({nodeId:e,nextPosition:t,nodeLookup:n,nodeOrigin:r=[0,0],nodeExtent:a,onError:o}){const l=n.get(e),d=l.parentId?n.get(l.parentId):void 0,{x:f,y:h}=d?d.internals.positionAbsolute:{x:0,y:0},g=l.origin??r;let m=l.extent||a;if(l.extent==="parent"&&!l.expandParent)if(!d)o==null||o("005",hi.error005());else{const b=d.measured.width,k=d.measured.height;b&&k&&(m=[[f,h],[f+b,h+k]])}else d&&go(l.extent)&&(m=[[l.extent[0][0]+f,l.extent[0][1]+h],[l.extent[1][0]+f,l.extent[1][1]+h]]);const y=go(m)?mo(t,m,l.measured):t;return(l.measured.width===void 0||l.measured.height===void 0)&&(o==null||o("015",hi.error015())),{position:{x:y.x-f+(l.measured.width??0)*g[0],y:y.y-h+(l.measured.height??0)*g[1]},positionAbsolute:y}}async function ZK({nodesToRemove:e=[],edgesToRemove:t=[],nodes:n,edges:r,onBeforeDelete:a}){const o=new Set(e.map(y=>y.id)),l=[];for(const y of n){if(y.deletable===!1)continue;const b=o.has(y.id),k=!b&&y.parentId&&l.find(v=>v.id===y.parentId);(b||k)&&l.push(y)}const d=new Set(t.map(y=>y.id)),f=r.filter(y=>y.deletable!==!1),g=QK(l,f);for(const y of f)d.has(y.id)&&!g.find(k=>k.id===y.id)&&g.push(y);if(!a)return{edges:g,nodes:l};const m=await a({nodes:l,edges:g});return typeof m=="boolean"?m?{edges:g,nodes:l}:{edges:[],nodes:[]}:m}const Fl=(e,t=0,n=1)=>Math.min(Math.max(e,t),n),mo=(e={x:0,y:0},t,n)=>({x:Fl(e.x,t[0][0],t[1][0]-((n==null?void 0:n.width)??0)),y:Fl(e.y,t[0][1],t[1][1]-((n==null?void 0:n.height)??0))});function kC(e,t,n){const{width:r,height:a}=va(n),{x:o,y:l}=n.internals.positionAbsolute;return mo(e,[[o,l],[o+r,l+a]],t)}const QE=(e,t,n)=>e<t?Fl(Math.abs(e-t),1,t)/t:e>n?-Fl(Math.abs(e-n),1,t)/t:0,Ux=(e,t,n=15,r=40)=>{const a=QE(e.x,r,t.width-r)*n,o=QE(e.y,r,t.height-r)*n;return[a,o]},cp=(e,t)=>({x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x2,t.x2),y2:Math.max(e.y2,t.y2)}),fb=({x:e,y:t,width:n,height:r})=>({x:e,y:t,x2:e+n,y2:t+r}),up=({x:e,y:t,x2:n,y2:r})=>({x:e,y:t,width:n-e,height:r-t}),Ru=(e,t=[0,0])=>{var a,o;const{x:n,y:r}=Px(e)?e.internals.positionAbsolute:rd(e,t);return{x:n,y:r,width:((a=e.measured)==null?void 0:a.width)??e.width??e.initialWidth??0,height:((o=e.measured)==null?void 0:o.height)??e.height??e.initialHeight??0}},Th=(e,t=[0,0])=>{var a,o;const{x:n,y:r}=Px(e)?e.internals.positionAbsolute:rd(e,t);return{x:n,y:r,x2:n+(((a=e.measured)==null?void 0:a.width)??e.width??e.initialWidth??0),y2:r+(((o=e.measured)==null?void 0:o.height)??e.height??e.initialHeight??0)}},EC=(e,t)=>up(cp(fb(e),fb(t))),SC=(e,t,n,r,a,o,l,d)=>{const f=Math.max(0,Math.min(e+n,a+l)-Math.max(e,a)),h=Math.max(0,Math.min(t+r,o+d)-Math.max(t,o));return Math.ceil(f*h)},Mh=(e,t)=>SC(e.x,e.y,e.width,e.height,t.x,t.y,t.width,t.height),WE=e=>li(e.width)&&li(e.height)&&li(e.x)&&li(e.y),li=e=>!isNaN(e)&&isFinite(e),NC=(e,t)=>(n,r)=>{},ad=(e,t=[1,1])=>({x:t[0]*Math.round(e.x/t[0]),y:t[1]*Math.round(e.y/t[1])}),sd=({x:e,y:t},[n,r,a],o=!1,l=[1,1])=>{const d={x:(e-n)/a,y:(t-r)/a};return o?ad(d,l):d},ql=({x:e,y:t},[n,r,a])=>({x:e*a+n,y:t*a+r});function ol(e,t){if(typeof e=="number")return Math.floor((t-t/(1+e))*.5);if(typeof e=="string"&&e.endsWith("px")){const n=parseFloat(e);if(!Number.isNaN(n))return Math.floor(n)}if(typeof e=="string"&&e.endsWith("%")){const n=parseFloat(e);if(!Number.isNaN(n))return Math.floor(t*n*.01)}return console.error(`The padding value "${e}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}function JK(e,t,n){if(typeof e=="string"||typeof e=="number"){const r=ol(e,n),a=ol(e,t);return{top:r,right:a,bottom:r,left:a,x:a*2,y:r*2}}if(typeof e=="object"){const r=ol(e.top??e.y??0,n),a=ol(e.bottom??e.y??0,n),o=ol(e.left??e.x??0,t),l=ol(e.right??e.x??0,t);return{top:r,right:l,bottom:a,left:o,x:o+l,y:r+a}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}function eG(e,t,n,r,a,o){const{x:l,y:d}=ql(e,[t,n,r]),{x:f,y:h}=ql({x:e.x+e.width,y:e.y+e.height},[t,n,r]),g=a-f,m=o-h;return{left:Math.floor(l),top:Math.floor(d),right:Math.floor(g),bottom:Math.floor(m)}}const $x=(e,t,n,r,a,o)=>{const l=JK(o,t,n),d=(t-l.x)/e.width,f=(n-l.y)/e.height,h=Math.min(d,f),g=Fl(h,r,a),m=e.x+e.width/2,y=e.y+e.height/2,b=t/2-m*g,k=n/2-y*g,v=eG(e,b,k,g,t,n),S={left:Math.min(v.left-l.left,0),top:Math.min(v.top-l.top,0),right:Math.min(v.right-l.right,0),bottom:Math.min(v.bottom-l.bottom,0)};return{x:b-S.left+S.right,y:k-S.top+S.bottom,zoom:g}},Lu=()=>{var e;return typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)==null?void 0:e.indexOf("Mac"))>=0};function go(e){return e!=null&&e!=="parent"}function va(e){var t,n;return{width:((t=e.measured)==null?void 0:t.width)??e.width??e.initialWidth??0,height:((n=e.measured)==null?void 0:n.height)??e.height??e.initialHeight??0}}function _C(e){var t,n;return(((t=e.measured)==null?void 0:t.width)??e.width??e.initialWidth)!==void 0&&(((n=e.measured)==null?void 0:n.height)??e.height??e.initialHeight)!==void 0}function jC(e,t={width:0,height:0},n,r,a){const o={...e},l=r.get(n);if(l){const d=l.origin||a;o.x+=l.internals.positionAbsolute.x-(t.width??0)*d[0],o.y+=l.internals.positionAbsolute.y-(t.height??0)*d[1]}return o}function XE(e,t){if(e.size!==t.size)return!1;for(const n of e)if(!t.has(n))return!1;return!0}function tG(){let e,t;return{promise:new Promise((r,a)=>{e=r,t=a}),resolve:e,reject:t}}function nG(e){return{...yC,...e||{}}}function gu(e,{snapGrid:t=[0,0],snapToGrid:n=!1,transform:r,containerBounds:a}){const{x:o,y:l}=ci(e),d=sd({x:o-((a==null?void 0:a.left)??0),y:l-((a==null?void 0:a.top)??0)},r),{x:f,y:h}=n?ad(d,t):d;return{xSnapped:f,ySnapped:h,...d}}const Fx=e=>({width:e.offsetWidth,height:e.offsetHeight}),CC=e=>{var t;return((t=e==null?void 0:e.getRootNode)==null?void 0:t.call(e))||(window==null?void 0:window.document)},rG=["INPUT","SELECT","TEXTAREA"];function AC(e){var r,a;const t=((a=(r=e.composedPath)==null?void 0:r.call(e))==null?void 0:a[0])||e.target;return(t==null?void 0:t.nodeType)!==1?!1:rG.includes(t.nodeName)||t.hasAttribute("contenteditable")||!!t.closest(".nokey")}const TC=e=>"clientX"in e,ci=(e,t)=>{var o,l;const n=TC(e),r=n?e.clientX:(o=e.touches)==null?void 0:o[0].clientX,a=n?e.clientY:(l=e.touches)==null?void 0:l[0].clientY;return{x:r-((t==null?void 0:t.left)??0),y:a-((t==null?void 0:t.top)??0)}},ZE=(e,t,n,r,a)=>{const o=t.querySelectorAll(`.${e}`);return!o||!o.length?null:Array.from(o).map(l=>{const d=l.getBoundingClientRect();return{id:l.getAttribute("data-handleid"),type:e,nodeId:a,position:l.getAttribute("data-handlepos"),x:(d.left-n.left)/r,y:(d.top-n.top)/r,...Fx(l)}})};function MC({sourceX:e,sourceY:t,targetX:n,targetY:r,sourceControlX:a,sourceControlY:o,targetControlX:l,targetControlY:d}){const f=e*.125+a*.375+l*.375+n*.125,h=t*.125+o*.375+d*.375+r*.125,g=Math.abs(f-e),m=Math.abs(h-t);return[f,h,g,m]}function Ff(e,t){return e>=0?.5*e:t*25*Math.sqrt(-e)}function JE({pos:e,x1:t,y1:n,x2:r,y2:a,c:o}){switch(e){case Ke.Left:return[t-Ff(t-r,o),n];case Ke.Right:return[t+Ff(r-t,o),n];case Ke.Top:return[t,n-Ff(n-a,o)];case Ke.Bottom:return[t,n+Ff(a-n,o)]}}function DC({sourceX:e,sourceY:t,sourcePosition:n=Ke.Bottom,targetX:r,targetY:a,targetPosition:o=Ke.Top,curvature:l=.25}){const[d,f]=JE({pos:n,x1:e,y1:t,x2:r,y2:a,c:l}),[h,g]=JE({pos:o,x1:r,y1:a,x2:e,y2:t,c:l}),[m,y,b,k]=MC({sourceX:e,sourceY:t,targetX:r,targetY:a,sourceControlX:d,sourceControlY:f,targetControlX:h,targetControlY:g});return[`M${e},${t} C${d},${f} ${h},${g} ${r},${a}`,m,y,b,k]}function OC({sourceX:e,sourceY:t,targetX:n,targetY:r}){const a=Math.abs(n-e)/2,o=n<e?n+a:n-a,l=Math.abs(r-t)/2,d=r<t?r+l:r-l;return[o,d,a,l]}function iG({sourceNode:e,targetNode:t,selected:n=!1,zIndex:r=0,elevateOnSelect:a=!1,zIndexMode:o="basic"}){if(o==="manual")return r;const l=a&&n?r+1e3:r,d=Math.max(e.parentId||a&&e.selected?e.internals.z:0,t.parentId||a&&t.selected?t.internals.z:0);return l+d}function aG({sourceNode:e,targetNode:t,width:n,height:r,transform:a}){const o=cp(Th(e),Th(t));o.x===o.x2&&(o.x2+=1),o.y===o.y2&&(o.y2+=1);const l={x:-a[0]/a[2],y:-a[1]/a[2],width:n/a[2],height:r/a[2]};return Mh(l,up(o))>0}const sG=({source:e,sourceHandle:t,target:n,targetHandle:r})=>`xy-edge__${e}${t||""}-${n}${r||""}`,oG=(e,t)=>t.some(n=>n.source===e.source&&n.target===e.target&&(n.sourceHandle===e.sourceHandle||!n.sourceHandle&&!e.sourceHandle)&&(n.targetHandle===e.targetHandle||!n.targetHandle&&!e.targetHandle)),lG=(e,t,n={})=>{var o;if(!e.source||!e.target)return(o=n.onError)==null||o.call(n,"006",hi.error006()),t;const r=n.getEdgeId||sG;let a;return vC(e)?a={...e}:a={...e,id:r(e)},oG(a,t)?t:(a.sourceHandle===null&&delete a.sourceHandle,a.targetHandle===null&&delete a.targetHandle,t.concat(a))};function RC({sourceX:e,sourceY:t,targetX:n,targetY:r}){const[a,o,l,d]=OC({sourceX:e,sourceY:t,targetX:n,targetY:r});return[`M ${e},${t}L ${n},${r}`,a,o,l,d]}const eS={[Ke.Left]:{x:-1,y:0},[Ke.Right]:{x:1,y:0},[Ke.Top]:{x:0,y:-1},[Ke.Bottom]:{x:0,y:1}},cG=({source:e,sourcePosition:t=Ke.Bottom,target:n})=>t===Ke.Left||t===Ke.Right?e.x<n.x?{x:1,y:0}:{x:-1,y:0}:e.y<n.y?{x:0,y:1}:{x:0,y:-1},tS=(e,t)=>Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2));function uG({source:e,sourcePosition:t=Ke.Bottom,target:n,targetPosition:r=Ke.Top,center:a,offset:o,stepPosition:l}){const d=eS[t],f=eS[r],h={x:e.x+d.x*o,y:e.y+d.y*o},g={x:n.x+f.x*o,y:n.y+f.y*o},m=cG({source:h,sourcePosition:t,target:g}),y=m.x!==0?"x":"y",b=m[y];let k=[],v,S;const E={x:0,y:0},j={x:0,y:0},[,,N,_]=OC({sourceX:e.x,sourceY:e.y,targetX:n.x,targetY:n.y});if(d[y]*f[y]===-1){y==="x"?(v=a.x??h.x+(g.x-h.x)*l,S=a.y??(h.y+g.y)/2):(v=a.x??(h.x+g.x)/2,S=a.y??h.y+(g.y-h.y)*l);const R=[{x:v,y:h.y},{x:v,y:g.y}],F=[{x:h.x,y:S},{x:g.x,y:S}];d[y]===b?k=y==="x"?R:F:k=y==="x"?F:R}else{const R=[{x:h.x,y:g.y}],F=[{x:g.x,y:h.y}];if(y==="x"?k=d.x===b?F:R:k=d.y===b?R:F,t===r){const D=Math.abs(e[y]-n[y]);if(D<=o){const H=Math.min(o-1,o-D);d[y]===b?E[y]=(h[y]>e[y]?-1:1)*H:j[y]=(g[y]>n[y]?-1:1)*H}}if(t!==r){const D=y==="x"?"y":"x",H=d[y]===f[D],B=h[D]>g[D],V=h[D]<g[D];(d[y]===1&&(!H&&B||H&&V)||d[y]!==1&&(!H&&V||H&&B))&&(k=y==="x"?R:F)}const M={x:h.x+E.x,y:h.y+E.y},U={x:g.x+j.x,y:g.y+j.y},q=Math.max(Math.abs(M.x-k[0].x),Math.abs(U.x-k[0].x)),Y=Math.max(Math.abs(M.y-k[0].y),Math.abs(U.y-k[0].y));q>=Y?(v=(M.x+U.x)/2,S=k[0].y):(v=k[0].x,S=(M.y+U.y)/2)}const O={x:h.x+E.x,y:h.y+E.y},T={x:g.x+j.x,y:g.y+j.y};return[[e,...O.x!==k[0].x||O.y!==k[0].y?[O]:[],...k,...T.x!==k[k.length-1].x||T.y!==k[k.length-1].y?[T]:[],n],v,S,N,_]}function dG(e,t,n,r){const a=Math.min(tS(e,t)/2,tS(t,n)/2,r),{x:o,y:l}=t;if(e.x===o&&o===n.x||e.y===l&&l===n.y)return`L${o} ${l}`;if(e.y===l){const h=e.x<n.x?-1:1,g=e.y<n.y?1:-1;return`L ${o+a*h},${l}Q ${o},${l} ${o},${l+a*g}`}const d=e.x<n.x?1:-1,f=e.y<n.y?-1:1;return`L ${o},${l+a*f}Q ${o},${l} ${o+a*d},${l}`}function hb({sourceX:e,sourceY:t,sourcePosition:n=Ke.Bottom,targetX:r,targetY:a,targetPosition:o=Ke.Top,borderRadius:l=5,centerX:d,centerY:f,offset:h=20,stepPosition:g=.5}){const[m,y,b,k,v]=uG({source:{x:e,y:t},sourcePosition:n,target:{x:r,y:a},targetPosition:o,center:{x:d,y:f},offset:h,stepPosition:g});let S=`M${m[0].x} ${m[0].y}`;for(let E=1;E<m.length-1;E++)S+=dG(m[E-1],m[E],m[E+1],l);return S+=`L${m[m.length-1].x} ${m[m.length-1].y}`,[S,y,b,k,v]}function nS(e){var t;return e&&!!(e.internals.handleBounds||(t=e.handles)!=null&&t.length)&&!!(e.measured.width||e.width||e.initialWidth)}function fG(e){var m;const{sourceNode:t,targetNode:n}=e;if(!nS(t)||!nS(n))return null;const r=t.internals.handleBounds||rS(t.handles),a=n.internals.handleBounds||rS(n.handles),o=iS((r==null?void 0:r.source)??[],e.sourceHandle),l=iS(e.connectionMode===$l.Strict?(a==null?void 0:a.target)??[]:((a==null?void 0:a.target)??[]).concat((a==null?void 0:a.source)??[]),e.targetHandle);if(!o||!l)return(m=e.onError)==null||m.call(e,"008",hi.error008(o?"target":"source",{id:e.id,sourceHandle:e.sourceHandle,targetHandle:e.targetHandle})),null;const d=(o==null?void 0:o.position)||Ke.Bottom,f=(l==null?void 0:l.position)||Ke.Top,h=yo(t,o,d),g=yo(n,l,f);return{sourceX:h.x,sourceY:h.y,targetX:g.x,targetY:g.y,sourcePosition:d,targetPosition:f}}function rS(e){if(!e)return null;const t=[],n=[];for(const r of e)r.width=r.width??1,r.height=r.height??1,r.type==="source"?t.push(r):r.type==="target"&&n.push(r);return{source:t,target:n}}function yo(e,t,n=Ke.Left,r=!1){const a=((t==null?void 0:t.x)??0)+e.internals.positionAbsolute.x,o=((t==null?void 0:t.y)??0)+e.internals.positionAbsolute.y,{width:l,height:d}=t??va(e);if(r)return{x:a+l/2,y:o+d/2};switch((t==null?void 0:t.position)??n){case Ke.Top:return{x:a+l/2,y:o};case Ke.Right:return{x:a+l,y:o+d/2};case Ke.Bottom:return{x:a+l/2,y:o+d};case Ke.Left:return{x:a,y:o+d/2}}}function iS(e,t){return e&&(t?e.find(n=>n.id===t):e[0])||null}function pb(e,t){return e?typeof e=="string"?e:`${t?`${t}__`:""}${Object.keys(e).sort().map(r=>`${r}=${e[r]}`).join("&")}`:""}function hG(e,{id:t,defaultColor:n,defaultMarkerStart:r,defaultMarkerEnd:a}){const o=new Set;return e.reduce((l,d)=>([d.markerStart||r,d.markerEnd||a].forEach(f=>{if(f&&typeof f=="object"){const h=pb(f,t);o.has(h)||(l.push({id:h,color:f.color||n,...f}),o.add(h))}}),l),[]).sort((l,d)=>l.id.localeCompare(d.id))}const LC=1e3,pG=10,qx={nodeOrigin:[0,0],nodeExtent:Du,elevateNodesOnSelect:!0,zIndexMode:"basic",defaults:{}},mG={...qx,checkEquality:!0};function Hx(e,t){const n={...e};for(const r in t)t[r]!==void 0&&(n[r]=t[r]);return n}function gG(e,t,n){const r=Hx(qx,n);for(const a of e.values())if(a.parentId)Gx(a,e,t,r);else{const o=rd(a,r.nodeOrigin),l=go(a.extent)?a.extent:r.nodeExtent,d=mo(o,l,va(a));a.internals.positionAbsolute=d}}function yG(e,t){if(!e.handles)return e.measured?t==null?void 0:t.internals.handleBounds:void 0;const n=[],r=[];for(const a of e.handles){const o={id:a.id,width:a.width??1,height:a.height??1,nodeId:e.id,x:a.x,y:a.y,position:a.position,type:a.type};a.type==="source"?n.push(o):a.type==="target"&&r.push(o)}return{source:n,target:r}}function Kx(e){return e==="manual"}function mb(e,t,n,r={}){var g,m;const a=Hx(mG,r),o={i:0},l=new Map(t),d=a!=null&&a.elevateNodesOnSelect&&!Kx(a.zIndexMode)?LC:0;let f=e.length>0,h=!1;t.clear(),n.clear();for(const y of e){let b=l.get(y.id);if(a.checkEquality&&y===(b==null?void 0:b.internals.userNode))t.set(y.id,b);else{const k=rd(y,a.nodeOrigin),v=go(y.extent)?y.extent:a.nodeExtent,S=mo(k,v,va(y));b={...a.defaults,...y,measured:{width:(g=y.measured)==null?void 0:g.width,height:(m=y.measured)==null?void 0:m.height},internals:{positionAbsolute:S,handleBounds:yG(y,b),z:IC(y,d,a.zIndexMode),userNode:y}},t.set(y.id,b)}(b.measured===void 0||b.measured.width===void 0||b.measured.height===void 0)&&!b.hidden&&(f=!1),y.parentId&&Gx(b,t,n,r,o),h||(h=y.selected??!1)}return{nodesInitialized:f,hasSelectedNodes:h}}function bG(e,t){if(!e.parentId)return;const n=t.get(e.parentId);n?n.set(e.id,e):t.set(e.parentId,new Map([[e.id,e]]))}function Gx(e,t,n,r,a){const{elevateNodesOnSelect:o,nodeOrigin:l,nodeExtent:d,zIndexMode:f}=Hx(qx,r),h=e.parentId,g=t.get(h);if(!g){console.warn(`Parent node ${h} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);return}bG(e,n),a&&!g.parentId&&g.internals.rootParentIndex===void 0&&f==="auto"&&(g.internals.rootParentIndex=++a.i,g.internals.z=g.internals.z+a.i*pG),a&&g.internals.rootParentIndex!==void 0&&(a.i=g.internals.rootParentIndex);const m=o&&!Kx(f)?LC:0,{x:y,y:b,z:k}=xG(e,g,l,d,m,f),{positionAbsolute:v}=e.internals,S=y!==v.x||b!==v.y;(S||k!==e.internals.z)&&t.set(e.id,{...e,internals:{...e.internals,positionAbsolute:S?{x:y,y:b}:v,z:k}})}function IC(e,t,n){const r=li(e.zIndex)?e.zIndex:0;return Kx(n)?r:r+(e.selected?t:0)}function xG(e,t,n,r,a,o){const{x:l,y:d}=t.internals.positionAbsolute,f=va(e),h=rd(e,n),g=go(e.extent)?mo(h,e.extent,f):h;let m=mo({x:l+g.x,y:d+g.y},r,f);e.extent==="parent"&&(m=kC(m,f,t));const y=IC(e,a,o),b=t.internals.z??0;return{x:m.x,y:m.y,z:b>=y?b+1:y}}function Vx(e,t,n,r=[0,0]){var l;const a=[],o=new Map;for(const d of e){const f=t.get(d.parentId);if(!f)continue;const h=((l=o.get(d.parentId))==null?void 0:l.expandedRect)??Ru(f),g=EC(h,d.rect);o.set(d.parentId,{expandedRect:g,parent:f})}return o.size>0&&o.forEach(({expandedRect:d,parent:f},h)=>{var N;const g=f.internals.positionAbsolute,m=va(f),y=f.origin??r,b=d.x<g.x?Math.round(Math.abs(g.x-d.x)):0,k=d.y<g.y?Math.round(Math.abs(g.y-d.y)):0,v=Math.max(m.width,Math.round(d.width)),S=Math.max(m.height,Math.round(d.height)),E=(v-m.width)*y[0],j=(S-m.height)*y[1];(b>0||k>0||E||j)&&(a.push({id:h,type:"position",position:{x:f.position.x-b+E,y:f.position.y-k+j}}),(N=n.get(h))==null||N.forEach(_=>{e.some(O=>O.id===_.id)||a.push({id:_.id,type:"position",position:{x:_.position.x+b,y:_.position.y+k}})})),(m.width<d.width||m.height<d.height||b||k)&&a.push({id:h,type:"dimensions",setAttributes:!0,dimensions:{width:v+(b?y[0]*b-E:0),height:S+(k?y[1]*k-j:0)}})}),a}function vG(e,t,n,r,a,o,l){const d=r==null?void 0:r.querySelector(".xyflow__viewport");let f=!1;if(!d)return{changes:[],updatedInternals:f};const h=[],g=window.getComputedStyle(d),{m22:m}=new window.DOMMatrixReadOnly(g.transform),y=[];for(const b of e.values()){const k=t.get(b.id);if(!k)continue;if(k.hidden){t.set(k.id,{...k,internals:{...k.internals,handleBounds:void 0}}),f=!0;continue}const v=Fx(b.nodeElement),S=k.measured.width!==v.width||k.measured.height!==v.height;if(!!(v.width&&v.height&&(S||!k.internals.handleBounds||b.force))){const j=b.nodeElement.getBoundingClientRect(),N=go(k.extent)?k.extent:o;let{positionAbsolute:_}=k.internals;k.parentId&&k.extent==="parent"?_=kC(_,v,t.get(k.parentId)):N&&(_=mo(_,N,v));const O={...k,measured:v,internals:{...k.internals,positionAbsolute:_,handleBounds:{source:ZE("source",b.nodeElement,j,m,k.id),target:ZE("target",b.nodeElement,j,m,k.id)}}};t.set(k.id,O),k.parentId&&Gx(O,t,n,{nodeOrigin:a,zIndexMode:l}),f=!0,S&&(h.push({id:k.id,type:"dimensions",dimensions:v}),k.expandParent&&k.parentId&&y.push({id:k.id,parentId:k.parentId,rect:Ru(O,a)}))}}if(y.length>0){const b=Vx(y,t,n,a);h.push(...b)}return{changes:h,updatedInternals:f}}async function wG({delta:e,panZoom:t,transform:n,translateExtent:r,width:a,height:o}){if(!t||!e.x&&!e.y)return!1;const l=await t.setViewportConstrained({x:n[0]+e.x,y:n[1]+e.y,zoom:n[2]},[[0,0],[a,o]],r);return!!l&&(l.x!==n[0]||l.y!==n[1]||l.k!==n[2])}function aS(e,t,n,r,a,o){let l=a;const d=r.get(l)||new Map;r.set(l,d.set(n,t)),l=`${a}-${e}`;const f=r.get(l)||new Map;if(r.set(l,f.set(n,t)),o){l=`${a}-${e}-${o}`;const h=r.get(l)||new Map;r.set(l,h.set(n,t))}}function zC(e,t,n){e.clear(),t.clear();for(const r of n){const{source:a,target:o,sourceHandle:l=null,targetHandle:d=null}=r,f={edgeId:r.id,source:a,target:o,sourceHandle:l,targetHandle:d},h=`${a}-${l}--${o}-${d}`,g=`${o}-${d}--${a}-${l}`;aS("source",f,g,e,a,l),aS("target",f,h,e,o,d),t.set(r.id,r)}}function PC(e,t){if(!e.parentId)return!1;const n=t.get(e.parentId);return n?n.selected?!0:PC(n,t):!1}function sS(e,t,n){var a;let r=e;do{if((a=r==null?void 0:r.matches)!=null&&a.call(r,t))return!0;if(r===n)return!1;r=r==null?void 0:r.parentElement}while(r);return!1}function kG(e,t,n,r){const a=new Map;for(const[o,l]of e)if((l.selected||l.id===r)&&(!l.parentId||!PC(l,e))&&(l.draggable||t&&typeof l.draggable>"u")){const d=e.get(o);d&&a.set(o,{id:o,position:d.position||{x:0,y:0},distance:{x:n.x-d.internals.positionAbsolute.x,y:n.y-d.internals.positionAbsolute.y},extent:d.extent,parentId:d.parentId,origin:d.origin,expandParent:d.expandParent,internals:{positionAbsolute:d.internals.positionAbsolute||{x:0,y:0}},measured:{width:d.measured.width??0,height:d.measured.height??0}})}return a}function uy({nodeId:e,dragItems:t,nodeLookup:n,dragging:r=!0}){var l,d,f;const a=[];for(const[h,g]of t){const m=(l=n.get(h))==null?void 0:l.internals.userNode;m&&a.push({...m,position:g.position,dragging:r})}if(!e)return[a[0],a];const o=(d=n.get(e))==null?void 0:d.internals.userNode;return[o?{...o,position:((f=t.get(e))==null?void 0:f.position)||o.position,dragging:r}:a[0],a]}function EG({dragItems:e,snapGrid:t,x:n,y:r}){const a=e.values().next().value;if(!a)return null;const o={x:n-a.distance.x,y:r-a.distance.y},l=ad(o,t);return{x:l.x-o.x,y:l.y-o.y}}function SG({onNodeMouseDown:e,getStoreItems:t,onDragStart:n,onDrag:r,onDragStop:a}){let o={x:null,y:null},l=0,d=new Map,f=!1,h={x:0,y:0},g=null,m=!1,y=null,b=!1,k=!1,v=null;function S({noDragClassName:j,handleSelector:N,domNode:_,isSelectable:O,nodeId:T,nodeClickDistance:I=0}){y=_r(_);function R({x:q,y:Y}){const{nodeLookup:D,nodeExtent:H,snapGrid:B,snapToGrid:V,nodeOrigin:Q,onNodeDrag:K,onSelectionDrag:L,onError:z,updateNodePositions:G}=t();o={x:q,y:Y};let P=!1;const oe=d.size>1,be=oe&&H?fb(id(d)):null,xe=oe&&V?EG({dragItems:d,snapGrid:B,x:q,y:Y}):null;for(const[we,J]of d){if(!D.has(we))continue;let de={x:q-J.distance.x,y:Y-J.distance.y};V&&(de=xe?{x:Math.round(de.x+xe.x),y:Math.round(de.y+xe.y)}:ad(de,B));let Ce=null;if(oe&&H&&!J.extent&&be){const{positionAbsolute:le}=J.internals,Ne=le.x-be.x+H[0][0],Te=le.x+J.measured.width-be.x2+H[1][0],ke=le.y-be.y+H[0][1],Qe=le.y+J.measured.height-be.y2+H[1][1];Ce=[[Ne,ke],[Te,Qe]]}const{position:Re,positionAbsolute:Me}=wC({nodeId:we,nextPosition:de,nodeLookup:D,nodeExtent:Ce||H,nodeOrigin:Q,onError:z});P=P||J.position.x!==Re.x||J.position.y!==Re.y,J.position=Re,J.internals.positionAbsolute=Me}if(k=k||P,!!P&&(G(d,!0),v&&(r||K||!T&&L))){const[we,J]=uy({nodeId:T,dragItems:d,nodeLookup:D});r==null||r(v,d,we,J),K==null||K(v,we,J),T||L==null||L(v,J)}}async function F(){if(!g)return;const{transform:q,panBy:Y,autoPanSpeed:D,autoPanOnNodeDrag:H}=t();if(!H){f=!1,cancelAnimationFrame(l);return}const[B,V]=Ux(h,g,D);(B!==0||V!==0)&&(o.x=(o.x??0)-B/q[2],o.y=(o.y??0)-V/q[2],await Y({x:B,y:V})&&R(o)),l=requestAnimationFrame(F)}function M(q){var oe;const{nodeLookup:Y,multiSelectionActive:D,nodesDraggable:H,transform:B,snapGrid:V,snapToGrid:Q,selectNodesOnDrag:K,onNodeDragStart:L,onSelectionDragStart:z,unselectNodesAndEdges:G}=t();m=!0,(!K||!O)&&!D&&T&&((oe=Y.get(T))!=null&&oe.selected||G()),O&&K&&T&&(e==null||e(T));const P=gu(q.sourceEvent,{transform:B,snapGrid:V,snapToGrid:Q,containerBounds:g});if(o=P,d=kG(Y,H,P,T),d.size>0&&(n||L||!T&&z)){const[be,xe]=uy({nodeId:T,dragItems:d,nodeLookup:Y});n==null||n(q.sourceEvent,d,be,xe),L==null||L(q.sourceEvent,be,xe),T||z==null||z(q.sourceEvent,xe)}}const U=eC().clickDistance(I).on("start",q=>{const{domNode:Y,nodeDragThreshold:D,transform:H,snapGrid:B,snapToGrid:V}=t();g=(Y==null?void 0:Y.getBoundingClientRect())||null,b=!1,k=!1,v=q.sourceEvent,D===0&&M(q),o=gu(q.sourceEvent,{transform:H,snapGrid:B,snapToGrid:V,containerBounds:g}),h=ci(q.sourceEvent,g)}).on("drag",q=>{const{autoPanOnNodeDrag:Y,transform:D,snapGrid:H,snapToGrid:B,nodeDragThreshold:V,nodeLookup:Q}=t(),K=gu(q.sourceEvent,{transform:D,snapGrid:H,snapToGrid:B,containerBounds:g});if(v=q.sourceEvent,(q.sourceEvent.type==="touchmove"&&q.sourceEvent.touches.length>1||T&&!Q.has(T))&&(b=!0),!b){if(!f&&Y&&m&&(f=!0,F()),!m){const L=ci(q.sourceEvent,g),z=L.x-h.x,G=L.y-h.y;Math.sqrt(z*z+G*G)>V&&M(q)}(o.x!==K.xSnapped||o.y!==K.ySnapped)&&d&&m&&(h=ci(q.sourceEvent,g),R(K))}}).on("end",q=>{if(!m||b){b&&d.size>0&&t().updateNodePositions(d,!1);return}if(f=!1,m=!1,cancelAnimationFrame(l),d.size>0){const{nodeLookup:Y,updateNodePositions:D,onNodeDragStop:H,onSelectionDragStop:B}=t();if(k&&(D(d,!1),k=!1),a||H||!T&&B){const[V,Q]=uy({nodeId:T,dragItems:d,nodeLookup:Y,dragging:!1});a==null||a(q.sourceEvent,d,V,Q),H==null||H(q.sourceEvent,V,Q),T||B==null||B(q.sourceEvent,Q)}}}).filter(q=>{const Y=q.target;return!q.button&&(!j||!sS(Y,`.${j}`,_))&&(!N||sS(Y,N,_))});y.call(U)}function E(){y==null||y.on(".drag",null)}return{update:S,destroy:E}}function NG(e,t,n){const r=[],a={x:e.x-n,y:e.y-n,width:n*2,height:n*2};for(const o of t.values())Mh(a,Ru(o))>0&&r.push(o);return r}const _G=250;function jG(e,t,n,r){var d,f;let a=[],o=1/0;const l=NG(e,n,t+_G);for(const h of l){const g=[...((d=h.internals.handleBounds)==null?void 0:d.source)??[],...((f=h.internals.handleBounds)==null?void 0:f.target)??[]];for(const m of g){if(r.nodeId===m.nodeId&&r.type===m.type&&r.id===m.id)continue;const{x:y,y:b}=yo(h,m,m.position,!0),k=Math.sqrt(Math.pow(y-e.x,2)+Math.pow(b-e.y,2));k>t||(k<o?(a=[{...m,x:y,y:b}],o=k):k===o&&a.push({...m,x:y,y:b}))}}if(!a.length)return null;if(a.length>1){const h=r.type==="source"?"target":"source";return a.find(g=>g.type===h)??a[0]}return a[0]}function BC(e,t,n,r,a,o=!1){var h,g,m;const l=r.get(e);if(!l)return null;const d=a==="strict"?(h=l.internals.handleBounds)==null?void 0:h[t]:[...((g=l.internals.handleBounds)==null?void 0:g.source)??[],...((m=l.internals.handleBounds)==null?void 0:m.target)??[]],f=(n?d==null?void 0:d.find(y=>y.id===n):d==null?void 0:d[0])??null;return f&&o?{...f,...yo(l,f,f.position,!0)}:f}function UC(e,t){return e||(t!=null&&t.classList.contains("target")?"target":t!=null&&t.classList.contains("source")?"source":null)}function CG(e,t){let n=null;return t?n=!0:e&&!t&&(n=!1),n}const $C=()=>!0;function AG(e,{connectionMode:t,connectionRadius:n,handleId:r,nodeId:a,edgeUpdaterType:o,isTarget:l,domNode:d,nodeLookup:f,lib:h,autoPanOnConnect:g,flowId:m,panBy:y,cancelConnection:b,onConnectStart:k,onConnect:v,onConnectEnd:S,isValidConnection:E=$C,onReconnectEnd:j,updateConnection:N,getTransform:_,getFromHandle:O,autoPanSpeed:T,dragThreshold:I=1,handleDomNode:R}){const F=CC(e.target);let M=0,U;const{x:q,y:Y}=ci(e),D=UC(o,R),H=d==null?void 0:d.getBoundingClientRect();let B=!1;if(!H||!D)return;const V=BC(a,D,r,f,t);if(!V)return;let Q=ci(e,H),K=!1,L=null,z=!1,G=null;function P(){if(!g||!H)return;const[Re,Me]=Ux(Q,H,T);y({x:Re,y:Me}),M=requestAnimationFrame(P)}const oe={...V,nodeId:a,type:D,position:V.position},be=f.get(a);let we={inProgress:!0,isValid:null,from:yo(be,oe,Ke.Left,!0),fromHandle:oe,fromPosition:oe.position,fromNode:be,to:Q,toHandle:null,toPosition:YE[oe.position],toNode:null,pointer:Q};function J(){B=!0,N(we),k==null||k(e,{nodeId:a,handleId:r,handleType:D})}I===0&&J();function de(Re){if(!B){const{x:Qe,y:re}=ci(Re),Ae=Qe-q,ue=re-Y;if(!(Ae*Ae+ue*ue>I*I))return;J()}if(!O()||!oe){Ce(Re);return}const Me=_();Q=ci(Re,H),U=jG(sd(Q,Me,!1,[1,1]),n,f,oe),K||(P(),K=!0);const le=FC(Re,{handle:U,connectionMode:t,fromNodeId:a,fromHandleId:r,fromType:l?"target":"source",isValidConnection:E,doc:F,lib:h,flowId:m,nodeLookup:f});G=le.handleDomNode,L=le.connection,z=CG(!!U,le.isValid);const Ne=f.get(a),Te=Ne?yo(Ne,oe,Ke.Left,!0):we.from,ke={...we,from:Te,isValid:z,to:le.toHandle&&z?ql({x:le.toHandle.x,y:le.toHandle.y},Me):Q,toHandle:le.toHandle,toPosition:z&&le.toHandle?le.toHandle.position:YE[oe.position],toNode:le.toHandle?f.get(le.toHandle.nodeId):null,pointer:Q};N(ke),we=ke}function Ce(Re){if(!("touches"in Re&&Re.touches.length>0)){if(B){(U||G)&&L&&z&&(v==null||v(L));const{inProgress:Me,...le}=we,Ne={...le,toPosition:we.toHandle?we.toPosition:null};S==null||S(Re,Ne),o&&(j==null||j(Re,Ne))}b(),cancelAnimationFrame(M),K=!1,z=!1,L=null,G=null,F.removeEventListener("mousemove",de),F.removeEventListener("mouseup",Ce),F.removeEventListener("touchmove",de),F.removeEventListener("touchend",Ce)}}F.addEventListener("mousemove",de),F.addEventListener("mouseup",Ce),F.addEventListener("touchmove",de),F.addEventListener("touchend",Ce)}function FC(e,{handle:t,connectionMode:n,fromNodeId:r,fromHandleId:a,fromType:o,doc:l,lib:d,flowId:f,isValidConnection:h=$C,nodeLookup:g}){const m=o==="target",y=t?l.querySelector(`.${d}-flow__handle[data-id="${f}-${t==null?void 0:t.nodeId}-${t==null?void 0:t.id}-${t==null?void 0:t.type}"]`):null,{x:b,y:k}=ci(e),v=l.elementFromPoint(b,k),S=v!=null&&v.classList.contains(`${d}-flow__handle`)?v:y,E={handleDomNode:S,isValid:!1,connection:null,toHandle:null};if(S){const j=UC(void 0,S),N=S.getAttribute("data-nodeid"),_=S.getAttribute("data-handleid"),O=S.classList.contains("connectable"),T=S.classList.contains("connectableend");if(!N||!j)return E;const I={source:m?N:r,sourceHandle:m?_:a,target:m?r:N,targetHandle:m?a:_};E.connection=I;const F=O&&T&&(n===$l.Strict?m&&j==="source"||!m&&j==="target":N!==r||_!==a);E.isValid=F&&h(I),E.toHandle=BC(N,j,_,g,n,!0)}return E}const gb={onPointerDown:AG,isValid:FC};function TG({domNode:e,panZoom:t,getTransform:n,getViewScale:r}){const a=_r(e);function o({translateExtent:d,width:f,height:h,zoomStep:g=1,pannable:m=!0,zoomable:y=!0,inversePan:b=!1}){const k=N=>{if(N.sourceEvent.type!=="wheel"||!t)return;const _=n(),O=N.sourceEvent.ctrlKey&&Lu()?10:1,T=-N.sourceEvent.deltaY*(N.sourceEvent.deltaMode===1?.05:N.sourceEvent.deltaMode?1:.002)*g,I=_[2]*Math.pow(2,T*O);t.scaleTo(I)};let v=[0,0];const S=N=>{(N.sourceEvent.type==="mousedown"||N.sourceEvent.type==="touchstart")&&(v=[N.sourceEvent.clientX??N.sourceEvent.touches[0].clientX,N.sourceEvent.clientY??N.sourceEvent.touches[0].clientY])},E=N=>{const _=n();if(N.sourceEvent.type!=="mousemove"&&N.sourceEvent.type!=="touchmove"||!t)return;const O=[N.sourceEvent.clientX??N.sourceEvent.touches[0].clientX,N.sourceEvent.clientY??N.sourceEvent.touches[0].clientY],T=[O[0]-v[0],O[1]-v[1]];v=O;const I=r()*Math.max(_[2],Math.log(_[2]))*(b?-1:1),R={x:_[0]-T[0]*I,y:_[1]-T[1]*I},F=[[0,0],[f,h]];t.setViewportConstrained({x:R.x,y:R.y,zoom:_[2]},F,d)},j=mC().on("start",S).on("zoom",m?E:null).on("zoom.wheel",y?k:null);a.call(j,{})}function l(){a.on("zoom",null)}return{update:o,destroy:l,pointer:si}}const dp=e=>({x:e.x,y:e.y,zoom:e.k}),dy=({x:e,y:t,zoom:n})=>lp.translate(e,t).scale(n),gl=(e,t)=>e.target.closest(`.${t}`),qC=(e,t)=>t===2&&Array.isArray(e)&&e.includes(2),MG=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2,fy=(e,t=0,n=MG,r=()=>{})=>{const a=typeof t=="number"&&t>0;return a||r(),a?e.transition().duration(t).ease(n).on("end",r):e},HC=e=>{const t=e.ctrlKey&&Lu()?10:1;return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*t};function DG({zoomPanValues:e,noWheelClassName:t,d3Selection:n,d3Zoom:r,panOnScrollMode:a,panOnScrollSpeed:o,zoomOnPinch:l,onPanZoomStart:d,onPanZoom:f,onPanZoomEnd:h}){return g=>{if(gl(g,t))return g.ctrlKey&&g.preventDefault(),!1;g.preventDefault(),g.stopImmediatePropagation();const m=n.property("__zoom").k||1;if(g.ctrlKey&&l){const S=si(g),E=HC(g),j=m*Math.pow(2,E);r.scaleTo(n,j,S,g);return}const y=g.deltaMode===1?20:1;let b=a===oo.Vertical?0:g.deltaX*y,k=a===oo.Horizontal?0:g.deltaY*y;!Lu()&&g.shiftKey&&a!==oo.Vertical&&(b=g.deltaY*y,k=0),r.translateBy(n,-(b/m)*o,-(k/m)*o,{internal:!0});const v=dp(n.property("__zoom"));clearTimeout(e.panScrollTimeout),e.isPanScrolling?(f==null||f(g,v),e.panScrollTimeout=setTimeout(()=>{h==null||h(g,v),e.isPanScrolling=!1},150)):(e.isPanScrolling=!0,d==null||d(g,v))}}function OG({noWheelClassName:e,preventScrolling:t,d3ZoomHandler:n}){return function(r,a){const o=r.type==="wheel",l=!t&&o&&!r.ctrlKey,d=gl(r,e);if(r.ctrlKey&&o&&d&&r.preventDefault(),l||d)return null;r.preventDefault(),n.call(this,r,a)}}function RG({zoomPanValues:e,onDraggingChange:t,onPanZoomStart:n}){return r=>{var o,l,d;if((o=r.sourceEvent)!=null&&o.internal)return;const a=dp(r.transform);e.mouseButton=((l=r.sourceEvent)==null?void 0:l.button)||0,e.isZoomingOrPanning=!0,e.prevViewport=a,((d=r.sourceEvent)==null?void 0:d.type)==="mousedown"&&t(!0),n&&(n==null||n(r.sourceEvent,a))}}function LG({zoomPanValues:e,panOnDrag:t,onPaneContextMenu:n,onTransformChange:r,onPanZoom:a}){return o=>{var l,d;e.usedRightMouseButton=!!(n&&qC(t,e.mouseButton??0)),(l=o.sourceEvent)!=null&&l.sync||r([o.transform.x,o.transform.y,o.transform.k]),a&&!((d=o.sourceEvent)!=null&&d.internal)&&(a==null||a(o.sourceEvent,dp(o.transform)))}}function IG({zoomPanValues:e,panOnDrag:t,panOnScroll:n,onDraggingChange:r,onPanZoomEnd:a,onPaneContextMenu:o}){return l=>{var d;if(!((d=l.sourceEvent)!=null&&d.internal)&&(e.isZoomingOrPanning=!1,o&&qC(t,e.mouseButton??0)&&!e.usedRightMouseButton&&l.sourceEvent&&o(l.sourceEvent),e.usedRightMouseButton=!1,r(!1),a)){const f=dp(l.transform);e.prevViewport=f,clearTimeout(e.timerId),e.timerId=setTimeout(()=>{a==null||a(l.sourceEvent,f)},n?150:0)}}}function zG({zoomActivationKeyPressed:e,zoomOnScroll:t,zoomOnPinch:n,panOnDrag:r,panOnScroll:a,zoomOnDoubleClick:o,userSelectionActive:l,noWheelClassName:d,noPanClassName:f,lib:h,connectionInProgress:g}){return m=>{var S;const y=e||t,b=n&&m.ctrlKey,k=m.type==="wheel";if(m.button===1&&m.type==="mousedown"&&(gl(m,`${h}-flow__node`)||gl(m,`${h}-flow__edge`)))return!0;if(!r&&!y&&!a&&!o&&!n||l||g&&!k||gl(m,d)&&k||gl(m,f)&&(!k||a&&k&&!e)||!n&&m.ctrlKey&&k)return!1;if(!n&&m.type==="touchstart"&&((S=m.touches)==null?void 0:S.length)>1)return m.preventDefault(),!1;if(!y&&!a&&!b&&k||!r&&(m.type==="mousedown"||m.type==="touchstart")||Array.isArray(r)&&!r.includes(m.button)&&m.type==="mousedown")return!1;const v=Array.isArray(r)&&r.includes(m.button)||!m.button||m.button<=1;return(!m.ctrlKey||k)&&v}}function PG({domNode:e,minZoom:t,maxZoom:n,translateExtent:r,viewport:a,onPanZoom:o,onPanZoomStart:l,onPanZoomEnd:d,onDraggingChange:f}){const h={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},g=e.getBoundingClientRect(),m=mC().scaleExtent([t,n]).translateExtent(r),y=_r(e).call(m);j({x:a.x,y:a.y,zoom:Fl(a.zoom,t,n)},[[0,0],[g.width,g.height]],r);const b=y.on("wheel.zoom"),k=y.on("dblclick.zoom");m.wheelDelta(HC);async function v(U,q){return y?new Promise(Y=>{m==null||m.interpolate((q==null?void 0:q.interpolate)==="linear"?mu:th).transform(fy(y,q==null?void 0:q.duration,q==null?void 0:q.ease,()=>Y(!0)),U)}):!1}function S({noWheelClassName:U,noPanClassName:q,onPaneContextMenu:Y,userSelectionActive:D,panOnScroll:H,panOnDrag:B,panOnScrollMode:V,panOnScrollSpeed:Q,preventScrolling:K,zoomOnPinch:L,zoomOnScroll:z,zoomOnDoubleClick:G,zoomActivationKeyPressed:P,lib:oe,onTransformChange:be,connectionInProgress:xe,paneClickDistance:we,selectionOnDrag:J}){D&&!h.isZoomingOrPanning&&E();const de=H&&!P&&!D;m.clickDistance(J?1/0:!li(we)||we<0?0:we);const Ce=de?DG({zoomPanValues:h,noWheelClassName:U,d3Selection:y,d3Zoom:m,panOnScrollMode:V,panOnScrollSpeed:Q,zoomOnPinch:L,onPanZoomStart:l,onPanZoom:o,onPanZoomEnd:d}):OG({noWheelClassName:U,preventScrolling:K,d3ZoomHandler:b});y.on("wheel.zoom",Ce,{passive:!1});const Re=RG({zoomPanValues:h,onDraggingChange:f,onPanZoomStart:l});m.on("start",Re);const Me=LG({zoomPanValues:h,panOnDrag:B,onPaneContextMenu:!!Y,onPanZoom:o,onTransformChange:be});m.on("zoom",Me);const le=IG({zoomPanValues:h,panOnDrag:B,panOnScroll:H,onPaneContextMenu:Y,onPanZoomEnd:d,onDraggingChange:f});m.on("end",le);const Ne=zG({zoomActivationKeyPressed:P,panOnDrag:B,zoomOnScroll:z,panOnScroll:H,zoomOnDoubleClick:G,zoomOnPinch:L,userSelectionActive:D,noPanClassName:q,noWheelClassName:U,lib:oe,connectionInProgress:xe});m.filter(Ne),G?y.on("dblclick.zoom",k):y.on("dblclick.zoom",null)}function E(){m.on("zoom",null)}async function j(U,q,Y){const D=dy(U),H=m==null?void 0:m.constrain()(D,q,Y);return H&&await v(H),H}async function N(U,q){const Y=dy(U);return await v(Y,q),Y}function _(U){if(y){const q=dy(U),Y=y.property("__zoom");(Y.k!==U.zoom||Y.x!==U.x||Y.y!==U.y)&&(m==null||m.transform(y,q,null,{sync:!0}))}}function O(){const U=y?pC(y.node()):{x:0,y:0,k:1};return{x:U.x,y:U.y,zoom:U.k}}async function T(U,q){return y?new Promise(Y=>{m==null||m.interpolate((q==null?void 0:q.interpolate)==="linear"?mu:th).scaleTo(fy(y,q==null?void 0:q.duration,q==null?void 0:q.ease,()=>Y(!0)),U)}):!1}async function I(U,q){return y?new Promise(Y=>{m==null||m.interpolate((q==null?void 0:q.interpolate)==="linear"?mu:th).scaleBy(fy(y,q==null?void 0:q.duration,q==null?void 0:q.ease,()=>Y(!0)),U)}):!1}function R(U){m==null||m.scaleExtent(U)}function F(U){m==null||m.translateExtent(U)}function M(U){const q=!li(U)||U<0?0:U;m==null||m.clickDistance(q)}return{update:S,destroy:E,setViewport:N,setViewportConstrained:j,getViewport:O,scaleTo:T,scaleBy:I,setScaleExtent:R,setTranslateExtent:F,syncViewport:_,setClickDistance:M}}var Hl;(function(e){e.Line="line",e.Handle="handle"})(Hl||(Hl={}));function BG({width:e,prevWidth:t,height:n,prevHeight:r,affectsX:a,affectsY:o}){const l=e-t,d=n-r,f=[l>0?1:l<0?-1:0,d>0?1:d<0?-1:0];return l&&a&&(f[0]=f[0]*-1),d&&o&&(f[1]=f[1]*-1),f}function oS(e){const t=e.includes("right")||e.includes("left"),n=e.includes("bottom")||e.includes("top"),r=e.includes("left"),a=e.includes("top");return{isHorizontal:t,isVertical:n,affectsX:r,affectsY:a}}function ns(e,t){return Math.max(0,t-e)}function rs(e,t){return Math.max(0,e-t)}function qf(e,t,n){return Math.max(0,t-e,e-n)}function lS(e,t){return e?!t:t}function UG(e,t,n,r,a,o,l,d){let{affectsX:f,affectsY:h}=t;const{isHorizontal:g,isVertical:m}=t,y=g&&m,{xSnapped:b,ySnapped:k}=n,{minWidth:v,maxWidth:S,minHeight:E,maxHeight:j}=r,{x:N,y:_,width:O,height:T,aspectRatio:I}=e;let R=Math.floor(g?b-e.pointerX:0),F=Math.floor(m?k-e.pointerY:0);const M=O+(f?-R:R),U=T+(h?-F:F),q=-o[0]*O,Y=-o[1]*T;let D=qf(M,v,S),H=qf(U,E,j);if(l){let Q=0,K=0;f&&R<0?Q=ns(N+R+q,l[0][0]):!f&&R>0&&(Q=rs(N+M+q,l[1][0])),h&&F<0?K=ns(_+F+Y,l[0][1]):!h&&F>0&&(K=rs(_+U+Y,l[1][1])),D=Math.max(D,Q),H=Math.max(H,K)}if(d){let Q=0,K=0;f&&R>0?Q=rs(N+R,d[0][0]):!f&&R<0&&(Q=ns(N+M,d[1][0])),h&&F>0?K=rs(_+F,d[0][1]):!h&&F<0&&(K=ns(_+U,d[1][1])),D=Math.max(D,Q),H=Math.max(H,K)}if(a){if(g){const Q=qf(M/I,E,j)*I;if(D=Math.max(D,Q),l){let K=0;!f&&!h||f&&!h&&y?K=rs(_+Y+M/I,l[1][1])*I:K=ns(_+Y+(f?R:-R)/I,l[0][1])*I,D=Math.max(D,K)}if(d){let K=0;!f&&!h||f&&!h&&y?K=ns(_+M/I,d[1][1])*I:K=rs(_+(f?R:-R)/I,d[0][1])*I,D=Math.max(D,K)}}if(m){const Q=qf(U*I,v,S)/I;if(H=Math.max(H,Q),l){let K=0;!f&&!h||h&&!f&&y?K=rs(N+U*I+q,l[1][0])/I:K=ns(N+(h?F:-F)*I+q,l[0][0])/I,H=Math.max(H,K)}if(d){let K=0;!f&&!h||h&&!f&&y?K=ns(N+U*I,d[1][0])/I:K=rs(N+(h?F:-F)*I,d[0][0])/I,H=Math.max(H,K)}}}F=F+(F<0?H:-H),R=R+(R<0?D:-D),a&&(y?M>U*I?F=(lS(f,h)?-R:R)/I:R=(lS(f,h)?-F:F)*I:g?(F=R/I,h=f):(R=F*I,f=h));const B=f?N+R:N,V=h?_+F:_;return{width:O+(f?-R:R),height:T+(h?-F:F),x:o[0]*R*(f?-1:1)+B,y:o[1]*F*(h?-1:1)+V}}const KC={width:0,height:0,x:0,y:0},$G={...KC,pointerX:0,pointerY:0,aspectRatio:1};function FG(e,t,n){const r=t.position.x+e.position.x,a=t.position.y+e.position.y,o=e.measured.width??0,l=e.measured.height??0,d=n[0]*o,f=n[1]*l;return[[r-d,a-f],[r+o-d,a+l-f]]}function qG({domNode:e,nodeId:t,getStoreItems:n,onChange:r,onEnd:a}){const o=_r(e);let l={controlDirection:oS("bottom-right"),boundaries:{minWidth:0,minHeight:0,maxWidth:Number.MAX_VALUE,maxHeight:Number.MAX_VALUE},resizeDirection:void 0,keepAspectRatio:!1};function d({controlPosition:h,boundaries:g,keepAspectRatio:m,resizeDirection:y,onResizeStart:b,onResize:k,onResizeEnd:v,shouldResize:S}){let E={...KC},j={...$G};l={boundaries:g,resizeDirection:y,keepAspectRatio:m,controlDirection:oS(h)};let N,_=null,O=[],T,I,R,F=!1;const M=eC().on("start",U=>{const{nodeLookup:q,transform:Y,snapGrid:D,snapToGrid:H,nodeOrigin:B,paneDomNode:V}=n();if(N=q.get(t),!N)return;_=(V==null?void 0:V.getBoundingClientRect())??null;const{xSnapped:Q,ySnapped:K}=gu(U.sourceEvent,{transform:Y,snapGrid:D,snapToGrid:H,containerBounds:_});E={width:N.measured.width??0,height:N.measured.height??0,x:N.position.x??0,y:N.position.y??0},j={...E,pointerX:Q,pointerY:K,aspectRatio:E.width/E.height},T=void 0,I=go(N.extent)?N.extent:void 0,N.parentId&&(N.extent==="parent"||N.expandParent)&&(T=q.get(N.parentId)),T&&N.extent==="parent"&&(I=[[0,0],[T.measured.width,T.measured.height]]),O=[],R=void 0;for(const[L,z]of q)if(z.parentId===t&&(O.push({id:L,position:{...z.position},extent:z.extent}),z.extent==="parent"||z.expandParent)){const G=FG(z,N,z.origin??B);R?R=[[Math.min(G[0][0],R[0][0]),Math.min(G[0][1],R[0][1])],[Math.max(G[1][0],R[1][0]),Math.max(G[1][1],R[1][1])]]:R=G}b==null||b(U,{...E})}).on("drag",U=>{const{transform:q,snapGrid:Y,snapToGrid:D,nodeOrigin:H}=n(),B=gu(U.sourceEvent,{transform:q,snapGrid:Y,snapToGrid:D,containerBounds:_}),V=[];if(!N)return;const{x:Q,y:K,width:L,height:z}=E,G={},P=N.origin??H,{width:oe,height:be,x:xe,y:we}=UG(j,l.controlDirection,B,l.boundaries,l.keepAspectRatio,P,I,R),J=oe!==L,de=be!==z,Ce=xe!==Q&&J,Re=we!==K&&de;if(!Ce&&!Re&&!J&&!de)return;if((Ce||Re||P[0]===1||P[1]===1)&&(G.x=Ce?xe:E.x,G.y=Re?we:E.y,E.x=G.x,E.y=G.y,O.length>0)){const Te=xe-Q,ke=we-K;for(const Qe of O)Qe.position={x:Qe.position.x-Te+P[0]*(oe-L),y:Qe.position.y-ke+P[1]*(be-z)},V.push(Qe)}if((J||de)&&(G.width=J&&(!l.resizeDirection||l.resizeDirection==="horizontal")?oe:E.width,G.height=de&&(!l.resizeDirection||l.resizeDirection==="vertical")?be:E.height,E.width=G.width,E.height=G.height),T&&N.expandParent){const Te=P[0]*(G.width??0);G.x&&G.x<Te&&(E.x=Te,j.x=j.x-(G.x-Te));const ke=P[1]*(G.height??0);G.y&&G.y<ke&&(E.y=ke,j.y=j.y-(G.y-ke))}const Me=BG({width:E.width,prevWidth:L,height:E.height,prevHeight:z,affectsX:l.controlDirection.affectsX,affectsY:l.controlDirection.affectsY}),le={...E,direction:Me};(S==null?void 0:S(U,le))!==!1&&(F=!0,k==null||k(U,le),r(G,V))}).on("end",U=>{F&&(v==null||v(U,{...E}),a==null||a({...E}),F=!1)});o.call(M)}function f(){o.on(".drag",null)}return{update:d,destroy:f}}var hy={exports:{}},py={},my={exports:{}},gy={};/**
644
+ * @license React
645
+ * use-sync-external-store-shim.production.js
646
+ *
647
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
648
+ *
649
+ * This source code is licensed under the MIT license found in the
650
+ * LICENSE file in the root directory of this source tree.
651
+ */var cS;function HG(){if(cS)return gy;cS=1;var e=qu();function t(m,y){return m===y&&(m!==0||1/m===1/y)||m!==m&&y!==y}var n=typeof Object.is=="function"?Object.is:t,r=e.useState,a=e.useEffect,o=e.useLayoutEffect,l=e.useDebugValue;function d(m,y){var b=y(),k=r({inst:{value:b,getSnapshot:y}}),v=k[0].inst,S=k[1];return o(function(){v.value=b,v.getSnapshot=y,f(v)&&S({inst:v})},[m,b,y]),a(function(){return f(v)&&S({inst:v}),m(function(){f(v)&&S({inst:v})})},[m]),l(b),b}function f(m){var y=m.getSnapshot;m=m.value;try{var b=y();return!n(m,b)}catch{return!0}}function h(m,y){return y()}var g=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?h:d;return gy.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:g,gy}var uS;function KG(){return uS||(uS=1,my.exports=HG()),my.exports}/**
652
+ * @license React
653
+ * use-sync-external-store-shim/with-selector.production.js
654
+ *
655
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
656
+ *
657
+ * This source code is licensed under the MIT license found in the
658
+ * LICENSE file in the root directory of this source tree.
659
+ */var dS;function GG(){if(dS)return py;dS=1;var e=qu(),t=KG();function n(h,g){return h===g&&(h!==0||1/h===1/g)||h!==h&&g!==g}var r=typeof Object.is=="function"?Object.is:n,a=t.useSyncExternalStore,o=e.useRef,l=e.useEffect,d=e.useMemo,f=e.useDebugValue;return py.useSyncExternalStoreWithSelector=function(h,g,m,y,b){var k=o(null);if(k.current===null){var v={hasValue:!1,value:null};k.current=v}else v=k.current;k=d(function(){function E(T){if(!j){if(j=!0,N=T,T=y(T),b!==void 0&&v.hasValue){var I=v.value;if(b(I,T))return _=I}return _=T}if(I=_,r(N,T))return I;var R=y(T);return b!==void 0&&b(I,R)?(N=T,I):(N=T,_=R)}var j=!1,N,_,O=m===void 0?null:m;return[function(){return E(g())},O===null?void 0:function(){return E(O())}]},[g,m,y,b]);var S=a(h,k[0],k[1]);return l(function(){v.hasValue=!0,v.value=S},[S]),f(S),S},py}var fS;function VG(){return fS||(fS=1,hy.exports=GG()),hy.exports}var YG=VG();const QG=Fu(YG),WG={},hS=e=>{let t;const n=new Set,r=(g,m)=>{const y=typeof g=="function"?g(t):g;if(!Object.is(y,t)){const b=t;t=m??(typeof y!="object"||y===null)?y:Object.assign({},t,y),n.forEach(k=>k(t,b))}},a=()=>t,f={setState:r,getState:a,getInitialState:()=>h,subscribe:g=>(n.add(g),()=>n.delete(g)),destroy:()=>{(WG?"production":void 0)!=="production"&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),n.clear()}},h=t=e(r,a,f);return f},XG=e=>e?hS(e):hS,{useDebugValue:ZG}=UM,{useSyncExternalStoreWithSelector:JG}=QG,eV=e=>e;function GC(e,t=eV,n){const r=JG(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,n);return ZG(r),r}const pS=(e,t)=>{const n=XG(e),r=(a,o=t)=>GC(n,a,o);return Object.assign(r,n),r},tV=(e,t)=>e?pS(e,t):pS;function tn(e,t){if(Object.is(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(const[r,a]of e)if(!Object.is(a,t.get(r)))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(const r of e)if(!t.has(r))return!1;return!0}const n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(const r of n)if(!Object.prototype.hasOwnProperty.call(t,r)||!Object.is(e[r],t[r]))return!1;return!0}const fp=C.createContext(null),nV=fp.Provider,VC=hi.error001("react");function St(e,t){const n=C.useContext(fp);if(n===null)throw new Error(VC);return GC(n,e,t)}function nn(){const e=C.useContext(fp);if(e===null)throw new Error(VC);return C.useMemo(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe}),[e])}const mS={display:"none"},rV={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},YC="react-flow__node-desc",QC="react-flow__edge-desc",iV="react-flow__aria-live",aV=e=>e.ariaLiveMessage,sV=e=>e.ariaLabelConfig;function oV({rfId:e}){const t=St(aV);return u.jsx("div",{id:`${iV}-${e}`,"aria-live":"assertive","aria-atomic":"true",style:rV,children:t})}function lV({rfId:e,disableKeyboardA11y:t}){const n=St(sV);return u.jsxs(u.Fragment,{children:[u.jsx("div",{id:`${YC}-${e}`,style:mS,children:t?n["node.a11yDescription.default"]:n["node.a11yDescription.keyboardDisabled"]}),u.jsx("div",{id:`${QC}-${e}`,style:mS,children:n["edge.a11yDescription.default"]}),!t&&u.jsx(oV,{rfId:e})]})}const hp=C.forwardRef(({position:e="top-left",children:t,className:n,style:r,...a},o)=>{const l=`${e}`.split("-");return u.jsx("div",{className:_n(["react-flow__panel",n,...l]),style:r,ref:o,...a,children:t})});hp.displayName="Panel";const gS="https://reactflow.dev?utm_source=attribution";function cV({proOptions:e,position:t="bottom-right"}){return e!=null&&e.hideAttribution?null:u.jsx(hp,{position:t,className:"react-flow__attribution","data-message":`Please only hide this attribution when you are subscribed to React Flow Pro: ${gS}`,children:u.jsx("a",{href:gS,target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}const uV=e=>{const t=[],n=[];for(const[,r]of e.nodeLookup)r.selected&&t.push(r.internals.userNode);for(const[,r]of e.edgeLookup)r.selected&&n.push(r);return{selectedNodes:t,selectedEdges:n}},Hf=e=>e.id;function dV(e,t){return tn(e.selectedNodes.map(Hf),t.selectedNodes.map(Hf))&&tn(e.selectedEdges.map(Hf),t.selectedEdges.map(Hf))}function fV({onSelectionChange:e}){const t=nn(),{selectedNodes:n,selectedEdges:r}=St(uV,dV);return C.useEffect(()=>{const a={nodes:n,edges:r};e==null||e(a),t.getState().onSelectionChangeHandlers.forEach(o=>o(a))},[n,r,e]),null}const hV=e=>!!e.onSelectionChangeHandlers;function pV({onSelectionChange:e}){const t=St(hV);return e||t?u.jsx(fV,{onSelectionChange:e}):null}const WC=[0,0],mV={x:0,y:0,zoom:1},gV=["nodes","edges","defaultNodes","defaultEdges","onConnect","onConnectStart","onConnectEnd","onClickConnectStart","onClickConnectEnd","nodesDraggable","autoPanOnNodeFocus","nodesConnectable","nodesFocusable","edgesFocusable","edgesReconnectable","elevateNodesOnSelect","elevateEdgesOnSelect","minZoom","maxZoom","nodeExtent","onNodesChange","onEdgesChange","elementsSelectable","connectionMode","snapGrid","snapToGrid","translateExtent","connectOnClick","defaultEdgeOptions","fitView","fitViewOptions","onNodesDelete","onEdgesDelete","onDelete","onNodeDrag","onNodeDragStart","onNodeDragStop","onSelectionDrag","onSelectionDragStart","onSelectionDragStop","onMoveStart","onMove","onMoveEnd","noPanClassName","nodeOrigin","autoPanOnConnect","autoPanOnNodeDrag","onError","connectionRadius","isValidConnection","selectNodesOnDrag","nodeDragThreshold","connectionDragThreshold","onBeforeDelete","debug","autoPanSpeed","ariaLabelConfig","zIndexMode"],yS=[...gV,"rfId"],yV=e=>({setNodes:e.setNodes,setEdges:e.setEdges,setMinZoom:e.setMinZoom,setMaxZoom:e.setMaxZoom,setTranslateExtent:e.setTranslateExtent,setNodeExtent:e.setNodeExtent,reset:e.reset,setDefaultNodesAndEdges:e.setDefaultNodesAndEdges}),bS={translateExtent:Du,nodeOrigin:WC,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1"};function bV(e){const{setNodes:t,setEdges:n,setMinZoom:r,setMaxZoom:a,setTranslateExtent:o,setNodeExtent:l,reset:d,setDefaultNodesAndEdges:f}=St(yV,tn),h=nn();C.useEffect(()=>(f(e.defaultNodes,e.defaultEdges),()=>{g.current=bS,d()}),[]);const g=C.useRef(bS);return C.useEffect(()=>{for(const m of yS){const y=e[m],b=g.current[m];y!==b&&(typeof e[m]>"u"||(m==="nodes"?t(y):m==="edges"?n(y):m==="minZoom"?r(y):m==="maxZoom"?a(y):m==="translateExtent"?o(y):m==="nodeExtent"?l(y):m==="ariaLabelConfig"?h.setState({ariaLabelConfig:nG(y)}):m==="fitView"?h.setState({fitViewQueued:y}):m==="fitViewOptions"?h.setState({fitViewOptions:y}):h.setState({[m]:y})))}g.current=e},yS.map(m=>e[m])),null}function xS(){return typeof window>"u"||!window.matchMedia?null:window.matchMedia("(prefers-color-scheme: dark)")}function xV(e){var r;const[t,n]=C.useState(e==="system"?null:e);return C.useEffect(()=>{if(e!=="system"){n(e);return}const a=xS(),o=()=>n(a!=null&&a.matches?"dark":"light");return o(),a==null||a.addEventListener("change",o),()=>{a==null||a.removeEventListener("change",o)}},[e]),t!==null?t:(r=xS())!=null&&r.matches?"dark":"light"}const vS=typeof document<"u"?document:null;function Iu(e=null,t={target:vS,actInsideInputWithModifier:!0}){const[n,r]=C.useState(!1),a=C.useRef(!1),o=C.useRef(new Set([])),[l,d]=C.useMemo(()=>{if(e!==null){const h=(Array.isArray(e)?e:[e]).filter(m=>typeof m=="string").map(m=>m.replace("+",`
660
+ `).replace(`
661
+
662
+ `,`
663
+ +`).split(`
664
+ `)),g=h.reduce((m,y)=>m.concat(...y),[]);return[h,g]}return[[],[]]},[e]);return C.useEffect(()=>{const f=(t==null?void 0:t.target)??vS,h=(t==null?void 0:t.actInsideInputWithModifier)??!0;if(e!==null){const g=b=>{var S,E;if(a.current=b.ctrlKey||b.metaKey||b.shiftKey||b.altKey,(!a.current||a.current&&!h)&&AC(b))return!1;const v=kS(b.code,d);if(o.current.add(b[v]),wS(l,o.current,!1)){const j=((E=(S=b.composedPath)==null?void 0:S.call(b))==null?void 0:E[0])||b.target,N=(j==null?void 0:j.nodeName)==="BUTTON"||(j==null?void 0:j.nodeName)==="A";t.preventDefault!==!1&&(a.current||!N)&&b.preventDefault(),r(!0)}},m=b=>{const k=kS(b.code,d);wS(l,o.current,!0)?(r(!1),o.current.clear()):o.current.delete(b[k]),b.key==="Meta"&&o.current.clear(),a.current=!1},y=()=>{o.current.clear(),r(!1)};return f==null||f.addEventListener("keydown",g),f==null||f.addEventListener("keyup",m),window.addEventListener("blur",y),window.addEventListener("contextmenu",y),()=>{f==null||f.removeEventListener("keydown",g),f==null||f.removeEventListener("keyup",m),window.removeEventListener("blur",y),window.removeEventListener("contextmenu",y)}}},[e,r]),n}function wS(e,t,n){return e.filter(r=>n||r.length===t.size).some(r=>r.every(a=>t.has(a)))}function kS(e,t){return t.includes(e)?"code":"key"}const vV=()=>{const e=nn();return C.useMemo(()=>({zoomIn:async t=>{const{panZoom:n}=e.getState();return n?n.scaleBy(1.2,t):!1},zoomOut:async t=>{const{panZoom:n}=e.getState();return n?n.scaleBy(1/1.2,t):!1},zoomTo:async(t,n)=>{const{panZoom:r}=e.getState();return r?r.scaleTo(t,n):!1},getZoom:()=>e.getState().transform[2],setViewport:async(t,n)=>{const{transform:[r,a,o],panZoom:l}=e.getState();return l?(await l.setViewport({x:t.x??r,y:t.y??a,zoom:t.zoom??o},n),!0):!1},getViewport:()=>{const[t,n,r]=e.getState().transform;return{x:t,y:n,zoom:r}},setCenter:async(t,n,r)=>e.getState().setCenter(t,n,r),fitBounds:async(t,n)=>{const{width:r,height:a,minZoom:o,maxZoom:l,panZoom:d}=e.getState(),f=$x(t,r,a,o,l,(n==null?void 0:n.padding)??.1);return d?(await d.setViewport(f,{duration:n==null?void 0:n.duration,ease:n==null?void 0:n.ease,interpolate:n==null?void 0:n.interpolate}),!0):!1},screenToFlowPosition:(t,n={})=>{const{transform:r,snapGrid:a,snapToGrid:o,domNode:l}=e.getState();if(!l)return t;const{x:d,y:f}=l.getBoundingClientRect(),h={x:t.x-d,y:t.y-f},g=n.snapGrid??a,m=n.snapToGrid??o;return sd(h,r,m,g)},flowToScreenPosition:t=>{const{transform:n,domNode:r}=e.getState();if(!r)return t;const{x:a,y:o}=r.getBoundingClientRect(),l=ql(t,n);return{x:l.x+a,y:l.y+o}}}),[])};function XC(e,t){const n=[],r=new Map,a=[];for(const o of e)if(o.type==="add"){a.push(o);continue}else if(o.type==="remove"||o.type==="replace")r.set(o.id,[o]);else{const l=r.get(o.id);l?l.push(o):r.set(o.id,[o])}for(const o of t){const l=r.get(o.id);if(!l){n.push(o);continue}if(l[0].type==="remove")continue;if(l[0].type==="replace"){n.push({...l[0].item});continue}const d={...o};for(const f of l)wV(f,d);n.push(d)}return a.length&&a.forEach(o=>{o.index!==void 0?n.splice(o.index,0,{...o.item}):n.push({...o.item})}),n}function wV(e,t){switch(e.type){case"select":{t.selected=e.selected;break}case"position":{typeof e.position<"u"&&(t.position=e.position),typeof e.dragging<"u"&&(t.dragging=e.dragging);break}case"dimensions":{typeof e.dimensions<"u"&&(t.measured={...e.dimensions},e.setAttributes&&((e.setAttributes===!0||e.setAttributes==="width")&&(t.width=e.dimensions.width),(e.setAttributes===!0||e.setAttributes==="height")&&(t.height=e.dimensions.height))),typeof e.resizing=="boolean"&&(t.resizing=e.resizing);break}}}function ZC(e,t){return XC(e,t)}function JC(e,t){return XC(e,t)}function Ks(e,t){return{id:e,type:"select",selected:t}}function yl(e,t=new Set,n=!1){const r=[];for(const[a,o]of e){const l=t.has(a);!(o.selected===void 0&&!l)&&o.selected!==l&&(n&&(o.selected=l),r.push(Ks(o.id,l)))}return r}function ES({items:e=[],lookup:t}){var a;const n=[],r=new Map(e.map(o=>[o.id,o]));for(const[o,l]of e.entries()){const d=t.get(l.id),f=((a=d==null?void 0:d.internals)==null?void 0:a.userNode)??d;f!==void 0&&f!==l&&n.push({id:l.id,item:l,type:"replace"}),f===void 0&&n.push({item:l,type:"add",index:o})}for(const[o]of t)r.get(o)===void 0&&n.push({id:o,type:"remove"});return n}function SS(e){return{id:e.id,type:"remove"}}const kV=NC();function EV(e,t,n={}){return lG(e,t,{...n,onError:n.onError??kV})}const NS=e=>VK(e),SV=e=>vC(e);function eA(e){return C.forwardRef(e)}const NV=typeof window<"u"?C.useLayoutEffect:C.useEffect;function _S(e){const[t,n]=C.useState(BigInt(0)),[r]=C.useState(()=>_V(()=>n(a=>a+BigInt(1))));return NV(()=>{const a=r.get();a.length&&(e(a),r.reset())},[t]),r}function _V(e){let t=[];return{get:()=>t,reset:()=>{t=[]},push:n=>{t.push(n),e()}}}const tA=C.createContext(null);function jV({children:e}){const t=nn(),n=C.useCallback(d=>{const{nodes:f=[],setNodes:h,hasDefaultNodes:g,onNodesChange:m,nodeLookup:y,fitViewQueued:b,onNodesChangeMiddlewareMap:k}=t.getState();let v=f;for(const E of d)v=typeof E=="function"?E(v):E;let S=ES({items:v,lookup:y});for(const E of k.values())S=E(S);g&&h(v),S.length>0?m==null||m(S):b&&window.requestAnimationFrame(()=>{const{fitViewQueued:E,nodes:j,setNodes:N}=t.getState();E&&N(j)})},[]),r=_S(n),a=C.useCallback(d=>{const{edges:f=[],setEdges:h,hasDefaultEdges:g,onEdgesChange:m,edgeLookup:y}=t.getState();let b=f;for(const k of d)b=typeof k=="function"?k(b):k;g?h(b):m&&m(ES({items:b,lookup:y}))},[]),o=_S(a),l=C.useMemo(()=>({nodeQueue:r,edgeQueue:o}),[]);return u.jsx(tA.Provider,{value:l,children:e})}function CV(){const e=C.useContext(tA);if(!e)throw new Error("useBatchContext must be used within a BatchProvider");return e}const AV=e=>!!e.panZoom;function pp(){const e=vV(),t=nn(),n=CV(),r=St(AV),a=C.useMemo(()=>{const o=m=>t.getState().nodeLookup.get(m),l=m=>{n.nodeQueue.push(m)},d=m=>{n.edgeQueue.push(m)},f=m=>{var E,j;const{nodeLookup:y,nodeOrigin:b}=t.getState(),k=NS(m)?m:y.get(m.id),v=k.parentId?jC(k.position,k.measured,k.parentId,y,b):k.position,S={...k,position:v,width:((E=k.measured)==null?void 0:E.width)??k.width,height:((j=k.measured)==null?void 0:j.height)??k.height};return Ru(S)},h=(m,y,b={replace:!1})=>{l(k=>k.map(v=>{if(v.id===m){const S=typeof y=="function"?y(v):y;return b.replace&&NS(S)?S:{...v,...S}}return v}))},g=(m,y,b={replace:!1})=>{d(k=>k.map(v=>{if(v.id===m){const S=typeof y=="function"?y(v):y;return b.replace&&SV(S)?S:{...v,...S}}return v}))};return{getNodes:()=>t.getState().nodes.map(m=>({...m})),getNode:m=>{var y;return(y=o(m))==null?void 0:y.internals.userNode},getInternalNode:o,getEdges:()=>{const{edges:m=[]}=t.getState();return m.map(y=>({...y}))},getEdge:m=>t.getState().edgeLookup.get(m),setNodes:l,setEdges:d,addNodes:m=>{const y=Array.isArray(m)?m:[m];n.nodeQueue.push(b=>[...b,...y])},addEdges:m=>{const y=Array.isArray(m)?m:[m];n.edgeQueue.push(b=>[...b,...y])},toObject:()=>{const{nodes:m=[],edges:y=[],transform:b}=t.getState(),[k,v,S]=b;return{nodes:m.map(E=>({...E})),edges:y.map(E=>({...E})),viewport:{x:k,y:v,zoom:S}}},deleteElements:async({nodes:m=[],edges:y=[]})=>{const{nodes:b,edges:k,onNodesDelete:v,onEdgesDelete:S,triggerNodeChanges:E,triggerEdgeChanges:j,onDelete:N,onBeforeDelete:_}=t.getState(),{nodes:O,edges:T}=await ZK({nodesToRemove:m,edgesToRemove:y,nodes:b,edges:k,onBeforeDelete:_}),I=T.length>0,R=O.length>0;if(I){const F=T.map(SS);S==null||S(T),j(F)}if(R){const F=O.map(SS);v==null||v(O),E(F)}return(R||I)&&(N==null||N({nodes:O,edges:T})),{deletedNodes:O,deletedEdges:T}},getIntersectingNodes:(m,y=!0,b)=>{const k=WE(m),v=k?m:f(m),S=b!==void 0;return v?(b||t.getState().nodes).filter(E=>{const j=t.getState().nodeLookup.get(E.id);if(j&&!k&&(E.id===m.id||!j.internals.positionAbsolute))return!1;const N=Ru(S?E:j),_=Mh(N,v);return y&&_>0||_>=N.width*N.height||_>=v.width*v.height}):[]},isNodeIntersecting:(m,y,b=!0)=>{const v=WE(m)?m:f(m);if(!v)return!1;const S=Mh(v,y);return b&&S>0||S>=y.width*y.height||S>=v.width*v.height},updateNode:h,updateNodeData:(m,y,b={replace:!1})=>{h(m,k=>{const v=typeof y=="function"?y(k):y;return b.replace?{...k,data:v}:{...k,data:{...k.data,...v}}},b)},updateEdge:g,updateEdgeData:(m,y,b={replace:!1})=>{g(m,k=>{const v=typeof y=="function"?y(k):y;return b.replace?{...k,data:v}:{...k,data:{...k.data,...v}}},b)},getNodesBounds:m=>{const{nodeLookup:y,nodeOrigin:b}=t.getState();return YK(m,{nodeLookup:y,nodeOrigin:b})},getHandleConnections:({type:m,id:y,nodeId:b})=>{var k;return Array.from(((k=t.getState().connectionLookup.get(`${b}-${m}${y?`-${y}`:""}`))==null?void 0:k.values())??[])},getNodeConnections:({type:m,handleId:y,nodeId:b})=>{var k;return Array.from(((k=t.getState().connectionLookup.get(`${b}${m?y?`-${m}-${y}`:`-${m}`:""}`))==null?void 0:k.values())??[])},fitView:async m=>{const y=t.getState().fitViewResolver??tG();return t.setState({fitViewQueued:!0,fitViewOptions:m,fitViewResolver:y}),n.nodeQueue.push(b=>[...b]),y.promise}}},[]);return C.useMemo(()=>({...a,...e,viewportInitialized:r}),[r])}const jS=e=>e.selected,TV=typeof window<"u"?window:void 0;function MV({deleteKeyCode:e,multiSelectionKeyCode:t}){const n=nn(),{deleteElements:r}=pp(),a=Iu(e,{actInsideInputWithModifier:!1}),o=Iu(t,{target:TV});C.useEffect(()=>{if(a){const{edges:l,nodes:d}=n.getState();r({nodes:d.filter(jS),edges:l.filter(jS)}),n.setState({nodesSelectionActive:!1})}},[a]),C.useEffect(()=>{n.setState({multiSelectionActive:o})},[o])}function DV(e){const t=nn();C.useEffect(()=>{const n=()=>{var a,o,l,d;if(!e.current||!(((o=(a=e.current).checkVisibility)==null?void 0:o.call(a))??!0))return!1;const r=Fx(e.current);(r.height===0||r.width===0)&&((d=(l=t.getState()).onError)==null||d.call(l,"004",hi.error004())),t.setState({width:r.width||500,height:r.height||500})};if(e.current){n(),window.addEventListener("resize",n);const r=new ResizeObserver(()=>n());return r.observe(e.current),()=>{window.removeEventListener("resize",n),r&&e.current&&r.unobserve(e.current)}}},[])}const mp={position:"absolute",width:"100%",height:"100%",top:0,left:0},OV=e=>({userSelectionActive:e.userSelectionActive,lib:e.lib,connectionInProgress:e.connection.inProgress});function RV({onPaneContextMenu:e,zoomOnScroll:t=!0,zoomOnPinch:n=!0,panOnScroll:r=!1,panOnScrollSpeed:a=.5,panOnScrollMode:o=oo.Free,zoomOnDoubleClick:l=!0,panOnDrag:d=!0,defaultViewport:f,translateExtent:h,minZoom:g,maxZoom:m,zoomActivationKeyCode:y,preventScrolling:b=!0,children:k,noWheelClassName:v,noPanClassName:S,onViewportChange:E,isControlledViewport:j,paneClickDistance:N,selectionOnDrag:_}){const O=nn(),T=C.useRef(null),{userSelectionActive:I,lib:R,connectionInProgress:F}=St(OV,tn),M=Iu(y),U=C.useRef();DV(T);const q=C.useCallback(Y=>{E==null||E({x:Y[0],y:Y[1],zoom:Y[2]}),j||O.setState({transform:Y})},[E,j]);return C.useEffect(()=>{if(T.current){U.current=PG({domNode:T.current,minZoom:g,maxZoom:m,translateExtent:h,viewport:f,onDraggingChange:B=>O.setState(V=>V.paneDragging===B?V:{paneDragging:B}),onPanZoomStart:(B,V)=>{const{onViewportChangeStart:Q,onMoveStart:K}=O.getState();K==null||K(B,V),Q==null||Q(V)},onPanZoom:(B,V)=>{const{onViewportChange:Q,onMove:K}=O.getState();K==null||K(B,V),Q==null||Q(V)},onPanZoomEnd:(B,V)=>{const{onViewportChangeEnd:Q,onMoveEnd:K}=O.getState();K==null||K(B,V),Q==null||Q(V)}});const{x:Y,y:D,zoom:H}=U.current.getViewport();return O.setState({panZoom:U.current,transform:[Y,D,H],domNode:T.current.closest(".react-flow")}),()=>{var B;(B=U.current)==null||B.destroy()}}},[]),C.useEffect(()=>{var Y;(Y=U.current)==null||Y.update({onPaneContextMenu:e,zoomOnScroll:t,zoomOnPinch:n,panOnScroll:r,panOnScrollSpeed:a,panOnScrollMode:o,zoomOnDoubleClick:l,panOnDrag:d,zoomActivationKeyPressed:M,preventScrolling:b,noPanClassName:S,userSelectionActive:I,noWheelClassName:v,lib:R,onTransformChange:q,connectionInProgress:F,selectionOnDrag:_,paneClickDistance:N})},[e,t,n,r,a,o,l,d,M,b,S,I,v,R,q,F,_,N]),u.jsx("div",{className:"react-flow__renderer",ref:T,style:mp,children:k})}const LV=e=>({userSelectionActive:e.userSelectionActive,userSelectionRect:e.userSelectionRect});function IV(){const{userSelectionActive:e,userSelectionRect:t}=St(LV,tn);return e&&t?u.jsx("div",{className:"react-flow__selection react-flow__container",style:{width:t.width,height:t.height,transform:`translate(${t.x}px, ${t.y}px)`}}):null}const yy=(e,t)=>n=>{n.target===t.current&&(e==null||e(n))},zV=e=>({userSelectionActive:e.userSelectionActive,elementsSelectable:e.elementsSelectable,dragging:e.paneDragging,panBy:e.panBy,autoPanSpeed:e.autoPanSpeed});function PV({isSelecting:e,selectionKeyPressed:t,selectionMode:n=Ou.Full,panOnDrag:r,autoPanOnSelection:a,paneClickDistance:o,selectionOnDrag:l,onSelectionStart:d,onSelectionEnd:f,onPaneClick:h,onPaneContextMenu:g,onPaneScroll:m,onPaneMouseEnter:y,onPaneMouseMove:b,onPaneMouseLeave:k,children:v}){const S=C.useRef(0),E=nn(),{userSelectionActive:j,elementsSelectable:N,dragging:_,panBy:O,autoPanSpeed:T}=St(zV,tn),I=N&&(e||j),R=C.useRef(null),F=C.useRef(),M=C.useRef(new Set),U=C.useRef(new Set),q=C.useRef(!1),Y=C.useRef(!1),D=C.useRef({x:0,y:0}),H=C.useRef(!1),B=J=>{if(Y.current||q.current||E.getState().connection.inProgress){Y.current=!1,q.current=!1;return}h==null||h(J),E.getState().resetSelectedElements(),E.setState({nodesSelectionActive:!1})},V=J=>{if(Array.isArray(r)&&(r!=null&&r.includes(2))){J.preventDefault();return}g==null||g(J)},Q=m?J=>m(J):void 0,K=J=>{Y.current&&(J.stopPropagation(),Y.current=!1)},L=J=>{var Qe,re;const{domNode:de,transform:Ce}=E.getState();if(F.current=de==null?void 0:de.getBoundingClientRect(),!F.current)return;const Re=J.target===R.current;if(!Re&&!!J.target.closest(".nokey")||!e||!(l&&Re||t)||J.button!==0||!J.isPrimary)return;(re=(Qe=J.target)==null?void 0:Qe.setPointerCapture)==null||re.call(Qe,J.pointerId),Y.current=!1;const{x:Ne,y:Te}=ci(J.nativeEvent,F.current),ke=sd({x:Ne,y:Te},Ce);E.setState({userSelectionRect:{width:0,height:0,startX:ke.x,startY:ke.y,x:Ne,y:Te}}),Re||(J.stopPropagation(),J.preventDefault())};function z(J,de){const{userSelectionRect:Ce}=E.getState();if(!Ce)return;const{transform:Re,nodeLookup:Me,edgeLookup:le,connectionLookup:Ne,triggerNodeChanges:Te,triggerEdgeChanges:ke,defaultEdgeOptions:Qe}=E.getState(),re={x:Ce.startX,y:Ce.startY},{x:Ae,y:ue}=ql(re,Re),he={startX:re.x,startY:re.y,x:J<Ae?J:Ae,y:de<ue?de:ue,width:Math.abs(J-Ae),height:Math.abs(de-ue)},ge=M.current,Le=U.current;M.current=new Set(Bx(Me,he,Re,n===Ou.Partial,!0).map(Fe=>Fe.id)),U.current=new Set;const ze=(Qe==null?void 0:Qe.selectable)??!0;for(const Fe of M.current){const te=Ne.get(Fe);if(te)for(const{edgeId:ve}of te.values()){const Ie=le.get(ve);Ie&&(Ie.selectable??ze)&&U.current.add(ve)}}if(!XE(ge,M.current)){const Fe=yl(Me,M.current,!0);Te(Fe)}if(!XE(Le,U.current)){const Fe=yl(le,U.current);ke(Fe)}E.setState({userSelectionRect:he,userSelectionActive:!0,nodesSelectionActive:!1})}function G(){if(!a||!F.current)return;const[J,de]=Ux(D.current,F.current,T);O({x:J,y:de}).then(Ce=>{if(!Y.current||!Ce){S.current=requestAnimationFrame(G);return}const{x:Re,y:Me}=D.current;z(Re,Me),S.current=requestAnimationFrame(G)})}const P=()=>{cancelAnimationFrame(S.current),S.current=0,H.current=!1};C.useEffect(()=>()=>P(),[]);const oe=J=>{const{userSelectionRect:de,transform:Ce,resetSelectedElements:Re}=E.getState();if(!F.current||!de)return;const{x:Me,y:le}=ci(J.nativeEvent,F.current);D.current={x:Me,y:le};const Ne=ql({x:de.startX,y:de.startY},Ce);if(!Y.current){const Te=t?0:o;if(Math.hypot(Me-Ne.x,le-Ne.y)<=Te)return;Re(),d==null||d(J)}Y.current=!0,H.current||(G(),H.current=!0),z(Me,le)},be=J=>{var de,Ce;if(!I){J.target===R.current&&E.getState().connection.inProgress&&(q.current=!0);return}J.button===0&&((Ce=(de=J.target)==null?void 0:de.releasePointerCapture)==null||Ce.call(de,J.pointerId),!j&&J.target===R.current&&E.getState().userSelectionRect&&(B==null||B(J)),E.setState({userSelectionActive:!1,userSelectionRect:null}),Y.current&&(f==null||f(J),E.setState({nodesSelectionActive:M.current.size>0})),P())},xe=J=>{var de,Ce;(Ce=(de=J.target)==null?void 0:de.releasePointerCapture)==null||Ce.call(de,J.pointerId),P()},we=r===!0||Array.isArray(r)&&r.includes(0);return u.jsxs("div",{className:_n(["react-flow__pane",{draggable:we,dragging:_,selection:e}]),onClick:I?void 0:yy(B,R),onContextMenu:yy(V,R),onWheel:yy(Q,R),onPointerEnter:I?void 0:y,onPointerMove:I?oe:b,onPointerUp:be,onPointerCancel:I?xe:void 0,onPointerDownCapture:I?L:void 0,onClickCapture:I?K:void 0,onPointerLeave:k,ref:R,style:mp,children:[v,u.jsx(IV,{})]})}function yb({id:e,store:t,unselect:n=!1,nodeRef:r}){const{addSelectedNodes:a,unselectNodesAndEdges:o,multiSelectionActive:l,nodeLookup:d,onError:f}=t.getState(),h=d.get(e);if(!h){f==null||f("012",hi.error012(e));return}t.setState({nodesSelectionActive:!1}),h.selected?(n||h.selected&&l)&&(o({nodes:[h],edges:[]}),requestAnimationFrame(()=>{var g;return(g=r==null?void 0:r.current)==null?void 0:g.blur()})):a([e])}function nA({nodeRef:e,disabled:t=!1,noDragClassName:n,handleSelector:r,nodeId:a,isSelectable:o,nodeClickDistance:l}){const d=nn(),[f,h]=C.useState(!1),g=C.useRef();return C.useEffect(()=>{g.current=SG({getStoreItems:()=>d.getState(),onNodeMouseDown:m=>{yb({id:m,store:d,nodeRef:e})},onDragStart:()=>{h(!0)},onDragStop:()=>{h(!1)}})},[]),C.useEffect(()=>{if(!(t||!e.current||!g.current))return g.current.update({noDragClassName:n,handleSelector:r,domNode:e.current,isSelectable:o,nodeId:a,nodeClickDistance:l}),()=>{var m;(m=g.current)==null||m.destroy()}},[n,r,t,o,e,a,l]),f}const BV=e=>t=>t.selected&&(t.draggable||e&&typeof t.draggable>"u");function rA(){const e=nn();return C.useCallback(n=>{const{nodeExtent:r,snapToGrid:a,snapGrid:o,nodesDraggable:l,onError:d,updateNodePositions:f,nodeLookup:h,nodeOrigin:g}=e.getState(),m=new Map,y=BV(l),b=a?o[0]:5,k=a?o[1]:5,v=n.direction.x*b*n.factor,S=n.direction.y*k*n.factor;for(const[,E]of h){if(!y(E))continue;let j={x:E.internals.positionAbsolute.x+v,y:E.internals.positionAbsolute.y+S};a&&(j=ad(j,o));const{position:N,positionAbsolute:_}=wC({nodeId:E.id,nextPosition:j,nodeLookup:h,nodeExtent:r,nodeOrigin:g,onError:d});E.position=N,E.internals.positionAbsolute=_,m.set(E.id,E)}f(m)},[])}const Yx=C.createContext(null),UV=Yx.Provider;Yx.Consumer;const iA=()=>C.useContext(Yx),$V=e=>({connectOnClick:e.connectOnClick,noPanClassName:e.noPanClassName,rfId:e.rfId}),aA=C.createContext(null);function FV({children:e}){const t=St($V,tn);return u.jsx(aA.Provider,{value:t,children:e})}function qV(){const e=C.useContext(aA);if(!e)throw new Error("useHandleConfig must be used within a HandleConfigProvider");return e}const HV={connectingFrom:!1,connectingTo:!1,clickConnecting:!1,isPossibleEndHandle:!0,connectionInProcess:!1,clickConnectionInProcess:!1,valid:!1},KV=(e,t,n)=>r=>{const{connectionClickStartHandle:a,connectionMode:o,connection:l}=r,{fromHandle:d,toHandle:f,isValid:h}=l;if(!d&&!a)return HV;const g=(f==null?void 0:f.nodeId)===e&&(f==null?void 0:f.id)===t&&(f==null?void 0:f.type)===n;return{connectingFrom:(d==null?void 0:d.nodeId)===e&&(d==null?void 0:d.id)===t&&(d==null?void 0:d.type)===n,connectingTo:g,clickConnecting:(a==null?void 0:a.nodeId)===e&&(a==null?void 0:a.id)===t&&(a==null?void 0:a.type)===n,isPossibleEndHandle:o===$l.Strict?(d==null?void 0:d.type)!==n:e!==(d==null?void 0:d.nodeId)||t!==(d==null?void 0:d.id),connectionInProcess:!!d,clickConnectionInProcess:!!a,valid:g&&h}};function GV({type:e="source",position:t=Ke.Top,isValidConnection:n,isConnectable:r=!0,isConnectableStart:a=!0,isConnectableEnd:o=!0,id:l,onConnect:d,children:f,className:h,onMouseDown:g,onTouchStart:m,...y},b){var H,B;const k=l||null,v=e==="target",S=nn(),E=iA(),{connectOnClick:j,noPanClassName:N,rfId:_}=qV(),{connectingFrom:O,connectingTo:T,clickConnecting:I,isPossibleEndHandle:R,connectionInProcess:F,clickConnectionInProcess:M,valid:U}=St(KV(E,k,e),tn);E||(B=(H=S.getState()).onError)==null||B.call(H,"010",hi.error010());const q=V=>{const{defaultEdgeOptions:Q,onConnect:K,hasDefaultEdges:L}=S.getState(),z={...Q,...V};if(L){const{edges:G,setEdges:P,onError:oe}=S.getState();P(EV(z,G,{onError:oe}))}K==null||K(z),d==null||d(z)},Y=V=>{if(!E)return;const Q=TC(V.nativeEvent);if(a&&(Q&&V.button===0||!Q)){const K=S.getState();gb.onPointerDown(V.nativeEvent,{handleDomNode:V.currentTarget,autoPanOnConnect:K.autoPanOnConnect,connectionMode:K.connectionMode,connectionRadius:K.connectionRadius,domNode:K.domNode,nodeLookup:K.nodeLookup,lib:K.lib,isTarget:v,handleId:k,nodeId:E,flowId:K.rfId,panBy:K.panBy,cancelConnection:K.cancelConnection,onConnectStart:K.onConnectStart,onConnectEnd:(...L)=>{var z,G;return(G=(z=S.getState()).onConnectEnd)==null?void 0:G.call(z,...L)},updateConnection:K.updateConnection,onConnect:q,isValidConnection:n||((...L)=>{var z,G;return((G=(z=S.getState()).isValidConnection)==null?void 0:G.call(z,...L))??!0}),getTransform:()=>S.getState().transform,getFromHandle:()=>S.getState().connection.fromHandle,autoPanSpeed:K.autoPanSpeed,dragThreshold:K.connectionDragThreshold})}Q?g==null||g(V):m==null||m(V)},D=V=>{const{onClickConnectStart:Q,onClickConnectEnd:K,connectionClickStartHandle:L,connectionMode:z,isValidConnection:G,lib:P,rfId:oe,nodeLookup:be,connection:xe}=S.getState();if(!E||!L&&!a)return;if(!L){Q==null||Q(V.nativeEvent,{nodeId:E,handleId:k,handleType:e}),S.setState({connectionClickStartHandle:{nodeId:E,type:e,id:k}});return}const we=CC(V.target),J=n||G,{connection:de,isValid:Ce}=gb.isValid(V.nativeEvent,{handle:{nodeId:E,id:k,type:e},connectionMode:z,fromNodeId:L.nodeId,fromHandleId:L.id||null,fromType:L.type,isValidConnection:J,flowId:oe,doc:we,lib:P,nodeLookup:be});Ce&&de&&q(de);const Re=structuredClone(xe);delete Re.inProgress,Re.toPosition=Re.toHandle?Re.toHandle.position:null,K==null||K(V,Re),S.setState({connectionClickStartHandle:null})};return u.jsx("div",{"data-handleid":k,"data-nodeid":E,"data-handlepos":t,"data-id":`${_}-${E}-${k}-${e}`,className:_n(["react-flow__handle",`react-flow__handle-${t}`,"nodrag",N,h,{source:!v,target:v,connectable:r,connectablestart:a,connectableend:o,clickconnecting:I,connectingfrom:O,connectingto:T,valid:U,connectionindicator:r&&(!F||R)&&(F||M?o:a)}]),onMouseDown:Y,onTouchStart:Y,onClick:j?D:void 0,ref:b,...y,children:f})}const Ai=C.memo(eA(GV));function VV({data:e,isConnectable:t,sourcePosition:n=Ke.Bottom}){return u.jsxs(u.Fragment,{children:[e==null?void 0:e.label,u.jsx(Ai,{type:"source",position:n,isConnectable:t})]})}function YV({data:e,isConnectable:t,targetPosition:n=Ke.Top,sourcePosition:r=Ke.Bottom}){return u.jsxs(u.Fragment,{children:[u.jsx(Ai,{type:"target",position:n,isConnectable:t}),e==null?void 0:e.label,u.jsx(Ai,{type:"source",position:r,isConnectable:t})]})}function QV(){return null}function WV({data:e,isConnectable:t,targetPosition:n=Ke.Top}){return u.jsxs(u.Fragment,{children:[u.jsx(Ai,{type:"target",position:n,isConnectable:t}),e==null?void 0:e.label]})}const Dh={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},CS={input:VV,default:YV,output:WV,group:QV};function XV(e){var t,n,r,a;return e.internals.handleBounds===void 0?{width:e.width??e.initialWidth??((t=e.style)==null?void 0:t.width),height:e.height??e.initialHeight??((n=e.style)==null?void 0:n.height)}:{width:e.width??((r=e.style)==null?void 0:r.width),height:e.height??((a=e.style)==null?void 0:a.height)}}const ZV=e=>{const{width:t,height:n,x:r,y:a}=id(e.nodeLookup,{filter:o=>!!o.selected});return{width:li(t)?t:null,height:li(n)?n:null,userSelectionActive:e.userSelectionActive,transformString:`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]}) translate(${r}px,${a}px)`}};function JV({onSelectionContextMenu:e,noPanClassName:t,disableKeyboardA11y:n}){const r=nn(),{width:a,height:o,transformString:l,userSelectionActive:d}=St(ZV,tn),f=rA(),h=C.useRef(null);C.useEffect(()=>{var b;n||(b=h.current)==null||b.focus({preventScroll:!0})},[n]);const g=!d&&a!==null&&o!==null;if(nA({nodeRef:h,disabled:!g}),!g)return null;const m=e?b=>{const k=r.getState().nodes.filter(v=>v.selected);e(b,k)}:void 0,y=b=>{Object.prototype.hasOwnProperty.call(Dh,b.key)&&(b.preventDefault(),f({direction:Dh[b.key],factor:b.shiftKey?4:1}))};return u.jsx("div",{className:_n(["react-flow__nodesselection","react-flow__container",t]),style:{transform:l},children:u.jsx("div",{ref:h,className:"react-flow__nodesselection-rect",onContextMenu:m,tabIndex:n?void 0:-1,onKeyDown:n?void 0:y,style:{width:a,height:o}})})}const AS=typeof window<"u"?window:void 0,eY=e=>({nodesSelectionActive:e.nodesSelectionActive,userSelectionActive:e.userSelectionActive});function sA({children:e,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:a,onPaneContextMenu:o,onPaneScroll:l,paneClickDistance:d,deleteKeyCode:f,selectionKeyCode:h,selectionOnDrag:g,selectionMode:m,onSelectionStart:y,onSelectionEnd:b,multiSelectionKeyCode:k,panActivationKeyCode:v,zoomActivationKeyCode:S,elementsSelectable:E,zoomOnScroll:j,zoomOnPinch:N,panOnScroll:_,panOnScrollSpeed:O,panOnScrollMode:T,zoomOnDoubleClick:I,panOnDrag:R,autoPanOnSelection:F,defaultViewport:M,translateExtent:U,minZoom:q,maxZoom:Y,preventScrolling:D,onSelectionContextMenu:H,noWheelClassName:B,noPanClassName:V,disableKeyboardA11y:Q,onViewportChange:K,isControlledViewport:L}){const{nodesSelectionActive:z,userSelectionActive:G}=St(eY,tn),P=Iu(h,{target:AS}),oe=Iu(v,{target:AS}),be=oe||R,xe=oe||_,we=g&&be!==!0,J=P||G||we;return MV({deleteKeyCode:f,multiSelectionKeyCode:k}),u.jsx(RV,{onPaneContextMenu:o,elementsSelectable:E,zoomOnScroll:j,zoomOnPinch:N,panOnScroll:xe,panOnScrollSpeed:O,panOnScrollMode:T,zoomOnDoubleClick:I,panOnDrag:!P&&be,defaultViewport:M,translateExtent:U,minZoom:q,maxZoom:Y,zoomActivationKeyCode:S,preventScrolling:D,noWheelClassName:B,noPanClassName:V,onViewportChange:K,isControlledViewport:L,paneClickDistance:d,selectionOnDrag:we,children:u.jsxs(PV,{onSelectionStart:y,onSelectionEnd:b,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:r,onPaneMouseLeave:a,onPaneContextMenu:o,onPaneScroll:l,panOnDrag:be,autoPanOnSelection:F,isSelecting:!!J,selectionMode:m,selectionKeyPressed:P,paneClickDistance:d,selectionOnDrag:we,children:[e,z&&u.jsx(JV,{onSelectionContextMenu:H,noPanClassName:V,disableKeyboardA11y:Q})]})})}sA.displayName="FlowRenderer";const tY=C.memo(sA),nY=e=>t=>e?Bx(t.nodeLookup,{x:0,y:0,width:t.width,height:t.height},t.transform,!0).map(n=>n.id):Array.from(t.nodeLookup.keys());function rY(e){return St(C.useCallback(nY(e),[e]),tn)}const iY=e=>e.updateNodeInternals;function aY(){const e=St(iY),[t]=C.useState(()=>typeof ResizeObserver>"u"?null:new ResizeObserver(n=>{const r=new Map;n.forEach(a=>{const o=a.target.getAttribute("data-id");r.set(o,{id:o,nodeElement:a.target,force:!0})}),e(r)}));return C.useEffect(()=>()=>{t==null||t.disconnect()},[t]),t}function sY({node:e,nodeType:t,hasDimensions:n,resizeObserver:r}){const a=nn(),o=C.useRef(null),l=C.useRef(null),d=C.useRef(e.sourcePosition),f=C.useRef(e.targetPosition),h=C.useRef(t),g=n&&!!e.internals.handleBounds;return C.useEffect(()=>{o.current&&!e.hidden&&(!g||l.current!==o.current)&&(l.current&&(r==null||r.unobserve(l.current)),r==null||r.observe(o.current),l.current=o.current)},[g,e.hidden]),C.useEffect(()=>()=>{l.current&&(r==null||r.unobserve(l.current),l.current=null)},[]),C.useEffect(()=>{if(o.current){const m=h.current!==t,y=d.current!==e.sourcePosition,b=f.current!==e.targetPosition;(m||y||b)&&(h.current=t,d.current=e.sourcePosition,f.current=e.targetPosition,a.getState().updateNodeInternals(new Map([[e.id,{id:e.id,nodeElement:o.current,force:!0}]])))}},[e.id,t,e.sourcePosition,e.targetPosition]),o}function oY({id:e,onClick:t,onMouseEnter:n,onMouseMove:r,onMouseLeave:a,onContextMenu:o,onDoubleClick:l,nodesDraggable:d,elementsSelectable:f,nodesConnectable:h,nodesFocusable:g,resizeObserver:m,noDragClassName:y,noPanClassName:b,disableKeyboardA11y:k,rfId:v,nodeTypes:S,nodeClickDistance:E,onError:j}){const{node:N,internals:_,isParent:O}=St(J=>{const de=J.nodeLookup.get(e),Ce=J.parentLookup.has(e);return{node:de,internals:de.internals,isParent:Ce}},tn);let T=N.type||"default",I=(S==null?void 0:S[T])||CS[T];I===void 0&&(j==null||j("003",hi.error003(T)),T="default",I=(S==null?void 0:S.default)||CS.default);const R=!!(N.draggable||d&&typeof N.draggable>"u"),F=!!(N.selectable||f&&typeof N.selectable>"u"),M=!!(N.connectable||h&&typeof N.connectable>"u"),U=!!(N.focusable||g&&typeof N.focusable>"u"),q=nn(),Y=_C(N),D=sY({node:N,nodeType:T,hasDimensions:Y,resizeObserver:m}),H=nA({nodeRef:D,disabled:N.hidden||!R,noDragClassName:y,handleSelector:N.dragHandle,nodeId:e,isSelectable:F,nodeClickDistance:E}),B=rA();if(N.hidden)return null;const V=va(N),Q=XV(N),K=F||R||t||n||r||a,L=n?J=>n(J,{..._.userNode}):void 0,z=r?J=>r(J,{..._.userNode}):void 0,G=a?J=>a(J,{..._.userNode}):void 0,P=o?J=>o(J,{..._.userNode}):void 0,oe=l?J=>l(J,{..._.userNode}):void 0,be=J=>{const{selectNodesOnDrag:de,nodeDragThreshold:Ce}=q.getState();F&&(!de||!R||Ce>0)&&yb({id:e,store:q,nodeRef:D}),t&&t(J,{..._.userNode})},xe=J=>{if(!(AC(J.nativeEvent)||k)){if(gC.includes(J.key)&&F){const de=J.key==="Escape";yb({id:e,store:q,unselect:de,nodeRef:D})}else if(R&&N.selected&&Object.prototype.hasOwnProperty.call(Dh,J.key)){J.preventDefault();const{ariaLabelConfig:de}=q.getState();q.setState({ariaLiveMessage:de["node.a11yDescription.ariaLiveMessage"]({direction:J.key.replace("Arrow","").toLowerCase(),x:~~_.positionAbsolute.x,y:~~_.positionAbsolute.y})}),B({direction:Dh[J.key],factor:J.shiftKey?4:1})}}},we=()=>{var Ne;if(k||!((Ne=D.current)!=null&&Ne.matches(":focus-visible")))return;const{transform:J,width:de,height:Ce,autoPanOnNodeFocus:Re,setCenter:Me}=q.getState();if(!Re)return;Bx(new Map([[e,N]]),{x:0,y:0,width:de,height:Ce},J,!0).length>0||Me(N.position.x+V.width/2,N.position.y+V.height/2,{zoom:J[2]})};return u.jsx("div",{className:_n(["react-flow__node",`react-flow__node-${T}`,{[b]:R},N.className,{selected:N.selected,selectable:F,parent:O,draggable:R,dragging:H}]),ref:D,style:{zIndex:_.z,transform:`translate(${_.positionAbsolute.x}px,${_.positionAbsolute.y}px)`,pointerEvents:K?"all":"none",visibility:Y?"visible":"hidden",...N.style,...Q},"data-id":e,"data-testid":`rf__node-${e}`,onMouseEnter:L,onMouseMove:z,onMouseLeave:G,onContextMenu:P,onClick:be,onDoubleClick:oe,onKeyDown:U?xe:void 0,tabIndex:U?0:void 0,onFocus:U?we:void 0,role:N.ariaRole??(U?"group":void 0),"aria-roledescription":"node","aria-describedby":k?void 0:`${YC}-${v}`,"aria-label":N.ariaLabel,...N.domAttributes,children:u.jsx(UV,{value:e,children:u.jsx(I,{id:e,data:N.data,type:T,positionAbsoluteX:_.positionAbsolute.x,positionAbsoluteY:_.positionAbsolute.y,selected:N.selected??!1,selectable:F,draggable:R,deletable:N.deletable??!0,isConnectable:M,sourcePosition:N.sourcePosition,targetPosition:N.targetPosition,dragging:H,dragHandle:N.dragHandle,zIndex:_.z,parentId:N.parentId,...V})})})}var lY=C.memo(oY);const cY=e=>({nodesDraggable:e.nodesDraggable,nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,onError:e.onError});function oA(e){const{nodesDraggable:t,nodesConnectable:n,nodesFocusable:r,elementsSelectable:a,onError:o}=St(cY,tn),l=rY(e.onlyRenderVisibleElements),d=aY();return u.jsx("div",{className:"react-flow__nodes",style:mp,children:l.map(f=>u.jsx(lY,{id:f,nodeTypes:e.nodeTypes,nodeExtent:e.nodeExtent,onClick:e.onNodeClick,onMouseEnter:e.onNodeMouseEnter,onMouseMove:e.onNodeMouseMove,onMouseLeave:e.onNodeMouseLeave,onContextMenu:e.onNodeContextMenu,onDoubleClick:e.onNodeDoubleClick,noDragClassName:e.noDragClassName,noPanClassName:e.noPanClassName,rfId:e.rfId,disableKeyboardA11y:e.disableKeyboardA11y,resizeObserver:d,nodesDraggable:t,nodesConnectable:n,nodesFocusable:r,elementsSelectable:a,nodeClickDistance:e.nodeClickDistance,onError:o},f))})}oA.displayName="NodeRenderer";const uY=C.memo(oA);function dY(e){return St(C.useCallback(n=>{if(!e)return n.edges.map(a=>a.id);const r=[];if(n.width&&n.height)for(const a of n.edges){const o=n.nodeLookup.get(a.source),l=n.nodeLookup.get(a.target);o&&l&&aG({sourceNode:o,targetNode:l,width:n.width,height:n.height,transform:n.transform})&&r.push(a.id)}return r},[e]),tn)}const fY=({color:e="none",strokeWidth:t=1})=>{const n={strokeWidth:t,...e&&{stroke:e}};return u.jsx("polyline",{className:"arrow",style:n,strokeLinecap:"round",fill:"none",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4"})},hY=({color:e="none",strokeWidth:t=1})=>{const n={strokeWidth:t,...e&&{stroke:e,fill:e}};return u.jsx("polyline",{className:"arrowclosed",style:n,strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"})},TS={[Ah.Arrow]:fY,[Ah.ArrowClosed]:hY};function pY(e){const t=nn();return C.useMemo(()=>{var a,o;return Object.prototype.hasOwnProperty.call(TS,e)?TS[e]:((o=(a=t.getState()).onError)==null||o.call(a,"009",hi.error009(e)),null)},[e])}const mY=({id:e,type:t,color:n,width:r=12.5,height:a=12.5,markerUnits:o="strokeWidth",strokeWidth:l,orient:d="auto-start-reverse"})=>{const f=pY(t);return f?u.jsx("marker",{className:"react-flow__arrowhead",id:e,markerWidth:`${r}`,markerHeight:`${a}`,viewBox:"-10 -10 20 20",markerUnits:o,orient:d,refX:"0",refY:"0",children:u.jsx(f,{color:n,strokeWidth:l})}):null},lA=({defaultColor:e,rfId:t})=>{const n=St(o=>o.edges),r=St(o=>o.defaultEdgeOptions),a=C.useMemo(()=>hG(n,{id:t,defaultColor:e,defaultMarkerStart:r==null?void 0:r.markerStart,defaultMarkerEnd:r==null?void 0:r.markerEnd}),[n,r,t,e]);return a.length?u.jsx("svg",{className:"react-flow__marker","aria-hidden":"true",children:u.jsx("defs",{children:a.map(o=>u.jsx(mY,{id:o.id,type:o.type,color:o.color,width:o.width,height:o.height,markerUnits:o.markerUnits,strokeWidth:o.strokeWidth,orient:o.orient},o.id))})}):null};lA.displayName="MarkerDefinitions";var gY=C.memo(lA);function cA({x:e,y:t,label:n,labelStyle:r,labelShowBg:a=!0,labelBgStyle:o,labelBgPadding:l=[2,4],labelBgBorderRadius:d=2,children:f,className:h,...g}){const[m,y]=C.useState({x:1,y:0,width:0,height:0}),b=_n(["react-flow__edge-textwrapper",h]),k=C.useRef(null);return C.useEffect(()=>{if(k.current){const v=k.current.getBBox();y({x:v.x,y:v.y,width:v.width,height:v.height})}},[n]),n?u.jsxs("g",{transform:`translate(${e-m.width/2} ${t-m.height/2})`,className:b,visibility:m.width?"visible":"hidden",...g,children:[a&&u.jsx("rect",{width:m.width+2*l[0],x:-l[0],y:-l[1],height:m.height+2*l[1],className:"react-flow__edge-textbg",style:o,rx:d,ry:d}),u.jsx("text",{className:"react-flow__edge-text",y:m.height/2,dy:"0.3em",ref:k,style:r,children:n}),f]}):null}cA.displayName="EdgeText";const yY=C.memo(cA);function gp({path:e,labelX:t,labelY:n,label:r,labelStyle:a,labelShowBg:o,labelBgStyle:l,labelBgPadding:d,labelBgBorderRadius:f,interactionWidth:h=20,...g}){return u.jsxs(u.Fragment,{children:[u.jsx("path",{...g,d:e,fill:"none",className:_n(["react-flow__edge-path",g.className])}),h?u.jsx("path",{d:e,fill:"none",strokeOpacity:0,strokeWidth:h,className:"react-flow__edge-interaction"}):null,r&&li(t)&&li(n)?u.jsx(yY,{x:t,y:n,label:r,labelStyle:a,labelShowBg:o,labelBgStyle:l,labelBgPadding:d,labelBgBorderRadius:f}):null]})}function MS({pos:e,x1:t,y1:n,x2:r,y2:a}){return e===Ke.Left||e===Ke.Right?[.5*(t+r),n]:[t,.5*(n+a)]}function uA({sourceX:e,sourceY:t,sourcePosition:n=Ke.Bottom,targetX:r,targetY:a,targetPosition:o=Ke.Top}){const[l,d]=MS({pos:n,x1:e,y1:t,x2:r,y2:a}),[f,h]=MS({pos:o,x1:r,y1:a,x2:e,y2:t}),[g,m,y,b]=MC({sourceX:e,sourceY:t,targetX:r,targetY:a,sourceControlX:l,sourceControlY:d,targetControlX:f,targetControlY:h});return[`M${e},${t} C${l},${d} ${f},${h} ${r},${a}`,g,m,y,b]}function dA(e){return C.memo(({id:t,sourceX:n,sourceY:r,targetX:a,targetY:o,sourcePosition:l,targetPosition:d,label:f,labelStyle:h,labelShowBg:g,labelBgStyle:m,labelBgPadding:y,labelBgBorderRadius:b,style:k,markerEnd:v,markerStart:S,interactionWidth:E})=>{const[j,N,_]=uA({sourceX:n,sourceY:r,sourcePosition:l,targetX:a,targetY:o,targetPosition:d}),O=e.isInternal?void 0:t;return u.jsx(gp,{id:O,path:j,labelX:N,labelY:_,label:f,labelStyle:h,labelShowBg:g,labelBgStyle:m,labelBgPadding:y,labelBgBorderRadius:b,style:k,markerEnd:v,markerStart:S,interactionWidth:E})})}const bY=dA({isInternal:!1}),fA=dA({isInternal:!0});bY.displayName="SimpleBezierEdge";fA.displayName="SimpleBezierEdgeInternal";function hA(e){return C.memo(({id:t,sourceX:n,sourceY:r,targetX:a,targetY:o,label:l,labelStyle:d,labelShowBg:f,labelBgStyle:h,labelBgPadding:g,labelBgBorderRadius:m,style:y,sourcePosition:b=Ke.Bottom,targetPosition:k=Ke.Top,markerEnd:v,markerStart:S,pathOptions:E,interactionWidth:j})=>{const[N,_,O]=hb({sourceX:n,sourceY:r,sourcePosition:b,targetX:a,targetY:o,targetPosition:k,borderRadius:E==null?void 0:E.borderRadius,offset:E==null?void 0:E.offset,stepPosition:E==null?void 0:E.stepPosition}),T=e.isInternal?void 0:t;return u.jsx(gp,{id:T,path:N,labelX:_,labelY:O,label:l,labelStyle:d,labelShowBg:f,labelBgStyle:h,labelBgPadding:g,labelBgBorderRadius:m,style:y,markerEnd:v,markerStart:S,interactionWidth:j})})}const pA=hA({isInternal:!1}),mA=hA({isInternal:!0});pA.displayName="SmoothStepEdge";mA.displayName="SmoothStepEdgeInternal";function gA(e){return C.memo(({id:t,...n})=>{var a;const r=e.isInternal?void 0:t;return u.jsx(pA,{...n,id:r,pathOptions:C.useMemo(()=>{var o;return{borderRadius:0,offset:(o=n.pathOptions)==null?void 0:o.offset}},[(a=n.pathOptions)==null?void 0:a.offset])})})}const xY=gA({isInternal:!1}),yA=gA({isInternal:!0});xY.displayName="StepEdge";yA.displayName="StepEdgeInternal";function bA(e){return C.memo(({id:t,sourceX:n,sourceY:r,targetX:a,targetY:o,label:l,labelStyle:d,labelShowBg:f,labelBgStyle:h,labelBgPadding:g,labelBgBorderRadius:m,style:y,markerEnd:b,markerStart:k,interactionWidth:v})=>{const[S,E,j]=RC({sourceX:n,sourceY:r,targetX:a,targetY:o}),N=e.isInternal?void 0:t;return u.jsx(gp,{id:N,path:S,labelX:E,labelY:j,label:l,labelStyle:d,labelShowBg:f,labelBgStyle:h,labelBgPadding:g,labelBgBorderRadius:m,style:y,markerEnd:b,markerStart:k,interactionWidth:v})})}const vY=bA({isInternal:!1}),xA=bA({isInternal:!0});vY.displayName="StraightEdge";xA.displayName="StraightEdgeInternal";function vA(e){return C.memo(({id:t,sourceX:n,sourceY:r,targetX:a,targetY:o,sourcePosition:l=Ke.Bottom,targetPosition:d=Ke.Top,label:f,labelStyle:h,labelShowBg:g,labelBgStyle:m,labelBgPadding:y,labelBgBorderRadius:b,style:k,markerEnd:v,markerStart:S,pathOptions:E,interactionWidth:j})=>{const[N,_,O]=DC({sourceX:n,sourceY:r,sourcePosition:l,targetX:a,targetY:o,targetPosition:d,curvature:E==null?void 0:E.curvature}),T=e.isInternal?void 0:t;return u.jsx(gp,{id:T,path:N,labelX:_,labelY:O,label:f,labelStyle:h,labelShowBg:g,labelBgStyle:m,labelBgPadding:y,labelBgBorderRadius:b,style:k,markerEnd:v,markerStart:S,interactionWidth:j})})}const wY=vA({isInternal:!1}),wA=vA({isInternal:!0});wY.displayName="BezierEdge";wA.displayName="BezierEdgeInternal";const DS={default:wA,straight:xA,step:yA,smoothstep:mA,simplebezier:fA},OS={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null,zIndex:void 0},kY=(e,t,n)=>n===Ke.Left?e-t:n===Ke.Right?e+t:e,EY=(e,t,n)=>n===Ke.Top?e-t:n===Ke.Bottom?e+t:e,RS="react-flow__edgeupdater";function LS({position:e,centerX:t,centerY:n,radius:r=10,onMouseDown:a,onMouseEnter:o,onMouseOut:l,type:d}){return u.jsx("circle",{onMouseDown:a,onMouseEnter:o,onMouseOut:l,className:_n([RS,`${RS}-${d}`]),cx:kY(t,r,e),cy:EY(n,r,e),r,stroke:"transparent",fill:"transparent"})}function SY({isReconnectable:e,reconnectRadius:t,edge:n,sourceX:r,sourceY:a,targetX:o,targetY:l,sourcePosition:d,targetPosition:f,onReconnect:h,onReconnectStart:g,onReconnectEnd:m,setReconnecting:y,setUpdateHover:b}){const k=nn(),v=(_,O)=>{if(_.button!==0)return;const{autoPanOnConnect:T,domNode:I,connectionMode:R,connectionRadius:F,lib:M,onConnectStart:U,cancelConnection:q,nodeLookup:Y,rfId:D,panBy:H,updateConnection:B}=k.getState(),V=O.type==="target",Q=(z,G)=>{y(!1),m==null||m(z,n,O.type,G)},K=z=>h==null?void 0:h(n,z),L=(z,G)=>{y(!0),g==null||g(_,n,O.type),U==null||U(z,G)};gb.onPointerDown(_.nativeEvent,{autoPanOnConnect:T,connectionMode:R,connectionRadius:F,domNode:I,handleId:O.id,nodeId:O.nodeId,nodeLookup:Y,isTarget:V,edgeUpdaterType:O.type,lib:M,flowId:D,cancelConnection:q,panBy:H,isValidConnection:(...z)=>{var G,P;return((P=(G=k.getState()).isValidConnection)==null?void 0:P.call(G,...z))??!0},onConnect:K,onConnectStart:L,onConnectEnd:(...z)=>{var G,P;return(P=(G=k.getState()).onConnectEnd)==null?void 0:P.call(G,...z)},onReconnectEnd:Q,updateConnection:B,getTransform:()=>k.getState().transform,getFromHandle:()=>k.getState().connection.fromHandle,dragThreshold:k.getState().connectionDragThreshold,handleDomNode:_.currentTarget})},S=_=>v(_,{nodeId:n.target,id:n.targetHandle??null,type:"target"}),E=_=>v(_,{nodeId:n.source,id:n.sourceHandle??null,type:"source"}),j=()=>b(!0),N=()=>b(!1);return u.jsxs(u.Fragment,{children:[(e===!0||e==="source")&&u.jsx(LS,{position:d,centerX:r,centerY:a,radius:t,onMouseDown:S,onMouseEnter:j,onMouseOut:N,type:"source"}),(e===!0||e==="target")&&u.jsx(LS,{position:f,centerX:o,centerY:l,radius:t,onMouseDown:E,onMouseEnter:j,onMouseOut:N,type:"target"})]})}function NY({id:e,edgesFocusable:t,edgesReconnectable:n,elementsSelectable:r,onClick:a,onDoubleClick:o,onContextMenu:l,onMouseEnter:d,onMouseMove:f,onMouseLeave:h,reconnectRadius:g,onReconnect:m,onReconnectStart:y,onReconnectEnd:b,rfId:k,edgeTypes:v,noPanClassName:S,onError:E,disableKeyboardA11y:j}){let N=St(Me=>Me.edgeLookup.get(e));const _=St(Me=>Me.defaultEdgeOptions);N=_?{..._,...N}:N;let O=N.type||"default",T=(v==null?void 0:v[O])||DS[O];T===void 0&&(E==null||E("011",hi.error011(O)),O="default",T=(v==null?void 0:v.default)||DS.default);const I=!!(N.focusable||t&&typeof N.focusable>"u"),R=typeof m<"u"&&(N.reconnectable||n&&typeof N.reconnectable>"u"),F=!!(N.selectable||r&&typeof N.selectable>"u"),M=C.useRef(null),[U,q]=C.useState(!1),[Y,D]=C.useState(!1),H=nn(),{zIndex:B=N.zIndex,sourceX:V,sourceY:Q,targetX:K,targetY:L,sourcePosition:z,targetPosition:G}=St(C.useCallback(Me=>{const le=Me.nodeLookup.get(N.source),Ne=Me.nodeLookup.get(N.target);if(!le||!Ne)return OS;const Te=fG({id:e,sourceNode:le,targetNode:Ne,sourceHandle:N.sourceHandle||null,targetHandle:N.targetHandle||null,connectionMode:Me.connectionMode,onError:E}),ke=iG({selected:N.selected,zIndex:N.zIndex,sourceNode:le,targetNode:Ne,elevateOnSelect:Me.elevateEdgesOnSelect,zIndexMode:Me.zIndexMode});return{...Te||OS,zIndex:ke}},[N.source,N.target,N.sourceHandle,N.targetHandle,N.selected,N.zIndex]),tn),P=C.useMemo(()=>N.markerStart?`url('#${pb(N.markerStart,k)}')`:void 0,[N.markerStart,k]),oe=C.useMemo(()=>N.markerEnd?`url('#${pb(N.markerEnd,k)}')`:void 0,[N.markerEnd,k]);if(N.hidden||V===null||Q===null||K===null||L===null)return null;const be=Me=>{var ke;const{addSelectedEdges:le,unselectNodesAndEdges:Ne,multiSelectionActive:Te}=H.getState();F&&(H.setState({nodesSelectionActive:!1}),N.selected&&Te?(Ne({nodes:[],edges:[N]}),(ke=M.current)==null||ke.blur()):le([e])),a&&a(Me,N)},xe=o?Me=>{o(Me,{...N})}:void 0,we=l?Me=>{l(Me,{...N})}:void 0,J=d?Me=>{d(Me,{...N})}:void 0,de=f?Me=>{f(Me,{...N})}:void 0,Ce=h?Me=>{h(Me,{...N})}:void 0,Re=Me=>{var le;if(!j&&gC.includes(Me.key)&&F){const{unselectNodesAndEdges:Ne,addSelectedEdges:Te}=H.getState();Me.key==="Escape"?((le=M.current)==null||le.blur(),Ne({edges:[N]})):Te([e])}};return u.jsx("svg",{style:{zIndex:B},children:u.jsxs("g",{className:_n(["react-flow__edge",`react-flow__edge-${O}`,N.className,S,{selected:N.selected,animated:N.animated,inactive:!F&&!a,updating:U,selectable:F}]),onClick:be,onDoubleClick:xe,onContextMenu:we,onMouseEnter:J,onMouseMove:de,onMouseLeave:Ce,onKeyDown:I?Re:void 0,tabIndex:I?0:void 0,role:N.ariaRole??(I?"group":"img"),"aria-roledescription":"edge","data-id":e,"data-testid":`rf__edge-${e}`,"aria-label":N.ariaLabel===null?void 0:N.ariaLabel||`Edge from ${N.source} to ${N.target}`,"aria-describedby":I?`${QC}-${k}`:void 0,ref:M,...N.domAttributes,children:[!Y&&u.jsx(T,{id:e,source:N.source,target:N.target,type:N.type,selected:N.selected,animated:N.animated,selectable:F,deletable:N.deletable??!0,label:N.label,labelStyle:N.labelStyle,labelShowBg:N.labelShowBg,labelBgStyle:N.labelBgStyle,labelBgPadding:N.labelBgPadding,labelBgBorderRadius:N.labelBgBorderRadius,sourceX:V,sourceY:Q,targetX:K,targetY:L,sourcePosition:z,targetPosition:G,data:N.data,style:N.style,sourceHandleId:N.sourceHandle,targetHandleId:N.targetHandle,markerStart:P,markerEnd:oe,pathOptions:"pathOptions"in N?N.pathOptions:void 0,interactionWidth:N.interactionWidth}),R&&u.jsx(SY,{edge:N,isReconnectable:R,reconnectRadius:g,onReconnect:m,onReconnectStart:y,onReconnectEnd:b,sourceX:V,sourceY:Q,targetX:K,targetY:L,sourcePosition:z,targetPosition:G,setUpdateHover:q,setReconnecting:D})]})})}var _Y=C.memo(NY);const jY=e=>({edgesFocusable:e.edgesFocusable,edgesReconnectable:e.edgesReconnectable,elementsSelectable:e.elementsSelectable,connectionMode:e.connectionMode,onError:e.onError});function kA({defaultMarkerColor:e,onlyRenderVisibleElements:t,rfId:n,edgeTypes:r,noPanClassName:a,onReconnect:o,onEdgeContextMenu:l,onEdgeMouseEnter:d,onEdgeMouseMove:f,onEdgeMouseLeave:h,onEdgeClick:g,reconnectRadius:m,onEdgeDoubleClick:y,onReconnectStart:b,onReconnectEnd:k,disableKeyboardA11y:v}){const{edgesFocusable:S,edgesReconnectable:E,elementsSelectable:j,onError:N}=St(jY,tn),_=dY(t);return u.jsxs("div",{className:"react-flow__edges",children:[u.jsx(gY,{defaultColor:e,rfId:n}),_.map(O=>u.jsx(_Y,{id:O,edgesFocusable:S,edgesReconnectable:E,elementsSelectable:j,noPanClassName:a,onReconnect:o,onContextMenu:l,onMouseEnter:d,onMouseMove:f,onMouseLeave:h,onClick:g,reconnectRadius:m,onDoubleClick:y,onReconnectStart:b,onReconnectEnd:k,rfId:n,onError:N,edgeTypes:r,disableKeyboardA11y:v},O))]})}kA.displayName="EdgeRenderer";const CY=C.memo(kA),AY=e=>`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`;function TY({children:e}){const t=St(AY);return u.jsx("div",{className:"react-flow__viewport xyflow__viewport react-flow__container",style:{transform:t},children:e})}function MY(e){const t=pp(),n=C.useRef(!1);C.useEffect(()=>{!n.current&&t.viewportInitialized&&e&&(setTimeout(()=>e(t),1),n.current=!0)},[e,t.viewportInitialized])}const DY=e=>{var t;return(t=e.panZoom)==null?void 0:t.syncViewport};function OY(e){const t=St(DY),n=nn();return C.useEffect(()=>{e&&(t==null||t(e),n.setState({transform:[e.x,e.y,e.zoom]}))},[e,t]),null}function RY(e){return e.connection.inProgress?{...e.connection,to:sd(e.connection.to,e.transform)}:{...e.connection}}function LY(e){return RY}function IY(e){const t=LY();return St(t,tn)}const zY=e=>({nodesConnectable:e.nodesConnectable,isValid:e.connection.isValid,inProgress:e.connection.inProgress,width:e.width,height:e.height});function PY({containerStyle:e,style:t,type:n,component:r}){const{nodesConnectable:a,width:o,height:l,isValid:d,inProgress:f}=St(zY,tn);return!(o&&a&&f)?null:u.jsx("svg",{style:e,width:o,height:l,className:"react-flow__connectionline react-flow__container",children:u.jsx("g",{className:_n(["react-flow__connection",xC(d)]),children:u.jsx(EA,{style:t,type:n,CustomComponent:r,isValid:d})})})}const EA=({style:e,type:t=ss.Bezier,CustomComponent:n,isValid:r})=>{const{inProgress:a,from:o,fromNode:l,fromHandle:d,fromPosition:f,to:h,toNode:g,toHandle:m,toPosition:y,pointer:b}=IY();if(!a)return;if(n)return u.jsx(n,{connectionLineType:t,connectionLineStyle:e,fromNode:l,fromHandle:d,fromX:o.x,fromY:o.y,toX:h.x,toY:h.y,fromPosition:f,toPosition:y,connectionStatus:xC(r),toNode:g,toHandle:m,pointer:b});let k="";const v={sourceX:o.x,sourceY:o.y,sourcePosition:f,targetX:h.x,targetY:h.y,targetPosition:y};switch(t){case ss.Bezier:[k]=DC(v);break;case ss.SimpleBezier:[k]=uA(v);break;case ss.Step:[k]=hb({...v,borderRadius:0});break;case ss.SmoothStep:[k]=hb(v);break;default:[k]=RC(v)}return u.jsx("path",{d:k,fill:"none",className:"react-flow__connection-path",style:e})};EA.displayName="ConnectionLine";const BY={};function IS(e=BY){C.useRef(e),nn(),C.useEffect(()=>{},[e])}function UY(){nn(),C.useRef(!1),C.useEffect(()=>{},[])}function SA({nodeTypes:e,edgeTypes:t,onInit:n,onNodeClick:r,onEdgeClick:a,onNodeDoubleClick:o,onEdgeDoubleClick:l,onNodeMouseEnter:d,onNodeMouseMove:f,onNodeMouseLeave:h,onNodeContextMenu:g,onSelectionContextMenu:m,onSelectionStart:y,onSelectionEnd:b,connectionLineType:k,connectionLineStyle:v,connectionLineComponent:S,connectionLineContainerStyle:E,selectionKeyCode:j,selectionOnDrag:N,selectionMode:_,multiSelectionKeyCode:O,panActivationKeyCode:T,zoomActivationKeyCode:I,deleteKeyCode:R,onlyRenderVisibleElements:F,elementsSelectable:M,defaultViewport:U,translateExtent:q,minZoom:Y,maxZoom:D,preventScrolling:H,defaultMarkerColor:B,zoomOnScroll:V,zoomOnPinch:Q,panOnScroll:K,panOnScrollSpeed:L,panOnScrollMode:z,zoomOnDoubleClick:G,panOnDrag:P,autoPanOnSelection:oe,onPaneClick:be,onPaneMouseEnter:xe,onPaneMouseMove:we,onPaneMouseLeave:J,onPaneScroll:de,onPaneContextMenu:Ce,paneClickDistance:Re,nodeClickDistance:Me,onEdgeContextMenu:le,onEdgeMouseEnter:Ne,onEdgeMouseMove:Te,onEdgeMouseLeave:ke,reconnectRadius:Qe,onReconnect:re,onReconnectStart:Ae,onReconnectEnd:ue,noDragClassName:he,noWheelClassName:ge,noPanClassName:Le,disableKeyboardA11y:ze,nodeExtent:Fe,rfId:te,viewport:ve,onViewportChange:Ie}){return IS(e),IS(t),UY(),MY(n),OY(ve),u.jsx(tY,{onPaneClick:be,onPaneMouseEnter:xe,onPaneMouseMove:we,onPaneMouseLeave:J,onPaneContextMenu:Ce,onPaneScroll:de,paneClickDistance:Re,deleteKeyCode:R,selectionKeyCode:j,selectionOnDrag:N,selectionMode:_,onSelectionStart:y,onSelectionEnd:b,multiSelectionKeyCode:O,panActivationKeyCode:T,zoomActivationKeyCode:I,elementsSelectable:M,zoomOnScroll:V,zoomOnPinch:Q,zoomOnDoubleClick:G,panOnScroll:K,panOnScrollSpeed:L,panOnScrollMode:z,panOnDrag:P,autoPanOnSelection:oe,defaultViewport:U,translateExtent:q,minZoom:Y,maxZoom:D,onSelectionContextMenu:m,preventScrolling:H,noDragClassName:he,noWheelClassName:ge,noPanClassName:Le,disableKeyboardA11y:ze,onViewportChange:Ie,isControlledViewport:!!ve,children:u.jsxs(TY,{children:[u.jsx(CY,{edgeTypes:t,onEdgeClick:a,onEdgeDoubleClick:l,onReconnect:re,onReconnectStart:Ae,onReconnectEnd:ue,onlyRenderVisibleElements:F,onEdgeContextMenu:le,onEdgeMouseEnter:Ne,onEdgeMouseMove:Te,onEdgeMouseLeave:ke,reconnectRadius:Qe,defaultMarkerColor:B,noPanClassName:Le,disableKeyboardA11y:ze,rfId:te}),u.jsx(PY,{style:v,type:k,component:S,containerStyle:E}),u.jsx("div",{className:"react-flow__edgelabel-renderer"}),u.jsx(uY,{nodeTypes:e,onNodeClick:r,onNodeDoubleClick:o,onNodeMouseEnter:d,onNodeMouseMove:f,onNodeMouseLeave:h,onNodeContextMenu:g,nodeClickDistance:Me,onlyRenderVisibleElements:F,noPanClassName:Le,noDragClassName:he,disableKeyboardA11y:ze,nodeExtent:Fe,rfId:te}),u.jsx("div",{className:"react-flow__viewport-portal"})]})})}SA.displayName="GraphView";const $Y=C.memo(SA),FY=NC(),zS=({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:a,height:o,fitView:l,fitViewOptions:d,minZoom:f=.5,maxZoom:h=2,nodeOrigin:g,nodeExtent:m,zIndexMode:y="basic"}={})=>{const b=new Map,k=new Map,v=new Map,S=new Map,E=r??t??[],j=n??e??[],N=g??[0,0],_=m??Du;zC(v,S,E);const{nodesInitialized:O}=mb(j,b,k,{nodeOrigin:N,nodeExtent:_,zIndexMode:y});let T=[0,0,1];if(l&&a&&o){const I=id(b,{filter:U=>!!((U.width||U.initialWidth)&&(U.height||U.initialHeight))}),{x:R,y:F,zoom:M}=$x(I,a,o,f,h,(d==null?void 0:d.padding)??.1);T=[R,F,M]}return{rfId:"1",width:a??0,height:o??0,transform:T,nodes:j,nodesInitialized:O,nodeLookup:b,parentLookup:k,edges:E,edgeLookup:S,connectionLookup:v,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:n!==void 0,hasDefaultEdges:r!==void 0,panZoom:null,minZoom:f,maxZoom:h,translateExtent:Du,nodeExtent:_,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:$l.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:N,nodeDragThreshold:1,connectionDragThreshold:1,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesReconnectable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,elevateEdgesOnSelect:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,fitViewQueued:l??!1,fitViewOptions:d,fitViewResolver:null,connection:{...bC},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:FY,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:"react",debug:!1,ariaLabelConfig:yC,zIndexMode:y,onNodesChangeMiddlewareMap:new Map,onEdgesChangeMiddlewareMap:new Map}},qY=({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:a,height:o,fitView:l,fitViewOptions:d,minZoom:f,maxZoom:h,nodeOrigin:g,nodeExtent:m,zIndexMode:y})=>tV((b,k)=>{async function v(){const{nodeLookup:S,panZoom:E,fitViewOptions:j,fitViewResolver:N,width:_,height:O,minZoom:T,maxZoom:I}=k();E&&(await XK({nodes:S,width:_,height:O,panZoom:E,minZoom:T,maxZoom:I},j),N==null||N.resolve(!0),b({fitViewResolver:null}))}return{...zS({nodes:e,edges:t,width:a,height:o,fitView:l,fitViewOptions:d,minZoom:f,maxZoom:h,nodeOrigin:g,nodeExtent:m,defaultNodes:n,defaultEdges:r,zIndexMode:y}),setNodes:S=>{const{nodeLookup:E,parentLookup:j,nodeOrigin:N,elevateNodesOnSelect:_,fitViewQueued:O,zIndexMode:T,nodesSelectionActive:I}=k(),{nodesInitialized:R,hasSelectedNodes:F}=mb(S,E,j,{nodeOrigin:N,nodeExtent:m,elevateNodesOnSelect:_,checkEquality:!0,zIndexMode:T}),M=I&&F;O&&R?(v(),b({nodes:S,nodesInitialized:R,fitViewQueued:!1,fitViewOptions:void 0,nodesSelectionActive:M})):b({nodes:S,nodesInitialized:R,nodesSelectionActive:M})},setEdges:S=>{const{connectionLookup:E,edgeLookup:j}=k();zC(E,j,S),b({edges:S})},setDefaultNodesAndEdges:(S,E)=>{if(S){const{setNodes:j}=k();j(S),b({hasDefaultNodes:!0})}if(E){const{setEdges:j}=k();j(E),b({hasDefaultEdges:!0})}},updateNodeInternals:S=>{const{triggerNodeChanges:E,nodeLookup:j,parentLookup:N,domNode:_,nodeOrigin:O,nodeExtent:T,debug:I,fitViewQueued:R,zIndexMode:F}=k(),{changes:M,updatedInternals:U}=vG(S,j,N,_,O,T,F);U&&(gG(j,N,{nodeOrigin:O,nodeExtent:T,zIndexMode:F}),R?(v(),b({fitViewQueued:!1,fitViewOptions:void 0})):b({}),(M==null?void 0:M.length)>0&&(I&&console.log("React Flow: trigger node changes",M),E==null||E(M)))},updateNodePositions:(S,E=!1)=>{const j=[];let N=[];const{nodeLookup:_,triggerNodeChanges:O,connection:T,updateConnection:I,onNodesChangeMiddlewareMap:R}=k();for(const[F,M]of S){const U=_.get(F),q=!!(U!=null&&U.expandParent&&(U!=null&&U.parentId)&&(M!=null&&M.position)),Y={id:F,type:"position",position:q?{x:Math.max(0,M.position.x),y:Math.max(0,M.position.y)}:M.position,dragging:E};if(U&&T.inProgress&&T.fromNode.id===U.id){const D=yo(U,T.fromHandle,Ke.Left,!0);I({...T,from:D})}q&&U.parentId&&j.push({id:F,parentId:U.parentId,rect:{...M.internals.positionAbsolute,width:M.measured.width??0,height:M.measured.height??0}}),N.push(Y)}if(j.length>0){const{parentLookup:F,nodeOrigin:M}=k(),U=Vx(j,_,F,M);N.push(...U)}for(const F of R.values())N=F(N);O(N)},triggerNodeChanges:S=>{const{onNodesChange:E,setNodes:j,nodes:N,hasDefaultNodes:_,debug:O}=k();if(S!=null&&S.length){if(_){const T=ZC(S,N);j(T)}O&&console.log("React Flow: trigger node changes",S),E==null||E(S)}},triggerEdgeChanges:S=>{const{onEdgesChange:E,setEdges:j,edges:N,hasDefaultEdges:_,debug:O}=k();if(S!=null&&S.length){if(_){const T=JC(S,N);j(T)}O&&console.log("React Flow: trigger edge changes",S),E==null||E(S)}},addSelectedNodes:S=>{const{multiSelectionActive:E,edgeLookup:j,nodeLookup:N,triggerNodeChanges:_,triggerEdgeChanges:O}=k();if(E){const T=S.map(I=>Ks(I,!0));_(T);return}_(yl(N,new Set([...S]),!0)),O(yl(j))},addSelectedEdges:S=>{const{multiSelectionActive:E,edgeLookup:j,nodeLookup:N,triggerNodeChanges:_,triggerEdgeChanges:O}=k();if(E){const T=S.map(I=>Ks(I,!0));O(T);return}O(yl(j,new Set([...S]))),_(yl(N,new Set,!0))},unselectNodesAndEdges:({nodes:S,edges:E}={})=>{const{edges:j,nodes:N,nodeLookup:_,triggerNodeChanges:O,triggerEdgeChanges:T}=k(),I=S||N,R=E||j,F=[];for(const U of I){if(!U.selected)continue;const q=_.get(U.id);q&&(q.selected=!1),F.push(Ks(U.id,!1))}const M=[];for(const U of R)U.selected&&M.push(Ks(U.id,!1));O(F),T(M)},setMinZoom:S=>{const{panZoom:E,maxZoom:j}=k();E==null||E.setScaleExtent([S,j]),b({minZoom:S})},setMaxZoom:S=>{const{panZoom:E,minZoom:j}=k();E==null||E.setScaleExtent([j,S]),b({maxZoom:S})},setTranslateExtent:S=>{var E;(E=k().panZoom)==null||E.setTranslateExtent(S),b({translateExtent:S})},resetSelectedElements:()=>{const{edges:S,nodes:E,triggerNodeChanges:j,triggerEdgeChanges:N,elementsSelectable:_}=k();if(!_)return;const O=E.reduce((I,R)=>R.selected?[...I,Ks(R.id,!1)]:I,[]),T=S.reduce((I,R)=>R.selected?[...I,Ks(R.id,!1)]:I,[]);j(O),N(T)},setNodeExtent:S=>{const{nodes:E,nodeLookup:j,parentLookup:N,nodeOrigin:_,elevateNodesOnSelect:O,nodeExtent:T,zIndexMode:I}=k();S[0][0]===T[0][0]&&S[0][1]===T[0][1]&&S[1][0]===T[1][0]&&S[1][1]===T[1][1]||(mb(E,j,N,{nodeOrigin:_,nodeExtent:S,elevateNodesOnSelect:O,checkEquality:!1,zIndexMode:I}),b({nodeExtent:S}))},panBy:S=>{const{transform:E,width:j,height:N,panZoom:_,translateExtent:O}=k();return wG({delta:S,panZoom:_,transform:E,translateExtent:O,width:j,height:N})},setCenter:async(S,E,j)=>{const{width:N,height:_,maxZoom:O,panZoom:T}=k();if(!T)return!1;const I=typeof(j==null?void 0:j.zoom)<"u"?j.zoom:O;return await T.setViewport({x:N/2-S*I,y:_/2-E*I,zoom:I},{duration:j==null?void 0:j.duration,ease:j==null?void 0:j.ease,interpolate:j==null?void 0:j.interpolate}),!0},cancelConnection:()=>{b({connection:{...bC}})},updateConnection:S=>{b({connection:S})},reset:()=>b({...zS()})}},Object.is);function NA({initialNodes:e,initialEdges:t,defaultNodes:n,defaultEdges:r,initialWidth:a,initialHeight:o,initialMinZoom:l,initialMaxZoom:d,initialFitViewOptions:f,fitView:h,nodeOrigin:g,nodeExtent:m,zIndexMode:y,children:b}){const[k]=C.useState(()=>qY({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,width:a,height:o,fitView:h,minZoom:l,maxZoom:d,fitViewOptions:f,nodeOrigin:g,nodeExtent:m,zIndexMode:y}));return u.jsx(nV,{value:k,children:u.jsx(jV,{children:u.jsx(FV,{children:b})})})}function HY({children:e,nodes:t,edges:n,defaultNodes:r,defaultEdges:a,width:o,height:l,fitView:d,fitViewOptions:f,minZoom:h,maxZoom:g,nodeOrigin:m,nodeExtent:y,zIndexMode:b}){return C.useContext(fp)?u.jsx(u.Fragment,{children:e}):u.jsx(NA,{initialNodes:t,initialEdges:n,defaultNodes:r,defaultEdges:a,initialWidth:o,initialHeight:l,fitView:d,initialFitViewOptions:f,initialMinZoom:h,initialMaxZoom:g,nodeOrigin:m,nodeExtent:y,zIndexMode:b,children:e})}const KY={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0};function GY({nodes:e,edges:t,defaultNodes:n,defaultEdges:r,className:a,nodeTypes:o,edgeTypes:l,onNodeClick:d,onEdgeClick:f,onInit:h,onMove:g,onMoveStart:m,onMoveEnd:y,onConnect:b,onConnectStart:k,onConnectEnd:v,onClickConnectStart:S,onClickConnectEnd:E,onNodeMouseEnter:j,onNodeMouseMove:N,onNodeMouseLeave:_,onNodeContextMenu:O,onNodeDoubleClick:T,onNodeDragStart:I,onNodeDrag:R,onNodeDragStop:F,onNodesDelete:M,onEdgesDelete:U,onDelete:q,onSelectionChange:Y,onSelectionDragStart:D,onSelectionDrag:H,onSelectionDragStop:B,onSelectionContextMenu:V,onSelectionStart:Q,onSelectionEnd:K,onBeforeDelete:L,connectionMode:z,connectionLineType:G=ss.Bezier,connectionLineStyle:P,connectionLineComponent:oe,connectionLineContainerStyle:be,deleteKeyCode:xe="Backspace",selectionKeyCode:we="Shift",selectionOnDrag:J=!1,selectionMode:de=Ou.Full,panActivationKeyCode:Ce="Space",multiSelectionKeyCode:Re=Lu()?"Meta":"Control",zoomActivationKeyCode:Me=Lu()?"Meta":"Control",snapToGrid:le,snapGrid:Ne,onlyRenderVisibleElements:Te=!1,selectNodesOnDrag:ke,nodesDraggable:Qe,autoPanOnNodeFocus:re,nodesConnectable:Ae,nodesFocusable:ue,nodeOrigin:he=WC,edgesFocusable:ge,edgesReconnectable:Le,elementsSelectable:ze=!0,defaultViewport:Fe=mV,minZoom:te=.5,maxZoom:ve=2,translateExtent:Ie=Du,preventScrolling:Ze=!0,nodeExtent:it,defaultMarkerColor:At="#b1b1b7",zoomOnScroll:Un=!0,zoomOnPinch:un=!0,panOnScroll:Mt=!1,panOnScrollSpeed:Qt=.5,panOnScrollMode:yt=oo.Free,zoomOnDoubleClick:Tr=!0,panOnDrag:Rn=!0,onPaneClick:ko,onPaneMouseEnter:zi,onPaneMouseMove:wa,onPaneMouseLeave:Pi,onPaneScroll:$n,onPaneContextMenu:Z,paneClickDistance:pe=1,nodeClickDistance:je=0,children:rt,onReconnect:Ft,onReconnectStart:Ot,onReconnectEnd:$e,onEdgeContextMenu:Pe,onEdgeDoubleClick:et,onEdgeMouseEnter:rn,onEdgeMouseMove:Vt,onEdgeMouseLeave:Qr,reconnectRadius:ka=10,onNodesChange:Ea,onEdgesChange:Mr,noDragClassName:an="nodrag",noWheelClassName:Tn="nowheel",noPanClassName:Wr="nopan",fitView:Sa,fitViewOptions:Es,connectOnClick:Na,attributionPosition:Eo,proOptions:Bi,defaultEdgeOptions:Ss,elevateNodesOnSelect:Ln=!0,elevateEdgesOnSelect:Xr=!1,disableKeyboardA11y:Zr=!1,autoPanOnConnect:yi,autoPanOnNodeDrag:dn,autoPanOnSelection:So=!0,autoPanSpeed:Ui,connectionRadius:Jr,isValidConnection:Ee,onError:Ge,style:ft,id:Nt,nodeDragThreshold:sn,connectionDragThreshold:Mn,viewport:Qn,onViewportChange:Fn,width:zt,height:Wn,colorMode:No="light",debug:_a,onScroll:bi,ariaLabelConfig:ja,zIndexMode:_o="basic",...qn},Ns){const ei=Nt||"1",Ca=xV(No),jn=C.useCallback(_s=>{_s.currentTarget.scrollTo({top:0,left:0,behavior:"instant"}),bi==null||bi(_s)},[bi]);return u.jsx("div",{"data-testid":"rf__wrapper",...qn,onScroll:jn,style:{...ft,...KY},ref:Ns,className:_n(["react-flow",a,Ca]),id:Nt,role:"application",children:u.jsxs(HY,{nodes:e,edges:t,width:zt,height:Wn,fitView:Sa,fitViewOptions:Es,minZoom:te,maxZoom:ve,nodeOrigin:he,nodeExtent:it,zIndexMode:_o,children:[u.jsx(bV,{nodes:e,edges:t,defaultNodes:n,defaultEdges:r,onConnect:b,onConnectStart:k,onConnectEnd:v,onClickConnectStart:S,onClickConnectEnd:E,nodesDraggable:Qe,autoPanOnNodeFocus:re,nodesConnectable:Ae,nodesFocusable:ue,edgesFocusable:ge,edgesReconnectable:Le,elementsSelectable:ze,elevateNodesOnSelect:Ln,elevateEdgesOnSelect:Xr,minZoom:te,maxZoom:ve,nodeExtent:it,onNodesChange:Ea,onEdgesChange:Mr,snapToGrid:le,snapGrid:Ne,connectionMode:z,translateExtent:Ie,connectOnClick:Na,defaultEdgeOptions:Ss,fitView:Sa,fitViewOptions:Es,onNodesDelete:M,onEdgesDelete:U,onDelete:q,onNodeDragStart:I,onNodeDrag:R,onNodeDragStop:F,onSelectionDrag:H,onSelectionDragStart:D,onSelectionDragStop:B,onMove:g,onMoveStart:m,onMoveEnd:y,noPanClassName:Wr,nodeOrigin:he,rfId:ei,autoPanOnConnect:yi,autoPanOnNodeDrag:dn,autoPanSpeed:Ui,onError:Ge,connectionRadius:Jr,isValidConnection:Ee,selectNodesOnDrag:ke,nodeDragThreshold:sn,connectionDragThreshold:Mn,onBeforeDelete:L,debug:_a,ariaLabelConfig:ja,zIndexMode:_o}),u.jsx($Y,{onInit:h,onNodeClick:d,onEdgeClick:f,onNodeMouseEnter:j,onNodeMouseMove:N,onNodeMouseLeave:_,onNodeContextMenu:O,onNodeDoubleClick:T,nodeTypes:o,edgeTypes:l,connectionLineType:G,connectionLineStyle:P,connectionLineComponent:oe,connectionLineContainerStyle:be,selectionKeyCode:we,selectionOnDrag:J,selectionMode:de,deleteKeyCode:xe,multiSelectionKeyCode:Re,panActivationKeyCode:Ce,zoomActivationKeyCode:Me,onlyRenderVisibleElements:Te,defaultViewport:Fe,translateExtent:Ie,minZoom:te,maxZoom:ve,preventScrolling:Ze,zoomOnScroll:Un,zoomOnPinch:un,zoomOnDoubleClick:Tr,panOnScroll:Mt,panOnScrollSpeed:Qt,panOnScrollMode:yt,panOnDrag:Rn,autoPanOnSelection:So,onPaneClick:ko,onPaneMouseEnter:zi,onPaneMouseMove:wa,onPaneMouseLeave:Pi,onPaneScroll:$n,onPaneContextMenu:Z,paneClickDistance:pe,nodeClickDistance:je,onSelectionContextMenu:V,onSelectionStart:Q,onSelectionEnd:K,onReconnect:Ft,onReconnectStart:Ot,onReconnectEnd:$e,onEdgeContextMenu:Pe,onEdgeDoubleClick:et,onEdgeMouseEnter:rn,onEdgeMouseMove:Vt,onEdgeMouseLeave:Qr,reconnectRadius:ka,defaultMarkerColor:At,noDragClassName:an,noWheelClassName:Tn,noPanClassName:Wr,rfId:ei,disableKeyboardA11y:Zr,nodeExtent:it,viewport:Qn,onViewportChange:Fn}),u.jsx(pV,{onSelectionChange:Y}),rt,u.jsx(cV,{proOptions:Bi,position:Eo}),u.jsx(lV,{rfId:ei,disableKeyboardA11y:Zr})]})})}var VY=eA(GY);function YY(e){const[t,n]=C.useState(e),r=C.useCallback(a=>n(o=>ZC(a,o)),[]);return[t,n,r]}function QY(e){const[t,n]=C.useState(e),r=C.useCallback(a=>n(o=>JC(a,o)),[]);return[t,n,r]}function WY({dimensions:e,lineWidth:t,variant:n,className:r}){return u.jsx("path",{strokeWidth:t,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`,className:_n(["react-flow__background-pattern",n,r])})}function XY({radius:e,className:t}){return u.jsx("circle",{cx:e,cy:e,r:e,className:_n(["react-flow__background-pattern","dots",t])})}var ha;(function(e){e.Lines="lines",e.Dots="dots",e.Cross="cross"})(ha||(ha={}));const ZY={[ha.Dots]:1,[ha.Lines]:1,[ha.Cross]:6},JY=e=>({transform:e.transform,patternId:`pattern-${e.rfId}`});function _A({id:e,variant:t=ha.Dots,gap:n=20,size:r,lineWidth:a=1,offset:o=0,color:l,bgColor:d,style:f,className:h,patternClassName:g}){const m=C.useRef(null),{transform:y,patternId:b}=St(JY,tn),k=r||ZY[t],v=t===ha.Dots,S=t===ha.Cross,E=Array.isArray(n)?n:[n,n],j=[E[0]*y[2]||1,E[1]*y[2]||1],N=k*y[2],_=Array.isArray(o)?o:[o,o],O=S?[N,N]:j,T=[_[0]*y[2]||1+O[0]/2,_[1]*y[2]||1+O[1]/2],I=`${b}${e||""}`;return u.jsxs("svg",{className:_n(["react-flow__background",h]),style:{...f,...mp,"--xy-background-color-props":d,"--xy-background-pattern-color-props":l},ref:m,"data-testid":"rf__background",children:[u.jsx("pattern",{id:I,x:y[0]%j[0],y:y[1]%j[1],width:j[0],height:j[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${T[0]},-${T[1]})`,children:v?u.jsx(XY,{radius:N/2,className:g}):u.jsx(WY,{dimensions:O,lineWidth:a,variant:t,className:g})}),u.jsx("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${I})`})]})}_A.displayName="Background";const eQ=C.memo(_A);function tQ(){return u.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",children:u.jsx("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"})})}function nQ(){return u.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5",children:u.jsx("path",{d:"M0 0h32v4.2H0z"})})}function rQ(){return u.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30",children:u.jsx("path",{d:"M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z"})})}function iQ(){return u.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:u.jsx("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z"})})}function aQ(){return u.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:u.jsx("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z"})})}function Kf({children:e,className:t,...n}){return u.jsx("button",{type:"button",className:_n(["react-flow__controls-button",t]),...n,children:e})}const sQ=e=>({isInteractive:e.nodesDraggable||e.nodesConnectable||e.elementsSelectable,minZoomReached:e.transform[2]<=e.minZoom,maxZoomReached:e.transform[2]>=e.maxZoom,ariaLabelConfig:e.ariaLabelConfig});function jA({style:e,showZoom:t=!0,showFitView:n=!0,showInteractive:r=!0,fitViewOptions:a,onZoomIn:o,onZoomOut:l,onFitView:d,onInteractiveChange:f,className:h,children:g,position:m="bottom-left",orientation:y="vertical","aria-label":b}){const k=nn(),{isInteractive:v,minZoomReached:S,maxZoomReached:E,ariaLabelConfig:j}=St(sQ,tn),{zoomIn:N,zoomOut:_,fitView:O}=pp(),T=()=>{N(),o==null||o()},I=()=>{_(),l==null||l()},R=()=>{O(a),d==null||d()},F=()=>{k.setState({nodesDraggable:!v,nodesConnectable:!v,elementsSelectable:!v}),f==null||f(!v)},M=y==="horizontal"?"horizontal":"vertical";return u.jsxs(hp,{className:_n(["react-flow__controls",M,h]),position:m,style:e,"data-testid":"rf__controls","aria-label":b??j["controls.ariaLabel"],children:[t&&u.jsxs(u.Fragment,{children:[u.jsx(Kf,{onClick:T,className:"react-flow__controls-zoomin",title:j["controls.zoomIn.ariaLabel"],"aria-label":j["controls.zoomIn.ariaLabel"],disabled:E,children:u.jsx(tQ,{})}),u.jsx(Kf,{onClick:I,className:"react-flow__controls-zoomout",title:j["controls.zoomOut.ariaLabel"],"aria-label":j["controls.zoomOut.ariaLabel"],disabled:S,children:u.jsx(nQ,{})})]}),n&&u.jsx(Kf,{className:"react-flow__controls-fitview",onClick:R,title:j["controls.fitView.ariaLabel"],"aria-label":j["controls.fitView.ariaLabel"],children:u.jsx(rQ,{})}),r&&u.jsx(Kf,{className:"react-flow__controls-interactive",onClick:F,title:j["controls.interactive.ariaLabel"],"aria-label":j["controls.interactive.ariaLabel"],children:v?u.jsx(aQ,{}):u.jsx(iQ,{})}),g]})}jA.displayName="Controls";const oQ=C.memo(jA);function lQ({id:e,x:t,y:n,width:r,height:a,style:o,color:l,strokeColor:d,strokeWidth:f,className:h,borderRadius:g,shapeRendering:m,selected:y,onClick:b}){const{background:k,backgroundColor:v}=o||{},S=l||k||v;return u.jsx("rect",{className:_n(["react-flow__minimap-node",{selected:y},h]),x:t,y:n,rx:g,ry:g,width:r,height:a,style:{fill:S,stroke:d,strokeWidth:f},shapeRendering:m,onClick:b?E=>b(E,e):void 0})}const cQ=C.memo(lQ),uQ=e=>e.nodes.map(t=>t.id),by=e=>e instanceof Function?e:()=>e;function dQ({nodeStrokeColor:e,nodeColor:t,nodeClassName:n="",nodeBorderRadius:r=5,nodeStrokeWidth:a,nodeComponent:o=cQ,onClick:l}){const d=St(uQ,tn),f=by(t),h=by(e),g=by(n),m=typeof window>"u"||window.chrome?"crispEdges":"geometricPrecision";return u.jsx(u.Fragment,{children:d.map(y=>u.jsx(hQ,{id:y,nodeColorFunc:f,nodeStrokeColorFunc:h,nodeClassNameFunc:g,nodeBorderRadius:r,nodeStrokeWidth:a,NodeComponent:o,onClick:l,shapeRendering:m},y))})}function fQ({id:e,nodeColorFunc:t,nodeStrokeColorFunc:n,nodeClassNameFunc:r,nodeBorderRadius:a,nodeStrokeWidth:o,shapeRendering:l,NodeComponent:d,onClick:f}){const{node:h,x:g,y:m,width:y,height:b}=St(k=>{const v=k.nodeLookup.get(e);if(!v)return{node:void 0,x:0,y:0,width:0,height:0};const S=v.internals.userNode,{x:E,y:j}=v.internals.positionAbsolute,{width:N,height:_}=va(S);return{node:S,x:E,y:j,width:N,height:_}},tn);return!h||h.hidden||!_C(h)?null:u.jsx(d,{x:g,y:m,width:y,height:b,style:h.style,selected:!!h.selected,className:r(h),color:t(h),borderRadius:a,strokeColor:n(h),strokeWidth:o,shapeRendering:l,onClick:f,id:h.id})}const hQ=C.memo(fQ);var pQ=C.memo(dQ);const mQ=200,gQ=150,yQ=e=>!e.hidden,bQ=e=>{const t={x:-e.transform[0]/e.transform[2],y:-e.transform[1]/e.transform[2],width:e.width/e.transform[2],height:e.height/e.transform[2]};return{viewBB:t,boundingRect:e.nodeLookup.size>0?EC(id(e.nodeLookup,{filter:yQ}),t):t,rfId:e.rfId,panZoom:e.panZoom,translateExtent:e.translateExtent,flowWidth:e.width,flowHeight:e.height,ariaLabelConfig:e.ariaLabelConfig}},xQ="react-flow__minimap-desc";function CA({style:e,className:t,nodeStrokeColor:n,nodeColor:r,nodeClassName:a="",nodeBorderRadius:o=5,nodeStrokeWidth:l,nodeComponent:d,bgColor:f,maskColor:h,maskStrokeColor:g,maskStrokeWidth:m,position:y="bottom-right",onClick:b,onNodeClick:k,pannable:v=!1,zoomable:S=!1,ariaLabel:E,inversePan:j,zoomStep:N=1,offsetScale:_=5}){const O=nn(),T=C.useRef(null),{boundingRect:I,viewBB:R,rfId:F,panZoom:M,translateExtent:U,flowWidth:q,flowHeight:Y,ariaLabelConfig:D}=St(bQ,tn),H=(e==null?void 0:e.width)??mQ,B=(e==null?void 0:e.height)??gQ,V=I.width/H,Q=I.height/B,K=Math.max(V,Q),L=K*H,z=K*B,G=_*K,P=I.x-(L-I.width)/2-G,oe=I.y-(z-I.height)/2-G,be=L+G*2,xe=z+G*2,we=`${xQ}-${F}`,J=C.useRef(0),de=C.useRef();J.current=K,C.useEffect(()=>{if(T.current&&M)return de.current=TG({domNode:T.current,panZoom:M,getTransform:()=>O.getState().transform,getViewScale:()=>J.current}),()=>{var le;(le=de.current)==null||le.destroy()}},[M]),C.useEffect(()=>{var le;(le=de.current)==null||le.update({translateExtent:U,width:q,height:Y,inversePan:j,pannable:v,zoomStep:N,zoomable:S})},[v,S,j,N,U,q,Y]);const Ce=b?le=>{var ke;const[Ne,Te]=((ke=de.current)==null?void 0:ke.pointer(le))||[0,0];b(le,{x:Ne,y:Te})}:void 0,Re=k?C.useCallback((le,Ne)=>{const Te=O.getState().nodeLookup.get(Ne).internals.userNode;k(le,Te)},[]):void 0,Me=E??D["minimap.ariaLabel"];return u.jsx(hp,{position:y,style:{...e,"--xy-minimap-background-color-props":typeof f=="string"?f:void 0,"--xy-minimap-mask-background-color-props":typeof h=="string"?h:void 0,"--xy-minimap-mask-stroke-color-props":typeof g=="string"?g:void 0,"--xy-minimap-mask-stroke-width-props":typeof m=="number"?m*K:void 0,"--xy-minimap-node-background-color-props":typeof r=="string"?r:void 0,"--xy-minimap-node-stroke-color-props":typeof n=="string"?n:void 0,"--xy-minimap-node-stroke-width-props":typeof l=="number"?l:void 0},className:_n(["react-flow__minimap",t]),"data-testid":"rf__minimap",children:u.jsxs("svg",{width:H,height:B,viewBox:`${P} ${oe} ${be} ${xe}`,className:"react-flow__minimap-svg",role:"img","aria-labelledby":we,ref:T,onClick:Ce,children:[Me&&u.jsx("title",{id:we,children:Me}),u.jsx(pQ,{onClick:Re,nodeColor:r,nodeStrokeColor:n,nodeBorderRadius:o,nodeClassName:a,nodeStrokeWidth:l,nodeComponent:d}),u.jsx("path",{className:"react-flow__minimap-mask",d:`M${P-G},${oe-G}h${be+G*2}v${xe+G*2}h${-be-G*2}z
665
+ M${R.x},${R.y}h${R.width}v${R.height}h${-R.width}z`,fillRule:"evenodd",pointerEvents:"none"})]})})}CA.displayName="MiniMap";C.memo(CA);const vQ=e=>t=>e?`${Math.max(1/t.transform[2],1)}`:void 0,wQ={[Hl.Line]:"right",[Hl.Handle]:"bottom-right"};function kQ({nodeId:e,position:t,variant:n=Hl.Handle,className:r,style:a=void 0,children:o,color:l,minWidth:d=10,minHeight:f=10,maxWidth:h=Number.MAX_VALUE,maxHeight:g=Number.MAX_VALUE,keepAspectRatio:m=!1,resizeDirection:y,autoScale:b=!0,shouldResize:k,onResizeStart:v,onResize:S,onResizeEnd:E}){const j=iA(),N=typeof e=="string"?e:j,_=nn(),O=C.useRef(null),T=n===Hl.Handle,I=St(C.useCallback(vQ(T&&b),[T,b]),tn),R=C.useRef(null),F=t??wQ[n];C.useEffect(()=>{if(!(!O.current||!N))return R.current||(R.current=qG({domNode:O.current,nodeId:N,getStoreItems:()=>{const{nodeLookup:U,transform:q,snapGrid:Y,snapToGrid:D,nodeOrigin:H,domNode:B}=_.getState();return{nodeLookup:U,transform:q,snapGrid:Y,snapToGrid:D,nodeOrigin:H,paneDomNode:B}},onChange:(U,q)=>{const{triggerNodeChanges:Y,nodeLookup:D,parentLookup:H,nodeOrigin:B}=_.getState(),V=[],Q={x:U.x,y:U.y},K=D.get(N);if(K&&K.expandParent&&K.parentId){const L=K.origin??B,z=U.width??K.measured.width??0,G=U.height??K.measured.height??0,P={id:K.id,parentId:K.parentId,rect:{width:z,height:G,...jC({x:U.x??K.position.x,y:U.y??K.position.y},{width:z,height:G},K.parentId,D,L)}},oe=Vx([P],D,H,B);V.push(...oe),Q.x=U.x?Math.max(L[0]*z,U.x):void 0,Q.y=U.y?Math.max(L[1]*G,U.y):void 0}if(Q.x!==void 0&&Q.y!==void 0){const L={id:N,type:"position",position:{...Q}};V.push(L)}if(U.width!==void 0&&U.height!==void 0){const z={id:N,type:"dimensions",resizing:!0,setAttributes:y?y==="horizontal"?"width":"height":!0,dimensions:{width:U.width,height:U.height}};V.push(z)}for(const L of q){const z={...L,type:"position"};V.push(z)}Y(V)},onEnd:({width:U,height:q})=>{const Y={id:N,type:"dimensions",resizing:!1,dimensions:{width:U,height:q}};_.getState().triggerNodeChanges([Y])}})),R.current.update({controlPosition:F,boundaries:{minWidth:d,minHeight:f,maxWidth:h,maxHeight:g},keepAspectRatio:m,resizeDirection:y,onResizeStart:v,onResize:S,onResizeEnd:E,shouldResize:k}),()=>{var U;(U=R.current)==null||U.destroy()}},[F,d,f,h,g,m,v,S,E,k]);const M=F.split("-");return u.jsx("div",{className:_n(["react-flow__resize-control","nodrag",...M,n,r]),ref:O,style:{...a,scale:I,...l&&{[T?"backgroundColor":"borderColor"]:l}},children:o})}C.memo(kQ);function EQ(e){return ht(`/api/smartarrange/${encodeURIComponent(e)}`)}async function SQ(e){const t=await fetch(`/api/smartarrange/${encodeURIComponent(e)}/approve`,{method:"POST"});if(!t.ok)throw new Error(`${t.status}: ${await t.text()}`);return t.json()}const xy=["var(--color-accent-mint)","var(--color-accent-pink)","var(--color-accent-purple)","var(--color-accent-yellow)","var(--color-running-bg)","var(--color-idle-bg)","var(--color-stuck-bg)"];function PS(e,t){return xy[t%xy.length]??xy[0]}const AA={done:"var(--color-cta)",doing:"var(--color-secondary-dark)",todo:"var(--color-text-subtle)",stuck:"var(--color-crashed)"},ll={width:9,height:9,background:"var(--color-bg)",border:"2px solid var(--color-text)"},NQ=C.memo(function({data:t,selected:n}){var a;const r=t;return u.jsxs("div",{className:"rounded-xl border-[3px] border-[var(--color-text)] bg-[var(--color-bg)] overflow-hidden cursor-pointer flex flex-col",style:{width:260,height:158,boxShadow:n?"5px 5px 0 var(--color-text)":"3px 3px 0 var(--color-text)",transform:n?"translate(-1px,-1px)":void 0},children:[u.jsx(Ai,{id:"l-t",type:"target",position:Ke.Left,style:ll}),u.jsx(Ai,{id:"r-t",type:"target",position:Ke.Right,style:ll}),u.jsx(Ai,{id:"t-t",type:"target",position:Ke.Top,style:ll}),u.jsxs("div",{className:"flex items-center gap-2 px-2.5 py-1.5 border-b-[3px] border-[var(--color-text)]",style:{background:r.color},children:[u.jsxs("span",{className:"font-[family-name:var(--font-mono)] text-xs font-bold text-[var(--color-text)]",children:["#",r.seq]}),u.jsx("span",{className:"text-[11px] text-[var(--color-text)] truncate",children:r.taskLabel}),u.jsx("span",{className:"w-2.5 h-2.5 rounded-full inline-block shrink-0 ml-auto border border-[var(--color-text)]",style:{background:AA[r.status]??"gray"},title:r.status})]}),u.jsxs("div",{className:"px-2.5 py-2 flex-1 min-h-0 overflow-hidden",children:[u.jsx("p",{className:"text-[13px] font-semibold text-[var(--color-text)] leading-snug line-clamp-3",children:r.title}),((a=r.skills)==null?void 0:a.length)>0&&u.jsx("div",{className:"flex flex-wrap gap-1 mt-2 max-h-[46px] overflow-hidden",children:r.skills.slice(0,6).map(o=>u.jsx("span",{className:"text-[10px] font-[family-name:var(--font-mono)] px-1.5 py-0.5 rounded border border-[var(--color-text)] bg-[var(--color-bg-cream)] text-[var(--color-text)]",children:o},o))})]}),u.jsx(Ai,{id:"r-s",type:"source",position:Ke.Right,style:ll}),u.jsx(Ai,{id:"l-s",type:"source",position:Ke.Left,style:ll}),u.jsx(Ai,{id:"b-s",type:"source",position:Ke.Bottom,style:ll})]})});function _Q({card:e,status:t,onClose:n}){var a;const r=Be();return C.useEffect(()=>{const o=l=>{l.key==="Escape"&&n()};return window.addEventListener("keydown",o),()=>window.removeEventListener("keydown",o)},[n]),u.jsx("div",{role:"dialog","aria-modal":"true",className:"fixed inset-0 z-40 flex items-start justify-center p-6 bg-black/30 overflow-auto",onClick:n,children:u.jsxs("div",{className:"nb-card mt-12 w-full max-w-2xl bg-[var(--color-bg)]",onClick:o=>o.stopPropagation(),children:[u.jsxs("header",{className:"flex items-start justify-between gap-4 mb-4",children:[u.jsxs("div",{className:"flex-1 min-w-0",children:[u.jsxs("div",{className:"flex items-center gap-2 mb-2 flex-wrap",children:[u.jsxs("span",{className:"font-[family-name:var(--font-mono)] font-bold text-xs px-2 py-0.5 bg-[var(--color-accent-purple)] border-2 border-[var(--color-text)] rounded-full",children:["#",e.seq]}),u.jsxs("span",{className:"font-[family-name:var(--font-mono)] text-xs px-2 py-0.5 bg-[var(--color-bg-cream)] border-2 border-[var(--color-text)] rounded-full font-semibold",children:[r("arrange.cardTask")," T",e.taskId]}),u.jsxs("span",{className:"inline-flex items-center gap-1.5 text-xs px-2 py-0.5 border-2 border-[var(--color-text)] rounded-full font-semibold",children:[u.jsx("span",{className:"w-2.5 h-2.5 rounded-full inline-block border border-[var(--color-text)]",style:{background:AA[t]??"gray"}}),t]})]}),u.jsx("h2",{className:"font-[family-name:var(--font-heading)] text-2xl font-bold break-words",children:e.title})]}),u.jsx("button",{onClick:n,className:"nb-btn nb-btn-mint p-2 flex-shrink-0","aria-label":r("arrange.close"),type:"button",children:u.jsx(Nn,{size:14,strokeWidth:3})})]}),u.jsxs("div",{className:"flex flex-col gap-4",children:[e.at&&u.jsxs("div",{className:"flex items-center gap-2 text-sm",children:[u.jsx(IN,{size:14,strokeWidth:2.5}),u.jsx("span",{className:"font-[family-name:var(--font-mono)]",children:e.at})]}),((a=e.skills)==null?void 0:a.length)>0&&u.jsxs("div",{children:[u.jsx("div",{className:"text-sm font-bold mb-1.5",children:r("arrange.cardSkills")}),u.jsx("div",{className:"flex items-center gap-2 flex-wrap",children:e.skills.map(o=>u.jsx(ix,{name:o},o))})]}),e.prompt&&u.jsxs("div",{children:[u.jsx("h3",{className:"font-[family-name:var(--font-heading)] text-sm font-bold mb-2 uppercase tracking-wider",children:r("arrange.cardPrompt")}),u.jsx("pre",{className:"text-xs whitespace-pre-wrap font-[family-name:var(--font-mono)] bg-[var(--color-bg-cream)] border-2 border-[var(--color-text)] rounded-lg p-4 max-h-72 overflow-auto",children:e.prompt})]}),u.jsxs("div",{children:[u.jsx("h3",{className:"font-[family-name:var(--font-heading)] text-sm font-bold mb-2 uppercase tracking-wider",children:r("arrange.cardLog")}),u.jsxs("pre",{className:"text-xs whitespace-pre-wrap font-[family-name:var(--font-mono)] bg-[var(--color-bg-cream)] border-2 border-[var(--color-text)] rounded-lg p-4",children:[e.at?`${e.at} [派发] #${e.seq} → ${r("arrange.cardTask")} T${e.taskId}`:"—",`
666
+ ${e.at??""} [状态] ${t}`]})]})]})]})})}const jQ=C.memo(function({data:t}){const n=t;return u.jsxs("div",{className:"relative w-full h-full rounded-2xl border-2 border-dashed border-[var(--color-text)]",children:[u.jsx("div",{className:"absolute inset-0 rounded-2xl",style:{background:n.color,opacity:.16}}),u.jsx("span",{className:"absolute top-1.5 left-2.5 px-2 py-0.5 text-[11px] font-bold rounded-md border-2 border-[var(--color-text)] bg-[var(--color-bg)] text-[var(--color-text)] whitespace-nowrap max-w-[90%] truncate",children:n.label})]})}),CQ={card:NQ,laneBox:jQ},Qx=260,TA=Qx+36,AQ=200,TQ={todo:"var(--color-text-subtle)",doing:"var(--color-secondary-dark)",done:"var(--color-cta)",rework:"var(--color-secondary-dark)"};function bb(e,t,n){return e==="doing"&&t<n?"stuck":e}function MQ(e,t){const n=Math.floor(e/t),r=e%t;return{x:(n%2===0?r:t-1-r)*TA,y:n*AQ}}function DQ(e,t,n){const r=Math.floor(e/n),a=Math.floor(t/n);return r===a?r%2===0?{sourceHandle:"r-s",targetHandle:"l-t"}:{sourceHandle:"l-s",targetHandle:"r-t"}:{sourceHandle:"b-s",targetHandle:"t-t"}}function OQ(e){return e==="done"?{animated:!1,style:{stroke:"var(--color-cta)",strokeWidth:2.5}}:e==="doing"?{animated:!0,style:{stroke:"var(--color-secondary-dark)",strokeWidth:3}}:e==="stuck"?{animated:!1,style:{stroke:"var(--color-crashed)",strokeWidth:2.5,strokeDasharray:"6 4"}}:{animated:!1,style:{stroke:"var(--color-accent-yellow)",strokeWidth:2.5,strokeDasharray:"6 4"}}}const MA=158,BS=Qx+60,US=MA+28,$S=40;function RQ({cards:e,taskMeta:t,view:n,onSelect:r}){const a=C.useRef(null),[o,l]=C.useState(4),d=pp(),[f,h,g]=YY([]),[m,y]=QY([]),b=C.useRef("");return C.useEffect(()=>{const k=a.current;if(!k)return;const v=new ResizeObserver(S=>{var j;const E=((j=S[0])==null?void 0:j.contentRect.width)??800;l(Math.max(1,Math.min(8,Math.floor((E-40)/TA))))});return v.observe(k),()=>v.disconnect()},[]),C.useEffect(()=>{const k=[...e].sort((T,I)=>T.seq-I.seq),v=`${n}:${o}:${k.length}`,S=b.current!==v;b.current=v;const E=new Map,j=(T,I)=>{var R;if(n==="lane"){const F=((R=t.get(T.taskId))==null?void 0:R.order)??0,M=E.get(T.taskId)??0;return E.set(T.taskId,M+1),{x:F*BS,y:M*US}}return MQ(I,o)},N=[];if(n==="lane"){const T=new Map;for(const I of k)T.set(I.taskId,(T.get(I.taskId)??0)+1);for(const[I,R]of T){const F=t.get(I),M=(F==null?void 0:F.order)??0;N.push({id:`lane-${I}`,type:"laneBox",position:{x:M*BS-16,y:-$S},data:{label:F!=null&&F.title?`T${I} · ${F.title}`:`T${I}`,color:(F==null?void 0:F.color)??"var(--color-bg-cream)"},style:{width:Qx+32,height:$S+(R-1)*US+MA+14},draggable:!1,selectable:!1,zIndex:0})}}const _=k.length?k[k.length-1].seq:0;h(T=>{const I=new Map(T.map(F=>[F.id,F])),R=k.map((F,M)=>{const U=t.get(F.taskId),q={seq:F.seq,title:F.title,skills:F.skills??[],taskLabel:`T${F.taskId}`,status:bb(F.status,F.seq,_),color:(U==null?void 0:U.color)??"var(--color-bg-cream)"},Y=String(F.seq),D=I.get(Y),H=j(F,M);return{...D&&!S?{...D,data:q}:{id:Y,type:"card",position:H,data:q},zIndex:1}});return[...N,...R]});const O=[];for(let T=1;T<k.length;T++){const I=k[T-1],R=k[T];if(!I||!R)continue;const F=n==="lane"?I.taskId===R.taskId?{sourceHandle:"b-s",targetHandle:"t-t"}:{sourceHandle:"r-s",targetHandle:"l-t"}:DQ(T-1,T,o);O.push({id:`e${I.seq}-${R.seq}`,source:String(I.seq),target:String(R.seq),...F,...OQ(bb(R.status,R.seq,_))})}y(O),S&&requestAnimationFrame(()=>d.fitView({padding:.2,maxZoom:1.1,duration:300}))},[e,o,t,n,h,y,d]),u.jsx("div",{ref:a,className:"w-full h-full",children:u.jsxs(VY,{nodes:f,edges:m,onNodesChange:g,nodeTypes:CQ,onNodeClick:(k,v)=>r(Number(v.id)),fitView:!0,fitViewOptions:{padding:.2,maxZoom:1.1},proOptions:{hideAttribution:!0},minZoom:.15,children:[u.jsx(eQ,{variant:ha.Dots,gap:20,size:1.5,color:"var(--color-border-light)"}),u.jsx(oQ,{showInteractive:!1})]})})}function LQ(){var M,U,q;const e=Be(),t=Gt(),{alert:n}=mn(),a=(((M=Xe({queryKey:["projects"],queryFn:ba,refetchInterval:3e3}).data)==null?void 0:M.data)??[]).filter(Y=>Y.pipelineMode==="smartArrange"),o=a.map(Y=>Y.name),[l,d]=C.useState(()=>localStorage.getItem("arrange.project")??""),f=l&&o.includes(l)?l:o[0]??"";C.useEffect(()=>{l&&localStorage.setItem("arrange.project",l)},[l]);const h=a.find(Y=>Y.name===f),g=(h==null?void 0:h.pipelineStatus)==="running",m=Xe({queryKey:["smartarrange",f],queryFn:()=>EQ(f),enabled:!!f,refetchInterval:3e3}),y=Ct({mutationFn:()=>SQ(f),onSuccess:()=>t.invalidateQueries({queryKey:["smartarrange",f]}),onError:Y=>void n({title:e("arrange.approveErr"),body:Y instanceof Error?Y.message:String(Y)})}),b=Ct({mutationFn:()=>i2(f),onSuccess:()=>t.invalidateQueries({queryKey:["projects"]}),onError:Y=>void n({title:e("arrange.startErr"),body:Y instanceof Error?Y.message:String(Y)})}),k=Ct({mutationFn:()=>a2(f),onSuccess:()=>t.invalidateQueries({queryKey:["projects"]}),onError:Y=>void n({title:e("arrange.startErr"),body:Y instanceof Error?Y.message:String(Y)})}),v=(U=m.data)==null?void 0:U.plan,S=C.useMemo(()=>{var Y;return((Y=m.data)==null?void 0:Y.cards)??[]},[(q=m.data)==null?void 0:q.cards]),[E,j]=C.useState(()=>localStorage.getItem("arrange.view")==="lane"?"lane":"free");C.useEffect(()=>{localStorage.setItem("arrange.view",E)},[E]);const N=C.useMemo(()=>{const Y=new Map;return((v==null?void 0:v.tasks)??[]).forEach((D,H)=>Y.set(D.id,{order:H,status:D.status,color:PS(D.id,H),title:D.title})),Y},[v==null?void 0:v.tasks]),[_,O]=C.useState(()=>localStorage.getItem("arrange.panel")!=="0");C.useEffect(()=>{localStorage.setItem("arrange.panel",_?"1":"0")},[_]);const[T,I]=C.useState(null),R=C.useMemo(()=>S.find(Y=>Y.seq===T),[S,T]),F=S.length?Math.max(...S.map(Y=>Y.seq)):0;return u.jsxs("div",{className:"flex flex-col gap-4 h-full min-h-0",children:[u.jsxs("header",{className:"flex items-center justify-between gap-3 flex-wrap shrink-0",children:[u.jsxs("div",{className:"flex items-center gap-4 flex-wrap",children:[u.jsx("h1",{className:"font-[family-name:var(--font-heading)] text-3xl font-bold",children:e("arrange.h1")}),f&&u.jsxs("div",{className:"flex items-center gap-2",children:[g?u.jsxs("button",{className:"nb-btn nb-btn-yellow",style:{padding:"6px 12px",fontSize:12},onClick:()=>k.mutate(),disabled:k.isPending,type:"button","aria-label":e("arrange.stop"),children:[k.isPending?u.jsx(We,{size:12,strokeWidth:3,className:"animate-spin"}):u.jsx(Lb,{size:12,strokeWidth:3}),e("arrange.stop")]}):u.jsxs("button",{className:"nb-btn nb-btn-primary",style:{padding:"6px 12px",fontSize:12},onClick:()=>b.mutate(),disabled:b.isPending,type:"button","aria-label":e("arrange.start"),children:[b.isPending?u.jsx(We,{size:12,strokeWidth:3,className:"animate-spin"}):u.jsx(Vu,{size:12,strokeWidth:3}),e("arrange.start")]}),v&&u.jsxs(u.Fragment,{children:[u.jsx("span",{className:"nb-status",style:{background:"var(--color-bg-cream)",color:"var(--color-text)"},children:v.status}),u.jsxs("span",{className:"text-sm text-[var(--color-text-muted)]",children:["round ",v.round,"/",v.maxRounds]}),v.status==="awaiting-approval"&&u.jsxs("button",{className:"nb-btn nb-btn-primary",style:{padding:"6px 12px",fontSize:12},onClick:()=>y.mutate(),disabled:y.isPending,type:"button","aria-label":e("arrange.approve"),children:[y.isPending?u.jsx(We,{size:12,strokeWidth:3,className:"animate-spin"}):u.jsx(ch,{size:12,strokeWidth:2.5}),e("arrange.approve")]})]})]})]}),u.jsxs("div",{className:"flex items-center gap-2",children:[v&&u.jsxs("button",{className:"nb-btn",style:{padding:"6px 10px",fontSize:12},onClick:()=>j(E==="free"?"lane":"free"),type:"button","aria-label":e("arrange.view"),children:[E==="lane"?u.jsx(PL,{size:14,strokeWidth:2.5}):u.jsx(PN,{size:14,strokeWidth:2.5}),e(E==="lane"?"arrange.viewLane":"arrange.viewFree")]}),u.jsxs("select",{className:"nb-input",style:{maxWidth:240},value:f,onChange:Y=>d(Y.target.value),"aria-label":e("arrange.project"),children:[o.length===0&&u.jsx("option",{value:"",children:"—"}),o.map(Y=>u.jsx("option",{value:Y,children:Y},Y))]})]})]}),v?u.jsxs("div",{className:"flex gap-4 flex-1 min-h-0",children:[u.jsxs("div",{className:"relative flex-1 min-h-0 rounded-2xl border-[3px] border-[var(--color-text)] overflow-hidden bg-[var(--color-bg-soft)]",style:{boxShadow:"4px 4px 0 var(--color-text)"},children:[S.length===0?u.jsx("div",{className:"absolute inset-0 grid place-items-center p-6",children:v.status==="running"?u.jsxs("div",{className:"flex flex-col items-center gap-3 text-[var(--color-text-muted)]",children:[u.jsx(We,{size:28,strokeWidth:3,className:"animate-spin"}),u.jsx("p",{className:"text-sm",children:e("arrange.orchestrating")})]}):u.jsx("p",{className:"text-[var(--color-text-muted)] text-sm text-center max-w-sm",children:e("arrange.noCards")})}):u.jsx(NA,{children:u.jsx(RQ,{cards:S,taskMeta:N,view:E,onSelect:I})}),!_&&u.jsxs("button",{className:"nb-btn absolute right-3 top-3 z-10",style:{padding:"6px 10px",fontSize:12},onClick:()=>O(!0),type:"button","aria-label":e("arrange.expand"),children:[u.jsx(Wl,{size:14,strokeWidth:3,className:"rotate-180"}),e("arrange.tasks")]})]}),_&&u.jsxs("aside",{className:"w-72 shrink-0 nb-card overflow-auto flex flex-col gap-2",style:{padding:12},children:[u.jsxs("div",{className:"flex items-center justify-between",children:[u.jsx("h2",{className:"font-[family-name:var(--font-heading)] text-lg font-bold",children:e("arrange.tasks")}),u.jsx("button",{className:"nb-btn",style:{padding:"2px 6px"},onClick:()=>O(!1),type:"button","aria-label":e("arrange.collapse"),children:u.jsx(kL,{size:14,strokeWidth:2.5})})]}),v.tasks.length===0?u.jsxs("div",{className:"flex flex-col items-center justify-center gap-3 py-10 text-[var(--color-text-muted)]",children:[u.jsx(We,{size:22,strokeWidth:3,className:"animate-spin"}),u.jsx("p",{className:"text-xs text-center",children:e("arrange.planning")})]}):u.jsx("ul",{className:"flex flex-col gap-2",children:v.tasks.map((Y,D)=>u.jsxs("li",{className:"rounded-lg border-2 border-[var(--color-text)] p-2",style:{background:PS(Y.id,D)},children:[u.jsxs("div",{className:"flex items-center gap-2",children:[u.jsx("span",{className:"w-2.5 h-2.5 rounded-full inline-block shrink-0 border border-[var(--color-text)]",style:{background:TQ[Y.status]??"gray"}}),u.jsxs("span",{className:"font-bold text-xs text-[var(--color-text)]",children:["T",Y.id]}),u.jsxs("span",{className:"text-[11px] ml-auto font-[family-name:var(--font-mono)] text-[var(--color-text)]",children:[Y.cardSeqs.length," ",e("arrange.cardsCount")]})]}),u.jsx("p",{className:"text-xs text-[var(--color-text)] mt-1 leading-snug",children:Y.title})]},Y.id))})]})]}):u.jsx("section",{className:"nb-card",children:g?u.jsxs("div",{className:"flex items-center gap-3",children:[u.jsx(We,{size:18,strokeWidth:3,className:"animate-spin"}),u.jsx("p",{className:"text-sm font-bold",children:e("arrange.starting")})]}):u.jsx("p",{className:"text-[var(--color-text-muted)] text-sm",children:e("arrange.none")})}),R&&u.jsx(_Q,{card:R,status:bb(R.status,R.seq,F),onClose:()=>I(null)})]})}function IQ(){const e=Be();return u.jsxs("div",{className:"nb-card max-w-2xl mt-12",children:[u.jsx("h1",{className:"font-[family-name:var(--font-heading)] text-4xl font-bold mb-2",children:e("notFound.title")}),u.jsx("p",{className:"text-[var(--color-text-muted)] mb-6",children:e("notFound.body")}),u.jsx(bs,{to:"/",className:"nb-btn nb-btn-mint inline-flex",children:e("notFound.home")})]})}function zQ(){return u.jsx(K3,{children:u.jsx(TO,{children:u.jsxs(En,{element:u.jsx(q3,{}),children:[u.jsx(En,{index:!0,element:u.jsx(jO,{to:"/projects",replace:!0})}),u.jsx(En,{path:"/projects",element:u.jsx(xk,{})}),u.jsx(En,{path:"/projects/new",element:u.jsx(r2,{})}),u.jsx(En,{path:"/projects/:name",element:u.jsx(xk,{})}),u.jsx(En,{path:"/board",element:u.jsx(y4,{})}),u.jsx(En,{path:"/workers",element:u.jsx(D4,{})}),u.jsx(En,{path:"/logs",element:u.jsx(z4,{})}),u.jsx(En,{path:"/skills",element:u.jsx(r8,{})}),u.jsx(En,{path:"/prompts",element:u.jsx(c8,{})}),u.jsx(En,{path:"/system",element:u.jsx(p8,{})}),u.jsx(En,{path:"/processes",element:u.jsx($8,{})}),u.jsx(En,{path:"/audit",element:u.jsx(K8,{})}),u.jsx(En,{path:"/chat",element:u.jsx(EE,{})}),u.jsx(En,{path:"/chat/:sessionId",element:u.jsx(EE,{})}),u.jsx(En,{path:"/memory",element:u.jsx(G8,{})}),u.jsx(En,{path:"/plugins",element:u.jsx(rq,{})}),u.jsx(En,{path:"/arrange",element:u.jsx(LQ,{})}),u.jsx(En,{path:"*",element:u.jsx(IQ,{})})]})})})}H3();const PQ=new yD({defaultOptions:{queries:{staleTime:3e4,refetchOnWindowFocus:!1}}}),DA=document.getElementById("root");if(!DA)throw new Error("#root not found");GM.createRoot(DA).render(u.jsx(C.StrictMode,{children:u.jsx(p3,{children:u.jsx(bD,{client:PQ,children:u.jsx(tR,{children:u.jsx(V3,{children:u.jsx(zQ,{})})})})})}));