agent-nuvira 3.3.12 → 3.3.13

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 (152) hide show
  1. package/dist/agents/agents/reasoner.d.ts.map +1 -1
  2. package/dist/agents/agents/reasoner.js +13 -0
  3. package/dist/agents/agents/reasoner.js.map +1 -1
  4. package/dist/agents/orchestrator.d.ts.map +1 -1
  5. package/dist/agents/orchestrator.js +29 -9
  6. package/dist/agents/orchestrator.js.map +1 -1
  7. package/dist/cli/chat.d.ts.map +1 -1
  8. package/dist/cli/chat.js +34 -7
  9. package/dist/cli/chat.js.map +1 -1
  10. package/dist/cli/cli-program.d.ts.map +1 -1
  11. package/dist/cli/cli-program.js +8 -0
  12. package/dist/cli/cli-program.js.map +1 -1
  13. package/dist/cli/config.d.ts.map +1 -1
  14. package/dist/cli/config.js +21 -3
  15. package/dist/cli/config.js.map +1 -1
  16. package/dist/cli/execute.d.ts.map +1 -1
  17. package/dist/cli/execute.js +6 -0
  18. package/dist/cli/execute.js.map +1 -1
  19. package/dist/cli/knowledge.d.ts +23 -0
  20. package/dist/cli/knowledge.d.ts.map +1 -0
  21. package/dist/cli/knowledge.js +132 -0
  22. package/dist/cli/knowledge.js.map +1 -0
  23. package/dist/cli/loop-executor.d.ts.map +1 -1
  24. package/dist/cli/loop-executor.js +45 -6
  25. package/dist/cli/loop-executor.js.map +1 -1
  26. package/dist/cli/omniroute-control.d.ts +88 -0
  27. package/dist/cli/omniroute-control.d.ts.map +1 -0
  28. package/dist/cli/omniroute-control.js +179 -0
  29. package/dist/cli/omniroute-control.js.map +1 -0
  30. package/dist/cli/omniroute.d.ts +21 -0
  31. package/dist/cli/omniroute.d.ts.map +1 -0
  32. package/dist/cli/omniroute.js +67 -0
  33. package/dist/cli/omniroute.js.map +1 -0
  34. package/dist/config/types.d.ts +8 -0
  35. package/dist/config/types.d.ts.map +1 -1
  36. package/dist/context/history.d.ts +21 -0
  37. package/dist/context/history.d.ts.map +1 -1
  38. package/dist/context/history.js +50 -0
  39. package/dist/context/history.js.map +1 -1
  40. package/dist/gateway/hook-contract.d.ts +173 -0
  41. package/dist/gateway/hook-contract.d.ts.map +1 -0
  42. package/dist/gateway/hook-contract.js +352 -0
  43. package/dist/gateway/hook-contract.js.map +1 -0
  44. package/dist/gateway/hooks.d.ts.map +1 -1
  45. package/dist/gateway/hooks.js +14 -0
  46. package/dist/gateway/hooks.js.map +1 -1
  47. package/dist/inference/interface.d.ts +17 -0
  48. package/dist/inference/interface.d.ts.map +1 -1
  49. package/dist/inference/model-id-validation.d.ts +57 -0
  50. package/dist/inference/model-id-validation.d.ts.map +1 -0
  51. package/dist/inference/model-id-validation.js +127 -0
  52. package/dist/inference/model-id-validation.js.map +1 -0
  53. package/dist/inference/openai-compat-adapter.d.ts.map +1 -1
  54. package/dist/inference/openai-compat-adapter.js +12 -1
  55. package/dist/inference/openai-compat-adapter.js.map +1 -1
  56. package/dist/inference/provider-catalog.d.ts +11 -0
  57. package/dist/inference/provider-catalog.d.ts.map +1 -1
  58. package/dist/inference/provider-catalog.js +80 -0
  59. package/dist/inference/provider-catalog.js.map +1 -1
  60. package/dist/inference/route-resolver.d.ts +2 -8
  61. package/dist/inference/route-resolver.d.ts.map +1 -1
  62. package/dist/inference/route-resolver.js +17 -0
  63. package/dist/inference/route-resolver.js.map +1 -1
  64. package/dist/inference/tool-call-utils.d.ts.map +1 -1
  65. package/dist/inference/tool-call-utils.js +10 -8
  66. package/dist/inference/tool-call-utils.js.map +1 -1
  67. package/dist/inference/tools.d.ts +1 -0
  68. package/dist/inference/tools.d.ts.map +1 -1
  69. package/dist/inference/tools.js +20 -3
  70. package/dist/inference/tools.js.map +1 -1
  71. package/dist/learning/auto-router.d.ts +53 -0
  72. package/dist/learning/auto-router.d.ts.map +1 -1
  73. package/dist/learning/auto-router.js +73 -0
  74. package/dist/learning/auto-router.js.map +1 -1
  75. package/dist/learning/error-repair.d.ts +23 -1
  76. package/dist/learning/error-repair.d.ts.map +1 -1
  77. package/dist/learning/error-repair.js +58 -0
  78. package/dist/learning/error-repair.js.map +1 -1
  79. package/dist/learning/knowledge-base.d.ts +124 -0
  80. package/dist/learning/knowledge-base.d.ts.map +1 -0
  81. package/dist/learning/knowledge-base.js +337 -0
  82. package/dist/learning/knowledge-base.js.map +1 -0
  83. package/dist/learning/model-selection.d.ts +2 -1
  84. package/dist/learning/model-selection.d.ts.map +1 -1
  85. package/dist/learning/model-selection.js +35 -2
  86. package/dist/learning/model-selection.js.map +1 -1
  87. package/dist/learning/project-docs.d.ts +83 -0
  88. package/dist/learning/project-docs.d.ts.map +1 -0
  89. package/dist/learning/project-docs.js +132 -0
  90. package/dist/learning/project-docs.js.map +1 -0
  91. package/dist/learning/quota-ledger.d.ts +13 -0
  92. package/dist/learning/quota-ledger.d.ts.map +1 -1
  93. package/dist/learning/quota-ledger.js +28 -0
  94. package/dist/learning/quota-ledger.js.map +1 -1
  95. package/dist/learning/seeded-benchmark.d.ts +14 -0
  96. package/dist/learning/seeded-benchmark.d.ts.map +1 -1
  97. package/dist/learning/seeded-benchmark.js +43 -4
  98. package/dist/learning/seeded-benchmark.js.map +1 -1
  99. package/dist/security/secret-scan.d.ts +156 -0
  100. package/dist/security/secret-scan.d.ts.map +1 -0
  101. package/dist/security/secret-scan.js +525 -0
  102. package/dist/security/secret-scan.js.map +1 -0
  103. package/dist/tools/plan-store.d.ts +24 -2
  104. package/dist/tools/plan-store.d.ts.map +1 -1
  105. package/dist/tools/plan-store.js +42 -2
  106. package/dist/tools/plan-store.js.map +1 -1
  107. package/dist/tools/registry.d.ts.map +1 -1
  108. package/dist/tools/registry.js +149 -1
  109. package/dist/tools/registry.js.map +1 -1
  110. package/dist/tools/remediation-ladder.d.ts +91 -0
  111. package/dist/tools/remediation-ladder.d.ts.map +1 -0
  112. package/dist/tools/remediation-ladder.js +308 -0
  113. package/dist/tools/remediation-ladder.js.map +1 -0
  114. package/dist/tools/run-terminal.d.ts.map +1 -1
  115. package/dist/tools/run-terminal.js +26 -2
  116. package/dist/tools/run-terminal.js.map +1 -1
  117. package/dist/tools/skills-hub.d.ts +7 -0
  118. package/dist/tools/skills-hub.d.ts.map +1 -1
  119. package/dist/tools/skills-hub.js +11 -2
  120. package/dist/tools/skills-hub.js.map +1 -1
  121. package/dist/tools/step-artifact.d.ts +35 -0
  122. package/dist/tools/step-artifact.d.ts.map +1 -0
  123. package/dist/tools/step-artifact.js +154 -0
  124. package/dist/tools/step-artifact.js.map +1 -0
  125. package/dist/tools/tool-loop.d.ts +6 -0
  126. package/dist/tools/tool-loop.d.ts.map +1 -1
  127. package/dist/tools/tool-loop.js +27 -3
  128. package/dist/tools/tool-loop.js.map +1 -1
  129. package/dist/tools/toolsets.js +4 -4
  130. package/dist/tools/toolsets.js.map +1 -1
  131. package/dist/tools/worktree.d.ts +11 -2
  132. package/dist/tools/worktree.d.ts.map +1 -1
  133. package/dist/tools/worktree.js +11 -2
  134. package/dist/tools/worktree.js.map +1 -1
  135. package/dist/web-dashboard/server.d.ts +29 -0
  136. package/dist/web-dashboard/server.d.ts.map +1 -1
  137. package/dist/web-dashboard/server.js +372 -5
  138. package/dist/web-dashboard/server.js.map +1 -1
  139. package/dist/web-dashboard/src/types.d.ts +66 -0
  140. package/dist/web-dashboard/src/types.d.ts.map +1 -1
  141. package/dist/web-dashboard/workspace-guard.d.ts +7 -0
  142. package/dist/web-dashboard/workspace-guard.d.ts.map +1 -1
  143. package/dist/web-dashboard/workspace-guard.js +70 -0
  144. package/dist/web-dashboard/workspace-guard.js.map +1 -1
  145. package/package.json +1 -1
  146. package/src/web-dashboard/public/assets/index-DhiuR4S2.js +210 -0
  147. package/src/web-dashboard/public/assets/index-DhiuR4S2.js.map +1 -0
  148. package/src/web-dashboard/public/assets/index-tK8Y2qHB.css +1 -0
  149. package/src/web-dashboard/public/index.html +2 -2
  150. package/src/web-dashboard/public/assets/index-BrZcYhy6.js +0 -207
  151. package/src/web-dashboard/public/assets/index-BrZcYhy6.js.map +0 -1
  152. package/src/web-dashboard/public/assets/index-DsWczTa6.css +0 -1
@@ -1,207 +0,0 @@
1
- var u$=Object.defineProperty;var d$=(e,t,n)=>t in e?u$(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var Qr=(e,t,n)=>d$(e,typeof t!="symbol"?t+"":t,n);function f$(e,t){for(var n=0;n<t.length;n++){const r=t[n];if(typeof r!="string"&&!Array.isArray(r)){for(const a in r)if(a!=="default"&&!(a in e)){const s=Object.getOwnPropertyDescriptor(r,a);s&&Object.defineProperty(e,a,s.get?s:{enumerable:!0,get:()=>r[a]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const a of document.querySelectorAll('link[rel="modulepreload"]'))r(a);new MutationObserver(a=>{for(const s of a)if(s.type==="childList")for(const o of s.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&r(o)}).observe(document,{childList:!0,subtree:!0});function n(a){const s={};return a.integrity&&(s.integrity=a.integrity),a.referrerPolicy&&(s.referrerPolicy=a.referrerPolicy),a.crossOrigin==="use-credentials"?s.credentials="include":a.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function r(a){if(a.ep)return;a.ep=!0;const s=n(a);fetch(a.href,s)}})();var ri=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Ze(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var X_={exports:{}},lp={},Q_={exports:{}},Ue={};/**
2
- * @license React
3
- * react.production.min.js
4
- *
5
- * Copyright (c) Facebook, Inc. and its affiliates.
6
- *
7
- * This source code is licensed under the MIT license found in the
8
- * LICENSE file in the root directory of this source tree.
9
- */var Gu=Symbol.for("react.element"),h$=Symbol.for("react.portal"),p$=Symbol.for("react.fragment"),m$=Symbol.for("react.strict_mode"),g$=Symbol.for("react.profiler"),v$=Symbol.for("react.provider"),y$=Symbol.for("react.context"),b$=Symbol.for("react.forward_ref"),x$=Symbol.for("react.suspense"),w$=Symbol.for("react.memo"),k$=Symbol.for("react.lazy"),M0=Symbol.iterator;function S$(e){return e===null||typeof e!="object"?null:(e=M0&&e[M0]||e["@@iterator"],typeof e=="function"?e:null)}var Z_={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},J_=Object.assign,eA={};function ml(e,t,n){this.props=e,this.context=t,this.refs=eA,this.updater=n||Z_}ml.prototype.isReactComponent={};ml.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};ml.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function tA(){}tA.prototype=ml.prototype;function Xb(e,t,n){this.props=e,this.context=t,this.refs=eA,this.updater=n||Z_}var Qb=Xb.prototype=new tA;Qb.constructor=Xb;J_(Qb,ml.prototype);Qb.isPureReactComponent=!0;var I0=Array.isArray,nA=Object.prototype.hasOwnProperty,Zb={current:null},rA={key:!0,ref:!0,__self:!0,__source:!0};function aA(e,t,n){var r,a={},s=null,o=null;if(t!=null)for(r in t.ref!==void 0&&(o=t.ref),t.key!==void 0&&(s=""+t.key),t)nA.call(t,r)&&!rA.hasOwnProperty(r)&&(a[r]=t[r]);var l=arguments.length-2;if(l===1)a.children=n;else if(1<l){for(var c=Array(l),u=0;u<l;u++)c[u]=arguments[u+2];a.children=c}if(e&&e.defaultProps)for(r in l=e.defaultProps,l)a[r]===void 0&&(a[r]=l[r]);return{$$typeof:Gu,type:e,key:s,ref:o,props:a,_owner:Zb.current}}function j$(e,t){return{$$typeof:Gu,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}function Jb(e){return typeof e=="object"&&e!==null&&e.$$typeof===Gu}function N$(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,function(n){return t[n]})}var $0=/\/+/g;function Cm(e,t){return typeof e=="object"&&e!==null&&e.key!=null?N$(""+e.key):t.toString(36)}function df(e,t,n,r,a){var s=typeof e;(s==="undefined"||s==="boolean")&&(e=null);var o=!1;if(e===null)o=!0;else switch(s){case"string":case"number":o=!0;break;case"object":switch(e.$$typeof){case Gu:case h$:o=!0}}if(o)return o=e,a=a(o),e=r===""?"."+Cm(o,0):r,I0(a)?(n="",e!=null&&(n=e.replace($0,"$&/")+"/"),df(a,t,n,"",function(u){return u})):a!=null&&(Jb(a)&&(a=j$(a,n+(!a.key||o&&o.key===a.key?"":(""+a.key).replace($0,"$&/")+"/")+e)),t.push(a)),1;if(o=0,r=r===""?".":r+":",I0(e))for(var l=0;l<e.length;l++){s=e[l];var c=r+Cm(s,l);o+=df(s,t,n,c,a)}else if(c=S$(e),typeof c=="function")for(e=c.call(e),l=0;!(s=e.next()).done;)s=s.value,c=r+Cm(s,l++),o+=df(s,t,n,c,a);else if(s==="object")throw t=String(e),Error("Objects are not valid as a React child (found: "+(t==="[object Object]"?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.");return o}function yd(e,t,n){if(e==null)return e;var r=[],a=0;return df(e,r,"","",function(s){return t.call(n,s,a++)}),r}function E$(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(n){(e._status===0||e._status===-1)&&(e._status=1,e._result=n)},function(n){(e._status===0||e._status===-1)&&(e._status=2,e._result=n)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var On={current:null},ff={transition:null},_$={ReactCurrentDispatcher:On,ReactCurrentBatchConfig:ff,ReactCurrentOwner:Zb};function iA(){throw Error("act(...) is not supported in production builds of React.")}Ue.Children={map:yd,forEach:function(e,t,n){yd(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return yd(e,function(){t++}),t},toArray:function(e){return yd(e,function(t){return t})||[]},only:function(e){if(!Jb(e))throw Error("React.Children.only expected to receive a single React element child.");return e}};Ue.Component=ml;Ue.Fragment=p$;Ue.Profiler=g$;Ue.PureComponent=Xb;Ue.StrictMode=m$;Ue.Suspense=x$;Ue.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=_$;Ue.act=iA;Ue.cloneElement=function(e,t,n){if(e==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var r=J_({},e.props),a=e.key,s=e.ref,o=e._owner;if(t!=null){if(t.ref!==void 0&&(s=t.ref,o=Zb.current),t.key!==void 0&&(a=""+t.key),e.type&&e.type.defaultProps)var l=e.type.defaultProps;for(c in t)nA.call(t,c)&&!rA.hasOwnProperty(c)&&(r[c]=t[c]===void 0&&l!==void 0?l[c]:t[c])}var c=arguments.length-2;if(c===1)r.children=n;else if(1<c){l=Array(c);for(var u=0;u<c;u++)l[u]=arguments[u+2];r.children=l}return{$$typeof:Gu,type:e.type,key:a,ref:s,props:r,_owner:o}};Ue.createContext=function(e){return e={$$typeof:y$,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},e.Provider={$$typeof:v$,_context:e},e.Consumer=e};Ue.createElement=aA;Ue.createFactory=function(e){var t=aA.bind(null,e);return t.type=e,t};Ue.createRef=function(){return{current:null}};Ue.forwardRef=function(e){return{$$typeof:b$,render:e}};Ue.isValidElement=Jb;Ue.lazy=function(e){return{$$typeof:k$,_payload:{_status:-1,_result:e},_init:E$}};Ue.memo=function(e,t){return{$$typeof:w$,type:e,compare:t===void 0?null:t}};Ue.startTransition=function(e){var t=ff.transition;ff.transition={};try{e()}finally{ff.transition=t}};Ue.unstable_act=iA;Ue.useCallback=function(e,t){return On.current.useCallback(e,t)};Ue.useContext=function(e){return On.current.useContext(e)};Ue.useDebugValue=function(){};Ue.useDeferredValue=function(e){return On.current.useDeferredValue(e)};Ue.useEffect=function(e,t){return On.current.useEffect(e,t)};Ue.useId=function(){return On.current.useId()};Ue.useImperativeHandle=function(e,t,n){return On.current.useImperativeHandle(e,t,n)};Ue.useInsertionEffect=function(e,t){return On.current.useInsertionEffect(e,t)};Ue.useLayoutEffect=function(e,t){return On.current.useLayoutEffect(e,t)};Ue.useMemo=function(e,t){return On.current.useMemo(e,t)};Ue.useReducer=function(e,t,n){return On.current.useReducer(e,t,n)};Ue.useRef=function(e){return On.current.useRef(e)};Ue.useState=function(e){return On.current.useState(e)};Ue.useSyncExternalStore=function(e,t,n){return On.current.useSyncExternalStore(e,t,n)};Ue.useTransition=function(){return On.current.useTransition()};Ue.version="18.3.1";Q_.exports=Ue;var S=Q_.exports;const q=Ze(S),A$=f$({__proto__:null,default:q},[S]);/**
10
- * @license React
11
- * react-jsx-runtime.production.min.js
12
- *
13
- * Copyright (c) Facebook, Inc. and its affiliates.
14
- *
15
- * This source code is licensed under the MIT license found in the
16
- * LICENSE file in the root directory of this source tree.
17
- */var C$=S,T$=Symbol.for("react.element"),O$=Symbol.for("react.fragment"),P$=Object.prototype.hasOwnProperty,R$=C$.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,M$={key:!0,ref:!0,__self:!0,__source:!0};function sA(e,t,n){var r,a={},s=null,o=null;n!==void 0&&(s=""+n),t.key!==void 0&&(s=""+t.key),t.ref!==void 0&&(o=t.ref);for(r in t)P$.call(t,r)&&!M$.hasOwnProperty(r)&&(a[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps,t)a[r]===void 0&&(a[r]=t[r]);return{$$typeof:T$,type:e,key:s,ref:o,props:a,_owner:R$.current}}lp.Fragment=O$;lp.jsx=sA;lp.jsxs=sA;X_.exports=lp;var i=X_.exports,oA={exports:{}},ar={},lA={exports:{}},cA={};/**
18
- * @license React
19
- * scheduler.production.min.js
20
- *
21
- * Copyright (c) Facebook, Inc. and its affiliates.
22
- *
23
- * This source code is licensed under the MIT license found in the
24
- * LICENSE file in the root directory of this source tree.
25
- */(function(e){function t(A,z){var T=A.length;A.push(z);e:for(;0<T;){var K=T-1>>>1,D=A[K];if(0<a(D,z))A[K]=z,A[T]=D,T=K;else break e}}function n(A){return A.length===0?null:A[0]}function r(A){if(A.length===0)return null;var z=A[0],T=A.pop();if(T!==z){A[0]=T;e:for(var K=0,D=A.length,I=D>>>1;K<I;){var ce=2*(K+1)-1,ge=A[ce],ve=ce+1,Ce=A[ve];if(0>a(ge,T))ve<D&&0>a(Ce,ge)?(A[K]=Ce,A[ve]=T,K=ve):(A[K]=ge,A[ce]=T,K=ce);else if(ve<D&&0>a(Ce,T))A[K]=Ce,A[ve]=T,K=ve;else break e}}return z}function a(A,z){var T=A.sortIndex-z.sortIndex;return T!==0?T:A.id-z.id}if(typeof performance=="object"&&typeof performance.now=="function"){var s=performance;e.unstable_now=function(){return s.now()}}else{var o=Date,l=o.now();e.unstable_now=function(){return o.now()-l}}var c=[],u=[],d=1,f=null,h=3,p=!1,g=!1,m=!1,y=typeof setTimeout=="function"?setTimeout:null,v=typeof clearTimeout=="function"?clearTimeout:null,k=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function x(A){for(var z=n(u);z!==null;){if(z.callback===null)r(u);else if(z.startTime<=A)r(u),z.sortIndex=z.expirationTime,t(c,z);else break;z=n(u)}}function j(A){if(m=!1,x(A),!g)if(n(c)!==null)g=!0,L(w);else{var z=n(u);z!==null&&W(j,z.startTime-A)}}function w(A,z){g=!1,m&&(m=!1,v(E),E=-1),p=!0;var T=h;try{for(x(z),f=n(c);f!==null&&(!(f.expirationTime>z)||A&&!P());){var K=f.callback;if(typeof K=="function"){f.callback=null,h=f.priorityLevel;var D=K(f.expirationTime<=z);z=e.unstable_now(),typeof D=="function"?f.callback=D:f===n(c)&&r(c),x(z)}else r(c);f=n(c)}if(f!==null)var I=!0;else{var ce=n(u);ce!==null&&W(j,ce.startTime-z),I=!1}return I}finally{f=null,h=T,p=!1}}var b=!1,N=null,E=-1,O=5,C=-1;function P(){return!(e.unstable_now()-C<O)}function $(){if(N!==null){var A=e.unstable_now();C=A;var z=!0;try{z=N(!0,A)}finally{z?B():(b=!1,N=null)}}else b=!1}var B;if(typeof k=="function")B=function(){k($)};else if(typeof MessageChannel<"u"){var M=new MessageChannel,F=M.port2;M.port1.onmessage=$,B=function(){F.postMessage(null)}}else B=function(){y($,0)};function L(A){N=A,b||(b=!0,B())}function W(A,z){E=y(function(){A(e.unstable_now())},z)}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(A){A.callback=null},e.unstable_continueExecution=function(){g||p||(g=!0,L(w))},e.unstable_forceFrameRate=function(A){0>A||125<A?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):O=0<A?Math.floor(1e3/A):5},e.unstable_getCurrentPriorityLevel=function(){return h},e.unstable_getFirstCallbackNode=function(){return n(c)},e.unstable_next=function(A){switch(h){case 1:case 2:case 3:var z=3;break;default:z=h}var T=h;h=z;try{return A()}finally{h=T}},e.unstable_pauseExecution=function(){},e.unstable_requestPaint=function(){},e.unstable_runWithPriority=function(A,z){switch(A){case 1:case 2:case 3:case 4:case 5:break;default:A=3}var T=h;h=A;try{return z()}finally{h=T}},e.unstable_scheduleCallback=function(A,z,T){var K=e.unstable_now();switch(typeof T=="object"&&T!==null?(T=T.delay,T=typeof T=="number"&&0<T?K+T:K):T=K,A){case 1:var D=-1;break;case 2:D=250;break;case 5:D=1073741823;break;case 4:D=1e4;break;default:D=5e3}return D=T+D,A={id:d++,callback:z,priorityLevel:A,startTime:T,expirationTime:D,sortIndex:-1},T>K?(A.sortIndex=T,t(u,A),n(c)===null&&A===n(u)&&(m?(v(E),E=-1):m=!0,W(j,T-K))):(A.sortIndex=D,t(c,A),g||p||(g=!0,L(w))),A},e.unstable_shouldYield=P,e.unstable_wrapCallback=function(A){var z=h;return function(){var T=h;h=z;try{return A.apply(this,arguments)}finally{h=T}}}})(cA);lA.exports=cA;var I$=lA.exports;/**
26
- * @license React
27
- * react-dom.production.min.js
28
- *
29
- * Copyright (c) Facebook, Inc. and its affiliates.
30
- *
31
- * This source code is licensed under the MIT license found in the
32
- * LICENSE file in the root directory of this source tree.
33
- */var $$=S,nr=I$;function se(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var uA=new Set,Bc={};function Ps(e,t){Do(e,t),Do(e+"Capture",t)}function Do(e,t){for(Bc[e]=t,e=0;e<t.length;e++)uA.add(t[e])}var Ta=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),dv=Object.prototype.hasOwnProperty,L$=/^[: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]*$/,L0={},D0={};function D$(e){return dv.call(D0,e)?!0:dv.call(L0,e)?!1:L$.test(e)?D0[e]=!0:(L0[e]=!0,!1)}function B$(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return r?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function z$(e,t,n,r){if(t===null||typeof t>"u"||B$(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function Pn(e,t,n,r,a,s,o){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=a,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=s,this.removeEmptyString=o}var dn={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){dn[e]=new Pn(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];dn[t]=new Pn(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){dn[e]=new Pn(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){dn[e]=new Pn(e,2,!1,e,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){dn[e]=new Pn(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){dn[e]=new Pn(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){dn[e]=new Pn(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){dn[e]=new Pn(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){dn[e]=new Pn(e,5,!1,e.toLowerCase(),null,!1,!1)});var ex=/[\-:]([a-z])/g;function tx(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(ex,tx);dn[t]=new Pn(t,1,!1,e,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(ex,tx);dn[t]=new Pn(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(ex,tx);dn[t]=new Pn(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){dn[e]=new Pn(e,1,!1,e.toLowerCase(),null,!1,!1)});dn.xlinkHref=new Pn("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){dn[e]=new Pn(e,1,!1,e.toLowerCase(),null,!0,!0)});function nx(e,t,n,r){var a=dn.hasOwnProperty(t)?dn[t]:null;(a!==null?a.type!==0:r||!(2<t.length)||t[0]!=="o"&&t[0]!=="O"||t[1]!=="n"&&t[1]!=="N")&&(z$(t,n,a,r)&&(n=null),r||a===null?D$(t)&&(n===null?e.removeAttribute(t):e.setAttribute(t,""+n)):a.mustUseProperty?e[a.propertyName]=n===null?a.type===3?!1:"":n:(t=a.attributeName,r=a.attributeNamespace,n===null?e.removeAttribute(t):(a=a.type,n=a===3||a===4&&n===!0?"":""+n,r?e.setAttributeNS(r,t,n):e.setAttribute(t,n))))}var La=$$.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,bd=Symbol.for("react.element"),uo=Symbol.for("react.portal"),fo=Symbol.for("react.fragment"),rx=Symbol.for("react.strict_mode"),fv=Symbol.for("react.profiler"),dA=Symbol.for("react.provider"),fA=Symbol.for("react.context"),ax=Symbol.for("react.forward_ref"),hv=Symbol.for("react.suspense"),pv=Symbol.for("react.suspense_list"),ix=Symbol.for("react.memo"),Xa=Symbol.for("react.lazy"),hA=Symbol.for("react.offscreen"),B0=Symbol.iterator;function Kl(e){return e===null||typeof e!="object"?null:(e=B0&&e[B0]||e["@@iterator"],typeof e=="function"?e:null)}var At=Object.assign,Tm;function mc(e){if(Tm===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);Tm=t&&t[1]||""}return`
34
- `+Tm+e}var Om=!1;function Pm(e,t){if(!e||Om)return"";Om=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(t,[])}catch(u){var r=u}Reflect.construct(e,[],t)}else{try{t.call()}catch(u){r=u}e.call(t.prototype)}else{try{throw Error()}catch(u){r=u}e()}}catch(u){if(u&&r&&typeof u.stack=="string"){for(var a=u.stack.split(`
35
- `),s=r.stack.split(`
36
- `),o=a.length-1,l=s.length-1;1<=o&&0<=l&&a[o]!==s[l];)l--;for(;1<=o&&0<=l;o--,l--)if(a[o]!==s[l]){if(o!==1||l!==1)do if(o--,l--,0>l||a[o]!==s[l]){var c=`
37
- `+a[o].replace(" at new "," at ");return e.displayName&&c.includes("<anonymous>")&&(c=c.replace("<anonymous>",e.displayName)),c}while(1<=o&&0<=l);break}}}finally{Om=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?mc(e):""}function F$(e){switch(e.tag){case 5:return mc(e.type);case 16:return mc("Lazy");case 13:return mc("Suspense");case 19:return mc("SuspenseList");case 0:case 2:case 15:return e=Pm(e.type,!1),e;case 11:return e=Pm(e.type.render,!1),e;case 1:return e=Pm(e.type,!0),e;default:return""}}function mv(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case fo:return"Fragment";case uo:return"Portal";case fv:return"Profiler";case rx:return"StrictMode";case hv:return"Suspense";case pv:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case fA:return(e.displayName||"Context")+".Consumer";case dA:return(e._context.displayName||"Context")+".Provider";case ax:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case ix:return t=e.displayName||null,t!==null?t:mv(e.type)||"Memo";case Xa:t=e._payload,e=e._init;try{return mv(e(t))}catch{}}return null}function U$(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return mv(t);case 8:return t===rx?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function wi(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function pA(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function W$(e){var t=pA(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var a=n.get,s=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return a.call(this)},set:function(o){r=""+o,s.call(this,o)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(o){r=""+o},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function xd(e){e._valueTracker||(e._valueTracker=W$(e))}function mA(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=pA(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function Ef(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function gv(e,t){var n=t.checked;return At({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function z0(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=wi(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function gA(e,t){t=t.checked,t!=null&&nx(e,"checked",t,!1)}function vv(e,t){gA(e,t);var n=wi(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?yv(e,t.type,n):t.hasOwnProperty("defaultValue")&&yv(e,t.type,wi(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function F0(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function yv(e,t,n){(t!=="number"||Ef(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var gc=Array.isArray;function _o(e,t,n,r){if(e=e.options,t){t={};for(var a=0;a<n.length;a++)t["$"+n[a]]=!0;for(n=0;n<e.length;n++)a=t.hasOwnProperty("$"+e[n].value),e[n].selected!==a&&(e[n].selected=a),a&&r&&(e[n].defaultSelected=!0)}else{for(n=""+wi(n),t=null,a=0;a<e.length;a++){if(e[a].value===n){e[a].selected=!0,r&&(e[a].defaultSelected=!0);return}t!==null||e[a].disabled||(t=e[a])}t!==null&&(t.selected=!0)}}function bv(e,t){if(t.dangerouslySetInnerHTML!=null)throw Error(se(91));return At({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function U0(e,t){var n=t.value;if(n==null){if(n=t.children,t=t.defaultValue,n!=null){if(t!=null)throw Error(se(92));if(gc(n)){if(1<n.length)throw Error(se(93));n=n[0]}t=n}t==null&&(t=""),n=t}e._wrapperState={initialValue:wi(n)}}function vA(e,t){var n=wi(t.value),r=wi(t.defaultValue);n!=null&&(n=""+n,n!==e.value&&(e.value=n),t.defaultValue==null&&e.defaultValue!==n&&(e.defaultValue=n)),r!=null&&(e.defaultValue=""+r)}function W0(e){var t=e.textContent;t===e._wrapperState.initialValue&&t!==""&&t!==null&&(e.value=t)}function yA(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function xv(e,t){return e==null||e==="http://www.w3.org/1999/xhtml"?yA(t):e==="http://www.w3.org/2000/svg"&&t==="foreignObject"?"http://www.w3.org/1999/xhtml":e}var wd,bA=function(e){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(t,n,r,a){MSApp.execUnsafeLocalFunction(function(){return e(t,n,r,a)})}:e}(function(e,t){if(e.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in e)e.innerHTML=t;else{for(wd=wd||document.createElement("div"),wd.innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=wd.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function zc(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var kc={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},H$=["Webkit","ms","Moz","O"];Object.keys(kc).forEach(function(e){H$.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),kc[t]=kc[e]})});function xA(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||kc.hasOwnProperty(e)&&kc[e]?(""+t).trim():t+"px"}function wA(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,a=xA(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,a):e[n]=a}}var G$=At({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function wv(e,t){if(t){if(G$[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(se(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(se(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(se(61))}if(t.style!=null&&typeof t.style!="object")throw Error(se(62))}}function kv(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var Sv=null;function sx(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var jv=null,Ao=null,Co=null;function H0(e){if(e=Vu(e)){if(typeof jv!="function")throw Error(se(280));var t=e.stateNode;t&&(t=hp(t),jv(e.stateNode,e.type,t))}}function kA(e){Ao?Co?Co.push(e):Co=[e]:Ao=e}function SA(){if(Ao){var e=Ao,t=Co;if(Co=Ao=null,H0(e),t)for(e=0;e<t.length;e++)H0(t[e])}}function jA(e,t){return e(t)}function NA(){}var Rm=!1;function EA(e,t,n){if(Rm)return e(t,n);Rm=!0;try{return jA(e,t,n)}finally{Rm=!1,(Ao!==null||Co!==null)&&(NA(),SA())}}function Fc(e,t){var n=e.stateNode;if(n===null)return null;var r=hp(n);if(r===null)return null;n=r[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(r=!r.disabled)||(e=e.type,r=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!r;break e;default:e=!1}if(e)return null;if(n&&typeof n!="function")throw Error(se(231,t,typeof n));return n}var Nv=!1;if(Ta)try{var Vl={};Object.defineProperty(Vl,"passive",{get:function(){Nv=!0}}),window.addEventListener("test",Vl,Vl),window.removeEventListener("test",Vl,Vl)}catch{Nv=!1}function q$(e,t,n,r,a,s,o,l,c){var u=Array.prototype.slice.call(arguments,3);try{t.apply(n,u)}catch(d){this.onError(d)}}var Sc=!1,_f=null,Af=!1,Ev=null,K$={onError:function(e){Sc=!0,_f=e}};function V$(e,t,n,r,a,s,o,l,c){Sc=!1,_f=null,q$.apply(K$,arguments)}function Y$(e,t,n,r,a,s,o,l,c){if(V$.apply(this,arguments),Sc){if(Sc){var u=_f;Sc=!1,_f=null}else throw Error(se(198));Af||(Af=!0,Ev=u)}}function Rs(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function _A(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function G0(e){if(Rs(e)!==e)throw Error(se(188))}function X$(e){var t=e.alternate;if(!t){if(t=Rs(e),t===null)throw Error(se(188));return t!==e?null:e}for(var n=e,r=t;;){var a=n.return;if(a===null)break;var s=a.alternate;if(s===null){if(r=a.return,r!==null){n=r;continue}break}if(a.child===s.child){for(s=a.child;s;){if(s===n)return G0(a),e;if(s===r)return G0(a),t;s=s.sibling}throw Error(se(188))}if(n.return!==r.return)n=a,r=s;else{for(var o=!1,l=a.child;l;){if(l===n){o=!0,n=a,r=s;break}if(l===r){o=!0,r=a,n=s;break}l=l.sibling}if(!o){for(l=s.child;l;){if(l===n){o=!0,n=s,r=a;break}if(l===r){o=!0,r=s,n=a;break}l=l.sibling}if(!o)throw Error(se(189))}}if(n.alternate!==r)throw Error(se(190))}if(n.tag!==3)throw Error(se(188));return n.stateNode.current===n?e:t}function AA(e){return e=X$(e),e!==null?CA(e):null}function CA(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){var t=CA(e);if(t!==null)return t;e=e.sibling}return null}var TA=nr.unstable_scheduleCallback,q0=nr.unstable_cancelCallback,Q$=nr.unstable_shouldYield,Z$=nr.unstable_requestPaint,Mt=nr.unstable_now,J$=nr.unstable_getCurrentPriorityLevel,ox=nr.unstable_ImmediatePriority,OA=nr.unstable_UserBlockingPriority,Cf=nr.unstable_NormalPriority,eL=nr.unstable_LowPriority,PA=nr.unstable_IdlePriority,cp=null,sa=null;function tL(e){if(sa&&typeof sa.onCommitFiberRoot=="function")try{sa.onCommitFiberRoot(cp,e,void 0,(e.current.flags&128)===128)}catch{}}var Br=Math.clz32?Math.clz32:aL,nL=Math.log,rL=Math.LN2;function aL(e){return e>>>=0,e===0?32:31-(nL(e)/rL|0)|0}var kd=64,Sd=4194304;function vc(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function Tf(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,a=e.suspendedLanes,s=e.pingedLanes,o=n&268435455;if(o!==0){var l=o&~a;l!==0?r=vc(l):(s&=o,s!==0&&(r=vc(s)))}else o=n&~a,o!==0?r=vc(o):s!==0&&(r=vc(s));if(r===0)return 0;if(t!==0&&t!==r&&!(t&a)&&(a=r&-r,s=t&-t,a>=s||a===16&&(s&4194240)!==0))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0<t;)n=31-Br(t),a=1<<n,r|=e[n],t&=~a;return r}function iL(e,t){switch(e){case 1:case 2:case 4:return t+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function sL(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,a=e.expirationTimes,s=e.pendingLanes;0<s;){var o=31-Br(s),l=1<<o,c=a[o];c===-1?(!(l&n)||l&r)&&(a[o]=iL(l,t)):c<=t&&(e.expiredLanes|=l),s&=~l}}function _v(e){return e=e.pendingLanes&-1073741825,e!==0?e:e&1073741824?1073741824:0}function RA(){var e=kd;return kd<<=1,!(kd&4194240)&&(kd=64),e}function Mm(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function qu(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Br(t),e[t]=n}function oL(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0<n;){var a=31-Br(n),s=1<<a;t[a]=0,r[a]=-1,e[a]=-1,n&=~s}}function lx(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-Br(n),a=1<<r;a&t|e[r]&t&&(e[r]|=t),n&=~a}}var et=0;function MA(e){return e&=-e,1<e?4<e?e&268435455?16:536870912:4:1}var IA,cx,$A,LA,DA,Av=!1,jd=[],ui=null,di=null,fi=null,Uc=new Map,Wc=new Map,Ja=[],lL="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function K0(e,t){switch(e){case"focusin":case"focusout":ui=null;break;case"dragenter":case"dragleave":di=null;break;case"mouseover":case"mouseout":fi=null;break;case"pointerover":case"pointerout":Uc.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":Wc.delete(t.pointerId)}}function Yl(e,t,n,r,a,s){return e===null||e.nativeEvent!==s?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:s,targetContainers:[a]},t!==null&&(t=Vu(t),t!==null&&cx(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,a!==null&&t.indexOf(a)===-1&&t.push(a),e)}function cL(e,t,n,r,a){switch(t){case"focusin":return ui=Yl(ui,e,t,n,r,a),!0;case"dragenter":return di=Yl(di,e,t,n,r,a),!0;case"mouseover":return fi=Yl(fi,e,t,n,r,a),!0;case"pointerover":var s=a.pointerId;return Uc.set(s,Yl(Uc.get(s)||null,e,t,n,r,a)),!0;case"gotpointercapture":return s=a.pointerId,Wc.set(s,Yl(Wc.get(s)||null,e,t,n,r,a)),!0}return!1}function BA(e){var t=is(e.target);if(t!==null){var n=Rs(t);if(n!==null){if(t=n.tag,t===13){if(t=_A(n),t!==null){e.blockedOn=t,DA(e.priority,function(){$A(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function hf(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=Cv(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n);Sv=r,n.target.dispatchEvent(r),Sv=null}else return t=Vu(n),t!==null&&cx(t),e.blockedOn=n,!1;t.shift()}return!0}function V0(e,t,n){hf(e)&&n.delete(t)}function uL(){Av=!1,ui!==null&&hf(ui)&&(ui=null),di!==null&&hf(di)&&(di=null),fi!==null&&hf(fi)&&(fi=null),Uc.forEach(V0),Wc.forEach(V0)}function Xl(e,t){e.blockedOn===t&&(e.blockedOn=null,Av||(Av=!0,nr.unstable_scheduleCallback(nr.unstable_NormalPriority,uL)))}function Hc(e){function t(a){return Xl(a,e)}if(0<jd.length){Xl(jd[0],e);for(var n=1;n<jd.length;n++){var r=jd[n];r.blockedOn===e&&(r.blockedOn=null)}}for(ui!==null&&Xl(ui,e),di!==null&&Xl(di,e),fi!==null&&Xl(fi,e),Uc.forEach(t),Wc.forEach(t),n=0;n<Ja.length;n++)r=Ja[n],r.blockedOn===e&&(r.blockedOn=null);for(;0<Ja.length&&(n=Ja[0],n.blockedOn===null);)BA(n),n.blockedOn===null&&Ja.shift()}var To=La.ReactCurrentBatchConfig,Of=!0;function dL(e,t,n,r){var a=et,s=To.transition;To.transition=null;try{et=1,ux(e,t,n,r)}finally{et=a,To.transition=s}}function fL(e,t,n,r){var a=et,s=To.transition;To.transition=null;try{et=4,ux(e,t,n,r)}finally{et=a,To.transition=s}}function ux(e,t,n,r){if(Of){var a=Cv(e,t,n,r);if(a===null)Hm(e,t,r,Pf,n),K0(e,r);else if(cL(a,e,t,n,r))r.stopPropagation();else if(K0(e,r),t&4&&-1<lL.indexOf(e)){for(;a!==null;){var s=Vu(a);if(s!==null&&IA(s),s=Cv(e,t,n,r),s===null&&Hm(e,t,r,Pf,n),s===a)break;a=s}a!==null&&r.stopPropagation()}else Hm(e,t,r,null,n)}}var Pf=null;function Cv(e,t,n,r){if(Pf=null,e=sx(r),e=is(e),e!==null)if(t=Rs(e),t===null)e=null;else if(n=t.tag,n===13){if(e=_A(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return Pf=e,null}function zA(e){switch(e){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(J$()){case ox:return 1;case OA:return 4;case Cf:case eL:return 16;case PA:return 536870912;default:return 16}default:return 16}}var ai=null,dx=null,pf=null;function FA(){if(pf)return pf;var e,t=dx,n=t.length,r,a="value"in ai?ai.value:ai.textContent,s=a.length;for(e=0;e<n&&t[e]===a[e];e++);var o=n-e;for(r=1;r<=o&&t[n-r]===a[s-r];r++);return pf=a.slice(e,1<r?1-r:void 0)}function mf(e){var t=e.keyCode;return"charCode"in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function Nd(){return!0}function Y0(){return!1}function ir(e){function t(n,r,a,s,o){this._reactName=n,this._targetInst=a,this.type=r,this.nativeEvent=s,this.target=o,this.currentTarget=null;for(var l in e)e.hasOwnProperty(l)&&(n=e[l],this[l]=n?n(s):s[l]);return this.isDefaultPrevented=(s.defaultPrevented!=null?s.defaultPrevented:s.returnValue===!1)?Nd:Y0,this.isPropagationStopped=Y0,this}return At(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var n=this.nativeEvent;n&&(n.preventDefault?n.preventDefault():typeof n.returnValue!="unknown"&&(n.returnValue=!1),this.isDefaultPrevented=Nd)},stopPropagation:function(){var n=this.nativeEvent;n&&(n.stopPropagation?n.stopPropagation():typeof n.cancelBubble!="unknown"&&(n.cancelBubble=!0),this.isPropagationStopped=Nd)},persist:function(){},isPersistent:Nd}),t}var gl={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},fx=ir(gl),Ku=At({},gl,{view:0,detail:0}),hL=ir(Ku),Im,$m,Ql,up=At({},Ku,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:hx,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==Ql&&(Ql&&e.type==="mousemove"?(Im=e.screenX-Ql.screenX,$m=e.screenY-Ql.screenY):$m=Im=0,Ql=e),Im)},movementY:function(e){return"movementY"in e?e.movementY:$m}}),X0=ir(up),pL=At({},up,{dataTransfer:0}),mL=ir(pL),gL=At({},Ku,{relatedTarget:0}),Lm=ir(gL),vL=At({},gl,{animationName:0,elapsedTime:0,pseudoElement:0}),yL=ir(vL),bL=At({},gl,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),xL=ir(bL),wL=At({},gl,{data:0}),Q0=ir(wL),kL={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},SL={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"},jL={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function NL(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=jL[e])?!!t[e]:!1}function hx(){return NL}var EL=At({},Ku,{key:function(e){if(e.key){var t=kL[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=mf(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?SL[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:hx,charCode:function(e){return e.type==="keypress"?mf(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?mf(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),_L=ir(EL),AL=At({},up,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Z0=ir(AL),CL=At({},Ku,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:hx}),TL=ir(CL),OL=At({},gl,{propertyName:0,elapsedTime:0,pseudoElement:0}),PL=ir(OL),RL=At({},up,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),ML=ir(RL),IL=[9,13,27,32],px=Ta&&"CompositionEvent"in window,jc=null;Ta&&"documentMode"in document&&(jc=document.documentMode);var $L=Ta&&"TextEvent"in window&&!jc,UA=Ta&&(!px||jc&&8<jc&&11>=jc),J0=" ",ek=!1;function WA(e,t){switch(e){case"keyup":return IL.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function HA(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var ho=!1;function LL(e,t){switch(e){case"compositionend":return HA(t);case"keypress":return t.which!==32?null:(ek=!0,J0);case"textInput":return e=t.data,e===J0&&ek?null:e;default:return null}}function DL(e,t){if(ho)return e==="compositionend"||!px&&WA(e,t)?(e=FA(),pf=dx=ai=null,ho=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return UA&&t.locale!=="ko"?null:t.data;default:return null}}var BL={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 tk(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!BL[e.type]:t==="textarea"}function GA(e,t,n,r){kA(r),t=Rf(t,"onChange"),0<t.length&&(n=new fx("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var Nc=null,Gc=null;function zL(e){nC(e,0)}function dp(e){var t=go(e);if(mA(t))return e}function FL(e,t){if(e==="change")return t}var qA=!1;if(Ta){var Dm;if(Ta){var Bm="oninput"in document;if(!Bm){var nk=document.createElement("div");nk.setAttribute("oninput","return;"),Bm=typeof nk.oninput=="function"}Dm=Bm}else Dm=!1;qA=Dm&&(!document.documentMode||9<document.documentMode)}function rk(){Nc&&(Nc.detachEvent("onpropertychange",KA),Gc=Nc=null)}function KA(e){if(e.propertyName==="value"&&dp(Gc)){var t=[];GA(t,Gc,e,sx(e)),EA(zL,t)}}function UL(e,t,n){e==="focusin"?(rk(),Nc=t,Gc=n,Nc.attachEvent("onpropertychange",KA)):e==="focusout"&&rk()}function WL(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return dp(Gc)}function HL(e,t){if(e==="click")return dp(t)}function GL(e,t){if(e==="input"||e==="change")return dp(t)}function qL(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var Hr=typeof Object.is=="function"?Object.is:qL;function qc(e,t){if(Hr(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var a=n[r];if(!dv.call(t,a)||!Hr(e[a],t[a]))return!1}return!0}function ak(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function ik(e,t){var n=ak(e);e=0;for(var r;n;){if(n.nodeType===3){if(r=e+n.textContent.length,e<=t&&r>=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=ak(n)}}function VA(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?VA(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function YA(){for(var e=window,t=Ef();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=Ef(e.document)}return t}function mx(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function KL(e){var t=YA(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&VA(n.ownerDocument.documentElement,n)){if(r!==null&&mx(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var a=n.textContent.length,s=Math.min(r.start,a);r=r.end===void 0?s:Math.min(r.end,a),!e.extend&&s>r&&(a=r,r=s,s=a),a=ik(n,s);var o=ik(n,r);a&&o&&(e.rangeCount!==1||e.anchorNode!==a.node||e.anchorOffset!==a.offset||e.focusNode!==o.node||e.focusOffset!==o.offset)&&(t=t.createRange(),t.setStart(a.node,a.offset),e.removeAllRanges(),s>r?(e.addRange(t),e.extend(o.node,o.offset)):(t.setEnd(o.node,o.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n<t.length;n++)e=t[n],e.element.scrollLeft=e.left,e.element.scrollTop=e.top}}var VL=Ta&&"documentMode"in document&&11>=document.documentMode,po=null,Tv=null,Ec=null,Ov=!1;function sk(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Ov||po==null||po!==Ef(r)||(r=po,"selectionStart"in r&&mx(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),Ec&&qc(Ec,r)||(Ec=r,r=Rf(Tv,"onSelect"),0<r.length&&(t=new fx("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=po)))}function Ed(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var mo={animationend:Ed("Animation","AnimationEnd"),animationiteration:Ed("Animation","AnimationIteration"),animationstart:Ed("Animation","AnimationStart"),transitionend:Ed("Transition","TransitionEnd")},zm={},XA={};Ta&&(XA=document.createElement("div").style,"AnimationEvent"in window||(delete mo.animationend.animation,delete mo.animationiteration.animation,delete mo.animationstart.animation),"TransitionEvent"in window||delete mo.transitionend.transition);function fp(e){if(zm[e])return zm[e];if(!mo[e])return e;var t=mo[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in XA)return zm[e]=t[n];return e}var QA=fp("animationend"),ZA=fp("animationiteration"),JA=fp("animationstart"),eC=fp("transitionend"),tC=new Map,ok="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function ji(e,t){tC.set(e,t),Ps(t,[e])}for(var Fm=0;Fm<ok.length;Fm++){var Um=ok[Fm],YL=Um.toLowerCase(),XL=Um[0].toUpperCase()+Um.slice(1);ji(YL,"on"+XL)}ji(QA,"onAnimationEnd");ji(ZA,"onAnimationIteration");ji(JA,"onAnimationStart");ji("dblclick","onDoubleClick");ji("focusin","onFocus");ji("focusout","onBlur");ji(eC,"onTransitionEnd");Do("onMouseEnter",["mouseout","mouseover"]);Do("onMouseLeave",["mouseout","mouseover"]);Do("onPointerEnter",["pointerout","pointerover"]);Do("onPointerLeave",["pointerout","pointerover"]);Ps("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));Ps("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));Ps("onBeforeInput",["compositionend","keypress","textInput","paste"]);Ps("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));Ps("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));Ps("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var yc="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(" "),QL=new Set("cancel close invalid load scroll toggle".split(" ").concat(yc));function lk(e,t,n){var r=e.type||"unknown-event";e.currentTarget=n,Y$(r,t,void 0,e),e.currentTarget=null}function nC(e,t){t=(t&4)!==0;for(var n=0;n<e.length;n++){var r=e[n],a=r.event;r=r.listeners;e:{var s=void 0;if(t)for(var o=r.length-1;0<=o;o--){var l=r[o],c=l.instance,u=l.currentTarget;if(l=l.listener,c!==s&&a.isPropagationStopped())break e;lk(a,l,u),s=c}else for(o=0;o<r.length;o++){if(l=r[o],c=l.instance,u=l.currentTarget,l=l.listener,c!==s&&a.isPropagationStopped())break e;lk(a,l,u),s=c}}}if(Af)throw e=Ev,Af=!1,Ev=null,e}function ft(e,t){var n=t[$v];n===void 0&&(n=t[$v]=new Set);var r=e+"__bubble";n.has(r)||(rC(t,e,2,!1),n.add(r))}function Wm(e,t,n){var r=0;t&&(r|=4),rC(n,e,r,t)}var _d="_reactListening"+Math.random().toString(36).slice(2);function Kc(e){if(!e[_d]){e[_d]=!0,uA.forEach(function(n){n!=="selectionchange"&&(QL.has(n)||Wm(n,!1,e),Wm(n,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[_d]||(t[_d]=!0,Wm("selectionchange",!1,t))}}function rC(e,t,n,r){switch(zA(t)){case 1:var a=dL;break;case 4:a=fL;break;default:a=ux}n=a.bind(null,t,n,e),a=void 0,!Nv||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(a=!0),r?a!==void 0?e.addEventListener(t,n,{capture:!0,passive:a}):e.addEventListener(t,n,!0):a!==void 0?e.addEventListener(t,n,{passive:a}):e.addEventListener(t,n,!1)}function Hm(e,t,n,r,a){var s=r;if(!(t&1)&&!(t&2)&&r!==null)e:for(;;){if(r===null)return;var o=r.tag;if(o===3||o===4){var l=r.stateNode.containerInfo;if(l===a||l.nodeType===8&&l.parentNode===a)break;if(o===4)for(o=r.return;o!==null;){var c=o.tag;if((c===3||c===4)&&(c=o.stateNode.containerInfo,c===a||c.nodeType===8&&c.parentNode===a))return;o=o.return}for(;l!==null;){if(o=is(l),o===null)return;if(c=o.tag,c===5||c===6){r=s=o;continue e}l=l.parentNode}}r=r.return}EA(function(){var u=s,d=sx(n),f=[];e:{var h=tC.get(e);if(h!==void 0){var p=fx,g=e;switch(e){case"keypress":if(mf(n)===0)break e;case"keydown":case"keyup":p=_L;break;case"focusin":g="focus",p=Lm;break;case"focusout":g="blur",p=Lm;break;case"beforeblur":case"afterblur":p=Lm;break;case"click":if(n.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":p=X0;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":p=mL;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":p=TL;break;case QA:case ZA:case JA:p=yL;break;case eC:p=PL;break;case"scroll":p=hL;break;case"wheel":p=ML;break;case"copy":case"cut":case"paste":p=xL;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":p=Z0}var m=(t&4)!==0,y=!m&&e==="scroll",v=m?h!==null?h+"Capture":null:h;m=[];for(var k=u,x;k!==null;){x=k;var j=x.stateNode;if(x.tag===5&&j!==null&&(x=j,v!==null&&(j=Fc(k,v),j!=null&&m.push(Vc(k,j,x)))),y)break;k=k.return}0<m.length&&(h=new p(h,g,null,n,d),f.push({event:h,listeners:m}))}}if(!(t&7)){e:{if(h=e==="mouseover"||e==="pointerover",p=e==="mouseout"||e==="pointerout",h&&n!==Sv&&(g=n.relatedTarget||n.fromElement)&&(is(g)||g[Oa]))break e;if((p||h)&&(h=d.window===d?d:(h=d.ownerDocument)?h.defaultView||h.parentWindow:window,p?(g=n.relatedTarget||n.toElement,p=u,g=g?is(g):null,g!==null&&(y=Rs(g),g!==y||g.tag!==5&&g.tag!==6)&&(g=null)):(p=null,g=u),p!==g)){if(m=X0,j="onMouseLeave",v="onMouseEnter",k="mouse",(e==="pointerout"||e==="pointerover")&&(m=Z0,j="onPointerLeave",v="onPointerEnter",k="pointer"),y=p==null?h:go(p),x=g==null?h:go(g),h=new m(j,k+"leave",p,n,d),h.target=y,h.relatedTarget=x,j=null,is(d)===u&&(m=new m(v,k+"enter",g,n,d),m.target=x,m.relatedTarget=y,j=m),y=j,p&&g)t:{for(m=p,v=g,k=0,x=m;x;x=Zs(x))k++;for(x=0,j=v;j;j=Zs(j))x++;for(;0<k-x;)m=Zs(m),k--;for(;0<x-k;)v=Zs(v),x--;for(;k--;){if(m===v||v!==null&&m===v.alternate)break t;m=Zs(m),v=Zs(v)}m=null}else m=null;p!==null&&ck(f,h,p,m,!1),g!==null&&y!==null&&ck(f,y,g,m,!0)}}e:{if(h=u?go(u):window,p=h.nodeName&&h.nodeName.toLowerCase(),p==="select"||p==="input"&&h.type==="file")var w=FL;else if(tk(h))if(qA)w=GL;else{w=WL;var b=UL}else(p=h.nodeName)&&p.toLowerCase()==="input"&&(h.type==="checkbox"||h.type==="radio")&&(w=HL);if(w&&(w=w(e,u))){GA(f,w,n,d);break e}b&&b(e,h,u),e==="focusout"&&(b=h._wrapperState)&&b.controlled&&h.type==="number"&&yv(h,"number",h.value)}switch(b=u?go(u):window,e){case"focusin":(tk(b)||b.contentEditable==="true")&&(po=b,Tv=u,Ec=null);break;case"focusout":Ec=Tv=po=null;break;case"mousedown":Ov=!0;break;case"contextmenu":case"mouseup":case"dragend":Ov=!1,sk(f,n,d);break;case"selectionchange":if(VL)break;case"keydown":case"keyup":sk(f,n,d)}var N;if(px)e:{switch(e){case"compositionstart":var E="onCompositionStart";break e;case"compositionend":E="onCompositionEnd";break e;case"compositionupdate":E="onCompositionUpdate";break e}E=void 0}else ho?WA(e,n)&&(E="onCompositionEnd"):e==="keydown"&&n.keyCode===229&&(E="onCompositionStart");E&&(UA&&n.locale!=="ko"&&(ho||E!=="onCompositionStart"?E==="onCompositionEnd"&&ho&&(N=FA()):(ai=d,dx="value"in ai?ai.value:ai.textContent,ho=!0)),b=Rf(u,E),0<b.length&&(E=new Q0(E,e,null,n,d),f.push({event:E,listeners:b}),N?E.data=N:(N=HA(n),N!==null&&(E.data=N)))),(N=$L?LL(e,n):DL(e,n))&&(u=Rf(u,"onBeforeInput"),0<u.length&&(d=new Q0("onBeforeInput","beforeinput",null,n,d),f.push({event:d,listeners:u}),d.data=N))}nC(f,t)})}function Vc(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Rf(e,t){for(var n=t+"Capture",r=[];e!==null;){var a=e,s=a.stateNode;a.tag===5&&s!==null&&(a=s,s=Fc(e,n),s!=null&&r.unshift(Vc(e,s,a)),s=Fc(e,t),s!=null&&r.push(Vc(e,s,a))),e=e.return}return r}function Zs(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5);return e||null}function ck(e,t,n,r,a){for(var s=t._reactName,o=[];n!==null&&n!==r;){var l=n,c=l.alternate,u=l.stateNode;if(c!==null&&c===r)break;l.tag===5&&u!==null&&(l=u,a?(c=Fc(n,s),c!=null&&o.unshift(Vc(n,c,l))):a||(c=Fc(n,s),c!=null&&o.push(Vc(n,c,l)))),n=n.return}o.length!==0&&e.push({event:t,listeners:o})}var ZL=/\r\n?/g,JL=/\u0000|\uFFFD/g;function uk(e){return(typeof e=="string"?e:""+e).replace(ZL,`
38
- `).replace(JL,"")}function Ad(e,t,n){if(t=uk(t),uk(e)!==t&&n)throw Error(se(425))}function Mf(){}var Pv=null,Rv=null;function Mv(e,t){return e==="textarea"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var Iv=typeof setTimeout=="function"?setTimeout:void 0,eD=typeof clearTimeout=="function"?clearTimeout:void 0,dk=typeof Promise=="function"?Promise:void 0,tD=typeof queueMicrotask=="function"?queueMicrotask:typeof dk<"u"?function(e){return dk.resolve(null).then(e).catch(nD)}:Iv;function nD(e){setTimeout(function(){throw e})}function Gm(e,t){var n=t,r=0;do{var a=n.nextSibling;if(e.removeChild(n),a&&a.nodeType===8)if(n=a.data,n==="/$"){if(r===0){e.removeChild(a),Hc(t);return}r--}else n!=="$"&&n!=="$?"&&n!=="$!"||r++;n=a}while(n);Hc(t)}function hi(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t==="$"||t==="$!"||t==="$?")break;if(t==="/$")return null}}return e}function fk(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="$"||n==="$!"||n==="$?"){if(t===0)return e;t--}else n==="/$"&&t++}e=e.previousSibling}return null}var vl=Math.random().toString(36).slice(2),na="__reactFiber$"+vl,Yc="__reactProps$"+vl,Oa="__reactContainer$"+vl,$v="__reactEvents$"+vl,rD="__reactListeners$"+vl,aD="__reactHandles$"+vl;function is(e){var t=e[na];if(t)return t;for(var n=e.parentNode;n;){if(t=n[Oa]||n[na]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=fk(e);e!==null;){if(n=e[na])return n;e=fk(e)}return t}e=n,n=e.parentNode}return null}function Vu(e){return e=e[na]||e[Oa],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function go(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(se(33))}function hp(e){return e[Yc]||null}var Lv=[],vo=-1;function Ni(e){return{current:e}}function gt(e){0>vo||(e.current=Lv[vo],Lv[vo]=null,vo--)}function dt(e,t){vo++,Lv[vo]=e.current,e.current=t}var ki={},jn=Ni(ki),zn=Ni(!1),ws=ki;function Bo(e,t){var n=e.type.contextTypes;if(!n)return ki;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var a={},s;for(s in n)a[s]=t[s];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=a),a}function Fn(e){return e=e.childContextTypes,e!=null}function If(){gt(zn),gt(jn)}function hk(e,t,n){if(jn.current!==ki)throw Error(se(168));dt(jn,t),dt(zn,n)}function aC(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var a in r)if(!(a in t))throw Error(se(108,U$(e)||"Unknown",a));return At({},n,r)}function $f(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||ki,ws=jn.current,dt(jn,e),dt(zn,zn.current),!0}function pk(e,t,n){var r=e.stateNode;if(!r)throw Error(se(169));n?(e=aC(e,t,ws),r.__reactInternalMemoizedMergedChildContext=e,gt(zn),gt(jn),dt(jn,e)):gt(zn),dt(zn,n)}var xa=null,pp=!1,qm=!1;function iC(e){xa===null?xa=[e]:xa.push(e)}function iD(e){pp=!0,iC(e)}function Ei(){if(!qm&&xa!==null){qm=!0;var e=0,t=et;try{var n=xa;for(et=1;e<n.length;e++){var r=n[e];do r=r(!0);while(r!==null)}xa=null,pp=!1}catch(a){throw xa!==null&&(xa=xa.slice(e+1)),TA(ox,Ei),a}finally{et=t,qm=!1}}return null}var yo=[],bo=0,Lf=null,Df=0,hr=[],pr=0,ks=null,wa=1,ka="";function Xi(e,t){yo[bo++]=Df,yo[bo++]=Lf,Lf=e,Df=t}function sC(e,t,n){hr[pr++]=wa,hr[pr++]=ka,hr[pr++]=ks,ks=e;var r=wa;e=ka;var a=32-Br(r)-1;r&=~(1<<a),n+=1;var s=32-Br(t)+a;if(30<s){var o=a-a%5;s=(r&(1<<o)-1).toString(32),r>>=o,a-=o,wa=1<<32-Br(t)+a|n<<a|r,ka=s+e}else wa=1<<s|n<<a|r,ka=e}function gx(e){e.return!==null&&(Xi(e,1),sC(e,1,0))}function vx(e){for(;e===Lf;)Lf=yo[--bo],yo[bo]=null,Df=yo[--bo],yo[bo]=null;for(;e===ks;)ks=hr[--pr],hr[pr]=null,ka=hr[--pr],hr[pr]=null,wa=hr[--pr],hr[pr]=null}var er=null,Jn=null,wt=!1,$r=null;function oC(e,t){var n=gr(5,null,null,0);n.elementType="DELETED",n.stateNode=t,n.return=e,t=e.deletions,t===null?(e.deletions=[n],e.flags|=16):t.push(n)}function mk(e,t){switch(e.tag){case 5:var n=e.type;return t=t.nodeType!==1||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t,t!==null?(e.stateNode=t,er=e,Jn=hi(t.firstChild),!0):!1;case 6:return t=e.pendingProps===""||t.nodeType!==3?null:t,t!==null?(e.stateNode=t,er=e,Jn=null,!0):!1;case 13:return t=t.nodeType!==8?null:t,t!==null?(n=ks!==null?{id:wa,overflow:ka}:null,e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},n=gr(18,null,null,0),n.stateNode=t,n.return=e,e.child=n,er=e,Jn=null,!0):!1;default:return!1}}function Dv(e){return(e.mode&1)!==0&&(e.flags&128)===0}function Bv(e){if(wt){var t=Jn;if(t){var n=t;if(!mk(e,t)){if(Dv(e))throw Error(se(418));t=hi(n.nextSibling);var r=er;t&&mk(e,t)?oC(r,n):(e.flags=e.flags&-4097|2,wt=!1,er=e)}}else{if(Dv(e))throw Error(se(418));e.flags=e.flags&-4097|2,wt=!1,er=e}}}function gk(e){for(e=e.return;e!==null&&e.tag!==5&&e.tag!==3&&e.tag!==13;)e=e.return;er=e}function Cd(e){if(e!==er)return!1;if(!wt)return gk(e),wt=!0,!1;var t;if((t=e.tag!==3)&&!(t=e.tag!==5)&&(t=e.type,t=t!=="head"&&t!=="body"&&!Mv(e.type,e.memoizedProps)),t&&(t=Jn)){if(Dv(e))throw lC(),Error(se(418));for(;t;)oC(e,t),t=hi(t.nextSibling)}if(gk(e),e.tag===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(se(317));e:{for(e=e.nextSibling,t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="/$"){if(t===0){Jn=hi(e.nextSibling);break e}t--}else n!=="$"&&n!=="$!"&&n!=="$?"||t++}e=e.nextSibling}Jn=null}}else Jn=er?hi(e.stateNode.nextSibling):null;return!0}function lC(){for(var e=Jn;e;)e=hi(e.nextSibling)}function zo(){Jn=er=null,wt=!1}function yx(e){$r===null?$r=[e]:$r.push(e)}var sD=La.ReactCurrentBatchConfig;function Zl(e,t,n){if(e=n.ref,e!==null&&typeof e!="function"&&typeof e!="object"){if(n._owner){if(n=n._owner,n){if(n.tag!==1)throw Error(se(309));var r=n.stateNode}if(!r)throw Error(se(147,e));var a=r,s=""+e;return t!==null&&t.ref!==null&&typeof t.ref=="function"&&t.ref._stringRef===s?t.ref:(t=function(o){var l=a.refs;o===null?delete l[s]:l[s]=o},t._stringRef=s,t)}if(typeof e!="string")throw Error(se(284));if(!n._owner)throw Error(se(290,e))}return e}function Td(e,t){throw e=Object.prototype.toString.call(t),Error(se(31,e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function vk(e){var t=e._init;return t(e._payload)}function cC(e){function t(v,k){if(e){var x=v.deletions;x===null?(v.deletions=[k],v.flags|=16):x.push(k)}}function n(v,k){if(!e)return null;for(;k!==null;)t(v,k),k=k.sibling;return null}function r(v,k){for(v=new Map;k!==null;)k.key!==null?v.set(k.key,k):v.set(k.index,k),k=k.sibling;return v}function a(v,k){return v=vi(v,k),v.index=0,v.sibling=null,v}function s(v,k,x){return v.index=x,e?(x=v.alternate,x!==null?(x=x.index,x<k?(v.flags|=2,k):x):(v.flags|=2,k)):(v.flags|=1048576,k)}function o(v){return e&&v.alternate===null&&(v.flags|=2),v}function l(v,k,x,j){return k===null||k.tag!==6?(k=Jm(x,v.mode,j),k.return=v,k):(k=a(k,x),k.return=v,k)}function c(v,k,x,j){var w=x.type;return w===fo?d(v,k,x.props.children,j,x.key):k!==null&&(k.elementType===w||typeof w=="object"&&w!==null&&w.$$typeof===Xa&&vk(w)===k.type)?(j=a(k,x.props),j.ref=Zl(v,k,x),j.return=v,j):(j=kf(x.type,x.key,x.props,null,v.mode,j),j.ref=Zl(v,k,x),j.return=v,j)}function u(v,k,x,j){return k===null||k.tag!==4||k.stateNode.containerInfo!==x.containerInfo||k.stateNode.implementation!==x.implementation?(k=eg(x,v.mode,j),k.return=v,k):(k=a(k,x.children||[]),k.return=v,k)}function d(v,k,x,j,w){return k===null||k.tag!==7?(k=ps(x,v.mode,j,w),k.return=v,k):(k=a(k,x),k.return=v,k)}function f(v,k,x){if(typeof k=="string"&&k!==""||typeof k=="number")return k=Jm(""+k,v.mode,x),k.return=v,k;if(typeof k=="object"&&k!==null){switch(k.$$typeof){case bd:return x=kf(k.type,k.key,k.props,null,v.mode,x),x.ref=Zl(v,null,k),x.return=v,x;case uo:return k=eg(k,v.mode,x),k.return=v,k;case Xa:var j=k._init;return f(v,j(k._payload),x)}if(gc(k)||Kl(k))return k=ps(k,v.mode,x,null),k.return=v,k;Td(v,k)}return null}function h(v,k,x,j){var w=k!==null?k.key:null;if(typeof x=="string"&&x!==""||typeof x=="number")return w!==null?null:l(v,k,""+x,j);if(typeof x=="object"&&x!==null){switch(x.$$typeof){case bd:return x.key===w?c(v,k,x,j):null;case uo:return x.key===w?u(v,k,x,j):null;case Xa:return w=x._init,h(v,k,w(x._payload),j)}if(gc(x)||Kl(x))return w!==null?null:d(v,k,x,j,null);Td(v,x)}return null}function p(v,k,x,j,w){if(typeof j=="string"&&j!==""||typeof j=="number")return v=v.get(x)||null,l(k,v,""+j,w);if(typeof j=="object"&&j!==null){switch(j.$$typeof){case bd:return v=v.get(j.key===null?x:j.key)||null,c(k,v,j,w);case uo:return v=v.get(j.key===null?x:j.key)||null,u(k,v,j,w);case Xa:var b=j._init;return p(v,k,x,b(j._payload),w)}if(gc(j)||Kl(j))return v=v.get(x)||null,d(k,v,j,w,null);Td(k,j)}return null}function g(v,k,x,j){for(var w=null,b=null,N=k,E=k=0,O=null;N!==null&&E<x.length;E++){N.index>E?(O=N,N=null):O=N.sibling;var C=h(v,N,x[E],j);if(C===null){N===null&&(N=O);break}e&&N&&C.alternate===null&&t(v,N),k=s(C,k,E),b===null?w=C:b.sibling=C,b=C,N=O}if(E===x.length)return n(v,N),wt&&Xi(v,E),w;if(N===null){for(;E<x.length;E++)N=f(v,x[E],j),N!==null&&(k=s(N,k,E),b===null?w=N:b.sibling=N,b=N);return wt&&Xi(v,E),w}for(N=r(v,N);E<x.length;E++)O=p(N,v,E,x[E],j),O!==null&&(e&&O.alternate!==null&&N.delete(O.key===null?E:O.key),k=s(O,k,E),b===null?w=O:b.sibling=O,b=O);return e&&N.forEach(function(P){return t(v,P)}),wt&&Xi(v,E),w}function m(v,k,x,j){var w=Kl(x);if(typeof w!="function")throw Error(se(150));if(x=w.call(x),x==null)throw Error(se(151));for(var b=w=null,N=k,E=k=0,O=null,C=x.next();N!==null&&!C.done;E++,C=x.next()){N.index>E?(O=N,N=null):O=N.sibling;var P=h(v,N,C.value,j);if(P===null){N===null&&(N=O);break}e&&N&&P.alternate===null&&t(v,N),k=s(P,k,E),b===null?w=P:b.sibling=P,b=P,N=O}if(C.done)return n(v,N),wt&&Xi(v,E),w;if(N===null){for(;!C.done;E++,C=x.next())C=f(v,C.value,j),C!==null&&(k=s(C,k,E),b===null?w=C:b.sibling=C,b=C);return wt&&Xi(v,E),w}for(N=r(v,N);!C.done;E++,C=x.next())C=p(N,v,E,C.value,j),C!==null&&(e&&C.alternate!==null&&N.delete(C.key===null?E:C.key),k=s(C,k,E),b===null?w=C:b.sibling=C,b=C);return e&&N.forEach(function($){return t(v,$)}),wt&&Xi(v,E),w}function y(v,k,x,j){if(typeof x=="object"&&x!==null&&x.type===fo&&x.key===null&&(x=x.props.children),typeof x=="object"&&x!==null){switch(x.$$typeof){case bd:e:{for(var w=x.key,b=k;b!==null;){if(b.key===w){if(w=x.type,w===fo){if(b.tag===7){n(v,b.sibling),k=a(b,x.props.children),k.return=v,v=k;break e}}else if(b.elementType===w||typeof w=="object"&&w!==null&&w.$$typeof===Xa&&vk(w)===b.type){n(v,b.sibling),k=a(b,x.props),k.ref=Zl(v,b,x),k.return=v,v=k;break e}n(v,b);break}else t(v,b);b=b.sibling}x.type===fo?(k=ps(x.props.children,v.mode,j,x.key),k.return=v,v=k):(j=kf(x.type,x.key,x.props,null,v.mode,j),j.ref=Zl(v,k,x),j.return=v,v=j)}return o(v);case uo:e:{for(b=x.key;k!==null;){if(k.key===b)if(k.tag===4&&k.stateNode.containerInfo===x.containerInfo&&k.stateNode.implementation===x.implementation){n(v,k.sibling),k=a(k,x.children||[]),k.return=v,v=k;break e}else{n(v,k);break}else t(v,k);k=k.sibling}k=eg(x,v.mode,j),k.return=v,v=k}return o(v);case Xa:return b=x._init,y(v,k,b(x._payload),j)}if(gc(x))return g(v,k,x,j);if(Kl(x))return m(v,k,x,j);Td(v,x)}return typeof x=="string"&&x!==""||typeof x=="number"?(x=""+x,k!==null&&k.tag===6?(n(v,k.sibling),k=a(k,x),k.return=v,v=k):(n(v,k),k=Jm(x,v.mode,j),k.return=v,v=k),o(v)):n(v,k)}return y}var Fo=cC(!0),uC=cC(!1),Bf=Ni(null),zf=null,xo=null,bx=null;function xx(){bx=xo=zf=null}function wx(e){var t=Bf.current;gt(Bf),e._currentValue=t}function zv(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,r!==null&&(r.childLanes|=t)):r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t),e===n)break;e=e.return}}function Oo(e,t){zf=e,bx=xo=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(Dn=!0),e.firstContext=null)}function xr(e){var t=e._currentValue;if(bx!==e)if(e={context:e,memoizedValue:t,next:null},xo===null){if(zf===null)throw Error(se(308));xo=e,zf.dependencies={lanes:0,firstContext:e}}else xo=xo.next=e;return t}var ss=null;function kx(e){ss===null?ss=[e]:ss.push(e)}function dC(e,t,n,r){var a=t.interleaved;return a===null?(n.next=n,kx(t)):(n.next=a.next,a.next=n),t.interleaved=n,Pa(e,r)}function Pa(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}var Qa=!1;function Sx(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function fC(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function Ea(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function pi(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,Ge&2){var a=r.pending;return a===null?t.next=t:(t.next=a.next,a.next=t),r.pending=t,Pa(e,n)}return a=r.interleaved,a===null?(t.next=t,kx(r)):(t.next=a.next,a.next=t),r.interleaved=t,Pa(e,n)}function gf(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194240)!==0)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,lx(e,n)}}function yk(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var a=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};s===null?a=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?a=s=t:s=s.next=t}else a=s=t;n={baseState:r.baseState,firstBaseUpdate:a,lastBaseUpdate:s,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function Ff(e,t,n,r){var a=e.updateQueue;Qa=!1;var s=a.firstBaseUpdate,o=a.lastBaseUpdate,l=a.shared.pending;if(l!==null){a.shared.pending=null;var c=l,u=c.next;c.next=null,o===null?s=u:o.next=u,o=c;var d=e.alternate;d!==null&&(d=d.updateQueue,l=d.lastBaseUpdate,l!==o&&(l===null?d.firstBaseUpdate=u:l.next=u,d.lastBaseUpdate=c))}if(s!==null){var f=a.baseState;o=0,d=u=c=null,l=s;do{var h=l.lane,p=l.eventTime;if((r&h)===h){d!==null&&(d=d.next={eventTime:p,lane:0,tag:l.tag,payload:l.payload,callback:l.callback,next:null});e:{var g=e,m=l;switch(h=t,p=n,m.tag){case 1:if(g=m.payload,typeof g=="function"){f=g.call(p,f,h);break e}f=g;break e;case 3:g.flags=g.flags&-65537|128;case 0:if(g=m.payload,h=typeof g=="function"?g.call(p,f,h):g,h==null)break e;f=At({},f,h);break e;case 2:Qa=!0}}l.callback!==null&&l.lane!==0&&(e.flags|=64,h=a.effects,h===null?a.effects=[l]:h.push(l))}else p={eventTime:p,lane:h,tag:l.tag,payload:l.payload,callback:l.callback,next:null},d===null?(u=d=p,c=f):d=d.next=p,o|=h;if(l=l.next,l===null){if(l=a.shared.pending,l===null)break;h=l,l=h.next,h.next=null,a.lastBaseUpdate=h,a.shared.pending=null}}while(!0);if(d===null&&(c=f),a.baseState=c,a.firstBaseUpdate=u,a.lastBaseUpdate=d,t=a.shared.interleaved,t!==null){a=t;do o|=a.lane,a=a.next;while(a!==t)}else s===null&&(a.shared.lanes=0);js|=o,e.lanes=o,e.memoizedState=f}}function bk(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;t<e.length;t++){var r=e[t],a=r.callback;if(a!==null){if(r.callback=null,r=n,typeof a!="function")throw Error(se(191,a));a.call(r)}}}var Yu={},oa=Ni(Yu),Xc=Ni(Yu),Qc=Ni(Yu);function os(e){if(e===Yu)throw Error(se(174));return e}function jx(e,t){switch(dt(Qc,t),dt(Xc,e),dt(oa,Yu),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:xv(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=xv(t,e)}gt(oa),dt(oa,t)}function Uo(){gt(oa),gt(Xc),gt(Qc)}function hC(e){os(Qc.current);var t=os(oa.current),n=xv(t,e.type);t!==n&&(dt(Xc,e),dt(oa,n))}function Nx(e){Xc.current===e&&(gt(oa),gt(Xc))}var Nt=Ni(0);function Uf(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||n.data==="$?"||n.data==="$!"))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==void 0){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var Km=[];function Ex(){for(var e=0;e<Km.length;e++)Km[e]._workInProgressVersionPrimary=null;Km.length=0}var vf=La.ReactCurrentDispatcher,Vm=La.ReactCurrentBatchConfig,Ss=0,Et=null,Wt=null,Jt=null,Wf=!1,_c=!1,Zc=0,oD=0;function mn(){throw Error(se(321))}function _x(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!Hr(e[n],t[n]))return!1;return!0}function Ax(e,t,n,r,a,s){if(Ss=s,Et=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,vf.current=e===null||e.memoizedState===null?dD:fD,e=n(r,a),_c){s=0;do{if(_c=!1,Zc=0,25<=s)throw Error(se(301));s+=1,Jt=Wt=null,t.updateQueue=null,vf.current=hD,e=n(r,a)}while(_c)}if(vf.current=Hf,t=Wt!==null&&Wt.next!==null,Ss=0,Jt=Wt=Et=null,Wf=!1,t)throw Error(se(300));return e}function Cx(){var e=Zc!==0;return Zc=0,e}function ea(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Jt===null?Et.memoizedState=Jt=e:Jt=Jt.next=e,Jt}function wr(){if(Wt===null){var e=Et.alternate;e=e!==null?e.memoizedState:null}else e=Wt.next;var t=Jt===null?Et.memoizedState:Jt.next;if(t!==null)Jt=t,Wt=e;else{if(e===null)throw Error(se(310));Wt=e,e={memoizedState:Wt.memoizedState,baseState:Wt.baseState,baseQueue:Wt.baseQueue,queue:Wt.queue,next:null},Jt===null?Et.memoizedState=Jt=e:Jt=Jt.next=e}return Jt}function Jc(e,t){return typeof t=="function"?t(e):t}function Ym(e){var t=wr(),n=t.queue;if(n===null)throw Error(se(311));n.lastRenderedReducer=e;var r=Wt,a=r.baseQueue,s=n.pending;if(s!==null){if(a!==null){var o=a.next;a.next=s.next,s.next=o}r.baseQueue=a=s,n.pending=null}if(a!==null){s=a.next,r=r.baseState;var l=o=null,c=null,u=s;do{var d=u.lane;if((Ss&d)===d)c!==null&&(c=c.next={lane:0,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),r=u.hasEagerState?u.eagerState:e(r,u.action);else{var f={lane:d,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null};c===null?(l=c=f,o=r):c=c.next=f,Et.lanes|=d,js|=d}u=u.next}while(u!==null&&u!==s);c===null?o=r:c.next=l,Hr(r,t.memoizedState)||(Dn=!0),t.memoizedState=r,t.baseState=o,t.baseQueue=c,n.lastRenderedState=r}if(e=n.interleaved,e!==null){a=e;do s=a.lane,Et.lanes|=s,js|=s,a=a.next;while(a!==e)}else a===null&&(n.lanes=0);return[t.memoizedState,n.dispatch]}function Xm(e){var t=wr(),n=t.queue;if(n===null)throw Error(se(311));n.lastRenderedReducer=e;var r=n.dispatch,a=n.pending,s=t.memoizedState;if(a!==null){n.pending=null;var o=a=a.next;do s=e(s,o.action),o=o.next;while(o!==a);Hr(s,t.memoizedState)||(Dn=!0),t.memoizedState=s,t.baseQueue===null&&(t.baseState=s),n.lastRenderedState=s}return[s,r]}function pC(){}function mC(e,t){var n=Et,r=wr(),a=t(),s=!Hr(r.memoizedState,a);if(s&&(r.memoizedState=a,Dn=!0),r=r.queue,Tx(yC.bind(null,n,r,e),[e]),r.getSnapshot!==t||s||Jt!==null&&Jt.memoizedState.tag&1){if(n.flags|=2048,eu(9,vC.bind(null,n,r,a,t),void 0,null),nn===null)throw Error(se(349));Ss&30||gC(n,t,a)}return a}function gC(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=Et.updateQueue,t===null?(t={lastEffect:null,stores:null},Et.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function vC(e,t,n,r){t.value=n,t.getSnapshot=r,bC(t)&&xC(e)}function yC(e,t,n){return n(function(){bC(t)&&xC(e)})}function bC(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!Hr(e,n)}catch{return!0}}function xC(e){var t=Pa(e,1);t!==null&&zr(t,e,1,-1)}function xk(e){var t=ea();return typeof e=="function"&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Jc,lastRenderedState:e},t.queue=e,e=e.dispatch=uD.bind(null,Et,e),[t.memoizedState,e]}function eu(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},t=Et.updateQueue,t===null?(t={lastEffect:null,stores:null},Et.updateQueue=t,t.lastEffect=e.next=e):(n=t.lastEffect,n===null?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e)),e}function wC(){return wr().memoizedState}function yf(e,t,n,r){var a=ea();Et.flags|=e,a.memoizedState=eu(1|t,n,void 0,r===void 0?null:r)}function mp(e,t,n,r){var a=wr();r=r===void 0?null:r;var s=void 0;if(Wt!==null){var o=Wt.memoizedState;if(s=o.destroy,r!==null&&_x(r,o.deps)){a.memoizedState=eu(t,n,s,r);return}}Et.flags|=e,a.memoizedState=eu(1|t,n,s,r)}function wk(e,t){return yf(8390656,8,e,t)}function Tx(e,t){return mp(2048,8,e,t)}function kC(e,t){return mp(4,2,e,t)}function SC(e,t){return mp(4,4,e,t)}function jC(e,t){if(typeof t=="function")return e=e(),t(e),function(){t(null)};if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function NC(e,t,n){return n=n!=null?n.concat([e]):null,mp(4,4,jC.bind(null,t,e),n)}function Ox(){}function EC(e,t){var n=wr();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&_x(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function _C(e,t){var n=wr();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&_x(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function AC(e,t,n){return Ss&21?(Hr(n,t)||(n=RA(),Et.lanes|=n,js|=n,e.baseState=!0),t):(e.baseState&&(e.baseState=!1,Dn=!0),e.memoizedState=n)}function lD(e,t){var n=et;et=n!==0&&4>n?n:4,e(!0);var r=Vm.transition;Vm.transition={};try{e(!1),t()}finally{et=n,Vm.transition=r}}function CC(){return wr().memoizedState}function cD(e,t,n){var r=gi(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},TC(e))OC(t,n);else if(n=dC(e,t,n,r),n!==null){var a=Tn();zr(n,e,r,a),PC(n,t,r)}}function uD(e,t,n){var r=gi(e),a={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(TC(e))OC(t,a);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var o=t.lastRenderedState,l=s(o,n);if(a.hasEagerState=!0,a.eagerState=l,Hr(l,o)){var c=t.interleaved;c===null?(a.next=a,kx(t)):(a.next=c.next,c.next=a),t.interleaved=a;return}}catch{}finally{}n=dC(e,t,a,r),n!==null&&(a=Tn(),zr(n,e,r,a),PC(n,t,r))}}function TC(e){var t=e.alternate;return e===Et||t!==null&&t===Et}function OC(e,t){_c=Wf=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function PC(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,lx(e,n)}}var Hf={readContext:xr,useCallback:mn,useContext:mn,useEffect:mn,useImperativeHandle:mn,useInsertionEffect:mn,useLayoutEffect:mn,useMemo:mn,useReducer:mn,useRef:mn,useState:mn,useDebugValue:mn,useDeferredValue:mn,useTransition:mn,useMutableSource:mn,useSyncExternalStore:mn,useId:mn,unstable_isNewReconciler:!1},dD={readContext:xr,useCallback:function(e,t){return ea().memoizedState=[e,t===void 0?null:t],e},useContext:xr,useEffect:wk,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,yf(4194308,4,jC.bind(null,t,e),n)},useLayoutEffect:function(e,t){return yf(4194308,4,e,t)},useInsertionEffect:function(e,t){return yf(4,2,e,t)},useMemo:function(e,t){var n=ea();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=ea();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=cD.bind(null,Et,e),[r.memoizedState,e]},useRef:function(e){var t=ea();return e={current:e},t.memoizedState=e},useState:xk,useDebugValue:Ox,useDeferredValue:function(e){return ea().memoizedState=e},useTransition:function(){var e=xk(!1),t=e[0];return e=lD.bind(null,e[1]),ea().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=Et,a=ea();if(wt){if(n===void 0)throw Error(se(407));n=n()}else{if(n=t(),nn===null)throw Error(se(349));Ss&30||gC(r,t,n)}a.memoizedState=n;var s={value:n,getSnapshot:t};return a.queue=s,wk(yC.bind(null,r,s,e),[e]),r.flags|=2048,eu(9,vC.bind(null,r,s,n,t),void 0,null),n},useId:function(){var e=ea(),t=nn.identifierPrefix;if(wt){var n=ka,r=wa;n=(r&~(1<<32-Br(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=Zc++,0<n&&(t+="H"+n.toString(32)),t+=":"}else n=oD++,t=":"+t+"r"+n.toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},fD={readContext:xr,useCallback:EC,useContext:xr,useEffect:Tx,useImperativeHandle:NC,useInsertionEffect:kC,useLayoutEffect:SC,useMemo:_C,useReducer:Ym,useRef:wC,useState:function(){return Ym(Jc)},useDebugValue:Ox,useDeferredValue:function(e){var t=wr();return AC(t,Wt.memoizedState,e)},useTransition:function(){var e=Ym(Jc)[0],t=wr().memoizedState;return[e,t]},useMutableSource:pC,useSyncExternalStore:mC,useId:CC,unstable_isNewReconciler:!1},hD={readContext:xr,useCallback:EC,useContext:xr,useEffect:Tx,useImperativeHandle:NC,useInsertionEffect:kC,useLayoutEffect:SC,useMemo:_C,useReducer:Xm,useRef:wC,useState:function(){return Xm(Jc)},useDebugValue:Ox,useDeferredValue:function(e){var t=wr();return Wt===null?t.memoizedState=e:AC(t,Wt.memoizedState,e)},useTransition:function(){var e=Xm(Jc)[0],t=wr().memoizedState;return[e,t]},useMutableSource:pC,useSyncExternalStore:mC,useId:CC,unstable_isNewReconciler:!1};function Rr(e,t){if(e&&e.defaultProps){t=At({},t),e=e.defaultProps;for(var n in e)t[n]===void 0&&(t[n]=e[n]);return t}return t}function Fv(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:At({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var gp={isMounted:function(e){return(e=e._reactInternals)?Rs(e)===e:!1},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=Tn(),a=gi(e),s=Ea(r,a);s.payload=t,n!=null&&(s.callback=n),t=pi(e,s,a),t!==null&&(zr(t,e,a,r),gf(t,e,a))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=Tn(),a=gi(e),s=Ea(r,a);s.tag=1,s.payload=t,n!=null&&(s.callback=n),t=pi(e,s,a),t!==null&&(zr(t,e,a,r),gf(t,e,a))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=Tn(),r=gi(e),a=Ea(n,r);a.tag=2,t!=null&&(a.callback=t),t=pi(e,a,r),t!==null&&(zr(t,e,r,n),gf(t,e,r))}};function kk(e,t,n,r,a,s,o){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(r,s,o):t.prototype&&t.prototype.isPureReactComponent?!qc(n,r)||!qc(a,s):!0}function RC(e,t,n){var r=!1,a=ki,s=t.contextType;return typeof s=="object"&&s!==null?s=xr(s):(a=Fn(t)?ws:jn.current,r=t.contextTypes,s=(r=r!=null)?Bo(e,a):ki),t=new t(n,s),e.memoizedState=t.state!==null&&t.state!==void 0?t.state:null,t.updater=gp,e.stateNode=t,t._reactInternals=e,r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=a,e.__reactInternalMemoizedMaskedChildContext=s),t}function Sk(e,t,n,r){e=t.state,typeof t.componentWillReceiveProps=="function"&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps=="function"&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&gp.enqueueReplaceState(t,t.state,null)}function Uv(e,t,n,r){var a=e.stateNode;a.props=n,a.state=e.memoizedState,a.refs={},Sx(e);var s=t.contextType;typeof s=="object"&&s!==null?a.context=xr(s):(s=Fn(t)?ws:jn.current,a.context=Bo(e,s)),a.state=e.memoizedState,s=t.getDerivedStateFromProps,typeof s=="function"&&(Fv(e,t,s,n),a.state=e.memoizedState),typeof t.getDerivedStateFromProps=="function"||typeof a.getSnapshotBeforeUpdate=="function"||typeof a.UNSAFE_componentWillMount!="function"&&typeof a.componentWillMount!="function"||(t=a.state,typeof a.componentWillMount=="function"&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount=="function"&&a.UNSAFE_componentWillMount(),t!==a.state&&gp.enqueueReplaceState(a,a.state,null),Ff(e,n,a,r),a.state=e.memoizedState),typeof a.componentDidMount=="function"&&(e.flags|=4194308)}function Wo(e,t){try{var n="",r=t;do n+=F$(r),r=r.return;while(r);var a=n}catch(s){a=`
39
- Error generating stack: `+s.message+`
40
- `+s.stack}return{value:e,source:t,stack:a,digest:null}}function Qm(e,t,n){return{value:e,source:null,stack:n??null,digest:t??null}}function Wv(e,t){try{console.error(t.value)}catch(n){setTimeout(function(){throw n})}}var pD=typeof WeakMap=="function"?WeakMap:Map;function MC(e,t,n){n=Ea(-1,n),n.tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){qf||(qf=!0,Jv=r),Wv(e,t)},n}function IC(e,t,n){n=Ea(-1,n),n.tag=3;var r=e.type.getDerivedStateFromError;if(typeof r=="function"){var a=t.value;n.payload=function(){return r(a)},n.callback=function(){Wv(e,t)}}var s=e.stateNode;return s!==null&&typeof s.componentDidCatch=="function"&&(n.callback=function(){Wv(e,t),typeof r!="function"&&(mi===null?mi=new Set([this]):mi.add(this));var o=t.stack;this.componentDidCatch(t.value,{componentStack:o!==null?o:""})}),n}function jk(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new pD;var a=new Set;r.set(t,a)}else a=r.get(t),a===void 0&&(a=new Set,r.set(t,a));a.has(n)||(a.add(n),e=AD.bind(null,e,t,n),t.then(e,e))}function Nk(e){do{var t;if((t=e.tag===13)&&(t=e.memoizedState,t=t!==null?t.dehydrated!==null:!0),t)return e;e=e.return}while(e!==null);return null}function Ek(e,t,n,r,a){return e.mode&1?(e.flags|=65536,e.lanes=a,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,n.tag===1&&(n.alternate===null?n.tag=17:(t=Ea(-1,1),t.tag=2,pi(n,t,1))),n.lanes|=1),e)}var mD=La.ReactCurrentOwner,Dn=!1;function _n(e,t,n,r){t.child=e===null?uC(t,null,n,r):Fo(t,e.child,n,r)}function _k(e,t,n,r,a){n=n.render;var s=t.ref;return Oo(t,a),r=Ax(e,t,n,r,s,a),n=Cx(),e!==null&&!Dn?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~a,Ra(e,t,a)):(wt&&n&&gx(t),t.flags|=1,_n(e,t,r,a),t.child)}function Ak(e,t,n,r,a){if(e===null){var s=n.type;return typeof s=="function"&&!Bx(s)&&s.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=s,$C(e,t,s,r,a)):(e=kf(n.type,null,r,t,t.mode,a),e.ref=t.ref,e.return=t,t.child=e)}if(s=e.child,!(e.lanes&a)){var o=s.memoizedProps;if(n=n.compare,n=n!==null?n:qc,n(o,r)&&e.ref===t.ref)return Ra(e,t,a)}return t.flags|=1,e=vi(s,r),e.ref=t.ref,e.return=t,t.child=e}function $C(e,t,n,r,a){if(e!==null){var s=e.memoizedProps;if(qc(s,r)&&e.ref===t.ref)if(Dn=!1,t.pendingProps=r=s,(e.lanes&a)!==0)e.flags&131072&&(Dn=!0);else return t.lanes=e.lanes,Ra(e,t,a)}return Hv(e,t,n,r,a)}function LC(e,t,n){var r=t.pendingProps,a=r.children,s=e!==null?e.memoizedState:null;if(r.mode==="hidden")if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},dt(ko,Xn),Xn|=n;else{if(!(n&1073741824))return e=s!==null?s.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,dt(ko,Xn),Xn|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=s!==null?s.baseLanes:n,dt(ko,Xn),Xn|=r}else s!==null?(r=s.baseLanes|n,t.memoizedState=null):r=n,dt(ko,Xn),Xn|=r;return _n(e,t,a,n),t.child}function DC(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function Hv(e,t,n,r,a){var s=Fn(n)?ws:jn.current;return s=Bo(t,s),Oo(t,a),n=Ax(e,t,n,r,s,a),r=Cx(),e!==null&&!Dn?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~a,Ra(e,t,a)):(wt&&r&&gx(t),t.flags|=1,_n(e,t,n,a),t.child)}function Ck(e,t,n,r,a){if(Fn(n)){var s=!0;$f(t)}else s=!1;if(Oo(t,a),t.stateNode===null)bf(e,t),RC(t,n,r),Uv(t,n,r,a),r=!0;else if(e===null){var o=t.stateNode,l=t.memoizedProps;o.props=l;var c=o.context,u=n.contextType;typeof u=="object"&&u!==null?u=xr(u):(u=Fn(n)?ws:jn.current,u=Bo(t,u));var d=n.getDerivedStateFromProps,f=typeof d=="function"||typeof o.getSnapshotBeforeUpdate=="function";f||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(l!==r||c!==u)&&Sk(t,o,r,u),Qa=!1;var h=t.memoizedState;o.state=h,Ff(t,r,o,a),c=t.memoizedState,l!==r||h!==c||zn.current||Qa?(typeof d=="function"&&(Fv(t,n,d,r),c=t.memoizedState),(l=Qa||kk(t,n,l,r,h,c,u))?(f||typeof o.UNSAFE_componentWillMount!="function"&&typeof o.componentWillMount!="function"||(typeof o.componentWillMount=="function"&&o.componentWillMount(),typeof o.UNSAFE_componentWillMount=="function"&&o.UNSAFE_componentWillMount()),typeof o.componentDidMount=="function"&&(t.flags|=4194308)):(typeof o.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=c),o.props=r,o.state=c,o.context=u,r=l):(typeof o.componentDidMount=="function"&&(t.flags|=4194308),r=!1)}else{o=t.stateNode,fC(e,t),l=t.memoizedProps,u=t.type===t.elementType?l:Rr(t.type,l),o.props=u,f=t.pendingProps,h=o.context,c=n.contextType,typeof c=="object"&&c!==null?c=xr(c):(c=Fn(n)?ws:jn.current,c=Bo(t,c));var p=n.getDerivedStateFromProps;(d=typeof p=="function"||typeof o.getSnapshotBeforeUpdate=="function")||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(l!==f||h!==c)&&Sk(t,o,r,c),Qa=!1,h=t.memoizedState,o.state=h,Ff(t,r,o,a);var g=t.memoizedState;l!==f||h!==g||zn.current||Qa?(typeof p=="function"&&(Fv(t,n,p,r),g=t.memoizedState),(u=Qa||kk(t,n,u,r,h,g,c)||!1)?(d||typeof o.UNSAFE_componentWillUpdate!="function"&&typeof o.componentWillUpdate!="function"||(typeof o.componentWillUpdate=="function"&&o.componentWillUpdate(r,g,c),typeof o.UNSAFE_componentWillUpdate=="function"&&o.UNSAFE_componentWillUpdate(r,g,c)),typeof o.componentDidUpdate=="function"&&(t.flags|=4),typeof o.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof o.componentDidUpdate!="function"||l===e.memoizedProps&&h===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||l===e.memoizedProps&&h===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=g),o.props=r,o.state=g,o.context=c,r=u):(typeof o.componentDidUpdate!="function"||l===e.memoizedProps&&h===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||l===e.memoizedProps&&h===e.memoizedState||(t.flags|=1024),r=!1)}return Gv(e,t,n,r,s,a)}function Gv(e,t,n,r,a,s){DC(e,t);var o=(t.flags&128)!==0;if(!r&&!o)return a&&pk(t,n,!1),Ra(e,t,s);r=t.stateNode,mD.current=t;var l=o&&typeof n.getDerivedStateFromError!="function"?null:r.render();return t.flags|=1,e!==null&&o?(t.child=Fo(t,e.child,null,s),t.child=Fo(t,null,l,s)):_n(e,t,l,s),t.memoizedState=r.state,a&&pk(t,n,!0),t.child}function BC(e){var t=e.stateNode;t.pendingContext?hk(e,t.pendingContext,t.pendingContext!==t.context):t.context&&hk(e,t.context,!1),jx(e,t.containerInfo)}function Tk(e,t,n,r,a){return zo(),yx(a),t.flags|=256,_n(e,t,n,r),t.child}var qv={dehydrated:null,treeContext:null,retryLane:0};function Kv(e){return{baseLanes:e,cachePool:null,transitions:null}}function zC(e,t,n){var r=t.pendingProps,a=Nt.current,s=!1,o=(t.flags&128)!==0,l;if((l=o)||(l=e!==null&&e.memoizedState===null?!1:(a&2)!==0),l?(s=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(a|=1),dt(Nt,a&1),e===null)return Bv(t),e=t.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?(t.mode&1?e.data==="$!"?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(o=r.children,e=r.fallback,s?(r=t.mode,s=t.child,o={mode:"hidden",children:o},!(r&1)&&s!==null?(s.childLanes=0,s.pendingProps=o):s=bp(o,r,0,null),e=ps(e,r,n,null),s.return=t,e.return=t,s.sibling=e,t.child=s,t.child.memoizedState=Kv(n),t.memoizedState=qv,e):Px(t,o));if(a=e.memoizedState,a!==null&&(l=a.dehydrated,l!==null))return gD(e,t,o,r,l,a,n);if(s){s=r.fallback,o=t.mode,a=e.child,l=a.sibling;var c={mode:"hidden",children:r.children};return!(o&1)&&t.child!==a?(r=t.child,r.childLanes=0,r.pendingProps=c,t.deletions=null):(r=vi(a,c),r.subtreeFlags=a.subtreeFlags&14680064),l!==null?s=vi(l,s):(s=ps(s,o,n,null),s.flags|=2),s.return=t,r.return=t,r.sibling=s,t.child=r,r=s,s=t.child,o=e.child.memoizedState,o=o===null?Kv(n):{baseLanes:o.baseLanes|n,cachePool:null,transitions:o.transitions},s.memoizedState=o,s.childLanes=e.childLanes&~n,t.memoizedState=qv,r}return s=e.child,e=s.sibling,r=vi(s,{mode:"visible",children:r.children}),!(t.mode&1)&&(r.lanes=n),r.return=t,r.sibling=null,e!==null&&(n=t.deletions,n===null?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=r,t.memoizedState=null,r}function Px(e,t){return t=bp({mode:"visible",children:t},e.mode,0,null),t.return=e,e.child=t}function Od(e,t,n,r){return r!==null&&yx(r),Fo(t,e.child,null,n),e=Px(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function gD(e,t,n,r,a,s,o){if(n)return t.flags&256?(t.flags&=-257,r=Qm(Error(se(422))),Od(e,t,o,r)):t.memoizedState!==null?(t.child=e.child,t.flags|=128,null):(s=r.fallback,a=t.mode,r=bp({mode:"visible",children:r.children},a,0,null),s=ps(s,a,o,null),s.flags|=2,r.return=t,s.return=t,r.sibling=s,t.child=r,t.mode&1&&Fo(t,e.child,null,o),t.child.memoizedState=Kv(o),t.memoizedState=qv,s);if(!(t.mode&1))return Od(e,t,o,null);if(a.data==="$!"){if(r=a.nextSibling&&a.nextSibling.dataset,r)var l=r.dgst;return r=l,s=Error(se(419)),r=Qm(s,r,void 0),Od(e,t,o,r)}if(l=(o&e.childLanes)!==0,Dn||l){if(r=nn,r!==null){switch(o&-o){case 4:a=2;break;case 16:a=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:a=32;break;case 536870912:a=268435456;break;default:a=0}a=a&(r.suspendedLanes|o)?0:a,a!==0&&a!==s.retryLane&&(s.retryLane=a,Pa(e,a),zr(r,e,a,-1))}return Dx(),r=Qm(Error(se(421))),Od(e,t,o,r)}return a.data==="$?"?(t.flags|=128,t.child=e.child,t=CD.bind(null,e),a._reactRetry=t,null):(e=s.treeContext,Jn=hi(a.nextSibling),er=t,wt=!0,$r=null,e!==null&&(hr[pr++]=wa,hr[pr++]=ka,hr[pr++]=ks,wa=e.id,ka=e.overflow,ks=t),t=Px(t,r.children),t.flags|=4096,t)}function Ok(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),zv(e.return,t,n)}function Zm(e,t,n,r,a){var s=e.memoizedState;s===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:a}:(s.isBackwards=t,s.rendering=null,s.renderingStartTime=0,s.last=r,s.tail=n,s.tailMode=a)}function FC(e,t,n){var r=t.pendingProps,a=r.revealOrder,s=r.tail;if(_n(e,t,r.children,n),r=Nt.current,r&2)r=r&1|2,t.flags|=128;else{if(e!==null&&e.flags&128)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&Ok(e,n,t);else if(e.tag===19)Ok(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(dt(Nt,r),!(t.mode&1))t.memoizedState=null;else switch(a){case"forwards":for(n=t.child,a=null;n!==null;)e=n.alternate,e!==null&&Uf(e)===null&&(a=n),n=n.sibling;n=a,n===null?(a=t.child,t.child=null):(a=n.sibling,n.sibling=null),Zm(t,!1,a,n,s);break;case"backwards":for(n=null,a=t.child,t.child=null;a!==null;){if(e=a.alternate,e!==null&&Uf(e)===null){t.child=a;break}e=a.sibling,a.sibling=n,n=a,a=e}Zm(t,!0,n,null,s);break;case"together":Zm(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function bf(e,t){!(t.mode&1)&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function Ra(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),js|=t.lanes,!(n&t.childLanes))return null;if(e!==null&&t.child!==e.child)throw Error(se(153));if(t.child!==null){for(e=t.child,n=vi(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=vi(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function vD(e,t,n){switch(t.tag){case 3:BC(t),zo();break;case 5:hC(t);break;case 1:Fn(t.type)&&$f(t);break;case 4:jx(t,t.stateNode.containerInfo);break;case 10:var r=t.type._context,a=t.memoizedProps.value;dt(Bf,r._currentValue),r._currentValue=a;break;case 13:if(r=t.memoizedState,r!==null)return r.dehydrated!==null?(dt(Nt,Nt.current&1),t.flags|=128,null):n&t.child.childLanes?zC(e,t,n):(dt(Nt,Nt.current&1),e=Ra(e,t,n),e!==null?e.sibling:null);dt(Nt,Nt.current&1);break;case 19:if(r=(n&t.childLanes)!==0,e.flags&128){if(r)return FC(e,t,n);t.flags|=128}if(a=t.memoizedState,a!==null&&(a.rendering=null,a.tail=null,a.lastEffect=null),dt(Nt,Nt.current),r)break;return null;case 22:case 23:return t.lanes=0,LC(e,t,n)}return Ra(e,t,n)}var UC,Vv,WC,HC;UC=function(e,t){for(var n=t.child;n!==null;){if(n.tag===5||n.tag===6)e.appendChild(n.stateNode);else if(n.tag!==4&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}};Vv=function(){};WC=function(e,t,n,r){var a=e.memoizedProps;if(a!==r){e=t.stateNode,os(oa.current);var s=null;switch(n){case"input":a=gv(e,a),r=gv(e,r),s=[];break;case"select":a=At({},a,{value:void 0}),r=At({},r,{value:void 0}),s=[];break;case"textarea":a=bv(e,a),r=bv(e,r),s=[];break;default:typeof a.onClick!="function"&&typeof r.onClick=="function"&&(e.onclick=Mf)}wv(n,r);var o;n=null;for(u in a)if(!r.hasOwnProperty(u)&&a.hasOwnProperty(u)&&a[u]!=null)if(u==="style"){var l=a[u];for(o in l)l.hasOwnProperty(o)&&(n||(n={}),n[o]="")}else u!=="dangerouslySetInnerHTML"&&u!=="children"&&u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&u!=="autoFocus"&&(Bc.hasOwnProperty(u)?s||(s=[]):(s=s||[]).push(u,null));for(u in r){var c=r[u];if(l=a!=null?a[u]:void 0,r.hasOwnProperty(u)&&c!==l&&(c!=null||l!=null))if(u==="style")if(l){for(o in l)!l.hasOwnProperty(o)||c&&c.hasOwnProperty(o)||(n||(n={}),n[o]="");for(o in c)c.hasOwnProperty(o)&&l[o]!==c[o]&&(n||(n={}),n[o]=c[o])}else n||(s||(s=[]),s.push(u,n)),n=c;else u==="dangerouslySetInnerHTML"?(c=c?c.__html:void 0,l=l?l.__html:void 0,c!=null&&l!==c&&(s=s||[]).push(u,c)):u==="children"?typeof c!="string"&&typeof c!="number"||(s=s||[]).push(u,""+c):u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&(Bc.hasOwnProperty(u)?(c!=null&&u==="onScroll"&&ft("scroll",e),s||l===c||(s=[])):(s=s||[]).push(u,c))}n&&(s=s||[]).push("style",n);var u=s;(t.updateQueue=u)&&(t.flags|=4)}};HC=function(e,t,n,r){n!==r&&(t.flags|=4)};function Jl(e,t){if(!wt)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function gn(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var a=e.child;a!==null;)n|=a.lanes|a.childLanes,r|=a.subtreeFlags&14680064,r|=a.flags&14680064,a.return=e,a=a.sibling;else for(a=e.child;a!==null;)n|=a.lanes|a.childLanes,r|=a.subtreeFlags,r|=a.flags,a.return=e,a=a.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function yD(e,t,n){var r=t.pendingProps;switch(vx(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return gn(t),null;case 1:return Fn(t.type)&&If(),gn(t),null;case 3:return r=t.stateNode,Uo(),gt(zn),gt(jn),Ex(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),(e===null||e.child===null)&&(Cd(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,$r!==null&&(ny($r),$r=null))),Vv(e,t),gn(t),null;case 5:Nx(t);var a=os(Qc.current);if(n=t.type,e!==null&&t.stateNode!=null)WC(e,t,n,r,a),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(t.stateNode===null)throw Error(se(166));return gn(t),null}if(e=os(oa.current),Cd(t)){r=t.stateNode,n=t.type;var s=t.memoizedProps;switch(r[na]=t,r[Yc]=s,e=(t.mode&1)!==0,n){case"dialog":ft("cancel",r),ft("close",r);break;case"iframe":case"object":case"embed":ft("load",r);break;case"video":case"audio":for(a=0;a<yc.length;a++)ft(yc[a],r);break;case"source":ft("error",r);break;case"img":case"image":case"link":ft("error",r),ft("load",r);break;case"details":ft("toggle",r);break;case"input":z0(r,s),ft("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!s.multiple},ft("invalid",r);break;case"textarea":U0(r,s),ft("invalid",r)}wv(n,s),a=null;for(var o in s)if(s.hasOwnProperty(o)){var l=s[o];o==="children"?typeof l=="string"?r.textContent!==l&&(s.suppressHydrationWarning!==!0&&Ad(r.textContent,l,e),a=["children",l]):typeof l=="number"&&r.textContent!==""+l&&(s.suppressHydrationWarning!==!0&&Ad(r.textContent,l,e),a=["children",""+l]):Bc.hasOwnProperty(o)&&l!=null&&o==="onScroll"&&ft("scroll",r)}switch(n){case"input":xd(r),F0(r,s,!0);break;case"textarea":xd(r),W0(r);break;case"select":case"option":break;default:typeof s.onClick=="function"&&(r.onclick=Mf)}r=a,t.updateQueue=r,r!==null&&(t.flags|=4)}else{o=a.nodeType===9?a:a.ownerDocument,e==="http://www.w3.org/1999/xhtml"&&(e=yA(n)),e==="http://www.w3.org/1999/xhtml"?n==="script"?(e=o.createElement("div"),e.innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=o.createElement(n,{is:r.is}):(e=o.createElement(n),n==="select"&&(o=e,r.multiple?o.multiple=!0:r.size&&(o.size=r.size))):e=o.createElementNS(e,n),e[na]=t,e[Yc]=r,UC(e,t,!1,!1),t.stateNode=e;e:{switch(o=kv(n,r),n){case"dialog":ft("cancel",e),ft("close",e),a=r;break;case"iframe":case"object":case"embed":ft("load",e),a=r;break;case"video":case"audio":for(a=0;a<yc.length;a++)ft(yc[a],e);a=r;break;case"source":ft("error",e),a=r;break;case"img":case"image":case"link":ft("error",e),ft("load",e),a=r;break;case"details":ft("toggle",e),a=r;break;case"input":z0(e,r),a=gv(e,r),ft("invalid",e);break;case"option":a=r;break;case"select":e._wrapperState={wasMultiple:!!r.multiple},a=At({},r,{value:void 0}),ft("invalid",e);break;case"textarea":U0(e,r),a=bv(e,r),ft("invalid",e);break;default:a=r}wv(n,a),l=a;for(s in l)if(l.hasOwnProperty(s)){var c=l[s];s==="style"?wA(e,c):s==="dangerouslySetInnerHTML"?(c=c?c.__html:void 0,c!=null&&bA(e,c)):s==="children"?typeof c=="string"?(n!=="textarea"||c!=="")&&zc(e,c):typeof c=="number"&&zc(e,""+c):s!=="suppressContentEditableWarning"&&s!=="suppressHydrationWarning"&&s!=="autoFocus"&&(Bc.hasOwnProperty(s)?c!=null&&s==="onScroll"&&ft("scroll",e):c!=null&&nx(e,s,c,o))}switch(n){case"input":xd(e),F0(e,r,!1);break;case"textarea":xd(e),W0(e);break;case"option":r.value!=null&&e.setAttribute("value",""+wi(r.value));break;case"select":e.multiple=!!r.multiple,s=r.value,s!=null?_o(e,!!r.multiple,s,!1):r.defaultValue!=null&&_o(e,!!r.multiple,r.defaultValue,!0);break;default:typeof a.onClick=="function"&&(e.onclick=Mf)}switch(n){case"button":case"input":case"select":case"textarea":r=!!r.autoFocus;break e;case"img":r=!0;break e;default:r=!1}}r&&(t.flags|=4)}t.ref!==null&&(t.flags|=512,t.flags|=2097152)}return gn(t),null;case 6:if(e&&t.stateNode!=null)HC(e,t,e.memoizedProps,r);else{if(typeof r!="string"&&t.stateNode===null)throw Error(se(166));if(n=os(Qc.current),os(oa.current),Cd(t)){if(r=t.stateNode,n=t.memoizedProps,r[na]=t,(s=r.nodeValue!==n)&&(e=er,e!==null))switch(e.tag){case 3:Ad(r.nodeValue,n,(e.mode&1)!==0);break;case 5:e.memoizedProps.suppressHydrationWarning!==!0&&Ad(r.nodeValue,n,(e.mode&1)!==0)}s&&(t.flags|=4)}else r=(n.nodeType===9?n:n.ownerDocument).createTextNode(r),r[na]=t,t.stateNode=r}return gn(t),null;case 13:if(gt(Nt),r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(wt&&Jn!==null&&t.mode&1&&!(t.flags&128))lC(),zo(),t.flags|=98560,s=!1;else if(s=Cd(t),r!==null&&r.dehydrated!==null){if(e===null){if(!s)throw Error(se(318));if(s=t.memoizedState,s=s!==null?s.dehydrated:null,!s)throw Error(se(317));s[na]=t}else zo(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;gn(t),s=!1}else $r!==null&&(ny($r),$r=null),s=!0;if(!s)return t.flags&65536?t:null}return t.flags&128?(t.lanes=n,t):(r=r!==null,r!==(e!==null&&e.memoizedState!==null)&&r&&(t.child.flags|=8192,t.mode&1&&(e===null||Nt.current&1?Ht===0&&(Ht=3):Dx())),t.updateQueue!==null&&(t.flags|=4),gn(t),null);case 4:return Uo(),Vv(e,t),e===null&&Kc(t.stateNode.containerInfo),gn(t),null;case 10:return wx(t.type._context),gn(t),null;case 17:return Fn(t.type)&&If(),gn(t),null;case 19:if(gt(Nt),s=t.memoizedState,s===null)return gn(t),null;if(r=(t.flags&128)!==0,o=s.rendering,o===null)if(r)Jl(s,!1);else{if(Ht!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(o=Uf(e),o!==null){for(t.flags|=128,Jl(s,!1),r=o.updateQueue,r!==null&&(t.updateQueue=r,t.flags|=4),t.subtreeFlags=0,r=n,n=t.child;n!==null;)s=n,e=r,s.flags&=14680066,o=s.alternate,o===null?(s.childLanes=0,s.lanes=e,s.child=null,s.subtreeFlags=0,s.memoizedProps=null,s.memoizedState=null,s.updateQueue=null,s.dependencies=null,s.stateNode=null):(s.childLanes=o.childLanes,s.lanes=o.lanes,s.child=o.child,s.subtreeFlags=0,s.deletions=null,s.memoizedProps=o.memoizedProps,s.memoizedState=o.memoizedState,s.updateQueue=o.updateQueue,s.type=o.type,e=o.dependencies,s.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return dt(Nt,Nt.current&1|2),t.child}e=e.sibling}s.tail!==null&&Mt()>Ho&&(t.flags|=128,r=!0,Jl(s,!1),t.lanes=4194304)}else{if(!r)if(e=Uf(o),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),Jl(s,!0),s.tail===null&&s.tailMode==="hidden"&&!o.alternate&&!wt)return gn(t),null}else 2*Mt()-s.renderingStartTime>Ho&&n!==1073741824&&(t.flags|=128,r=!0,Jl(s,!1),t.lanes=4194304);s.isBackwards?(o.sibling=t.child,t.child=o):(n=s.last,n!==null?n.sibling=o:t.child=o,s.last=o)}return s.tail!==null?(t=s.tail,s.rendering=t,s.tail=t.sibling,s.renderingStartTime=Mt(),t.sibling=null,n=Nt.current,dt(Nt,r?n&1|2:n&1),t):(gn(t),null);case 22:case 23:return Lx(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?Xn&1073741824&&(gn(t),t.subtreeFlags&6&&(t.flags|=8192)):gn(t),null;case 24:return null;case 25:return null}throw Error(se(156,t.tag))}function bD(e,t){switch(vx(t),t.tag){case 1:return Fn(t.type)&&If(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Uo(),gt(zn),gt(jn),Ex(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return Nx(t),null;case 13:if(gt(Nt),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(se(340));zo()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return gt(Nt),null;case 4:return Uo(),null;case 10:return wx(t.type._context),null;case 22:case 23:return Lx(),null;case 24:return null;default:return null}}var Pd=!1,xn=!1,xD=typeof WeakSet=="function"?WeakSet:Set,xe=null;function wo(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){Pt(e,t,r)}else n.current=null}function Yv(e,t,n){try{n()}catch(r){Pt(e,t,r)}}var Pk=!1;function wD(e,t){if(Pv=Of,e=YA(),mx(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var a=r.anchorOffset,s=r.focusNode;r=r.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,l=-1,c=-1,u=0,d=0,f=e,h=null;t:for(;;){for(var p;f!==n||a!==0&&f.nodeType!==3||(l=o+a),f!==s||r!==0&&f.nodeType!==3||(c=o+r),f.nodeType===3&&(o+=f.nodeValue.length),(p=f.firstChild)!==null;)h=f,f=p;for(;;){if(f===e)break t;if(h===n&&++u===a&&(l=o),h===s&&++d===r&&(c=o),(p=f.nextSibling)!==null)break;f=h,h=f.parentNode}f=p}n=l===-1||c===-1?null:{start:l,end:c}}else n=null}n=n||{start:0,end:0}}else n=null;for(Rv={focusedElem:e,selectionRange:n},Of=!1,xe=t;xe!==null;)if(t=xe,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,xe=e;else for(;xe!==null;){t=xe;try{var g=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(g!==null){var m=g.memoizedProps,y=g.memoizedState,v=t.stateNode,k=v.getSnapshotBeforeUpdate(t.elementType===t.type?m:Rr(t.type,m),y);v.__reactInternalSnapshotBeforeUpdate=k}break;case 3:var x=t.stateNode.containerInfo;x.nodeType===1?x.textContent="":x.nodeType===9&&x.documentElement&&x.removeChild(x.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(se(163))}}catch(j){Pt(t,t.return,j)}if(e=t.sibling,e!==null){e.return=t.return,xe=e;break}xe=t.return}return g=Pk,Pk=!1,g}function Ac(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var a=r=r.next;do{if((a.tag&e)===e){var s=a.destroy;a.destroy=void 0,s!==void 0&&Yv(t,n,s)}a=a.next}while(a!==r)}}function vp(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function Xv(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function GC(e){var t=e.alternate;t!==null&&(e.alternate=null,GC(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[na],delete t[Yc],delete t[$v],delete t[rD],delete t[aD])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function qC(e){return e.tag===5||e.tag===3||e.tag===4}function Rk(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||qC(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Qv(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Mf));else if(r!==4&&(e=e.child,e!==null))for(Qv(e,t,n),e=e.sibling;e!==null;)Qv(e,t,n),e=e.sibling}function Zv(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(Zv(e,t,n),e=e.sibling;e!==null;)Zv(e,t,n),e=e.sibling}var ln=null,Mr=!1;function qa(e,t,n){for(n=n.child;n!==null;)KC(e,t,n),n=n.sibling}function KC(e,t,n){if(sa&&typeof sa.onCommitFiberUnmount=="function")try{sa.onCommitFiberUnmount(cp,n)}catch{}switch(n.tag){case 5:xn||wo(n,t);case 6:var r=ln,a=Mr;ln=null,qa(e,t,n),ln=r,Mr=a,ln!==null&&(Mr?(e=ln,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):ln.removeChild(n.stateNode));break;case 18:ln!==null&&(Mr?(e=ln,n=n.stateNode,e.nodeType===8?Gm(e.parentNode,n):e.nodeType===1&&Gm(e,n),Hc(e)):Gm(ln,n.stateNode));break;case 4:r=ln,a=Mr,ln=n.stateNode.containerInfo,Mr=!0,qa(e,t,n),ln=r,Mr=a;break;case 0:case 11:case 14:case 15:if(!xn&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){a=r=r.next;do{var s=a,o=s.destroy;s=s.tag,o!==void 0&&(s&2||s&4)&&Yv(n,t,o),a=a.next}while(a!==r)}qa(e,t,n);break;case 1:if(!xn&&(wo(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(l){Pt(n,t,l)}qa(e,t,n);break;case 21:qa(e,t,n);break;case 22:n.mode&1?(xn=(r=xn)||n.memoizedState!==null,qa(e,t,n),xn=r):qa(e,t,n);break;default:qa(e,t,n)}}function Mk(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new xD),t.forEach(function(r){var a=TD.bind(null,e,r);n.has(r)||(n.add(r),r.then(a,a))})}}function Or(e,t){var n=t.deletions;if(n!==null)for(var r=0;r<n.length;r++){var a=n[r];try{var s=e,o=t,l=o;e:for(;l!==null;){switch(l.tag){case 5:ln=l.stateNode,Mr=!1;break e;case 3:ln=l.stateNode.containerInfo,Mr=!0;break e;case 4:ln=l.stateNode.containerInfo,Mr=!0;break e}l=l.return}if(ln===null)throw Error(se(160));KC(s,o,a),ln=null,Mr=!1;var c=a.alternate;c!==null&&(c.return=null),a.return=null}catch(u){Pt(a,t,u)}}if(t.subtreeFlags&12854)for(t=t.child;t!==null;)VC(t,e),t=t.sibling}function VC(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(Or(t,e),Zr(e),r&4){try{Ac(3,e,e.return),vp(3,e)}catch(m){Pt(e,e.return,m)}try{Ac(5,e,e.return)}catch(m){Pt(e,e.return,m)}}break;case 1:Or(t,e),Zr(e),r&512&&n!==null&&wo(n,n.return);break;case 5:if(Or(t,e),Zr(e),r&512&&n!==null&&wo(n,n.return),e.flags&32){var a=e.stateNode;try{zc(a,"")}catch(m){Pt(e,e.return,m)}}if(r&4&&(a=e.stateNode,a!=null)){var s=e.memoizedProps,o=n!==null?n.memoizedProps:s,l=e.type,c=e.updateQueue;if(e.updateQueue=null,c!==null)try{l==="input"&&s.type==="radio"&&s.name!=null&&gA(a,s),kv(l,o);var u=kv(l,s);for(o=0;o<c.length;o+=2){var d=c[o],f=c[o+1];d==="style"?wA(a,f):d==="dangerouslySetInnerHTML"?bA(a,f):d==="children"?zc(a,f):nx(a,d,f,u)}switch(l){case"input":vv(a,s);break;case"textarea":vA(a,s);break;case"select":var h=a._wrapperState.wasMultiple;a._wrapperState.wasMultiple=!!s.multiple;var p=s.value;p!=null?_o(a,!!s.multiple,p,!1):h!==!!s.multiple&&(s.defaultValue!=null?_o(a,!!s.multiple,s.defaultValue,!0):_o(a,!!s.multiple,s.multiple?[]:"",!1))}a[Yc]=s}catch(m){Pt(e,e.return,m)}}break;case 6:if(Or(t,e),Zr(e),r&4){if(e.stateNode===null)throw Error(se(162));a=e.stateNode,s=e.memoizedProps;try{a.nodeValue=s}catch(m){Pt(e,e.return,m)}}break;case 3:if(Or(t,e),Zr(e),r&4&&n!==null&&n.memoizedState.isDehydrated)try{Hc(t.containerInfo)}catch(m){Pt(e,e.return,m)}break;case 4:Or(t,e),Zr(e);break;case 13:Or(t,e),Zr(e),a=e.child,a.flags&8192&&(s=a.memoizedState!==null,a.stateNode.isHidden=s,!s||a.alternate!==null&&a.alternate.memoizedState!==null||(Ix=Mt())),r&4&&Mk(e);break;case 22:if(d=n!==null&&n.memoizedState!==null,e.mode&1?(xn=(u=xn)||d,Or(t,e),xn=u):Or(t,e),Zr(e),r&8192){if(u=e.memoizedState!==null,(e.stateNode.isHidden=u)&&!d&&e.mode&1)for(xe=e,d=e.child;d!==null;){for(f=xe=d;xe!==null;){switch(h=xe,p=h.child,h.tag){case 0:case 11:case 14:case 15:Ac(4,h,h.return);break;case 1:wo(h,h.return);var g=h.stateNode;if(typeof g.componentWillUnmount=="function"){r=h,n=h.return;try{t=r,g.props=t.memoizedProps,g.state=t.memoizedState,g.componentWillUnmount()}catch(m){Pt(r,n,m)}}break;case 5:wo(h,h.return);break;case 22:if(h.memoizedState!==null){$k(f);continue}}p!==null?(p.return=h,xe=p):$k(f)}d=d.sibling}e:for(d=null,f=e;;){if(f.tag===5){if(d===null){d=f;try{a=f.stateNode,u?(s=a.style,typeof s.setProperty=="function"?s.setProperty("display","none","important"):s.display="none"):(l=f.stateNode,c=f.memoizedProps.style,o=c!=null&&c.hasOwnProperty("display")?c.display:null,l.style.display=xA("display",o))}catch(m){Pt(e,e.return,m)}}}else if(f.tag===6){if(d===null)try{f.stateNode.nodeValue=u?"":f.memoizedProps}catch(m){Pt(e,e.return,m)}}else if((f.tag!==22&&f.tag!==23||f.memoizedState===null||f===e)&&f.child!==null){f.child.return=f,f=f.child;continue}if(f===e)break e;for(;f.sibling===null;){if(f.return===null||f.return===e)break e;d===f&&(d=null),f=f.return}d===f&&(d=null),f.sibling.return=f.return,f=f.sibling}}break;case 19:Or(t,e),Zr(e),r&4&&Mk(e);break;case 21:break;default:Or(t,e),Zr(e)}}function Zr(e){var t=e.flags;if(t&2){try{e:{for(var n=e.return;n!==null;){if(qC(n)){var r=n;break e}n=n.return}throw Error(se(160))}switch(r.tag){case 5:var a=r.stateNode;r.flags&32&&(zc(a,""),r.flags&=-33);var s=Rk(e);Zv(e,s,a);break;case 3:case 4:var o=r.stateNode.containerInfo,l=Rk(e);Qv(e,l,o);break;default:throw Error(se(161))}}catch(c){Pt(e,e.return,c)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function kD(e,t,n){xe=e,YC(e)}function YC(e,t,n){for(var r=(e.mode&1)!==0;xe!==null;){var a=xe,s=a.child;if(a.tag===22&&r){var o=a.memoizedState!==null||Pd;if(!o){var l=a.alternate,c=l!==null&&l.memoizedState!==null||xn;l=Pd;var u=xn;if(Pd=o,(xn=c)&&!u)for(xe=a;xe!==null;)o=xe,c=o.child,o.tag===22&&o.memoizedState!==null?Lk(a):c!==null?(c.return=o,xe=c):Lk(a);for(;s!==null;)xe=s,YC(s),s=s.sibling;xe=a,Pd=l,xn=u}Ik(e)}else a.subtreeFlags&8772&&s!==null?(s.return=a,xe=s):Ik(e)}}function Ik(e){for(;xe!==null;){var t=xe;if(t.flags&8772){var n=t.alternate;try{if(t.flags&8772)switch(t.tag){case 0:case 11:case 15:xn||vp(5,t);break;case 1:var r=t.stateNode;if(t.flags&4&&!xn)if(n===null)r.componentDidMount();else{var a=t.elementType===t.type?n.memoizedProps:Rr(t.type,n.memoizedProps);r.componentDidUpdate(a,n.memoizedState,r.__reactInternalSnapshotBeforeUpdate)}var s=t.updateQueue;s!==null&&bk(t,s,r);break;case 3:var o=t.updateQueue;if(o!==null){if(n=null,t.child!==null)switch(t.child.tag){case 5:n=t.child.stateNode;break;case 1:n=t.child.stateNode}bk(t,o,n)}break;case 5:var l=t.stateNode;if(n===null&&t.flags&4){n=l;var c=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":c.autoFocus&&n.focus();break;case"img":c.src&&(n.src=c.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(t.memoizedState===null){var u=t.alternate;if(u!==null){var d=u.memoizedState;if(d!==null){var f=d.dehydrated;f!==null&&Hc(f)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(se(163))}xn||t.flags&512&&Xv(t)}catch(h){Pt(t,t.return,h)}}if(t===e){xe=null;break}if(n=t.sibling,n!==null){n.return=t.return,xe=n;break}xe=t.return}}function $k(e){for(;xe!==null;){var t=xe;if(t===e){xe=null;break}var n=t.sibling;if(n!==null){n.return=t.return,xe=n;break}xe=t.return}}function Lk(e){for(;xe!==null;){var t=xe;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{vp(4,t)}catch(c){Pt(t,n,c)}break;case 1:var r=t.stateNode;if(typeof r.componentDidMount=="function"){var a=t.return;try{r.componentDidMount()}catch(c){Pt(t,a,c)}}var s=t.return;try{Xv(t)}catch(c){Pt(t,s,c)}break;case 5:var o=t.return;try{Xv(t)}catch(c){Pt(t,o,c)}}}catch(c){Pt(t,t.return,c)}if(t===e){xe=null;break}var l=t.sibling;if(l!==null){l.return=t.return,xe=l;break}xe=t.return}}var SD=Math.ceil,Gf=La.ReactCurrentDispatcher,Rx=La.ReactCurrentOwner,yr=La.ReactCurrentBatchConfig,Ge=0,nn=null,Dt=null,un=0,Xn=0,ko=Ni(0),Ht=0,tu=null,js=0,yp=0,Mx=0,Cc=null,Ln=null,Ix=0,Ho=1/0,ba=null,qf=!1,Jv=null,mi=null,Rd=!1,ii=null,Kf=0,Tc=0,ey=null,xf=-1,wf=0;function Tn(){return Ge&6?Mt():xf!==-1?xf:xf=Mt()}function gi(e){return e.mode&1?Ge&2&&un!==0?un&-un:sD.transition!==null?(wf===0&&(wf=RA()),wf):(e=et,e!==0||(e=window.event,e=e===void 0?16:zA(e.type)),e):1}function zr(e,t,n,r){if(50<Tc)throw Tc=0,ey=null,Error(se(185));qu(e,n,r),(!(Ge&2)||e!==nn)&&(e===nn&&(!(Ge&2)&&(yp|=n),Ht===4&&ei(e,un)),Un(e,r),n===1&&Ge===0&&!(t.mode&1)&&(Ho=Mt()+500,pp&&Ei()))}function Un(e,t){var n=e.callbackNode;sL(e,t);var r=Tf(e,e===nn?un:0);if(r===0)n!==null&&q0(n),e.callbackNode=null,e.callbackPriority=0;else if(t=r&-r,e.callbackPriority!==t){if(n!=null&&q0(n),t===1)e.tag===0?iD(Dk.bind(null,e)):iC(Dk.bind(null,e)),tD(function(){!(Ge&6)&&Ei()}),n=null;else{switch(MA(r)){case 1:n=ox;break;case 4:n=OA;break;case 16:n=Cf;break;case 536870912:n=PA;break;default:n=Cf}n=rT(n,XC.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function XC(e,t){if(xf=-1,wf=0,Ge&6)throw Error(se(327));var n=e.callbackNode;if(Po()&&e.callbackNode!==n)return null;var r=Tf(e,e===nn?un:0);if(r===0)return null;if(r&30||r&e.expiredLanes||t)t=Vf(e,r);else{t=r;var a=Ge;Ge|=2;var s=ZC();(nn!==e||un!==t)&&(ba=null,Ho=Mt()+500,hs(e,t));do try{ED();break}catch(l){QC(e,l)}while(!0);xx(),Gf.current=s,Ge=a,Dt!==null?t=0:(nn=null,un=0,t=Ht)}if(t!==0){if(t===2&&(a=_v(e),a!==0&&(r=a,t=ty(e,a))),t===1)throw n=tu,hs(e,0),ei(e,r),Un(e,Mt()),n;if(t===6)ei(e,r);else{if(a=e.current.alternate,!(r&30)&&!jD(a)&&(t=Vf(e,r),t===2&&(s=_v(e),s!==0&&(r=s,t=ty(e,s))),t===1))throw n=tu,hs(e,0),ei(e,r),Un(e,Mt()),n;switch(e.finishedWork=a,e.finishedLanes=r,t){case 0:case 1:throw Error(se(345));case 2:Qi(e,Ln,ba);break;case 3:if(ei(e,r),(r&130023424)===r&&(t=Ix+500-Mt(),10<t)){if(Tf(e,0)!==0)break;if(a=e.suspendedLanes,(a&r)!==r){Tn(),e.pingedLanes|=e.suspendedLanes&a;break}e.timeoutHandle=Iv(Qi.bind(null,e,Ln,ba),t);break}Qi(e,Ln,ba);break;case 4:if(ei(e,r),(r&4194240)===r)break;for(t=e.eventTimes,a=-1;0<r;){var o=31-Br(r);s=1<<o,o=t[o],o>a&&(a=o),r&=~s}if(r=a,r=Mt()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*SD(r/1960))-r,10<r){e.timeoutHandle=Iv(Qi.bind(null,e,Ln,ba),r);break}Qi(e,Ln,ba);break;case 5:Qi(e,Ln,ba);break;default:throw Error(se(329))}}}return Un(e,Mt()),e.callbackNode===n?XC.bind(null,e):null}function ty(e,t){var n=Cc;return e.current.memoizedState.isDehydrated&&(hs(e,t).flags|=256),e=Vf(e,t),e!==2&&(t=Ln,Ln=n,t!==null&&ny(t)),e}function ny(e){Ln===null?Ln=e:Ln.push.apply(Ln,e)}function jD(e){for(var t=e;;){if(t.flags&16384){var n=t.updateQueue;if(n!==null&&(n=n.stores,n!==null))for(var r=0;r<n.length;r++){var a=n[r],s=a.getSnapshot;a=a.value;try{if(!Hr(s(),a))return!1}catch{return!1}}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function ei(e,t){for(t&=~Mx,t&=~yp,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-Br(t),r=1<<n;e[n]=-1,t&=~r}}function Dk(e){if(Ge&6)throw Error(se(327));Po();var t=Tf(e,0);if(!(t&1))return Un(e,Mt()),null;var n=Vf(e,t);if(e.tag!==0&&n===2){var r=_v(e);r!==0&&(t=r,n=ty(e,r))}if(n===1)throw n=tu,hs(e,0),ei(e,t),Un(e,Mt()),n;if(n===6)throw Error(se(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,Qi(e,Ln,ba),Un(e,Mt()),null}function $x(e,t){var n=Ge;Ge|=1;try{return e(t)}finally{Ge=n,Ge===0&&(Ho=Mt()+500,pp&&Ei())}}function Ns(e){ii!==null&&ii.tag===0&&!(Ge&6)&&Po();var t=Ge;Ge|=1;var n=yr.transition,r=et;try{if(yr.transition=null,et=1,e)return e()}finally{et=r,yr.transition=n,Ge=t,!(Ge&6)&&Ei()}}function Lx(){Xn=ko.current,gt(ko)}function hs(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(n!==-1&&(e.timeoutHandle=-1,eD(n)),Dt!==null)for(n=Dt.return;n!==null;){var r=n;switch(vx(r),r.tag){case 1:r=r.type.childContextTypes,r!=null&&If();break;case 3:Uo(),gt(zn),gt(jn),Ex();break;case 5:Nx(r);break;case 4:Uo();break;case 13:gt(Nt);break;case 19:gt(Nt);break;case 10:wx(r.type._context);break;case 22:case 23:Lx()}n=n.return}if(nn=e,Dt=e=vi(e.current,null),un=Xn=t,Ht=0,tu=null,Mx=yp=js=0,Ln=Cc=null,ss!==null){for(t=0;t<ss.length;t++)if(n=ss[t],r=n.interleaved,r!==null){n.interleaved=null;var a=r.next,s=n.pending;if(s!==null){var o=s.next;s.next=a,r.next=o}n.pending=r}ss=null}return e}function QC(e,t){do{var n=Dt;try{if(xx(),vf.current=Hf,Wf){for(var r=Et.memoizedState;r!==null;){var a=r.queue;a!==null&&(a.pending=null),r=r.next}Wf=!1}if(Ss=0,Jt=Wt=Et=null,_c=!1,Zc=0,Rx.current=null,n===null||n.return===null){Ht=1,tu=t,Dt=null;break}e:{var s=e,o=n.return,l=n,c=t;if(t=un,l.flags|=32768,c!==null&&typeof c=="object"&&typeof c.then=="function"){var u=c,d=l,f=d.tag;if(!(d.mode&1)&&(f===0||f===11||f===15)){var h=d.alternate;h?(d.updateQueue=h.updateQueue,d.memoizedState=h.memoizedState,d.lanes=h.lanes):(d.updateQueue=null,d.memoizedState=null)}var p=Nk(o);if(p!==null){p.flags&=-257,Ek(p,o,l,s,t),p.mode&1&&jk(s,u,t),t=p,c=u;var g=t.updateQueue;if(g===null){var m=new Set;m.add(c),t.updateQueue=m}else g.add(c);break e}else{if(!(t&1)){jk(s,u,t),Dx();break e}c=Error(se(426))}}else if(wt&&l.mode&1){var y=Nk(o);if(y!==null){!(y.flags&65536)&&(y.flags|=256),Ek(y,o,l,s,t),yx(Wo(c,l));break e}}s=c=Wo(c,l),Ht!==4&&(Ht=2),Cc===null?Cc=[s]:Cc.push(s),s=o;do{switch(s.tag){case 3:s.flags|=65536,t&=-t,s.lanes|=t;var v=MC(s,c,t);yk(s,v);break e;case 1:l=c;var k=s.type,x=s.stateNode;if(!(s.flags&128)&&(typeof k.getDerivedStateFromError=="function"||x!==null&&typeof x.componentDidCatch=="function"&&(mi===null||!mi.has(x)))){s.flags|=65536,t&=-t,s.lanes|=t;var j=IC(s,l,t);yk(s,j);break e}}s=s.return}while(s!==null)}eT(n)}catch(w){t=w,Dt===n&&n!==null&&(Dt=n=n.return);continue}break}while(!0)}function ZC(){var e=Gf.current;return Gf.current=Hf,e===null?Hf:e}function Dx(){(Ht===0||Ht===3||Ht===2)&&(Ht=4),nn===null||!(js&268435455)&&!(yp&268435455)||ei(nn,un)}function Vf(e,t){var n=Ge;Ge|=2;var r=ZC();(nn!==e||un!==t)&&(ba=null,hs(e,t));do try{ND();break}catch(a){QC(e,a)}while(!0);if(xx(),Ge=n,Gf.current=r,Dt!==null)throw Error(se(261));return nn=null,un=0,Ht}function ND(){for(;Dt!==null;)JC(Dt)}function ED(){for(;Dt!==null&&!Q$();)JC(Dt)}function JC(e){var t=nT(e.alternate,e,Xn);e.memoizedProps=e.pendingProps,t===null?eT(e):Dt=t,Rx.current=null}function eT(e){var t=e;do{var n=t.alternate;if(e=t.return,t.flags&32768){if(n=bD(n,t),n!==null){n.flags&=32767,Dt=n;return}if(e!==null)e.flags|=32768,e.subtreeFlags=0,e.deletions=null;else{Ht=6,Dt=null;return}}else if(n=yD(n,t,Xn),n!==null){Dt=n;return}if(t=t.sibling,t!==null){Dt=t;return}Dt=t=e}while(t!==null);Ht===0&&(Ht=5)}function Qi(e,t,n){var r=et,a=yr.transition;try{yr.transition=null,et=1,_D(e,t,n,r)}finally{yr.transition=a,et=r}return null}function _D(e,t,n,r){do Po();while(ii!==null);if(Ge&6)throw Error(se(327));n=e.finishedWork;var a=e.finishedLanes;if(n===null)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(se(177));e.callbackNode=null,e.callbackPriority=0;var s=n.lanes|n.childLanes;if(oL(e,s),e===nn&&(Dt=nn=null,un=0),!(n.subtreeFlags&2064)&&!(n.flags&2064)||Rd||(Rd=!0,rT(Cf,function(){return Po(),null})),s=(n.flags&15990)!==0,n.subtreeFlags&15990||s){s=yr.transition,yr.transition=null;var o=et;et=1;var l=Ge;Ge|=4,Rx.current=null,wD(e,n),VC(n,e),KL(Rv),Of=!!Pv,Rv=Pv=null,e.current=n,kD(n),Z$(),Ge=l,et=o,yr.transition=s}else e.current=n;if(Rd&&(Rd=!1,ii=e,Kf=a),s=e.pendingLanes,s===0&&(mi=null),tL(n.stateNode),Un(e,Mt()),t!==null)for(r=e.onRecoverableError,n=0;n<t.length;n++)a=t[n],r(a.value,{componentStack:a.stack,digest:a.digest});if(qf)throw qf=!1,e=Jv,Jv=null,e;return Kf&1&&e.tag!==0&&Po(),s=e.pendingLanes,s&1?e===ey?Tc++:(Tc=0,ey=e):Tc=0,Ei(),null}function Po(){if(ii!==null){var e=MA(Kf),t=yr.transition,n=et;try{if(yr.transition=null,et=16>e?16:e,ii===null)var r=!1;else{if(e=ii,ii=null,Kf=0,Ge&6)throw Error(se(331));var a=Ge;for(Ge|=4,xe=e.current;xe!==null;){var s=xe,o=s.child;if(xe.flags&16){var l=s.deletions;if(l!==null){for(var c=0;c<l.length;c++){var u=l[c];for(xe=u;xe!==null;){var d=xe;switch(d.tag){case 0:case 11:case 15:Ac(8,d,s)}var f=d.child;if(f!==null)f.return=d,xe=f;else for(;xe!==null;){d=xe;var h=d.sibling,p=d.return;if(GC(d),d===u){xe=null;break}if(h!==null){h.return=p,xe=h;break}xe=p}}}var g=s.alternate;if(g!==null){var m=g.child;if(m!==null){g.child=null;do{var y=m.sibling;m.sibling=null,m=y}while(m!==null)}}xe=s}}if(s.subtreeFlags&2064&&o!==null)o.return=s,xe=o;else e:for(;xe!==null;){if(s=xe,s.flags&2048)switch(s.tag){case 0:case 11:case 15:Ac(9,s,s.return)}var v=s.sibling;if(v!==null){v.return=s.return,xe=v;break e}xe=s.return}}var k=e.current;for(xe=k;xe!==null;){o=xe;var x=o.child;if(o.subtreeFlags&2064&&x!==null)x.return=o,xe=x;else e:for(o=k;xe!==null;){if(l=xe,l.flags&2048)try{switch(l.tag){case 0:case 11:case 15:vp(9,l)}}catch(w){Pt(l,l.return,w)}if(l===o){xe=null;break e}var j=l.sibling;if(j!==null){j.return=l.return,xe=j;break e}xe=l.return}}if(Ge=a,Ei(),sa&&typeof sa.onPostCommitFiberRoot=="function")try{sa.onPostCommitFiberRoot(cp,e)}catch{}r=!0}return r}finally{et=n,yr.transition=t}}return!1}function Bk(e,t,n){t=Wo(n,t),t=MC(e,t,1),e=pi(e,t,1),t=Tn(),e!==null&&(qu(e,1,t),Un(e,t))}function Pt(e,t,n){if(e.tag===3)Bk(e,e,n);else for(;t!==null;){if(t.tag===3){Bk(t,e,n);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof r.componentDidCatch=="function"&&(mi===null||!mi.has(r))){e=Wo(n,e),e=IC(t,e,1),t=pi(t,e,1),e=Tn(),t!==null&&(qu(t,1,e),Un(t,e));break}}t=t.return}}function AD(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),t=Tn(),e.pingedLanes|=e.suspendedLanes&n,nn===e&&(un&n)===n&&(Ht===4||Ht===3&&(un&130023424)===un&&500>Mt()-Ix?hs(e,0):Mx|=n),Un(e,t)}function tT(e,t){t===0&&(e.mode&1?(t=Sd,Sd<<=1,!(Sd&130023424)&&(Sd=4194304)):t=1);var n=Tn();e=Pa(e,t),e!==null&&(qu(e,t,n),Un(e,n))}function CD(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),tT(e,n)}function TD(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(se(314))}r!==null&&r.delete(t),tT(e,n)}var nT;nT=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||zn.current)Dn=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return Dn=!1,vD(e,t,n);Dn=!!(e.flags&131072)}else Dn=!1,wt&&t.flags&1048576&&sC(t,Df,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;bf(e,t),e=t.pendingProps;var a=Bo(t,jn.current);Oo(t,n),a=Ax(null,t,r,e,a,n);var s=Cx();return t.flags|=1,typeof a=="object"&&a!==null&&typeof a.render=="function"&&a.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,Fn(r)?(s=!0,$f(t)):s=!1,t.memoizedState=a.state!==null&&a.state!==void 0?a.state:null,Sx(t),a.updater=gp,t.stateNode=a,a._reactInternals=t,Uv(t,r,e,n),t=Gv(null,t,r,!0,s,n)):(t.tag=0,wt&&s&&gx(t),_n(null,t,a,n),t=t.child),t;case 16:r=t.elementType;e:{switch(bf(e,t),e=t.pendingProps,a=r._init,r=a(r._payload),t.type=r,a=t.tag=PD(r),e=Rr(r,e),a){case 0:t=Hv(null,t,r,e,n);break e;case 1:t=Ck(null,t,r,e,n);break e;case 11:t=_k(null,t,r,e,n);break e;case 14:t=Ak(null,t,r,Rr(r.type,e),n);break e}throw Error(se(306,r,""))}return t;case 0:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:Rr(r,a),Hv(e,t,r,a,n);case 1:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:Rr(r,a),Ck(e,t,r,a,n);case 3:e:{if(BC(t),e===null)throw Error(se(387));r=t.pendingProps,s=t.memoizedState,a=s.element,fC(e,t),Ff(t,r,null,n);var o=t.memoizedState;if(r=o.element,s.isDehydrated)if(s={element:r,isDehydrated:!1,cache:o.cache,pendingSuspenseBoundaries:o.pendingSuspenseBoundaries,transitions:o.transitions},t.updateQueue.baseState=s,t.memoizedState=s,t.flags&256){a=Wo(Error(se(423)),t),t=Tk(e,t,r,n,a);break e}else if(r!==a){a=Wo(Error(se(424)),t),t=Tk(e,t,r,n,a);break e}else for(Jn=hi(t.stateNode.containerInfo.firstChild),er=t,wt=!0,$r=null,n=uC(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(zo(),r===a){t=Ra(e,t,n);break e}_n(e,t,r,n)}t=t.child}return t;case 5:return hC(t),e===null&&Bv(t),r=t.type,a=t.pendingProps,s=e!==null?e.memoizedProps:null,o=a.children,Mv(r,a)?o=null:s!==null&&Mv(r,s)&&(t.flags|=32),DC(e,t),_n(e,t,o,n),t.child;case 6:return e===null&&Bv(t),null;case 13:return zC(e,t,n);case 4:return jx(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=Fo(t,null,r,n):_n(e,t,r,n),t.child;case 11:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:Rr(r,a),_k(e,t,r,a,n);case 7:return _n(e,t,t.pendingProps,n),t.child;case 8:return _n(e,t,t.pendingProps.children,n),t.child;case 12:return _n(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,a=t.pendingProps,s=t.memoizedProps,o=a.value,dt(Bf,r._currentValue),r._currentValue=o,s!==null)if(Hr(s.value,o)){if(s.children===a.children&&!zn.current){t=Ra(e,t,n);break e}}else for(s=t.child,s!==null&&(s.return=t);s!==null;){var l=s.dependencies;if(l!==null){o=s.child;for(var c=l.firstContext;c!==null;){if(c.context===r){if(s.tag===1){c=Ea(-1,n&-n),c.tag=2;var u=s.updateQueue;if(u!==null){u=u.shared;var d=u.pending;d===null?c.next=c:(c.next=d.next,d.next=c),u.pending=c}}s.lanes|=n,c=s.alternate,c!==null&&(c.lanes|=n),zv(s.return,n,t),l.lanes|=n;break}c=c.next}}else if(s.tag===10)o=s.type===t.type?null:s.child;else if(s.tag===18){if(o=s.return,o===null)throw Error(se(341));o.lanes|=n,l=o.alternate,l!==null&&(l.lanes|=n),zv(o,n,t),o=s.sibling}else o=s.child;if(o!==null)o.return=s;else for(o=s;o!==null;){if(o===t){o=null;break}if(s=o.sibling,s!==null){s.return=o.return,o=s;break}o=o.return}s=o}_n(e,t,a.children,n),t=t.child}return t;case 9:return a=t.type,r=t.pendingProps.children,Oo(t,n),a=xr(a),r=r(a),t.flags|=1,_n(e,t,r,n),t.child;case 14:return r=t.type,a=Rr(r,t.pendingProps),a=Rr(r.type,a),Ak(e,t,r,a,n);case 15:return $C(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:Rr(r,a),bf(e,t),t.tag=1,Fn(r)?(e=!0,$f(t)):e=!1,Oo(t,n),RC(t,r,a),Uv(t,r,a,n),Gv(null,t,r,!0,e,n);case 19:return FC(e,t,n);case 22:return LC(e,t,n)}throw Error(se(156,t.tag))};function rT(e,t){return TA(e,t)}function OD(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function gr(e,t,n,r){return new OD(e,t,n,r)}function Bx(e){return e=e.prototype,!(!e||!e.isReactComponent)}function PD(e){if(typeof e=="function")return Bx(e)?1:0;if(e!=null){if(e=e.$$typeof,e===ax)return 11;if(e===ix)return 14}return 2}function vi(e,t){var n=e.alternate;return n===null?(n=gr(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function kf(e,t,n,r,a,s){var o=2;if(r=e,typeof e=="function")Bx(e)&&(o=1);else if(typeof e=="string")o=5;else e:switch(e){case fo:return ps(n.children,a,s,t);case rx:o=8,a|=8;break;case fv:return e=gr(12,n,t,a|2),e.elementType=fv,e.lanes=s,e;case hv:return e=gr(13,n,t,a),e.elementType=hv,e.lanes=s,e;case pv:return e=gr(19,n,t,a),e.elementType=pv,e.lanes=s,e;case hA:return bp(n,a,s,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case dA:o=10;break e;case fA:o=9;break e;case ax:o=11;break e;case ix:o=14;break e;case Xa:o=16,r=null;break e}throw Error(se(130,e==null?e:typeof e,""))}return t=gr(o,n,t,a),t.elementType=e,t.type=r,t.lanes=s,t}function ps(e,t,n,r){return e=gr(7,e,r,t),e.lanes=n,e}function bp(e,t,n,r){return e=gr(22,e,r,t),e.elementType=hA,e.lanes=n,e.stateNode={isHidden:!1},e}function Jm(e,t,n){return e=gr(6,e,null,t),e.lanes=n,e}function eg(e,t,n){return t=gr(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function RD(e,t,n,r,a){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Mm(0),this.expirationTimes=Mm(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Mm(0),this.identifierPrefix=r,this.onRecoverableError=a,this.mutableSourceEagerHydrationData=null}function zx(e,t,n,r,a,s,o,l,c){return e=new RD(e,t,n,l,c),t===1?(t=1,s===!0&&(t|=8)):t=0,s=gr(3,null,null,t),e.current=s,s.stateNode=e,s.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Sx(s),e}function MD(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:uo,key:r==null?null:""+r,children:e,containerInfo:t,implementation:n}}function aT(e){if(!e)return ki;e=e._reactInternals;e:{if(Rs(e)!==e||e.tag!==1)throw Error(se(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(Fn(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(t!==null);throw Error(se(171))}if(e.tag===1){var n=e.type;if(Fn(n))return aC(e,n,t)}return t}function iT(e,t,n,r,a,s,o,l,c){return e=zx(n,r,!0,e,a,s,o,l,c),e.context=aT(null),n=e.current,r=Tn(),a=gi(n),s=Ea(r,a),s.callback=t??null,pi(n,s,a),e.current.lanes=a,qu(e,a,r),Un(e,r),e}function xp(e,t,n,r){var a=t.current,s=Tn(),o=gi(a);return n=aT(n),t.context===null?t.context=n:t.pendingContext=n,t=Ea(s,o),t.payload={element:e},r=r===void 0?null:r,r!==null&&(t.callback=r),e=pi(a,t,o),e!==null&&(zr(e,a,o,s),gf(e,a,o)),o}function Yf(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return e.child.stateNode;default:return e.child.stateNode}}function zk(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function Fx(e,t){zk(e,t),(e=e.alternate)&&zk(e,t)}function ID(){return null}var sT=typeof reportError=="function"?reportError:function(e){console.error(e)};function Ux(e){this._internalRoot=e}wp.prototype.render=Ux.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(se(409));xp(e,t,null,null)};wp.prototype.unmount=Ux.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;Ns(function(){xp(null,e,null,null)}),t[Oa]=null}};function wp(e){this._internalRoot=e}wp.prototype.unstable_scheduleHydration=function(e){if(e){var t=LA();e={blockedOn:null,target:e,priority:t};for(var n=0;n<Ja.length&&t!==0&&t<Ja[n].priority;n++);Ja.splice(n,0,e),n===0&&BA(e)}};function Wx(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function kp(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11&&(e.nodeType!==8||e.nodeValue!==" react-mount-point-unstable "))}function Fk(){}function $D(e,t,n,r,a){if(a){if(typeof r=="function"){var s=r;r=function(){var u=Yf(o);s.call(u)}}var o=iT(t,r,e,0,null,!1,!1,"",Fk);return e._reactRootContainer=o,e[Oa]=o.current,Kc(e.nodeType===8?e.parentNode:e),Ns(),o}for(;a=e.lastChild;)e.removeChild(a);if(typeof r=="function"){var l=r;r=function(){var u=Yf(c);l.call(u)}}var c=zx(e,0,!1,null,null,!1,!1,"",Fk);return e._reactRootContainer=c,e[Oa]=c.current,Kc(e.nodeType===8?e.parentNode:e),Ns(function(){xp(t,c,n,r)}),c}function Sp(e,t,n,r,a){var s=n._reactRootContainer;if(s){var o=s;if(typeof a=="function"){var l=a;a=function(){var c=Yf(o);l.call(c)}}xp(t,o,e,a)}else o=$D(n,t,e,a,r);return Yf(o)}IA=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=vc(t.pendingLanes);n!==0&&(lx(t,n|1),Un(t,Mt()),!(Ge&6)&&(Ho=Mt()+500,Ei()))}break;case 13:Ns(function(){var r=Pa(e,1);if(r!==null){var a=Tn();zr(r,e,1,a)}}),Fx(e,1)}};cx=function(e){if(e.tag===13){var t=Pa(e,134217728);if(t!==null){var n=Tn();zr(t,e,134217728,n)}Fx(e,134217728)}};$A=function(e){if(e.tag===13){var t=gi(e),n=Pa(e,t);if(n!==null){var r=Tn();zr(n,e,t,r)}Fx(e,t)}};LA=function(){return et};DA=function(e,t){var n=et;try{return et=e,t()}finally{et=n}};jv=function(e,t,n){switch(t){case"input":if(vv(e,n),t=n.name,n.type==="radio"&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var a=hp(r);if(!a)throw Error(se(90));mA(r),vv(r,a)}}}break;case"textarea":vA(e,n);break;case"select":t=n.value,t!=null&&_o(e,!!n.multiple,t,!1)}};jA=$x;NA=Ns;var LD={usingClientEntryPoint:!1,Events:[Vu,go,hp,kA,SA,$x]},ec={findFiberByHostInstance:is,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},DD={bundleType:ec.bundleType,version:ec.version,rendererPackageName:ec.rendererPackageName,rendererConfig:ec.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:La.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return e=AA(e),e===null?null:e.stateNode},findFiberByHostInstance:ec.findFiberByHostInstance||ID,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var Md=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Md.isDisabled&&Md.supportsFiber)try{cp=Md.inject(DD),sa=Md}catch{}}ar.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=LD;ar.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!Wx(t))throw Error(se(200));return MD(e,t,null,n)};ar.createRoot=function(e,t){if(!Wx(e))throw Error(se(299));var n=!1,r="",a=sT;return t!=null&&(t.unstable_strictMode===!0&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onRecoverableError!==void 0&&(a=t.onRecoverableError)),t=zx(e,1,!1,null,null,n,!1,r,a),e[Oa]=t.current,Kc(e.nodeType===8?e.parentNode:e),new Ux(t)};ar.findDOMNode=function(e){if(e==null)return null;if(e.nodeType===1)return e;var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(se(188)):(e=Object.keys(e).join(","),Error(se(268,e)));return e=AA(t),e=e===null?null:e.stateNode,e};ar.flushSync=function(e){return Ns(e)};ar.hydrate=function(e,t,n){if(!kp(t))throw Error(se(200));return Sp(null,e,t,!0,n)};ar.hydrateRoot=function(e,t,n){if(!Wx(e))throw Error(se(405));var r=n!=null&&n.hydratedSources||null,a=!1,s="",o=sT;if(n!=null&&(n.unstable_strictMode===!0&&(a=!0),n.identifierPrefix!==void 0&&(s=n.identifierPrefix),n.onRecoverableError!==void 0&&(o=n.onRecoverableError)),t=iT(t,null,e,1,n??null,a,!1,s,o),e[Oa]=t.current,Kc(e),r)for(e=0;e<r.length;e++)n=r[e],a=n._getVersion,a=a(n._source),t.mutableSourceEagerHydrationData==null?t.mutableSourceEagerHydrationData=[n,a]:t.mutableSourceEagerHydrationData.push(n,a);return new wp(t)};ar.render=function(e,t,n){if(!kp(t))throw Error(se(200));return Sp(null,e,t,!1,n)};ar.unmountComponentAtNode=function(e){if(!kp(e))throw Error(se(40));return e._reactRootContainer?(Ns(function(){Sp(null,null,e,!1,function(){e._reactRootContainer=null,e[Oa]=null})}),!0):!1};ar.unstable_batchedUpdates=$x;ar.unstable_renderSubtreeIntoContainer=function(e,t,n,r){if(!kp(n))throw Error(se(200));if(e==null||e._reactInternals===void 0)throw Error(se(38));return Sp(e,t,n,!1,r)};ar.version="18.3.1-next-f1338f8080-20240426";function oT(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(oT)}catch(e){console.error(e)}}oT(),oA.exports=ar;var BD=oA.exports,lT,Uk=BD;lT=Uk.createRoot,Uk.hydrateRoot;/**
41
- * @remix-run/router v1.23.3
42
- *
43
- * Copyright (c) Remix Software Inc.
44
- *
45
- * This source code is licensed under the MIT license found in the
46
- * LICENSE.md file in the root directory of this source tree.
47
- *
48
- * @license MIT
49
- */function nu(){return nu=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},nu.apply(null,arguments)}var si;(function(e){e.Pop="POP",e.Push="PUSH",e.Replace="REPLACE"})(si||(si={}));const Wk="popstate";function zD(e){e===void 0&&(e={});function t(r,a){let{pathname:s,search:o,hash:l}=r.location;return ry("",{pathname:s,search:o,hash:l},a.state&&a.state.usr||null,a.state&&a.state.key||"default")}function n(r,a){return typeof a=="string"?a:Xf(a)}return UD(t,n,null,e)}function _t(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function Hx(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function FD(){return Math.random().toString(36).substr(2,8)}function Hk(e,t){return{usr:e.state,key:e.key,idx:t}}function ry(e,t,n,r){return n===void 0&&(n=null),nu({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?yl(t):t,{state:n,key:t&&t.key||r||FD()})}function Xf(e){let{pathname:t="/",search:n="",hash:r=""}=e;return n&&n!=="?"&&(t+=n.charAt(0)==="?"?n:"?"+n),r&&r!=="#"&&(t+=r.charAt(0)==="#"?r:"#"+r),t}function yl(e){let t={};if(e){let n=e.indexOf("#");n>=0&&(t.hash=e.substr(n),e=e.substr(0,n));let r=e.indexOf("?");r>=0&&(t.search=e.substr(r),e=e.substr(0,r)),e&&(t.pathname=e)}return t}function UD(e,t,n,r){r===void 0&&(r={});let{window:a=document.defaultView,v5Compat:s=!1}=r,o=a.history,l=si.Pop,c=null,u=d();u==null&&(u=0,o.replaceState(nu({},o.state,{idx:u}),""));function d(){return(o.state||{idx:null}).idx}function f(){l=si.Pop;let y=d(),v=y==null?null:y-u;u=y,c&&c({action:l,location:m.location,delta:v})}function h(y,v){l=si.Push;let k=ry(m.location,y,v);u=d()+1;let x=Hk(k,u),j=m.createHref(k);try{o.pushState(x,"",j)}catch(w){if(w instanceof DOMException&&w.name==="DataCloneError")throw w;a.location.assign(j)}s&&c&&c({action:l,location:m.location,delta:1})}function p(y,v){l=si.Replace;let k=ry(m.location,y,v);u=d();let x=Hk(k,u),j=m.createHref(k);o.replaceState(x,"",j),s&&c&&c({action:l,location:m.location,delta:0})}function g(y){let v=a.location.origin!=="null"?a.location.origin:a.location.href,k=typeof y=="string"?y:Xf(y);return k=k.replace(/ $/,"%20"),_t(v,"No window.location.(origin|href) available to create URL for href: "+k),new URL(k,v)}let m={get action(){return l},get location(){return e(a,o)},listen(y){if(c)throw new Error("A history only accepts one active listener");return a.addEventListener(Wk,f),c=y,()=>{a.removeEventListener(Wk,f),c=null}},createHref(y){return t(a,y)},createURL:g,encodeLocation(y){let v=g(y);return{pathname:v.pathname,search:v.search,hash:v.hash}},push:h,replace:p,go(y){return o.go(y)}};return m}var Gk;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(Gk||(Gk={}));function WD(e,t,n){return n===void 0&&(n="/"),HD(e,t,n)}function HD(e,t,n,r){let a=typeof t=="string"?yl(t):t,s=Go(a.pathname||"/",n);if(s==null)return null;let o=cT(e);GD(o);let l=null,c=n2(s);for(let u=0;l==null&&u<o.length;++u)l=e2(o[u],c);return l}function cT(e,t,n,r){t===void 0&&(t=[]),n===void 0&&(n=[]),r===void 0&&(r="");let a=(s,o,l)=>{let c={relativePath:l===void 0?s.path||"":l,caseSensitive:s.caseSensitive===!0,childrenIndex:o,route:s};c.relativePath.startsWith("/")&&(_t(c.relativePath.startsWith(r),'Absolute route path "'+c.relativePath+'" nested under path '+('"'+r+'" is not valid. An absolute child route path ')+"must start with the combined path of all its parent routes."),c.relativePath=c.relativePath.slice(r.length));let u=yi([r,c.relativePath]),d=n.concat(c);s.children&&s.children.length>0&&(_t(s.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+u+'".')),cT(s.children,t,d,u)),!(s.path==null&&!s.index)&&t.push({path:u,score:ZD(u,s.index),routesMeta:d})};return e.forEach((s,o)=>{var l;if(s.path===""||!((l=s.path)!=null&&l.includes("?")))a(s,o);else for(let c of uT(s.path))a(s,o,c)}),t}function uT(e){let t=e.split("/");if(t.length===0)return[];let[n,...r]=t,a=n.endsWith("?"),s=n.replace(/\?$/,"");if(r.length===0)return a?[s,""]:[s];let o=uT(r.join("/")),l=[];return l.push(...o.map(c=>c===""?s:[s,c].join("/"))),a&&l.push(...o),l.map(c=>e.startsWith("/")&&c===""?"/":c)}function GD(e){e.sort((t,n)=>t.score!==n.score?n.score-t.score:JD(t.routesMeta.map(r=>r.childrenIndex),n.routesMeta.map(r=>r.childrenIndex)))}const qD=/^:[\w-]+$/,KD=3,VD=2,YD=1,XD=10,QD=-2,qk=e=>e==="*";function ZD(e,t){let n=e.split("/"),r=n.length;return n.some(qk)&&(r+=QD),t&&(r+=VD),n.filter(a=>!qk(a)).reduce((a,s)=>a+(qD.test(s)?KD:s===""?YD:XD),r)}function JD(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 e2(e,t,n){let{routesMeta:r}=e,a={},s="/",o=[];for(let l=0;l<r.length;++l){let c=r[l],u=l===r.length-1,d=s==="/"?t:t.slice(s.length)||"/",f=ay({path:c.relativePath,caseSensitive:c.caseSensitive,end:u},d),h=c.route;if(!f)return null;Object.assign(a,f.params),o.push({params:a,pathname:yi([s,f.pathname]),pathnameBase:o2(yi([s,f.pathnameBase])),route:h}),f.pathnameBase!=="/"&&(s=yi([s,f.pathnameBase]))}return o}function ay(e,t){typeof e=="string"&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=t2(e.path,e.caseSensitive,e.end),a=t.match(n);if(!a)return null;let s=a[0],o=s.replace(/(.)\/+$/,"$1"),l=a.slice(1);return{params:r.reduce((u,d,f)=>{let{paramName:h,isOptional:p}=d;if(h==="*"){let m=l[f]||"";o=s.slice(0,s.length-m.length).replace(/(.)\/+$/,"$1")}const g=l[f];return p&&!g?u[h]=void 0:u[h]=(g||"").replace(/%2F/g,"/"),u},{}),pathname:s,pathnameBase:o,pattern:e}}function t2(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!0),Hx(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,(o,l,c)=>(r.push({paramName:l,isOptional:c!=null}),c?"/?([^\\/]+)?":"/([^\\/]+)"));return e.endsWith("*")?(r.push({paramName:"*"}),a+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?a+="\\/*$":e!==""&&e!=="/"&&(a+="(?:(?=\\/|$))"),[new RegExp(a,t?void 0:"i"),r]}function n2(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return Hx(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+t+").")),e}}function Go(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)||"/"}const r2=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,a2=e=>r2.test(e);function i2(e,t){t===void 0&&(t="/");let{pathname:n,search:r="",hash:a=""}=typeof e=="string"?yl(e):e,s;if(n)if(a2(n))s=n;else{if(n.includes("//")){let o=n;n=dT(n),Hx(!1,"Pathnames cannot have embedded double slashes - normalizing "+(o+" -> "+n))}n.startsWith("/")?s=Kk(n.substring(1),"/"):s=Kk(n,t)}else s=t;return{pathname:s,search:l2(r),hash:c2(a)}}function Kk(e,t){let n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(a=>{a===".."?n.length>1&&n.pop():a!=="."&&n.push(a)}),n.length>1?n.join("/"):"/"}function tg(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 s2(e){return e.filter((t,n)=>n===0||t.route.path&&t.route.path.length>0)}function Gx(e,t){let n=s2(e);return t?n.map((r,a)=>a===n.length-1?r.pathname:r.pathnameBase):n.map(r=>r.pathnameBase)}function qx(e,t,n,r){r===void 0&&(r=!1);let a;typeof e=="string"?a=yl(e):(a=nu({},e),_t(!a.pathname||!a.pathname.includes("?"),tg("?","pathname","search",a)),_t(!a.pathname||!a.pathname.includes("#"),tg("#","pathname","hash",a)),_t(!a.search||!a.search.includes("#"),tg("#","search","hash",a)));let s=e===""||a.pathname==="",o=s?"/":a.pathname,l;if(o==null)l=n;else{let f=t.length-1;if(!r&&o.startsWith("..")){let h=o.split("/");for(;h[0]==="..";)h.shift(),f-=1;a.pathname=h.join("/")}l=f>=0?t[f]:"/"}let c=i2(a,l),u=o&&o!=="/"&&o.endsWith("/"),d=(s||o===".")&&n.endsWith("/");return!c.pathname.endsWith("/")&&(u||d)&&(c.pathname+="/"),c}const dT=e=>e.replace(/\/\/+/g,"/"),yi=e=>dT(e.join("/")),o2=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),l2=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,c2=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;function u2(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}const fT=["post","put","patch","delete"];new Set(fT);const d2=["get",...fT];new Set(d2);/**
50
- * React Router v6.30.4
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
- */function ru(){return ru=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ru.apply(null,arguments)}const jp=S.createContext(null),hT=S.createContext(null),Da=S.createContext(null),Np=S.createContext(null),_i=S.createContext({outlet:null,matches:[],isDataRoute:!1}),pT=S.createContext(null);function f2(e,t){let{relative:n}=t===void 0?{}:t;bl()||_t(!1);let{basename:r,navigator:a}=S.useContext(Da),{hash:s,pathname:o,search:l}=Ep(e,{relative:n}),c=o;return r!=="/"&&(c=o==="/"?r:yi([r,o])),a.createHref({pathname:c,search:l,hash:s})}function bl(){return S.useContext(Np)!=null}function Ai(){return bl()||_t(!1),S.useContext(Np).location}function mT(e){S.useContext(Da).static||S.useLayoutEffect(e)}function Kx(){let{isDataRoute:e}=S.useContext(_i);return e?N2():h2()}function h2(){bl()||_t(!1);let e=S.useContext(jp),{basename:t,future:n,navigator:r}=S.useContext(Da),{matches:a}=S.useContext(_i),{pathname:s}=Ai(),o=JSON.stringify(Gx(a,n.v7_relativeSplatPath)),l=S.useRef(!1);return mT(()=>{l.current=!0}),S.useCallback(function(u,d){if(d===void 0&&(d={}),!l.current)return;if(typeof u=="number"){r.go(u);return}let f=qx(u,JSON.parse(o),s,d.relative==="path");e==null&&t!=="/"&&(f.pathname=f.pathname==="/"?t:yi([t,f.pathname])),(d.replace?r.replace:r.push)(f,d.state,d)},[t,r,o,s,e])}function Ep(e,t){let{relative:n}=t===void 0?{}:t,{future:r}=S.useContext(Da),{matches:a}=S.useContext(_i),{pathname:s}=Ai(),o=JSON.stringify(Gx(a,r.v7_relativeSplatPath));return S.useMemo(()=>qx(e,JSON.parse(o),s,n==="path"),[e,o,s,n])}function p2(e,t){return m2(e,t)}function m2(e,t,n,r){bl()||_t(!1);let{navigator:a}=S.useContext(Da),{matches:s}=S.useContext(_i),o=s[s.length-1],l=o?o.params:{};o&&o.pathname;let c=o?o.pathnameBase:"/";o&&o.route;let u=Ai(),d;if(t){var f;let y=typeof t=="string"?yl(t):t;c==="/"||(f=y.pathname)!=null&&f.startsWith(c)||_t(!1),d=y}else d=u;let h=d.pathname||"/",p=h;if(c!=="/"){let y=c.replace(/^\//,"").split("/");p="/"+h.replace(/^\//,"").split("/").slice(y.length).join("/")}let g=WD(e,{pathname:p}),m=x2(g&&g.map(y=>Object.assign({},y,{params:Object.assign({},l,y.params),pathname:yi([c,a.encodeLocation?a.encodeLocation(y.pathname).pathname:y.pathname]),pathnameBase:y.pathnameBase==="/"?c:yi([c,a.encodeLocation?a.encodeLocation(y.pathnameBase).pathname:y.pathnameBase])})),s,n,r);return t&&m?S.createElement(Np.Provider,{value:{location:ru({pathname:"/",search:"",hash:"",state:null,key:"default"},d),navigationType:si.Pop}},m):m}function g2(){let e=j2(),t=u2(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,a={padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"};return S.createElement(S.Fragment,null,S.createElement("h2",null,"Unexpected Application Error!"),S.createElement("h3",{style:{fontStyle:"italic"}},t),n?S.createElement("pre",{style:a},n):null,null)}const v2=S.createElement(g2,null);class y2 extends S.Component{constructor(t){super(t),this.state={location:t.location,revalidation:t.revalidation,error:t.error}}static getDerivedStateFromError(t){return{error:t}}static getDerivedStateFromProps(t,n){return n.location!==t.location||n.revalidation!=="idle"&&t.revalidation==="idle"?{error:t.error,location:t.location,revalidation:t.revalidation}:{error:t.error!==void 0?t.error:n.error,location:n.location,revalidation:t.revalidation||n.revalidation}}componentDidCatch(t,n){console.error("React Router caught the following error during render",t,n)}render(){return this.state.error!==void 0?S.createElement(_i.Provider,{value:this.props.routeContext},S.createElement(pT.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function b2(e){let{routeContext:t,match:n,children:r}=e,a=S.useContext(jp);return a&&a.static&&a.staticContext&&(n.route.errorElement||n.route.ErrorBoundary)&&(a.staticContext._deepestRenderedBoundaryId=n.route.id),S.createElement(_i.Provider,{value:t},r)}function x2(e,t,n,r){var a;if(t===void 0&&(t=[]),n===void 0&&(n=null),r===void 0&&(r=null),e==null){var s;if(!n)return null;if(n.errors)e=n.matches;else if((s=r)!=null&&s.v7_partialHydration&&t.length===0&&!n.initialized&&n.matches.length>0)e=n.matches;else return null}let o=e,l=(a=n)==null?void 0:a.errors;if(l!=null){let d=o.findIndex(f=>f.route.id&&(l==null?void 0:l[f.route.id])!==void 0);d>=0||_t(!1),o=o.slice(0,Math.min(o.length,d+1))}let c=!1,u=-1;if(n&&r&&r.v7_partialHydration)for(let d=0;d<o.length;d++){let f=o[d];if((f.route.HydrateFallback||f.route.hydrateFallbackElement)&&(u=d),f.route.id){let{loaderData:h,errors:p}=n,g=f.route.loader&&h[f.route.id]===void 0&&(!p||p[f.route.id]===void 0);if(f.route.lazy||g){c=!0,u>=0?o=o.slice(0,u+1):o=[o[0]];break}}}return o.reduceRight((d,f,h)=>{let p,g=!1,m=null,y=null;n&&(p=l&&f.route.id?l[f.route.id]:void 0,m=f.route.errorElement||v2,c&&(u<0&&h===0?(E2("route-fallback"),g=!0,y=null):u===h&&(g=!0,y=f.route.hydrateFallbackElement||null)));let v=t.concat(o.slice(0,h+1)),k=()=>{let x;return p?x=m:g?x=y:f.route.Component?x=S.createElement(f.route.Component,null):f.route.element?x=f.route.element:x=d,S.createElement(b2,{match:f,routeContext:{outlet:d,matches:v,isDataRoute:n!=null},children:x})};return n&&(f.route.ErrorBoundary||f.route.errorElement||h===0)?S.createElement(y2,{location:n.location,revalidation:n.revalidation,component:m,error:p,children:k(),routeContext:{outlet:null,matches:v,isDataRoute:!0}}):k()},null)}var gT=function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e}(gT||{}),vT=function(e){return e.UseBlocker="useBlocker",e.UseLoaderData="useLoaderData",e.UseActionData="useActionData",e.UseRouteError="useRouteError",e.UseNavigation="useNavigation",e.UseRouteLoaderData="useRouteLoaderData",e.UseMatches="useMatches",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e.UseRouteId="useRouteId",e}(vT||{});function w2(e){let t=S.useContext(jp);return t||_t(!1),t}function k2(e){let t=S.useContext(hT);return t||_t(!1),t}function S2(e){let t=S.useContext(_i);return t||_t(!1),t}function yT(e){let t=S2(),n=t.matches[t.matches.length-1];return n.route.id||_t(!1),n.route.id}function j2(){var e;let t=S.useContext(pT),n=k2(),r=yT();return t!==void 0?t:(e=n.errors)==null?void 0:e[r]}function N2(){let{router:e}=w2(gT.UseNavigateStable),t=yT(vT.UseNavigateStable),n=S.useRef(!1);return mT(()=>{n.current=!0}),S.useCallback(function(a,s){s===void 0&&(s={}),n.current&&(typeof a=="number"?e.navigate(a):e.navigate(a,ru({fromRouteId:t},s)))},[e,t])}const Vk={};function E2(e,t,n){Vk[e]||(Vk[e]=!0)}function _2(e,t){e==null||e.v7_startTransition,e==null||e.v7_relativeSplatPath}function Yk(e){let{to:t,replace:n,state:r,relative:a}=e;bl()||_t(!1);let{future:s,static:o}=S.useContext(Da),{matches:l}=S.useContext(_i),{pathname:c}=Ai(),u=Kx(),d=qx(t,Gx(l,s.v7_relativeSplatPath),c,a==="path"),f=JSON.stringify(d);return S.useEffect(()=>u(JSON.parse(f),{replace:n,state:r,relative:a}),[u,f,a,n,r]),null}function at(e){_t(!1)}function A2(e){let{basename:t="/",children:n=null,location:r,navigationType:a=si.Pop,navigator:s,static:o=!1,future:l}=e;bl()&&_t(!1);let c=t.replace(/^\/*/,"/"),u=S.useMemo(()=>({basename:c,navigator:s,static:o,future:ru({v7_relativeSplatPath:!1},l)}),[c,l,s,o]);typeof r=="string"&&(r=yl(r));let{pathname:d="/",search:f="",hash:h="",state:p=null,key:g="default"}=r,m=S.useMemo(()=>{let y=Go(d,c);return y==null?null:{location:{pathname:y,search:f,hash:h,state:p,key:g},navigationType:a}},[c,d,f,h,p,g,a]);return m==null?null:S.createElement(Da.Provider,{value:u},S.createElement(Np.Provider,{children:n,value:m}))}function C2(e){let{children:t,location:n}=e;return p2(iy(t),n)}new Promise(()=>{});function iy(e,t){t===void 0&&(t=[]);let n=[];return S.Children.forEach(e,(r,a)=>{if(!S.isValidElement(r))return;let s=[...t,a];if(r.type===S.Fragment){n.push.apply(n,iy(r.props.children,s));return}r.type!==at&&_t(!1),!r.props.index||!r.props.children||_t(!1);let o={id:r.props.id||s.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,loader:r.props.loader,action:r.props.action,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(o.children=iy(r.props.children,s)),n.push(o)}),n}/**
59
- * React Router DOM v6.30.4
60
- *
61
- * Copyright (c) Remix Software Inc.
62
- *
63
- * This source code is licensed under the MIT license found in the
64
- * LICENSE.md file in the root directory of this source tree.
65
- *
66
- * @license MIT
67
- */function Qf(){return Qf=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Qf.apply(null,arguments)}function bT(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}function T2(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function O2(e,t){return e.button===0&&(!t||t==="_self")&&!T2(e)}const P2=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","viewTransition"],R2=["aria-current","caseSensitive","className","end","style","to","viewTransition","children"],M2="6";try{window.__reactRouterVersion=M2}catch{}const I2=S.createContext({isTransitioning:!1}),$2="startTransition",Xk=A$[$2];function L2(e){let{basename:t,children:n,future:r,window:a}=e,s=S.useRef();s.current==null&&(s.current=zD({window:a,v5Compat:!0}));let o=s.current,[l,c]=S.useState({action:o.action,location:o.location}),{v7_startTransition:u}=r||{},d=S.useCallback(f=>{u&&Xk?Xk(()=>c(f)):c(f)},[c,u]);return S.useLayoutEffect(()=>o.listen(d),[o,d]),S.useEffect(()=>_2(r),[r]),S.createElement(A2,{basename:t,children:n,location:l.location,navigationType:l.action,navigator:o,future:r})}const D2=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",B2=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,en=S.forwardRef(function(t,n){let{onClick:r,relative:a,reloadDocument:s,replace:o,state:l,target:c,to:u,preventScrollReset:d,viewTransition:f}=t,h=bT(t,P2),{basename:p}=S.useContext(Da),g,m=!1;if(typeof u=="string"&&B2.test(u)&&(g=u,D2))try{let x=new URL(window.location.href),j=u.startsWith("//")?new URL(x.protocol+u):new URL(u),w=Go(j.pathname,p);j.origin===x.origin&&w!=null?u=w+j.search+j.hash:m=!0}catch{}let y=f2(u,{relative:a}),v=F2(u,{replace:o,state:l,target:c,preventScrollReset:d,relative:a,viewTransition:f});function k(x){r&&r(x),x.defaultPrevented||v(x)}return S.createElement("a",Qf({},h,{href:g||y,onClick:m||s?r:k,ref:n,target:c}))}),Qk=S.forwardRef(function(t,n){let{"aria-current":r="page",caseSensitive:a=!1,className:s="",end:o=!1,style:l,to:c,viewTransition:u,children:d}=t,f=bT(t,R2),h=Ep(c,{relative:f.relative}),p=Ai(),g=S.useContext(hT),{navigator:m,basename:y}=S.useContext(Da),v=g!=null&&U2(h)&&u===!0,k=m.encodeLocation?m.encodeLocation(h).pathname:h.pathname,x=p.pathname,j=g&&g.navigation&&g.navigation.location?g.navigation.location.pathname:null;a||(x=x.toLowerCase(),j=j?j.toLowerCase():null,k=k.toLowerCase()),j&&y&&(j=Go(j,y)||j);const w=k!=="/"&&k.endsWith("/")?k.length-1:k.length;let b=x===k||!o&&x.startsWith(k)&&x.charAt(w)==="/",N=j!=null&&(j===k||!o&&j.startsWith(k)&&j.charAt(k.length)==="/"),E={isActive:b,isPending:N,isTransitioning:v},O=b?r:void 0,C;typeof s=="function"?C=s(E):C=[s,b?"active":null,N?"pending":null,v?"transitioning":null].filter(Boolean).join(" ");let P=typeof l=="function"?l(E):l;return S.createElement(en,Qf({},f,{"aria-current":O,className:C,ref:n,style:P,to:c,viewTransition:u}),typeof d=="function"?d(E):d)});var sy;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(sy||(sy={}));var Zk;(function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"})(Zk||(Zk={}));function z2(e){let t=S.useContext(jp);return t||_t(!1),t}function F2(e,t){let{target:n,replace:r,state:a,preventScrollReset:s,relative:o,viewTransition:l}=t===void 0?{}:t,c=Kx(),u=Ai(),d=Ep(e,{relative:o});return S.useCallback(f=>{if(O2(f,n)){f.preventDefault();let h=r!==void 0?r:Xf(u)===Xf(d);c(e,{replace:h,state:a,preventScrollReset:s,relative:o,viewTransition:l})}},[u,c,d,r,a,n,e,s,o,l])}function U2(e,t){t===void 0&&(t={});let n=S.useContext(I2);n==null&&_t(!1);let{basename:r}=z2(sy.useViewTransitionState),a=Ep(e,{relative:t.relative});if(!n.isTransitioning)return!1;let s=Go(n.currentLocation.pathname,r)||n.currentLocation.pathname,o=Go(n.nextLocation.pathname,r)||n.nextLocation.pathname;return ay(a.pathname,o)!=null||ay(a.pathname,s)!=null}async function $n(e){if(!e.ok)return null;const t=e.headers.get("content-type")||"";if(!t.includes("application/json")&&!t.includes("text/json"))return t.includes("text/html")&&console.warn(`[dashboard] GET ${e.url||"/api/*"} returned HTML (${e.status}) instead of JSON — the dashboard server may be an older version. Stop it and start it again (agent-nuvira dashboard stop, or Ctrl+C in its terminal).`),null;try{return await e.json()}catch{return null}}const So="buff-dashboard-admin-token";function xT(){try{if(typeof window<"u"&&window.localStorage)return window.localStorage}catch{}return null}function W2(e){if(!e||typeof e!="object")return!1;const t=e,n=t.diff;return typeof t.dir=="string"&&typeof t.base=="string"&&typeof t.removed=="boolean"&&!!n&&typeof n=="object"&&Array.isArray(n.files)&&n.files.every(r=>typeof r=="string")&&typeof n.summary=="string"&&!!n.payload&&typeof n.payload=="object"&&typeof n.payload.summary=="string"&&Array.isArray(n.payload.files)&&n.payload.files.every(r=>!!r&&typeof r.path=="string"&&typeof r.body=="string")}function H2(e){if(!e||typeof e!="object")return!1;const t=e;return typeof t.id=="string"&&typeof t.replayed=="number"&&typeof t.modelCalls=="number"&&typeof t.saved=="boolean"&&typeof t.notice=="string"&&(t.callsAvoided===void 0||typeof t.callsAvoided=="number")}function G2(e){if(!e||typeof e!="object")return!1;const t=e;return typeof t.goal=="string"&&typeof t.planned=="boolean"&&Array.isArray(t.steps)&&!!t.stepCounts&&typeof t.stepCounts=="object"&&typeof t.stepCounts.total=="number"&&typeof t.verification=="string"&&["verified","unverified","blocked","not-applicable"].includes(t.verification)&&(t.summary===null||typeof t.summary=="string")&&Array.isArray(t.changedPaths)&&!!t.flags&&typeof t.flags=="object"}const oy=new Map;function q2(){const e=xT();if(e)try{const t=e.getItem(So);if(t)return t}catch{}return oy.get(So)??null}function K2(e){const t=xT();if(t)try{e?t.setItem(So,e):t.removeItem(So);return}catch{}e?oy.set(So,e):oy.delete(So)}function Qt(){return q2()}let ly=0;const cy=new Set;function V2(){return ly}function Y2(e){return cy.add(e),()=>{cy.delete(e)}}function X2(){ly+=1;for(const e of cy)try{e(ly)}catch{}}function ng(e){K2(e),X2()}function sn(){const e=Qt();return e?{Authorization:`Bearer ${e}`}:{}}class Q2{constructor(t=""){Qr(this,"sse",null);Qr(this,"listeners",new Set);Qr(this,"connectionListeners",new Set);Qr(this,"dagListeners",new Set);Qr(this,"typingListeners",new Set);Qr(this,"chatRetryListeners",new Set);Qr(this,"reconnectTimer",null);Qr(this,"baseUrl");Qr(this,"lastData",null);this.baseUrl=t}subscribe(t){return this.listeners.add(t),()=>this.listeners.delete(t)}onConnectionChange(t){return this.connectionListeners.add(t),()=>this.connectionListeners.delete(t)}onDAGEvent(t){return this.dagListeners.add(t),()=>this.dagListeners.delete(t)}onTypingEvent(t){return this.typingListeners.add(t),()=>this.typingListeners.delete(t)}onChatRetryEvent(t){return this.chatRetryListeners.add(t),()=>this.chatRetryListeners.delete(t)}connect(){this.sse||(this.sse=new EventSource(`${this.baseUrl}/api/sse`),this.sse.addEventListener("init",t=>{try{const n=JSON.parse(t.data);this.lastData=n,this.notify(n),this.notifyConnection(!0)}catch(n){console.error("Failed to parse SSE init data:",n)}}),this.sse.addEventListener("refresh",t=>{try{const n=JSON.parse(t.data);this.lastData=n,this.notify(n),this.notifyConnection(!0)}catch(n){console.error("Failed to parse SSE refresh data:",n)}}),this.sse.addEventListener("dag",t=>{try{const n=JSON.parse(t.data);if(this.notifyDAG(n),this.lastData){const r={...this.lastData,dag:n};this.lastData=r,this.notify(r)}}catch(n){console.error("Failed to parse SSE dag event:",n)}}),this.sse.addEventListener("quota",t=>{try{const n=JSON.parse(t.data);if(this.lastData&&n.quota){const r={...this.lastData,routing:{...this.lastData.routing||{},quota:n.quota},serverTime:n.serverTime||this.lastData.serverTime};this.lastData=r,this.notify(r)}}catch(n){console.error("Failed to parse SSE quota event:",n)}}),this.sse.addEventListener("conversation",t=>{try{const n=JSON.parse(t.data);if(this.lastData&&n.conversations){const r={...this.lastData,conversations:{total:n.total??n.conversations.length,recent:n.conversations},serverTime:n.serverTime||this.lastData.serverTime};this.lastData=r,this.notify(r)}}catch(n){console.error("Failed to parse SSE conversation event:",n)}}),this.sse.addEventListener("typing",t=>{try{const n=JSON.parse(t.data);for(const r of this.typingListeners)try{r(n)}catch{}}catch(n){console.error("Failed to parse SSE typing event:",n)}}),this.sse.addEventListener("chat-retry",t=>{try{const n=JSON.parse(t.data);if(!n||typeof n.sessionId!="string"||typeof n.content!="string")return;for(const r of this.chatRetryListeners)try{r(n)}catch{}}catch(n){console.error("Failed to parse SSE chat-retry event:",n)}}),this.sse.onerror=()=>{this.notifyConnection(!1),this.disconnect(),this.reconnect()},this.sse.onopen=()=>{this.notifyConnection(!0)})}disconnect(){this.sse&&(this.sse.close(),this.sse=null),this.reconnectTimer&&(clearTimeout(this.reconnectTimer),this.reconnectTimer=null)}reconnect(){this.reconnectTimer=setTimeout(()=>{this.connect()},3e3)}notify(t){this.listeners.forEach(n=>n(t))}notifyDAG(t){this.dagListeners.forEach(n=>n(t))}notifyConnection(t){this.connectionListeners.forEach(n=>n(t))}async fetchAll(){try{const t=await fetch(`${this.baseUrl}/api/all`),n=await $n(t);return n?(this.lastData=n,n):null}catch{return null}}async fetchExecutionAudit(t){try{const n=new URLSearchParams;t!=null&&t.skillName&&n.set("skillName",t.skillName),t!=null&&t.status&&n.set("status",t.status),t!=null&&t.limit&&n.set("limit",String(t.limit));const r=n.toString(),a=await fetch(`${this.baseUrl}/api/executions${r?`?${r}`:""}`,{signal:AbortSignal.timeout(8e3)}),s=await $n(a);return(s==null?void 0:s.entries)??[]}catch{return[]}}async fetchTraces(){try{const t=await fetch(`${this.baseUrl}/api/traces`,{signal:AbortSignal.timeout(8e3)}),n=await $n(t);return n!=null&&n.traces?n.traces:null}catch{return null}}async fetchAdminChecks(){try{const t=await fetch(`${this.baseUrl}/api/admin/checks`,{signal:AbortSignal.timeout(15e3)}),n=await $n(t);return!n||!Array.isArray(n.system)||!Array.isArray(n.enterprise)||!Array.isArray(n.providers)?null:n}catch{return null}}async fetchHub(){var t;try{const n=await fetch(`${this.baseUrl}/api/hub`,{signal:AbortSignal.timeout(8e3)}),r=await $n(n);return!r||!Array.isArray((t=r.toolsets)==null?void 0:t.toolsets)?null:r}catch{return null}}async fetchTraceDetail(t){try{const n=await fetch(`${this.baseUrl}/api/traces/${encodeURIComponent(t)}`,{signal:AbortSignal.timeout(8e3)}),r=await $n(n);return r&&Array.isArray(r.steps)?r:null}catch{return null}}async sendAdminRequest(t,n,r){try{const a=Qt(),s=await fetch(`${this.baseUrl}${t}`,{method:n,headers:{"Content-Type":"application/json",...a?{Authorization:`Bearer ${a}`}:{}},body:r!==void 0?JSON.stringify(r):void 0,signal:AbortSignal.timeout(15e3)}),o=s.headers.get("content-type")||"";let l=null;if(o.includes("application/json")||o.includes("text/json"))try{l=await s.json()}catch{l=null}return{status:s.status,data:l}}catch{return null}}async fetchAdminAuthStatus(){const t=await this.sendAdminRequest("/api/admin/auth-status","GET");if(!t||typeof t.data!="object"||t.data===null)return null;const n=t.data;return typeof n.configured!="boolean"||typeof n.authenticated!="boolean"?null:{configured:n.configured,authenticated:n.authenticated,user:typeof n.user=="string"?n.user:null,role:typeof n.role=="string"?n.role:null,mustChangePassword:n.mustChangePassword===!0}}async changeAdminPassword(t,n){const r=await this.sendAdminRequest("/api/admin/change-password","POST",{currentPassword:t,newPassword:n});if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return r.status===200&&a.ok?{ok:!0}:{ok:!1,error:a.error||"Could not change the password."}}async fetchAdminUsers(){const t=await this.sendAdminRequest("/api/admin/users","GET");if(!t)return{ok:!1,error:"Could not reach the dashboard server."};const n=t.data??{};return t.status===200&&n.ok&&Array.isArray(n.users)?n:{ok:!1,error:n.error||"Failed to load users.",forbidden:t.status===403,unauthorized:t.status===401}}async addAdminUser(t,n,r){const a=await this.sendAdminRequest("/api/admin/users","POST",{user:t,password:n,role:r});if(!a)return{ok:!1,error:"Could not reach the dashboard server."};const s=a.data??{};return a.status===200&&s.ok?s:{ok:!1,error:s.error||"Failed to add user.",forbidden:a.status===403,unauthorized:a.status===401}}async removeAdminUser(t){const n=await this.sendAdminRequest(`/api/admin/users/${encodeURIComponent(t)}`,"DELETE");if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?r:{ok:!1,error:r.error||"Failed to remove user.",forbidden:n.status===403,unauthorized:n.status===401}}async fetchAdminCatalog(){const t=await this.sendAdminRequest("/api/admin/catalog","GET"),n=t==null?void 0:t.data;return!n||!Array.isArray(n.providers)?null:n.providers}async adminSetup(t,n){const r=await this.sendAdminRequest("/api/admin/setup","POST",{user:t,password:n});if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return r.status===200&&typeof a.token=="string"?(ng(a.token),{ok:!0,user:a.user,token:a.token}):{ok:!1,error:a.error||"Setup failed.",unauthorized:r.status===401}}async adminLogin(t,n){const r=await this.sendAdminRequest("/api/admin/login","POST",{user:t,password:n});if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return r.status===200&&typeof a.token=="string"?(ng(a.token),{ok:!0,user:a.user,token:a.token}):{ok:!1,error:a.error||"Login failed.",unauthorized:r.status===401}}async adminLogout(){await this.sendAdminRequest("/api/admin/logout","POST"),ng(null)}async shutdown(t){const n=await this.sendAdminRequest("/api/admin/shutdown","POST",{target:t});if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?r:{ok:!1,error:r.error||"Shutdown failed.",unauthorized:n.status===401,forbidden:n.status===403}}async saveProvider(t,n){const r=await this.sendAdminRequest(`/api/admin/providers/${encodeURIComponent(t)}`,"PUT",n);if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return r.status===200&&a.ok?a:{ok:!1,error:a.error||"Save failed.",unauthorized:r.status===401}}async deleteProvider(t){const n=await this.sendAdminRequest(`/api/admin/providers/${encodeURIComponent(t)}`,"DELETE");if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?r:{ok:!1,error:r.error||"Remove failed.",unauthorized:n.status===401}}async testProvider(t){const n=await this.sendAdminRequest(`/api/admin/providers/${encodeURIComponent(t)}/test`,"POST");if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200?r:{ok:!1,error:r.error||"Test failed.",unauthorized:n.status===401}}async fetchAdminWorkspace(){const t=await this.sendAdminRequest("/api/admin/workspace","GET");if(!t)return null;const n=t.data??{};return t.status!==200||n.ok!==!0?null:{configured:typeof n.configured=="string"?n.configured:null,effective:typeof n.effective=="string"?n.effective:null,processCwd:typeof n.processCwd=="string"?n.processCwd:"",configuredValid:n.configuredValid===!0}}async saveAdminWorkspace(t){const n=await this.sendAdminRequest("/api/admin/workspace","PUT",{cwd:t});if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok===!0?{ok:!0,workspace:{configured:typeof r.configured=="string"?r.configured:null,effective:typeof r.effective=="string"?r.effective:null,processCwd:typeof r.processCwd=="string"?r.processCwd:"",configuredValid:r.configuredValid===!0}}:{ok:!1,error:r.error||"Save failed.",unauthorized:n.status===401,forbidden:n.status===403}}async fetchAdminCache(){const t=await this.sendAdminRequest("/api/admin/cache","GET");if(!t)return null;const n=t.data;return!n||n.ok!==!0||!Array.isArray(n.workspaces)?null:n}async clearAdminCache(t){const n=await this.sendAdminRequest("/api/admin/cache/clear","POST",{scope:t});if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?{ok:!0,removed:r.removed??0}:{ok:!1,error:r.error||"Could not clear the cache.",unauthorized:n.status===401,forbidden:n.status===403}}async fetchAdminServices(){const t=await this.sendAdminRequest("/api/admin/services","GET");if(!t)return null;const n=t.data;return!n||n.ok!==!0||!Array.isArray(n.services)?null:n}async saveService(t,n){const r=await this.sendAdminRequest(`/api/admin/services/${encodeURIComponent(t)}`,"PUT",{values:n});if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return r.status===200&&a.ok?a:{ok:!1,error:a.error||"Save failed.",unauthorized:r.status===401,forbidden:r.status===403}}async testService(t){const n=await this.sendAdminRequest(`/api/admin/services/${encodeURIComponent(t)}/test`,"POST");if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200?r:{ok:!1,error:r.error||"Test failed."}}async removeService(t){const n=await this.sendAdminRequest(`/api/admin/services/${encodeURIComponent(t)}`,"DELETE");if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?r:{ok:!1,error:r.error||"Remove failed.",unauthorized:n.status===401,forbidden:n.status===403}}async fetchAdminQuota(){const t=await this.sendAdminRequest("/api/admin/quota","GET");if(!t)return null;const n=t.data;return!n||!n.ok||typeof n.quota!="object"?null:n}async setToolsetEnabled(t,n){const r=await this.sendAdminRequest(`/api/admin/hub/toolsets/${encodeURIComponent(t)}`,"PUT",{enabled:n});if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return r.status===200&&a.ok?a:{ok:!1,error:a.error||"Toggle failed.",unauthorized:r.status===401,forbidden:r.status===403}}async setSkillEnabled(t,n){const r=await this.sendAdminRequest(`/api/admin/hub/skills/${encodeURIComponent(t)}`,"PUT",{enabled:n});if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return r.status===200&&a.ok?a:{ok:!1,error:a.error||"Toggle failed.",unauthorized:r.status===401,forbidden:r.status===403}}async marketplaceSearch(t){try{const r=await(await fetch(`${this.baseUrl}/api/skills/marketplace?q=${encodeURIComponent(t)}`,{headers:sn()})).json();return Array.isArray(r.results)?r.results:[]}catch{return[]}}async marketplaceInstall(t){try{const n=await fetch(`${this.baseUrl}/api/skills/marketplace/install`,{method:"POST",headers:{"Content-Type":"application/json",...sn()},body:JSON.stringify({name:t})}),r=await n.json();return n.status===200&&r.ok?{ok:!0}:{ok:!1,error:r.error||"Install failed.",quarantined:r.quarantined===!0}}catch(n){return{ok:!1,error:n instanceof Error?n.message:String(n)}}}async marketplaceUninstall(t){try{const n=await fetch(`${this.baseUrl}/api/skills/marketplace/uninstall`,{method:"POST",headers:{"Content-Type":"application/json",...sn()},body:JSON.stringify({name:t})}),r=await n.json();return n.status===200&&r.ok?{ok:!0}:{ok:!1,error:r.error||"Uninstall failed."}}catch(n){return{ok:!1,error:n instanceof Error?n.message:String(n)}}}async sendChannelMessage(t,n){const r=await this.sendAdminRequest("/api/admin/hub/channels/send","POST",{target:t,text:n});if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return r.status===200&&a.ok?a:{ok:!1,error:a.error||"Send failed.",unauthorized:r.status===401,forbidden:r.status===403}}async gatewayPolicies(){const t=await this.sendAdminRequest("/api/admin/gateway/policies","GET");if(!t)return{ok:!1,error:"Could not reach the dashboard server."};const n=t.data??{};return t.status===200&&n.ok?{ok:!0,policies:n.policies,statusRecipients:n.statusRecipients,contacts:n.contacts,askUserWait:n.askUserWait,askUserTimeoutMs:n.askUserTimeoutMs}:{ok:!1,error:n.error||"Failed to read policies.",unauthorized:t.status===401,forbidden:t.status===403}}async saveGatewayPolicies(t,n,r,a){const s={policies:t};Array.isArray(n)&&(s.statusRecipients=n),Array.isArray(r)&&(s.contacts=r),a&&(s.askUserWait=a.wait,typeof a.timeoutMs=="number"&&(s.askUserTimeoutMs=a.timeoutMs));const o=await this.sendAdminRequest("/api/admin/gateway/policies","PUT",s);if(!o)return{ok:!1,error:"Could not reach the dashboard server."};const l=o.data??{};return o.status===200&&l.ok?l:{ok:!1,error:l.error||"Failed to save policies.",unauthorized:o.status===401,forbidden:o.status===403}}async fetchGatewayConversations(t={}){const n=new URLSearchParams;t.offset&&n.set("offset",String(t.offset)),t.limit&&n.set("limit",String(t.limit)),t.q&&n.set("q",t.q);const r=n.toString(),a=await this.sendAdminRequest(`/api/admin/gateway/conversations${r?`?${r}`:""}`,"GET");if(!a)return{ok:!1,error:"Could not reach the dashboard server."};const s=a.data??{};return a.status===200&&s.ok?{ok:!0,conversations:s.conversations,total:s.total,hasMore:s.hasMore}:{ok:!1,error:s.error||"Failed to load conversations.",unauthorized:a.status===401,forbidden:a.status===403}}async clearGatewayConversation(t){const n=await this.sendAdminRequest("/api/admin/gateway/conversations","DELETE",{key:t});if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?{ok:!0}:{ok:!1,error:r.error||"Failed to clear conversation.",unauthorized:n.status===401,forbidden:n.status===403}}async addConversationTag(t,n){const r=await this.sendAdminRequest("/api/admin/gateway/conversations/tags","PUT",{action:"add",key:t,tag:n});if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return r.status===200&&a.ok?{ok:!0}:{ok:!1,error:a.error||"Failed to add tag.",unauthorized:r.status===401,forbidden:r.status===403}}async removeConversationTag(t,n){const r=await this.sendAdminRequest("/api/admin/gateway/conversations/tags","PUT",{action:"remove",key:t,tag:n});if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return r.status===200&&a.ok?{ok:!0}:{ok:!1,error:a.error||"Failed to remove tag.",unauthorized:r.status===401,forbidden:r.status===403}}async getAllConversationTags(){const t=await this.sendAdminRequest("/api/admin/gateway/conversations/tags","PUT",{action:"getAllTags"});if(!t)return{ok:!1,error:"Could not reach the dashboard server."};const n=t.data??{};return t.status===200&&n.ok?{ok:!0,tags:n.tags}:{ok:!1,error:n.error||"Failed to load tags.",unauthorized:t.status===401,forbidden:t.status===403}}async exportGatewayConversations(t){var n,r,a;try{const s=Qt(),o=await fetch(`${this.baseUrl}/api/admin/gateway/conversations/export`,{method:"POST",headers:{"Content-Type":"application/json",...s?{Authorization:`Bearer ${s}`}:{}},body:JSON.stringify({keys:t}),signal:AbortSignal.timeout(3e4)});if(o.status===200&&((n=o.headers.get("content-type"))!=null&&n.includes("application/zip"))){const c=await o.blob(),u=URL.createObjectURL(c),d=document.createElement("a");return d.href=u,d.download=((a=(r=o.headers.get("content-disposition"))==null?void 0:r.match(/filename="(.+)"/))==null?void 0:a[1])||"conversations.zip",document.body.appendChild(d),d.click(),document.body.removeChild(d),URL.revokeObjectURL(u),{ok:!0}}return{ok:!1,error:(await o.json().catch(()=>({}))).error||"Export failed."}}catch(s){return{ok:!1,error:s instanceof Error?s.message:String(s)}}}async getContacts(){const t=await this.sendAdminRequest("/api/admin/contacts","GET");if(!t)return{ok:!1,error:"Could not reach the dashboard server."};const n=t.data??{};return t.status===200&&n.ok?{ok:!0,contacts:n.contacts}:{ok:!1,error:n.error||"Failed to read contacts."}}async approveContact(t,n){return this.contactAction("approve",t,n)}async rejectContact(t,n){return this.contactAction("reject",t,n)}async deleteContact(t,n){return this.contactAction("delete",t,n)}async updateContact(t,n,r){const a=await this.sendAdminRequest("/api/admin/contacts","PUT",{action:"update",platform:t,id:n,...r});if(!a)return{ok:!1,error:"Could not reach the dashboard server."};const s=a.data??{};return a.status===200&&s.ok?s:{ok:!1,error:s.error||"Update failed."}}async contactAction(t,n,r){const a=await this.sendAdminRequest("/api/admin/contacts","PUT",{action:t,platform:n,nameOrId:r});if(!a)return{ok:!1,error:"Could not reach the dashboard server."};const s=a.data??{};return a.status===200&&s.ok?s:{ok:!1,error:s.error||`${t} failed.`}}async getPlatformConfigs(){const t=await this.sendAdminRequest("/api/config/platforms","GET");if(!t)return[];const n=t.data??{};return Array.isArray(n.platforms)?n.platforms:[]}async setPlatformConfig(t,n){const r=await this.sendAdminRequest(`/api/config/platforms/${encodeURIComponent(t)}`,"POST",{values:n});if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return r.status===200&&a.ok?a:{ok:!1,error:a.error||"Save failed.",unauthorized:r.status===401,forbidden:r.status===403}}async removePlatformConfig(t){const n=await this.sendAdminRequest(`/api/config/platforms/${encodeURIComponent(t)}`,"DELETE");if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?r:{ok:!1,error:r.error||"Remove failed.",unauthorized:n.status===401,forbidden:n.status===403}}async verifyPlatformConfig(t,n){const r=await this.sendAdminRequest(`/api/config/platforms/${encodeURIComponent(t)}/verify`,"POST",{values:n});if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return{ok:a.ok??!1,info:a.info,error:a.error}}async saveAdminQuota(t){const n=await this.sendAdminRequest("/api/admin/quota","PUT",t);if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?r:{ok:!1,error:r.error||"Save failed.",unauthorized:n.status===401}}async getBedrockStatus(){const t=await this.sendAdminRequest("/api/bedrock/status","GET");return!t||t.status!==200?{configured:!1,region:"us-east-1",authMethod:"none",apiKeySet:!1,iamKeySet:!1}:t.data??{}}async setupBedrock(t){const n=await this.sendAdminRequest("/api/bedrock/setup","POST",{envVars:t});if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?{ok:!0,envVarsWritten:r.envVarsWritten}:{ok:!1,error:r.error||"Save failed."}}async probeBedrock(t){const n=await this.sendAdminRequest("/api/bedrock/probe","POST",{region:t});if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?{ok:!0,models:r.models}:{ok:!1,error:r.error||"Probe failed."}}async listTasks(){const t=await this.sendAdminRequest("/api/tasks","GET");if(!t)return null;const n=t.data??{};return{status:t.status,tasks:Array.isArray(n.tasks)?n.tasks:[]}}async startTask(t,n){const r=await this.sendAdminRequest("/api/tasks","POST",{args:t,timeoutMs:n});if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return r.status===200&&a.ok&&a.task?a:{ok:!1,error:a.error||"Start failed.",unauthorized:r.status===401,forbidden:r.status===403}}async getTask(t){const n=await this.sendAdminRequest(`/api/tasks/${encodeURIComponent(t)}`,"GET");if(!n)return null;const r=n.data??{};return{status:n.status,task:r.task??null}}async cancelTask(t){const n=await this.sendAdminRequest(`/api/tasks/${encodeURIComponent(t)}/cancel`,"POST");if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?r:{ok:!1,error:r.error||"Cancel failed.",unauthorized:n.status===401,forbidden:n.status===403}}subscribeTask(t,n){const r=Qt(),a=new EventSource(`${this.baseUrl}/api/tasks/${encodeURIComponent(t)}/events?token=${encodeURIComponent(r??"")}`);return a.addEventListener("log",s=>{var o;try{(o=n.onLog)==null||o.call(n,JSON.parse(s.data))}catch{}}),a.addEventListener("status",s=>{var o;try{const l=JSON.parse(s.data);l.status&&((o=n.onStatus)==null||o.call(n,l.status))}catch{}}),()=>a.close()}async getWhatsAppStatus(){const t=await this.sendAdminRequest("/api/whatsapp","GET");if(!t)return null;const n=t.data??{};return t.status===200&&n.ok&&n.status?{status:n.status,contacts:n.contacts??{}}:null}async startWhatsAppPair(t){const n=await this.sendAdminRequest("/api/whatsapp/pair","POST",{phone:t||void 0});if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?r:{ok:!1,error:r.error||"Pairing failed to start.",unauthorized:n.status===401,forbidden:n.status===403}}async cancelWhatsAppPair(){const t=await this.sendAdminRequest("/api/whatsapp/cancel","POST");if(!t)return{ok:!1,error:"Could not reach the dashboard server."};const n=t.data??{};return t.status===200&&n.ok?n:{ok:!1,error:n.error||"Cancel failed.",unauthorized:t.status===401,forbidden:t.status===403}}async unpairWhatsApp(){const t=await this.sendAdminRequest("/api/whatsapp/unpair","POST");if(!t)return{ok:!1,error:"Could not reach the dashboard server."};const n=t.data??{};return t.status===200&&n.ok?n:{ok:!1,error:n.error||"Unpair failed.",unauthorized:t.status===401,forbidden:t.status===403}}subscribeWhatsApp(t){const n=Qt(),r=new EventSource(`${this.baseUrl}/api/whatsapp/events?token=${encodeURIComponent(n??"")}`);return r.addEventListener("qr",a=>{var s;try{const o=JSON.parse(a.data);o.qr&&((s=t.onQr)==null||s.call(t,o.qr))}catch{}}),r.addEventListener("code",a=>{var s;try{const o=JSON.parse(a.data);o.code&&((s=t.onCode)==null||s.call(t,o.code))}catch{}}),r.addEventListener("status",a=>{var s;try{(s=t.onStatus)==null||s.call(t,JSON.parse(a.data))}catch{}}),()=>r.close()}async chatResolve(t){const n=Qt();try{const r=await fetch(`${this.baseUrl}/api/chat/resolve`,{method:"POST",headers:{"Content-Type":"application/json",...n?{Authorization:`Bearer ${n}`}:{}},body:JSON.stringify({message:t}),signal:AbortSignal.timeout(1e4)}),a=await r.json();return r.status===200&&a.ok&&Array.isArray(a.matches)?{ok:!0,matches:a.matches}:{ok:!1,matches:[],error:typeof a.error=="string"?a.error:"Resolve failed."}}catch{return{ok:!1,matches:[],error:"Could not reach the dashboard server."}}}async listRoutableModels(){const t=Qt();try{const n=await fetch(`${this.baseUrl}/api/chat/routable-models`,{headers:t?{Authorization:`Bearer ${t}`}:{},signal:AbortSignal.timeout(1e4)}),r=await n.json();return n.status===200&&r.ok&&Array.isArray(r.models)?r.models:[]}catch{return[]}}async listProjects(){const t=Qt();try{const n=await fetch(`${this.baseUrl}/api/projects`,{headers:t?{Authorization:`Bearer ${t}`}:{},signal:AbortSignal.timeout(1e4)}),r=await n.json();return n.status===200&&r.ok&&Array.isArray(r.projects)?r.projects:[]}catch{return[]}}async attachProject(t){const n=Qt();try{const r=await fetch(`${this.baseUrl}/api/projects/attach`,{method:"POST",headers:{"Content-Type":"application/json",...n?{Authorization:`Bearer ${n}`}:{}},body:JSON.stringify({path:t}),signal:AbortSignal.timeout(3e4)}),a=await r.json();return r.status===200&&a.ok&&a.project?{ok:!0,project:a.project}:{ok:!1,error:typeof a.error=="string"?a.error:"Attach failed."}}catch{return{ok:!1,error:"Could not reach the dashboard server."}}}async browseDirectories(t,n){const r=Qt();try{const a=new URLSearchParams;t&&a.set("path",t),n!=null&&n.showDrives&&a.set("showDrives","1");const s=a.toString()?`?${a.toString()}`:"",o=await fetch(`${this.baseUrl}/api/browse${s}`,{headers:r?{Authorization:`Bearer ${r}`}:{},signal:AbortSignal.timeout(1e4)}),l=await o.json();return o.status===200&&l.ok&&Array.isArray(l.entries)?{ok:!0,path:l.path??"",entries:l.entries,parent:l.parent??null,isProject:l.isProject??!1,drives:l.drives,breadcrumbs:l.breadcrumbs}:{ok:!1,path:"",entries:[],parent:null,isProject:!1,error:typeof l.error=="string"?l.error:"Browse failed."}}catch{return{ok:!1,path:"",entries:[],parent:null,isProject:!1,error:"Could not reach the dashboard server."}}}async resolveFolder(t,n){const r=Qt();try{const a=await fetch(this.baseUrl+"/api/browse/resolve-folder",{method:"POST",headers:{"Content-Type":"application/json",...r?{Authorization:"Bearer "+r}:{}},body:JSON.stringify({name:t,subPath:n||""}),signal:AbortSignal.timeout(1e4)}),s=await a.json();return a.status===200&&s.ok&&s.path?{ok:!0,path:s.path}:{ok:!1,path:"",error:typeof s.error=="string"?s.error:"Could not resolve folder."}}catch{return{ok:!1,path:"",error:"Could not reach the dashboard server."}}}async listChatSessions(){const t=Qt();try{const n=await fetch(`${this.baseUrl}/api/sessions`,{headers:t?{Authorization:`Bearer ${t}`}:{},signal:AbortSignal.timeout(1e4)}),r=await n.json();return n.status===200&&r.ok&&Array.isArray(r.sessions)?r.sessions:[]}catch{return[]}}async deleteChatSession(t){const n=Qt();try{const r=await fetch(`${this.baseUrl}/api/sessions/${encodeURIComponent(t)}`,{method:"DELETE",headers:n?{Authorization:`Bearer ${n}`}:{},signal:AbortSignal.timeout(1e4)}),a=await r.json();return r.status===200&&a.ok?{ok:!0}:{ok:!1,error:a.error||"Could not delete the session."}}catch{return{ok:!1,error:"Network error — could not delete the session."}}}async renameChatSession(t,n){const r=Qt();try{const a=await fetch(`${this.baseUrl}/api/sessions/${encodeURIComponent(t)}/rename`,{method:"POST",headers:{"Content-Type":"application/json",...r?{Authorization:`Bearer ${r}`}:{}},body:JSON.stringify({title:n}),signal:AbortSignal.timeout(1e4)}),s=await a.json();return a.status===200&&s.ok?{ok:!0}:{ok:!1,error:s.error||"Could not rename the session."}}catch{return{ok:!1,error:"Network error — could not rename the session."}}}async getChatSession(t){const n=Qt();try{const r=await fetch(`${this.baseUrl}/api/sessions/${encodeURIComponent(t)}`,{headers:n?{Authorization:`Bearer ${n}`}:{},signal:AbortSignal.timeout(1e4)}),a=await r.json();return r.status===200&&a.ok&&a.session?a.session:null}catch{return null}}async chatSend(t,n,r,a){const s=Qt();try{const o=await fetch(`${this.baseUrl}/api/chat`,{method:"POST",headers:{"Content-Type":"application/json",...s?{Authorization:`Bearer ${s}`}:{}},body:JSON.stringify({sessionId:t,message:n,provider:r==null?void 0:r.provider,model:r==null?void 0:r.model,projectPath:r==null?void 0:r.projectPath,attachments:r==null?void 0:r.attachments,...(r==null?void 0:r.worktree)===void 0?{}:{worktree:r.worktree},...(r==null?void 0:r.keepWorktree)===void 0?{}:{keepWorktree:r.keepWorktree},...(r==null?void 0:r.resume)===void 0?{}:{resume:r.resume}}),signal:a?AbortSignal.any([AbortSignal.timeout(3e5),a]):AbortSignal.timeout(3e5)}),l=await o.json();return o.status===200&&l.ok?{ok:!0,content:typeof l.content=="string"?l.content:"",followups:Array.isArray(l.followups)?l.followups:[],provider:typeof l.provider=="string"?l.provider:null,model:typeof l.model=="string"?l.model:null,generationFailed:l.generationFailed===!0,retryQueued:l.retryQueued===!0,...l.needsProject===!0?{needsProject:!0}:{},...l.refused===!0?{refused:!0}:{},...W2(l.worktree)?{worktree:l.worktree}:{},...H2(l.resume)?{resume:l.resume}:{},...Array.isArray(l.findings)?{findings:l.findings}:{},...G2(l.turnReport)?{turnReport:l.turnReport}:{}}:{ok:!1,error:typeof l.error=="string"?l.error:"The agent could not answer.",unauthorized:o.status===401,forbidden:o.status===403}}catch{return{ok:!1,error:"Could not reach the dashboard server, or the turn timed out."}}}async chatCancel(t){const n=await this.sendAdminRequest("/api/chat/cancel","POST",{sessionId:t});if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?{ok:!0,cancelled:r.cancelled===!0}:{ok:!1,error:r.error||"Cancel failed."}}async chatReset(t){const n=await this.sendAdminRequest("/api/chat/reset","POST",{sessionId:t});if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?{ok:!0}:{ok:!1,error:r.error||"Reset failed."}}async chatSupportBundle(t){var r,a,s;const n=Qt();try{const o=await fetch(`${this.baseUrl}/api/chat/${encodeURIComponent(t)}/support-bundle`,{method:"GET",headers:{...n?{Authorization:`Bearer ${n}`}:{}},signal:AbortSignal.timeout(3e4)});if(o.status===200&&((r=o.headers.get("content-type"))!=null&&r.includes("application/zip"))){const c=await o.blob(),u=URL.createObjectURL(c),d=document.createElement("a");return d.href=u,d.download=((s=(a=o.headers.get("content-disposition"))==null?void 0:a.match(/filename="(.+)"/))==null?void 0:s[1])||"nuvira-support.zip",document.body.appendChild(d),d.click(),document.body.removeChild(d),URL.revokeObjectURL(u),{ok:!0}}return{ok:!1,error:(await o.json().catch(()=>({}))).error||"Could not build the support bundle."}}catch(o){return{ok:!1,error:o instanceof Error?o.message:"Could not reach the dashboard server."}}}subscribeChat(t,n){const r=Qt(),a=new EventSource(`${this.baseUrl}/api/chat/${encodeURIComponent(t)}/events?token=${encodeURIComponent(r??"")}`);return a.addEventListener("progress",s=>{var o;try{const l=JSON.parse(s.data);l.line&&((o=n.onProgress)==null||o.call(n,l.line))}catch{}}),a.addEventListener("status",s=>{var o;try{const l=JSON.parse(s.data);l.status&&((o=n.onStatus)==null||o.call(n,l.status))}catch{}}),a.addEventListener("token",s=>{var o;try{const l=JSON.parse(s.data);typeof l.text=="string"&&l.text.length>0&&((o=n.onToken)==null||o.call(n,l.text))}catch{}}),a.addEventListener("tool",s=>{var o;try{const l=JSON.parse(s.data);l.tool&&(l.phase==="started"||l.phase==="called")&&((o=n.onTool)==null||o.call(n,{id:l.id||`call_${Math.random().toString(36).slice(2,8)}`,tool:l.tool,phase:l.phase,args:l.args,ok:l.ok,result:l.result,error:l.error,durationMs:l.durationMs}))}catch{}}),a.addEventListener("plan",s=>{var o;try{const l=JSON.parse(s.data);l.goal&&Array.isArray(l.steps)&&((o=n.onPlan)==null||o.call(n,{goal:l.goal,steps:l.steps,revision:l.revision??0}))}catch{}}),a.addEventListener("diff",s=>{var o;try{const l=JSON.parse(s.data);Array.isArray(l.files)&&((o=n.onDiff)==null||o.call(n,{files:l.files,summary:l.summary??""}))}catch{}}),a.addEventListener("finding",s=>{var o;try{const c=JSON.parse(s.data).finding;c&&typeof c.claim=="string"&&(c.verdict==="CONFIRMED"||c.verdict==="PLAUSIBLE")&&((o=n.onFinding)==null||o.call(n,{claim:c.claim,verdict:c.verdict,outcome:typeof c.outcome=="string"?c.outcome:"",evidence:Array.isArray(c.evidence)?c.evidence:[],source:typeof c.source=="string"?c.source:""}))}catch{}}),a.addEventListener("skill_draft",s=>{var o;try{const l=JSON.parse(s.data);l.name&&l.markdown&&((o=n.onSkillDraft)==null||o.call(n,{name:l.name,description:l.description??"",markdown:l.markdown,updatedAt:l.updatedAt??0}))}catch{}}),a.addEventListener("secret_request",s=>{var o;try{const l=JSON.parse(s.data);l.skillName&&Array.isArray(l.missing)&&((o=n.onSecretRequest)==null||o.call(n,{skillName:l.skillName,missing:l.missing,persisted:l.persisted??{}}))}catch{}}),a.addEventListener("execution_result",s=>{var o;try{const l=JSON.parse(s.data);l.skillName&&l.runtime!==void 0&&((o=n.onExecutionResult)==null||o.call(n,{skillName:l.skillName,runtime:l.runtime,success:l.success??!1,durationMs:l.durationMs??0,exitCode:l.exitCode??0,stdout:l.stdout??"",stderr:l.stderr??"",timestamp:l.timestamp??Date.now()}))}catch{}}),a.addEventListener("question",s=>{var o;try{const l=JSON.parse(s.data);l.questionId&&l.question&&((o=n.onQuestion)==null||o.call(n,{questionId:l.questionId,question:l.question,choices:l.choices??[],multiSelect:l.multiSelect===!0}))}catch{}}),()=>a.close()}async chatRespond(t,n,r={}){try{const s=await(await fetch(`${this.baseUrl}/api/chat/${encodeURIComponent(t)}/respond`,{method:"POST",headers:{"Content-Type":"application/json",...sn()},body:JSON.stringify({questionId:n,...r})})).json();return{ok:s.ok===!0,error:s.error}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}async skillDraftAccept(t){try{const r=await(await fetch(`${this.baseUrl}/api/skills/drafts/${encodeURIComponent(t)}/accept`,{method:"POST",headers:{...sn()}})).json();return{ok:r.ok===!0,error:r.error}}catch(n){return{ok:!1,error:n instanceof Error?n.message:String(n)}}}async skillDraftReject(t){try{const r=await(await fetch(`${this.baseUrl}/api/skills/drafts/${encodeURIComponent(t)}`,{method:"DELETE",headers:{...sn()}})).json();return{ok:r.ok===!0,error:r.error}}catch(n){return{ok:!1,error:n instanceof Error?n.message:String(n)}}}async saveSecrets(t){try{const r=await(await fetch(`${this.baseUrl}/api/skills/secrets`,{method:"POST",headers:{"Content-Type":"application/json",...sn()},body:JSON.stringify({vars:t})})).json();return{ok:r.ok===!0,error:r.error,saved:r.saved,refused:r.refused}}catch(n){return{ok:!1,error:n instanceof Error?n.message:String(n)}}}async fetchSkillEnv(){try{const t=await fetch(`${this.baseUrl}/api/skills/env`,{headers:{...sn()}}),n=await $n(t);return(n==null?void 0:n.vars)??[]}catch{return[]}}async deleteSkillEnvVar(t){try{const r=await(await fetch(`${this.baseUrl}/api/skills/env/delete`,{method:"POST",headers:{"Content-Type":"application/json",...sn()},body:JSON.stringify({name:t})})).json();return{ok:r.ok===!0,removed:r.removed,error:r.error}}catch(n){return{ok:!1,error:n instanceof Error?n.message:String(n)}}}async testSkillEnvVar(t){try{const r=await(await fetch(`${this.baseUrl}/api/skills/env/test`,{method:"POST",headers:{"Content-Type":"application/json",...sn()},body:JSON.stringify({name:t})})).json();return{ok:r.ok===!0,usable:r.usable,detail:r.detail,error:r.error}}catch(n){return{ok:!1,error:n instanceof Error?n.message:String(n)}}}async fetchProcessEnv(){try{const t=await fetch(`${this.baseUrl}/api/process-env`,{headers:{...sn()}}),n=await $n(t);return(n==null?void 0:n.vars)??[]}catch{return[]}}async fetchLimits(){try{const t=await fetch(`${this.baseUrl}/api/limits`),n=await $n(t);return!n||typeof n.attachmentMaxBytes!="number"||n.attachmentMaxBytes<=0?null:{attachmentMaxBytes:n.attachmentMaxBytes,extractMaxChars:typeof n.extractMaxChars=="number"?n.extractMaxChars:0}}catch{return null}}async fetchContinuity(){try{const t=await fetch(`${this.baseUrl}/api/continuity`,{headers:{...sn()}}),n=await $n(t);return!n||n.ok!==!0?null:{sessions:n.sessions??[],recall:n.recall??[],toggles:n.toggles??{sessionStore:!1,sessionRecall:!1}}}catch{return null}}async clearContinuity(t,n){try{const a=await(await fetch(`${this.baseUrl}/api/continuity/clear`,{method:"POST",headers:{"Content-Type":"application/json",...sn()},body:JSON.stringify({target:t,...n?{id:n}:{}})})).json();return{ok:a.ok===!0,removed:a.removed,error:a.error}}catch(r){return{ok:!1,error:r instanceof Error?r.message:String(r)}}}async fetchVerifyBacklog(){try{const t=await fetch(`${this.baseUrl}/api/models/verify-next`,{headers:{...sn()}});return await $n(t)}catch{return null}}async startVerifyBacklog(t){try{const n=await fetch(`${this.baseUrl}/api/models/verify-next`,{method:"POST",headers:{"Content-Type":"application/json",...sn()},body:JSON.stringify({count:t})}),r=await $n(n);return r?{ok:r.ok===!0,error:r.error,refusal:r.refusal,state:r.state}:{ok:!1,error:"The dashboard server did not respond."}}catch(n){return{ok:!1,error:n instanceof Error?n.message:"Could not start the run."}}}async saveProcessEnvVar(t,n){try{const a=await(await fetch(`${this.baseUrl}/api/process-env`,{method:"POST",headers:{"Content-Type":"application/json",...sn()},body:JSON.stringify({name:t,value:n})})).json();return{ok:a.ok===!0,row:a.row,error:a.error,reason:a.reason}}catch(r){return{ok:!1,error:r instanceof Error?r.message:String(r)}}}async deleteProcessEnvVar(t){try{const r=await(await fetch(`${this.baseUrl}/api/process-env/delete`,{method:"POST",headers:{"Content-Type":"application/json",...sn()},body:JSON.stringify({name:t})})).json();return{ok:r.ok===!0,removed:r.removed,row:r.row,error:r.error}}catch(n){return{ok:!1,error:n instanceof Error?n.message:String(n)}}}}const Z=new Q2,au=["enterprise","neutral","pastel","executive","contrast"],_p=["light","dark"],Vx=[100,112,125,150],Zf={enterprise:"Enterprise",neutral:"Neutral",pastel:"Pastel",executive:"Executive",contrast:"High contrast"},wT="nuvira.dashboard.theme",Jk={palette:"enterprise",mode:"dark",a11y:!1,fontScale:100};function Ro(e,t){return e.includes(t)}function Z2(){return typeof window>"u"||typeof window.matchMedia!="function"?null:window.matchMedia("(prefers-color-scheme: dark)").matches}function kT(){const e=Z2();return e===null?{...Jk}:{...Jk,mode:e?"dark":"light"}}function ST(){const e=kT();if(typeof localStorage>"u")return e;let t;try{const a=localStorage.getItem(wT);if(!a)return e;t=JSON.parse(a)}catch{return e}if(typeof t!="object"||t===null)return e;const n=t,r=Ro(Vx,n.fontScale)?n.fontScale:e.fontScale;return{palette:Ro(au,n.palette)?n.palette:e.palette,mode:Ro(_p,n.mode)?n.mode:e.mode,a11y:typeof n.a11y=="boolean"?n.a11y:e.a11y,fontScale:r}}function jT(e){if(!(typeof localStorage>"u"))try{localStorage.setItem(wT,JSON.stringify(e))}catch{}}function Yx(e,t){const n=typeof document<"u"?document.documentElement:void 0;n&&(n.setAttribute("data-palette",e.palette),n.setAttribute("data-mode",e.mode),n.setAttribute("data-a11y",e.a11y?"on":"off"),n.setAttribute("data-font-scale",String(e.fontScale)),n.style.colorScheme=e.mode)}function J2(e,t){const n={palette:Ro(au,t.palette)?t.palette:e.palette,mode:Ro(_p,t.mode)?t.mode:e.mode,a11y:t.a11y??e.a11y,fontScale:Ro(Vx,t.fontScale)?t.fontScale:e.fontScale};return n.a11y||(n.fontScale=100),n}let fr=ST();const uy=new Set;function NT(){for(const e of uy)e()}function eB(e){return uy.add(e),()=>{uy.delete(e)}}function eS(){return fr}function Id(e){const t=J2(fr,e);t.palette===fr.palette&&t.mode===fr.mode&&t.a11y===fr.a11y&&t.fontScale===fr.fontScale||(fr=t,Yx(fr),jT(fr),NT())}function tB(){fr=kT(),Yx(fr),jT(fr),NT()}function nB(){return S.useSyncExternalStore(eB,eS,eS)}const tS={light:"Light",dark:"Dark"},nS={100:"100%",112:"112%",125:"125%",150:"150%"};function rB(){const e=nB(),[t,n]=S.useState(!1),r=S.useRef(null),a=S.useRef(null),s=S.useRef(null),o=S.useId(),l=`${o}-panel`;S.useEffect(()=>{if(!t)return;function u(f){var h;f.key==="Escape"&&(n(!1),(h=r.current)==null||h.focus())}function d(f){var p;const h=f.target;h&&((p=s.current)!=null&&p.contains(h))||n(!1)}return document.addEventListener("keydown",u),document.addEventListener("pointerdown",d),()=>{document.removeEventListener("keydown",u),document.removeEventListener("pointerdown",d)}},[t]),S.useEffect(()=>{var d,f,h;if(!t)return;(h=((d=a.current)==null?void 0:d.querySelector("input:checked"))??((f=a.current)==null?void 0:f.querySelector("input")))==null||h.focus()},[t]);const c=`${Zf[e.palette]} palette, ${tS[e.mode].toLowerCase()} mode, text size ${nS[e.fontScale]}`+(e.a11y?", accessibility mode on":"");return i.jsxs("div",{className:"theme-switcher",ref:s,onBlur:u=>{const d=u.relatedTarget;d&&!u.currentTarget.contains(d)&&n(!1)},children:[i.jsxs("button",{type:"button",ref:r,className:"theme-trigger","aria-expanded":t,"aria-controls":t?l:void 0,onClick:()=>n(u=>!u),children:[i.jsx("span",{"aria-hidden":"true",children:"🎨"}),i.jsx("span",{children:"Appearance"})]}),t&&i.jsxs("div",{className:"theme-panel",id:l,ref:a,children:[i.jsxs("fieldset",{className:"theme-group",children:[i.jsx("legend",{className:"theme-group-label",children:"Palette"}),au.map(u=>i.jsxs("label",{className:"theme-option",children:[i.jsx("input",{type:"radio",name:`${o}-palette`,value:u,checked:e.palette===u,onChange:()=>Id({palette:u})}),i.jsx("span",{className:"theme-swatch","data-swatch":u,"aria-hidden":"true"}),i.jsx("span",{className:"theme-option-label",children:Zf[u]})]},u))]}),i.jsxs("fieldset",{className:"theme-group",children:[i.jsx("legend",{className:"theme-group-label",children:"Mode"}),_p.map(u=>i.jsxs("label",{className:"theme-option",children:[i.jsx("input",{type:"radio",name:`${o}-mode`,value:u,checked:e.mode===u,onChange:()=>Id({mode:u})}),i.jsx("span",{className:"theme-option-label",children:tS[u]})]},u))]}),i.jsxs("fieldset",{className:"theme-group",children:[i.jsx("legend",{className:"theme-group-label",children:"Text size"}),Vx.map(u=>i.jsxs("label",{className:"theme-option",children:[i.jsx("input",{type:"radio",name:`${o}-scale`,value:u,checked:e.fontScale===u,onChange:()=>Id({fontScale:u,a11y:e.a11y||u!==100})}),i.jsx("span",{className:"theme-option-label",children:nS[u]})]},u)),!e.a11y&&i.jsx("p",{className:"theme-hint",children:"A larger size turns on accessibility mode, which is what defines it."})]}),i.jsxs("div",{className:"theme-group",children:[i.jsxs("label",{className:"theme-switch",children:[i.jsx("input",{type:"checkbox",checked:e.a11y,onChange:u=>Id({a11y:u.target.checked})}),i.jsx("span",{className:"theme-switch-track","aria-hidden":"true"}),i.jsx("span",{className:"theme-option-label",children:"Accessibility mode"})]}),i.jsx("p",{className:"theme-hint",children:"Larger targets, stronger borders and no motion. Off by default so it never changes the look for anyone who does not need it."})]}),i.jsx("button",{type:"button",className:"theme-reset",onClick:tB,children:"Reset to system default"}),i.jsx("p",{className:"sr-only",role:"status",children:c})]})]})}function aB(){const[e,t]=S.useState(null),[n,r]=S.useState(!1),[a,s]=S.useState(""),[o,l]=S.useState(""),[c,u]=S.useState(!1),[d,f]=S.useState(null),h=S.useRef(null),p=S.useCallback(()=>{Z.fetchAdminAuthStatus().then(x=>t(x))},[]);S.useEffect(()=>{p()},[p]),S.useEffect(()=>{if(!n)return;function x(w){h.current&&!h.current.contains(w.target)&&r(!1)}function j(w){w.key==="Escape"&&r(!1)}return document.addEventListener("mousedown",x),document.addEventListener("keydown",j),()=>{document.removeEventListener("mousedown",x),document.removeEventListener("keydown",j)}},[n]);const g=(e==null?void 0:e.authenticated)===!0,m=(e==null?void 0:e.configured)===!0,y=async x=>{x.preventDefault(),u(!0),f(null);const j=m?await Z.adminLogin(a,o):await Z.adminSetup(a,o);j.ok?(s(""),l(""),r(!1),p()):f(j.error||(m?"Login failed.":"Setup failed.")),u(!1)},v=async()=>{r(!1),await Z.adminLogout(),p()},k=e?g?`👤 ${e.user||"account"}${e.role?` · ${e.role}`:""}`:"👤 Sign in":"👤 Account";return i.jsxs("div",{className:"topbar-account",ref:h,children:[i.jsx("button",{type:"button",className:"topbar-action","aria-haspopup":"menu","aria-expanded":n,onClick:()=>r(x=>!x),children:k}),n?i.jsx("div",{className:"topbar-account-menu",role:"menu",children:g?i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"topbar-account-user",children:[i.jsx("span",{children:(e==null?void 0:e.user)||"account"}),e!=null&&e.role?i.jsx("span",{className:`admin-role-badge admin-role-${e.role}`,children:e.role}):null]}),e!=null&&e.mustChangePassword?i.jsx("p",{className:"topbar-account-hint",children:"Still on the first-run password — change it on the Admin page before writes will work."}):null,i.jsx("button",{type:"button",className:"topbar-account-item",onClick:()=>void v(),children:"🚪 Log out"})]}):i.jsxs("form",{className:"topbar-account-form",onSubmit:y,children:[i.jsx("p",{className:"topbar-account-title",children:m?"Sign in":"Create the first admin"}),i.jsxs("label",{children:[i.jsx("span",{children:"Username"}),i.jsx("input",{type:"text",value:a,onChange:x=>s(x.target.value),autoComplete:"username",placeholder:"admin"})]}),i.jsxs("label",{children:[i.jsx("span",{children:"Password"}),i.jsx("input",{type:"password",value:o,onChange:x=>l(x.target.value),autoComplete:m?"current-password":"new-password",placeholder:"••••••••"})]}),d?i.jsx("div",{className:"admin-error",children:d}):null,i.jsx("button",{type:"submit",className:"admin-refresh-btn",disabled:c||!a||!o,children:c?"⏳ …":m?"🔐 Sign in":"🔐 Create admin"}),m?null:i.jsx("p",{className:"topbar-account-hint",children:"The first user is always an admin."})]})}):null]})}const ET=[{group:"General",items:[{keys:["?"],description:"Show the shortcut cheatsheet"},{keys:["F1"],description:"Open the Help page"},{keys:["Esc"],description:"Close a dialog or panel"},{keys:["g","c"],description:"Go to Chat"},{keys:["g","o"],description:"Go to Overview"},{keys:["g","t"],description:"Go to Tasks"},{keys:["g","m"],description:"Go to Models"},{keys:["g","s"],description:"Go to System"},{keys:["g","h"],description:"Go to Agent Hub"}]},{group:"Navigation",items:[{keys:["/"],description:"Focus the navigation filter"},{keys:["["],description:"Collapse / expand the navigation drawer"}]}],iB={c:"/chat",o:"/overview",t:"/tasks",m:"/models",s:"/system",h:"/hub"};function sB(e){var a;const t=e;if(!t||typeof t.tagName!="string")return!1;if(t.isContentEditable)return!0;const n=(a=t.getAttribute)==null?void 0:a.call(t,"contenteditable");if(n!=null&&n!=="false")return!0;const r=t.tagName.toLowerCase();return r==="input"||r==="textarea"||r==="select"}function oB({open:e,onClose:t}){const n=S.useId(),r=S.useRef(null),a=S.useRef(null);return S.useEffect(()=>{var l;if(!e)return;a.current=document.activeElement;const s=()=>{var c;return Array.from(((c=r.current)==null?void 0:c.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])'))??[])};(l=s()[0])==null||l.focus();function o(c){if(c.key==="Escape"){c.stopPropagation(),t();return}if(c.key!=="Tab")return;const u=s();if(u.length===0)return;const d=u[0],f=u[u.length-1];c.shiftKey&&document.activeElement===d?(c.preventDefault(),f.focus()):!c.shiftKey&&document.activeElement===f&&(c.preventDefault(),d.focus())}return document.addEventListener("keydown",o),()=>{var c;document.removeEventListener("keydown",o),(c=a.current)==null||c.focus()}},[e,t]),e?i.jsx("div",{className:"modal-scrim",onClick:t,children:i.jsxs("div",{className:"shortcuts-dialog",role:"dialog","aria-modal":"true","aria-labelledby":n,ref:r,onClick:s=>s.stopPropagation(),children:[i.jsxs("div",{className:"shortcuts-head",children:[i.jsx("h2",{className:"shortcuts-title",id:n,children:"⌨️ Keyboard shortcuts"}),i.jsx("button",{type:"button",className:"btn-secondary",onClick:t,"aria-label":"Close keyboard shortcuts",children:"✕ Close"})]}),ET.map(s=>i.jsxs("section",{className:"shortcuts-group",children:[i.jsx("h3",{className:"shortcuts-group-title",children:s.group}),i.jsx("dl",{className:"shortcuts-list",children:s.items.map(o=>i.jsxs("div",{className:"shortcuts-row",children:[i.jsx("dt",{className:"shortcuts-keys",children:o.keys.map(l=>i.jsx("kbd",{className:"shortcuts-key",children:l},l))}),i.jsx("dd",{className:"shortcuts-description",children:o.description})]},o.description))})]},s.group)),i.jsxs("p",{className:"shortcuts-note",children:["Shortcuts are ignored while you are typing, so ",i.jsx("kbd",{className:"shortcuts-key",children:"?"})," in a question stays a question mark."]})]})}):null}const _T=[{path:"/overview",label:"Overview",icon:"📊"},{path:"/tasks",label:"Tasks",icon:"🚀"},{path:"/models",label:"Models",icon:"🧠"},{path:"/system",label:"System",icon:"⚙️"},{path:"/help",label:"Help",icon:"❓"}],dy=[{label:"Agent Management",items:[{path:"/chat",label:"Chat",icon:"💬"},{path:"/dag",label:"Execution",icon:"🔀"},{path:"/routing",label:"Routing",icon:"🤖"},{path:"/requests",label:"Requests",icon:"📨"},{path:"/hub",label:"Agent Hub",icon:"🧰"}]},{label:"Analysis & Monitoring",items:[{path:"/traces",label:"Traces",icon:"🔍"},{path:"/evals",label:"Evals",icon:"🏆"},{path:"/benchmarks",label:"Benchmarks",icon:"📈"},{path:"/costs",label:"Costs",icon:"💰"}]},{label:"Resources",items:[{path:"/memory",label:"Memory",icon:"💾"},{path:"/history",label:"History",icon:"📝"},{path:"/env",label:"Env Config",icon:"🔐"},{path:"/process-env",label:"Process Env",icon:"🌱"}]},{label:"Integrations",items:[{path:"/platforms",label:"Platforms",icon:"🌐"},{path:"/gateway",label:"Gateway",icon:"📡"},{path:"/contacts",label:"Contacts",icon:"📇"},{path:"/bedrock",label:"Bedrock",icon:"🪨"}]},{label:"Runtime",items:[{path:"/models/timeline",label:"Timeline",icon:"📅"},{path:"/executions",label:"Executions",icon:"📜"},{path:"/admin",label:"Admin",icon:"🛠️"}]}];function lB(e){const t=e.trim().toLowerCase();return t?dy.map(n=>n.label.toLowerCase().includes(t)?n:{...n,items:n.items.filter(r=>r.label.toLowerCase().includes(t))}).filter(n=>n.items.length>0):dy}function cB({children:e,connected:t,lastUpdated:n,onRefresh:r,refreshing:a=!1}){const[s,o]=S.useState(!1),[l,c]=S.useState(""),[u,d]=S.useState(!1),f=S.useRef(null),h=S.useRef(null),p=S.useRef(0),g=S.useId(),m=Ai(),y=Kx(),v=t?"connected":"reconnecting",k=t?"Connected":"Reconnecting...",x=lB(l),j=()=>o(!1);return S.useEffect(()=>{function w(b){var N,E;if(!(b.metaKey||b.ctrlKey||b.altKey)&&!sB(b.target)){if(b.key==="Escape"){if(u)return;s&&(o(!1),(N=f.current)==null||N.focus());return}if(b.key==="?"){b.preventDefault(),d(!0);return}if(b.key==="F1"){b.preventDefault(),y("/help");return}if(b.key==="/"){b.preventDefault(),(E=h.current)==null||E.focus();return}if(b.key==="["){b.preventDefault(),o(O=>!O);return}if(b.key==="g"){p.current=Date.now();return}if(Date.now()-p.current<1500){const O=iB[b.key.toLowerCase()];p.current=0,O&&(b.preventDefault(),y(O))}}}return document.addEventListener("keydown",w),()=>document.removeEventListener("keydown",w)},[s,u,y]),S.useEffect(()=>{var w;s&&((w=h.current)==null||w.focus())},[s]),S.useEffect(()=>{j()},[m.pathname]),i.jsxs("div",{className:"layout",children:[i.jsxs("header",{className:"topbar",children:[i.jsx("button",{type:"button",ref:f,className:"topbar-menu","aria-label":"Toggle navigation","aria-controls":"app-nav","aria-expanded":s,onClick:()=>o(w=>!w),children:i.jsx("span",{"aria-hidden":"true",children:"☰"})}),i.jsxs("div",{className:"topbar-brand",children:[i.jsx("span",{className:"topbar-logo","aria-hidden":"true",children:"🤖"}),i.jsx("span",{className:"topbar-title",children:"Agent-Nuvira"})]}),i.jsx("nav",{className:"primary-nav","aria-label":"Primary",children:_T.map(w=>i.jsxs(Qk,{to:w.path,end:!0,className:({isActive:b})=>`primary-link${b?" active":""}`,children:[i.jsx("span",{"aria-hidden":"true",children:w.icon})," ",w.label]},w.path))}),i.jsxs("div",{className:"topbar-actions",children:[i.jsxs("button",{type:"button",className:"topbar-action",onClick:r,disabled:a,"aria-busy":a,children:[i.jsx("span",{"aria-hidden":"true",children:"⟳"})," ",a?"Refreshing…":"Refresh"]}),i.jsxs("button",{type:"button",className:"topbar-action","aria-haspopup":"dialog","aria-expanded":u,onClick:()=>d(!0),children:[i.jsx("span",{"aria-hidden":"true",children:"⌨️"})," Shortcuts"]}),i.jsx(rB,{}),i.jsxs("a",{className:"topbar-action",href:"https://www.agent-nuvira.com",target:"_blank",rel:"noopener noreferrer",title:"Agent-Nuvira website — capabilities, commands, docs, setup",children:[i.jsx("span",{"aria-hidden":"true",children:"🌐"})," Website"]}),i.jsx(aB,{})]})]}),i.jsxs("div",{className:"layout-body",children:[s&&i.jsx("div",{className:"nav-scrim",onClick:j,"aria-hidden":"true"}),i.jsxs("nav",{className:`nav${s?" open":""}`,id:"app-nav","aria-label":"Sections",children:[i.jsxs("div",{className:"nav-search",children:[i.jsx("label",{className:"sr-only",htmlFor:g,children:"Filter navigation"}),i.jsx("input",{id:g,ref:h,type:"search",className:"nav-search-input",placeholder:"Search",value:l,onChange:w=>c(w.target.value)})]}),i.jsxs("div",{className:"nav-links",children:[x.map(w=>i.jsxs("section",{className:"nav-group",children:[i.jsx("h2",{className:"nav-group-title",children:w.label}),w.items.map(b=>i.jsxs(Qk,{to:b.path,end:b.path==="/",className:({isActive:N})=>`nav-link${N?" active":""}`,children:[i.jsx("span",{className:"nav-icon","aria-hidden":"true",children:b.icon}),b.label]},b.path))]},w.label)),x.length===0&&i.jsxs("p",{className:"nav-empty",children:["No sections match “",l,"”."]})]}),i.jsxs("div",{className:"nav-footer",children:[i.jsx("span",{className:`status-dot ${v}`}),i.jsx("span",{className:"status-text",children:k}),i.jsx("span",{className:"last-updated",children:n})]})]}),i.jsx("main",{className:"main",children:e})]}),i.jsx(oB,{open:u,onClose:()=>d(!1)})]})}function AT(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var a=e.length;for(t=0;t<a;t++)e[t]&&(n=AT(e[t]))&&(r&&(r+=" "),r+=n)}else for(n in e)e[n]&&(r&&(r+=" "),r+=n);return r}function Ye(){for(var e,t,n=0,r="",a=arguments.length;n<a;n++)(e=arguments[n])&&(t=AT(e))&&(r&&(r+=" "),r+=t);return r}var uB=Array.isArray,Wn=uB,dB=typeof ri=="object"&&ri&&ri.Object===Object&&ri,CT=dB,fB=CT,hB=typeof self=="object"&&self&&self.Object===Object&&self,pB=fB||hB||Function("return this")(),fa=pB,mB=fa,gB=mB.Symbol,Xu=gB,rS=Xu,TT=Object.prototype,vB=TT.hasOwnProperty,yB=TT.toString,tc=rS?rS.toStringTag:void 0;function bB(e){var t=vB.call(e,tc),n=e[tc];try{e[tc]=void 0;var r=!0}catch{}var a=yB.call(e);return r&&(t?e[tc]=n:delete e[tc]),a}var xB=bB,wB=Object.prototype,kB=wB.toString;function SB(e){return kB.call(e)}var jB=SB,aS=Xu,NB=xB,EB=jB,_B="[object Null]",AB="[object Undefined]",iS=aS?aS.toStringTag:void 0;function CB(e){return e==null?e===void 0?AB:_B:iS&&iS in Object(e)?NB(e):EB(e)}var Ba=CB;function TB(e){return e!=null&&typeof e=="object"}var za=TB,OB=Ba,PB=za,RB="[object Symbol]";function MB(e){return typeof e=="symbol"||PB(e)&&OB(e)==RB}var xl=MB,IB=Wn,$B=xl,LB=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,DB=/^\w*$/;function BB(e,t){if(IB(e))return!1;var n=typeof e;return n=="number"||n=="symbol"||n=="boolean"||e==null||$B(e)?!0:DB.test(e)||!LB.test(e)||t!=null&&e in Object(t)}var Xx=BB;function zB(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var Ci=zB;const wl=Ze(Ci);var FB=Ba,UB=Ci,WB="[object AsyncFunction]",HB="[object Function]",GB="[object GeneratorFunction]",qB="[object Proxy]";function KB(e){if(!UB(e))return!1;var t=FB(e);return t==HB||t==GB||t==WB||t==qB}var Qx=KB;const De=Ze(Qx);var VB=fa,YB=VB["__core-js_shared__"],XB=YB,rg=XB,sS=function(){var e=/[^.]+$/.exec(rg&&rg.keys&&rg.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function QB(e){return!!sS&&sS in e}var ZB=QB,JB=Function.prototype,ez=JB.toString;function tz(e){if(e!=null){try{return ez.call(e)}catch{}try{return e+""}catch{}}return""}var OT=tz,nz=Qx,rz=ZB,az=Ci,iz=OT,sz=/[\\^$.*+?()[\]{}|]/g,oz=/^\[object .+?Constructor\]$/,lz=Function.prototype,cz=Object.prototype,uz=lz.toString,dz=cz.hasOwnProperty,fz=RegExp("^"+uz.call(dz).replace(sz,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function hz(e){if(!az(e)||rz(e))return!1;var t=nz(e)?fz:oz;return t.test(iz(e))}var pz=hz;function mz(e,t){return e==null?void 0:e[t]}var gz=mz,vz=pz,yz=gz;function bz(e,t){var n=yz(e,t);return vz(n)?n:void 0}var Ms=bz,xz=Ms,wz=xz(Object,"create"),Ap=wz,oS=Ap;function kz(){this.__data__=oS?oS(null):{},this.size=0}var Sz=kz;function jz(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var Nz=jz,Ez=Ap,_z="__lodash_hash_undefined__",Az=Object.prototype,Cz=Az.hasOwnProperty;function Tz(e){var t=this.__data__;if(Ez){var n=t[e];return n===_z?void 0:n}return Cz.call(t,e)?t[e]:void 0}var Oz=Tz,Pz=Ap,Rz=Object.prototype,Mz=Rz.hasOwnProperty;function Iz(e){var t=this.__data__;return Pz?t[e]!==void 0:Mz.call(t,e)}var $z=Iz,Lz=Ap,Dz="__lodash_hash_undefined__";function Bz(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=Lz&&t===void 0?Dz:t,this}var zz=Bz,Fz=Sz,Uz=Nz,Wz=Oz,Hz=$z,Gz=zz;function kl(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}kl.prototype.clear=Fz;kl.prototype.delete=Uz;kl.prototype.get=Wz;kl.prototype.has=Hz;kl.prototype.set=Gz;var qz=kl;function Kz(){this.__data__=[],this.size=0}var Vz=Kz;function Yz(e,t){return e===t||e!==e&&t!==t}var Zx=Yz,Xz=Zx;function Qz(e,t){for(var n=e.length;n--;)if(Xz(e[n][0],t))return n;return-1}var Cp=Qz,Zz=Cp,Jz=Array.prototype,eF=Jz.splice;function tF(e){var t=this.__data__,n=Zz(t,e);if(n<0)return!1;var r=t.length-1;return n==r?t.pop():eF.call(t,n,1),--this.size,!0}var nF=tF,rF=Cp;function aF(e){var t=this.__data__,n=rF(t,e);return n<0?void 0:t[n][1]}var iF=aF,sF=Cp;function oF(e){return sF(this.__data__,e)>-1}var lF=oF,cF=Cp;function uF(e,t){var n=this.__data__,r=cF(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this}var dF=uF,fF=Vz,hF=nF,pF=iF,mF=lF,gF=dF;function Sl(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}Sl.prototype.clear=fF;Sl.prototype.delete=hF;Sl.prototype.get=pF;Sl.prototype.has=mF;Sl.prototype.set=gF;var Tp=Sl,vF=Ms,yF=fa,bF=vF(yF,"Map"),Jx=bF,lS=qz,xF=Tp,wF=Jx;function kF(){this.size=0,this.__data__={hash:new lS,map:new(wF||xF),string:new lS}}var SF=kF;function jF(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}var NF=jF,EF=NF;function _F(e,t){var n=e.__data__;return EF(t)?n[typeof t=="string"?"string":"hash"]:n.map}var Op=_F,AF=Op;function CF(e){var t=AF(this,e).delete(e);return this.size-=t?1:0,t}var TF=CF,OF=Op;function PF(e){return OF(this,e).get(e)}var RF=PF,MF=Op;function IF(e){return MF(this,e).has(e)}var $F=IF,LF=Op;function DF(e,t){var n=LF(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this}var BF=DF,zF=SF,FF=TF,UF=RF,WF=$F,HF=BF;function jl(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}jl.prototype.clear=zF;jl.prototype.delete=FF;jl.prototype.get=UF;jl.prototype.has=WF;jl.prototype.set=HF;var ew=jl,PT=ew,GF="Expected a function";function tw(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(GF);var n=function(){var r=arguments,a=t?t.apply(this,r):r[0],s=n.cache;if(s.has(a))return s.get(a);var o=e.apply(this,r);return n.cache=s.set(a,o)||s,o};return n.cache=new(tw.Cache||PT),n}tw.Cache=PT;var RT=tw;const qF=Ze(RT);var KF=RT,VF=500;function YF(e){var t=KF(e,function(r){return n.size===VF&&n.clear(),r}),n=t.cache;return t}var XF=YF,QF=XF,ZF=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,JF=/\\(\\)?/g,eU=QF(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(ZF,function(n,r,a,s){t.push(a?s.replace(JF,"$1"):r||n)}),t}),tU=eU;function nU(e,t){for(var n=-1,r=e==null?0:e.length,a=Array(r);++n<r;)a[n]=t(e[n],n,e);return a}var nw=nU,cS=Xu,rU=nw,aU=Wn,iU=xl,uS=cS?cS.prototype:void 0,dS=uS?uS.toString:void 0;function MT(e){if(typeof e=="string")return e;if(aU(e))return rU(e,MT)+"";if(iU(e))return dS?dS.call(e):"";var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}var sU=MT,oU=sU;function lU(e){return e==null?"":oU(e)}var IT=lU,cU=Wn,uU=Xx,dU=tU,fU=IT;function hU(e,t){return cU(e)?e:uU(e,t)?[e]:dU(fU(e))}var $T=hU,pU=xl;function mU(e){if(typeof e=="string"||pU(e))return e;var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}var Pp=mU,gU=$T,vU=Pp;function yU(e,t){t=gU(t,e);for(var n=0,r=t.length;e!=null&&n<r;)e=e[vU(t[n++])];return n&&n==r?e:void 0}var rw=yU,bU=rw;function xU(e,t,n){var r=e==null?void 0:bU(e,t);return r===void 0?n:r}var LT=xU;const br=Ze(LT);function wU(e){return e==null}var kU=wU;const Xe=Ze(kU);var SU=Ba,jU=Wn,NU=za,EU="[object String]";function _U(e){return typeof e=="string"||!jU(e)&&NU(e)&&SU(e)==EU}var AU=_U;const Es=Ze(AU);var DT={exports:{}},tt={};/**
68
- * @license React
69
- * react-is.production.min.js
70
- *
71
- * Copyright (c) Facebook, Inc. and its affiliates.
72
- *
73
- * This source code is licensed under the MIT license found in the
74
- * LICENSE file in the root directory of this source tree.
75
- */var aw=Symbol.for("react.element"),iw=Symbol.for("react.portal"),Rp=Symbol.for("react.fragment"),Mp=Symbol.for("react.strict_mode"),Ip=Symbol.for("react.profiler"),$p=Symbol.for("react.provider"),Lp=Symbol.for("react.context"),CU=Symbol.for("react.server_context"),Dp=Symbol.for("react.forward_ref"),Bp=Symbol.for("react.suspense"),zp=Symbol.for("react.suspense_list"),Fp=Symbol.for("react.memo"),Up=Symbol.for("react.lazy"),TU=Symbol.for("react.offscreen"),BT;BT=Symbol.for("react.module.reference");function Sr(e){if(typeof e=="object"&&e!==null){var t=e.$$typeof;switch(t){case aw:switch(e=e.type,e){case Rp:case Ip:case Mp:case Bp:case zp:return e;default:switch(e=e&&e.$$typeof,e){case CU:case Lp:case Dp:case Up:case Fp:case $p:return e;default:return t}}case iw:return t}}}tt.ContextConsumer=Lp;tt.ContextProvider=$p;tt.Element=aw;tt.ForwardRef=Dp;tt.Fragment=Rp;tt.Lazy=Up;tt.Memo=Fp;tt.Portal=iw;tt.Profiler=Ip;tt.StrictMode=Mp;tt.Suspense=Bp;tt.SuspenseList=zp;tt.isAsyncMode=function(){return!1};tt.isConcurrentMode=function(){return!1};tt.isContextConsumer=function(e){return Sr(e)===Lp};tt.isContextProvider=function(e){return Sr(e)===$p};tt.isElement=function(e){return typeof e=="object"&&e!==null&&e.$$typeof===aw};tt.isForwardRef=function(e){return Sr(e)===Dp};tt.isFragment=function(e){return Sr(e)===Rp};tt.isLazy=function(e){return Sr(e)===Up};tt.isMemo=function(e){return Sr(e)===Fp};tt.isPortal=function(e){return Sr(e)===iw};tt.isProfiler=function(e){return Sr(e)===Ip};tt.isStrictMode=function(e){return Sr(e)===Mp};tt.isSuspense=function(e){return Sr(e)===Bp};tt.isSuspenseList=function(e){return Sr(e)===zp};tt.isValidElementType=function(e){return typeof e=="string"||typeof e=="function"||e===Rp||e===Ip||e===Mp||e===Bp||e===zp||e===TU||typeof e=="object"&&e!==null&&(e.$$typeof===Up||e.$$typeof===Fp||e.$$typeof===$p||e.$$typeof===Lp||e.$$typeof===Dp||e.$$typeof===BT||e.getModuleId!==void 0)};tt.typeOf=Sr;DT.exports=tt;var OU=DT.exports,PU=Ba,RU=za,MU="[object Number]";function IU(e){return typeof e=="number"||RU(e)&&PU(e)==MU}var zT=IU;const $U=Ze(zT);var LU=zT;function DU(e){return LU(e)&&e!=+e}var BU=DU;const Qu=Ze(BU);var Dr=function(t){return t===0?0:t>0?1:-1},ls=function(t){return Es(t)&&t.indexOf("%")===t.length-1},de=function(t){return $U(t)&&!Qu(t)},zU=function(t){return Xe(t)},Gt=function(t){return de(t)||Es(t)},FU=0,Wp=function(t){var n=++FU;return"".concat(t||"").concat(n)},_s=function(t,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(!de(t)&&!Es(t))return r;var s;if(ls(t)){var o=t.indexOf("%");s=n*parseFloat(t.slice(0,o))/100}else s=+t;return Qu(s)&&(s=r),a&&s>n&&(s=n),s},ti=function(t){if(!t)return null;var n=Object.keys(t);return n&&n.length?t[n[0]]:null},UU=function(t){if(!Array.isArray(t))return!1;for(var n=t.length,r={},a=0;a<n;a++)if(!r[t[a]])r[t[a]]=!0;else return!0;return!1},Js=function(t,n){return de(t)&&de(n)?function(r){return t+r*(n-t)}:function(){return n}};function fy(e,t,n){return!e||!e.length?null:e.find(function(r){return r&&(typeof t=="function"?t(r):br(r,t))===n})}var WU=function(t,n){return de(t)&&de(n)?t-n:Es(t)&&Es(n)?t.localeCompare(n):t instanceof Date&&n instanceof Date?t.getTime()-n.getTime():String(t).localeCompare(String(n))};function Mo(e,t){for(var n in e)if({}.hasOwnProperty.call(e,n)&&(!{}.hasOwnProperty.call(t,n)||e[n]!==t[n]))return!1;for(var r in t)if({}.hasOwnProperty.call(t,r)&&!{}.hasOwnProperty.call(e,r))return!1;return!0}function hy(e){"@babel/helpers - typeof";return hy=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},hy(e)}var HU=["viewBox","children"],GU=["aria-activedescendant","aria-atomic","aria-autocomplete","aria-busy","aria-checked","aria-colcount","aria-colindex","aria-colspan","aria-controls","aria-current","aria-describedby","aria-details","aria-disabled","aria-errormessage","aria-expanded","aria-flowto","aria-haspopup","aria-hidden","aria-invalid","aria-keyshortcuts","aria-label","aria-labelledby","aria-level","aria-live","aria-modal","aria-multiline","aria-multiselectable","aria-orientation","aria-owns","aria-placeholder","aria-posinset","aria-pressed","aria-readonly","aria-relevant","aria-required","aria-roledescription","aria-rowcount","aria-rowindex","aria-rowspan","aria-selected","aria-setsize","aria-sort","aria-valuemax","aria-valuemin","aria-valuenow","aria-valuetext","className","color","height","id","lang","max","media","method","min","name","style","target","width","role","tabIndex","accentHeight","accumulate","additive","alignmentBaseline","allowReorder","alphabetic","amplitude","arabicForm","ascent","attributeName","attributeType","autoReverse","azimuth","baseFrequency","baselineShift","baseProfile","bbox","begin","bias","by","calcMode","capHeight","clip","clipPath","clipPathUnits","clipRule","colorInterpolation","colorInterpolationFilters","colorProfile","colorRendering","contentScriptType","contentStyleType","cursor","cx","cy","d","decelerate","descent","diffuseConstant","direction","display","divisor","dominantBaseline","dur","dx","dy","edgeMode","elevation","enableBackground","end","exponent","externalResourcesRequired","fill","fillOpacity","fillRule","filter","filterRes","filterUnits","floodColor","floodOpacity","focusable","fontFamily","fontSize","fontSizeAdjust","fontStretch","fontStyle","fontVariant","fontWeight","format","from","fx","fy","g1","g2","glyphName","glyphOrientationHorizontal","glyphOrientationVertical","glyphRef","gradientTransform","gradientUnits","hanging","horizAdvX","horizOriginX","href","ideographic","imageRendering","in2","in","intercept","k1","k2","k3","k4","k","kernelMatrix","kernelUnitLength","kerning","keyPoints","keySplines","keyTimes","lengthAdjust","letterSpacing","lightingColor","limitingConeAngle","local","markerEnd","markerHeight","markerMid","markerStart","markerUnits","markerWidth","mask","maskContentUnits","maskUnits","mathematical","mode","numOctaves","offset","opacity","operator","order","orient","orientation","origin","overflow","overlinePosition","overlineThickness","paintOrder","panose1","pathLength","patternContentUnits","patternTransform","patternUnits","pointerEvents","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","r","radius","refX","refY","renderingIntent","repeatCount","repeatDur","requiredExtensions","requiredFeatures","restart","result","rotate","rx","ry","seed","shapeRendering","slope","spacing","specularConstant","specularExponent","speed","spreadMethod","startOffset","stdDeviation","stemh","stemv","stitchTiles","stopColor","stopOpacity","strikethroughPosition","strikethroughThickness","string","stroke","strokeDasharray","strokeDashoffset","strokeLinecap","strokeLinejoin","strokeMiterlimit","strokeOpacity","strokeWidth","surfaceScale","systemLanguage","tableValues","targetX","targetY","textAnchor","textDecoration","textLength","textRendering","to","transform","u1","u2","underlinePosition","underlineThickness","unicode","unicodeBidi","unicodeRange","unitsPerEm","vAlphabetic","values","vectorEffect","version","vertAdvY","vertOriginX","vertOriginY","vHanging","vIdeographic","viewTarget","visibility","vMathematical","widths","wordSpacing","writingMode","x1","x2","x","xChannelSelector","xHeight","xlinkActuate","xlinkArcrole","xlinkHref","xlinkRole","xlinkShow","xlinkTitle","xlinkType","xmlBase","xmlLang","xmlns","xmlnsXlink","xmlSpace","y1","y2","y","yChannelSelector","z","zoomAndPan","ref","key","angle"],fS=["points","pathLength"],ag={svg:HU,polygon:fS,polyline:fS},sw=["dangerouslySetInnerHTML","onCopy","onCopyCapture","onCut","onCutCapture","onPaste","onPasteCapture","onCompositionEnd","onCompositionEndCapture","onCompositionStart","onCompositionStartCapture","onCompositionUpdate","onCompositionUpdateCapture","onFocus","onFocusCapture","onBlur","onBlurCapture","onChange","onChangeCapture","onBeforeInput","onBeforeInputCapture","onInput","onInputCapture","onReset","onResetCapture","onSubmit","onSubmitCapture","onInvalid","onInvalidCapture","onLoad","onLoadCapture","onError","onErrorCapture","onKeyDown","onKeyDownCapture","onKeyPress","onKeyPressCapture","onKeyUp","onKeyUpCapture","onAbort","onAbortCapture","onCanPlay","onCanPlayCapture","onCanPlayThrough","onCanPlayThroughCapture","onDurationChange","onDurationChangeCapture","onEmptied","onEmptiedCapture","onEncrypted","onEncryptedCapture","onEnded","onEndedCapture","onLoadedData","onLoadedDataCapture","onLoadedMetadata","onLoadedMetadataCapture","onLoadStart","onLoadStartCapture","onPause","onPauseCapture","onPlay","onPlayCapture","onPlaying","onPlayingCapture","onProgress","onProgressCapture","onRateChange","onRateChangeCapture","onSeeked","onSeekedCapture","onSeeking","onSeekingCapture","onStalled","onStalledCapture","onSuspend","onSuspendCapture","onTimeUpdate","onTimeUpdateCapture","onVolumeChange","onVolumeChangeCapture","onWaiting","onWaitingCapture","onAuxClick","onAuxClickCapture","onClick","onClickCapture","onContextMenu","onContextMenuCapture","onDoubleClick","onDoubleClickCapture","onDrag","onDragCapture","onDragEnd","onDragEndCapture","onDragEnter","onDragEnterCapture","onDragExit","onDragExitCapture","onDragLeave","onDragLeaveCapture","onDragOver","onDragOverCapture","onDragStart","onDragStartCapture","onDrop","onDropCapture","onMouseDown","onMouseDownCapture","onMouseEnter","onMouseLeave","onMouseMove","onMouseMoveCapture","onMouseOut","onMouseOutCapture","onMouseOver","onMouseOverCapture","onMouseUp","onMouseUpCapture","onSelect","onSelectCapture","onTouchCancel","onTouchCancelCapture","onTouchEnd","onTouchEndCapture","onTouchMove","onTouchMoveCapture","onTouchStart","onTouchStartCapture","onPointerDown","onPointerDownCapture","onPointerMove","onPointerMoveCapture","onPointerUp","onPointerUpCapture","onPointerCancel","onPointerCancelCapture","onPointerEnter","onPointerEnterCapture","onPointerLeave","onPointerLeaveCapture","onPointerOver","onPointerOverCapture","onPointerOut","onPointerOutCapture","onGotPointerCapture","onGotPointerCaptureCapture","onLostPointerCapture","onLostPointerCaptureCapture","onScroll","onScrollCapture","onWheel","onWheelCapture","onAnimationStart","onAnimationStartCapture","onAnimationEnd","onAnimationEndCapture","onAnimationIteration","onAnimationIterationCapture","onTransitionEnd","onTransitionEndCapture"],Jf=function(t,n){if(!t||typeof t=="function"||typeof t=="boolean")return null;var r=t;if(S.isValidElement(t)&&(r=t.props),!wl(r))return null;var a={};return Object.keys(r).forEach(function(s){sw.includes(s)&&(a[s]=n||function(o){return r[s](r,o)})}),a},qU=function(t,n,r){return function(a){return t(n,r,a),null}},eh=function(t,n,r){if(!wl(t)||hy(t)!=="object")return null;var a=null;return Object.keys(t).forEach(function(s){var o=t[s];sw.includes(s)&&typeof o=="function"&&(a||(a={}),a[s]=qU(o,n,r))}),a},KU=["children"],VU=["children"];function hS(e,t){if(e==null)return{};var n=YU(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function YU(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}var pS={click:"onClick",mousedown:"onMouseDown",mouseup:"onMouseUp",mouseover:"onMouseOver",mousemove:"onMouseMove",mouseout:"onMouseOut",mouseenter:"onMouseEnter",mouseleave:"onMouseLeave",touchcancel:"onTouchCancel",touchend:"onTouchEnd",touchmove:"onTouchMove",touchstart:"onTouchStart",contextmenu:"onContextMenu",dblclick:"onDoubleClick"},_a=function(t){return typeof t=="string"?t:t?t.displayName||t.name||"Component":""},mS=null,ig=null,ow=function e(t){if(t===mS&&Array.isArray(ig))return ig;var n=[];return S.Children.forEach(t,function(r){Xe(r)||(OU.isFragment(r)?n=n.concat(e(r.props.children)):n.push(r))}),ig=n,mS=t,n};function Fr(e,t){var n=[],r=[];return Array.isArray(t)?r=t.map(function(a){return _a(a)}):r=[_a(t)],ow(e).forEach(function(a){var s=br(a,"type.displayName")||br(a,"type.name");r.indexOf(s)!==-1&&n.push(a)}),n}function Qn(e,t){var n=Fr(e,t);return n&&n[0]}var gS=function(t){if(!t||!t.props)return!1;var n=t.props,r=n.width,a=n.height;return!(!de(r)||r<=0||!de(a)||a<=0)},XU=["a","altGlyph","altGlyphDef","altGlyphItem","animate","animateColor","animateMotion","animateTransform","circle","clipPath","color-profile","cursor","defs","desc","ellipse","feBlend","feColormatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","filter","font","font-face","font-face-format","font-face-name","font-face-url","foreignObject","g","glyph","glyphRef","hkern","image","line","lineGradient","marker","mask","metadata","missing-glyph","mpath","path","pattern","polygon","polyline","radialGradient","rect","script","set","stop","style","svg","switch","symbol","text","textPath","title","tref","tspan","use","view","vkern"],QU=function(t){return t&&t.type&&Es(t.type)&&XU.indexOf(t.type)>=0},ZU=function(t,n,r,a){var s,o=(s=ag==null?void 0:ag[a])!==null&&s!==void 0?s:[];return n.startsWith("data-")||!De(t)&&(a&&o.includes(n)||GU.includes(n))||r&&sw.includes(n)},Ve=function(t,n,r){if(!t||typeof t=="function"||typeof t=="boolean")return null;var a=t;if(S.isValidElement(t)&&(a=t.props),!wl(a))return null;var s={};return Object.keys(a).forEach(function(o){var l;ZU((l=a)===null||l===void 0?void 0:l[o],o,n,r)&&(s[o]=a[o])}),s},py=function e(t,n){if(t===n)return!0;var r=S.Children.count(t);if(r!==S.Children.count(n))return!1;if(r===0)return!0;if(r===1)return vS(Array.isArray(t)?t[0]:t,Array.isArray(n)?n[0]:n);for(var a=0;a<r;a++){var s=t[a],o=n[a];if(Array.isArray(s)||Array.isArray(o)){if(!e(s,o))return!1}else if(!vS(s,o))return!1}return!0},vS=function(t,n){if(Xe(t)&&Xe(n))return!0;if(!Xe(t)&&!Xe(n)){var r=t.props||{},a=r.children,s=hS(r,KU),o=n.props||{},l=o.children,c=hS(o,VU);return a&&l?Mo(s,c)&&py(a,l):!a&&!l?Mo(s,c):!1}return!1},yS=function(t,n){var r=[],a={};return ow(t).forEach(function(s,o){if(QU(s))r.push(s);else if(s){var l=_a(s.type),c=n[l]||{},u=c.handler,d=c.once;if(u&&(!d||!a[l])){var f=u(s,l,o);r.push(f),a[l]=!0}}}),r},JU=function(t){var n=t&&t.type;return n&&pS[n]?pS[n]:null},e3=function(t,n){return ow(n).indexOf(t)},t3=["children","width","height","viewBox","className","style","title","desc"];function my(){return my=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},my.apply(this,arguments)}function n3(e,t){if(e==null)return{};var n=r3(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function r3(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}function gy(e){var t=e.children,n=e.width,r=e.height,a=e.viewBox,s=e.className,o=e.style,l=e.title,c=e.desc,u=n3(e,t3),d=a||{width:n,height:r,x:0,y:0},f=Ye("recharts-surface",s);return q.createElement("svg",my({},Ve(u,!0,"svg"),{className:f,width:n,height:r,style:o,viewBox:"".concat(d.x," ").concat(d.y," ").concat(d.width," ").concat(d.height)}),q.createElement("title",null,l),q.createElement("desc",null,c),t)}var a3=["children","className"];function vy(){return vy=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},vy.apply(this,arguments)}function i3(e,t){if(e==null)return{};var n=s3(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function s3(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}var tn=q.forwardRef(function(e,t){var n=e.children,r=e.className,a=i3(e,a3),s=Ye("recharts-layer",r);return q.createElement("g",vy({className:s},Ve(a,!0),{ref:t}),n)}),Aa=function(t,n){for(var r=arguments.length,a=new Array(r>2?r-2:0),s=2;s<r;s++)a[s-2]=arguments[s]};function o3(e,t,n){var r=-1,a=e.length;t<0&&(t=-t>a?0:a+t),n=n>a?a:n,n<0&&(n+=a),a=t>n?0:n-t>>>0,t>>>=0;for(var s=Array(a);++r<a;)s[r]=e[r+t];return s}var l3=o3,c3=l3;function u3(e,t,n){var r=e.length;return n=n===void 0?r:n,!t&&n>=r?e:c3(e,t,n)}var d3=u3,f3="\\ud800-\\udfff",h3="\\u0300-\\u036f",p3="\\ufe20-\\ufe2f",m3="\\u20d0-\\u20ff",g3=h3+p3+m3,v3="\\ufe0e\\ufe0f",y3="\\u200d",b3=RegExp("["+y3+f3+g3+v3+"]");function x3(e){return b3.test(e)}var FT=x3;function w3(e){return e.split("")}var k3=w3,UT="\\ud800-\\udfff",S3="\\u0300-\\u036f",j3="\\ufe20-\\ufe2f",N3="\\u20d0-\\u20ff",E3=S3+j3+N3,_3="\\ufe0e\\ufe0f",A3="["+UT+"]",yy="["+E3+"]",by="\\ud83c[\\udffb-\\udfff]",C3="(?:"+yy+"|"+by+")",WT="[^"+UT+"]",HT="(?:\\ud83c[\\udde6-\\uddff]){2}",GT="[\\ud800-\\udbff][\\udc00-\\udfff]",T3="\\u200d",qT=C3+"?",KT="["+_3+"]?",O3="(?:"+T3+"(?:"+[WT,HT,GT].join("|")+")"+KT+qT+")*",P3=KT+qT+O3,R3="(?:"+[WT+yy+"?",yy,HT,GT,A3].join("|")+")",M3=RegExp(by+"(?="+by+")|"+R3+P3,"g");function I3(e){return e.match(M3)||[]}var $3=I3,L3=k3,D3=FT,B3=$3;function z3(e){return D3(e)?B3(e):L3(e)}var F3=z3,U3=d3,W3=FT,H3=F3,G3=IT;function q3(e){return function(t){t=G3(t);var n=W3(t)?H3(t):void 0,r=n?n[0]:t.charAt(0),a=n?U3(n,1).join(""):t.slice(1);return r[e]()+a}}var K3=q3,V3=K3,Y3=V3("toUpperCase"),X3=Y3;const Hp=Ze(X3);function ut(e){return function(){return e}}const VT=Math.cos,th=Math.sin,Gr=Math.sqrt,nh=Math.PI,Gp=2*nh,xy=Math.PI,wy=2*xy,Zi=1e-6,Q3=wy-Zi;function YT(e){this._+=e[0];for(let t=1,n=e.length;t<n;++t)this._+=arguments[t]+e[t]}function Z3(e){let t=Math.floor(e);if(!(t>=0))throw new Error(`invalid digits: ${e}`);if(t>15)return YT;const n=10**t;return function(r){this._+=r[0];for(let a=1,s=r.length;a<s;++a)this._+=Math.round(arguments[a]*n)/n+r[a]}}class J3{constructor(t){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=t==null?YT:Z3(t)}moveTo(t,n){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(t,n){this._append`L${this._x1=+t},${this._y1=+n}`}quadraticCurveTo(t,n,r,a){this._append`Q${+t},${+n},${this._x1=+r},${this._y1=+a}`}bezierCurveTo(t,n,r,a,s,o){this._append`C${+t},${+n},${+r},${+a},${this._x1=+s},${this._y1=+o}`}arcTo(t,n,r,a,s){if(t=+t,n=+n,r=+r,a=+a,s=+s,s<0)throw new Error(`negative radius: ${s}`);let o=this._x1,l=this._y1,c=r-t,u=a-n,d=o-t,f=l-n,h=d*d+f*f;if(this._x1===null)this._append`M${this._x1=t},${this._y1=n}`;else if(h>Zi)if(!(Math.abs(f*c-u*d)>Zi)||!s)this._append`L${this._x1=t},${this._y1=n}`;else{let p=r-o,g=a-l,m=c*c+u*u,y=p*p+g*g,v=Math.sqrt(m),k=Math.sqrt(h),x=s*Math.tan((xy-Math.acos((m+h-y)/(2*v*k)))/2),j=x/k,w=x/v;Math.abs(j-1)>Zi&&this._append`L${t+j*d},${n+j*f}`,this._append`A${s},${s},0,0,${+(f*p>d*g)},${this._x1=t+w*c},${this._y1=n+w*u}`}}arc(t,n,r,a,s,o){if(t=+t,n=+n,r=+r,o=!!o,r<0)throw new Error(`negative radius: ${r}`);let l=r*Math.cos(a),c=r*Math.sin(a),u=t+l,d=n+c,f=1^o,h=o?a-s:s-a;this._x1===null?this._append`M${u},${d}`:(Math.abs(this._x1-u)>Zi||Math.abs(this._y1-d)>Zi)&&this._append`L${u},${d}`,r&&(h<0&&(h=h%wy+wy),h>Q3?this._append`A${r},${r},0,1,${f},${t-l},${n-c}A${r},${r},0,1,${f},${this._x1=u},${this._y1=d}`:h>Zi&&this._append`A${r},${r},0,${+(h>=xy)},${f},${this._x1=t+r*Math.cos(s)},${this._y1=n+r*Math.sin(s)}`)}rect(t,n,r,a){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}h${r=+r}v${+a}h${-r}Z`}toString(){return this._}}function lw(e){let t=3;return e.digits=function(n){if(!arguments.length)return t;if(n==null)t=null;else{const r=Math.floor(n);if(!(r>=0))throw new RangeError(`invalid digits: ${n}`);t=r}return e},()=>new J3(t)}function cw(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function XT(e){this._context=e}XT.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t);break}}};function qp(e){return new XT(e)}function QT(e){return e[0]}function ZT(e){return e[1]}function JT(e,t){var n=ut(!0),r=null,a=qp,s=null,o=lw(l);e=typeof e=="function"?e:e===void 0?QT:ut(e),t=typeof t=="function"?t:t===void 0?ZT:ut(t);function l(c){var u,d=(c=cw(c)).length,f,h=!1,p;for(r==null&&(s=a(p=o())),u=0;u<=d;++u)!(u<d&&n(f=c[u],u,c))===h&&((h=!h)?s.lineStart():s.lineEnd()),h&&s.point(+e(f,u,c),+t(f,u,c));if(p)return s=null,p+""||null}return l.x=function(c){return arguments.length?(e=typeof c=="function"?c:ut(+c),l):e},l.y=function(c){return arguments.length?(t=typeof c=="function"?c:ut(+c),l):t},l.defined=function(c){return arguments.length?(n=typeof c=="function"?c:ut(!!c),l):n},l.curve=function(c){return arguments.length?(a=c,r!=null&&(s=a(r)),l):a},l.context=function(c){return arguments.length?(c==null?r=s=null:s=a(r=c),l):r},l}function $d(e,t,n){var r=null,a=ut(!0),s=null,o=qp,l=null,c=lw(u);e=typeof e=="function"?e:e===void 0?QT:ut(+e),t=typeof t=="function"?t:ut(t===void 0?0:+t),n=typeof n=="function"?n:n===void 0?ZT:ut(+n);function u(f){var h,p,g,m=(f=cw(f)).length,y,v=!1,k,x=new Array(m),j=new Array(m);for(s==null&&(l=o(k=c())),h=0;h<=m;++h){if(!(h<m&&a(y=f[h],h,f))===v)if(v=!v)p=h,l.areaStart(),l.lineStart();else{for(l.lineEnd(),l.lineStart(),g=h-1;g>=p;--g)l.point(x[g],j[g]);l.lineEnd(),l.areaEnd()}v&&(x[h]=+e(y,h,f),j[h]=+t(y,h,f),l.point(r?+r(y,h,f):x[h],n?+n(y,h,f):j[h]))}if(k)return l=null,k+""||null}function d(){return JT().defined(a).curve(o).context(s)}return u.x=function(f){return arguments.length?(e=typeof f=="function"?f:ut(+f),r=null,u):e},u.x0=function(f){return arguments.length?(e=typeof f=="function"?f:ut(+f),u):e},u.x1=function(f){return arguments.length?(r=f==null?null:typeof f=="function"?f:ut(+f),u):r},u.y=function(f){return arguments.length?(t=typeof f=="function"?f:ut(+f),n=null,u):t},u.y0=function(f){return arguments.length?(t=typeof f=="function"?f:ut(+f),u):t},u.y1=function(f){return arguments.length?(n=f==null?null:typeof f=="function"?f:ut(+f),u):n},u.lineX0=u.lineY0=function(){return d().x(e).y(t)},u.lineY1=function(){return d().x(e).y(n)},u.lineX1=function(){return d().x(r).y(t)},u.defined=function(f){return arguments.length?(a=typeof f=="function"?f:ut(!!f),u):a},u.curve=function(f){return arguments.length?(o=f,s!=null&&(l=o(s)),u):o},u.context=function(f){return arguments.length?(f==null?s=l=null:l=o(s=f),u):s},u}class eO{constructor(t,n){this._context=t,this._x=n}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(t,n){switch(t=+t,n=+n,this._point){case 0:{this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,n,t,n):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+n)/2,t,this._y0,t,n);break}}this._x0=t,this._y0=n}}function e4(e){return new eO(e,!0)}function t4(e){return new eO(e,!1)}const uw={draw(e,t){const n=Gr(t/nh);e.moveTo(n,0),e.arc(0,0,n,0,Gp)}},n4={draw(e,t){const n=Gr(t/5)/2;e.moveTo(-3*n,-n),e.lineTo(-n,-n),e.lineTo(-n,-3*n),e.lineTo(n,-3*n),e.lineTo(n,-n),e.lineTo(3*n,-n),e.lineTo(3*n,n),e.lineTo(n,n),e.lineTo(n,3*n),e.lineTo(-n,3*n),e.lineTo(-n,n),e.lineTo(-3*n,n),e.closePath()}},tO=Gr(1/3),r4=tO*2,a4={draw(e,t){const n=Gr(t/r4),r=n*tO;e.moveTo(0,-n),e.lineTo(r,0),e.lineTo(0,n),e.lineTo(-r,0),e.closePath()}},i4={draw(e,t){const n=Gr(t),r=-n/2;e.rect(r,r,n,n)}},s4=.8908130915292852,nO=th(nh/10)/th(7*nh/10),o4=th(Gp/10)*nO,l4=-VT(Gp/10)*nO,c4={draw(e,t){const n=Gr(t*s4),r=o4*n,a=l4*n;e.moveTo(0,-n),e.lineTo(r,a);for(let s=1;s<5;++s){const o=Gp*s/5,l=VT(o),c=th(o);e.lineTo(c*n,-l*n),e.lineTo(l*r-c*a,c*r+l*a)}e.closePath()}},sg=Gr(3),u4={draw(e,t){const n=-Gr(t/(sg*3));e.moveTo(0,n*2),e.lineTo(-sg*n,-n),e.lineTo(sg*n,-n),e.closePath()}},cr=-.5,ur=Gr(3)/2,ky=1/Gr(12),d4=(ky/2+1)*3,f4={draw(e,t){const n=Gr(t/d4),r=n/2,a=n*ky,s=r,o=n*ky+n,l=-s,c=o;e.moveTo(r,a),e.lineTo(s,o),e.lineTo(l,c),e.lineTo(cr*r-ur*a,ur*r+cr*a),e.lineTo(cr*s-ur*o,ur*s+cr*o),e.lineTo(cr*l-ur*c,ur*l+cr*c),e.lineTo(cr*r+ur*a,cr*a-ur*r),e.lineTo(cr*s+ur*o,cr*o-ur*s),e.lineTo(cr*l+ur*c,cr*c-ur*l),e.closePath()}};function h4(e,t){let n=null,r=lw(a);e=typeof e=="function"?e:ut(e||uw),t=typeof t=="function"?t:ut(t===void 0?64:+t);function a(){let s;if(n||(n=s=r()),e.apply(this,arguments).draw(n,+t.apply(this,arguments)),s)return n=null,s+""||null}return a.type=function(s){return arguments.length?(e=typeof s=="function"?s:ut(s),a):e},a.size=function(s){return arguments.length?(t=typeof s=="function"?s:ut(+s),a):t},a.context=function(s){return arguments.length?(n=s??null,a):n},a}function rh(){}function ah(e,t,n){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+n)/6)}function rO(e){this._context=e}rO.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:ah(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:ah(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function p4(e){return new rO(e)}function aO(e){this._context=e}aO.prototype={areaStart:rh,areaEnd:rh,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:ah(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function m4(e){return new aO(e)}function iO(e){this._context=e}iO.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var n=(this._x0+4*this._x1+e)/6,r=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(n,r):this._context.moveTo(n,r);break;case 3:this._point=4;default:ah(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function g4(e){return new iO(e)}function sO(e){this._context=e}sO.prototype={areaStart:rh,areaEnd:rh,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(e,t){e=+e,t=+t,this._point?this._context.lineTo(e,t):(this._point=1,this._context.moveTo(e,t))}};function v4(e){return new sO(e)}function bS(e){return e<0?-1:1}function xS(e,t,n){var r=e._x1-e._x0,a=t-e._x1,s=(e._y1-e._y0)/(r||a<0&&-0),o=(n-e._y1)/(a||r<0&&-0),l=(s*a+o*r)/(r+a);return(bS(s)+bS(o))*Math.min(Math.abs(s),Math.abs(o),.5*Math.abs(l))||0}function wS(e,t){var n=e._x1-e._x0;return n?(3*(e._y1-e._y0)/n-t)/2:t}function og(e,t,n){var r=e._x0,a=e._y0,s=e._x1,o=e._y1,l=(s-r)/3;e._context.bezierCurveTo(r+l,a+l*t,s-l,o-l*n,s,o)}function ih(e){this._context=e}ih.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:og(this,this._t0,wS(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){var n=NaN;if(e=+e,t=+t,!(e===this._x1&&t===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,og(this,wS(this,n=xS(this,e,t)),n);break;default:og(this,this._t0,n=xS(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=n}}};function oO(e){this._context=new lO(e)}(oO.prototype=Object.create(ih.prototype)).point=function(e,t){ih.prototype.point.call(this,t,e)};function lO(e){this._context=e}lO.prototype={moveTo:function(e,t){this._context.moveTo(t,e)},closePath:function(){this._context.closePath()},lineTo:function(e,t){this._context.lineTo(t,e)},bezierCurveTo:function(e,t,n,r,a,s){this._context.bezierCurveTo(t,e,r,n,s,a)}};function y4(e){return new ih(e)}function b4(e){return new oO(e)}function cO(e){this._context=e}cO.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var e=this._x,t=this._y,n=e.length;if(n)if(this._line?this._context.lineTo(e[0],t[0]):this._context.moveTo(e[0],t[0]),n===2)this._context.lineTo(e[1],t[1]);else for(var r=kS(e),a=kS(t),s=0,o=1;o<n;++s,++o)this._context.bezierCurveTo(r[0][s],a[0][s],r[1][s],a[1][s],e[o],t[o]);(this._line||this._line!==0&&n===1)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(e,t){this._x.push(+e),this._y.push(+t)}};function kS(e){var t,n=e.length-1,r,a=new Array(n),s=new Array(n),o=new Array(n);for(a[0]=0,s[0]=2,o[0]=e[0]+2*e[1],t=1;t<n-1;++t)a[t]=1,s[t]=4,o[t]=4*e[t]+2*e[t+1];for(a[n-1]=2,s[n-1]=7,o[n-1]=8*e[n-1]+e[n],t=1;t<n;++t)r=a[t]/s[t-1],s[t]-=r,o[t]-=r*o[t-1];for(a[n-1]=o[n-1]/s[n-1],t=n-2;t>=0;--t)a[t]=(o[t]-a[t+1])/s[t];for(s[n-1]=(e[n]+a[n-1])/2,t=0;t<n-1;++t)s[t]=2*e[t+1]-a[t+1];return[a,s]}function x4(e){return new cO(e)}function Kp(e,t){this._context=e,this._t=t}Kp.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&this._point===2&&this._context.lineTo(this._x,this._y),(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var n=this._x*(1-this._t)+e*this._t;this._context.lineTo(n,this._y),this._context.lineTo(n,t)}break}}this._x=e,this._y=t}};function w4(e){return new Kp(e,.5)}function k4(e){return new Kp(e,0)}function S4(e){return new Kp(e,1)}function qo(e,t){if((o=e.length)>1)for(var n=1,r,a,s=e[t[0]],o,l=s.length;n<o;++n)for(a=s,s=e[t[n]],r=0;r<l;++r)s[r][1]+=s[r][0]=isNaN(a[r][1])?a[r][0]:a[r][1]}function Sy(e){for(var t=e.length,n=new Array(t);--t>=0;)n[t]=t;return n}function j4(e,t){return e[t]}function N4(e){const t=[];return t.key=e,t}function E4(){var e=ut([]),t=Sy,n=qo,r=j4;function a(s){var o=Array.from(e.apply(this,arguments),N4),l,c=o.length,u=-1,d;for(const f of s)for(l=0,++u;l<c;++l)(o[l][u]=[0,+r(f,o[l].key,u,s)]).data=f;for(l=0,d=cw(t(o));l<c;++l)o[d[l]].index=l;return n(o,d),o}return a.keys=function(s){return arguments.length?(e=typeof s=="function"?s:ut(Array.from(s)),a):e},a.value=function(s){return arguments.length?(r=typeof s=="function"?s:ut(+s),a):r},a.order=function(s){return arguments.length?(t=s==null?Sy:typeof s=="function"?s:ut(Array.from(s)),a):t},a.offset=function(s){return arguments.length?(n=s??qo,a):n},a}function _4(e,t){if((r=e.length)>0){for(var n,r,a=0,s=e[0].length,o;a<s;++a){for(o=n=0;n<r;++n)o+=e[n][a][1]||0;if(o)for(n=0;n<r;++n)e[n][a][1]/=o}qo(e,t)}}function A4(e,t){if((a=e.length)>0){for(var n=0,r=e[t[0]],a,s=r.length;n<s;++n){for(var o=0,l=0;o<a;++o)l+=e[o][n][1]||0;r[n][1]+=r[n][0]=-l/2}qo(e,t)}}function C4(e,t){if(!(!((o=e.length)>0)||!((s=(a=e[t[0]]).length)>0))){for(var n=0,r=1,a,s,o;r<s;++r){for(var l=0,c=0,u=0;l<o;++l){for(var d=e[t[l]],f=d[r][1]||0,h=d[r-1][1]||0,p=(f-h)/2,g=0;g<l;++g){var m=e[t[g]],y=m[r][1]||0,v=m[r-1][1]||0;p+=y-v}c+=f,u+=p*f}a[r-1][1]+=a[r-1][0]=n,c&&(n-=u/c)}a[r-1][1]+=a[r-1][0]=n,qo(e,t)}}function iu(e){"@babel/helpers - typeof";return iu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},iu(e)}var T4=["type","size","sizeType"];function jy(){return jy=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},jy.apply(this,arguments)}function SS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function jS(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?SS(Object(n),!0).forEach(function(r){O4(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):SS(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function O4(e,t,n){return t=P4(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function P4(e){var t=R4(e,"string");return iu(t)=="symbol"?t:t+""}function R4(e,t){if(iu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(iu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function M4(e,t){if(e==null)return{};var n=I4(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function I4(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}var uO={symbolCircle:uw,symbolCross:n4,symbolDiamond:a4,symbolSquare:i4,symbolStar:c4,symbolTriangle:u4,symbolWye:f4},$4=Math.PI/180,L4=function(t){var n="symbol".concat(Hp(t));return uO[n]||uw},D4=function(t,n,r){if(n==="area")return t;switch(r){case"cross":return 5*t*t/9;case"diamond":return .5*t*t/Math.sqrt(3);case"square":return t*t;case"star":{var a=18*$4;return 1.25*t*t*(Math.tan(a)-Math.tan(a*2)*Math.pow(Math.tan(a),2))}case"triangle":return Math.sqrt(3)*t*t/4;case"wye":return(21-10*Math.sqrt(3))*t*t/8;default:return Math.PI*t*t/4}},B4=function(t,n){uO["symbol".concat(Hp(t))]=n},dw=function(t){var n=t.type,r=n===void 0?"circle":n,a=t.size,s=a===void 0?64:a,o=t.sizeType,l=o===void 0?"area":o,c=M4(t,T4),u=jS(jS({},c),{},{type:r,size:s,sizeType:l}),d=function(){var y=L4(r),v=h4().type(y).size(D4(s,l,r));return v()},f=u.className,h=u.cx,p=u.cy,g=Ve(u,!0);return h===+h&&p===+p&&s===+s?q.createElement("path",jy({},g,{className:Ye("recharts-symbols",f),transform:"translate(".concat(h,", ").concat(p,")"),d:d()})):null};dw.registerSymbol=B4;function Ko(e){"@babel/helpers - typeof";return Ko=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ko(e)}function Ny(){return Ny=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ny.apply(this,arguments)}function NS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function z4(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?NS(Object(n),!0).forEach(function(r){su(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):NS(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function F4(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function U4(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,fO(r.key),r)}}function W4(e,t,n){return t&&U4(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function H4(e,t,n){return t=sh(t),G4(e,dO()?Reflect.construct(t,n||[],sh(e).constructor):t.apply(e,n))}function G4(e,t){if(t&&(Ko(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return q4(e)}function q4(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function dO(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(dO=function(){return!!e})()}function sh(e){return sh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},sh(e)}function K4(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Ey(e,t)}function Ey(e,t){return Ey=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},Ey(e,t)}function su(e,t,n){return t=fO(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function fO(e){var t=V4(e,"string");return Ko(t)=="symbol"?t:t+""}function V4(e,t){if(Ko(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Ko(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}var dr=32,fw=function(e){function t(){return F4(this,t),H4(this,t,arguments)}return K4(t,e),W4(t,[{key:"renderIcon",value:function(r){var a=this.props.inactiveColor,s=dr/2,o=dr/6,l=dr/3,c=r.inactive?a:r.color;if(r.type==="plainline")return q.createElement("line",{strokeWidth:4,fill:"none",stroke:c,strokeDasharray:r.payload.strokeDasharray,x1:0,y1:s,x2:dr,y2:s,className:"recharts-legend-icon"});if(r.type==="line")return q.createElement("path",{strokeWidth:4,fill:"none",stroke:c,d:"M0,".concat(s,"h").concat(l,`
76
- A`).concat(o,",").concat(o,",0,1,1,").concat(2*l,",").concat(s,`
77
- H`).concat(dr,"M").concat(2*l,",").concat(s,`
78
- A`).concat(o,",").concat(o,",0,1,1,").concat(l,",").concat(s),className:"recharts-legend-icon"});if(r.type==="rect")return q.createElement("path",{stroke:"none",fill:c,d:"M0,".concat(dr/8,"h").concat(dr,"v").concat(dr*3/4,"h").concat(-dr,"z"),className:"recharts-legend-icon"});if(q.isValidElement(r.legendIcon)){var u=z4({},r);return delete u.legendIcon,q.cloneElement(r.legendIcon,u)}return q.createElement(dw,{fill:c,cx:s,cy:s,size:dr,sizeType:"diameter",type:r.type})}},{key:"renderItems",value:function(){var r=this,a=this.props,s=a.payload,o=a.iconSize,l=a.layout,c=a.formatter,u=a.inactiveColor,d={x:0,y:0,width:dr,height:dr},f={display:l==="horizontal"?"inline-block":"block",marginRight:10},h={display:"inline-block",verticalAlign:"middle",marginRight:4};return s.map(function(p,g){var m=p.formatter||c,y=Ye(su(su({"recharts-legend-item":!0},"legend-item-".concat(g),!0),"inactive",p.inactive));if(p.type==="none")return null;var v=De(p.value)?null:p.value;Aa(!De(p.value),`The name property is also required when using a function for the dataKey of a chart's cartesian components. Ex: <Bar name="Name of my Data"/>`);var k=p.inactive?u:p.color;return q.createElement("li",Ny({className:y,style:f,key:"legend-item-".concat(g)},eh(r.props,p,g)),q.createElement(gy,{width:o,height:o,viewBox:d,style:h},r.renderIcon(p)),q.createElement("span",{className:"recharts-legend-item-text",style:{color:k}},m?m(v,p,g):v))})}},{key:"render",value:function(){var r=this.props,a=r.payload,s=r.layout,o=r.align;if(!a||!a.length)return null;var l={padding:0,margin:0,textAlign:s==="horizontal"?o:"left"};return q.createElement("ul",{className:"recharts-default-legend",style:l},this.renderItems())}}])}(S.PureComponent);su(fw,"displayName","Legend");su(fw,"defaultProps",{iconSize:14,layout:"horizontal",align:"center",verticalAlign:"middle",inactiveColor:"#ccc"});var Y4=Tp;function X4(){this.__data__=new Y4,this.size=0}var Q4=X4;function Z4(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}var J4=Z4;function e6(e){return this.__data__.get(e)}var t6=e6;function n6(e){return this.__data__.has(e)}var r6=n6,a6=Tp,i6=Jx,s6=ew,o6=200;function l6(e,t){var n=this.__data__;if(n instanceof a6){var r=n.__data__;if(!i6||r.length<o6-1)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new s6(r)}return n.set(e,t),this.size=n.size,this}var c6=l6,u6=Tp,d6=Q4,f6=J4,h6=t6,p6=r6,m6=c6;function Nl(e){var t=this.__data__=new u6(e);this.size=t.size}Nl.prototype.clear=d6;Nl.prototype.delete=f6;Nl.prototype.get=h6;Nl.prototype.has=p6;Nl.prototype.set=m6;var hO=Nl,g6="__lodash_hash_undefined__";function v6(e){return this.__data__.set(e,g6),this}var y6=v6;function b6(e){return this.__data__.has(e)}var x6=b6,w6=ew,k6=y6,S6=x6;function oh(e){var t=-1,n=e==null?0:e.length;for(this.__data__=new w6;++t<n;)this.add(e[t])}oh.prototype.add=oh.prototype.push=k6;oh.prototype.has=S6;var pO=oh;function j6(e,t){for(var n=-1,r=e==null?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}var mO=j6;function N6(e,t){return e.has(t)}var gO=N6,E6=pO,_6=mO,A6=gO,C6=1,T6=2;function O6(e,t,n,r,a,s){var o=n&C6,l=e.length,c=t.length;if(l!=c&&!(o&&c>l))return!1;var u=s.get(e),d=s.get(t);if(u&&d)return u==t&&d==e;var f=-1,h=!0,p=n&T6?new E6:void 0;for(s.set(e,t),s.set(t,e);++f<l;){var g=e[f],m=t[f];if(r)var y=o?r(m,g,f,t,e,s):r(g,m,f,e,t,s);if(y!==void 0){if(y)continue;h=!1;break}if(p){if(!_6(t,function(v,k){if(!A6(p,k)&&(g===v||a(g,v,n,r,s)))return p.push(k)})){h=!1;break}}else if(!(g===m||a(g,m,n,r,s))){h=!1;break}}return s.delete(e),s.delete(t),h}var vO=O6,P6=fa,R6=P6.Uint8Array,M6=R6;function I6(e){var t=-1,n=Array(e.size);return e.forEach(function(r,a){n[++t]=[a,r]}),n}var $6=I6;function L6(e){var t=-1,n=Array(e.size);return e.forEach(function(r){n[++t]=r}),n}var hw=L6,ES=Xu,_S=M6,D6=Zx,B6=vO,z6=$6,F6=hw,U6=1,W6=2,H6="[object Boolean]",G6="[object Date]",q6="[object Error]",K6="[object Map]",V6="[object Number]",Y6="[object RegExp]",X6="[object Set]",Q6="[object String]",Z6="[object Symbol]",J6="[object ArrayBuffer]",eW="[object DataView]",AS=ES?ES.prototype:void 0,lg=AS?AS.valueOf:void 0;function tW(e,t,n,r,a,s,o){switch(n){case eW:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case J6:return!(e.byteLength!=t.byteLength||!s(new _S(e),new _S(t)));case H6:case G6:case V6:return D6(+e,+t);case q6:return e.name==t.name&&e.message==t.message;case Y6:case Q6:return e==t+"";case K6:var l=z6;case X6:var c=r&U6;if(l||(l=F6),e.size!=t.size&&!c)return!1;var u=o.get(e);if(u)return u==t;r|=W6,o.set(e,t);var d=B6(l(e),l(t),r,a,s,o);return o.delete(e),d;case Z6:if(lg)return lg.call(e)==lg.call(t)}return!1}var nW=tW;function rW(e,t){for(var n=-1,r=t.length,a=e.length;++n<r;)e[a+n]=t[n];return e}var yO=rW,aW=yO,iW=Wn;function sW(e,t,n){var r=t(e);return iW(e)?r:aW(r,n(e))}var oW=sW;function lW(e,t){for(var n=-1,r=e==null?0:e.length,a=0,s=[];++n<r;){var o=e[n];t(o,n,e)&&(s[a++]=o)}return s}var cW=lW;function uW(){return[]}var dW=uW,fW=cW,hW=dW,pW=Object.prototype,mW=pW.propertyIsEnumerable,CS=Object.getOwnPropertySymbols,gW=CS?function(e){return e==null?[]:(e=Object(e),fW(CS(e),function(t){return mW.call(e,t)}))}:hW,vW=gW;function yW(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}var bW=yW,xW=Ba,wW=za,kW="[object Arguments]";function SW(e){return wW(e)&&xW(e)==kW}var jW=SW,TS=jW,NW=za,bO=Object.prototype,EW=bO.hasOwnProperty,_W=bO.propertyIsEnumerable,AW=TS(function(){return arguments}())?TS:function(e){return NW(e)&&EW.call(e,"callee")&&!_W.call(e,"callee")},pw=AW,lh={exports:{}};function CW(){return!1}var TW=CW;lh.exports;(function(e,t){var n=fa,r=TW,a=t&&!t.nodeType&&t,s=a&&!0&&e&&!e.nodeType&&e,o=s&&s.exports===a,l=o?n.Buffer:void 0,c=l?l.isBuffer:void 0,u=c||r;e.exports=u})(lh,lh.exports);var xO=lh.exports,OW=9007199254740991,PW=/^(?:0|[1-9]\d*)$/;function RW(e,t){var n=typeof e;return t=t??OW,!!t&&(n=="number"||n!="symbol"&&PW.test(e))&&e>-1&&e%1==0&&e<t}var mw=RW,MW=9007199254740991;function IW(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=MW}var gw=IW,$W=Ba,LW=gw,DW=za,BW="[object Arguments]",zW="[object Array]",FW="[object Boolean]",UW="[object Date]",WW="[object Error]",HW="[object Function]",GW="[object Map]",qW="[object Number]",KW="[object Object]",VW="[object RegExp]",YW="[object Set]",XW="[object String]",QW="[object WeakMap]",ZW="[object ArrayBuffer]",JW="[object DataView]",e8="[object Float32Array]",t8="[object Float64Array]",n8="[object Int8Array]",r8="[object Int16Array]",a8="[object Int32Array]",i8="[object Uint8Array]",s8="[object Uint8ClampedArray]",o8="[object Uint16Array]",l8="[object Uint32Array]",ht={};ht[e8]=ht[t8]=ht[n8]=ht[r8]=ht[a8]=ht[i8]=ht[s8]=ht[o8]=ht[l8]=!0;ht[BW]=ht[zW]=ht[ZW]=ht[FW]=ht[JW]=ht[UW]=ht[WW]=ht[HW]=ht[GW]=ht[qW]=ht[KW]=ht[VW]=ht[YW]=ht[XW]=ht[QW]=!1;function c8(e){return DW(e)&&LW(e.length)&&!!ht[$W(e)]}var u8=c8;function d8(e){return function(t){return e(t)}}var wO=d8,ch={exports:{}};ch.exports;(function(e,t){var n=CT,r=t&&!t.nodeType&&t,a=r&&!0&&e&&!e.nodeType&&e,s=a&&a.exports===r,o=s&&n.process,l=function(){try{var c=a&&a.require&&a.require("util").types;return c||o&&o.binding&&o.binding("util")}catch{}}();e.exports=l})(ch,ch.exports);var f8=ch.exports,h8=u8,p8=wO,OS=f8,PS=OS&&OS.isTypedArray,m8=PS?p8(PS):h8,kO=m8,g8=bW,v8=pw,y8=Wn,b8=xO,x8=mw,w8=kO,k8=Object.prototype,S8=k8.hasOwnProperty;function j8(e,t){var n=y8(e),r=!n&&v8(e),a=!n&&!r&&b8(e),s=!n&&!r&&!a&&w8(e),o=n||r||a||s,l=o?g8(e.length,String):[],c=l.length;for(var u in e)(t||S8.call(e,u))&&!(o&&(u=="length"||a&&(u=="offset"||u=="parent")||s&&(u=="buffer"||u=="byteLength"||u=="byteOffset")||x8(u,c)))&&l.push(u);return l}var N8=j8,E8=Object.prototype;function _8(e){var t=e&&e.constructor,n=typeof t=="function"&&t.prototype||E8;return e===n}var A8=_8;function C8(e,t){return function(n){return e(t(n))}}var SO=C8,T8=SO,O8=T8(Object.keys,Object),P8=O8,R8=A8,M8=P8,I8=Object.prototype,$8=I8.hasOwnProperty;function L8(e){if(!R8(e))return M8(e);var t=[];for(var n in Object(e))$8.call(e,n)&&n!="constructor"&&t.push(n);return t}var D8=L8,B8=Qx,z8=gw;function F8(e){return e!=null&&z8(e.length)&&!B8(e)}var Zu=F8,U8=N8,W8=D8,H8=Zu;function G8(e){return H8(e)?U8(e):W8(e)}var Vp=G8,q8=oW,K8=vW,V8=Vp;function Y8(e){return q8(e,V8,K8)}var X8=Y8,RS=X8,Q8=1,Z8=Object.prototype,J8=Z8.hasOwnProperty;function e5(e,t,n,r,a,s){var o=n&Q8,l=RS(e),c=l.length,u=RS(t),d=u.length;if(c!=d&&!o)return!1;for(var f=c;f--;){var h=l[f];if(!(o?h in t:J8.call(t,h)))return!1}var p=s.get(e),g=s.get(t);if(p&&g)return p==t&&g==e;var m=!0;s.set(e,t),s.set(t,e);for(var y=o;++f<c;){h=l[f];var v=e[h],k=t[h];if(r)var x=o?r(k,v,h,t,e,s):r(v,k,h,e,t,s);if(!(x===void 0?v===k||a(v,k,n,r,s):x)){m=!1;break}y||(y=h=="constructor")}if(m&&!y){var j=e.constructor,w=t.constructor;j!=w&&"constructor"in e&&"constructor"in t&&!(typeof j=="function"&&j instanceof j&&typeof w=="function"&&w instanceof w)&&(m=!1)}return s.delete(e),s.delete(t),m}var t5=e5,n5=Ms,r5=fa,a5=n5(r5,"DataView"),i5=a5,s5=Ms,o5=fa,l5=s5(o5,"Promise"),c5=l5,u5=Ms,d5=fa,f5=u5(d5,"Set"),jO=f5,h5=Ms,p5=fa,m5=h5(p5,"WeakMap"),g5=m5,_y=i5,Ay=Jx,Cy=c5,Ty=jO,Oy=g5,NO=Ba,El=OT,MS="[object Map]",v5="[object Object]",IS="[object Promise]",$S="[object Set]",LS="[object WeakMap]",DS="[object DataView]",y5=El(_y),b5=El(Ay),x5=El(Cy),w5=El(Ty),k5=El(Oy),Ji=NO;(_y&&Ji(new _y(new ArrayBuffer(1)))!=DS||Ay&&Ji(new Ay)!=MS||Cy&&Ji(Cy.resolve())!=IS||Ty&&Ji(new Ty)!=$S||Oy&&Ji(new Oy)!=LS)&&(Ji=function(e){var t=NO(e),n=t==v5?e.constructor:void 0,r=n?El(n):"";if(r)switch(r){case y5:return DS;case b5:return MS;case x5:return IS;case w5:return $S;case k5:return LS}return t});var S5=Ji,cg=hO,j5=vO,N5=nW,E5=t5,BS=S5,zS=Wn,FS=xO,_5=kO,A5=1,US="[object Arguments]",WS="[object Array]",Ld="[object Object]",C5=Object.prototype,HS=C5.hasOwnProperty;function T5(e,t,n,r,a,s){var o=zS(e),l=zS(t),c=o?WS:BS(e),u=l?WS:BS(t);c=c==US?Ld:c,u=u==US?Ld:u;var d=c==Ld,f=u==Ld,h=c==u;if(h&&FS(e)){if(!FS(t))return!1;o=!0,d=!1}if(h&&!d)return s||(s=new cg),o||_5(e)?j5(e,t,n,r,a,s):N5(e,t,c,n,r,a,s);if(!(n&A5)){var p=d&&HS.call(e,"__wrapped__"),g=f&&HS.call(t,"__wrapped__");if(p||g){var m=p?e.value():e,y=g?t.value():t;return s||(s=new cg),a(m,y,n,r,s)}}return h?(s||(s=new cg),E5(e,t,n,r,a,s)):!1}var O5=T5,P5=O5,GS=za;function EO(e,t,n,r,a){return e===t?!0:e==null||t==null||!GS(e)&&!GS(t)?e!==e&&t!==t:P5(e,t,n,r,EO,a)}var vw=EO,R5=hO,M5=vw,I5=1,$5=2;function L5(e,t,n,r){var a=n.length,s=a,o=!r;if(e==null)return!s;for(e=Object(e);a--;){var l=n[a];if(o&&l[2]?l[1]!==e[l[0]]:!(l[0]in e))return!1}for(;++a<s;){l=n[a];var c=l[0],u=e[c],d=l[1];if(o&&l[2]){if(u===void 0&&!(c in e))return!1}else{var f=new R5;if(r)var h=r(u,d,c,e,t,f);if(!(h===void 0?M5(d,u,I5|$5,r,f):h))return!1}}return!0}var D5=L5,B5=Ci;function z5(e){return e===e&&!B5(e)}var _O=z5,F5=_O,U5=Vp;function W5(e){for(var t=U5(e),n=t.length;n--;){var r=t[n],a=e[r];t[n]=[r,a,F5(a)]}return t}var H5=W5;function G5(e,t){return function(n){return n==null?!1:n[e]===t&&(t!==void 0||e in Object(n))}}var AO=G5,q5=D5,K5=H5,V5=AO;function Y5(e){var t=K5(e);return t.length==1&&t[0][2]?V5(t[0][0],t[0][1]):function(n){return n===e||q5(n,e,t)}}var X5=Y5;function Q5(e,t){return e!=null&&t in Object(e)}var Z5=Q5,J5=$T,eH=pw,tH=Wn,nH=mw,rH=gw,aH=Pp;function iH(e,t,n){t=J5(t,e);for(var r=-1,a=t.length,s=!1;++r<a;){var o=aH(t[r]);if(!(s=e!=null&&n(e,o)))break;e=e[o]}return s||++r!=a?s:(a=e==null?0:e.length,!!a&&rH(a)&&nH(o,a)&&(tH(e)||eH(e)))}var sH=iH,oH=Z5,lH=sH;function cH(e,t){return e!=null&&lH(e,t,oH)}var uH=cH,dH=vw,fH=LT,hH=uH,pH=Xx,mH=_O,gH=AO,vH=Pp,yH=1,bH=2;function xH(e,t){return pH(e)&&mH(t)?gH(vH(e),t):function(n){var r=fH(n,e);return r===void 0&&r===t?hH(n,e):dH(t,r,yH|bH)}}var wH=xH;function kH(e){return e}var _l=kH;function SH(e){return function(t){return t==null?void 0:t[e]}}var jH=SH,NH=rw;function EH(e){return function(t){return NH(t,e)}}var _H=EH,AH=jH,CH=_H,TH=Xx,OH=Pp;function PH(e){return TH(e)?AH(OH(e)):CH(e)}var RH=PH,MH=X5,IH=wH,$H=_l,LH=Wn,DH=RH;function BH(e){return typeof e=="function"?e:e==null?$H:typeof e=="object"?LH(e)?IH(e[0],e[1]):MH(e):DH(e)}var Ti=BH;function zH(e,t,n,r){for(var a=e.length,s=n+(r?1:-1);r?s--:++s<a;)if(t(e[s],s,e))return s;return-1}var CO=zH;function FH(e){return e!==e}var UH=FH;function WH(e,t,n){for(var r=n-1,a=e.length;++r<a;)if(e[r]===t)return r;return-1}var HH=WH,GH=CO,qH=UH,KH=HH;function VH(e,t,n){return t===t?KH(e,t,n):GH(e,qH,n)}var YH=VH,XH=YH;function QH(e,t){var n=e==null?0:e.length;return!!n&&XH(e,t,0)>-1}var ZH=QH;function JH(e,t,n){for(var r=-1,a=e==null?0:e.length;++r<a;)if(n(t,e[r]))return!0;return!1}var e9=JH;function t9(){}var n9=t9,ug=jO,r9=n9,a9=hw,i9=1/0,s9=ug&&1/a9(new ug([,-0]))[1]==i9?function(e){return new ug(e)}:r9,o9=s9,l9=pO,c9=ZH,u9=e9,d9=gO,f9=o9,h9=hw,p9=200;function m9(e,t,n){var r=-1,a=c9,s=e.length,o=!0,l=[],c=l;if(n)o=!1,a=u9;else if(s>=p9){var u=t?null:f9(e);if(u)return h9(u);o=!1,a=d9,c=new l9}else c=t?[]:l;e:for(;++r<s;){var d=e[r],f=t?t(d):d;if(d=n||d!==0?d:0,o&&f===f){for(var h=c.length;h--;)if(c[h]===f)continue e;t&&c.push(f),l.push(d)}else a(c,f,n)||(c!==l&&c.push(f),l.push(d))}return l}var g9=m9,v9=Ti,y9=g9;function b9(e,t){return e&&e.length?y9(e,v9(t)):[]}var x9=b9;const qS=Ze(x9);function TO(e,t,n){return t===!0?qS(e,n):De(t)?qS(e,t):e}function Vo(e){"@babel/helpers - typeof";return Vo=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Vo(e)}var w9=["ref"];function KS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function ya(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?KS(Object(n),!0).forEach(function(r){Yp(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):KS(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function k9(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function VS(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,PO(r.key),r)}}function S9(e,t,n){return t&&VS(e.prototype,t),n&&VS(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function j9(e,t,n){return t=uh(t),N9(e,OO()?Reflect.construct(t,n||[],uh(e).constructor):t.apply(e,n))}function N9(e,t){if(t&&(Vo(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return E9(e)}function E9(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function OO(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(OO=function(){return!!e})()}function uh(e){return uh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},uh(e)}function _9(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Py(e,t)}function Py(e,t){return Py=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},Py(e,t)}function Yp(e,t,n){return t=PO(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function PO(e){var t=A9(e,"string");return Vo(t)=="symbol"?t:t+""}function A9(e,t){if(Vo(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Vo(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}function C9(e,t){if(e==null)return{};var n=T9(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function T9(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}function O9(e){return e.value}function P9(e,t){if(q.isValidElement(e))return q.cloneElement(e,t);if(typeof e=="function")return q.createElement(e,t);t.ref;var n=C9(t,w9);return q.createElement(fw,n)}var YS=1,ms=function(e){function t(){var n;k9(this,t);for(var r=arguments.length,a=new Array(r),s=0;s<r;s++)a[s]=arguments[s];return n=j9(this,t,[].concat(a)),Yp(n,"lastBoundingBox",{width:-1,height:-1}),n}return _9(t,e),S9(t,[{key:"componentDidMount",value:function(){this.updateBBox()}},{key:"componentDidUpdate",value:function(){this.updateBBox()}},{key:"getBBox",value:function(){if(this.wrapperNode&&this.wrapperNode.getBoundingClientRect){var r=this.wrapperNode.getBoundingClientRect();return r.height=this.wrapperNode.offsetHeight,r.width=this.wrapperNode.offsetWidth,r}return null}},{key:"updateBBox",value:function(){var r=this.props.onBBoxUpdate,a=this.getBBox();a?(Math.abs(a.width-this.lastBoundingBox.width)>YS||Math.abs(a.height-this.lastBoundingBox.height)>YS)&&(this.lastBoundingBox.width=a.width,this.lastBoundingBox.height=a.height,r&&r(a)):(this.lastBoundingBox.width!==-1||this.lastBoundingBox.height!==-1)&&(this.lastBoundingBox.width=-1,this.lastBoundingBox.height=-1,r&&r(null))}},{key:"getBBoxSnapshot",value:function(){return this.lastBoundingBox.width>=0&&this.lastBoundingBox.height>=0?ya({},this.lastBoundingBox):{width:0,height:0}}},{key:"getDefaultPosition",value:function(r){var a=this.props,s=a.layout,o=a.align,l=a.verticalAlign,c=a.margin,u=a.chartWidth,d=a.chartHeight,f,h;if(!r||(r.left===void 0||r.left===null)&&(r.right===void 0||r.right===null))if(o==="center"&&s==="vertical"){var p=this.getBBoxSnapshot();f={left:((u||0)-p.width)/2}}else f=o==="right"?{right:c&&c.right||0}:{left:c&&c.left||0};if(!r||(r.top===void 0||r.top===null)&&(r.bottom===void 0||r.bottom===null))if(l==="middle"){var g=this.getBBoxSnapshot();h={top:((d||0)-g.height)/2}}else h=l==="bottom"?{bottom:c&&c.bottom||0}:{top:c&&c.top||0};return ya(ya({},f),h)}},{key:"render",value:function(){var r=this,a=this.props,s=a.content,o=a.width,l=a.height,c=a.wrapperStyle,u=a.payloadUniqBy,d=a.payload,f=ya(ya({position:"absolute",width:o||"auto",height:l||"auto"},this.getDefaultPosition(c)),c);return q.createElement("div",{className:"recharts-legend-wrapper",style:f,ref:function(p){r.wrapperNode=p}},P9(s,ya(ya({},this.props),{},{payload:TO(d,u,O9)})))}}],[{key:"getWithHeight",value:function(r,a){var s=ya(ya({},this.defaultProps),r.props),o=s.layout;return o==="vertical"&&de(r.props.height)?{height:r.props.height}:o==="horizontal"?{width:r.props.width||a}:null}}])}(S.PureComponent);Yp(ms,"displayName","Legend");Yp(ms,"defaultProps",{iconSize:14,layout:"horizontal",align:"center",verticalAlign:"bottom"});var XS=Xu,R9=pw,M9=Wn,QS=XS?XS.isConcatSpreadable:void 0;function I9(e){return M9(e)||R9(e)||!!(QS&&e&&e[QS])}var $9=I9,L9=yO,D9=$9;function RO(e,t,n,r,a){var s=-1,o=e.length;for(n||(n=D9),a||(a=[]);++s<o;){var l=e[s];t>0&&n(l)?t>1?RO(l,t-1,n,r,a):L9(a,l):r||(a[a.length]=l)}return a}var MO=RO;function B9(e){return function(t,n,r){for(var a=-1,s=Object(t),o=r(t),l=o.length;l--;){var c=o[e?l:++a];if(n(s[c],c,s)===!1)break}return t}}var z9=B9,F9=z9,U9=F9(),W9=U9,H9=W9,G9=Vp;function q9(e,t){return e&&H9(e,t,G9)}var IO=q9,K9=Zu;function V9(e,t){return function(n,r){if(n==null)return n;if(!K9(n))return e(n,r);for(var a=n.length,s=t?a:-1,o=Object(n);(t?s--:++s<a)&&r(o[s],s,o)!==!1;);return n}}var Y9=V9,X9=IO,Q9=Y9,Z9=Q9(X9),yw=Z9,J9=yw,eG=Zu;function tG(e,t){var n=-1,r=eG(e)?Array(e.length):[];return J9(e,function(a,s,o){r[++n]=t(a,s,o)}),r}var $O=tG;function nG(e,t){var n=e.length;for(e.sort(t);n--;)e[n]=e[n].value;return e}var rG=nG,ZS=xl;function aG(e,t){if(e!==t){var n=e!==void 0,r=e===null,a=e===e,s=ZS(e),o=t!==void 0,l=t===null,c=t===t,u=ZS(t);if(!l&&!u&&!s&&e>t||s&&o&&c&&!l&&!u||r&&o&&c||!n&&c||!a)return 1;if(!r&&!s&&!u&&e<t||u&&n&&a&&!r&&!s||l&&n&&a||!o&&a||!c)return-1}return 0}var iG=aG,sG=iG;function oG(e,t,n){for(var r=-1,a=e.criteria,s=t.criteria,o=a.length,l=n.length;++r<o;){var c=sG(a[r],s[r]);if(c){if(r>=l)return c;var u=n[r];return c*(u=="desc"?-1:1)}}return e.index-t.index}var lG=oG,dg=nw,cG=rw,uG=Ti,dG=$O,fG=rG,hG=wO,pG=lG,mG=_l,gG=Wn;function vG(e,t,n){t.length?t=dg(t,function(s){return gG(s)?function(o){return cG(o,s.length===1?s[0]:s)}:s}):t=[mG];var r=-1;t=dg(t,hG(uG));var a=dG(e,function(s,o,l){var c=dg(t,function(u){return u(s)});return{criteria:c,index:++r,value:s}});return fG(a,function(s,o){return pG(s,o,n)})}var yG=vG;function bG(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}var xG=bG,wG=xG,JS=Math.max;function kG(e,t,n){return t=JS(t===void 0?e.length-1:t,0),function(){for(var r=arguments,a=-1,s=JS(r.length-t,0),o=Array(s);++a<s;)o[a]=r[t+a];a=-1;for(var l=Array(t+1);++a<t;)l[a]=r[a];return l[t]=n(o),wG(e,this,l)}}var SG=kG;function jG(e){return function(){return e}}var NG=jG,EG=Ms,_G=function(){try{var e=EG(Object,"defineProperty");return e({},"",{}),e}catch{}}(),LO=_G,AG=NG,e1=LO,CG=_l,TG=e1?function(e,t){return e1(e,"toString",{configurable:!0,enumerable:!1,value:AG(t),writable:!0})}:CG,OG=TG,PG=800,RG=16,MG=Date.now;function IG(e){var t=0,n=0;return function(){var r=MG(),a=RG-(r-n);if(n=r,a>0){if(++t>=PG)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}var $G=IG,LG=OG,DG=$G,BG=DG(LG),zG=BG,FG=_l,UG=SG,WG=zG;function HG(e,t){return WG(UG(e,t,FG),e+"")}var GG=HG,qG=Zx,KG=Zu,VG=mw,YG=Ci;function XG(e,t,n){if(!YG(n))return!1;var r=typeof t;return(r=="number"?KG(n)&&VG(t,n.length):r=="string"&&t in n)?qG(n[t],e):!1}var Xp=XG,QG=MO,ZG=yG,JG=GG,t1=Xp,eq=JG(function(e,t){if(e==null)return[];var n=t.length;return n>1&&t1(e,t[0],t[1])?t=[]:n>2&&t1(t[0],t[1],t[2])&&(t=[t[0]]),ZG(e,QG(t,1),[])}),tq=eq;const bw=Ze(tq);function ou(e){"@babel/helpers - typeof";return ou=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ou(e)}function Ry(){return Ry=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ry.apply(this,arguments)}function nq(e,t){return sq(e)||iq(e,t)||aq(e,t)||rq()}function rq(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
79
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function aq(e,t){if(e){if(typeof e=="string")return n1(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return n1(e,t)}}function n1(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function iq(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var r,a,s,o,l=[],c=!0,u=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(r=s.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(d){u=!0,a=d}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(u)throw a}}return l}}function sq(e){if(Array.isArray(e))return e}function r1(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function fg(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?r1(Object(n),!0).forEach(function(r){oq(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):r1(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function oq(e,t,n){return t=lq(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function lq(e){var t=cq(e,"string");return ou(t)=="symbol"?t:t+""}function cq(e,t){if(ou(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(ou(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function uq(e){return Array.isArray(e)&&Gt(e[0])&&Gt(e[1])?e.join(" ~ "):e}var dq=function(t){var n=t.separator,r=n===void 0?" : ":n,a=t.contentStyle,s=a===void 0?{}:a,o=t.itemStyle,l=o===void 0?{}:o,c=t.labelStyle,u=c===void 0?{}:c,d=t.payload,f=t.formatter,h=t.itemSorter,p=t.wrapperClassName,g=t.labelClassName,m=t.label,y=t.labelFormatter,v=t.accessibilityLayer,k=v===void 0?!1:v,x=function(){if(d&&d.length){var $={padding:0,margin:0},B=(h?bw(d,h):d).map(function(M,F){if(M.type==="none")return null;var L=fg({display:"block",paddingTop:4,paddingBottom:4,color:M.color||"#000"},l),W=M.formatter||f||uq,A=M.value,z=M.name,T=A,K=z;if(W&&T!=null&&K!=null){var D=W(A,z,M,F,d);if(Array.isArray(D)){var I=nq(D,2);T=I[0],K=I[1]}else T=D}return q.createElement("li",{className:"recharts-tooltip-item",key:"tooltip-item-".concat(F),style:L},Gt(K)?q.createElement("span",{className:"recharts-tooltip-item-name"},K):null,Gt(K)?q.createElement("span",{className:"recharts-tooltip-item-separator"},r):null,q.createElement("span",{className:"recharts-tooltip-item-value"},T),q.createElement("span",{className:"recharts-tooltip-item-unit"},M.unit||""))});return q.createElement("ul",{className:"recharts-tooltip-item-list",style:$},B)}return null},j=fg({margin:0,padding:10,backgroundColor:"#fff",border:"1px solid #ccc",whiteSpace:"nowrap"},s),w=fg({margin:0},u),b=!Xe(m),N=b?m:"",E=Ye("recharts-default-tooltip",p),O=Ye("recharts-tooltip-label",g);b&&y&&d!==void 0&&d!==null&&(N=y(m,d));var C=k?{role:"status","aria-live":"assertive"}:{};return q.createElement("div",Ry({className:E,style:j},C),q.createElement("p",{className:O,style:w},q.isValidElement(N)?N:"".concat(N)),x())};function lu(e){"@babel/helpers - typeof";return lu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},lu(e)}function Dd(e,t,n){return t=fq(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function fq(e){var t=hq(e,"string");return lu(t)=="symbol"?t:t+""}function hq(e,t){if(lu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(lu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var nc="recharts-tooltip-wrapper",pq={visibility:"hidden"};function mq(e){var t=e.coordinate,n=e.translateX,r=e.translateY;return Ye(nc,Dd(Dd(Dd(Dd({},"".concat(nc,"-right"),de(n)&&t&&de(t.x)&&n>=t.x),"".concat(nc,"-left"),de(n)&&t&&de(t.x)&&n<t.x),"".concat(nc,"-bottom"),de(r)&&t&&de(t.y)&&r>=t.y),"".concat(nc,"-top"),de(r)&&t&&de(t.y)&&r<t.y))}function a1(e){var t=e.allowEscapeViewBox,n=e.coordinate,r=e.key,a=e.offsetTopLeft,s=e.position,o=e.reverseDirection,l=e.tooltipDimension,c=e.viewBox,u=e.viewBoxDimension;if(s&&de(s[r]))return s[r];var d=n[r]-l-a,f=n[r]+a;if(t[r])return o[r]?d:f;if(o[r]){var h=d,p=c[r];return h<p?Math.max(f,c[r]):Math.max(d,c[r])}var g=f+l,m=c[r]+u;return g>m?Math.max(d,c[r]):Math.max(f,c[r])}function gq(e){var t=e.translateX,n=e.translateY,r=e.useTranslate3d;return{transform:r?"translate3d(".concat(t,"px, ").concat(n,"px, 0)"):"translate(".concat(t,"px, ").concat(n,"px)")}}function vq(e){var t=e.allowEscapeViewBox,n=e.coordinate,r=e.offsetTopLeft,a=e.position,s=e.reverseDirection,o=e.tooltipBox,l=e.useTranslate3d,c=e.viewBox,u,d,f;return o.height>0&&o.width>0&&n?(d=a1({allowEscapeViewBox:t,coordinate:n,key:"x",offsetTopLeft:r,position:a,reverseDirection:s,tooltipDimension:o.width,viewBox:c,viewBoxDimension:c.width}),f=a1({allowEscapeViewBox:t,coordinate:n,key:"y",offsetTopLeft:r,position:a,reverseDirection:s,tooltipDimension:o.height,viewBox:c,viewBoxDimension:c.height}),u=gq({translateX:d,translateY:f,useTranslate3d:l})):u=pq,{cssProperties:u,cssClasses:mq({translateX:d,translateY:f,coordinate:n})}}function Yo(e){"@babel/helpers - typeof";return Yo=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Yo(e)}function i1(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function s1(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?i1(Object(n),!0).forEach(function(r){Iy(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):i1(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function yq(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function bq(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,BO(r.key),r)}}function xq(e,t,n){return t&&bq(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function wq(e,t,n){return t=dh(t),kq(e,DO()?Reflect.construct(t,n||[],dh(e).constructor):t.apply(e,n))}function kq(e,t){if(t&&(Yo(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Sq(e)}function Sq(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function DO(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(DO=function(){return!!e})()}function dh(e){return dh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},dh(e)}function jq(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&My(e,t)}function My(e,t){return My=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},My(e,t)}function Iy(e,t,n){return t=BO(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function BO(e){var t=Nq(e,"string");return Yo(t)=="symbol"?t:t+""}function Nq(e,t){if(Yo(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Yo(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}var o1=1,Eq=function(e){function t(){var n;yq(this,t);for(var r=arguments.length,a=new Array(r),s=0;s<r;s++)a[s]=arguments[s];return n=wq(this,t,[].concat(a)),Iy(n,"state",{dismissed:!1,dismissedAtCoordinate:{x:0,y:0},lastBoundingBox:{width:-1,height:-1}}),Iy(n,"handleKeyDown",function(o){if(o.key==="Escape"){var l,c,u,d;n.setState({dismissed:!0,dismissedAtCoordinate:{x:(l=(c=n.props.coordinate)===null||c===void 0?void 0:c.x)!==null&&l!==void 0?l:0,y:(u=(d=n.props.coordinate)===null||d===void 0?void 0:d.y)!==null&&u!==void 0?u:0}})}}),n}return jq(t,e),xq(t,[{key:"updateBBox",value:function(){if(this.wrapperNode&&this.wrapperNode.getBoundingClientRect){var r=this.wrapperNode.getBoundingClientRect();(Math.abs(r.width-this.state.lastBoundingBox.width)>o1||Math.abs(r.height-this.state.lastBoundingBox.height)>o1)&&this.setState({lastBoundingBox:{width:r.width,height:r.height}})}else(this.state.lastBoundingBox.width!==-1||this.state.lastBoundingBox.height!==-1)&&this.setState({lastBoundingBox:{width:-1,height:-1}})}},{key:"componentDidMount",value:function(){document.addEventListener("keydown",this.handleKeyDown),this.updateBBox()}},{key:"componentWillUnmount",value:function(){document.removeEventListener("keydown",this.handleKeyDown)}},{key:"componentDidUpdate",value:function(){var r,a;this.props.active&&this.updateBBox(),this.state.dismissed&&(((r=this.props.coordinate)===null||r===void 0?void 0:r.x)!==this.state.dismissedAtCoordinate.x||((a=this.props.coordinate)===null||a===void 0?void 0:a.y)!==this.state.dismissedAtCoordinate.y)&&(this.state.dismissed=!1)}},{key:"render",value:function(){var r=this,a=this.props,s=a.active,o=a.allowEscapeViewBox,l=a.animationDuration,c=a.animationEasing,u=a.children,d=a.coordinate,f=a.hasPayload,h=a.isAnimationActive,p=a.offset,g=a.position,m=a.reverseDirection,y=a.useTranslate3d,v=a.viewBox,k=a.wrapperStyle,x=vq({allowEscapeViewBox:o,coordinate:d,offsetTopLeft:p,position:g,reverseDirection:m,tooltipBox:this.state.lastBoundingBox,useTranslate3d:y,viewBox:v}),j=x.cssClasses,w=x.cssProperties,b=s1(s1({transition:h&&s?"transform ".concat(l,"ms ").concat(c):void 0},w),{},{pointerEvents:"none",visibility:!this.state.dismissed&&s&&f?"visible":"hidden",position:"absolute",top:0,left:0},k);return q.createElement("div",{tabIndex:-1,className:j,style:b,ref:function(E){r.wrapperNode=E}},u)}}])}(S.PureComponent),_q=function(){return!(typeof window<"u"&&window.document&&window.document.createElement&&window.setTimeout)},Ju={isSsr:_q()};function Xo(e){"@babel/helpers - typeof";return Xo=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Xo(e)}function l1(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function c1(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?l1(Object(n),!0).forEach(function(r){xw(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):l1(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function Aq(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Cq(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,FO(r.key),r)}}function Tq(e,t,n){return t&&Cq(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Oq(e,t,n){return t=fh(t),Pq(e,zO()?Reflect.construct(t,n||[],fh(e).constructor):t.apply(e,n))}function Pq(e,t){if(t&&(Xo(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Rq(e)}function Rq(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function zO(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(zO=function(){return!!e})()}function fh(e){return fh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},fh(e)}function Mq(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&$y(e,t)}function $y(e,t){return $y=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},$y(e,t)}function xw(e,t,n){return t=FO(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function FO(e){var t=Iq(e,"string");return Xo(t)=="symbol"?t:t+""}function Iq(e,t){if(Xo(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Xo(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}function $q(e){return e.dataKey}function Lq(e,t){return q.isValidElement(e)?q.cloneElement(e,t):typeof e=="function"?q.createElement(e,t):q.createElement(dq,t)}var bn=function(e){function t(){return Aq(this,t),Oq(this,t,arguments)}return Mq(t,e),Tq(t,[{key:"render",value:function(){var r=this,a=this.props,s=a.active,o=a.allowEscapeViewBox,l=a.animationDuration,c=a.animationEasing,u=a.content,d=a.coordinate,f=a.filterNull,h=a.isAnimationActive,p=a.offset,g=a.payload,m=a.payloadUniqBy,y=a.position,v=a.reverseDirection,k=a.useTranslate3d,x=a.viewBox,j=a.wrapperStyle,w=g??[];f&&w.length&&(w=TO(g.filter(function(N){return N.value!=null&&(N.hide!==!0||r.props.includeHidden)}),m,$q));var b=w.length>0;return q.createElement(Eq,{allowEscapeViewBox:o,animationDuration:l,animationEasing:c,isAnimationActive:h,active:s,coordinate:d,hasPayload:b,offset:p,position:y,reverseDirection:v,useTranslate3d:k,viewBox:x,wrapperStyle:j},Lq(u,c1(c1({},this.props),{},{payload:w})))}}])}(S.PureComponent);xw(bn,"displayName","Tooltip");xw(bn,"defaultProps",{accessibilityLayer:!1,allowEscapeViewBox:{x:!1,y:!1},animationDuration:400,animationEasing:"ease",contentStyle:{},coordinate:{x:0,y:0},cursor:!0,cursorStyle:{},filterNull:!0,isAnimationActive:!Ju.isSsr,itemStyle:{},labelStyle:{},offset:10,reverseDirection:{x:!1,y:!1},separator:" : ",trigger:"hover",useTranslate3d:!1,viewBox:{x:0,y:0,height:0,width:0},wrapperStyle:{}});var Dq=fa,Bq=function(){return Dq.Date.now()},zq=Bq,Fq=/\s/;function Uq(e){for(var t=e.length;t--&&Fq.test(e.charAt(t)););return t}var Wq=Uq,Hq=Wq,Gq=/^\s+/;function qq(e){return e&&e.slice(0,Hq(e)+1).replace(Gq,"")}var Kq=qq,Vq=Kq,u1=Ci,Yq=xl,d1=NaN,Xq=/^[-+]0x[0-9a-f]+$/i,Qq=/^0b[01]+$/i,Zq=/^0o[0-7]+$/i,Jq=parseInt;function eK(e){if(typeof e=="number")return e;if(Yq(e))return d1;if(u1(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=u1(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=Vq(e);var n=Qq.test(e);return n||Zq.test(e)?Jq(e.slice(2),n?2:8):Xq.test(e)?d1:+e}var UO=eK,tK=Ci,hg=zq,f1=UO,nK="Expected a function",rK=Math.max,aK=Math.min;function iK(e,t,n){var r,a,s,o,l,c,u=0,d=!1,f=!1,h=!0;if(typeof e!="function")throw new TypeError(nK);t=f1(t)||0,tK(n)&&(d=!!n.leading,f="maxWait"in n,s=f?rK(f1(n.maxWait)||0,t):s,h="trailing"in n?!!n.trailing:h);function p(b){var N=r,E=a;return r=a=void 0,u=b,o=e.apply(E,N),o}function g(b){return u=b,l=setTimeout(v,t),d?p(b):o}function m(b){var N=b-c,E=b-u,O=t-N;return f?aK(O,s-E):O}function y(b){var N=b-c,E=b-u;return c===void 0||N>=t||N<0||f&&E>=s}function v(){var b=hg();if(y(b))return k(b);l=setTimeout(v,m(b))}function k(b){return l=void 0,h&&r?p(b):(r=a=void 0,o)}function x(){l!==void 0&&clearTimeout(l),u=0,r=c=a=l=void 0}function j(){return l===void 0?o:k(hg())}function w(){var b=hg(),N=y(b);if(r=arguments,a=this,c=b,N){if(l===void 0)return g(c);if(f)return clearTimeout(l),l=setTimeout(v,t),p(c)}return l===void 0&&(l=setTimeout(v,t)),o}return w.cancel=x,w.flush=j,w}var sK=iK,oK=sK,lK=Ci,cK="Expected a function";function uK(e,t,n){var r=!0,a=!0;if(typeof e!="function")throw new TypeError(cK);return lK(n)&&(r="leading"in n?!!n.leading:r,a="trailing"in n?!!n.trailing:a),oK(e,t,{leading:r,maxWait:t,trailing:a})}var dK=uK;const WO=Ze(dK);function cu(e){"@babel/helpers - typeof";return cu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},cu(e)}function h1(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Bd(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?h1(Object(n),!0).forEach(function(r){fK(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):h1(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function fK(e,t,n){return t=hK(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function hK(e){var t=pK(e,"string");return cu(t)=="symbol"?t:t+""}function pK(e,t){if(cu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(cu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function mK(e,t){return bK(e)||yK(e,t)||vK(e,t)||gK()}function gK(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
80
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function vK(e,t){if(e){if(typeof e=="string")return p1(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return p1(e,t)}}function p1(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function yK(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var r,a,s,o,l=[],c=!0,u=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(r=s.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(d){u=!0,a=d}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(u)throw a}}return l}}function bK(e){if(Array.isArray(e))return e}var ns=S.forwardRef(function(e,t){var n=e.aspect,r=e.initialDimension,a=r===void 0?{width:-1,height:-1}:r,s=e.width,o=s===void 0?"100%":s,l=e.height,c=l===void 0?"100%":l,u=e.minWidth,d=u===void 0?0:u,f=e.minHeight,h=e.maxHeight,p=e.children,g=e.debounce,m=g===void 0?0:g,y=e.id,v=e.className,k=e.onResize,x=e.style,j=x===void 0?{}:x,w=S.useRef(null),b=S.useRef();b.current=k,S.useImperativeHandle(t,function(){return Object.defineProperty(w.current,"current",{get:function(){return console.warn("The usage of ref.current.current is deprecated and will no longer be supported."),w.current},configurable:!0})});var N=S.useState({containerWidth:a.width,containerHeight:a.height}),E=mK(N,2),O=E[0],C=E[1],P=S.useCallback(function(B,M){C(function(F){var L=Math.round(B),W=Math.round(M);return F.containerWidth===L&&F.containerHeight===W?F:{containerWidth:L,containerHeight:W}})},[]);S.useEffect(function(){var B=function(z){var T,K=z[0].contentRect,D=K.width,I=K.height;P(D,I),(T=b.current)===null||T===void 0||T.call(b,D,I)};m>0&&(B=WO(B,m,{trailing:!0,leading:!1}));var M=new ResizeObserver(B),F=w.current.getBoundingClientRect(),L=F.width,W=F.height;return P(L,W),M.observe(w.current),function(){M.disconnect()}},[P,m]);var $=S.useMemo(function(){var B=O.containerWidth,M=O.containerHeight;if(B<0||M<0)return null;Aa(ls(o)||ls(c),`The width(%s) and height(%s) are both fixed numbers,
81
- maybe you don't need to use a ResponsiveContainer.`,o,c),Aa(!n||n>0,"The aspect(%s) must be greater than zero.",n);var F=ls(o)?B:o,L=ls(c)?M:c;n&&n>0&&(F?L=F/n:L&&(F=L*n),h&&L>h&&(L=h)),Aa(F>0||L>0,`The width(%s) and height(%s) of chart should be greater than 0,
82
- please check the style of container, or the props width(%s) and height(%s),
83
- or add a minWidth(%s) or minHeight(%s) or use aspect(%s) to control the
84
- height and width.`,F,L,o,c,d,f,n);var W=!Array.isArray(p)&&_a(p.type).endsWith("Chart");return q.Children.map(p,function(A){return q.isValidElement(A)?S.cloneElement(A,Bd({width:F,height:L},W?{style:Bd({height:"100%",width:"100%",maxHeight:L,maxWidth:F},A.props.style)}:{})):A})},[n,p,c,h,f,d,O,o]);return q.createElement("div",{id:y?"".concat(y):void 0,className:Ye("recharts-responsive-container",v),style:Bd(Bd({},j),{},{width:o,height:c,minWidth:d,minHeight:f,maxHeight:h}),ref:w},$)}),uu=function(t){return null};uu.displayName="Cell";function du(e){"@babel/helpers - typeof";return du=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},du(e)}function m1(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Ly(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?m1(Object(n),!0).forEach(function(r){xK(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):m1(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function xK(e,t,n){return t=wK(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function wK(e){var t=kK(e,"string");return du(t)=="symbol"?t:t+""}function kK(e,t){if(du(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(du(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var eo={widthCache:{},cacheCount:0},SK=2e3,jK={position:"absolute",top:"-20000px",left:0,padding:0,margin:0,border:"none",whiteSpace:"pre"},g1="recharts_measurement_span";function NK(e){var t=Ly({},e);return Object.keys(t).forEach(function(n){t[n]||delete t[n]}),t}var Oc=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(t==null||Ju.isSsr)return{width:0,height:0};var r=NK(n),a=JSON.stringify({text:t,copyStyle:r});if(eo.widthCache[a])return eo.widthCache[a];try{var s=document.getElementById(g1);s||(s=document.createElement("span"),s.setAttribute("id",g1),s.setAttribute("aria-hidden","true"),document.body.appendChild(s));var o=Ly(Ly({},jK),r);Object.assign(s.style,o),s.textContent="".concat(t);var l=s.getBoundingClientRect(),c={width:l.width,height:l.height};return eo.widthCache[a]=c,++eo.cacheCount>SK&&(eo.cacheCount=0,eo.widthCache={}),c}catch{return{width:0,height:0}}},EK=function(t){return{top:t.top+window.scrollY-document.documentElement.clientTop,left:t.left+window.scrollX-document.documentElement.clientLeft}};function fu(e){"@babel/helpers - typeof";return fu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},fu(e)}function hh(e,t){return TK(e)||CK(e,t)||AK(e,t)||_K()}function _K(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
85
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function AK(e,t){if(e){if(typeof e=="string")return v1(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return v1(e,t)}}function v1(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function CK(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var r,a,s,o,l=[],c=!0,u=!1;try{if(s=(n=n.call(e)).next,t===0){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=s.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(d){u=!0,a=d}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(u)throw a}}return l}}function TK(e){if(Array.isArray(e))return e}function OK(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function y1(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,RK(r.key),r)}}function PK(e,t,n){return t&&y1(e.prototype,t),n&&y1(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function RK(e){var t=MK(e,"string");return fu(t)=="symbol"?t:t+""}function MK(e,t){if(fu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(fu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}var b1=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([*/])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,x1=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([+-])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,IK=/^px|cm|vh|vw|em|rem|%|mm|in|pt|pc|ex|ch|vmin|vmax|Q$/,$K=/(-?\d+(?:\.\d+)?)([a-zA-Z%]+)?/,HO={cm:96/2.54,mm:96/25.4,pt:96/72,pc:96/6,in:96,Q:96/(2.54*40),px:1},LK=Object.keys(HO),jo="NaN";function DK(e,t){return e*HO[t]}var zd=function(){function e(t,n){OK(this,e),this.num=t,this.unit=n,this.num=t,this.unit=n,Number.isNaN(t)&&(this.unit=""),n!==""&&!IK.test(n)&&(this.num=NaN,this.unit=""),LK.includes(n)&&(this.num=DK(t,n),this.unit="px")}return PK(e,[{key:"add",value:function(n){return this.unit!==n.unit?new e(NaN,""):new e(this.num+n.num,this.unit)}},{key:"subtract",value:function(n){return this.unit!==n.unit?new e(NaN,""):new e(this.num-n.num,this.unit)}},{key:"multiply",value:function(n){return this.unit!==""&&n.unit!==""&&this.unit!==n.unit?new e(NaN,""):new e(this.num*n.num,this.unit||n.unit)}},{key:"divide",value:function(n){return this.unit!==""&&n.unit!==""&&this.unit!==n.unit?new e(NaN,""):new e(this.num/n.num,this.unit||n.unit)}},{key:"toString",value:function(){return"".concat(this.num).concat(this.unit)}},{key:"isNaN",value:function(){return Number.isNaN(this.num)}}],[{key:"parse",value:function(n){var r,a=(r=$K.exec(n))!==null&&r!==void 0?r:[],s=hh(a,3),o=s[1],l=s[2];return new e(parseFloat(o),l??"")}}])}();function GO(e){if(e.includes(jo))return jo;for(var t=e;t.includes("*")||t.includes("/");){var n,r=(n=b1.exec(t))!==null&&n!==void 0?n:[],a=hh(r,4),s=a[1],o=a[2],l=a[3],c=zd.parse(s??""),u=zd.parse(l??""),d=o==="*"?c.multiply(u):c.divide(u);if(d.isNaN())return jo;t=t.replace(b1,d.toString())}for(;t.includes("+")||/.-\d+(?:\.\d+)?/.test(t);){var f,h=(f=x1.exec(t))!==null&&f!==void 0?f:[],p=hh(h,4),g=p[1],m=p[2],y=p[3],v=zd.parse(g??""),k=zd.parse(y??""),x=m==="+"?v.add(k):v.subtract(k);if(x.isNaN())return jo;t=t.replace(x1,x.toString())}return t}var w1=/\(([^()]*)\)/;function BK(e){for(var t=e;t.includes("(");){var n=w1.exec(t),r=hh(n,2),a=r[1];t=t.replace(w1,GO(a))}return t}function zK(e){var t=e.replace(/\s+/g,"");return t=BK(t),t=GO(t),t}function FK(e){try{return zK(e)}catch{return jo}}function pg(e){var t=FK(e.slice(5,-1));return t===jo?"":t}var UK=["x","y","lineHeight","capHeight","scaleToFit","textAnchor","verticalAnchor","fill"],WK=["dx","dy","angle","className","breakAll"];function Dy(){return Dy=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Dy.apply(this,arguments)}function k1(e,t){if(e==null)return{};var n=HK(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function HK(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}function S1(e,t){return VK(e)||KK(e,t)||qK(e,t)||GK()}function GK(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
86
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function qK(e,t){if(e){if(typeof e=="string")return j1(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return j1(e,t)}}function j1(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function KK(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var r,a,s,o,l=[],c=!0,u=!1;try{if(s=(n=n.call(e)).next,t===0){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=s.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(d){u=!0,a=d}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(u)throw a}}return l}}function VK(e){if(Array.isArray(e))return e}var qO=/[ \f\n\r\t\v\u2028\u2029]+/,KO=function(t){var n=t.children,r=t.breakAll,a=t.style;try{var s=[];Xe(n)||(r?s=n.toString().split(""):s=n.toString().split(qO));var o=s.map(function(c){return{word:c,width:Oc(c,a).width}}),l=r?0:Oc(" ",a).width;return{wordsWithComputedWidth:o,spaceWidth:l}}catch{return null}},YK=function(t,n,r,a,s){var o=t.maxLines,l=t.children,c=t.style,u=t.breakAll,d=de(o),f=l,h=function(){var F=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];return F.reduce(function(L,W){var A=W.word,z=W.width,T=L[L.length-1];if(T&&(a==null||s||T.width+z+r<Number(a)))T.words.push(A),T.width+=z+r;else{var K={words:[A],width:z};L.push(K)}return L},[])},p=h(n),g=function(F){return F.reduce(function(L,W){return L.width>W.width?L:W})};if(!d)return p;for(var m="…",y=function(F){var L=f.slice(0,F),W=KO({breakAll:u,style:c,children:L+m}).wordsWithComputedWidth,A=h(W),z=A.length>o||g(A).width>Number(a);return[z,A]},v=0,k=f.length-1,x=0,j;v<=k&&x<=f.length-1;){var w=Math.floor((v+k)/2),b=w-1,N=y(b),E=S1(N,2),O=E[0],C=E[1],P=y(w),$=S1(P,1),B=$[0];if(!O&&!B&&(v=w+1),O&&B&&(k=w-1),!O&&B){j=C;break}x++}return j||p},N1=function(t){var n=Xe(t)?[]:t.toString().split(qO);return[{words:n}]},XK=function(t){var n=t.width,r=t.scaleToFit,a=t.children,s=t.style,o=t.breakAll,l=t.maxLines;if((n||r)&&!Ju.isSsr){var c,u,d=KO({breakAll:o,children:a,style:s});if(d){var f=d.wordsWithComputedWidth,h=d.spaceWidth;c=f,u=h}else return N1(a);return YK({breakAll:o,children:a,maxLines:l,style:s},c,u,n,r)}return N1(a)},E1="#808080",ph=function(t){var n=t.x,r=n===void 0?0:n,a=t.y,s=a===void 0?0:a,o=t.lineHeight,l=o===void 0?"1em":o,c=t.capHeight,u=c===void 0?"0.71em":c,d=t.scaleToFit,f=d===void 0?!1:d,h=t.textAnchor,p=h===void 0?"start":h,g=t.verticalAnchor,m=g===void 0?"end":g,y=t.fill,v=y===void 0?E1:y,k=k1(t,UK),x=S.useMemo(function(){return XK({breakAll:k.breakAll,children:k.children,maxLines:k.maxLines,scaleToFit:f,style:k.style,width:k.width})},[k.breakAll,k.children,k.maxLines,f,k.style,k.width]),j=k.dx,w=k.dy,b=k.angle,N=k.className,E=k.breakAll,O=k1(k,WK);if(!Gt(r)||!Gt(s))return null;var C=r+(de(j)?j:0),P=s+(de(w)?w:0),$;switch(m){case"start":$=pg("calc(".concat(u,")"));break;case"middle":$=pg("calc(".concat((x.length-1)/2," * -").concat(l," + (").concat(u," / 2))"));break;default:$=pg("calc(".concat(x.length-1," * -").concat(l,")"));break}var B=[];if(f){var M=x[0].width,F=k.width;B.push("scale(".concat((de(F)?F/M:1)/M,")"))}return b&&B.push("rotate(".concat(b,", ").concat(C,", ").concat(P,")")),B.length&&(O.transform=B.join(" ")),q.createElement("text",Dy({},Ve(O,!0),{x:C,y:P,className:Ye("recharts-text",N),textAnchor:p,fill:v.includes("url")?E1:v}),x.map(function(L,W){var A=L.words.join(E?"":" ");return q.createElement("tspan",{x:C,dy:W===0?$:l,key:"".concat(A,"-").concat(W)},A)}))};function bi(e,t){return e==null||t==null?NaN:e<t?-1:e>t?1:e>=t?0:NaN}function QK(e,t){return e==null||t==null?NaN:t<e?-1:t>e?1:t>=e?0:NaN}function ww(e){let t,n,r;e.length!==2?(t=bi,n=(l,c)=>bi(e(l),c),r=(l,c)=>e(l)-c):(t=e===bi||e===QK?e:ZK,n=e,r=e);function a(l,c,u=0,d=l.length){if(u<d){if(t(c,c)!==0)return d;do{const f=u+d>>>1;n(l[f],c)<0?u=f+1:d=f}while(u<d)}return u}function s(l,c,u=0,d=l.length){if(u<d){if(t(c,c)!==0)return d;do{const f=u+d>>>1;n(l[f],c)<=0?u=f+1:d=f}while(u<d)}return u}function o(l,c,u=0,d=l.length){const f=a(l,c,u,d-1);return f>u&&r(l[f-1],c)>-r(l[f],c)?f-1:f}return{left:a,center:o,right:s}}function ZK(){return 0}function VO(e){return e===null?NaN:+e}function*JK(e,t){for(let n of e)n!=null&&(n=+n)>=n&&(yield n)}const eV=ww(bi),ed=eV.right;ww(VO).center;class _1 extends Map{constructor(t,n=rV){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:n}}),t!=null)for(const[r,a]of t)this.set(r,a)}get(t){return super.get(A1(this,t))}has(t){return super.has(A1(this,t))}set(t,n){return super.set(tV(this,t),n)}delete(t){return super.delete(nV(this,t))}}function A1({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):n}function tV({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):(e.set(r,n),n)}function nV({_intern:e,_key:t},n){const r=t(n);return e.has(r)&&(n=e.get(r),e.delete(r)),n}function rV(e){return e!==null&&typeof e=="object"?e.valueOf():e}function aV(e=bi){if(e===bi)return YO;if(typeof e!="function")throw new TypeError("compare is not a function");return(t,n)=>{const r=e(t,n);return r||r===0?r:(e(n,n)===0)-(e(t,t)===0)}}function YO(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(e<t?-1:e>t?1:0)}const iV=Math.sqrt(50),sV=Math.sqrt(10),oV=Math.sqrt(2);function mh(e,t,n){const r=(t-e)/Math.max(0,n),a=Math.floor(Math.log10(r)),s=r/Math.pow(10,a),o=s>=iV?10:s>=sV?5:s>=oV?2:1;let l,c,u;return a<0?(u=Math.pow(10,-a)/o,l=Math.round(e*u),c=Math.round(t*u),l/u<e&&++l,c/u>t&&--c,u=-u):(u=Math.pow(10,a)*o,l=Math.round(e/u),c=Math.round(t/u),l*u<e&&++l,c*u>t&&--c),c<l&&.5<=n&&n<2?mh(e,t,n*2):[l,c,u]}function By(e,t,n){if(t=+t,e=+e,n=+n,!(n>0))return[];if(e===t)return[e];const r=t<e,[a,s,o]=r?mh(t,e,n):mh(e,t,n);if(!(s>=a))return[];const l=s-a+1,c=new Array(l);if(r)if(o<0)for(let u=0;u<l;++u)c[u]=(s-u)/-o;else for(let u=0;u<l;++u)c[u]=(s-u)*o;else if(o<0)for(let u=0;u<l;++u)c[u]=(a+u)/-o;else for(let u=0;u<l;++u)c[u]=(a+u)*o;return c}function zy(e,t,n){return t=+t,e=+e,n=+n,mh(e,t,n)[2]}function Fy(e,t,n){t=+t,e=+e,n=+n;const r=t<e,a=r?zy(t,e,n):zy(e,t,n);return(r?-1:1)*(a<0?1/-a:a)}function C1(e,t){let n;for(const r of e)r!=null&&(n<r||n===void 0&&r>=r)&&(n=r);return n}function T1(e,t){let n;for(const r of e)r!=null&&(n>r||n===void 0&&r>=r)&&(n=r);return n}function XO(e,t,n=0,r=1/0,a){if(t=Math.floor(t),n=Math.floor(Math.max(0,n)),r=Math.floor(Math.min(e.length-1,r)),!(n<=t&&t<=r))return e;for(a=a===void 0?YO:aV(a);r>n;){if(r-n>600){const c=r-n+1,u=t-n+1,d=Math.log(c),f=.5*Math.exp(2*d/3),h=.5*Math.sqrt(d*f*(c-f)/c)*(u-c/2<0?-1:1),p=Math.max(n,Math.floor(t-u*f/c+h)),g=Math.min(r,Math.floor(t+(c-u)*f/c+h));XO(e,t,p,g,a)}const s=e[t];let o=n,l=r;for(rc(e,n,t),a(e[r],s)>0&&rc(e,n,r);o<l;){for(rc(e,o,l),++o,--l;a(e[o],s)<0;)++o;for(;a(e[l],s)>0;)--l}a(e[n],s)===0?rc(e,n,l):(++l,rc(e,l,r)),l<=t&&(n=l+1),t<=l&&(r=l-1)}return e}function rc(e,t,n){const r=e[t];e[t]=e[n],e[n]=r}function lV(e,t,n){if(e=Float64Array.from(JK(e)),!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return T1(e);if(t>=1)return C1(e);var r,a=(r-1)*t,s=Math.floor(a),o=C1(XO(e,s).subarray(0,s+1)),l=T1(e.subarray(s+1));return o+(l-o)*(a-s)}}function cV(e,t,n=VO){if(!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return+n(e[0],0,e);if(t>=1)return+n(e[r-1],r-1,e);var r,a=(r-1)*t,s=Math.floor(a),o=+n(e[s],s,e),l=+n(e[s+1],s+1,e);return o+(l-o)*(a-s)}}function uV(e,t,n){e=+e,t=+t,n=(a=arguments.length)<2?(t=e,e=0,1):a<3?1:+n;for(var r=-1,a=Math.max(0,Math.ceil((t-e)/n))|0,s=new Array(a);++r<a;)s[r]=e+r*n;return s}function jr(e,t){switch(arguments.length){case 0:break;case 1:this.range(e);break;default:this.range(t).domain(e);break}return this}function Fa(e,t){switch(arguments.length){case 0:break;case 1:{typeof e=="function"?this.interpolator(e):this.range(e);break}default:{this.domain(e),typeof t=="function"?this.interpolator(t):this.range(t);break}}return this}const Uy=Symbol("implicit");function kw(){var e=new _1,t=[],n=[],r=Uy;function a(s){let o=e.get(s);if(o===void 0){if(r!==Uy)return r;e.set(s,o=t.push(s)-1)}return n[o%n.length]}return a.domain=function(s){if(!arguments.length)return t.slice();t=[],e=new _1;for(const o of s)e.has(o)||e.set(o,t.push(o)-1);return a},a.range=function(s){return arguments.length?(n=Array.from(s),a):n.slice()},a.unknown=function(s){return arguments.length?(r=s,a):r},a.copy=function(){return kw(t,n).unknown(r)},jr.apply(a,arguments),a}function hu(){var e=kw().unknown(void 0),t=e.domain,n=e.range,r=0,a=1,s,o,l=!1,c=0,u=0,d=.5;delete e.unknown;function f(){var h=t().length,p=a<r,g=p?a:r,m=p?r:a;s=(m-g)/Math.max(1,h-c+u*2),l&&(s=Math.floor(s)),g+=(m-g-s*(h-c))*d,o=s*(1-c),l&&(g=Math.round(g),o=Math.round(o));var y=uV(h).map(function(v){return g+s*v});return n(p?y.reverse():y)}return e.domain=function(h){return arguments.length?(t(h),f()):t()},e.range=function(h){return arguments.length?([r,a]=h,r=+r,a=+a,f()):[r,a]},e.rangeRound=function(h){return[r,a]=h,r=+r,a=+a,l=!0,f()},e.bandwidth=function(){return o},e.step=function(){return s},e.round=function(h){return arguments.length?(l=!!h,f()):l},e.padding=function(h){return arguments.length?(c=Math.min(1,u=+h),f()):c},e.paddingInner=function(h){return arguments.length?(c=Math.min(1,h),f()):c},e.paddingOuter=function(h){return arguments.length?(u=+h,f()):u},e.align=function(h){return arguments.length?(d=Math.max(0,Math.min(1,h)),f()):d},e.copy=function(){return hu(t(),[r,a]).round(l).paddingInner(c).paddingOuter(u).align(d)},jr.apply(f(),arguments)}function QO(e){var t=e.copy;return e.padding=e.paddingOuter,delete e.paddingInner,delete e.paddingOuter,e.copy=function(){return QO(t())},e}function Pc(){return QO(hu.apply(null,arguments).paddingInner(1))}function Sw(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function ZO(e,t){var n=Object.create(e.prototype);for(var r in t)n[r]=t[r];return n}function td(){}var pu=.7,gh=1/pu,Io="\\s*([+-]?\\d+)\\s*",mu="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",la="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",dV=/^#([0-9a-f]{3,8})$/,fV=new RegExp(`^rgb\\(${Io},${Io},${Io}\\)$`),hV=new RegExp(`^rgb\\(${la},${la},${la}\\)$`),pV=new RegExp(`^rgba\\(${Io},${Io},${Io},${mu}\\)$`),mV=new RegExp(`^rgba\\(${la},${la},${la},${mu}\\)$`),gV=new RegExp(`^hsl\\(${mu},${la},${la}\\)$`),vV=new RegExp(`^hsla\\(${mu},${la},${la},${mu}\\)$`),O1={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};Sw(td,gu,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:P1,formatHex:P1,formatHex8:yV,formatHsl:bV,formatRgb:R1,toString:R1});function P1(){return this.rgb().formatHex()}function yV(){return this.rgb().formatHex8()}function bV(){return JO(this).formatHsl()}function R1(){return this.rgb().formatRgb()}function gu(e){var t,n;return e=(e+"").trim().toLowerCase(),(t=dV.exec(e))?(n=t[1].length,t=parseInt(t[1],16),n===6?M1(t):n===3?new Bn(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?Fd(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?Fd(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=fV.exec(e))?new Bn(t[1],t[2],t[3],1):(t=hV.exec(e))?new Bn(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=pV.exec(e))?Fd(t[1],t[2],t[3],t[4]):(t=mV.exec(e))?Fd(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=gV.exec(e))?L1(t[1],t[2]/100,t[3]/100,1):(t=vV.exec(e))?L1(t[1],t[2]/100,t[3]/100,t[4]):O1.hasOwnProperty(e)?M1(O1[e]):e==="transparent"?new Bn(NaN,NaN,NaN,0):null}function M1(e){return new Bn(e>>16&255,e>>8&255,e&255,1)}function Fd(e,t,n,r){return r<=0&&(e=t=n=NaN),new Bn(e,t,n,r)}function xV(e){return e instanceof td||(e=gu(e)),e?(e=e.rgb(),new Bn(e.r,e.g,e.b,e.opacity)):new Bn}function Wy(e,t,n,r){return arguments.length===1?xV(e):new Bn(e,t,n,r??1)}function Bn(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}Sw(Bn,Wy,ZO(td,{brighter(e){return e=e==null?gh:Math.pow(gh,e),new Bn(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?pu:Math.pow(pu,e),new Bn(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Bn(gs(this.r),gs(this.g),gs(this.b),vh(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:I1,formatHex:I1,formatHex8:wV,formatRgb:$1,toString:$1}));function I1(){return`#${cs(this.r)}${cs(this.g)}${cs(this.b)}`}function wV(){return`#${cs(this.r)}${cs(this.g)}${cs(this.b)}${cs((isNaN(this.opacity)?1:this.opacity)*255)}`}function $1(){const e=vh(this.opacity);return`${e===1?"rgb(":"rgba("}${gs(this.r)}, ${gs(this.g)}, ${gs(this.b)}${e===1?")":`, ${e})`}`}function vh(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function gs(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function cs(e){return e=gs(e),(e<16?"0":"")+e.toString(16)}function L1(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new Lr(e,t,n,r)}function JO(e){if(e instanceof Lr)return new Lr(e.h,e.s,e.l,e.opacity);if(e instanceof td||(e=gu(e)),!e)return new Lr;if(e instanceof Lr)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,a=Math.min(t,n,r),s=Math.max(t,n,r),o=NaN,l=s-a,c=(s+a)/2;return l?(t===s?o=(n-r)/l+(n<r)*6:n===s?o=(r-t)/l+2:o=(t-n)/l+4,l/=c<.5?s+a:2-s-a,o*=60):l=c>0&&c<1?0:o,new Lr(o,l,c,e.opacity)}function kV(e,t,n,r){return arguments.length===1?JO(e):new Lr(e,t,n,r??1)}function Lr(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}Sw(Lr,kV,ZO(td,{brighter(e){return e=e==null?gh:Math.pow(gh,e),new Lr(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?pu:Math.pow(pu,e),new Lr(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 Bn(mg(e>=240?e-240:e+120,a,r),mg(e,a,r),mg(e<120?e+240:e-120,a,r),this.opacity)},clamp(){return new Lr(D1(this.h),Ud(this.s),Ud(this.l),vh(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=vh(this.opacity);return`${e===1?"hsl(":"hsla("}${D1(this.h)}, ${Ud(this.s)*100}%, ${Ud(this.l)*100}%${e===1?")":`, ${e})`}`}}));function D1(e){return e=(e||0)%360,e<0?e+360:e}function Ud(e){return Math.max(0,Math.min(1,e||0))}function mg(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 jw=e=>()=>e;function SV(e,t){return function(n){return e+n*t}}function jV(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 NV(e){return(e=+e)==1?eP:function(t,n){return n-t?jV(t,n,e):jw(isNaN(t)?n:t)}}function eP(e,t){var n=t-e;return n?SV(e,n):jw(isNaN(e)?t:e)}const B1=function e(t){var n=NV(t);function r(a,s){var o=n((a=Wy(a)).r,(s=Wy(s)).r),l=n(a.g,s.g),c=n(a.b,s.b),u=eP(a.opacity,s.opacity);return function(d){return a.r=o(d),a.g=l(d),a.b=c(d),a.opacity=u(d),a+""}}return r.gamma=e,r}(1);function EV(e,t){t||(t=[]);var n=e?Math.min(t.length,e.length):0,r=t.slice(),a;return function(s){for(a=0;a<n;++a)r[a]=e[a]*(1-s)+t[a]*s;return r}}function _V(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function AV(e,t){var n=t?t.length:0,r=e?Math.min(n,e.length):0,a=new Array(r),s=new Array(n),o;for(o=0;o<r;++o)a[o]=Al(e[o],t[o]);for(;o<n;++o)s[o]=t[o];return function(l){for(o=0;o<r;++o)s[o]=a[o](l);return s}}function CV(e,t){var n=new Date;return e=+e,t=+t,function(r){return n.setTime(e*(1-r)+t*r),n}}function yh(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}function TV(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]=Al(e[a],t[a]):r[a]=t[a];return function(s){for(a in n)r[a]=n[a](s);return r}}var Hy=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,gg=new RegExp(Hy.source,"g");function OV(e){return function(){return e}}function PV(e){return function(t){return e(t)+""}}function RV(e,t){var n=Hy.lastIndex=gg.lastIndex=0,r,a,s,o=-1,l=[],c=[];for(e=e+"",t=t+"";(r=Hy.exec(e))&&(a=gg.exec(t));)(s=a.index)>n&&(s=t.slice(n,s),l[o]?l[o]+=s:l[++o]=s),(r=r[0])===(a=a[0])?l[o]?l[o]+=a:l[++o]=a:(l[++o]=null,c.push({i:o,x:yh(r,a)})),n=gg.lastIndex;return n<t.length&&(s=t.slice(n),l[o]?l[o]+=s:l[++o]=s),l.length<2?c[0]?PV(c[0].x):OV(t):(t=c.length,function(u){for(var d=0,f;d<t;++d)l[(f=c[d]).i]=f.x(u);return l.join("")})}function Al(e,t){var n=typeof t,r;return t==null||n==="boolean"?jw(t):(n==="number"?yh:n==="string"?(r=gu(t))?(t=r,B1):RV:t instanceof gu?B1:t instanceof Date?CV:_V(t)?EV:Array.isArray(t)?AV:typeof t.valueOf!="function"&&typeof t.toString!="function"||isNaN(t)?TV:yh)(e,t)}function Nw(e,t){return e=+e,t=+t,function(n){return Math.round(e*(1-n)+t*n)}}function MV(e,t){t===void 0&&(t=e,e=Al);for(var n=0,r=t.length-1,a=t[0],s=new Array(r<0?0:r);n<r;)s[n]=e(a,a=t[++n]);return function(o){var l=Math.max(0,Math.min(r-1,Math.floor(o*=r)));return s[l](o-l)}}function IV(e){return function(){return e}}function bh(e){return+e}var z1=[0,1];function Cn(e){return e}function Gy(e,t){return(t-=e=+e)?function(n){return(n-e)/t}:IV(isNaN(t)?NaN:.5)}function $V(e,t){var n;return e>t&&(n=e,e=t,t=n),function(r){return Math.max(e,Math.min(t,r))}}function LV(e,t,n){var r=e[0],a=e[1],s=t[0],o=t[1];return a<r?(r=Gy(a,r),s=n(o,s)):(r=Gy(r,a),s=n(s,o)),function(l){return s(r(l))}}function DV(e,t,n){var r=Math.min(e.length,t.length)-1,a=new Array(r),s=new Array(r),o=-1;for(e[r]<e[0]&&(e=e.slice().reverse(),t=t.slice().reverse());++o<r;)a[o]=Gy(e[o],e[o+1]),s[o]=n(t[o],t[o+1]);return function(l){var c=ed(e,l,1,r)-1;return s[c](a[c](l))}}function nd(e,t){return t.domain(e.domain()).range(e.range()).interpolate(e.interpolate()).clamp(e.clamp()).unknown(e.unknown())}function Qp(){var e=z1,t=z1,n=Al,r,a,s,o=Cn,l,c,u;function d(){var h=Math.min(e.length,t.length);return o!==Cn&&(o=$V(e[0],e[h-1])),l=h>2?DV:LV,c=u=null,f}function f(h){return h==null||isNaN(h=+h)?s:(c||(c=l(e.map(r),t,n)))(r(o(h)))}return f.invert=function(h){return o(a((u||(u=l(t,e.map(r),yh)))(h)))},f.domain=function(h){return arguments.length?(e=Array.from(h,bh),d()):e.slice()},f.range=function(h){return arguments.length?(t=Array.from(h),d()):t.slice()},f.rangeRound=function(h){return t=Array.from(h),n=Nw,d()},f.clamp=function(h){return arguments.length?(o=h?!0:Cn,d()):o!==Cn},f.interpolate=function(h){return arguments.length?(n=h,d()):n},f.unknown=function(h){return arguments.length?(s=h,f):s},function(h,p){return r=h,a=p,d()}}function Ew(){return Qp()(Cn,Cn)}function BV(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)}function xh(e,t){if(!isFinite(e)||e===0)return null;var n=(e=t?e.toExponential(t-1):e.toExponential()).indexOf("e"),r=e.slice(0,n);return[r.length>1?r[0]+r.slice(2):r,+e.slice(n+1)]}function Qo(e){return e=xh(Math.abs(e)),e?e[1]:NaN}function zV(e,t){return function(n,r){for(var a=n.length,s=[],o=0,l=e[0],c=0;a>0&&l>0&&(c+l+1>r&&(l=Math.max(1,r-c)),s.push(n.substring(a-=l,a+l)),!((c+=l+1)>r));)l=e[o=(o+1)%e.length];return s.reverse().join(t)}}function FV(e){return function(t){return t.replace(/[0-9]/g,function(n){return e[+n]})}}var UV=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function vu(e){if(!(t=UV.exec(e)))throw new Error("invalid format: "+e);var t;return new _w({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}vu.prototype=_w.prototype;function _w(e){this.fill=e.fill===void 0?" ":e.fill+"",this.align=e.align===void 0?">":e.align+"",this.sign=e.sign===void 0?"-":e.sign+"",this.symbol=e.symbol===void 0?"":e.symbol+"",this.zero=!!e.zero,this.width=e.width===void 0?void 0:+e.width,this.comma=!!e.comma,this.precision=e.precision===void 0?void 0:+e.precision,this.trim=!!e.trim,this.type=e.type===void 0?"":e.type+""}_w.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function WV(e){e:for(var t=e.length,n=1,r=-1,a;n<t;++n)switch(e[n]){case".":r=a=n;break;case"0":r===0&&(r=n),a=n;break;default:if(!+e[n])break e;r>0&&(r=0);break}return r>0?e.slice(0,r)+e.slice(a+1):e}var wh;function HV(e,t){var n=xh(e,t);if(!n)return wh=void 0,e.toPrecision(t);var r=n[0],a=n[1],s=a-(wh=Math.max(-8,Math.min(8,Math.floor(a/3)))*3)+1,o=r.length;return s===o?r:s>o?r+new Array(s-o+1).join("0"):s>0?r.slice(0,s)+"."+r.slice(s):"0."+new Array(1-s).join("0")+xh(e,Math.max(0,t+s-1))[0]}function F1(e,t){var n=xh(e,t);if(!n)return e+"";var r=n[0],a=n[1];return a<0?"0."+new Array(-a).join("0")+r:r.length>a+1?r.slice(0,a+1)+"."+r.slice(a+1):r+new Array(a-r.length+2).join("0")}const U1={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:BV,e:(e,t)=>e.toExponential(t),f:(e,t)=>e.toFixed(t),g:(e,t)=>e.toPrecision(t),o:e=>Math.round(e).toString(8),p:(e,t)=>F1(e*100,t),r:F1,s:HV,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function W1(e){return e}var H1=Array.prototype.map,G1=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function GV(e){var t=e.grouping===void 0||e.thousands===void 0?W1:zV(H1.call(e.grouping,Number),e.thousands+""),n=e.currency===void 0?"":e.currency[0]+"",r=e.currency===void 0?"":e.currency[1]+"",a=e.decimal===void 0?".":e.decimal+"",s=e.numerals===void 0?W1:FV(H1.call(e.numerals,String)),o=e.percent===void 0?"%":e.percent+"",l=e.minus===void 0?"−":e.minus+"",c=e.nan===void 0?"NaN":e.nan+"";function u(f,h){f=vu(f);var p=f.fill,g=f.align,m=f.sign,y=f.symbol,v=f.zero,k=f.width,x=f.comma,j=f.precision,w=f.trim,b=f.type;b==="n"?(x=!0,b="g"):U1[b]||(j===void 0&&(j=12),w=!0,b="g"),(v||p==="0"&&g==="=")&&(v=!0,p="0",g="=");var N=(h&&h.prefix!==void 0?h.prefix:"")+(y==="$"?n:y==="#"&&/[boxX]/.test(b)?"0"+b.toLowerCase():""),E=(y==="$"?r:/[%p]/.test(b)?o:"")+(h&&h.suffix!==void 0?h.suffix:""),O=U1[b],C=/[defgprs%]/.test(b);j=j===void 0?6:/[gprs]/.test(b)?Math.max(1,Math.min(21,j)):Math.max(0,Math.min(20,j));function P($){var B=N,M=E,F,L,W;if(b==="c")M=O($)+M,$="";else{$=+$;var A=$<0||1/$<0;if($=isNaN($)?c:O(Math.abs($),j),w&&($=WV($)),A&&+$==0&&m!=="+"&&(A=!1),B=(A?m==="("?m:l:m==="-"||m==="("?"":m)+B,M=(b==="s"&&!isNaN($)&&wh!==void 0?G1[8+wh/3]:"")+M+(A&&m==="("?")":""),C){for(F=-1,L=$.length;++F<L;)if(W=$.charCodeAt(F),48>W||W>57){M=(W===46?a+$.slice(F+1):$.slice(F))+M,$=$.slice(0,F);break}}}x&&!v&&($=t($,1/0));var z=B.length+$.length+M.length,T=z<k?new Array(k-z+1).join(p):"";switch(x&&v&&($=t(T+$,T.length?k-M.length:1/0),T=""),g){case"<":$=B+$+M+T;break;case"=":$=B+T+$+M;break;case"^":$=T.slice(0,z=T.length>>1)+B+$+M+T.slice(z);break;default:$=T+B+$+M;break}return s($)}return P.toString=function(){return f+""},P}function d(f,h){var p=Math.max(-8,Math.min(8,Math.floor(Qo(h)/3)))*3,g=Math.pow(10,-p),m=u((f=vu(f),f.type="f",f),{suffix:G1[8+p/3]});return function(y){return m(g*y)}}return{format:u,formatPrefix:d}}var Wd,Aw,tP;qV({thousands:",",grouping:[3],currency:["$",""]});function qV(e){return Wd=GV(e),Aw=Wd.format,tP=Wd.formatPrefix,Wd}function KV(e){return Math.max(0,-Qo(Math.abs(e)))}function VV(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(Qo(t)/3)))*3-Qo(Math.abs(e)))}function YV(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,Qo(t)-Qo(e))+1}function nP(e,t,n,r){var a=Fy(e,t,n),s;switch(r=vu(r??",f"),r.type){case"s":{var o=Math.max(Math.abs(e),Math.abs(t));return r.precision==null&&!isNaN(s=VV(a,o))&&(r.precision=s),tP(r,o)}case"":case"e":case"g":case"p":case"r":{r.precision==null&&!isNaN(s=YV(a,Math.max(Math.abs(e),Math.abs(t))))&&(r.precision=s-(r.type==="e"));break}case"f":case"%":{r.precision==null&&!isNaN(s=KV(a))&&(r.precision=s-(r.type==="%")*2);break}}return Aw(r)}function Oi(e){var t=e.domain;return e.ticks=function(n){var r=t();return By(r[0],r[r.length-1],n??10)},e.tickFormat=function(n,r){var a=t();return nP(a[0],a[a.length-1],n??10,r)},e.nice=function(n){n==null&&(n=10);var r=t(),a=0,s=r.length-1,o=r[a],l=r[s],c,u,d=10;for(l<o&&(u=o,o=l,l=u,u=a,a=s,s=u);d-- >0;){if(u=zy(o,l,n),u===c)return r[a]=o,r[s]=l,t(r);if(u>0)o=Math.floor(o/u)*u,l=Math.ceil(l/u)*u;else if(u<0)o=Math.ceil(o*u)/u,l=Math.floor(l*u)/u;else break;c=u}return e},e}function kh(){var e=Ew();return e.copy=function(){return nd(e,kh())},jr.apply(e,arguments),Oi(e)}function rP(e){var t;function n(r){return r==null||isNaN(r=+r)?t:r}return n.invert=n,n.domain=n.range=function(r){return arguments.length?(e=Array.from(r,bh),n):e.slice()},n.unknown=function(r){return arguments.length?(t=r,n):t},n.copy=function(){return rP(e).unknown(t)},e=arguments.length?Array.from(e,bh):[0,1],Oi(n)}function aP(e,t){e=e.slice();var n=0,r=e.length-1,a=e[n],s=e[r],o;return s<a&&(o=n,n=r,r=o,o=a,a=s,s=o),e[n]=t.floor(a),e[r]=t.ceil(s),e}function q1(e){return Math.log(e)}function K1(e){return Math.exp(e)}function XV(e){return-Math.log(-e)}function QV(e){return-Math.exp(-e)}function ZV(e){return isFinite(e)?+("1e"+e):e<0?0:e}function JV(e){return e===10?ZV:e===Math.E?Math.exp:t=>Math.pow(e,t)}function e7(e){return e===Math.E?Math.log:e===10&&Math.log10||e===2&&Math.log2||(e=Math.log(e),t=>Math.log(t)/e)}function V1(e){return(t,n)=>-e(-t,n)}function Cw(e){const t=e(q1,K1),n=t.domain;let r=10,a,s;function o(){return a=e7(r),s=JV(r),n()[0]<0?(a=V1(a),s=V1(s),e(XV,QV)):e(q1,K1),t}return t.base=function(l){return arguments.length?(r=+l,o()):r},t.domain=function(l){return arguments.length?(n(l),o()):n()},t.ticks=l=>{const c=n();let u=c[0],d=c[c.length-1];const f=d<u;f&&([u,d]=[d,u]);let h=a(u),p=a(d),g,m;const y=l==null?10:+l;let v=[];if(!(r%1)&&p-h<y){if(h=Math.floor(h),p=Math.ceil(p),u>0){for(;h<=p;++h)for(g=1;g<r;++g)if(m=h<0?g/s(-h):g*s(h),!(m<u)){if(m>d)break;v.push(m)}}else for(;h<=p;++h)for(g=r-1;g>=1;--g)if(m=h>0?g/s(-h):g*s(h),!(m<u)){if(m>d)break;v.push(m)}v.length*2<y&&(v=By(u,d,y))}else v=By(h,p,Math.min(p-h,y)).map(s);return f?v.reverse():v},t.tickFormat=(l,c)=>{if(l==null&&(l=10),c==null&&(c=r===10?"s":","),typeof c!="function"&&(!(r%1)&&(c=vu(c)).precision==null&&(c.trim=!0),c=Aw(c)),l===1/0)return c;const u=Math.max(1,r*l/t.ticks().length);return d=>{let f=d/s(Math.round(a(d)));return f*r<r-.5&&(f*=r),f<=u?c(d):""}},t.nice=()=>n(aP(n(),{floor:l=>s(Math.floor(a(l))),ceil:l=>s(Math.ceil(a(l)))})),t}function iP(){const e=Cw(Qp()).domain([1,10]);return e.copy=()=>nd(e,iP()).base(e.base()),jr.apply(e,arguments),e}function Y1(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function X1(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function Tw(e){var t=1,n=e(Y1(t),X1(t));return n.constant=function(r){return arguments.length?e(Y1(t=+r),X1(t)):t},Oi(n)}function sP(){var e=Tw(Qp());return e.copy=function(){return nd(e,sP()).constant(e.constant())},jr.apply(e,arguments)}function Q1(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function t7(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function n7(e){return e<0?-e*e:e*e}function Ow(e){var t=e(Cn,Cn),n=1;function r(){return n===1?e(Cn,Cn):n===.5?e(t7,n7):e(Q1(n),Q1(1/n))}return t.exponent=function(a){return arguments.length?(n=+a,r()):n},Oi(t)}function Pw(){var e=Ow(Qp());return e.copy=function(){return nd(e,Pw()).exponent(e.exponent())},jr.apply(e,arguments),e}function r7(){return Pw.apply(null,arguments).exponent(.5)}function Z1(e){return Math.sign(e)*e*e}function a7(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}function oP(){var e=Ew(),t=[0,1],n=!1,r;function a(s){var o=a7(e(s));return isNaN(o)?r:n?Math.round(o):o}return a.invert=function(s){return e.invert(Z1(s))},a.domain=function(s){return arguments.length?(e.domain(s),a):e.domain()},a.range=function(s){return arguments.length?(e.range((t=Array.from(s,bh)).map(Z1)),a):t.slice()},a.rangeRound=function(s){return a.range(s).round(!0)},a.round=function(s){return arguments.length?(n=!!s,a):n},a.clamp=function(s){return arguments.length?(e.clamp(s),a):e.clamp()},a.unknown=function(s){return arguments.length?(r=s,a):r},a.copy=function(){return oP(e.domain(),t).round(n).clamp(e.clamp()).unknown(r)},jr.apply(a,arguments),Oi(a)}function lP(){var e=[],t=[],n=[],r;function a(){var o=0,l=Math.max(1,t.length);for(n=new Array(l-1);++o<l;)n[o-1]=cV(e,o/l);return s}function s(o){return o==null||isNaN(o=+o)?r:t[ed(n,o)]}return s.invertExtent=function(o){var l=t.indexOf(o);return l<0?[NaN,NaN]:[l>0?n[l-1]:e[0],l<n.length?n[l]:e[e.length-1]]},s.domain=function(o){if(!arguments.length)return e.slice();e=[];for(let l of o)l!=null&&!isNaN(l=+l)&&e.push(l);return e.sort(bi),a()},s.range=function(o){return arguments.length?(t=Array.from(o),a()):t.slice()},s.unknown=function(o){return arguments.length?(r=o,s):r},s.quantiles=function(){return n.slice()},s.copy=function(){return lP().domain(e).range(t).unknown(r)},jr.apply(s,arguments)}function cP(){var e=0,t=1,n=1,r=[.5],a=[0,1],s;function o(c){return c!=null&&c<=c?a[ed(r,c,0,n)]:s}function l(){var c=-1;for(r=new Array(n);++c<n;)r[c]=((c+1)*t-(c-n)*e)/(n+1);return o}return o.domain=function(c){return arguments.length?([e,t]=c,e=+e,t=+t,l()):[e,t]},o.range=function(c){return arguments.length?(n=(a=Array.from(c)).length-1,l()):a.slice()},o.invertExtent=function(c){var u=a.indexOf(c);return u<0?[NaN,NaN]:u<1?[e,r[0]]:u>=n?[r[n-1],t]:[r[u-1],r[u]]},o.unknown=function(c){return arguments.length&&(s=c),o},o.thresholds=function(){return r.slice()},o.copy=function(){return cP().domain([e,t]).range(a).unknown(s)},jr.apply(Oi(o),arguments)}function uP(){var e=[.5],t=[0,1],n,r=1;function a(s){return s!=null&&s<=s?t[ed(e,s,0,r)]:n}return a.domain=function(s){return arguments.length?(e=Array.from(s),r=Math.min(e.length,t.length-1),a):e.slice()},a.range=function(s){return arguments.length?(t=Array.from(s),r=Math.min(e.length,t.length-1),a):t.slice()},a.invertExtent=function(s){var o=t.indexOf(s);return[e[o-1],e[o]]},a.unknown=function(s){return arguments.length?(n=s,a):n},a.copy=function(){return uP().domain(e).range(t).unknown(n)},jr.apply(a,arguments)}const vg=new Date,yg=new Date;function qt(e,t,n,r){function a(s){return e(s=arguments.length===0?new Date:new Date(+s)),s}return a.floor=s=>(e(s=new Date(+s)),s),a.ceil=s=>(e(s=new Date(s-1)),t(s,1),e(s),s),a.round=s=>{const o=a(s),l=a.ceil(s);return s-o<l-s?o:l},a.offset=(s,o)=>(t(s=new Date(+s),o==null?1:Math.floor(o)),s),a.range=(s,o,l)=>{const c=[];if(s=a.ceil(s),l=l==null?1:Math.floor(l),!(s<o)||!(l>0))return c;let u;do c.push(u=new Date(+s)),t(s,l),e(s);while(u<s&&s<o);return c},a.filter=s=>qt(o=>{if(o>=o)for(;e(o),!s(o);)o.setTime(o-1)},(o,l)=>{if(o>=o)if(l<0)for(;++l<=0;)for(;t(o,-1),!s(o););else for(;--l>=0;)for(;t(o,1),!s(o););}),n&&(a.count=(s,o)=>(vg.setTime(+s),yg.setTime(+o),e(vg),e(yg),Math.floor(n(vg,yg))),a.every=s=>(s=Math.floor(s),!isFinite(s)||!(s>0)?null:s>1?a.filter(r?o=>r(o)%s===0:o=>a.count(0,o)%s===0):a)),a}const Sh=qt(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);Sh.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?qt(t=>{t.setTime(Math.floor(t/e)*e)},(t,n)=>{t.setTime(+t+n*e)},(t,n)=>(n-t)/e):Sh);Sh.range;const Sa=1e3,vr=Sa*60,ja=vr*60,Ma=ja*24,Rw=Ma*7,J1=Ma*30,bg=Ma*365,us=qt(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*Sa)},(e,t)=>(t-e)/Sa,e=>e.getUTCSeconds());us.range;const Mw=qt(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*Sa)},(e,t)=>{e.setTime(+e+t*vr)},(e,t)=>(t-e)/vr,e=>e.getMinutes());Mw.range;const Iw=qt(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*vr)},(e,t)=>(t-e)/vr,e=>e.getUTCMinutes());Iw.range;const $w=qt(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*Sa-e.getMinutes()*vr)},(e,t)=>{e.setTime(+e+t*ja)},(e,t)=>(t-e)/ja,e=>e.getHours());$w.range;const Lw=qt(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*ja)},(e,t)=>(t-e)/ja,e=>e.getUTCHours());Lw.range;const rd=qt(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*vr)/Ma,e=>e.getDate()-1);rd.range;const Zp=qt(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/Ma,e=>e.getUTCDate()-1);Zp.range;const dP=qt(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/Ma,e=>Math.floor(e/Ma));dP.range;function Is(e){return qt(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(t,n)=>{t.setDate(t.getDate()+n*7)},(t,n)=>(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*vr)/Rw)}const Jp=Is(0),jh=Is(1),i7=Is(2),s7=Is(3),Zo=Is(4),o7=Is(5),l7=Is(6);Jp.range;jh.range;i7.range;s7.range;Zo.range;o7.range;l7.range;function $s(e){return qt(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCDate(t.getUTCDate()+n*7)},(t,n)=>(n-t)/Rw)}const em=$s(0),Nh=$s(1),c7=$s(2),u7=$s(3),Jo=$s(4),d7=$s(5),f7=$s(6);em.range;Nh.range;c7.range;u7.range;Jo.range;d7.range;f7.range;const Dw=qt(e=>{e.setDate(1),e.setHours(0,0,0,0)},(e,t)=>{e.setMonth(e.getMonth()+t)},(e,t)=>t.getMonth()-e.getMonth()+(t.getFullYear()-e.getFullYear())*12,e=>e.getMonth());Dw.range;const Bw=qt(e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)},(e,t)=>t.getUTCMonth()-e.getUTCMonth()+(t.getUTCFullYear()-e.getUTCFullYear())*12,e=>e.getUTCMonth());Bw.range;const Ia=qt(e=>{e.setMonth(0,1),e.setHours(0,0,0,0)},(e,t)=>{e.setFullYear(e.getFullYear()+t)},(e,t)=>t.getFullYear()-e.getFullYear(),e=>e.getFullYear());Ia.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:qt(t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)},(t,n)=>{t.setFullYear(t.getFullYear()+n*e)});Ia.range;const $a=qt(e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)},(e,t)=>t.getUTCFullYear()-e.getUTCFullYear(),e=>e.getUTCFullYear());$a.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:qt(t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCFullYear(t.getUTCFullYear()+n*e)});$a.range;function fP(e,t,n,r,a,s){const o=[[us,1,Sa],[us,5,5*Sa],[us,15,15*Sa],[us,30,30*Sa],[s,1,vr],[s,5,5*vr],[s,15,15*vr],[s,30,30*vr],[a,1,ja],[a,3,3*ja],[a,6,6*ja],[a,12,12*ja],[r,1,Ma],[r,2,2*Ma],[n,1,Rw],[t,1,J1],[t,3,3*J1],[e,1,bg]];function l(u,d,f){const h=d<u;h&&([u,d]=[d,u]);const p=f&&typeof f.range=="function"?f:c(u,d,f),g=p?p.range(u,+d+1):[];return h?g.reverse():g}function c(u,d,f){const h=Math.abs(d-u)/f,p=ww(([,,y])=>y).right(o,h);if(p===o.length)return e.every(Fy(u/bg,d/bg,f));if(p===0)return Sh.every(Math.max(Fy(u,d,f),1));const[g,m]=o[h/o[p-1][2]<o[p][2]/h?p-1:p];return g.every(m)}return[l,c]}const[h7,p7]=fP($a,Bw,em,dP,Lw,Iw),[m7,g7]=fP(Ia,Dw,Jp,rd,$w,Mw);function xg(e){if(0<=e.y&&e.y<100){var t=new Date(-1,e.m,e.d,e.H,e.M,e.S,e.L);return t.setFullYear(e.y),t}return new Date(e.y,e.m,e.d,e.H,e.M,e.S,e.L)}function wg(e){if(0<=e.y&&e.y<100){var t=new Date(Date.UTC(-1,e.m,e.d,e.H,e.M,e.S,e.L));return t.setUTCFullYear(e.y),t}return new Date(Date.UTC(e.y,e.m,e.d,e.H,e.M,e.S,e.L))}function ac(e,t,n){return{y:e,m:t,d:n,H:0,M:0,S:0,L:0}}function v7(e){var t=e.dateTime,n=e.date,r=e.time,a=e.periods,s=e.days,o=e.shortDays,l=e.months,c=e.shortMonths,u=ic(a),d=sc(a),f=ic(s),h=sc(s),p=ic(o),g=sc(o),m=ic(l),y=sc(l),v=ic(c),k=sc(c),x={a:W,A,b:z,B:T,c:null,d:ij,e:ij,f:z7,g:X7,G:Z7,H:L7,I:D7,j:B7,L:hP,m:F7,M:U7,p:K,q:D,Q:lj,s:cj,S:W7,u:H7,U:G7,V:q7,w:K7,W:V7,x:null,X:null,y:Y7,Y:Q7,Z:J7,"%":oj},j={a:I,A:ce,b:ge,B:ve,c:null,d:sj,e:sj,f:rY,g:hY,G:mY,H:eY,I:tY,j:nY,L:mP,m:aY,M:iY,p:Ce,q:Q,Q:lj,s:cj,S:sY,u:oY,U:lY,V:cY,w:uY,W:dY,x:null,X:null,y:fY,Y:pY,Z:gY,"%":oj},w={a:C,A:P,b:$,B,c:M,d:rj,e:rj,f:R7,g:nj,G:tj,H:aj,I:aj,j:C7,L:P7,m:A7,M:T7,p:O,q:_7,Q:I7,s:$7,S:O7,u:k7,U:S7,V:j7,w:w7,W:N7,x:F,X:L,y:nj,Y:tj,Z:E7,"%":M7};x.x=b(n,x),x.X=b(r,x),x.c=b(t,x),j.x=b(n,j),j.X=b(r,j),j.c=b(t,j);function b(X,ie){return function(fe){var J=[],ye=-1,je=0,_e=X.length,be,$e,he;for(fe instanceof Date||(fe=new Date(+fe));++ye<_e;)X.charCodeAt(ye)===37&&(J.push(X.slice(je,ye)),($e=ej[be=X.charAt(++ye)])!=null?be=X.charAt(++ye):$e=be==="e"?" ":"0",(he=ie[be])&&(be=he(fe,$e)),J.push(be),je=ye+1);return J.push(X.slice(je,ye)),J.join("")}}function N(X,ie){return function(fe){var J=ac(1900,void 0,1),ye=E(J,X,fe+="",0),je,_e;if(ye!=fe.length)return null;if("Q"in J)return new Date(J.Q);if("s"in J)return new Date(J.s*1e3+("L"in J?J.L:0));if(ie&&!("Z"in J)&&(J.Z=0),"p"in J&&(J.H=J.H%12+J.p*12),J.m===void 0&&(J.m="q"in J?J.q:0),"V"in J){if(J.V<1||J.V>53)return null;"w"in J||(J.w=1),"Z"in J?(je=wg(ac(J.y,0,1)),_e=je.getUTCDay(),je=_e>4||_e===0?Nh.ceil(je):Nh(je),je=Zp.offset(je,(J.V-1)*7),J.y=je.getUTCFullYear(),J.m=je.getUTCMonth(),J.d=je.getUTCDate()+(J.w+6)%7):(je=xg(ac(J.y,0,1)),_e=je.getDay(),je=_e>4||_e===0?jh.ceil(je):jh(je),je=rd.offset(je,(J.V-1)*7),J.y=je.getFullYear(),J.m=je.getMonth(),J.d=je.getDate()+(J.w+6)%7)}else("W"in J||"U"in J)&&("w"in J||(J.w="u"in J?J.u%7:"W"in J?1:0),_e="Z"in J?wg(ac(J.y,0,1)).getUTCDay():xg(ac(J.y,0,1)).getDay(),J.m=0,J.d="W"in J?(J.w+6)%7+J.W*7-(_e+5)%7:J.w+J.U*7-(_e+6)%7);return"Z"in J?(J.H+=J.Z/100|0,J.M+=J.Z%100,wg(J)):xg(J)}}function E(X,ie,fe,J){for(var ye=0,je=ie.length,_e=fe.length,be,$e;ye<je;){if(J>=_e)return-1;if(be=ie.charCodeAt(ye++),be===37){if(be=ie.charAt(ye++),$e=w[be in ej?ie.charAt(ye++):be],!$e||(J=$e(X,fe,J))<0)return-1}else if(be!=fe.charCodeAt(J++))return-1}return J}function O(X,ie,fe){var J=u.exec(ie.slice(fe));return J?(X.p=d.get(J[0].toLowerCase()),fe+J[0].length):-1}function C(X,ie,fe){var J=p.exec(ie.slice(fe));return J?(X.w=g.get(J[0].toLowerCase()),fe+J[0].length):-1}function P(X,ie,fe){var J=f.exec(ie.slice(fe));return J?(X.w=h.get(J[0].toLowerCase()),fe+J[0].length):-1}function $(X,ie,fe){var J=v.exec(ie.slice(fe));return J?(X.m=k.get(J[0].toLowerCase()),fe+J[0].length):-1}function B(X,ie,fe){var J=m.exec(ie.slice(fe));return J?(X.m=y.get(J[0].toLowerCase()),fe+J[0].length):-1}function M(X,ie,fe){return E(X,t,ie,fe)}function F(X,ie,fe){return E(X,n,ie,fe)}function L(X,ie,fe){return E(X,r,ie,fe)}function W(X){return o[X.getDay()]}function A(X){return s[X.getDay()]}function z(X){return c[X.getMonth()]}function T(X){return l[X.getMonth()]}function K(X){return a[+(X.getHours()>=12)]}function D(X){return 1+~~(X.getMonth()/3)}function I(X){return o[X.getUTCDay()]}function ce(X){return s[X.getUTCDay()]}function ge(X){return c[X.getUTCMonth()]}function ve(X){return l[X.getUTCMonth()]}function Ce(X){return a[+(X.getUTCHours()>=12)]}function Q(X){return 1+~~(X.getUTCMonth()/3)}return{format:function(X){var ie=b(X+="",x);return ie.toString=function(){return X},ie},parse:function(X){var ie=N(X+="",!1);return ie.toString=function(){return X},ie},utcFormat:function(X){var ie=b(X+="",j);return ie.toString=function(){return X},ie},utcParse:function(X){var ie=N(X+="",!0);return ie.toString=function(){return X},ie}}}var ej={"-":"",_:" ",0:"0"},rn=/^\s*\d+/,y7=/^%/,b7=/[\\^$*+?|[\]().{}]/g;function Ke(e,t,n){var r=e<0?"-":"",a=(r?-e:e)+"",s=a.length;return r+(s<n?new Array(n-s+1).join(t)+a:a)}function x7(e){return e.replace(b7,"\\$&")}function ic(e){return new RegExp("^(?:"+e.map(x7).join("|")+")","i")}function sc(e){return new Map(e.map((t,n)=>[t.toLowerCase(),n]))}function w7(e,t,n){var r=rn.exec(t.slice(n,n+1));return r?(e.w=+r[0],n+r[0].length):-1}function k7(e,t,n){var r=rn.exec(t.slice(n,n+1));return r?(e.u=+r[0],n+r[0].length):-1}function S7(e,t,n){var r=rn.exec(t.slice(n,n+2));return r?(e.U=+r[0],n+r[0].length):-1}function j7(e,t,n){var r=rn.exec(t.slice(n,n+2));return r?(e.V=+r[0],n+r[0].length):-1}function N7(e,t,n){var r=rn.exec(t.slice(n,n+2));return r?(e.W=+r[0],n+r[0].length):-1}function tj(e,t,n){var r=rn.exec(t.slice(n,n+4));return r?(e.y=+r[0],n+r[0].length):-1}function nj(e,t,n){var r=rn.exec(t.slice(n,n+2));return r?(e.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function E7(e,t,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(n,n+6));return r?(e.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function _7(e,t,n){var r=rn.exec(t.slice(n,n+1));return r?(e.q=r[0]*3-3,n+r[0].length):-1}function A7(e,t,n){var r=rn.exec(t.slice(n,n+2));return r?(e.m=r[0]-1,n+r[0].length):-1}function rj(e,t,n){var r=rn.exec(t.slice(n,n+2));return r?(e.d=+r[0],n+r[0].length):-1}function C7(e,t,n){var r=rn.exec(t.slice(n,n+3));return r?(e.m=0,e.d=+r[0],n+r[0].length):-1}function aj(e,t,n){var r=rn.exec(t.slice(n,n+2));return r?(e.H=+r[0],n+r[0].length):-1}function T7(e,t,n){var r=rn.exec(t.slice(n,n+2));return r?(e.M=+r[0],n+r[0].length):-1}function O7(e,t,n){var r=rn.exec(t.slice(n,n+2));return r?(e.S=+r[0],n+r[0].length):-1}function P7(e,t,n){var r=rn.exec(t.slice(n,n+3));return r?(e.L=+r[0],n+r[0].length):-1}function R7(e,t,n){var r=rn.exec(t.slice(n,n+6));return r?(e.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function M7(e,t,n){var r=y7.exec(t.slice(n,n+1));return r?n+r[0].length:-1}function I7(e,t,n){var r=rn.exec(t.slice(n));return r?(e.Q=+r[0],n+r[0].length):-1}function $7(e,t,n){var r=rn.exec(t.slice(n));return r?(e.s=+r[0],n+r[0].length):-1}function ij(e,t){return Ke(e.getDate(),t,2)}function L7(e,t){return Ke(e.getHours(),t,2)}function D7(e,t){return Ke(e.getHours()%12||12,t,2)}function B7(e,t){return Ke(1+rd.count(Ia(e),e),t,3)}function hP(e,t){return Ke(e.getMilliseconds(),t,3)}function z7(e,t){return hP(e,t)+"000"}function F7(e,t){return Ke(e.getMonth()+1,t,2)}function U7(e,t){return Ke(e.getMinutes(),t,2)}function W7(e,t){return Ke(e.getSeconds(),t,2)}function H7(e){var t=e.getDay();return t===0?7:t}function G7(e,t){return Ke(Jp.count(Ia(e)-1,e),t,2)}function pP(e){var t=e.getDay();return t>=4||t===0?Zo(e):Zo.ceil(e)}function q7(e,t){return e=pP(e),Ke(Zo.count(Ia(e),e)+(Ia(e).getDay()===4),t,2)}function K7(e){return e.getDay()}function V7(e,t){return Ke(jh.count(Ia(e)-1,e),t,2)}function Y7(e,t){return Ke(e.getFullYear()%100,t,2)}function X7(e,t){return e=pP(e),Ke(e.getFullYear()%100,t,2)}function Q7(e,t){return Ke(e.getFullYear()%1e4,t,4)}function Z7(e,t){var n=e.getDay();return e=n>=4||n===0?Zo(e):Zo.ceil(e),Ke(e.getFullYear()%1e4,t,4)}function J7(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+Ke(t/60|0,"0",2)+Ke(t%60,"0",2)}function sj(e,t){return Ke(e.getUTCDate(),t,2)}function eY(e,t){return Ke(e.getUTCHours(),t,2)}function tY(e,t){return Ke(e.getUTCHours()%12||12,t,2)}function nY(e,t){return Ke(1+Zp.count($a(e),e),t,3)}function mP(e,t){return Ke(e.getUTCMilliseconds(),t,3)}function rY(e,t){return mP(e,t)+"000"}function aY(e,t){return Ke(e.getUTCMonth()+1,t,2)}function iY(e,t){return Ke(e.getUTCMinutes(),t,2)}function sY(e,t){return Ke(e.getUTCSeconds(),t,2)}function oY(e){var t=e.getUTCDay();return t===0?7:t}function lY(e,t){return Ke(em.count($a(e)-1,e),t,2)}function gP(e){var t=e.getUTCDay();return t>=4||t===0?Jo(e):Jo.ceil(e)}function cY(e,t){return e=gP(e),Ke(Jo.count($a(e),e)+($a(e).getUTCDay()===4),t,2)}function uY(e){return e.getUTCDay()}function dY(e,t){return Ke(Nh.count($a(e)-1,e),t,2)}function fY(e,t){return Ke(e.getUTCFullYear()%100,t,2)}function hY(e,t){return e=gP(e),Ke(e.getUTCFullYear()%100,t,2)}function pY(e,t){return Ke(e.getUTCFullYear()%1e4,t,4)}function mY(e,t){var n=e.getUTCDay();return e=n>=4||n===0?Jo(e):Jo.ceil(e),Ke(e.getUTCFullYear()%1e4,t,4)}function gY(){return"+0000"}function oj(){return"%"}function lj(e){return+e}function cj(e){return Math.floor(+e/1e3)}var to,vP,yP;vY({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function vY(e){return to=v7(e),vP=to.format,to.parse,yP=to.utcFormat,to.utcParse,to}function yY(e){return new Date(e)}function bY(e){return e instanceof Date?+e:+new Date(+e)}function zw(e,t,n,r,a,s,o,l,c,u){var d=Ew(),f=d.invert,h=d.domain,p=u(".%L"),g=u(":%S"),m=u("%I:%M"),y=u("%I %p"),v=u("%a %d"),k=u("%b %d"),x=u("%B"),j=u("%Y");function w(b){return(c(b)<b?p:l(b)<b?g:o(b)<b?m:s(b)<b?y:r(b)<b?a(b)<b?v:k:n(b)<b?x:j)(b)}return d.invert=function(b){return new Date(f(b))},d.domain=function(b){return arguments.length?h(Array.from(b,bY)):h().map(yY)},d.ticks=function(b){var N=h();return e(N[0],N[N.length-1],b??10)},d.tickFormat=function(b,N){return N==null?w:u(N)},d.nice=function(b){var N=h();return(!b||typeof b.range!="function")&&(b=t(N[0],N[N.length-1],b??10)),b?h(aP(N,b)):d},d.copy=function(){return nd(d,zw(e,t,n,r,a,s,o,l,c,u))},d}function xY(){return jr.apply(zw(m7,g7,Ia,Dw,Jp,rd,$w,Mw,us,vP).domain([new Date(2e3,0,1),new Date(2e3,0,2)]),arguments)}function wY(){return jr.apply(zw(h7,p7,$a,Bw,em,Zp,Lw,Iw,us,yP).domain([Date.UTC(2e3,0,1),Date.UTC(2e3,0,2)]),arguments)}function tm(){var e=0,t=1,n,r,a,s,o=Cn,l=!1,c;function u(f){return f==null||isNaN(f=+f)?c:o(a===0?.5:(f=(s(f)-n)*a,l?Math.max(0,Math.min(1,f)):f))}u.domain=function(f){return arguments.length?([e,t]=f,n=s(e=+e),r=s(t=+t),a=n===r?0:1/(r-n),u):[e,t]},u.clamp=function(f){return arguments.length?(l=!!f,u):l},u.interpolator=function(f){return arguments.length?(o=f,u):o};function d(f){return function(h){var p,g;return arguments.length?([p,g]=h,o=f(p,g),u):[o(0),o(1)]}}return u.range=d(Al),u.rangeRound=d(Nw),u.unknown=function(f){return arguments.length?(c=f,u):c},function(f){return s=f,n=f(e),r=f(t),a=n===r?0:1/(r-n),u}}function Pi(e,t){return t.domain(e.domain()).interpolator(e.interpolator()).clamp(e.clamp()).unknown(e.unknown())}function bP(){var e=Oi(tm()(Cn));return e.copy=function(){return Pi(e,bP())},Fa.apply(e,arguments)}function xP(){var e=Cw(tm()).domain([1,10]);return e.copy=function(){return Pi(e,xP()).base(e.base())},Fa.apply(e,arguments)}function wP(){var e=Tw(tm());return e.copy=function(){return Pi(e,wP()).constant(e.constant())},Fa.apply(e,arguments)}function Fw(){var e=Ow(tm());return e.copy=function(){return Pi(e,Fw()).exponent(e.exponent())},Fa.apply(e,arguments)}function kY(){return Fw.apply(null,arguments).exponent(.5)}function kP(){var e=[],t=Cn;function n(r){if(r!=null&&!isNaN(r=+r))return t((ed(e,r,1)-1)/(e.length-1))}return n.domain=function(r){if(!arguments.length)return e.slice();e=[];for(let a of r)a!=null&&!isNaN(a=+a)&&e.push(a);return e.sort(bi),n},n.interpolator=function(r){return arguments.length?(t=r,n):t},n.range=function(){return e.map((r,a)=>t(a/(e.length-1)))},n.quantiles=function(r){return Array.from({length:r+1},(a,s)=>lV(e,s/r))},n.copy=function(){return kP(t).domain(e)},Fa.apply(n,arguments)}function nm(){var e=0,t=.5,n=1,r=1,a,s,o,l,c,u=Cn,d,f=!1,h;function p(m){return isNaN(m=+m)?h:(m=.5+((m=+d(m))-s)*(r*m<r*s?l:c),u(f?Math.max(0,Math.min(1,m)):m))}p.domain=function(m){return arguments.length?([e,t,n]=m,a=d(e=+e),s=d(t=+t),o=d(n=+n),l=a===s?0:.5/(s-a),c=s===o?0:.5/(o-s),r=s<a?-1:1,p):[e,t,n]},p.clamp=function(m){return arguments.length?(f=!!m,p):f},p.interpolator=function(m){return arguments.length?(u=m,p):u};function g(m){return function(y){var v,k,x;return arguments.length?([v,k,x]=y,u=MV(m,[v,k,x]),p):[u(0),u(.5),u(1)]}}return p.range=g(Al),p.rangeRound=g(Nw),p.unknown=function(m){return arguments.length?(h=m,p):h},function(m){return d=m,a=m(e),s=m(t),o=m(n),l=a===s?0:.5/(s-a),c=s===o?0:.5/(o-s),r=s<a?-1:1,p}}function SP(){var e=Oi(nm()(Cn));return e.copy=function(){return Pi(e,SP())},Fa.apply(e,arguments)}function jP(){var e=Cw(nm()).domain([.1,1,10]);return e.copy=function(){return Pi(e,jP()).base(e.base())},Fa.apply(e,arguments)}function NP(){var e=Tw(nm());return e.copy=function(){return Pi(e,NP()).constant(e.constant())},Fa.apply(e,arguments)}function Uw(){var e=Ow(nm());return e.copy=function(){return Pi(e,Uw()).exponent(e.exponent())},Fa.apply(e,arguments)}function SY(){return Uw.apply(null,arguments).exponent(.5)}const uj=Object.freeze(Object.defineProperty({__proto__:null,scaleBand:hu,scaleDiverging:SP,scaleDivergingLog:jP,scaleDivergingPow:Uw,scaleDivergingSqrt:SY,scaleDivergingSymlog:NP,scaleIdentity:rP,scaleImplicit:Uy,scaleLinear:kh,scaleLog:iP,scaleOrdinal:kw,scalePoint:Pc,scalePow:Pw,scaleQuantile:lP,scaleQuantize:cP,scaleRadial:oP,scaleSequential:bP,scaleSequentialLog:xP,scaleSequentialPow:Fw,scaleSequentialQuantile:kP,scaleSequentialSqrt:kY,scaleSequentialSymlog:wP,scaleSqrt:r7,scaleSymlog:sP,scaleThreshold:uP,scaleTime:xY,scaleUtc:wY,tickFormat:nP},Symbol.toStringTag,{value:"Module"}));var jY=xl;function NY(e,t,n){for(var r=-1,a=e.length;++r<a;){var s=e[r],o=t(s);if(o!=null&&(l===void 0?o===o&&!jY(o):n(o,l)))var l=o,c=s}return c}var EP=NY;function EY(e,t){return e>t}var _Y=EY,AY=EP,CY=_Y,TY=_l;function OY(e){return e&&e.length?AY(e,TY,CY):void 0}var PY=OY;const rm=Ze(PY);function RY(e,t){return e<t}var MY=RY,IY=EP,$Y=MY,LY=_l;function DY(e){return e&&e.length?IY(e,LY,$Y):void 0}var BY=DY;const am=Ze(BY);var zY=nw,FY=Ti,UY=$O,WY=Wn;function HY(e,t){var n=WY(e)?zY:UY;return n(e,FY(t))}var GY=HY,qY=MO,KY=GY;function VY(e,t){return qY(KY(e,t),1)}var YY=VY;const XY=Ze(YY);var QY=vw;function ZY(e,t){return QY(e,t)}var JY=ZY;const Ww=Ze(JY);var Cl=1e9,eX={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:"2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286"},Gw,kt=!0,kr="[DecimalError] ",vs=kr+"Invalid argument: ",Hw=kr+"Exponent out of range: ",Tl=Math.floor,es=Math.pow,tX=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,Zn,Zt=1e7,pt=7,_P=9007199254740991,Eh=Tl(_P/pt),we={};we.absoluteValue=we.abs=function(){var e=new this.constructor(this);return e.s&&(e.s=1),e};we.comparedTo=we.cmp=function(e){var t,n,r,a,s=this;if(e=new s.constructor(e),s.s!==e.s)return s.s||-e.s;if(s.e!==e.e)return s.e>e.e^s.s<0?1:-1;for(r=s.d.length,a=e.d.length,t=0,n=r<a?r:a;t<n;++t)if(s.d[t]!==e.d[t])return s.d[t]>e.d[t]^s.s<0?1:-1;return r===a?0:r>a^s.s<0?1:-1};we.decimalPlaces=we.dp=function(){var e=this,t=e.d.length-1,n=(t-e.e)*pt;if(t=e.d[t],t)for(;t%10==0;t/=10)n--;return n<0?0:n};we.dividedBy=we.div=function(e){return Ca(this,new this.constructor(e))};we.dividedToIntegerBy=we.idiv=function(e){var t=this,n=t.constructor;return lt(Ca(t,new n(e),0,1),n.precision)};we.equals=we.eq=function(e){return!this.cmp(e)};we.exponent=function(){return Bt(this)};we.greaterThan=we.gt=function(e){return this.cmp(e)>0};we.greaterThanOrEqualTo=we.gte=function(e){return this.cmp(e)>=0};we.isInteger=we.isint=function(){return this.e>this.d.length-2};we.isNegative=we.isneg=function(){return this.s<0};we.isPositive=we.ispos=function(){return this.s>0};we.isZero=function(){return this.s===0};we.lessThan=we.lt=function(e){return this.cmp(e)<0};we.lessThanOrEqualTo=we.lte=function(e){return this.cmp(e)<1};we.logarithm=we.log=function(e){var t,n=this,r=n.constructor,a=r.precision,s=a+5;if(e===void 0)e=new r(10);else if(e=new r(e),e.s<1||e.eq(Zn))throw Error(kr+"NaN");if(n.s<1)throw Error(kr+(n.s?"NaN":"-Infinity"));return n.eq(Zn)?new r(0):(kt=!1,t=Ca(yu(n,s),yu(e,s),s),kt=!0,lt(t,a))};we.minus=we.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?TP(t,e):AP(t,(e.s=-e.s,e))};we.modulo=we.mod=function(e){var t,n=this,r=n.constructor,a=r.precision;if(e=new r(e),!e.s)throw Error(kr+"NaN");return n.s?(kt=!1,t=Ca(n,e,0,1).times(e),kt=!0,n.minus(t)):lt(new r(n),a)};we.naturalExponential=we.exp=function(){return CP(this)};we.naturalLogarithm=we.ln=function(){return yu(this)};we.negated=we.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e};we.plus=we.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?AP(t,e):TP(t,(e.s=-e.s,e))};we.precision=we.sd=function(e){var t,n,r,a=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(vs+e);if(t=Bt(a)+1,r=a.d.length-1,n=r*pt+1,r=a.d[r],r){for(;r%10==0;r/=10)n--;for(r=a.d[0];r>=10;r/=10)n++}return e&&t>n?t:n};we.squareRoot=we.sqrt=function(){var e,t,n,r,a,s,o,l=this,c=l.constructor;if(l.s<1){if(!l.s)return new c(0);throw Error(kr+"NaN")}for(e=Bt(l),kt=!1,a=Math.sqrt(+l),a==0||a==1/0?(t=ia(l.d),(t.length+e)%2==0&&(t+="0"),a=Math.sqrt(t),e=Tl((e+1)/2)-(e<0||e%2),a==1/0?t="5e"+e:(t=a.toExponential(),t=t.slice(0,t.indexOf("e")+1)+e),r=new c(t)):r=new c(a.toString()),n=c.precision,a=o=n+3;;)if(s=r,r=s.plus(Ca(l,s,o+2)).times(.5),ia(s.d).slice(0,o)===(t=ia(r.d)).slice(0,o)){if(t=t.slice(o-3,o+1),a==o&&t=="4999"){if(lt(s,n+1,0),s.times(s).eq(l)){r=s;break}}else if(t!="9999")break;o+=4}return kt=!0,lt(r,n)};we.times=we.mul=function(e){var t,n,r,a,s,o,l,c,u,d=this,f=d.constructor,h=d.d,p=(e=new f(e)).d;if(!d.s||!e.s)return new f(0);for(e.s*=d.s,n=d.e+e.e,c=h.length,u=p.length,c<u&&(s=h,h=p,p=s,o=c,c=u,u=o),s=[],o=c+u,r=o;r--;)s.push(0);for(r=u;--r>=0;){for(t=0,a=c+r;a>r;)l=s[a]+p[r]*h[a-r-1]+t,s[a--]=l%Zt|0,t=l/Zt|0;s[a]=(s[a]+t)%Zt|0}for(;!s[--o];)s.pop();return t?++n:s.shift(),e.d=s,e.e=n,kt?lt(e,f.precision):e};we.toDecimalPlaces=we.todp=function(e,t){var n=this,r=n.constructor;return n=new r(n),e===void 0?n:(ua(e,0,Cl),t===void 0?t=r.rounding:ua(t,0,8),lt(n,e+Bt(n)+1,t))};we.toExponential=function(e,t){var n,r=this,a=r.constructor;return e===void 0?n=As(r,!0):(ua(e,0,Cl),t===void 0?t=a.rounding:ua(t,0,8),r=lt(new a(r),e+1,t),n=As(r,!0,e+1)),n};we.toFixed=function(e,t){var n,r,a=this,s=a.constructor;return e===void 0?As(a):(ua(e,0,Cl),t===void 0?t=s.rounding:ua(t,0,8),r=lt(new s(a),e+Bt(a)+1,t),n=As(r.abs(),!1,e+Bt(r)+1),a.isneg()&&!a.isZero()?"-"+n:n)};we.toInteger=we.toint=function(){var e=this,t=e.constructor;return lt(new t(e),Bt(e)+1,t.rounding)};we.toNumber=function(){return+this};we.toPower=we.pow=function(e){var t,n,r,a,s,o,l=this,c=l.constructor,u=12,d=+(e=new c(e));if(!e.s)return new c(Zn);if(l=new c(l),!l.s){if(e.s<1)throw Error(kr+"Infinity");return l}if(l.eq(Zn))return l;if(r=c.precision,e.eq(Zn))return lt(l,r);if(t=e.e,n=e.d.length-1,o=t>=n,s=l.s,o){if((n=d<0?-d:d)<=_P){for(a=new c(Zn),t=Math.ceil(r/pt+4),kt=!1;n%2&&(a=a.times(l),fj(a.d,t)),n=Tl(n/2),n!==0;)l=l.times(l),fj(l.d,t);return kt=!0,e.s<0?new c(Zn).div(a):lt(a,r)}}else if(s<0)throw Error(kr+"NaN");return s=s<0&&e.d[Math.max(t,n)]&1?-1:1,l.s=1,kt=!1,a=e.times(yu(l,r+u)),kt=!0,a=CP(a),a.s=s,a};we.toPrecision=function(e,t){var n,r,a=this,s=a.constructor;return e===void 0?(n=Bt(a),r=As(a,n<=s.toExpNeg||n>=s.toExpPos)):(ua(e,1,Cl),t===void 0?t=s.rounding:ua(t,0,8),a=lt(new s(a),e,t),n=Bt(a),r=As(a,e<=n||n<=s.toExpNeg,e)),r};we.toSignificantDigits=we.tosd=function(e,t){var n=this,r=n.constructor;return e===void 0?(e=r.precision,t=r.rounding):(ua(e,1,Cl),t===void 0?t=r.rounding:ua(t,0,8)),lt(new r(n),e,t)};we.toString=we.valueOf=we.val=we.toJSON=we[Symbol.for("nodejs.util.inspect.custom")]=function(){var e=this,t=Bt(e),n=e.constructor;return As(e,t<=n.toExpNeg||t>=n.toExpPos)};function AP(e,t){var n,r,a,s,o,l,c,u,d=e.constructor,f=d.precision;if(!e.s||!t.s)return t.s||(t=new d(e)),kt?lt(t,f):t;if(c=e.d,u=t.d,o=e.e,a=t.e,c=c.slice(),s=o-a,s){for(s<0?(r=c,s=-s,l=u.length):(r=u,a=o,l=c.length),o=Math.ceil(f/pt),l=o>l?o+1:l+1,s>l&&(s=l,r.length=1),r.reverse();s--;)r.push(0);r.reverse()}for(l=c.length,s=u.length,l-s<0&&(s=l,r=u,u=c,c=r),n=0;s;)n=(c[--s]=c[s]+u[s]+n)/Zt|0,c[s]%=Zt;for(n&&(c.unshift(n),++a),l=c.length;c[--l]==0;)c.pop();return t.d=c,t.e=a,kt?lt(t,f):t}function ua(e,t,n){if(e!==~~e||e<t||e>n)throw Error(vs+e)}function ia(e){var t,n,r,a=e.length-1,s="",o=e[0];if(a>0){for(s+=o,t=1;t<a;t++)r=e[t]+"",n=pt-r.length,n&&(s+=Za(n)),s+=r;o=e[t],r=o+"",n=pt-r.length,n&&(s+=Za(n))}else if(o===0)return"0";for(;o%10===0;)o/=10;return s+o}var Ca=function(){function e(r,a){var s,o=0,l=r.length;for(r=r.slice();l--;)s=r[l]*a+o,r[l]=s%Zt|0,o=s/Zt|0;return o&&r.unshift(o),r}function t(r,a,s,o){var l,c;if(s!=o)c=s>o?1:-1;else for(l=c=0;l<s;l++)if(r[l]!=a[l]){c=r[l]>a[l]?1:-1;break}return c}function n(r,a,s){for(var o=0;s--;)r[s]-=o,o=r[s]<a[s]?1:0,r[s]=o*Zt+r[s]-a[s];for(;!r[0]&&r.length>1;)r.shift()}return function(r,a,s,o){var l,c,u,d,f,h,p,g,m,y,v,k,x,j,w,b,N,E,O=r.constructor,C=r.s==a.s?1:-1,P=r.d,$=a.d;if(!r.s)return new O(r);if(!a.s)throw Error(kr+"Division by zero");for(c=r.e-a.e,N=$.length,w=P.length,p=new O(C),g=p.d=[],u=0;$[u]==(P[u]||0);)++u;if($[u]>(P[u]||0)&&--c,s==null?k=s=O.precision:o?k=s+(Bt(r)-Bt(a))+1:k=s,k<0)return new O(0);if(k=k/pt+2|0,u=0,N==1)for(d=0,$=$[0],k++;(u<w||d)&&k--;u++)x=d*Zt+(P[u]||0),g[u]=x/$|0,d=x%$|0;else{for(d=Zt/($[0]+1)|0,d>1&&($=e($,d),P=e(P,d),N=$.length,w=P.length),j=N,m=P.slice(0,N),y=m.length;y<N;)m[y++]=0;E=$.slice(),E.unshift(0),b=$[0],$[1]>=Zt/2&&++b;do d=0,l=t($,m,N,y),l<0?(v=m[0],N!=y&&(v=v*Zt+(m[1]||0)),d=v/b|0,d>1?(d>=Zt&&(d=Zt-1),f=e($,d),h=f.length,y=m.length,l=t(f,m,h,y),l==1&&(d--,n(f,N<h?E:$,h))):(d==0&&(l=d=1),f=$.slice()),h=f.length,h<y&&f.unshift(0),n(m,f,y),l==-1&&(y=m.length,l=t($,m,N,y),l<1&&(d++,n(m,N<y?E:$,y))),y=m.length):l===0&&(d++,m=[0]),g[u++]=d,l&&m[0]?m[y++]=P[j]||0:(m=[P[j]],y=1);while((j++<w||m[0]!==void 0)&&k--)}return g[0]||g.shift(),p.e=c,lt(p,o?s+Bt(p)+1:s)}}();function CP(e,t){var n,r,a,s,o,l,c=0,u=0,d=e.constructor,f=d.precision;if(Bt(e)>16)throw Error(Hw+Bt(e));if(!e.s)return new d(Zn);for(kt=!1,l=f,o=new d(.03125);e.abs().gte(.1);)e=e.times(o),u+=5;for(r=Math.log(es(2,u))/Math.LN10*2+5|0,l+=r,n=a=s=new d(Zn),d.precision=l;;){if(a=lt(a.times(e),l),n=n.times(++c),o=s.plus(Ca(a,n,l)),ia(o.d).slice(0,l)===ia(s.d).slice(0,l)){for(;u--;)s=lt(s.times(s),l);return d.precision=f,t==null?(kt=!0,lt(s,f)):s}s=o}}function Bt(e){for(var t=e.e*pt,n=e.d[0];n>=10;n/=10)t++;return t}function kg(e,t,n){if(t>e.LN10.sd())throw kt=!0,n&&(e.precision=n),Error(kr+"LN10 precision limit exceeded");return lt(new e(e.LN10),t)}function Za(e){for(var t="";e--;)t+="0";return t}function yu(e,t){var n,r,a,s,o,l,c,u,d,f=1,h=10,p=e,g=p.d,m=p.constructor,y=m.precision;if(p.s<1)throw Error(kr+(p.s?"NaN":"-Infinity"));if(p.eq(Zn))return new m(0);if(t==null?(kt=!1,u=y):u=t,p.eq(10))return t==null&&(kt=!0),kg(m,u);if(u+=h,m.precision=u,n=ia(g),r=n.charAt(0),s=Bt(p),Math.abs(s)<15e14){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)p=p.times(e),n=ia(p.d),r=n.charAt(0),f++;s=Bt(p),r>1?(p=new m("0."+n),s++):p=new m(r+"."+n.slice(1))}else return c=kg(m,u+2,y).times(s+""),p=yu(new m(r+"."+n.slice(1)),u-h).plus(c),m.precision=y,t==null?(kt=!0,lt(p,y)):p;for(l=o=p=Ca(p.minus(Zn),p.plus(Zn),u),d=lt(p.times(p),u),a=3;;){if(o=lt(o.times(d),u),c=l.plus(Ca(o,new m(a),u)),ia(c.d).slice(0,u)===ia(l.d).slice(0,u))return l=l.times(2),s!==0&&(l=l.plus(kg(m,u+2,y).times(s+""))),l=Ca(l,new m(f),u),m.precision=y,t==null?(kt=!0,lt(l,y)):l;l=c,a+=2}}function dj(e,t){var n,r,a;for((n=t.indexOf("."))>-1&&(t=t.replace(".","")),(r=t.search(/e/i))>0?(n<0&&(n=r),n+=+t.slice(r+1),t=t.substring(0,r)):n<0&&(n=t.length),r=0;t.charCodeAt(r)===48;)++r;for(a=t.length;t.charCodeAt(a-1)===48;)--a;if(t=t.slice(r,a),t){if(a-=r,n=n-r-1,e.e=Tl(n/pt),e.d=[],r=(n+1)%pt,n<0&&(r+=pt),r<a){for(r&&e.d.push(+t.slice(0,r)),a-=pt;r<a;)e.d.push(+t.slice(r,r+=pt));t=t.slice(r),r=pt-t.length}else r-=a;for(;r--;)t+="0";if(e.d.push(+t),kt&&(e.e>Eh||e.e<-Eh))throw Error(Hw+n)}else e.s=0,e.e=0,e.d=[0];return e}function lt(e,t,n){var r,a,s,o,l,c,u,d,f=e.d;for(o=1,s=f[0];s>=10;s/=10)o++;if(r=t-o,r<0)r+=pt,a=t,u=f[d=0];else{if(d=Math.ceil((r+1)/pt),s=f.length,d>=s)return e;for(u=s=f[d],o=1;s>=10;s/=10)o++;r%=pt,a=r-pt+o}if(n!==void 0&&(s=es(10,o-a-1),l=u/s%10|0,c=t<0||f[d+1]!==void 0||u%s,c=n<4?(l||c)&&(n==0||n==(e.s<0?3:2)):l>5||l==5&&(n==4||c||n==6&&(r>0?a>0?u/es(10,o-a):0:f[d-1])%10&1||n==(e.s<0?8:7))),t<1||!f[0])return c?(s=Bt(e),f.length=1,t=t-s-1,f[0]=es(10,(pt-t%pt)%pt),e.e=Tl(-t/pt)||0):(f.length=1,f[0]=e.e=e.s=0),e;if(r==0?(f.length=d,s=1,d--):(f.length=d+1,s=es(10,pt-r),f[d]=a>0?(u/es(10,o-a)%es(10,a)|0)*s:0),c)for(;;)if(d==0){(f[0]+=s)==Zt&&(f[0]=1,++e.e);break}else{if(f[d]+=s,f[d]!=Zt)break;f[d--]=0,s=1}for(r=f.length;f[--r]===0;)f.pop();if(kt&&(e.e>Eh||e.e<-Eh))throw Error(Hw+Bt(e));return e}function TP(e,t){var n,r,a,s,o,l,c,u,d,f,h=e.constructor,p=h.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new h(e),kt?lt(t,p):t;if(c=e.d,f=t.d,r=t.e,u=e.e,c=c.slice(),o=u-r,o){for(d=o<0,d?(n=c,o=-o,l=f.length):(n=f,r=u,l=c.length),a=Math.max(Math.ceil(p/pt),l)+2,o>a&&(o=a,n.length=1),n.reverse(),a=o;a--;)n.push(0);n.reverse()}else{for(a=c.length,l=f.length,d=a<l,d&&(l=a),a=0;a<l;a++)if(c[a]!=f[a]){d=c[a]<f[a];break}o=0}for(d&&(n=c,c=f,f=n,t.s=-t.s),l=c.length,a=f.length-l;a>0;--a)c[l++]=0;for(a=f.length;a>o;){if(c[--a]<f[a]){for(s=a;s&&c[--s]===0;)c[s]=Zt-1;--c[s],c[a]+=Zt}c[a]-=f[a]}for(;c[--l]===0;)c.pop();for(;c[0]===0;c.shift())--r;return c[0]?(t.d=c,t.e=r,kt?lt(t,p):t):new h(0)}function As(e,t,n){var r,a=Bt(e),s=ia(e.d),o=s.length;return t?(n&&(r=n-o)>0?s=s.charAt(0)+"."+s.slice(1)+Za(r):o>1&&(s=s.charAt(0)+"."+s.slice(1)),s=s+(a<0?"e":"e+")+a):a<0?(s="0."+Za(-a-1)+s,n&&(r=n-o)>0&&(s+=Za(r))):a>=o?(s+=Za(a+1-o),n&&(r=n-a-1)>0&&(s=s+"."+Za(r))):((r=a+1)<o&&(s=s.slice(0,r)+"."+s.slice(r)),n&&(r=n-o)>0&&(a+1===o&&(s+="."),s+=Za(r))),e.s<0?"-"+s:s}function fj(e,t){if(e.length>t)return e.length=t,!0}function OP(e){var t,n,r;function a(s){var o=this;if(!(o instanceof a))return new a(s);if(o.constructor=a,s instanceof a){o.s=s.s,o.e=s.e,o.d=(s=s.d)?s.slice():s;return}if(typeof s=="number"){if(s*0!==0)throw Error(vs+s);if(s>0)o.s=1;else if(s<0)s=-s,o.s=-1;else{o.s=0,o.e=0,o.d=[0];return}if(s===~~s&&s<1e7){o.e=0,o.d=[s];return}return dj(o,s.toString())}else if(typeof s!="string")throw Error(vs+s);if(s.charCodeAt(0)===45?(s=s.slice(1),o.s=-1):o.s=1,tX.test(s))dj(o,s);else throw Error(vs+s)}if(a.prototype=we,a.ROUND_UP=0,a.ROUND_DOWN=1,a.ROUND_CEIL=2,a.ROUND_FLOOR=3,a.ROUND_HALF_UP=4,a.ROUND_HALF_DOWN=5,a.ROUND_HALF_EVEN=6,a.ROUND_HALF_CEIL=7,a.ROUND_HALF_FLOOR=8,a.clone=OP,a.config=a.set=nX,e===void 0&&(e={}),e)for(r=["precision","rounding","toExpNeg","toExpPos","LN10"],t=0;t<r.length;)e.hasOwnProperty(n=r[t++])||(e[n]=this[n]);return a.config(e),a}function nX(e){if(!e||typeof e!="object")throw Error(kr+"Object expected");var t,n,r,a=["precision",1,Cl,"rounding",0,8,"toExpNeg",-1/0,0,"toExpPos",0,1/0];for(t=0;t<a.length;t+=3)if((r=e[n=a[t]])!==void 0)if(Tl(r)===r&&r>=a[t+1]&&r<=a[t+2])this[n]=r;else throw Error(vs+n+": "+r);if((r=e[n="LN10"])!==void 0)if(r==Math.LN10)this[n]=new this(r);else throw Error(vs+n+": "+r);return this}var Gw=OP(eX);Zn=new Gw(1);const st=Gw;function rX(e){return oX(e)||sX(e)||iX(e)||aX()}function aX(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
87
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function iX(e,t){if(e){if(typeof e=="string")return qy(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return qy(e,t)}}function sX(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function oX(e){if(Array.isArray(e))return qy(e)}function qy(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var lX=function(t){return t},PP={},RP=function(t){return t===PP},hj=function(t){return function n(){return arguments.length===0||arguments.length===1&&RP(arguments.length<=0?void 0:arguments[0])?n:t.apply(void 0,arguments)}},cX=function e(t,n){return t===1?n:hj(function(){for(var r=arguments.length,a=new Array(r),s=0;s<r;s++)a[s]=arguments[s];var o=a.filter(function(l){return l!==PP}).length;return o>=t?n.apply(void 0,a):e(t-o,hj(function(){for(var l=arguments.length,c=new Array(l),u=0;u<l;u++)c[u]=arguments[u];var d=a.map(function(f){return RP(f)?c.shift():f});return n.apply(void 0,rX(d).concat(c))}))})},im=function(t){return cX(t.length,t)},Ky=function(t,n){for(var r=[],a=t;a<n;++a)r[a-t]=a;return r},uX=im(function(e,t){return Array.isArray(t)?t.map(e):Object.keys(t).map(function(n){return t[n]}).map(e)}),dX=function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];if(!n.length)return lX;var a=n.reverse(),s=a[0],o=a.slice(1);return function(){return o.reduce(function(l,c){return c(l)},s.apply(void 0,arguments))}},Vy=function(t){return Array.isArray(t)?t.reverse():t.split("").reverse.join("")},MP=function(t){var n=null,r=null;return function(){for(var a=arguments.length,s=new Array(a),o=0;o<a;o++)s[o]=arguments[o];return n&&s.every(function(l,c){return l===n[c]})||(n=s,r=t.apply(void 0,s)),r}};function fX(e){var t;return e===0?t=1:t=Math.floor(new st(e).abs().log(10).toNumber())+1,t}function hX(e,t,n){for(var r=new st(e),a=0,s=[];r.lt(t)&&a<1e5;)s.push(r.toNumber()),r=r.add(n),a++;return s}var pX=im(function(e,t,n){var r=+e,a=+t;return r+n*(a-r)}),mX=im(function(e,t,n){var r=t-+e;return r=r||1/0,(n-e)/r}),gX=im(function(e,t,n){var r=t-+e;return r=r||1/0,Math.max(0,Math.min(1,(n-e)/r))});const sm={rangeStep:hX,getDigitCount:fX,interpolateNumber:pX,uninterpolateNumber:mX,uninterpolateTruncation:gX};function Yy(e){return bX(e)||yX(e)||IP(e)||vX()}function vX(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
88
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function yX(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function bX(e){if(Array.isArray(e))return Xy(e)}function bu(e,t){return kX(e)||wX(e,t)||IP(e,t)||xX()}function xX(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
89
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function IP(e,t){if(e){if(typeof e=="string")return Xy(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Xy(e,t)}}function Xy(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function wX(e,t){if(!(typeof Symbol>"u"||!(Symbol.iterator in Object(e)))){var n=[],r=!0,a=!1,s=void 0;try{for(var o=e[Symbol.iterator](),l;!(r=(l=o.next()).done)&&(n.push(l.value),!(t&&n.length===t));r=!0);}catch(c){a=!0,s=c}finally{try{!r&&o.return!=null&&o.return()}finally{if(a)throw s}}return n}}function kX(e){if(Array.isArray(e))return e}function $P(e){var t=bu(e,2),n=t[0],r=t[1],a=n,s=r;return n>r&&(a=r,s=n),[a,s]}function LP(e,t,n){if(e.lte(0))return new st(0);var r=sm.getDigitCount(e.toNumber()),a=new st(10).pow(r),s=e.div(a),o=r!==1?.05:.1,l=new st(Math.ceil(s.div(o).toNumber())).add(n).mul(o),c=l.mul(a);return t?c:new st(Math.ceil(c))}function SX(e,t,n){var r=1,a=new st(e);if(!a.isint()&&n){var s=Math.abs(e);s<1?(r=new st(10).pow(sm.getDigitCount(e)-1),a=new st(Math.floor(a.div(r).toNumber())).mul(r)):s>1&&(a=new st(Math.floor(e)))}else e===0?a=new st(Math.floor((t-1)/2)):n||(a=new st(Math.floor(e)));var o=Math.floor((t-1)/2),l=dX(uX(function(c){return a.add(new st(c-o).mul(r)).toNumber()}),Ky);return l(0,t)}function DP(e,t,n,r){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0;if(!Number.isFinite((t-e)/(n-1)))return{step:new st(0),tickMin:new st(0),tickMax:new st(0)};var s=LP(new st(t).sub(e).div(n-1),r,a),o;e<=0&&t>=0?o=new st(0):(o=new st(e).add(t).div(2),o=o.sub(new st(o).mod(s)));var l=Math.ceil(o.sub(e).div(s).toNumber()),c=Math.ceil(new st(t).sub(o).div(s).toNumber()),u=l+c+1;return u>n?DP(e,t,n,r,a+1):(u<n&&(c=t>0?c+(n-u):c,l=t>0?l:l+(n-u)),{step:s,tickMin:o.sub(new st(l).mul(s)),tickMax:o.add(new st(c).mul(s))})}function jX(e){var t=bu(e,2),n=t[0],r=t[1],a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:6,s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,o=Math.max(a,2),l=$P([n,r]),c=bu(l,2),u=c[0],d=c[1];if(u===-1/0||d===1/0){var f=d===1/0?[u].concat(Yy(Ky(0,a-1).map(function(){return 1/0}))):[].concat(Yy(Ky(0,a-1).map(function(){return-1/0})),[d]);return n>r?Vy(f):f}if(u===d)return SX(u,a,s);var h=DP(u,d,o,s),p=h.step,g=h.tickMin,m=h.tickMax,y=sm.rangeStep(g,m.add(new st(.1).mul(p)),p);return n>r?Vy(y):y}function NX(e,t){var n=bu(e,2),r=n[0],a=n[1],s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,o=$P([r,a]),l=bu(o,2),c=l[0],u=l[1];if(c===-1/0||u===1/0)return[r,a];if(c===u)return[c];var d=Math.max(t,2),f=LP(new st(u).sub(c).div(d-1),s,0),h=[].concat(Yy(sm.rangeStep(new st(c),new st(u).sub(new st(.99).mul(f)),f)),[u]);return r>a?Vy(h):h}var EX=MP(jX),_X=MP(NX),AX="Invariant failed";function Cs(e,t){throw new Error(AX)}var CX=["offset","layout","width","dataKey","data","dataPointFormatter","xAxis","yAxis"];function el(e){"@babel/helpers - typeof";return el=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},el(e)}function _h(){return _h=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},_h.apply(this,arguments)}function TX(e,t){return MX(e)||RX(e,t)||PX(e,t)||OX()}function OX(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
90
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function PX(e,t){if(e){if(typeof e=="string")return pj(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return pj(e,t)}}function pj(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function RX(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var r,a,s,o,l=[],c=!0,u=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(r=s.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(d){u=!0,a=d}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(u)throw a}}return l}}function MX(e){if(Array.isArray(e))return e}function IX(e,t){if(e==null)return{};var n=$X(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function $X(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}function LX(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function DX(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,FP(r.key),r)}}function BX(e,t,n){return t&&DX(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function zX(e,t,n){return t=Ah(t),FX(e,BP()?Reflect.construct(t,n||[],Ah(e).constructor):t.apply(e,n))}function FX(e,t){if(t&&(el(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return UX(e)}function UX(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function BP(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(BP=function(){return!!e})()}function Ah(e){return Ah=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},Ah(e)}function WX(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Qy(e,t)}function Qy(e,t){return Qy=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},Qy(e,t)}function zP(e,t,n){return t=FP(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function FP(e){var t=HX(e,"string");return el(t)=="symbol"?t:t+""}function HX(e,t){if(el(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(el(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}var om=function(e){function t(){return LX(this,t),zX(this,t,arguments)}return WX(t,e),BX(t,[{key:"render",value:function(){var r=this.props,a=r.offset,s=r.layout,o=r.width,l=r.dataKey,c=r.data,u=r.dataPointFormatter,d=r.xAxis,f=r.yAxis,h=IX(r,CX),p=Ve(h,!1);this.props.direction==="x"&&d.type!=="number"&&Cs();var g=c.map(function(m){var y=u(m,l),v=y.x,k=y.y,x=y.value,j=y.errorVal;if(!j)return null;var w=[],b,N;if(Array.isArray(j)){var E=TX(j,2);b=E[0],N=E[1]}else b=N=j;if(s==="vertical"){var O=d.scale,C=k+a,P=C+o,$=C-o,B=O(x-b),M=O(x+N);w.push({x1:M,y1:P,x2:M,y2:$}),w.push({x1:B,y1:C,x2:M,y2:C}),w.push({x1:B,y1:P,x2:B,y2:$})}else if(s==="horizontal"){var F=f.scale,L=v+a,W=L-o,A=L+o,z=F(x-b),T=F(x+N);w.push({x1:W,y1:T,x2:A,y2:T}),w.push({x1:L,y1:z,x2:L,y2:T}),w.push({x1:W,y1:z,x2:A,y2:z})}return q.createElement(tn,_h({className:"recharts-errorBar",key:"bar-".concat(w.map(function(K){return"".concat(K.x1,"-").concat(K.x2,"-").concat(K.y1,"-").concat(K.y2)}))},p),w.map(function(K){return q.createElement("line",_h({},K,{key:"line-".concat(K.x1,"-").concat(K.x2,"-").concat(K.y1,"-").concat(K.y2)}))}))});return q.createElement(tn,{className:"recharts-errorBars"},g)}}])}(q.Component);zP(om,"defaultProps",{stroke:"black",strokeWidth:1.5,width:5,offset:0,layout:"horizontal"});zP(om,"displayName","ErrorBar");function xu(e){"@babel/helpers - typeof";return xu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},xu(e)}function mj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function qi(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?mj(Object(n),!0).forEach(function(r){GX(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):mj(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function GX(e,t,n){return t=qX(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function qX(e){var t=KX(e,"string");return xu(t)=="symbol"?t:t+""}function KX(e,t){if(xu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(xu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var UP=function(t){var n=t.children,r=t.formattedGraphicalItems,a=t.legendWidth,s=t.legendContent,o=Qn(n,ms);if(!o)return null;var l=ms.defaultProps,c=l!==void 0?qi(qi({},l),o.props):{},u;return o.props&&o.props.payload?u=o.props&&o.props.payload:s==="children"?u=(r||[]).reduce(function(d,f){var h=f.item,p=f.props,g=p.sectors||p.data||[];return d.concat(g.map(function(m){return{type:o.props.iconType||h.props.legendType,value:m.name,color:m.fill,payload:m}}))},[]):u=(r||[]).map(function(d){var f=d.item,h=f.type.defaultProps,p=h!==void 0?qi(qi({},h),f.props):{},g=p.dataKey,m=p.name,y=p.legendType,v=p.hide;return{inactive:v,dataKey:g,type:c.iconType||y||"square",color:qw(f),value:m||g,payload:p}}),qi(qi(qi({},c),ms.getWithHeight(o,a)),{},{payload:u,item:o})};function wu(e){"@babel/helpers - typeof";return wu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},wu(e)}function gj(e){return QX(e)||XX(e)||YX(e)||VX()}function VX(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
91
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function YX(e,t){if(e){if(typeof e=="string")return Zy(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Zy(e,t)}}function XX(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function QX(e){if(Array.isArray(e))return Zy(e)}function Zy(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function vj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Rt(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?vj(Object(n),!0).forEach(function(r){$o(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):vj(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function $o(e,t,n){return t=ZX(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ZX(e){var t=JX(e,"string");return wu(t)=="symbol"?t:t+""}function JX(e,t){if(wu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(wu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function da(e,t,n){return Xe(e)||Xe(t)?n:Gt(t)?br(e,t,n):De(t)?t(e):n}function Rc(e,t,n,r){var a=XY(e,function(l){return da(l,t)});if(n==="number"){var s=a.filter(function(l){return de(l)||parseFloat(l)});return s.length?[am(s),rm(s)]:[1/0,-1/0]}var o=r?a.filter(function(l){return!Xe(l)}):a;return o.map(function(l){return Gt(l)||l instanceof Date?l:""})}var eQ=function(t){var n,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],a=arguments.length>2?arguments[2]:void 0,s=arguments.length>3?arguments[3]:void 0,o=-1,l=(n=r==null?void 0:r.length)!==null&&n!==void 0?n:0;if(l<=1)return 0;if(s&&s.axisType==="angleAxis"&&Math.abs(Math.abs(s.range[1]-s.range[0])-360)<=1e-6)for(var c=s.range,u=0;u<l;u++){var d=u>0?a[u-1].coordinate:a[l-1].coordinate,f=a[u].coordinate,h=u>=l-1?a[0].coordinate:a[u+1].coordinate,p=void 0;if(Dr(f-d)!==Dr(h-f)){var g=[];if(Dr(h-f)===Dr(c[1]-c[0])){p=h;var m=f+c[1]-c[0];g[0]=Math.min(m,(m+d)/2),g[1]=Math.max(m,(m+d)/2)}else{p=d;var y=h+c[1]-c[0];g[0]=Math.min(f,(y+f)/2),g[1]=Math.max(f,(y+f)/2)}var v=[Math.min(f,(p+f)/2),Math.max(f,(p+f)/2)];if(t>v[0]&&t<=v[1]||t>=g[0]&&t<=g[1]){o=a[u].index;break}}else{var k=Math.min(d,h),x=Math.max(d,h);if(t>(k+f)/2&&t<=(x+f)/2){o=a[u].index;break}}}else for(var j=0;j<l;j++)if(j===0&&t<=(r[j].coordinate+r[j+1].coordinate)/2||j>0&&j<l-1&&t>(r[j].coordinate+r[j-1].coordinate)/2&&t<=(r[j].coordinate+r[j+1].coordinate)/2||j===l-1&&t>(r[j].coordinate+r[j-1].coordinate)/2){o=r[j].index;break}return o},qw=function(t){var n,r=t,a=r.type.displayName,s=(n=t.type)!==null&&n!==void 0&&n.defaultProps?Rt(Rt({},t.type.defaultProps),t.props):t.props,o=s.stroke,l=s.fill,c;switch(a){case"Line":c=o;break;case"Area":case"Radar":c=o&&o!=="none"?o:l;break;default:c=l;break}return c},tQ=function(t){var n=t.barSize,r=t.totalSize,a=t.stackGroups,s=a===void 0?{}:a;if(!s)return{};for(var o={},l=Object.keys(s),c=0,u=l.length;c<u;c++)for(var d=s[l[c]].stackGroups,f=Object.keys(d),h=0,p=f.length;h<p;h++){var g=d[f[h]],m=g.items,y=g.cateAxisId,v=m.filter(function(N){return _a(N.type).indexOf("Bar")>=0});if(v&&v.length){var k=v[0].type.defaultProps,x=k!==void 0?Rt(Rt({},k),v[0].props):v[0].props,j=x.barSize,w=x[y];o[w]||(o[w]=[]);var b=Xe(j)?n:j;o[w].push({item:v[0],stackList:v.slice(1),barSize:Xe(b)?void 0:_s(b,r,0)})}}return o},nQ=function(t){var n=t.barGap,r=t.barCategoryGap,a=t.bandSize,s=t.sizeList,o=s===void 0?[]:s,l=t.maxBarSize,c=o.length;if(c<1)return null;var u=_s(n,a,0,!0),d,f=[];if(o[0].barSize===+o[0].barSize){var h=!1,p=a/c,g=o.reduce(function(j,w){return j+w.barSize||0},0);g+=(c-1)*u,g>=a&&(g-=(c-1)*u,u=0),g>=a&&p>0&&(h=!0,p*=.9,g=c*p);var m=(a-g)/2>>0,y={offset:m-u,size:0};d=o.reduce(function(j,w){var b={item:w.item,position:{offset:y.offset+y.size+u,size:h?p:w.barSize}},N=[].concat(gj(j),[b]);return y=N[N.length-1].position,w.stackList&&w.stackList.length&&w.stackList.forEach(function(E){N.push({item:E,position:y})}),N},f)}else{var v=_s(r,a,0,!0);a-2*v-(c-1)*u<=0&&(u=0);var k=(a-2*v-(c-1)*u)/c;k>1&&(k>>=0);var x=l===+l?Math.min(k,l):k;d=o.reduce(function(j,w,b){var N=[].concat(gj(j),[{item:w.item,position:{offset:v+(k+u)*b+(k-x)/2,size:x}}]);return w.stackList&&w.stackList.length&&w.stackList.forEach(function(E){N.push({item:E,position:N[N.length-1].position})}),N},f)}return d},rQ=function(t,n,r,a){var s=r.children,o=r.width,l=r.margin,c=o-(l.left||0)-(l.right||0),u=UP({children:s,legendWidth:c});if(u){var d=a||{},f=d.width,h=d.height,p=u.align,g=u.verticalAlign,m=u.layout;if((m==="vertical"||m==="horizontal"&&g==="middle")&&p!=="center"&&de(t[p]))return Rt(Rt({},t),{},$o({},p,t[p]+(f||0)));if((m==="horizontal"||m==="vertical"&&p==="center")&&g!=="middle"&&de(t[g]))return Rt(Rt({},t),{},$o({},g,t[g]+(h||0)))}return t},aQ=function(t,n,r){return Xe(n)?!0:t==="horizontal"?n==="yAxis":t==="vertical"||r==="x"?n==="xAxis":r==="y"?n==="yAxis":!0},WP=function(t,n,r,a,s){var o=n.props.children,l=Fr(o,om).filter(function(u){return aQ(a,s,u.props.direction)});if(l&&l.length){var c=l.map(function(u){return u.props.dataKey});return t.reduce(function(u,d){var f=da(d,r);if(Xe(f))return u;var h=Array.isArray(f)?[am(f),rm(f)]:[f,f],p=c.reduce(function(g,m){var y=da(d,m,0),v=h[0]-Math.abs(Array.isArray(y)?y[0]:y),k=h[1]+Math.abs(Array.isArray(y)?y[1]:y);return[Math.min(v,g[0]),Math.max(k,g[1])]},[1/0,-1/0]);return[Math.min(p[0],u[0]),Math.max(p[1],u[1])]},[1/0,-1/0])}return null},iQ=function(t,n,r,a,s){var o=n.map(function(l){return WP(t,l,r,s,a)}).filter(function(l){return!Xe(l)});return o&&o.length?o.reduce(function(l,c){return[Math.min(l[0],c[0]),Math.max(l[1],c[1])]},[1/0,-1/0]):null},HP=function(t,n,r,a,s){var o=n.map(function(c){var u=c.props.dataKey;return r==="number"&&u&&WP(t,c,u,a)||Rc(t,u,r,s)});if(r==="number")return o.reduce(function(c,u){return[Math.min(c[0],u[0]),Math.max(c[1],u[1])]},[1/0,-1/0]);var l={};return o.reduce(function(c,u){for(var d=0,f=u.length;d<f;d++)l[u[d]]||(l[u[d]]=!0,c.push(u[d]));return c},[])},GP=function(t,n){return t==="horizontal"&&n==="xAxis"||t==="vertical"&&n==="yAxis"||t==="centric"&&n==="angleAxis"||t==="radial"&&n==="radiusAxis"},qP=function(t,n,r,a){if(a)return t.map(function(c){return c.coordinate});var s,o,l=t.map(function(c){return c.coordinate===n&&(s=!0),c.coordinate===r&&(o=!0),c.coordinate});return s||l.push(n),o||l.push(r),l},Na=function(t,n,r){if(!t)return null;var a=t.scale,s=t.duplicateDomain,o=t.type,l=t.range,c=t.realScaleType==="scaleBand"?a.bandwidth()/2:2,u=(n||r)&&o==="category"&&a.bandwidth?a.bandwidth()/c:0;if(u=t.axisType==="angleAxis"&&(l==null?void 0:l.length)>=2?Dr(l[0]-l[1])*2*u:u,n&&(t.ticks||t.niceTicks)){var d=(t.ticks||t.niceTicks).map(function(f){var h=s?s.indexOf(f):f;return{coordinate:a(h)+u,value:f,offset:u}});return d.filter(function(f){return!Qu(f.coordinate)})}return t.isCategorical&&t.categoricalDomain?t.categoricalDomain.map(function(f,h){return{coordinate:a(f)+u,value:f,index:h,offset:u}}):a.ticks&&!r?a.ticks(t.tickCount).map(function(f){return{coordinate:a(f)+u,value:f,offset:u}}):a.domain().map(function(f,h){return{coordinate:a(f)+u,value:s?s[f]:f,index:h,offset:u}})},Sg=new WeakMap,Hd=function(t,n){if(typeof n!="function")return t;Sg.has(t)||Sg.set(t,new WeakMap);var r=Sg.get(t);if(r.has(n))return r.get(n);var a=function(){t.apply(void 0,arguments),n.apply(void 0,arguments)};return r.set(n,a),a},sQ=function(t,n,r){var a=t.scale,s=t.type,o=t.layout,l=t.axisType;if(a==="auto")return o==="radial"&&l==="radiusAxis"?{scale:hu(),realScaleType:"band"}:o==="radial"&&l==="angleAxis"?{scale:kh(),realScaleType:"linear"}:s==="category"&&n&&(n.indexOf("LineChart")>=0||n.indexOf("AreaChart")>=0||n.indexOf("ComposedChart")>=0&&!r)?{scale:Pc(),realScaleType:"point"}:s==="category"?{scale:hu(),realScaleType:"band"}:{scale:kh(),realScaleType:"linear"};if(Es(a)){var c="scale".concat(Hp(a));return{scale:(uj[c]||Pc)(),realScaleType:uj[c]?c:"point"}}return De(a)?{scale:a}:{scale:Pc(),realScaleType:"point"}},yj=1e-4,oQ=function(t){var n=t.domain();if(!(!n||n.length<=2)){var r=n.length,a=t.range(),s=Math.min(a[0],a[1])-yj,o=Math.max(a[0],a[1])+yj,l=t(n[0]),c=t(n[r-1]);(l<s||l>o||c<s||c>o)&&t.domain([n[0],n[r-1]])}},lQ=function(t,n){if(!t)return null;for(var r=0,a=t.length;r<a;r++)if(t[r].item===n)return t[r].position;return null},cQ=function(t,n){if(!n||n.length!==2||!de(n[0])||!de(n[1]))return t;var r=Math.min(n[0],n[1]),a=Math.max(n[0],n[1]),s=[t[0],t[1]];return(!de(t[0])||t[0]<r)&&(s[0]=r),(!de(t[1])||t[1]>a)&&(s[1]=a),s[0]>a&&(s[0]=a),s[1]<r&&(s[1]=r),s},uQ=function(t){var n=t.length;if(!(n<=0))for(var r=0,a=t[0].length;r<a;++r)for(var s=0,o=0,l=0;l<n;++l){var c=Qu(t[l][r][1])?t[l][r][0]:t[l][r][1];c>=0?(t[l][r][0]=s,t[l][r][1]=s+c,s=t[l][r][1]):(t[l][r][0]=o,t[l][r][1]=o+c,o=t[l][r][1])}},dQ=function(t){var n=t.length;if(!(n<=0))for(var r=0,a=t[0].length;r<a;++r)for(var s=0,o=0;o<n;++o){var l=Qu(t[o][r][1])?t[o][r][0]:t[o][r][1];l>=0?(t[o][r][0]=s,t[o][r][1]=s+l,s=t[o][r][1]):(t[o][r][0]=0,t[o][r][1]=0)}},fQ={sign:uQ,expand:_4,none:qo,silhouette:A4,wiggle:C4,positive:dQ},hQ=function(t,n,r){var a=n.map(function(l){return l.props.dataKey}),s=fQ[r],o=E4().keys(a).value(function(l,c){return+da(l,c,0)}).order(Sy).offset(s);return o(t)},pQ=function(t,n,r,a,s,o){if(!t)return null;var l=o?n.reverse():n,c={},u=l.reduce(function(f,h){var p,g=(p=h.type)!==null&&p!==void 0&&p.defaultProps?Rt(Rt({},h.type.defaultProps),h.props):h.props,m=g.stackId,y=g.hide;if(y)return f;var v=g[r],k=f[v]||{hasStack:!1,stackGroups:{}};if(Gt(m)){var x=k.stackGroups[m]||{numericAxisId:r,cateAxisId:a,items:[]};x.items.push(h),k.hasStack=!0,k.stackGroups[m]=x}else k.stackGroups[Wp("_stackId_")]={numericAxisId:r,cateAxisId:a,items:[h]};return Rt(Rt({},f),{},$o({},v,k))},c),d={};return Object.keys(u).reduce(function(f,h){var p=u[h];if(p.hasStack){var g={};p.stackGroups=Object.keys(p.stackGroups).reduce(function(m,y){var v=p.stackGroups[y];return Rt(Rt({},m),{},$o({},y,{numericAxisId:r,cateAxisId:a,items:v.items,stackedData:hQ(t,v.items,s)}))},g)}return Rt(Rt({},f),{},$o({},h,p))},d)},mQ=function(t,n){var r=n.realScaleType,a=n.type,s=n.tickCount,o=n.originalDomain,l=n.allowDecimals,c=r||n.scale;if(c!=="auto"&&c!=="linear")return null;if(s&&a==="number"&&o&&(o[0]==="auto"||o[1]==="auto")){var u=t.domain();if(!u.length)return null;var d=EX(u,s,l);return t.domain([am(d),rm(d)]),{niceTicks:d}}if(s&&a==="number"){var f=t.domain(),h=_X(f,s,l);return{niceTicks:h}}return null},bj=function(t){var n=t.axis,r=t.ticks,a=t.offset,s=t.bandSize,o=t.entry,l=t.index;if(n.type==="category")return r[l]?r[l].coordinate+a:null;var c=da(o,n.dataKey,n.domain[l]);return Xe(c)?null:n.scale(c)-s/2+a},gQ=function(t){var n=t.numericAxis,r=n.scale.domain();if(n.type==="number"){var a=Math.min(r[0],r[1]),s=Math.max(r[0],r[1]);return a<=0&&s>=0?0:s<0?s:a}return r[0]},vQ=function(t,n){var r,a=(r=t.type)!==null&&r!==void 0&&r.defaultProps?Rt(Rt({},t.type.defaultProps),t.props):t.props,s=a.stackId;if(Gt(s)){var o=n[s];if(o){var l=o.items.indexOf(t);return l>=0?o.stackedData[l]:null}}return null},yQ=function(t){return t.reduce(function(n,r){return[am(r.concat([n[0]]).filter(de)),rm(r.concat([n[1]]).filter(de))]},[1/0,-1/0])},KP=function(t,n,r){return Object.keys(t).reduce(function(a,s){var o=t[s],l=o.stackedData,c=l.reduce(function(u,d){var f=yQ(d.slice(n,r+1));return[Math.min(u[0],f[0]),Math.max(u[1],f[1])]},[1/0,-1/0]);return[Math.min(c[0],a[0]),Math.max(c[1],a[1])]},[1/0,-1/0]).map(function(a){return a===1/0||a===-1/0?0:a})},xj=/^dataMin[\s]*-[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,wj=/^dataMax[\s]*\+[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,Jy=function(t,n,r){if(De(t))return t(n,r);if(!Array.isArray(t))return n;var a=[];if(de(t[0]))a[0]=r?t[0]:Math.min(t[0],n[0]);else if(xj.test(t[0])){var s=+xj.exec(t[0])[1];a[0]=n[0]-s}else De(t[0])?a[0]=t[0](n[0]):a[0]=n[0];if(de(t[1]))a[1]=r?t[1]:Math.max(t[1],n[1]);else if(wj.test(t[1])){var o=+wj.exec(t[1])[1];a[1]=n[1]+o}else De(t[1])?a[1]=t[1](n[1]):a[1]=n[1];return a},Ch=function(t,n,r){if(t&&t.scale&&t.scale.bandwidth){var a=t.scale.bandwidth();if(!r||a>0)return a}if(t&&n&&n.length>=2){for(var s=bw(n,function(f){return f.coordinate}),o=1/0,l=1,c=s.length;l<c;l++){var u=s[l],d=s[l-1];o=Math.min((u.coordinate||0)-(d.coordinate||0),o)}return o===1/0?0:o}return r?void 0:0},kj=function(t,n,r){return!t||!t.length||Ww(t,br(r,"type.defaultProps.domain"))?n:t},VP=function(t,n){var r=t.type.defaultProps?Rt(Rt({},t.type.defaultProps),t.props):t.props,a=r.dataKey,s=r.name,o=r.unit,l=r.formatter,c=r.tooltipType,u=r.chartType,d=r.hide;return Rt(Rt({},Ve(t,!1)),{},{dataKey:a,unit:o,formatter:l,name:s||a,color:qw(t),value:da(n,a),type:c,payload:n,chartType:u,hide:d})};function ku(e){"@babel/helpers - typeof";return ku=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ku(e)}function Sj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function jj(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?Sj(Object(n),!0).forEach(function(r){bQ(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Sj(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function bQ(e,t,n){return t=xQ(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function xQ(e){var t=wQ(e,"string");return ku(t)=="symbol"?t:t+""}function wQ(e,t){if(ku(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(ku(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var Th=Math.PI/180,kQ=function(t){return t*180/Math.PI},cn=function(t,n,r,a){return{x:t+Math.cos(-Th*a)*r,y:n+Math.sin(-Th*a)*r}},SQ=function(t,n){var r=t.x,a=t.y,s=n.x,o=n.y;return Math.sqrt(Math.pow(r-s,2)+Math.pow(a-o,2))},jQ=function(t,n){var r=t.x,a=t.y,s=n.cx,o=n.cy,l=SQ({x:r,y:a},{x:s,y:o});if(l<=0)return{radius:l};var c=(r-s)/l,u=Math.acos(c);return a>o&&(u=2*Math.PI-u),{radius:l,angle:kQ(u),angleInRadian:u}},NQ=function(t){var n=t.startAngle,r=t.endAngle,a=Math.floor(n/360),s=Math.floor(r/360),o=Math.min(a,s);return{startAngle:n-o*360,endAngle:r-o*360}},EQ=function(t,n){var r=n.startAngle,a=n.endAngle,s=Math.floor(r/360),o=Math.floor(a/360),l=Math.min(s,o);return t+l*360},Nj=function(t,n){var r=t.x,a=t.y,s=jQ({x:r,y:a},n),o=s.radius,l=s.angle,c=n.innerRadius,u=n.outerRadius;if(o<c||o>u)return!1;if(o===0)return!0;var d=NQ(n),f=d.startAngle,h=d.endAngle,p=l,g;if(f<=h){for(;p>h;)p-=360;for(;p<f;)p+=360;g=p>=f&&p<=h}else{for(;p>f;)p-=360;for(;p<h;)p+=360;g=p>=h&&p<=f}return g?jj(jj({},n),{},{radius:o,angle:EQ(p,n)}):null};function Su(e){"@babel/helpers - typeof";return Su=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Su(e)}var _Q=["offset"];function AQ(e){return PQ(e)||OQ(e)||TQ(e)||CQ()}function CQ(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
92
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function TQ(e,t){if(e){if(typeof e=="string")return eb(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return eb(e,t)}}function OQ(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function PQ(e){if(Array.isArray(e))return eb(e)}function eb(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function RQ(e,t){if(e==null)return{};var n=MQ(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function MQ(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}function Ej(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Ut(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?Ej(Object(n),!0).forEach(function(r){IQ(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ej(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function IQ(e,t,n){return t=$Q(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function $Q(e){var t=LQ(e,"string");return Su(t)=="symbol"?t:t+""}function LQ(e,t){if(Su(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Su(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function ju(){return ju=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ju.apply(this,arguments)}var DQ=function(t){var n=t.value,r=t.formatter,a=Xe(t.children)?n:t.children;return De(r)?r(a):a},BQ=function(t,n){var r=Dr(n-t),a=Math.min(Math.abs(n-t),360);return r*a},zQ=function(t,n,r){var a=t.position,s=t.viewBox,o=t.offset,l=t.className,c=s,u=c.cx,d=c.cy,f=c.innerRadius,h=c.outerRadius,p=c.startAngle,g=c.endAngle,m=c.clockWise,y=(f+h)/2,v=BQ(p,g),k=v>=0?1:-1,x,j;a==="insideStart"?(x=p+k*o,j=m):a==="insideEnd"?(x=g-k*o,j=!m):a==="end"&&(x=g+k*o,j=m),j=v<=0?j:!j;var w=cn(u,d,y,x),b=cn(u,d,y,x+(j?1:-1)*359),N="M".concat(w.x,",").concat(w.y,`
93
- A`).concat(y,",").concat(y,",0,1,").concat(j?0:1,`,
94
- `).concat(b.x,",").concat(b.y),E=Xe(t.id)?Wp("recharts-radial-line-"):t.id;return q.createElement("text",ju({},r,{dominantBaseline:"central",className:Ye("recharts-radial-bar-label",l)}),q.createElement("defs",null,q.createElement("path",{id:E,d:N})),q.createElement("textPath",{xlinkHref:"#".concat(E)},n))},FQ=function(t){var n=t.viewBox,r=t.offset,a=t.position,s=n,o=s.cx,l=s.cy,c=s.innerRadius,u=s.outerRadius,d=s.startAngle,f=s.endAngle,h=(d+f)/2;if(a==="outside"){var p=cn(o,l,u+r,h),g=p.x,m=p.y;return{x:g,y:m,textAnchor:g>=o?"start":"end",verticalAnchor:"middle"}}if(a==="center")return{x:o,y:l,textAnchor:"middle",verticalAnchor:"middle"};if(a==="centerTop")return{x:o,y:l,textAnchor:"middle",verticalAnchor:"start"};if(a==="centerBottom")return{x:o,y:l,textAnchor:"middle",verticalAnchor:"end"};var y=(c+u)/2,v=cn(o,l,y,h),k=v.x,x=v.y;return{x:k,y:x,textAnchor:"middle",verticalAnchor:"middle"}},UQ=function(t){var n=t.viewBox,r=t.parentViewBox,a=t.offset,s=t.position,o=n,l=o.x,c=o.y,u=o.width,d=o.height,f=d>=0?1:-1,h=f*a,p=f>0?"end":"start",g=f>0?"start":"end",m=u>=0?1:-1,y=m*a,v=m>0?"end":"start",k=m>0?"start":"end";if(s==="top"){var x={x:l+u/2,y:c-f*a,textAnchor:"middle",verticalAnchor:p};return Ut(Ut({},x),r?{height:Math.max(c-r.y,0),width:u}:{})}if(s==="bottom"){var j={x:l+u/2,y:c+d+h,textAnchor:"middle",verticalAnchor:g};return Ut(Ut({},j),r?{height:Math.max(r.y+r.height-(c+d),0),width:u}:{})}if(s==="left"){var w={x:l-y,y:c+d/2,textAnchor:v,verticalAnchor:"middle"};return Ut(Ut({},w),r?{width:Math.max(w.x-r.x,0),height:d}:{})}if(s==="right"){var b={x:l+u+y,y:c+d/2,textAnchor:k,verticalAnchor:"middle"};return Ut(Ut({},b),r?{width:Math.max(r.x+r.width-b.x,0),height:d}:{})}var N=r?{width:u,height:d}:{};return s==="insideLeft"?Ut({x:l+y,y:c+d/2,textAnchor:k,verticalAnchor:"middle"},N):s==="insideRight"?Ut({x:l+u-y,y:c+d/2,textAnchor:v,verticalAnchor:"middle"},N):s==="insideTop"?Ut({x:l+u/2,y:c+h,textAnchor:"middle",verticalAnchor:g},N):s==="insideBottom"?Ut({x:l+u/2,y:c+d-h,textAnchor:"middle",verticalAnchor:p},N):s==="insideTopLeft"?Ut({x:l+y,y:c+h,textAnchor:k,verticalAnchor:g},N):s==="insideTopRight"?Ut({x:l+u-y,y:c+h,textAnchor:v,verticalAnchor:g},N):s==="insideBottomLeft"?Ut({x:l+y,y:c+d-h,textAnchor:k,verticalAnchor:p},N):s==="insideBottomRight"?Ut({x:l+u-y,y:c+d-h,textAnchor:v,verticalAnchor:p},N):wl(s)&&(de(s.x)||ls(s.x))&&(de(s.y)||ls(s.y))?Ut({x:l+_s(s.x,u),y:c+_s(s.y,d),textAnchor:"end",verticalAnchor:"end"},N):Ut({x:l+u/2,y:c+d/2,textAnchor:"middle",verticalAnchor:"middle"},N)},WQ=function(t){return"cx"in t&&de(t.cx)};function wn(e){var t=e.offset,n=t===void 0?5:t,r=RQ(e,_Q),a=Ut({offset:n},r),s=a.viewBox,o=a.position,l=a.value,c=a.children,u=a.content,d=a.className,f=d===void 0?"":d,h=a.textBreakAll;if(!s||Xe(l)&&Xe(c)&&!S.isValidElement(u)&&!De(u))return null;if(S.isValidElement(u))return S.cloneElement(u,a);var p;if(De(u)){if(p=S.createElement(u,a),S.isValidElement(p))return p}else p=DQ(a);var g=WQ(s),m=Ve(a,!0);if(g&&(o==="insideStart"||o==="insideEnd"||o==="end"))return zQ(a,p,m);var y=g?FQ(a):UQ(a);return q.createElement(ph,ju({className:Ye("recharts-label",f)},m,y,{breakAll:h}),p)}wn.displayName="Label";var YP=function(t){var n=t.cx,r=t.cy,a=t.angle,s=t.startAngle,o=t.endAngle,l=t.r,c=t.radius,u=t.innerRadius,d=t.outerRadius,f=t.x,h=t.y,p=t.top,g=t.left,m=t.width,y=t.height,v=t.clockWise,k=t.labelViewBox;if(k)return k;if(de(m)&&de(y)){if(de(f)&&de(h))return{x:f,y:h,width:m,height:y};if(de(p)&&de(g))return{x:p,y:g,width:m,height:y}}return de(f)&&de(h)?{x:f,y:h,width:0,height:0}:de(n)&&de(r)?{cx:n,cy:r,startAngle:s||a||0,endAngle:o||a||0,innerRadius:u||0,outerRadius:d||c||l||0,clockWise:v}:t.viewBox?t.viewBox:{}},HQ=function(t,n){return t?t===!0?q.createElement(wn,{key:"label-implicit",viewBox:n}):Gt(t)?q.createElement(wn,{key:"label-implicit",viewBox:n,value:t}):S.isValidElement(t)?t.type===wn?S.cloneElement(t,{key:"label-implicit",viewBox:n}):q.createElement(wn,{key:"label-implicit",content:t,viewBox:n}):De(t)?q.createElement(wn,{key:"label-implicit",content:t,viewBox:n}):wl(t)?q.createElement(wn,ju({viewBox:n},t,{key:"label-implicit"})):null:null},GQ=function(t,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(!t||!t.children&&r&&!t.label)return null;var a=t.children,s=YP(t),o=Fr(a,wn).map(function(c,u){return S.cloneElement(c,{viewBox:n||s,key:"label-".concat(u)})});if(!r)return o;var l=HQ(t.label,n||s);return[l].concat(AQ(o))};wn.parseViewBox=YP;wn.renderCallByParent=GQ;function qQ(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}var KQ=qQ;const VQ=Ze(KQ);function Nu(e){"@babel/helpers - typeof";return Nu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Nu(e)}var YQ=["valueAccessor"],XQ=["data","dataKey","clockWise","id","textBreakAll"];function QQ(e){return tZ(e)||eZ(e)||JQ(e)||ZQ()}function ZQ(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
95
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function JQ(e,t){if(e){if(typeof e=="string")return tb(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return tb(e,t)}}function eZ(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function tZ(e){if(Array.isArray(e))return tb(e)}function tb(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Oh(){return Oh=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Oh.apply(this,arguments)}function _j(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Aj(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?_j(Object(n),!0).forEach(function(r){nZ(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):_j(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function nZ(e,t,n){return t=rZ(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function rZ(e){var t=aZ(e,"string");return Nu(t)=="symbol"?t:t+""}function aZ(e,t){if(Nu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Nu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Cj(e,t){if(e==null)return{};var n=iZ(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function iZ(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}var sZ=function(t){return Array.isArray(t.value)?VQ(t.value):t.value};function ys(e){var t=e.valueAccessor,n=t===void 0?sZ:t,r=Cj(e,YQ),a=r.data,s=r.dataKey,o=r.clockWise,l=r.id,c=r.textBreakAll,u=Cj(r,XQ);return!a||!a.length?null:q.createElement(tn,{className:"recharts-label-list"},a.map(function(d,f){var h=Xe(s)?n(d,f):da(d&&d.payload,s),p=Xe(l)?{}:{id:"".concat(l,"-").concat(f)};return q.createElement(wn,Oh({},Ve(d,!0),u,p,{parentViewBox:d.parentViewBox,value:h,textBreakAll:c,viewBox:wn.parseViewBox(Xe(o)?d:Aj(Aj({},d),{},{clockWise:o})),key:"label-".concat(f),index:f}))}))}ys.displayName="LabelList";function oZ(e,t){return e?e===!0?q.createElement(ys,{key:"labelList-implicit",data:t}):q.isValidElement(e)||De(e)?q.createElement(ys,{key:"labelList-implicit",data:t,content:e}):wl(e)?q.createElement(ys,Oh({data:t},e,{key:"labelList-implicit"})):null:null}function lZ(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(!e||!e.children&&n&&!e.label)return null;var r=e.children,a=Fr(r,ys).map(function(o,l){return S.cloneElement(o,{data:t,key:"labelList-".concat(l)})});if(!n)return a;var s=oZ(e.label,t);return[s].concat(QQ(a))}ys.renderCallByParent=lZ;function Eu(e){"@babel/helpers - typeof";return Eu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Eu(e)}function nb(){return nb=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},nb.apply(this,arguments)}function Tj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Oj(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?Tj(Object(n),!0).forEach(function(r){cZ(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Tj(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function cZ(e,t,n){return t=uZ(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function uZ(e){var t=dZ(e,"string");return Eu(t)=="symbol"?t:t+""}function dZ(e,t){if(Eu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Eu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var fZ=function(t,n){var r=Dr(n-t),a=Math.min(Math.abs(n-t),359.999);return r*a},Gd=function(t){var n=t.cx,r=t.cy,a=t.radius,s=t.angle,o=t.sign,l=t.isExternal,c=t.cornerRadius,u=t.cornerIsExternal,d=c*(l?1:-1)+a,f=Math.asin(c/d)/Th,h=u?s:s+o*f,p=cn(n,r,d,h),g=cn(n,r,a,h),m=u?s-o*f:s,y=cn(n,r,d*Math.cos(f*Th),m);return{center:p,circleTangency:g,lineTangency:y,theta:f}},XP=function(t){var n=t.cx,r=t.cy,a=t.innerRadius,s=t.outerRadius,o=t.startAngle,l=t.endAngle,c=fZ(o,l),u=o+c,d=cn(n,r,s,o),f=cn(n,r,s,u),h="M ".concat(d.x,",").concat(d.y,`
96
- A `).concat(s,",").concat(s,`,0,
97
- `).concat(+(Math.abs(c)>180),",").concat(+(o>u),`,
98
- `).concat(f.x,",").concat(f.y,`
99
- `);if(a>0){var p=cn(n,r,a,o),g=cn(n,r,a,u);h+="L ".concat(g.x,",").concat(g.y,`
100
- A `).concat(a,",").concat(a,`,0,
101
- `).concat(+(Math.abs(c)>180),",").concat(+(o<=u),`,
102
- `).concat(p.x,",").concat(p.y," Z")}else h+="L ".concat(n,",").concat(r," Z");return h},hZ=function(t){var n=t.cx,r=t.cy,a=t.innerRadius,s=t.outerRadius,o=t.cornerRadius,l=t.forceCornerRadius,c=t.cornerIsExternal,u=t.startAngle,d=t.endAngle,f=Dr(d-u),h=Gd({cx:n,cy:r,radius:s,angle:u,sign:f,cornerRadius:o,cornerIsExternal:c}),p=h.circleTangency,g=h.lineTangency,m=h.theta,y=Gd({cx:n,cy:r,radius:s,angle:d,sign:-f,cornerRadius:o,cornerIsExternal:c}),v=y.circleTangency,k=y.lineTangency,x=y.theta,j=c?Math.abs(u-d):Math.abs(u-d)-m-x;if(j<0)return l?"M ".concat(g.x,",").concat(g.y,`
103
- a`).concat(o,",").concat(o,",0,0,1,").concat(o*2,`,0
104
- a`).concat(o,",").concat(o,",0,0,1,").concat(-o*2,`,0
105
- `):XP({cx:n,cy:r,innerRadius:a,outerRadius:s,startAngle:u,endAngle:d});var w="M ".concat(g.x,",").concat(g.y,`
106
- A`).concat(o,",").concat(o,",0,0,").concat(+(f<0),",").concat(p.x,",").concat(p.y,`
107
- A`).concat(s,",").concat(s,",0,").concat(+(j>180),",").concat(+(f<0),",").concat(v.x,",").concat(v.y,`
108
- A`).concat(o,",").concat(o,",0,0,").concat(+(f<0),",").concat(k.x,",").concat(k.y,`
109
- `);if(a>0){var b=Gd({cx:n,cy:r,radius:a,angle:u,sign:f,isExternal:!0,cornerRadius:o,cornerIsExternal:c}),N=b.circleTangency,E=b.lineTangency,O=b.theta,C=Gd({cx:n,cy:r,radius:a,angle:d,sign:-f,isExternal:!0,cornerRadius:o,cornerIsExternal:c}),P=C.circleTangency,$=C.lineTangency,B=C.theta,M=c?Math.abs(u-d):Math.abs(u-d)-O-B;if(M<0&&o===0)return"".concat(w,"L").concat(n,",").concat(r,"Z");w+="L".concat($.x,",").concat($.y,`
110
- A`).concat(o,",").concat(o,",0,0,").concat(+(f<0),",").concat(P.x,",").concat(P.y,`
111
- A`).concat(a,",").concat(a,",0,").concat(+(M>180),",").concat(+(f>0),",").concat(N.x,",").concat(N.y,`
112
- A`).concat(o,",").concat(o,",0,0,").concat(+(f<0),",").concat(E.x,",").concat(E.y,"Z")}else w+="L".concat(n,",").concat(r,"Z");return w},pZ={cx:0,cy:0,innerRadius:0,outerRadius:0,startAngle:0,endAngle:0,cornerRadius:0,forceCornerRadius:!1,cornerIsExternal:!1},QP=function(t){var n=Oj(Oj({},pZ),t),r=n.cx,a=n.cy,s=n.innerRadius,o=n.outerRadius,l=n.cornerRadius,c=n.forceCornerRadius,u=n.cornerIsExternal,d=n.startAngle,f=n.endAngle,h=n.className;if(o<s||d===f)return null;var p=Ye("recharts-sector",h),g=o-s,m=_s(l,g,0,!0),y;return m>0&&Math.abs(d-f)<360?y=hZ({cx:r,cy:a,innerRadius:s,outerRadius:o,cornerRadius:Math.min(m,g/2),forceCornerRadius:c,cornerIsExternal:u,startAngle:d,endAngle:f}):y=XP({cx:r,cy:a,innerRadius:s,outerRadius:o,startAngle:d,endAngle:f}),q.createElement("path",nb({},Ve(n,!0),{className:p,d:y,role:"img"}))};function _u(e){"@babel/helpers - typeof";return _u=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},_u(e)}function rb(){return rb=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},rb.apply(this,arguments)}function Pj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Rj(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?Pj(Object(n),!0).forEach(function(r){mZ(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Pj(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function mZ(e,t,n){return t=gZ(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function gZ(e){var t=vZ(e,"string");return _u(t)=="symbol"?t:t+""}function vZ(e,t){if(_u(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(_u(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var Mj={curveBasisClosed:m4,curveBasisOpen:g4,curveBasis:p4,curveBumpX:e4,curveBumpY:t4,curveLinearClosed:v4,curveLinear:qp,curveMonotoneX:y4,curveMonotoneY:b4,curveNatural:x4,curveStep:w4,curveStepAfter:S4,curveStepBefore:k4},qd=function(t){return t.x===+t.x&&t.y===+t.y},oc=function(t){return t.x},lc=function(t){return t.y},yZ=function(t,n){if(De(t))return t;var r="curve".concat(Hp(t));return(r==="curveMonotone"||r==="curveBump")&&n?Mj["".concat(r).concat(n==="vertical"?"Y":"X")]:Mj[r]||qp},bZ=function(t){var n=t.type,r=n===void 0?"linear":n,a=t.points,s=a===void 0?[]:a,o=t.baseLine,l=t.layout,c=t.connectNulls,u=c===void 0?!1:c,d=yZ(r,l),f=u?s.filter(function(m){return qd(m)}):s,h;if(Array.isArray(o)){var p=u?o.filter(function(m){return qd(m)}):o,g=f.map(function(m,y){return Rj(Rj({},m),{},{base:p[y]})});return l==="vertical"?h=$d().y(lc).x1(oc).x0(function(m){return m.base.x}):h=$d().x(oc).y1(lc).y0(function(m){return m.base.y}),h.defined(qd).curve(d),h(g)}return l==="vertical"&&de(o)?h=$d().y(lc).x1(oc).x0(o):de(o)?h=$d().x(oc).y1(lc).y0(o):h=JT().x(oc).y(lc),h.defined(qd).curve(d),h(f)},Ij=function(t){var n=t.className,r=t.points,a=t.path,s=t.pathRef;if((!r||!r.length)&&!a)return null;var o=r&&r.length?bZ(t):a;return S.createElement("path",rb({},Ve(t,!1),Jf(t),{className:Ye("recharts-curve",n),d:o,ref:s}))},ZP={exports:{}},xZ="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED",wZ=xZ,kZ=wZ;function JP(){}function eR(){}eR.resetWarningCache=JP;var SZ=function(){function e(r,a,s,o,l,c){if(c!==kZ){var u=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw u.name="Invariant Violation",u}}e.isRequired=e;function t(){return e}var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:eR,resetWarningCache:JP};return n.PropTypes=n,n};ZP.exports=SZ();var jZ=ZP.exports;const Qe=Ze(jZ),{getOwnPropertyNames:NZ,getOwnPropertySymbols:EZ}=Object,{hasOwnProperty:_Z}=Object.prototype;function jg(e,t){return function(r,a,s){return e(r,a,s)&&t(r,a,s)}}function Kd(e){return function(n,r,a){if(!n||!r||typeof n!="object"||typeof r!="object")return e(n,r,a);const{cache:s}=a,o=s.get(n),l=s.get(r);if(o&&l)return o===r&&l===n;s.set(n,r),s.set(r,n);const c=e(n,r,a);return s.delete(n),s.delete(r),c}}function AZ(e){return e!=null?e[Symbol.toStringTag]:void 0}function $j(e){return NZ(e).concat(EZ(e))}const CZ=Object.hasOwn||((e,t)=>_Z.call(e,t));function Ls(e,t){return e===t||!e&&!t&&e!==e&&t!==t}const TZ="__v",OZ="__o",PZ="_owner",{getOwnPropertyDescriptor:Lj,keys:Dj}=Object;function RZ(e,t){return e.byteLength===t.byteLength&&Ph(new Uint8Array(e),new Uint8Array(t))}function MZ(e,t,n){let r=e.length;if(t.length!==r)return!1;for(;r-- >0;)if(!n.equals(e[r],t[r],r,r,e,t,n))return!1;return!0}function IZ(e,t){return e.byteLength===t.byteLength&&Ph(new Uint8Array(e.buffer,e.byteOffset,e.byteLength),new Uint8Array(t.buffer,t.byteOffset,t.byteLength))}function $Z(e,t){return Ls(e.getTime(),t.getTime())}function LZ(e,t){return e.name===t.name&&e.message===t.message&&e.cause===t.cause&&e.stack===t.stack}function DZ(e,t){return e===t}function Bj(e,t,n){const r=e.size;if(r!==t.size)return!1;if(!r)return!0;const a=new Array(r),s=e.entries();let o,l,c=0;for(;(o=s.next())&&!o.done;){const u=t.entries();let d=!1,f=0;for(;(l=u.next())&&!l.done;){if(a[f]){f++;continue}const h=o.value,p=l.value;if(n.equals(h[0],p[0],c,f,e,t,n)&&n.equals(h[1],p[1],h[0],p[0],e,t,n)){d=a[f]=!0;break}f++}if(!d)return!1;c++}return!0}const BZ=Ls;function zZ(e,t,n){const r=Dj(e);let a=r.length;if(Dj(t).length!==a)return!1;for(;a-- >0;)if(!tR(e,t,n,r[a]))return!1;return!0}function cc(e,t,n){const r=$j(e);let a=r.length;if($j(t).length!==a)return!1;let s,o,l;for(;a-- >0;)if(s=r[a],!tR(e,t,n,s)||(o=Lj(e,s),l=Lj(t,s),(o||l)&&(!o||!l||o.configurable!==l.configurable||o.enumerable!==l.enumerable||o.writable!==l.writable)))return!1;return!0}function FZ(e,t){return Ls(e.valueOf(),t.valueOf())}function UZ(e,t){return e.source===t.source&&e.flags===t.flags}function zj(e,t,n){const r=e.size;if(r!==t.size)return!1;if(!r)return!0;const a=new Array(r),s=e.values();let o,l;for(;(o=s.next())&&!o.done;){const c=t.values();let u=!1,d=0;for(;(l=c.next())&&!l.done;){if(!a[d]&&n.equals(o.value,l.value,o.value,l.value,e,t,n)){u=a[d]=!0;break}d++}if(!u)return!1}return!0}function Ph(e,t){let n=e.byteLength;if(t.byteLength!==n||e.byteOffset!==t.byteOffset)return!1;for(;n-- >0;)if(e[n]!==t[n])return!1;return!0}function WZ(e,t){return e.hostname===t.hostname&&e.pathname===t.pathname&&e.protocol===t.protocol&&e.port===t.port&&e.hash===t.hash&&e.username===t.username&&e.password===t.password}function tR(e,t,n,r){return(r===PZ||r===OZ||r===TZ)&&(e.$$typeof||t.$$typeof)?!0:CZ(t,r)&&n.equals(e[r],t[r],r,r,e,t,n)}const HZ="[object ArrayBuffer]",GZ="[object Arguments]",qZ="[object Boolean]",KZ="[object DataView]",VZ="[object Date]",YZ="[object Error]",XZ="[object Map]",QZ="[object Number]",ZZ="[object Object]",JZ="[object RegExp]",eJ="[object Set]",tJ="[object String]",nJ={"[object Int8Array]":!0,"[object Uint8Array]":!0,"[object Uint8ClampedArray]":!0,"[object Int16Array]":!0,"[object Uint16Array]":!0,"[object Int32Array]":!0,"[object Uint32Array]":!0,"[object Float16Array]":!0,"[object Float32Array]":!0,"[object Float64Array]":!0,"[object BigInt64Array]":!0,"[object BigUint64Array]":!0},rJ="[object URL]",aJ=Object.prototype.toString;function iJ({areArrayBuffersEqual:e,areArraysEqual:t,areDataViewsEqual:n,areDatesEqual:r,areErrorsEqual:a,areFunctionsEqual:s,areMapsEqual:o,areNumbersEqual:l,areObjectsEqual:c,arePrimitiveWrappersEqual:u,areRegExpsEqual:d,areSetsEqual:f,areTypedArraysEqual:h,areUrlsEqual:p,unknownTagComparators:g}){return function(y,v,k){if(y===v)return!0;if(y==null||v==null)return!1;const x=typeof y;if(x!==typeof v)return!1;if(x!=="object")return x==="number"?l(y,v,k):x==="function"?s(y,v,k):!1;const j=y.constructor;if(j!==v.constructor)return!1;if(j===Object)return c(y,v,k);if(Array.isArray(y))return t(y,v,k);if(j===Date)return r(y,v,k);if(j===RegExp)return d(y,v,k);if(j===Map)return o(y,v,k);if(j===Set)return f(y,v,k);const w=aJ.call(y);if(w===VZ)return r(y,v,k);if(w===JZ)return d(y,v,k);if(w===XZ)return o(y,v,k);if(w===eJ)return f(y,v,k);if(w===ZZ)return typeof y.then!="function"&&typeof v.then!="function"&&c(y,v,k);if(w===rJ)return p(y,v,k);if(w===YZ)return a(y,v,k);if(w===GZ)return c(y,v,k);if(nJ[w])return h(y,v,k);if(w===HZ)return e(y,v,k);if(w===KZ)return n(y,v,k);if(w===qZ||w===QZ||w===tJ)return u(y,v,k);if(g){let b=g[w];if(!b){const N=AZ(y);N&&(b=g[N])}if(b)return b(y,v,k)}return!1}}function sJ({circular:e,createCustomConfig:t,strict:n}){let r={areArrayBuffersEqual:RZ,areArraysEqual:n?cc:MZ,areDataViewsEqual:IZ,areDatesEqual:$Z,areErrorsEqual:LZ,areFunctionsEqual:DZ,areMapsEqual:n?jg(Bj,cc):Bj,areNumbersEqual:BZ,areObjectsEqual:n?cc:zZ,arePrimitiveWrappersEqual:FZ,areRegExpsEqual:UZ,areSetsEqual:n?jg(zj,cc):zj,areTypedArraysEqual:n?jg(Ph,cc):Ph,areUrlsEqual:WZ,unknownTagComparators:void 0};if(t&&(r=Object.assign({},r,t(r))),e){const a=Kd(r.areArraysEqual),s=Kd(r.areMapsEqual),o=Kd(r.areObjectsEqual),l=Kd(r.areSetsEqual);r=Object.assign({},r,{areArraysEqual:a,areMapsEqual:s,areObjectsEqual:o,areSetsEqual:l})}return r}function oJ(e){return function(t,n,r,a,s,o,l){return e(t,n,l)}}function lJ({circular:e,comparator:t,createState:n,equals:r,strict:a}){if(n)return function(l,c){const{cache:u=e?new WeakMap:void 0,meta:d}=n();return t(l,c,{cache:u,equals:r,meta:d,strict:a})};if(e)return function(l,c){return t(l,c,{cache:new WeakMap,equals:r,meta:void 0,strict:a})};const s={cache:void 0,equals:r,meta:void 0,strict:a};return function(l,c){return t(l,c,s)}}const cJ=Ri();Ri({strict:!0});Ri({circular:!0});Ri({circular:!0,strict:!0});Ri({createInternalComparator:()=>Ls});Ri({strict:!0,createInternalComparator:()=>Ls});Ri({circular:!0,createInternalComparator:()=>Ls});Ri({circular:!0,createInternalComparator:()=>Ls,strict:!0});function Ri(e={}){const{circular:t=!1,createInternalComparator:n,createState:r,strict:a=!1}=e,s=sJ(e),o=iJ(s),l=n?n(o):oJ(o);return lJ({circular:t,comparator:o,createState:r,equals:l,strict:a})}function uJ(e){typeof requestAnimationFrame<"u"&&requestAnimationFrame(e)}function Fj(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=-1,r=function a(s){n<0&&(n=s),s-n>t?(e(s),n=-1):uJ(a)};requestAnimationFrame(r)}function ab(e){"@babel/helpers - typeof";return ab=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ab(e)}function dJ(e){return mJ(e)||pJ(e)||hJ(e)||fJ()}function fJ(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
113
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function hJ(e,t){if(e){if(typeof e=="string")return Uj(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Uj(e,t)}}function Uj(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function pJ(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function mJ(e){if(Array.isArray(e))return e}function gJ(){var e={},t=function(){return null},n=!1,r=function a(s){if(!n){if(Array.isArray(s)){if(!s.length)return;var o=s,l=dJ(o),c=l[0],u=l.slice(1);if(typeof c=="number"){Fj(a.bind(null,u),c);return}a(c),Fj(a.bind(null,u));return}ab(s)==="object"&&(e=s,t(e)),typeof s=="function"&&s()}};return{stop:function(){n=!0},start:function(s){n=!1,r(s)},subscribe:function(s){return t=s,function(){t=function(){return null}}}}}function Au(e){"@babel/helpers - typeof";return Au=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Au(e)}function Wj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Hj(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?Wj(Object(n),!0).forEach(function(r){nR(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Wj(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function nR(e,t,n){return t=vJ(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function vJ(e){var t=yJ(e,"string");return Au(t)==="symbol"?t:String(t)}function yJ(e,t){if(Au(e)!=="object"||e===null)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Au(r)!=="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var bJ=function(t,n){return[Object.keys(t),Object.keys(n)].reduce(function(r,a){return r.filter(function(s){return a.includes(s)})})},xJ=function(t){return t},wJ=function(t){return t.replace(/([A-Z])/g,function(n){return"-".concat(n.toLowerCase())})},Mc=function(t,n){return Object.keys(n).reduce(function(r,a){return Hj(Hj({},r),{},nR({},a,t(a,n[a])))},{})},Gj=function(t,n,r){return t.map(function(a){return"".concat(wJ(a)," ").concat(n,"ms ").concat(r)}).join(",")};function kJ(e,t){return NJ(e)||jJ(e,t)||rR(e,t)||SJ()}function SJ(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
114
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function jJ(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var r,a,s,o,l=[],c=!0,u=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(r=s.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(d){u=!0,a=d}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(u)throw a}}return l}}function NJ(e){if(Array.isArray(e))return e}function EJ(e){return CJ(e)||AJ(e)||rR(e)||_J()}function _J(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
115
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function rR(e,t){if(e){if(typeof e=="string")return ib(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return ib(e,t)}}function AJ(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function CJ(e){if(Array.isArray(e))return ib(e)}function ib(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var Rh=1e-4,aR=function(t,n){return[0,3*t,3*n-6*t,3*t-3*n+1]},iR=function(t,n){return t.map(function(r,a){return r*Math.pow(n,a)}).reduce(function(r,a){return r+a})},qj=function(t,n){return function(r){var a=aR(t,n);return iR(a,r)}},TJ=function(t,n){return function(r){var a=aR(t,n),s=[].concat(EJ(a.map(function(o,l){return o*l}).slice(1)),[0]);return iR(s,r)}},Kj=function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];var a=n[0],s=n[1],o=n[2],l=n[3];if(n.length===1)switch(n[0]){case"linear":a=0,s=0,o=1,l=1;break;case"ease":a=.25,s=.1,o=.25,l=1;break;case"ease-in":a=.42,s=0,o=1,l=1;break;case"ease-out":a=.42,s=0,o=.58,l=1;break;case"ease-in-out":a=0,s=0,o=.58,l=1;break;default:{var c=n[0].split("(");if(c[0]==="cubic-bezier"&&c[1].split(")")[0].split(",").length===4){var u=c[1].split(")")[0].split(",").map(function(y){return parseFloat(y)}),d=kJ(u,4);a=d[0],s=d[1],o=d[2],l=d[3]}}}var f=qj(a,o),h=qj(s,l),p=TJ(a,o),g=function(v){return v>1?1:v<0?0:v},m=function(v){for(var k=v>1?1:v,x=k,j=0;j<8;++j){var w=f(x)-k,b=p(x);if(Math.abs(w-k)<Rh||b<Rh)return h(x);x=g(x-w/b)}return h(x)};return m.isStepper=!1,m},OJ=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=t.stiff,r=n===void 0?100:n,a=t.damping,s=a===void 0?8:a,o=t.dt,l=o===void 0?17:o,c=function(d,f,h){var p=-(d-f)*r,g=h*s,m=h+(p-g)*l/1e3,y=h*l/1e3+d;return Math.abs(y-f)<Rh&&Math.abs(m)<Rh?[f,0]:[y,m]};return c.isStepper=!0,c.dt=l,c},PJ=function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];var a=n[0];if(typeof a=="string")switch(a){case"ease":case"ease-in-out":case"ease-out":case"ease-in":case"linear":return Kj(a);case"spring":return OJ();default:if(a.split("(")[0]==="cubic-bezier")return Kj(a)}return typeof a=="function"?a:null};function Cu(e){"@babel/helpers - typeof";return Cu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Cu(e)}function Vj(e){return IJ(e)||MJ(e)||sR(e)||RJ()}function RJ(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
116
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function MJ(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function IJ(e){if(Array.isArray(e))return ob(e)}function Yj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function on(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?Yj(Object(n),!0).forEach(function(r){sb(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Yj(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function sb(e,t,n){return t=$J(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function $J(e){var t=LJ(e,"string");return Cu(t)==="symbol"?t:String(t)}function LJ(e,t){if(Cu(e)!=="object"||e===null)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Cu(r)!=="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function DJ(e,t){return FJ(e)||zJ(e,t)||sR(e,t)||BJ()}function BJ(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
117
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function sR(e,t){if(e){if(typeof e=="string")return ob(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return ob(e,t)}}function ob(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function zJ(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var r,a,s,o,l=[],c=!0,u=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(r=s.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(d){u=!0,a=d}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(u)throw a}}return l}}function FJ(e){if(Array.isArray(e))return e}var Mh=function(t,n,r){return t+(n-t)*r},lb=function(t){var n=t.from,r=t.to;return n!==r},UJ=function e(t,n,r){var a=Mc(function(s,o){if(lb(o)){var l=t(o.from,o.to,o.velocity),c=DJ(l,2),u=c[0],d=c[1];return on(on({},o),{},{from:u,velocity:d})}return o},n);return r<1?Mc(function(s,o){return lb(o)?on(on({},o),{},{velocity:Mh(o.velocity,a[s].velocity,r),from:Mh(o.from,a[s].from,r)}):o},n):e(t,a,r-1)};const WJ=function(e,t,n,r,a){var s=bJ(e,t),o=s.reduce(function(y,v){return on(on({},y),{},sb({},v,[e[v],t[v]]))},{}),l=s.reduce(function(y,v){return on(on({},y),{},sb({},v,{from:e[v],velocity:0,to:t[v]}))},{}),c=-1,u,d,f=function(){return null},h=function(){return Mc(function(v,k){return k.from},l)},p=function(){return!Object.values(l).filter(lb).length},g=function(v){u||(u=v);var k=v-u,x=k/n.dt;l=UJ(n,l,x),a(on(on(on({},e),t),h())),u=v,p()||(c=requestAnimationFrame(f))},m=function(v){d||(d=v);var k=(v-d)/r,x=Mc(function(w,b){return Mh.apply(void 0,Vj(b).concat([n(k)]))},o);if(a(on(on(on({},e),t),x)),k<1)c=requestAnimationFrame(f);else{var j=Mc(function(w,b){return Mh.apply(void 0,Vj(b).concat([n(1)]))},o);a(on(on(on({},e),t),j))}};return f=n.isStepper?g:m,function(){return requestAnimationFrame(f),function(){cancelAnimationFrame(c)}}};function tl(e){"@babel/helpers - typeof";return tl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},tl(e)}var HJ=["children","begin","duration","attributeName","easing","isActive","steps","from","to","canBegin","onAnimationEnd","shouldReAnimate","onAnimationReStart"];function GJ(e,t){if(e==null)return{};var n=qJ(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function qJ(e,t){if(e==null)return{};var n={},r=Object.keys(e),a,s;for(s=0;s<r.length;s++)a=r[s],!(t.indexOf(a)>=0)&&(n[a]=e[a]);return n}function Ng(e){return XJ(e)||YJ(e)||VJ(e)||KJ()}function KJ(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
118
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function VJ(e,t){if(e){if(typeof e=="string")return cb(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return cb(e,t)}}function YJ(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function XJ(e){if(Array.isArray(e))return cb(e)}function cb(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Xj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Pr(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?Xj(Object(n),!0).forEach(function(r){bc(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Xj(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function bc(e,t,n){return t=oR(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function QJ(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function ZJ(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,oR(r.key),r)}}function JJ(e,t,n){return t&&ZJ(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function oR(e){var t=eee(e,"string");return tl(t)==="symbol"?t:String(t)}function eee(e,t){if(tl(e)!=="object"||e===null)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(tl(r)!=="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function tee(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&ub(e,t)}function ub(e,t){return ub=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},ub(e,t)}function nee(e){var t=ree();return function(){var r=Ih(e),a;if(t){var s=Ih(this).constructor;a=Reflect.construct(r,arguments,s)}else a=r.apply(this,arguments);return db(this,a)}}function db(e,t){if(t&&(tl(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return fb(e)}function fb(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function ree(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function Ih(e){return Ih=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},Ih(e)}var Si=function(e){tee(n,e);var t=nee(n);function n(r,a){var s;QJ(this,n),s=t.call(this,r,a);var o=s.props,l=o.isActive,c=o.attributeName,u=o.from,d=o.to,f=o.steps,h=o.children,p=o.duration;if(s.handleStyleChange=s.handleStyleChange.bind(fb(s)),s.changeStyle=s.changeStyle.bind(fb(s)),!l||p<=0)return s.state={style:{}},typeof h=="function"&&(s.state={style:d}),db(s);if(f&&f.length)s.state={style:f[0].style};else if(u){if(typeof h=="function")return s.state={style:u},db(s);s.state={style:c?bc({},c,u):u}}else s.state={style:{}};return s}return JJ(n,[{key:"componentDidMount",value:function(){var a=this.props,s=a.isActive,o=a.canBegin;this.mounted=!0,!(!s||!o)&&this.runAnimation(this.props)}},{key:"componentDidUpdate",value:function(a){var s=this.props,o=s.isActive,l=s.canBegin,c=s.attributeName,u=s.shouldReAnimate,d=s.to,f=s.from,h=this.state.style;if(l){if(!o){var p={style:c?bc({},c,d):d};this.state&&h&&(c&&h[c]!==d||!c&&h!==d)&&this.setState(p);return}if(!(cJ(a.to,d)&&a.canBegin&&a.isActive)){var g=!a.canBegin||!a.isActive;this.manager&&this.manager.stop(),this.stopJSAnimation&&this.stopJSAnimation();var m=g||u?f:a.to;if(this.state&&h){var y={style:c?bc({},c,m):m};(c&&h[c]!==m||!c&&h!==m)&&this.setState(y)}this.runAnimation(Pr(Pr({},this.props),{},{from:m,begin:0}))}}}},{key:"componentWillUnmount",value:function(){this.mounted=!1;var a=this.props.onAnimationEnd;this.unSubscribe&&this.unSubscribe(),this.manager&&(this.manager.stop(),this.manager=null),this.stopJSAnimation&&this.stopJSAnimation(),a&&a()}},{key:"handleStyleChange",value:function(a){this.changeStyle(a)}},{key:"changeStyle",value:function(a){this.mounted&&this.setState({style:a})}},{key:"runJSAnimation",value:function(a){var s=this,o=a.from,l=a.to,c=a.duration,u=a.easing,d=a.begin,f=a.onAnimationEnd,h=a.onAnimationStart,p=WJ(o,l,PJ(u),c,this.changeStyle),g=function(){s.stopJSAnimation=p()};this.manager.start([h,d,g,c,f])}},{key:"runStepAnimation",value:function(a){var s=this,o=a.steps,l=a.begin,c=a.onAnimationStart,u=o[0],d=u.style,f=u.duration,h=f===void 0?0:f,p=function(m,y,v){if(v===0)return m;var k=y.duration,x=y.easing,j=x===void 0?"ease":x,w=y.style,b=y.properties,N=y.onAnimationEnd,E=v>0?o[v-1]:y,O=b||Object.keys(w);if(typeof j=="function"||j==="spring")return[].concat(Ng(m),[s.runJSAnimation.bind(s,{from:E.style,to:w,duration:k,easing:j}),k]);var C=Gj(O,k,j),P=Pr(Pr(Pr({},E.style),w),{},{transition:C});return[].concat(Ng(m),[P,k,N]).filter(xJ)};return this.manager.start([c].concat(Ng(o.reduce(p,[d,Math.max(h,l)])),[a.onAnimationEnd]))}},{key:"runAnimation",value:function(a){this.manager||(this.manager=gJ());var s=a.begin,o=a.duration,l=a.attributeName,c=a.to,u=a.easing,d=a.onAnimationStart,f=a.onAnimationEnd,h=a.steps,p=a.children,g=this.manager;if(this.unSubscribe=g.subscribe(this.handleStyleChange),typeof u=="function"||typeof p=="function"||u==="spring"){this.runJSAnimation(a);return}if(h.length>1){this.runStepAnimation(a);return}var m=l?bc({},l,c):c,y=Gj(Object.keys(m),o,u);g.start([d,s,Pr(Pr({},m),{},{transition:y}),o,f])}},{key:"render",value:function(){var a=this.props,s=a.children;a.begin;var o=a.duration;a.attributeName,a.easing;var l=a.isActive;a.steps,a.from,a.to,a.canBegin,a.onAnimationEnd,a.shouldReAnimate,a.onAnimationReStart;var c=GJ(a,HJ),u=S.Children.count(s),d=this.state.style;if(typeof s=="function")return s(d);if(!l||u===0||o<=0)return s;var f=function(p){var g=p.props,m=g.style,y=m===void 0?{}:m,v=g.className,k=S.cloneElement(p,Pr(Pr({},c),{},{style:Pr(Pr({},y),d),className:v}));return k};return u===1?f(S.Children.only(s)):q.createElement("div",null,S.Children.map(s,function(h){return f(h)}))}}]),n}(S.PureComponent);Si.displayName="Animate";Si.defaultProps={begin:0,duration:1e3,from:"",to:"",attributeName:"",easing:"ease",isActive:!0,canBegin:!0,steps:[],onAnimationEnd:function(){},onAnimationStart:function(){}};Si.propTypes={from:Qe.oneOfType([Qe.object,Qe.string]),to:Qe.oneOfType([Qe.object,Qe.string]),attributeName:Qe.string,duration:Qe.number,begin:Qe.number,easing:Qe.oneOfType([Qe.string,Qe.func]),steps:Qe.arrayOf(Qe.shape({duration:Qe.number.isRequired,style:Qe.object.isRequired,easing:Qe.oneOfType([Qe.oneOf(["ease","ease-in","ease-out","ease-in-out","linear"]),Qe.func]),properties:Qe.arrayOf("string"),onAnimationEnd:Qe.func})),children:Qe.oneOfType([Qe.node,Qe.func]),isActive:Qe.bool,canBegin:Qe.bool,onAnimationEnd:Qe.func,shouldReAnimate:Qe.bool,onAnimationStart:Qe.func,onAnimationReStart:Qe.func};function Tu(e){"@babel/helpers - typeof";return Tu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Tu(e)}function $h(){return $h=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},$h.apply(this,arguments)}function aee(e,t){return lee(e)||oee(e,t)||see(e,t)||iee()}function iee(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
119
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function see(e,t){if(e){if(typeof e=="string")return Qj(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Qj(e,t)}}function Qj(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function oee(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var r,a,s,o,l=[],c=!0,u=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(r=s.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(d){u=!0,a=d}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(u)throw a}}return l}}function lee(e){if(Array.isArray(e))return e}function Zj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Jj(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?Zj(Object(n),!0).forEach(function(r){cee(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Zj(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function cee(e,t,n){return t=uee(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function uee(e){var t=dee(e,"string");return Tu(t)=="symbol"?t:t+""}function dee(e,t){if(Tu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Tu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var eN=function(t,n,r,a,s){var o=Math.min(Math.abs(r)/2,Math.abs(a)/2),l=a>=0?1:-1,c=r>=0?1:-1,u=a>=0&&r>=0||a<0&&r<0?1:0,d;if(o>0&&s instanceof Array){for(var f=[0,0,0,0],h=0,p=4;h<p;h++)f[h]=s[h]>o?o:s[h];d="M".concat(t,",").concat(n+l*f[0]),f[0]>0&&(d+="A ".concat(f[0],",").concat(f[0],",0,0,").concat(u,",").concat(t+c*f[0],",").concat(n)),d+="L ".concat(t+r-c*f[1],",").concat(n),f[1]>0&&(d+="A ".concat(f[1],",").concat(f[1],",0,0,").concat(u,`,
120
- `).concat(t+r,",").concat(n+l*f[1])),d+="L ".concat(t+r,",").concat(n+a-l*f[2]),f[2]>0&&(d+="A ".concat(f[2],",").concat(f[2],",0,0,").concat(u,`,
121
- `).concat(t+r-c*f[2],",").concat(n+a)),d+="L ".concat(t+c*f[3],",").concat(n+a),f[3]>0&&(d+="A ".concat(f[3],",").concat(f[3],",0,0,").concat(u,`,
122
- `).concat(t,",").concat(n+a-l*f[3])),d+="Z"}else if(o>0&&s===+s&&s>0){var g=Math.min(o,s);d="M ".concat(t,",").concat(n+l*g,`
123
- A `).concat(g,",").concat(g,",0,0,").concat(u,",").concat(t+c*g,",").concat(n,`
124
- L `).concat(t+r-c*g,",").concat(n,`
125
- A `).concat(g,",").concat(g,",0,0,").concat(u,",").concat(t+r,",").concat(n+l*g,`
126
- L `).concat(t+r,",").concat(n+a-l*g,`
127
- A `).concat(g,",").concat(g,",0,0,").concat(u,",").concat(t+r-c*g,",").concat(n+a,`
128
- L `).concat(t+c*g,",").concat(n+a,`
129
- A `).concat(g,",").concat(g,",0,0,").concat(u,",").concat(t,",").concat(n+a-l*g," Z")}else d="M ".concat(t,",").concat(n," h ").concat(r," v ").concat(a," h ").concat(-r," Z");return d},fee=function(t,n){if(!t||!n)return!1;var r=t.x,a=t.y,s=n.x,o=n.y,l=n.width,c=n.height;if(Math.abs(l)>0&&Math.abs(c)>0){var u=Math.min(s,s+l),d=Math.max(s,s+l),f=Math.min(o,o+c),h=Math.max(o,o+c);return r>=u&&r<=d&&a>=f&&a<=h}return!1},hee={x:0,y:0,width:0,height:0,radius:0,isAnimationActive:!1,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},Kw=function(t){var n=Jj(Jj({},hee),t),r=S.useRef(),a=S.useState(-1),s=aee(a,2),o=s[0],l=s[1];S.useEffect(function(){if(r.current&&r.current.getTotalLength)try{var j=r.current.getTotalLength();j&&l(j)}catch{}},[]);var c=n.x,u=n.y,d=n.width,f=n.height,h=n.radius,p=n.className,g=n.animationEasing,m=n.animationDuration,y=n.animationBegin,v=n.isAnimationActive,k=n.isUpdateAnimationActive;if(c!==+c||u!==+u||d!==+d||f!==+f||d===0||f===0)return null;var x=Ye("recharts-rectangle",p);return k?q.createElement(Si,{canBegin:o>0,from:{width:d,height:f,x:c,y:u},to:{width:d,height:f,x:c,y:u},duration:m,animationEasing:g,isActive:k},function(j){var w=j.width,b=j.height,N=j.x,E=j.y;return q.createElement(Si,{canBegin:o>0,from:"0px ".concat(o===-1?1:o,"px"),to:"".concat(o,"px 0px"),attributeName:"strokeDasharray",begin:y,duration:m,isActive:v,easing:g},q.createElement("path",$h({},Ve(n,!0),{className:x,d:eN(N,E,w,b,h),ref:r})))}):q.createElement("path",$h({},Ve(n,!0),{className:x,d:eN(c,u,d,f,h)}))};function hb(){return hb=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},hb.apply(this,arguments)}var lR=function(t){var n=t.cx,r=t.cy,a=t.r,s=t.className,o=Ye("recharts-dot",s);return n===+n&&r===+r&&a===+a?S.createElement("circle",hb({},Ve(t,!1),Jf(t),{className:o,cx:n,cy:r,r:a})):null};function Ou(e){"@babel/helpers - typeof";return Ou=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ou(e)}var pee=["x","y","top","left","width","height","className"];function pb(){return pb=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},pb.apply(this,arguments)}function tN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function mee(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?tN(Object(n),!0).forEach(function(r){gee(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):tN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function gee(e,t,n){return t=vee(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function vee(e){var t=yee(e,"string");return Ou(t)=="symbol"?t:t+""}function yee(e,t){if(Ou(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Ou(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function bee(e,t){if(e==null)return{};var n=xee(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function xee(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}var wee=function(t,n,r,a,s,o){return"M".concat(t,",").concat(s,"v").concat(a,"M").concat(o,",").concat(n,"h").concat(r)},kee=function(t){var n=t.x,r=n===void 0?0:n,a=t.y,s=a===void 0?0:a,o=t.top,l=o===void 0?0:o,c=t.left,u=c===void 0?0:c,d=t.width,f=d===void 0?0:d,h=t.height,p=h===void 0?0:h,g=t.className,m=bee(t,pee),y=mee({x:r,y:s,top:l,left:u,width:f,height:p},m);return!de(r)||!de(s)||!de(f)||!de(p)||!de(l)||!de(u)?null:q.createElement("path",pb({},Ve(y,!0),{className:Ye("recharts-cross",g),d:wee(r,s,f,p,l,u)}))},See=SO,jee=See(Object.getPrototypeOf,Object),Nee=jee,Eee=Ba,_ee=Nee,Aee=za,Cee="[object Object]",Tee=Function.prototype,Oee=Object.prototype,cR=Tee.toString,Pee=Oee.hasOwnProperty,Ree=cR.call(Object);function Mee(e){if(!Aee(e)||Eee(e)!=Cee)return!1;var t=_ee(e);if(t===null)return!0;var n=Pee.call(t,"constructor")&&t.constructor;return typeof n=="function"&&n instanceof n&&cR.call(n)==Ree}var Iee=Mee;const $ee=Ze(Iee);var Lee=Ba,Dee=za,Bee="[object Boolean]";function zee(e){return e===!0||e===!1||Dee(e)&&Lee(e)==Bee}var Fee=zee;const Uee=Ze(Fee);function Pu(e){"@babel/helpers - typeof";return Pu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Pu(e)}function Lh(){return Lh=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Lh.apply(this,arguments)}function Wee(e,t){return Kee(e)||qee(e,t)||Gee(e,t)||Hee()}function Hee(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
130
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Gee(e,t){if(e){if(typeof e=="string")return nN(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return nN(e,t)}}function nN(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function qee(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var r,a,s,o,l=[],c=!0,u=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(r=s.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(d){u=!0,a=d}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(u)throw a}}return l}}function Kee(e){if(Array.isArray(e))return e}function rN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function aN(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?rN(Object(n),!0).forEach(function(r){Vee(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):rN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function Vee(e,t,n){return t=Yee(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Yee(e){var t=Xee(e,"string");return Pu(t)=="symbol"?t:t+""}function Xee(e,t){if(Pu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Pu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var iN=function(t,n,r,a,s){var o=r-a,l;return l="M ".concat(t,",").concat(n),l+="L ".concat(t+r,",").concat(n),l+="L ".concat(t+r-o/2,",").concat(n+s),l+="L ".concat(t+r-o/2-a,",").concat(n+s),l+="L ".concat(t,",").concat(n," Z"),l},Qee={x:0,y:0,upperWidth:0,lowerWidth:0,height:0,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},Zee=function(t){var n=aN(aN({},Qee),t),r=S.useRef(),a=S.useState(-1),s=Wee(a,2),o=s[0],l=s[1];S.useEffect(function(){if(r.current&&r.current.getTotalLength)try{var x=r.current.getTotalLength();x&&l(x)}catch{}},[]);var c=n.x,u=n.y,d=n.upperWidth,f=n.lowerWidth,h=n.height,p=n.className,g=n.animationEasing,m=n.animationDuration,y=n.animationBegin,v=n.isUpdateAnimationActive;if(c!==+c||u!==+u||d!==+d||f!==+f||h!==+h||d===0&&f===0||h===0)return null;var k=Ye("recharts-trapezoid",p);return v?q.createElement(Si,{canBegin:o>0,from:{upperWidth:0,lowerWidth:0,height:h,x:c,y:u},to:{upperWidth:d,lowerWidth:f,height:h,x:c,y:u},duration:m,animationEasing:g,isActive:v},function(x){var j=x.upperWidth,w=x.lowerWidth,b=x.height,N=x.x,E=x.y;return q.createElement(Si,{canBegin:o>0,from:"0px ".concat(o===-1?1:o,"px"),to:"".concat(o,"px 0px"),attributeName:"strokeDasharray",begin:y,duration:m,easing:g},q.createElement("path",Lh({},Ve(n,!0),{className:k,d:iN(N,E,j,w,b),ref:r})))}):q.createElement("g",null,q.createElement("path",Lh({},Ve(n,!0),{className:k,d:iN(c,u,d,f,h)})))},Jee=["option","shapeType","propTransformer","activeClassName","isActive"];function Ru(e){"@babel/helpers - typeof";return Ru=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ru(e)}function ete(e,t){if(e==null)return{};var n=tte(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function tte(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}function sN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Dh(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?sN(Object(n),!0).forEach(function(r){nte(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):sN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function nte(e,t,n){return t=rte(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function rte(e){var t=ate(e,"string");return Ru(t)=="symbol"?t:t+""}function ate(e,t){if(Ru(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Ru(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function ite(e,t){return Dh(Dh({},t),e)}function ste(e,t){return e==="symbols"}function oN(e){var t=e.shapeType,n=e.elementProps;switch(t){case"rectangle":return q.createElement(Kw,n);case"trapezoid":return q.createElement(Zee,n);case"sector":return q.createElement(QP,n);case"symbols":if(ste(t))return q.createElement(dw,n);break;default:return null}}function ote(e){return S.isValidElement(e)?e.props:e}function lte(e){var t=e.option,n=e.shapeType,r=e.propTransformer,a=r===void 0?ite:r,s=e.activeClassName,o=s===void 0?"recharts-active-shape":s,l=e.isActive,c=ete(e,Jee),u;if(S.isValidElement(t))u=S.cloneElement(t,Dh(Dh({},c),ote(t)));else if(De(t))u=t(c);else if($ee(t)&&!Uee(t)){var d=a(t,c);u=q.createElement(oN,{shapeType:n,elementProps:d})}else{var f=c;u=q.createElement(oN,{shapeType:n,elementProps:f})}return l?q.createElement(tn,{className:o},u):u}function lm(e,t){return t!=null&&"trapezoids"in e.props}function cm(e,t){return t!=null&&"sectors"in e.props}function Mu(e,t){return t!=null&&"points"in e.props}function cte(e,t){var n,r,a=e.x===(t==null||(n=t.labelViewBox)===null||n===void 0?void 0:n.x)||e.x===t.x,s=e.y===(t==null||(r=t.labelViewBox)===null||r===void 0?void 0:r.y)||e.y===t.y;return a&&s}function ute(e,t){var n=e.endAngle===t.endAngle,r=e.startAngle===t.startAngle;return n&&r}function dte(e,t){var n=e.x===t.x,r=e.y===t.y,a=e.z===t.z;return n&&r&&a}function fte(e,t){var n;return lm(e,t)?n=cte:cm(e,t)?n=ute:Mu(e,t)&&(n=dte),n}function hte(e,t){var n;return lm(e,t)?n="trapezoids":cm(e,t)?n="sectors":Mu(e,t)&&(n="points"),n}function pte(e,t){if(lm(e,t)){var n;return(n=t.tooltipPayload)===null||n===void 0||(n=n[0])===null||n===void 0||(n=n.payload)===null||n===void 0?void 0:n.payload}if(cm(e,t)){var r;return(r=t.tooltipPayload)===null||r===void 0||(r=r[0])===null||r===void 0||(r=r.payload)===null||r===void 0?void 0:r.payload}return Mu(e,t)?t.payload:{}}function mte(e){var t=e.activeTooltipItem,n=e.graphicalItem,r=e.itemData,a=hte(n,t),s=pte(n,t),o=r.filter(function(c,u){var d=Ww(s,c),f=n.props[a].filter(function(g){var m=fte(n,t);return m(g,t)}),h=n.props[a].indexOf(f[f.length-1]),p=u===h;return d&&p}),l=r.indexOf(o[o.length-1]);return l}var gte=Math.ceil,vte=Math.max;function yte(e,t,n,r){for(var a=-1,s=vte(gte((t-e)/(n||1)),0),o=Array(s);s--;)o[r?s:++a]=e,e+=n;return o}var bte=yte,xte=UO,lN=1/0,wte=17976931348623157e292;function kte(e){if(!e)return e===0?e:0;if(e=xte(e),e===lN||e===-lN){var t=e<0?-1:1;return t*wte}return e===e?e:0}var uR=kte,Ste=bte,jte=Xp,Eg=uR;function Nte(e){return function(t,n,r){return r&&typeof r!="number"&&jte(t,n,r)&&(n=r=void 0),t=Eg(t),n===void 0?(n=t,t=0):n=Eg(n),r=r===void 0?t<n?1:-1:Eg(r),Ste(t,n,r,e)}}var Ete=Nte,_te=Ete,Ate=_te(),Cte=Ate;const Bh=Ze(Cte);function Iu(e){"@babel/helpers - typeof";return Iu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Iu(e)}function cN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function uN(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?cN(Object(n),!0).forEach(function(r){dR(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):cN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function dR(e,t,n){return t=Tte(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Tte(e){var t=Ote(e,"string");return Iu(t)=="symbol"?t:t+""}function Ote(e,t){if(Iu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Iu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var Pte=["Webkit","Moz","O","ms"],Rte=function(t,n){var r=t.replace(/(\w)/,function(s){return s.toUpperCase()}),a=Pte.reduce(function(s,o){return uN(uN({},s),{},dR({},o+r,n))},{});return a[t]=n,a};function nl(e){"@babel/helpers - typeof";return nl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},nl(e)}function zh(){return zh=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},zh.apply(this,arguments)}function dN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function _g(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?dN(Object(n),!0).forEach(function(r){Yn(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):dN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function Mte(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function fN(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,hR(r.key),r)}}function Ite(e,t,n){return t&&fN(e.prototype,t),n&&fN(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function $te(e,t,n){return t=Fh(t),Lte(e,fR()?Reflect.construct(t,n||[],Fh(e).constructor):t.apply(e,n))}function Lte(e,t){if(t&&(nl(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Dte(e)}function Dte(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function fR(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(fR=function(){return!!e})()}function Fh(e){return Fh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},Fh(e)}function Bte(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&mb(e,t)}function mb(e,t){return mb=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},mb(e,t)}function Yn(e,t,n){return t=hR(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function hR(e){var t=zte(e,"string");return nl(t)=="symbol"?t:t+""}function zte(e,t){if(nl(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(nl(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}var Fte=function(t){var n=t.data,r=t.startIndex,a=t.endIndex,s=t.x,o=t.width,l=t.travellerWidth;if(!n||!n.length)return{};var c=n.length,u=Pc().domain(Bh(0,c)).range([s,s+o-l]),d=u.domain().map(function(f){return u(f)});return{isTextActive:!1,isSlideMoving:!1,isTravellerMoving:!1,isTravellerFocused:!1,startX:u(r),endX:u(a),scale:u,scaleValues:d}},hN=function(t){return t.changedTouches&&!!t.changedTouches.length},rl=function(e){function t(n){var r;return Mte(this,t),r=$te(this,t,[n]),Yn(r,"handleDrag",function(a){r.leaveTimer&&(clearTimeout(r.leaveTimer),r.leaveTimer=null),r.state.isTravellerMoving?r.handleTravellerMove(a):r.state.isSlideMoving&&r.handleSlideDrag(a)}),Yn(r,"handleTouchMove",function(a){a.changedTouches!=null&&a.changedTouches.length>0&&r.handleDrag(a.changedTouches[0])}),Yn(r,"handleDragEnd",function(){r.setState({isTravellerMoving:!1,isSlideMoving:!1},function(){var a=r.props,s=a.endIndex,o=a.onDragEnd,l=a.startIndex;o==null||o({endIndex:s,startIndex:l})}),r.detachDragEndListener()}),Yn(r,"handleLeaveWrapper",function(){(r.state.isTravellerMoving||r.state.isSlideMoving)&&(r.leaveTimer=window.setTimeout(r.handleDragEnd,r.props.leaveTimeOut))}),Yn(r,"handleEnterSlideOrTraveller",function(){r.setState({isTextActive:!0})}),Yn(r,"handleLeaveSlideOrTraveller",function(){r.setState({isTextActive:!1})}),Yn(r,"handleSlideDragStart",function(a){var s=hN(a)?a.changedTouches[0]:a;r.setState({isTravellerMoving:!1,isSlideMoving:!0,slideMoveStartX:s.pageX}),r.attachDragEndListener()}),r.travellerDragStartHandlers={startX:r.handleTravellerDragStart.bind(r,"startX"),endX:r.handleTravellerDragStart.bind(r,"endX")},r.state={},r}return Bte(t,e),Ite(t,[{key:"componentWillUnmount",value:function(){this.leaveTimer&&(clearTimeout(this.leaveTimer),this.leaveTimer=null),this.detachDragEndListener()}},{key:"getIndex",value:function(r){var a=r.startX,s=r.endX,o=this.state.scaleValues,l=this.props,c=l.gap,u=l.data,d=u.length-1,f=Math.min(a,s),h=Math.max(a,s),p=t.getIndexInRange(o,f),g=t.getIndexInRange(o,h);return{startIndex:p-p%c,endIndex:g===d?d:g-g%c}}},{key:"getTextOfTick",value:function(r){var a=this.props,s=a.data,o=a.tickFormatter,l=a.dataKey,c=da(s[r],l,r);return De(o)?o(c,r):c}},{key:"attachDragEndListener",value:function(){window.addEventListener("mouseup",this.handleDragEnd,!0),window.addEventListener("touchend",this.handleDragEnd,!0),window.addEventListener("mousemove",this.handleDrag,!0)}},{key:"detachDragEndListener",value:function(){window.removeEventListener("mouseup",this.handleDragEnd,!0),window.removeEventListener("touchend",this.handleDragEnd,!0),window.removeEventListener("mousemove",this.handleDrag,!0)}},{key:"handleSlideDrag",value:function(r){var a=this.state,s=a.slideMoveStartX,o=a.startX,l=a.endX,c=this.props,u=c.x,d=c.width,f=c.travellerWidth,h=c.startIndex,p=c.endIndex,g=c.onChange,m=r.pageX-s;m>0?m=Math.min(m,u+d-f-l,u+d-f-o):m<0&&(m=Math.max(m,u-o,u-l));var y=this.getIndex({startX:o+m,endX:l+m});(y.startIndex!==h||y.endIndex!==p)&&g&&g(y),this.setState({startX:o+m,endX:l+m,slideMoveStartX:r.pageX})}},{key:"handleTravellerDragStart",value:function(r,a){var s=hN(a)?a.changedTouches[0]:a;this.setState({isSlideMoving:!1,isTravellerMoving:!0,movingTravellerId:r,brushMoveStartX:s.pageX}),this.attachDragEndListener()}},{key:"handleTravellerMove",value:function(r){var a=this.state,s=a.brushMoveStartX,o=a.movingTravellerId,l=a.endX,c=a.startX,u=this.state[o],d=this.props,f=d.x,h=d.width,p=d.travellerWidth,g=d.onChange,m=d.gap,y=d.data,v={startX:this.state.startX,endX:this.state.endX},k=r.pageX-s;k>0?k=Math.min(k,f+h-p-u):k<0&&(k=Math.max(k,f-u)),v[o]=u+k;var x=this.getIndex(v),j=x.startIndex,w=x.endIndex,b=function(){var E=y.length-1;return o==="startX"&&(l>c?j%m===0:w%m===0)||l<c&&w===E||o==="endX"&&(l>c?w%m===0:j%m===0)||l>c&&w===E};this.setState(Yn(Yn({},o,u+k),"brushMoveStartX",r.pageX),function(){g&&b()&&g(x)})}},{key:"handleTravellerMoveKeyboard",value:function(r,a){var s=this,o=this.state,l=o.scaleValues,c=o.startX,u=o.endX,d=this.state[a],f=l.indexOf(d);if(f!==-1){var h=f+r;if(!(h===-1||h>=l.length)){var p=l[h];a==="startX"&&p>=u||a==="endX"&&p<=c||this.setState(Yn({},a,p),function(){s.props.onChange(s.getIndex({startX:s.state.startX,endX:s.state.endX}))})}}}},{key:"renderBackground",value:function(){var r=this.props,a=r.x,s=r.y,o=r.width,l=r.height,c=r.fill,u=r.stroke;return q.createElement("rect",{stroke:u,fill:c,x:a,y:s,width:o,height:l})}},{key:"renderPanorama",value:function(){var r=this.props,a=r.x,s=r.y,o=r.width,l=r.height,c=r.data,u=r.children,d=r.padding,f=S.Children.only(u);return f?q.cloneElement(f,{x:a,y:s,width:o,height:l,margin:d,compact:!0,data:c}):null}},{key:"renderTravellerLayer",value:function(r,a){var s,o,l=this,c=this.props,u=c.y,d=c.travellerWidth,f=c.height,h=c.traveller,p=c.ariaLabel,g=c.data,m=c.startIndex,y=c.endIndex,v=Math.max(r,this.props.x),k=_g(_g({},Ve(this.props,!1)),{},{x:v,y:u,width:d,height:f}),x=p||"Min value: ".concat((s=g[m])===null||s===void 0?void 0:s.name,", Max value: ").concat((o=g[y])===null||o===void 0?void 0:o.name);return q.createElement(tn,{tabIndex:0,role:"slider","aria-label":x,"aria-valuenow":r,className:"recharts-brush-traveller",onMouseEnter:this.handleEnterSlideOrTraveller,onMouseLeave:this.handleLeaveSlideOrTraveller,onMouseDown:this.travellerDragStartHandlers[a],onTouchStart:this.travellerDragStartHandlers[a],onKeyDown:function(w){["ArrowLeft","ArrowRight"].includes(w.key)&&(w.preventDefault(),w.stopPropagation(),l.handleTravellerMoveKeyboard(w.key==="ArrowRight"?1:-1,a))},onFocus:function(){l.setState({isTravellerFocused:!0})},onBlur:function(){l.setState({isTravellerFocused:!1})},style:{cursor:"col-resize"}},t.renderTraveller(h,k))}},{key:"renderSlide",value:function(r,a){var s=this.props,o=s.y,l=s.height,c=s.stroke,u=s.travellerWidth,d=Math.min(r,a)+u,f=Math.max(Math.abs(a-r)-u,0);return q.createElement("rect",{className:"recharts-brush-slide",onMouseEnter:this.handleEnterSlideOrTraveller,onMouseLeave:this.handleLeaveSlideOrTraveller,onMouseDown:this.handleSlideDragStart,onTouchStart:this.handleSlideDragStart,style:{cursor:"move"},stroke:"none",fill:c,fillOpacity:.2,x:d,y:o,width:f,height:l})}},{key:"renderText",value:function(){var r=this.props,a=r.startIndex,s=r.endIndex,o=r.y,l=r.height,c=r.travellerWidth,u=r.stroke,d=this.state,f=d.startX,h=d.endX,p=5,g={pointerEvents:"none",fill:u};return q.createElement(tn,{className:"recharts-brush-texts"},q.createElement(ph,zh({textAnchor:"end",verticalAnchor:"middle",x:Math.min(f,h)-p,y:o+l/2},g),this.getTextOfTick(a)),q.createElement(ph,zh({textAnchor:"start",verticalAnchor:"middle",x:Math.max(f,h)+c+p,y:o+l/2},g),this.getTextOfTick(s)))}},{key:"render",value:function(){var r=this.props,a=r.data,s=r.className,o=r.children,l=r.x,c=r.y,u=r.width,d=r.height,f=r.alwaysShowText,h=this.state,p=h.startX,g=h.endX,m=h.isTextActive,y=h.isSlideMoving,v=h.isTravellerMoving,k=h.isTravellerFocused;if(!a||!a.length||!de(l)||!de(c)||!de(u)||!de(d)||u<=0||d<=0)return null;var x=Ye("recharts-brush",s),j=q.Children.count(o)===1,w=Rte("userSelect","none");return q.createElement(tn,{className:x,onMouseLeave:this.handleLeaveWrapper,onTouchMove:this.handleTouchMove,style:w},this.renderBackground(),j&&this.renderPanorama(),this.renderSlide(p,g),this.renderTravellerLayer(p,"startX"),this.renderTravellerLayer(g,"endX"),(m||y||v||k||f)&&this.renderText())}}],[{key:"renderDefaultTraveller",value:function(r){var a=r.x,s=r.y,o=r.width,l=r.height,c=r.stroke,u=Math.floor(s+l/2)-1;return q.createElement(q.Fragment,null,q.createElement("rect",{x:a,y:s,width:o,height:l,fill:c,stroke:"none"}),q.createElement("line",{x1:a+1,y1:u,x2:a+o-1,y2:u,fill:"none",stroke:"#fff"}),q.createElement("line",{x1:a+1,y1:u+2,x2:a+o-1,y2:u+2,fill:"none",stroke:"#fff"}))}},{key:"renderTraveller",value:function(r,a){var s;return q.isValidElement(r)?s=q.cloneElement(r,a):De(r)?s=r(a):s=t.renderDefaultTraveller(a),s}},{key:"getDerivedStateFromProps",value:function(r,a){var s=r.data,o=r.width,l=r.x,c=r.travellerWidth,u=r.updateId,d=r.startIndex,f=r.endIndex;if(s!==a.prevData||u!==a.prevUpdateId)return _g({prevData:s,prevTravellerWidth:c,prevUpdateId:u,prevX:l,prevWidth:o},s&&s.length?Fte({data:s,width:o,x:l,travellerWidth:c,startIndex:d,endIndex:f}):{scale:null,scaleValues:null});if(a.scale&&(o!==a.prevWidth||l!==a.prevX||c!==a.prevTravellerWidth)){a.scale.range([l,l+o-c]);var h=a.scale.domain().map(function(p){return a.scale(p)});return{prevData:s,prevTravellerWidth:c,prevUpdateId:u,prevX:l,prevWidth:o,startX:a.scale(r.startIndex),endX:a.scale(r.endIndex),scaleValues:h}}return null}},{key:"getIndexInRange",value:function(r,a){for(var s=r.length,o=0,l=s-1;l-o>1;){var c=Math.floor((o+l)/2);r[c]>a?l=c:o=c}return a>=r[l]?l:o}}])}(S.PureComponent);Yn(rl,"displayName","Brush");Yn(rl,"defaultProps",{height:40,travellerWidth:5,gap:1,fill:"#fff",stroke:"#666",padding:{top:1,right:1,bottom:1,left:1},leaveTimeOut:1e3,alwaysShowText:!1});var Ute=yw;function Wte(e,t){var n;return Ute(e,function(r,a,s){return n=t(r,a,s),!n}),!!n}var Hte=Wte,Gte=mO,qte=Ti,Kte=Hte,Vte=Wn,Yte=Xp;function Xte(e,t,n){var r=Vte(e)?Gte:Kte;return n&&Yte(e,t,n)&&(t=void 0),r(e,qte(t))}var Qte=Xte;const Zte=Ze(Qte);var ca=function(t,n){var r=t.alwaysShow,a=t.ifOverflow;return r&&(a="extendDomain"),a===n},pN=LO;function Jte(e,t,n){t=="__proto__"&&pN?pN(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}var ene=Jte,tne=ene,nne=IO,rne=Ti;function ane(e,t){var n={};return t=rne(t),nne(e,function(r,a,s){tne(n,a,t(r,a,s))}),n}var ine=ane;const sne=Ze(ine);function one(e,t){for(var n=-1,r=e==null?0:e.length;++n<r;)if(!t(e[n],n,e))return!1;return!0}var lne=one,cne=yw;function une(e,t){var n=!0;return cne(e,function(r,a,s){return n=!!t(r,a,s),n}),n}var dne=une,fne=lne,hne=dne,pne=Ti,mne=Wn,gne=Xp;function vne(e,t,n){var r=mne(e)?fne:hne;return n&&gne(e,t,n)&&(t=void 0),r(e,pne(t))}var yne=vne;const pR=Ze(yne);var bne=["x","y"];function $u(e){"@babel/helpers - typeof";return $u=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},$u(e)}function gb(){return gb=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},gb.apply(this,arguments)}function mN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function uc(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?mN(Object(n),!0).forEach(function(r){xne(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):mN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function xne(e,t,n){return t=wne(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function wne(e){var t=kne(e,"string");return $u(t)=="symbol"?t:t+""}function kne(e,t){if($u(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if($u(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Sne(e,t){if(e==null)return{};var n=jne(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function jne(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}function Nne(e,t){var n=e.x,r=e.y,a=Sne(e,bne),s="".concat(n),o=parseInt(s,10),l="".concat(r),c=parseInt(l,10),u="".concat(t.height||a.height),d=parseInt(u,10),f="".concat(t.width||a.width),h=parseInt(f,10);return uc(uc(uc(uc(uc({},t),a),o?{x:o}:{}),c?{y:c}:{}),{},{height:d,width:h,name:t.name,radius:t.radius})}function gN(e){return q.createElement(lte,gb({shapeType:"rectangle",propTransformer:Nne,activeClassName:"recharts-active-bar"},e))}var Ene=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return function(r,a){if(typeof t=="number")return t;var s=de(r)||zU(r);return s?t(r,a):(s||Cs(),n)}},_ne=["value","background"],mR;function al(e){"@babel/helpers - typeof";return al=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},al(e)}function Ane(e,t){if(e==null)return{};var n=Cne(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function Cne(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}function Uh(){return Uh=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Uh.apply(this,arguments)}function vN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function $t(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?vN(Object(n),!0).forEach(function(r){oi(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):vN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function Tne(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function yN(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,vR(r.key),r)}}function One(e,t,n){return t&&yN(e.prototype,t),n&&yN(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function Pne(e,t,n){return t=Wh(t),Rne(e,gR()?Reflect.construct(t,n||[],Wh(e).constructor):t.apply(e,n))}function Rne(e,t){if(t&&(al(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Mne(e)}function Mne(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function gR(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(gR=function(){return!!e})()}function Wh(e){return Wh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},Wh(e)}function Ine(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&vb(e,t)}function vb(e,t){return vb=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},vb(e,t)}function oi(e,t,n){return t=vR(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function vR(e){var t=$ne(e,"string");return al(t)=="symbol"?t:t+""}function $ne(e,t){if(al(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(al(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}var yn=function(e){function t(){var n;Tne(this,t);for(var r=arguments.length,a=new Array(r),s=0;s<r;s++)a[s]=arguments[s];return n=Pne(this,t,[].concat(a)),oi(n,"state",{isAnimationFinished:!1}),oi(n,"id",Wp("recharts-bar-")),oi(n,"handleAnimationEnd",function(){var o=n.props.onAnimationEnd;n.setState({isAnimationFinished:!0}),o&&o()}),oi(n,"handleAnimationStart",function(){var o=n.props.onAnimationStart;n.setState({isAnimationFinished:!1}),o&&o()}),n}return Ine(t,e),One(t,[{key:"renderRectanglesStatically",value:function(r){var a=this,s=this.props,o=s.shape,l=s.dataKey,c=s.activeIndex,u=s.activeBar,d=Ve(this.props,!1);return r&&r.map(function(f,h){var p=h===c,g=p?u:o,m=$t($t($t({},d),f),{},{isActive:p,option:g,index:h,dataKey:l,onAnimationStart:a.handleAnimationStart,onAnimationEnd:a.handleAnimationEnd});return q.createElement(tn,Uh({className:"recharts-bar-rectangle"},eh(a.props,f,h),{key:"rectangle-".concat(f==null?void 0:f.x,"-").concat(f==null?void 0:f.y,"-").concat(f==null?void 0:f.value,"-").concat(h)}),q.createElement(gN,m))})}},{key:"renderRectanglesWithAnimation",value:function(){var r=this,a=this.props,s=a.data,o=a.layout,l=a.isAnimationActive,c=a.animationBegin,u=a.animationDuration,d=a.animationEasing,f=a.animationId,h=this.state.prevData;return q.createElement(Si,{begin:c,duration:u,isActive:l,easing:d,from:{t:0},to:{t:1},key:"bar-".concat(f),onAnimationEnd:this.handleAnimationEnd,onAnimationStart:this.handleAnimationStart},function(p){var g=p.t,m=s.map(function(y,v){var k=h&&h[v];if(k){var x=Js(k.x,y.x),j=Js(k.y,y.y),w=Js(k.width,y.width),b=Js(k.height,y.height);return $t($t({},y),{},{x:x(g),y:j(g),width:w(g),height:b(g)})}if(o==="horizontal"){var N=Js(0,y.height),E=N(g);return $t($t({},y),{},{y:y.y+y.height-E,height:E})}var O=Js(0,y.width),C=O(g);return $t($t({},y),{},{width:C})});return q.createElement(tn,null,r.renderRectanglesStatically(m))})}},{key:"renderRectangles",value:function(){var r=this.props,a=r.data,s=r.isAnimationActive,o=this.state.prevData;return s&&a&&a.length&&(!o||!Ww(o,a))?this.renderRectanglesWithAnimation():this.renderRectanglesStatically(a)}},{key:"renderBackground",value:function(){var r=this,a=this.props,s=a.data,o=a.dataKey,l=a.activeIndex,c=Ve(this.props.background,!1);return s.map(function(u,d){u.value;var f=u.background,h=Ane(u,_ne);if(!f)return null;var p=$t($t($t($t($t({},h),{},{fill:"#eee"},f),c),eh(r.props,u,d)),{},{onAnimationStart:r.handleAnimationStart,onAnimationEnd:r.handleAnimationEnd,dataKey:o,index:d,className:"recharts-bar-background-rectangle"});return q.createElement(gN,Uh({key:"background-bar-".concat(d),option:r.props.background,isActive:d===l},p))})}},{key:"renderErrorBar",value:function(r,a){if(this.props.isAnimationActive&&!this.state.isAnimationFinished)return null;var s=this.props,o=s.data,l=s.xAxis,c=s.yAxis,u=s.layout,d=s.children,f=Fr(d,om);if(!f)return null;var h=u==="vertical"?o[0].height/2:o[0].width/2,p=function(y,v){var k=Array.isArray(y.value)?y.value[1]:y.value;return{x:y.x,y:y.y,value:k,errorVal:da(y,v)}},g={clipPath:r?"url(#clipPath-".concat(a,")"):null};return q.createElement(tn,g,f.map(function(m){return q.cloneElement(m,{key:"error-bar-".concat(a,"-").concat(m.props.dataKey),data:o,xAxis:l,yAxis:c,layout:u,offset:h,dataPointFormatter:p})}))}},{key:"render",value:function(){var r=this.props,a=r.hide,s=r.data,o=r.className,l=r.xAxis,c=r.yAxis,u=r.left,d=r.top,f=r.width,h=r.height,p=r.isAnimationActive,g=r.background,m=r.id;if(a||!s||!s.length)return null;var y=this.state.isAnimationFinished,v=Ye("recharts-bar",o),k=l&&l.allowDataOverflow,x=c&&c.allowDataOverflow,j=k||x,w=Xe(m)?this.id:m;return q.createElement(tn,{className:v},k||x?q.createElement("defs",null,q.createElement("clipPath",{id:"clipPath-".concat(w)},q.createElement("rect",{x:k?u:u-f/2,y:x?d:d-h/2,width:k?f:f*2,height:x?h:h*2}))):null,q.createElement(tn,{className:"recharts-bar-rectangles",clipPath:j?"url(#clipPath-".concat(w,")"):null},g?this.renderBackground():null,this.renderRectangles()),this.renderErrorBar(j,w),(!p||y)&&ys.renderCallByParent(this.props,s))}}],[{key:"getDerivedStateFromProps",value:function(r,a){return r.animationId!==a.prevAnimationId?{prevAnimationId:r.animationId,curData:r.data,prevData:a.curData}:r.data!==a.curData?{curData:r.data}:null}}])}(S.PureComponent);mR=yn;oi(yn,"displayName","Bar");oi(yn,"defaultProps",{xAxisId:0,yAxisId:0,legendType:"rect",minPointSize:0,hide:!1,data:[],layout:"vertical",activeBar:!1,isAnimationActive:!Ju.isSsr,animationBegin:0,animationDuration:400,animationEasing:"ease"});oi(yn,"getComposedData",function(e){var t=e.props,n=e.item,r=e.barPosition,a=e.bandSize,s=e.xAxis,o=e.yAxis,l=e.xAxisTicks,c=e.yAxisTicks,u=e.stackedData,d=e.dataStartIndex,f=e.displayedData,h=e.offset,p=lQ(r,n);if(!p)return null;var g=t.layout,m=n.type.defaultProps,y=m!==void 0?$t($t({},m),n.props):n.props,v=y.dataKey,k=y.children,x=y.minPointSize,j=g==="horizontal"?o:s,w=u?j.scale.domain():null,b=gQ({numericAxis:j}),N=Fr(k,uu),E=f.map(function(O,C){var P,$,B,M,F,L;u?P=cQ(u[d+C],w):(P=da(O,v),Array.isArray(P)||(P=[b,P]));var W=Ene(x,mR.defaultProps.minPointSize)(P[1],C);if(g==="horizontal"){var A,z=[o.scale(P[0]),o.scale(P[1])],T=z[0],K=z[1];$=bj({axis:s,ticks:l,bandSize:a,offset:p.offset,entry:O,index:C}),B=(A=K??T)!==null&&A!==void 0?A:void 0,M=p.size;var D=T-K;if(F=Number.isNaN(D)?0:D,L={x:$,y:o.y,width:M,height:o.height},Math.abs(W)>0&&Math.abs(F)<Math.abs(W)){var I=Dr(F||W)*(Math.abs(W)-Math.abs(F));B-=I,F+=I}}else{var ce=[s.scale(P[0]),s.scale(P[1])],ge=ce[0],ve=ce[1];if($=ge,B=bj({axis:o,ticks:c,bandSize:a,offset:p.offset,entry:O,index:C}),M=ve-ge,F=p.size,L={x:s.x,y:B,width:s.width,height:F},Math.abs(W)>0&&Math.abs(M)<Math.abs(W)){var Ce=Dr(M||W)*(Math.abs(W)-Math.abs(M));M+=Ce}}return $t($t($t({},O),{},{x:$,y:B,width:M,height:F,value:u?P:P[1],payload:O,background:L},N&&N[C]&&N[C].props),{},{tooltipPayload:[VP(n,O)],tooltipPosition:{x:$+M/2,y:B+F/2}})});return $t({data:E,layout:g},h)});function Lu(e){"@babel/helpers - typeof";return Lu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Lu(e)}function Lne(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function bN(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,yR(r.key),r)}}function Dne(e,t,n){return t&&bN(e.prototype,t),n&&bN(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function xN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Ir(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?xN(Object(n),!0).forEach(function(r){um(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):xN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function um(e,t,n){return t=yR(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function yR(e){var t=Bne(e,"string");return Lu(t)=="symbol"?t:t+""}function Bne(e,t){if(Lu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Lu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var zne=function(t,n,r,a,s){var o=t.width,l=t.height,c=t.layout,u=t.children,d=Object.keys(n),f={left:r.left,leftMirror:r.left,right:o-r.right,rightMirror:o-r.right,top:r.top,topMirror:r.top,bottom:l-r.bottom,bottomMirror:l-r.bottom},h=!!Qn(u,yn);return d.reduce(function(p,g){var m=n[g],y=m.orientation,v=m.domain,k=m.padding,x=k===void 0?{}:k,j=m.mirror,w=m.reversed,b="".concat(y).concat(j?"Mirror":""),N,E,O,C,P;if(m.type==="number"&&(m.padding==="gap"||m.padding==="no-gap")){var $=v[1]-v[0],B=1/0,M=m.categoricalDomain.sort(WU);if(M.forEach(function(ce,ge){ge>0&&(B=Math.min((ce||0)-(M[ge-1]||0),B))}),Number.isFinite(B)){var F=B/$,L=m.layout==="vertical"?r.height:r.width;if(m.padding==="gap"&&(N=F*L/2),m.padding==="no-gap"){var W=_s(t.barCategoryGap,F*L),A=F*L/2;N=A-W-(A-W)/L*W}}}a==="xAxis"?E=[r.left+(x.left||0)+(N||0),r.left+r.width-(x.right||0)-(N||0)]:a==="yAxis"?E=c==="horizontal"?[r.top+r.height-(x.bottom||0),r.top+(x.top||0)]:[r.top+(x.top||0)+(N||0),r.top+r.height-(x.bottom||0)-(N||0)]:E=m.range,w&&(E=[E[1],E[0]]);var z=sQ(m,s,h),T=z.scale,K=z.realScaleType;T.domain(v).range(E),oQ(T);var D=mQ(T,Ir(Ir({},m),{},{realScaleType:K}));a==="xAxis"?(P=y==="top"&&!j||y==="bottom"&&j,O=r.left,C=f[b]-P*m.height):a==="yAxis"&&(P=y==="left"&&!j||y==="right"&&j,O=f[b]-P*m.width,C=r.top);var I=Ir(Ir(Ir({},m),D),{},{realScaleType:K,x:O,y:C,scale:T,width:a==="xAxis"?r.width:m.width,height:a==="yAxis"?r.height:m.height});return I.bandSize=Ch(I,D),!m.hide&&a==="xAxis"?f[b]+=(P?-1:1)*I.height:m.hide||(f[b]+=(P?-1:1)*I.width),Ir(Ir({},p),{},um({},g,I))},{})},bR=function(t,n){var r=t.x,a=t.y,s=n.x,o=n.y;return{x:Math.min(r,s),y:Math.min(a,o),width:Math.abs(s-r),height:Math.abs(o-a)}},Fne=function(t){var n=t.x1,r=t.y1,a=t.x2,s=t.y2;return bR({x:n,y:r},{x:a,y:s})},xR=function(){function e(t){Lne(this,e),this.scale=t}return Dne(e,[{key:"domain",get:function(){return this.scale.domain}},{key:"range",get:function(){return this.scale.range}},{key:"rangeMin",get:function(){return this.range()[0]}},{key:"rangeMax",get:function(){return this.range()[1]}},{key:"bandwidth",get:function(){return this.scale.bandwidth}},{key:"apply",value:function(n){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=r.bandAware,s=r.position;if(n!==void 0){if(s)switch(s){case"start":return this.scale(n);case"middle":{var o=this.bandwidth?this.bandwidth()/2:0;return this.scale(n)+o}case"end":{var l=this.bandwidth?this.bandwidth():0;return this.scale(n)+l}default:return this.scale(n)}if(a){var c=this.bandwidth?this.bandwidth()/2:0;return this.scale(n)+c}return this.scale(n)}}},{key:"isInRange",value:function(n){var r=this.range(),a=r[0],s=r[r.length-1];return a<=s?n>=a&&n<=s:n>=s&&n<=a}}],[{key:"create",value:function(n){return new e(n)}}])}();um(xR,"EPS",1e-4);var Vw=function(t){var n=Object.keys(t).reduce(function(r,a){return Ir(Ir({},r),{},um({},a,xR.create(t[a])))},{});return Ir(Ir({},n),{},{apply:function(a){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=s.bandAware,l=s.position;return sne(a,function(c,u){return n[u].apply(c,{bandAware:o,position:l})})},isInRange:function(a){return pR(a,function(s,o){return n[o].isInRange(s)})}})};function Une(e){return(e%180+180)%180}var Wne=function(t){var n=t.width,r=t.height,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,s=Une(a),o=s*Math.PI/180,l=Math.atan(r/n),c=o>l&&o<Math.PI-l?r/Math.sin(o):n/Math.cos(o);return Math.abs(c)},Hne=Ti,Gne=Zu,qne=Vp;function Kne(e){return function(t,n,r){var a=Object(t);if(!Gne(t)){var s=Hne(n);t=qne(t),n=function(l){return s(a[l],l,a)}}var o=e(t,n,r);return o>-1?a[s?t[o]:o]:void 0}}var Vne=Kne,Yne=uR;function Xne(e){var t=Yne(e),n=t%1;return t===t?n?t-n:t:0}var Qne=Xne,Zne=CO,Jne=Ti,ere=Qne,tre=Math.max;function nre(e,t,n){var r=e==null?0:e.length;if(!r)return-1;var a=n==null?0:ere(n);return a<0&&(a=tre(r+a,0)),Zne(e,Jne(t),a)}var rre=nre,are=Vne,ire=rre,sre=are(ire),ore=sre;const lre=Ze(ore);var cre=qF(function(e){return{x:e.left,y:e.top,width:e.width,height:e.height}},function(e){return["l",e.left,"t",e.top,"w",e.width,"h",e.height].join("")}),Yw=S.createContext(void 0),Xw=S.createContext(void 0),wR=S.createContext(void 0),kR=S.createContext({}),SR=S.createContext(void 0),jR=S.createContext(0),NR=S.createContext(0),wN=function(t){var n=t.state,r=n.xAxisMap,a=n.yAxisMap,s=n.offset,o=t.clipPathId,l=t.children,c=t.width,u=t.height,d=cre(s);return q.createElement(Yw.Provider,{value:r},q.createElement(Xw.Provider,{value:a},q.createElement(kR.Provider,{value:s},q.createElement(wR.Provider,{value:d},q.createElement(SR.Provider,{value:o},q.createElement(jR.Provider,{value:u},q.createElement(NR.Provider,{value:c},l)))))))},ure=function(){return S.useContext(SR)},ER=function(t){var n=S.useContext(Yw);n==null&&Cs();var r=n[t];return r==null&&Cs(),r},dre=function(){var t=S.useContext(Yw);return ti(t)},fre=function(){var t=S.useContext(Xw),n=lre(t,function(r){return pR(r.domain,Number.isFinite)});return n||ti(t)},_R=function(t){var n=S.useContext(Xw);n==null&&Cs();var r=n[t];return r==null&&Cs(),r},hre=function(){var t=S.useContext(wR);return t},pre=function(){return S.useContext(kR)},Qw=function(){return S.useContext(NR)},Zw=function(){return S.useContext(jR)};function il(e){"@babel/helpers - typeof";return il=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},il(e)}function mre(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function gre(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,CR(r.key),r)}}function vre(e,t,n){return t&&gre(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function yre(e,t,n){return t=Hh(t),bre(e,AR()?Reflect.construct(t,n||[],Hh(e).constructor):t.apply(e,n))}function bre(e,t){if(t&&(il(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return xre(e)}function xre(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function AR(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(AR=function(){return!!e})()}function Hh(e){return Hh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},Hh(e)}function wre(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&yb(e,t)}function yb(e,t){return yb=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},yb(e,t)}function kN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function SN(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?kN(Object(n),!0).forEach(function(r){Jw(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):kN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function Jw(e,t,n){return t=CR(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function CR(e){var t=kre(e,"string");return il(t)=="symbol"?t:t+""}function kre(e,t){if(il(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(il(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}function Sre(e,t){return _re(e)||Ere(e,t)||Nre(e,t)||jre()}function jre(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
131
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Nre(e,t){if(e){if(typeof e=="string")return jN(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return jN(e,t)}}function jN(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Ere(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var r,a,s,o,l=[],c=!0,u=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(r=s.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(d){u=!0,a=d}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(u)throw a}}return l}}function _re(e){if(Array.isArray(e))return e}function bb(){return bb=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},bb.apply(this,arguments)}var Are=function(t,n){var r;return q.isValidElement(t)?r=q.cloneElement(t,n):De(t)?r=t(n):r=q.createElement("line",bb({},n,{className:"recharts-reference-line-line"})),r},Cre=function(t,n,r,a,s,o,l,c,u){var d=s.x,f=s.y,h=s.width,p=s.height;if(r){var g=u.y,m=t.y.apply(g,{position:o});if(ca(u,"discard")&&!t.y.isInRange(m))return null;var y=[{x:d+h,y:m},{x:d,y:m}];return c==="left"?y.reverse():y}if(n){var v=u.x,k=t.x.apply(v,{position:o});if(ca(u,"discard")&&!t.x.isInRange(k))return null;var x=[{x:k,y:f+p},{x:k,y:f}];return l==="top"?x.reverse():x}if(a){var j=u.segment,w=j.map(function(b){return t.apply(b,{position:o})});return ca(u,"discard")&&Zte(w,function(b){return!t.isInRange(b)})?null:w}return null};function Tre(e){var t=e.x,n=e.y,r=e.segment,a=e.xAxisId,s=e.yAxisId,o=e.shape,l=e.className,c=e.alwaysShow,u=ure(),d=ER(a),f=_R(s),h=hre();if(!u||!h)return null;Aa(c===void 0,'The alwaysShow prop is deprecated. Please use ifOverflow="extendDomain" instead.');var p=Vw({x:d.scale,y:f.scale}),g=Gt(t),m=Gt(n),y=r&&r.length===2,v=Cre(p,g,m,y,h,e.position,d.orientation,f.orientation,e);if(!v)return null;var k=Sre(v,2),x=k[0],j=x.x,w=x.y,b=k[1],N=b.x,E=b.y,O=ca(e,"hidden")?"url(#".concat(u,")"):void 0,C=SN(SN({clipPath:O},Ve(e,!0)),{},{x1:j,y1:w,x2:N,y2:E});return q.createElement(tn,{className:Ye("recharts-reference-line",l)},Are(o,C),wn.renderCallByParent(e,Fne({x1:j,y1:w,x2:N,y2:E})))}var e0=function(e){function t(){return mre(this,t),yre(this,t,arguments)}return wre(t,e),vre(t,[{key:"render",value:function(){return q.createElement(Tre,this.props)}}])}(q.Component);Jw(e0,"displayName","ReferenceLine");Jw(e0,"defaultProps",{isFront:!1,ifOverflow:"discard",xAxisId:0,yAxisId:0,fill:"none",stroke:"#ccc",fillOpacity:1,strokeWidth:1,position:"middle"});function xb(){return xb=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},xb.apply(this,arguments)}function sl(e){"@babel/helpers - typeof";return sl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},sl(e)}function NN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function EN(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?NN(Object(n),!0).forEach(function(r){dm(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):NN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function Ore(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Pre(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,OR(r.key),r)}}function Rre(e,t,n){return t&&Pre(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Mre(e,t,n){return t=Gh(t),Ire(e,TR()?Reflect.construct(t,n||[],Gh(e).constructor):t.apply(e,n))}function Ire(e,t){if(t&&(sl(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return $re(e)}function $re(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function TR(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(TR=function(){return!!e})()}function Gh(e){return Gh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},Gh(e)}function Lre(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&wb(e,t)}function wb(e,t){return wb=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},wb(e,t)}function dm(e,t,n){return t=OR(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function OR(e){var t=Dre(e,"string");return sl(t)=="symbol"?t:t+""}function Dre(e,t){if(sl(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(sl(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}var Bre=function(t){var n=t.x,r=t.y,a=t.xAxis,s=t.yAxis,o=Vw({x:a.scale,y:s.scale}),l=o.apply({x:n,y:r},{bandAware:!0});return ca(t,"discard")&&!o.isInRange(l)?null:l},fm=function(e){function t(){return Ore(this,t),Mre(this,t,arguments)}return Lre(t,e),Rre(t,[{key:"render",value:function(){var r=this.props,a=r.x,s=r.y,o=r.r,l=r.alwaysShow,c=r.clipPathId,u=Gt(a),d=Gt(s);if(Aa(l===void 0,'The alwaysShow prop is deprecated. Please use ifOverflow="extendDomain" instead.'),!u||!d)return null;var f=Bre(this.props);if(!f)return null;var h=f.x,p=f.y,g=this.props,m=g.shape,y=g.className,v=ca(this.props,"hidden")?"url(#".concat(c,")"):void 0,k=EN(EN({clipPath:v},Ve(this.props,!0)),{},{cx:h,cy:p});return q.createElement(tn,{className:Ye("recharts-reference-dot",y)},t.renderDot(m,k),wn.renderCallByParent(this.props,{x:h-o,y:p-o,width:2*o,height:2*o}))}}])}(q.Component);dm(fm,"displayName","ReferenceDot");dm(fm,"defaultProps",{isFront:!1,ifOverflow:"discard",xAxisId:0,yAxisId:0,r:10,fill:"#fff",stroke:"#ccc",fillOpacity:1,strokeWidth:1});dm(fm,"renderDot",function(e,t){var n;return q.isValidElement(e)?n=q.cloneElement(e,t):De(e)?n=e(t):n=q.createElement(lR,xb({},t,{cx:t.cx,cy:t.cy,className:"recharts-reference-dot-dot"})),n});function kb(){return kb=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},kb.apply(this,arguments)}function ol(e){"@babel/helpers - typeof";return ol=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ol(e)}function _N(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function AN(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?_N(Object(n),!0).forEach(function(r){hm(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):_N(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function zre(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Fre(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,RR(r.key),r)}}function Ure(e,t,n){return t&&Fre(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Wre(e,t,n){return t=qh(t),Hre(e,PR()?Reflect.construct(t,n||[],qh(e).constructor):t.apply(e,n))}function Hre(e,t){if(t&&(ol(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Gre(e)}function Gre(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function PR(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(PR=function(){return!!e})()}function qh(e){return qh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},qh(e)}function qre(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Sb(e,t)}function Sb(e,t){return Sb=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},Sb(e,t)}function hm(e,t,n){return t=RR(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function RR(e){var t=Kre(e,"string");return ol(t)=="symbol"?t:t+""}function Kre(e,t){if(ol(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(ol(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}var Vre=function(t,n,r,a,s){var o=s.x1,l=s.x2,c=s.y1,u=s.y2,d=s.xAxis,f=s.yAxis;if(!d||!f)return null;var h=Vw({x:d.scale,y:f.scale}),p={x:t?h.x.apply(o,{position:"start"}):h.x.rangeMin,y:r?h.y.apply(c,{position:"start"}):h.y.rangeMin},g={x:n?h.x.apply(l,{position:"end"}):h.x.rangeMax,y:a?h.y.apply(u,{position:"end"}):h.y.rangeMax};return ca(s,"discard")&&(!h.isInRange(p)||!h.isInRange(g))?null:bR(p,g)},pm=function(e){function t(){return zre(this,t),Wre(this,t,arguments)}return qre(t,e),Ure(t,[{key:"render",value:function(){var r=this.props,a=r.x1,s=r.x2,o=r.y1,l=r.y2,c=r.className,u=r.alwaysShow,d=r.clipPathId;Aa(u===void 0,'The alwaysShow prop is deprecated. Please use ifOverflow="extendDomain" instead.');var f=Gt(a),h=Gt(s),p=Gt(o),g=Gt(l),m=this.props.shape;if(!f&&!h&&!p&&!g&&!m)return null;var y=Vre(f,h,p,g,this.props);if(!y&&!m)return null;var v=ca(this.props,"hidden")?"url(#".concat(d,")"):void 0;return q.createElement(tn,{className:Ye("recharts-reference-area",c)},t.renderRect(m,AN(AN({clipPath:v},Ve(this.props,!0)),y)),wn.renderCallByParent(this.props,y))}}])}(q.Component);hm(pm,"displayName","ReferenceArea");hm(pm,"defaultProps",{isFront:!1,ifOverflow:"discard",xAxisId:0,yAxisId:0,r:10,fill:"#ccc",fillOpacity:.5,stroke:"none",strokeWidth:1});hm(pm,"renderRect",function(e,t){var n;return q.isValidElement(e)?n=q.cloneElement(e,t):De(e)?n=e(t):n=q.createElement(Kw,kb({},t,{className:"recharts-reference-area-rect"})),n});function MR(e,t,n){if(t<1)return[];if(t===1&&n===void 0)return e;for(var r=[],a=0;a<e.length;a+=t)r.push(e[a]);return r}function Yre(e,t,n){var r={width:e.width+t.width,height:e.height+t.height};return Wne(r,n)}function Xre(e,t,n){var r=n==="width",a=e.x,s=e.y,o=e.width,l=e.height;return t===1?{start:r?a:s,end:r?a+o:s+l}:{start:r?a+o:s+l,end:r?a:s}}function Kh(e,t,n,r,a){if(e*t<e*r||e*t>e*a)return!1;var s=n();return e*(t-e*s/2-r)>=0&&e*(t+e*s/2-a)<=0}function Qre(e,t){return MR(e,t+1)}function Zre(e,t,n,r,a){for(var s=(r||[]).slice(),o=t.start,l=t.end,c=0,u=1,d=o,f=function(){var g=r==null?void 0:r[c];if(g===void 0)return{v:MR(r,u)};var m=c,y,v=function(){return y===void 0&&(y=n(g,m)),y},k=g.coordinate,x=c===0||Kh(e,k,v,d,l);x||(c=0,d=o,u+=1),x&&(d=k+e*(v()/2+a),c+=u)},h;u<=s.length;)if(h=f(),h)return h.v;return[]}function Du(e){"@babel/helpers - typeof";return Du=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Du(e)}function CN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function vn(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?CN(Object(n),!0).forEach(function(r){Jre(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):CN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function Jre(e,t,n){return t=eae(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function eae(e){var t=tae(e,"string");return Du(t)=="symbol"?t:t+""}function tae(e,t){if(Du(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Du(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function nae(e,t,n,r,a){for(var s=(r||[]).slice(),o=s.length,l=t.start,c=t.end,u=function(h){var p=s[h],g,m=function(){return g===void 0&&(g=n(p,h)),g};if(h===o-1){var y=e*(p.coordinate+e*m()/2-c);s[h]=p=vn(vn({},p),{},{tickCoord:y>0?p.coordinate-y*e:p.coordinate})}else s[h]=p=vn(vn({},p),{},{tickCoord:p.coordinate});var v=Kh(e,p.tickCoord,m,l,c);v&&(c=p.tickCoord-e*(m()/2+a),s[h]=vn(vn({},p),{},{isShow:!0}))},d=o-1;d>=0;d--)u(d);return s}function rae(e,t,n,r,a,s){var o=(r||[]).slice(),l=o.length,c=t.start,u=t.end;if(s){var d=r[l-1],f=n(d,l-1),h=e*(d.coordinate+e*f/2-u);o[l-1]=d=vn(vn({},d),{},{tickCoord:h>0?d.coordinate-h*e:d.coordinate});var p=Kh(e,d.tickCoord,function(){return f},c,u);p&&(u=d.tickCoord-e*(f/2+a),o[l-1]=vn(vn({},d),{},{isShow:!0}))}for(var g=s?l-1:l,m=function(k){var x=o[k],j,w=function(){return j===void 0&&(j=n(x,k)),j};if(k===0){var b=e*(x.coordinate-e*w()/2-c);o[k]=x=vn(vn({},x),{},{tickCoord:b<0?x.coordinate-b*e:x.coordinate})}else o[k]=x=vn(vn({},x),{},{tickCoord:x.coordinate});var N=Kh(e,x.tickCoord,w,c,u);N&&(c=x.tickCoord+e*(w()/2+a),o[k]=vn(vn({},x),{},{isShow:!0}))},y=0;y<g;y++)m(y);return o}function t0(e,t,n){var r=e.tick,a=e.ticks,s=e.viewBox,o=e.minTickGap,l=e.orientation,c=e.interval,u=e.tickFormatter,d=e.unit,f=e.angle;if(!a||!a.length||!r)return[];if(de(c)||Ju.isSsr)return Qre(a,typeof c=="number"&&de(c)?c:0);var h=[],p=l==="top"||l==="bottom"?"width":"height",g=d&&p==="width"?Oc(d,{fontSize:t,letterSpacing:n}):{width:0,height:0},m=function(x,j){var w=De(u)?u(x.value,j):x.value;return p==="width"?Yre(Oc(w,{fontSize:t,letterSpacing:n}),g,f):Oc(w,{fontSize:t,letterSpacing:n})[p]},y=a.length>=2?Dr(a[1].coordinate-a[0].coordinate):1,v=Xre(s,y,p);return c==="equidistantPreserveStart"?Zre(y,v,m,a,o):(c==="preserveStart"||c==="preserveStartEnd"?h=rae(y,v,m,a,o,c==="preserveStartEnd"):h=nae(y,v,m,a,o),h.filter(function(k){return k.isShow}))}var aae=["viewBox"],iae=["viewBox"],sae=["ticks"];function ll(e){"@babel/helpers - typeof";return ll=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ll(e)}function No(){return No=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},No.apply(this,arguments)}function TN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Ft(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?TN(Object(n),!0).forEach(function(r){n0(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):TN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function Ag(e,t){if(e==null)return{};var n=oae(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function oae(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}function lae(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function ON(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,$R(r.key),r)}}function cae(e,t,n){return t&&ON(e.prototype,t),n&&ON(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function uae(e,t,n){return t=Vh(t),dae(e,IR()?Reflect.construct(t,n||[],Vh(e).constructor):t.apply(e,n))}function dae(e,t){if(t&&(ll(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return fae(e)}function fae(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function IR(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(IR=function(){return!!e})()}function Vh(e){return Vh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},Vh(e)}function hae(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&jb(e,t)}function jb(e,t){return jb=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},jb(e,t)}function n0(e,t,n){return t=$R(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function $R(e){var t=pae(e,"string");return ll(t)=="symbol"?t:t+""}function pae(e,t){if(ll(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(ll(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}var Ol=function(e){function t(n){var r;return lae(this,t),r=uae(this,t,[n]),r.state={fontSize:"",letterSpacing:""},r}return hae(t,e),cae(t,[{key:"shouldComponentUpdate",value:function(r,a){var s=r.viewBox,o=Ag(r,aae),l=this.props,c=l.viewBox,u=Ag(l,iae);return!Mo(s,c)||!Mo(o,u)||!Mo(a,this.state)}},{key:"componentDidMount",value:function(){var r=this.layerReference;if(r){var a=r.getElementsByClassName("recharts-cartesian-axis-tick-value")[0];a&&this.setState({fontSize:window.getComputedStyle(a).fontSize,letterSpacing:window.getComputedStyle(a).letterSpacing})}}},{key:"getTickLineCoord",value:function(r){var a=this.props,s=a.x,o=a.y,l=a.width,c=a.height,u=a.orientation,d=a.tickSize,f=a.mirror,h=a.tickMargin,p,g,m,y,v,k,x=f?-1:1,j=r.tickSize||d,w=de(r.tickCoord)?r.tickCoord:r.coordinate;switch(u){case"top":p=g=r.coordinate,y=o+ +!f*c,m=y-x*j,k=m-x*h,v=w;break;case"left":m=y=r.coordinate,g=s+ +!f*l,p=g-x*j,v=p-x*h,k=w;break;case"right":m=y=r.coordinate,g=s+ +f*l,p=g+x*j,v=p+x*h,k=w;break;default:p=g=r.coordinate,y=o+ +f*c,m=y+x*j,k=m+x*h,v=w;break}return{line:{x1:p,y1:m,x2:g,y2:y},tick:{x:v,y:k}}}},{key:"getTickTextAnchor",value:function(){var r=this.props,a=r.orientation,s=r.mirror,o;switch(a){case"left":o=s?"start":"end";break;case"right":o=s?"end":"start";break;default:o="middle";break}return o}},{key:"getTickVerticalAnchor",value:function(){var r=this.props,a=r.orientation,s=r.mirror,o="end";switch(a){case"left":case"right":o="middle";break;case"top":o=s?"start":"end";break;default:o=s?"end":"start";break}return o}},{key:"renderAxisLine",value:function(){var r=this.props,a=r.x,s=r.y,o=r.width,l=r.height,c=r.orientation,u=r.mirror,d=r.axisLine,f=Ft(Ft(Ft({},Ve(this.props,!1)),Ve(d,!1)),{},{fill:"none"});if(c==="top"||c==="bottom"){var h=+(c==="top"&&!u||c==="bottom"&&u);f=Ft(Ft({},f),{},{x1:a,y1:s+h*l,x2:a+o,y2:s+h*l})}else{var p=+(c==="left"&&!u||c==="right"&&u);f=Ft(Ft({},f),{},{x1:a+p*o,y1:s,x2:a+p*o,y2:s+l})}return q.createElement("line",No({},f,{className:Ye("recharts-cartesian-axis-line",br(d,"className"))}))}},{key:"renderTicks",value:function(r,a,s){var o=this,l=this.props,c=l.tickLine,u=l.stroke,d=l.tick,f=l.tickFormatter,h=l.unit,p=t0(Ft(Ft({},this.props),{},{ticks:r}),a,s),g=this.getTickTextAnchor(),m=this.getTickVerticalAnchor(),y=Ve(this.props,!1),v=Ve(d,!1),k=Ft(Ft({},y),{},{fill:"none"},Ve(c,!1)),x=p.map(function(j,w){var b=o.getTickLineCoord(j),N=b.line,E=b.tick,O=Ft(Ft(Ft(Ft({textAnchor:g,verticalAnchor:m},y),{},{stroke:"none",fill:u},v),E),{},{index:w,payload:j,visibleTicksCount:p.length,tickFormatter:f});return q.createElement(tn,No({className:"recharts-cartesian-axis-tick",key:"tick-".concat(j.value,"-").concat(j.coordinate,"-").concat(j.tickCoord)},eh(o.props,j,w)),c&&q.createElement("line",No({},k,N,{className:Ye("recharts-cartesian-axis-tick-line",br(c,"className"))})),d&&t.renderTickItem(d,O,"".concat(De(f)?f(j.value,w):j.value).concat(h||"")))});return q.createElement("g",{className:"recharts-cartesian-axis-ticks"},x)}},{key:"render",value:function(){var r=this,a=this.props,s=a.axisLine,o=a.width,l=a.height,c=a.ticksGenerator,u=a.className,d=a.hide;if(d)return null;var f=this.props,h=f.ticks,p=Ag(f,sae),g=h;return De(c)&&(g=h&&h.length>0?c(this.props):c(p)),o<=0||l<=0||!g||!g.length?null:q.createElement(tn,{className:Ye("recharts-cartesian-axis",u),ref:function(y){r.layerReference=y}},s&&this.renderAxisLine(),this.renderTicks(g,this.state.fontSize,this.state.letterSpacing),wn.renderCallByParent(this.props))}}],[{key:"renderTickItem",value:function(r,a,s){var o,l=Ye(a.className,"recharts-cartesian-axis-tick-value");return q.isValidElement(r)?o=q.cloneElement(r,Ft(Ft({},a),{},{className:l})):De(r)?o=r(Ft(Ft({},a),{},{className:l})):o=q.createElement(ph,No({},a,{className:"recharts-cartesian-axis-tick-value"}),s),o}}])}(S.Component);n0(Ol,"displayName","CartesianAxis");n0(Ol,"defaultProps",{x:0,y:0,width:0,height:0,viewBox:{x:0,y:0,width:0,height:0},orientation:"bottom",ticks:[],stroke:"#666",tickLine:!0,axisLine:!0,tick:!0,mirror:!1,minTickGap:5,tickSize:6,tickMargin:2,interval:"preserveEnd"});var mae=["x1","y1","x2","y2","key"],gae=["offset"];function Ts(e){"@babel/helpers - typeof";return Ts=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ts(e)}function PN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function kn(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?PN(Object(n),!0).forEach(function(r){vae(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):PN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function vae(e,t,n){return t=yae(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function yae(e){var t=bae(e,"string");return Ts(t)=="symbol"?t:t+""}function bae(e,t){if(Ts(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Ts(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function ds(){return ds=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ds.apply(this,arguments)}function RN(e,t){if(e==null)return{};var n=xae(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function xae(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}var wae=function(t){var n=t.fill;if(!n||n==="none")return null;var r=t.fillOpacity,a=t.x,s=t.y,o=t.width,l=t.height,c=t.ry;return q.createElement("rect",{x:a,y:s,ry:c,width:o,height:l,stroke:"none",fill:n,fillOpacity:r,className:"recharts-cartesian-grid-bg"})};function LR(e,t){var n;if(q.isValidElement(e))n=q.cloneElement(e,t);else if(De(e))n=e(t);else{var r=t.x1,a=t.y1,s=t.x2,o=t.y2,l=t.key,c=RN(t,mae),u=Ve(c,!1);u.offset;var d=RN(u,gae);n=q.createElement("line",ds({},d,{x1:r,y1:a,x2:s,y2:o,fill:"none",key:l}))}return n}function kae(e){var t=e.x,n=e.width,r=e.horizontal,a=r===void 0?!0:r,s=e.horizontalPoints;if(!a||!s||!s.length)return null;var o=s.map(function(l,c){var u=kn(kn({},e),{},{x1:t,y1:l,x2:t+n,y2:l,key:"line-".concat(c),index:c});return LR(a,u)});return q.createElement("g",{className:"recharts-cartesian-grid-horizontal"},o)}function Sae(e){var t=e.y,n=e.height,r=e.vertical,a=r===void 0?!0:r,s=e.verticalPoints;if(!a||!s||!s.length)return null;var o=s.map(function(l,c){var u=kn(kn({},e),{},{x1:l,y1:t,x2:l,y2:t+n,key:"line-".concat(c),index:c});return LR(a,u)});return q.createElement("g",{className:"recharts-cartesian-grid-vertical"},o)}function jae(e){var t=e.horizontalFill,n=e.fillOpacity,r=e.x,a=e.y,s=e.width,o=e.height,l=e.horizontalPoints,c=e.horizontal,u=c===void 0?!0:c;if(!u||!t||!t.length)return null;var d=l.map(function(h){return Math.round(h+a-a)}).sort(function(h,p){return h-p});a!==d[0]&&d.unshift(0);var f=d.map(function(h,p){var g=!d[p+1],m=g?a+o-h:d[p+1]-h;if(m<=0)return null;var y=p%t.length;return q.createElement("rect",{key:"react-".concat(p),y:h,x:r,height:m,width:s,stroke:"none",fill:t[y],fillOpacity:n,className:"recharts-cartesian-grid-bg"})});return q.createElement("g",{className:"recharts-cartesian-gridstripes-horizontal"},f)}function Nae(e){var t=e.vertical,n=t===void 0?!0:t,r=e.verticalFill,a=e.fillOpacity,s=e.x,o=e.y,l=e.width,c=e.height,u=e.verticalPoints;if(!n||!r||!r.length)return null;var d=u.map(function(h){return Math.round(h+s-s)}).sort(function(h,p){return h-p});s!==d[0]&&d.unshift(0);var f=d.map(function(h,p){var g=!d[p+1],m=g?s+l-h:d[p+1]-h;if(m<=0)return null;var y=p%r.length;return q.createElement("rect",{key:"react-".concat(p),x:h,y:o,width:m,height:c,stroke:"none",fill:r[y],fillOpacity:a,className:"recharts-cartesian-grid-bg"})});return q.createElement("g",{className:"recharts-cartesian-gridstripes-vertical"},f)}var Eae=function(t,n){var r=t.xAxis,a=t.width,s=t.height,o=t.offset;return qP(t0(kn(kn(kn({},Ol.defaultProps),r),{},{ticks:Na(r,!0),viewBox:{x:0,y:0,width:a,height:s}})),o.left,o.left+o.width,n)},_ae=function(t,n){var r=t.yAxis,a=t.width,s=t.height,o=t.offset;return qP(t0(kn(kn(kn({},Ol.defaultProps),r),{},{ticks:Na(r,!0),viewBox:{x:0,y:0,width:a,height:s}})),o.top,o.top+o.height,n)},no={horizontal:!0,vertical:!0,stroke:"#ccc",fill:"none",verticalFill:[],horizontalFill:[]};function ni(e){var t,n,r,a,s,o,l=Qw(),c=Zw(),u=pre(),d=kn(kn({},e),{},{stroke:(t=e.stroke)!==null&&t!==void 0?t:no.stroke,fill:(n=e.fill)!==null&&n!==void 0?n:no.fill,horizontal:(r=e.horizontal)!==null&&r!==void 0?r:no.horizontal,horizontalFill:(a=e.horizontalFill)!==null&&a!==void 0?a:no.horizontalFill,vertical:(s=e.vertical)!==null&&s!==void 0?s:no.vertical,verticalFill:(o=e.verticalFill)!==null&&o!==void 0?o:no.verticalFill,x:de(e.x)?e.x:u.left,y:de(e.y)?e.y:u.top,width:de(e.width)?e.width:u.width,height:de(e.height)?e.height:u.height}),f=d.x,h=d.y,p=d.width,g=d.height,m=d.syncWithTicks,y=d.horizontalValues,v=d.verticalValues,k=dre(),x=fre();if(!de(p)||p<=0||!de(g)||g<=0||!de(f)||f!==+f||!de(h)||h!==+h)return null;var j=d.verticalCoordinatesGenerator||Eae,w=d.horizontalCoordinatesGenerator||_ae,b=d.horizontalPoints,N=d.verticalPoints;if((!b||!b.length)&&De(w)){var E=y&&y.length,O=w({yAxis:x?kn(kn({},x),{},{ticks:E?y:x.ticks}):void 0,width:l,height:c,offset:u},E?!0:m);Aa(Array.isArray(O),"horizontalCoordinatesGenerator should return Array but instead it returned [".concat(Ts(O),"]")),Array.isArray(O)&&(b=O)}if((!N||!N.length)&&De(j)){var C=v&&v.length,P=j({xAxis:k?kn(kn({},k),{},{ticks:C?v:k.ticks}):void 0,width:l,height:c,offset:u},C?!0:m);Aa(Array.isArray(P),"verticalCoordinatesGenerator should return Array but instead it returned [".concat(Ts(P),"]")),Array.isArray(P)&&(N=P)}return q.createElement("g",{className:"recharts-cartesian-grid"},q.createElement(wae,{fill:d.fill,fillOpacity:d.fillOpacity,x:d.x,y:d.y,width:d.width,height:d.height,ry:d.ry}),q.createElement(kae,ds({},d,{offset:u,horizontalPoints:b,xAxis:k,yAxis:x})),q.createElement(Sae,ds({},d,{offset:u,verticalPoints:N,xAxis:k,yAxis:x})),q.createElement(jae,ds({},d,{horizontalPoints:b})),q.createElement(Nae,ds({},d,{verticalPoints:N})))}ni.displayName="CartesianGrid";function cl(e){"@babel/helpers - typeof";return cl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},cl(e)}function Aae(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Cae(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,zR(r.key),r)}}function Tae(e,t,n){return t&&Cae(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Oae(e,t,n){return t=Yh(t),Pae(e,DR()?Reflect.construct(t,n||[],Yh(e).constructor):t.apply(e,n))}function Pae(e,t){if(t&&(cl(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Rae(e)}function Rae(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function DR(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(DR=function(){return!!e})()}function Yh(e){return Yh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},Yh(e)}function Mae(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Nb(e,t)}function Nb(e,t){return Nb=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},Nb(e,t)}function BR(e,t,n){return t=zR(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function zR(e){var t=Iae(e,"string");return cl(t)=="symbol"?t:t+""}function Iae(e,t){if(cl(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(cl(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}function Eb(){return Eb=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Eb.apply(this,arguments)}function $ae(e){var t=e.xAxisId,n=Qw(),r=Zw(),a=ER(t);return a==null?null:S.createElement(Ol,Eb({},a,{className:Ye("recharts-".concat(a.axisType," ").concat(a.axisType),a.className),viewBox:{x:0,y:0,width:n,height:r},ticksGenerator:function(o){return Na(o,!0)}}))}var ra=function(e){function t(){return Aae(this,t),Oae(this,t,arguments)}return Mae(t,e),Tae(t,[{key:"render",value:function(){return S.createElement($ae,this.props)}}])}(S.Component);BR(ra,"displayName","XAxis");BR(ra,"defaultProps",{allowDecimals:!0,hide:!1,orientation:"bottom",width:0,height:30,mirror:!1,xAxisId:0,tickCount:5,type:"category",padding:{left:0,right:0},allowDataOverflow:!1,scale:"auto",reversed:!1,allowDuplicatedCategory:!0});function ul(e){"@babel/helpers - typeof";return ul=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ul(e)}function Lae(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Dae(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,WR(r.key),r)}}function Bae(e,t,n){return t&&Dae(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function zae(e,t,n){return t=Xh(t),Fae(e,FR()?Reflect.construct(t,n||[],Xh(e).constructor):t.apply(e,n))}function Fae(e,t){if(t&&(ul(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Uae(e)}function Uae(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function FR(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(FR=function(){return!!e})()}function Xh(e){return Xh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},Xh(e)}function Wae(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&_b(e,t)}function _b(e,t){return _b=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},_b(e,t)}function UR(e,t,n){return t=WR(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function WR(e){var t=Hae(e,"string");return ul(t)=="symbol"?t:t+""}function Hae(e,t){if(ul(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(ul(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}function Ab(){return Ab=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ab.apply(this,arguments)}var Gae=function(t){var n=t.yAxisId,r=Qw(),a=Zw(),s=_R(n);return s==null?null:S.createElement(Ol,Ab({},s,{className:Ye("recharts-".concat(s.axisType," ").concat(s.axisType),s.className),viewBox:{x:0,y:0,width:r,height:a},ticksGenerator:function(l){return Na(l,!0)}}))},aa=function(e){function t(){return Lae(this,t),zae(this,t,arguments)}return Wae(t,e),Bae(t,[{key:"render",value:function(){return S.createElement(Gae,this.props)}}])}(S.Component);UR(aa,"displayName","YAxis");UR(aa,"defaultProps",{allowDuplicatedCategory:!0,allowDecimals:!0,hide:!1,orientation:"left",width:60,height:0,mirror:!1,yAxisId:0,tickCount:5,type:"number",padding:{top:0,bottom:0},allowDataOverflow:!1,scale:"auto",reversed:!1});function MN(e){return Yae(e)||Vae(e)||Kae(e)||qae()}function qae(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
132
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Kae(e,t){if(e){if(typeof e=="string")return Cb(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Cb(e,t)}}function Vae(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function Yae(e){if(Array.isArray(e))return Cb(e)}function Cb(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var Tb=function(t,n,r,a,s){var o=Fr(t,e0),l=Fr(t,fm),c=[].concat(MN(o),MN(l)),u=Fr(t,pm),d="".concat(a,"Id"),f=a[0],h=n;if(c.length&&(h=c.reduce(function(m,y){if(y.props[d]===r&&ca(y.props,"extendDomain")&&de(y.props[f])){var v=y.props[f];return[Math.min(m[0],v),Math.max(m[1],v)]}return m},h)),u.length){var p="".concat(f,"1"),g="".concat(f,"2");h=u.reduce(function(m,y){if(y.props[d]===r&&ca(y.props,"extendDomain")&&de(y.props[p])&&de(y.props[g])){var v=y.props[p],k=y.props[g];return[Math.min(m[0],v,k),Math.max(m[1],v,k)]}return m},h)}return s&&s.length&&(h=s.reduce(function(m,y){return de(y)?[Math.min(m[0],y),Math.max(m[1],y)]:m},h)),h},HR={exports:{}};(function(e){var t=Object.prototype.hasOwnProperty,n="~";function r(){}Object.create&&(r.prototype=Object.create(null),new r().__proto__||(n=!1));function a(c,u,d){this.fn=c,this.context=u,this.once=d||!1}function s(c,u,d,f,h){if(typeof d!="function")throw new TypeError("The listener must be a function");var p=new a(d,f||c,h),g=n?n+u:u;return c._events[g]?c._events[g].fn?c._events[g]=[c._events[g],p]:c._events[g].push(p):(c._events[g]=p,c._eventsCount++),c}function o(c,u){--c._eventsCount===0?c._events=new r:delete c._events[u]}function l(){this._events=new r,this._eventsCount=0}l.prototype.eventNames=function(){var u=[],d,f;if(this._eventsCount===0)return u;for(f in d=this._events)t.call(d,f)&&u.push(n?f.slice(1):f);return Object.getOwnPropertySymbols?u.concat(Object.getOwnPropertySymbols(d)):u},l.prototype.listeners=function(u){var d=n?n+u:u,f=this._events[d];if(!f)return[];if(f.fn)return[f.fn];for(var h=0,p=f.length,g=new Array(p);h<p;h++)g[h]=f[h].fn;return g},l.prototype.listenerCount=function(u){var d=n?n+u:u,f=this._events[d];return f?f.fn?1:f.length:0},l.prototype.emit=function(u,d,f,h,p,g){var m=n?n+u:u;if(!this._events[m])return!1;var y=this._events[m],v=arguments.length,k,x;if(y.fn){switch(y.once&&this.removeListener(u,y.fn,void 0,!0),v){case 1:return y.fn.call(y.context),!0;case 2:return y.fn.call(y.context,d),!0;case 3:return y.fn.call(y.context,d,f),!0;case 4:return y.fn.call(y.context,d,f,h),!0;case 5:return y.fn.call(y.context,d,f,h,p),!0;case 6:return y.fn.call(y.context,d,f,h,p,g),!0}for(x=1,k=new Array(v-1);x<v;x++)k[x-1]=arguments[x];y.fn.apply(y.context,k)}else{var j=y.length,w;for(x=0;x<j;x++)switch(y[x].once&&this.removeListener(u,y[x].fn,void 0,!0),v){case 1:y[x].fn.call(y[x].context);break;case 2:y[x].fn.call(y[x].context,d);break;case 3:y[x].fn.call(y[x].context,d,f);break;case 4:y[x].fn.call(y[x].context,d,f,h);break;default:if(!k)for(w=1,k=new Array(v-1);w<v;w++)k[w-1]=arguments[w];y[x].fn.apply(y[x].context,k)}}return!0},l.prototype.on=function(u,d,f){return s(this,u,d,f,!1)},l.prototype.once=function(u,d,f){return s(this,u,d,f,!0)},l.prototype.removeListener=function(u,d,f,h){var p=n?n+u:u;if(!this._events[p])return this;if(!d)return o(this,p),this;var g=this._events[p];if(g.fn)g.fn===d&&(!h||g.once)&&(!f||g.context===f)&&o(this,p);else{for(var m=0,y=[],v=g.length;m<v;m++)(g[m].fn!==d||h&&!g[m].once||f&&g[m].context!==f)&&y.push(g[m]);y.length?this._events[p]=y.length===1?y[0]:y:o(this,p)}return this},l.prototype.removeAllListeners=function(u){var d;return u?(d=n?n+u:u,this._events[d]&&o(this,d)):(this._events=new r,this._eventsCount=0),this},l.prototype.off=l.prototype.removeListener,l.prototype.addListener=l.prototype.on,l.prefixed=n,l.EventEmitter=l,e.exports=l})(HR);var Xae=HR.exports;const Qae=Ze(Xae);var Cg=new Qae,Tg="recharts.syncMouseEvents";function Bu(e){"@babel/helpers - typeof";return Bu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Bu(e)}function Zae(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Jae(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,GR(r.key),r)}}function eie(e,t,n){return t&&Jae(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Og(e,t,n){return t=GR(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function GR(e){var t=tie(e,"string");return Bu(t)=="symbol"?t:t+""}function tie(e,t){if(Bu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Bu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}var nie=function(){function e(){Zae(this,e),Og(this,"activeIndex",0),Og(this,"coordinateList",[]),Og(this,"layout","horizontal")}return eie(e,[{key:"setDetails",value:function(n){var r,a=n.coordinateList,s=a===void 0?null:a,o=n.container,l=o===void 0?null:o,c=n.layout,u=c===void 0?null:c,d=n.offset,f=d===void 0?null:d,h=n.mouseHandlerCallback,p=h===void 0?null:h;this.coordinateList=(r=s??this.coordinateList)!==null&&r!==void 0?r:[],this.container=l??this.container,this.layout=u??this.layout,this.offset=f??this.offset,this.mouseHandlerCallback=p??this.mouseHandlerCallback,this.activeIndex=Math.min(Math.max(this.activeIndex,0),this.coordinateList.length-1)}},{key:"focus",value:function(){this.spoofMouse()}},{key:"keyboardEvent",value:function(n){if(this.coordinateList.length!==0)switch(n.key){case"ArrowRight":{if(this.layout!=="horizontal")return;this.activeIndex=Math.min(this.activeIndex+1,this.coordinateList.length-1),this.spoofMouse();break}case"ArrowLeft":{if(this.layout!=="horizontal")return;this.activeIndex=Math.max(this.activeIndex-1,0),this.spoofMouse();break}}}},{key:"setIndex",value:function(n){this.activeIndex=n}},{key:"spoofMouse",value:function(){var n,r;if(this.layout==="horizontal"&&this.coordinateList.length!==0){var a=this.container.getBoundingClientRect(),s=a.x,o=a.y,l=a.height,c=this.coordinateList[this.activeIndex].coordinate,u=((n=window)===null||n===void 0?void 0:n.scrollX)||0,d=((r=window)===null||r===void 0?void 0:r.scrollY)||0,f=s+c+u,h=o+this.offset.top+l/2+d;this.mouseHandlerCallback({pageX:f,pageY:h})}}}])}();function rie(e,t,n){if(n==="number"&&t===!0&&Array.isArray(e)){var r=e==null?void 0:e[0],a=e==null?void 0:e[1];if(r&&a&&de(r)&&de(a))return!0}return!1}function aie(e,t,n,r){var a=r/2;return{stroke:"none",fill:"#ccc",x:e==="horizontal"?t.x-a:n.left+.5,y:e==="horizontal"?n.top+.5:t.y-a,width:e==="horizontal"?r:n.width-1,height:e==="horizontal"?n.height-1:r}}function qR(e){var t=e.cx,n=e.cy,r=e.radius,a=e.startAngle,s=e.endAngle,o=cn(t,n,r,a),l=cn(t,n,r,s);return{points:[o,l],cx:t,cy:n,radius:r,startAngle:a,endAngle:s}}function iie(e,t,n){var r,a,s,o;if(e==="horizontal")r=t.x,s=r,a=n.top,o=n.top+n.height;else if(e==="vertical")a=t.y,o=a,r=n.left,s=n.left+n.width;else if(t.cx!=null&&t.cy!=null)if(e==="centric"){var l=t.cx,c=t.cy,u=t.innerRadius,d=t.outerRadius,f=t.angle,h=cn(l,c,u,f),p=cn(l,c,d,f);r=h.x,a=h.y,s=p.x,o=p.y}else return qR(t);return[{x:r,y:a},{x:s,y:o}]}function zu(e){"@babel/helpers - typeof";return zu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},zu(e)}function IN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Vd(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?IN(Object(n),!0).forEach(function(r){sie(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):IN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function sie(e,t,n){return t=oie(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function oie(e){var t=lie(e,"string");return zu(t)=="symbol"?t:t+""}function lie(e,t){if(zu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(zu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function cie(e){var t,n,r=e.element,a=e.tooltipEventType,s=e.isActive,o=e.activeCoordinate,l=e.activePayload,c=e.offset,u=e.activeTooltipIndex,d=e.tooltipAxisBandSize,f=e.layout,h=e.chartName,p=(t=r.props.cursor)!==null&&t!==void 0?t:(n=r.type.defaultProps)===null||n===void 0?void 0:n.cursor;if(!r||!p||!s||!o||h!=="ScatterChart"&&a!=="axis")return null;var g,m=Ij;if(h==="ScatterChart")g=o,m=kee;else if(h==="BarChart")g=aie(f,o,c,d),m=Kw;else if(f==="radial"){var y=qR(o),v=y.cx,k=y.cy,x=y.radius,j=y.startAngle,w=y.endAngle;g={cx:v,cy:k,startAngle:j,endAngle:w,innerRadius:x,outerRadius:x},m=QP}else g={points:iie(f,o,c)},m=Ij;var b=Vd(Vd(Vd(Vd({stroke:"#ccc",pointerEvents:"none"},c),g),Ve(p,!1)),{},{payload:l,payloadIndex:u,className:Ye("recharts-tooltip-cursor",p.className)});return S.isValidElement(p)?S.cloneElement(p,b):S.createElement(m,b)}var uie=["item"],die=["children","className","width","height","style","compact","title","desc"];function dl(e){"@babel/helpers - typeof";return dl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},dl(e)}function Eo(){return Eo=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Eo.apply(this,arguments)}function $N(e,t){return pie(e)||hie(e,t)||VR(e,t)||fie()}function fie(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
133
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function hie(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var r,a,s,o,l=[],c=!0,u=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(r=s.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(d){u=!0,a=d}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(u)throw a}}return l}}function pie(e){if(Array.isArray(e))return e}function LN(e,t){if(e==null)return{};var n=mie(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function mie(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}function gie(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function vie(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,YR(r.key),r)}}function yie(e,t,n){return t&&vie(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function bie(e,t,n){return t=Qh(t),xie(e,KR()?Reflect.construct(t,n||[],Qh(e).constructor):t.apply(e,n))}function xie(e,t){if(t&&(dl(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return wie(e)}function wie(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function KR(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(KR=function(){return!!e})()}function Qh(e){return Qh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},Qh(e)}function kie(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Ob(e,t)}function Ob(e,t){return Ob=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},Ob(e,t)}function fl(e){return Nie(e)||jie(e)||VR(e)||Sie()}function Sie(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
134
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function VR(e,t){if(e){if(typeof e=="string")return Pb(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Pb(e,t)}}function jie(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function Nie(e){if(Array.isArray(e))return Pb(e)}function Pb(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function DN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function ne(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?DN(Object(n),!0).forEach(function(r){Ae(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):DN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function Ae(e,t,n){return t=YR(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function YR(e){var t=Eie(e,"string");return dl(t)=="symbol"?t:t+""}function Eie(e,t){if(dl(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(dl(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var _ie={xAxis:["bottom","top"],yAxis:["left","right"]},Aie={width:"100%",height:"100%"},XR={x:0,y:0};function Yd(e){return e}var Cie=function(t,n){return n==="horizontal"?t.x:n==="vertical"?t.y:n==="centric"?t.angle:t.radius},Tie=function(t,n,r,a){var s=n.find(function(d){return d&&d.index===r});if(s){if(t==="horizontal")return{x:s.coordinate,y:a.y};if(t==="vertical")return{x:a.x,y:s.coordinate};if(t==="centric"){var o=s.coordinate,l=a.radius;return ne(ne(ne({},a),cn(a.cx,a.cy,l,o)),{},{angle:o,radius:l})}var c=s.coordinate,u=a.angle;return ne(ne(ne({},a),cn(a.cx,a.cy,c,u)),{},{angle:u,radius:c})}return XR},mm=function(t,n){var r=n.graphicalItems,a=n.dataStartIndex,s=n.dataEndIndex,o=(r??[]).reduce(function(l,c){var u=c.props.data;return u&&u.length?[].concat(fl(l),fl(u)):l},[]);return o.length>0?o:t&&t.length&&de(a)&&de(s)?t.slice(a,s+1):[]};function QR(e){return e==="number"?[0,"auto"]:void 0}var Rb=function(t,n,r,a){var s=t.graphicalItems,o=t.tooltipAxis,l=mm(n,t);return r<0||!s||!s.length||r>=l.length?null:s.reduce(function(c,u){var d,f=(d=u.props.data)!==null&&d!==void 0?d:n;f&&t.dataStartIndex+t.dataEndIndex!==0&&t.dataEndIndex-t.dataStartIndex>=r&&(f=f.slice(t.dataStartIndex,t.dataEndIndex+1));var h;if(o.dataKey&&!o.allowDuplicatedCategory){var p=f===void 0?l:f;h=fy(p,o.dataKey,a)}else h=f&&f[r]||l[r];return h?[].concat(fl(c),[VP(u,h)]):c},[])},BN=function(t,n,r,a){var s=a||{x:t.chartX,y:t.chartY},o=Cie(s,r),l=t.orderedTooltipTicks,c=t.tooltipAxis,u=t.tooltipTicks,d=eQ(o,l,u,c);if(d>=0&&u){var f=u[d]&&u[d].value,h=Rb(t,n,d,f),p=Tie(r,l,d,s);return{activeTooltipIndex:d,activeLabel:f,activePayload:h,activeCoordinate:p}}return null},Oie=function(t,n){var r=n.axes,a=n.graphicalItems,s=n.axisType,o=n.axisIdKey,l=n.stackGroups,c=n.dataStartIndex,u=n.dataEndIndex,d=t.layout,f=t.children,h=t.stackOffset,p=GP(d,s);return r.reduce(function(g,m){var y,v=m.type.defaultProps!==void 0?ne(ne({},m.type.defaultProps),m.props):m.props,k=v.type,x=v.dataKey,j=v.allowDataOverflow,w=v.allowDuplicatedCategory,b=v.scale,N=v.ticks,E=v.includeHidden,O=v[o];if(g[O])return g;var C=mm(t.data,{graphicalItems:a.filter(function(D){var I,ce=o in D.props?D.props[o]:(I=D.type.defaultProps)===null||I===void 0?void 0:I[o];return ce===O}),dataStartIndex:c,dataEndIndex:u}),P=C.length,$,B,M;rie(v.domain,j,k)&&($=Jy(v.domain,null,j),p&&(k==="number"||b!=="auto")&&(M=Rc(C,x,"category")));var F=QR(k);if(!$||$.length===0){var L,W=(L=v.domain)!==null&&L!==void 0?L:F;if(x){if($=Rc(C,x,k),k==="category"&&p){var A=UU($);w&&A?(B=$,$=Bh(0,P)):w||($=kj(W,$,m).reduce(function(D,I){return D.indexOf(I)>=0?D:[].concat(fl(D),[I])},[]))}else if(k==="category")w?$=$.filter(function(D){return D!==""&&!Xe(D)}):$=kj(W,$,m).reduce(function(D,I){return D.indexOf(I)>=0||I===""||Xe(I)?D:[].concat(fl(D),[I])},[]);else if(k==="number"){var z=iQ(C,a.filter(function(D){var I,ce,ge=o in D.props?D.props[o]:(I=D.type.defaultProps)===null||I===void 0?void 0:I[o],ve="hide"in D.props?D.props.hide:(ce=D.type.defaultProps)===null||ce===void 0?void 0:ce.hide;return ge===O&&(E||!ve)}),x,s,d);z&&($=z)}p&&(k==="number"||b!=="auto")&&(M=Rc(C,x,"category"))}else p?$=Bh(0,P):l&&l[O]&&l[O].hasStack&&k==="number"?$=h==="expand"?[0,1]:KP(l[O].stackGroups,c,u):$=HP(C,a.filter(function(D){var I=o in D.props?D.props[o]:D.type.defaultProps[o],ce="hide"in D.props?D.props.hide:D.type.defaultProps.hide;return I===O&&(E||!ce)}),k,d,!0);if(k==="number")$=Tb(f,$,O,s,N),W&&($=Jy(W,$,j));else if(k==="category"&&W){var T=W,K=$.every(function(D){return T.indexOf(D)>=0});K&&($=T)}}return ne(ne({},g),{},Ae({},O,ne(ne({},v),{},{axisType:s,domain:$,categoricalDomain:M,duplicateDomain:B,originalDomain:(y=v.domain)!==null&&y!==void 0?y:F,isCategorical:p,layout:d})))},{})},Pie=function(t,n){var r=n.graphicalItems,a=n.Axis,s=n.axisType,o=n.axisIdKey,l=n.stackGroups,c=n.dataStartIndex,u=n.dataEndIndex,d=t.layout,f=t.children,h=mm(t.data,{graphicalItems:r,dataStartIndex:c,dataEndIndex:u}),p=h.length,g=GP(d,s),m=-1;return r.reduce(function(y,v){var k=v.type.defaultProps!==void 0?ne(ne({},v.type.defaultProps),v.props):v.props,x=k[o],j=QR("number");if(!y[x]){m++;var w;return g?w=Bh(0,p):l&&l[x]&&l[x].hasStack?(w=KP(l[x].stackGroups,c,u),w=Tb(f,w,x,s)):(w=Jy(j,HP(h,r.filter(function(b){var N,E,O=o in b.props?b.props[o]:(N=b.type.defaultProps)===null||N===void 0?void 0:N[o],C="hide"in b.props?b.props.hide:(E=b.type.defaultProps)===null||E===void 0?void 0:E.hide;return O===x&&!C}),"number",d),a.defaultProps.allowDataOverflow),w=Tb(f,w,x,s)),ne(ne({},y),{},Ae({},x,ne(ne({axisType:s},a.defaultProps),{},{hide:!0,orientation:br(_ie,"".concat(s,".").concat(m%2),null),domain:w,originalDomain:j,isCategorical:g,layout:d})))}return y},{})},Rie=function(t,n){var r=n.axisType,a=r===void 0?"xAxis":r,s=n.AxisComp,o=n.graphicalItems,l=n.stackGroups,c=n.dataStartIndex,u=n.dataEndIndex,d=t.children,f="".concat(a,"Id"),h=Fr(d,s),p={};return h&&h.length?p=Oie(t,{axes:h,graphicalItems:o,axisType:a,axisIdKey:f,stackGroups:l,dataStartIndex:c,dataEndIndex:u}):o&&o.length&&(p=Pie(t,{Axis:s,graphicalItems:o,axisType:a,axisIdKey:f,stackGroups:l,dataStartIndex:c,dataEndIndex:u})),p},Mie=function(t){var n=ti(t),r=Na(n,!1,!0);return{tooltipTicks:r,orderedTooltipTicks:bw(r,function(a){return a.coordinate}),tooltipAxis:n,tooltipAxisBandSize:Ch(n,r)}},zN=function(t){var n=t.children,r=t.defaultShowTooltip,a=Qn(n,rl),s=0,o=0;return t.data&&t.data.length!==0&&(o=t.data.length-1),a&&a.props&&(a.props.startIndex>=0&&(s=a.props.startIndex),a.props.endIndex>=0&&(o=a.props.endIndex)),{chartX:0,chartY:0,dataStartIndex:s,dataEndIndex:o,activeTooltipIndex:-1,isTooltipActive:!!r}},Iie=function(t){return!t||!t.length?!1:t.some(function(n){var r=_a(n&&n.type);return r&&r.indexOf("Bar")>=0})},FN=function(t){return t==="horizontal"?{numericAxisName:"yAxis",cateAxisName:"xAxis"}:t==="vertical"?{numericAxisName:"xAxis",cateAxisName:"yAxis"}:t==="centric"?{numericAxisName:"radiusAxis",cateAxisName:"angleAxis"}:{numericAxisName:"angleAxis",cateAxisName:"radiusAxis"}},$ie=function(t,n){var r=t.props,a=t.graphicalItems,s=t.xAxisMap,o=s===void 0?{}:s,l=t.yAxisMap,c=l===void 0?{}:l,u=r.width,d=r.height,f=r.children,h=r.margin||{},p=Qn(f,rl),g=Qn(f,ms),m=Object.keys(c).reduce(function(w,b){var N=c[b],E=N.orientation;return!N.mirror&&!N.hide?ne(ne({},w),{},Ae({},E,w[E]+N.width)):w},{left:h.left||0,right:h.right||0}),y=Object.keys(o).reduce(function(w,b){var N=o[b],E=N.orientation;return!N.mirror&&!N.hide?ne(ne({},w),{},Ae({},E,br(w,"".concat(E))+N.height)):w},{top:h.top||0,bottom:h.bottom||0}),v=ne(ne({},y),m),k=v.bottom;p&&(v.bottom+=p.props.height||rl.defaultProps.height),g&&n&&(v=rQ(v,a,r,n));var x=u-v.left-v.right,j=d-v.top-v.bottom;return ne(ne({brushBottom:k},v),{},{width:Math.max(x,0),height:Math.max(j,0)})},Lie=function(t,n){if(n==="xAxis")return t[n].width;if(n==="yAxis")return t[n].height},Die=function(t){var n=t.chartName,r=t.GraphicalChild,a=t.defaultTooltipEventType,s=a===void 0?"axis":a,o=t.validateTooltipEventTypes,l=o===void 0?["axis"]:o,c=t.axisComponents,u=t.legendContent,d=t.formatAxisMap,f=t.defaultProps,h=function(v,k){var x=k.graphicalItems,j=k.stackGroups,w=k.offset,b=k.updateId,N=k.dataStartIndex,E=k.dataEndIndex,O=v.barSize,C=v.layout,P=v.barGap,$=v.barCategoryGap,B=v.maxBarSize,M=FN(C),F=M.numericAxisName,L=M.cateAxisName,W=Iie(x),A=[];return x.forEach(function(z,T){var K=mm(v.data,{graphicalItems:[z],dataStartIndex:N,dataEndIndex:E}),D=z.type.defaultProps!==void 0?ne(ne({},z.type.defaultProps),z.props):z.props,I=D.dataKey,ce=D.maxBarSize,ge=D["".concat(F,"Id")],ve=D["".concat(L,"Id")],Ce={},Q=c.reduce(function(Oe,nt){var qe=k["".concat(nt.axisType,"Map")],Ct=D["".concat(nt.axisType,"Id")];qe&&qe[Ct]||nt.axisType==="zAxis"||Cs();var fn=qe[Ct];return ne(ne({},Oe),{},Ae(Ae({},nt.axisType,fn),"".concat(nt.axisType,"Ticks"),Na(fn)))},Ce),X=Q[L],ie=Q["".concat(L,"Ticks")],fe=j&&j[ge]&&j[ge].hasStack&&vQ(z,j[ge].stackGroups),J=_a(z.type).indexOf("Bar")>=0,ye=Ch(X,ie),je=[],_e=W&&tQ({barSize:O,stackGroups:j,totalSize:Lie(Q,L)});if(J){var be,$e,he=Xe(ce)?B:ce,Je=(be=($e=Ch(X,ie,!0))!==null&&$e!==void 0?$e:he)!==null&&be!==void 0?be:0;je=nQ({barGap:P,barCategoryGap:$,bandSize:Je!==ye?Je:ye,sizeList:_e[ve],maxBarSize:he}),Je!==ye&&(je=je.map(function(Oe){return ne(ne({},Oe),{},{position:ne(ne({},Oe.position),{},{offset:Oe.position.offset-Je/2})})}))}var Le=z&&z.type&&z.type.getComposedData;Le&&A.push({props:ne(ne({},Le(ne(ne({},Q),{},{displayedData:K,props:v,dataKey:I,item:z,bandSize:ye,barPosition:je,offset:w,stackedData:fe,layout:C,dataStartIndex:N,dataEndIndex:E}))),{},Ae(Ae(Ae({key:z.key||"item-".concat(T)},F,Q[F]),L,Q[L]),"animationId",b)),childIndex:e3(z,v.children),item:z})}),A},p=function(v,k){var x=v.props,j=v.dataStartIndex,w=v.dataEndIndex,b=v.updateId;if(!gS({props:x}))return null;var N=x.children,E=x.layout,O=x.stackOffset,C=x.data,P=x.reverseStackOrder,$=FN(E),B=$.numericAxisName,M=$.cateAxisName,F=Fr(N,r),L=pQ(C,F,"".concat(B,"Id"),"".concat(M,"Id"),O,P),W=c.reduce(function(D,I){var ce="".concat(I.axisType,"Map");return ne(ne({},D),{},Ae({},ce,Rie(x,ne(ne({},I),{},{graphicalItems:F,stackGroups:I.axisType===B&&L,dataStartIndex:j,dataEndIndex:w}))))},{}),A=$ie(ne(ne({},W),{},{props:x,graphicalItems:F}),k==null?void 0:k.legendBBox);Object.keys(W).forEach(function(D){W[D]=d(x,W[D],A,D.replace("Map",""),n)});var z=W["".concat(M,"Map")],T=Mie(z),K=h(x,ne(ne({},W),{},{dataStartIndex:j,dataEndIndex:w,updateId:b,graphicalItems:F,stackGroups:L,offset:A}));return ne(ne({formattedGraphicalItems:K,graphicalItems:F,offset:A,stackGroups:L},T),W)},g=function(y){function v(k){var x,j,w;return gie(this,v),w=bie(this,v,[k]),Ae(w,"eventEmitterSymbol",Symbol("rechartsEventEmitter")),Ae(w,"accessibilityManager",new nie),Ae(w,"handleLegendBBoxUpdate",function(b){if(b){var N=w.state,E=N.dataStartIndex,O=N.dataEndIndex,C=N.updateId;w.setState(ne({legendBBox:b},p({props:w.props,dataStartIndex:E,dataEndIndex:O,updateId:C},ne(ne({},w.state),{},{legendBBox:b}))))}}),Ae(w,"handleReceiveSyncEvent",function(b,N,E){if(w.props.syncId===b){if(E===w.eventEmitterSymbol&&typeof w.props.syncMethod!="function")return;w.applySyncEvent(N)}}),Ae(w,"handleBrushChange",function(b){var N=b.startIndex,E=b.endIndex;if(N!==w.state.dataStartIndex||E!==w.state.dataEndIndex){var O=w.state.updateId;w.setState(function(){return ne({dataStartIndex:N,dataEndIndex:E},p({props:w.props,dataStartIndex:N,dataEndIndex:E,updateId:O},w.state))}),w.triggerSyncEvent({dataStartIndex:N,dataEndIndex:E})}}),Ae(w,"handleMouseEnter",function(b){var N=w.getMouseInfo(b);if(N){var E=ne(ne({},N),{},{isTooltipActive:!0});w.setState(E),w.triggerSyncEvent(E);var O=w.props.onMouseEnter;De(O)&&O(E,b)}}),Ae(w,"triggeredAfterMouseMove",function(b){var N=w.getMouseInfo(b),E=N?ne(ne({},N),{},{isTooltipActive:!0}):{isTooltipActive:!1};w.setState(E),w.triggerSyncEvent(E);var O=w.props.onMouseMove;De(O)&&O(E,b)}),Ae(w,"handleItemMouseEnter",function(b){w.setState(function(){return{isTooltipActive:!0,activeItem:b,activePayload:b.tooltipPayload,activeCoordinate:b.tooltipPosition||{x:b.cx,y:b.cy}}})}),Ae(w,"handleItemMouseLeave",function(){w.setState(function(){return{isTooltipActive:!1}})}),Ae(w,"handleMouseMove",function(b){b.persist(),w.throttleTriggeredAfterMouseMove(b)}),Ae(w,"handleMouseLeave",function(b){w.throttleTriggeredAfterMouseMove.cancel();var N={isTooltipActive:!1};w.setState(N),w.triggerSyncEvent(N);var E=w.props.onMouseLeave;De(E)&&E(N,b)}),Ae(w,"handleOuterEvent",function(b){var N=JU(b),E=br(w.props,"".concat(N));if(N&&De(E)){var O,C;/.*touch.*/i.test(N)?C=w.getMouseInfo(b.changedTouches[0]):C=w.getMouseInfo(b),E((O=C)!==null&&O!==void 0?O:{},b)}}),Ae(w,"handleClick",function(b){var N=w.getMouseInfo(b);if(N){var E=ne(ne({},N),{},{isTooltipActive:!0});w.setState(E),w.triggerSyncEvent(E);var O=w.props.onClick;De(O)&&O(E,b)}}),Ae(w,"handleMouseDown",function(b){var N=w.props.onMouseDown;if(De(N)){var E=w.getMouseInfo(b);N(E,b)}}),Ae(w,"handleMouseUp",function(b){var N=w.props.onMouseUp;if(De(N)){var E=w.getMouseInfo(b);N(E,b)}}),Ae(w,"handleTouchMove",function(b){b.changedTouches!=null&&b.changedTouches.length>0&&w.throttleTriggeredAfterMouseMove(b.changedTouches[0])}),Ae(w,"handleTouchStart",function(b){b.changedTouches!=null&&b.changedTouches.length>0&&w.handleMouseDown(b.changedTouches[0])}),Ae(w,"handleTouchEnd",function(b){b.changedTouches!=null&&b.changedTouches.length>0&&w.handleMouseUp(b.changedTouches[0])}),Ae(w,"handleDoubleClick",function(b){var N=w.props.onDoubleClick;if(De(N)){var E=w.getMouseInfo(b);N(E,b)}}),Ae(w,"handleContextMenu",function(b){var N=w.props.onContextMenu;if(De(N)){var E=w.getMouseInfo(b);N(E,b)}}),Ae(w,"triggerSyncEvent",function(b){w.props.syncId!==void 0&&Cg.emit(Tg,w.props.syncId,b,w.eventEmitterSymbol)}),Ae(w,"applySyncEvent",function(b){var N=w.props,E=N.layout,O=N.syncMethod,C=w.state.updateId,P=b.dataStartIndex,$=b.dataEndIndex;if(b.dataStartIndex!==void 0||b.dataEndIndex!==void 0)w.setState(ne({dataStartIndex:P,dataEndIndex:$},p({props:w.props,dataStartIndex:P,dataEndIndex:$,updateId:C},w.state)));else if(b.activeTooltipIndex!==void 0){var B=b.chartX,M=b.chartY,F=b.activeTooltipIndex,L=w.state,W=L.offset,A=L.tooltipTicks;if(!W)return;if(typeof O=="function")F=O(A,b);else if(O==="value"){F=-1;for(var z=0;z<A.length;z++)if(A[z].value===b.activeLabel){F=z;break}}var T=ne(ne({},W),{},{x:W.left,y:W.top}),K=Math.min(B,T.x+T.width),D=Math.min(M,T.y+T.height),I=A[F]&&A[F].value,ce=Rb(w.state,w.props.data,F),ge=A[F]?{x:E==="horizontal"?A[F].coordinate:K,y:E==="horizontal"?D:A[F].coordinate}:XR;w.setState(ne(ne({},b),{},{activeLabel:I,activeCoordinate:ge,activePayload:ce,activeTooltipIndex:F}))}else w.setState(b)}),Ae(w,"renderCursor",function(b){var N,E=w.state,O=E.isTooltipActive,C=E.activeCoordinate,P=E.activePayload,$=E.offset,B=E.activeTooltipIndex,M=E.tooltipAxisBandSize,F=w.getTooltipEventType(),L=(N=b.props.active)!==null&&N!==void 0?N:O,W=w.props.layout,A=b.key||"_recharts-cursor";return q.createElement(cie,{key:A,activeCoordinate:C,activePayload:P,activeTooltipIndex:B,chartName:n,element:b,isActive:L,layout:W,offset:$,tooltipAxisBandSize:M,tooltipEventType:F})}),Ae(w,"renderPolarAxis",function(b,N,E){var O=br(b,"type.axisType"),C=br(w.state,"".concat(O,"Map")),P=b.type.defaultProps,$=P!==void 0?ne(ne({},P),b.props):b.props,B=C&&C[$["".concat(O,"Id")]];return S.cloneElement(b,ne(ne({},B),{},{className:Ye(O,B.className),key:b.key||"".concat(N,"-").concat(E),ticks:Na(B,!0)}))}),Ae(w,"renderPolarGrid",function(b){var N=b.props,E=N.radialLines,O=N.polarAngles,C=N.polarRadius,P=w.state,$=P.radiusAxisMap,B=P.angleAxisMap,M=ti($),F=ti(B),L=F.cx,W=F.cy,A=F.innerRadius,z=F.outerRadius;return S.cloneElement(b,{polarAngles:Array.isArray(O)?O:Na(F,!0).map(function(T){return T.coordinate}),polarRadius:Array.isArray(C)?C:Na(M,!0).map(function(T){return T.coordinate}),cx:L,cy:W,innerRadius:A,outerRadius:z,key:b.key||"polar-grid",radialLines:E})}),Ae(w,"renderLegend",function(){var b=w.state.formattedGraphicalItems,N=w.props,E=N.children,O=N.width,C=N.height,P=w.props.margin||{},$=O-(P.left||0)-(P.right||0),B=UP({children:E,formattedGraphicalItems:b,legendWidth:$,legendContent:u});if(!B)return null;var M=B.item,F=LN(B,uie);return S.cloneElement(M,ne(ne({},F),{},{chartWidth:O,chartHeight:C,margin:P,onBBoxUpdate:w.handleLegendBBoxUpdate}))}),Ae(w,"renderTooltip",function(){var b,N=w.props,E=N.children,O=N.accessibilityLayer,C=Qn(E,bn);if(!C)return null;var P=w.state,$=P.isTooltipActive,B=P.activeCoordinate,M=P.activePayload,F=P.activeLabel,L=P.offset,W=(b=C.props.active)!==null&&b!==void 0?b:$;return S.cloneElement(C,{viewBox:ne(ne({},L),{},{x:L.left,y:L.top}),active:W,label:F,payload:W?M:[],coordinate:B,accessibilityLayer:O})}),Ae(w,"renderBrush",function(b){var N=w.props,E=N.margin,O=N.data,C=w.state,P=C.offset,$=C.dataStartIndex,B=C.dataEndIndex,M=C.updateId;return S.cloneElement(b,{key:b.key||"_recharts-brush",onChange:Hd(w.handleBrushChange,b.props.onChange),data:O,x:de(b.props.x)?b.props.x:P.left,y:de(b.props.y)?b.props.y:P.top+P.height+P.brushBottom-(E.bottom||0),width:de(b.props.width)?b.props.width:P.width,startIndex:$,endIndex:B,updateId:"brush-".concat(M)})}),Ae(w,"renderReferenceElement",function(b,N,E){if(!b)return null;var O=w,C=O.clipPathId,P=w.state,$=P.xAxisMap,B=P.yAxisMap,M=P.offset,F=b.type.defaultProps||{},L=b.props,W=L.xAxisId,A=W===void 0?F.xAxisId:W,z=L.yAxisId,T=z===void 0?F.yAxisId:z;return S.cloneElement(b,{key:b.key||"".concat(N,"-").concat(E),xAxis:$[A],yAxis:B[T],viewBox:{x:M.left,y:M.top,width:M.width,height:M.height},clipPathId:C})}),Ae(w,"renderActivePoints",function(b){var N=b.item,E=b.activePoint,O=b.basePoint,C=b.childIndex,P=b.isRange,$=[],B=N.props.key,M=N.item.type.defaultProps!==void 0?ne(ne({},N.item.type.defaultProps),N.item.props):N.item.props,F=M.activeDot,L=M.dataKey,W=ne(ne({index:C,dataKey:L,cx:E.x,cy:E.y,r:4,fill:qw(N.item),strokeWidth:2,stroke:"#fff",payload:E.payload,value:E.value},Ve(F,!1)),Jf(F));return $.push(v.renderActiveDot(F,W,"".concat(B,"-activePoint-").concat(C))),O?$.push(v.renderActiveDot(F,ne(ne({},W),{},{cx:O.x,cy:O.y}),"".concat(B,"-basePoint-").concat(C))):P&&$.push(null),$}),Ae(w,"renderGraphicChild",function(b,N,E){var O=w.filterFormatItem(b,N,E);if(!O)return null;var C=w.getTooltipEventType(),P=w.state,$=P.isTooltipActive,B=P.tooltipAxis,M=P.activeTooltipIndex,F=P.activeLabel,L=w.props.children,W=Qn(L,bn),A=O.props,z=A.points,T=A.isRange,K=A.baseLine,D=O.item.type.defaultProps!==void 0?ne(ne({},O.item.type.defaultProps),O.item.props):O.item.props,I=D.activeDot,ce=D.hide,ge=D.activeBar,ve=D.activeShape,Ce=!!(!ce&&$&&W&&(I||ge||ve)),Q={};C!=="axis"&&W&&W.props.trigger==="click"?Q={onClick:Hd(w.handleItemMouseEnter,b.props.onClick)}:C!=="axis"&&(Q={onMouseLeave:Hd(w.handleItemMouseLeave,b.props.onMouseLeave),onMouseEnter:Hd(w.handleItemMouseEnter,b.props.onMouseEnter)});var X=S.cloneElement(b,ne(ne({},O.props),Q));function ie(nt){return typeof B.dataKey=="function"?B.dataKey(nt.payload):null}if(Ce)if(M>=0){var fe,J;if(B.dataKey&&!B.allowDuplicatedCategory){var ye=typeof B.dataKey=="function"?ie:"payload.".concat(B.dataKey.toString());fe=fy(z,ye,F),J=T&&K&&fy(K,ye,F)}else fe=z==null?void 0:z[M],J=T&&K&&K[M];if(ve||ge){var je=b.props.activeIndex!==void 0?b.props.activeIndex:M;return[S.cloneElement(b,ne(ne(ne({},O.props),Q),{},{activeIndex:je})),null,null]}if(!Xe(fe))return[X].concat(fl(w.renderActivePoints({item:O,activePoint:fe,basePoint:J,childIndex:M,isRange:T})))}else{var _e,be=(_e=w.getItemByXY(w.state.activeCoordinate))!==null&&_e!==void 0?_e:{graphicalItem:X},$e=be.graphicalItem,he=$e.item,Je=he===void 0?b:he,Le=$e.childIndex,Oe=ne(ne(ne({},O.props),Q),{},{activeIndex:Le});return[S.cloneElement(Je,Oe),null,null]}return T?[X,null,null]:[X,null]}),Ae(w,"renderCustomized",function(b,N,E){return S.cloneElement(b,ne(ne({key:"recharts-customized-".concat(E)},w.props),w.state))}),Ae(w,"renderMap",{CartesianGrid:{handler:Yd,once:!0},ReferenceArea:{handler:w.renderReferenceElement},ReferenceLine:{handler:Yd},ReferenceDot:{handler:w.renderReferenceElement},XAxis:{handler:Yd},YAxis:{handler:Yd},Brush:{handler:w.renderBrush,once:!0},Bar:{handler:w.renderGraphicChild},Line:{handler:w.renderGraphicChild},Area:{handler:w.renderGraphicChild},Radar:{handler:w.renderGraphicChild},RadialBar:{handler:w.renderGraphicChild},Scatter:{handler:w.renderGraphicChild},Pie:{handler:w.renderGraphicChild},Funnel:{handler:w.renderGraphicChild},Tooltip:{handler:w.renderCursor,once:!0},PolarGrid:{handler:w.renderPolarGrid,once:!0},PolarAngleAxis:{handler:w.renderPolarAxis},PolarRadiusAxis:{handler:w.renderPolarAxis},Customized:{handler:w.renderCustomized}}),w.clipPathId="".concat((x=k.id)!==null&&x!==void 0?x:Wp("recharts"),"-clip"),w.throttleTriggeredAfterMouseMove=WO(w.triggeredAfterMouseMove,(j=k.throttleDelay)!==null&&j!==void 0?j:1e3/60),w.state={},w}return kie(v,y),yie(v,[{key:"componentDidMount",value:function(){var x,j;this.addListener(),this.accessibilityManager.setDetails({container:this.container,offset:{left:(x=this.props.margin.left)!==null&&x!==void 0?x:0,top:(j=this.props.margin.top)!==null&&j!==void 0?j:0},coordinateList:this.state.tooltipTicks,mouseHandlerCallback:this.triggeredAfterMouseMove,layout:this.props.layout}),this.displayDefaultTooltip()}},{key:"displayDefaultTooltip",value:function(){var x=this.props,j=x.children,w=x.data,b=x.height,N=x.layout,E=Qn(j,bn);if(E){var O=E.props.defaultIndex;if(!(typeof O!="number"||O<0||O>this.state.tooltipTicks.length-1)){var C=this.state.tooltipTicks[O]&&this.state.tooltipTicks[O].value,P=Rb(this.state,w,O,C),$=this.state.tooltipTicks[O].coordinate,B=(this.state.offset.top+b)/2,M=N==="horizontal",F=M?{x:$,y:B}:{y:$,x:B},L=this.state.formattedGraphicalItems.find(function(A){var z=A.item;return z.type.name==="Scatter"});L&&(F=ne(ne({},F),L.props.points[O].tooltipPosition),P=L.props.points[O].tooltipPayload);var W={activeTooltipIndex:O,isTooltipActive:!0,activeLabel:C,activePayload:P,activeCoordinate:F};this.setState(W),this.renderCursor(E),this.accessibilityManager.setIndex(O)}}}},{key:"getSnapshotBeforeUpdate",value:function(x,j){if(!this.props.accessibilityLayer)return null;if(this.state.tooltipTicks!==j.tooltipTicks&&this.accessibilityManager.setDetails({coordinateList:this.state.tooltipTicks}),this.props.layout!==x.layout&&this.accessibilityManager.setDetails({layout:this.props.layout}),this.props.margin!==x.margin){var w,b;this.accessibilityManager.setDetails({offset:{left:(w=this.props.margin.left)!==null&&w!==void 0?w:0,top:(b=this.props.margin.top)!==null&&b!==void 0?b:0}})}return null}},{key:"componentDidUpdate",value:function(x){py([Qn(x.children,bn)],[Qn(this.props.children,bn)])||this.displayDefaultTooltip()}},{key:"componentWillUnmount",value:function(){this.removeListener(),this.throttleTriggeredAfterMouseMove.cancel()}},{key:"getTooltipEventType",value:function(){var x=Qn(this.props.children,bn);if(x&&typeof x.props.shared=="boolean"){var j=x.props.shared?"axis":"item";return l.indexOf(j)>=0?j:s}return s}},{key:"getMouseInfo",value:function(x){if(!this.container)return null;var j=this.container,w=j.getBoundingClientRect(),b=EK(w),N={chartX:Math.round(x.pageX-b.left),chartY:Math.round(x.pageY-b.top)},E=w.width/j.offsetWidth||1,O=this.inRange(N.chartX,N.chartY,E);if(!O)return null;var C=this.state,P=C.xAxisMap,$=C.yAxisMap,B=this.getTooltipEventType(),M=BN(this.state,this.props.data,this.props.layout,O);if(B!=="axis"&&P&&$){var F=ti(P).scale,L=ti($).scale,W=F&&F.invert?F.invert(N.chartX):null,A=L&&L.invert?L.invert(N.chartY):null;return ne(ne({},N),{},{xValue:W,yValue:A},M)}return M?ne(ne({},N),M):null}},{key:"inRange",value:function(x,j){var w=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,b=this.props.layout,N=x/w,E=j/w;if(b==="horizontal"||b==="vertical"){var O=this.state.offset,C=N>=O.left&&N<=O.left+O.width&&E>=O.top&&E<=O.top+O.height;return C?{x:N,y:E}:null}var P=this.state,$=P.angleAxisMap,B=P.radiusAxisMap;if($&&B){var M=ti($);return Nj({x:N,y:E},M)}return null}},{key:"parseEventsOfWrapper",value:function(){var x=this.props.children,j=this.getTooltipEventType(),w=Qn(x,bn),b={};w&&j==="axis"&&(w.props.trigger==="click"?b={onClick:this.handleClick}:b={onMouseEnter:this.handleMouseEnter,onDoubleClick:this.handleDoubleClick,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave,onTouchMove:this.handleTouchMove,onTouchStart:this.handleTouchStart,onTouchEnd:this.handleTouchEnd,onContextMenu:this.handleContextMenu});var N=Jf(this.props,this.handleOuterEvent);return ne(ne({},N),b)}},{key:"addListener",value:function(){Cg.on(Tg,this.handleReceiveSyncEvent)}},{key:"removeListener",value:function(){Cg.removeListener(Tg,this.handleReceiveSyncEvent)}},{key:"filterFormatItem",value:function(x,j,w){for(var b=this.state.formattedGraphicalItems,N=0,E=b.length;N<E;N++){var O=b[N];if(O.item===x||O.props.key===x.key||j===_a(O.item.type)&&w===O.childIndex)return O}return null}},{key:"renderClipPath",value:function(){var x=this.clipPathId,j=this.state.offset,w=j.left,b=j.top,N=j.height,E=j.width;return q.createElement("defs",null,q.createElement("clipPath",{id:x},q.createElement("rect",{x:w,y:b,height:N,width:E})))}},{key:"getXScales",value:function(){var x=this.state.xAxisMap;return x?Object.entries(x).reduce(function(j,w){var b=$N(w,2),N=b[0],E=b[1];return ne(ne({},j),{},Ae({},N,E.scale))},{}):null}},{key:"getYScales",value:function(){var x=this.state.yAxisMap;return x?Object.entries(x).reduce(function(j,w){var b=$N(w,2),N=b[0],E=b[1];return ne(ne({},j),{},Ae({},N,E.scale))},{}):null}},{key:"getXScaleByAxisId",value:function(x){var j;return(j=this.state.xAxisMap)===null||j===void 0||(j=j[x])===null||j===void 0?void 0:j.scale}},{key:"getYScaleByAxisId",value:function(x){var j;return(j=this.state.yAxisMap)===null||j===void 0||(j=j[x])===null||j===void 0?void 0:j.scale}},{key:"getItemByXY",value:function(x){var j=this.state,w=j.formattedGraphicalItems,b=j.activeItem;if(w&&w.length)for(var N=0,E=w.length;N<E;N++){var O=w[N],C=O.props,P=O.item,$=P.type.defaultProps!==void 0?ne(ne({},P.type.defaultProps),P.props):P.props,B=_a(P.type);if(B==="Bar"){var M=(C.data||[]).find(function(A){return fee(x,A)});if(M)return{graphicalItem:O,payload:M}}else if(B==="RadialBar"){var F=(C.data||[]).find(function(A){return Nj(x,A)});if(F)return{graphicalItem:O,payload:F}}else if(lm(O,b)||cm(O,b)||Mu(O,b)){var L=mte({graphicalItem:O,activeTooltipItem:b,itemData:$.data}),W=$.activeIndex===void 0?L:$.activeIndex;return{graphicalItem:ne(ne({},O),{},{childIndex:W}),payload:Mu(O,b)?$.data[L]:O.props.data[L]}}}return null}},{key:"render",value:function(){var x=this;if(!gS(this))return null;var j=this.props,w=j.children,b=j.className,N=j.width,E=j.height,O=j.style,C=j.compact,P=j.title,$=j.desc,B=LN(j,die),M=Ve(B,!1);if(C)return q.createElement(wN,{state:this.state,width:this.props.width,height:this.props.height,clipPathId:this.clipPathId},q.createElement(gy,Eo({},M,{width:N,height:E,title:P,desc:$}),this.renderClipPath(),yS(w,this.renderMap)));if(this.props.accessibilityLayer){var F,L;M.tabIndex=(F=this.props.tabIndex)!==null&&F!==void 0?F:0,M.role=(L=this.props.role)!==null&&L!==void 0?L:"application",M.onKeyDown=function(A){x.accessibilityManager.keyboardEvent(A)},M.onFocus=function(){x.accessibilityManager.focus()}}var W=this.parseEventsOfWrapper();return q.createElement(wN,{state:this.state,width:this.props.width,height:this.props.height,clipPathId:this.clipPathId},q.createElement("div",Eo({className:Ye("recharts-wrapper",b),style:ne({position:"relative",cursor:"default",width:N,height:E},O)},W,{ref:function(z){x.container=z}}),q.createElement(gy,Eo({},M,{width:N,height:E,title:P,desc:$,style:Aie}),this.renderClipPath(),yS(w,this.renderMap)),this.renderLegend(),this.renderTooltip()))}}])}(S.Component);Ae(g,"displayName",n),Ae(g,"defaultProps",ne({layout:"horizontal",stackOffset:"none",barCategoryGap:"10%",barGap:4,margin:{top:5,right:5,bottom:5,left:5},reverseStackOrder:!1,syncMethod:"index"},f)),Ae(g,"getDerivedStateFromProps",function(y,v){var k=y.dataKey,x=y.data,j=y.children,w=y.width,b=y.height,N=y.layout,E=y.stackOffset,O=y.margin,C=v.dataStartIndex,P=v.dataEndIndex;if(v.updateId===void 0){var $=zN(y);return ne(ne(ne({},$),{},{updateId:0},p(ne(ne({props:y},$),{},{updateId:0}),v)),{},{prevDataKey:k,prevData:x,prevWidth:w,prevHeight:b,prevLayout:N,prevStackOffset:E,prevMargin:O,prevChildren:j})}if(k!==v.prevDataKey||x!==v.prevData||w!==v.prevWidth||b!==v.prevHeight||N!==v.prevLayout||E!==v.prevStackOffset||!Mo(O,v.prevMargin)){var B=zN(y),M={chartX:v.chartX,chartY:v.chartY,isTooltipActive:v.isTooltipActive},F=ne(ne({},BN(v,x,N)),{},{updateId:v.updateId+1}),L=ne(ne(ne({},B),M),F);return ne(ne(ne({},L),p(ne({props:y},L),v)),{},{prevDataKey:k,prevData:x,prevWidth:w,prevHeight:b,prevLayout:N,prevStackOffset:E,prevMargin:O,prevChildren:j})}if(!py(j,v.prevChildren)){var W,A,z,T,K=Qn(j,rl),D=K&&(W=(A=K.props)===null||A===void 0?void 0:A.startIndex)!==null&&W!==void 0?W:C,I=K&&(z=(T=K.props)===null||T===void 0?void 0:T.endIndex)!==null&&z!==void 0?z:P,ce=D!==C||I!==P,ge=!Xe(x),ve=ge&&!ce?v.updateId:v.updateId+1;return ne(ne({updateId:ve},p(ne(ne({props:y},v),{},{updateId:ve,dataStartIndex:D,dataEndIndex:I}),v)),{},{prevChildren:j,dataStartIndex:D,dataEndIndex:I})}return null}),Ae(g,"renderActiveDot",function(y,v,k){var x;return S.isValidElement(y)?x=S.cloneElement(y,v):De(y)?x=y(v):x=q.createElement(lR,v),q.createElement(tn,{className:"recharts-active-dot",key:k},x)});var m=S.forwardRef(function(v,k){return q.createElement(g,Eo({},v,{ref:k}))});return m.displayName=g.displayName,m},rs=Die({chartName:"BarChart",GraphicalChild:yn,defaultTooltipEventType:"axis",validateTooltipEventTypes:["axis","item"],axisComponents:[{axisType:"xAxis",AxisComp:ra},{axisType:"yAxis",AxisComp:aa}],formatAxisMap:zne});const Bie=new Intl.NumberFormat("en-US");function mt(e){return Bie.format(e)}function Mb(e){return e==null||e<1e-5?"$0.00":e<.01?"$"+e.toFixed(6):"$"+e.toFixed(4)}function jt(e){return e==null?"0":e>=1e6?(e/1e6).toFixed(1)+"M":e>=1e3?(e/1e3).toFixed(1)+"K":mt(e)}function zie(e,t){var a,s;const n=[];if(t){const o=t.toolsets.toolsets.filter(l=>l.enabled).reduce((l,c)=>l+c.toolCount,0);n.push({key:"tools",icon:"🔧",value:jt(o),label:"Active Tools",tone:"accent"})}const r=((a=t==null?void 0:t.conversations)==null?void 0:a.total)??((s=e==null?void 0:e.conversations)==null?void 0:s.total);return r!==void 0&&n.push({key:"conversations",icon:"💬",value:jt(r),label:"Active Conversations",tone:"ok"}),t&&n.push({key:"skills",icon:"🧩",value:jt(t.skills.total),label:"Skills Loaded",tone:"warn"}),e&&n.push({key:"cost",icon:"💰",value:Mb(e.cost.totalCost),label:"Total Cost",tone:"danger"}),n}function Fie({tiles:e}){return e.length===0?null:i.jsx("ul",{className:"metric-tiles",children:e.map(t=>i.jsxs("li",{className:`metric-tile metric-tile--${t.tone}`,children:[i.jsx("span",{className:"metric-tile-icon","aria-hidden":"true",children:t.icon}),i.jsxs("span",{children:[i.jsx("span",{className:"metric-tile-value",children:t.value}),i.jsx("span",{className:"metric-tile-label",children:t.label})]})]},t.key))})}function Me({icon:e,title:t,description:n,actions:r}){return i.jsxs("header",{className:"page-header",children:[i.jsxs("div",{className:"page-header-text",children:[i.jsxs("h1",{className:"page-header-title",children:[i.jsx("span",{"aria-hidden":"true",children:e})," ",t]}),n?i.jsx("p",{className:"page-header-description",children:n}):null]}),r?i.jsx("div",{className:"page-header-actions",children:r}):null]})}const Uie=6e4;function r0(e=Uie){const[t,n]=S.useState(null);return S.useEffect(()=>{let r=!1;const a=()=>{fetch("/api/model-counts").then(o=>o.ok?o.json():null).then(o=>{!r&&o&&typeof o.trackedModels=="number"&&n(o)}).catch(()=>{})};a();const s=setInterval(a,e);return()=>{r=!0,clearInterval(s)}},[e]),t}const Wie={local:"var(--accent-green)",groq:"var(--accent-blue)",gemini:"var(--accent-purple)",nim:"var(--accent-cyan)",openrouter:"var(--accent-yellow)"};function UN(e){if(!e)return!1;const t=new Date;return t.setHours(0,0,0,0),e>=t.getTime()}function Pg({title:e,children:t,action:n}){return i.jsxs("section",{className:"summary-card",children:[i.jsx("h2",{className:"summary-card-title",children:e}),i.jsx("div",{className:"summary-rows",children:t}),n?i.jsx("div",{className:"summary-card-action",children:n}):null]})}function Kn({value:e,label:t}){return i.jsxs("p",{className:"summary-row",children:[i.jsx("span",{className:"summary-row-value",children:e}),i.jsx("span",{className:"summary-row-label",children:t})]})}function Hie({data:e,onRefresh:t,refreshing:n=!1}){var O,C,P,$,B;const[r,a]=S.useState(null),[s,o]=S.useState(null),l=r0();if(S.useEffect(()=>{let M=!1;return Z.fetchHub().then(F=>{!M&&F&&a(F)}),Z.listTasks().then(F=>{!M&&F&&o(F)}),()=>{M=!0}},[]),!e)return i.jsxs(i.Fragment,{children:[i.jsx(Me,{icon:"📊",title:"System Overview",description:"Cost, memory, benchmarks and routing — read live from the dashboard server."}),i.jsxs("div",{className:"loading-state",children:[i.jsx("div",{className:"loading-spinner"}),i.jsx("p",{children:"Connecting to dashboard..."})]})]});const{cost:c,history:u,benchmarks:d,memory:f,health:h}=e,p=[{icon:"💰",value:Mb(c.totalCost),label:"Total Cost"},{icon:"📞",value:jt(c.totalRequests),label:"API Requests"},{icon:"🧠",value:jt(f.total),label:"Trajectories"},{icon:"📝",value:jt(u.total),label:"Chat Sessions"},{icon:"🏆",value:jt(d.totalRuns),label:"Benchmark Runs"},{icon:"📦",value:jt(h.vectors),label:"Vector Entries"}],g=Object.entries(c.byProvider||{}).map(([M,F])=>({name:M,value:F})).sort((M,F)=>F.value-M.value),m=Object.entries(f.byFingerprint||{}).map(([M,F])=>({name:M.length>15?M.slice(0,13)+"..":M,value:F})).sort((M,F)=>F.value-M.value).slice(0,8),y=zie(e,r),v=(s==null?void 0:s.tasks)??[],k=s!==null&&s.status===401,x=v.filter(M=>M.status==="running").length,j=v.filter(M=>UN(M.finishedAt)&&(M.status==="failed"||M.status==="error")).length,w=v.filter(M=>UN(M.finishedAt)&&M.status==="done").length,b=e.modelRegistry,N=((O=r==null?void 0:r.channels)==null?void 0:O.platforms)??[],E=N.filter(M=>M.configured).length;return i.jsxs(i.Fragment,{children:[i.jsx(Me,{icon:"📊",title:"System Overview",description:"Cost, memory, benchmarks and routing — read live from the dashboard server.",actions:t?i.jsx("button",{type:"button",className:"btn-secondary",onClick:t,disabled:n,"aria-busy":n,children:n?"Refreshing…":"⟳ Refresh data"}):null}),i.jsx(Fie,{tiles:y}),i.jsxs("div",{className:"overview-summary",children:[i.jsxs("div",{className:"summary-cards",children:[i.jsx(Pg,{title:"Task Summary",action:i.jsx(en,{className:"summary-card-link",to:"/tasks",children:"Open console →"}),children:k?i.jsx("p",{className:"summary-note",children:"Sign in to Admin to see task history."}):s===null?i.jsx("p",{className:"summary-note",children:"Loading task history…"}):i.jsxs(i.Fragment,{children:[i.jsx(Kn,{value:jt(x),label:"Running now"}),i.jsx(Kn,{value:jt(w),label:"Completed today"}),j>0&&i.jsx(Kn,{value:jt(j),label:"Failed today"})]})}),b&&i.jsxs(Pg,{title:"Models",action:i.jsx(en,{className:"summary-card-link",to:"/models",children:"Manage →"}),children:[i.jsx(Kn,{value:jt(b.routableNow??b.verified),label:"Routable now"}),i.jsx(Kn,{value:jt(b.verified),label:"Verified (proven)"}),i.jsx(Kn,{value:jt((l==null?void 0:l.trackedModels)??b.total),label:"Tracked models (registry)"}),i.jsx(Kn,{value:jt((l==null?void 0:l.trackedProviders)??((C=b.providers)==null?void 0:C.length)??0),label:"Tracked providers (registry)"}),l&&i.jsxs(i.Fragment,{children:[i.jsx(Kn,{value:jt(l.listedModels),label:"Listed models (live probe)"}),i.jsx(Kn,{value:jt(l.listedProviders),label:"Listed providers (live probe)"})]}),b.parked>0&&i.jsx(Kn,{value:jt(b.parked),label:"Quota-parked"})]}),r&&i.jsxs(Pg,{title:"Gateway Status",action:i.jsx(en,{className:"summary-card-link",to:"/gateway",children:"Gateway ops →"}),children:[i.jsx(Kn,{value:`${E}/${N.length}`,label:"Platforms configured"}),i.jsx(Kn,{value:jt(r.skills.total),label:"Skills loaded"}),i.jsx(Kn,{value:jt(r.toolsets.enabled),label:"Toolsets enabled"})]})]}),i.jsxs("aside",{className:"quick-actions","aria-labelledby":"quick-actions-title",children:[i.jsx("h2",{className:"summary-card-title",id:"quick-actions-title",children:"Quick Actions"}),i.jsxs(en,{className:"quick-action",to:"/tasks",children:[i.jsx("span",{"aria-hidden":"true",children:"🚀"})," Run a CLI command"]}),i.jsxs(en,{className:"quick-action",to:"/hub",children:[i.jsx("span",{"aria-hidden":"true",children:"🧰"})," Skills & channels"]}),i.jsxs(en,{className:"quick-action",to:"/models",children:[i.jsx("span",{"aria-hidden":"true",children:"🧠"})," Model registry"]}),i.jsxs(en,{className:"quick-action",to:"/traces",children:[i.jsx("span",{"aria-hidden":"true",children:"🔍"})," Reasoning traces"]}),i.jsxs(en,{className:"quick-action",to:"/system",children:[i.jsx("span",{"aria-hidden":"true",children:"⚙️"})," Doctor checks"]})]})]}),i.jsx("h2",{className:"section-subtitle",children:"Key metrics"}),i.jsx("div",{className:"stats-grid",children:p.map(M=>i.jsxs("div",{className:"stat-card",children:[i.jsx("div",{className:"stat-icon",children:M.icon}),i.jsxs("div",{className:"stat-body",children:[i.jsx("div",{className:"stat-value",children:M.value}),i.jsx("div",{className:"stat-label",children:M.label})]})]},M.label))}),i.jsxs("div",{className:"memory-health-card",children:[i.jsx("h2",{className:"section-subtitle",children:"🧠 Memory Health"}),i.jsxs("div",{className:"memory-health-stats",children:[i.jsxs("div",{className:"memory-health-stat",children:[i.jsx("span",{className:"memory-health-value",children:jt(f.total)}),i.jsx("span",{className:"memory-health-label",children:"Trajectories"})]}),i.jsxs("div",{className:"memory-health-stat",children:[i.jsx("span",{className:"memory-health-value",children:jt(((P=f.facts)==null?void 0:P.total)||0)}),i.jsx("span",{className:"memory-health-label",children:"Facts Learned"})]}),i.jsxs("div",{className:"memory-health-stat",children:[i.jsx("span",{className:"memory-health-value",children:jt((($=f.recall)==null?void 0:$.last7d)||0)}),i.jsx("span",{className:"memory-health-label",children:"Recalls This Week"})]}),i.jsxs("div",{className:"memory-health-stat",children:[i.jsx("span",{className:"memory-health-value",children:h.patterns||0}),i.jsx("span",{className:"memory-health-label",children:"Coding Patterns"})]})]}),i.jsxs("p",{className:"memory-health-status",children:["Memory tier: ",i.jsx("code",{children:f.backend||"local"})," · ","Vector index: ",i.jsx("code",{children:f.vectorBackend||"unknown"}),(B=f.recall)!=null&&B.last7d?` · ${f.recall.last7d} recall(s) this week`:" · no recalls yet"]})]}),i.jsx("h2",{className:"section-subtitle",children:"💰 Cost by Provider"}),i.jsx("div",{className:"chart-container",children:g.length>0?i.jsx(ns,{width:"100%",height:260,children:i.jsxs(rs,{data:g,margin:{top:20,right:20,left:10,bottom:40},children:[i.jsx(ni,{strokeDasharray:"3 3"}),i.jsx(ra,{dataKey:"name",tick:{fontSize:11}}),i.jsx(aa,{tick:{fontSize:11},tickFormatter:M=>"$"+M.toFixed(4)}),i.jsx(bn,{contentStyle:{background:"var(--bg-card)",border:"1px solid var(--border)",borderRadius:8},labelStyle:{color:"var(--text-primary)"},formatter:M=>[Mb(M),"Cost"]}),i.jsx(yn,{dataKey:"value",radius:[4,4,0,0],children:g.map(M=>i.jsx(uu,{fillOpacity:.8,style:{fill:Wie[M.name]||"var(--accent-blue)"}},M.name))})]})}):i.jsx("div",{className:"empty-state",children:"No cost data yet."})}),i.jsx("h2",{className:"section-subtitle",children:"📊 Trajectories by Project Type"}),i.jsx("div",{className:"chart-container",children:m.length>0?i.jsx(ns,{width:"100%",height:260,children:i.jsxs(rs,{data:m,margin:{top:20,right:20,left:10,bottom:40},children:[i.jsx(ni,{strokeDasharray:"3 3"}),i.jsx(ra,{dataKey:"name",tick:{fontSize:11}}),i.jsx(aa,{tick:{fontSize:11}}),i.jsx(bn,{contentStyle:{background:"var(--bg-card)",border:"1px solid var(--border)",borderRadius:8},labelStyle:{color:"var(--text-primary)"}}),i.jsx(yn,{dataKey:"value",radius:[4,4,0,0],fillOpacity:.8,fill:"var(--accent-purple)",style:{fill:"var(--accent-purple)"}})]})}):i.jsx("div",{className:"empty-state",children:"No trajectory data yet."})})]})}function Gie(){return i.jsxs("div",{className:"panel",children:[i.jsx(Me,{icon:"❓",title:"Help",description:"What this dashboard is, how to get work done in it, and every keyboard shortcut."}),i.jsxs("section",{className:"help-section",children:[i.jsx("h2",{className:"section-title",children:"Start here"}),i.jsxs("ol",{className:"help-steps",children:[i.jsxs("li",{children:[i.jsx("strong",{children:"Talk to the agent in Chat."})," It is the front door — the other pages are views of what has already happened. ",i.jsx(en,{to:"/chat",children:"Open Chat"}),"."]}),i.jsxs("li",{children:[i.jsx("strong",{children:"Run a command from Tasks."})," The Command Console executes the same CLI you would type in a terminal, and it can group-browse every command for you."," ",i.jsx(en,{to:"/tasks",children:"Open Command Console"}),"."]}),i.jsxs("li",{children:[i.jsx("strong",{children:"Sign in for anything that changes something."})," Running a task, editing environment secrets and the Agent Hub toggles all need an admin session. Controls that need one are disabled and say so."," ",i.jsx(en,{to:"/admin",children:"Go to Admin"}),"."]})]})]}),i.jsxs("section",{className:"help-section",children:[i.jsx("h2",{className:"section-title",children:"How the dashboard is laid out"}),i.jsxs("dl",{className:"help-anatomy",children:[i.jsx("dt",{children:"Top bar"}),i.jsxs("dd",{children:["The cross-cutting views on the left; on the right, ",i.jsx("strong",{children:"Refresh"})," (re-fetches everything the page shows), ",i.jsx("strong",{children:"Shortcuts"})," (the cheatsheet), and ",i.jsx("strong",{children:"Appearance"})," (theme and accessibility)."]}),i.jsx("dt",{children:"Navigation rail"}),i.jsx("dd",{children:"Every remaining destination, grouped by what it is for. The filter box narrows it as you type. Below the width where it becomes a drawer, it opens from the ☰ button."}),i.jsx("dt",{children:"Page body"}),i.jsx("dd",{children:"One page per destination. Each starts with its own title and, where it has one, a short description of what you are looking at."}),i.jsx("dt",{children:"Status footer"}),i.jsx("dd",{children:"Whether the dashboard is connected to the local server, and when it last received data. “Reconnecting” means the live stream dropped and is being retried — the pages keep the last data they had."})]})]}),i.jsxs("section",{className:"help-section",children:[i.jsx("h2",{className:"section-title",children:"Keyboard shortcuts"}),i.jsx("div",{className:"help-shortcuts",children:ET.map(e=>i.jsxs("div",{className:"shortcuts-group",children:[i.jsx("h3",{className:"shortcuts-group-title",children:e.group}),i.jsx("dl",{className:"shortcuts-list",children:e.items.map(t=>i.jsxs("div",{className:"shortcuts-row",children:[i.jsx("dt",{className:"shortcuts-keys",children:t.keys.map(n=>i.jsx("kbd",{className:"shortcuts-key",children:n},n))}),i.jsx("dd",{className:"shortcuts-description",children:t.description})]},t.description))})]},e.group))}),i.jsxs("p",{className:"help-note",children:["Shortcuts are ignored while you are typing, so ",i.jsx("kbd",{className:"shortcuts-key",children:"?"})," in a question stays a question mark. The ",i.jsx("kbd",{className:"shortcuts-key",children:"g"})," chords expire about a second and a half after the prefix, so a stray ",i.jsx("kbd",{className:"shortcuts-key",children:"g"})," cannot navigate somewhere later."]})]}),i.jsxs("section",{className:"help-section",children:[i.jsx("h2",{className:"section-title",children:"Appearance & accessibility"}),i.jsxs("p",{className:"help-body",children:[i.jsx("strong",{children:"Appearance"})," in the top bar offers ",au.length," palettes in light and dark, plus a text size and an accessibility mode. Your choice is remembered in this browser only — nothing is sent anywhere."]}),i.jsxs("dl",{className:"help-anatomy",children:[i.jsx("dt",{children:"Palette"}),i.jsxs("dd",{children:[au.map(e=>Zf[e]).join(" · "),". The"," ",Zf.contrast," palette is the one to pick when you need maximum legibility."]}),i.jsx("dt",{children:"Mode"}),i.jsxs("dd",{children:[_p.map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" or "),". “Reset to system default” goes back to what your operating system asks for."]}),i.jsx("dt",{children:"Text size"}),i.jsx("dd",{children:"Scales the whole interface, not just the body text. Choosing a larger size turns accessibility mode on, because that is what defines it."}),i.jsx("dt",{children:"Accessibility mode"}),i.jsx("dd",{children:"Larger click targets, a thicker focus ring and no motion. Off by default so it never changes the look for anyone who does not need it."})]}),i.jsx("p",{className:"help-note",children:"Focus is always visible: every control draws a ring when reached by keyboard. Opportunistic hover-only effects are never the only cue for a state, and a selected state is carried by a filled shape plus weight rather than a faint tint."})]}),i.jsxs("section",{className:"help-section",children:[i.jsx("h2",{className:"section-title",children:"Where everything lives"}),i.jsxs("dl",{className:"help-anatomy",children:[i.jsx("dt",{children:"Top bar"}),i.jsx("dd",{className:"help-links",children:_T.map(e=>i.jsxs(en,{to:e.path,children:[i.jsx("span",{"aria-hidden":"true",children:e.icon})," ",e.label]},e.path))})]}),dy.map(e=>i.jsxs("dl",{className:"help-anatomy help-group",children:[i.jsx("dt",{children:e.label}),i.jsx("dd",{className:"help-links",children:e.items.map(t=>i.jsxs(en,{to:t.path,children:[i.jsx("span",{"aria-hidden":"true",children:t.icon})," ",t.label]},t.path))})]},e.label))]}),i.jsxs("section",{className:"help-section",children:[i.jsx("h2",{className:"section-title",children:"If something looks wrong"}),i.jsxs("dl",{className:"help-anatomy",children:[i.jsx("dt",{children:"A control is disabled"}),i.jsxs("dd",{children:["It needs an admin session. Sign in from ",i.jsx(en,{to:"/admin",children:"Admin"}),"; the page will say which session it wants."]}),i.jsx("dt",{children:"A task failed"}),i.jsx("dd",{children:"Open it from the Command Console's History — the full output and the exit code are kept per run."}),i.jsx("dt",{children:"The footer says “Reconnecting”"}),i.jsx("dd",{children:"The live stream dropped. The dashboard retries on its own and keeps showing the last data it received; Refresh forces a fresh fetch."}),i.jsx("dt",{children:"A page is empty"}),i.jsxs("dd",{children:["Most pages report “no data yet” rather than a zero, because a zero and an absent source look identical. Check ",i.jsx(en,{to:"/system",children:"System"})," for the health checks behind it."]})]})]})]})}const WN={planner:"📋","context-gatherer":"📂",writer:"✏️",reviewer:"👁️",tester:"🧪",debugger:"🐛",runner:"▶️",git:"🔀",package:"📦","github-release":"🏷️",security:"🔒",orchestrator:"🎯"},HN={planner:"var(--accent-blue)","context-gatherer":"var(--accent-cyan)",writer:"var(--accent-yellow)",reviewer:"var(--accent-purple)",tester:"var(--accent-green)",debugger:"var(--accent-red)",runner:"var(--accent-blue)",git:"var(--accent-yellow)",package:"var(--accent-yellow)","github-release":"var(--accent-green)",security:"var(--accent-red)",orchestrator:"var(--accent-yellow)"},Rg={planner:"Planner","context-gatherer":"Context",writer:"Writer",reviewer:"Reviewer",tester:"Tester",debugger:"Debugger",runner:"Runner",git:"Git",package:"Package","github-release":"Release",security:"Security",orchestrator:"Orchestrator"},GN={pending:{icon:"⏳",label:"Pending"},running:{icon:"▶️",label:"Running"},completed:{icon:"✅",label:"Done"},failed:{icon:"❌",label:"Failed"}},qie={pending:"var(--text-muted)",running:"var(--accent-blue)",completed:"var(--accent-green)",failed:"var(--accent-red)"};function Kie(e){if(!e||e.nodes.length===0)return null;const t=e.nodes.map(s=>s.startedAt||0).filter(Boolean),n=e.nodes.map(s=>s.completedAt||0).filter(Boolean),r=t.length>0?Math.min(...t):Date.now(),a=n.length>0?Math.max(...n):Date.now();return{id:`live-${r}`,goal:e.pipeline||"Active execution",startedAt:r,endedAt:n.length>0?a:void 0,success:e.nodes.length>0&&e.nodes.every(s=>s.status==="completed"),totalDurationMs:Math.max(0,a-r),phases:e.nodes.map(s=>({id:s.id,agentType:s.agentType,status:s.status,description:s.description,complexity:s.complexity,summary:s.summary,startedAt:s.startedAt,completedAt:s.completedAt,durationMs:s.startedAt&&s.completedAt?s.completedAt-s.startedAt:void 0}))}}function Vie(e,t){const n=[],r=new Set,a=Kie(e);a&&(n.push(a),r.add(a.id));for(const s of(t==null?void 0:t.runs)||[])r.has(s.id)||(n.push(s),r.add(s.id));return n}function Ka(e){return e<1e3?`${Math.round(e)}ms`:e<6e4?`${(e/1e3).toFixed(1)}s`:`${Math.floor(e/6e4)}m ${Math.floor(e%6e4/1e3)}s`}function qN(e){return e?new Date(e).toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit",second:"2-digit"}):""}function Yie(e,t){if(e.length===0)return{laid:[],total:0};const n=e.length,r=e.map(d=>d.durationMs&&d.durationMs>0?d.durationMs:0),a=r.reduce((d,f)=>d+f,0),s=a>0?e.map((d,f)=>r[f]>0?r[f]:a/n):e.map(()=>1),o=s.reduce((d,f)=>d+f,0)||1;let l=0;const c=e.map((d,f)=>{const h=s[f]/o,p=l;return l+=h,{...d,start:p,width:h,dur:s[f]}}),u=t>0?t:o;return{laid:c,total:u}}function Xie({runs:e,selectedRunId:t,onSelectRun:n,onScrub:r}){const[a,s]=S.useState(null),o=e.find(N=>N.id===(t??a))??e[0]??null,[l,c]=S.useState(0),[u,d]=S.useState(!1),f=S.useRef(null),h=S.useRef(!1),p=S.useRef(r);S.useEffect(()=>{p.current=r},[r]),S.useEffect(()=>{var N;!o&&e.length>0?s(e[0].id):o&&!e.some(E=>E.id===o.id)&&s(((N=e[0])==null?void 0:N.id)??null)},[e,o]);const{laid:g,total:m}=S.useMemo(()=>Yie((o==null?void 0:o.phases)||[],(o==null?void 0:o.totalDurationMs)||0),[o]),y=m>0?Math.min(1,Math.max(0,l/m)):0,v=S.useMemo(()=>{if(m<=0)return null;const N=y*m;return g.find(E=>N>=E.start*m&&N<(E.start+E.width)*m)||null},[g,y,m]);S.useEffect(()=>{var N;(N=p.current)==null||N.call(p,(v==null?void 0:v.id)??null)},[v==null?void 0:v.id]),S.useEffect(()=>{if(!u)return;const N=setInterval(()=>{c(E=>E+m/2e3*50)},50);return()=>clearInterval(N)},[u,m]),S.useEffect(()=>{u&&m>0&&l>=m&&(d(!1),c(0))},[u,m,l]);const k=S.useCallback(N=>{const E=f.current;if(!E||m<=0)return;const O=E.getBoundingClientRect(),C=O.width||1,P=Math.min(1,Math.max(0,(N-O.left)/C));c(P*m)},[m]),x=N=>{h.current=!0,d(!1),k(N.clientX)};if(S.useEffect(()=>{const N=O=>{h.current&&k(O.clientX)},E=()=>{h.current=!1};return window.addEventListener("pointermove",N),window.addEventListener("pointerup",E),()=>{window.removeEventListener("pointermove",N),window.removeEventListener("pointerup",E)}},[k]),!o)return i.jsx("div",{className:"phase-timeline phase-timeline-empty",children:i.jsx("p",{children:"No pipeline runs yet. Run an agent task to see its phase timeline here."})});const j=o.id.startsWith("live-"),w=o.phases.filter(N=>N.status==="completed").length,b=o.phases.filter(N=>N.status==="failed").length;return i.jsxs("div",{className:"phase-timeline",children:[i.jsxs("div",{className:"phase-timeline-header",children:[i.jsx("div",{className:"phase-timeline-runs",children:e.map(N=>i.jsxs("button",{className:`phase-run-chip ${N.id===o.id?"active":""} ${N.id.startsWith("live-")?"live":""}`,onClick:()=>{s(N.id),c(0),d(!1),n==null||n(N.id)},title:N.goal,children:[N.id.startsWith("live-")&&i.jsx("span",{className:"dag-live-dot"}),N.engine&&i.jsx("span",{className:`phase-run-chip-engine phase-run-chip-engine-${N.engine}`,children:N.engine==="loop"?"🔁":"⬡"}),N.goal.length>32?N.goal.slice(0,30)+"…":N.goal,i.jsx("span",{className:"phase-run-chip-time",children:qN(N.startedAt)})]},N.id))}),i.jsxs("div",{className:"phase-timeline-meta",children:[j&&i.jsx("span",{className:"dag-live-badge",children:"LIVE"}),o.engine&&i.jsx("span",{className:`dag-engine-badge dag-engine-${o.engine}`,title:o.engine==="loop"?"Loop turn (per-tool telemetry below)":"Orchestrator pipeline",children:o.engine==="loop"?"🔁 loop":"⬡ pipeline"}),i.jsxs("span",{className:"phase-meta-item",children:[o.phases.length," steps"]}),i.jsxs("span",{className:"phase-meta-item phase-meta-ok",children:["✅ ",w]}),b>0&&i.jsxs("span",{className:"phase-meta-item phase-meta-bad",children:["❌ ",b]}),o.turnTelemetry&&i.jsxs("span",{className:"phase-meta-item",title:`tool calls: ${o.turnTelemetry.toolCallCount}, errored: ${o.turnTelemetry.erroredToolCount}${o.turnTelemetry.bounded?", bounded":""}${o.turnTelemetry.provider?`, ${o.turnTelemetry.provider}${o.turnTelemetry.model?`/${o.turnTelemetry.model}`:""}`:""}`,children:["🔧 ",o.turnTelemetry.toolCallCount,o.turnTelemetry.erroredToolCount>0&&i.jsxs("span",{className:"phase-meta-bad",children:[" (",o.turnTelemetry.erroredToolCount," err)"]})]}),i.jsxs("span",{className:"phase-meta-item",children:["⏱ ",Ka(m)]})]})]}),i.jsxs("div",{className:"phase-timeline-controls",children:[i.jsx("button",{className:`phase-play-btn ${u?"paused":""}`,onClick:()=>{u?d(!1):(l>=m&&c(0),d(!0))},"aria-label":u?"Pause scrub":"Play scrub",children:u?"⏸ Pause":"▶ Play"}),i.jsxs("span",{className:"phase-time-label",children:[Ka(l)," / ",Ka(m)]}),i.jsx("input",{className:"phase-range",type:"range",min:0,max:m||1,step:1,value:Math.min(l,m||1),onChange:N=>{d(!1),c(Number(N.target.value))},"aria-label":"Scrub pipeline timeline"})]}),i.jsxs("div",{className:"phase-track-wrap",children:[i.jsxs("div",{ref:f,className:"phase-track",onPointerDown:x,style:{cursor:"grab"},children:[g.map(N=>{const E=HN[N.agentType]||"var(--accent-blue)",O=qie[N.status],C=(v==null?void 0:v.id)===N.id;return i.jsxs("button",{className:`phase-block phase-block-${N.status} ${C?"active":""}`,style:{left:`${N.start*100}%`,width:`${Math.max(N.width*100,2)}%`,background:`linear-gradient(180deg, ${E}cc, ${E}66)`,boxShadow:C?`0 0 0 2px ${O}`:void 0},onClick:P=>{P.stopPropagation(),d(!1),c((N.start+N.width/2)*m)},title:`${Rg[N.agentType]||N.agentType}: ${N.description}`,children:[i.jsx("span",{className:"phase-block-icon",children:WN[N.agentType]||"⚙️"}),i.jsx("span",{className:"phase-block-label",children:Rg[N.agentType]||N.agentType})]},N.id)}),i.jsx("div",{className:"phase-caret",style:{left:`${y*100}%`},onPointerDown:N=>{N.stopPropagation(),x(N)},title:`${Ka(l)} elapsed`})]}),i.jsxs("div",{className:"phase-ticks",children:[i.jsx("span",{children:"0"}),i.jsx("span",{children:Ka(Math.round(m/2))}),i.jsx("span",{children:Ka(m)})]})]}),i.jsx("div",{className:"phase-detail",children:v?i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"phase-detail-title",children:[i.jsx("span",{className:"phase-detail-icon",children:WN[v.agentType]||"⚙️"}),i.jsx("span",{className:"phase-detail-agent",style:{color:HN[v.agentType]||"var(--accent-blue)"},children:Rg[v.agentType]||v.agentType}),i.jsxs("span",{className:`phase-status-badge phase-status-${v.status}`,children:[GN[v.status].icon," ",GN[v.status].label]})]}),i.jsx("p",{className:"phase-detail-desc",children:v.description}),i.jsxs("div",{className:"phase-detail-meta",children:[i.jsxs("span",{children:["⏱ ",v.durationMs?Ka(v.dur):`~${Ka(v.dur)}`]}),v.startedAt?i.jsxs("span",{children:["🕐 ",qN(v.startedAt)]}):null,v.complexity?i.jsxs("span",{children:["🎯 ",v.complexity]}):null]}),v.summary&&i.jsx("p",{className:"phase-detail-summary",children:v.summary})]}):i.jsxs("div",{className:"phase-detail-gap",children:[i.jsx("span",{className:"phase-detail-icon",children:"⏳"}),i.jsx("span",{children:"Between steps — waiting for the next agent."})]})})]})}function Mg(e){return e===void 0?"—":`$${e.toFixed(5)}`}function KN(e){if(e===void 0||!Number.isFinite(e)||e<0)return"—";if(e<1e3)return`${Math.round(e)}ms`;const t=e/1e3;if(t<60)return`${t.toFixed(1)}s`;const n=Math.floor(t/60);return n<60?`${n}m ${String(Math.round(t%60)).padStart(2,"0")}s`:`${Math.floor(n/60)}h ${String(n%60).padStart(2,"0")}m`}function Ig(e){return e===void 0?"—":e.toLocaleString("en-US")}function Qie({jobs:e}){const t=S.useMemo(()=>e.filter(u=>u.batchStats.length>0),[e]),[n,r]=S.useState(null);if(t.length===0)return null;const a=t.find(u=>u.id===n)??t[0],s=a.batchStats,o=s.filter(u=>u.durationMs!==void 0),l=o.reduce((u,d)=>u+(d.durationMs??0),0),c=o.length>0?l/o.length:void 0;return i.jsxs("div",{className:"dag-timeline-section","data-testid":"batch-economy",children:[i.jsxs("h2",{className:"section-subtitle",children:["📊 Per-batch cost & latency"," ",i.jsx("span",{className:"timeline-subtitle",children:"— measured, not estimated"})]}),t.length>1&&i.jsx("div",{className:"dag-loop-turn-meta",style:{marginBottom:8},children:t.slice(0,5).map(u=>i.jsx("button",{type:"button",className:"dag-loop-turn-chip",onClick:()=>r(u.id),style:{cursor:"pointer",opacity:u.id===a.id?1:.55,fontWeight:u.id===a.id?600:400},children:u.progressLine??u.goal.slice(0,40)},u.id))}),i.jsxs("div",{className:"dag-loop-turn-meta",style:{marginBottom:8},children:[i.jsxs("span",{className:"dag-loop-turn-chip",children:[a.kind==="long-form"?"📖":"🛠️"," ",a.status]}),i.jsxs("span",{className:"dag-loop-turn-chip",children:[a.progress,"% done"]}),i.jsxs("span",{className:"dag-loop-turn-chip",children:[a.batches," batch",a.batches===1?"":"es"]}),i.jsxs("span",{className:"dag-loop-turn-chip dag-loop-turn-chip-dim",children:[Ig(a.tokens)," tokens · ",Mg(a.costUsd)]}),a.stopReason&&i.jsxs("span",{className:"dag-loop-turn-chip dag-loop-turn-chip-dim",children:["stopped: ",a.stopReason]})]}),i.jsx("div",{className:"dag-table-wrapper",children:i.jsxs("table",{className:"dag-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Batch"}),i.jsx("th",{children:"Done"}),i.jsx("th",{children:"Tokens"}),i.jsx("th",{children:"Cost"}),i.jsx("th",{children:"Time"})]})}),i.jsxs("tbody",{children:[s.map(u=>i.jsxs("tr",{children:[i.jsx("td",{children:u.index}),i.jsx("td",{children:`${Math.round(u.progress)}%`}),i.jsx("td",{children:Ig(u.tokens)}),i.jsx("td",{children:Mg(u.costUsd)}),i.jsx("td",{children:KN(u.durationMs)})]},u.index)),s.some(u=>u.error)&&i.jsx("tr",{children:i.jsxs("td",{colSpan:5,style:{opacity:.75},children:["✗ failures:"," ",s.filter(u=>u.error).map(u=>`#${u.index} ${u.error}`).join(" · ")]})}),i.jsxs("tr",{children:[i.jsx("td",{children:i.jsx("strong",{children:"total"})}),i.jsx("td",{children:i.jsx("strong",{children:`${a.progress}%`})}),i.jsx("td",{children:i.jsx("strong",{children:Ig(a.tokens)})}),i.jsx("td",{children:i.jsx("strong",{children:Mg(a.costUsd)})}),i.jsx("td",{children:i.jsx("strong",{children:c===void 0?"—":`~${KN(c)} avg`})})]})]})]})})]})}const VN={planner:"📋","context-gatherer":"📂",writer:"✏️",reviewer:"👁️",tester:"🧪",debugger:"🐛",runner:"▶️",git:"🔀",package:"📦","github-release":"🏷️",security:"🔒",orchestrator:"🎯"},$g={planner:"var(--accent-blue)","context-gatherer":"var(--accent-cyan)",writer:"var(--accent-yellow)",reviewer:"var(--accent-purple)",tester:"var(--accent-green)",debugger:"var(--accent-red)",runner:"var(--accent-blue)",git:"var(--accent-yellow)",package:"var(--accent-yellow)","github-release":"var(--accent-green)",security:"var(--accent-red)",orchestrator:"var(--accent-yellow)"},Zie={pending:{bg:"var(--bg-card)",stroke:"var(--border)",text:"var(--text-muted)"},running:{bg:"color-mix(in srgb, var(--accent-blue) 12%, transparent)",stroke:"var(--accent-blue)",text:"var(--accent-blue)"},completed:{bg:"color-mix(in srgb, var(--accent-green) 12%, transparent)",stroke:"var(--accent-green)",text:"var(--accent-green)"},failed:{bg:"color-mix(in srgb, var(--accent-red) 12%, transparent)",stroke:"var(--accent-red)",text:"var(--accent-red)"}},YN={pending:"⏳ Pending",running:"▶️ Running",completed:"✅ Done",failed:"❌ Failed"},ro={trivial:{icon:"🟢",color:"var(--accent-green)"},simple:{icon:"🔵",color:"var(--accent-blue)"},moderate:{icon:"🟡",color:"var(--accent-yellow)"},complex:{icon:"🟠",color:"var(--accent-yellow)"},critical:{icon:"🔴",color:"var(--accent-red)"}},Lg={planner:"Planner","context-gatherer":"Context",writer:"Writer",reviewer:"Reviewer",tester:"Tester",debugger:"Debugger",runner:"Runner",git:"Git",package:"Package","github-release":"Release",security:"Security",orchestrator:"Orchestrator"};function Jie(e,t,n=160,r=68,a=40,s=24,o=40){if(e.length===0)return{layoutNodes:[],svgW:400,svgH:200};const l=new Map,c=new Set;function u(y){if(l.has(y))return l.get(y);if(c.has(y))return 0;c.add(y);const v=t.filter(j=>j.to===y);if(v.length===0)return l.set(y,0),0;const x=Math.max(...v.map(j=>u(j.from)))+1;return l.set(y,x),x}for(const y of e)u(y.id);const d=new Map;for(const y of e){const v=l.get(y.id)??0;d.has(v)||d.set(v,[]),d.get(v).push(y)}const f=Math.max(...d.keys()),h=Math.max(...Array.from(d.values()).map(y=>y.length)),p=(f+1)*(n+a)+o*2-a,g=Math.max(h,1)*(r+s)+o*2-s,m=[];for(const y of e){const v=l.get(y.id)??0,k=d.get(v),x=k.indexOf(y),j=k.length,w=j*(r+s)-s,b=g/2-w/2;m.push({...y,x:o+v*(n+a),y:b+x*(r+s),w:n,h:r,step:v,totalInStep:j,indexInStep:x})}return{layoutNodes:m,svgW:p,svgH:g}}function Dg(e,t){if(!e)return"--";const n=(t||Date.now())-e;return n<1e3?`${n}ms`:n<6e4?`${(n/1e3).toFixed(1)}s`:`${Math.floor(n/6e4)}m ${Math.floor(n%6e4/1e3)}s`}function XN(e){return e?new Date(e).toLocaleTimeString("en-US",{minute:"2-digit",second:"2-digit"}):""}function ese({memoryTotal:e}){return i.jsxs(i.Fragment,{children:[i.jsx(Me,{icon:"🔀",title:"Agent Execution DAG"}),i.jsx("p",{className:"section-description",children:"Live visualization of the agent execution pipeline. When an agent task runs, you'll see each step appear here in real time as it moves through planning → context gathering → writing → review → testing."}),i.jsxs("div",{className:"dag-empty",children:[i.jsx("div",{className:"dag-empty-icon",children:"🔀"}),i.jsx("h2",{children:"No Active Pipeline"}),i.jsx("p",{children:"Run an agent task to see the execution pipeline appear here in real time."}),e!==void 0&&e>0&&i.jsxs("p",{className:"dag-empty-hint",children:[i.jsx("code",{children:e})," past executions are stored in memory."]})]})]})}function tse({data:e}){var T,K;const t=e==null?void 0:e.dag,n=(T=e==null?void 0:e.memory)==null?void 0:T.total,[r,a]=S.useState(null),[s,o]=S.useState(null),[l,c]=S.useState(void 0),[u,d]=S.useState(void 0),[f,h]=S.useState(void 0);S.useEffect(()=>Z.onDAGEvent(I=>{a(I),c(I.engine),d(I.engineExplanation),h(I.loopTurn)}),[]);const p=t||r,g=r?l:(t==null?void 0:t.engine)??l,m=r?u:(t==null?void 0:t.engineExplanation)??u,y=r?f:(t==null?void 0:t.loopTurn)??f,v=S.useMemo(()=>Vie(p,e==null?void 0:e.pipelineRuns),[p,e==null?void 0:e.pipelineRuns]),k=D=>{o(D)},x=!!(p&&(p.nodes.length>0||p.active)),j=v.length>0,w=!!y,b=((K=e==null?void 0:e.unattendedJobs)==null?void 0:K.jobs)??[],N=b.some(D=>D.batchStats.length>0);if(!x&&!j&&!w&&!N)return i.jsx(ese,{memoryTotal:n});const{nodes:E,edges:O,pipeline:C,active:P}=p??{nodes:[],edges:[],pipeline:null,active:!1},{layoutNodes:$,svgW:B,svgH:M}=Jie(E,O),F=E.filter(D=>D.status==="running").length,L=E.filter(D=>D.status==="completed").length,W=E.filter(D=>D.status==="failed").length,A=E.filter(D=>D.status==="pending").length,z=E.length;return i.jsxs(i.Fragment,{children:[i.jsx(Me,{icon:"🔀",title:"Agent Execution DAG"}),j&&i.jsxs("div",{className:"dag-timeline-section",children:[i.jsxs("h2",{className:"section-subtitle",children:["⏱ Run Timeline ",i.jsx("span",{className:"timeline-subtitle",children:"— scrub to replay · click a run to switch"})]}),i.jsx(Xie,{runs:v,onScrub:k})]}),i.jsx(Qie,{jobs:b}),y&&i.jsxs("div",{className:"dag-loop-turn-card","data-testid":"dag-loop-turn-card",children:[i.jsxs("div",{className:"dag-loop-turn-header",children:[i.jsx("span",{className:"dag-loop-turn-icon",children:"🔁"}),i.jsxs("span",{className:"dag-loop-turn-title",children:["Loop turn — ",y.title||"chat turn"]}),y.active&&i.jsx("span",{className:"dag-loop-turn-live",children:"● recording"})]}),i.jsxs("div",{className:"dag-loop-turn-meta",children:[i.jsxs("span",{className:"dag-loop-turn-chip",children:["🔧 ",y.toolCallCount," tool call",y.toolCallCount===1?"":"s"]}),y.erroredToolCount>0&&i.jsxs("span",{className:"dag-loop-turn-chip dag-loop-turn-chip-error",children:["❌ ",y.erroredToolCount," errored"]}),y.provider&&i.jsxs("span",{className:"dag-loop-turn-chip dag-loop-turn-chip-dim",children:[y.provider,y.model?` · ${y.model}`:""]}),typeof y.startedAt=="number"&&i.jsxs("span",{className:"dag-loop-turn-chip dag-loop-turn-chip-dim",children:["⏱ ",Dg(y.startedAt,y.endedAt)]}),y.bounded&&i.jsx("span",{className:"dag-loop-turn-chip dag-loop-turn-chip-error",children:"⛔ bounded"}),y.generationFailed&&i.jsx("span",{className:"dag-loop-turn-chip dag-loop-turn-chip-error",children:"💀 generation failed"}),y.cancelled&&i.jsx("span",{className:"dag-loop-turn-chip dag-loop-turn-chip-dim",children:"✖ cancelled"})]}),y.toolCalls.length>0&&i.jsx("div",{className:"dag-loop-turn-tools",children:y.toolCalls.slice(-12).map((D,I)=>i.jsxs("span",{className:`dag-loop-tool ${D.ok===!1?"dag-loop-tool-error":""}`,title:D.error||`${D.tool}${D.durationMs!==void 0?` · ${D.durationMs}ms`:""}`,children:[D.ok===!1?"❌":"✓"," ",D.tool]},`${D.tool}-${I}`))})]}),x&&i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:`dag-status-bar ${P?"active":""}`,children:[i.jsxs("div",{className:"dag-pipeline-name",children:[P&&i.jsx("span",{className:"dag-live-dot"}),C||"Execution Pipeline"]}),i.jsxs("div",{className:"dag-pipeline-meta",children:[P&&i.jsx("span",{className:"dag-live-badge",children:"LIVE"}),g&&i.jsx("span",{className:`dag-engine-badge dag-engine-${g}`,title:m||(g==="loop"?"Single agentic loop":"Orchestrator pipeline"),"data-testid":"dag-engine-badge",children:g==="loop"?"🔁 loop engine":"⬡ pipeline engine"}),i.jsxs("span",{className:"dag-step-count",children:[z," steps"]}),F>0&&i.jsxs("span",{className:"dag-running-badge",children:["▶ ",F," running"]}),A>0&&i.jsxs("span",{className:"dag-pending-badge",children:["⏳ ",A," pending"]}),i.jsxs("span",{className:"dag-completed-badge",children:["✅ ",L," done"]}),W>0&&i.jsxs("span",{className:"dag-failed-badge",children:["❌ ",W," failed"]})]})]}),i.jsx("div",{className:"dag-container",children:i.jsxs("svg",{width:B,height:M,viewBox:`0 0 ${B} ${M}`,children:[i.jsxs("defs",{children:[O.map(D=>i.jsx("marker",{id:`arrow-${D.from}-${D.to}`,markerWidth:"8",markerHeight:"6",refX:"8",refY:"3",orient:"auto",children:i.jsx("polygon",{points:"0 0, 8 3, 0 6",style:{fill:"var(--accent-blue)"}})},`arrow-${D.from}-${D.to}`)),i.jsxs("filter",{id:"glow",children:[i.jsx("feGaussianBlur",{stdDeviation:"3",result:"coloredBlur"}),i.jsxs("feMerge",{children:[i.jsx("feMergeNode",{in:"coloredBlur"}),i.jsx("feMergeNode",{in:"SourceGraphic"})]})]})]}),O.map(D=>{const I=$.find(J=>J.id===D.from),ce=$.find(J=>J.id===D.to);if(!I||!ce)return null;const ge=I.x+I.w,ve=I.y+I.h/2,Ce=ce.x,Q=ce.y+ce.h/2,X=(ge+Ce)/2,ie=ce.status,fe=ie==="failed"?"var(--accent-red)":ie==="running"?"var(--accent-blue)":ie==="completed"?"var(--accent-green)":"var(--border)";return i.jsx("g",{children:i.jsx("path",{d:`M ${ge} ${ve} C ${X} ${ve}, ${X} ${Q}, ${Ce} ${Q}`,fill:"none",style:{stroke:fe},strokeWidth:ie==="pending"?1.5:2.5,strokeOpacity:ie==="pending"?.3:.8,markerEnd:`url(#arrow-${D.from}-${D.to})`,className:"dag-edge"})},`edge-${D.from}-${D.to}`)}),$.map(D=>{const I=Zie[D.status];$g[D.agentType];const ce=VN[D.agentType]||"⚙️",ge=Lg[D.agentType]||D.agentType,ve=s===D.id,Ce=D.status==="running";return i.jsxs("g",{onClick:()=>o(ve?null:D.id),style:{cursor:"pointer"},className:"dag-node-group",children:[ve&&i.jsx("rect",{x:D.x-4,y:D.y-4,width:D.w+8,height:D.h+8,rx:10,ry:10,fill:"none",style:{stroke:"var(--accent-blue)"},strokeWidth:2,strokeOpacity:.5}),i.jsx("rect",{x:D.x,y:D.y,width:D.w,height:D.h,rx:8,ry:8,style:{fill:I.bg,stroke:I.stroke},strokeWidth:Ce?2.5:1.5,strokeOpacity:.9,className:Ce?"dag-node-running":"",filter:Ce?"url(#glow)":void 0}),i.jsxs("text",{x:D.x+10,y:D.y+22,style:{fill:"var(--text-primary)"},fontSize:10,fontWeight:600,children:[ce," ",ge]}),i.jsx("text",{x:D.x+D.w-10,y:D.y+22,textAnchor:"end",style:{fill:I.text},fontSize:9,fontWeight:500,children:YN[D.status]}),i.jsx("text",{x:D.x+10,y:D.y+40,style:{fill:"var(--text-secondary)"},fontSize:9,children:D.description.length>28?D.description.slice(0,26)+"..":D.description}),D.complexity&&ro[D.complexity]&&i.jsxs("text",{x:D.x+10,y:D.y+54,style:{fill:ro[D.complexity].color},fontSize:8,fontWeight:600,children:[ro[D.complexity].icon," ",D.complexity]}),i.jsx("text",{x:D.x+10,y:D.y+56,style:{fill:"var(--text-muted)"},fontSize:8,children:Dg(D.startedAt,D.completedAt)}),i.jsx("text",{x:D.x+D.w-10,y:D.y+56,textAnchor:"end",style:{fill:"var(--text-muted)"},fontSize:8,children:XN(D.startedAt||D.completedAt)}),(D.status==="failed"||ve)&&D.summary&&i.jsx("foreignObject",{x:Math.max(10,D.x-80),y:D.y+D.h+6,width:D.w+160,height:36,children:i.jsx("div",{className:"dag-node-summary",style:{color:D.status==="failed"?"var(--accent-red)":"var(--text-secondary)",fontSize:"10px",lineHeight:1.4,background:"var(--scrim)",padding:"4px 8px",borderRadius:"4px",border:`1px solid ${D.status==="failed"?"color-mix(in srgb, var(--accent-red) 30%, transparent)":"color-mix(in srgb, var(--border) 50%, transparent)"}`,maxHeight:"32px",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:D.summary})})]},`node-${D.id}`)})]})}),i.jsx("h2",{className:"section-subtitle",children:"Step Details"}),i.jsx("div",{className:"dag-table-wrapper",children:i.jsxs("table",{className:"dag-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Step"}),i.jsx("th",{children:"Agent"}),i.jsx("th",{children:"Complexity"}),i.jsx("th",{children:"Status"}),i.jsx("th",{children:"Duration"}),i.jsx("th",{children:"Time"}),i.jsx("th",{children:"Summary"})]})}),i.jsx("tbody",{children:$.map(D=>i.jsxs("tr",{className:`dag-row dag-row-${D.status}`,children:[i.jsx("td",{className:"dag-cell-step",children:D.step}),i.jsxs("td",{className:"dag-cell-agent",children:[i.jsx("span",{className:"dag-agent-dot",style:{background:$g[D.agentType]||"var(--accent-blue)"}}),Lg[D.agentType]||D.agentType]}),i.jsx("td",{className:"dag-cell-complexity",children:D.complexity&&ro[D.complexity]?i.jsxs("span",{style:{color:ro[D.complexity].color,fontSize:12},children:[ro[D.complexity].icon," ",D.complexity]}):i.jsx("span",{style:{color:"var(--text-muted)",fontSize:12},children:"—"})}),i.jsx("td",{className:`dag-cell-status dag-status-${D.status}`,children:YN[D.status]}),i.jsx("td",{className:"dag-cell-duration",children:Dg(D.startedAt,D.completedAt)}),i.jsx("td",{className:"dag-cell-time",children:XN(D.startedAt||D.completedAt)}),i.jsx("td",{className:"dag-cell-summary",children:D.summary||D.description||"--"})]},D.id))})]})}),i.jsx("h2",{className:"section-subtitle",children:"Agent Types"}),i.jsxs("div",{className:"dag-legend",children:[Object.entries(VN).map(([D,I])=>i.jsxs("div",{className:"legend-item",children:[i.jsx("span",{className:"legend-dot",style:{background:$g[D]||"var(--accent-blue)"}}),i.jsx("span",{className:"legend-icon",children:I}),i.jsx("span",{className:"legend-label",children:Lg[D]||D})]},D)),i.jsxs("div",{className:"legend-item",children:[i.jsx("span",{className:"legend-dot",style:{background:"transparent",border:"2px dashed var(--accent-blue)"}}),i.jsx("span",{className:"legend-icon",children:"⚡"}),i.jsx("span",{className:"legend-label",children:"Live node"})]})]})]})]})}function Va(e){return e==null||e<1e-5?"$0.00":e<.01?"$"+e.toFixed(6):"$"+e.toFixed(4)}function ao(e){return e==null?"0":e>=1e6?(e/1e6).toFixed(1)+"M":e>=1e3?(e/1e3).toFixed(1)+"K":mt(e)}function nse(e){return new Date(e).toLocaleDateString("en-US",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}function rse({data:e}){if(!e)return i.jsxs(i.Fragment,{children:[i.jsx(Me,{icon:"💰",title:"Cost Tracking"}),i.jsx("div",{className:"loading-state",children:i.jsx("p",{children:"Loading cost data..."})})]});const{cost:t}=e,n=Object.entries(t.byProvider||{}).sort(([,s],[,o])=>o-s),r=Object.entries(t.byModel||{}).sort(([,s],[,o])=>o-s).slice(0,10),a=n.reduce((s,[,o])=>s+o,0);return i.jsxs(i.Fragment,{children:[i.jsx(Me,{icon:"💰",title:"Cost Tracking"}),i.jsxs("div",{className:"cost-summary",children:[i.jsxs("div",{className:"cost-total",children:[i.jsx("span",{className:"cost-label",children:"Total Spent"}),i.jsx("span",{className:"cost-amount",children:Va(t.totalCost)})]}),i.jsxs("div",{className:"cost-total",children:[i.jsx("span",{className:"cost-label",children:"Total Tokens"}),i.jsx("span",{className:"cost-amount",children:ao(t.totalTokens)})]}),i.jsxs("div",{className:"cost-total",children:[i.jsx("span",{className:"cost-label",children:"Total Requests"}),i.jsx("span",{className:"cost-amount",children:ao(t.totalRequests)})]})]}),i.jsxs("div",{className:"cost-summary cost-summary-sub",children:[i.jsxs("div",{className:"cost-total",children:[i.jsx("span",{className:"cost-label",children:"📏 Measured (exact wire tokens)"}),i.jsx("span",{className:"cost-amount",children:Va(t.measuredCost)}),i.jsxs("span",{className:"cost-label",children:[ao(t.measuredCalls)," calls"]})]}),i.jsxs("div",{className:"cost-total",children:[i.jsx("span",{className:"cost-label",children:"📐 Estimated (length-based)"}),i.jsx("span",{className:"cost-amount",children:Va(t.estimatedCost)}),i.jsxs("span",{className:"cost-label",children:[ao(t.estimatedCalls)," calls"]})]}),i.jsxs("div",{className:"cost-total",children:[i.jsx("span",{className:"cost-label",children:"🧾 of which provider-reported (exact billed)"}),i.jsx("span",{className:"cost-amount",children:Va(t.reportedCost)}),i.jsxs("span",{className:"cost-label",children:[ao(t.reportedCalls)," calls"]})]})]}),i.jsx("h2",{className:"section-subtitle",children:"By Provider"}),i.jsx("div",{className:"cost-list",children:n.length===0?i.jsx("div",{className:"empty-state",children:"No costs recorded yet."}):n.map(([s,o])=>{var u;const l=a>0?(o/a*100).toFixed(1):"0",c=(u=t.byProviderReported)==null?void 0:u[s];return i.jsxs("div",{className:"cost-row",children:[i.jsx("span",{className:"cost-row-name",children:s}),i.jsx("div",{className:"cost-row-bar",children:i.jsx("div",{className:"cost-row-fill",style:{width:`${l}%`}})}),i.jsx("span",{className:"cost-row-value",children:Va(o)}),typeof c=="number"&&i.jsxs("span",{className:"cost-row-reported",title:"Provider-reported (exact billed) cost",children:["🧾 ",Va(c)]})]},s)})}),i.jsx("h2",{className:"section-subtitle",children:"By Model"}),i.jsx("div",{className:"cost-list",children:r.length===0?i.jsx("div",{className:"empty-state",children:"No model costs recorded yet."}):r.map(([s,o])=>{const l=a>0?(o/a*100).toFixed(1):"0",c=s.length>30?s.slice(0,28)+"..":s;return i.jsxs("div",{className:"cost-row",children:[i.jsx("span",{className:"cost-row-name",children:c}),i.jsx("div",{className:"cost-row-bar",children:i.jsx("div",{className:"cost-row-fill",style:{width:`${l}%`}})}),i.jsx("span",{className:"cost-row-value",children:Va(o)})]},s)})}),i.jsx("h2",{className:"section-subtitle",children:"Recent Requests"}),i.jsx("div",{className:"request-list",children:!t.recent||t.recent.length===0?i.jsx("div",{className:"empty-state",children:"No requests recorded yet."}):t.recent.slice(0,30).map((s,o)=>i.jsxs("div",{className:"request-row",children:[i.jsx("span",{className:"request-time",children:nse(s.timestamp)}),i.jsx("span",{className:"request-provider",children:s.provider||"--"}),i.jsx("span",{className:"request-model",children:s.model||"--"}),i.jsxs("span",{className:"request-cost",children:[s.reported?"🧾 ":"",Va(s.costUsd)]}),i.jsxs("span",{className:"request-tokens",children:[ao(s.totalTokens)," tok"]})]},o))})]})}function ase(e){return e==null?"$0.00":"$"+e.toFixed(6)}function Xd(e){return e==null?"0%":(e*100).toFixed(1)+"%"}function ise({data:e}){if(!e)return i.jsxs(i.Fragment,{children:[i.jsx(Me,{icon:"📈",title:"Benchmark Results"}),i.jsx("div",{className:"loading-state",children:i.jsx("p",{children:"Loading benchmark data..."})})]});const{benchmarks:t,evals:n}=e,r=t.latest,a=t.runs||[],s=(n==null?void 0:n.runs)||[],o=(n==null?void 0:n.latest)||null,l=s.map(u=>({name:u.model.length>12?u.model.slice(0,10)+"..":u.model,score:Math.round(u.summary.avgCompositeScore*100),completion:Math.round(u.summary.completionRate*100),tests:Math.round(u.summary.testPassRate*100),recovery:Math.round(u.summary.recoveryRate*100),efficiency:Math.round(u.summary.avgTokenEfficiency*100),fullModel:u.model,provider:u.provider})).reverse(),c=a.map(u=>({name:u.model.length>12?u.model.slice(0,10)+"..":u.model,passRate:u.summary.totalTasks>0?Math.round(u.summary.tasksPassed/u.summary.totalTasks*100):0,quality:Math.round(u.summary.avgQualityScore*100),latency:u.summary.medianLatencyMs,cost:u.summary.totalCostUsd,fullModel:u.model,provider:u.provider})).reverse();return i.jsxs(i.Fragment,{children:[i.jsx(Me,{icon:"📈",title:"Benchmark Results"}),i.jsx("div",{className:"benchmark-latest",children:r?i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"benchmark-header",children:[i.jsx("strong",{children:"Latest Run:"})," ",r.provider,"/",r.model]}),i.jsxs("div",{className:"benchmark-stats",children:[i.jsxs("div",{className:"benchmark-stat pass",children:[i.jsxs("div",{className:"benchmark-stat-value",children:[r.summary.tasksPassed,"/",r.summary.totalTasks]}),i.jsx("div",{className:"benchmark-stat-label",children:"Passed"})]}),i.jsxs("div",{className:"benchmark-stat quality",children:[i.jsx("div",{className:"benchmark-stat-value",children:Xd(r.summary.avgQualityScore)}),i.jsx("div",{className:"benchmark-stat-label",children:"Quality"})]}),i.jsxs("div",{className:"benchmark-stat latency",children:[i.jsxs("div",{className:"benchmark-stat-value",children:[r.summary.medianLatencyMs,"ms"]}),i.jsx("div",{className:"benchmark-stat-label",children:"Latency"})]}),i.jsxs("div",{className:"benchmark-stat fail",children:[i.jsx("div",{className:"benchmark-stat-value",children:ase(r.summary.totalCostUsd)}),i.jsx("div",{className:"benchmark-stat-label",children:"Cost"})]})]})]}):i.jsxs("div",{className:"empty-state",children:["No benchmark runs yet. Run ",i.jsx("code",{children:"buff benchmark"})," to start."]})}),c.length>1&&i.jsxs(i.Fragment,{children:[i.jsx("h2",{className:"section-subtitle",children:"Pass Rate by Model"}),i.jsx("div",{className:"chart-container",children:i.jsx(ns,{width:"100%",height:260,children:i.jsxs(rs,{data:c,margin:{top:20,right:20,left:10,bottom:40},children:[i.jsx(ni,{strokeDasharray:"3 3"}),i.jsx(ra,{dataKey:"name",tick:{fontSize:11}}),i.jsx(aa,{domain:[0,100],tick:{fontSize:11},tickFormatter:u=>u+"%"}),i.jsx(bn,{contentStyle:{background:"var(--bg-card)",border:"1px solid var(--border)",borderRadius:8},labelStyle:{color:"var(--text-primary)"},formatter:u=>[u+"%","Pass Rate"]}),i.jsx(yn,{dataKey:"passRate",radius:[4,4,0,0],children:c.map((u,d)=>i.jsx(uu,{fillOpacity:.8,style:{fill:u.passRate>=80?"var(--accent-green)":u.passRate>=50?"var(--accent-yellow)":"var(--accent-red)"}},d))})]})})}),i.jsx("h2",{className:"section-subtitle",children:"Latency by Model"}),i.jsx("div",{className:"chart-container",children:i.jsx(ns,{width:"100%",height:260,children:i.jsxs(rs,{data:c,margin:{top:20,right:20,left:10,bottom:40},children:[i.jsx(ni,{strokeDasharray:"3 3"}),i.jsx(ra,{dataKey:"name",tick:{fontSize:11}}),i.jsx(aa,{tick:{fontSize:11},tickFormatter:u=>u+"ms"}),i.jsx(bn,{contentStyle:{background:"var(--bg-card)",border:"1px solid var(--border)",borderRadius:8},labelStyle:{color:"var(--text-primary)"},formatter:u=>[u+"ms","Latency"]}),i.jsx(yn,{dataKey:"latency",radius:[4,4,0,0],fillOpacity:.8,fill:"var(--accent-yellow)",style:{fill:"var(--accent-yellow)"}})]})})}),i.jsx("h2",{className:"section-subtitle",children:"Cost by Model"}),i.jsx("div",{className:"chart-container",children:i.jsx(ns,{width:"100%",height:260,children:i.jsxs(rs,{data:c,margin:{top:20,right:20,left:10,bottom:40},children:[i.jsx(ni,{strokeDasharray:"3 3"}),i.jsx(ra,{dataKey:"name",tick:{fontSize:11}}),i.jsx(aa,{tick:{fontSize:11},tickFormatter:u=>"$"+u.toFixed(6)}),i.jsx(bn,{contentStyle:{background:"var(--bg-card)",border:"1px solid var(--border)",borderRadius:8},labelStyle:{color:"var(--text-primary)"},formatter:u=>["$"+u.toFixed(6),"Cost"]}),i.jsx(yn,{dataKey:"cost",radius:[4,4,0,0],fillOpacity:.8,fill:"var(--accent-purple)",style:{fill:"var(--accent-purple)"}})]})})})]}),i.jsx("h2",{className:"section-subtitle",children:"🎯 Agent Evaluation"}),i.jsx("p",{className:"section-hint",style:{color:"var(--text-secondary)",fontSize:12,marginBottom:16},children:"End-to-end coding tasks run through the full agent pipeline — measures if the agent is actually improving."}),i.jsx("div",{className:"benchmark-latest",children:o?i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"benchmark-header",children:[i.jsx("strong",{children:"Latest Eval Run:"})," ",o.provider,"/",o.model]}),i.jsxs("div",{className:"benchmark-stats",children:[i.jsxs("div",{className:"benchmark-stat pass",children:[i.jsxs("div",{className:"benchmark-stat-value",children:[o.summary.tasksPassed,"/",o.summary.totalTasks]}),i.jsx("div",{className:"benchmark-stat-label",children:"Tests Passed"})]}),i.jsxs("div",{className:"benchmark-stat quality",children:[i.jsx("div",{className:"benchmark-stat-value",children:Xd(o.summary.avgCompositeScore)}),i.jsx("div",{className:"benchmark-stat-label",children:"Composite Score"})]}),i.jsxs("div",{className:"benchmark-stat latency",children:[i.jsx("div",{className:"benchmark-stat-value",children:Xd(o.summary.recoveryRate)}),i.jsx("div",{className:"benchmark-stat-label",children:"Recovery Rate"})]}),i.jsxs("div",{className:"benchmark-stat fail",children:[i.jsx("div",{className:"benchmark-stat-value",children:o.summary.totalRollbacks}),i.jsx("div",{className:"benchmark-stat-label",children:"Rollbacks"})]}),i.jsxs("div",{className:"benchmark-stat deps",children:[i.jsx("div",{className:"benchmark-stat-value",children:Xd(o.summary.dependencyInstallRate)}),i.jsx("div",{className:"benchmark-stat-label",children:"Deps Installed"})]})]})]}):i.jsxs("div",{className:"empty-state",children:["No eval runs yet. Run ",i.jsx("code",{children:"buff eval run"})," to measure the agent end-to-end."]})}),l.length>1&&i.jsxs(i.Fragment,{children:[i.jsx("h2",{className:"section-subtitle",children:"Composite Score by Model"}),i.jsx("div",{className:"chart-container",children:i.jsx(ns,{width:"100%",height:260,children:i.jsxs(rs,{data:l,margin:{top:20,right:20,left:10,bottom:40},children:[i.jsx(ni,{strokeDasharray:"3 3"}),i.jsx(ra,{dataKey:"name",tick:{fontSize:11}}),i.jsx(aa,{domain:[0,100],tick:{fontSize:11},tickFormatter:u=>u+"%"}),i.jsx(bn,{contentStyle:{background:"var(--bg-card)",border:"1px solid var(--border)",borderRadius:8},labelStyle:{color:"var(--text-primary)"},formatter:u=>[u+"%","Composite Score"]}),i.jsx(yn,{dataKey:"score",radius:[4,4,0,0],children:l.map((u,d)=>i.jsx(uu,{fillOpacity:.8,style:{fill:u.score>=80?"var(--accent-green)":u.score>=50?"var(--accent-yellow)":"var(--accent-red)"}},d))})]})})}),i.jsx("h2",{className:"section-subtitle",children:"Metric Breakdown (completion / tests / recovery / token efficiency)"}),i.jsx("div",{className:"chart-container",children:i.jsx(ns,{width:"100%",height:260,children:i.jsxs(rs,{data:l,margin:{top:20,right:20,left:10,bottom:40},children:[i.jsx(ni,{strokeDasharray:"3 3"}),i.jsx(ra,{dataKey:"name",tick:{fontSize:11}}),i.jsx(aa,{domain:[0,100],tick:{fontSize:11},tickFormatter:u=>u+"%"}),i.jsx(bn,{contentStyle:{background:"var(--bg-card)",border:"1px solid var(--border)",borderRadius:8},labelStyle:{color:"var(--text-primary)"}}),i.jsx(ms,{}),i.jsx(yn,{dataKey:"completion",name:"Completion",radius:[4,4,0,0],fillOpacity:.8,fill:"var(--accent-green)",style:{fill:"var(--accent-green)"}}),i.jsx(yn,{dataKey:"tests",name:"Tests",radius:[4,4,0,0],fillOpacity:.8,fill:"var(--accent-blue)",style:{fill:"var(--accent-blue)"}}),i.jsx(yn,{dataKey:"recovery",name:"Recovery",radius:[4,4,0,0],fillOpacity:.8,fill:"var(--accent-yellow)",style:{fill:"var(--accent-yellow)"}}),i.jsx(yn,{dataKey:"efficiency",name:"Token Eff.",radius:[4,4,0,0],fillOpacity:.8,fill:"var(--accent-purple)",style:{fill:"var(--accent-purple)"}})]})})})]}),i.jsx("h2",{className:"section-subtitle",children:"Eval Run History"}),i.jsx("div",{className:"benchmark-list",children:s.length===0?i.jsxs("div",{className:"empty-state",children:["No eval runs yet. Run ",i.jsx("code",{children:"buff eval run"})," to start."]}):s.map(u=>{const d=Math.round(u.summary.avgCompositeScore*100),f=d>=80?"high":d>=50?"medium":"low";return i.jsxs("div",{className:"benchmark-item",children:[i.jsx("span",{className:"benchmark-date",children:new Date(u.startedAt).toLocaleDateString("en-US",{month:"short",day:"numeric"})}),i.jsxs("span",{className:"benchmark-model",children:[u.provider,"/",u.model]}),i.jsxs("span",{className:`benchmark-score ${f}`,children:[d,"%"]})]},u.id)})}),i.jsx("h2",{className:"section-subtitle",children:"Run History"}),i.jsx("div",{className:"benchmark-list",children:a.length===0?i.jsxs("div",{className:"empty-state",children:["No benchmark runs yet. Run ",i.jsx("code",{children:"buff benchmark"})," to start."]}):a.map(u=>{const d=u.summary.totalTasks>0?Math.round(u.summary.tasksPassed/u.summary.totalTasks*100):0,f=d>=80?"high":d>=50?"medium":"low";return i.jsxs("div",{className:"benchmark-item",children:[i.jsx("span",{className:"benchmark-date",children:new Date(u.startedAt).toLocaleDateString("en-US",{month:"short",day:"numeric"})}),i.jsxs("span",{className:"benchmark-model",children:[u.provider,"/",u.model]}),i.jsxs("span",{className:`benchmark-score ${f}`,children:[d,"%"]})]},u.id)})})]})}const sse={pass:"✅",warn:"⚠️",fail:"❌"},ose={pass:"PASS",warn:"WARN",fail:"FAIL"};function ZR(e){const t={pass:0,warn:0,fail:0};for(const n of e)t[n.status]!==void 0&&(t[n.status]+=1);return t}function JR(e){const t=[];return e.fail>0&&t.push(`${e.fail} failing`),e.warn>0&&t.push(`${e.warn} warning${e.warn===1?"":"s"}`),e.pass>0&&t.push(`${e.pass} passing`),t.length>0?t.join(" · "):"no checks"}function Ib({check:e}){return i.jsxs("div",{className:"admin-check-row","data-status":e.status,"data-testid":`check-${e.name}`,children:[i.jsxs("span",{className:`admin-check-badge admin-check-${e.status}`,children:[sse[e.status]," ",ose[e.status]]}),i.jsxs("div",{className:"admin-check-body",children:[i.jsx("div",{className:"admin-check-name",children:e.name}),i.jsx("div",{className:"admin-check-message",children:e.message}),e.detail?i.jsx("div",{className:"admin-check-detail",children:e.detail}):null,e.fix?i.jsxs("div",{className:"admin-check-fix",children:["💡 ",e.fix]}):null]})]})}function QN(e){return`${(e*100).toFixed(1)}%`}function dc(e){return e==null?"0":e>=1e6?(e/1e6).toFixed(1)+"M":e>=1e3?(e/1e3).toFixed(1)+"K":mt(e)}function lse(e){if(!e)return"never";const t=Math.floor((Date.now()-e)/1e3);if(t<60)return`${t}s ago`;const n=Math.floor(t/60);if(n<60)return`${n}m ago`;const r=Math.floor(n/60);return r<24?`${r}h ${n%60}m ago`:`${Math.floor(r/24)}d ago`}function ZN({title:e,blurb:t,checks:n,testId:r}){const a=ZR(n);return i.jsxs("section",{style:{marginBottom:18},"data-testid":r,children:[i.jsxs("div",{style:{display:"flex",alignItems:"baseline",gap:10,flexWrap:"wrap"},children:[i.jsx("h2",{className:"section-subtitle",style:{margin:0},children:e}),i.jsx("span",{style:{fontSize:12,color:a.fail>0?"var(--accent-red)":a.warn>0?"var(--accent-yellow)":"var(--accent-green)"},"data-testid":`${r}-summary`,children:JR(a)})]}),i.jsx("p",{style:{fontSize:11,color:"var(--text-secondary)",margin:"4px 0 10px"},children:t}),i.jsx("div",{className:"admin-check-list",children:n.length>0?n.map(s=>i.jsx(Ib,{check:s},s.name)):i.jsxs("div",{className:"empty-state",children:["No ",e.toLowerCase()," checks returned."]})})]})}function cse({data:e,connected:t,lastUpdated:n}){const[r,a]=S.useState(null),[s,o]=S.useState(null),[l,c]=S.useState(!1),u=S.useCallback(async()=>{c(!0),o(null);const v=await Z.fetchAdminChecks();v?a(v):o("Could not reach the dashboard server, or it is older than this page. Run `nuvira dashboard` to start it."),c(!1)},[]);S.useEffect(()=>{u()},[u]);const d=e==null?void 0:e.health,f=(d==null?void 0:d.agentStats)??null,h=[...(r==null?void 0:r.system)??[],...(r==null?void 0:r.enterprise)??[]],p=ZR(h),g=((r==null?void 0:r.providers)??[]).filter(v=>v.configured).length,m=((r==null?void 0:r.providers)??[]).length,y=f?Object.entries(f.agents).map(([v,k])=>({agent:v,...k})).sort((v,k)=>k.totalRuns-v.totalRuns||v.agent.localeCompare(k.agent)):[];return i.jsxs(i.Fragment,{children:[i.jsx(Me,{icon:"⚙️",title:"System Health"}),i.jsxs("p",{className:"section-description",style:{fontSize:12,color:"var(--text-secondary)",marginBottom:14},children:["The same checks ",i.jsx("code",{children:"nuvira doctor"})," runs, executed on demand — pass / warn / fail, with the fix for anything that is not passing. The store counters at the bottom are how big the agent's memory files are; they are not a health verdict."]}),i.jsxs("div",{className:"health-grid",style:{marginBottom:18},children:[i.jsxs("div",{className:"health-card",children:[i.jsx("span",{className:"health-icon",children:t?"🟢":"🟠"}),i.jsxs("div",{className:"health-body",children:[i.jsx("div",{className:"health-title",children:"Live Stream"}),i.jsx("div",{className:"health-value","data-testid":"connection-state",children:t?"● Connected":"● Reconnecting…"})]})]}),i.jsxs("div",{className:"health-card",children:[i.jsx("span",{className:"health-icon",children:"⏱️"}),i.jsxs("div",{className:"health-body",children:[i.jsx("div",{className:"health-title",children:"Last Update"}),i.jsx("div",{className:"health-value",children:n})]})]}),i.jsxs("div",{className:"health-card",children:[i.jsx("span",{className:"health-icon",children:"🩺"}),i.jsxs("div",{className:"health-body",children:[i.jsx("div",{className:"health-title",children:"Doctor"}),i.jsx("div",{className:"health-value","data-testid":"doctor-verdict",style:{color:p.fail>0?"var(--accent-red)":p.warn>0?"var(--accent-yellow)":"var(--accent-green)"},children:r?JR(p):l?"running…":"--"})]})]})]}),i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:6},children:[i.jsx("h2",{className:"section-subtitle",style:{margin:0},children:"Doctor Checks"}),i.jsx("button",{className:"admin-refresh-btn",type:"button",disabled:l,onClick:()=>void u(),"data-testid":"run-checks",children:l?"⏳ Running…":"↻ Run checks again"}),m>0?i.jsxs("span",{style:{fontSize:11,color:"var(--text-secondary)"},children:[g," of ",m," providers configured — per-provider detail is on the Admin tab"]}):null]}),s?i.jsx("div",{className:"admin-row-msg admin-row-msg-err",style:{marginBottom:12},children:s}):null,!r&&!s?i.jsx("div",{className:"loading-state",children:"Running checks…"}):null,r?i.jsxs(i.Fragment,{children:[i.jsx(ZN,{title:"System",blurb:"Runtime, filesystem, configuration and the local model surface.",checks:r.system,testId:"checks-system"}),i.jsx(ZN,{title:"Enterprise",blurb:"Governance, audit, RBAC and the controls an operator is accountable for.",checks:r.enterprise,testId:"checks-enterprise"})]}):null,i.jsx("h2",{className:"section-subtitle",children:"Agent Performance"}),f?i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"stats-grid",style:{marginBottom:10},children:[i.jsxs("div",{className:"stat-card",children:[i.jsx("div",{className:"stat-value",children:dc(f.totalRuns)}),i.jsx("div",{className:"stat-label",children:"Recorded runs"})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("div",{className:"stat-value",children:QN(f.overallSuccessRate)}),i.jsx("div",{className:"stat-label",children:"Overall success rate"})]})]}),y.length>0?i.jsx("div",{style:{display:"flex",flexDirection:"column",gap:4,marginBottom:18},children:y.map(v=>i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12,fontSize:12,padding:"4px 0",borderBottom:"1px solid var(--border-light)"},"data-testid":`agent-stats-${v.agent}`,children:[i.jsx("span",{style:{flex:1,color:"var(--text-primary)"},children:v.agent}),i.jsxs("span",{style:{color:"var(--text-secondary)"},children:[dc(v.totalRuns)," runs"]}),i.jsx("span",{style:{color:v.successRate>=.9?"var(--accent-green)":v.successRate>=.7?"var(--accent-yellow)":"var(--accent-red)"},children:QN(v.successRate)}),i.jsx("span",{style:{color:"var(--text-secondary)",minWidth:78,textAlign:"right"},children:lse(v.lastRun)})]},v.agent))}):i.jsx("p",{style:{fontSize:11,color:"var(--text-secondary)",marginBottom:18},children:"No agent runs recorded yet — this fills in as agents execute."})]}):i.jsx("p",{style:{fontSize:11,color:"var(--text-secondary)",marginBottom:18},children:"No agent-stats file yet. Run a task and the per-agent success rates appear here."}),i.jsx("h2",{className:"section-subtitle",children:"Learning Stores"}),i.jsx("p",{style:{fontSize:11,color:"var(--text-secondary)",margin:"4px 0 10px"},children:"What the agent has learned into disk. Sizes, not verdicts."}),i.jsxs("div",{className:"health-grid",children:[i.jsxs("div",{className:"health-card",children:[i.jsx("span",{className:"health-icon",children:"💾"}),i.jsxs("div",{className:"health-body",children:[i.jsx("div",{className:"health-title",children:"Memory Directory"}),i.jsx("div",{className:"health-path",children:(d==null?void 0:d.memoryDir)||"~/.buff/memory/"})]})]}),i.jsxs("div",{className:"health-card",children:[i.jsx("span",{className:"health-icon",children:"📝"}),i.jsxs("div",{className:"health-body",children:[i.jsx("div",{className:"health-title",children:"Coding Patterns"}),i.jsx("div",{className:"health-value",children:dc(d==null?void 0:d.patterns)})]})]}),i.jsxs("div",{className:"health-card",children:[i.jsx("span",{className:"health-icon",children:"👍"}),i.jsxs("div",{className:"health-body",children:[i.jsx("div",{className:"health-title",children:"User Feedback"}),i.jsxs("div",{className:"health-value",children:[dc(d==null?void 0:d.feedback)," ratings"]})]})]}),i.jsxs("div",{className:"health-card",children:[i.jsx("span",{className:"health-icon",children:"🧠"}),i.jsxs("div",{className:"health-body",children:[i.jsx("div",{className:"health-title",children:"Vector Index"}),i.jsxs("div",{className:"health-value",children:[dc(d==null?void 0:d.vectors)," entries"]})]})]})]}),e?null:i.jsx("p",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:10},children:"Waiting for the first data frame from the dashboard server — the checks above do not depend on it."}),i.jsx("h2",{className:"section-subtitle",children:"Server Info"}),i.jsxs("div",{className:"server-info",children:[i.jsxs("div",{className:"info-row",children:[i.jsx("span",{className:"info-label",children:"Stream"}),i.jsx("span",{className:"info-value",children:t?"● Connected":"● Reconnecting…"})]}),i.jsxs("div",{className:"info-row",children:[i.jsx("span",{className:"info-label",children:"Last Updated"}),i.jsx("span",{className:"info-value",children:n})]}),i.jsxs("div",{className:"info-row",children:[i.jsx("span",{className:"info-label",children:"Checks run at"}),i.jsx("span",{className:"info-value",children:r!=null&&r.serverTime?new Date(r.serverTime).toLocaleString():"--"})]}),i.jsxs("div",{className:"info-row",children:[i.jsx("span",{className:"info-label",children:"Data Directory"}),i.jsx("span",{className:"info-value",children:(d==null?void 0:d.memoryDir)||"~/.buff/memory/"})]})]})]})}const use=new Set(["local","lmstudio","vllm"]),dse=new Set([]),Zh={available:{bg:"var(--ok-soft)",text:"var(--accent-green)",dot:"var(--accent-green)",cardBorder:"var(--accent-green)",cardBg:"var(--ok-soft)"},limited:{bg:"var(--warn-soft)",text:"var(--accent-yellow)",dot:"var(--accent-yellow)",cardBorder:"var(--accent-yellow)",cardBg:"var(--warn-soft)"},unavailable:{bg:"var(--danger-soft)",text:"var(--accent-red)",dot:"var(--accent-red)",cardBorder:"var(--accent-red)",cardBg:"var(--danger-soft)"}},fse=[3,4,5],eM=12e3,JN=[300,700],hse=6e4,pse=5e3;function mse(e){return new Promise(t=>setTimeout(t,e))}async function tM(e,t){const n=new AbortController,r=setTimeout(()=>n.abort(),t);try{return await fetch(e,{signal:n.signal})}finally{clearTimeout(r)}}function nM(e){return e instanceof TypeError||e instanceof Error&&e.name==="AbortError"}async function gse(e){let t=null,n=!1;for(let r=0;;r++){try{const a=await tM("/api/models",eM);if(!a.ok)t=a.status;else{const s=await $n(a);if(s&&Array.isArray(s.providers))return s;throw new Error("Model health endpoint returned an unexpected response — is the dashboard server up to date?")}}catch(a){if(!nM(a))throw a;n=!0,e==null||e()}if(r>=JN.length)throw new Error(n?"Dashboard server unreachable — is it still running? Retrying automatically…":`Model health endpoint failed (HTTP ${t})`);await mse(JN[r])}}async function vse(e){for(let t=0;;t++)try{const n=await tM("/api/model-registry",eM);return n.ok?await $n(n):null}catch(n){if(!nM(n)||t>=1)return null;e==null||e()}}function yse(e){return e==="available"?"Available":e==="limited"?"Limited":"Unavailable"}function bse(e){return e==="available"?"Ready":e==="limited"?"Limited":"Down"}function rM(e){return{local:"💻",groq:"🟢",nim:"🔶",gemini:"🔷",openrouter:"🟣",openai:"🤖",anthropic:"🔮",mistral:"🌀",cohere:"🧠",together:"🟢",deepinfra:"🌐",fireworks:"🎆",perplexity:"❓",azure:"🔵",anyscale:"🔷",lmstudio:"🎨",vllm:"⚡"}[e]||"🔌"}function a0(e){return{local:"Ollama",groq:"Groq",nim:"NVIDIA NIM",gemini:"Gemini",openrouter:"OpenRouter",openai:"OpenAI",anthropic:"Anthropic",mistral:"Mistral",cohere:"Cohere",together:"Together AI",deepinfra:"DeepInfra",fireworks:"Fireworks AI",perplexity:"Perplexity",azure:"Azure OpenAI",anyscale:"Anyscale",lmstudio:"LM Studio",vllm:"vLLM / TGI"}[e]||e}function eE({status:e,label:t}){const n=Zh[e];return i.jsxs("span",{style:{display:"inline-flex",alignItems:"center",gap:6,background:n.bg,color:n.text,padding:"3px 10px",borderRadius:12,fontSize:12,fontWeight:500,border:`1px solid ${n.text}22`},children:[i.jsx("span",{style:{width:8,height:8,borderRadius:"50%",background:n.dot}}),t]})}function xse({onRefresh:e,loading:t}){return i.jsxs("div",{className:"stats-grid mini",style:{marginBottom:16},children:[i.jsx("button",{onClick:e,disabled:t,className:"stat-card",style:{cursor:t?"not-allowed":"pointer",opacity:t?.6:1,border:"1px solid var(--border)",justifyContent:"center",fontSize:13},children:t?"⏳ Testing...":"🔄 Refresh Status"}),i.jsx("div",{className:"stat-card",style:{border:"1px solid var(--border)"},children:i.jsx("div",{style:{fontSize:13,color:"var(--text-secondary)",textAlign:"center",width:"100%"},children:"Tests all configured providers and their API keys in real time"})})]})}function wse({data:e}){const t=e.totalModels;if(t===0)return null;const n=e.available||0,r=e.limited||0,a=e.unavailable||0;return i.jsxs("div",{style:{marginBottom:16},children:[i.jsxs("div",{style:{background:"var(--bg-primary)",borderRadius:8,overflow:"hidden",height:10,display:"flex",border:"1px solid var(--border-light)"},children:[n>0&&i.jsx("div",{style:{width:`${n/t*100}%`,background:"var(--accent-green)",transition:"width 0.5s"},title:`${n} available`}),r>0&&i.jsx("div",{style:{width:`${r/t*100}%`,background:"var(--accent-yellow)",transition:"width 0.5s"},title:`${r} limited`}),a>0&&i.jsx("div",{style:{width:`${a/t*100}%`,background:"var(--accent-red)",transition:"width 0.5s"},title:`${a} unavailable`})]}),i.jsxs("div",{style:{display:"flex",gap:16,marginTop:6,fontSize:12,color:"var(--text-secondary)"},children:[i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-green)"},children:"●"})," Ready"]}),i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-yellow)"},children:"●"})," Limited"]}),i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-red)"},children:"●"})," Unavailable"]})]}),typeof e.routable=="number"&&i.jsxs("div",{style:{marginTop:6,fontSize:12,color:"var(--text-secondary)",lineHeight:1.5},children:[i.jsx("strong",{style:{color:"var(--text-primary)"},children:t})," listed by providers ·"," ",i.jsx("strong",{style:{color:e.routable>0?"var(--accent-green)":"var(--accent-yellow)"},children:e.routable})," ","routable right now (verified, un-parked, not stale)",typeof e.registryTotal=="number"&&e.registryTotal>0&&i.jsxs(i.Fragment,{children:[" ","· registry tracks"," ",i.jsx("strong",{style:{color:"var(--text-primary)"},children:e.registryVerified??0})," of"," ",i.jsx("strong",{style:{color:"var(--text-primary)"},children:e.registryTotal})," verified"]})]})]})}function Qd({provider:e}){const[t,n]=S.useState(!1),r=Zh[e.overallStatus].text,a={available:e.models.filter(s=>s.status==="available").length,limited:e.models.filter(s=>s.status==="limited").length,unavailable:e.models.filter(s=>s.status==="unavailable").length};return i.jsxs("div",{style:{background:"var(--bg-card)",borderRadius:12,border:`1px solid ${r}44`,borderLeft:`4px solid ${r}`,marginBottom:12,overflow:"hidden"},children:[i.jsxs("div",{onClick:()=>n(!t),style:{padding:"14px 18px",cursor:"pointer",display:"flex",alignItems:"center",gap:14,userSelect:"none"},children:[i.jsx("span",{style:{fontSize:24},children:e.icon}),i.jsxs("div",{style:{flex:1},children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:2},children:[i.jsx("span",{style:{fontSize:16,fontWeight:600,color:"var(--text-primary)"},children:e.providerLabel}),i.jsx(eE,{status:e.overallStatus,label:yse(e.overallStatus)})]}),i.jsxs("div",{style:{fontSize:13,color:"var(--text-secondary)"},children:[e.models.length," model",e.models.length!==1?"s":"",a.available>0&&i.jsxs("span",{style:{color:"var(--accent-green)"},children:[" · ",a.available," ready"]}),a.limited>0&&i.jsxs("span",{style:{color:"var(--accent-yellow)"},children:[" · ",a.limited," limited"]}),a.unavailable>0&&i.jsxs("span",{style:{color:"var(--accent-red)"},children:[" · ",a.unavailable," unavailable"]})]})]}),i.jsxs("div",{style:{fontSize:12,color:"var(--text-secondary)",textAlign:"right"},children:[i.jsx("div",{style:{marginBottom:2,color:e.apiConfigured?"var(--accent-green)":"var(--accent-red)"},children:e.apiConfigured?"✅ Key set":"❌ No key"}),i.jsx("div",{style:{color:e.apiAccessible?"var(--accent-green)":"var(--accent-red)"},children:e.apiAccessible?"✅ Connected":"❌ Offline"})]}),i.jsx("span",{style:{color:"var(--text-secondary)",fontSize:18,transition:"transform 0.2s",transform:t?"rotate(90deg)":"rotate(0deg)"},children:"▶"})]}),t&&i.jsxs(i.Fragment,{children:[i.jsxs("div",{style:{padding:"10px 18px",background:"var(--bg-primary)",fontSize:13,color:"var(--text-secondary)",display:"flex",justifyContent:"space-between",flexWrap:"wrap",gap:8,borderTop:"1px solid var(--border-light)"},children:[i.jsx("span",{children:e.notes}),e.freeTierInfo&&i.jsxs("span",{style:{color:"var(--accent-yellow)"},children:["🎁 ",e.freeTierInfo]})]}),i.jsx("div",{style:{overflowX:"auto",borderTop:"1px solid var(--border-light)"},children:i.jsxs("table",{style:{width:"100%",borderCollapse:"collapse",fontSize:13},children:[i.jsx("thead",{children:i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)",color:"var(--text-secondary)"},children:[i.jsx("th",{style:{padding:"8px 18px",textAlign:"left",fontWeight:500},children:"Model"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Status"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Quota"}),i.jsx("th",{style:{padding:"8px 18px",textAlign:"left",fontWeight:500},children:"Details"})]})}),i.jsx("tbody",{children:e.models.map((s,o)=>i.jsxs("tr",{style:{borderBottom:o<e.models.length-1?"1px solid var(--border-light)":"none",background:s.status==="unavailable"?"var(--bg-primary)":"transparent"},children:[i.jsxs("td",{style:{padding:"8px 18px",color:"var(--text-primary)",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12},children:[i.jsx("span",{style:{display:"inline-block",width:8,height:8,borderRadius:"50%",background:Zh[s.status].dot,marginRight:8}}),s.name]}),i.jsx("td",{style:{padding:"8px 12px"},children:i.jsx(eE,{status:s.status,label:bse(s.status)})}),i.jsx("td",{style:{padding:"8px 12px",color:"var(--text-secondary)",fontSize:12,fontFamily:"'SFMono-Regular', Consolas, monospace"},children:s.rateLimitRemaining!==void 0?s.rateLimitTotal?`${s.rateLimitRemaining}/${s.rateLimitTotal}`:`${s.rateLimitRemaining} left`:"—"}),i.jsx("td",{style:{padding:"8px 18px",color:"var(--text-secondary)",fontSize:12},children:s.statusReason})]},s.id))})]})})]})]})}function aM(e){if(e<=0)return"now";const t=Math.floor(e/36e5),n=Math.floor(e%36e5/6e4);return t>0?`${t}h ${n}m`:n>0?`${n}m`:`${Math.ceil(e/1e3)}s`}function kse(e){return e==="verified"?{text:"var(--accent-green)",bg:"var(--ok-soft)",dot:"var(--accent-green)"}:e==="unavailable"?{text:"var(--accent-red)",bg:"var(--danger-soft)",dot:"var(--accent-red)"}:{text:"var(--text-secondary)",bg:"var(--bg-hover)",dot:"var(--bg-hover)"}}function Sse({rate:e}){const t=Math.round(e*100);return i.jsxs("span",{title:`⏸ flaky mid-stream ${t}% — started streaming, died before finish; the router deprioritizes flaky models (P4 M4.4)`,style:{marginLeft:8,fontSize:10,padding:"1px 6px",borderRadius:8,whiteSpace:"nowrap",background:"var(--purple-soft)",border:"1px solid var(--accent-purple)",color:"var(--accent-purple)"},children:["⏸ flaky ",t,"%"]})}function jse({tokens:e}){const t=e>=1048576?`${(e/1048576).toFixed(1).replace(/\.0$/,"")}M`:e>=1024?`${(e/1024).toFixed(0)}K`:`${e}`;return i.jsxs("span",{title:`⏳ context window ${mt(e)} tokens — live from the provider's model list (v1.60.x); feeds the router's context preflight`,style:{marginLeft:8,fontSize:10,padding:"1px 6px",borderRadius:8,whiteSpace:"nowrap",background:"var(--info-soft)",border:"1px solid var(--accent-blue)",color:"var(--accent-blue)"},children:["⏳ ",t]})}function Nse({history:e}){if(!e||e.length<2)return null;const t=46,n=14,r=1.5,a=Math.max(.01,...e.map(d=>d.rate)),s=e.map((d,f)=>{const h=r+f/(e.length-1)*(t-r*2),p=n-r-d.rate/a*(n-r*2);return`${h.toFixed(1)},${p.toFixed(1)}`}).join(" "),o=e[0].rate,l=e[e.length-1].rate,c=l<o,u=Math.round(l*100);return i.jsxs("svg",{width:t,height:n,viewBox:`0 0 ${t} ${n}`,style:{marginLeft:8,verticalAlign:"middle",cursor:"default"},"aria-label":"Flakiness trend",children:[i.jsx("title",{children:c?`Flakiness healing — ${u}% now, trending down (clean successes decay the signal)`:`Flakiness climbing — ${u}% now (recent mid-stream interruptions)`}),i.jsx("polyline",{points:s,fill:"none",style:{stroke:"var(--accent-purple)"},strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round",opacity:.9}),i.jsx("circle",{cx:t-r,cy:n-r-l/a*(n-r*2),r:2,style:{fill:c?"var(--accent-green)":"var(--accent-purple)"}})]})}function Ese({entry:e}){const t=kse(e.status),n=e.remainingTokens>=0?`${mt(e.remainingTokens)} left`:"unlimited";return i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)"},children:[i.jsxs("td",{style:{padding:"8px 12px",color:"var(--text-primary)",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12},children:[i.jsx("span",{style:{display:"inline-block",width:8,height:8,borderRadius:"50%",background:t.dot,marginRight:8}}),e.model.length>32?e.model.slice(0,29)+"…":e.model,(e.partialRate??0)>0&&i.jsx(Sse,{rate:e.partialRate??0}),e.partialHistory&&e.partialHistory.length>=2&&i.jsx(Nse,{history:e.partialHistory}),e.parked&&i.jsx("span",{style:{marginLeft:8,fontSize:10,padding:"1px 6px",borderRadius:8,background:"var(--danger-soft)",border:"1px solid var(--accent-red)",color:"var(--accent-red)"},children:"⏸ parked"}),e.measuredSamples?i.jsxs("span",{style:{marginLeft:8,fontSize:10,padding:"1px 6px",borderRadius:8,whiteSpace:"nowrap",background:"var(--ok-soft)",border:"1px solid var(--accent-green)",color:"var(--accent-green)"},children:["📏 ",e.measuredInputTokens,"→",e.measuredOutputTokens," tok"]}):i.jsx("span",{style:{marginLeft:8,fontSize:10,padding:"1px 6px",borderRadius:8,whiteSpace:"nowrap",background:"var(--bg-hover)",border:"1px solid var(--border-hover)",color:"var(--text-secondary)"},children:"📐 est"}),e.contextWindowTokens&&i.jsx(jse,{tokens:e.contextWindowTokens})]}),i.jsx("td",{style:{padding:"8px 12px"},children:i.jsx("span",{style:{display:"inline-flex",alignItems:"center",gap:5,fontSize:11,fontWeight:600,background:t.bg,color:t.text,padding:"2px 8px",borderRadius:6},children:e.status==="verified"?"✓ Verified":e.status==="unavailable"?"✗ Unavailable":"◌ Unverified"})}),i.jsx("td",{style:{padding:"8px 12px",textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12,color:e.remainingTokens>=0&&e.remainingTokens<=100?"var(--accent-yellow)":"var(--text-secondary)"},children:n}),i.jsx("td",{style:{padding:"8px 12px",textAlign:"right",color:"var(--text-secondary)",fontSize:12,whiteSpace:"nowrap"},children:e.resetsInMs>0?aM(e.resetsInMs):"—"}),i.jsx("td",{style:{padding:"8px 12px",textAlign:"right",color:"var(--text-secondary)",fontSize:12,fontFamily:"'SFMono-Regular', Consolas, monospace"},children:e.latencyMs!==void 0?`${e.latencyMs}ms`:"—"}),i.jsx("td",{style:{padding:"8px 12px",color:"var(--text-muted)",fontSize:11,maxWidth:180,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e.lastError||(e.source?`learned via ${e.source}`:"")})]})}function _se({provider:e}){const[t,n]=S.useState(!1),r=e.verified>0?"var(--accent-green)":e.unavailable>0?"var(--accent-red)":"var(--border-hover)";return i.jsxs("div",{style:{background:"var(--bg-card)",borderRadius:12,border:`1px solid ${r}44`,borderLeft:`4px solid ${r}`,marginBottom:12,overflow:"hidden"},children:[i.jsxs("div",{onClick:()=>n(!t),style:{padding:"14px 18px",cursor:"pointer",display:"flex",alignItems:"center",gap:14,userSelect:"none"},children:[i.jsx("span",{style:{fontSize:24},children:rM(e.provider)}),i.jsxs("div",{style:{flex:1},children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:2},children:[i.jsx("span",{style:{fontSize:16,fontWeight:600,color:"var(--text-primary)"},children:a0(e.provider)}),i.jsx("span",{style:{fontSize:11,padding:"2px 8px",borderRadius:10,background:e.parked>0?"var(--danger-soft)":"var(--ok-soft)",border:`1px solid ${e.parked>0?"var(--accent-red)":"var(--accent-green)"}`,color:e.parked>0?"var(--accent-red)":"var(--accent-green)"},children:e.parked>0?`${e.parked} parked`:"routable"}),(e.flaky??0)>0&&i.jsxs("span",{style:{fontSize:11,padding:"2px 8px",borderRadius:10,background:"var(--purple-soft)",border:"1px solid var(--accent-purple)",color:"var(--accent-purple)"},children:["⏸ ",e.flaky," flaky"]})]}),i.jsxs("div",{style:{fontSize:13,color:"var(--text-secondary)"},children:[e.verified," verified · ",e.unverified," unverified · ",e.unavailable," unavailable"]})]}),i.jsx("span",{style:{color:"var(--text-secondary)",fontSize:18,transition:"transform 0.2s",transform:t?"rotate(90deg)":"rotate(0deg)"},children:"▶"})]}),t&&i.jsx("div",{style:{overflowX:"auto",borderTop:"1px solid var(--border-light)"},children:i.jsxs("table",{style:{width:"100%",borderCollapse:"collapse",fontSize:13},children:[i.jsx("thead",{children:i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)",color:"var(--text-secondary)"},children:[i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Model"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Availability"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"right",fontWeight:500},children:"Tokens left"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"right",fontWeight:500},children:"Resets in"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"right",fontWeight:500},children:"Latency"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Reason / Source"})]})}),i.jsx("tbody",{children:e.models.map(a=>i.jsx(Ese,{entry:a},a.model))})]})})]})}function Ase(e){if(!e)return null;const t=Object.entries(e.consecutive).filter(([,n])=>n>0);return t.length===0?null:i.jsxs("div",{style:{background:"color-mix(in srgb, var(--accent-yellow) 8%, transparent)",border:"1px solid var(--accent-yellow)",borderRadius:10,padding:"10px 14px",marginBottom:14,fontSize:12,color:"var(--accent-yellow)",display:"flex",gap:10,alignItems:"flex-start"},children:[i.jsx("span",{style:{fontSize:15,lineHeight:"18px"},children:"🧹"}),i.jsxs("div",{children:[i.jsx("div",{style:{fontWeight:600,color:"var(--accent-yellow)",marginBottom:2},children:"Key hygiene in progress"}),i.jsx("div",{children:t.map(([n,r])=>i.jsxs("span",{style:{display:"inline-block",marginRight:12},children:[i.jsx("code",{style:{color:"var(--text-primary)"},children:n})," ",r,"/",e.threshold," consecutive auth failures",r>=e.threshold?" — key auto-cleared 🚫":" — key will be auto-cleared at the threshold"]},n))}),i.jsxs("div",{style:{marginTop:4,color:"var(--accent-yellow)"},children:["After ",e.threshold," consecutive 401/403s the invalid key is removed from config; run"," ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff config set providers.<provider>.apiKey <real-key>"})," to re-enable."]})]})]})}function Cse({data:e}){return e.enabled?i.jsxs(i.Fragment,{children:[i.jsx(Me,{icon:"📦",title:"Model Availability Registry"}),i.jsxs("p",{className:"section-description",children:["The unified sub-ms FAISS/JSON snapshot the Auto router consults on every pick: verified vs unavailable models plus quota telemetry (tokens remaining, reset windows) mirrored from the ledger. Each row's ",i.jsx("strong",{children:"⏳ chip"})," is the LIVE provider-advertised context window (v1.60.x) — the real spec the router's context preflight uses, recorded by the probe from each provider's model list (Ollama /api/tags + /api/show, OpenRouter, Gemini, NIM). State changes during a session are reported to the watch daemon and recorded here immediately."]}),i.jsxs("div",{className:"stats-grid",style:{marginBottom:16},children:[i.jsxs("div",{className:"stat-card",children:[i.jsx("span",{className:"stat-icon",children:"📦"}),i.jsxs("div",{className:"stat-body",children:[i.jsx("div",{className:"stat-value",children:e.total}),i.jsx("div",{className:"stat-label",children:"Tracked models (registry)"})]})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("span",{className:"stat-icon",children:"✅"}),i.jsxs("div",{className:"stat-body",children:[i.jsx("div",{className:"stat-value",style:{color:"var(--accent-green)"},children:e.verified}),i.jsx("div",{className:"stat-label",children:"Verified"})]})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("span",{className:"stat-icon",children:"◌"}),i.jsxs("div",{className:"stat-body",children:[i.jsx("div",{className:"stat-value",style:{color:"var(--text-secondary)"},children:e.unverified}),i.jsx("div",{className:"stat-label",children:"Unverified"})]})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("span",{className:"stat-icon",children:"⛔"}),i.jsxs("div",{className:"stat-body",children:[i.jsx("div",{className:"stat-value",style:{color:"var(--accent-red)"},children:e.unavailable}),i.jsx("div",{className:"stat-label",children:"Unavailable"})]})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("span",{className:"stat-icon",children:"⏸"}),i.jsxs("div",{className:"stat-body",children:[i.jsx("div",{className:"stat-value",style:{color:"var(--accent-yellow)"},children:e.parked}),i.jsx("div",{className:"stat-label",children:"Quota-parked"})]})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("span",{className:"stat-icon",children:"⏸"}),i.jsxs("div",{className:"stat-body",children:[i.jsx("div",{className:"stat-value",style:{color:"var(--accent-purple)"},children:e.flaky??0}),i.jsx("div",{className:"stat-label",children:"Flaky mid-stream"})]})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("span",{className:"stat-icon",children:"🗑️"}),i.jsxs("div",{className:"stat-body",children:[i.jsx("div",{className:"stat-value",style:{color:"var(--text-secondary)"},children:e.deletedLocal??0}),i.jsx("div",{className:"stat-label",children:"Deleted locally"})]})]})]}),Ase(e.keyHygiene),e.providers.map(t=>i.jsx(_se,{provider:t},t.provider)),i.jsx("div",{style:{textAlign:"center",fontSize:12,color:"var(--text-muted)",marginTop:12},children:"Backend snapshot · auto-refreshes every 60s"})]}):i.jsxs("div",{style:{background:"var(--bg-card)",borderRadius:12,border:"1px dashed var(--border)",padding:"20px 24px",marginTop:24,textAlign:"center"},children:[i.jsx("div",{style:{fontSize:24,marginBottom:8},children:"📦"}),i.jsx("div",{style:{fontSize:14,fontWeight:600,color:"var(--text-primary)",marginBottom:4},children:"Model Availability Registry"}),i.jsxs("div",{style:{fontSize:12,color:"var(--text-muted)"},children:["No registry data yet — run ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff models refresh"})," or use Auto routing; the registry learns from real usage and probes."]})]})}const Tse={chat:"💬",execute:"⚙️",plan:"🗺️",edit:"✏️",skill:"🧩",learn:"📚",ci:"🔁",doctor:"🩺",probe:"🔭","spot-check":"🧪",telemetry:"📡",usage:"🧮"};function Ose(e){return{chat:"Chat",execute:"Execute",plan:"Plan",edit:"Edit",skill:"Skill",learn:"Learn",ci:"CI Review",doctor:"Doctor Probe",probe:"Probe","spot-check":"Spot-check",telemetry:"Usage mirror"}[e]||e.charAt(0).toUpperCase()+e.slice(1)}function Pse(e){return Tse[e]||"🎯"}function Rse(e){return e?new Date(e).toLocaleDateString()+" "+new Date(e).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"}):"—"}function fs({provider:e,model:t,reason:n,killed:r,transient:a,partial:s,streamedChunks:o}){const l=r===!0,c=a===!0,u=s===!0,d=u?"var(--accent-purple)":c?"var(--accent-yellow)":l?"var(--accent-red)":"var(--accent-green)",f=u?"var(--purple-soft)":c?"var(--warn-soft)":l?"var(--danger-soft)":"var(--ok-soft)";return i.jsxs("span",{title:u?`Mid-stream interruption — started streaming${typeof o=="number"?` ~${o} chunks in`:""}, died before finish (P4 M4.4); router deprioritizes flaky mid-stream providers${n?` · ${n}`:""}`:c?`Transient failure — health decayed, no flip${n?` · ${n}`:""}`:l?`Killed by this action — predictively skipped by routing${n?` · ${n}`:""}`:"Verified by this action — trusted by routing",style:{display:"inline-flex",alignItems:"center",gap:6,background:f,border:`1px solid ${d}`,color:d,padding:"3px 9px",borderRadius:8,fontSize:11,fontFamily:"'SFMono-Regular', Consolas, monospace",whiteSpace:"nowrap",transition:"transform 0.15s",cursor:"default"},onMouseEnter:h=>{h.currentTarget.style.transform="scale(1.05)"},onMouseLeave:h=>{h.currentTarget.style.transform="scale(1)"},children:[i.jsx("span",{style:{opacity:.85},children:u?"⏸":c?"~":l?"✗":"✓"}),e,"/",t.length>30?t.slice(0,27)+"…":t,(l||u)&&n&&i.jsxs("span",{style:{color:`${d}99`,fontSize:10,fontWeight:400},children:["· ",n]})]})}function Mse(e){const t=new Map;for(const r of e)t.set(`${r.provider}|${r.model}|${r.outcome}`,r);const n={unavailable:0,partial:1,verified:2,error:3};return[...t.values()].sort((r,a)=>n[r.outcome]-n[a.outcome]||a.at-r.at)}function Ise(e){for(let t=e.length-1;t>=0;t--){const n=e[t];if(n.verified+n.killed+n.transient+(n.partial||0)>0)return t}return Math.max(0,e.length-1)}function $se({timeline:e}){const[t,n]=S.useState(()=>Ise(e||[])),[r,a]=S.useState(!1),s=S.useRef(null),o=S.useRef(!1),l=(e==null?void 0:e.length)??0,c=Math.max(0,Math.min(t,l-1));S.useEffect(()=>{n(m=>Math.min(m,Math.max(0,l-1)))},[l]);const u=S.useCallback(m=>{const y=s.current;if(!y||l<=0)return;const v=y.getBoundingClientRect(),k=v.width||1,x=Math.min(1,Math.max(0,(m-v.left)/k));n(Math.min(l-1,Math.floor(x*l)))},[l]),d=m=>{o.current=!0,a(!1),u(m.clientX)};if(S.useEffect(()=>{const m=v=>{o.current&&u(v.clientX)},y=()=>{o.current=!1};return window.addEventListener("pointermove",m),window.addEventListener("pointerup",y),()=>{window.removeEventListener("pointermove",m),window.removeEventListener("pointerup",y)}},[u]),S.useEffect(()=>{if(!r||l<=1)return;const m=setInterval(()=>{n(y=>Math.min(l-1,y+1))},300);return()=>clearInterval(m)},[r,l]),S.useEffect(()=>{r&&l>1&&t>=l-1&&(a(!1),n(0))},[r,l,t]),!e||l===0)return null;const f=Math.max(1,...e.map(m=>m.verified+m.killed+m.transient+(m.partial||0))),h=m=>new Date(m).toLocaleDateString([],{month:"short",day:"numeric"}),p=e[c],g=p?Mse(p.events||[]):[];return i.jsxs("div",{style:{marginTop:12,paddingTop:10,borderTop:"1px solid var(--border-light)"},children:[i.jsxs("div",{style:{fontSize:11,fontWeight:600,color:"var(--text-secondary)",marginBottom:8,textTransform:"uppercase",letterSpacing:.4,display:"flex",alignItems:"center",gap:6,flexWrap:"wrap"},children:[i.jsxs("span",{children:["📈 Learned from real usage — last ",l," days"]}),i.jsx("span",{style:{fontWeight:400,color:"var(--text-muted)",letterSpacing:0},children:"— drag across days · click a day · play to sweep"})]}),i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:8},children:[i.jsx("button",{onClick:()=>{r?a(!1):(t>=l-1&&n(0),a(!0))},disabled:l<=1,"aria-label":r?"Pause scrub":"Play scrub",style:{background:"var(--bg-hover)",border:`1px solid ${r?"var(--accent-red)":"var(--border)"}`,color:"var(--text-primary)",padding:"3px 10px",borderRadius:6,cursor:l<=1?"not-allowed":"pointer",fontSize:11,fontWeight:600,transition:"all 0.15s",whiteSpace:"nowrap",opacity:l<=1?.5:1},children:r?"⏸ Pause":"▶ Play"}),i.jsxs("span",{style:{fontSize:11,color:"var(--text-secondary)",whiteSpace:"nowrap"},children:[h(p.day)," · ✓ ",p.verified," · ✗ ",p.killed,p.transient>0?` · ~ ${p.transient}`:"",p.partial>0?` · ⏸ ${p.partial}`:""]}),i.jsx("input",{type:"range",min:0,max:Math.max(0,l-1),step:1,value:c,onChange:m=>{a(!1),n(Number(m.target.value))},"aria-label":"Scrub action timeline",style:{flex:1,accentColor:"var(--accent-blue)",cursor:"pointer",minWidth:80}})]}),i.jsx("div",{ref:s,onPointerDown:d,style:{position:"relative",display:"flex",alignItems:"flex-end",gap:3,height:64,padding:"0 2px",cursor:"grab",userSelect:"none",touchAction:"none"},children:e.map((m,y)=>{const v=m.verified+m.killed+m.transient+(m.partial||0),k=m.verified/f*56,x=m.killed/f*56,j=m.transient/f*56,w=(m.partial||0)/f*56,b=y===c;return i.jsxs("div",{onClick:()=>{a(!1),n(y)},title:`${h(m.day)} — ✓ ${m.verified} verified · ✗ ${m.killed} killed · ~ ${m.transient} transient${(m.partial||0)>0?` · ⏸ ${m.partial} partial`:""}`,style:{flex:1,display:"flex",flexDirection:"column-reverse",alignItems:"center",gap:0,cursor:"pointer"},children:[i.jsxs("div",{style:{position:"relative",width:"100%",borderRadius:3,overflow:b?"visible":"hidden",background:v===0?"var(--bg-hover)":"transparent",height:v===0?4:56,display:"flex",flexDirection:"column-reverse",boxShadow:b?"0 0 0 1.5px var(--accent-blue)":void 0,opacity:v===0?.5:1,transition:"box-shadow 0.15s"},children:[b&&i.jsx("div",{style:{position:"absolute",top:-3,bottom:-3,width:2,left:"50%",transform:"translateX(-50%)",background:"var(--accent-blue)",borderRadius:2,pointerEvents:"none",boxShadow:"0 0 8px color-mix(in srgb, var(--accent-blue) 53%, transparent)",zIndex:1}}),m.verified>0&&i.jsx("div",{style:{height:k,background:"var(--accent-green)",minHeight:3}}),m.killed>0&&i.jsx("div",{style:{height:x,background:"var(--accent-red)",minHeight:3}}),m.transient>0&&i.jsx("div",{style:{height:j,background:"var(--accent-yellow)",minHeight:3}}),m.partial>0&&i.jsx("div",{style:{height:w,background:"var(--accent-purple)",minHeight:3}})]}),i.jsx("div",{style:{fontSize:9,color:b?"var(--accent-blue)":"var(--text-muted)",marginTop:4,whiteSpace:"nowrap",fontWeight:b?700:400},children:h(m.day)})]},m.day)})}),i.jsxs("div",{style:{display:"flex",gap:14,marginTop:6,fontSize:11,color:"var(--text-secondary)"},children:[i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-green)"},children:"■"})," verified"]}),i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-red)"},children:"■"})," killed"]}),i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-yellow)"},children:"■"})," transient"]}),i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-purple)"},children:"■"})," partial"]})]}),i.jsxs("div",{style:{marginTop:10,background:"var(--bg-card)",border:"1px solid var(--border-light)",borderRadius:8,padding:"10px 12px"},children:[i.jsxs("div",{style:{fontSize:12,fontWeight:600,color:"var(--text-primary)",marginBottom:6},children:[h(p.day)," ",i.jsx("span",{style:{color:"var(--text-secondary)",fontWeight:400},children:"— what this action learned that day"})]}),g.length===0?i.jsx("div",{style:{fontSize:12,color:"var(--text-muted)"},children:"No learning recorded that day — nothing verified, killed, or partial."}):i.jsx("div",{style:{display:"flex",flexWrap:"wrap",gap:6},children:g.map(m=>m.outcome==="unavailable"?i.jsx(fs,{provider:m.provider,model:m.model,reason:m.errorType,killed:!0},`${m.provider}|${m.model}|${m.outcome}`):m.outcome==="verified"?i.jsx(fs,{provider:m.provider,model:m.model},`${m.provider}|${m.model}|${m.outcome}`):m.outcome==="partial"?i.jsx(fs,{provider:m.provider,model:m.model,reason:m.errorType,partial:!0,streamedChunks:m.streamedChunks},`${m.provider}|${m.model}|${m.outcome}`):i.jsx(fs,{provider:m.provider,model:m.model,reason:m.errorType,transient:!0},`${m.provider}|${m.model}|${m.outcome}`))})]})]})}function Lse({entry:e}){var a,s;const[t,n]=S.useState(!0),r=(e.partial||0)>0?"var(--accent-purple)":e.killed>0?"var(--accent-red)":e.verified>0?"var(--accent-green)":"var(--accent-yellow)";return i.jsxs("div",{style:{background:"var(--bg-card)",borderRadius:12,border:`1px solid ${r}33`,borderLeft:`4px solid ${r}`,marginBottom:12,overflow:"hidden"},children:[i.jsxs("div",{onClick:()=>n(!t),style:{padding:"12px 16px",cursor:"pointer",display:"flex",alignItems:"center",gap:12,userSelect:"none"},children:[i.jsx("span",{style:{fontSize:20},children:Pse(e.action)}),i.jsxs("div",{style:{flex:1},children:[i.jsx("div",{style:{fontSize:14,fontWeight:600,color:"var(--text-primary)",marginBottom:2},children:Ose(e.action)}),i.jsxs("div",{style:{fontSize:12,color:"var(--text-secondary)",display:"flex",gap:14,flexWrap:"wrap"},children:[i.jsxs("span",{children:[i.jsxs("span",{style:{color:"var(--accent-green)"},children:["✓ ",e.verified]})," verified"]}),i.jsxs("span",{children:[i.jsxs("span",{style:{color:"var(--accent-red)"},children:["✗ ",e.killed]})," killed"]}),e.transient>0&&i.jsxs("span",{children:[i.jsxs("span",{style:{color:"var(--accent-yellow)"},children:["~ ",e.transient]})," transient"]}),(e.partial||0)>0&&i.jsxs("span",{children:[i.jsxs("span",{style:{color:"var(--accent-purple)"},children:["⏸ ",e.partial]})," partial"]})]})]}),i.jsx("span",{style:{color:"var(--text-secondary)",fontSize:16,transition:"transform 0.2s",transform:t?"rotate(90deg)":"rotate(0deg)"},children:"▶"})]}),t&&i.jsxs("div",{style:{padding:"12px 16px",borderTop:"1px solid var(--border-light)",background:"var(--bg-primary)"},children:[e.killedModels.length>0&&i.jsxs(i.Fragment,{children:[i.jsx("div",{style:{fontSize:11,fontWeight:600,color:"var(--accent-red)",marginBottom:6,textTransform:"uppercase",letterSpacing:.4},children:"⛔ Killed — skipped predictively by routing"}),i.jsx("div",{style:{display:"flex",flexWrap:"wrap",gap:6,marginBottom:14},children:e.killedModels.map(o=>i.jsx(fs,{provider:o.provider,model:o.model,reason:o.reason,killed:!0},`${o.provider}|${o.model}`))})]}),e.verifiedModels.length>0&&i.jsxs(i.Fragment,{children:[i.jsx("div",{style:{fontSize:11,fontWeight:600,color:"var(--accent-green)",marginBottom:6,textTransform:"uppercase",letterSpacing:.4},children:"✅ Verified — trusted by routing"}),i.jsx("div",{style:{display:"flex",flexWrap:"wrap",gap:6},children:e.verifiedModels.map(o=>i.jsx(fs,{provider:o.provider,model:o.model},`${o.provider}|${o.model}`))})]}),(((a=e.partialModels)==null?void 0:a.length)||0)>0&&i.jsxs(i.Fragment,{children:[i.jsx("div",{style:{fontSize:11,fontWeight:600,color:"var(--accent-purple)",marginBottom:6,textTransform:"uppercase",letterSpacing:.4},children:"⏸ Partial — mid-stream interruption (flaky provider, deprioritized)"}),i.jsx("div",{style:{display:"flex",flexWrap:"wrap",gap:6,marginBottom:14},children:e.partialModels.map(o=>i.jsx(fs,{provider:o.provider,model:o.model,reason:o.reason,partial:!0,streamedChunks:o.streamedChunks},`${o.provider}|${o.model}`))})]}),e.killedModels.length===0&&e.verifiedModels.length===0&&(((s=e.partialModels)==null?void 0:s.length)||0)===0&&i.jsx("div",{style:{fontSize:12,color:"var(--text-muted)"},children:"Only transient failures — health decayed, no model flipped."}),i.jsx($se,{timeline:e.timeline})]})]})}function Dse({registry:e}){const t=e.actionTelemetry;return t?t.enabled?i.jsxs(i.Fragment,{children:[i.jsx("h2",{className:"section-subtitle",children:"🎓 Learned from real usage — per action"}),i.jsxs("p",{className:"section-description",children:["Every LLM call writes through to the health store with its action tag. This panel shows which provider × model each action ",i.jsx("span",{style:{color:"var(--accent-green)"},children:"verified"})," (routable) or"," ",i.jsx("span",{style:{color:"var(--accent-red)"},children:"killed"})," (predictively skipped) — the exact feed that turns “fail gemini → fail nim → local” into “straight to local”."]}),i.jsxs("div",{className:"stats-grid mini",style:{marginBottom:16},children:[i.jsxs("div",{className:"stat-card",children:[i.jsx("span",{className:"stat-icon",children:"📊"}),i.jsxs("div",{className:"stat-body",children:[i.jsx("div",{className:"stat-value",children:t.total}),i.jsx("div",{className:"stat-label",children:"Telemetry events"})]})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("span",{className:"stat-icon",children:"🎯"}),i.jsxs("div",{className:"stat-body",children:[i.jsx("div",{className:"stat-value",children:t.actions.length}),i.jsx("div",{className:"stat-label",children:"Actions learning"})]})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("span",{className:"stat-icon",children:"⏱️"}),i.jsxs("div",{className:"stat-body",children:[i.jsx("div",{className:"stat-value",style:{fontSize:15},children:Rse(t.updatedAt)}),i.jsx("div",{className:"stat-label",children:"Last update"})]})]}),t.synthetic>0&&i.jsxs("div",{className:"stat-card",title:"Written by a test process — excluded from every number on this panel. The records remain in the hash-chained log.",children:[i.jsx("span",{className:"stat-icon",children:"🧪"}),i.jsxs("div",{className:"stat-body",children:[i.jsx("div",{className:"stat-value",style:{color:"var(--accent-yellow)"},children:t.synthetic}),i.jsx("div",{className:"stat-label",children:"Test-origin, excluded"})]})]})]}),t.actions.map(n=>i.jsx(Lse,{entry:n},n.action)),i.jsx("div",{style:{textAlign:"center",fontSize:12,color:"var(--text-muted)",marginTop:12},children:"All actions share one health store — a provider killed by any action is skipped by all others"})]}):i.jsxs("div",{style:{background:"var(--bg-card)",borderRadius:12,border:"1px dashed var(--border)",padding:"18px 24px",marginTop:24,textAlign:"center"},children:[i.jsx("div",{style:{fontSize:22,marginBottom:6},children:"🎓"}),i.jsx("div",{style:{fontSize:13,fontWeight:600,color:"var(--text-primary)",marginBottom:4},children:"Learned from real usage — per action"}),i.jsxs("div",{style:{fontSize:12,color:"var(--text-muted)",lineHeight:1.5},children:["No per-action telemetry yet. As you use ",i.jsx("strong",{style:{color:"var(--text-secondary)"},children:"chat"}),","," ",i.jsx("strong",{style:{color:"var(--text-secondary)"},children:"execute"}),", ",i.jsx("strong",{style:{color:"var(--text-secondary)"},children:"plan"}),", and ",i.jsx("strong",{style:{color:"var(--text-secondary)"},children:"edit"}),", each action's verified / killed provider × model combos appear here — showing exactly what routing learned from real usage."]})]}):null}function Zd({icon:e,title:t,count:n}){return n===0?null:i.jsxs("h3",{style:{fontSize:15,fontWeight:600,color:"var(--text-primary)",margin:"24px 0 12px 0",display:"flex",alignItems:"center",gap:8},children:[i.jsx("span",{children:e})," ",t,i.jsx("span",{style:{fontSize:12,color:"var(--text-secondary)",fontWeight:400,background:"var(--bg-card)",padding:"1px 8px",borderRadius:8},children:n})]})}function Bse({value:e,onChange:t,totalCount:n}){return i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12,marginBottom:14},children:[i.jsxs("div",{style:{flex:1,position:"relative",display:"flex",alignItems:"center",background:"var(--bg-card)",borderRadius:8,border:"1px solid var(--border)",transition:"border-color 0.2s"},children:[i.jsx("span",{style:{position:"absolute",left:12,fontSize:14,color:"var(--text-muted)",pointerEvents:"none"},children:"🔍"}),i.jsx("input",{type:"text",value:e,onChange:r=>t(r.target.value),placeholder:"Search models by name or provider...",style:{width:"100%",padding:"10px 12px 10px 36px",background:"transparent",border:"none",color:"var(--text-primary)",fontSize:13,outline:"none",fontFamily:"inherit"},onFocus:r=>{r.currentTarget.parentElement.style.borderColor="var(--accent-blue)"},onBlur:r=>{r.currentTarget.parentElement.style.borderColor="var(--border)"}}),e&&i.jsx("button",{onClick:()=>t(""),style:{background:"none",border:"none",color:"var(--text-muted)",cursor:"pointer",padding:"8px 12px",fontSize:14,lineHeight:1},children:"✕"})]}),i.jsxs("div",{style:{fontSize:12,color:"var(--text-secondary)",whiteSpace:"nowrap"},children:[n," model",n!==1?"s":""]})]})}function zse({value:e,onChange:t}){return i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,fontSize:12,color:"var(--text-secondary)",marginBottom:14},children:[i.jsx("span",{children:"Columns:"}),fse.map(n=>i.jsx("button",{onClick:()=>t(n),style:{padding:"4px 12px",borderRadius:6,background:e===n?"var(--accent-blue)":"var(--bg-hover)",color:e===n?"var(--text-on-accent)":"var(--text-secondary)",border:`1px solid ${e===n?"var(--accent-blue)":"var(--border)"}`,cursor:"pointer",fontSize:12,fontWeight:e===n?600:400,transition:"all 0.15s"},children:n},n))]})}function Fse({model:e,provider:t}){const n=Zh[e.status];return i.jsx("td",{style:{padding:10,verticalAlign:"top"},children:i.jsxs("div",{style:{background:n.cardBg,border:`1px solid ${n.cardBorder}44`,borderRadius:10,padding:14,display:"flex",flexDirection:"column",gap:8,height:"100%",transition:"all 0.2s ease",position:"relative",overflow:"hidden",cursor:"default"},onMouseEnter:r=>{r.currentTarget.style.borderColor=n.cardBorder,r.currentTarget.style.boxShadow=`0 2px 10px ${n.cardBorder}22`},onMouseLeave:r=>{r.currentTarget.style.borderColor=`${n.cardBorder}44`,r.currentTarget.style.boxShadow="none"},children:[i.jsx("div",{style:{position:"absolute",top:0,left:0,right:0,height:3,background:n.cardBorder,opacity:.6}}),i.jsx("div",{style:{fontSize:13,fontWeight:600,color:"var(--text-primary)",fontFamily:"'SFMono-Regular', Consolas, monospace",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",paddingTop:2},children:e.name.length>28?e.name.slice(0,25)+"…":e.name}),i.jsxs("div",{style:{fontSize:12,color:"var(--text-secondary)"},children:[rM(t)," ",a0(t)]}),i.jsxs("div",{style:{display:"inline-flex",alignItems:"center",gap:5,background:n.bg,color:n.text,padding:"3px 8px",borderRadius:6,fontSize:11,fontWeight:600,alignSelf:"flex-start"},children:[i.jsx("span",{style:{width:7,height:7,borderRadius:"50%",background:n.dot}}),e.status==="available"?"Available":e.status==="limited"?"Limited":"Unavailable"]}),e.routable===!1&&i.jsx("div",{style:{fontSize:10,color:"var(--accent-yellow)",lineHeight:1.3,marginTop:2},children:e.registryStatus==="unavailable"?e.registryDead?"✗ Not served here — this id does not exist on the endpoint":"✗ Your key cannot use this model (auth / entitlement / access)":e.registryStatus==="verified"?"◌ Parked or gone stale — not routable now":e.registryStatus==="unverified"?"◌ Listed but never verified — the router cannot pick it":"◌ Not in the registry — never probed"}),e.routable===!1&&e.registryError&&i.jsx("div",{style:{fontSize:10,color:"var(--text-muted)",lineHeight:1.3,marginTop:1},children:e.registryError.length>60?e.registryError.slice(0,57)+"…":e.registryError}),e.entitlement&&e.entitlement.tier!=="unknown"&&i.jsx("div",{title:e.entitlement.basis,style:{fontSize:10,lineHeight:1.3,marginTop:2,color:e.entitlement.tier==="free"?"var(--accent-green)":"var(--text-secondary)"},children:e.entitlement.tier==="free"?"🎁 free":"💸 metered"}),e.status!=="available"&&e.statusReason&&i.jsx("div",{style:{fontSize:10,color:"var(--text-muted)",lineHeight:1.3,marginTop:2},children:e.statusReason.length>45?e.statusReason.slice(0,42)+"…":e.statusReason}),e.parked&&e.resetsInMs!==void 0&&e.resetsInMs>0&&i.jsxs("div",{style:{fontSize:10,color:"var(--accent-yellow)",lineHeight:1.3,marginTop:4,padding:"3px 6px",borderRadius:4,background:"var(--warn-soft)",border:"1px solid color-mix(in srgb, var(--accent-yellow) 27%, transparent)"},children:["⏳ Resets in ",aM(e.resetsInMs)]})]})})}function Use({providers:e,colsPerRow:t,searchQuery:n}){const r=[];for(const l of e)for(const c of l.models)r.push({model:c,provider:l.provider});if(r.length===0)return null;let a=r;if(n.trim()){const l=n.toLowerCase().trim();a=r.filter(({model:c,provider:u})=>c.name.toLowerCase().includes(l)||a0(u).toLowerCase().includes(l)||u.toLowerCase().includes(l))}const s={available:0,limited:1,unavailable:2};a.sort((l,c)=>s[l.model.status]-s[c.model.status]);const o=[];for(let l=0;l<a.length;l+=t)o.push(a.slice(l,l+t));return i.jsxs(i.Fragment,{children:[i.jsx("h2",{className:"section-subtitle",children:"📋 Model Health Overview"}),i.jsx("p",{className:"section-description",children:"All models across all providers, color-coded by health status. Each cell shows: Model · Provider · Health."}),i.jsx("div",{style:{overflowX:"auto"},children:i.jsx("table",{style:{width:"100%",borderCollapse:"separate",borderSpacing:10,tableLayout:"fixed"},children:i.jsx("tbody",{children:o.length>0?o.map((l,c)=>i.jsxs("tr",{children:[l.map(({model:u,provider:d})=>i.jsx(Fse,{model:u,provider:d},`${d}-${u.id}`)),l.length<t&&Array.from({length:t-l.length}).map((u,d)=>i.jsx("td",{style:{padding:10}},`empty-${d}`))]},c)):i.jsx("tr",{children:i.jsxs("td",{colSpan:t,style:{textAlign:"center",padding:40,color:"var(--text-muted)",fontSize:13},children:['No models match your search "',n,'"']})})})})}),n.trim()&&a.length>0&&i.jsxs("div",{style:{textAlign:"right",fontSize:11,color:"var(--text-muted)",marginTop:4},children:["Showing ",a.length," of ",r.length," models"]})]})}function Wse(){return i.jsxs("div",{style:{background:"var(--bg-card)",borderRadius:12,border:"1px dashed var(--border)",padding:"20px 24px",marginTop:24,textAlign:"center"},children:[i.jsx("div",{style:{fontSize:24,marginBottom:8},children:"🎙️"}),i.jsx("div",{style:{fontSize:14,fontWeight:600,color:"var(--text-primary)",marginBottom:4},children:"Speech / TTS Provider"}),i.jsxs("div",{style:{fontSize:12,color:"var(--text-muted)"},children:["Speech/TTS provider support coming soon."," ",i.jsx("a",{href:"https://github.com/imdheerajKube/agent-nuvira-documentation/issues/new",target:"_blank",rel:"noopener noreferrer",style:{color:"var(--accent-blue)",textDecoration:"none",cursor:"pointer"},onMouseEnter:e=>{e.currentTarget.style.textDecoration="underline"},onMouseLeave:e=>{e.currentTarget.style.textDecoration="none"},children:"Request a provider"})]})]})}function Hse(){return i.jsxs("div",{style:{background:"var(--bg-primary)",borderRadius:10,padding:14,marginBottom:20,border:"1px solid var(--border-light)",fontSize:13,color:"var(--text-secondary)",display:"flex",flexWrap:"wrap",gap:20},children:[i.jsxs("div",{children:[i.jsx("div",{style:{fontWeight:600,color:"var(--text-primary)",marginBottom:6},children:"Color Coding"}),i.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:4},children:[i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-green)"},children:"●"})," ",i.jsx("strong",{style:{color:"var(--text-primary)"},children:"Green"})," — Working with rate limit available"]}),i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-yellow)"},children:"●"})," ",i.jsx("strong",{style:{color:"var(--text-primary)"},children:"Amber"})," — Slow / low rate limit / needs action"]}),i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-red)"},children:"●"})," ",i.jsx("strong",{style:{color:"var(--text-primary)"},children:"Red"})," — API key missing / payment needed / unreachable"]})]})]}),i.jsxs("div",{children:[i.jsx("div",{style:{fontWeight:600,color:"var(--text-primary)",marginBottom:6},children:"Provider Sections"}),i.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:3,fontSize:12},children:[i.jsxs("span",{children:["✅ ",i.jsx("strong",{children:"Cloud"})," — Online providers with active API keys"]}),i.jsxs("span",{children:["🏠 ",i.jsx("strong",{children:"Local"})," — Locally running inference servers"]}),i.jsxs("span",{children:["⛔ ",i.jsx("strong",{children:"Unavailable"})," — Missing keys or unreachable endpoints"]}),i.jsxs("span",{children:["🎙️ ",i.jsx("strong",{children:"Speech"})," — Text-to-speech / speech-to-text providers (coming)"]})]})]})]})}function Gse(){var x;const[e,t]=S.useState(null),[n,r]=S.useState(null),[a,s]=S.useState(!0),[o,l]=S.useState(null),[c,u]=S.useState(4),[d,f]=S.useState(""),h=r0(),p=S.useRef(!0),g=S.useRef(null),m=S.useRef(!1);function y(){g.current&&clearTimeout(g.current),g.current=setTimeout(()=>{p.current&&v()},pse)}async function v(){s(!0),l(null),m.current=!1;try{const[j,w]=await Promise.all([gse(()=>{m.current=!0}),vse(()=>{m.current=!0})]);if(!p.current)return;t(j),r(w),m.current&&y()}catch(j){if(!p.current)return;l(j instanceof Error&&j.message?j.message:"Failed to fetch model status"),m.current&&y()}finally{p.current&&s(!1)}}S.useEffect(()=>{p.current=!0,v();const j=setInterval(v,hse);return()=>{p.current=!1,clearInterval(j),g.current&&clearTimeout(g.current)}},[]);function k(j){const w=[],b=[],N=[],E=[],O={available:0,limited:1,unavailable:2};for(const C of j.providers)dse.has(C.provider)?N.push(C):use.has(C.provider)?b.push(C):C.overallStatus==="available"?w.push(C):E.push(C);return w.sort((C,P)=>O[C.overallStatus]-O[P.overallStatus]),b.sort((C,P)=>O[C.overallStatus]-O[P.overallStatus]),N.sort((C,P)=>O[C.overallStatus]-O[P.overallStatus]),E.sort((C,P)=>O[C.overallStatus]-O[P.overallStatus]),{available:w,local:b,speech:N,unavailable:E}}return i.jsxs(i.Fragment,{children:[i.jsx(Me,{icon:"🧠",title:"Model Provider Status",description:"Real-time health check of all AI providers and their available models. Providers are grouped into sections: Available cloud → Local → Unavailable."}),i.jsx(xse,{onRefresh:v,loading:a}),i.jsx(Hse,{}),a&&!e&&i.jsxs("div",{className:"loading-state",children:[i.jsx("div",{className:"loading-spinner"}),i.jsx("p",{children:"Testing provider connections…"})]}),o&&i.jsxs("div",{className:"empty-state",style:{color:"var(--accent-red)",border:"1px solid color-mix(in srgb, var(--accent-red) 27%, transparent)",borderRadius:10,padding:16,marginBottom:16},children:["⚠️ ",o]}),e&&i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"stats-grid",style:{marginBottom:16},children:[i.jsxs("div",{className:"stat-card",children:[i.jsx("span",{className:"stat-icon",children:"🧠"}),i.jsxs("div",{className:"stat-body",children:[i.jsx("div",{className:"stat-value",children:e.totalModels}),i.jsx("div",{className:"stat-label",children:"Listed models (live probe)"})]})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("span",{className:"stat-icon",children:"📦"}),i.jsxs("div",{className:"stat-body",children:[i.jsx("div",{className:"stat-value",children:(h==null?void 0:h.trackedModels)??(n==null?void 0:n.total)??0}),i.jsx("div",{className:"stat-label",children:"Tracked models (registry)"})]})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("span",{className:"stat-icon",children:"✅"}),i.jsxs("div",{className:"stat-body",children:[i.jsx("div",{className:"stat-value",style:{color:"var(--accent-green)"},children:e.available}),i.jsx("div",{className:"stat-label",children:"Available"})]})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("span",{className:"stat-icon",children:"🟡"}),i.jsxs("div",{className:"stat-body",children:[i.jsx("div",{className:"stat-value",style:{color:"var(--accent-yellow)"},children:e.limited}),i.jsx("div",{className:"stat-label",children:"Limited"})]})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("span",{className:"stat-icon",children:"🔴"}),i.jsxs("div",{className:"stat-body",children:[i.jsx("div",{className:"stat-value",style:{color:"var(--accent-red)"},children:e.unavailable}),i.jsx("div",{className:"stat-label",children:"Unavailable"})]})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("span",{className:"stat-icon",children:"🔌"}),i.jsxs("div",{className:"stat-body",children:[i.jsx("div",{className:"stat-value",children:e.providers.length}),i.jsx("div",{className:"stat-label",children:"Listed providers (live probe)"})]})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("span",{className:"stat-icon",children:"🗂️"}),i.jsxs("div",{className:"stat-body",children:[i.jsx("div",{className:"stat-value",children:(h==null?void 0:h.trackedProviders)??((x=n==null?void 0:n.providers)==null?void 0:x.length)??0}),i.jsx("div",{className:"stat-label",children:"Tracked providers (registry)"})]})]})]}),i.jsx(wse,{data:e}),(()=>{const{available:j,local:w,speech:b,unavailable:N}=k(e);return i.jsxs(i.Fragment,{children:[i.jsx(Zd,{icon:"✅",title:"Available Cloud Providers",count:j.length}),j.map(E=>i.jsx(Qd,{provider:E},E.provider)),i.jsx(Zd,{icon:"🏠",title:"Local Providers",count:w.length}),w.map(E=>i.jsx(Qd,{provider:E},E.provider)),i.jsx(Zd,{icon:"⛔",title:"Unavailable Providers",count:N.length}),N.map(E=>i.jsx(Qd,{provider:E},E.provider)),i.jsx(Zd,{icon:"🎙️",title:"Speech / TTS Providers",count:b.length}),b.map(E=>i.jsx(Qd,{provider:E},E.provider))]})})(),i.jsx(Bse,{value:d,onChange:f,totalCount:e.providers.reduce((j,w)=>j+w.models.length,0)}),i.jsx(zse,{value:c,onChange:u}),i.jsx(Use,{providers:e.providers,colsPerRow:c,searchQuery:d}),n&&i.jsx(Cse,{data:n}),n&&i.jsx(Dse,{registry:n}),e&&!n&&i.jsxs("div",{style:{background:"var(--bg-card)",borderRadius:12,border:"1px dashed var(--border)",padding:"14px 20px",marginTop:24,fontSize:12,color:"var(--text-secondary)",lineHeight:1.6},children:["📦 Registry & telemetry sections are hidden — this dashboard server did not return model-registry data (it may be an"," ",i.jsx("strong",{style:{color:"var(--text-primary)"},children:"older version"}),"). Restart the dashboard from the latest install to see them."]}),i.jsx(Wse,{}),i.jsxs("div",{style:{textAlign:"center",fontSize:12,color:"var(--text-muted)",marginTop:16},children:["Last checked: ",new Date(e.lastChecked).toLocaleTimeString()," · ","Auto-refreshes every 60s"]})]})]})}const qse={local:"💻",groq:"🟢",nim:"🔶",gemini:"🔷",openrouter:"🟣"},Kse={local:"Ollama (Local)",groq:"Groq",nim:"NVIDIA NIM",gemini:"Gemini",openrouter:"OpenRouter"},Vse={trivial:"🟢",simple:"🔵",moderate:"🟡",complex:"🟠",critical:"🔴"},iM={trivial:"🟢 trivial",simple:"🔵 simple",moderate:"🟡 moderate",complex:"🟠 complex",critical:"🔴 critical"},Yse={chat:"💬 chat",orchestrator:"🔀 orchestrator",explain:"🔍 explain",benchmark:"📈 benchmark",eval:"🎯 eval"},Ki=[{key:"request",icon:"🎯",title:"Request"},{key:"candidates",icon:"⚖️",title:"Candidates"},{key:"exclusions",icon:"🚫",title:"Exclusions"},{key:"pick",icon:"✅",title:"Pick"}],Xse=2400;function Bg(e){return qse[e]||"🔌"}function tE(e){return Kse[e]||e}function i0(e){return e&&Yse[e]||e||"unknown"}function Qse(e){const t=Date.now()-e;return t<6e4?"just now":t<36e5?`${Math.floor(t/6e4)}m ago`:t<864e5?`${Math.floor(t/36e5)}h ago`:`${Math.floor(t/864e5)}d ago`}function nE(e){const t=Math.ceil(e/6e4);return t>=60?`${Math.floor(t/60)}h ${t%60}m`:`${t}m`}const Zse=8;function rE(e,t){const n=t.quota,r=n==null?void 0:n.entries.find(s=>s.provider===e);return r!=null&&r.parked?r.resetsInMs>0?`quota exhausted — auto re-enables in ${nE(r.resetsInMs)}`:"quota exhausted — parked":r&&r.cooldownRemaining>0?`circuit-breaker cooldown — ${nE(r.cooldownRemaining)} remaining`:t.providers.some(s=>s.provider===e)?"ranked below the candidate cutoff for this complexity":"not scored for this complexity (no benchmark quality data)"}function Jse(e){var s,o,l;const t=new Set;for(const c of e.providers)t.add(c.provider);if(e.usage)for(const c of Object.keys(e.usage.byProvider))t.add(c);if(e.bestModels)for(const c of e.bestModels)t.add(c.model.split("/")[0]);if(e.quota)for(const c of e.quota.entries)t.add(c.provider);const n=new Map(e.preference.map(c=>[c.complexity,c])),r=[],a=[...e.history??[]].sort((c,u)=>(u.timestamp??0)-(c.timestamp??0));for(const c of a.slice(0,Zse)){const u=n.get(c.complexity),d=(s=u==null?void 0:u.providers)!=null&&s.length?u.providers.map(g=>({provider:g.provider,score:g.score,reason:g.reason})):[{provider:c.provider,score:c.score,reason:"actual pick recorded"}];d.some(g=>g.provider===c.provider)||d.push({provider:c.provider,score:c.score,reason:"actual pick recorded"});const f=new Set(d.map(g=>g.provider)),h=[...t].filter(g=>!f.has(g)).map(g=>({provider:g,reason:rE(g,e)})),p=(o=d.find(g=>g.provider===c.provider))==null?void 0:o.reason;r.push({id:c.id,label:`${i0(c.source)} · ${c.complexity} · ${(c.task||c.agentType).slice(0,26)}`,real:!0,complexity:c.complexity,task:c.task||c.agentType,agentType:c.agentType,source:c.source,timestamp:c.timestamp,winner:`${c.provider}/${c.model}`,winnerScore:c.score,winnerReason:p,candidates:d,exclusions:h})}if(r.length===0)for(const c of e.preference){const u=c.winner.split("/"),d=c.providers.map(g=>({provider:g.provider,score:g.score,reason:g.reason})),f=new Set(d.map(g=>g.provider)),h=[...t].filter(g=>!f.has(g)).map(g=>({provider:g,reason:rE(g,e)})),p=u[0];r.push({id:`profile-${c.complexity}`,label:`${iM[c.complexity]||c.complexity} — what the router would pick`,real:!1,complexity:c.complexity,task:p?`A ${c.complexity} task (auto-routed)`:`A ${c.complexity} task`,agentType:"chat",winner:c.winner,winnerScore:c.score,winnerReason:(l=d.find(g=>g.provider===p))==null?void 0:l.reason,candidates:d,exclusions:h})}return r}function eoe(e,t){switch(e){case"request":return`A ${t.complexity} task arrives${t.source?` from ${i0(t.source)}`:""} and must be routed.`;case"candidates":return`${t.candidates.length} provider${t.candidates.length!==1?"s":""} are scored against the ${t.complexity} weight profile.`;case"exclusions":return t.exclusions.length>0?`${t.exclusions.length} provider${t.exclusions.length!==1?"s":""} known to the system are skipped before scoring.`:"Every known provider was scored — nothing was skipped.";case"pick":return t.winnerReason?`The top score wins: ${t.winner.split("/")[0]} ranked first — ${t.winnerReason}.`:`The top score wins: ${t.winner}.`}}function toe({value:e,color:t}){const n=Math.min(100,Math.max(0,e*100));return i.jsx("div",{style:{flex:1,background:"var(--bg-primary)",borderRadius:4,height:6,overflow:"hidden",border:"1px solid var(--border-light)"},children:i.jsx("div",{style:{width:`${n}%`,background:t,height:"100%",transition:"width 0.4s ease"}})})}function noe({icon:e,title:t,narration:n}){return i.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:10,marginBottom:14},children:[i.jsx("span",{style:{fontSize:20,lineHeight:"24px"},children:e}),i.jsxs("div",{children:[i.jsx("div",{style:{fontSize:14,fontWeight:600,color:"var(--text-primary)"},children:t}),i.jsx("div",{style:{fontSize:12,color:"var(--text-secondary)",marginTop:2},children:n})]})]})}function roe({routing:e}){const t=S.useMemo(()=>Jse(e),[e]),[n,r]=S.useState(""),[a,s]=S.useState(0),[o,l]=S.useState(!1);if(S.useEffect(()=>{t.length!==0&&(t.some(p=>p.id===n)||(r(t[0].id),s(0)))},[t,n]),S.useEffect(()=>{if(!o||t.length===0)return;const p=setInterval(()=>{s(g=>(g+1)%Ki.length)},Xse);return()=>clearInterval(p)},[o,t.length]),t.length===0)return null;const c=t.find(p=>p.id===n)??t[0],u=Ki[a],d=()=>{s(p=>(p+Ki.length-1)%Ki.length),l(!1)},f=()=>{s(p=>(p+1)%Ki.length),l(!1)},h=()=>l(p=>!p);return i.jsxs("div",{style:{background:"var(--bg-card)",borderRadius:12,border:"1px solid var(--border-light)",padding:"18px 20px",marginBottom:16},children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:4},children:[i.jsx("span",{style:{fontSize:20},children:"🎬"}),i.jsx("h3",{style:{fontSize:15,fontWeight:600,color:"var(--text-primary)",margin:0},children:"Why did the router pick this?"}),c.real&&i.jsx("span",{style:{fontSize:11,padding:"1px 8px",borderRadius:10,background:"var(--ok-soft)",border:"1px solid var(--accent-green)",color:"var(--accent-green)"},children:"✓ real decision"})]}),i.jsx("p",{style:{fontSize:12,color:"var(--text-secondary)",margin:"2px 0 12px 0"},children:"Narrated step-by-step replay of a routing decision — request, candidates, exclusions, and the pick. Scrubbable, or hit play."}),i.jsx("select",{"aria-label":"Routing decision to replay",value:n,onChange:p=>{r(p.target.value),s(0),l(!1)},style:{width:"100%",marginBottom:16,padding:"8px 10px",background:"var(--bg-primary)",color:"var(--text-primary)",fontSize:12,border:"1px solid var(--border)",borderRadius:8,outline:"none"},children:t.map(p=>i.jsxs("option",{value:p.id,style:{background:"var(--bg-primary)",color:"var(--text-primary)"},children:[p.real?"● ":"○ ",p.label]},p.id))}),i.jsx(noe,{icon:u.icon,title:`${a+1}. ${u.title}${a>0?` — ${c.complexity}`:""}`,narration:eoe(u.key,c)}),u.key==="request"&&i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"14px 16px"},children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,flexWrap:"wrap",marginBottom:8},children:[i.jsxs("span",{style:{fontSize:12,padding:"2px 10px",borderRadius:12,background:"var(--bg-card)",border:"1px solid var(--border)",color:"var(--text-primary)"},children:[Vse[c.complexity]||"•"," ",iM[c.complexity]||c.complexity]}),i.jsxs("span",{style:{fontSize:12,padding:"2px 10px",borderRadius:12,background:"var(--bg-card)",border:"1px solid var(--border)",color:"var(--text-secondary)"},children:["🤖 ",c.agentType]}),c.source&&i.jsx("span",{style:{fontSize:12,padding:"2px 10px",borderRadius:12,background:"var(--bg-card)",border:"1px solid var(--border)",color:"var(--text-secondary)"},children:i0(c.source)}),c.timestamp&&i.jsx("span",{style:{fontSize:11,color:"var(--text-muted)",marginLeft:"auto"},children:Qse(c.timestamp)})]}),i.jsx("div",{style:{fontSize:13,color:"var(--text-primary)"},children:c.task})]}),u.key==="candidates"&&i.jsxs("div",{children:[c.candidates.map((p,g)=>{const m=p.provider===c.winner.split("/")[0];return i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,padding:"8px 12px",background:m?"var(--ok-soft)":"var(--bg-primary)",border:`1px solid ${m?"var(--accent-green)":"var(--border-light)"}`,borderRadius:8,marginBottom:6},children:[i.jsxs("span",{style:{width:18,fontSize:11,color:"var(--text-muted)",textAlign:"right"},children:[g+1,"."]}),i.jsxs("span",{style:{width:104,color:m?"var(--accent-green)":"var(--text-primary)",fontWeight:m?600:400,whiteSpace:"nowrap",fontSize:12},children:[Bg(p.provider)," ",tE(p.provider).split(" ")[0],m&&" 👑"]}),i.jsx(toe,{value:p.score,color:m?"var(--accent-green)":"var(--accent-blue)"}),i.jsx("span",{style:{width:44,textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:11,color:"var(--text-secondary)"},children:p.score.toFixed(3)})]},p.provider)}),c.candidates.length>0&&i.jsxs("div",{style:{marginTop:10},children:[i.jsx("div",{style:{fontSize:11,color:"var(--text-muted)",marginBottom:4},children:"Why each ranked where it did"}),c.candidates.map(p=>i.jsxs("div",{style:{fontSize:12,color:"var(--text-secondary)",marginBottom:3},children:[i.jsx("span",{style:{color:"var(--text-primary)"},children:p.provider}),": ",p.reason||"scored"]},p.provider))]})]}),u.key==="exclusions"&&(c.exclusions.length>0?i.jsx("div",{children:c.exclusions.map(p=>i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,padding:"8px 12px",background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:8,marginBottom:6},children:[i.jsx("span",{style:{fontSize:13},children:"🚫"}),i.jsxs("span",{style:{width:110,color:"var(--text-primary)",whiteSpace:"nowrap",fontSize:12},children:[Bg(p.provider)," ",tE(p.provider).split(" ")[0]]}),i.jsx("span",{style:{flex:1,fontSize:12,color:"var(--text-secondary)"},children:p.reason})]},p.provider))}):i.jsx("div",{style:{background:"var(--bg-primary)",border:"1px dashed var(--border)",borderRadius:10,padding:"14px 16px",color:"var(--text-secondary)",fontSize:13},children:"✅ No exclusions — every provider known to the system was scored for this decision."})),u.key==="pick"&&i.jsxs("div",{style:{background:"var(--ok-soft)",border:"1px solid var(--accent-green)",borderRadius:10,padding:"16px 18px"},children:[i.jsx("div",{style:{fontSize:12,color:"var(--accent-green)",fontWeight:600,marginBottom:6},children:"🏆 ROUTER PICK"}),i.jsxs("div",{style:{fontSize:16,fontWeight:700,color:"var(--text-primary)",fontFamily:"'SFMono-Regular', Consolas, monospace",marginBottom:4},children:[Bg(c.winner.split("/")[0])," ",c.winner]}),i.jsxs("div",{style:{fontSize:12,color:"var(--text-secondary)",marginBottom:10},children:["composite score ",i.jsx("span",{style:{fontFamily:"'SFMono-Regular', Consolas, monospace",color:"var(--accent-green)"},children:c.winnerScore.toFixed(3)}),!c.real&&" · profile preview"]}),c.winnerReason&&i.jsxs("div",{style:{fontSize:12,color:"var(--text-secondary)",borderTop:"1px solid color-mix(in srgb, var(--accent-green) 33%, transparent)",paddingTop:8},children:[i.jsx("span",{style:{color:"var(--text-primary)"},children:"Why:"})," ",c.winnerReason]})]}),i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12,marginTop:16},children:[i.jsx("button",{onClick:d,"aria-label":"Previous step",style:zg,children:"◀"}),i.jsx("button",{onClick:h,"aria-label":o?"Pause playback":"Play playback",style:{...zg,minWidth:84,color:o?"var(--accent-yellow)":"var(--accent-green)"},children:o?"⏸ Pause":"▶ Play"}),i.jsx("button",{onClick:f,"aria-label":"Next step",style:zg,children:"▶"}),i.jsx("div",{style:{display:"flex",gap:6,marginLeft:8},children:Ki.map((p,g)=>i.jsx("button",{"aria-label":`Go to step ${g+1}: ${p.title}`,onClick:()=>{s(g),l(!1)},style:{width:22,height:22,borderRadius:11,border:"none",cursor:"pointer",fontSize:10,lineHeight:"22px",padding:0,background:g===a?"var(--accent-blue)":"var(--bg-hover)",color:g===a?"var(--bg-primary)":"var(--text-secondary)"},title:p.title,children:p.icon},p.key))}),i.jsxs("span",{style:{marginLeft:"auto",fontSize:11,color:"var(--text-muted)"},children:["step ",a+1,"/",Ki.length]})]})]})}const zg={background:"var(--bg-hover)",color:"var(--text-primary)",border:"1px solid var(--border)",borderRadius:8,padding:"6px 12px",fontSize:13,cursor:"pointer",transition:"background 0.15s"},aoe={local:"💻",groq:"🟢",nim:"🔶",gemini:"🔷",openrouter:"🟣"},ioe={local:"Ollama (Local)",groq:"Groq",nim:"NVIDIA NIM",gemini:"Gemini",openrouter:"OpenRouter"},sM={trivial:"🟢",simple:"🔵",moderate:"🟡",complex:"🟠",critical:"🔴"};function Ur(e){return aoe[e]||"🔌"}function xi(e){return ioe[e]||e}function Jh(e,t=1){return`${(e*100).toFixed(t)}%`}function soe(e){return`$${e.toFixed(6)}`}function rr({icon:e,title:t,subtitle:n,children:r}){return i.jsxs("div",{style:{background:"var(--bg-card)",borderRadius:12,border:"1px solid var(--border-light)",padding:"18px 20px",marginBottom:16},children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:4},children:[i.jsx("span",{style:{fontSize:20},children:e}),i.jsx("h3",{style:{fontSize:15,fontWeight:600,color:"var(--text-primary)",margin:0},children:t})]}),n&&i.jsx("p",{style:{fontSize:12,color:"var(--text-secondary)",margin:"2px 0 12px 0"},children:n}),!n&&i.jsx("div",{style:{height:6}}),r]})}function s0({value:e,color:t}){const n=Math.min(100,Math.max(0,e*100));return i.jsx("div",{style:{flex:1,background:"var(--bg-primary)",borderRadius:4,height:6,overflow:"hidden",border:"1px solid var(--border-light)"},children:i.jsx("div",{style:{width:`${n}%`,background:t,height:"100%",transition:"width 0.4s ease"}})})}function li(e,t,n="var(--text-secondary)"){return{fontSize:10,padding:"1px 7px",borderRadius:9,background:e,border:`1px solid ${t}`,color:n,fontFamily:"'SFMono-Regular', Consolas, monospace",whiteSpace:"nowrap"}}function ooe(){return i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px dashed var(--border)",borderRadius:10,padding:"18px 20px",color:"var(--text-secondary)",fontSize:13,textAlign:"center"},children:["📊 No routing data yet — run ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff benchmark"})," to populate provider quality scores, or use Auto routing (",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff model switch auto"}),") to build per-agent best-model stats over time."]})}const loe={chat:"💬 chat",orchestrator:"🔀 orchestrator",explain:"🔍 explain",benchmark:"📈 benchmark",eval:"🎯 eval"},coe={trivial:"🟢 trivial",simple:"🔵 simple",moderate:"🟡 moderate",complex:"🟠 complex",critical:"🔴 critical"};function oM(e){return loe[e]||e}function lM(e){const t=Date.now()-e;return t<6e4?"just now":t<36e5?`${Math.floor(t/6e4)}m ago`:t<864e5?`${Math.floor(t/36e5)}h ago`:`${Math.floor(t/864e5)}d ago`}function aE(e){if(e<=0)return"now";const t=Math.floor(e/36e5),n=Math.floor(e%36e5/6e4);return t>0?`${t}h ${n}m`:n>0?`${n}m`:`${Math.ceil(e/1e3)}s`}function uoe({label:e,value:t,total:n,color:r}){const a=n>0?t/n*100:0;return i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:5},children:[i.jsx("span",{style:{width:110,color:"var(--text-primary)",whiteSpace:"nowrap",fontSize:12},children:e}),i.jsx("div",{style:{flex:1,background:"var(--bg-primary)",borderRadius:4,height:6,overflow:"hidden",border:"1px solid var(--border-light)"},children:i.jsx("div",{style:{width:`${Math.min(100,a)}%`,background:r,height:"100%",transition:"width 0.4s ease"}})}),i.jsx("span",{style:{width:34,textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:11,color:"var(--text-secondary)"},children:t})]})}function doe({usage:e}){if(!e.total)return null;const t=e.total,n=Object.entries(e.byProvider).sort((a,s)=>s[1]-a[1]).slice(0,6),r=Object.entries(e.byModel).sort((a,s)=>s[1]-a[1]).slice(0,5);return i.jsxs(rr,{icon:"🧮",title:"Routing Usage — actual picks over time",subtitle:"Recorded from live chat, orchestrator runs, explain snapshots, benchmark --routing, and eval --routing",children:[i.jsxs("div",{style:{display:"flex",gap:20,flexWrap:"wrap",marginBottom:14},children:[i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"12px 18px",textAlign:"center"},children:[i.jsx("div",{style:{fontSize:22,fontWeight:700,color:"var(--text-primary)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:e.total}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:"total decisions"})]}),i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"12px 18px",textAlign:"center"},children:[i.jsx("div",{style:{fontSize:22,fontWeight:700,color:e.last24h>0?"var(--accent-green)":"var(--text-secondary)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:e.last24h}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:"last 24h"})]})]}),i.jsx("div",{style:{fontSize:12,color:"var(--text-secondary)",marginBottom:6},children:"By provider"}),n.map(([a,s])=>i.jsx(uoe,{label:`${Ur(a)} ${xi(a).split(" ")[0]}`,value:s,total:t,color:"var(--accent-blue)"},a)),Object.keys(e.bySource).length>0&&i.jsx("div",{style:{marginTop:12,display:"flex",gap:6,flexWrap:"wrap"},children:Object.entries(e.bySource).sort((a,s)=>s[1]-a[1]).map(([a,s])=>i.jsxs("span",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:20,padding:"3px 10px",fontSize:11,color:"var(--text-primary)"},children:[oM(a)," · ",s]},a))}),r.length>0&&i.jsxs("div",{style:{marginTop:14},children:[i.jsx("div",{style:{fontSize:12,color:"var(--text-secondary)",marginBottom:6},children:"Most-picked models"}),r.map(([a,s])=>i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:5},children:[i.jsx("span",{style:{flex:1,color:"var(--text-primary)",fontSize:12,fontFamily:"'SFMono-Regular', Consolas, monospace",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},title:a,children:a.length>42?a.slice(0,39)+"…":a}),i.jsx("span",{style:{width:34,textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:11,color:"var(--text-secondary)"},children:s})]},a))]})]})}function foe({history:e}){return e.length?i.jsx(rr,{icon:"🕓",title:"Audit Trail — routing decision timeline",subtitle:"Every explain snapshot (and routing-mode pick) persisted for transparency",children:i.jsx("div",{style:{maxHeight:320,overflowY:"auto",paddingRight:4},children:e.map(t=>i.jsxs("div",{style:{display:"flex",gap:10,padding:"8px 4px",borderBottom:"1px solid var(--border-light)"},children:[i.jsx("div",{style:{width:52,flexShrink:0,fontSize:11,color:"var(--text-muted)",paddingTop:2},children:lM(t.timestamp)}),i.jsxs("div",{style:{flex:1,minWidth:0},children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,flexWrap:"wrap"},children:[i.jsx("span",{style:{fontSize:11,padding:"1px 8px",borderRadius:10,background:"var(--bg-primary)",border:"1px solid var(--border)",color:"var(--text-secondary)"},children:oM(t.source)}),i.jsxs("span",{style:{fontSize:12,fontWeight:600,color:"var(--accent-green)",fontFamily:"'SFMono-Regular', Consolas, monospace",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},title:`${t.provider}/${t.model}`,children:[Ur(t.provider)," ",t.provider,"/",t.model.length>26?t.model.slice(0,23)+"…":t.model]}),t.complexity&&i.jsx("span",{style:{fontSize:11,color:"var(--text-muted)"},children:coe[t.complexity]||t.complexity}),t.agenticCapable===!1&&i.jsx("span",{style:li("var(--danger-soft)","var(--accent-red)"),title:t.overrideReason?`override: ${t.overrideReason}`:void 0,children:"⚠️ weak model"}),t.fallbackFrom&&i.jsxs("span",{style:li("var(--bg-tertiary)","var(--border-hover)"),children:["↩ from ",t.fallbackFrom]})]}),i.jsx("div",{style:{fontSize:12,color:"var(--text-secondary)",marginTop:3,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:t.task,children:t.task||t.agentType})]})]},t.id))})}):null}function hoe({routing:e}){return e.preference.length?i.jsx(rr,{icon:"🤖",title:"Auto Router — What the agent would pick",subtitle:"Complexity-weighted scoring across reasoning, speed, cost, privacy, and reliability (real provider pricing)",children:i.jsx("div",{style:{overflowX:"auto"},children:i.jsxs("table",{style:{width:"100%",borderCollapse:"collapse",fontSize:13},children:[i.jsx("thead",{children:i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)",color:"var(--text-secondary)"},children:[i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Complexity"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Winner"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Score"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"All providers"})]})}),i.jsx("tbody",{children:e.preference.map(t=>i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)"},children:[i.jsxs("td",{style:{padding:"10px 12px",color:"var(--text-primary)",whiteSpace:"nowrap"},children:[sM[t.complexity]||"•"," ",t.complexity]}),i.jsx("td",{style:{padding:"10px 12px",whiteSpace:"nowrap"},children:i.jsxs("span",{style:{color:"var(--accent-green)",fontWeight:600},children:[Ur(t.winner.split("/")[0])," ",t.winner]})}),i.jsx("td",{style:{padding:"10px 12px",fontFamily:"'SFMono-Regular', Consolas, monospace",color:"var(--text-secondary)"},children:t.score.toFixed(3)}),i.jsx("td",{style:{padding:"10px 12px",minWidth:300},children:t.providers.map((n,r)=>i.jsxs("div",{style:{marginBottom:5},children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[i.jsxs("span",{style:{width:16,fontSize:11,color:"var(--text-muted)",textAlign:"right"},children:[r+1,"."]}),i.jsxs("span",{style:{width:90,color:"var(--text-primary)",whiteSpace:"nowrap",fontSize:12},children:[Ur(n.provider)," ",xi(n.provider).split(" ")[0]]}),i.jsx(s0,{value:n.score,color:r===0?"var(--accent-green)":"var(--accent-blue)"}),i.jsx("span",{style:{width:40,textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:11,color:"var(--text-secondary)"},children:n.score.toFixed(2)})]}),(n.capabilityFit!==void 0||n.costSource||n.contextUtilization!==void 0)&&i.jsxs("div",{style:{display:"flex",gap:6,flexWrap:"wrap",paddingLeft:16,marginTop:2},children:[n.capabilityFit!==void 0&&i.jsxs("span",{style:li("var(--bg-tertiary)","var(--border-hover)"),children:["🎯 fit ",n.capabilityFit,"%"]}),n.costSource==="measured"&&n.costBasis?i.jsxs("span",{style:li("var(--ok-soft)","var(--accent-green)","var(--accent-green)"),children:["📏 measured ",mt(n.costBasis.inputTokens),"→",mt(n.costBasis.outputTokens)," tok"]}):i.jsx("span",{style:li("var(--bg-tertiary)","var(--border-hover)"),children:"📐 estimated"}),n.contextUtilization!==void 0&&n.contextWindowTokens!==void 0&&i.jsxs("span",{style:li("var(--bg-tertiary)","var(--accent-blue)","var(--accent-blue)"),children:["⏳ ctx ",n.contextUtilization,"% (",mt(n.contextWindowTokens)," tok)"]})]})]},n.provider))})]},t.complexity))})]})})}):null}function poe({routing:e}){return e.providers.length?i.jsx(rr,{icon:"📈",title:"Provider Benchmark Quality",subtitle:"Measured from your own `buff benchmark` runs — blended into Auto routing decisions",children:i.jsx("div",{style:{overflowX:"auto"},children:i.jsxs("table",{style:{width:"100%",borderCollapse:"collapse",fontSize:13},children:[i.jsx("thead",{children:i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)",color:"var(--text-secondary)"},children:[i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Provider"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Runs"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Avg Quality"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Pass Rate"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Total Cost"})]})}),i.jsx("tbody",{children:e.providers.map(t=>i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)"},children:[i.jsxs("td",{style:{padding:"10px 12px",color:"var(--text-primary)",whiteSpace:"nowrap"},children:[Ur(t.provider)," ",xi(t.provider)]}),i.jsx("td",{style:{padding:"10px 12px",color:"var(--text-secondary)"},children:t.runs}),i.jsx("td",{style:{padding:"10px 12px"},children:i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[i.jsx(s0,{value:t.avgQuality,color:"var(--accent-blue)"}),i.jsx("span",{style:{fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12,color:"var(--text-secondary)",width:44,textAlign:"right"},children:Jh(t.avgQuality)})]})}),i.jsx("td",{style:{padding:"10px 12px",color:t.passRate>=.8?"var(--accent-green)":"var(--accent-yellow)"},children:Jh(t.passRate)}),i.jsx("td",{style:{padding:"10px 12px",fontFamily:"'SFMono-Regular', Consolas, monospace",color:"var(--text-secondary)"},children:soe(t.totalCostUsd)})]},t.provider))})]})})}):null}const iE=["trivial","simple","moderate","complex","critical"];function moe(e){return e>=.7?"var(--accent-green)":e>=.45?"var(--accent-yellow)":"var(--accent-red)"}function goe({bandit:e}){const t=Object.keys(e.priors).sort();if(!e.enabled||t.length===0)return null;const n=e.learningHistory.slice(-15).reverse();return i.jsxs(rr,{icon:"🎰",title:"Bandit Learning — Thompson-sampling priors",subtitle:"Beta(α, β) per provider × complexity bucket, learned from real task outcomes (routing.bandit = true). Higher expected win rate = more successful history.",children:[i.jsx("div",{style:{overflowX:"auto"},children:i.jsxs("table",{style:{width:"100%",borderCollapse:"collapse",fontSize:12},children:[i.jsx("thead",{children:i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)",color:"var(--text-secondary)"},children:[i.jsx("th",{style:{padding:"8px 10px",textAlign:"left",fontWeight:500},children:"Provider"}),iE.map(r=>i.jsxs("th",{style:{padding:"8px 10px",textAlign:"center",fontWeight:500},children:[sM[r]||"•"," ",r]},r))]})}),i.jsx("tbody",{children:t.map(r=>i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)"},children:[i.jsxs("td",{style:{padding:"8px 10px",color:"var(--text-primary)",whiteSpace:"nowrap"},children:[Ur(r)," ",xi(r).split(" ")[0]]}),iE.map(a=>{var o;const s=(o=e.priors[r])==null?void 0:o[a];return!s||s.alpha===0&&s.beta===0?i.jsx("td",{style:{padding:"8px 10px",textAlign:"center",color:"var(--text-muted)"},children:"·"},a):i.jsxs("td",{style:{padding:"8px 10px",textAlign:"center"},children:[i.jsxs("div",{style:{fontSize:13,fontWeight:600,color:moe(s.expectedWinRate),fontFamily:"'SFMono-Regular', Consolas, monospace"},children:[(s.expectedWinRate*100).toFixed(0),"%"]}),i.jsxs("div",{style:{fontSize:10,color:"var(--text-secondary)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:["α",s.alpha," β",s.beta]})]},a)})]},r))})]})}),n.length>0&&i.jsxs("div",{style:{marginTop:16},children:[i.jsx("div",{style:{fontSize:12,color:"var(--text-secondary)",marginBottom:8},children:"Recent learning history"}),i.jsx("div",{style:{maxHeight:180,overflowY:"auto",paddingRight:4},children:n.map((r,a)=>{const s=r.outcome==="success"?"✅":r.outcome==="escalated"?"🔄":"❌",o=new Date(r.timestamp).toLocaleTimeString();return i.jsxs("div",{style:{display:"flex",gap:8,alignItems:"center",padding:"5px 4px",borderBottom:"1px solid var(--border-light)"},children:[i.jsx("span",{children:s}),i.jsx("span",{style:{color:"var(--text-primary)",fontSize:12,width:110,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},title:r.provider,children:r.provider}),i.jsx("span",{style:{fontSize:11,color:"var(--text-muted)",width:80},children:r.complexity}),i.jsxs("span",{style:{fontSize:11,color:"var(--text-secondary)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:["reward ",r.reward.toFixed(2)]}),i.jsx("span",{style:{fontSize:11,color:"var(--text-muted)",marginLeft:"auto"},children:o})]},a)})})]}),i.jsxs("div",{style:{fontSize:11,color:"var(--text-muted)",marginTop:12},children:["Cold-start Beta(1,1) behaves like the heuristic router until outcomes accumulate. Enable learning with ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff config set routing.bandit true"}),"."]})]})}function voe(e,t=1){return`${e>0?"+":""}${(e*100).toFixed(t)}%`}function yoe({state:e}){const t={pass:{bg:"var(--ok-soft)",border:"var(--accent-green)",color:"var(--accent-green)",label:"✓ pass"},fail:{bg:"var(--danger-soft)",border:"var(--accent-red)",color:"var(--accent-red)",label:"✗ fail"},neutral:{bg:"var(--bg-tertiary)",border:"var(--border-hover)",color:"var(--text-secondary)",label:"○ neutral"}}[e];return i.jsx("span",{style:{fontSize:11,padding:"1px 8px",borderRadius:10,background:t.bg,border:`1px solid ${t.border}`,color:t.color},children:t.label})}function boe({promotion:e}){if(!e.decisionCount)return null;const t=e.promoted?{icon:"🎖️",label:"Promoted — the bandit beats the heuristic",color:"var(--accent-green)"}:e.sufficient?{icon:"⚠️",label:"Not promoted — the bandit is not (yet) better",color:"var(--accent-yellow)"}:{icon:"⏳",label:"Collecting data — need more diverged decisions",color:"var(--accent-blue)"},n=e.minDecisions>0?Math.min(100,Math.round(e.divergedCount/e.minDecisions*100)):0,r=[{key:"quality",label:"Quality ↑",delta:e.qualityDelta,state:e.criteria.quality?"pass":"fail",note:"needs > +2%"},{key:"cost",label:"Cost ↓",delta:e.costDelta,state:e.criteria.cost?"pass":"fail",note:"regression < +1%"},{key:"latency",label:"Latency ↓",delta:e.latencyDelta,state:e.latencyMeasured?e.criteria.latency?"pass":"fail":"neutral",note:e.latencyMeasured?"regression < +5%":"no latency measurements yet"}];return i.jsxs(rr,{icon:"🎖️",title:"Promotion Gate — is the bandit better than the heuristic?",subtitle:"A/B verdict from real trajectories (router-promotion.jsonl): quality must improve >2% while cost and latency don't regress (ruflo ADR-150)",children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12,marginBottom:14},children:[i.jsx("span",{style:{fontSize:22},children:t.icon}),i.jsx("span",{style:{fontSize:14,fontWeight:600,color:t.color},children:t.label})]}),i.jsxs("div",{style:{marginBottom:14},children:[i.jsxs("div",{style:{display:"flex",justifyContent:"space-between",fontSize:11,color:"var(--text-secondary)",marginBottom:5},children:[i.jsxs("span",{children:[e.divergedCount," diverged decisions"]}),i.jsxs("span",{children:["need ",e.minDecisions," for a verdict"]})]}),i.jsx("div",{style:{background:"var(--bg-primary)",borderRadius:4,height:8,overflow:"hidden",border:"1px solid var(--border-light)"},children:i.jsx("div",{style:{width:`${n}%`,background:e.sufficient?"var(--accent-green)":"var(--accent-blue)",height:"100%",transition:"width 0.4s ease"}})}),i.jsxs("div",{style:{fontSize:11,color:"var(--text-muted)",marginTop:4},children:[e.decisionCount," total decisions logged"]})]}),r.map(a=>i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,padding:"7px 0",borderBottom:"1px solid var(--border-light)"},children:[i.jsx("span",{style:{width:70,fontSize:12,color:"var(--text-primary)"},children:a.label}),i.jsx("span",{style:{width:92,fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12,color:"var(--text-secondary)"},children:voe(a.delta)}),i.jsx("span",{style:{fontSize:11,color:"var(--text-muted)",flex:1},children:a.note}),i.jsx(yoe,{state:a.state})]},a.key)),i.jsxs("div",{style:{fontSize:11,color:"var(--text-muted)",marginTop:12},children:["Run auto-routed tasks with ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"routing.bandit true"})," to accumulate A/B decisions. The gate does not disable the bandit — it tells you whether it's actually winning."]})]})}function xoe({ml:e}){if(!e.enabled||e.recordCount===0)return null;const t=e.providers.filter(r=>r.trusted),n=e.providers.filter(r=>!r.trusted);return i.jsxs(rr,{icon:"🧠",title:"ML Router — learned from similar tasks",subtitle:"Task-feature kNN (ruflo neural-router analog): outcomes of the most similar PAST tasks nudge each provider's score. Win rate is similarity-weighted; factor = 1 + 0.5 × (winRate − 0.5), trusted only after 5 similar-task samples.",children:[i.jsxs("div",{style:{display:"flex",gap:20,flexWrap:"wrap",marginBottom:14},children:[i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"12px 18px",textAlign:"center"},children:[i.jsx("div",{style:{fontSize:22,fontWeight:700,color:"var(--text-primary)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:mt(e.recordCount)}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:"learned tasks"})]}),i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--accent-green)",borderRadius:10,padding:"12px 18px",textAlign:"center"},children:[i.jsx("div",{style:{fontSize:22,fontWeight:700,color:"var(--accent-green)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:t.length}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:"trusted providers"})]}),i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--accent-yellow)",borderRadius:10,padding:"12px 18px",textAlign:"center"},children:[i.jsx("div",{style:{fontSize:22,fontWeight:700,color:"var(--accent-yellow)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:n.length}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:"still learning"})]})]}),i.jsx("div",{style:{display:"flex",flexDirection:"column",gap:8},children:e.providers.map(r=>i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"10px 14px"},children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:6},children:[i.jsx("span",{children:Ur(r.provider)}),i.jsx("span",{style:{fontSize:13,fontWeight:600,color:"var(--text-primary)"},children:xi(r.provider)}),r.trusted?i.jsxs("span",{style:li("color-mix(in srgb, var(--accent-green) 15%, transparent)","var(--accent-green)","var(--accent-green)"),children:["trusted · ",r.samples," samples"]}):i.jsxs("span",{style:li("color-mix(in srgb, var(--accent-yellow) 15%, transparent)","var(--accent-yellow)","var(--accent-yellow)"),children:[r.samples,"/5 samples"]}),r.model&&i.jsx("span",{style:{fontSize:11,color:"var(--text-muted)",fontFamily:"'SFMono-Regular', Consolas, monospace",marginLeft:"auto"},children:r.model.length>30?r.model.slice(0,27)+"…":r.model})]}),i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[i.jsxs("div",{style:{width:70,fontSize:11,color:"var(--text-secondary)"},children:["win ",Jh(r.winRate,0)]}),i.jsx(s0,{value:r.winRate,color:r.winRate>=.5?"var(--accent-green)":"var(--accent-red)"}),i.jsxs("div",{style:{width:74,fontSize:11,color:"var(--text-secondary)",textAlign:"right"},children:["factor ",i.jsxs("span",{style:{color:r.trusted&&r.factor!==1?"var(--accent-blue)":"var(--text-muted)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:[r.factor.toFixed(2),"×"]})]})]})]},r.provider))}),i.jsxs("div",{style:{fontSize:11,color:"var(--text-muted)",marginTop:12},children:["Enabled with ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff config set routing.mlRouter true"})," — the factor only adjusts scores when the provider has ≥ 5 similar-task wins (cold start is neutral)."]})]})}function woe({routing:e}){return e.bestModels.length?i.jsx(rr,{icon:"🏆",title:"Best Model per Agent (from your runs)",subtitle:"Success-rate-ranked models from agent-stats — the Auto router boosts the proven winner",children:i.jsx("div",{style:{display:"flex",flexWrap:"wrap",gap:10},children:e.bestModels.map(t=>i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"12px 14px",minWidth:200,flex:"1 1 200px",transition:"border-color 0.2s, box-shadow 0.2s"},onMouseEnter:n=>{n.currentTarget.style.borderColor="var(--accent-green)",n.currentTarget.style.boxShadow="0 2px 10px color-mix(in srgb, var(--accent-green) 13%, transparent)"},onMouseLeave:n=>{n.currentTarget.style.borderColor="var(--border-light)",n.currentTarget.style.boxShadow="none"},children:[i.jsxs("div",{style:{fontSize:12,color:"var(--text-secondary)",marginBottom:4},children:[Ur(t.model.split("/")[0])," ",t.agentType]}),i.jsx("div",{style:{fontSize:13,fontWeight:600,color:"var(--text-primary)",fontFamily:"'SFMono-Regular', Consolas, monospace",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},title:t.model,children:t.model.length>34?t.model.slice(0,31)+"…":t.model}),i.jsxs("div",{style:{fontSize:11,color:"var(--text-muted)",marginTop:6},children:[i.jsxs("span",{style:{color:t.successRate>=.8?"var(--accent-green)":"var(--accent-yellow)"},children:[Jh(t.successRate,0)," success"]})," · ",t.runs," run",t.runs!==1?"s":""]})]},`${t.agentType}-${t.model}`))})}):null}function koe({retrieval:e}){var l,c;if(!e.enabled&&e.repoChunks===0)return null;const t=e.totalSavedTokens??0,n=e.avgPctReduced??0,r=e.lastCall,a=e.totalCalls??0,s=e.totalRetrievals??0,o=e.totalFailovers??0;return i.jsxs(rr,{icon:"🧠",title:"Vector Retrieval — token savings",subtitle:"Large contexts are chunked, embedded locally (bge-small-en-v1.5), and reduced to the top-k relevant chunks before the LLM — saving tokens so free quotas stretch further. Complements the quota ledger: retrieval saves, the ledger manages.",children:[i.jsxs("div",{style:{display:"flex",gap:20,flexWrap:"wrap",marginBottom:14},children:[i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--accent-green)",borderRadius:10,padding:"12px 18px",textAlign:"center"},children:[i.jsx("div",{style:{fontSize:22,fontWeight:700,color:"var(--accent-green)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:mt(t)}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:"tokens saved"})]}),i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"12px 18px",textAlign:"center"},children:[i.jsxs("div",{style:{fontSize:22,fontWeight:700,color:"var(--text-primary)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:[n.toFixed(1),"%"]}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:"avg context reduction"})]}),i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--accent-yellow)",borderRadius:10,padding:"12px 18px",textAlign:"center"},children:[i.jsx("div",{style:{fontSize:22,fontWeight:700,color:"var(--accent-yellow)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:mt(e.repoChunks)}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:"repo chunks indexed"})]})]}),i.jsxs("div",{style:{display:"flex",gap:20,flexWrap:"wrap",fontSize:12,color:"var(--text-secondary)",marginBottom:14},children:[i.jsxs("span",{children:["📞 ",a," context calls · 🧠 ",s," retrievals used · ⚠️ ",o," failovers (full-context fallback)"]}),e.dimensions>0&&i.jsxs("span",{children:["· ",e.dimensions,"-dim embeddings"]})]}),r&&r.used!==!1&&((l=r.hits)==null?void 0:l.length)>0&&i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"12px 16px",marginBottom:12},children:[i.jsxs("div",{style:{fontSize:12,fontWeight:600,color:"var(--text-primary)",marginBottom:8},children:["Latest retrieval — ",mt(r.originalTokens)," → ",mt(r.reducedTokens)," tokens",i.jsxs("span",{style:{color:"var(--accent-green)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:[" (−",(c=r.pctReduced)==null?void 0:c.toFixed(0),"%)"]})]}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)"},children:r.hits.slice(0,5).map(u=>i.jsxs("div",{style:{marginTop:3},children:[i.jsx("span",{style:{color:"var(--accent-blue)"},children:"▸"})," ",u.filePath," ",i.jsxs("span",{style:{fontFamily:"'SFMono-Regular', Consolas, monospace"},children:["(sim ",u.similarity.toFixed(3),")"]})]},u.filePath))})]}),i.jsxs("div",{style:{fontSize:11,color:"var(--text-muted)"},children:["Pre-index your repo with ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff retrieval index <dir>"}),", query it with"," ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:'buff retrieval query "<question>"'}),", and see the same stats with"," ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff retrieval stats"}),"."]})]})}function Soe({quota:e}){var c;if((!e.enabled||e.entries.length===0)&&(((c=e.events)==null?void 0:c.length)??0)===0)return null;const t=e.entries.reduce((u,d)=>u+d.tokensConsumed,0),n=e.entries.reduce((u,d)=>u+d.requests,0),r=e.entries.filter(u=>u.parked).length,a=e.freeTokens??t-(e.paidTokens??0),s=e.paidTokens??0,o=e.estimatedSavedUsd??0,l=t>0?a/t*100:0;return i.jsxs(rr,{icon:"📒",title:"Quota Ledger — free-tier usage & auto re-enable",subtitle:"Tokens/requests per provider × model with reset windows. Exhausted providers are parked (excluded from Auto routing) and re-enable when the window rolls.",children:[i.jsxs("div",{style:{display:"flex",gap:20,flexWrap:"wrap",marginBottom:14},children:[i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"12px 18px",textAlign:"center"},children:[i.jsx("div",{style:{fontSize:22,fontWeight:700,color:"var(--text-primary)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:mt(t)}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:"tokens tracked"})]}),i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"12px 18px",textAlign:"center"},children:[i.jsx("div",{style:{fontSize:22,fontWeight:700,color:"var(--text-primary)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:n}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:"requests"})]}),i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"12px 18px",textAlign:"center"},children:[i.jsx("div",{style:{fontSize:22,fontWeight:700,color:r>0?"var(--accent-yellow)":"var(--accent-green)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:r}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:"parked"})]})]}),i.jsxs("div",{style:{display:"flex",gap:20,flexWrap:"wrap",marginBottom:16},children:[i.jsxs("div",{style:{flex:"1 1 200px",background:"var(--bg-primary)",borderRadius:10,padding:"12px 16px",border:"1px solid var(--accent-green)"},children:[i.jsx("div",{style:{fontSize:20,fontWeight:700,color:"var(--accent-green)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:mt(a)}),i.jsxs("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:["tokens on free/local · ",l.toFixed(0),"% of usage"]}),i.jsxs("div",{style:{fontSize:12,color:"var(--accent-green)",marginTop:4,fontFamily:"'SFMono-Regular', Consolas, monospace"},children:["💰 est. $",o.toFixed(4)," saved"]})]}),i.jsxs("div",{style:{flex:"1 1 200px",background:"var(--bg-primary)",borderRadius:10,padding:"12px 16px",border:"1px solid var(--accent-yellow)"},children:[i.jsx("div",{style:{fontSize:20,fontWeight:700,color:s>0?"var(--accent-yellow)":"var(--text-secondary)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:mt(s)}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:"tokens on paid providers (spend triggered)"}),i.jsxs("div",{style:{fontSize:12,color:s>0?"var(--accent-yellow)":"var(--text-secondary)",marginTop:4},children:[e.paidRequests??0," paid request",e.paidRequests===1?"":"s"]})]})]}),i.jsx("div",{style:{overflowX:"auto"},children:i.jsxs("table",{style:{width:"100%",borderCollapse:"collapse",fontSize:12},children:[i.jsx("thead",{children:i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)",color:"var(--text-secondary)"},children:[i.jsx("th",{style:{padding:"8px 10px",textAlign:"left",fontWeight:500},children:"Provider / Model"}),i.jsx("th",{style:{padding:"8px 10px",textAlign:"right",fontWeight:500},children:"Tokens"}),i.jsx("th",{style:{padding:"8px 10px",textAlign:"right",fontWeight:500},children:"Requests"}),i.jsx("th",{style:{padding:"8px 10px",textAlign:"right",fontWeight:500},children:"Resets in"}),i.jsx("th",{style:{padding:"8px 10px",textAlign:"center",fontWeight:500},children:"State"})]})}),i.jsx("tbody",{children:e.entries.map(u=>i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)"},children:[i.jsxs("td",{style:{padding:"8px 10px",whiteSpace:"nowrap"},children:[i.jsxs("span",{style:{color:"var(--text-primary)"},children:[Ur(u.provider)," ",xi(u.provider).split(" ")[0]]}),i.jsxs("span",{style:{color:"var(--text-secondary)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:[" / ",u.model.length>24?u.model.slice(0,21)+"…":u.model]})]}),i.jsx("td",{style:{padding:"8px 10px",textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",color:"var(--text-secondary)"},children:mt(u.tokensConsumed)}),i.jsx("td",{style:{padding:"8px 10px",textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",color:"var(--text-secondary)"},children:u.requests}),i.jsx("td",{style:{padding:"8px 10px",textAlign:"right",color:"var(--text-secondary)",whiteSpace:"nowrap"},children:aE(u.resetsInMs)}),i.jsx("td",{style:{padding:"8px 10px",textAlign:"center"},children:u.parked?i.jsx("span",{style:{fontSize:11,padding:"1px 8px",borderRadius:10,background:"var(--danger-soft)",border:"1px solid var(--accent-red)",color:"var(--accent-red)"},children:"⏸ parked"}):i.jsx("span",{style:{fontSize:11,padding:"1px 8px",borderRadius:10,background:"var(--ok-soft)",border:"1px solid var(--accent-green)",color:"var(--accent-green)"},children:"✓ available"})})]},`${u.provider}|${u.model}`))})]})}),i.jsxs("div",{style:{fontSize:11,color:"var(--text-muted)",marginTop:12},children:["Configure limits with ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff config set routing.quota.gemini.requestsPerWindow 1500"}),"; the ledger always tracks usage but only parks when limits are set."]}),e.parkedAccounts&&e.parkedAccounts.length>0&&i.jsxs("div",{style:{marginTop:18},children:[i.jsx("div",{style:{fontSize:13,fontWeight:600,color:"var(--text-primary)",marginBottom:10},children:"🔑 Parked Accounts — multi-account key rotation"}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginBottom:8},children:"Accounts skipped predictively by the failover walk (rate-limit / auth). Fingerprints only — raw keys are never stored."}),i.jsx("div",{style:{maxHeight:180,overflowY:"auto",background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"8px 0"},children:e.parkedAccounts.map((u,d)=>{const f=u.reason==="auth"?"auth":u.reason==="rate-limit"?"rate-limit":u.reason||"cooldown",h=u.reason==="rate-limit"?"var(--accent-yellow)":"var(--accent-red)";return i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,padding:"6px 14px",borderBottom:d<e.parkedAccounts.length-1?"1px solid var(--bg-card)":"none"},children:[i.jsx("span",{style:{fontSize:13},children:"🔒"}),i.jsxs("span",{style:{width:90,flexShrink:0,fontSize:12,color:"var(--text-primary)"},children:[Ur(u.provider)," ",xi(u.provider).split(" ")[0]]}),i.jsxs("span",{style:{fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:11,color:"var(--text-secondary)"},title:u.accountId,children:["#",u.accountId.slice(0,8)]}),i.jsx("span",{style:{fontSize:11,padding:"1px 8px",borderRadius:10,background:"var(--bg-card)",border:`1px solid ${h}`,color:h,textAlign:"center"},children:f}),i.jsx("span",{style:{flex:1}}),i.jsxs("span",{style:{fontSize:11,color:"var(--text-muted)",whiteSpace:"nowrap"},children:["re-admits in ",aE(u.remainingMs)]})]},`${u.provider}-${u.accountId}-${d}`)})})]}),e.events&&e.events.length>0&&i.jsxs("div",{style:{marginTop:18},children:[i.jsx("div",{style:{fontSize:13,fontWeight:600,color:"var(--text-primary)",marginBottom:10},children:"🛟 Failover Timeline — quota management & mid-session swaps"}),i.jsx("div",{style:{maxHeight:220,overflowY:"auto",background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"8px 0"},children:e.events.map((u,d)=>{const f=u.type==="parked"?"⏸":u.type==="re-enabled"?"🔁":u.type==="released"?"✅":"⚡",h=u.type==="parked"?"var(--accent-red)":u.type==="re-enabled"||u.type==="released"?"var(--accent-green)":"var(--accent-yellow)",p=u.type==="parked"?"parked":u.type==="re-enabled"?"re-enabled":u.type==="released"?"released":"failover";return i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,padding:"6px 14px",borderBottom:d<e.events.length-1?"1px solid var(--bg-card)":"none"},children:[i.jsx("span",{style:{fontSize:13},children:f}),i.jsx("span",{style:{width:80,flexShrink:0,fontSize:11,padding:"1px 8px",borderRadius:10,background:"var(--bg-card)",border:`1px solid ${h}`,color:h,textAlign:"center"},children:p}),i.jsxs("span",{style:{flex:1,fontSize:12,color:"var(--text-primary)",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:[Ur(u.provider)," ",xi(u.provider)]}),u.reason&&i.jsx("span",{style:{fontSize:11,color:"var(--text-secondary)"},children:u.reason}),i.jsx("span",{style:{fontSize:11,color:"var(--text-muted)",whiteSpace:"nowrap"},children:lM(u.timestamp)})]},`${u.timestamp}-${d}`)})})]})]})}function Sf({ok:e,children:t}){return i.jsx("span",{style:{display:"inline-flex",alignItems:"center",gap:5,fontSize:11,padding:"3px 9px",borderRadius:8,background:e===!1?"var(--danger-soft)":"var(--ok-soft)",border:`1px solid ${e===!1?"var(--accent-red)":"var(--accent-green)"}`,color:e===!1?"var(--accent-red)":"var(--accent-green)",whiteSpace:"nowrap"},children:t})}function joe({governance:e}){var r,a,s,o,l;if(!e.enabled)return i.jsx(rr,{icon:"⚖️",title:"Admin Governance Policy",subtitle:"Hard-constraint rules the Auto router enforces on every pick",children:i.jsxs("div",{style:{fontSize:13,color:"var(--text-secondary)"},children:[i.jsx("span",{style:{color:"var(--accent-green)"},children:"Fully permissive"})," — no governance rules active; any provider × model is eligible.",i.jsxs("div",{style:{marginTop:6,fontSize:12,color:"var(--text-muted)"},children:["Add rules with ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff admin allow <provider>"})," ·"," ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff admin deny <provider>"})," ·"," ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff admin max-cost <usd>"})]})]})});const t=[];(r=e.allowProviders)!=null&&r.length&&t.push({label:"allow providers",items:e.allowProviders}),(a=e.denyProviders)!=null&&a.length&&t.push({label:"deny providers",items:e.denyProviders,deny:!0}),(s=e.allowModels)!=null&&s.length&&t.push({label:"allow models",items:e.allowModels}),(o=e.denyModels)!=null&&o.length&&t.push({label:"deny models",items:e.denyModels,deny:!0});const n=[];return e.maxCostUsd!==void 0&&n.push(`max cost $${e.maxCostUsd}`),e.minPrivacyForPii!==void 0&&e.minPrivacyForPii<1&&n.push(`PII min privacy ${e.minPrivacyForPii}`),(l=e.piiPatterns)!=null&&l.length&&n.push(`PII guard (${e.piiPatterns.length} patterns)`),e.allowUnblock===!1&&n.push("unblock admin-hard"),i.jsxs(rr,{icon:"⚖️",title:"Admin Governance Policy",subtitle:"Hard-constraint rules — violating providers are eliminated, never just scored lower",children:[i.jsxs("div",{style:{display:"flex",flexWrap:"wrap",gap:6,marginBottom:10},children:[t.map(c=>i.jsxs(Sf,{ok:!c.deny,children:[c.deny?"⛔":"✅"," ",c.label,": ",c.items.join(", ")]},c.label)),n.map(c=>i.jsx(Sf,{children:c},c)),t.length===0&&n.length===0&&i.jsx(Sf,{ok:!1,children:"policy configured but no rules active"})]}),i.jsxs("div",{style:{fontSize:12,color:"var(--text-muted)"},children:["Managed via ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff admin"})," — the same policy the CLI’s"," ",i.jsx("code",{children:"model explain"})," surfaces as governance-blocked."]})]})}function Noe({rbac:e}){const t=n=>n==="admin"?"var(--accent-yellow)":n==="operator"?"var(--accent-green)":"var(--text-secondary)";return i.jsxs(rr,{icon:"🔐",title:"RBAC Identity",subtitle:"Who may write policy — role file ~/.buff/rbac.json",children:[i.jsxs("div",{style:{fontSize:13,marginBottom:10},children:[i.jsx("span",{style:{color:"var(--text-secondary)"},children:"You are "}),i.jsx("code",{style:{color:"var(--accent-blue)"},children:e.identity}),i.jsx("span",{style:{color:"var(--text-secondary)"},children:" as "}),e.role?i.jsx("span",{style:{color:t(e.role),fontWeight:600},children:e.role}):i.jsx("span",{style:{color:"var(--text-secondary)"},children:"unassigned"})]}),e.legacy?i.jsxs("div",{style:{fontSize:12,color:"var(--text-muted)"},children:[i.jsx("span",{style:{color:"var(--accent-green)"},children:"Legacy single-user mode"})," — no roles assigned; policy writes are open to every user. Assign roles with"," ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff admin role add <you> admin"}),"."]}):i.jsxs("div",{style:{display:"flex",flexWrap:"wrap",gap:6},children:[e.users.map(n=>i.jsxs(Sf,{ok:n.role!=="viewer",children:[n.user," · ",n.role,n.via==="oidc"?" (oidc)":""]},n.user)),i.jsxs("div",{style:{width:"100%",fontSize:12,color:"var(--text-muted)",marginTop:4},children:["Policy ",i.jsx("em",{children:"writes"})," require ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"admin"}),"; reads are open to every role."]})]})]})}function Eoe({data:e}){var p,g,m,y,v,k,x,j,w,b;const t=e==null?void 0:e.routing,n=t&&(t.preference.length>0||t.providers.length>0||t.bestModels.length>0),r=!!((p=t==null?void 0:t.usage)!=null&&p.total),a=!!((g=t==null?void 0:t.history)!=null&&g.length),s=!!t&&(((m=t.history)==null?void 0:m.length)??0)>0||!!((y=t==null?void 0:t.preference)!=null&&y.length),o=!!((v=t==null?void 0:t.bandit)!=null&&v.enabled),l=!!((k=t==null?void 0:t.promotion)!=null&&k.decisionCount),c=!!((x=t==null?void 0:t.ml)!=null&&x.enabled)&&(t.ml.recordCount??0)>0,u=!!((j=t==null?void 0:t.quota)!=null&&j.enabled),d=!!((w=t==null?void 0:t.retrieval)!=null&&w.enabled)||!!((b=t==null?void 0:t.retrieval)!=null&&b.repoChunks),f=!!(t!=null&&t.governance),h=!!(t!=null&&t.rbac);return i.jsxs(i.Fragment,{children:[i.jsx(Me,{icon:"🤖",title:"Auto Routing Insights"}),i.jsxs("p",{className:"section-description",children:["Which providers and models the Auto router prefers — from real pricing, benchmark quality, per-agent success stats, and the Thompson-sampling bandit. Run"," ",i.jsx("code",{children:"buff benchmark"})," and use Auto routing to build this up over time."]}),!n&&!r&&!a&&!o&&!l&&!c&&!u&&!d&&!f&&!h?i.jsx(ooe,{}):i.jsxs(i.Fragment,{children:[s&&t&&i.jsx(roe,{routing:t}),f&&t.governance&&i.jsx(joe,{governance:t.governance}),(t==null?void 0:t.rbac)&&i.jsx(Noe,{rbac:t.rbac}),r&&i.jsx(doe,{usage:t.usage}),a&&i.jsx(foe,{history:t.history}),o&&i.jsx(goe,{bandit:t.bandit}),l&&i.jsx(boe,{promotion:t.promotion}),c&&t.ml&&i.jsx(xoe,{ml:t.ml}),u&&i.jsx(Soe,{quota:t.quota}),d&&i.jsx(koe,{retrieval:t.retrieval}),i.jsx(hoe,{routing:t}),i.jsx(poe,{routing:t}),i.jsx(woe,{routing:t})]}),t&&t.providers.length===0&&t.bestModels.length===0&&t.preference.length>0&&i.jsx("div",{style:{fontSize:12,color:"var(--text-muted)",marginTop:4},children:"Auto-router preference is always available (static profiles + real pricing); quality metrics appear once you run benchmarks and agent tasks."})]})}const sE={chat:"💬",execute:"⚙️",plan:"🗺️",edit:"✏️",skill:"🧩",learn:"📚",ci:"🔁",doctor:"🩺",probe:"🔭","spot-check":"🧪",telemetry:"📡",usage:"🧮","ide-chat":"💬","ide-inline":"✍️","ide-execute":"⚙️"};function _oe(e){return new Date(e).toLocaleString([],{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}function Jd(e){return e!==void 0?`${e}ms`:"—"}function cM(e){return e===0?"var(--accent-green)":e<.2?"var(--accent-yellow)":"var(--accent-red)"}function Aoe({data:e}){const t=e.rows,n=t.reduce((c,u)=>c+u.requests,0),r=t.reduce((c,u)=>c+Math.round(u.errorRate*u.requests),0),a=t.reduce((c,u)=>c+(u.costUsd??0),0),s=t.flatMap(c=>c.latency?[c.latency.avg]:[]),o=s.length>0?Math.round(s.reduce((c,u)=>c+u,0)/s.length):void 0,l=new Set(t.map(c=>c.action)).size;return i.jsxs("div",{className:"stats-grid",style:{marginBottom:16},children:[i.jsxs("div",{className:"stat-card",children:[i.jsx("span",{className:"stat-icon",children:"📨"}),i.jsxs("div",{className:"stat-body",children:[i.jsx("div",{className:"stat-value",children:mt(n)}),i.jsx("div",{className:"stat-label",children:"Requests"})]})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("span",{className:"stat-icon",children:"🎯"}),i.jsxs("div",{className:"stat-body",children:[i.jsx("div",{className:"stat-value",children:t.length}),i.jsx("div",{className:"stat-label",children:"provider × model × action groups"})]})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("span",{className:"stat-icon",children:"⚡"}),i.jsxs("div",{className:"stat-body",children:[i.jsx("div",{className:"stat-value",style:{color:o!==void 0?"var(--accent-green)":"var(--text-secondary)"},children:o!==void 0?`${o}ms`:"—"}),i.jsxs("div",{className:"stat-label",children:["Avg latency",o!==void 0?` (${s.length} groups)`:" (no samples)"]})]})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("span",{className:"stat-icon",children:"📛"}),i.jsxs("div",{className:"stat-body",children:[i.jsx("div",{className:"stat-value",style:{color:cM(n>0?r/n:0)},children:n>0?`${(r/n*100).toFixed(1)}%`:"—"}),i.jsxs("div",{className:"stat-label",children:["Overall error rate (",mt(r)," failures)"]})]})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("span",{className:"stat-icon",children:"💰"}),i.jsxs("div",{className:"stat-body",children:[i.jsx("div",{className:"stat-value",style:{color:a>0?"var(--accent-yellow)":"var(--text-secondary)"},children:a>0?`$${a.toFixed(4)}`:"—"}),i.jsxs("div",{className:"stat-label",children:["Measured cost",l>0?` · ${l} actions`:""]})]})]})]})}function Coe({data:e}){const[t,n]=S.useState(""),[r,a]=S.useState("all"),s=e==null?void 0:e.requests,o=S.useMemo(()=>{if(!s)return[];const u=t.trim().toLowerCase();return s.rows.filter(d=>r!=="all"&&d.action!==r?!1:u?`${d.provider} ${d.model} ${d.action}`.toLowerCase().includes(u):!0)},[s,t,r]),l=i.jsx(Me,{icon:"📨",title:"Requests — per provider × model × action",description:"Aggregated from the same action-telemetry log as the Models panel — every Auto-routed call, grouped by action × provider × model. Latency percentiles appear once ≥3 samples exist; cost when the caller reported usage."});if(!e)return i.jsxs(i.Fragment,{children:[l,i.jsx("div",{className:"loading-state",children:i.jsx("p",{children:"Loading requests..."})})]});if(!s||!s.enabled||s.rows.length===0)return i.jsxs(i.Fragment,{children:[l,i.jsxs("div",{className:"empty-state",style:{padding:"40px 24px",textAlign:"center"},children:[i.jsx("div",{style:{fontSize:28,marginBottom:10},children:"📨"}),i.jsxs("p",{className:"section-description",style:{maxWidth:560,margin:"0 auto"},children:["No request telemetry yet. As you use ",i.jsx("strong",{children:"chat"}),", ",i.jsx("strong",{children:"execute"}),","," ",i.jsx("strong",{children:"plan"})," and ",i.jsx("strong",{children:"edit"})," under Auto routing, every call writes to the action-telemetry log and this panel aggregates it: request counts, p50/p95/p99 latency, error rate and measured cost — the same feed that drives the Models panel."]})]})]});const c=[...new Set(s.rows.map(u=>u.action))].sort();return i.jsxs(i.Fragment,{children:[l,i.jsx(Aoe,{data:s}),i.jsxs("div",{style:{display:"flex",gap:12,marginBottom:14,flexWrap:"wrap",alignItems:"center"},children:[i.jsxs("select",{value:r,onChange:u=>a(u.target.value),"aria-label":"Filter by action",style:{background:"var(--bg-card)",color:"var(--text-primary)",border:"1px solid var(--border)",borderRadius:8,padding:"8px 10px",fontSize:13,cursor:"pointer"},children:[i.jsx("option",{value:"all",children:"All actions"}),c.map(u=>i.jsxs("option",{value:u,children:[sE[u]||"🎯"," ",u]},u))]}),i.jsxs("div",{style:{flex:1,minWidth:220,position:"relative"},children:[i.jsx("span",{style:{position:"absolute",left:10,top:8,color:"var(--text-muted)",fontSize:13},children:"🔍"}),i.jsx("input",{type:"text",value:t,onChange:u=>n(u.target.value),placeholder:"Search provider, model or action...",style:{width:"100%",padding:"8px 12px 8px 32px",background:"var(--bg-card)",border:"1px solid var(--border)",borderRadius:8,color:"var(--text-primary)",fontSize:13,outline:"none"}})]}),i.jsxs("span",{style:{fontSize:12,color:"var(--text-secondary)",whiteSpace:"nowrap"},children:[o.length," of ",s.rows.length," groups"]})]}),i.jsx("div",{style:{overflowX:"auto"},children:i.jsxs("table",{style:{width:"100%",borderCollapse:"collapse",fontSize:13},children:[i.jsx("thead",{children:i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)",color:"var(--text-secondary)",textAlign:"left"},children:[i.jsx("th",{style:{padding:"8px 12px",fontWeight:500},children:"Action"}),i.jsx("th",{style:{padding:"8px 12px",fontWeight:500},children:"Provider"}),i.jsx("th",{style:{padding:"8px 12px",fontWeight:500},children:"Model"}),i.jsx("th",{style:{padding:"8px 12px",fontWeight:500,textAlign:"right"},children:"Requests"}),i.jsx("th",{style:{padding:"8px 12px",fontWeight:500,textAlign:"right"},children:"Error rate"}),i.jsx("th",{style:{padding:"8px 12px",fontWeight:500,textAlign:"right"},children:"Latency avg"}),i.jsx("th",{style:{padding:"8px 12px",fontWeight:500,textAlign:"right"},children:"p50"}),i.jsx("th",{style:{padding:"8px 12px",fontWeight:500,textAlign:"right"},children:"p95"}),i.jsx("th",{style:{padding:"8px 12px",fontWeight:500,textAlign:"right"},children:"p99"}),i.jsx("th",{style:{padding:"8px 12px",fontWeight:500,textAlign:"right"},children:"Measured cost"}),i.jsx("th",{style:{padding:"8px 12px",fontWeight:500,textAlign:"right"},children:"Last seen"})]})}),i.jsx("tbody",{children:o.length===0?i.jsx("tr",{children:i.jsx("td",{colSpan:11,style:{padding:28,textAlign:"center",color:"var(--text-muted)"},children:"No request groups match your filter."})}):o.map(u=>{var d;return i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)"},children:[i.jsx("td",{style:{padding:"8px 12px",whiteSpace:"nowrap"},children:i.jsxs("span",{style:{fontSize:11,padding:"2px 8px",borderRadius:8,background:"var(--bg-hover)",color:"var(--text-secondary)",border:"1px solid var(--border)"},children:[sE[u.action]||"🎯"," ",u.action]})}),i.jsx("td",{style:{padding:"8px 12px",color:"var(--text-primary)",whiteSpace:"nowrap"},children:u.provider}),i.jsxs("td",{style:{padding:"8px 12px",color:"var(--text-secondary)",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12,maxWidth:260,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:u.callIds.length>0?`Correlation ids: ${u.callIds.join(", ")}`:void 0,children:[u.model.length>42?u.model.slice(0,39)+"…":u.model,u.callIds.length>0&&i.jsxs("span",{style:{color:"var(--text-muted)",marginLeft:6},title:u.callIds.join(", "),children:["🔗",u.callIds.length]})]}),i.jsx("td",{style:{padding:"8px 12px",textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12},children:u.requests}),i.jsxs("td",{style:{padding:"8px 12px",textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12,color:cM(u.errorRate)},children:[(u.errorRate*100).toFixed(1),"%",(u.partials??0)>0&&i.jsxs("span",{title:`⏸ ${u.partials} mid-stream interruption(s) — started streaming, died before finish; the router deprioritizes flaky providers (P4 M4.4)`,style:{display:"inline-flex",alignItems:"center",gap:3,marginLeft:6,fontSize:10,padding:"1px 6px",borderRadius:8,whiteSpace:"nowrap",background:"var(--purple-soft)",border:"1px solid var(--accent-purple)",color:"var(--accent-purple)"},children:["⏸ ",u.partials]})]}),i.jsx("td",{style:{padding:"8px 12px",textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12},children:Jd((d=u.latency)==null?void 0:d.avg)}),i.jsx("td",{style:{padding:"8px 12px",textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12},children:u.latency&&u.latency.samples>=3?Jd(u.latency.p50):"—"}),i.jsx("td",{style:{padding:"8px 12px",textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12},children:u.latency&&u.latency.samples>=3?Jd(u.latency.p95):"—"}),i.jsx("td",{style:{padding:"8px 12px",textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12},children:u.latency&&u.latency.samples>=3?Jd(u.latency.p99):"—"}),i.jsx("td",{style:{padding:"8px 12px",textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12,color:u.costUsd?"var(--accent-yellow)":"var(--text-muted)"},children:u.costUsd!==void 0?`$${u.costUsd.toFixed(4)}`:"—"}),i.jsx("td",{style:{padding:"8px 12px",textAlign:"right",color:"var(--text-muted)",fontSize:11,whiteSpace:"nowrap"},children:_oe(u.lastAt)})]},`${u.action}|${u.provider}|${u.model}`)})})]})}),i.jsx("div",{style:{textAlign:"center",fontSize:12,color:"var(--text-muted)",marginTop:12},children:"Auto-refreshes with the dashboard feed · percentile columns need ≥3 latency samples per group"})]})}const Toe={local:"💻",groq:"🟢",nim:"🔶",gemini:"🔷",openrouter:"🟣"},Ooe={planner:"🗺️",writer:"✍️",reviewer:"🔎",tester:"🧪",debugger:"🐛",runner:"🏃","context-gatherer":"📂",memory:"🧠","self-improver":"📈"};function Poe(e){return Toe[e]||"🔌"}function Roe(e){return Ooe[e]||"🤖"}function uM(e){const t=Date.now()-e;return t<6e4?"just now":t<36e5?`${Math.floor(t/6e4)}m ago`:t<864e5?`${Math.floor(t/36e5)}h ago`:`${new Date(e).toLocaleDateString()}`}function o0(e){return e===void 0?"—":e<1e3?`${e}ms`:e<6e4?`${(e/1e3).toFixed(1)}s`:`${Math.floor(e/6e4)}m ${Math.floor(e%6e4/1e3)}s`}function Ic(e){return e==null?"0":e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}K`:String(e)}function Moe(e){var n,r;if(!e)return null;const t={bg:"var(--bg-primary)",border:"var(--border)"};return e.unverifiedClaim?{text:"⚠️ unverified claim — said it acted, but no tool ran",color:"var(--accent-yellow)",bg:"var(--warn-soft)",border:"var(--accent-yellow)"}:e.unfulfilledPromise?{text:"⚠️ unfulfilled promise — announced an action it never performed",color:"var(--accent-yellow)",bg:"var(--warn-soft)",border:"var(--accent-yellow)"}:e.unverifiedBuildClaim?{text:"⚠️ unverified build claim — a build failed but the reply reported success",color:"var(--accent-yellow)",bg:"var(--warn-soft)",border:"var(--accent-yellow)"}:e.unverifiedEditClaim?{text:"⚠️ unverified edit claim — asserted a fix, but nothing verified it",color:"var(--accent-yellow)",bg:"var(--warn-soft)",border:"var(--accent-yellow)"}:e.unverifiedEdit?{text:`⚠️ unverified edit — ${((n=e.tools)==null?void 0:n.length)??0} tool(s), no test/typecheck/browser run`,color:"var(--accent-yellow)",bg:"var(--warn-soft)",border:"var(--accent-yellow)"}:e.kind==="acted"?{text:e.delivered?"✅ action performed — message sent":`🔧 acted — ${((r=e.tools)==null?void 0:r.length)??0} tool(s)`,color:"var(--accent-green)",bg:"var(--ok-soft)",border:"var(--accent-green)"}:e.kind==="answered"?{text:"💬 answered — no action taken",color:"var(--text-secondary)",...t}:e.kind==="incomplete"?{text:"⏳ incomplete — ended with work still outstanding",color:"var(--accent-yellow)",bg:"var(--warn-soft)",border:"var(--accent-yellow)"}:e.kind==="cancelled"?{text:"⏹ cancelled",color:"var(--text-secondary)",...t}:{text:"❌ generation failed",color:"var(--accent-red)",bg:"var(--danger-soft)",border:"var(--accent-red)"}}function oE(e){const t=e.filter(n=>n.verdict==="CONFIRMED"&&l0(n).length>0).length;return`${e.length} finding${e.length===1?"":"s"}: ${t} confirmed, ${e.length-t} plausible`}function l0(e){return(e.evidence??[]).filter(t=>typeof(t==null?void 0:t.ref)=="string"&&t.ref.trim().length>0)}function Ioe({finding:e}){const t=l0(e),n=e.verdict==="CONFIRMED"&&t.length>0;return i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderLeft:`3px solid ${n?"var(--accent-green)":"var(--accent-yellow)"}`,borderRadius:8,padding:"8px 12px",marginBottom:8},children:[i.jsxs("div",{style:{display:"flex",alignItems:"baseline",gap:8},children:[i.jsx("span",{style:{fontSize:13},children:n?"✅":"🔎"}),i.jsx("span",{style:{flex:1,fontSize:12.5,fontWeight:600,color:"var(--text-primary)"},children:e.claim}),i.jsx("span",{style:{fontSize:9.5,fontWeight:700,letterSpacing:"0.04em",padding:"1px 7px",borderRadius:10,border:"1px solid",color:n?"var(--accent-green)":"var(--accent-yellow)",background:n?"var(--ok-soft)":"var(--warn-soft)",borderColor:n?"var(--accent-green)":"var(--accent-yellow)"},children:n?"CONFIRMED":"PLAUSIBLE"})]}),e.outcome?i.jsx("div",{style:{marginTop:3,fontSize:11.5,color:"var(--text-secondary)"},children:e.outcome}):null,t.length>0?i.jsx("ul",{style:{listStyle:"none",margin:"5px 0 0",padding:0},children:t.map((r,a)=>i.jsxs("li",{style:{fontSize:11,color:"var(--text-secondary)",marginBottom:3},children:[i.jsx("span",{style:{fontSize:9.5,textTransform:"uppercase",letterSpacing:"0.04em",color:"var(--accent-blue)",marginRight:5},children:r.kind}),i.jsx("span",{style:{color:"var(--text-secondary)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:r.ref}),r.detail?i.jsxs("span",{style:{marginLeft:5},children:["(",r.detail,")"]}):null]},a))}):i.jsx("div",{style:{marginTop:5,fontSize:11,color:"var(--accent-yellow)"},children:"no evidence — reported as PLAUSIBLE, not verified"}),e.source?i.jsxs("div",{style:{marginTop:4,fontSize:10,color:"var(--text-muted)"},children:["source: ",e.source]}):null]})}function $b({icon:e,title:t,subtitle:n,children:r}){return i.jsxs("div",{style:{background:"var(--bg-card)",borderRadius:12,border:"1px solid var(--border-light)",padding:"18px 20px",marginBottom:16},children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:4},children:[i.jsx("span",{style:{fontSize:20},children:e}),i.jsx("h2",{style:{fontSize:15,fontWeight:600,color:"var(--text-primary)",margin:0},children:t})]}),n&&i.jsx("p",{style:{fontSize:12,color:"var(--text-secondary)",margin:"2px 0 12px 0"},children:n}),!n&&i.jsx("div",{style:{height:6}}),r]})}function $oe(){return i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px dashed var(--border)",borderRadius:10,padding:"18px 20px",color:"var(--text-secondary)",fontSize:13,textAlign:"center"},children:["🔍 No reasoning traces yet — every LLM call in a ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff execute"})," pipeline is recorded to ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"reasoning-traces.json"}),". Run a pipeline, then replay it here or with ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff trace replay <id>"}),"."]})}function Loe({step:e}){const[t,n]=S.useState(!1),r=e.success?"var(--accent-green)":"var(--accent-red)",a=e.success?"ok":"failed";return i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:8,marginBottom:8,overflow:"hidden"},children:[i.jsxs("button",{onClick:()=>n(!t),style:{width:"100%",background:"none",border:"none",cursor:"pointer",padding:"10px 14px",textAlign:"left",display:"flex",alignItems:"center",gap:10,color:"inherit"},children:[i.jsx("span",{style:{width:26,fontSize:16},children:Roe(e.agentType)}),i.jsx("span",{style:{width:130,fontSize:12,fontWeight:600,color:"var(--text-primary)",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},title:e.agentType,children:e.agentType}),i.jsxs("span",{style:{flex:1,fontSize:12,color:"var(--text-secondary)",fontFamily:"'SFMono-Regular', Consolas, monospace",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},title:`${e.provider}/${e.model}`,children:[Poe(e.provider)," ",e.provider,"/",e.model]}),i.jsx("span",{style:{width:70,fontSize:11,color:"var(--text-muted)",textAlign:"right"},children:o0(e.latencyMs)}),i.jsxs("span",{style:{width:86,fontSize:11,color:"var(--text-muted)",fontFamily:"'SFMono-Regular', Consolas, monospace",textAlign:"right"},children:[Ic(e.inputTokens),"→",Ic(e.outputTokens)," tok"]}),i.jsx("span",{style:{width:46,fontSize:11,color:r,textAlign:"right"},children:a}),i.jsx("span",{style:{width:22,fontSize:11,textAlign:"right"},children:e.escalated?i.jsx("span",{title:"Repair escalated to a stronger routed model (v1.60.4)",children:"🚀"}):""}),i.jsx("span",{style:{fontSize:11,color:"var(--text-muted)"},children:t?"▾":"▸"})]}),t&&i.jsxs("div",{style:{padding:"0 14px 12px 50px",fontSize:12},children:[e.taskId&&i.jsxs("div",{style:{color:"var(--text-muted)",marginBottom:4},children:["Task: ",i.jsx("span",{style:{color:"var(--text-secondary)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:e.taskId})]}),e.description&&i.jsx("div",{style:{color:"var(--text-secondary)",marginBottom:6},children:e.description}),e.routing&&i.jsxs("div",{style:{marginBottom:6},children:[i.jsxs("span",{style:{fontSize:10,padding:"1px 8px",borderRadius:10,background:e.escalated?"var(--warn-soft)":"var(--bg-tertiary)",border:e.escalated?"1px solid var(--accent-yellow)":"1px solid var(--accent-blue)",color:e.escalated?"var(--accent-yellow)":"var(--accent-blue)"},children:[e.escalated?"🚀 escalated auto → ":"🤖 auto → ",e.routing.provider,"/",e.routing.model," · score ",e.routing.score.toFixed(3)," · ",e.routing.complexity]}),e.escalated&&i.jsx("div",{style:{color:"var(--accent-yellow)",marginTop:4,fontSize:11},children:"Repair escalated to a stronger routed model (next complexity level)."}),e.routing.explanation&&i.jsx("div",{style:{color:"var(--text-muted)",marginTop:4,fontSize:11},children:e.routing.explanation}),e.routing.agenticCapable===!1&&i.jsxs("div",{style:{color:"var(--accent-red)",marginTop:4,fontSize:11,fontWeight:600},children:["⚠️ not agentic-capable",e.routing.overrideReason?` (${e.routing.overrideReason})`:""," — a software ask on this model may fabricate results"]})]}),e.layers&&i.jsxs("div",{style:{marginBottom:6,fontSize:11,color:"var(--text-muted)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:[i.jsx("span",{style:{color:"var(--accent-blue)"},children:"sys"})," ",e.layers.systemChars,"c/#",e.layers.systemDigest," ·"," ",i.jsx("span",{style:{color:"var(--accent-green)"},children:"ctx"})," ",e.layers.contextChars,"c/#",e.layers.contextDigest," ·"," ",i.jsx("span",{style:{color:"var(--accent-yellow)"},children:"vol"})," ",e.layers.volatileChars,"c/#",e.layers.volatileDigest,i.jsxs("div",{style:{color:"var(--text-muted)",marginTop:2},children:["a constant ",i.jsx("span",{style:{color:"var(--accent-blue)"},children:"sys"})," digest across steps ⇒ the stable layer is prompt-cacheable"]})]}),e.error&&i.jsxs("div",{style:{color:"var(--accent-red)",marginBottom:6},children:["⚠️ ",e.error.slice(0,300)]}),i.jsxs("div",{style:{color:"var(--text-muted)",margin:"6px 0 3px 0"},children:["Prompt ",i.jsxs("span",{style:{fontFamily:"'SFMono-Regular', Consolas, monospace"},children:["#",e.promptDigest]})," · ",e.promptPreview.length,"+ chars:"]}),i.jsx("pre",{style:{background:"var(--bg-card)",border:"1px solid var(--border-light)",borderRadius:6,padding:8,margin:0,color:"var(--text-secondary)",whiteSpace:"pre-wrap",wordBreak:"break-word",maxHeight:180,overflowY:"auto",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:11},children:e.promptPreview.slice(0,900)}),i.jsxs("div",{style:{color:"var(--text-muted)",margin:"8px 0 3px 0"},children:["Response (",Ic(e.responseLength)," chars):"]}),i.jsx("pre",{style:{background:"var(--bg-card)",border:"1px solid var(--border-light)",borderRadius:6,padding:8,margin:0,color:"var(--text-secondary)",whiteSpace:"pre-wrap",wordBreak:"break-word",maxHeight:240,overflowY:"auto",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:11},children:e.responsePreview.slice(0,1200)})]})]})}function Doe({trace:e}){const[t,n]=S.useState(e.steps??null),[r,a]=S.useState(!1);S.useEffect(()=>{if(e.steps){n(e.steps);return}let l=!1;return Z.fetchTraceDetail(e.id).then(c=>{l||(c!=null&&c.steps?n(c.steps):a(!0))}),()=>{l=!0}},[e.id,e.steps]);const s=e.success===!0?"✅":e.success===!1?"❌":"⏳",o=e.success===!0?"success":e.success===!1?"failed":"in progress";return i.jsxs($b,{icon:s,title:`${e.id} — ${o}`,subtitle:e.goal,children:[i.jsxs("div",{style:{display:"flex",gap:8,flexWrap:"wrap",marginBottom:12},children:[i.jsxs("span",{style:{fontSize:11,padding:"2px 10px",borderRadius:12,background:"var(--bg-primary)",border:"1px solid var(--border)",color:"var(--text-secondary)"},children:["🕓 ",uM(e.startedAt)]}),(()=>{const l=Moe(e.outcome);return l?i.jsx("span",{style:{fontSize:11,padding:"2px 10px",borderRadius:12,background:l.bg,border:`1px solid ${l.border}`,color:l.color},children:l.text}):null})(),i.jsxs("span",{style:{fontSize:11,padding:"2px 10px",borderRadius:12,background:"var(--bg-primary)",border:"1px solid var(--border)",color:"var(--text-secondary)"},children:["⏱ ",o0(e.durationMs)]}),i.jsxs("span",{style:{fontSize:11,padding:"2px 10px",borderRadius:12,background:"var(--bg-primary)",border:"1px solid var(--border)",color:"var(--text-secondary)"},children:["🔢 ",(t==null?void 0:t.length)??"?"," call(s)"]}),t&&t.some(l=>l.escalated)&&i.jsxs("span",{style:{fontSize:11,padding:"2px 10px",borderRadius:12,background:"var(--warn-soft)",border:"1px solid var(--accent-yellow)",color:"var(--accent-yellow)"},children:["🚀 ",t.filter(l=>l.escalated).length," escalated repair(s)"]}),e.totalTokens!==void 0&&i.jsxs("span",{style:{fontSize:11,padding:"2px 10px",borderRadius:12,background:"var(--bg-primary)",border:"1px solid var(--border)",color:"var(--text-secondary)"},children:["🧮 ",Ic(e.totalTokens)," tok"]}),e.findings&&e.findings.length>0&&i.jsx("span",{style:{fontSize:11,padding:"2px 10px",borderRadius:12,background:"var(--bg-primary)",border:"1px solid var(--border)",color:"var(--text-secondary)"},children:`🔎 ${oE(e.findings)}`})]}),e.findings&&e.findings.length>0?i.jsxs("div",{style:{marginBottom:12},children:[i.jsx("div",{style:{fontSize:12,color:"var(--text-secondary)",marginBottom:6},children:`🔎 Findings — ${oE(e.findings)}`}),e.findings.map((l,c)=>i.jsx(Ioe,{finding:l},`finding-${c}`))]}):null,e.turnReport?i.jsxs("div",{style:{marginBottom:12},children:[i.jsx("div",{style:{fontSize:12,color:"var(--text-secondary)",marginBottom:6},children:`📋 Turn report — ${e.turnReport.summary??e.turnReport.verification}`}),i.jsxs("div",{style:{fontSize:11,marginBottom:6},children:[i.jsx("span",{style:{textTransform:"uppercase",letterSpacing:"0.04em",fontSize:10,border:"1px solid currentColor",borderRadius:12,padding:"1px 8px",color:e.turnReport.verification==="verified"?"var(--accent-green)":e.turnReport.verification==="unverified"?"var(--accent-yellow)":e.turnReport.verification==="blocked"?"var(--accent-red)":"var(--text-secondary)"},children:e.turnReport.verification}),e.turnReport.changedPaths.length>0?i.jsx("span",{style:{marginLeft:8,color:"var(--text-secondary)"},children:`${e.turnReport.changedPaths.length} file(s) changed`}):null]}),e.turnReport.steps.length>0?i.jsx("ul",{style:{margin:0,padding:0,listStyle:"none",display:"flex",flexDirection:"column",gap:3},children:e.turnReport.steps.map(l=>i.jsxs("li",{style:{fontSize:12},children:[i.jsx("span",{"aria-hidden":"true",children:l.status==="done"?"✅":l.status==="running"?"🔄":l.status==="blocked"?"⛔":"⬜"})," ",l.description,l.evidence?i.jsxs("span",{style:{color:"var(--accent-yellow)",fontSize:11},children:[" (",l.evidence,")"]}):null]},l.id))}):null]}):null,e.systemPrompt&&i.jsxs("details",{style:{marginBottom:12},children:[i.jsxs("summary",{style:{cursor:"pointer",fontSize:12,color:"var(--accent-blue)"},children:["🧬 System prompt — stable layer (",e.systemPromptChars??e.systemPrompt.length," chars)"]}),i.jsx("pre",{style:{background:"var(--bg-card)",border:"1px solid var(--border-light)",borderRadius:6,padding:10,margin:"8px 0 0 0",color:"var(--text-secondary)",whiteSpace:"pre-wrap",wordBreak:"break-word",maxHeight:320,overflowY:"auto",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:11},children:e.systemPrompt})]}),r&&i.jsx("div",{style:{color:"var(--accent-red)",fontSize:12,marginBottom:10},children:"Could not load trace steps (trace may have been deleted)."}),t===null&&!r&&i.jsx("div",{style:{color:"var(--text-secondary)",fontSize:12},children:"Loading steps…"}),t&&t.length===0&&i.jsx("div",{style:{color:"var(--text-secondary)",fontSize:12},children:"No LLM calls recorded in this trace."}),t&&t.map(l=>i.jsx(Loe,{step:l},l.seq))]})}function Boe({traces:e}){const[t,n]=S.useState(null);return t?i.jsxs(i.Fragment,{children:[i.jsx("button",{onClick:()=>n(null),style:{background:"var(--bg-hover)",border:"1px solid var(--border)",color:"var(--text-primary)",borderRadius:8,padding:"6px 14px",fontSize:12,cursor:"pointer",marginBottom:12},children:"← Back to traces"}),i.jsx(Doe,{trace:t})]}):i.jsx("div",{children:e.map(r=>{const a=r.success===!0?"✅":r.success===!1?"❌":"⏳",s=r.steps?[...new Set(r.steps.map(o=>o.agentType))].join(", "):"";return i.jsxs("button",{onClick:()=>n(r),style:{width:"100%",background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"12px 16px",marginBottom:8,cursor:"pointer",textAlign:"left",color:"inherit",transition:"border-color 0.2s, box-shadow 0.2s"},onMouseEnter:o=>{o.currentTarget.style.borderColor="var(--accent-blue)",o.currentTarget.style.boxShadow="0 2px 10px color-mix(in srgb, var(--accent-blue) 13%, transparent)"},onMouseLeave:o=>{o.currentTarget.style.borderColor="var(--border-light)",o.currentTarget.style.boxShadow="none"},children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:4},children:[i.jsx("span",{children:a}),i.jsx("span",{style:{fontSize:11,color:"var(--accent-blue)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:r.id}),i.jsx("span",{style:{fontSize:11,color:"var(--text-muted)",marginLeft:"auto"},children:uM(r.startedAt)})]}),i.jsx("div",{style:{fontSize:13,color:"var(--text-primary)",marginBottom:6},children:r.goal}),i.jsxs("div",{style:{display:"flex",gap:10,flexWrap:"wrap",fontSize:11,color:"var(--text-secondary)"},children:[i.jsxs("span",{children:["🔢 ",r.stepCount??0," call(s)"]}),i.jsxs("span",{children:["⏱ ",o0(r.durationMs)]}),r.failedSteps?i.jsxs("span",{style:{color:"var(--accent-red)"},children:["❌ ",r.failedSteps," failed"]}):i.jsx("span",{style:{color:"var(--accent-green)"},children:"✓ all ok"}),r.totalTokens!==void 0&&i.jsxs("span",{children:["🧮 ",Ic(r.totalTokens)," tok"]}),r.findings&&r.findings.length>0&&i.jsx("span",{style:{color:"var(--accent-yellow)"},children:`🔎 ${r.findings.filter(o=>o.verdict==="CONFIRMED"&&l0(o).length>0).length}/${r.findings.length} confirmed`}),s&&i.jsxs("span",{children:["🤖 ",s.slice(0,60)]})]})]},r.id)})})}function zoe(){const[e,t]=S.useState(null),[n,r]=S.useState(!1),a=S.useCallback(()=>{Z.fetchTraces().then(s=>{s?(t(s),r(!1)):r(!0)})},[]);return S.useEffect(()=>{a();const s=setInterval(a,15e3);return()=>clearInterval(s)},[a]),i.jsxs("div",{className:"panel",children:[i.jsx(Me,{icon:"🔍",title:"Reasoning Traces",description:"Every LLM call in each pipeline — agent × model × prompt digest × response × tokens × latency × routing snapshot (assessment P0)."}),e===null&&!n&&i.jsx($b,{icon:"⏳",title:"Loading…",children:i.jsx("div",{style:{color:"var(--text-secondary)",fontSize:13},children:"Fetching reasoning traces…"})}),n&&e===null&&i.jsx($b,{icon:"⚠️",title:"Could not reach the dashboard server",children:i.jsxs("div",{style:{color:"var(--text-secondary)",fontSize:13},children:["The traces endpoint is unavailable right now — retrying automatically. Run"," ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff trace list"})," in the terminal to inspect traces directly."]})}),e!==null&&e.length===0&&i.jsx($oe,{}),e!==null&&e.length>0&&i.jsx(Boe,{traces:e})]})}function Ds(){const[e,t]=S.useState(V2);return S.useEffect(()=>Y2(t),[]),e}function Fg(e){if(e.trim()==="")return null;const t=Number(e);return Number.isFinite(t)&&t>=0?t:null}function Foe({authed:e,role:t}){const[n,r]=S.useState(null),[a,s]=S.useState({}),[o,l]=S.useState(""),[c,u]=S.useState(!1),[d,f]=S.useState(null),[h,p]=S.useState(null),g=e&&(t==="admin"||t==="operator"),m=e&&t==="admin",y=S.useCallback(async()=>{var N,E,O;const w=await Z.fetchAdminQuota();if(!w){p("Could not load budget config.");return}p(null),r(w);const b={};for(const C of w.providers){const P=w.quota[C]||{};b[C]={provider:C,tokens:((N=P.tokensPerWindow)==null?void 0:N.toString())??"",requests:((E=P.requestsPerWindow)==null?void 0:E.toString())??"",windowMs:((O=P.windowMs)==null?void 0:O.toString())??""}}s(b),l(w.costUsd===null?"":String(w.costUsd))},[]);S.useEffect(()=>{y()},[y]);const v=(w,b,N)=>{s(E=>({...E,[w]:{...E[w]||{provider:w},[b]:N}}))},k=async()=>{u(!0),f(null);const w={};for(const E of Object.values(a)){const O={},C=Fg(E.tokens),P=Fg(E.requests),$=Fg(E.windowMs);C!==null&&(O.tokensPerWindow=C),P!==null&&(O.requestsPerWindow=P),$!==null&&(O.windowMs=$),w[E.provider]=Object.keys(O).length>0?O:null}const b={quota:w};if(m)if(o.trim()!==""){const E=Number(o);if(!Number.isFinite(E)||E<0){f({ok:!1,text:"Cost cap must be a non-negative number."}),u(!1);return}b.costUsd=E}else b.costUsd=null;const N=await Z.saveAdminQuota(b);u(!1),N.ok?(f({ok:!0,text:"Budget saved — the quota ledger + auto-router will enforce it."}),y()):f({ok:!1,text:N.error||"Save failed."})},x=w=>{const b=n==null?void 0:n.quota[w];return!!b&&(b.tokensPerWindow!==void 0||b.requestsPerWindow!==void 0||b.windowMs!==void 0)},j=w=>"admin-input";return i.jsxs("div",{className:"admin-quota-panel",children:[i.jsx("h2",{className:"section-subtitle",children:"💰 Daily Budget (routing.quota — your plan, your say)"}),i.jsxs("p",{className:"admin-quota-note",children:["Free-tier providers enforce tokens-per-day caps the API doesn't advertise — only you know your plan's allowance. Declare it here and the agent paces around it (parks the provider at the cap, auto-resumes at window rollover) instead of exhausting your budget mid-task. Unset = current behavior. Same config as ",i.jsx("code",{children:"buff model quota set"}),"."]}),h?i.jsx("div",{className:"admin-error",children:h}):null,n?i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"admin-quota-table",children:[i.jsxs("div",{className:"admin-quota-row admin-quota-head",children:[i.jsx("span",{children:"Provider"}),i.jsx("span",{children:"Tokens / window"}),i.jsx("span",{children:"Requests / window"}),i.jsx("span",{children:"Window (ms)"}),i.jsx("span",{children:"Status"})]}),n.providers.map(w=>{var b,N,E;return i.jsxs("div",{className:"admin-quota-row",children:[i.jsx("span",{className:"admin-provider-type",children:w}),i.jsx("input",{className:j(!g),type:"number",min:0,placeholder:"unset",disabled:!g,value:((b=a[w])==null?void 0:b.tokens)??"",onChange:O=>v(w,"tokens",O.target.value)}),i.jsx("input",{className:j(!g),type:"number",min:0,placeholder:"unset",disabled:!g,value:((N=a[w])==null?void 0:N.requests)??"",onChange:O=>v(w,"requests",O.target.value)}),i.jsx("input",{className:j(!g),type:"number",min:0,placeholder:"86400000 (24h)",disabled:!g,value:((E=a[w])==null?void 0:E.windowMs)??"",onChange:O=>v(w,"windowMs",O.target.value)}),i.jsx("span",{className:`admin-role-badge ${x(w)?"admin-role-admin":"admin-role-viewer"}`,children:x(w)?"declared":"unset"})]},w)})]}),i.jsxs("div",{className:"admin-quota-row admin-quota-cost",children:[i.jsx("span",{className:"admin-provider-type",children:"Max cost / call (USD, admin)"}),i.jsx("input",{className:j(!m),type:"number",min:0,step:.01,placeholder:"unset",disabled:!m,value:o,onChange:w=>l(w.target.value)}),i.jsx("span",{className:"admin-quota-cost-hint",children:"governance.maxCostUsd — hard admin cap"})]}),g||m?i.jsxs("div",{className:"admin-quota-actions",children:[i.jsx("button",{className:"admin-mini-btn",onClick:()=>void k(),disabled:c,children:c?"⏳ Saving…":"💾 Save budget"}),d?i.jsx("span",{className:d.ok?"admin-quota-ok":"admin-quota-err",children:d.text}):null]}):i.jsxs("div",{className:"admin-readonly-note",children:["🔒 Read-only for ",i.jsx("code",{children:t})," — budget limits need ",i.jsx("code",{children:"admin"})," or"," ",i.jsx("code",{children:"operator"}),"; the cost cap needs ",i.jsx("code",{children:"admin"}),"."]})]}):i.jsx("div",{className:"empty-state",children:"Loading budget…"})]})}const Uoe=["image","video","search","vision","speech"],Woe={image:"🖼️ Image generation",video:"🎬 Video generation",search:"🔎 Web search & page reading",vision:"👁️ Vision / interpretation",speech:"🔊 Speech (TTS / STT)"};function Hoe({authed:e,role:t}){const[n,r]=S.useState([]),[a,s]=S.useState({}),[o,l]=S.useState(null),[c,u]=S.useState({}),[d,f]=S.useState(null),h=e&&t==="admin",p=S.useCallback(async()=>{const w=await Z.fetchAdminServices();if(!w){f("Could not load service configuration — is the dashboard server up to date?");return}f(null),r(w.services)},[]);S.useEffect(()=>{p()},[p]);const g=(w,b)=>`${w}:${b}`,m=(w,b,N)=>{s(E=>({...E,[g(w,b)]:N}))},y=async w=>{const b={};for(const E of w.envVars){const O=a[g(w.id,E.varName)];O!==void 0&&O.trim()!==""&&(b[E.varName]=O.trim())}if(Object.keys(b).length===0){u(E=>({...E,[w.id]:"ℹ️ Type a value to save."}));return}l(w.id),u(E=>({...E,[w.id]:""}));const N=await Z.saveService(w.id,b);if(N.ok&&N.service){const E=N.service;r(O=>O.map(C=>C.id===w.id?E:C)),s(O=>{const C={...O};for(const P of w.envVars)delete C[g(w.id,P.varName)];return C}),u(O=>({...O,[w.id]:"✅ Saved — the agent will use it on the next call."}))}else u(E=>({...E,[w.id]:`❌ ${N.error||"Save failed."}`}));l(null)},v=async w=>{l(w.id),u(N=>({...N,[w.id]:"⏳ Testing…"}));const b=await Z.testService(w.id);u(N=>({...N,[w.id]:b.ok?`✅ ${b.detail||"Reachable"}`:`❌ ${b.error||b.detail||"Unreachable"}`})),l(null)},k=async w=>{if(!window.confirm(`Remove ${w.label}'s stored key(s)? The agent will fall back to another configured backend.`))return;l(w.id);const b=await Z.removeService(w.id);if(b.ok&&b.service){const N=b.service;r(E=>E.map(O=>O.id===w.id?N:O)),s(E=>{const O={...E};for(const C of w.envVars)delete O[g(w.id,C.varName)];return O}),u(E=>{var O;return{...E,[w.id]:`🗑️ Removed ${((O=b.removed)==null?void 0:O.join(", "))||"key(s)"}.`}})}else u(N=>({...N,[w.id]:`❌ ${b.error||"Remove failed."}`}));l(null)},x=Uoe.map(w=>({cap:w,services:n.filter(b=>b.capability===w)})).filter(w=>w.services.length>0),j=n.filter(w=>w.configured).length;return i.jsxs("div",{className:"service-providers-panel",children:[i.jsx("h2",{className:"section-subtitle",children:"🔌 Service Provider API Keys (image · video · search · vision · speech)"}),i.jsxs("p",{className:"admin-subtitle",children:["These are the third-party services the agent calls directly — separate from the LLM providers above. Each row maps to a real environment variable the tool path reads; keys are written to the credential env file and picked up by the agent on the next call.",n.length>0?` ${j} of ${n.length} services ready.`:""]}),h?null:i.jsxs("div",{className:"admin-readonly-note",children:["🔒 Read-only — configuring service keys requires the ",i.jsx("code",{children:"admin"})," role (credential.write). Secret values are shown redacted."]}),d?i.jsx("div",{className:"admin-error",children:d}):null,n.length===0&&!d?i.jsx("div",{className:"empty-state",children:"Loading service configuration…"}):null,x.map(w=>i.jsxs("section",{className:"service-providers-group",children:[i.jsx("h3",{className:"process-env-group-title",children:Woe[w.cap]??w.cap}),i.jsx("div",{className:"admin-table-wrapper",children:i.jsxs("table",{className:"admin-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Service"}),i.jsx("th",{children:"Status"}),i.jsx("th",{children:"Configuration"}),i.jsx("th",{children:"Actions"})]})}),i.jsx("tbody",{children:w.services.map(b=>i.jsxs("tr",{children:[i.jsxs("td",{className:"admin-provider-type",children:[b.icon," ",b.label,i.jsx("div",{className:"admin-provider-sub",children:b.id}),i.jsx("div",{className:"admin-hint",children:b.description}),b.sharedNote?i.jsxs("div",{className:"admin-hint",children:["🔗 ",b.sharedNote]}):null,b.docsUrl?i.jsx("div",{className:"admin-hint",children:i.jsx("a",{href:b.docsUrl,target:"_blank",rel:"noreferrer",children:"Get a key ↗"})}):null]}),i.jsxs("td",{children:[i.jsx("span",{className:`admin-check-badge ${b.configured?"admin-check-pass":"admin-check-warn"}`,children:b.configured?"✅ Ready":"⚠️ Not set"}),b.keyless?i.jsx("div",{className:"admin-hint",children:"no key needed"}):null,b.free?i.jsx("div",{className:"admin-hint",children:"free"}):null]}),i.jsx("td",{children:b.envVars.length===0?i.jsx("div",{className:"admin-hint",children:"Nothing to configure — works out of the box."}):b.envVars.map(N=>{const E=g(b.id,N.varName),O=a[E]??"",C=!N.secret&&N.set?N.value:"";return i.jsxs("div",{className:"service-env-row",children:[i.jsxs("label",{className:"service-env-label",htmlFor:E,children:[i.jsx("code",{children:N.varName}),i.jsx("span",{className:"admin-hint",children:N.prompt})]}),h?i.jsx("input",{id:E,className:"admin-input",type:N.secret?"password":"text","aria-label":`${b.id} ${N.varName}`,placeholder:N.set?N.secret?"•••••• set — type to replace":C:"not set",value:O,onChange:P=>m(b.id,N.varName,P.target.value),autoComplete:"new-password"}):i.jsx("div",{className:"admin-hint",children:N.set?N.value:"—"})]},N.varName)})}),i.jsxs("td",{children:[b.envVars.length===0?i.jsx("div",{className:"admin-hint",children:"always available"}):h?i.jsxs("div",{className:"admin-row-actions",children:[i.jsx("button",{className:"admin-mini-btn",disabled:o===b.id,onClick:()=>void y(b),children:"💾 Save"}),i.jsx("button",{className:"admin-mini-btn",disabled:o===b.id,title:"Probes the SAVED configuration — save first to test a new key",onClick:()=>void v(b),children:"🔌 Test"}),i.jsx("button",{className:"admin-mini-btn admin-mini-danger",disabled:o===b.id,onClick:()=>void k(b),children:"🗑 Remove"})]}):i.jsx("div",{className:"admin-hint",children:"read-only"}),c[b.id]?i.jsx("div",{className:"admin-row-msg",children:c[b.id]}):null]})]},b.id))})]})})]},w.cap))]})}const Goe={env:"Environment",config:"Config",vault:"Vault",local:"Local (no key)",none:"Not configured"};function qoe(){const[e,t]=S.useState(null),[n,r]=S.useState(!0),[a,s]=S.useState(null),[o,l]=S.useState(null),[c,u]=S.useState(!1),[d,f]=S.useState(!1),[h,p]=S.useState(""),[g,m]=S.useState(""),[y,v]=S.useState(null),[k,x]=S.useState(null),[j,w]=S.useState(""),b=Ds(),[N,E]=S.useState(""),[O,C]=S.useState(""),[P,$]=S.useState(null),[B,M]=S.useState(!1),[F,L]=S.useState([]),[W,A]=S.useState(null),[z,T]=S.useState(""),[K,D]=S.useState(""),[I,ce]=S.useState("viewer"),[ge,ve]=S.useState(null),[Ce,Q]=S.useState(""),[X,ie]=S.useState(null),[fe,J]=S.useState(!1),[ye,je]=S.useState(null),[_e,be]=S.useState(null),[$e,he]=S.useState(null),[Je,Le]=S.useState([]),[Oe,nt]=S.useState({}),[qe,Ct]=S.useState(null),[fn,U]=S.useState({}),[V,oe]=S.useState(""),[pe,Ne]=S.useState(null),[Be,vt]=S.useState(null),yt=S.useCallback(async()=>{r(!0),s(null);const H=await Z.fetchAdminChecks();t(H),H||s("Could not reach the dashboard server, or the server is older than this panel. Run `buff dashboard` to start it."),r(!1)},[]),hn=S.useCallback(async()=>{const H=await Z.fetchAdminCatalog();H&&H.length>0&&Le(H)},[]),Kt=S.useCallback(async()=>{const H=await Z.fetchAdminUsers();H.ok&&H.users&&L(H.users)},[]),bt=S.useCallback(async()=>{const H=await Z.fetchAdminWorkspace();H&&(ve(H),Q(H.configured??""))},[]),St=S.useCallback(async()=>{const H=await Z.fetchAdminCache();H&&je(H)},[]),an=async H=>{he(H??"__none__"),be(null);const ue=await Z.clearAdminCache(H);ue.ok?(be(`✅ Cleared ${ue.removed??0} cached answer(s) for ${H??"the no-workspace bucket"}.`),St()):ue.unauthorized?(Yt(),be(`❌ ${ue.error||"Session expired — log in again."}`)):be(`❌ ${ue.error||"Could not clear the cache."}`),he(null)},qr=async H=>{H.preventDefault(),J(!0),ie(null);const ue=await Z.saveAdminWorkspace(Ce.trim());ue.ok&&ue.workspace?(ve(ue.workspace),Q(ue.workspace.configured??""),ie(ue.workspace.effective?`✅ Unattached chat turns now run in ${ue.workspace.effective}`:"✅ Cleared — unattached project asks will ask you to attach a folder.")):ue.unauthorized?(Yt(),ie(`❌ ${ue.error||"Session expired — log in again."}`)):ie(`❌ ${ue.error||"Could not save the workspace."}`),J(!1)};S.useEffect(()=>{let H=!0;return Z.fetchAdminAuthStatus().then(ue=>{if(H){if(!ue){s("Could not reach the dashboard server, or the server is older than this panel. Run `buff dashboard` to start it."),r(!1);return}l({configured:ue.configured,authenticated:ue.authenticated}),u(ue.authenticated),v(ue.role??null),x(ue.user??null),f(ue.mustChangePassword===!0),ue.authenticated?(yt(),hn(),Kt(),bt(),St()):r(!1)}}),()=>{H=!1}},[yt,hn,Kt,bt,St,b]);const Vt=y==="admin",Nr=y==="admin"||y==="operator",Yt=()=>{u(!1),l(H=>H&&{...H,authenticated:!1}),$("Session expired — log in again.")},Rn=async H=>{H.preventDefault(),M(!0),$(null);const ue=await Z.adminLogin(j,N);ue.ok?(u(!0),l({configured:!0,authenticated:!0}),v(ue.role??"admin"),x(ue.user??null),w(""),E(""),Z.fetchAdminAuthStatus().then(Pe=>{Pe&&f(Pe.mustChangePassword===!0)}),yt(),hn(),Kt(),bt(),St()):$(ue.error||"Login failed."),M(!1)},Er=async H=>{if(H.preventDefault(),M(!0),$(null),N.length<8){$("Password must be at least 8 characters."),M(!1);return}if(N!==O){$("Passwords do not match."),M(!1);return}const ue=await Z.adminSetup(j,N);ue.ok?(u(!0),l({configured:!0,authenticated:!0}),v(ue.role??"admin"),x(ue.user??null),w(""),E(""),C(""),yt(),hn(),Kt()):$(ue.error||"Setup failed."),M(!1)},pa=async()=>{await Z.adminLogout(),u(!1),l(H=>H&&{...H,authenticated:!1}),v(null),x(null),t(null),nt({}),U({}),L([])},Wa=async()=>{if(!window.confirm("Stop the running gateway? Channels will stop responding until you restart it with `buff gateway start`."))return;vt("gateway"),Ne(null);const H=await Z.shutdown("gateway");vt(null),H.ok?Ne(H.stopped?"✅ Gateway stopped.":`ℹ️ ${H.reason||"No running gateway found — nothing to stop."}`):(Ne(`❌ ${H.error||"Stop failed."}`),H.unauthorized&&Yt())},rt=async()=>{window.confirm("Shut down the dashboard? This page will disconnect and the server will exit. Restart with `buff dashboard`.")&&(vt("dashboard"),Ne("🛑 Shutting down the dashboard — this page will disconnect…"),await Z.shutdown("dashboard"),vt(null),Ne("ℹ️ The dashboard server did not stop (see the server terminal). You can also stop it with `buff dashboard stop`."))},Ii=async H=>{if(H.preventDefault(),A(null),K.length<8){A("Password must be at least 8 characters.");return}const ue=await Z.addAdminUser(z,K,I);ue.ok?(T(""),D(""),A("✅ User added"),Kt()):(A(`❌ ${ue.error||"Failed to add user"}`),ue.unauthorized&&Yt())},sr=async H=>{if(!window.confirm(`Remove dashboard user '${H}'?`))return;A(null);const ue=await Z.removeAdminUser(H);ue.ok?(A(`✅ Removed ${H}`),Kt()):(A(`❌ ${ue.error||"Failed to remove user"}`),ue.unauthorized&&Yt())},Kr=(H,ue,Pe)=>{nt(Te=>({...Te,[H]:{...Te[H]||{},[ue]:Pe}}))},Xt=async H=>{Ct(H),U({});const ue=Oe[H]||{},Pe=await Z.saveProvider(H,ue);Pe.ok?(t(Te=>{if(!Te)return Te;const Hs=Te.providers.some(or=>or.type===H)?Te.providers.map(or=>or.type===H&&Pe.provider?Pe.provider:or):Pe.provider?[...Te.providers,Pe.provider]:Te.providers;return{...Te,providers:Hs}}),nt(Te=>{const Vr={...Te};return delete Vr[H],Vr}),U(Te=>({...Te,[H]:"✅ Saved"}))):(U(Te=>({...Te,[H]:`❌ ${Pe.error||"Save failed"}`})),Pe.unauthorized&&Yt()),Ct(null)},$i=async H=>{if(!window.confirm(`Remove ${H}'s API key and configuration? This cannot be undone.`))return;Ct(H),U({});const ue=await Z.deleteProvider(H);ue.ok?ue.envSourced?(t(Pe=>Pe&&{...Pe,providers:Pe.providers.map(Te=>Te.type===H&&ue.provider||Te)}),U(Pe=>({...Pe,[H]:`⚠️ Key comes from ${ue.envVar?`$${ue.envVar}`:"an env var"} — unset it there to remove it (config can't override the env).`}))):(t(Pe=>Pe&&{...Pe,providers:Pe.providers.filter(Te=>Te.type!==H)}),nt(Pe=>{const Te={...Pe};return delete Te[H],Te})):(U(Pe=>({...Pe,[H]:`❌ ${ue.error||"Remove failed"}`})),ue.unauthorized&&Yt()),Ct(null)},_r=async H=>{Ct(H);const ue=await Z.testProvider(H);U(Pe=>{var Te;return{...Pe,[H]:ue.ok?`✅ Connected — ${((Te=ue.models)==null?void 0:Te.length)??0} model(s) reachable`:`❌ ${ue.error||"Connection failed"}`}}),Ct(null)},Li=()=>{V&&(nt(H=>({...H,[V]:{}})),oe(""))};if(a&&!o)return i.jsxs("div",{className:"admin-header",children:[i.jsx(Me,{icon:"🛠️",title:"Admin"}),i.jsx("div",{className:"admin-error",children:a})]});if(!o||!c&&n)return i.jsxs("div",{className:"admin-header",children:[i.jsx(Me,{icon:"🛠️",title:"Admin"}),i.jsxs("div",{className:"loading-state",children:[i.jsx("div",{className:"loading-spinner"}),i.jsx("p",{children:"Loading…"})]})]});if(!c){const H=!o.configured;return i.jsxs("div",{className:"admin-header",children:[i.jsx(Me,{icon:"🛠️",title:`Admin — ${H?"Set up access":"Log in"}`}),i.jsx("p",{className:"admin-subtitle",children:H?"Create the admin user-id and password that gate the dashboard write surface (API-key/provider configuration). The CLI keeps working exactly as before — this only guards the GUI.":"The write surface (API-key/provider configuration) is gated by the admin credentials. Read-only checks stay open."}),i.jsxs("form",{className:"admin-gate-form",onSubmit:H?Er:Rn,children:[i.jsxs("label",{children:[i.jsx("span",{children:"Username"}),i.jsx("input",{type:"text",value:j,onChange:ue=>w(ue.target.value),autoComplete:"username",placeholder:"admin"})]}),i.jsxs("label",{children:[i.jsx("span",{children:"Password"}),i.jsx("input",{type:"password",value:N,onChange:ue=>E(ue.target.value),autoComplete:H?"new-password":"current-password",placeholder:"••••••••"})]}),H?i.jsxs("label",{children:[i.jsx("span",{children:"Confirm password"}),i.jsx("input",{type:"password",value:O,onChange:ue=>C(ue.target.value),autoComplete:"new-password",placeholder:"••••••••"})]}):null,P?i.jsx("div",{className:"admin-error",children:P}):null,i.jsx("button",{className:"admin-refresh-btn",type:"submit",disabled:B||!j||!N,children:B?"⏳ …":H?"🔐 Create admin":"🔐 Log in"}),H?i.jsxs("p",{className:"admin-hint",children:["Automation alternative: set ",i.jsx("code",{children:"NUVIRA_DASHBOARD_ADMIN_USER"})," and"," ",i.jsx("code",{children:"NUVIRA_DASHBOARD_ADMIN_PASSWORD"})," in the dashboard's environment."]}):null]})]})}if(d){const H=h.length>0&&h.length<8,ue=g.length>0&&g!==h,Pe=async Te=>{if(Te.preventDefault(),H||ue||!h)return;M(!0),$(null);const Vr=await Z.changeAdminPassword(N,h);Vr.ok?(f(!1),E(""),p(""),m(""),yt(),hn(),Kt()):$(Vr.error||"Could not change the password."),M(!1)};return i.jsxs("div",{className:"admin-header",children:[i.jsx(Me,{icon:"🔐",title:"Set your own password"}),i.jsxs("p",{className:"admin-subtitle",children:["This dashboard is running on its ",i.jsx("strong",{children:"published default password"}),", so anyone who can reach this port can sign in. Until you replace it, the agent will refuse to save anything — API keys, provider settings, users."]}),i.jsxs("form",{className:"admin-gate-form",onSubmit:Pe,children:[i.jsxs("label",{children:[i.jsx("span",{children:"Current password"}),i.jsx("input",{type:"password",value:N,onChange:Te=>E(Te.target.value),autoComplete:"current-password",placeholder:"admin"})]}),i.jsxs("label",{children:[i.jsx("span",{children:"New password"}),i.jsx("input",{type:"password",value:h,onChange:Te=>p(Te.target.value),autoComplete:"new-password",placeholder:"at least 8 characters"})]}),H?i.jsx("div",{className:"admin-error",children:"Use at least 8 characters."}):null,i.jsxs("label",{children:[i.jsx("span",{children:"Confirm new password"}),i.jsx("input",{type:"password",value:g,onChange:Te=>m(Te.target.value),autoComplete:"new-password",placeholder:"repeat it"})]}),ue?i.jsx("div",{className:"admin-error",children:"The two passwords do not match."}):null,P?i.jsx("div",{className:"admin-error",children:P}):null,i.jsx("button",{className:"admin-refresh-btn",type:"submit",disabled:B||!N||!h||H||ue,children:B?"⏳ …":"🔐 Save new password"})]})]})}const Di=(e==null?void 0:e.system.filter(H=>H.status==="pass").length)??0,ma=(e==null?void 0:e.system.filter(H=>H.status==="warn").length)??0,Ar=(e==null?void 0:e.system.filter(H=>H.status==="fail").length)??0,Bi=(e==null?void 0:e.enterprise.filter(H=>H.status==="pass").length)??0,Gn=(e==null?void 0:e.enterprise.filter(H=>H.status==="warn").length)??0,Us=(e==null?void 0:e.enterprise.filter(H=>H.status==="fail").length)??0,Ha=(e==null?void 0:e.providers)??[],zi=Object.keys(Oe).filter(H=>!Ha.some(ue=>ue.type===H)),Fi=[...Ha,...zi.map(H=>({type:H,configured:!1,keySource:"none",keyMasked:null}))],Ws=H=>{const ue=Je.find(Pe=>Pe.id===H);return ue||{label:H}};return i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"admin-header",children:[i.jsx(Me,{icon:"🛠️",title:i.jsxs(i.Fragment,{children:["Admin — Command Runner & Configuration",k?i.jsxs("span",{className:`admin-role-badge admin-role-${y||"viewer"}`,children:[" ",k," · ",y||"viewer"]}):null]})}),i.jsxs("div",{className:"admin-header-actions",children:[i.jsx("button",{className:"admin-refresh-btn",onClick:()=>void yt(),disabled:n,children:n?"⏳ Running checks…":"🔄 Refresh (run all commands)"}),Vt||y==="operator"?i.jsx("button",{className:"admin-logout-btn",onClick:()=>void Wa(),disabled:Be!==null,title:"Stop the running gateway (buff gateway stop)",children:Be==="gateway"?"⏳ Stopping…":"⏻ Stop gateway"}):null,Vt?i.jsx("button",{className:"admin-logout-btn",onClick:()=>void rt(),disabled:Be!==null,title:"Shut down this dashboard server (buff dashboard stop)",children:Be==="dashboard"?"⏳ Stopping…":"🛑 Stop dashboard"}):null,i.jsx("button",{className:"admin-logout-btn",onClick:()=>void pa(),children:"🚪 Log out"})]})]}),pe?i.jsx("div",{className:"admin-error",children:pe}):null,Vt?null:i.jsxs("div",{className:"admin-readonly-note",children:["🔒 Your role (",i.jsx("code",{children:y||"viewer"}),") is read-only here — provider configuration and user management require the ",i.jsx("code",{children:"admin"})," role. The CLI enforces the same governance policy (rbac.json)."]}),i.jsx("p",{className:"admin-subtitle",children:"The dashboard executes the same state commands as the CLI — no command needed. Provider keys are masked here and every write goes through the same config the CLI uses."}),a?i.jsx("div",{className:"admin-error",children:a}):null,e?i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"admin-summary-grid",children:[i.jsxs("div",{className:"admin-summary-card admin-summary-pass",children:[i.jsx("div",{className:"admin-summary-value",children:Di+Bi}),i.jsx("div",{className:"admin-summary-label",children:"✅ Passing"})]}),i.jsxs("div",{className:"admin-summary-card admin-summary-warn",children:[i.jsx("div",{className:"admin-summary-value",children:ma+Gn}),i.jsx("div",{className:"admin-summary-label",children:"⚠️ Warnings"})]}),i.jsxs("div",{className:"admin-summary-card admin-summary-fail",children:[i.jsx("div",{className:"admin-summary-value",children:Ar+Us}),i.jsx("div",{className:"admin-summary-label",children:"❌ Failing"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:Fi.length}),i.jsx("div",{className:"admin-summary-label",children:"Providers"})]})]}),Vt?i.jsxs(i.Fragment,{children:[i.jsx("h2",{className:"section-subtitle",children:"👥 Dashboard Users (role.manage)"}),i.jsxs("div",{className:"admin-users-list",children:[F.map(H=>i.jsxs("div",{className:"admin-user-row",children:[i.jsx("span",{className:"admin-user-name",children:H.user}),i.jsx("span",{className:`admin-role-badge admin-role-${H.role}`,children:H.role}),i.jsxs("span",{className:"admin-user-since",children:["since ",new Date(H.createdAt).toLocaleDateString()]}),H.user!==k?i.jsx("button",{className:"admin-mini-btn admin-mini-danger",onClick:()=>void sr(H.user),children:"🗑 Remove user"}):i.jsx("span",{className:"admin-hint",children:"you"})]},H.user)),F.length===0?i.jsx("div",{className:"empty-state",children:"No dashboard users yet."}):null]}),i.jsxs("form",{className:"admin-gate-form admin-user-form",onSubmit:Ii,children:[i.jsxs("label",{children:[i.jsx("span",{children:"Username"}),i.jsx("input",{type:"text",value:z,onChange:H=>T(H.target.value),autoComplete:"off"})]}),i.jsxs("label",{children:[i.jsx("span",{children:"Password (min 8 chars)"}),i.jsx("input",{type:"password",value:K,onChange:H=>D(H.target.value),autoComplete:"new-password"})]}),i.jsxs("label",{children:[i.jsx("span",{children:"Role"}),i.jsxs("select",{value:I,onChange:H=>ce(H.target.value),children:[i.jsx("option",{value:"viewer",children:"viewer — read-only"}),i.jsx("option",{value:"operator",children:"operator — read-only in the dashboard today"}),i.jsx("option",{value:"admin",children:"admin — full control"})]})]}),W?i.jsx("div",{className:"admin-row-msg",children:W}):null,i.jsx("button",{className:"admin-refresh-btn",type:"submit",disabled:!z||!K,children:"➕ Add user"})]})]}):null,i.jsx("h2",{className:"section-subtitle",children:"🔑 Provider Configuration (keys masked)"}),i.jsx("div",{className:"admin-table-wrapper",children:i.jsxs("table",{className:"admin-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Provider"}),i.jsx("th",{children:"Status"}),i.jsx("th",{children:"Key"}),i.jsx("th",{children:"Base URL"}),i.jsx("th",{children:"Model"}),i.jsx("th",{children:"Actions"})]})}),i.jsxs("tbody",{children:[Fi.map(H=>{const ue=Ws(H.type),Pe=Oe[H.type]||{};return i.jsxs("tr",{children:[i.jsxs("td",{className:"admin-provider-type",children:[ue.icon?`${ue.icon} `:"",ue.label,i.jsxs("div",{className:"admin-provider-sub",children:[H.type," · ",Goe[H.keySource]||H.keySource]}),H.keySource==="env"?i.jsxs("div",{className:"admin-hint",children:["comes from ",ue.envVar||"env var"," — change it there, config can't override it"]}):H.keySource==="vault"?i.jsx("div",{className:"admin-hint",children:"stored in the OS keyring (vault)"}):null]}),i.jsx("td",{children:i.jsx("span",{className:`admin-check-badge ${H.configured?"admin-check-pass":"admin-check-warn"}`,children:H.configured?"✅ Configured":"⚠️ Not configured"})}),i.jsx("td",{children:ue.keyless?i.jsx("div",{className:"admin-hint",children:"No key needed (probed)"}):Vt?i.jsx("input",{className:"admin-input admin-key-input",type:"password","aria-label":`${H.type} API key`,placeholder:H.keyMasked||"set a new key…",value:Pe.apiKey??"",onChange:Te=>Kr(H.type,"apiKey",Te.target.value),autoComplete:"new-password"}):i.jsx("div",{className:"admin-hint",children:H.keyMasked||"—"})}),i.jsx("td",{children:Vt?i.jsx("input",{className:"admin-input",type:"text","aria-label":`${H.type} base URL`,placeholder:H.baseUrl||"default endpoint",value:Pe.baseUrl??"",onChange:Te=>Kr(H.type,"baseUrl",Te.target.value)}):i.jsx("div",{className:"admin-hint",children:H.baseUrl?H.baseUrl.replace(/^https?:\/\/(?:[^@/]*@)?/,""):"default endpoint"})}),i.jsx("td",{children:Vt?i.jsx("input",{className:"admin-input",type:"text","aria-label":`${H.type} model`,placeholder:H.model||"default model",value:Pe.model??"",onChange:Te=>Kr(H.type,"model",Te.target.value)}):i.jsx("div",{className:"admin-hint",children:H.model||"default model"})}),i.jsx("td",{children:Vt?i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"admin-row-actions",children:[i.jsx("button",{className:"admin-mini-btn",disabled:qe===H.type,onClick:()=>void Xt(H.type),children:"💾 Save"}),i.jsx("button",{className:"admin-mini-btn",disabled:qe===H.type,title:"Tests the SAVED configuration — save first to test a new key",onClick:()=>void _r(H.type),children:"🔌 Test"}),i.jsx("button",{className:"admin-mini-btn admin-mini-danger",disabled:qe===H.type,onClick:()=>void $i(H.type),children:"🗑 Remove"})]}),fn[H.type]?i.jsx("div",{className:"admin-row-msg",children:fn[H.type]}):null]}):i.jsx("div",{className:"admin-hint",children:"read-only"})})]},H.type)}),Fi.length===0?i.jsx("tr",{children:i.jsx("td",{colSpan:6,className:"admin-empty-cell",children:"No providers configured yet."})}):null]})]})}),Vt&&Je.length>0?i.jsxs("div",{className:"admin-add-provider",children:[i.jsxs("select",{className:"admin-input",value:V,onChange:H=>oe(H.target.value),children:[i.jsx("option",{value:"",children:"Add a provider…"}),Je.filter(H=>!Fi.some(ue=>ue.type===H.id)).map(H=>i.jsxs("option",{value:H.id,children:[H.icon?`${H.icon} `:"",H.label," (",H.id,")"]},H.id))]}),i.jsx("button",{className:"admin-mini-btn",disabled:!V,onClick:Li,children:"➕ Add"})]}):null,i.jsx("h2",{className:"section-subtitle",children:"📁 Workspace (chat turns with no attached folder)"}),i.jsx("p",{className:"admin-hint",children:"A chat turn runs against a directory. An attached folder always wins; with none attached, this is where the turn lands. Leave it empty and an ask that needs a project — an assessment, a file, an image — asks you to attach a folder instead of scanning the server's own working directory."}),i.jsxs("form",{className:"admin-gate-form",onSubmit:qr,children:[i.jsxs("label",{children:[i.jsx("span",{children:"Working directory"}),i.jsx("input",{type:"text",value:Ce,onChange:H=>Q(H.target.value),placeholder:"/Users/you/Documents/my-project",disabled:fe||!c||!Nr})]}),ge?i.jsxs("p",{className:"admin-hint",children:[ge.effective?i.jsxs(i.Fragment,{children:["Effective: ",i.jsx("code",{children:ge.effective})]}):i.jsxs(i.Fragment,{children:["Not set — unattached project asks will ask for a folder (server cwd: ",i.jsx("code",{children:ge.processCwd}),")"]}),ge.configured&&!ge.configuredValid?" ⚠️ The saved path no longer exists and is being ignored.":""]}):null,X?i.jsx("div",{className:"admin-row-msg",children:X}):null,Nr?i.jsx("button",{className:"admin-refresh-btn",type:"submit",disabled:fe||!c,children:fe?"⏳ Saving…":"💾 Save workspace"}):i.jsx("span",{className:"admin-hint",children:"🔒 Changing the workspace requires admin or operator."})]}),i.jsx("h2",{className:"section-subtitle",children:"🧠 Response Cache (answers by workspace)"}),i.jsx("p",{className:"admin-hint",children:"The cache is keyed by the folder an answer was produced in. If a project has changed and an ask replays an old answer, clear that project — every other project keeps its cached answers."}),_e?i.jsx("div",{className:"admin-row-msg",children:_e}):null,ye&&ye.workspaces.length>0?i.jsx("div",{className:"admin-table-wrapper",children:i.jsxs("table",{className:"admin-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Workspace"}),i.jsx("th",{children:"Answers"}),i.jsx("th",{children:"Newest"}),i.jsx("th",{children:"Models"}),i.jsx("th",{children:"Sample"}),i.jsx("th",{})]})}),i.jsx("tbody",{children:ye.workspaces.map(H=>{var ue;return i.jsxs("tr",{children:[i.jsx("td",{className:"admin-provider-type",children:H.scope?i.jsx("code",{children:H.scope}):i.jsx("em",{children:"no workspace attached"})}),i.jsx("td",{children:H.count}),i.jsx("td",{className:"admin-hint",children:new Date(H.newestAt).toLocaleString()}),i.jsxs("td",{className:"admin-hint",children:[H.models.slice(0,2).join(", "),H.models.length>2?` +${H.models.length-2}`:""]}),i.jsx("td",{className:"admin-hint",children:((ue=H.samples[0])==null?void 0:ue.prompt)??""}),i.jsx("td",{children:i.jsx("button",{className:"admin-refresh-btn",type:"button",disabled:$e!==null||!Nr,onClick:()=>void an(H.scope),children:$e===(H.scope??"__none__")?"⏳ …":"🗑 Clear"})})]},H.scope??"__none__")})})]})}):i.jsx("div",{className:"empty-state",children:"No cached answers — every turn reached a model."}),ye&&ye.total>0?i.jsxs("p",{className:"admin-hint",children:[ye.total," cached answer",ye.total===1?"":"s"," across"," ",ye.workspaces.length," workspace",ye.workspaces.length===1?"":"s","."]}):null,i.jsx(Hoe,{authed:c,role:y||"viewer"}),i.jsx(Foe,{authed:c,role:y||"viewer"}),i.jsx("h2",{className:"section-subtitle",children:"⚙️ System Checks (buff doctor)"}),i.jsx("div",{className:"admin-check-list",children:e.system.map(H=>i.jsx(Ib,{check:H},H.name))}),i.jsx("h2",{className:"section-subtitle",children:"🏥 Enterprise Self-Check (doctor --enterprise)"}),i.jsx("div",{className:"admin-check-list",children:e.enterprise.length>0?e.enterprise.map(H=>i.jsx(Ib,{check:H},H.name)):i.jsx("div",{className:"empty-state",children:"No enterprise checks returned."})})]}):n?i.jsxs("div",{className:"loading-state",children:[i.jsx("div",{className:"loading-spinner"}),i.jsx("p",{children:"Running all state checks…"})]}):null]})}function dM(e){return String(e??"").replace(/\d{3,}/g,t=>t.slice(0,2)+"***")}const Koe={idle:"Not paired",pairing:"⏳ Pairing…",paired:"✅ Paired",failed:"❌ Pairing failed",cancelled:"⏹ Cancelled",error:"💥 Pairing error"};function Voe({authed:e,canWrite:t,sessionExpired:n,reveal:r=!1}){const[a,s]=S.useState(null),[o,l]=S.useState({}),[c,u]=S.useState(""),[d,f]=S.useState(!1),[h,p]=S.useState(null),g=S.useRef(null),m=S.useCallback(async()=>{const b=await Z.getWhatsAppStatus();b&&(s(b.status),l(b.contacts??{}))},[]);S.useEffect(()=>{if(m(),!e||typeof EventSource>"u")return;const b=Z.subscribeWhatsApp({onQr:N=>s(E=>E&&{...E,qr:N,state:"pairing"}),onCode:N=>s(E=>E&&{...E,pairingCode:N}),onStatus:N=>{s(N),(N.state==="paired"||N.state==="failed"||N.state==="error"||N.state==="cancelled")&&f(!1)}});return g.current=b,()=>{b(),g.current=null}},[e,m]);const y=async b=>{f(!0),p(null);const N=await b();if(!N.ok&&N.error&&/Not authenticated|Session expired/i.test(N.error)){n(),f(!1);return}N.ok?(p({kind:"ok",text:"Done."}),await m()):p({kind:"err",text:N.error||"Action failed."}),f(!1)},v=b=>{p(null),y(()=>Z.startWhatsAppPair(b?c.trim():void 0)).then(()=>u(""))},k=()=>{p(null),y(()=>Z.cancelWhatsAppPair())},x=()=>{window.confirm("Remove the paired WhatsApp session from this machine? You will need to scan a QR to pair again.")&&(p(null),y(()=>Z.unpairWhatsApp()))},j=(a==null?void 0:a.state)??"idle",w=j==="pairing";return i.jsxs("div",{className:"wa-panel",children:[i.jsxs("div",{className:"wa-panel-head",children:[i.jsx("span",{className:"wa-panel-title",children:"🟢 WhatsApp bridge"}),a?i.jsx("span",{className:`wa-badge ${a.paired?"wa-badge-paired":w?"wa-badge-pairing":""}`,children:Koe[j]}):i.jsx("span",{className:"admin-hint",children:"loading…"})]}),i.jsxs("p",{className:"admin-hint",children:["The personal Baileys bridge (no Meta Business account) — pair once, and the gateway can send & receive WhatsApp. Session: ",i.jsx("code",{children:(a==null?void 0:a.sessionDir)??"~/.buff/whatsapp/session"}),". Same engine as"," ",i.jsx("code",{children:"buff whatsapp pair"}),"."]}),w?i.jsxs("div",{className:"wa-pairing",children:[a!=null&&a.qr?i.jsxs("div",{className:"wa-qr-box",children:[i.jsx("img",{className:"wa-qr-img",src:a.qr,alt:"WhatsApp pairing QR code"}),i.jsxs("p",{className:"admin-hint",children:["Open WhatsApp on the phone → ",i.jsx("strong",{children:"Linked devices → Link a device → scan"}),". The QR refreshes automatically while this window is open."]})]}):a!=null&&a.phone?i.jsxs("div",{className:"wa-code-box",children:[i.jsxs("p",{className:"admin-hint",children:["On the phone with ",i.jsx("strong",{children:a.phone}),": WhatsApp → Linked devices → Link a device →"," ",i.jsx("strong",{children:"“Link with phone number instead”"})," → enter:"]}),i.jsx("div",{className:"wa-code",children:a.pairingCode??"… waiting for code"})]}):i.jsx("div",{className:"wa-code-box",children:i.jsx("p",{className:"admin-hint",children:"Waiting for WhatsApp to hand over a QR… (it usually appears within a few seconds)"})}),a!=null&&a.phone?null:i.jsxs("div",{className:"admin-hint",children:["Tip: on a phone, “Link with phone number instead” needs the number format"," ",i.jsx("code",{children:"918844433322"})," (country code included) — enter it below instead of scanning."]}),a!=null&&a.error?i.jsx("div",{className:"admin-row-msg admin-row-msg-err",children:a.error}):null,t&&e?i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:k,disabled:d,children:d?"⏳…":"⏹ Cancel pairing"}):null]}):i.jsxs("div",{className:"wa-actions",children:[t&&e?a!=null&&a.paired?i.jsxs("div",{className:"wa-action-row",children:[i.jsx("button",{className:"admin-refresh-btn wa-unpair-btn",type:"button",onClick:x,disabled:d,children:d?"⏳…":"🗑 Unpair (remove session)"}),i.jsx("span",{className:"admin-hint",children:"Removes creds.json — you will need to scan a QR again."})]}):i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"wa-action-row",children:[i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>v(!1),disabled:d,children:d?"⏳…":"🔳 Pair with a QR"}),i.jsx("span",{className:"admin-hint",children:"Scans from the phone you want to link."})]}),i.jsxs("div",{className:"wa-action-row wa-phone-row",children:[i.jsx("input",{type:"text",className:"wa-phone-input",value:c,onChange:b=>u(b.target.value),placeholder:"or pair with a number — e.g. 918844433322",disabled:d,maxLength:16}),i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>v(!0),disabled:d||!c.trim(),children:"Pair by number"})]})]}):null,j==="failed"||j==="error"||j==="cancelled"?i.jsx("div",{className:"admin-row-msg admin-row-msg-err",children:(a==null?void 0:a.error)||(j==="cancelled"?"Pairing cancelled.":"Pairing failed — try again.")}):null,e?t?null:i.jsx("div",{className:"admin-row-msg",children:"Your role can view pairing status but not change it (requires admin or operator)."}):i.jsx("div",{className:"admin-row-msg",children:"Log in (admin or operator) to pair, cancel, or unpair."}),h?i.jsx("div",{className:`admin-row-msg${h.kind==="ok"?"":" admin-row-msg-err"}`,children:h.text}):null]}),i.jsxs("div",{className:"wa-contacts",children:[i.jsxs("div",{className:"wa-contacts-head",children:[i.jsx("span",{className:"wa-panel-title",children:"📇 Send-by-name contacts"}),i.jsxs("span",{className:"admin-hint",children:[Object.keys(o).length," mapped"]})]}),i.jsxs("p",{className:"admin-hint",children:["These names are for ",i.jsx("strong",{children:"sending messages by name"})," (e.g."," ",i.jsx("code",{children:'buff gateway send whatsapp:Name "…"'}),") — they do"," ",i.jsx("strong",{children:"NOT"})," let these numbers trigger the agent."]}),i.jsx("div",{className:"hub-alias-list",children:Object.keys(o).length===0?i.jsxs("span",{className:"admin-hint",children:["(none — add one with ",i.jsx("code",{children:"buff whatsapp contact add <Name> <number>"}),")"]}):Object.entries(o).map(([b,N])=>i.jsxs("div",{className:"hub-alias-row",children:[i.jsx("span",{className:"hub-chip",children:b}),i.jsxs("span",{className:"admin-hint",children:["→ ",r?N:dM(N)]})]},b))}),i.jsxs("p",{className:"admin-hint",style:{marginTop:8},children:["To let a number ",i.jsx("strong",{children:"trigger the agent"})," (respond to its messages), add it to the"," ",i.jsx("strong",{children:"verified list"})," in the ",i.jsx("strong",{children:"Permissions tab above"}),", or run"," ",i.jsx("code",{children:"buff config gateway allow whatsapp user <number>"}),"."]})]})]})}function Yoe({canWrite:e,sessionExpired:t,mode:n="grid"}){const[r,a]=S.useState(null),[s,o]=S.useState(null),[l,c]=S.useState(null),[u,d]=S.useState(null),[f,h]=S.useState(null),[p,g]=S.useState(0),[m,y]=S.useState({}),[v,k]=S.useState(!1),[x,j]=S.useState(null),w=S.useRef(!0),b=S.useCallback(async()=>{const B=await Z.getPlatformConfigs();w.current&&a(B)},[t]);S.useEffect(()=>(b(),()=>{w.current=!1}),[b]);const N=async(B,M)=>{c(B),d(null);const F=await Z.setPlatformConfig(B,M);if(w.current){if(c(null),F.unauthorized||F.forbidden){t(F.error);return}d({kind:F.ok?"ok":"err",text:F.ok?"Saved — transport active.":F.error||"Save failed."}),F.ok&&(o(null),b())}},E=async B=>{if(!window.confirm(`Remove ${B} transport config? Tokens will be deleted from ~/.buff/.env.`))return;c(B),d(null);const M=await Z.removePlatformConfig(B);if(w.current){if(c(null),M.unauthorized||M.forbidden){t(M.error);return}d({kind:M.ok?"ok":"err",text:M.ok?"Removed.":M.error||"Remove failed."}),M.ok&&b()}},O={telegram:{steps:["Open Telegram and search for @BotFather","Send /newbot to BotFather and follow the prompts",'Give your bot a name (e.g. "My Agent Bot")','Give your bot a username (must end with "bot", e.g. "my_agent_bot")',"BotFather will give you a token — paste it in the field below","Open your bot in Telegram and send it a message (e.g. /start)"],postSetup:["Start the gateway: buff gateway start (or from the Gateway tab)","Open your bot in Telegram and send a message — the agent replies!"]},discord:{steps:["Go to https://discord.com/developers/applications",'Click "New Application" → give it a name → Create','Go to "Bot" in the left sidebar → click "Add Bot"','Under "Token", click "Copy" to copy the bot token','Enable "Message Content Intent" under Privileged Gateway Intents',"Invite the bot to your server with the OAuth2 URL generator"],postSetup:["Start the gateway: buff gateway start","Mention the bot in a Discord channel or send it a DM","The agent will reply automatically!"]},slack:{steps:["Go to https://api.slack.com/apps",'Click "Create New App" → "From scratch"',"Add Bot Token Scopes: chat:write, im:read, im:write","Install the app to your workspace","Copy the Bot User OAuth Token (starts with xoxb-)"],postSetup:["Start the gateway: buff gateway start","DM the bot or mention it in a channel","The agent will reply automatically!"]},email:{steps:["You need an SMTP relay (Gmail, SendGrid, Mailgun, etc.)","For Gmail: use smtp.gmail.com:587 with an App Password","For SendGrid/Mailgun: get SMTP credentials from their dashboard"],postSetup:["Start the gateway: buff gateway start","Send an email to the configured address","The agent will reply via email!"]}},C=B=>{e&&(h(B),g(0),y(Object.fromEntries(B.envVars.map(M=>[M.varName,M.value]))),j(null))},P=async()=>{if(!f||!e)return;k(!0),j(null);const B=await Z.setPlatformConfig(f.platform,m);if(k(!1),B.unauthorized||B.forbidden){t(B.error);return}B.ok?(j({kind:"ok",text:"✅ Token saved! The transport is now active."}),b()):j({kind:"err",text:B.error||"Save failed."})};if(r===null)return i.jsx("div",{className:"empty-state",children:"Loading platform transports…"});const $=f?O[f.platform]:null;return n==="table"?i.jsxs(i.Fragment,{children:[f&&$?i.jsx("div",{className:"wizard-overlay",onClick:()=>h(null),children:i.jsxs("div",{className:"wizard-modal",onClick:B=>B.stopPropagation(),children:[i.jsxs("div",{className:"wizard-header",children:[i.jsx("span",{className:"wizard-icon",children:"🚀"}),i.jsxs("span",{className:"wizard-title",children:["Getting Started: ",f.label]}),i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>h(null),children:"✕"})]}),i.jsx("div",{className:"wizard-body",children:p===0?i.jsxs(i.Fragment,{children:[i.jsx("p",{className:"wizard-section-title",children:"📋 Steps to create your bot:"}),i.jsx("ol",{className:"wizard-steps",children:$.steps.map((B,M)=>i.jsx("li",{children:B},M))}),i.jsxs("div",{className:"wizard-nav",children:[i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>g(1),children:"I have my token →"}),f.setupUrl?i.jsx("a",{href:f.setupUrl,target:"_blank",rel:"noopener noreferrer",className:"admin-mini-btn platform-docs-link",children:"📖 Docs"}):null]})]}):i.jsxs(i.Fragment,{children:[i.jsx("p",{className:"wizard-section-title",children:"🔑 Paste your token:"}),f.envVars.map(B=>i.jsxs("label",{className:"hub-send-target",children:[i.jsx("span",{className:"admin-hint",children:B.prompt}),i.jsx("input",{type:B.secret?"password":"text",value:m[B.varName]??"",onChange:M=>y(F=>({...F,[B.varName]:M.target.value})),placeholder:B.secret?"••••••••":"value",autoComplete:"off",spellCheck:!1,autoFocus:!0})]},B.varName)),x?i.jsx("div",{className:`admin-row-msg${x.kind==="ok"?"":" admin-row-msg-err"}`,children:x.text}):null,i.jsxs("div",{className:"wizard-nav",children:[i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>g(0),children:"← Back"}),i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>void P(),disabled:v||!e,children:v?"⏳ Saving…":"💾 Save token"})]}),(x==null?void 0:x.kind)==="ok"?i.jsxs(i.Fragment,{children:[i.jsx("p",{className:"wizard-section-title",children:"📋 Next steps:"}),i.jsx("ol",{className:"wizard-steps",children:$.postSetup.map((B,M)=>i.jsx("li",{children:B},M))})]}):null]})})]})}):null,u?i.jsx("div",{className:`admin-row-msg${u.kind==="ok"?"":" admin-row-msg-err"}`,children:u.text}):null,i.jsx("div",{className:"platform-config-table-wrapper",children:i.jsxs("table",{className:"platform-config-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Platform"}),i.jsx("th",{children:"Status"}),i.jsx("th",{children:"Configuration"}),i.jsx("th",{children:"CLI Command"})]})}),i.jsx("tbody",{children:r.map(B=>i.jsxs(q.Fragment,{children:[i.jsxs("tr",{className:`platform-config-row ${B.configured?"configured":""}`,children:[i.jsxs("td",{className:"platform-config-name",children:[i.jsx("span",{className:"hub-platform-label",children:B.label}),i.jsx("span",{className:"hub-card-id",children:B.platform})]}),i.jsxs("td",{children:[i.jsx("span",{className:`status-dot ${B.configured?"connected":"reconnecting"}`}),i.jsx("span",{className:"platform-config-status-text",children:B.configured?"Active":"Not configured"})]}),i.jsxs("td",{className:"platform-config-actions",children:[B.configured?null:i.jsx("button",{type:"button",className:"wizard-start-btn",onClick:()=>C(B),disabled:!e,children:"🚀 Getting Started"}),B.setupUrl?i.jsx("a",{href:B.setupUrl,target:"_blank",rel:"noopener noreferrer",className:"admin-mini-btn platform-docs-link",children:"📖 Docs"}):null,i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>o(s===B.platform?null:B.platform),disabled:!e,children:s===B.platform?"▴ Close":B.configured?"✎ Edit":"⚙ Configure"}),B.configured?i.jsx("button",{type:"button",className:"admin-mini-btn contact-delete-btn",onClick:()=>void E(B.platform),disabled:!e,children:"🗑️"}):null]}),i.jsx("td",{className:"platform-config-cli",children:i.jsxs("code",{children:["buff gateway setup ",B.platform]})})]}),s===B.platform?i.jsx("tr",{className:"platform-config-expanded",children:i.jsx("td",{colSpan:4,children:i.jsxs("div",{className:"platform-config-form",children:[B.envVars.map(M=>i.jsxs("label",{className:"hub-send-target",children:[i.jsx("span",{className:"admin-hint",children:M.prompt}),i.jsx("input",{type:M.secret?"password":"text",value:M.value,readOnly:!0,className:"platform-config-readonly",placeholder:M.secret?"••••••••":"value"})]},M.varName)),i.jsxs("p",{className:"admin-hint",children:["Tokens are in ",i.jsx("code",{children:"~/.buff/.env"})," — edit there or use the wizard above."]})]})})}):null]},B.platform))})]})})]}):i.jsxs(i.Fragment,{children:[f&&$?i.jsx("div",{className:"wizard-overlay",onClick:()=>h(null),children:i.jsxs("div",{className:"wizard-modal",onClick:B=>B.stopPropagation(),children:[i.jsxs("div",{className:"wizard-header",children:[i.jsx("span",{className:"wizard-icon",children:"🚀"}),i.jsxs("span",{className:"wizard-title",children:["Getting Started: ",f.label]}),i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>h(null),children:"✕"})]}),i.jsx("div",{className:"wizard-body",children:p===0?i.jsxs(i.Fragment,{children:[i.jsx("p",{className:"wizard-section-title",children:"📋 Steps to create your bot:"}),i.jsx("ol",{className:"wizard-steps",children:$.steps.map((B,M)=>i.jsx("li",{children:B},M))}),i.jsxs("div",{className:"wizard-nav",children:[i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>g(1),children:"I have my token →"}),f.setupUrl?i.jsx("a",{href:f.setupUrl,target:"_blank",rel:"noopener noreferrer",className:"admin-mini-btn platform-docs-link",children:"📖 Open docs in new tab"}):null]})]}):i.jsxs(i.Fragment,{children:[i.jsx("p",{className:"wizard-section-title",children:"🔑 Paste your token:"}),f.envVars.map(B=>i.jsxs("label",{className:"hub-send-target",children:[i.jsx("span",{className:"admin-hint",children:B.prompt}),i.jsx("input",{type:B.secret?"password":"text",value:m[B.varName]??"",onChange:M=>y(F=>({...F,[B.varName]:M.target.value})),placeholder:B.secret?"••••••••":"value",autoComplete:"off",spellCheck:!1,autoFocus:!0})]},B.varName)),x?i.jsx("div",{className:`admin-row-msg${x.kind==="ok"?"":" admin-row-msg-err"}`,children:x.text}):null,i.jsxs("div",{className:"wizard-nav",children:[i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>g(0),children:"← Back"}),i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>void P(),disabled:v||!e,children:v?"⏳ Saving…":"💾 Save token"})]}),(x==null?void 0:x.kind)==="ok"?i.jsxs(i.Fragment,{children:[i.jsx("p",{className:"wizard-section-title",children:"📋 Next steps:"}),i.jsx("ol",{className:"wizard-steps",children:$.postSetup.map((B,M)=>i.jsx("li",{children:B},M))})]}):null]})})]})}):null,i.jsxs("div",{className:"platform-config",children:[i.jsx("h2",{className:"section-subtitle",children:"⚙️ Platform transports (buff config gateway)"}),u?i.jsx("div",{className:`admin-row-msg${u.kind==="ok"?"":" admin-row-msg-err"}`,children:u.text}):null,i.jsx("div",{className:"hub-platform-grid",children:r.map(B=>i.jsx(Xoe,{entry:B,canWrite:e,busy:l===B.platform,expanded:s===B.platform,onToggle:()=>o(s===B.platform?null:B.platform),onSave:M=>void N(B.platform,M),onRemove:()=>void E(B.platform),onStartWizard:()=>C(B)},B.platform))}),i.jsxs("p",{className:"admin-hint",children:["Tokens are written to ",i.jsx("code",{children:"~/.buff/.env"})," (loaded by both the CLI and this dashboard at startup) — no env vars to hand-export. The WhatsApp personal bridge is configured separately above via QR/code pairing."]})]})]})}function Xoe(e){const{entry:t,canWrite:n,busy:r,expanded:a,onToggle:s,onSave:o,onRemove:l,onStartWizard:c}=e,[u,d]=S.useState(()=>Object.fromEntries(t.envVars.map(h=>[h.varName,h.value]))),f=(h,p)=>{d(g=>({...g,[h]:p}))};return i.jsxs("div",{className:`hub-platform${t.configured?" configured":""}`,children:[i.jsxs("div",{className:"hub-platform-head",children:[i.jsx("span",{className:`status-dot ${t.configured?"connected":"reconnecting"}`}),i.jsx("span",{className:"hub-platform-label",children:t.label}),i.jsx("span",{className:"hub-card-id",children:t.platform}),t.configured?null:i.jsx("button",{type:"button",className:"wizard-start-btn",onClick:c,disabled:!n,title:"Step-by-step setup wizard",children:"🚀 Getting Started"}),t.setupUrl?i.jsx("a",{href:t.setupUrl,target:"_blank",rel:"noopener noreferrer",className:"admin-mini-btn platform-docs-link",title:"Setup documentation",children:"📖 Docs"}):null,i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:s,disabled:!n,children:a?"▴ Collapse":t.configured?"✎ Edit":"⚙ Configure"})]}),!a&&t.setupHint&&!t.configured?i.jsx("div",{className:"platform-setup-hint",children:t.setupHint}):null,a?i.jsxs("div",{className:"platform-config-form",children:[t.setupHint?i.jsx("div",{className:"platform-setup-hint",children:t.setupHint}):null,t.envVars.map(h=>i.jsxs("label",{className:"hub-send-target",children:[i.jsx("span",{className:"admin-hint",children:h.prompt}),i.jsx("input",{type:h.secret?"password":"text",value:u[h.varName]??"",onChange:p=>f(h.varName,p.target.value),placeholder:h.secret?"••••••••":"value",autoComplete:"off",spellCheck:!1,maxLength:512})]},h.varName)),i.jsxs("div",{className:"platform-config-actions",children:[i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>o(u),disabled:r||!n,children:r?"⏳ Saving…":"💾 Save"}),t.configured?i.jsx("button",{type:"button",className:"hub-remove-btn",onClick:l,disabled:r||!n,children:"🗑 Remove"}):null]})]}):i.jsx("div",{className:"hub-platform-env",children:t.envVars.map(h=>i.jsxs("div",{children:[i.jsx("code",{children:h.varName})," ",h.set?"✓ set":"— unset"]},h.varName))})]})}const Qoe=[{id:"tools",label:"Tools",icon:"🧰"},{id:"channels",label:"Channels",icon:"📡"},{id:"conversations",label:"Conversations",icon:"💬"},{id:"artifacts",label:"Artifacts",icon:"📦"},{id:"skills",label:"Skills",icon:"🧠"},{id:"subagents",label:"Subagents",icon:"🤖"}],Zoe={pending:"⏳ pending",sent:"✅ sent",failed:"❌ failed"},Joe=5e3,ele={spawning:"⏳ spawning",running:"▶ running",completed:"✅ completed",failed:"❌ failed",timeout:"⏰ timed out",killed:"⛔ killed"};function tle(e){const t=typeof document<"u"?document.documentElement:null,n=(r,a)=>!t||typeof getComputedStyle!="function"?a:getComputedStyle(t).getPropertyValue(r).trim()||a;return{canvas:n("--bg-primary","Canvas"),text:n("--text-primary","CanvasText"),muted:n("--text-muted","GrayText"),userBubble:n("--accent-blue","Highlight"),onUserBubble:n("--text-on-accent","HighlightText"),agentBubble:n("--bg-card","ButtonFace")}}function io(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function nle(e,t,n=new Date){const r=io(e.displayName),a=io(e.platform),s=e.messages.map(o=>{const l=o.role==="user",c=l?"user":"assistant",u=io(l?e.displayName:"Agent");return`<div class="msg msg-${c}">
135
- <div class="bubble bubble-${c}">${io(o.content)}</div>
136
- <div class="timestamp">${u} · ${io(new Date(o.ts).toLocaleString())}</div>
137
- </div>`}).join(`
138
- `);return`<!DOCTYPE html>
139
- <html lang="en">
140
- <head>
141
- <meta charset="utf-8">
142
- <title>Conversation with ${r}</title>
143
- <style>
144
- body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; max-width: 700px; margin: 40px auto; padding: 0 20px; background: ${t.canvas}; color: ${t.text}; line-height: 1.6; }
145
- h1 { font-size: 20px; margin-bottom: 4px; }
146
- .meta { color: ${t.muted}; font-size: 13px; margin-bottom: 20px; }
147
- .msg { margin-bottom: 16px; }
148
- .msg-user { text-align: right; }
149
- .msg-assistant { text-align: left; }
150
- .bubble { display: inline-block; max-width: 80%; padding: 10px 14px; border-radius: 12px; font-size: 14px; white-space: pre-wrap; word-break: break-word; text-align: left; }
151
- .bubble-user { background: ${t.userBubble}; color: ${t.onUserBubble}; border-bottom-right-radius: 4px; }
152
- .bubble-assistant { background: ${t.agentBubble}; color: ${t.text}; border-bottom-left-radius: 4px; }
153
- .timestamp { font-size: 11px; color: ${t.muted}; margin-top: 2px; }
154
- @media print { body { margin: 0; } }
155
- </style>
156
- </head>
157
- <body>
158
- <h1>Conversation with ${r}</h1>
159
- <div class="meta">Platform: ${a} · ${e.messageCount} messages · Exported: ${io(n.toLocaleString())}</div>
160
- ${s}
161
- </body>
162
- </html>`}function rle(){var gd,vd,zl,Fl,Ul,Wl,Hl,Gl,R,ee,te,ke,pn,xt,Mn;const[e,t]=S.useState("tools"),[n,r]=S.useState(null),[a,s]=S.useState(!0),[o,l]=S.useState(null),[c,u]=S.useState(!1),[d,f]=S.useState(null),[h,p]=S.useState(!1),[g,m]=S.useState(null),[y,v]=S.useState(null),[k,x]=S.useState(""),j=Ds(),[w,b]=S.useState(""),[N,E]=S.useState(null),[O,C]=S.useState(!1),[P,$]=S.useState(null),[B,M]=S.useState(null),[F,L]=S.useState({}),[W,A]=S.useState(""),[z,T]=S.useState(""),[K,D]=S.useState(!1),[I,ce]=S.useState(null),[ge,ve]=S.useState(!1),[Ce,Q]=S.useState({}),[X,ie]=S.useState(!1),[fe,J]=S.useState(null),[ye,je]=S.useState({}),[_e,be]=S.useState({}),[$e,he]=S.useState({}),[Je,Le]=S.useState(!1),[Oe,nt]=S.useState(null),[qe,Ct]=S.useState(""),[fn,U]=S.useState(null),[V,oe]=S.useState(!1),[pe,Ne]=S.useState(new Map),[Be,vt]=S.useState(new Set),[yt,hn]=S.useState(!1),[Kt,bt]=S.useState([]),[St,an]=S.useState(""),[qr,Vt]=S.useState(null),[Nr,Yt]=S.useState(""),[Rn,Er]=S.useState([]),[pa,Wa]=S.useState(0),[rt,Ii]=S.useState(0),[sr,Kr]=S.useState(!0),[Xt,$i]=S.useState(!1),[_r,Li]=S.useState(!1),Di=20,ma=S.useRef(null),Ar=S.useCallback(async(_=!1)=>{if(Xt)return;const G=_?0:rt;$i(!0);try{const ae=await Z.fetchGatewayConversations({offset:G,limit:Di,q:qe||void 0});ae.ok&&ae.conversations&&(Er(Y=>_?ae.conversations:[...Y,...ae.conversations]),Wa(ae.total??0),Ii(G+ae.conversations.length),Kr(ae.hasMore??!1))}catch{}$i(!1)},[Xt,rt,qe]);S.useEffect(()=>{e==="conversations"&&!_r&&!Xt&&(Li(!0),Ar(!0))},[e,_r,Xt,Ar]),S.useEffect(()=>{const _=ma.current;if(!_)return;const G=new IntersectionObserver(ae=>{var Y;(Y=ae[0])!=null&&Y.isIntersecting&&sr&&!Xt&&Ar(!1)},{threshold:.1});return G.observe(_),()=>G.disconnect()},[sr,Xt,Ar]),S.useEffect(()=>{const _=setTimeout(()=>{e==="conversations"&&_r&&(Er([]),Ii(0),Kr(!0),Ar(!0))},300);return()=>clearTimeout(_)},[qe]),S.useEffect(()=>Z.onTypingEvent(G=>{Ne(ae=>{const Y=new Map(ae),re=`${G.platform}:${G.channelId}`;return G.typing?Y.set(re,{platform:G.platform,channelId:G.channelId,startedAt:Date.now()}):Y.delete(re),Y})}),[]);const Bi=S.useCallback((_,G)=>{G.stopPropagation(),vt(ae=>{const Y=new Set(ae);return Y.has(_)?Y.delete(_):Y.add(_),Y})},[]),Gn=S.useCallback(()=>{vt(_=>_.size===Rn.length?new Set:new Set(Rn.map(G=>G.key)))},[Rn]),Us=S.useCallback(async()=>{if(Be.size!==0){hn(!0);try{await Z.exportGatewayConversations([...Be])}catch{}hn(!1)}},[Be]);S.useEffect(()=>{e==="conversations"&&Z.getAllConversationTags().then(_=>{_.ok&&_.tags&&bt(_.tags)})},[e]);const Ha=S.useCallback(async(_,G)=>{if(!G.trim())return;(await Z.addConversationTag(_,G.trim())).ok&&(Er(Y=>Y.map(re=>re.key===_?{...re,tags:[...re.tags??[],G.trim().toLowerCase()]}:re)),bt(Y=>Y.includes(G.trim().toLowerCase())?Y:[...Y,G.trim().toLowerCase()].sort())),Vt(null),Yt("")},[]),zi=S.useCallback(async(_,G)=>{(await Z.removeConversationTag(_,G)).ok&&Er(Y=>Y.map(re=>re.key===_?{...re,tags:(re.tags??[]).filter(me=>me!==G)}:re))},[]),Fi=S.useCallback((_,G)=>{G.stopPropagation();const ae=_.contactName||_.channelId,Y=[`Conversation with ${ae} (${_.platform})`,`Exported: ${new Date().toLocaleString()}`,`Messages: ${_.messageCount}`,"─".repeat(50),""];if(_.messages)for(const ze of _.messages){const Se=ze.role==="user"?ae:"Agent",Ot=new Date(ze.ts).toLocaleString();Y.push(`[${Ot}] ${Se}:`),Y.push(ze.content),Y.push("")}const re=new Blob([Y.join(`
163
- `)],{type:"text/plain;charset=utf-8"}),me=URL.createObjectURL(re),Ie=document.createElement("a");Ie.href=me,Ie.download=`conversation-${_.platform}-${_.channelId.replace(/[^\w]/g,"_")}-${new Date().toISOString().slice(0,10)}.txt`,document.body.appendChild(Ie),Ie.click(),document.body.removeChild(Ie),URL.revokeObjectURL(me)},[]),Ws=S.useCallback((_,G)=>{G.stopPropagation();const ae=_.contactName||_.channelId,Y=_.messages??[],re=nle({displayName:ae,platform:_.platform,messageCount:_.messageCount,messages:Y},tle()),me=window.open("","_blank");me&&(me.document.write(re),me.document.close(),setTimeout(()=>me.print(),300))},[]);S.useEffect(()=>{var G;const _=(G=n==null?void 0:n.conversations)==null?void 0:G.recent;!_||_.length===0||_r&&(rt>Di||qe||Er(ae=>{const Y=new Set(ae.map(Se=>Se.key)),re=_.map(Se=>({...Se})),me=new Map(ae.map(Se=>[Se.key,Se]));for(const Se of re)me.has(Se.key)&&me.set(Se.key,Se);const ze=[...re.filter(Se=>!Y.has(Se.key)),...me.values()];return ze.sort((Se,Ot)=>Ot.lastActiveAt-Se.lastActiveAt),ze}))},[(gd=n==null?void 0:n.conversations)==null?void 0:gd.recent]);const[H,ue]=S.useState(""),[Pe,Te]=S.useState([]),[Vr,Hs]=S.useState(!1),[or,Gs]=S.useState(!1),[Ui,We]=S.useState(null),[Wi,ga]=S.useState(null),[zt,Ga]=S.useState({}),[lr,Hi]=S.useState([]),[Cr,qs]=S.useState([]),[Ks,Vs]=S.useState(""),qn=_=>Je?String(_??""):dM(_),Sm=_=>{const G=_.match(/^(\d+)@/);if(!G)return"";const ae=G[1];return ae.length===12&&ae.startsWith("91")?`+${ae.slice(0,2)} ${ae.slice(2,7)} ${ae.slice(7)}`:ae.length===10?`+91 ${ae.slice(0,5)} ${ae.slice(5)}`:`+${ae}`},ld=_=>{const G=Sm(_.channelId),ae=qn(_.channelId);return _.contactName?{name:_.contactName,phone:G||ae}:{name:G||ae,phone:""}},Ys=S.useCallback(_=>{var G,ae;r(_),(G=_==null?void 0:_.channels)!=null&&G.statusRecipients&&qs(_.channels.statusRecipients),(ae=_==null?void 0:_.channels)!=null&&ae.contacts&&Hi(_.channels.contacts),_||l("Could not reach the dashboard server, or the server is older than this panel. Run `buff dashboard` to start it."),s(!1)},[]),Yr=S.useCallback(async()=>{u(!0),l(null),Ys(await Z.fetchHub()),u(!1)},[Ys]);S.useEffect(()=>{Yr(),Z.fetchAdminAuthStatus().then(_=>{_&&(f({configured:_.configured,authenticated:_.authenticated}),p(_.authenticated),m(_.role??null),v(_.user??null))})},[Yr,j]);const cd=((vd=n==null?void 0:n.subagents)==null?void 0:vd.running)??0;S.useEffect(()=>{if(cd===0)return;const _=setInterval(()=>{Z.fetchHub().then(G=>{G&&Ys(G)})},Joe);return()=>clearInterval(_)},[cd,Ys]);const It=h&&(g==="admin"||g==="operator"),ud=S.useRef(!1);S.useEffect(()=>{It&&!ud.current&&(ud.current=!0,Le(!0))},[It]);const Gi=async _=>{_==null||_.preventDefault();const G=H.trim();if(!G)return;Gs(!0),We(null);const ae=await Z.marketplaceSearch(G);Te(ae),Hs(!0),Gs(!1)},dd=async _=>{if(!h){We({kind:"err",text:"🔐 Log in (or set up admin access) to install skills."});return}if(!It){We({kind:"err",text:"Your role cannot install skills — admin or operator only."});return}ga(_),We(null);const G=await Z.marketplaceInstall(_);G.ok?(We({kind:"ok",text:`✅ Installed ${_} (quarantine checked) — it appears in the Skills list and loads via the skill tool next turn.`}),Yr()):We({kind:"err",text:G.quarantined?`⛔ ${G.error||"checksum mismatch — quarantined"}`:`❌ ${G.error||"Install failed."}`}),ga(null)},Tr=async _=>{if(!h){We({kind:"err",text:"🔐 Log in (or set up admin access) to uninstall skills."});return}if(!It){We({kind:"err",text:"Your role cannot uninstall skills — admin or operator only."});return}ga(_),We(null);const G=await Z.marketplaceUninstall(_);G.ok?(We({kind:"ok",text:`🗑️ Uninstalled ${_} — removed from .agents/skills/ and provenance.`}),Yr()):We({kind:"err",text:`❌ ${G.error||"Uninstall failed."}`}),ga(null)},Xr=()=>{p(!1),f(_=>_&&{..._,authenticated:!1}),E("Session expired — log in again to toggle capabilities.")},Ml=async _=>{_.preventDefault(),C(!0),E(null);const G=await Z.adminLogin(k,w);if(G.ok){p(!0),f({configured:!0,authenticated:!0}),m(G.role??"admin"),v(G.user??null),x(""),b("");const ae=P;$(null),ae&&await Tt(ae.kind,ae.name,ae.enabled)}else E(G.error||"Login failed.");C(!1)},Il=async _=>{if(_.preventDefault(),C(!0),E(null),w.length<8){E("Password must be at least 8 characters."),C(!1);return}const G=await Z.adminSetup(k,w);if(G.ok){p(!0),f({configured:!0,authenticated:!0}),m(G.role??"admin"),v(G.user??null),x(""),b("");const ae=P;$(null),ae&&await Tt(ae.kind,ae.name,ae.enabled)}else E(G.error||"Setup failed.");C(!1)},jm=async()=>{await Z.adminLogout(),p(!1),f(_=>_&&{..._,authenticated:!1}),m(null),v(null)},Tt=async(_,G,ae)=>{M(G);const Y=_==="skill"?await Z.setSkillEnabled(G,ae):await Z.setToolsetEnabled(G,ae);Y.ok?(L(re=>({...re,[G]:`✅ ${ae?"Enabled":"Disabled"} — live for new agent runs`})),Yr()):Y.unauthorized?Xr():(L(re=>({...re,[G]:`❌ ${Y.error||"Toggle failed"}`})),Y.forbidden&&E(Y.error||"Your role cannot change capabilities.")),M(null)},Nm=(_,G)=>{if(!h){$({kind:"toolset",name:_,enabled:G});return}Tt("toolset",_,G)},fd=(_,G)=>{if(!h){$({kind:"skill",name:_,enabled:G});return}Tt("skill",_,G)},Em=async _=>{if(_.preventDefault(),!h){ce({kind:"err",text:"🔐 Log in (or set up admin access) to send test messages."});return}if(!It){ce({kind:"err",text:"🔒 Your role cannot send channel messages — requires the admin or operator role."});return}D(!0),ce(null);const G=await Z.sendChannelMessage(W.trim(),z);G.ok?(ce({kind:"ok",text:`✅ Sent to ${W.trim()} (${G.platform}:${qn(G.channelId??"")})`}),T("")):G.unauthorized?(Xr(),ce({kind:"err",text:G.error||"Session expired — log in again."})):ce({kind:"err",text:G.error||"Send failed."}),D(!1)},$l=(_,G)=>{var Y,re;return(((re=(Y=n==null?void 0:n.channels)==null?void 0:Y.policies)==null?void 0:re[_])??{})[G]??[]},Ll=_=>_==="user"?"allowedUsers":_==="group"?"allowedGroups":"outboundSenders",Xs=(_,G,ae)=>{const Y=ae.trim();Y&&Q(re=>{var Ot;const me={...re[_]??{}},Ie=Ll(G),Se=[...((Ot=re[_])==null?void 0:Ot[Ie])??$l(_,Ie)];return Se.includes(Y)||Se.push(Y),me[Ie]=Se,{...re,[_]:me}})},Dl=(_,G,ae)=>{Q(Y=>{var Ot;const re=Ll(G),me=$l(_,re),ze=(((Ot=Y[_])==null?void 0:Ot[re])??me).filter(ql=>ql!==ae);if(ze.length===0&&me.length===0){const ql={...Y[_]??{}};delete ql[re];const Am={...Y};return Object.keys(ql).length===0?delete Am[_]:Am[_]=ql,Am}const Se={...Y[_]??{}};return Se[re]=ze,{...Y,[_]:Se}})},hd=(_,G)=>{const ae=_.trim().toLowerCase(),Y=G.trim().toLowerCase();if(ae==="*"||Y==="*"||ae===Y)return!0;const re=ae.replace(/\D+/g,""),me=Y.replace(/\D+/g,"");return re.length>0&&re===me},_m=_=>{const G=(zt[_]??"").trim(),ae=(ye[_]??"").trim();ae&&(Xs(_,"user",ae),G&&Hi(Y=>[...Y.filter(me=>!(me.platform===_&&(hd(me.id,ae)||me.name.toLowerCase()===G.toLowerCase()))),{name:G,platform:_,id:ae,addedAt:Date.now()}]),je(Y=>({...Y,[_]:""})),Ga(Y=>({...Y,[_]:""})))},pd=(_,G)=>{Dl(_,"user",G),Hi(ae=>ae.filter(Y=>!(Y.platform===_&&hd(Y.id,G))))},Qs=(_,G)=>{Q(ae=>{const Y={...ae[_]??{}};return G==="silentDrop"?Y.silentDrop=Y.silentDrop===!1:Y[G]?delete Y[G]:Y[G]=!0,{...ae,[_]:Y}})},va=Object.keys(Ce).length>0||lr.length!==(((Fl=(zl=n==null?void 0:n.channels)==null?void 0:zl.contacts)==null?void 0:Fl.length)??0)||lr.some((_,G)=>{var ae,Y;return!((Y=(ae=n==null?void 0:n.channels)==null?void 0:ae.contacts)!=null&&Y[G])||_.platform!==n.channels.contacts[G].platform||_.id!==n.channels.contacts[G].id||_.name!==n.channels.contacts[G].name})||Cr.length!==(((Wl=(Ul=n==null?void 0:n.channels)==null?void 0:Ul.statusRecipients)==null?void 0:Wl.length)??0)||Cr.some((_,G)=>{var ae,Y;return _!==((Y=(ae=n==null?void 0:n.channels)==null?void 0:ae.statusRecipients)==null?void 0:Y[G])}),Bl=async()=>{var G;if(!h){J({kind:"err",text:"🔐 Log in (or set up admin access) to change permissions."});return}if(!It){J({kind:"err",text:"🔒 Your role cannot change permissions — requires the admin or operator role."});return}ie(!0),J(null);const _=await Z.saveGatewayPolicies(Ce,Cr,lr);if(_.ok){const ae=(G=_.contactErrors)!=null&&G.length?`
164
- ⚠️ Some contacts were rejected: ${_.contactErrors.join("; ")}`:"";J({kind:ae?"warn":"ok",text:`✅ Permissions + saved contacts + status recipients saved — the running gateway applies them immediately.${ae}`}),Q({}),Yr()}else _.unauthorized?(Xr(),J({kind:"err",text:_.error||"Session expired — log in again."})):J({kind:"err",text:_.error||"Failed to save permissions."});ie(!1)};if(a)return i.jsxs("div",{className:"admin-header",children:[i.jsx(Me,{icon:"🧰",title:"Agent Hub"}),i.jsxs("div",{className:"loading-state",children:[i.jsx("div",{className:"loading-spinner"}),i.jsx("p",{children:"Loading hub…"})]})]});const md=!h&&P!==null;return i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"admin-header",children:[i.jsx(Me,{icon:"🧰",title:i.jsxs(i.Fragment,{children:["Agent Hub",y?i.jsxs("span",{className:`admin-role-badge admin-role-${g||"viewer"}`,children:[" ",y," · ",g||"viewer"]}):null]})}),i.jsxs("div",{className:"admin-header-actions",children:[i.jsxs("label",{className:"hub-reveal-toggle",children:[i.jsx("input",{type:"checkbox",checked:Je,onChange:_=>Le(_.target.checked),disabled:!It}),"Show full ids"]}),It?null:i.jsx("span",{className:"admin-hint",children:"🔒 admins/operators only"}),i.jsx("button",{className:"admin-refresh-btn",onClick:()=>void Yr(),disabled:c,children:c?"⏳ Refreshing…":"🔄 Refresh"}),h?i.jsx("button",{className:"admin-logout-btn",onClick:()=>void jm(),children:"🚪 Log out"}):null]})]}),i.jsxs("p",{className:"admin-subtitle",children:["Capabilities, messaging, artifacts and skills in one place — a single 4-view management page. Toggles persist to ",i.jsx("code",{children:"buffconfig"})," and are honored by the runtime immediately (never cosmetic)."]}),o?i.jsx("div",{className:"admin-error",children:o}):null,md?i.jsxs("div",{className:"admin-header",children:[i.jsx("h2",{className:"section-subtitle",children:d!=null&&d.configured?`🔐 Log in to ${P.enabled?"enable":"disable"} '${P.name}'`:`🔐 Set up admin access to ${P.enabled?"enable":"disable"} '${P.name}'`}),i.jsxs("form",{className:"admin-gate-form",onSubmit:d!=null&&d.configured?Ml:Il,children:[i.jsxs("label",{children:[i.jsx("span",{children:"Username"}),i.jsx("input",{type:"text",value:k,onChange:_=>x(_.target.value),autoComplete:"username",placeholder:"admin"})]}),i.jsxs("label",{children:[i.jsx("span",{children:"Password"}),i.jsx("input",{type:"password",value:w,onChange:_=>b(_.target.value),autoComplete:d!=null&&d.configured?"current-password":"new-password",placeholder:"••••••••"})]}),N?i.jsx("div",{className:"admin-error",children:N}):null,i.jsx("button",{className:"admin-refresh-btn",type:"submit",disabled:O||!k||!w,children:O?"⏳ …":d!=null&&d.configured?"🔐 Log in & apply":"🔐 Create admin & apply"}),d!=null&&d.configured?null:i.jsxs("p",{className:"admin-hint",children:["The first user is always an admin. Automation alternative: set"," ",i.jsx("code",{children:"BUFF_DASHBOARD_ADMIN_USER"})," / ",i.jsx("code",{children:"BUFF_DASHBOARD_ADMIN_PASSWORD"}),"."]})]})]}):null,!md&&!It&&h?i.jsxs("div",{className:"admin-readonly-note",children:["🔒 Your role (",i.jsx("code",{children:g||"viewer"}),") can view but not change capabilities — toggles require the ",i.jsx("code",{children:"admin"})," or ",i.jsx("code",{children:"operator"})," role."]}):null,i.jsx("div",{className:"hub-tabs",role:"tablist",children:Qoe.map(_=>{var ae,Y,re;const G=_.id==="tools"?n?`${n.toolsets.enabled}/${n.toolsets.toolsets.length}`:"":_.id==="channels"?n?String(n.channels.delivery.total):"":_.id==="conversations"?n?String(((ae=n.conversations)==null?void 0:ae.total)??0):"":_.id==="artifacts"?n?String(n.artifacts.totalSessions):"":_.id==="subagents"?n?`${((Y=n.subagents)==null?void 0:Y.running)??0}/${((re=n.subagents)==null?void 0:re.total)??0}`:"":n?`${n.skills.enabled}/${n.skills.total}`:"";return i.jsxs("button",{role:"tab","aria-selected":e===_.id,className:`hub-tab${e===_.id?" active":""}`,onClick:()=>t(_.id),children:[_.icon," ",_.label,G?i.jsx("span",{className:"hub-tab-count",children:G}):null]},_.id)})}),e==="tools"&&n?i.jsxs("div",{role:"tabpanel",children:[i.jsxs("div",{className:"admin-summary-grid",children:[i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.toolsets.enabled}),i.jsx("div",{className:"admin-summary-label",children:"Enabled toolsets"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.toolsets.disabled}),i.jsx("div",{className:"admin-summary-label",children:"Disabled toolsets"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.toolsets.totalTools}),i.jsx("div",{className:"admin-summary-label",children:"Registered tools"})]})]}),i.jsx("div",{className:"hub-toolset-grid",children:n.toolsets.toolsets.map(_=>i.jsxs("div",{className:`hub-card${_.enabled?"":" hub-card-disabled"}`,children:[i.jsxs("div",{className:"hub-card-top",children:[i.jsxs("div",{className:"hub-card-title",children:[i.jsx("span",{className:"hub-card-name",children:_.label}),i.jsx("span",{className:"hub-card-id",children:_.name})]}),i.jsx("button",{role:"switch","aria-checked":_.enabled,"aria-label":`${_.enabled?"Disable":"Enable"} ${_.label}`,className:`hub-switch${_.enabled?" on":""}`,disabled:B===_.name||P!==null||h&&!It,onClick:()=>Nm(_.name,!_.enabled),children:i.jsx("span",{className:"hub-switch-knob"})})]}),i.jsx("p",{className:"hub-card-desc",children:_.description}),i.jsx("div",{className:"hub-card-tools",children:_.tools.length>0?_.tools.map(G=>i.jsx("span",{className:"hub-chip",children:G},G)):i.jsx("span",{className:"admin-hint",children:"gates dynamic MCP tools (no static names)"})}),F[_.name]?i.jsx("div",{className:"admin-row-msg",children:F[_.name]}):null,_.enabled?null:i.jsx("div",{className:"hub-card-note",children:"⛔ Removed from the model schema — calls return an explicit error"})]},_.name))})]}):null,e==="channels"&&n?i.jsxs("div",{role:"tabpanel",children:[i.jsxs("div",{className:"admin-summary-grid",children:[i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.channels.delivery.pending}),i.jsx("div",{className:"admin-summary-label",children:"⏳ Queued for retry"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.channels.delivery.sent}),i.jsx("div",{className:"admin-summary-label",children:"✅ Delivered"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.channels.delivery.failed}),i.jsx("div",{className:"admin-summary-label",children:"❌ Failed (max retries)"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.channels.aliases.length}),i.jsx("div",{className:"admin-summary-label",children:"Channel aliases"})]})]}),i.jsx("h2",{className:"section-subtitle",children:"📮 Delivery ledger (guaranteed delivery)"}),n.channels.delivery.recent.length>0?i.jsx("div",{className:"admin-table-wrapper",children:i.jsxs("table",{className:"admin-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Target"}),i.jsx("th",{children:"Platform"}),i.jsx("th",{children:"Status"}),i.jsx("th",{children:"Attempts"}),i.jsx("th",{children:"Next retry"}),i.jsx("th",{children:"Message"})]})}),i.jsx("tbody",{children:n.channels.delivery.recent.map(_=>i.jsxs("tr",{children:[i.jsx("td",{className:"admin-provider-type",children:qn(_.target)}),i.jsx("td",{children:_.platform}),i.jsx("td",{children:i.jsx("span",{className:`admin-check-badge admin-check-${_.status==="sent"?"pass":_.status==="failed"?"fail":"warn"}`,children:Zoe[_.status]||_.status})}),i.jsxs("td",{children:[_.attempts,"/5"]}),i.jsx("td",{children:_.status==="pending"?`${Math.max(0,Math.round((_.nextAttemptAt-Date.now())/1e3))}s`:"—"}),i.jsx("td",{className:"admin-hint",children:_.lastError?`⚠️ ${_.lastError}`:(_.text||"").slice(0,60)})]},_.id))})]})}):i.jsx("div",{className:"empty-state",children:"Delivery ledger is empty — every gateway send has gone through."}),i.jsx("h2",{className:"section-subtitle",children:"📥 Inbox (received messages)"}),n.channels.inbox.recent.length>0?i.jsx("div",{className:"admin-table-wrapper",children:i.jsxs("table",{className:"admin-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Platform"}),i.jsx("th",{children:"From"}),i.jsx("th",{children:"Message"}),i.jsx("th",{children:"Handled"}),i.jsx("th",{children:"When"})]})}),i.jsx("tbody",{children:n.channels.inbox.recent.map(_=>i.jsxs("tr",{children:[i.jsxs("td",{className:"admin-provider-type",children:[_.platform,_.isGroup?i.jsx("span",{className:"hub-chip",children:"group"}):null]}),i.jsx("td",{children:qn(_.from||_.senderId||_.channelId)}),i.jsx("td",{className:"admin-hint",children:(_.text||"").slice(0,60)}),i.jsxs("td",{children:[i.jsx("span",{className:`admin-check-badge admin-check-${_.handled==="pipeline"?"pass":_.handled==="refused"?"fail":"warn"}`,children:_.handled}),_.reply?i.jsx("div",{className:"admin-hint",children:_.reply.slice(0,_.handled==="attachment_failed"?160:40)}):null]}),i.jsx("td",{className:"admin-hint",children:new Date(_.at).toLocaleString()})]},_.id))})]})}):i.jsx("div",{className:"empty-state",children:"Inbox is empty — messages the gateway receives will appear here."}),i.jsxs("p",{className:"admin-hint",children:[n.channels.inbox.total," received · ",n.channels.inbox.pipeline," triggered the pipeline ·"," ",n.channels.inbox.help," got the help line · ",n.channels.inbox.refused," refused by policy ·"," ",n.channels.inbox.duplicate??0," duplicate re-deliveries ignored ·"," ",n.channels.inbox.attachmentFailed??0," attachment(s) could not be read."]}),i.jsx("h2",{className:"section-subtitle",children:"🔌 Platform transports"}),i.jsx(Yoe,{canWrite:It,sessionExpired:Xr,mode:"table"}),i.jsx("h2",{className:"section-subtitle",children:"🔗 Channel aliases (buff gateway status)"}),n.channels.aliases.length>0?i.jsx("div",{className:"hub-alias-list",children:n.channels.aliases.map(_=>i.jsxs("div",{className:"hub-alias-row",children:[i.jsx("span",{className:"hub-chip",children:_.alias}),i.jsxs("span",{className:"admin-hint",children:["→ ",_.platform,":",qn(_.channelId)]})]},_.alias))}):i.jsxs("div",{className:"empty-state",children:["No aliases yet — register one with ",i.jsx("code",{children:"buff gateway alias <name> <platform> <channelId>"}),"."]}),va?i.jsxs("div",{className:"hub-unsaved-banner",role:"status",children:[i.jsxs("span",{children:["⚠️ ",i.jsx("strong",{children:"Unsaved changes"})," — what you see below is a ",i.jsx("em",{children:"draft"}),". Press"," ",i.jsx("strong",{children:"💾 Save permissions"})," to apply it to the gateway; leaving the page discards it."]}),i.jsx("button",{className:"admin-refresh-btn",type:"button",disabled:X,onClick:()=>void Bl(),children:X?"⏳ Saving…":"💾 Save permissions"})]}):null,i.jsx("div",{style:{cursor:"pointer",userSelect:"none",display:"flex",alignItems:"center",gap:8,marginBottom:8},onClick:()=>ve(!ge),children:i.jsxs("h2",{className:"section-subtitle",style:{margin:0},children:[ge?"▼":"▶"," 🔐 Permissions — who can TRIGGER the agent"]})}),i.jsxs("p",{className:"admin-hint",style:{marginBottom:ge?10:0},children:["This list controls ",i.jsx("strong",{children:"who may trigger the agent"})," when they message you on each platform (WhatsApp, Telegram, email, …). Click to ",ge?"collapse":"expand"," and manage permissions."]}),ge?i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"admin-hint",style:{marginBottom:10},children:["⚠ ",i.jsx("strong",{children:"Not the same as send-by-name contacts:"})," a WhatsApp contact name (from"," ",i.jsx("code",{children:"buff whatsapp contact add"}),", shown in the WhatsApp bridge panel below) only lets"," ",i.jsx("em",{children:"you"})," send ",i.jsx("em",{children:"to"})," it by name — it does ",i.jsx("strong",{children:"not"})," let that number trigger the agent. Add the number here (or ",i.jsx("code",{children:"buff config gateway allow <platform> user <id>"}),") to grant inbound access."]}),i.jsx("div",{className:"hub-permissions",children:n.channels.platforms.map(_=>{const G={...n.channels.policies[_.platform]??{},...Ce[_.platform]??{}},ae=G.allowedUsers??[],Y=G.allowedGroups??[];return i.jsxs("div",{className:"hub-card",children:[i.jsxs("div",{className:"hub-card-top",children:[i.jsx("span",{className:"hub-chip",children:_.label}),i.jsx("span",{className:"hub-card-id",children:_.platform}),G.disabled?i.jsx("span",{className:"hub-chip",children:"disabled"}):null]}),i.jsx("div",{className:"admin-hint",style:{margin:"4px 0 8px"},children:"Allowed users — who may trigger the agent"}),i.jsxs("div",{className:"hub-alias-list",children:[ae.length===0?i.jsxs("span",{className:"admin-hint",children:["(blank — no one may trigger; add ",i.jsx("code",{children:"Allow-All"})," to allow everyone)"]}):null,ae.map(re=>{var Ie,ze,Se,Ot;const me=(((Ie=Ce[_.platform])==null?void 0:Ie.allowedUsers)??[]).includes(re)&&!(((Ot=(Se=(ze=n==null?void 0:n.channels)==null?void 0:ze.policies)==null?void 0:Se[_.platform])==null?void 0:Ot.allowedUsers)??[]).includes(re);return i.jsxs("div",{className:"hub-alias-row",children:[i.jsxs("span",{className:`hub-chip${me?" hub-chip-pending":""}`,title:me?"Not saved yet — press 💾 Save permissions":void 0,children:[qn(re),me?" · unsaved":""]}),i.jsx("button",{className:"admin-refresh-btn",disabled:X,onClick:()=>pd(_.platform,re),children:"✕"})]},`u-${re}`)})]}),i.jsxs("div",{className:"hub-send-form",style:{margin:"6px 0 10px"},children:[i.jsx("input",{type:"text",value:zt[_.platform]??"",onChange:re=>Ga(me=>({...me,[_.platform]:re.target.value})),placeholder:"Name (optional)",disabled:X}),i.jsx("input",{type:"text",value:ye[_.platform]??"",onChange:re=>je(me=>({...me,[_.platform]:re.target.value})),placeholder:"Contact no / sender id, or Allow-All",disabled:X}),i.jsx("button",{className:"admin-refresh-btn",disabled:X||!(ye[_.platform]??"").trim(),onClick:()=>_m(_.platform),children:"+ User"})]}),i.jsx("div",{className:"admin-hint",style:{margin:"4px 0 8px"},children:"Allowed groups"}),i.jsxs("div",{className:"hub-alias-list",children:[Y.length===0?i.jsx("span",{className:"admin-hint",children:"(none — any group may trigger)"}):null,Y.map(re=>{var Ie,ze,Se,Ot;const me=(((Ie=Ce[_.platform])==null?void 0:Ie.allowedGroups)??[]).includes(re)&&!(((Ot=(Se=(ze=n==null?void 0:n.channels)==null?void 0:ze.policies)==null?void 0:Se[_.platform])==null?void 0:Ot.allowedGroups)??[]).includes(re);return i.jsxs("div",{className:"hub-alias-row",children:[i.jsxs("span",{className:`hub-chip${me?" hub-chip-pending":""}`,title:me?"Not saved yet — press 💾 Save permissions":void 0,children:[re,me?" · unsaved":""]}),i.jsx("button",{className:"admin-refresh-btn",disabled:X,onClick:()=>Dl(_.platform,"group",re),children:"✕"})]},`g-${re}`)})]}),i.jsxs("div",{className:"hub-send-form",style:{margin:"6px 0 10px"},children:[i.jsx("input",{type:"text",value:_e[_.platform]??"",onChange:re=>be(me=>({...me,[_.platform]:re.target.value})),placeholder:"group id, e.g. 1203630283471234@g.us",disabled:X}),i.jsx("button",{className:"admin-refresh-btn",disabled:X||!(_e[_.platform]??"").trim(),onClick:()=>{Xs(_.platform,"group",_e[_.platform]??""),be(re=>({...re,[_.platform]:""}))},children:"+ Group"})]}),i.jsx("div",{className:"admin-hint",style:{margin:"12px 0 4px"},children:"Send authority — who may tell the agent to send to OTHER people"}),i.jsx("div",{className:"admin-hint",style:{margin:"0 0 6px",opacity:.8},children:(G.outboundSenders??[]).length===0?"Open — anyone above who can trigger the agent can also direct outbound sends. Add senders to restrict it.":"Restricted to the senders below (Allow-All = everyone)."}),i.jsx("div",{className:"hub-alias-list",children:(G.outboundSenders??[]).map(re=>{var Ie,ze,Se,Ot;const me=(((Ie=Ce[_.platform])==null?void 0:Ie.outboundSenders)??[]).includes(re)&&!(((Ot=(Se=(ze=n==null?void 0:n.channels)==null?void 0:ze.policies)==null?void 0:Se[_.platform])==null?void 0:Ot.outboundSenders)??[]).includes(re);return i.jsxs("div",{className:"hub-alias-row",children:[i.jsxs("span",{className:`hub-chip${me?" hub-chip-pending":""}`,title:me?"Not saved yet — press 💾 Save permissions":void 0,children:[qn(re),me?" · unsaved":""]}),i.jsx("button",{className:"admin-refresh-btn",disabled:X,onClick:()=>Dl(_.platform,"send",re),children:"✕"})]},`s-${re}`)})}),i.jsxs("div",{className:"hub-send-form",style:{margin:"6px 0 10px"},children:[i.jsx("input",{type:"text",value:$e[_.platform]??"",onChange:re=>he(me=>({...me,[_.platform]:re.target.value})),placeholder:"sender id, or Allow-All",disabled:X}),i.jsx("button",{className:"admin-refresh-btn",disabled:X||!($e[_.platform]??"").trim(),onClick:()=>{Xs(_.platform,"send",$e[_.platform]??""),he(re=>({...re,[_.platform]:""}))},children:"+ Sender"})]}),i.jsxs("div",{className:"hub-send-form",style:{margin:"6px 0 0"},children:[i.jsxs("label",{style:{display:"inline-flex",alignItems:"center",gap:6,marginRight:12},children:[i.jsx("input",{type:"checkbox",checked:G.silentDrop!==!1,disabled:X,onChange:()=>Qs(_.platform,"silentDrop")}),i.jsx("span",{className:"admin-hint",children:"Silent (no reply to unapproved) — default"})]}),i.jsxs("label",{style:{display:"inline-flex",alignItems:"center",gap:6,marginRight:12},children:[i.jsx("input",{type:"checkbox",checked:!!G.requireMention,disabled:X,onChange:()=>Qs(_.platform,"requireMention")}),i.jsx("span",{className:"admin-hint",children:"Groups: mention only"})]}),i.jsxs("label",{style:{display:"inline-flex",alignItems:"center",gap:6,marginRight:12},children:[i.jsx("input",{type:"checkbox",checked:!!G.disabled,disabled:X,onChange:()=>Qs(_.platform,"disabled")}),i.jsx("span",{className:"admin-hint",children:"Disabled (off)"})]}),i.jsxs("label",{style:{display:"inline-flex",alignItems:"center",gap:6},children:[i.jsx("input",{type:"checkbox",checked:!!G.requireApprovedTarget,disabled:X,onChange:()=>Qs(_.platform,"requireApprovedTarget")}),i.jsx("span",{className:"admin-hint",children:"Require approved recipients for sends"})]})]})]},_.platform)})})]}):null,i.jsx("h2",{className:"section-subtitle",style:{marginTop:22},children:"📇 Telegram User Onboarding"}),i.jsxs("div",{className:"onboarding-summary",children:[i.jsx("p",{className:"admin-hint",style:{marginBottom:12},children:"Users who message your bot are auto-registered here. Approve them to enable outbound messaging."}),(()=>{const _=lr.filter(Y=>Y.status==="pending").length,G=lr.filter(Y=>Y.status==="approved").length,ae=lr.filter(Y=>Y.status==="rejected").length;return i.jsxs("div",{className:"onboarding-stats",children:[i.jsxs("span",{className:"onboarding-stat pending",children:["⏳ ",_," pending"]}),i.jsxs("span",{className:"onboarding-stat approved",children:["✅ ",G," approved"]}),i.jsxs("span",{className:"onboarding-stat rejected",children:["🚫 ",ae," rejected"]})]})})(),i.jsxs("div",{className:"onboarding-steps",children:[i.jsxs("div",{className:"onboarding-step",children:[i.jsx("span",{className:"onboarding-step-num",children:"1"}),i.jsxs("span",{children:["User sends any message to ",i.jsx("code",{children:"@agent_nuvira_bot"})]})]}),i.jsxs("div",{className:"onboarding-step",children:[i.jsx("span",{className:"onboarding-step-num",children:"2"}),i.jsxs("span",{children:["Bot auto-registers them as ",i.jsx("strong",{children:"⏳ pending"})]})]}),i.jsxs("div",{className:"onboarding-step",children:[i.jsx("span",{className:"onboarding-step-num",children:"3"}),i.jsx("span",{children:"Admin approves → they can receive outbound messages"})]})]}),i.jsx("a",{href:"/contacts",className:"admin-refresh-btn",style:{marginTop:12,display:"inline-block",textDecoration:"none"},children:"📋 Go to Contacts tab to manage →"})]}),i.jsx("h2",{className:"section-subtitle",style:{marginTop:22},children:"📊 Status recipients"}),i.jsxs("p",{className:"admin-hint",children:["Contacts/groups that ALWAYS receive the pipeline completion summary, whoever triggered it. Use a contact name, number, or ",i.jsx("code",{children:"platform:channelId"})," — e.g."," ",i.jsx("code",{children:"whatsapp:Name"}),", ",i.jsx("code",{children:"whatsapp:+91***"}),", ",i.jsx("code",{children:"telegram:123456"}),","," ",i.jsx("code",{children:"slack:ops"}),"."]}),Cr.length>0?i.jsx("div",{className:"hub-alias-list",children:Cr.map(_=>{var G,ae;return i.jsxs("div",{className:"hub-alias-row",children:[i.jsx("span",{className:"hub-chip",children:"📊"}),i.jsx("span",{className:"admin-hint",children:((ae=(G=n==null?void 0:n.channels)==null?void 0:G.statusRecipientDisplay)==null?void 0:ae[_])??_}),i.jsx("button",{className:"admin-refresh-btn",disabled:X,onClick:()=>qs(Y=>Y.filter(re=>re!==_)),children:"✕"})]},_)})}):i.jsx("div",{className:"empty-state",style:{padding:"14px"},children:"No status recipients — add one below."}),i.jsxs("div",{className:"hub-send-form",children:[i.jsx("input",{type:"text",value:Ks,onChange:_=>Vs(_.target.value),placeholder:"whatsapp:Name or whatsapp:+91***",disabled:X,maxLength:128}),i.jsx("button",{className:"admin-refresh-btn",disabled:X||!Ks.trim()||Cr.includes(Ks.trim()),onClick:()=>{qs(_=>[..._,Ks.trim()]),Vs("")},children:"+ Add"})]}),i.jsxs("div",{className:"hub-send-form",style:{marginTop:10},children:[i.jsx("button",{className:"admin-refresh-btn",type:"button",disabled:X,onClick:()=>void Bl(),children:X?"⏳ Saving…":"💾 Save permissions"}),Object.keys(Ce).length>0?i.jsx("button",{className:"admin-refresh-btn",type:"button",disabled:X,onClick:()=>Q({}),children:"Discard draft"}):null]}),fe?i.jsx("div",{className:`admin-row-msg${fe.kind==="err"?" admin-row-msg-err":""}`,children:fe.text}):null,i.jsx("h2",{className:"section-subtitle",children:"📤 Test a channel (buff gateway send)"}),i.jsxs("form",{className:"hub-send-form",onSubmit:_=>void Em(_),children:[i.jsxs("label",{className:"hub-send-target",children:[i.jsx("span",{className:"admin-hint",children:"Target — an alias or platform:channelId"}),i.jsx("input",{type:"text",value:W,onChange:_=>A(_.target.value),placeholder:"ops or slack:C0123 or email:team@example.com",disabled:K,maxLength:128})]}),i.jsxs("label",{className:"hub-send-message",children:[i.jsx("span",{className:"admin-hint",children:"Message"}),i.jsx("input",{type:"text",value:z,onChange:_=>T(_.target.value),placeholder:"nightly build done 🎉",disabled:K,maxLength:4e3})]}),i.jsx("button",{className:"admin-refresh-btn",type:"submit",disabled:K||!W.trim()||!z,children:K?"⏳ Sending…":"📤 Send test message"})]}),I?i.jsx("div",{className:`admin-row-msg${I.kind==="ok"?"":" admin-row-msg-err"}`,children:I.text}):null,i.jsxs("p",{className:"admin-hint",children:["Sends through the same gateway the CLI uses — the dashboard process must have the platform's env token set (e.g. ",i.jsx("code",{children:"BUFF_SMTP_HOST"}),"). Requires admin or operator."]}),i.jsx("h2",{className:"section-subtitle",children:"🟢 WhatsApp bridge (buff whatsapp pair)"}),i.jsx(Voe,{authed:h,canWrite:It,sessionExpired:Xr,reveal:Je})]}):null,e==="conversations"&&n?i.jsxs("div",{role:"tabpanel",children:[i.jsxs("div",{className:"admin-summary-grid",children:[i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:((Hl=n.conversations)==null?void 0:Hl.total)??0}),i.jsx("div",{className:"admin-summary-label",children:"Stored conversations"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:Rn.filter(_=>Date.now()-_.lastActiveAt<864e5).length}),i.jsx("div",{className:"admin-summary-label",children:"Active today"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:Rn.filter(_=>_.platform==="whatsapp").length}),i.jsx("div",{className:"admin-summary-label",children:"WhatsApp"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:Rn.filter(_=>_.platform==="telegram").length}),i.jsx("div",{className:"admin-summary-label",children:"Telegram"})]})]}),((Gl=n.conversations)==null?void 0:Gl.analytics)&&n.conversations.analytics.totalConversations>0&&i.jsxs(i.Fragment,{children:[i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>oe(!V),style:{marginBottom:12},children:V?"📊 Hide Analytics":"📊 Show Analytics"}),V?i.jsxs("div",{className:"hub-session-list",style:{marginBottom:16},children:[i.jsxs("div",{className:"admin-summary-grid",children:[i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.conversations.analytics.totalMessages}),i.jsx("div",{className:"admin-summary-label",children:"Total messages"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.conversations.analytics.avgMessagesPerConversation}),i.jsx("div",{className:"admin-summary-label",children:"Avg msgs/conversation"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.conversations.analytics.avgUserMessageLength}),i.jsx("div",{className:"admin-summary-label",children:"Avg user msg length"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.conversations.analytics.avgAssistantMessageLength}),i.jsx("div",{className:"admin-summary-label",children:"Avg assistant msg length"})]})]}),i.jsxs("div",{className:"hub-card",style:{marginTop:12},children:[i.jsx("div",{className:"hub-card-top",children:i.jsx("div",{className:"hub-card-title",children:i.jsx("span",{className:"hub-card-name",children:"🏆 Most Active Contacts"})})}),i.jsx("div",{style:{marginTop:8},children:n.conversations.analytics.topContacts.map((_,G)=>{var re;const ae=((re=n.conversations.analytics.topContacts[0])==null?void 0:re.messageCount)||1,Y=Math.round(_.messageCount/ae*100);return i.jsxs("div",{style:{display:"flex",alignItems:"center",marginBottom:6,fontSize:13},children:[i.jsx("span",{style:{width:24,textAlign:"center",fontWeight:600,color:G<3?"var(--accent-yellow)":"var(--muted)"},children:G===0?"🥇":G===1?"🥈":G===2?"🥉":`${G+1}.`}),i.jsxs("span",{style:{flex:1,marginLeft:8},children:[_.platform==="whatsapp"?"📱":"✈️"," ",_.name]}),i.jsx("span",{style:{width:60,textAlign:"right",fontWeight:600},children:_.messageCount}),i.jsx("div",{style:{width:100,height:8,background:"var(--border)",borderRadius:4,marginLeft:8},children:i.jsx("div",{style:{width:`${Y}%`,height:"100%",background:"var(--accent-blue)",borderRadius:4}})})]},G)})})]}),i.jsxs("div",{className:"hub-card",style:{marginTop:12},children:[i.jsx("div",{className:"hub-card-top",children:i.jsx("div",{className:"hub-card-title",children:i.jsx("span",{className:"hub-card-name",children:"🕐 Peak Hours"})})}),i.jsx("div",{style:{display:"flex",alignItems:"flex-end",height:80,marginTop:8,gap:2},children:n.conversations.analytics.hourlyDistribution.map(({hour:_,count:G})=>{const ae=Math.max(...n.conversations.analytics.hourlyDistribution.map(re=>re.count),1),Y=Math.round(G/ae*70);return i.jsx("div",{style:{flex:1,display:"flex",flexDirection:"column",alignItems:"center"},children:i.jsx("div",{style:{width:"100%",height:Y,background:_>=9&&_<=21?"var(--accent-blue)":"var(--text-muted)",borderRadius:2},title:`${_}:00 — ${G} messages`})},_)})}),i.jsx("div",{style:{display:"flex",fontSize:10,color:"var(--muted)",marginTop:4},children:[0,6,12,18,23].map(_=>i.jsxs("span",{style:{flex:1,textAlign:_===0?"left":_===23?"right":"center"},children:[_,":00"]},_))})]}),i.jsxs("div",{className:"hub-card",style:{marginTop:12},children:[i.jsx("div",{className:"hub-card-top",children:i.jsx("div",{className:"hub-card-title",children:i.jsx("span",{className:"hub-card-name",children:"📱 Platform Breakdown"})})}),i.jsx("div",{style:{marginTop:8},children:n.conversations.analytics.platformBreakdown.map(_=>i.jsxs("div",{style:{display:"flex",alignItems:"center",marginBottom:6,fontSize:13},children:[i.jsx("span",{className:"hub-chip",style:{width:80,textAlign:"center"},children:_.platform}),i.jsxs("span",{style:{marginLeft:8,flex:1},children:[_.conversations," conversations"]}),i.jsxs("span",{style:{fontWeight:600},children:[_.messages," msgs"]})]},_.platform))})]}),i.jsxs("div",{className:"hub-card",style:{marginTop:12},children:[i.jsx("div",{className:"hub-card-top",children:i.jsx("div",{className:"hub-card-title",children:i.jsx("span",{className:"hub-card-name",children:"📈 Daily Volume (14 days)"})})}),i.jsx("div",{style:{display:"flex",alignItems:"flex-end",height:60,marginTop:8,gap:2},children:n.conversations.analytics.dailyVolume.map(({date:_,count:G})=>{const ae=Math.max(...n.conversations.analytics.dailyVolume.map(re=>re.count),1),Y=Math.round(G/ae*50);return i.jsx("div",{style:{flex:1,display:"flex",flexDirection:"column",alignItems:"center"},children:i.jsx("div",{style:{width:"100%",height:Y,background:"var(--accent-green)",borderRadius:2},title:`${_}: ${G} messages`})},_)})}),i.jsxs("div",{style:{display:"flex",justifyContent:"space-between",fontSize:10,color:"var(--muted)",marginTop:4},children:[i.jsx("span",{children:(R=n.conversations.analytics.dailyVolume[0])==null?void 0:R.date}),i.jsx("span",{children:(ee=n.conversations.analytics.dailyVolume[n.conversations.analytics.dailyVolume.length-1])==null?void 0:ee.date})]})]})]}):null]}),i.jsx("h2",{className:"section-subtitle",children:"💬 Per-contact chat history"}),i.jsx("p",{className:"admin-hint",children:"Conversation history is stored per-contact and survives gateway restarts. Messages older than 7 days are auto-pruned. Click a conversation to expand the full chat thread."}),Rn.length>0||Xt?i.jsxs(i.Fragment,{children:[Kt.length>0&&i.jsxs("div",{style:{display:"flex",flexWrap:"wrap",gap:4,marginBottom:8},children:[i.jsx("span",{className:"admin-hint",style:{marginRight:4},children:"Filter by tag:"}),Kt.map(_=>i.jsxs("button",{type:"button",onClick:()=>an(St===_?"":_),style:{padding:"2px 10px",borderRadius:12,fontSize:11,cursor:"pointer",border:`1px solid ${St===_?"var(--accent-blue)":"var(--border)"}`,background:St===_?"color-mix(in srgb, var(--accent-blue) 13%, transparent)":"transparent",color:St===_?"var(--accent-blue)":"var(--muted)"},children:["🏷️ ",_]},_))]}),i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:12,flexWrap:"wrap"},children:[i.jsx("input",{type:"text",value:qe,onChange:_=>Ct(_.target.value),placeholder:"🔍 Search by contact name, phone number, or message content…",style:{flex:1,minWidth:200}}),i.jsxs("span",{className:"admin-hint",children:[pa," conversation",pa===1?"":"s",qe?` matching "${qe}"`:""]}),i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:Gn,style:{fontSize:12,padding:"4px 10px"},children:Be.size===Rn.length?"☑ Deselect All":"☐ Select All"}),Be.size>0&&i.jsx("button",{type:"button",className:"admin-refresh-btn",disabled:yt,onClick:()=>void Us(),style:{fontSize:12,padding:"4px 10px",background:"var(--accent-blue)",color:"var(--text-on-accent)",border:"none"},children:yt?"⏳ Exporting…":`📦 Export ${Be.size} as ZIP`})]}),i.jsxs("div",{className:"hub-session-list",children:[Rn.filter(_=>!St||(_.tags??[]).includes(St)).map(_=>{const G=Date.now()-_.lastActiveAt,ae=G<6e4?"just now":G<36e5?`${Math.round(G/6e4)}m ago`:G<864e5?`${Math.round(G/36e5)}h ago`:`${Math.round(G/864e5)}d ago`,Y=Oe===_.key,{name:re,phone:me}=ld(_),Ie=async Se=>{if(Se.stopPropagation(),!h||!It){J({kind:"err",text:"🔐 Log in (admin/operator) to clear conversations."});return}U(_.key);try{await Z.clearGatewayConversation(_.key),Yr()}catch{}U(null)},ze=Be.has(_.key);return i.jsxs("div",{className:"hub-card",style:{cursor:"pointer",borderLeft:`3px solid ${_.platform==="whatsapp"?"#25d366":_.platform==="telegram"?"#0088cc":"var(--text-muted)"}`,opacity:Be.size>0&&!ze?.5:1,transition:"opacity 0.2s"},onClick:()=>nt(Y?null:_.key),children:[i.jsxs("div",{className:"hub-card-top",children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[i.jsx("input",{type:"checkbox",checked:ze,onClick:Se=>Bi(_.key,Se),onChange:()=>{},style:{cursor:"pointer",width:16,height:16}}),i.jsxs("div",{className:"hub-card-title",children:[i.jsxs("span",{className:"hub-card-name",children:[_.platform==="whatsapp"?"📱":_.platform==="telegram"?"✈️":"💬"," ",re]}),i.jsxs("span",{className:"hub-card-id",children:[me&&i.jsx("span",{style:{color:"var(--text-secondary, var(--text-secondary))",marginRight:6},children:me}),_.platform," · ",ae]})]})]}),i.jsxs("div",{className:"hub-card-actions",style:{gap:6},children:[i.jsxs("span",{className:"hub-chip",children:[_.messageCount," msgs"]}),Y&&_.messages&&_.messages.length>0&&i.jsxs(i.Fragment,{children:[i.jsx("button",{type:"button",className:"hub-mini-btn",onClick:Se=>Fi(_,Se),title:"Export as text file",children:"📄"}),i.jsx("button",{type:"button",className:"hub-mini-btn",onClick:Se=>Ws(_,Se),title:"Export as PDF (opens print dialog)",children:"📑"})]}),i.jsx("button",{type:"button",className:"hub-mini-btn",disabled:fn===_.key,onClick:Ie,title:"Clear conversation history",style:{color:"var(--accent-red)"},children:"🗑️"}),i.jsx("span",{style:{fontSize:18,transition:"transform 0.2s",transform:Y?"rotate(180deg)":"none"},children:"▼"})]})]}),i.jsxs("p",{className:"hub-card-desc",style:{fontStyle:"italic",color:"var(--text-muted, var(--text-muted))"},children:[i.jsx("span",{style:{color:"var(--text-primary, var(--text-primary))",fontWeight:500},children:"Last message:"})," ",_.lastUserMessage.slice(0,120),_.lastUserMessage.length>120?"…":""]}),i.jsxs("div",{style:{display:"flex",flexWrap:"wrap",gap:4,marginTop:4},children:[(_.tags??[]).map(Se=>i.jsxs("span",{style:{display:"inline-flex",alignItems:"center",gap:2,padding:"2px 8px",borderRadius:12,fontSize:11,background:"color-mix(in srgb, var(--accent-blue) 13%, transparent)",color:"var(--accent-blue)",border:"1px solid color-mix(in srgb, var(--accent-blue) 25%, transparent)"},children:["🏷️ ",Se,i.jsx("button",{type:"button",onClick:Ot=>{Ot.stopPropagation(),zi(_.key,Se)},style:{background:"none",border:"none",color:"var(--accent-blue)",cursor:"pointer",padding:0,fontSize:12,lineHeight:1},children:"×"})]},Se)),qr===_.key?i.jsx("span",{style:{display:"inline-flex",alignItems:"center",gap:2},children:i.jsx("input",{type:"text",value:Nr,onChange:Se=>Yt(Se.target.value),onKeyDown:Se=>{Se.key==="Enter"&&Ha(_.key,Nr),Se.key==="Escape"&&(Vt(null),Yt(""))},placeholder:"tag name",autoFocus:!0,onClick:Se=>Se.stopPropagation(),style:{width:80,padding:"1px 6px",fontSize:11,borderRadius:8,border:"1px solid var(--border)"}})}):i.jsx("button",{type:"button",onClick:Se=>{Se.stopPropagation(),Vt(_.key),Yt("")},style:{display:"inline-flex",alignItems:"center",gap:2,padding:"2px 8px",borderRadius:12,fontSize:11,background:"var(--border)",color:"var(--muted)",border:"none",cursor:"pointer"},children:"+ tag"})]}),Y&&_.messages&&_.messages.length>0?i.jsxs("div",{className:"conversation-thread",style:{marginTop:10,borderTop:"1px solid var(--border)",paddingTop:10,maxHeight:400,overflowY:"auto"},children:[_.messages.map((Se,Ot)=>i.jsxs("div",{style:{marginBottom:8,display:"flex",flexDirection:"column",alignItems:Se.role==="user"?"flex-end":"flex-start"},children:[i.jsxs("div",{style:{maxWidth:"80%",padding:"8px 12px",borderRadius:12,backgroundColor:Se.role==="user"?"var(--accent-blue)":"var(--bg-card, var(--bg-card))",color:Se.role==="user"?"var(--text-on-accent)":"var(--text-primary, var(--text-primary))",fontSize:13,lineHeight:1.5,whiteSpace:"pre-wrap",wordBreak:"break-word"},children:[Se.content.slice(0,500),Se.content.length>500?"…":""]}),i.jsxs("span",{style:{fontSize:10,color:"var(--muted)",marginTop:2,padding:"0 4px"},children:[Se.role==="user"?"👤":"🤖"," ",new Date(Se.ts).toLocaleString()]})]},Ot)),pe.has(_.key)&&i.jsxs("div",{style:{marginBottom:8,display:"flex",flexDirection:"column",alignItems:"flex-start"},children:[i.jsxs("div",{style:{padding:"8px 16px",borderRadius:12,backgroundColor:"var(--bg-card, var(--bg-card))",fontSize:13,display:"flex",alignItems:"center",gap:4},children:[i.jsx("span",{style:{animation:"typingBlink 1.4s infinite ease-in-out"},children:"●"}),i.jsx("span",{style:{animation:"typingBlink 1.4s infinite ease-in-out 0.2s"},children:"●"}),i.jsx("span",{style:{animation:"typingBlink 1.4s infinite ease-in-out 0.4s"},children:"●"})]}),i.jsx("span",{style:{fontSize:10,color:"var(--muted)",marginTop:2,padding:"0 4px"},children:"🤖 typing…"})]})]}):Y?i.jsx("p",{className:"admin-hint",style:{marginTop:8},children:"No message details available."}):null]},_.key)}),sr&&!Xt&&i.jsx("div",{ref:ma,style:{height:1}}),Xt&&i.jsxs("div",{className:"loading-state",style:{padding:12},children:[i.jsx("div",{className:"loading-spinner"}),i.jsx("span",{className:"admin-hint",style:{marginLeft:8},children:"Loading more conversations…"})]}),!Xt&&!sr&&Rn.length>0&&i.jsxs("p",{className:"admin-hint",style:{textAlign:"center",padding:12},children:["All ",pa," conversation",pa===1?"":"s"," loaded."]})]})]}):Xt?i.jsxs("div",{className:"loading-state",children:[i.jsx("div",{className:"loading-spinner"}),i.jsx("p",{className:"admin-hint",children:"Loading conversations…"})]}):i.jsx("div",{className:"empty-state",children:"No conversations stored yet. Conversations are created when users message the agent via WhatsApp/Telegram/etc."})]}):null,e==="artifacts"&&n?i.jsxs("div",{role:"tabpanel",children:[i.jsxs("div",{className:"admin-summary-grid",children:[i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.artifacts.totalSessions}),i.jsx("div",{className:"admin-summary-label",children:"Sessions"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.artifacts.totalArtifacts}),i.jsx("div",{className:"admin-summary-label",children:"Artifacts"})]})]}),n.artifacts.sessions.length>0?i.jsx("div",{className:"hub-session-list",children:n.artifacts.sessions.map(_=>i.jsxs("div",{className:"hub-card",children:[i.jsx("div",{className:"hub-card-top",children:i.jsxs("div",{className:"hub-card-title",children:[i.jsx("span",{className:"hub-card-name",children:_.sessionId}),i.jsxs("span",{className:"hub-card-id",children:[_.count," artifact",_.count===1?"":"s"," · ",new Date(_.latestAt).toLocaleString()]})]})}),_.recent.length>0?i.jsx("ul",{className:"hub-artifact-list",children:_.recent.map((G,ae)=>i.jsxs("li",{children:[i.jsx("span",{className:"hub-chip",children:G.kind}),i.jsx("span",{className:"hub-artifact-title",children:G.title||"(untitled)"}),G.preview?i.jsx("div",{className:"hub-artifact-preview",children:G.preview}):null]},ae))}):i.jsx("div",{className:"admin-hint",children:"No artifact details."})]},_.sessionId))}):i.jsx("div",{className:"empty-state",children:"No artifacts yet — tools that return a deliverable payload land here per session."})]}):null,e==="skills"&&n?i.jsxs("div",{role:"tabpanel",children:[i.jsxs("div",{className:"admin-summary-grid",children:[i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.skills.enabled}),i.jsx("div",{className:"admin-summary-label",children:"Enabled skills"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.skills.disabled}),i.jsx("div",{className:"admin-summary-label",children:"Disabled skills"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.skills.hub.length}),i.jsx("div",{className:"admin-summary-label",children:"Hub skills (SKILL.md)"})]})]}),i.jsx("h2",{className:"section-subtitle",children:"📚 Compiled skills (SkillStore — matched at plan time)"}),n.skills.compiled.length>0?i.jsx("div",{className:"hub-session-list",children:n.skills.compiled.map(_=>i.jsxs("div",{className:`hub-card${_.enabled?"":" hub-card-disabled"}`,children:[i.jsxs("div",{className:"hub-card-top",children:[i.jsxs("div",{className:"hub-card-title",children:[i.jsx("span",{className:"hub-card-name",children:_.name}),i.jsxs("span",{className:"hub-card-id",children:[_.id,_.version?` · v${_.version}`:""]})]}),i.jsxs("div",{className:"hub-card-actions",children:[_.bundled===!0?i.jsx("span",{className:"hub-chip hub-chip-bundled",children:"🧠 bundled"}):i.jsx("span",{className:"hub-chip",children:"community"}),i.jsx("button",{role:"switch","aria-checked":_.enabled,"aria-label":`${_.enabled?"Disable":"Enable"} ${_.name}`,className:`hub-switch${_.enabled?" on":""}`,disabled:B===_.id||P!==null||h&&!It,onClick:()=>fd(_.id,!_.enabled),children:i.jsx("span",{className:"hub-switch-knob"})})]})]}),i.jsx("p",{className:"hub-card-desc",children:_.description}),i.jsxs("div",{className:"hub-card-tools",children:[typeof _.usageCount=="number"?i.jsxs("span",{className:"hub-chip",children:[_.usageCount," uses"]}):null,_.enabled?null:i.jsx("span",{className:"hub-chip",children:"disabled"})]}),F[_.id]?i.jsx("div",{className:"admin-row-msg",children:F[_.id]}):null,_.enabled?null:i.jsx("div",{className:"hub-card-note",children:"⛔ Excluded from skill matching — not injected into the planner"})]},`c-${_.id}`))}):i.jsx("div",{className:"empty-state",children:"No compiled skills."}),i.jsx("h2",{className:"section-subtitle",children:"🌍 Hub skills (installed SKILL.md)"}),n.skills.hub.length>0?i.jsx("div",{className:"hub-session-list",children:n.skills.hub.map(_=>i.jsxs("div",{className:`hub-card${_.enabled?"":" hub-card-disabled"}`,children:[i.jsxs("div",{className:"hub-card-top",children:[i.jsxs("div",{className:"hub-card-title",children:[i.jsx("span",{className:"hub-card-name",children:_.name}),i.jsx("span",{className:"hub-card-id",children:_.id})]}),i.jsxs("div",{className:"hub-card-actions",children:[i.jsx("button",{type:"button",className:"hub-mini-btn",disabled:Wi===_.id||h&&!It,onClick:()=>void Tr(_.id),children:"🗑 Uninstall"}),i.jsx("button",{role:"switch","aria-checked":_.enabled,"aria-label":`${_.enabled?"Disable":"Enable"} ${_.name}`,className:`hub-switch${_.enabled?" on":""}`,disabled:B===_.id||P!==null||h&&!It,onClick:()=>fd(_.id,!_.enabled),children:i.jsx("span",{className:"hub-switch-knob"})})]})]}),i.jsx("p",{className:"hub-card-desc",children:_.description}),i.jsxs("div",{className:"hub-card-tools",children:[i.jsx("span",{className:"hub-chip",children:"SKILL.md"}),_.enabled?null:i.jsx("span",{className:"hub-chip",children:"disabled"})]}),F[_.id]?i.jsx("div",{className:"admin-row-msg",children:F[_.id]}):null,_.enabled?null:i.jsx("div",{className:"hub-card-note",children:"⛔ Excluded from skill matching — not injected into the planner"})]},`h-${_.id}`))}):i.jsxs("div",{className:"empty-state",children:["No hub skills installed — search the marketplace below or run ",i.jsx("code",{children:"buff skills install <name>"}),"."]}),i.jsx("h2",{className:"section-subtitle",children:"🛒 Marketplace (community skills)"}),i.jsxs("form",{className:"hub-market-search",onSubmit:Gi,children:[i.jsx("input",{type:"text",value:H,onChange:_=>ue(_.target.value),placeholder:"Search community skills (e.g. code-assist, deploy, testing)…"}),i.jsx("button",{type:"submit",className:"admin-refresh-btn",disabled:or,children:or?"Searching…":"🔎 Search"})]}),Ui?i.jsx("div",{className:`admin-row-msg${Ui.kind==="err"?" admin-row-msg-err":""}`,children:Ui.text}):null,Vr&&!or?Pe.length>0?i.jsx("div",{className:"hub-session-list",children:Pe.map(_=>i.jsxs("div",{className:"hub-card",children:[i.jsxs("div",{className:"hub-card-top",children:[i.jsxs("div",{className:"hub-card-title",children:[i.jsx("span",{className:"hub-card-name",children:_.name}),i.jsxs("span",{className:"hub-card-id",children:["v",_.version," · ",_.sourceKind]})]}),i.jsx("button",{type:"button",className:"admin-refresh-btn",disabled:Wi===_.name||h&&!It,onClick:()=>void dd(_.name),children:Wi===_.name?"Installing…":"⬇ Install"})]}),i.jsx("p",{className:"hub-card-desc",children:_.description}),i.jsxs("div",{className:"hub-card-tools",children:[i.jsx("span",{className:"hub-chip",children:_.author}),_.tags.slice(0,3).map(G=>i.jsx("span",{className:"hub-chip",children:G},G))]})]},`m-${_.name}`))}):i.jsxs("div",{className:"empty-state",children:['No skills match "',H,'" — try a broader term, or add a registry to ',i.jsx("code",{children:"skills.registries"})," in config."]}):null]}):null,e==="subagents"&&n?i.jsxs("div",{role:"tabpanel",children:[i.jsxs("div",{className:"admin-summary-grid",children:[i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:((te=n.subagents)==null?void 0:te.total)??0}),i.jsx("div",{className:"admin-summary-label",children:"Runs recorded"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:((ke=n.subagents)==null?void 0:ke.running)??0}),i.jsx("div",{className:"admin-summary-label",children:"Running now"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:((pn=n.subagents)==null?void 0:pn.failed)??0}),i.jsx("div",{className:"admin-summary-label",children:"Failed"})]})]}),i.jsxs("p",{className:"admin-hint",children:["Each run is a separate child process. A transport of ",i.jsx("code",{children:"json"})," means the provider has no native tool protocol and the shared JSON fallback carried the tool calls; a refusal code means the run stopped deliberately instead of returning an answer."]}),(((xt=n.subagents)==null?void 0:xt.recent)??[]).length>0?i.jsx("div",{className:"hub-session-list",children:(((Mn=n.subagents)==null?void 0:Mn.recent)??[]).map(_=>i.jsxs("div",{className:"hub-card",children:[i.jsxs("div",{className:"hub-card-top",children:[i.jsxs("div",{className:"hub-card-title",children:[i.jsx("span",{className:"hub-card-name",children:_.goal||"(no goal recorded)"}),i.jsxs("span",{className:"hub-card-id",children:[_.id.slice(0,8),_.startedAt?` · ${new Date(_.startedAt).toLocaleString()}`:""]})]}),i.jsx("div",{className:"hub-card-actions",children:i.jsx("span",{className:"hub-chip",children:ele[_.status]??_.status})})]}),i.jsxs("div",{className:"hub-card-tools",children:[i.jsxs("span",{className:"hub-chip",children:["🔌 ",_.provider??"provider unknown",_.model?` · ${_.model}`:""]}),i.jsxs("span",{className:"hub-chip",children:["🛠 ",_.transport??"transport unknown"," transport"]}),i.jsxs("span",{className:"hub-chip",children:[_.llmCalls," model call",_.llmCalls===1?"":"s"]}),i.jsxs("span",{className:"hub-chip",children:[_.toolCalls," tool call",_.toolCalls===1?"":"s"]}),typeof _.durationMs=="number"?i.jsxs("span",{className:"hub-chip",children:[(_.durationMs/1e3).toFixed(1),"s"]}):null]}),_.refusalCode?i.jsxs("div",{className:"hub-card-note",children:["⛔ Refused before answering — code ",i.jsx("code",{children:_.refusalCode})]}):null,_.error?i.jsx("div",{className:"admin-row-msg admin-row-msg-err",children:_.error}):null,_.resultPreview?i.jsx("div",{className:"hub-artifact-preview",children:_.resultPreview}):null]},_.id))}):i.jsxs("div",{className:"empty-state",children:["No subagent runs recorded yet — a run shows up here once the agent spawns one (the ",i.jsx("code",{children:"subagent"})," tool), and only if it actually started."]})]}):null]})}const ale=265,ile=52,sle=[{name:"admin",description:"Admin governance policy for Auto routing (P6 M6.5) — allow/deny providers & models, hard cost cap, PII privacy, unblock control",commands:[{name:"admin policy",description:"Show the current governance policy + enforcement status",flags:["--json"]},{name:"admin allow",description:"Add providers to the allow-list (empty = all providers allowed)",flags:[]},{name:"admin deny",description:"Add providers to the deny-list (wins over the allow-list)",flags:[]},{name:"admin allow-model",description:"Add models to the allow-list — a provider survives only if one of its candidate models is listed",flags:[]},{name:"admin deny-model",description:"Add models to the deny-list (wins over the allow-list)",flags:[]},{name:"admin max-cost",description:"Set the admin hard max cost per call (USD); joins routing.maxCostUsd (stricter wins)",flags:[]},{name:"admin pii-min",description:"Set the minimum privacy score (0-1) required when a task matches a PII pattern (default 1.0 = local-only)",flags:[]},{name:"admin unblock",description:"Control whether `nuvira models unblock` may override REGISTRY-learned blocks (false = admin-hard)",flags:[]},{name:"admin clear",description:"Remove one governance rule (the policy becomes permissive on that field)",flags:[]},{name:"admin role",description:"Manage RBAC roles over the admin surface (P6 M6.1 — requires admin role)",flags:[]},{name:"admin role add",description:"Assign a role to a user (first assignment exits legacy single-user mode)",flags:[]},{name:"admin role remove",description:"Remove a user's role assignment (if none remain, legacy permissive mode resumes)",flags:[]},{name:"admin role list",description:"List all role assignments",flags:[]},{name:"admin whoami",description:"Show the current identity and its effective RBAC permissions",flags:[]},{name:"admin cron",description:"Scheduled tool invocations (J2 — cron/jobs.py)",flags:[]},{name:"admin cron add",description:'Add a cron job: nuvira admin cron add nightly-build "0 3 * * *" build',flags:["--args <args>","--channel <channel>","--dry-run"]},{name:"admin cron list",description:"List cron jobs with schedule + next run",flags:[]},{name:"admin cron remove",description:"Remove a cron job",flags:[]},{name:"admin cron run",description:"Run a cron job NOW (invoke its tool immediately)",flags:[]}]},{name:"chat",description:"Start an interactive chat session with AI",commands:[]},{name:"edit",description:"Edit a file using AI assistance",commands:[]},{name:"plan",description:"Generate an implementation plan for a codebase task",commands:[]},{name:"config",description:"Manage Nuvira configuration",commands:[{name:"config set",description:"Set a configuration value",flags:[]},{name:"config get",description:"Get a configuration value",flags:[]},{name:"config list",description:"List all providers and their status",flags:[]},{name:"config init",description:"Initialize configuration interactively",flags:[]},{name:"config vault",description:"Secret vault management (Phase A1)",flags:[]},{name:"config vault status",description:"Show the active vault tier and migration state",flags:[]},{name:"config vault log",description:"Show recent vault access-log entries (K3 tamper-evident audit)",flags:["--limit <limit>"]},{name:"config vault migrate-keys",description:"Move plaintext provider API keys from buffconfig.json into the vault",flags:[]},{name:"config gateway",description:"Manage gateway platform transports (tokens written to ~/.nuvira/.env)",flags:[]},{name:"config gateway list",description:"Show every platform transport and its env-var status",flags:[]},{name:"config gateway set",description:"Configure a platform transport (interactive wizard, or --set VAR=value)",flags:["--set <set>"]},{name:"config gateway remove",description:"Remove a platform transport from the env file",flags:["--yes"]},{name:"config gateway allow",description:"Allow a user/group to trigger the agent on a platform (written to gateway.policies in config)",flags:[]},{name:"config gateway disallow",description:"Remove a user/group from the allowed list of a platform",flags:[]},{name:"config gateway reply",description:"Set how unapproved senders are handled on a platform: polite (⛔ message) or silent (no reply)",flags:[]},{name:"config gateway send-authority",description:"Manage who may command the agent to send to OTHER people (gateway_send). Outbound-only gate — separate from `allow` (who may trigger).",flags:[]},{name:"config gateway notify",description:"Manage status recipients — contacts/groups that ALWAYS get pipeline completion summaries",flags:[]},{name:"config gateway ask-user-wait",description:"Ask-and-wait for clarifying questions on messaging channels: when a turn asks the sender a question, hold it for their reply instead of assuming option 1",flags:[]},{name:"config service",description:"Manage third-party service keys (image/video/search/vision/speech) in ~/.nuvira/.env",flags:[]},{name:"config service list",description:"Show every service backend and its env-var status",flags:[]},{name:"config service set",description:"Set a service key: config service set <serviceId> <ENV_VAR> <value> (or --set VAR=value)",flags:["--set <set>"]},{name:"config service unset",description:"Remove a service key (all vars, or one with [varName]) from the env file",flags:["--yes"]},{name:"config limit",description:"Show or change the size limits for document extraction and attachments",flags:[]},{name:"config limit list",description:"Show the effective extraction and attachment limits",flags:[]},{name:"config limit set",description:"Set a limit: config limit set <extract-max-chars|attachment-max-kb> <value>",flags:[]},{name:"config limit unset",description:"Restore a limit to its default",flags:[]},{name:"config capability",description:"Show or change the capability mode (balanced | max)",flags:[]},{name:"config capability show",description:"Show the effective capability mode",flags:[]},{name:"config capability set",description:"Set the capability mode: config capability set <balanced|max>",flags:[]},{name:"config capability unset",description:"Restore the default capability mode (balanced)",flags:[]}]},{name:"cache",description:"Manage inference cache",commands:[{name:"cache stats",description:"Show cache statistics",flags:[]},{name:"cache clear",description:"Clear cached responses — all of them, or one workspace (project folder)",flags:["--unscoped"]}]},{name:"models",description:"List available models from inference providers",commands:[{name:"models refresh",description:"Probe providers and spot-check models, updating the Model Availability Registry",flags:["--json","--no-spot-check"]},{name:"models status",description:"Show the Model Availability Registry (verified / unavailable / quota-parked models)",flags:["--json","--verbose"]},{name:"models unblock",description:"Manually release a registry-blocked provider (escape hatch) and re-probe it against the live API",flags:["--json","--no-spot-check"]},{name:"models excluded",description:"Show which providers routing is currently skipping, and why (failure cooldowns, registry blocks, governance policy)",flags:["--json"]},{name:"models staleness",description:"Show model staleness: last probe time, days since verification, and removal risk",flags:["--json"]},{name:"models watch",description:"Run the model-registry maintenance daemon: probe + spot-check on a schedule",flags:["--interval <interval>","--no-spot-check"]}]},{name:"execute",description:"Run a multi-agent pipeline to accomplish a goal",commands:[]},{name:"run",description:"Execute a shell command and show output (lightweight alternative to the full pipeline)",commands:[]},{name:"workflow",description:"Run, manage, and share workflow templates",commands:[{name:"workflow list",description:"Show available workflow templates (built-in + installed)",flags:[]},{name:"workflow run",description:"Run a workflow template",flags:["--dry-run","--model <model>","--provider <provider>","--verbose"]},{name:"workflow search",description:"Search the GitHub workflow template registry",flags:["--refresh"]},{name:"workflow install",description:"Install a workflow template from the GitHub registry",flags:[]},{name:"workflow publish",description:"Prepare a local workflow template for publishing to the registry",flags:[]},{name:"workflow info",description:"Show detailed information about a registry template",flags:[]},{name:"workflow upgrade",description:"Check for and apply template upgrades from the registry",flags:[]}]},{name:"whatsapp",description:"WhatsApp bridge (Baileys) — pair a personal number via QR and check status (I8)",commands:[{name:"whatsapp pair",description:"Pair WhatsApp (personal number — no Meta Business account, no paid API)",flags:["--phone <phone>","--timeout <timeout>"]},{name:"whatsapp status",description:"Show bridge session path + pairing state",flags:[]},{name:"whatsapp contacts",description:"List resolvable contacts (mapping file + learned) — connects briefly to learn names from live traffic",flags:["--timeout <timeout>"]},{name:"whatsapp contact",description:'Manage the WhatsApp contact-name mapping (send by name: nuvira gateway send whatsapp:<Name> "message")',flags:[]},{name:"whatsapp contact add",description:"Map a display name to a number (E.164, no +): nuvira whatsapp contact add Name 919876543210",flags:[]},{name:"whatsapp contact remove",description:"Remove a mapped contact name",flags:[]}]},{name:"plugins",description:"Manage provider plugins, agent plugins, and workflow templates",commands:[{name:"plugins list",description:"List all discovered plugins and workflows",flags:[]},{name:"plugins scan",description:"Force re-scan all plugin directories",flags:[]}]},{name:"learn",description:"Self-improvement system — agent stats, patterns, and optimization",commands:[{name:"learn stats",description:"Show per-agent performance statistics",flags:[]},{name:"learn patterns",description:"Show extracted coding patterns",flags:["--extract","--model <model>","--provider <provider>"]},{name:"learn lessons",description:"Show failure lessons — what past runs learned from mistakes",flags:["--extract","--model <model>","--provider <provider>"]},{name:"learn optimize",description:"Generate optimized model-to-agent routing recommendations",flags:[]},{name:"learn status",description:"Show overall self-improvement status",flags:[]},{name:"learn clear",description:"Reset all learning data (stats, patterns, memory)",flags:["--force"]},{name:"learn compare",description:"Compare benchmark results between two models",flags:["--all","--last"]},{name:"learn feedback",description:"Rate a trajectory or view feedback statistics",flags:["--comment <comment>","--rating <rating>","--stats","--trajectory <trajectory>"]},{name:"learn quality",description:"Show pattern quality and decay metrics",flags:["--details"]},{name:"learn gc",description:"Garbage-collect low-quality patterns",flags:["--dry-run"]}]},{name:"init",description:"Scaffold a new project from a template",commands:[]},{name:"stats",description:"View usage statistics and cost tracking",commands:[{name:"stats cost",description:"Show API cost tracking details",flags:["--clear"]},{name:"stats history",description:"Show conversation history statistics",flags:[]}]},{name:"history",description:"Browse and search conversation history",commands:[{name:"history list",description:"Show all saved conversations",flags:["--limit <limit>"]},{name:"history search",description:"Search conversations by keyword or semantic similarity",flags:["--limit <limit>","--semantic"]},{name:"history show",description:"Show a specific conversation",flags:[]},{name:"history clear",description:"Clear all conversation history",flags:[]},{name:"history prune",description:"Remove conversations older than the retention period",flags:["--days <days>"]},{name:"history reindex",description:"Rebuild the semantic search index for all past conversations (embeds each session for vector search)",flags:[]}]},{name:"skill",description:"Manage and run compiled skills — reusable execution plans derived from past trajectories",commands:[{name:"skill list",description:"List all compiled skills",flags:["--quality <quality>"]},{name:"skill show",description:"Show detailed skill definition",flags:[]},{name:"skill run",description:"Run a skill — resolves parameters and invokes the multi-agent pipeline",flags:["--auto-route","--dry-run","--memory","--model <model>","--params <params>","--provider <provider>","--verbose"]},{name:"skill compile",description:"Force skill compilation from stored trajectories",flags:["--model <model>","--provider <provider>"]},{name:"skill search",description:"Search skills by name, tag, or description",flags:[]},{name:"skill gc",description:"Garbage-collect low-quality skills",flags:["--dry-run"]},{name:"skill quality",description:"Show skill quality and decay metrics",flags:["--details"]},{name:"skill clear",description:"Remove all compiled skills",flags:["--force"]}]},{name:"skills",description:"Skills hub — search, install, update, and audit community skills (J3)",commands:[{name:"skills search",description:"Search all configured skill registries (I7 P1 multi-source)",flags:["--refresh","--source <source>"]},{name:"skills install",description:"Install a skill from the configured registries into <project>/.agents/skills/ (sandboxed, checksummed)",flags:["--project <project>","--source <source>"]},{name:"skills uninstall",description:"Uninstall a skill: removes .agents/skills/<name> and its provenance record",flags:["--project <project>"]},{name:"skills update",description:"Update installed skills to newer registry versions (checksum-verified)",flags:["--project <project>"]},{name:"skills bundle",description:"P6b — skill bundles: group skills under one id and load them together (Hermes parity)",flags:["--create","--delete","--description <description>","--name <name>","--skills <skills>"]},{name:"skills list",description:"List installed skills with provenance (origin: registry vs local)",flags:["--origin <origin>","--project <project>"]}]},{name:"gateway",description:"Multi-channel gateway — talk to the agent from Telegram/Discord/Slack/WhatsApp/Email/Signal (J1)",commands:[{name:"gateway status",description:"Show configured adapters and reachable channels",flags:[]},{name:"gateway send",description:"Send a message to a channel alias or platform:channelId",flags:[]},{name:"gateway send-media",description:"Send a media file (image/video/audio/document) — type from the file extension; WhatsApp/Telegram/Discord",flags:["--caption <caption>"]},{name:"gateway alias",description:"Manage channel aliases",flags:[]},{name:"gateway alias add",description:"Register an alias: nuvira gateway alias add ops slack C0123",flags:[]},{name:"gateway alias remove",description:"Remove an alias",flags:[]},{name:"gateway contact",description:"Manage contacts for outbound messaging (name → platform:id resolution)",flags:[]},{name:"gateway contact list",description:"List all contacts with status, platform, and ID",flags:["--pending","--platform <platform>"]},{name:"gateway contact approve",description:"Approve a contact for outbound messaging",flags:["--platform <platform>"]},{name:"gateway contact reject",description:"Reject a contact (block outbound messages)",flags:["--platform <platform>"]},{name:"gateway contact delete",description:"Delete a contact permanently",flags:["--platform <platform>"]},{name:"gateway contact add",description:"Manually add a contact (e.g. nuvira gateway contact add Anuj telegram 616825477)",flags:["--phone <phone>"]},{name:"gateway delivery",description:"Show the delivery ledger (failed sends awaiting retry) and optionally drain it",flags:["--flush"]},{name:"gateway logs",description:"Show the structured gateway log (send failures, refused senders, pipeline outcomes)",flags:["--event <event>","--limit <limit>","--path"]},{name:"gateway history",description:"Manage per-contact conversation history (gateway chat memory)",flags:[]},{name:"gateway history list",description:"List all stored conversations with last message preview",flags:["--platform <platform>"]},{name:"gateway history show",description:"Show conversation history for a contact (e.g. nuvira gateway history show whatsapp:918800663237)",flags:["--limit <limit>"]},{name:"gateway history clear",description:"Clear conversation history for a contact",flags:[]},{name:"gateway history prune",description:"Remove conversations older than 7 days",flags:[]},{name:"gateway start",description:"Run all configured adapters in the foreground (Ctrl-C to stop; --supervise auto-restarts on crash)",flags:["--host <host>","--no-events","--port <port>","--supervise"]},{name:"gateway stop",description:"Stop a running gateway gracefully (SIGTERM — from any terminal)",flags:["--port <port>"]},{name:"gateway setup",description:"Interactive setup wizard for a messaging platform (e.g. nuvira gateway setup telegram)",flags:[]}]},{name:"model",description:"Manage inference providers and models — switch, list, inspect, and recommend",commands:[{name:"model list",description:"List all providers and their configuration status",flags:["--all","--json"]},{name:"model switch",description:"Switch active provider/model (interactive or via argument). Use `auto` for smart routing",flags:["--model <model>","--provider <provider>"]},{name:"model info",description:"Show current active provider and model configuration",flags:["--verbose"]},{name:"model recommend",description:"Show model routing recommendations",flags:[]},{name:"model explain",description:"Explain Auto model routing — why a provider/model would be picked for a task",flags:["--agent <agent>","--json","--since <since>"]},{name:"model health",description:"Quick health check for the currently active provider",flags:["--provider <provider>","--verbose"]},{name:"model bandit",description:"Show learning-router bandit state (Thompson-sampling priors per provider × complexity bucket). Action: reset",flags:["--json"]},{name:"model ml",description:"Show the ML task-similarity router state (learned outcomes per provider, kNN over task features). Action: reset",flags:["--json"]},{name:"model quota",description:"Show the central quota ledger (tokens/requests per provider × model, reset windows, parked state). Actions: reset | set <provider> | clear <provider>",flags:["--cost-usd <cost_usd>","--json","--requests <requests>","--tokens <tokens>","--window-ms <window_ms>"]}]},{name:"benchmark",description:"Run standardized model benchmarks against coding tasks",commands:[{name:"benchmark run",description:"Run the benchmark suite",flags:["--budget <budget>","--format <format>","--model <model>","--provider <provider>","--routing","--tasks <tasks>"]},{name:"benchmark list",description:"List available benchmark tasks",flags:[]},{name:"benchmark results",description:"Show previous benchmark results",flags:["--compare","--format <format>","--last"]},{name:"benchmark clear",description:"Clear all benchmark data",flags:[]}]},{name:"eval",description:"Run the Agent-Nuvira evaluation framework — measures if the agent is actually improving",commands:[{name:"eval run",description:"Run the evaluation suite",flags:["--budget <budget>","--engine <engine>","--format <format>","--keep-workspaces","--model <model>","--pace","--provider <provider>","--routing","--suite <suite>","--tasks <tasks>"]},{name:"eval parity",description:"Measure the capability gap: run the hard tasks under balanced AND max, then compare",flags:["--engine <engine>","--model <model>","--provider <provider>","--tasks <tasks>"]},{name:"eval verify-seeds",description:"Prove every seeded bug is genuinely broken (and genuinely fixable) — no provider needed",flags:["--tasks <tasks>"]},{name:"eval list",description:"List available eval tasks",flags:[]},{name:"eval results",description:"Show previous eval runs",flags:["--compare","--format <format>","--last"]},{name:"eval score",description:"Show the evaluation scoring rules",flags:[]},{name:"eval clear",description:"Clear all eval data",flags:[]}]},{name:"sandbox",description:"Manage Docker sandbox isolation for code execution",commands:[{name:"sandbox status",description:"Check Docker availability and sandbox status",flags:[]},{name:"sandbox config",description:"Show or update sandbox configuration",flags:["--cpu <cpu>","--disable","--disk <disk>","--enable","--image <image>","--memory <memory>","--network","--timeout <timeout>"]},{name:"sandbox images",description:"List available pre-defined sandbox images",flags:[]},{name:"sandbox run",description:"Run a command inside a new sandbox container",flags:["--cpu <cpu>","--image <image>","--memory <memory>","--network","--project <project>","--timeout <timeout>"]},{name:"sandbox cleanup",description:"Destroy all active sandbox containers",flags:[]}]},{name:"doctor",description:"Run diagnostic checks on all provider configurations and system health",commands:[]},{name:"memory",description:"Manage agent memory store — compression, pruning, and optimization",commands:[{name:"memory stats",description:"Show memory store statistics",flags:[]},{name:"memory optimize",description:"Run automatic memory compression and pruning",flags:["--aggressive","--dry-run"]},{name:"memory prune",description:"Prune old or low-quality trajectories",flags:["--max-age <max_age>","--max-count <max_count>","--min-score <min_score>","--verbose"]},{name:"memory summarize",description:"Summarize old trajectories by merging similar ones",flags:["--retention <retention>","--verbose"]},{name:"memory info",description:"Show detailed compression analysis",flags:[]},{name:"memory backend",description:"Show the active vector-search backend and why it was chosen",flags:["--check"]},{name:"memory list",description:"List all memory entries (facts, preferences, lessons, observations)",flags:["--limit <limit>","--type <type>"]},{name:"memory search",description:"Search memory entries by content",flags:["--limit <limit>","--type <type>"]},{name:"memory add",description:"Add a memory entry",flags:["--tags <tags>","--type <type>"]},{name:"memory delete",description:"Delete a memory entry by ID",flags:[]},{name:"memory export",description:"Export all memories to a JSON file",flags:["--output <output>"]},{name:"memory import",description:"Import memories from a JSON file",flags:["--merge"]},{name:"memory facts",description:"Fact & preference memory (project-scoped, cross-session)",flags:[]},{name:"memory facts list",description:"List facts, optionally for a project (git slug or cwd:<hash>)",flags:["--project <project>"]},{name:"memory facts add",description:"Manually store a fact for the current project",flags:["--project <project>","--tags <tags>"]},{name:"memory facts stats",description:"Show fact-store statistics",flags:[]},{name:"memory clear",description:"Clear all stored trajectories and reset memory",flags:["--force"]}]},{name:"dashboard",description:"Launch the web-based dashboard for visualizing agent execution and system status",commands:[{name:"dashboard stop",description:"Stop a running dashboard gracefully (SIGTERM — from any terminal)",flags:["--port <port>"]}]},{name:"agent",description:"Scaffold and manage custom agent-nuvira agents",commands:[{name:"agent create",description:"Create a new custom agent project from a template",flags:["--agent-name <agent_name>","--description <description>","--dir <dir>"]},{name:"agent list",description:"List all discovered custom agent plugins",flags:[]},{name:"agent info",description:"Show details about a discovered agent plugin",flags:[]}]},{name:"federation",description:"Connect to and manage remote agent instances",commands:[{name:"federation status",description:"Show federation connection status and configuration",flags:[]},{name:"federation start",description:"Start the federation server (listens for incoming connections)",flags:["--auth <auth>","--daemon","--host <host>","--oidc-public-key <oidc_public_key>","--port <port>","--secret <secret>"]},{name:"federation connect",description:"Connect to a remote federation server",flags:["--port <port>","--secret <secret>"]},{name:"federation disconnect",description:"Disconnect from the remote federation server",flags:[]},{name:"federation run",description:"Run a task on the remote federation server",flags:["--agent <agent>","--model <model>","--no-stream","--provider <provider>","--timeout <timeout>"]},{name:"federation health",description:"Check the health of the remote federation server",flags:[]},{name:"federation config",description:"Show or update federation configuration",flags:["--set-port <set_port>","--set-secret <set_secret>","--show"]},{name:"federation a2a",description:"A2A (Agent-to-Agent) protocol — discover and connect to external A2A-compliant agents",flags:[]},{name:"federation a2a discover",description:"Discover an A2A-compliant agent and fetch its AgentCard",flags:[]},{name:"federation a2a start",description:"Start the A2A server (listens for incoming A2A connections)",flags:["--host <host>","--port <port>"]},{name:"federation a2a status",description:"Check the health and status of a remote A2A agent",flags:[]},{name:"federation a2a run",description:"Delegate a task to a remote A2A-compliant agent",flags:["--agent <agent>","--skill <skill>","--timeout <timeout>"]}]},{name:"team",description:"Team collaboration — shared config, git-synced memory, and review workflow",commands:[{name:"team init",description:"Initialize team configuration in the working directory",flags:["--branch <branch>","--repo <repo>"]},{name:"team join",description:"Clone and join an existing team repository",flags:[]},{name:"team sync",description:"Sync team memory with remote (pull latest + push local changes)",flags:[]},{name:"team status",description:"Show team configuration and memory status",flags:[]},{name:"team share",description:"Share local trajectories and patterns with the team",flags:[]},{name:"team review",description:"Manage review bundles — agent PR → review → merge workflow",flags:[]},{name:"team review list",description:"List all review bundles",flags:["--limit <limit>"]},{name:"team review show",description:"Show a specific review bundle with full details",flags:[]},{name:"team review approve",description:"Approve a review bundle (sets status to approved)",flags:["--message <message>"]},{name:"team review request-changes",description:"Request changes on a review bundle",flags:[]},{name:"team review reject",description:"Reject a review bundle",flags:[]},{name:"team review merge",description:"Merge an approved review into the working directory",flags:[]},{name:"team review create",description:"Create a review bundle from specified files",flags:["--files <files>","--model <model>","--provider <provider>"]}]},{name:"sdk",description:"Create and manage custom agents with the Agent-Nuvira SDK",commands:[{name:"sdk scaffold",description:"Generate a new custom agent project",flags:["--agent-type <agent_type>","--template <template>"]},{name:"sdk templates",description:"List available scaffold templates",flags:[]},{name:"sdk info",description:"Show SDK package info and version",flags:[]},{name:"sdk register",description:"Register a custom agent with the orchestrator",flags:["--icon <icon>","--orchestrator-path <orchestrator_path>"]},{name:"sdk unregister",description:"Remove a custom agent from the orchestrator",flags:["--orchestrator-path <orchestrator_path>"]}]},{name:"provider",description:"List and check health of all inference providers",commands:[{name:"provider list",description:"Show all providers with color-coded status table",flags:["--all"]},{name:"provider health",description:"Show detailed health checks for one or all providers",flags:["--verbose","--watch"]}]},{name:"security",description:"Scan code, prompts, or files for security issues",commands:[{name:"security scan",description:"Scan for PII, injection attempts, or dangerous code patterns",flags:["--code","--file <file>","--generated","--json","--pii","--prompt","--stdin","--strict"]}]},{name:"audit",description:"Verify and export the tamper-evident (hash-chained) audit trail (P6 M6.3)",commands:[{name:"audit verify",description:"Verify hash-chain integrity of audit stores (tamper detection)",flags:["--file <file>","--json"]},{name:"audit export",description:"Export an audit store as SIEM-friendly CEF lines",flags:["--file <file>","--out <out>"]}]},{name:"sbom",description:"Generate and verify the CycloneDX software bill of materials (P6 M6.6)",commands:[]},{name:"feedback",description:"Record, view, and manage user feedback on agent outputs",commands:[{name:"feedback record",description:"Record feedback for a trajectory (interactive)",flags:["--comment <comment>","--negative","--neutral","--positive"]},{name:"feedback list",description:"Show recent feedback entries",flags:["--limit <limit>","--trajectory <trajectory>"]},{name:"feedback stats",description:"Show aggregated feedback statistics",flags:[]},{name:"feedback clear",description:"Clear all feedback data",flags:[]}]},{name:"nlu",description:"NLU request understanding — debug intent/entity/action resolution",commands:[{name:"nlu debug",description:"Debug how a request is understood (rule path + optional LLM verify)",flags:["--llm"]},{name:"nlu learnings",description:"Show the routing corrections learned from CONFIRMED misreadings (the agent improving itself)",flags:["--forget <forget>","--json"]}]},{name:"intent",description:"Plain-English → CLI routing — resolve an ask into the exact `nuvira` command(s) to run",commands:[{name:"intent resolve",description:'Resolve a plain-English ask (e.g. "stop the dashboard", "add Rahul to whatsapp") into CLI commands',flags:["--json","--semantic"]},{name:"intent eval",description:"Score deterministic vs semantic matching over a labeled ask corpus (novel phrasings included)",flags:["--json"]}]},{name:"code-map",description:"Project symbol map — functions, classes, methods with line numbers (AST engine)",commands:[]},{name:"tools",description:"Inspect the agent tool registry (pipeline + experience tools)",commands:[{name:"tools list",description:"List every registered tool (the H1 tool-calling surface)",flags:[]},{name:"tools show",description:"Show a tool's description and input schema",flags:[]},{name:"tools toolsets",description:"List toolset groups (capability gating) with enabled state; enable/disable a group",flags:["--disable <disable>","--enable <enable>"]}]},{name:"parity",description:"Surface-parity harness — prove the same experience on chat, execute, dashboard, gateway and subagents",commands:[{name:"parity surfaces",description:"Compare the surface registry against the real import graph",flags:[]},{name:"parity debt",description:"Check the anti-silo debt ratchet (observed surface debt must equal the frozen list)",flags:[]},{name:"parity matrix",description:"Show every capability × surface and any unproven `supported` claim",flags:[]},{name:"parity faults",description:"List the declared faults the harness can inject, and what each one proves",flags:[]},{name:"parity run",description:"Drive all five surfaces through the real harness and report the verdict",flags:[]}]},{name:"session",description:"Project-scoped session continuity (debug surface — `continue` is the primary path)",commands:[{name:"session list",description:"List recent sessions, optionally filtered by project + time range",flags:["--limit <limit>","--project <project>","--since <since>"]},{name:"session summarize",description:"Show summary + metadata for one session (transcript: nuvira history show)",flags:[]},{name:"session resume",description:"Run D1 auto-recall for a project and print the recall card",flags:["--project <project>","--since <since>"]}]},{name:"marketplace",description:"Browse and install community plugins and workflow templates",commands:[{name:"marketplace browse",description:"Browse all available marketplace items",flags:["--plugins","--refresh","--workflows"]},{name:"marketplace search",description:"Search across plugins and workflow templates",flags:[]},{name:"marketplace install",description:"Install a workflow template from the registry",flags:[]},{name:"marketplace info",description:"Show detailed information about a marketplace item",flags:[]}]},{name:"mcp",description:"Manage MCP (Model Context Protocol) server connections",commands:[{name:"mcp list",description:"List all discovered MCP servers and their tools",flags:[]},{name:"mcp connect",description:"Connect to an MCP server",flags:["--all"]},{name:"mcp call",description:"Call a tool on an MCP server",flags:["--args <args>","--server <server>"]},{name:"mcp info",description:"Show detailed information for an MCP server",flags:[]},{name:"mcp refresh",description:"Re-discover and reconnect to all MCP servers",flags:[]},{name:"mcp catalog",description:"List the curated MCP server catalog (vetted, exact-version pins)",flags:["--search <search>"]},{name:"mcp install",description:"Install a vetted MCP server from the catalog (writes ~/.nuvira/mcp/<name>.json)",flags:["--env <env>"]},{name:"mcp uninstall",description:"Remove an installed MCP server config",flags:[]},{name:"mcp serve",description:"Expose the agent's H1 tools as an MCP server over stdio (MCP clients / IDEs / other agents can connect)",flags:["--with <with>"]}]},{name:"ci",description:"Headless CI/CD mode — structured JSON output and exit codes for pipelines",commands:[{name:"ci execute",description:"Execute a goal and emit JSON result (exit 0 = success, 1 = failure)",flags:["--context-limit <context_limit>","--context-prune <context_prune>","--github-annotations","--memory","--model <model>","--planner-model <planner_model>","--provider <provider>","--reviewer-model <reviewer_model>","--sandbox","--timeout <timeout>","--writer-model <writer_model>"]},{name:"ci check",description:"Run a gate check (exit 0 = pass, 1 = fail) — minimal output, ideal for workflow gates",flags:["--model <model>","--provider <provider>","--verbose"]},{name:"ci review",description:"Review one or more files and emit JSON findings",flags:["--context <context>","--format <format>","--model <model>","--provider <provider>"]}]},{name:"publish",description:"Autonomous publish workflow — version, build, publish to npm & GitHub",commands:[]},{name:"credentials",description:"Store GitHub/npm release credentials so the agent can release without re-entering them",commands:[{name:"credentials status",description:"Show which release credentials are available, and where each came from",flags:[]},{name:"credentials set",description:"Store a credential in the nuvira credential store",flags:["--stdin","--value <value>"]},{name:"credentials forget",description:"Delete a stored credential",flags:[]},{name:"credentials verify",description:"Check the stored GitHub and npm tokens against the live services",flags:[]}]},{name:"bedrock",description:"AWS Bedrock setup and management (dedicated onboarding for Bedrock)",commands:[{name:"bedrock setup",description:"Interactive wizard to configure AWS Bedrock (credentials, region, model access)",flags:[]},{name:"bedrock status",description:"Show current Bedrock configuration and connectivity status",flags:[]},{name:"bedrock test",description:"Probe Bedrock models and test inference",flags:["--region <region>"]}]},{name:"phase",description:"Phase-wise project scope execution — multi-goal pipelines",commands:[{name:"phase create",description:"Create a new phase scope with ordered goals",flags:["--output <output>"]},{name:"phase execute",description:"Execute a phase scope from start to finish",flags:["--dry-run","--model <model>","--non-interactive","--provider <provider>","--skip-tests","--verbose"]},{name:"phase resume",description:"Resume a saved phase scope from where it left off",flags:["--model <model>","--provider <provider>","--skip-tests","--verbose"]},{name:"phase status",description:"Show progress of a phase scope",flags:[]},{name:"phase delete",description:"Delete a saved phase scope",flags:[]},{name:"phase list",description:"List all saved phase scopes",flags:[]}]},{name:"retrieval",description:"Vector retrieval — token-efficient context via local embeddings",commands:[{name:"retrieval stats",description:"Show token-savings transparency (how many tokens retrieval saved)",flags:[]},{name:"retrieval index",description:"Index a repo/file into the retrieval store (chunks embedded locally)",flags:[]},{name:"retrieval query",description:"Semantic search over the indexed repo (top-k chunks)",flags:[]},{name:"retrieval clear",description:"Clear the retrieval index and token-savings stats",flags:[]}]},{name:"trace",description:"Inspect and replay per-step reasoning traces (every LLM call in a pipeline)",commands:[{name:"trace list",description:"Show recent traces",flags:["--limit <limit>"]},{name:"trace show",description:"Show a single trace (goal, timing, step summary)",flags:[]},{name:"trace replay",description:"Step-by-step replay of a trace — every LLM call with prompt digest, model, tokens, latency, and routing",flags:["--full"]},{name:"trace clear",description:"Delete all stored traces",flags:[]}]},{name:"continuity",description:"Session continuity — what is stored, and how to forget it",commands:[{name:"continuity list",description:"Show the continuity switches, stored sessions, and the semantic recall index",flags:[]},{name:"continuity clear",description:"Forget stored continuity data (no flags = both sessions and recall)",flags:["--recall","--sessions"]}]},{name:"website",description:"Open the Agent-Nuvira website — capabilities, commands, docs, setup",commands:[]}],xc={commandCount:ale,groupCount:ile,groups:sle},lE=xc.groups;function ole(e,t){return e.name.toLowerCase().includes(t)||e.description.toLowerCase().includes(t)}function lle({onPick:e}){const[t,n]=S.useState(""),r=S.useId(),a=t.trim().toLowerCase(),s=S.useMemo(()=>a?lE.map(l=>l.name.toLowerCase().includes(a)?l:{...l,commands:l.commands.filter(c=>ole(c,a))}).filter(l=>l.commands.length>0):lE,[a]),o=s.reduce((l,c)=>l+c.commands.length,0);return i.jsxs("section",{className:"command-browser",children:[i.jsxs("div",{className:"command-browser-head",children:[i.jsx("h2",{className:"section-title command-browser-title",children:"Browse commands"}),i.jsx("p",{className:"command-browser-count",children:a?`${o} of ${xc.commandCount} commands match “${t.trim()}”`:`${xc.commandCount} commands in ${xc.groupCount} groups`})]}),i.jsx("label",{className:"sr-only",htmlFor:r,children:"Filter commands"}),i.jsx("input",{id:r,type:"search",className:"admin-input command-browser-search",placeholder:"Filter commands — e.g. eval, memory, gateway status",value:t,onChange:l=>n(l.target.value),autoComplete:"off",spellCheck:!1}),s.length===0?i.jsxs("p",{className:"command-browser-empty",children:["No command matches “",t.trim(),"”. Clear the filter to see all ",xc.groupCount," groups."]}):i.jsx("div",{className:"command-browser-groups",children:s.map(l=>i.jsxs("details",{className:"command-group",open:a?!0:void 0,children:[i.jsxs("summary",{className:"command-group-summary",children:[i.jsx("code",{className:"command-group-name",children:l.name}),i.jsx("span",{className:"command-group-description",children:l.description}),i.jsx("span",{className:"command-group-count",children:l.commands.length})]}),i.jsx("ul",{className:"command-list",children:l.commands.map(c=>i.jsx("li",{className:"command-item",children:i.jsxs("button",{type:"button",className:"command-use",onClick:()=>e(c.name),title:`Insert “${c.name}” into the command box`,children:[i.jsx("span",{className:"command-item-name",children:c.name}),i.jsx("span",{className:"command-item-description",children:c.description}),c.flags.length>0&&i.jsx("span",{className:"command-item-flags",children:c.flags.map(u=>i.jsx("code",{children:u},u))})]})},c.name))})]},`${l.name}:${a?"filtering":"browsing"}`))})]})}const cE={running:"⏳ running",done:"✅ done",failed:"❌ failed",cancelled:"⏹ cancelled",timeout:"⏰ timed out",error:"💥 error"};function uE(e){switch(e){case"done":return"task-status-done";case"running":return"task-status-running";case"failed":return"task-status-failed";case"cancelled":return"task-status-cancelled";case"timeout":return"task-status-timeout";default:return"task-status-error"}}function cle(e){const t=[];let n="",r=null;for(const a of e.trim())r?a===r?r=null:n+=a:a==='"'||a==="'"?r=a:/\s/.test(a)?n&&(t.push(n),n=""):n+=a;return n&&t.push(n),t}function dE(e){return e===null?"—":e<1e3?`${e}ms`:`${(e/1e3).toFixed(1)}s`}function ule(e){const t=Math.max(0,Math.floor((Date.now()-e)/1e3));if(t<60)return`${t}s ago`;const n=Math.floor(t/60);return n<60?`${n}m ago`:`${Math.floor(n/60)}h ago`}function dle(){const[e,t]=S.useState(null),n=Ds(),[r,a]=S.useState(""),[s,o]=S.useState(300),[l,c]=S.useState(!1),[u,d]=S.useState(""),[f,h]=S.useState(null),[p,g]=S.useState([]),[m,y]=S.useState(!0),v=S.useRef(null),k=S.useRef(null),x=S.useRef(null),j=S.useCallback(async()=>{const P=await Z.listTasks();P&&g(P.tasks)},[]);S.useEffect(()=>{Z.fetchAdminAuthStatus().then(P=>{t(P?{configured:P.configured,authenticated:P.authenticated,role:P.role??null}:{configured:!1,authenticated:!1,role:null}),P!=null&&P.authenticated&&j()})},[j,n]),S.useEffect(()=>{var P,$;if(m&&(f==null?void 0:f.status)==="running")try{($=(P=v.current)==null?void 0:P.scrollIntoView)==null||$.call(P,{block:"end"})}catch{}},[f==null?void 0:f.logs.length,f==null?void 0:f.status,m]),S.useEffect(()=>()=>{var P;return(P=x.current)==null?void 0:P.call(x)},[]);const w=S.useCallback((P,$)=>{var M;if((M=x.current)==null||M.call(x),h(P),d(""),!$)return;const B=Z.subscribeTask(P.id,{onLog:F=>h(L=>L&&L.id===P.id?{...L,logs:[...L.logs,F]}:L),onStatus:F=>h(L=>L&&L.id===P.id?{...L,status:F}:L)});x.current=B},[]),b=S.useCallback(async()=>{const P=cle(r);if(P.length===0){d("Type a command first — e.g. `eval run --task smoke-test` or `gateway status`.");return}c(!0),d("");const $=await Z.startTask(P,s*1e3);if(c(!1),!$.ok||!$.task){d($.error||"Failed to start task.");return}a(""),j(),w($.task,!0)},[r,s,w,j]),N=S.useCallback(async P=>{await Z.cancelTask(P)},[]),E=S.useCallback(P=>{var $;a(`${P} `),d(""),($=k.current)==null||$.focus()},[]),O=S.useCallback(async P=>{const $=await Z.getTask(P);$!=null&&$.task&&w($.task,!1)},[w]),C=S.useCallback(()=>{var P;(P=x.current)==null||P.call(x),h(null)},[]);return e?e.authenticated?i.jsxs("div",{className:"panel",children:[i.jsx(Me,{icon:"🚀",title:"Command Console"}),i.jsx("p",{className:"admin-subtitle",children:"Run any agent-nuvira command — the same CLI, executed by the dashboard. Messaging, skills, tools, eval, memory, traces and more."}),i.jsxs("form",{className:"task-run-form",onSubmit:P=>{P.preventDefault(),b()},children:[i.jsx("input",{ref:k,className:"admin-input task-cmd-input",placeholder:"eval run --task smoke-test · gateway status · skill list · memory stats",value:r,onChange:P=>a(P.target.value),autoComplete:"off",spellCheck:!1}),i.jsxs("select",{className:"admin-input task-timeout-select",title:"Task timeout",value:s,onChange:P=>o(Number(P.target.value)),children:[i.jsx("option",{value:60,children:"1 min"}),i.jsx("option",{value:300,children:"5 min"}),i.jsx("option",{value:600,children:"10 min"}),i.jsx("option",{value:1800,children:"30 min"})]}),i.jsx("button",{className:"admin-refresh-btn",type:"submit",disabled:l||r.trim()==="",children:l?"⏳ Starting…":"▶ Run"})]}),u&&i.jsx("div",{className:"admin-error",children:u}),i.jsx("p",{className:"task-hint",children:"Long-running commands stream their output live. Runs are capped at the chosen timeout and can be cancelled."}),i.jsx(lle,{onPick:E}),f&&i.jsxs("div",{className:"task-console-wrap",children:[i.jsxs("div",{className:"task-console-header",children:[i.jsx("code",{className:"task-console-cmd",children:f.command}),i.jsx("span",{className:`task-status ${uE(f.status)}`,children:cE[f.status]}),i.jsxs("span",{className:"task-meta",children:["exit ",f.exitCode??"—"," · ",dE(f.durationMs)]}),f.status==="running"&&i.jsx("button",{className:"admin-mini-btn task-cancel-btn",onClick:()=>void N(f.id),children:"⏹ Cancel"}),i.jsx("button",{className:"admin-mini-btn",onClick:C,children:"✕ Close"})]}),i.jsxs("div",{className:"task-console",children:[f.logs.map((P,$)=>i.jsx("div",{className:`task-line task-line-${P.stream}`,children:P.text},$)),f.logs.length===0&&f.status==="running"&&i.jsx("div",{className:"task-line task-line-system",children:"⏳ waiting for output…"}),i.jsx("div",{ref:v})]}),i.jsxs("label",{className:"task-autoscroll",children:[i.jsx("input",{type:"checkbox",checked:m,onChange:P=>y(P.target.checked)})," auto-scroll"]})]}),i.jsx("h2",{className:"task-history-title",children:"History"}),p.length===0?i.jsx("div",{className:"empty-state",children:"No tasks yet — run your first command above."}):i.jsx("div",{className:"admin-table-wrapper",children:i.jsxs("table",{className:"admin-table task-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Command"}),i.jsx("th",{children:"Status"}),i.jsx("th",{children:"Exit"}),i.jsx("th",{children:"Duration"}),i.jsx("th",{children:"When"})]})}),i.jsx("tbody",{children:p.map(P=>i.jsxs("tr",{className:(f==null?void 0:f.id)===P.id?"task-row-active":"",onClick:()=>void O(P.id),children:[i.jsx("td",{children:i.jsx("code",{children:P.command})}),i.jsx("td",{children:i.jsx("span",{className:`task-status ${uE(P.status)}`,children:cE[P.status]})}),i.jsx("td",{children:P.exitCode??"—"}),i.jsx("td",{children:dE(P.durationMs)}),i.jsx("td",{children:ule(P.startedAt)})]},P.id))})]})})]}):i.jsxs("div",{className:"panel",children:[i.jsx(Me,{icon:"🚀",title:"Command Console"}),i.jsxs("div",{className:"empty-state",children:[i.jsxs("p",{children:[i.jsx("strong",{children:"Log in to run tasks."})," The console executes commands on this machine, so it needs an admin session (like the Agent Hub toggles)."]}),i.jsx("p",{children:e.configured?i.jsx(en,{className:"admin-refresh-btn",to:"/admin",children:"🔐 Log in"}):i.jsx(en,{className:"admin-refresh-btn",to:"/admin",children:"🔐 Create admin account"})})]})]}):i.jsxs("div",{className:"panel",children:[i.jsx(Me,{icon:"🚀",title:"Command Console"}),i.jsx("div",{className:"loading-state",children:"Loading…"})]})}function fle(e,t){const n={};return(e[e.length-1]===""?[...e,""]:e).join((n.padRight?" ":"")+","+(n.padLeft===!1?"":" ")).trim()}const hle=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,ple=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,mle={};function fE(e,t){return(mle.jsx?ple:hle).test(e)}const gle=/[ \t\n\f\r]/g;function vle(e){return typeof e=="object"?e.type==="text"?hE(e.value):!1:hE(e)}function hE(e){return e.replace(gle,"")===""}class ad{constructor(t,n,r){this.normal=n,this.property=t,r&&(this.space=r)}}ad.prototype.normal={};ad.prototype.property={};ad.prototype.space=void 0;function fM(e,t){const n={},r={};for(const a of e)Object.assign(n,a.property),Object.assign(r,a.normal);return new ad(n,r,t)}function Lb(e){return e.toLowerCase()}class Hn{constructor(t,n){this.attribute=n,this.property=t}}Hn.prototype.attribute="";Hn.prototype.booleanish=!1;Hn.prototype.boolean=!1;Hn.prototype.commaOrSpaceSeparated=!1;Hn.prototype.commaSeparated=!1;Hn.prototype.defined=!1;Hn.prototype.mustUseProperty=!1;Hn.prototype.number=!1;Hn.prototype.overloadedBoolean=!1;Hn.prototype.property="";Hn.prototype.spaceSeparated=!1;Hn.prototype.space=void 0;let yle=0;const Re=Bs(),Lt=Bs(),Db=Bs(),le=Bs(),ot=Bs(),bs=Bs(),Vn=Bs();function Bs(){return 2**++yle}const Bb=Object.freeze(Object.defineProperty({__proto__:null,boolean:Re,booleanish:Lt,commaOrSpaceSeparated:Vn,commaSeparated:bs,number:le,overloadedBoolean:Db,spaceSeparated:ot},Symbol.toStringTag,{value:"Module"})),Ug=Object.keys(Bb);class c0 extends Hn{constructor(t,n,r,a){let s=-1;if(super(t,n),pE(this,"space",a),typeof r=="number")for(;++s<Ug.length;){const o=Ug[s];pE(this,Ug[s],(r&Bb[o])===Bb[o])}}}c0.prototype.defined=!0;function pE(e,t,n){n&&(e[t]=n)}function Pl(e){const t={},n={};for(const[r,a]of Object.entries(e.properties)){const s=new c0(r,e.transform(e.attributes||{},r),a,e.space);e.mustUseProperty&&e.mustUseProperty.includes(r)&&(s.mustUseProperty=!0),t[r]=s,n[Lb(r)]=r,n[Lb(s.attribute)]=r}return new ad(t,n,e.space)}const hM=Pl({properties:{ariaActiveDescendant:null,ariaAtomic:Lt,ariaAutoComplete:null,ariaBusy:Lt,ariaChecked:Lt,ariaColCount:le,ariaColIndex:le,ariaColSpan:le,ariaControls:ot,ariaCurrent:null,ariaDescribedBy:ot,ariaDetails:null,ariaDisabled:Lt,ariaDropEffect:ot,ariaErrorMessage:null,ariaExpanded:Lt,ariaFlowTo:ot,ariaGrabbed:Lt,ariaHasPopup:null,ariaHidden:Lt,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:ot,ariaLevel:le,ariaLive:null,ariaModal:Lt,ariaMultiLine:Lt,ariaMultiSelectable:Lt,ariaOrientation:null,ariaOwns:ot,ariaPlaceholder:null,ariaPosInSet:le,ariaPressed:Lt,ariaReadOnly:Lt,ariaRelevant:null,ariaRequired:Lt,ariaRoleDescription:ot,ariaRowCount:le,ariaRowIndex:le,ariaRowSpan:le,ariaSelected:Lt,ariaSetSize:le,ariaSort:null,ariaValueMax:le,ariaValueMin:le,ariaValueNow:le,ariaValueText:null,role:null},transform(e,t){return t==="role"?t:"aria-"+t.slice(4).toLowerCase()}});function pM(e,t){return t in e?e[t]:t}function mM(e,t){return pM(e,t.toLowerCase())}const ble=Pl({attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:bs,acceptCharset:ot,accessKey:ot,action:null,allow:null,allowFullScreen:Re,allowPaymentRequest:Re,allowUserMedia:Re,alpha:Re,alt:null,as:null,async:Re,autoCapitalize:null,autoComplete:ot,autoFocus:Re,autoPlay:Re,blocking:ot,capture:null,charSet:null,checked:Re,cite:null,className:ot,closedBy:null,colorSpace:null,cols:le,colSpan:le,command:null,commandFor:null,content:null,contentEditable:Lt,controls:Re,controlsList:ot,coords:le|bs,crossOrigin:null,data:null,dateTime:null,decoding:null,default:Re,defer:Re,dir:null,dirName:null,disabled:Re,download:Db,draggable:Lt,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:Re,formTarget:null,headers:ot,height:le,hidden:Db,high:le,href:null,hrefLang:null,htmlFor:ot,httpEquiv:ot,id:null,imageSizes:null,imageSrcSet:null,inert:Re,inputMode:null,integrity:null,is:null,isMap:Re,itemId:null,itemProp:ot,itemRef:ot,itemScope:Re,itemType:ot,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:Re,low:le,manifest:null,max:null,maxLength:le,media:null,method:null,min:null,minLength:le,multiple:Re,muted:Re,name:null,nonce:null,noModule:Re,noValidate:Re,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:Re,optimum:le,pattern:null,ping:ot,placeholder:null,playsInline:Re,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:Re,referrerPolicy:null,rel:ot,required:Re,reversed:Re,rows:le,rowSpan:le,sandbox:ot,scope:null,scoped:Re,seamless:Re,selected:Re,shadowRootClonable:Re,shadowRootCustomElementRegistry:Re,shadowRootDelegatesFocus:Re,shadowRootMode:null,shadowRootSerializable:Re,shape:null,size:le,sizes:null,slot:null,span:le,spellCheck:Lt,src:null,srcDoc:null,srcLang:null,srcSet:null,start:le,step:null,style:null,tabIndex:le,target:null,title:null,translate:null,type:null,typeMustMatch:Re,useMap:null,value:Lt,width:le,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:ot,axis:null,background:null,bgColor:null,border:le,borderColor:null,bottomMargin:le,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:Re,declare:Re,event:null,face:null,frame:null,frameBorder:null,hSpace:le,leftMargin:le,link:null,longDesc:null,lowSrc:null,marginHeight:le,marginWidth:le,noResize:Re,noHref:Re,noShade:Re,noWrap:Re,object:null,profile:null,prompt:null,rev:null,rightMargin:le,rules:null,scheme:null,scrolling:Lt,standby:null,summary:null,text:null,topMargin:le,valueType:null,version:null,vAlign:null,vLink:null,vSpace:le,allowTransparency:null,autoCorrect:null,autoSave:null,credentialless:Re,disablePictureInPicture:Re,disableRemotePlayback:Re,exportParts:bs,part:ot,prefix:null,property:null,results:le,security:null,unselectable:null},space:"html",transform:mM}),xle=Pl({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",maskType:"mask-type",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:Vn,accentHeight:le,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:le,amplitude:le,arabicForm:null,ascent:le,attributeName:null,attributeType:null,azimuth:le,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:le,by:null,calcMode:null,capHeight:le,className:ot,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:le,diffuseConstant:le,direction:null,display:null,dur:null,divisor:le,dominantBaseline:null,download:Re,dx:null,dy:null,edgeMode:null,editable:null,elevation:le,enableBackground:null,end:null,event:null,exponent:le,externalResourcesRequired:null,fill:null,fillOpacity:le,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:bs,g2:bs,glyphName:bs,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:le,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:le,horizOriginX:le,horizOriginY:le,id:null,ideographic:le,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:le,k:le,k1:le,k2:le,k3:le,k4:le,kernelMatrix:Vn,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:le,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskType:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:le,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:le,overlineThickness:le,paintOrder:null,panose1:null,path:null,pathLength:le,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:ot,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:le,pointsAtY:le,pointsAtZ:le,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:Vn,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:Vn,rev:Vn,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:Vn,requiredFeatures:Vn,requiredFonts:Vn,requiredFormats:Vn,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:le,specularExponent:le,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:le,strikethroughThickness:le,string:null,stroke:null,strokeDashArray:Vn,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:le,strokeOpacity:le,strokeWidth:null,style:null,surfaceScale:le,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:Vn,tabIndex:le,tableValues:null,target:null,targetX:le,targetY:le,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:Vn,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:le,underlineThickness:le,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:le,values:null,vAlphabetic:le,vMathematical:le,vectorEffect:null,vHanging:le,vIdeographic:le,version:null,vertAdvY:le,vertOriginX:le,vertOriginY:le,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:le,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:"svg",transform:pM}),gM=Pl({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()}}),vM=Pl({attributes:{xmlnsxlink:"xmlns:xlink"},properties:{xmlnsXLink:null,xmlns:null},space:"xmlns",transform:mM}),yM=Pl({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:"xml",transform(e,t){return"xml:"+t.slice(3).toLowerCase()}}),wle={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"},kle=/[A-Z]/g,mE=/-[a-z]/g,Sle=/^data[-\w.:]+$/i;function jle(e,t){const n=Lb(t);let r=t,a=Hn;if(n in e.normal)return e.property[e.normal[n]];if(n.length>4&&n.slice(0,4)==="data"&&Sle.test(t)){if(t.charAt(4)==="-"){const s=t.slice(5).replace(mE,Ele);r="data"+s.charAt(0).toUpperCase()+s.slice(1)}else{const s=t.slice(4);if(!mE.test(s)){let o=s.replace(kle,Nle);o.charAt(0)!=="-"&&(o="-"+o),t="data"+o}}a=c0}return new a(r,t)}function Nle(e){return"-"+e.toLowerCase()}function Ele(e){return e.charAt(1).toUpperCase()}const _le=fM([hM,ble,gM,vM,yM],"html"),u0=fM([hM,xle,gM,vM,yM],"svg");function Ale(e){return e.join(" ").trim()}var d0={},gE=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,Cle=/\n/g,Tle=/^\s*/,Ole=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,Ple=/^:\s*/,Rle=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,Mle=/^[;\s]*/,Ile=/^\s+|\s+$/g,$le=`
165
- `,vE="/",yE="*",as="",Lle="comment",Dle="declaration";function Ble(e,t){if(typeof e!="string")throw new TypeError("First argument must be a string");if(!e)return[];t=t||{};var n=1,r=1;function a(g){var m=g.match(Cle);m&&(n+=m.length);var y=g.lastIndexOf($le);r=~y?g.length-y:r+g.length}function s(){var g={line:n,column:r};return function(m){return m.position=new o(g),u(),m}}function o(g){this.start=g,this.end={line:n,column:r},this.source=t.source}o.prototype.content=e;function l(g){var m=new Error(t.source+":"+n+":"+r+": "+g);if(m.reason=g,m.filename=t.source,m.line=n,m.column=r,m.source=e,!t.silent)throw m}function c(g){var m=g.exec(e);if(m){var y=m[0];return a(y),e=e.slice(y.length),m}}function u(){c(Tle)}function d(g){var m;for(g=g||[];m=f();)m!==!1&&g.push(m);return g}function f(){var g=s();if(!(vE!=e.charAt(0)||yE!=e.charAt(1))){for(var m=2;as!=e.charAt(m)&&(yE!=e.charAt(m)||vE!=e.charAt(m+1));)++m;if(m+=2,as===e.charAt(m-1))return l("End of comment missing");var y=e.slice(2,m-2);return r+=2,a(y),e=e.slice(m),r+=2,g({type:Lle,comment:y})}}function h(){var g=s(),m=c(Ole);if(m){if(f(),!c(Ple))return l("property missing ':'");var y=c(Rle),v=g({type:Dle,property:bE(m[0].replace(gE,as)),value:y?bE(y[0].replace(gE,as)):as});return c(Mle),v}}function p(){var g=[];d(g);for(var m;m=h();)m!==!1&&(g.push(m),d(g));return g}return u(),p()}function bE(e){return e?e.replace(Ile,as):as}var zle=Ble,Fle=ri&&ri.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(d0,"__esModule",{value:!0});d0.default=Wle;const Ule=Fle(zle);function Wle(e,t){let n=null;if(!e||typeof e!="string")return n;const r=(0,Ule.default)(e),a=typeof t=="function";return r.forEach(s=>{if(s.type!=="declaration")return;const{property:o,value:l}=s;a?t(o,l,s):l&&(n=n||{},n[o]=l)}),n}var gm={};Object.defineProperty(gm,"__esModule",{value:!0});gm.camelCase=void 0;var Hle=/^--[a-zA-Z0-9_-]+$/,Gle=/-([a-z])/g,qle=/^[^-]+$/,Kle=/^-(webkit|moz|ms|o|khtml)-/,Vle=/^-(ms)-/,Yle=function(e){return!e||qle.test(e)||Hle.test(e)},Xle=function(e,t){return t.toUpperCase()},xE=function(e,t){return"".concat(t,"-")},Qle=function(e,t){return t===void 0&&(t={}),Yle(e)?e:(e=e.toLowerCase(),t.reactCompat?e=e.replace(Vle,xE):e=e.replace(Kle,xE),e.replace(Gle,Xle))};gm.camelCase=Qle;var Zle=ri&&ri.__importDefault||function(e){return e&&e.__esModule?e:{default:e}},Jle=Zle(d0),ece=gm;function zb(e,t){var n={};return!e||typeof e!="string"||(0,Jle.default)(e,function(r,a){r&&a&&(n[(0,ece.camelCase)(r,t)]=a)}),n}zb.default=zb;var tce=zb;const nce=Ze(tce),bM=xM("end"),f0=xM("start");function xM(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 rce(e){const t=f0(e),n=bM(e);if(t&&n)return{start:t,end:n}}function $c(e){return!e||typeof e!="object"?"":"position"in e||"type"in e?wE(e.position):"start"in e||"end"in e?wE(e):"line"in e||"column"in e?Fb(e):""}function Fb(e){return kE(e&&e.line)+":"+kE(e&&e.column)}function wE(e){return Fb(e&&e.start)+"-"+Fb(e&&e.end)}function kE(e){return e&&typeof e=="number"?e:1}class Nn extends Error{constructor(t,n,r){super(),typeof n=="string"&&(r=n,n=void 0);let a="",s={},o=!1;if(n&&("line"in n&&"column"in n?s={place:n}:"start"in n&&"end"in n?s={place:n}:"type"in n?s={ancestors:[n],place:n.position}:s={...n}),typeof t=="string"?a=t:!s.cause&&t&&(o=!0,a=t.message,s.cause=t),!s.ruleId&&!s.source&&typeof r=="string"){const c=r.indexOf(":");c===-1?s.ruleId=r:(s.source=r.slice(0,c),s.ruleId=r.slice(c+1))}if(!s.place&&s.ancestors&&s.ancestors){const c=s.ancestors[s.ancestors.length-1];c&&(s.place=c.position)}const l=s.place&&"start"in s.place?s.place.start:s.place;this.ancestors=s.ancestors||void 0,this.cause=s.cause||void 0,this.column=l?l.column:void 0,this.fatal=void 0,this.file="",this.message=a,this.line=l?l.line:void 0,this.name=$c(s.place)||"1:1",this.place=s.place||void 0,this.reason=this.message,this.ruleId=s.ruleId||void 0,this.source=s.source||void 0,this.stack=o&&s.cause&&typeof s.cause.stack=="string"?s.cause.stack:"",this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}}Nn.prototype.file="";Nn.prototype.name="";Nn.prototype.reason="";Nn.prototype.message="";Nn.prototype.stack="";Nn.prototype.column=void 0;Nn.prototype.line=void 0;Nn.prototype.ancestors=void 0;Nn.prototype.cause=void 0;Nn.prototype.fatal=void 0;Nn.prototype.place=void 0;Nn.prototype.ruleId=void 0;Nn.prototype.source=void 0;const h0={}.hasOwnProperty,ace=new Map,ice=/[A-Z]/g,sce=new Set(["table","tbody","thead","tfoot","tr"]),oce=new Set(["td","th"]),wM="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function lce(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=gce(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=mce(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"?u0:_le,stylePropertyNameCase:t.stylePropertyNameCase||"dom",tableCellAlignToStyle:t.tableCellAlignToStyle!==!1},s=kM(a,e,void 0);return s&&typeof s!="string"?s:a.create(e,a.Fragment,{children:s||void 0},void 0)}function kM(e,t,n){if(t.type==="element")return cce(e,t,n);if(t.type==="mdxFlowExpression"||t.type==="mdxTextExpression")return uce(e,t);if(t.type==="mdxJsxFlowElement"||t.type==="mdxJsxTextElement")return fce(e,t,n);if(t.type==="mdxjsEsm")return dce(e,t);if(t.type==="root")return hce(e,t,n);if(t.type==="text")return pce(e,t)}function cce(e,t,n){const r=e.schema;let a=r;t.tagName.toLowerCase()==="svg"&&r.space==="html"&&(a=u0,e.schema=a),e.ancestors.push(t);const s=jM(e,t.tagName,!1),o=vce(e,t);let l=m0(e,t);return sce.has(t.tagName)&&(l=l.filter(function(c){return typeof c=="string"?!vle(c):!0})),SM(e,o,s,t),p0(o,l),e.ancestors.pop(),e.schema=r,e.create(t,s,o,n)}function uce(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)}Fu(e,t.position)}function dce(e,t){if(t.data&&t.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(t.data.estree);Fu(e,t.position)}function fce(e,t,n){const r=e.schema;let a=r;t.name==="svg"&&r.space==="html"&&(a=u0,e.schema=a),e.ancestors.push(t);const s=t.name===null?e.Fragment:jM(e,t.name,!0),o=yce(e,t),l=m0(e,t);return SM(e,o,s,t),p0(o,l),e.ancestors.pop(),e.schema=r,e.create(t,s,o,n)}function hce(e,t,n){const r={};return p0(r,m0(e,t)),e.create(t,e.Fragment,r,n)}function pce(e,t){return t.value}function SM(e,t,n,r){typeof n!="string"&&n!==e.Fragment&&e.passNode&&(t.node=r)}function p0(e,t){if(t.length>0){const n=t.length>1?t:t[0];n&&(e.children=n)}}function mce(e,t,n){return r;function r(a,s,o,l){const u=Array.isArray(o.children)?n:t;return l?u(s,o,l):u(s,o)}}function gce(e,t){return n;function n(r,a,s,o){const l=Array.isArray(s.children),c=f0(r);return t(a,s,o,l,{columnNumber:c?c.column-1:void 0,fileName:e,lineNumber:c?c.line:void 0},void 0)}}function vce(e,t){const n={};let r,a;for(a in t.properties)if(a!=="children"&&h0.call(t.properties,a)){const s=bce(e,a,t.properties[a]);if(s){const[o,l]=s;e.tableCellAlignToStyle&&o==="align"&&typeof l=="string"&&oce.has(t.tagName)?r=l:n[o]=l}}if(r){const s=n.style||(n.style={});s[e.stylePropertyNameCase==="css"?"text-align":"textAlign"]=r}return n}function yce(e,t){const n={};for(const r of t.attributes)if(r.type==="mdxJsxExpressionAttribute")if(r.data&&r.data.estree&&e.evaluater){const s=r.data.estree.body[0];s.type;const o=s.expression;o.type;const l=o.properties[0];l.type,Object.assign(n,e.evaluater.evaluateExpression(l.argument))}else Fu(e,t.position);else{const a=r.name;let s;if(r.value&&typeof r.value=="object")if(r.value.data&&r.value.data.estree&&e.evaluater){const l=r.value.data.estree.body[0];l.type,s=e.evaluater.evaluateExpression(l.expression)}else Fu(e,t.position);else s=r.value===null?!0:r.value;n[a]=s}return n}function m0(e,t){const n=[];let r=-1;const a=e.passKeys?new Map:ace;for(;++r<t.children.length;){const s=t.children[r];let o;if(e.passKeys){const c=s.type==="element"?s.tagName:s.type==="mdxJsxFlowElement"||s.type==="mdxJsxTextElement"?s.name:void 0;if(c){const u=a.get(c)||0;o=c+"-"+u,a.set(c,u+1)}}const l=kM(e,s,o);l!==void 0&&n.push(l)}return n}function bce(e,t,n){const r=jle(e.schema,t);if(!(n==null||typeof n=="number"&&Number.isNaN(n))){if(Array.isArray(n)&&(n=r.commaSeparated?fle(n):Ale(n)),r.property==="style"){let a=typeof n=="object"?n:xce(e,String(n));return e.stylePropertyNameCase==="css"&&(a=wce(a)),["style",a]}return[e.elementAttributeNameCase==="react"&&r.space?wle[r.property]||r.property:r.attribute,n]}}function xce(e,t){try{return nce(t,{reactCompat:!0})}catch(n){if(e.ignoreInvalidStyle)return{};const r=n,a=new Nn("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=wM+"#cannot-parse-style-attribute",a}}function jM(e,t,n){let r;if(!n)r={type:"Literal",value:t};else if(t.includes(".")){const a=t.split(".");let s=-1,o;for(;++s<a.length;){const l=fE(a[s])?{type:"Identifier",name:a[s]}:{type:"Literal",value:a[s]};o=o?{type:"MemberExpression",object:o,property:l,computed:!!(s&&l.type==="Literal"),optional:!1}:l}r=o}else r=fE(t)&&!/^[a-z]/.test(t)?{type:"Identifier",name:t}:{type:"Literal",value:t};if(r.type==="Literal"){const a=r.value;return h0.call(e.components,a)?e.components[a]:a}if(e.evaluater)return e.evaluater.evaluateExpression(r);Fu(e)}function Fu(e,t){const n=new Nn("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=wM+"#cannot-handle-mdx-estrees-without-createevaluater",n}function wce(e){const t={};let n;for(n in e)h0.call(e,n)&&(t[kce(n)]=e[n]);return t}function kce(e){let t=e.replace(ice,Sce);return t.slice(0,3)==="ms-"&&(t="-"+t),t}function Sce(e){return"-"+e.toLowerCase()}const Wg={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"]},jce={};function g0(e,t){const n=jce,r=typeof n.includeImageAlt=="boolean"?n.includeImageAlt:!0,a=typeof n.includeHtml=="boolean"?n.includeHtml:!0;return NM(e,r,a)}function NM(e,t,n){if(Nce(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 SE(e.children,t,n)}return Array.isArray(e)?SE(e,t,n):""}function SE(e,t,n){const r=[];let a=-1;for(;++a<e.length;)r[a]=NM(e[a],t,n);return r.join("")}function Nce(e){return!!(e&&typeof e=="object")}const jE=document.createElement("i");function v0(e){const t="&"+e+";";jE.innerHTML=t;const n=jE.textContent;return n.charCodeAt(n.length-1)===59&&e!=="semi"||n===t?!1:n}function tr(e,t,n,r){const a=e.length;let s=0,o;if(t<0?t=-t>a?0:a+t:t=t>a?a:t,n=n>0?n:0,r.length<1e4)o=Array.from(r),o.unshift(t,n),e.splice(...o);else for(n&&e.splice(t,n);s<r.length;)o=r.slice(s,s+1e4),o.unshift(t,0),e.splice(...o),s+=1e4,t+=1e4}function mr(e,t){return e.length>0?(tr(e,e.length,0,t),e):t}const NE={}.hasOwnProperty;function EM(e){const t={};let n=-1;for(;++n<e.length;)Ece(t,e[n]);return t}function Ece(e,t){let n;for(n in t){const a=(NE.call(e,n)?e[n]:void 0)||(e[n]={}),s=t[n];let o;if(s)for(o in s){NE.call(a,o)||(a[o]=[]);const l=s[o];_ce(a[o],Array.isArray(l)?l:l?[l]:[])}}}function _ce(e,t){let n=-1;const r=[];for(;++n<t.length;)(t[n].add==="after"?e:r).push(t[n]);tr(e,0,0,r)}function _M(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 Wr(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const An=Mi(/[A-Za-z]/),Sn=Mi(/[\dA-Za-z]/),Ace=Mi(/[#-'*+\--9=?A-Z^-~]/);function ep(e){return e!==null&&(e<32||e===127)}const Ub=Mi(/\d/),Cce=Mi(/[\dA-Fa-f]/),Tce=Mi(/[!-/:-@[-`{-~]/);function Ee(e){return e!==null&&e<-2}function ct(e){return e!==null&&(e<0||e===32)}function Fe(e){return e===-2||e===-1||e===32}const vm=Mi(new RegExp("\\p{P}|\\p{S}","u")),Os=Mi(/\s/);function Mi(e){return t;function t(n){return n!==null&&n>-1&&e.test(String.fromCharCode(n))}}function Rl(e){const t=[];let n=-1,r=0,a=0;for(;++n<e.length;){const s=e.charCodeAt(n);let o="";if(s===37&&Sn(e.charCodeAt(n+1))&&Sn(e.charCodeAt(n+2)))a=2;else if(s<128)/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(s))||(o=String.fromCharCode(s));else if(s>55295&&s<57344){const l=e.charCodeAt(n+1);s<56320&&l>56319&&l<57344?(o=String.fromCharCode(s,l),a=1):o="�"}else o=String.fromCharCode(s);o&&(t.push(e.slice(r,n),encodeURIComponent(o)),r=n+a+1,o=""),a&&(n+=a,a=0)}return t.join("")+e.slice(r)}function He(e,t,n,r){const a=r?r-1:Number.POSITIVE_INFINITY;let s=0;return o;function o(c){return Fe(c)?(e.enter(n),l(c)):t(c)}function l(c){return Fe(c)&&s++<a?(e.consume(c),l):(e.exit(n),t(c))}}const Oce={tokenize:Pce};function Pce(e){const t=e.attempt(this.parser.constructs.contentInitial,r,a);let n;return t;function r(l){if(l===null){e.consume(l);return}return e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),He(e,t,"linePrefix")}function a(l){return e.enter("paragraph"),s(l)}function s(l){const c=e.enter("chunkText",{contentType:"text",previous:n});return n&&(n.next=c),n=c,o(l)}function o(l){if(l===null){e.exit("chunkText"),e.exit("paragraph"),e.consume(l);return}return Ee(l)?(e.consume(l),e.exit("chunkText"),s):(e.consume(l),o)}}const Rce={tokenize:Mce},EE={tokenize:Ice};function Mce(e){const t=this,n=[];let r=0,a,s,o;return l;function l(x){if(r<n.length){const j=n[r];return t.containerState=j[1],e.attempt(j[0].continuation,c,u)(x)}return u(x)}function c(x){if(r++,t.containerState._closeFlow){t.containerState._closeFlow=void 0,a&&k();const j=t.events.length;let w=j,b;for(;w--;)if(t.events[w][0]==="exit"&&t.events[w][1].type==="chunkFlow"){b=t.events[w][1].end;break}v(r);let N=j;for(;N<t.events.length;)t.events[N][1].end={...b},N++;return tr(t.events,w+1,0,t.events.slice(j)),t.events.length=N,u(x)}return l(x)}function u(x){if(r===n.length){if(!a)return h(x);if(a.currentConstruct&&a.currentConstruct.concrete)return g(x);t.interrupt=!!(a.currentConstruct&&!a._gfmTableDynamicInterruptHack)}return t.containerState={},e.check(EE,d,f)(x)}function d(x){return a&&k(),v(r),h(x)}function f(x){return t.parser.lazy[t.now().line]=r!==n.length,o=t.now().offset,g(x)}function h(x){return t.containerState={},e.attempt(EE,p,g)(x)}function p(x){return r++,n.push([t.currentConstruct,t.containerState]),h(x)}function g(x){if(x===null){a&&k(),v(0),e.consume(x);return}return a=a||t.parser.flow(t.now()),e.enter("chunkFlow",{_tokenizer:a,contentType:"flow",previous:s}),m(x)}function m(x){if(x===null){y(e.exit("chunkFlow"),!0),v(0),e.consume(x);return}return Ee(x)?(e.consume(x),y(e.exit("chunkFlow")),r=0,t.interrupt=void 0,l):(e.consume(x),m)}function y(x,j){const w=t.sliceStream(x);if(j&&w.push(null),x.previous=s,s&&(s.next=x),s=x,a.defineSkip(x.start),a.write(w),t.parser.lazy[x.start.line]){let b=a.events.length;for(;b--;)if(a.events[b][1].start.offset<o&&(!a.events[b][1].end||a.events[b][1].end.offset>o))return;const N=t.events.length;let E=N,O,C;for(;E--;)if(t.events[E][0]==="exit"&&t.events[E][1].type==="chunkFlow"){if(O){C=t.events[E][1].end;break}O=!0}for(v(r),b=N;b<t.events.length;)t.events[b][1].end={...C},b++;tr(t.events,E+1,0,t.events.slice(N)),t.events.length=b}}function v(x){let j=n.length;for(;j-- >x;){const w=n[j];t.containerState=w[1],w[0].exit.call(t,e)}n.length=x}function k(){a.write([null]),s=void 0,a=void 0,t.containerState._closeFlow=void 0}}function Ice(e,t,n){return He(e,e.attempt(this.parser.constructs.document,t,n),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function hl(e){if(e===null||ct(e)||Os(e))return 1;if(vm(e))return 2}function ym(e,t,n){const r=[];let a=-1;for(;++a<e.length;){const s=e[a].resolveAll;s&&!r.includes(s)&&(t=s(t,n),r.push(s))}return t}const Wb={name:"attention",resolveAll:$ce,tokenize:Lce};function $ce(e,t){let n=-1,r,a,s,o,l,c,u,d;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;c=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 f={...e[r][1].end},h={...e[n][1].start};_E(f,-c),_E(h,c),o={type:c>1?"strongSequence":"emphasisSequence",start:f,end:{...e[r][1].end}},l={type:c>1?"strongSequence":"emphasisSequence",start:{...e[n][1].start},end:h},s={type:c>1?"strongText":"emphasisText",start:{...e[r][1].end},end:{...e[n][1].start}},a={type:c>1?"strong":"emphasis",start:{...o.start},end:{...l.end}},e[r][1].end={...o.start},e[n][1].start={...l.end},u=[],e[r][1].end.offset-e[r][1].start.offset&&(u=mr(u,[["enter",e[r][1],t],["exit",e[r][1],t]])),u=mr(u,[["enter",a,t],["enter",o,t],["exit",o,t],["enter",s,t]]),u=mr(u,ym(t.parser.constructs.insideSpan.null,e.slice(r+1,n),t)),u=mr(u,[["exit",s,t],["enter",l,t],["exit",l,t],["exit",a,t]]),e[n][1].end.offset-e[n][1].start.offset?(d=2,u=mr(u,[["enter",e[n][1],t],["exit",e[n][1],t]])):d=0,tr(e,r-1,n-r+3,u),n=r+u.length-d-2;break}}for(n=-1;++n<e.length;)e[n][1].type==="attentionSequence"&&(e[n][1].type="data");return e}function Lce(e,t){const n=this.parser.constructs.attentionMarkers.null,r=this.previous,a=hl(r);let s;return o;function o(c){return s=c,e.enter("attentionSequence"),l(c)}function l(c){if(c===s)return e.consume(c),l;const u=e.exit("attentionSequence"),d=hl(c),f=!d||d===2&&a||n.includes(c),h=!a||a===2&&d||n.includes(r);return u._open=!!(s===42?f:f&&(a||!h)),u._close=!!(s===42?h:h&&(d||!f)),t(c)}}function _E(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}const Dce={name:"autolink",tokenize:Bce};function Bce(e,t,n){let r=0;return a;function a(p){return e.enter("autolink"),e.enter("autolinkMarker"),e.consume(p),e.exit("autolinkMarker"),e.enter("autolinkProtocol"),s}function s(p){return An(p)?(e.consume(p),o):p===64?n(p):u(p)}function o(p){return p===43||p===45||p===46||Sn(p)?(r=1,l(p)):u(p)}function l(p){return p===58?(e.consume(p),r=0,c):(p===43||p===45||p===46||Sn(p))&&r++<32?(e.consume(p),l):(r=0,u(p))}function c(p){return p===62?(e.exit("autolinkProtocol"),e.enter("autolinkMarker"),e.consume(p),e.exit("autolinkMarker"),e.exit("autolink"),t):p===null||p===32||p===60||ep(p)?n(p):(e.consume(p),c)}function u(p){return p===64?(e.consume(p),d):Ace(p)?(e.consume(p),u):n(p)}function d(p){return Sn(p)?f(p):n(p)}function f(p){return p===46?(e.consume(p),r=0,d):p===62?(e.exit("autolinkProtocol").type="autolinkEmail",e.enter("autolinkMarker"),e.consume(p),e.exit("autolinkMarker"),e.exit("autolink"),t):h(p)}function h(p){if((p===45||Sn(p))&&r++<63){const g=p===45?h:f;return e.consume(p),g}return n(p)}}const id={partial:!0,tokenize:zce};function zce(e,t,n){return r;function r(s){return Fe(s)?He(e,a,"linePrefix")(s):a(s)}function a(s){return s===null||Ee(s)?t(s):n(s)}}const AM={continuation:{tokenize:Uce},exit:Wce,name:"blockQuote",tokenize:Fce};function Fce(e,t,n){const r=this;return a;function a(o){if(o===62){const l=r.containerState;return l.open||(e.enter("blockQuote",{_container:!0}),l.open=!0),e.enter("blockQuotePrefix"),e.enter("blockQuoteMarker"),e.consume(o),e.exit("blockQuoteMarker"),s}return n(o)}function s(o){return Fe(o)?(e.enter("blockQuotePrefixWhitespace"),e.consume(o),e.exit("blockQuotePrefixWhitespace"),e.exit("blockQuotePrefix"),t):(e.exit("blockQuotePrefix"),t(o))}}function Uce(e,t,n){const r=this;return a;function a(o){return Fe(o)?He(e,s,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(o):s(o)}function s(o){return e.attempt(AM,t,n)(o)}}function Wce(e){e.exit("blockQuote")}const CM={name:"characterEscape",tokenize:Hce};function Hce(e,t,n){return r;function r(s){return e.enter("characterEscape"),e.enter("escapeMarker"),e.consume(s),e.exit("escapeMarker"),a}function a(s){return Tce(s)?(e.enter("characterEscapeValue"),e.consume(s),e.exit("characterEscapeValue"),e.exit("characterEscape"),t):n(s)}}const TM={name:"characterReference",tokenize:Gce};function Gce(e,t,n){const r=this;let a=0,s,o;return l;function l(f){return e.enter("characterReference"),e.enter("characterReferenceMarker"),e.consume(f),e.exit("characterReferenceMarker"),c}function c(f){return f===35?(e.enter("characterReferenceMarkerNumeric"),e.consume(f),e.exit("characterReferenceMarkerNumeric"),u):(e.enter("characterReferenceValue"),s=31,o=Sn,d(f))}function u(f){return f===88||f===120?(e.enter("characterReferenceMarkerHexadecimal"),e.consume(f),e.exit("characterReferenceMarkerHexadecimal"),e.enter("characterReferenceValue"),s=6,o=Cce,d):(e.enter("characterReferenceValue"),s=7,o=Ub,d(f))}function d(f){if(f===59&&a){const h=e.exit("characterReferenceValue");return o===Sn&&!v0(r.sliceSerialize(h))?n(f):(e.enter("characterReferenceMarker"),e.consume(f),e.exit("characterReferenceMarker"),e.exit("characterReference"),t)}return o(f)&&a++<s?(e.consume(f),d):n(f)}}const AE={partial:!0,tokenize:Kce},CE={concrete:!0,name:"codeFenced",tokenize:qce};function qce(e,t,n){const r=this,a={partial:!0,tokenize:w};let s=0,o=0,l;return c;function c(b){return u(b)}function u(b){const N=r.events[r.events.length-1];return s=N&&N[1].type==="linePrefix"?N[2].sliceSerialize(N[1],!0).length:0,l=b,e.enter("codeFenced"),e.enter("codeFencedFence"),e.enter("codeFencedFenceSequence"),d(b)}function d(b){return b===l?(o++,e.consume(b),d):o<3?n(b):(e.exit("codeFencedFenceSequence"),Fe(b)?He(e,f,"whitespace")(b):f(b))}function f(b){return b===null||Ee(b)?(e.exit("codeFencedFence"),r.interrupt?t(b):e.check(AE,m,j)(b)):(e.enter("codeFencedFenceInfo"),e.enter("chunkString",{contentType:"string"}),h(b))}function h(b){return b===null||Ee(b)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),f(b)):Fe(b)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),He(e,p,"whitespace")(b)):b===96&&b===l?n(b):(e.consume(b),h)}function p(b){return b===null||Ee(b)?f(b):(e.enter("codeFencedFenceMeta"),e.enter("chunkString",{contentType:"string"}),g(b))}function g(b){return b===null||Ee(b)?(e.exit("chunkString"),e.exit("codeFencedFenceMeta"),f(b)):b===96&&b===l?n(b):(e.consume(b),g)}function m(b){return e.attempt(a,j,y)(b)}function y(b){return e.enter("lineEnding"),e.consume(b),e.exit("lineEnding"),v}function v(b){return s>0&&Fe(b)?He(e,k,"linePrefix",s+1)(b):k(b)}function k(b){return b===null||Ee(b)?e.check(AE,m,j)(b):(e.enter("codeFlowValue"),x(b))}function x(b){return b===null||Ee(b)?(e.exit("codeFlowValue"),k(b)):(e.consume(b),x)}function j(b){return e.exit("codeFenced"),t(b)}function w(b,N,E){let O=0;return C;function C(F){return b.enter("lineEnding"),b.consume(F),b.exit("lineEnding"),P}function P(F){return b.enter("codeFencedFence"),Fe(F)?He(b,$,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(F):$(F)}function $(F){return F===l?(b.enter("codeFencedFenceSequence"),B(F)):E(F)}function B(F){return F===l?(O++,b.consume(F),B):O>=o?(b.exit("codeFencedFenceSequence"),Fe(F)?He(b,M,"whitespace")(F):M(F)):E(F)}function M(F){return F===null||Ee(F)?(b.exit("codeFencedFence"),N(F)):E(F)}}}function Kce(e,t,n){const r=this;return a;function a(o){return o===null?n(o):(e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),s)}function s(o){return r.parser.lazy[r.now().line]?n(o):t(o)}}const Hg={name:"codeIndented",tokenize:Yce},Vce={partial:!0,tokenize:Xce};function Yce(e,t,n){const r=this;return a;function a(u){return e.enter("codeIndented"),He(e,s,"linePrefix",5)(u)}function s(u){const d=r.events[r.events.length-1];return d&&d[1].type==="linePrefix"&&d[2].sliceSerialize(d[1],!0).length>=4?o(u):n(u)}function o(u){return u===null?c(u):Ee(u)?e.attempt(Vce,o,c)(u):(e.enter("codeFlowValue"),l(u))}function l(u){return u===null||Ee(u)?(e.exit("codeFlowValue"),o(u)):(e.consume(u),l)}function c(u){return e.exit("codeIndented"),t(u)}}function Xce(e,t,n){const r=this;return a;function a(o){return r.parser.lazy[r.now().line]?n(o):Ee(o)?(e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),a):He(e,s,"linePrefix",5)(o)}function s(o){const l=r.events[r.events.length-1];return l&&l[1].type==="linePrefix"&&l[2].sliceSerialize(l[1],!0).length>=4?t(o):Ee(o)?a(o):n(o)}}const Qce={name:"codeText",previous:Jce,resolve:Zce,tokenize:eue};function Zce(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 Jce(e){return e!==96||this.events[this.events.length-1][1].type==="characterEscape"}function eue(e,t,n){let r=0,a,s;return o;function o(f){return e.enter("codeText"),e.enter("codeTextSequence"),l(f)}function l(f){return f===96?(e.consume(f),r++,l):(e.exit("codeTextSequence"),c(f))}function c(f){return f===null?n(f):f===32?(e.enter("space"),e.consume(f),e.exit("space"),c):f===96?(s=e.enter("codeTextSequence"),a=0,d(f)):Ee(f)?(e.enter("lineEnding"),e.consume(f),e.exit("lineEnding"),c):(e.enter("codeTextData"),u(f))}function u(f){return f===null||f===32||f===96||Ee(f)?(e.exit("codeTextData"),c(f)):(e.consume(f),u)}function d(f){return f===96?(e.consume(f),a++,d):a===r?(e.exit("codeTextSequence"),e.exit("codeText"),t(f)):(s.type="codeTextData",u(f))}}class tue{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 s=this.right.splice(this.right.length-a,Number.POSITIVE_INFINITY);return r&&fc(this.left,r),s.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),fc(this.left,t)}unshift(t){this.setCursor(0),this.right.push(t)}unshiftMany(t){this.setCursor(0),fc(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);fc(this.right,n.reverse())}else{const n=this.right.splice(this.left.length+this.right.length-t,Number.POSITIVE_INFINITY);fc(this.left,n.reverse())}}}function fc(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 OM(e){const t={};let n=-1,r,a,s,o,l,c,u;const d=new tue(e);for(;++n<d.length;){for(;n in t;)n=t[n];if(r=d.get(n),n&&r[1].type==="chunkFlow"&&d.get(n-1)[1].type==="listItemPrefix"&&(c=r[1]._tokenizer.events,s=0,s<c.length&&c[s][1].type==="lineEndingBlank"&&(s+=2),s<c.length&&c[s][1].type==="content"))for(;++s<c.length&&c[s][1].type!=="content";)c[s][1].type==="chunkText"&&(c[s][1]._isInFirstContentOfListItem=!0,s++);if(r[0]==="enter")r[1].contentType&&(Object.assign(t,nue(d,n)),n=t[n],u=!0);else if(r[1]._container){for(s=n,a=void 0;s--;)if(o=d.get(s),o[1].type==="lineEnding"||o[1].type==="lineEndingBlank")o[0]==="enter"&&(a&&(d.get(a)[1].type="lineEndingBlank"),o[1].type="lineEnding",a=s);else if(!(o[1].type==="linePrefix"||o[1].type==="listItemIndent"))break;a&&(r[1].end={...d.get(a)[1].start},l=d.slice(a,n),l.unshift(r),d.splice(a,n-a+1,l))}}return tr(e,0,Number.POSITIVE_INFINITY,d.slice(0)),!u}function nue(e,t){const n=e.get(t)[1],r=e.get(t)[2];let a=t-1;const s=[];let o=n._tokenizer;o||(o=r.parser[n.contentType](n.start),n._contentTypeTextTrailing&&(o._contentTypeTextTrailing=!0));const l=o.events,c=[],u={};let d,f,h=-1,p=n,g=0,m=0;const y=[m];for(;p;){for(;e.get(++a)[1]!==p;);s.push(a),p._tokenizer||(d=r.sliceStream(p),p.next||d.push(null),f&&o.defineSkip(p.start),p._isInFirstContentOfListItem&&(o._gfmTasklistFirstContentOfListItem=!0),o.write(d),p._isInFirstContentOfListItem&&(o._gfmTasklistFirstContentOfListItem=void 0)),f=p,p=p.next}for(p=n;++h<l.length;)l[h][0]==="exit"&&l[h-1][0]==="enter"&&l[h][1].type===l[h-1][1].type&&l[h][1].start.line!==l[h][1].end.line&&(m=h+1,y.push(m),p._tokenizer=void 0,p.previous=void 0,p=p.next);for(o.events=[],p?(p._tokenizer=void 0,p.previous=void 0):y.pop(),h=y.length;h--;){const v=l.slice(y[h],y[h+1]),k=s.pop();c.push([k,k+v.length-1]),e.splice(k,2,v)}for(c.reverse(),h=-1;++h<c.length;)u[g+c[h][0]]=g+c[h][1],g+=c[h][1]-c[h][0]-1;return u}const rue={resolve:iue,tokenize:sue},aue={partial:!0,tokenize:oue};function iue(e){return OM(e),e}function sue(e,t){let n;return r;function r(l){return e.enter("content"),n=e.enter("chunkContent",{contentType:"content"}),a(l)}function a(l){return l===null?s(l):Ee(l)?e.check(aue,o,s)(l):(e.consume(l),a)}function s(l){return e.exit("chunkContent"),e.exit("content"),t(l)}function o(l){return e.consume(l),e.exit("chunkContent"),n.next=e.enter("chunkContent",{contentType:"content",previous:n}),n=n.next,a}}function oue(e,t,n){const r=this;return a;function a(o){return e.exit("chunkContent"),e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),He(e,s,"linePrefix")}function s(o){if(o===null||Ee(o))return n(o);const l=r.events[r.events.length-1];return!r.parser.constructs.disable.null.includes("codeIndented")&&l&&l[1].type==="linePrefix"&&l[2].sliceSerialize(l[1],!0).length>=4?t(o):e.interrupt(r.parser.constructs.flow,n,t)(o)}}function PM(e,t,n,r,a,s,o,l,c){const u=c||Number.POSITIVE_INFINITY;let d=0;return f;function f(v){return v===60?(e.enter(r),e.enter(a),e.enter(s),e.consume(v),e.exit(s),h):v===null||v===32||v===41||ep(v)?n(v):(e.enter(r),e.enter(o),e.enter(l),e.enter("chunkString",{contentType:"string"}),m(v))}function h(v){return v===62?(e.enter(s),e.consume(v),e.exit(s),e.exit(a),e.exit(r),t):(e.enter(l),e.enter("chunkString",{contentType:"string"}),p(v))}function p(v){return v===62?(e.exit("chunkString"),e.exit(l),h(v)):v===null||v===60||Ee(v)?n(v):(e.consume(v),v===92?g:p)}function g(v){return v===60||v===62||v===92?(e.consume(v),p):p(v)}function m(v){return!d&&(v===null||v===41||ct(v))?(e.exit("chunkString"),e.exit(l),e.exit(o),e.exit(r),t(v)):d<u&&v===40?(e.consume(v),d++,m):v===41?(e.consume(v),d--,m):v===null||v===32||v===40||ep(v)?n(v):(e.consume(v),v===92?y:m)}function y(v){return v===40||v===41||v===92?(e.consume(v),m):m(v)}}function RM(e,t,n,r,a,s){const o=this;let l=0,c;return u;function u(p){return e.enter(r),e.enter(a),e.consume(p),e.exit(a),e.enter(s),d}function d(p){return l>999||p===null||p===91||p===93&&!c||p===94&&!l&&"_hiddenFootnoteSupport"in o.parser.constructs?n(p):p===93?(e.exit(s),e.enter(a),e.consume(p),e.exit(a),e.exit(r),t):Ee(p)?(e.enter("lineEnding"),e.consume(p),e.exit("lineEnding"),d):(e.enter("chunkString",{contentType:"string"}),f(p))}function f(p){return p===null||p===91||p===93||Ee(p)||l++>999?(e.exit("chunkString"),d(p)):(e.consume(p),c||(c=!Fe(p)),p===92?h:f)}function h(p){return p===91||p===92||p===93?(e.consume(p),l++,f):f(p)}}function MM(e,t,n,r,a,s){let o;return l;function l(h){return h===34||h===39||h===40?(e.enter(r),e.enter(a),e.consume(h),e.exit(a),o=h===40?41:h,c):n(h)}function c(h){return h===o?(e.enter(a),e.consume(h),e.exit(a),e.exit(r),t):(e.enter(s),u(h))}function u(h){return h===o?(e.exit(s),c(o)):h===null?n(h):Ee(h)?(e.enter("lineEnding"),e.consume(h),e.exit("lineEnding"),He(e,u,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),d(h))}function d(h){return h===o||h===null||Ee(h)?(e.exit("chunkString"),u(h)):(e.consume(h),h===92?f:d)}function f(h){return h===o||h===92?(e.consume(h),d):d(h)}}function Lc(e,t){let n;return r;function r(a){return Ee(a)?(e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),n=!0,r):Fe(a)?He(e,r,n?"linePrefix":"lineSuffix")(a):t(a)}}const lue={name:"definition",tokenize:uue},cue={partial:!0,tokenize:due};function uue(e,t,n){const r=this;let a;return s;function s(p){return e.enter("definition"),o(p)}function o(p){return RM.call(r,e,l,n,"definitionLabel","definitionLabelMarker","definitionLabelString")(p)}function l(p){return a=Wr(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)),p===58?(e.enter("definitionMarker"),e.consume(p),e.exit("definitionMarker"),c):n(p)}function c(p){return ct(p)?Lc(e,u)(p):u(p)}function u(p){return PM(e,d,n,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(p)}function d(p){return e.attempt(cue,f,f)(p)}function f(p){return Fe(p)?He(e,h,"whitespace")(p):h(p)}function h(p){return p===null||Ee(p)?(e.exit("definition"),r.parser.defined.push(a),t(p)):n(p)}}function due(e,t,n){return r;function r(l){return ct(l)?Lc(e,a)(l):n(l)}function a(l){return MM(e,s,n,"definitionTitle","definitionTitleMarker","definitionTitleString")(l)}function s(l){return Fe(l)?He(e,o,"whitespace")(l):o(l)}function o(l){return l===null||Ee(l)?t(l):n(l)}}const fue={name:"hardBreakEscape",tokenize:hue};function hue(e,t,n){return r;function r(s){return e.enter("hardBreakEscape"),e.consume(s),a}function a(s){return Ee(s)?(e.exit("hardBreakEscape"),t(s)):n(s)}}const pue={name:"headingAtx",resolve:mue,tokenize:gue};function mue(e,t){let n=e.length-2,r=3,a,s;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},s={type:"chunkText",start:e[r][1].start,end:e[n][1].end,contentType:"text"},tr(e,r,n-r+1,[["enter",a,t],["enter",s,t],["exit",s,t],["exit",a,t]])),e}function gue(e,t,n){let r=0;return a;function a(d){return e.enter("atxHeading"),s(d)}function s(d){return e.enter("atxHeadingSequence"),o(d)}function o(d){return d===35&&r++<6?(e.consume(d),o):d===null||ct(d)?(e.exit("atxHeadingSequence"),l(d)):n(d)}function l(d){return d===35?(e.enter("atxHeadingSequence"),c(d)):d===null||Ee(d)?(e.exit("atxHeading"),t(d)):Fe(d)?He(e,l,"whitespace")(d):(e.enter("atxHeadingText"),u(d))}function c(d){return d===35?(e.consume(d),c):(e.exit("atxHeadingSequence"),l(d))}function u(d){return d===null||d===35||ct(d)?(e.exit("atxHeadingText"),l(d)):(e.consume(d),u)}}const vue=["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"],TE=["pre","script","style","textarea"],yue={concrete:!0,name:"htmlFlow",resolveTo:wue,tokenize:kue},bue={partial:!0,tokenize:jue},xue={partial:!0,tokenize:Sue};function wue(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 kue(e,t,n){const r=this;let a,s,o,l,c;return u;function u(I){return d(I)}function d(I){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(I),f}function f(I){return I===33?(e.consume(I),h):I===47?(e.consume(I),s=!0,m):I===63?(e.consume(I),a=3,r.interrupt?t:T):An(I)?(e.consume(I),o=String.fromCharCode(I),y):n(I)}function h(I){return I===45?(e.consume(I),a=2,p):I===91?(e.consume(I),a=5,l=0,g):An(I)?(e.consume(I),a=4,r.interrupt?t:T):n(I)}function p(I){return I===45?(e.consume(I),r.interrupt?t:T):n(I)}function g(I){const ce="CDATA[";return I===ce.charCodeAt(l++)?(e.consume(I),l===ce.length?r.interrupt?t:$:g):n(I)}function m(I){return An(I)?(e.consume(I),o=String.fromCharCode(I),y):n(I)}function y(I){if(I===null||I===47||I===62||ct(I)){const ce=I===47,ge=o.toLowerCase();return!ce&&!s&&TE.includes(ge)?(a=1,r.interrupt?t(I):$(I)):vue.includes(o.toLowerCase())?(a=6,ce?(e.consume(I),v):r.interrupt?t(I):$(I)):(a=7,r.interrupt&&!r.parser.lazy[r.now().line]?n(I):s?k(I):x(I))}return I===45||Sn(I)?(e.consume(I),o+=String.fromCharCode(I),y):n(I)}function v(I){return I===62?(e.consume(I),r.interrupt?t:$):n(I)}function k(I){return Fe(I)?(e.consume(I),k):C(I)}function x(I){return I===47?(e.consume(I),C):I===58||I===95||An(I)?(e.consume(I),j):Fe(I)?(e.consume(I),x):C(I)}function j(I){return I===45||I===46||I===58||I===95||Sn(I)?(e.consume(I),j):w(I)}function w(I){return I===61?(e.consume(I),b):Fe(I)?(e.consume(I),w):x(I)}function b(I){return I===null||I===60||I===61||I===62||I===96?n(I):I===34||I===39?(e.consume(I),c=I,N):Fe(I)?(e.consume(I),b):E(I)}function N(I){return I===c?(e.consume(I),c=null,O):I===null||Ee(I)?n(I):(e.consume(I),N)}function E(I){return I===null||I===34||I===39||I===47||I===60||I===61||I===62||I===96||ct(I)?w(I):(e.consume(I),E)}function O(I){return I===47||I===62||Fe(I)?x(I):n(I)}function C(I){return I===62?(e.consume(I),P):n(I)}function P(I){return I===null||Ee(I)?$(I):Fe(I)?(e.consume(I),P):n(I)}function $(I){return I===45&&a===2?(e.consume(I),L):I===60&&a===1?(e.consume(I),W):I===62&&a===4?(e.consume(I),K):I===63&&a===3?(e.consume(I),T):I===93&&a===5?(e.consume(I),z):Ee(I)&&(a===6||a===7)?(e.exit("htmlFlowData"),e.check(bue,D,B)(I)):I===null||Ee(I)?(e.exit("htmlFlowData"),B(I)):(e.consume(I),$)}function B(I){return e.check(xue,M,D)(I)}function M(I){return e.enter("lineEnding"),e.consume(I),e.exit("lineEnding"),F}function F(I){return I===null||Ee(I)?B(I):(e.enter("htmlFlowData"),$(I))}function L(I){return I===45?(e.consume(I),T):$(I)}function W(I){return I===47?(e.consume(I),o="",A):$(I)}function A(I){if(I===62){const ce=o.toLowerCase();return TE.includes(ce)?(e.consume(I),K):$(I)}return An(I)&&o.length<8?(e.consume(I),o+=String.fromCharCode(I),A):$(I)}function z(I){return I===93?(e.consume(I),T):$(I)}function T(I){return I===62?(e.consume(I),K):I===45&&a===2?(e.consume(I),T):$(I)}function K(I){return I===null||Ee(I)?(e.exit("htmlFlowData"),D(I)):(e.consume(I),K)}function D(I){return e.exit("htmlFlow"),t(I)}}function Sue(e,t,n){const r=this;return a;function a(o){return Ee(o)?(e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),s):n(o)}function s(o){return r.parser.lazy[r.now().line]?n(o):t(o)}}function jue(e,t,n){return r;function r(a){return e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),e.attempt(id,t,n)}}const Nue={name:"htmlText",tokenize:Eue};function Eue(e,t,n){const r=this;let a,s,o;return l;function l(T){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(T),c}function c(T){return T===33?(e.consume(T),u):T===47?(e.consume(T),w):T===63?(e.consume(T),x):An(T)?(e.consume(T),E):n(T)}function u(T){return T===45?(e.consume(T),d):T===91?(e.consume(T),s=0,g):An(T)?(e.consume(T),k):n(T)}function d(T){return T===45?(e.consume(T),p):n(T)}function f(T){return T===null?n(T):T===45?(e.consume(T),h):Ee(T)?(o=f,W(T)):(e.consume(T),f)}function h(T){return T===45?(e.consume(T),p):f(T)}function p(T){return T===62?L(T):T===45?h(T):f(T)}function g(T){const K="CDATA[";return T===K.charCodeAt(s++)?(e.consume(T),s===K.length?m:g):n(T)}function m(T){return T===null?n(T):T===93?(e.consume(T),y):Ee(T)?(o=m,W(T)):(e.consume(T),m)}function y(T){return T===93?(e.consume(T),v):m(T)}function v(T){return T===62?L(T):T===93?(e.consume(T),v):m(T)}function k(T){return T===null||T===62?L(T):Ee(T)?(o=k,W(T)):(e.consume(T),k)}function x(T){return T===null?n(T):T===63?(e.consume(T),j):Ee(T)?(o=x,W(T)):(e.consume(T),x)}function j(T){return T===62?L(T):x(T)}function w(T){return An(T)?(e.consume(T),b):n(T)}function b(T){return T===45||Sn(T)?(e.consume(T),b):N(T)}function N(T){return Ee(T)?(o=N,W(T)):Fe(T)?(e.consume(T),N):L(T)}function E(T){return T===45||Sn(T)?(e.consume(T),E):T===47||T===62||ct(T)?O(T):n(T)}function O(T){return T===47?(e.consume(T),L):T===58||T===95||An(T)?(e.consume(T),C):Ee(T)?(o=O,W(T)):Fe(T)?(e.consume(T),O):L(T)}function C(T){return T===45||T===46||T===58||T===95||Sn(T)?(e.consume(T),C):P(T)}function P(T){return T===61?(e.consume(T),$):Ee(T)?(o=P,W(T)):Fe(T)?(e.consume(T),P):O(T)}function $(T){return T===null||T===60||T===61||T===62||T===96?n(T):T===34||T===39?(e.consume(T),a=T,B):Ee(T)?(o=$,W(T)):Fe(T)?(e.consume(T),$):(e.consume(T),M)}function B(T){return T===a?(e.consume(T),a=void 0,F):T===null?n(T):Ee(T)?(o=B,W(T)):(e.consume(T),B)}function M(T){return T===null||T===34||T===39||T===60||T===61||T===96?n(T):T===47||T===62||ct(T)?O(T):(e.consume(T),M)}function F(T){return T===47||T===62||ct(T)?O(T):n(T)}function L(T){return T===62?(e.consume(T),e.exit("htmlTextData"),e.exit("htmlText"),t):n(T)}function W(T){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(T),e.exit("lineEnding"),A}function A(T){return Fe(T)?He(e,z,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(T):z(T)}function z(T){return e.enter("htmlTextData"),o(T)}}const y0={name:"labelEnd",resolveAll:Tue,resolveTo:Oue,tokenize:Pue},_ue={tokenize:Rue},Aue={tokenize:Mue},Cue={tokenize:Iue};function Tue(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&&tr(e,0,e.length,n),e}function Oue(e,t){let n=e.length,r=0,a,s,o,l;for(;n--;)if(a=e[n][1],s){if(a.type==="link"||a.type==="labelLink"&&a._inactive)break;e[n][0]==="enter"&&a.type==="labelLink"&&(a._inactive=!0)}else if(o){if(e[n][0]==="enter"&&(a.type==="labelImage"||a.type==="labelLink")&&!a._balanced&&(s=n,a.type!=="labelLink")){r=2;break}}else a.type==="labelEnd"&&(o=n);const c={type:e[s][1].type==="labelLink"?"link":"image",start:{...e[s][1].start},end:{...e[e.length-1][1].end}},u={type:"label",start:{...e[s][1].start},end:{...e[o][1].end}},d={type:"labelText",start:{...e[s+r+2][1].end},end:{...e[o-2][1].start}};return l=[["enter",c,t],["enter",u,t]],l=mr(l,e.slice(s+1,s+r+3)),l=mr(l,[["enter",d,t]]),l=mr(l,ym(t.parser.constructs.insideSpan.null,e.slice(s+r+4,o-3),t)),l=mr(l,[["exit",d,t],e[o-2],e[o-1],["exit",u,t]]),l=mr(l,e.slice(o+1)),l=mr(l,[["exit",c,t]]),tr(e,s,e.length,l),e}function Pue(e,t,n){const r=this;let a=r.events.length,s,o;for(;a--;)if((r.events[a][1].type==="labelImage"||r.events[a][1].type==="labelLink")&&!r.events[a][1]._balanced){s=r.events[a][1];break}return l;function l(h){return s?s._inactive?f(h):(o=r.parser.defined.includes(Wr(r.sliceSerialize({start:s.end,end:r.now()}))),e.enter("labelEnd"),e.enter("labelMarker"),e.consume(h),e.exit("labelMarker"),e.exit("labelEnd"),c):n(h)}function c(h){return h===40?e.attempt(_ue,d,o?d:f)(h):h===91?e.attempt(Aue,d,o?u:f)(h):o?d(h):f(h)}function u(h){return e.attempt(Cue,d,f)(h)}function d(h){return t(h)}function f(h){return s._balanced=!0,n(h)}}function Rue(e,t,n){return r;function r(f){return e.enter("resource"),e.enter("resourceMarker"),e.consume(f),e.exit("resourceMarker"),a}function a(f){return ct(f)?Lc(e,s)(f):s(f)}function s(f){return f===41?d(f):PM(e,o,l,"resourceDestination","resourceDestinationLiteral","resourceDestinationLiteralMarker","resourceDestinationRaw","resourceDestinationString",32)(f)}function o(f){return ct(f)?Lc(e,c)(f):d(f)}function l(f){return n(f)}function c(f){return f===34||f===39||f===40?MM(e,u,n,"resourceTitle","resourceTitleMarker","resourceTitleString")(f):d(f)}function u(f){return ct(f)?Lc(e,d)(f):d(f)}function d(f){return f===41?(e.enter("resourceMarker"),e.consume(f),e.exit("resourceMarker"),e.exit("resource"),t):n(f)}}function Mue(e,t,n){const r=this;return a;function a(l){return RM.call(r,e,s,o,"reference","referenceMarker","referenceString")(l)}function s(l){return r.parser.defined.includes(Wr(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)))?t(l):n(l)}function o(l){return n(l)}}function Iue(e,t,n){return r;function r(s){return e.enter("reference"),e.enter("referenceMarker"),e.consume(s),e.exit("referenceMarker"),a}function a(s){return s===93?(e.enter("referenceMarker"),e.consume(s),e.exit("referenceMarker"),e.exit("reference"),t):n(s)}}const $ue={name:"labelStartImage",resolveAll:y0.resolveAll,tokenize:Lue};function Lue(e,t,n){const r=this;return a;function a(l){return e.enter("labelImage"),e.enter("labelImageMarker"),e.consume(l),e.exit("labelImageMarker"),s}function s(l){return l===91?(e.enter("labelMarker"),e.consume(l),e.exit("labelMarker"),e.exit("labelImage"),o):n(l)}function o(l){return l===94&&"_hiddenFootnoteSupport"in r.parser.constructs?n(l):t(l)}}const Due={name:"labelStartLink",resolveAll:y0.resolveAll,tokenize:Bue};function Bue(e,t,n){const r=this;return a;function a(o){return e.enter("labelLink"),e.enter("labelMarker"),e.consume(o),e.exit("labelMarker"),e.exit("labelLink"),s}function s(o){return o===94&&"_hiddenFootnoteSupport"in r.parser.constructs?n(o):t(o)}}const Gg={name:"lineEnding",tokenize:zue};function zue(e,t){return n;function n(r){return e.enter("lineEnding"),e.consume(r),e.exit("lineEnding"),He(e,t,"linePrefix")}}const jf={name:"thematicBreak",tokenize:Fue};function Fue(e,t,n){let r=0,a;return s;function s(u){return e.enter("thematicBreak"),o(u)}function o(u){return a=u,l(u)}function l(u){return u===a?(e.enter("thematicBreakSequence"),c(u)):r>=3&&(u===null||Ee(u))?(e.exit("thematicBreak"),t(u)):n(u)}function c(u){return u===a?(e.consume(u),r++,c):(e.exit("thematicBreakSequence"),Fe(u)?He(e,l,"whitespace")(u):l(u))}}const In={continuation:{tokenize:Gue},exit:Kue,name:"list",tokenize:Hue},Uue={partial:!0,tokenize:Vue},Wue={partial:!0,tokenize:que};function Hue(e,t,n){const r=this,a=r.events[r.events.length-1];let s=a&&a[1].type==="linePrefix"?a[2].sliceSerialize(a[1],!0).length:0,o=0;return l;function l(p){const g=r.containerState.type||(p===42||p===43||p===45?"listUnordered":"listOrdered");if(g==="listUnordered"?!r.containerState.marker||p===r.containerState.marker:Ub(p)){if(r.containerState.type||(r.containerState.type=g,e.enter(g,{_container:!0})),g==="listUnordered")return e.enter("listItemPrefix"),p===42||p===45?e.check(jf,n,u)(p):u(p);if(!r.interrupt||p===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),c(p)}return n(p)}function c(p){return Ub(p)&&++o<10?(e.consume(p),c):(!r.interrupt||o<2)&&(r.containerState.marker?p===r.containerState.marker:p===41||p===46)?(e.exit("listItemValue"),u(p)):n(p)}function u(p){return e.enter("listItemMarker"),e.consume(p),e.exit("listItemMarker"),r.containerState.marker=r.containerState.marker||p,e.check(id,r.interrupt?n:d,e.attempt(Uue,h,f))}function d(p){return r.containerState.initialBlankLine=!0,s++,h(p)}function f(p){return Fe(p)?(e.enter("listItemPrefixWhitespace"),e.consume(p),e.exit("listItemPrefixWhitespace"),h):n(p)}function h(p){return r.containerState.size=s+r.sliceSerialize(e.exit("listItemPrefix"),!0).length,t(p)}}function Gue(e,t,n){const r=this;return r.containerState._closeFlow=void 0,e.check(id,a,s);function a(l){return r.containerState.furtherBlankLines=r.containerState.furtherBlankLines||r.containerState.initialBlankLine,He(e,t,"listItemIndent",r.containerState.size+1)(l)}function s(l){return r.containerState.furtherBlankLines||!Fe(l)?(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,o(l)):(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,e.attempt(Wue,t,o)(l))}function o(l){return r.containerState._closeFlow=!0,r.interrupt=void 0,He(e,e.attempt(In,t,n),"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(l)}}function que(e,t,n){const r=this;return He(e,a,"listItemIndent",r.containerState.size+1);function a(s){const o=r.events[r.events.length-1];return o&&o[1].type==="listItemIndent"&&o[2].sliceSerialize(o[1],!0).length===r.containerState.size?t(s):n(s)}}function Kue(e){e.exit(this.containerState.type)}function Vue(e,t,n){const r=this;return He(e,a,"listItemPrefixWhitespace",r.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function a(s){const o=r.events[r.events.length-1];return!Fe(s)&&o&&o[1].type==="listItemPrefixWhitespace"?t(s):n(s)}}const OE={name:"setextUnderline",resolveTo:Yue,tokenize:Xue};function Yue(e,t){let n=e.length,r,a,s;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),!s&&e[n][1].type==="definition"&&(s=n);const o={type:"setextHeading",start:{...e[r][1].start},end:{...e[e.length-1][1].end}};return e[a][1].type="setextHeadingText",s?(e.splice(a,0,["enter",o,t]),e.splice(s+1,0,["exit",e[r][1],t]),e[r][1].end={...e[s][1].end}):e[r][1]=o,e.push(["exit",o,t]),e}function Xue(e,t,n){const r=this;let a;return s;function s(u){let d=r.events.length,f;for(;d--;)if(r.events[d][1].type!=="lineEnding"&&r.events[d][1].type!=="linePrefix"&&r.events[d][1].type!=="content"){f=r.events[d][1].type==="paragraph";break}return!r.parser.lazy[r.now().line]&&(r.interrupt||f)?(e.enter("setextHeadingLine"),a=u,o(u)):n(u)}function o(u){return e.enter("setextHeadingLineSequence"),l(u)}function l(u){return u===a?(e.consume(u),l):(e.exit("setextHeadingLineSequence"),Fe(u)?He(e,c,"lineSuffix")(u):c(u))}function c(u){return u===null||Ee(u)?(e.exit("setextHeadingLine"),t(u)):n(u)}}const Que={tokenize:Zue};function Zue(e){const t=this,n=e.attempt(id,r,e.attempt(this.parser.constructs.flowInitial,a,He(e,e.attempt(this.parser.constructs.flow,a,e.attempt(rue,a)),"linePrefix")));return n;function r(s){if(s===null){e.consume(s);return}return e.enter("lineEndingBlank"),e.consume(s),e.exit("lineEndingBlank"),t.currentConstruct=void 0,n}function a(s){if(s===null){e.consume(s);return}return e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),t.currentConstruct=void 0,n}}const Jue={resolveAll:$M()},ede=IM("string"),tde=IM("text");function IM(e){return{resolveAll:$M(e==="text"?nde:void 0),tokenize:t};function t(n){const r=this,a=this.parser.constructs[e],s=n.attempt(a,o,l);return o;function o(d){return u(d)?s(d):l(d)}function l(d){if(d===null){n.consume(d);return}return n.enter("data"),n.consume(d),c}function c(d){return u(d)?(n.exit("data"),s(d)):(n.consume(d),c)}function u(d){if(d===null)return!0;const f=a[d];let h=-1;if(f)for(;++h<f.length;){const p=f[h];if(!p.previous||p.previous.call(r,r.previous))return!0}return!1}}}function $M(e){return t;function t(n,r){let a=-1,s;for(;++a<=n.length;)s===void 0?n[a]&&n[a][1].type==="data"&&(s=a,a++):(!n[a]||n[a][1].type!=="data")&&(a!==s+2&&(n[s][1].end=n[a-1][1].end,n.splice(s+2,a-s-2),a=s+2),s=void 0);return e?e(n,r):n}}function nde(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 s=a.length,o=-1,l=0,c;for(;s--;){const u=a[s];if(typeof u=="string"){for(o=u.length;u.charCodeAt(o-1)===32;)l++,o--;if(o)break;o=-1}else if(u===-2)c=!0,l++;else if(u!==-1){s++;break}}if(t._contentTypeTextTrailing&&n===e.length&&(l=0),l){const u={type:n===e.length||c||l<2?"lineSuffix":"hardBreakTrailing",start:{_bufferIndex:s?o:r.start._bufferIndex+o,_index:r.start._index+s,line:r.end.line,column:r.end.column-l,offset:r.end.offset-l},end:{...r.end}};r.end={...u.start},r.start.offset===r.end.offset?Object.assign(r,u):(e.splice(n,0,["enter",u,t],["exit",u,t]),n+=2)}n++}return e}const rde={42:In,43:In,45:In,48:In,49:In,50:In,51:In,52:In,53:In,54:In,55:In,56:In,57:In,62:AM},ade={91:lue},ide={[-2]:Hg,[-1]:Hg,32:Hg},sde={35:pue,42:jf,45:[OE,jf],60:yue,61:OE,95:jf,96:CE,126:CE},ode={38:TM,92:CM},lde={[-5]:Gg,[-4]:Gg,[-3]:Gg,33:$ue,38:TM,42:Wb,60:[Dce,Nue],91:Due,92:[fue,CM],93:y0,95:Wb,96:Qce},cde={null:[Wb,Jue]},ude={null:[42,95]},dde={null:[]},fde=Object.freeze(Object.defineProperty({__proto__:null,attentionMarkers:ude,contentInitial:ade,disable:dde,document:rde,flow:sde,flowInitial:ide,insideSpan:cde,string:ode,text:lde},Symbol.toStringTag,{value:"Module"}));function hde(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={},s=[];let o=[],l=[];const c={attempt:N(w),check:N(b),consume:k,enter:x,exit:j,interrupt:N(b,{interrupt:!0})},u={code:null,containerState:{},defineSkip:m,events:[],now:g,parser:e,previous:null,sliceSerialize:h,sliceStream:p,write:f};let d=t.tokenize.call(u,c);return t.resolveAll&&s.push(t),u;function f(P){return o=mr(o,P),y(),o[o.length-1]!==null?[]:(E(t,0),u.events=ym(s,u.events,u),u.events)}function h(P,$){return mde(p(P),$)}function p(P){return pde(o,P)}function g(){const{_bufferIndex:P,_index:$,line:B,column:M,offset:F}=r;return{_bufferIndex:P,_index:$,line:B,column:M,offset:F}}function m(P){a[P.line]=P.column,C()}function y(){let P;for(;r._index<o.length;){const $=o[r._index];if(typeof $=="string")for(P=r._index,r._bufferIndex<0&&(r._bufferIndex=0);r._index===P&&r._bufferIndex<$.length;)v($.charCodeAt(r._bufferIndex));else v($)}}function v(P){d=d(P)}function k(P){Ee(P)?(r.line++,r.column=1,r.offset+=P===-3?2:1,C()):P!==-1&&(r.column++,r.offset++),r._bufferIndex<0?r._index++:(r._bufferIndex++,r._bufferIndex===o[r._index].length&&(r._bufferIndex=-1,r._index++)),u.previous=P}function x(P,$){const B=$||{};return B.type=P,B.start=g(),u.events.push(["enter",B,u]),l.push(B),B}function j(P){const $=l.pop();return $.end=g(),u.events.push(["exit",$,u]),$}function w(P,$){E(P,$.from)}function b(P,$){$.restore()}function N(P,$){return B;function B(M,F,L){let W,A,z,T;return Array.isArray(M)?D(M):"tokenize"in M?D([M]):K(M);function K(ve){return Ce;function Ce(Q){const X=Q!==null&&ve[Q],ie=Q!==null&&ve.null,fe=[...Array.isArray(X)?X:X?[X]:[],...Array.isArray(ie)?ie:ie?[ie]:[]];return D(fe)(Q)}}function D(ve){return W=ve,A=0,ve.length===0?L:I(ve[A])}function I(ve){return Ce;function Ce(Q){return T=O(),z=ve,ve.partial||(u.currentConstruct=ve),ve.name&&u.parser.constructs.disable.null.includes(ve.name)?ge():ve.tokenize.call($?Object.assign(Object.create(u),$):u,c,ce,ge)(Q)}}function ce(ve){return P(z,T),F}function ge(ve){return T.restore(),++A<W.length?I(W[A]):L}}}function E(P,$){P.resolveAll&&!s.includes(P)&&s.push(P),P.resolve&&tr(u.events,$,u.events.length-$,P.resolve(u.events.slice($),u)),P.resolveTo&&(u.events=P.resolveTo(u.events,u))}function O(){const P=g(),$=u.previous,B=u.currentConstruct,M=u.events.length,F=Array.from(l);return{from:M,restore:L};function L(){r=P,u.previous=$,u.currentConstruct=B,u.events.length=M,l=F,C()}}function C(){r.line in a&&r.column<2&&(r.column=a[r.line],r.offset+=a[r.line]-1)}}function pde(e,t){const n=t.start._index,r=t.start._bufferIndex,a=t.end._index,s=t.end._bufferIndex;let o;if(n===a)o=[e[n].slice(r,s)];else{if(o=e.slice(n,a),r>-1){const l=o[0];typeof l=="string"?o[0]=l.slice(r):o.shift()}s>0&&o.push(e[a].slice(0,s))}return o}function mde(e,t){let n=-1;const r=[];let a;for(;++n<e.length;){const s=e[n];let o;if(typeof s=="string")o=s;else switch(s){case-5:{o="\r";break}case-4:{o=`
166
- `;break}case-3:{o=`\r
167
- `;break}case-2:{o=t?" ":" ";break}case-1:{if(!t&&a)continue;o=" ";break}default:o=String.fromCharCode(s)}a=s===-2,r.push(o)}return r.join("")}function gde(e){const r={constructs:EM([fde,...(e||{}).extensions||[]]),content:a(Oce),defined:[],document:a(Rce),flow:a(Que),lazy:{},string:a(ede),text:a(tde)};return r;function a(s){return o;function o(l){return hde(r,s,l)}}}function vde(e){for(;!OM(e););return e}const PE=/[\0\t\n\r]/g;function yde(){let e=1,t="",n=!0,r;return a;function a(s,o,l){const c=[];let u,d,f,h,p;for(s=t+(typeof s=="string"?s.toString():new TextDecoder(o||void 0).decode(s)),f=0,t="",n&&(s.charCodeAt(0)===65279&&f++,n=void 0);f<s.length;){if(PE.lastIndex=f,u=PE.exec(s),h=u&&u.index!==void 0?u.index:s.length,p=s.charCodeAt(h),!u){t=s.slice(f);break}if(p===10&&f===h&&r)c.push(-3),r=void 0;else switch(r&&(c.push(-5),r=void 0),f<h&&(c.push(s.slice(f,h)),e+=h-f),p){case 0:{c.push(65533),e++;break}case 9:{for(d=Math.ceil(e/4)*4,c.push(-2);e++<d;)c.push(-1);break}case 10:{c.push(-4),e=1;break}default:r=!0,e=1}f=h+1}return l&&(r&&c.push(-5),t&&c.push(t),c.push(null)),c}}const bde=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function xde(e){return e.replace(bde,wde)}function wde(e,t,n){if(t)return t;if(n.charCodeAt(0)===35){const a=n.charCodeAt(1),s=a===120||a===88;return _M(n.slice(s?2:1),s?16:10)}return v0(n)||e}const LM={}.hasOwnProperty;function kde(e,t,n){return t&&typeof t=="object"&&(n=t,t=void 0),Sde(n)(vde(gde(n).document().write(yde()(e,t,!0))))}function Sde(e){const t={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:s(Je),autolinkProtocol:O,autolinkEmail:O,atxHeading:s(_e),blockQuote:s(ie),characterEscape:O,characterReference:O,codeFenced:s(fe),codeFencedFenceInfo:o,codeFencedFenceMeta:o,codeIndented:s(fe,o),codeText:s(J,o),codeTextData:O,data:O,codeFlowValue:O,definition:s(ye),definitionDestinationString:o,definitionLabelString:o,definitionTitleString:o,emphasis:s(je),hardBreakEscape:s(be),hardBreakTrailing:s(be),htmlFlow:s($e,o),htmlFlowData:O,htmlText:s($e,o),htmlTextData:O,image:s(he),label:o,link:s(Je),listItem:s(Oe),listItemValue:h,listOrdered:s(Le,f),listUnordered:s(Le),paragraph:s(nt),reference:I,referenceString:o,resourceDestinationString:o,resourceTitleString:o,setextHeading:s(_e),strong:s(qe),thematicBreak:s(fn)},exit:{atxHeading:c(),atxHeadingSequence:w,autolink:c(),autolinkEmail:X,autolinkProtocol:Q,blockQuote:c(),characterEscapeValue:C,characterReferenceMarkerHexadecimal:ge,characterReferenceMarkerNumeric:ge,characterReferenceValue:ve,characterReference:Ce,codeFenced:c(y),codeFencedFence:m,codeFencedFenceInfo:p,codeFencedFenceMeta:g,codeFlowValue:C,codeIndented:c(v),codeText:c(F),codeTextData:C,data:C,definition:c(),definitionDestinationString:j,definitionLabelString:k,definitionTitleString:x,emphasis:c(),hardBreakEscape:c($),hardBreakTrailing:c($),htmlFlow:c(B),htmlFlowData:C,htmlText:c(M),htmlTextData:C,image:c(W),label:z,labelText:A,lineEnding:P,link:c(L),listItem:c(),listOrdered:c(),listUnordered:c(),paragraph:c(),referenceString:ce,resourceDestinationString:T,resourceTitleString:K,resource:D,setextHeading:c(E),setextHeadingLineSequence:N,setextHeadingText:b,strong:c(),thematicBreak:c()}};DM(t,(e||{}).mdastExtensions||[]);const n={};return r;function r(U){let V={type:"root",children:[]};const oe={stack:[V],tokenStack:[],config:t,enter:l,exit:u,buffer:o,resume:d,data:n},pe=[];let Ne=-1;for(;++Ne<U.length;)if(U[Ne][1].type==="listOrdered"||U[Ne][1].type==="listUnordered")if(U[Ne][0]==="enter")pe.push(Ne);else{const Be=pe.pop();Ne=a(U,Be,Ne)}for(Ne=-1;++Ne<U.length;){const Be=t[U[Ne][0]];LM.call(Be,U[Ne][1].type)&&Be[U[Ne][1].type].call(Object.assign({sliceSerialize:U[Ne][2].sliceSerialize},oe),U[Ne][1])}if(oe.tokenStack.length>0){const Be=oe.tokenStack[oe.tokenStack.length-1];(Be[1]||RE).call(oe,void 0,Be[0])}for(V.position={start:Ya(U.length>0?U[0][1].start:{line:1,column:1,offset:0}),end:Ya(U.length>0?U[U.length-2][1].end:{line:1,column:1,offset:0})},Ne=-1;++Ne<t.transforms.length;)V=t.transforms[Ne](V)||V;return V}function a(U,V,oe){let pe=V-1,Ne=-1,Be=!1,vt,yt,hn,Kt;for(;++pe<=oe;){const bt=U[pe];switch(bt[1].type){case"listUnordered":case"listOrdered":case"blockQuote":{bt[0]==="enter"?Ne++:Ne--,Kt=void 0;break}case"lineEndingBlank":{bt[0]==="enter"&&(vt&&!Kt&&!Ne&&!hn&&(hn=pe),Kt=void 0);break}case"linePrefix":case"listItemValue":case"listItemMarker":case"listItemPrefix":case"listItemPrefixWhitespace":break;default:Kt=void 0}if(!Ne&&bt[0]==="enter"&&bt[1].type==="listItemPrefix"||Ne===-1&&bt[0]==="exit"&&(bt[1].type==="listUnordered"||bt[1].type==="listOrdered")){if(vt){let St=pe;for(yt=void 0;St--;){const an=U[St];if(an[1].type==="lineEnding"||an[1].type==="lineEndingBlank"){if(an[0]==="exit")continue;yt&&(U[yt][1].type="lineEndingBlank",Be=!0),an[1].type="lineEnding",yt=St}else if(!(an[1].type==="linePrefix"||an[1].type==="blockQuotePrefix"||an[1].type==="blockQuotePrefixWhitespace"||an[1].type==="blockQuoteMarker"||an[1].type==="listItemIndent"))break}hn&&(!yt||hn<yt)&&(vt._spread=!0),vt.end=Object.assign({},yt?U[yt][1].start:bt[1].end),U.splice(yt||pe,0,["exit",vt,bt[2]]),pe++,oe++}if(bt[1].type==="listItemPrefix"){const St={type:"listItem",_spread:!1,start:Object.assign({},bt[1].start),end:void 0};vt=St,U.splice(pe,0,["enter",St,bt[2]]),pe++,oe++,hn=void 0,Kt=!0}}}return U[V][1]._spread=Be,oe}function s(U,V){return oe;function oe(pe){l.call(this,U(pe),pe),V&&V.call(this,pe)}}function o(){this.stack.push({type:"fragment",children:[]})}function l(U,V,oe){this.stack[this.stack.length-1].children.push(U),this.stack.push(U),this.tokenStack.push([V,oe||void 0]),U.position={start:Ya(V.start),end:void 0}}function c(U){return V;function V(oe){U&&U.call(this,oe),u.call(this,oe)}}function u(U,V){const oe=this.stack.pop(),pe=this.tokenStack.pop();if(pe)pe[0].type!==U.type&&(V?V.call(this,U,pe[0]):(pe[1]||RE).call(this,U,pe[0]));else throw new Error("Cannot close `"+U.type+"` ("+$c({start:U.start,end:U.end})+"): it’s not open");oe.position.end=Ya(U.end)}function d(){return g0(this.stack.pop())}function f(){this.data.expectingFirstListItemValue=!0}function h(U){if(this.data.expectingFirstListItemValue){const V=this.stack[this.stack.length-2];V.start=Number.parseInt(this.sliceSerialize(U),10),this.data.expectingFirstListItemValue=void 0}}function p(){const U=this.resume(),V=this.stack[this.stack.length-1];V.lang=U}function g(){const U=this.resume(),V=this.stack[this.stack.length-1];V.meta=U}function m(){this.data.flowCodeInside||(this.buffer(),this.data.flowCodeInside=!0)}function y(){const U=this.resume(),V=this.stack[this.stack.length-1];V.value=U.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g,""),this.data.flowCodeInside=void 0}function v(){const U=this.resume(),V=this.stack[this.stack.length-1];V.value=U.replace(/(\r?\n|\r)$/g,"")}function k(U){const V=this.resume(),oe=this.stack[this.stack.length-1];oe.label=V,oe.identifier=Wr(this.sliceSerialize(U)).toLowerCase()}function x(){const U=this.resume(),V=this.stack[this.stack.length-1];V.title=U}function j(){const U=this.resume(),V=this.stack[this.stack.length-1];V.url=U}function w(U){const V=this.stack[this.stack.length-1];if(!V.depth){const oe=this.sliceSerialize(U).length;V.depth=oe}}function b(){this.data.setextHeadingSlurpLineEnding=!0}function N(U){const V=this.stack[this.stack.length-1];V.depth=this.sliceSerialize(U).codePointAt(0)===61?1:2}function E(){this.data.setextHeadingSlurpLineEnding=void 0}function O(U){const oe=this.stack[this.stack.length-1].children;let pe=oe[oe.length-1];(!pe||pe.type!=="text")&&(pe=Ct(),pe.position={start:Ya(U.start),end:void 0},oe.push(pe)),this.stack.push(pe)}function C(U){const V=this.stack.pop();V.value+=this.sliceSerialize(U),V.position.end=Ya(U.end)}function P(U){const V=this.stack[this.stack.length-1];if(this.data.atHardBreak){const oe=V.children[V.children.length-1];oe.position.end=Ya(U.end),this.data.atHardBreak=void 0;return}!this.data.setextHeadingSlurpLineEnding&&t.canContainEols.includes(V.type)&&(O.call(this,U),C.call(this,U))}function $(){this.data.atHardBreak=!0}function B(){const U=this.resume(),V=this.stack[this.stack.length-1];V.value=U}function M(){const U=this.resume(),V=this.stack[this.stack.length-1];V.value=U}function F(){const U=this.resume(),V=this.stack[this.stack.length-1];V.value=U}function L(){const U=this.stack[this.stack.length-1];if(this.data.inReference){const V=this.data.referenceType||"shortcut";U.type+="Reference",U.referenceType=V,delete U.url,delete U.title}else delete U.identifier,delete U.label;this.data.referenceType=void 0}function W(){const U=this.stack[this.stack.length-1];if(this.data.inReference){const V=this.data.referenceType||"shortcut";U.type+="Reference",U.referenceType=V,delete U.url,delete U.title}else delete U.identifier,delete U.label;this.data.referenceType=void 0}function A(U){const V=this.sliceSerialize(U),oe=this.stack[this.stack.length-2];oe.label=xde(V),oe.identifier=Wr(V).toLowerCase()}function z(){const U=this.stack[this.stack.length-1],V=this.resume(),oe=this.stack[this.stack.length-1];if(this.data.inReference=!0,oe.type==="link"){const pe=U.children;oe.children=pe}else oe.alt=V}function T(){const U=this.resume(),V=this.stack[this.stack.length-1];V.url=U}function K(){const U=this.resume(),V=this.stack[this.stack.length-1];V.title=U}function D(){this.data.inReference=void 0}function I(){this.data.referenceType="collapsed"}function ce(U){const V=this.resume(),oe=this.stack[this.stack.length-1];oe.label=V,oe.identifier=Wr(this.sliceSerialize(U)).toLowerCase(),this.data.referenceType="full"}function ge(U){this.data.characterReferenceType=U.type}function ve(U){const V=this.sliceSerialize(U),oe=this.data.characterReferenceType;let pe;oe?(pe=_M(V,oe==="characterReferenceMarkerNumeric"?10:16),this.data.characterReferenceType=void 0):pe=v0(V);const Ne=this.stack[this.stack.length-1];Ne.value+=pe}function Ce(U){const V=this.stack.pop();V.position.end=Ya(U.end)}function Q(U){C.call(this,U);const V=this.stack[this.stack.length-1];V.url=this.sliceSerialize(U)}function X(U){C.call(this,U);const V=this.stack[this.stack.length-1];V.url="mailto:"+this.sliceSerialize(U)}function ie(){return{type:"blockquote",children:[]}}function fe(){return{type:"code",lang:null,meta:null,value:""}}function J(){return{type:"inlineCode",value:""}}function ye(){return{type:"definition",identifier:"",label:null,title:null,url:""}}function je(){return{type:"emphasis",children:[]}}function _e(){return{type:"heading",depth:0,children:[]}}function be(){return{type:"break"}}function $e(){return{type:"html",value:""}}function he(){return{type:"image",title:null,url:"",alt:null}}function Je(){return{type:"link",title:null,url:"",children:[]}}function Le(U){return{type:"list",ordered:U.type==="listOrdered",start:null,spread:U._spread,children:[]}}function Oe(U){return{type:"listItem",spread:U._spread,checked:null,children:[]}}function nt(){return{type:"paragraph",children:[]}}function qe(){return{type:"strong",children:[]}}function Ct(){return{type:"text",value:""}}function fn(){return{type:"thematicBreak"}}}function Ya(e){return{line:e.line,column:e.column,offset:e.offset}}function DM(e,t){let n=-1;for(;++n<t.length;){const r=t[n];Array.isArray(r)?DM(e,r):jde(e,r)}}function jde(e,t){let n;for(n in t)if(LM.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 RE(e,t){throw e?new Error("Cannot close `"+e.type+"` ("+$c({start:e.start,end:e.end})+"): a different token (`"+t.type+"`, "+$c({start:t.start,end:t.end})+") is open"):new Error("Cannot close document, a token (`"+t.type+"`, "+$c({start:t.start,end:t.end})+") is still open")}function Nde(e){const t=this;t.parser=n;function n(r){return kde(r,{...t.data("settings"),...e,extensions:t.data("micromarkExtensions")||[],mdastExtensions:t.data("fromMarkdownExtensions")||[]})}}function Ede(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 _de(e,t){const n={type:"element",tagName:"br",properties:{},children:[]};return e.patch(t,n),[e.applyData(t,n),{type:"text",value:`
168
- `}]}function Ade(e,t){const n=t.value?t.value+`
169
- `:"",r={},a=t.lang?t.lang.split(/\s+/):[];a.length>0&&(r.className=["language-"+a[0]]);let s={type:"element",tagName:"code",properties:r,children:[{type:"text",value:n}]};return t.meta&&(s.data={meta:t.meta}),e.patch(t,s),s=e.applyData(t,s),s={type:"element",tagName:"pre",properties:{},children:[s]},e.patch(t,s),s}function Cde(e,t){const n={type:"element",tagName:"del",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Tde(e,t){const n={type:"element",tagName:"em",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Ode(e,t){const n=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",r=String(t.identifier).toUpperCase(),a=Rl(r.toLowerCase()),s=e.footnoteOrder.indexOf(r);let o,l=e.footnoteCounts.get(r);l===void 0?(l=0,e.footnoteOrder.push(r),o=e.footnoteOrder.length):o=s+1,l+=1,e.footnoteCounts.set(r,l);const c={type:"element",tagName:"a",properties:{href:"#"+n+"fn-"+a,id:n+"fnref-"+a+(l>1?"-"+l:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(o)}]};e.patch(t,c);const u={type:"element",tagName:"sup",properties:{},children:[c]};return e.patch(t,u),e.applyData(t,u)}function Pde(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 Rde(e,t){if(e.options.allowDangerousHtml){const n={type:"raw",value:t.value};return e.patch(t,n),e.applyData(t,n)}}function BM(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),s=a[0];s&&s.type==="text"?s.value="["+s.value:a.unshift({type:"text",value:"["});const o=a[a.length-1];return o&&o.type==="text"?o.value+=r:a.push({type:"text",value:r}),a}function Mde(e,t){const n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return BM(e,t);const a={src:Rl(r.url||""),alt:t.alt};r.title!==null&&r.title!==void 0&&(a.title=r.title);const s={type:"element",tagName:"img",properties:a,children:[]};return e.patch(t,s),e.applyData(t,s)}function Ide(e,t){const n={src:Rl(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 $de(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 Lde(e,t){const n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return BM(e,t);const a={href:Rl(r.url||"")};r.title!==null&&r.title!==void 0&&(a.title=r.title);const s={type:"element",tagName:"a",properties:a,children:e.all(t)};return e.patch(t,s),e.applyData(t,s)}function Dde(e,t){const n={href:Rl(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 Bde(e,t,n){const r=e.all(t),a=n?zde(n):zM(t),s={},o=[];if(typeof t.checked=="boolean"){const d=r[0];let f;d&&d.type==="element"&&d.tagName==="p"?f=d:(f={type:"element",tagName:"p",properties:{},children:[]},r.unshift(f)),f.children.length>0&&f.children.unshift({type:"text",value:" "}),f.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:t.checked,disabled:!0},children:[]}),s.className=["task-list-item"]}let l=-1;for(;++l<r.length;){const d=r[l];(a||l!==0||d.type!=="element"||d.tagName!=="p")&&o.push({type:"text",value:`
170
- `}),d.type==="element"&&d.tagName==="p"&&!a?o.push(...d.children):o.push(d)}const c=r[r.length-1];c&&(a||c.type!=="element"||c.tagName!=="p")&&o.push({type:"text",value:`
171
- `});const u={type:"element",tagName:"li",properties:s,children:o};return e.patch(t,u),e.applyData(t,u)}function zde(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=zM(n[r])}return t}function zM(e){const t=e.spread;return t??e.children.length>1}function Fde(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 o=r[a];if(o.type==="element"&&o.tagName==="li"&&o.properties&&Array.isArray(o.properties.className)&&o.properties.className.includes("task-list-item")){n.className=["contains-task-list"];break}}const s={type:"element",tagName:t.ordered?"ol":"ul",properties:n,children:e.wrap(r,!0)};return e.patch(t,s),e.applyData(t,s)}function Ude(e,t){const n={type:"element",tagName:"p",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Wde(e,t){const n={type:"root",children:e.wrap(e.all(t))};return e.patch(t,n),e.applyData(t,n)}function Hde(e,t){const n={type:"element",tagName:"strong",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Gde(e,t){const n=e.all(t),r=n.shift(),a=[];if(r){const o={type:"element",tagName:"thead",properties:{},children:e.wrap([r],!0)};e.patch(t.children[0],o),a.push(o)}if(n.length>0){const o={type:"element",tagName:"tbody",properties:{},children:e.wrap(n,!0)},l=f0(t.children[1]),c=bM(t.children[t.children.length-1]);l&&c&&(o.position={start:l,end:c}),a.push(o)}const s={type:"element",tagName:"table",properties:{},children:e.wrap(a,!0)};return e.patch(t,s),e.applyData(t,s)}function qde(e,t,n){const r=n?n.children:void 0,s=(r?r.indexOf(t):1)===0?"th":"td",o=n&&n.type==="table"?n.align:void 0,l=o?o.length:t.children.length;let c=-1;const u=[];for(;++c<l;){const f=t.children[c],h={},p=o?o[c]:void 0;p&&(h.align=p);let g={type:"element",tagName:s,properties:h,children:[]};f&&(g.children=e.all(f),e.patch(f,g),g=e.applyData(f,g)),u.push(g)}const d={type:"element",tagName:"tr",properties:{},children:e.wrap(u,!0)};return e.patch(t,d),e.applyData(t,d)}function Kde(e,t){const n={type:"element",tagName:"td",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}const ME=9,IE=32;function Vde(e){const t=String(e),n=/\r?\n|\r/g;let r=n.exec(t),a=0;const s=[];for(;r;)s.push($E(t.slice(a,r.index),a>0,!0),r[0]),a=r.index+r[0].length,r=n.exec(t);return s.push($E(t.slice(a),a>0,!1)),s.join("")}function $E(e,t,n){let r=0,a=e.length;if(t){let s=e.codePointAt(r);for(;s===ME||s===IE;)r++,s=e.codePointAt(r)}if(n){let s=e.codePointAt(a-1);for(;s===ME||s===IE;)a--,s=e.codePointAt(a-1)}return a>r?e.slice(r,a):""}function Yde(e,t){const n={type:"text",value:Vde(String(t.value))};return e.patch(t,n),e.applyData(t,n)}function Xde(e,t){const n={type:"element",tagName:"hr",properties:{},children:[]};return e.patch(t,n),e.applyData(t,n)}const Qde={blockquote:Ede,break:_de,code:Ade,delete:Cde,emphasis:Tde,footnoteReference:Ode,heading:Pde,html:Rde,imageReference:Mde,image:Ide,inlineCode:$de,linkReference:Lde,link:Dde,listItem:Bde,list:Fde,paragraph:Ude,root:Wde,strong:Hde,table:Gde,tableCell:Kde,tableRow:qde,text:Yde,thematicBreak:Xde,toml:ef,yaml:ef,definition:ef,footnoteDefinition:ef};function ef(){}const FM=-1,bm=0,Dc=1,tp=2,b0=3,x0=4,w0=5,k0=6,UM=7,WM=8,HM=typeof self=="object"?self:globalThis,LE=(e,t)=>{switch(e){case"Function":case"SharedWorker":case"Worker":case"eval":case"setInterval":case"setTimeout":throw new TypeError("unable to deserialize "+e)}return new HM[e](t)},Zde=(e,t)=>{const n=(a,s)=>(e.set(s,a),a),r=a=>{if(e.has(a))return e.get(a);const[s,o]=t[a];switch(s){case bm:case FM:return n(o,a);case Dc:{const l=n([],a);for(const c of o)l.push(r(c));return l}case tp:{const l=n({},a);for(const[c,u]of o)l[r(c)]=r(u);return l}case b0:return n(new Date(o),a);case x0:{const{source:l,flags:c}=o;return n(new RegExp(l,c),a)}case w0:{const l=n(new Map,a);for(const[c,u]of o)l.set(r(c),r(u));return l}case k0:{const l=n(new Set,a);for(const c of o)l.add(r(c));return l}case UM:{const{name:l,message:c}=o;return n(typeof HM[l]=="function"?LE(l,c):new Error(c),a)}case WM:return n(BigInt(o),a);case"BigInt":return n(Object(BigInt(o)),a);case"ArrayBuffer":return n(new Uint8Array(o).buffer,o);case"DataView":{const{buffer:l}=new Uint8Array(o);return n(new DataView(l),o)}}return n(LE(s,o),a)};return r},DE=e=>Zde(new Map,e)(0),ts="",{toString:Jde}={},{keys:efe}=Object,hc=e=>{const t=typeof e;if(t!=="object"||!e)return[bm,t];const n=Jde.call(e).slice(8,-1);switch(n){case"Array":return[Dc,ts];case"Object":return[tp,ts];case"Date":return[b0,ts];case"RegExp":return[x0,ts];case"Map":return[w0,ts];case"Set":return[k0,ts];case"DataView":return[Dc,n]}return n.includes("Array")?[Dc,n]:e instanceof Error?[UM,e.name||"Error"]:[tp,n]},tf=([e,t])=>e===bm&&(t==="function"||t==="symbol"),tfe=(e,t,n,r)=>{const a=(o,l)=>{const c=r.push(o)-1;return n.set(l,c),c},s=o=>{if(n.has(o))return n.get(o);let[l,c]=hc(o);switch(l){case bm:{let d=o;switch(c){case"bigint":l=WM,d=o.toString();break;case"function":case"symbol":if(e)throw new TypeError("unable to serialize "+c);d=null;break;case"undefined":return a([FM],o)}return a([l,d],o)}case Dc:{if(c){let h=o;return c==="DataView"?h=new Uint8Array(o.buffer):c==="ArrayBuffer"&&(h=new Uint8Array(o)),a([c,[...h]],o)}const d=[],f=a([l,d],o);for(const h of o)d.push(s(h));return f}case tp:{if(c)switch(c){case"BigInt":return a([c,o.toString()],o);case"Boolean":case"Number":case"String":return a([c,o.valueOf()],o)}if(t&&"toJSON"in o)return s(o.toJSON());const d=[],f=a([l,d],o);for(const h of efe(o))(e||!tf(hc(o[h])))&&d.push([s(h),s(o[h])]);return f}case b0:return a([l,isNaN(o.getTime())?ts:o.toISOString()],o);case x0:{const{source:d,flags:f}=o;return a([l,{source:d,flags:f}],o)}case w0:{const d=[],f=a([l,d],o);for(const[h,p]of o)(e||!(tf(hc(h))||tf(hc(p))))&&d.push([s(h),s(p)]);return f}case k0:{const d=[],f=a([l,d],o);for(const h of o)(e||!tf(hc(h)))&&d.push(s(h));return f}}const{message:u}=o;return a([l,{name:c,message:u}],o)};return s},BE=(e,{json:t,lossy:n}={})=>{const r=[];return tfe(!(t||n),!!t,new Map,r)(e),r},np=typeof structuredClone=="function"?(e,t)=>t&&("json"in t||"lossy"in t)?DE(BE(e,t)):structuredClone(e):(e,t)=>DE(BE(e,t));function nfe(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 rfe(e,t){return"Back to reference "+(e+1)+(t>1?"-"+t:"")}function afe(e){const t=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",n=e.options.footnoteBackContent||nfe,r=e.options.footnoteBackLabel||rfe,a=e.options.footnoteLabel||"Footnotes",s=e.options.footnoteLabelTagName||"h2",o=e.options.footnoteLabelProperties||{className:["sr-only"]},l=[];let c=-1;for(;++c<e.footnoteOrder.length;){const u=e.footnoteById.get(e.footnoteOrder[c]);if(!u)continue;const d=e.all(u),f=String(u.identifier).toUpperCase(),h=Rl(f.toLowerCase());let p=0;const g=[],m=e.footnoteCounts.get(f);for(;m!==void 0&&++p<=m;){g.length>0&&g.push({type:"text",value:" "});let k=typeof n=="string"?n:n(c,p);typeof k=="string"&&(k={type:"text",value:k}),g.push({type:"element",tagName:"a",properties:{href:"#"+t+"fnref-"+h+(p>1?"-"+p:""),dataFootnoteBackref:"",ariaLabel:typeof r=="string"?r:r(c,p),className:["data-footnote-backref"]},children:Array.isArray(k)?k:[k]})}const y=d[d.length-1];if(y&&y.type==="element"&&y.tagName==="p"){const k=y.children[y.children.length-1];k&&k.type==="text"?k.value+=" ":y.children.push({type:"text",value:" "}),y.children.push(...g)}else d.push(...g);const v={type:"element",tagName:"li",properties:{id:t+"fn-"+h},children:e.wrap(d,!0)};e.patch(u,v),l.push(v)}if(l.length!==0)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:s,properties:{...np(o),id:"footnote-label"},children:[{type:"text",value:a}]},{type:"text",value:`
172
- `},{type:"element",tagName:"ol",properties:{},children:e.wrap(l,!0)},{type:"text",value:`
173
- `}]}}const sd=function(e){if(e==null)return lfe;if(typeof e=="function")return xm(e);if(typeof e=="object")return Array.isArray(e)?ife(e):sfe(e);if(typeof e=="string")return ofe(e);throw new Error("Expected function, string, or object as test")};function ife(e){const t=[];let n=-1;for(;++n<e.length;)t[n]=sd(e[n]);return xm(r);function r(...a){let s=-1;for(;++s<t.length;)if(t[s].apply(this,a))return!0;return!1}}function sfe(e){const t=e;return xm(n);function n(r){const a=r;let s;for(s in e)if(a[s]!==t[s])return!1;return!0}}function ofe(e){return xm(t);function t(n){return n&&n.type===e}}function xm(e){return t;function t(n,r,a){return!!(cfe(n)&&e.call(this,n,typeof r=="number"?r:void 0,a||void 0))}}function lfe(){return!0}function cfe(e){return e!==null&&typeof e=="object"&&"type"in e}const GM=[],ufe=!0,Hb=!1,dfe="skip";function qM(e,t,n,r){let a;typeof t=="function"&&typeof n!="function"?(r=n,n=t):a=t;const s=sd(a),o=r?-1:1;l(e,void 0,[])();function l(c,u,d){const f=c&&typeof c=="object"?c:{};if(typeof f.type=="string"){const p=typeof f.tagName=="string"?f.tagName:typeof f.name=="string"?f.name:void 0;Object.defineProperty(h,"name",{value:"node ("+(c.type+(p?"<"+p+">":""))+")"})}return h;function h(){let p=GM,g,m,y;if((!t||s(c,u,d[d.length-1]||void 0))&&(p=ffe(n(c,d)),p[0]===Hb))return p;if("children"in c&&c.children){const v=c;if(v.children&&p[0]!==dfe)for(m=(r?v.children.length:-1)+o,y=d.concat(v);m>-1&&m<v.children.length;){const k=v.children[m];if(g=l(k,m,y)(),g[0]===Hb)return g;m=typeof g[1]=="number"?g[1]:m+o}}return p}}}function ffe(e){return Array.isArray(e)?e:typeof e=="number"?[ufe,e]:e==null?GM:[e]}function wm(e,t,n,r){let a,s,o;typeof t=="function"&&typeof n!="function"?(s=void 0,o=t,a=n):(s=t,o=n,a=r),qM(e,s,l,a);function l(c,u){const d=u[u.length-1],f=d?d.children.indexOf(c):void 0;return o(c,f,d)}}const Gb={}.hasOwnProperty,hfe={};function pfe(e,t){const n=t||hfe,r=new Map,a=new Map,s=new Map,o={...Qde,...n.handlers},l={all:u,applyData:gfe,definitionById:r,footnoteById:a,footnoteCounts:s,footnoteOrder:[],handlers:o,one:c,options:n,patch:mfe,wrap:yfe};return wm(e,function(d){if(d.type==="definition"||d.type==="footnoteDefinition"){const f=d.type==="definition"?r:a,h=String(d.identifier).toUpperCase();f.has(h)||f.set(h,d)}}),l;function c(d,f){const h=d.type,p=l.handlers[h];if(Gb.call(l.handlers,h)&&p)return p(l,d,f);if(l.options.passThrough&&l.options.passThrough.includes(h)){if("children"in d){const{children:m,...y}=d,v=np(y);return v.children=l.all(d),v}return np(d)}return(l.options.unknownHandler||vfe)(l,d,f)}function u(d){const f=[];if("children"in d){const h=d.children;let p=-1;for(;++p<h.length;){const g=l.one(h[p],d);if(g){if(p&&h[p-1].type==="break"&&(!Array.isArray(g)&&g.type==="text"&&(g.value=zE(g.value)),!Array.isArray(g)&&g.type==="element")){const m=g.children[0];m&&m.type==="text"&&(m.value=zE(m.value))}Array.isArray(g)?f.push(...g):f.push(g)}}}return f}}function mfe(e,t){e.position&&(t.position=rce(e))}function gfe(e,t){let n=t;if(e&&e.data){const r=e.data.hName,a=e.data.hChildren,s=e.data.hProperties;if(typeof r=="string")if(n.type==="element")n.tagName=r;else{const o="children"in n?n.children:[n];n={type:"element",tagName:r,properties:{},children:o}}n.type==="element"&&s&&Object.assign(n.properties,np(s)),"children"in n&&n.children&&a!==null&&a!==void 0&&(n.children=a)}return n}function vfe(e,t){const n=t.data||{},r="value"in t&&!(Gb.call(n,"hProperties")||Gb.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 yfe(e,t){const n=[];let r=-1;for(t&&n.push({type:"text",value:`
174
- `});++r<e.length;)r&&n.push({type:"text",value:`
175
- `}),n.push(e[r]);return t&&e.length>0&&n.push({type:"text",value:`
176
- `}),n}function zE(e){let t=0,n=e.charCodeAt(t);for(;n===9||n===32;)t++,n=e.charCodeAt(t);return e.slice(t)}function FE(e,t){const n=pfe(e,t),r=n.one(e,void 0),a=afe(n),s=Array.isArray(r)?{type:"root",children:r}:r||{type:"root",children:[]};return a&&s.children.push({type:"text",value:`
177
- `},a),s}function bfe(e,t){return e&&"run"in e?async function(n,r){const a=FE(n,{file:r,...t});await e.run(a,r)}:function(n,r){return FE(n,{file:r,...e||t})}}function UE(e){if(e)throw e}var Nf=Object.prototype.hasOwnProperty,KM=Object.prototype.toString,WE=Object.defineProperty,HE=Object.getOwnPropertyDescriptor,GE=function(t){return typeof Array.isArray=="function"?Array.isArray(t):KM.call(t)==="[object Array]"},qE=function(t){if(!t||KM.call(t)!=="[object Object]")return!1;var n=Nf.call(t,"constructor"),r=t.constructor&&t.constructor.prototype&&Nf.call(t.constructor.prototype,"isPrototypeOf");if(t.constructor&&!n&&!r)return!1;var a;for(a in t);return typeof a>"u"||Nf.call(t,a)},KE=function(t,n){WE&&n.name==="__proto__"?WE(t,n.name,{enumerable:!0,configurable:!0,value:n.newValue,writable:!0}):t[n.name]=n.newValue},VE=function(t,n){if(n==="__proto__")if(Nf.call(t,n)){if(HE)return HE(t,n).value}else return;return t[n]},xfe=function e(){var t,n,r,a,s,o,l=arguments[0],c=1,u=arguments.length,d=!1;for(typeof l=="boolean"&&(d=l,l=arguments[1]||{},c=2),(l==null||typeof l!="object"&&typeof l!="function")&&(l={});c<u;++c)if(t=arguments[c],t!=null)for(n in t)r=VE(l,n),a=VE(t,n),l!==a&&(d&&a&&(qE(a)||(s=GE(a)))?(s?(s=!1,o=r&&GE(r)?r:[]):o=r&&qE(r)?r:{},KE(l,{name:n,newValue:e(d,o,a)})):typeof a<"u"&&KE(l,{name:n,newValue:a}));return l};const qg=Ze(xfe);function qb(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 wfe(){const e=[],t={run:n,use:r};return t;function n(...a){let s=-1;const o=a.pop();if(typeof o!="function")throw new TypeError("Expected function as last argument, not "+o);l(null,...a);function l(c,...u){const d=e[++s];let f=-1;if(c){o(c);return}for(;++f<a.length;)(u[f]===null||u[f]===void 0)&&(u[f]=a[f]);a=u,d?kfe(d,l)(...u):o(null,...u)}}function r(a){if(typeof a!="function")throw new TypeError("Expected `middelware` to be a function, not "+a);return e.push(a),t}}function kfe(e,t){let n;return r;function r(...o){const l=e.length>o.length;let c;l&&o.push(a);try{c=e.apply(this,o)}catch(u){const d=u;if(l&&n)throw d;return a(d)}l||(c&&c.then&&typeof c.then=="function"?c.then(s,a):c instanceof Error?a(c):s(c))}function a(o,...l){n||(n=!0,t(o,...l))}function s(o){a(null,o)}}const ta={basename:Sfe,dirname:jfe,extname:Nfe,join:Efe,sep:"/"};function Sfe(e,t){if(t!==void 0&&typeof t!="string")throw new TypeError('"ext" argument must be a string');od(e);let n=0,r=-1,a=e.length,s;if(t===void 0||t.length===0||t.length>e.length){for(;a--;)if(e.codePointAt(a)===47){if(s){n=a+1;break}}else r<0&&(s=!0,r=a+1);return r<0?"":e.slice(n,r)}if(t===e)return"";let o=-1,l=t.length-1;for(;a--;)if(e.codePointAt(a)===47){if(s){n=a+1;break}}else o<0&&(s=!0,o=a+1),l>-1&&(e.codePointAt(a)===t.codePointAt(l--)?l<0&&(r=a):(l=-1,r=o));return n===r?r=o:r<0&&(r=e.length),e.slice(n,r)}function jfe(e){if(od(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 Nfe(e){od(e);let t=e.length,n=-1,r=0,a=-1,s=0,o;for(;t--;){const l=e.codePointAt(t);if(l===47){if(o){r=t+1;break}continue}n<0&&(o=!0,n=t+1),l===46?a<0?a=t:s!==1&&(s=1):a>-1&&(s=-1)}return a<0||n<0||s===0||s===1&&a===n-1&&a===r+1?"":e.slice(a,n)}function Efe(...e){let t=-1,n;for(;++t<e.length;)od(e[t]),e[t]&&(n=n===void 0?e[t]:n+"/"+e[t]);return n===void 0?".":_fe(n)}function _fe(e){od(e);const t=e.codePointAt(0)===47;let n=Afe(e,!t);return n.length===0&&!t&&(n="."),n.length>0&&e.codePointAt(e.length-1)===47&&(n+="/"),t?"/"+n:n}function Afe(e,t){let n="",r=0,a=-1,s=0,o=-1,l,c;for(;++o<=e.length;){if(o<e.length)l=e.codePointAt(o);else{if(l===47)break;l=47}if(l===47){if(!(a===o-1||s===1))if(a!==o-1&&s===2){if(n.length<2||r!==2||n.codePointAt(n.length-1)!==46||n.codePointAt(n.length-2)!==46){if(n.length>2){if(c=n.lastIndexOf("/"),c!==n.length-1){c<0?(n="",r=0):(n=n.slice(0,c),r=n.length-1-n.lastIndexOf("/")),a=o,s=0;continue}}else if(n.length>0){n="",r=0,a=o,s=0;continue}}t&&(n=n.length>0?n+"/..":"..",r=2)}else n.length>0?n+="/"+e.slice(a+1,o):n=e.slice(a+1,o),r=o-a-1;a=o,s=0}else l===46&&s>-1?s++:s=-1}return n}function od(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const Cfe={cwd:Tfe};function Tfe(){return"/"}function Kb(e){return!!(e!==null&&typeof e=="object"&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&e.auth===void 0)}function Ofe(e){if(typeof e=="string")e=new URL(e);else if(!Kb(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 Pfe(e)}function Pfe(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 Kg=["history","path","basename","stem","extname","dirname"];class VM{constructor(t){let n;t?Kb(t)?n={path:t}:typeof t=="string"||Rfe(t)?n={value:t}:n=t:n={},this.cwd="cwd"in n?"":Cfe.cwd(),this.data={},this.history=[],this.messages=[],this.value,this.map,this.result,this.stored;let r=-1;for(;++r<Kg.length;){const s=Kg[r];s in n&&n[s]!==void 0&&n[s]!==null&&(this[s]=s==="history"?[...n[s]]:n[s])}let a;for(a in n)Kg.includes(a)||(this[a]=n[a])}get basename(){return typeof this.path=="string"?ta.basename(this.path):void 0}set basename(t){Yg(t,"basename"),Vg(t,"basename"),this.path=ta.join(this.dirname||"",t)}get dirname(){return typeof this.path=="string"?ta.dirname(this.path):void 0}set dirname(t){YE(this.basename,"dirname"),this.path=ta.join(t||"",this.basename)}get extname(){return typeof this.path=="string"?ta.extname(this.path):void 0}set extname(t){if(Vg(t,"extname"),YE(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=ta.join(this.dirname,this.stem+(t||""))}get path(){return this.history[this.history.length-1]}set path(t){Kb(t)&&(t=Ofe(t)),Yg(t,"path"),this.path!==t&&this.history.push(t)}get stem(){return typeof this.path=="string"?ta.basename(this.path,this.extname):void 0}set stem(t){Yg(t,"stem"),Vg(t,"stem"),this.path=ta.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 Nn(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 Vg(e,t){if(e&&e.includes(ta.sep))throw new Error("`"+t+"` cannot be a path: did not expect `"+ta.sep+"`")}function Yg(e,t){if(!e)throw new Error("`"+t+"` cannot be empty")}function YE(e,t){if(!e)throw new Error("Setting `"+t+"` requires `path` to be set too")}function Rfe(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const Mfe=function(e){const r=this.constructor.prototype,a=r[e],s=function(){return a.apply(s,arguments)};return Object.setPrototypeOf(s,r),s},Ife={}.hasOwnProperty;class S0 extends Mfe{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=wfe()}copy(){const t=new S0;let n=-1;for(;++n<this.attachers.length;){const r=this.attachers[n];t.use(...r)}return t.data(qg(!0,{},this.namespace)),t}data(t,n){return typeof t=="string"?arguments.length===2?(Zg("data",this.frozen),this.namespace[t]=n,this):Ife.call(this.namespace,t)&&this.namespace[t]||void 0:t?(Zg("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=nf(t),r=this.parser||this.Parser;return Xg("parse",r),r(String(n),n)}process(t,n){const r=this;return this.freeze(),Xg("process",this.parser||this.Parser),Qg("process",this.compiler||this.Compiler),n?a(void 0,n):new Promise(a);function a(s,o){const l=nf(t),c=r.parse(l);r.run(c,l,function(d,f,h){if(d||!f||!h)return u(d);const p=f,g=r.stringify(p,h);Dfe(g)?h.value=g:h.result=g,u(d,h)});function u(d,f){d||!f?o(d):s?s(f):n(void 0,f)}}}processSync(t){let n=!1,r;return this.freeze(),Xg("processSync",this.parser||this.Parser),Qg("processSync",this.compiler||this.Compiler),this.process(t,a),QE("processSync","process",n),r;function a(s,o){n=!0,UE(s),r=o}}run(t,n,r){XE(t),this.freeze();const a=this.transformers;return!r&&typeof n=="function"&&(r=n,n=void 0),r?s(void 0,r):new Promise(s);function s(o,l){const c=nf(n);a.run(t,c,u);function u(d,f,h){const p=f||t;d?l(d):o?o(p):r(void 0,p,h)}}}runSync(t,n){let r=!1,a;return this.run(t,n,s),QE("runSync","run",r),a;function s(o,l){UE(o),a=l,r=!0}}stringify(t,n){this.freeze();const r=nf(n),a=this.compiler||this.Compiler;return Qg("stringify",a),XE(t),a(t,r)}use(t,...n){const r=this.attachers,a=this.namespace;if(Zg("use",this.frozen),t!=null)if(typeof t=="function")c(t,n);else if(typeof t=="object")Array.isArray(t)?l(t):o(t);else throw new TypeError("Expected usable value, not `"+t+"`");return this;function s(u){if(typeof u=="function")c(u,[]);else if(typeof u=="object")if(Array.isArray(u)){const[d,...f]=u;c(d,f)}else o(u);else throw new TypeError("Expected usable value, not `"+u+"`")}function o(u){if(!("plugins"in u)&&!("settings"in u))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");l(u.plugins),u.settings&&(a.settings=qg(!0,a.settings,u.settings))}function l(u){let d=-1;if(u!=null)if(Array.isArray(u))for(;++d<u.length;){const f=u[d];s(f)}else throw new TypeError("Expected a list of plugins, not `"+u+"`")}function c(u,d){let f=-1,h=-1;for(;++f<r.length;)if(r[f][0]===u){h=f;break}if(h===-1)r.push([u,...d]);else if(d.length>0){let[p,...g]=d;const m=r[h][1];qb(m)&&qb(p)&&(p=qg(!0,m,p)),r[h]=[u,p,...g]}}}}const $fe=new S0().freeze();function Xg(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `parser`")}function Qg(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `compiler`")}function Zg(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 XE(e){if(!qb(e)||typeof e.type!="string")throw new TypeError("Expected node, got `"+e+"`")}function QE(e,t,n){if(!n)throw new Error("`"+e+"` finished async. Use `"+t+"` instead")}function nf(e){return Lfe(e)?e:new VM(e)}function Lfe(e){return!!(e&&typeof e=="object"&&"message"in e&&"messages"in e)}function Dfe(e){return typeof e=="string"||Bfe(e)}function Bfe(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const zfe="https://github.com/remarkjs/react-markdown/blob/main/changelog.md",ZE=[],JE={allowDangerousHtml:!0},Ffe=/^(https?|ircs?|mailto|xmpp)$/i,Ufe=[{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 Wfe(e){const t=Hfe(e),n=Gfe(e);return qfe(t.runSync(t.parse(n),n),e)}function Hfe(e){const t=e.rehypePlugins||ZE,n=e.remarkPlugins||ZE,r=e.remarkRehypeOptions?{...e.remarkRehypeOptions,...JE}:JE;return $fe().use(Nde).use(n).use(bfe,r).use(t)}function Gfe(e){const t=e.children||"",n=new VM;return typeof t=="string"&&(n.value=t),n}function qfe(e,t){const n=t.allowedElements,r=t.allowElement,a=t.components,s=t.disallowedElements,o=t.skipHtml,l=t.unwrapDisallowed,c=t.urlTransform||Kfe;for(const d of Ufe)Object.hasOwn(t,d.from)&&(""+d.from+(d.to?"use `"+d.to+"` instead":"remove it")+zfe+d.id,void 0);return wm(e,u),lce(e,{Fragment:i.Fragment,components:a,ignoreInvalidStyle:!0,jsx:i.jsx,jsxs:i.jsxs,passKeys:!0,passNode:!0});function u(d,f,h){if(d.type==="raw"&&h&&typeof f=="number")return o?h.children.splice(f,1):h.children[f]={type:"text",value:d.value},f;if(d.type==="element"){let p;for(p in Wg)if(Object.hasOwn(Wg,p)&&Object.hasOwn(d.properties,p)){const g=d.properties[p],m=Wg[p];(m===null||m.includes(d.tagName))&&(d.properties[p]=c(String(g||""),p,d))}}if(d.type==="element"){let p=n?!n.includes(d.tagName):s?s.includes(d.tagName):!1;if(!p&&r&&typeof f=="number"&&(p=!r(d,f,h)),p&&h&&typeof f=="number")return l&&d.children?h.children.splice(f,1,...d.children):h.children.splice(f,1),f}}}function Kfe(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||Ffe.test(e.slice(0,t))?e:""}function e_(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 Vfe(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}function Yfe(e,t,n){const a=sd((n||{}).ignore||[]),s=Xfe(t);let o=-1;for(;++o<s.length;)qM(e,"text",l);function l(u,d){let f=-1,h;for(;++f<d.length;){const p=d[f],g=h?h.children:void 0;if(a(p,g?g.indexOf(p):void 0,h))return;h=p}if(h)return c(u,d)}function c(u,d){const f=d[d.length-1],h=s[o][0],p=s[o][1];let g=0;const y=f.children.indexOf(u);let v=!1,k=[];h.lastIndex=0;let x=h.exec(u.value);for(;x;){const j=x.index,w={index:x.index,input:x.input,stack:[...d,u]};let b=p(...x,w);if(typeof b=="string"&&(b=b.length>0?{type:"text",value:b}:void 0),b===!1?h.lastIndex=j+1:(g!==j&&k.push({type:"text",value:u.value.slice(g,j)}),Array.isArray(b)?k.push(...b):b&&k.push(b),g=j+x[0].length,v=!0),!h.global)break;x=h.exec(u.value)}return v?(g<u.value.length&&k.push({type:"text",value:u.value.slice(g)}),f.children.splice(y,1,...k)):k=[u],y+k.length}}function Xfe(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([Qfe(a[0]),Zfe(a[1])])}return t}function Qfe(e){return typeof e=="string"?new RegExp(Vfe(e),"g"):e}function Zfe(e){return typeof e=="function"?e:function(){return e}}const Jg="phrasing",ev=["autolink","link","image","label"];function Jfe(){return{transforms:[she],enter:{literalAutolink:the,literalAutolinkEmail:tv,literalAutolinkHttp:tv,literalAutolinkWww:tv},exit:{literalAutolink:ihe,literalAutolinkEmail:ahe,literalAutolinkHttp:nhe,literalAutolinkWww:rhe}}}function ehe(){return{unsafe:[{character:"@",before:"[+\\-.\\w]",after:"[\\-.\\w]",inConstruct:Jg,notInConstruct:ev},{character:".",before:"[Ww]",after:"[\\-.\\w]",inConstruct:Jg,notInConstruct:ev},{character:":",before:"[ps]",after:"\\/",inConstruct:Jg,notInConstruct:ev}]}}function the(e){this.enter({type:"link",title:null,url:"",children:[]},e)}function tv(e){this.config.enter.autolinkProtocol.call(this,e)}function nhe(e){this.config.exit.autolinkProtocol.call(this,e)}function rhe(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 ahe(e){this.config.exit.autolinkEmail.call(this,e)}function ihe(e){this.exit(e)}function she(e){Yfe(e,[[/(https?:\/\/|www(?=\.))([-.\w]+)([^ \t\r\n]*)/gi,ohe],[new RegExp("(?<=^|\\s|\\p{P}|\\p{S})([-.\\w+]+)@([-\\w]+(?:\\.[-\\w]+)+)","gu"),lhe]],{ignore:["link","linkReference"]})}function ohe(e,t,n,r,a){let s="";if(!YM(a)||(/^w/i.test(t)&&(n=t+n,t="",s="http://"),!che(n)))return!1;const o=uhe(n+r);if(!o[0])return!1;const l={type:"link",title:null,url:s+t+o[0],children:[{type:"text",value:t+o[0]}]};return o[1]?[l,{type:"text",value:o[1]}]:l}function lhe(e,t,n,r){return!YM(r,!0)||/[-\d_]$/.test(n)?!1:{type:"link",title:null,url:"mailto:"+t+"@"+n,children:[{type:"text",value:t+"@"+n}]}}function che(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 uhe(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=e_(e,"(");let s=e_(e,")");for(;r!==-1&&a>s;)e+=n.slice(0,r+1),n=n.slice(r+1),r=n.indexOf(")"),s++;return[e,n]}function YM(e,t){const n=e.input.charCodeAt(e.index-1);return(e.index===0||Os(n)||vm(n))&&(!t||n!==47)}XM.peek=bhe;function dhe(){this.buffer()}function fhe(e){this.enter({type:"footnoteReference",identifier:"",label:""},e)}function hhe(){this.buffer()}function phe(e){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},e)}function mhe(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=Wr(this.sliceSerialize(e)).toLowerCase(),n.label=t}function ghe(e){this.exit(e)}function vhe(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=Wr(this.sliceSerialize(e)).toLowerCase(),n.label=t}function yhe(e){this.exit(e)}function bhe(){return"["}function XM(e,t,n,r){const a=n.createTracker(r);let s=a.move("[^");const o=n.enter("footnoteReference"),l=n.enter("reference");return s+=a.move(n.safe(n.associationId(e),{after:"]",before:s})),l(),o(),s+=a.move("]"),s}function xhe(){return{enter:{gfmFootnoteCallString:dhe,gfmFootnoteCall:fhe,gfmFootnoteDefinitionLabelString:hhe,gfmFootnoteDefinition:phe},exit:{gfmFootnoteCallString:mhe,gfmFootnoteCall:ghe,gfmFootnoteDefinitionLabelString:vhe,gfmFootnoteDefinition:yhe}}}function whe(e){let t=!1;return e&&e.firstLineBlank&&(t=!0),{handlers:{footnoteDefinition:n,footnoteReference:XM},unsafe:[{character:"[",inConstruct:["label","phrasing","reference"]}]};function n(r,a,s,o){const l=s.createTracker(o);let c=l.move("[^");const u=s.enter("footnoteDefinition"),d=s.enter("label");return c+=l.move(s.safe(s.associationId(r),{before:c,after:"]"})),d(),c+=l.move("]:"),r.children&&r.children.length>0&&(l.shift(4),c+=l.move((t?`
178
- `:" ")+s.indentLines(s.containerFlow(r,l.current()),t?QM:khe))),u(),c}}function khe(e,t,n){return t===0?e:QM(e,t,n)}function QM(e,t,n){return(n?"":" ")+e}const She=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"];ZM.peek=Ahe;function jhe(){return{canContainEols:["delete"],enter:{strikethrough:Ehe},exit:{strikethrough:_he}}}function Nhe(){return{unsafe:[{character:"~",inConstruct:"phrasing",notInConstruct:She}],handlers:{delete:ZM}}}function Ehe(e){this.enter({type:"delete",children:[]},e)}function _he(e){this.exit(e)}function ZM(e,t,n,r){const a=n.createTracker(r),s=n.enter("strikethrough");let o=a.move("~~");return o+=n.containerPhrasing(e,{...a.current(),before:o,after:"~"}),o+=a.move("~~"),s(),o}function Ahe(){return"~"}function Che(e){return e.length}function The(e,t){const n=t||{},r=(n.align||[]).concat(),a=n.stringLength||Che,s=[],o=[],l=[],c=[];let u=0,d=-1;for(;++d<e.length;){const m=[],y=[];let v=-1;for(e[d].length>u&&(u=e[d].length);++v<e[d].length;){const k=Ohe(e[d][v]);if(n.alignDelimiters!==!1){const x=a(k);y[v]=x,(c[v]===void 0||x>c[v])&&(c[v]=x)}m.push(k)}o[d]=m,l[d]=y}let f=-1;if(typeof r=="object"&&"length"in r)for(;++f<u;)s[f]=t_(r[f]);else{const m=t_(r);for(;++f<u;)s[f]=m}f=-1;const h=[],p=[];for(;++f<u;){const m=s[f];let y="",v="";m===99?(y=":",v=":"):m===108?y=":":m===114&&(v=":");let k=n.alignDelimiters===!1?1:Math.max(1,c[f]-y.length-v.length);const x=y+"-".repeat(k)+v;n.alignDelimiters!==!1&&(k=y.length+k+v.length,k>c[f]&&(c[f]=k),p[f]=k),h[f]=x}o.splice(1,0,h),l.splice(1,0,p),d=-1;const g=[];for(;++d<o.length;){const m=o[d],y=l[d];f=-1;const v=[];for(;++f<u;){const k=m[f]||"";let x="",j="";if(n.alignDelimiters!==!1){const w=c[f]-(y[f]||0),b=s[f];b===114?x=" ".repeat(w):b===99?w%2?(x=" ".repeat(w/2+.5),j=" ".repeat(w/2-.5)):(x=" ".repeat(w/2),j=x):j=" ".repeat(w)}n.delimiterStart!==!1&&!f&&v.push("|"),n.padding!==!1&&!(n.alignDelimiters===!1&&k==="")&&(n.delimiterStart!==!1||f)&&v.push(" "),n.alignDelimiters!==!1&&v.push(x),v.push(k),n.alignDelimiters!==!1&&v.push(j),n.padding!==!1&&v.push(" "),(n.delimiterEnd!==!1||f!==u-1)&&v.push("|")}g.push(n.delimiterEnd===!1?v.join("").replace(/ +$/,""):v.join(""))}return g.join(`
179
- `)}function Ohe(e){return e==null?"":String(e)}function t_(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 Phe(e,t,n,r){const a=n.enter("blockquote"),s=n.createTracker(r);s.move("> "),s.shift(2);const o=n.indentLines(n.containerFlow(e,s.current()),Rhe);return a(),o}function Rhe(e,t,n){return">"+(n?"":" ")+e}function Mhe(e,t){return n_(e,t.inConstruct,!0)&&!n_(e,t.notInConstruct,!1)}function n_(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 r_(e,t,n,r){let a=-1;for(;++a<n.unsafe.length;)if(n.unsafe[a].character===`
180
- `&&Mhe(n.stack,n.unsafe[a]))return/[ \t]/.test(r.before)?"":" ";return`\\
181
- `}function Ihe(e,t){const n=String(e);let r=n.indexOf(t),a=r,s=0,o=0;if(typeof t!="string")throw new TypeError("Expected substring");for(;r!==-1;)r===a?++s>o&&(o=s):s=1,a=r+t.length,r=n.indexOf(t,a);return o}function $he(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 Lhe(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 Dhe(e,t,n,r){const a=Lhe(n),s=e.value||"",o=a==="`"?"GraveAccent":"Tilde";if($he(e,n)){const f=n.enter("codeIndented"),h=n.indentLines(s,Bhe);return f(),h}const l=n.createTracker(r),c=a.repeat(Math.max(Ihe(s,a)+1,3)),u=n.enter("codeFenced");let d=l.move(c);if(e.lang){const f=n.enter(`codeFencedLang${o}`);d+=l.move(n.safe(e.lang,{before:d,after:" ",encode:["`"],...l.current()})),f()}if(e.lang&&e.meta){const f=n.enter(`codeFencedMeta${o}`);d+=l.move(" "),d+=l.move(n.safe(e.meta,{before:d,after:`
182
- `,encode:["`"],...l.current()})),f()}return d+=l.move(`
183
- `),s&&(d+=l.move(s+`
184
- `)),d+=l.move(c),u(),d}function Bhe(e,t,n){return(n?"":" ")+e}function j0(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 zhe(e,t,n,r){const a=j0(n),s=a==='"'?"Quote":"Apostrophe",o=n.enter("definition");let l=n.enter("label");const c=n.createTracker(r);let u=c.move("[");return u+=c.move(n.safe(n.associationId(e),{before:u,after:"]",...c.current()})),u+=c.move("]: "),l(),!e.url||/[\0- \u007F]/.test(e.url)?(l=n.enter("destinationLiteral"),u+=c.move("<"),u+=c.move(n.safe(e.url,{before:u,after:">",...c.current()})),u+=c.move(">")):(l=n.enter("destinationRaw"),u+=c.move(n.safe(e.url,{before:u,after:e.title?" ":`
185
- `,...c.current()}))),l(),e.title&&(l=n.enter(`title${s}`),u+=c.move(" "+a),u+=c.move(n.safe(e.title,{before:u,after:a,...c.current()})),u+=c.move(a),l()),o(),u}function Fhe(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 Uu(e){return"&#x"+e.toString(16).toUpperCase()+";"}function rp(e,t,n){const r=hl(e),a=hl(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}}JM.peek=Uhe;function JM(e,t,n,r){const a=Fhe(n),s=n.enter("emphasis"),o=n.createTracker(r),l=o.move(a);let c=o.move(n.containerPhrasing(e,{after:a,before:l,...o.current()}));const u=c.charCodeAt(0),d=rp(r.before.charCodeAt(r.before.length-1),u,a);d.inside&&(c=Uu(u)+c.slice(1));const f=c.charCodeAt(c.length-1),h=rp(r.after.charCodeAt(0),f,a);h.inside&&(c=c.slice(0,-1)+Uu(f));const p=o.move(a);return s(),n.attentionEncodeSurroundingInfo={after:h.outside,before:d.outside},l+c+p}function Uhe(e,t,n){return n.options.emphasis||"*"}function Whe(e,t){let n=!1;return wm(e,function(r){if("value"in r&&/\r?\n|\r/.test(r.value)||r.type==="break")return n=!0,Hb}),!!((!e.depth||e.depth<3)&&g0(e)&&(t.options.setext||n))}function Hhe(e,t,n,r){const a=Math.max(Math.min(6,e.depth||1),1),s=n.createTracker(r);if(Whe(e,n)){const d=n.enter("headingSetext"),f=n.enter("phrasing"),h=n.containerPhrasing(e,{...s.current(),before:`
186
- `,after:`
187
- `});return f(),d(),h+`
188
- `+(a===1?"=":"-").repeat(h.length-(Math.max(h.lastIndexOf("\r"),h.lastIndexOf(`
189
- `))+1))}const o="#".repeat(a),l=n.enter("headingAtx"),c=n.enter("phrasing");s.move(o+" ");let u=n.containerPhrasing(e,{before:"# ",after:`
190
- `,...s.current()});return/^[\t ]/.test(u)&&(u=Uu(u.charCodeAt(0))+u.slice(1)),u=u?o+" "+u:o,n.options.closeAtx&&(u+=" "+o),c(),l(),u}eI.peek=Ghe;function eI(e){return e.value||""}function Ghe(){return"<"}tI.peek=qhe;function tI(e,t,n,r){const a=j0(n),s=a==='"'?"Quote":"Apostrophe",o=n.enter("image");let l=n.enter("label");const c=n.createTracker(r);let u=c.move("![");return u+=c.move(n.safe(e.alt,{before:u,after:"]",...c.current()})),u+=c.move("]("),l(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(l=n.enter("destinationLiteral"),u+=c.move("<"),u+=c.move(n.safe(e.url,{before:u,after:">",...c.current()})),u+=c.move(">")):(l=n.enter("destinationRaw"),u+=c.move(n.safe(e.url,{before:u,after:e.title?" ":")",...c.current()}))),l(),e.title&&(l=n.enter(`title${s}`),u+=c.move(" "+a),u+=c.move(n.safe(e.title,{before:u,after:a,...c.current()})),u+=c.move(a),l()),u+=c.move(")"),o(),u}function qhe(){return"!"}nI.peek=Khe;function nI(e,t,n,r){const a=e.referenceType,s=n.enter("imageReference");let o=n.enter("label");const l=n.createTracker(r);let c=l.move("![");const u=n.safe(e.alt,{before:c,after:"]",...l.current()});c+=l.move(u+"]["),o();const d=n.stack;n.stack=[],o=n.enter("reference");const f=n.safe(n.associationId(e),{before:c,after:"]",...l.current()});return o(),n.stack=d,s(),a==="full"||!u||u!==f?c+=l.move(f+"]"):a==="shortcut"?c=c.slice(0,-1):c+=l.move("]"),c}function Khe(){return"!"}rI.peek=Vhe;function rI(e,t,n){let r=e.value||"",a="`",s=-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+" ");++s<n.unsafe.length;){const o=n.unsafe[s],l=n.compilePattern(o);let c;if(o.atBreak)for(;c=l.exec(r);){let u=c.index;r.charCodeAt(u)===10&&r.charCodeAt(u-1)===13&&u--,r=r.slice(0,u)+" "+r.slice(c.index+1)}}return a+r+a}function Vhe(){return"`"}function aI(e,t){const n=g0(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))}iI.peek=Yhe;function iI(e,t,n,r){const a=j0(n),s=a==='"'?"Quote":"Apostrophe",o=n.createTracker(r);let l,c;if(aI(e,n)){const d=n.stack;n.stack=[],l=n.enter("autolink");let f=o.move("<");return f+=o.move(n.containerPhrasing(e,{before:f,after:">",...o.current()})),f+=o.move(">"),l(),n.stack=d,f}l=n.enter("link"),c=n.enter("label");let u=o.move("[");return u+=o.move(n.containerPhrasing(e,{before:u,after:"](",...o.current()})),u+=o.move("]("),c(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(c=n.enter("destinationLiteral"),u+=o.move("<"),u+=o.move(n.safe(e.url,{before:u,after:">",...o.current()})),u+=o.move(">")):(c=n.enter("destinationRaw"),u+=o.move(n.safe(e.url,{before:u,after:e.title?" ":")",...o.current()}))),c(),e.title&&(c=n.enter(`title${s}`),u+=o.move(" "+a),u+=o.move(n.safe(e.title,{before:u,after:a,...o.current()})),u+=o.move(a),c()),u+=o.move(")"),l(),u}function Yhe(e,t,n){return aI(e,n)?"<":"["}sI.peek=Xhe;function sI(e,t,n,r){const a=e.referenceType,s=n.enter("linkReference");let o=n.enter("label");const l=n.createTracker(r);let c=l.move("[");const u=n.containerPhrasing(e,{before:c,after:"]",...l.current()});c+=l.move(u+"]["),o();const d=n.stack;n.stack=[],o=n.enter("reference");const f=n.safe(n.associationId(e),{before:c,after:"]",...l.current()});return o(),n.stack=d,s(),a==="full"||!u||u!==f?c+=l.move(f+"]"):a==="shortcut"?c=c.slice(0,-1):c+=l.move("]"),c}function Xhe(){return"["}function N0(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 Qhe(e){const t=N0(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 Zhe(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 oI(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 Jhe(e,t,n,r){const a=n.enter("list"),s=n.bulletCurrent;let o=e.ordered?Zhe(n):N0(n);const l=e.ordered?o==="."?")":".":Qhe(n);let c=t&&n.bulletLastUsed?o===n.bulletLastUsed:!1;if(!e.ordered){const d=e.children?e.children[0]:void 0;if((o==="*"||o==="-")&&d&&(!d.children||!d.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&&(c=!0),oI(n)===o&&d){let f=-1;for(;++f<e.children.length;){const h=e.children[f];if(h&&h.type==="listItem"&&h.children&&h.children[0]&&h.children[0].type==="thematicBreak"){c=!0;break}}}}c&&(o=l),n.bulletCurrent=o;const u=n.containerFlow(e,r);return n.bulletLastUsed=o,n.bulletCurrent=s,a(),u}function epe(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 tpe(e,t,n,r){const a=epe(n);let s=n.bulletCurrent||N0(n);t&&t.type==="list"&&t.ordered&&(s=(typeof t.start=="number"&&t.start>-1?t.start:1)+(n.options.incrementListMarker===!1?0:t.children.indexOf(e))+s);let o=s.length+1;(a==="tab"||a==="mixed"&&(t&&t.type==="list"&&t.spread||e.spread))&&(o=Math.ceil(o/4)*4);const l=n.createTracker(r);l.move(s+" ".repeat(o-s.length)),l.shift(o);const c=n.enter("listItem"),u=n.indentLines(n.containerFlow(e,l.current()),d);return c(),u;function d(f,h,p){return h?(p?"":" ".repeat(o))+f:(p?s:s+" ".repeat(o-s.length))+f}}function npe(e,t,n,r){const a=n.enter("paragraph"),s=n.enter("phrasing"),o=n.containerPhrasing(e,r);return s(),a(),o}const rpe=sd(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function ape(e,t,n,r){return(e.children.some(function(o){return rpe(o)})?n.containerPhrasing:n.containerFlow).call(n,e,r)}function ipe(e){const t=e.options.strong||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize strong with `"+t+"` for `options.strong`, expected `*`, or `_`");return t}lI.peek=spe;function lI(e,t,n,r){const a=ipe(n),s=n.enter("strong"),o=n.createTracker(r),l=o.move(a+a);let c=o.move(n.containerPhrasing(e,{after:a,before:l,...o.current()}));const u=c.charCodeAt(0),d=rp(r.before.charCodeAt(r.before.length-1),u,a);d.inside&&(c=Uu(u)+c.slice(1));const f=c.charCodeAt(c.length-1),h=rp(r.after.charCodeAt(0),f,a);h.inside&&(c=c.slice(0,-1)+Uu(f));const p=o.move(a+a);return s(),n.attentionEncodeSurroundingInfo={after:h.outside,before:d.outside},l+c+p}function spe(e,t,n){return n.options.strong||"*"}function ope(e,t,n,r){return n.safe(e.value,r)}function lpe(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 cpe(e,t,n){const r=(oI(n)+(n.options.ruleSpaces?" ":"")).repeat(lpe(n));return n.options.ruleSpaces?r.slice(0,-1):r}const cI={blockquote:Phe,break:r_,code:Dhe,definition:zhe,emphasis:JM,hardBreak:r_,heading:Hhe,html:eI,image:tI,imageReference:nI,inlineCode:rI,link:iI,linkReference:sI,list:Jhe,listItem:tpe,paragraph:npe,root:ape,strong:lI,text:ope,thematicBreak:cpe};function upe(){return{enter:{table:dpe,tableData:a_,tableHeader:a_,tableRow:hpe},exit:{codeText:ppe,table:fpe,tableData:nv,tableHeader:nv,tableRow:nv}}}function dpe(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 fpe(e){this.exit(e),this.data.inTable=void 0}function hpe(e){this.enter({type:"tableRow",children:[]},e)}function nv(e){this.exit(e)}function a_(e){this.enter({type:"tableCell",children:[]},e)}function ppe(e){let t=this.resume();this.data.inTable&&(t=t.replace(/\\([\\|])/g,mpe));const n=this.stack[this.stack.length-1];n.type,n.value=t,this.exit(e)}function mpe(e,t){return t==="|"?t:e}function gpe(e){const t=e||{},n=t.tableCellPadding,r=t.tablePipeAlign,a=t.stringLength,s=n?" ":"|";return{unsafe:[{character:"\r",inConstruct:"tableCell"},{character:`
191
- `,inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[ :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:h,table:o,tableCell:c,tableRow:l}};function o(p,g,m,y){return u(d(p,m,y),p.align)}function l(p,g,m,y){const v=f(p,m,y),k=u([v]);return k.slice(0,k.indexOf(`
192
- `))}function c(p,g,m,y){const v=m.enter("tableCell"),k=m.enter("phrasing"),x=m.containerPhrasing(p,{...y,before:s,after:s});return k(),v(),x}function u(p,g){return The(p,{align:g,alignDelimiters:r,padding:n,stringLength:a})}function d(p,g,m){const y=p.children;let v=-1;const k=[],x=g.enter("table");for(;++v<y.length;)k[v]=f(y[v],g,m);return x(),k}function f(p,g,m){const y=p.children;let v=-1;const k=[],x=g.enter("tableRow");for(;++v<y.length;)k[v]=c(y[v],p,g,m);return x(),k}function h(p,g,m){let y=cI.inlineCode(p,g,m);return m.stack.includes("tableCell")&&(y=y.replace(/\|/g,"\\$&")),y}}function vpe(){return{exit:{taskListCheckValueChecked:i_,taskListCheckValueUnchecked:i_,paragraph:bpe}}}function ype(){return{unsafe:[{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{listItem:xpe}}}function i_(e){const t=this.stack[this.stack.length-2];t.type,t.checked=e.type==="taskListCheckValueChecked"}function bpe(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 s=-1,o;for(;++s<a.length;){const l=a[s];if(l.type==="paragraph"){o=l;break}}o===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 xpe(e,t,n,r){const a=e.children[0],s=typeof e.checked=="boolean"&&a&&a.type==="paragraph",o="["+(e.checked?"x":" ")+"] ",l=n.createTracker(r);s&&l.move(o);let c=cI.listItem(e,t,n,{...r,...l.current()});return s&&(c=c.replace(/^(?:[*+-]|\d+\.)([\r\n]| {1,3})/,u)),c;function u(d){return d+o}}function wpe(){return[Jfe(),xhe(),jhe(),upe(),vpe()]}function kpe(e){return{extensions:[ehe(),whe(e),Nhe(),gpe(e),ype()]}}const Spe={tokenize:Cpe,partial:!0},uI={tokenize:Tpe,partial:!0},dI={tokenize:Ope,partial:!0},fI={tokenize:Ppe,partial:!0},jpe={tokenize:Rpe,partial:!0},hI={name:"wwwAutolink",tokenize:_pe,previous:mI},pI={name:"protocolAutolink",tokenize:Ape,previous:gI},Ua={name:"emailAutolink",tokenize:Epe,previous:vI},ha={};function Npe(){return{text:ha}}let Vi=48;for(;Vi<123;)ha[Vi]=Ua,Vi++,Vi===58?Vi=65:Vi===91&&(Vi=97);ha[43]=Ua;ha[45]=Ua;ha[46]=Ua;ha[95]=Ua;ha[72]=[Ua,pI];ha[104]=[Ua,pI];ha[87]=[Ua,hI];ha[119]=[Ua,hI];function Epe(e,t,n){const r=this;let a,s;return o;function o(f){return!Vb(f)||!vI.call(r,r.previous)||E0(r.events)?n(f):(e.enter("literalAutolink"),e.enter("literalAutolinkEmail"),l(f))}function l(f){return Vb(f)?(e.consume(f),l):f===64?(e.consume(f),c):n(f)}function c(f){return f===46?e.check(jpe,d,u)(f):f===45||f===95||Sn(f)?(s=!0,e.consume(f),c):d(f)}function u(f){return e.consume(f),a=!0,c}function d(f){return s&&a&&An(r.previous)?(e.exit("literalAutolinkEmail"),e.exit("literalAutolink"),t(f)):n(f)}}function _pe(e,t,n){const r=this;return a;function a(o){return o!==87&&o!==119||!mI.call(r,r.previous)||E0(r.events)?n(o):(e.enter("literalAutolink"),e.enter("literalAutolinkWww"),e.check(Spe,e.attempt(uI,e.attempt(dI,s),n),n)(o))}function s(o){return e.exit("literalAutolinkWww"),e.exit("literalAutolink"),t(o)}}function Ape(e,t,n){const r=this;let a="",s=!1;return o;function o(f){return(f===72||f===104)&&gI.call(r,r.previous)&&!E0(r.events)?(e.enter("literalAutolink"),e.enter("literalAutolinkHttp"),a+=String.fromCodePoint(f),e.consume(f),l):n(f)}function l(f){if(An(f)&&a.length<5)return a+=String.fromCodePoint(f),e.consume(f),l;if(f===58){const h=a.toLowerCase();if(h==="http"||h==="https")return e.consume(f),c}return n(f)}function c(f){return f===47?(e.consume(f),s?u:(s=!0,c)):n(f)}function u(f){return f===null||ep(f)||ct(f)||Os(f)||vm(f)?n(f):e.attempt(uI,e.attempt(dI,d),n)(f)}function d(f){return e.exit("literalAutolinkHttp"),e.exit("literalAutolink"),t(f)}}function Cpe(e,t,n){let r=0;return a;function a(o){return(o===87||o===119)&&r<3?(r++,e.consume(o),a):o===46&&r===3?(e.consume(o),s):n(o)}function s(o){return o===null?n(o):t(o)}}function Tpe(e,t,n){let r,a,s;return o;function o(u){return u===46||u===95?e.check(fI,c,l)(u):u===null||ct(u)||Os(u)||u!==45&&vm(u)?c(u):(s=!0,e.consume(u),o)}function l(u){return u===95?r=!0:(a=r,r=void 0),e.consume(u),o}function c(u){return a||r||!s?n(u):t(u)}}function Ope(e,t){let n=0,r=0;return a;function a(o){return o===40?(n++,e.consume(o),a):o===41&&r<n?s(o):o===33||o===34||o===38||o===39||o===41||o===42||o===44||o===46||o===58||o===59||o===60||o===63||o===93||o===95||o===126?e.check(fI,t,s)(o):o===null||ct(o)||Os(o)?t(o):(e.consume(o),a)}function s(o){return o===41&&r++,e.consume(o),a}}function Ppe(e,t,n){return r;function r(l){return l===33||l===34||l===39||l===41||l===42||l===44||l===46||l===58||l===59||l===63||l===95||l===126?(e.consume(l),r):l===38?(e.consume(l),s):l===93?(e.consume(l),a):l===60||l===null||ct(l)||Os(l)?t(l):n(l)}function a(l){return l===null||l===40||l===91||ct(l)||Os(l)?t(l):r(l)}function s(l){return An(l)?o(l):n(l)}function o(l){return l===59?(e.consume(l),r):An(l)?(e.consume(l),o):n(l)}}function Rpe(e,t,n){return r;function r(s){return e.consume(s),a}function a(s){return Sn(s)?n(s):t(s)}}function mI(e){return e===null||e===40||e===42||e===95||e===91||e===93||e===126||ct(e)}function gI(e){return!An(e)}function vI(e){return!(e===47||Vb(e))}function Vb(e){return e===43||e===45||e===46||e===95||Sn(e)}function E0(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 Mpe={tokenize:Upe,partial:!0};function Ipe(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:Bpe,continuation:{tokenize:zpe},exit:Fpe}},text:{91:{name:"gfmFootnoteCall",tokenize:Dpe},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:$pe,resolveTo:Lpe}}}}function $pe(e,t,n){const r=this;let a=r.events.length;const s=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let o;for(;a--;){const c=r.events[a][1];if(c.type==="labelImage"){o=c;break}if(c.type==="gfmFootnoteCall"||c.type==="labelLink"||c.type==="label"||c.type==="image"||c.type==="link")break}return l;function l(c){if(!o||!o._balanced)return n(c);const u=Wr(r.sliceSerialize({start:o.end,end:r.now()}));return u.codePointAt(0)!==94||!s.includes(u.slice(1))?n(c):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(c),e.exit("gfmFootnoteCallLabelMarker"),t(c))}}function Lpe(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 s={type:"gfmFootnoteCallString",start:Object.assign({},a.end),end:Object.assign({},e[e.length-1][1].start)},o={type:"chunkString",contentType:"string",start:Object.assign({},s.start),end:Object.assign({},s.end)},l=[e[n+1],e[n+2],["enter",r,t],e[n+3],e[n+4],["enter",a,t],["exit",a,t],["enter",s,t],["enter",o,t],["exit",o,t],["exit",s,t],e[e.length-2],e[e.length-1],["exit",r,t]];return e.splice(n,e.length-n+1,...l),e}function Dpe(e,t,n){const r=this,a=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let s=0,o;return l;function l(f){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(f),e.exit("gfmFootnoteCallLabelMarker"),c}function c(f){return f!==94?n(f):(e.enter("gfmFootnoteCallMarker"),e.consume(f),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",u)}function u(f){if(s>999||f===93&&!o||f===null||f===91||ct(f))return n(f);if(f===93){e.exit("chunkString");const h=e.exit("gfmFootnoteCallString");return a.includes(Wr(r.sliceSerialize(h)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(f),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),t):n(f)}return ct(f)||(o=!0),s++,e.consume(f),f===92?d:u}function d(f){return f===91||f===92||f===93?(e.consume(f),s++,u):u(f)}}function Bpe(e,t,n){const r=this,a=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let s,o=0,l;return c;function c(g){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(g),e.exit("gfmFootnoteDefinitionLabelMarker"),u}function u(g){return g===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(g),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",d):n(g)}function d(g){if(o>999||g===93&&!l||g===null||g===91||ct(g))return n(g);if(g===93){e.exit("chunkString");const m=e.exit("gfmFootnoteDefinitionLabelString");return s=Wr(r.sliceSerialize(m)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(g),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),h}return ct(g)||(l=!0),o++,e.consume(g),g===92?f:d}function f(g){return g===91||g===92||g===93?(e.consume(g),o++,d):d(g)}function h(g){return g===58?(e.enter("definitionMarker"),e.consume(g),e.exit("definitionMarker"),a.includes(s)||a.push(s),He(e,p,"gfmFootnoteDefinitionWhitespace")):n(g)}function p(g){return t(g)}}function zpe(e,t,n){return e.check(id,t,e.attempt(Mpe,t,n))}function Fpe(e){e.exit("gfmFootnoteDefinition")}function Upe(e,t,n){const r=this;return He(e,a,"gfmFootnoteDefinitionIndent",5);function a(s){const o=r.events[r.events.length-1];return o&&o[1].type==="gfmFootnoteDefinitionIndent"&&o[2].sliceSerialize(o[1],!0).length===4?t(s):n(s)}}function Wpe(e){let n=(e||{}).singleTilde;const r={name:"strikethrough",tokenize:s,resolveAll:a};return n==null&&(n=!0),{text:{126:r},insideSpan:{null:[r]},attentionMarkers:{null:[126]}};function a(o,l){let c=-1;for(;++c<o.length;)if(o[c][0]==="enter"&&o[c][1].type==="strikethroughSequenceTemporary"&&o[c][1]._close){let u=c;for(;u--;)if(o[u][0]==="exit"&&o[u][1].type==="strikethroughSequenceTemporary"&&o[u][1]._open&&o[c][1].end.offset-o[c][1].start.offset===o[u][1].end.offset-o[u][1].start.offset){o[c][1].type="strikethroughSequence",o[u][1].type="strikethroughSequence";const d={type:"strikethrough",start:Object.assign({},o[u][1].start),end:Object.assign({},o[c][1].end)},f={type:"strikethroughText",start:Object.assign({},o[u][1].end),end:Object.assign({},o[c][1].start)},h=[["enter",d,l],["enter",o[u][1],l],["exit",o[u][1],l],["enter",f,l]],p=l.parser.constructs.insideSpan.null;p&&tr(h,h.length,0,ym(p,o.slice(u+1,c),l)),tr(h,h.length,0,[["exit",f,l],["enter",o[c][1],l],["exit",o[c][1],l],["exit",d,l]]),tr(o,u-1,c-u+3,h),c=u+h.length-2;break}}for(c=-1;++c<o.length;)o[c][1].type==="strikethroughSequenceTemporary"&&(o[c][1].type="data");return o}function s(o,l,c){const u=this.previous,d=this.events;let f=0;return h;function h(g){return u===126&&d[d.length-1][1].type!=="characterEscape"?c(g):(o.enter("strikethroughSequenceTemporary"),p(g))}function p(g){const m=hl(u);if(g===126)return f>1?c(g):(o.consume(g),f++,p);if(f<2&&!n)return c(g);const y=o.exit("strikethroughSequenceTemporary"),v=hl(g);return y._open=!v||v===2&&!!m,y._close=!m||m===2&&!!v,l(g)}}}class Hpe{constructor(){this.map=[]}add(t,n,r){Gpe(this,t,n,r)}consume(t){if(this.map.sort(function(s,o){return s[0]-o[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 s of a)t.push(s);a=r.pop()}this.map.length=0}}function Gpe(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 qpe(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 s=r.length-1;r[s]=r[s]==="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 Kpe(){return{flow:{null:{name:"table",tokenize:Vpe,resolveAll:Ype}}}}function Vpe(e,t,n){const r=this;let a=0,s=0,o;return l;function l(C){let P=r.events.length-1;for(;P>-1;){const M=r.events[P][1].type;if(M==="lineEnding"||M==="linePrefix")P--;else break}const $=P>-1?r.events[P][1].type:null,B=$==="tableHead"||$==="tableRow"?b:c;return B===b&&r.parser.lazy[r.now().line]?n(C):B(C)}function c(C){return e.enter("tableHead"),e.enter("tableRow"),u(C)}function u(C){return C===124||(o=!0,s+=1),d(C)}function d(C){return C===null?n(C):Ee(C)?s>1?(s=0,r.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(C),e.exit("lineEnding"),p):n(C):Fe(C)?He(e,d,"whitespace")(C):(s+=1,o&&(o=!1,a+=1),C===124?(e.enter("tableCellDivider"),e.consume(C),e.exit("tableCellDivider"),o=!0,d):(e.enter("data"),f(C)))}function f(C){return C===null||C===124||ct(C)?(e.exit("data"),d(C)):(e.consume(C),C===92?h:f)}function h(C){return C===92||C===124?(e.consume(C),f):f(C)}function p(C){return r.interrupt=!1,r.parser.lazy[r.now().line]?n(C):(e.enter("tableDelimiterRow"),o=!1,Fe(C)?He(e,g,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(C):g(C))}function g(C){return C===45||C===58?y(C):C===124?(o=!0,e.enter("tableCellDivider"),e.consume(C),e.exit("tableCellDivider"),m):w(C)}function m(C){return Fe(C)?He(e,y,"whitespace")(C):y(C)}function y(C){return C===58?(s+=1,o=!0,e.enter("tableDelimiterMarker"),e.consume(C),e.exit("tableDelimiterMarker"),v):C===45?(s+=1,v(C)):C===null||Ee(C)?j(C):w(C)}function v(C){return C===45?(e.enter("tableDelimiterFiller"),k(C)):w(C)}function k(C){return C===45?(e.consume(C),k):C===58?(o=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(C),e.exit("tableDelimiterMarker"),x):(e.exit("tableDelimiterFiller"),x(C))}function x(C){return Fe(C)?He(e,j,"whitespace")(C):j(C)}function j(C){return C===124?g(C):C===null||Ee(C)?!o||a!==s?w(C):(e.exit("tableDelimiterRow"),e.exit("tableHead"),t(C)):w(C)}function w(C){return n(C)}function b(C){return e.enter("tableRow"),N(C)}function N(C){return C===124?(e.enter("tableCellDivider"),e.consume(C),e.exit("tableCellDivider"),N):C===null||Ee(C)?(e.exit("tableRow"),t(C)):Fe(C)?He(e,N,"whitespace")(C):(e.enter("data"),E(C))}function E(C){return C===null||C===124||ct(C)?(e.exit("data"),N(C)):(e.consume(C),C===92?O:E)}function O(C){return C===92||C===124?(e.consume(C),E):E(C)}}function Ype(e,t){let n=-1,r=!0,a=0,s=[0,0,0,0],o=[0,0,0,0],l=!1,c=0,u,d,f;const h=new Hpe;for(;++n<e.length;){const p=e[n],g=p[1];p[0]==="enter"?g.type==="tableHead"?(l=!1,c!==0&&(s_(h,t,c,u,d),d=void 0,c=0),u={type:"table",start:Object.assign({},g.start),end:Object.assign({},g.end)},h.add(n,0,[["enter",u,t]])):g.type==="tableRow"||g.type==="tableDelimiterRow"?(r=!0,f=void 0,s=[0,0,0,0],o=[0,n+1,0,0],l&&(l=!1,d={type:"tableBody",start:Object.assign({},g.start),end:Object.assign({},g.end)},h.add(n,0,[["enter",d,t]])),a=g.type==="tableDelimiterRow"?2:d?3:1):a&&(g.type==="data"||g.type==="tableDelimiterMarker"||g.type==="tableDelimiterFiller")?(r=!1,o[2]===0&&(s[1]!==0&&(o[0]=o[1],f=rf(h,t,s,a,void 0,f),s=[0,0,0,0]),o[2]=n)):g.type==="tableCellDivider"&&(r?r=!1:(s[1]!==0&&(o[0]=o[1],f=rf(h,t,s,a,void 0,f)),s=o,o=[s[1],n,0,0])):g.type==="tableHead"?(l=!0,c=n):g.type==="tableRow"||g.type==="tableDelimiterRow"?(c=n,s[1]!==0?(o[0]=o[1],f=rf(h,t,s,a,n,f)):o[1]!==0&&(f=rf(h,t,o,a,n,f)),a=0):a&&(g.type==="data"||g.type==="tableDelimiterMarker"||g.type==="tableDelimiterFiller")&&(o[3]=n)}for(c!==0&&s_(h,t,c,u,d),h.consume(t.events),n=-1;++n<t.events.length;){const p=t.events[n];p[0]==="enter"&&p[1].type==="table"&&(p[1]._align=qpe(t.events,n))}return e}function rf(e,t,n,r,a,s){const o=r===1?"tableHeader":r===2?"tableDelimiter":"tableData",l="tableContent";n[0]!==0&&(s.end=Object.assign({},oo(t.events,n[0])),e.add(n[0],0,[["exit",s,t]]));const c=oo(t.events,n[1]);if(s={type:o,start:Object.assign({},c),end:Object.assign({},c)},e.add(n[1],0,[["enter",s,t]]),n[2]!==0){const u=oo(t.events,n[2]),d=oo(t.events,n[3]),f={type:l,start:Object.assign({},u),end:Object.assign({},d)};if(e.add(n[2],0,[["enter",f,t]]),r!==2){const h=t.events[n[2]],p=t.events[n[3]];if(h[1].end=Object.assign({},p[1].end),h[1].type="chunkText",h[1].contentType="text",n[3]>n[2]+1){const g=n[2]+1,m=n[3]-n[2]-1;e.add(g,m,[])}}e.add(n[3]+1,0,[["exit",f,t]])}return a!==void 0&&(s.end=Object.assign({},oo(t.events,a)),e.add(a,0,[["exit",s,t]]),s=void 0),s}function s_(e,t,n,r,a){const s=[],o=oo(t.events,n);a&&(a.end=Object.assign({},o),s.push(["exit",a,t])),r.end=Object.assign({},o),s.push(["exit",r,t]),e.add(n+1,0,s)}function oo(e,t){const n=e[t],r=n[0]==="enter"?"start":"end";return n[1][r]}const Xpe={name:"tasklistCheck",tokenize:Zpe};function Qpe(){return{text:{91:Xpe}}}function Zpe(e,t,n){const r=this;return a;function a(c){return r.previous!==null||!r._gfmTasklistFirstContentOfListItem?n(c):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(c),e.exit("taskListCheckMarker"),s)}function s(c){return ct(c)?(e.enter("taskListCheckValueUnchecked"),e.consume(c),e.exit("taskListCheckValueUnchecked"),o):c===88||c===120?(e.enter("taskListCheckValueChecked"),e.consume(c),e.exit("taskListCheckValueChecked"),o):n(c)}function o(c){return c===93?(e.enter("taskListCheckMarker"),e.consume(c),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),l):n(c)}function l(c){return Ee(c)?t(c):Fe(c)?e.check({tokenize:Jpe},t,n)(c):n(c)}}function Jpe(e,t,n){return He(e,r,"whitespace");function r(a){return a===null?n(a):t(a)}}function eme(e){return EM([Npe(),Ipe(),Wpe(e),Kpe(),Qpe()])}const tme={};function nme(e){const t=this,n=e||tme,r=t.data(),a=r.micromarkExtensions||(r.micromarkExtensions=[]),s=r.fromMarkdownExtensions||(r.fromMarkdownExtensions=[]),o=r.toMarkdownExtensions||(r.toMarkdownExtensions=[]);a.push(eme(n)),s.push(wpe()),o.push(kpe(n))}const o_=function(e,t,n){const r=sd(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]},zs=function(e){if(e==null)return ime;if(typeof e=="string")return ame(e);if(typeof e=="object")return rme(e);if(typeof e=="function")return _0(e);throw new Error("Expected function, string, or array as `test`")};function rme(e){const t=[];let n=-1;for(;++n<e.length;)t[n]=zs(e[n]);return _0(r);function r(...a){let s=-1;for(;++s<t.length;)if(t[s].apply(this,a))return!0;return!1}}function ame(e){return _0(t);function t(n){return n.tagName===e}}function _0(e){return t;function t(n,r,a){return!!(sme(n)&&e.call(this,n,typeof r=="number"?r:void 0,a||void 0))}}function ime(e){return!!(e&&typeof e=="object"&&"type"in e&&e.type==="element"&&"tagName"in e&&typeof e.tagName=="string")}function sme(e){return e!==null&&typeof e=="object"&&"type"in e&&"tagName"in e}const l_=/\n/g,c_=/[\t ]+/g,Yb=zs("br"),u_=zs(pme),ome=zs("p"),d_=zs("tr"),lme=zs(["datalist","head","noembed","noframes","noscript","rp","script","style","template","title",hme,mme]),yI=zs(["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 cme(e,t){const n=t||{},r="children"in e?e.children:[],a=yI(e),s=wI(e,{whitespace:n.whitespace||"normal"}),o=[];(e.type==="text"||e.type==="comment")&&o.push(...xI(e,{breakBefore:!0,breakAfter:!0}));let l=-1;for(;++l<r.length;)o.push(...bI(r[l],e,{whitespace:s,breakBefore:l?void 0:a,breakAfter:l<r.length-1?Yb(r[l+1]):a}));const c=[];let u;for(l=-1;++l<o.length;){const d=o[l];typeof d=="number"?u!==void 0&&d>u&&(u=d):d&&(u!==void 0&&u>-1&&c.push(`
193
- `.repeat(u)||" "),u=-1,c.push(d))}return c.join("")}function bI(e,t,n){return e.type==="element"?ume(e,t,n):e.type==="text"?n.whitespace==="normal"?xI(e,n):dme(e):[]}function ume(e,t,n){const r=wI(e,n),a=e.children||[];let s=-1,o=[];if(lme(e))return o;let l,c;for(Yb(e)||d_(e)&&o_(t,e,d_)?c=`
194
- `:ome(e)?(l=2,c=2):yI(e)&&(l=1,c=1);++s<a.length;)o=o.concat(bI(a[s],e,{whitespace:r,breakBefore:s?void 0:l,breakAfter:s<a.length-1?Yb(a[s+1]):c}));return u_(e)&&o_(t,e,u_)&&o.push(" "),l&&o.unshift(l),c&&o.push(c),o}function xI(e,t){const n=String(e.value),r=[],a=[];let s=0;for(;s<=n.length;){l_.lastIndex=s;const c=l_.exec(n),u=c&&"index"in c?c.index:n.length;r.push(fme(n.slice(s,u).replace(/[\u061C\u200E\u200F\u202A-\u202E\u2066-\u2069]/g,""),s===0?t.breakBefore:!0,u===n.length?t.breakAfter:!0)),s=u+1}let o=-1,l;for(;++o<r.length;)r[o].charCodeAt(r[o].length-1)===8203||o<r.length-1&&r[o+1].charCodeAt(0)===8203?(a.push(r[o]),l=void 0):r[o]?(typeof l=="number"&&a.push(l),a.push(r[o]),l=0):(o===0||o===r.length-1)&&a.push(0);return a}function dme(e){return[String(e.value)]}function fme(e,t,n){const r=[];let a=0,s;for(;a<e.length;){c_.lastIndex=a;const o=c_.exec(e);s=o?o.index:e.length,!a&&!s&&o&&!t&&r.push(""),a!==s&&r.push(e.slice(a,s)),a=o?s+o[0].length:s}return a!==s&&!n&&r.push(""),r.join(" ")}function wI(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 hme(e){return!!(e.properties||{}).hidden}function pme(e){return e.tagName==="td"||e.tagName==="th"}function mme(e){return e.tagName==="dialog"&&!(e.properties||{}).open}function gme(e){const t=e.regex,n=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),r="decltype\\(auto\\)",a="[a-zA-Z_]\\w*::",o="(?!struct)("+r+"|"+t.optional(a)+"[a-zA-Z_]\\w*"+t.optional("<[^<>]+>")+")",l={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},u={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})"/})]},d={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},f={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(u,{className:"string"}),{className:"string",begin:/<.*?>/},n,e.C_BLOCK_COMMENT_MODE]},h={className:"title",begin:t.optional(a)+e.IDENT_RE,relevance:0},p=t.optional(a)+e.IDENT_RE+"\\s*\\(",g=["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"],m=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"],y=["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"],v=["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"],j={type:m,keyword:g,literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:y},w={className:"function.dispatch",relevance:0,keywords:{_hint:v},begin:t.concat(/\b/,`(?!${g.join("|")})`,e.IDENT_RE,t.lookahead(/(<[^<>]+>|)\s*\(/))},b=[w,f,l,n,e.C_BLOCK_COMMENT_MODE,d,u],N={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:j,contains:b.concat([{begin:/\(/,end:/\)/,keywords:j,contains:b.concat(["self"]),relevance:0}]),relevance:0},E={className:"function",begin:"("+o+"[\\*&\\s]+)+"+p,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:j,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:r,keywords:j,relevance:0},{begin:p,returnBegin:!0,contains:[h],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[u,d]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:j,relevance:0,contains:[n,e.C_BLOCK_COMMENT_MODE,u,d,l,{begin:/\(/,end:/\)/,keywords:j,relevance:0,contains:["self",n,e.C_BLOCK_COMMENT_MODE,u,d,l]}]},l,n,e.C_BLOCK_COMMENT_MODE,f]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:j,illegal:"</",classNameAliases:{"function.dispatch":"built_in"},contains:[].concat(N,E,w,b,[f,{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:j,contains:["self",l]},{begin:e.IDENT_RE+"::",keywords:j},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}function vme(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=gme(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 yme(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]},s=e.inherit(e.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),o={begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},l={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,n,a]};a.contains.push(l);const c={match:/\\"/},u={className:"string",begin:/'/,end:/'/},d={match:/\\'/},f={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,n]},h=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],p=e.SHEBANG({binary:`(${h.join("|")})`,relevance:10}),g={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},m=["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],y=["true","false"],v={match:/(\/[a-z._-]+)+/},k=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],x=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],j=["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"],w=["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:m,literal:y,built_in:[...k,...x,"set","shopt",...j,...w]},contains:[p,e.SHEBANG(),g,f,s,o,v,l,c,u,d,n]}}function bme(e){const t=e.regex,n=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),r="decltype\\(auto\\)",a="[a-zA-Z_]\\w*::",o="("+r+"|"+t.optional(a)+"[a-zA-Z_]\\w*"+t.optional("<[^<>]+>")+")",l={className:"type",variants:[{begin:"\\b[a-z\\d_]*_t\\b"},{match:/\batomic_[a-z]{3,6}\b/}]},u={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})"/})]},d={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},f={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(u,{className:"string"}),{className:"string",begin:/<.*?>/},n,e.C_BLOCK_COMMENT_MODE]},h={className:"title",begin:t.optional(a)+e.IDENT_RE,relevance:0},p=t.optional(a)+e.IDENT_RE+"\\s*\\(",y={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"},v=[f,l,n,e.C_BLOCK_COMMENT_MODE,d,u],k={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:y,contains:v.concat([{begin:/\(/,end:/\)/,keywords:y,contains:v.concat(["self"]),relevance:0}]),relevance:0},x={begin:"("+o+"[\\*&\\s]+)+"+p,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:y,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:r,keywords:y,relevance:0},{begin:p,returnBegin:!0,contains:[e.inherit(h,{className:"title.function"})],relevance:0},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:y,relevance:0,contains:[n,e.C_BLOCK_COMMENT_MODE,u,d,l,{begin:/\(/,end:/\)/,keywords:y,relevance:0,contains:["self",n,e.C_BLOCK_COMMENT_MODE,u,d,l]}]},l,n,e.C_BLOCK_COMMENT_MODE,f]};return{name:"C",aliases:["h"],keywords:y,disableAutodetect:!0,illegal:"</",contains:[].concat(k,x,v,[f,{begin:e.IDENT_RE+"::",keywords:y},{className:"class",beginKeywords:"enum class struct union",end:/[{;:<>=]/,contains:[{beginKeywords:"final class struct"},e.TITLE_MODE]}]),exports:{preprocessor:f,strings:u,keywords:y}}}function xme(e){const t=e.regex,n=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),r="decltype\\(auto\\)",a="[a-zA-Z_]\\w*::",o="(?!struct)("+r+"|"+t.optional(a)+"[a-zA-Z_]\\w*"+t.optional("<[^<>]+>")+")",l={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},u={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})"/})]},d={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},f={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(u,{className:"string"}),{className:"string",begin:/<.*?>/},n,e.C_BLOCK_COMMENT_MODE]},h={className:"title",begin:t.optional(a)+e.IDENT_RE,relevance:0},p=t.optional(a)+e.IDENT_RE+"\\s*\\(",g=["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"],m=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"],y=["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"],v=["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"],j={type:m,keyword:g,literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:y},w={className:"function.dispatch",relevance:0,keywords:{_hint:v},begin:t.concat(/\b/,`(?!${g.join("|")})`,e.IDENT_RE,t.lookahead(/(<[^<>]+>|)\s*\(/))},b=[w,f,l,n,e.C_BLOCK_COMMENT_MODE,d,u],N={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:j,contains:b.concat([{begin:/\(/,end:/\)/,keywords:j,contains:b.concat(["self"]),relevance:0}]),relevance:0},E={className:"function",begin:"("+o+"[\\*&\\s]+)+"+p,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:j,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:r,keywords:j,relevance:0},{begin:p,returnBegin:!0,contains:[h],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[u,d]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:j,relevance:0,contains:[n,e.C_BLOCK_COMMENT_MODE,u,d,l,{begin:/\(/,end:/\)/,keywords:j,relevance:0,contains:["self",n,e.C_BLOCK_COMMENT_MODE,u,d,l]}]},l,n,e.C_BLOCK_COMMENT_MODE,f]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:j,illegal:"</",classNameAliases:{"function.dispatch":"built_in"},contains:[].concat(N,E,w,b,[f,{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:j,contains:["self",l]},{begin:e.IDENT_RE+"::",keywords:j},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}function wme(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"],s=["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"],o={keyword:a.concat(s),built_in:t,literal:r},l=e.inherit(e.TITLE_MODE,{begin:"[a-zA-Z](\\.?\\w)*"}),c={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},u={className:"string",begin:/"""("*)(?!")(.|\n)*?"""\1/,relevance:1},d={className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},f=e.inherit(d,{illegal:/\n/}),h={className:"subst",begin:/\{/,end:/\}/,keywords:o},p=e.inherit(h,{illegal:/\n/}),g={className:"string",begin:/\$"/,end:'"',illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},e.BACKSLASH_ESCAPE,p]},m={className:"string",begin:/\$@"/,end:'"',contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},h]},y=e.inherit(m,{illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},p]});h.contains=[m,g,d,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,c,e.C_BLOCK_COMMENT_MODE],p.contains=[y,g,f,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,c,e.inherit(e.C_BLOCK_COMMENT_MODE,{illegal:/\n/})];const v={variants:[u,m,g,d,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},k={begin:"<",end:">",contains:[{beginKeywords:"in out"},l]},x=e.IDENT_RE+"(<"+e.IDENT_RE+"(\\s*,\\s*"+e.IDENT_RE+")*>)?(\\[\\])?",j={begin:"@"+e.IDENT_RE,relevance:0};return{name:"C#",aliases:["cs","c#"],keywords:o,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"}},v,c,{beginKeywords:"class interface",relevance:0,end:/[{;=]/,illegal:/[^\s:,]/,contains:[{beginKeywords:"where class"},l,k,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"namespace",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[l,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"record",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[l,k,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:"("+x+"\\s+)+"+e.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,end:/\s*[{;=]/,excludeEnd:!0,keywords:o,contains:[{beginKeywords:n.join(" "),relevance:0},{begin:e.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,contains:[e.TITLE_MODE,k],relevance:0},{match:/\(\)/},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:o,relevance:0,contains:[v,c,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},j]}}const kme=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/},UNICODE_RANGE:{scope:"number",begin:/\b[Uu]\+[0-9A-Fa-f][0-9A-Fa-f?]{0,4}(-[0-9A-Fa-f][0-9A-Fa-f]{0,4})?/},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_-]*/}}),Sme=["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"],jme=["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"],Nme=[...Sme,...jme],Eme=["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(),_me=["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(),Ame=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),Cme=["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","unicode-range","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 Tme(e){const t=e.regex,n=kme(e),r={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},a="and or not only",s=/@-?\w[\w]*(-\w+)*/,o="[a-zA-Z-][a-zA-Z0-9_-]*",l=[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:"\\."+o,relevance:0},n.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+_me.join("|")+")"},{begin:":(:)?("+Ame.join("|")+")"}]},n.CSS_VARIABLE,{className:"attribute",begin:"\\b("+Cme.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[n.BLOCK_COMMENT,n.HEXCOLOR,n.IMPORTANT,n.CSS_NUMBER_MODE,n.UNICODE_RANGE,...l,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...l,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},n.FUNCTION_DISPATCH]},{begin:t.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:s},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:a,attribute:Eme.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...l,n.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+Nme.join("|")+")\\b"}]}}function Ome(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+,\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 Pme(e){const s={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:s,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:s,illegal:/["']/}]}]}}function Rme(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 Mme(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:/\$\{(.*?)\}/}]},s={className:"literal",begin:/\bon|off|true|false|yes|no\b/},o={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:"'''",end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"'},{begin:"'",end:"'"}]},l={begin:/\[/,end:/\]/,contains:[r,s,a,o,n,"self"],relevance:0},c=/[A-Za-z0-9_-]+/,u=/"(\\"|[^"])*"/,d=/'[^']*'/,f=t.either(c,u,d),h=t.concat(f,"(\\s*\\.\\s*",f,")*",t.lookahead(/\s*=\s*[^#\s]/));return{name:"TOML, also INI",aliases:["toml"],case_insensitive:!0,illegal:/\S/,contains:[r,{className:"section",begin:/\[+/,end:/\]+/},{begin:h,className:"attr",starts:{end:/$/,contains:[r,l,s,a,o,n]}}]}}var lo="[0-9](_*[0-9])*",af=`\\.(${lo})`,sf="[0-9a-fA-F](_*[0-9a-fA-F])*",f_={className:"number",variants:[{begin:`(\\b(${lo})((${af})|\\.)?|(${af}))[eE][+-]?(${lo})[fFdD]?\\b`},{begin:`\\b(${lo})((${af})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${af})[fFdD]?\\b`},{begin:`\\b(${lo})[fFdD]\\b`},{begin:`\\b0[xX]((${sf})\\.?|(${sf})?\\.(${sf}))[pP][+-]?(${lo})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${sf})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function kI(e,t,n){return n===-1?"":e.replace(t,r=>kI(e,t,n-1))}function Ime(e){const t=e.regex,n="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",r=n+kI("(?:<"+n+"~~~(?:\\s*,\\s*"+n+"~~~)*>)?",/~~~/g,2),c={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"]},u={className:"meta",begin:"@"+n,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},d={className:"params",begin:/\(/,end:/\)/,keywords:c,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:c,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:[d,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:c,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:c,relevance:0,contains:[u,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,f_,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},f_,u]}}const h_="[A-Za-z$_][0-9A-Za-z$_]*",$me=["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"],Lme=["true","false","null","undefined","NaN","Infinity"],SI=["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"],jI=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],NI=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Dme=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],Bme=[].concat(NI,SI,jI);function zme(e){const t=e.regex,n=(A,{after:z})=>{const T="</"+A[0].slice(1);return A.input.indexOf(T,z)!==-1},r=h_,a={begin:"<>",end:"</>"},s=/<[A-Za-z0-9\\._:-]+\s*\/>/,o={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(A,z)=>{const T=A[0].length+A.index,K=A.input[T];if(K==="<"||K===","){z.ignoreMatch();return}K===">"&&(n(A,{after:T})||z.ignoreMatch());let D;const I=A.input.substring(T);if(D=I.match(/^\s*=/)){z.ignoreMatch();return}if((D=I.match(/^\s+extends\s+/))&&D.index===0){z.ignoreMatch();return}}},l={$pattern:h_,keyword:$me,literal:Lme,built_in:Bme,"variable.language":Dme},c="[0-9](_?[0-9])*",u=`\\.(${c})`,d="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",f={className:"number",variants:[{begin:`(\\b(${d})((${u})|\\.)?|(${u}))[eE][+-]?(${c})\\b`},{begin:`\\b(${d})\\b((${u})\\b|\\.)?|(${u})\\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},h={className:"subst",begin:"\\$\\{",end:"\\}",keywords:l,contains:[]},p={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,h],subLanguage:"xml"}},g={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,h],subLanguage:"css"}},m={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,h],subLanguage:"graphql"}},y={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,h]},k={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]},x=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,g,m,y,{match:/\$\d+/},f];h.contains=x.concat({begin:/\{/,end:/\}/,keywords:l,contains:["self"].concat(x)});const j=[].concat(k,h.contains),w=j.concat([{begin:/(\s*)\(/,end:/\)/,keywords:l,contains:["self"].concat(j)}]),b={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:w},N={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"}}]},E={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:{_:[...SI,...jI]}},O={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},C={variants:[{match:[/function/,/\s+/,r,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[b],illegal:/%/},P={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function $(A){return t.concat("(?!",A.join("|"),")")}const B={match:t.concat(/\b/,$([...NI,"super","import","await"].map(A=>`${A}\\s*\\(`)),r,t.lookahead(/\s*\(/)),className:"title.function",relevance:0},M={begin:t.concat(/\./,t.lookahead(t.concat(r,/(?![0-9A-Za-z$_(])/))),end:r,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},F={match:[/get|set/,/\s+/,r,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},b]},L="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",W={match:[/const|var|let/,/\s+/,r,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(L)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[b]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:l,exports:{PARAMS_CONTAINS:w,CLASS_REFERENCE:E},illegal:/#(?![$_A-Za-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),O,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,g,m,y,k,{match:/\$\d+/},f,E,{scope:"attr",match:r+t.lookahead(":"),relevance:0},W,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[k,e.REGEXP_MODE,{className:"function",begin:L,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:l,contains:w}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:a.begin,end:a.end},{match:s},{begin:o.begin,"on:begin":o.isTrulyOpeningTag,end:o.end}],subLanguage:"xml",contains:[{begin:o.begin,end:o.end,skip:!0,contains:["self"]}]}]},C,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[b,e.inherit(e.TITLE_MODE,{begin:r,className:"title.function"})]},{match:/\.\.\./,relevance:0},M,{match:"\\$"+r,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[b]},B,P,N,F,{match:/\$[(.]/}]}}const Fme="([-+]?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)|NaN|[-+]?Infinity",Ume={scope:"number",match:Fme,relevance:0};function Wme(e){const t={className:"attr",begin:/(("(\\.|[^\\"\r\n])*")|('(\\.|[^\\'\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","json5"],keywords:{literal:r},contains:[t,n,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,a,Ume,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}var co="[0-9](_*[0-9])*",of=`\\.(${co})`,lf="[0-9a-fA-F](_*[0-9a-fA-F])*",Hme={className:"number",variants:[{begin:`(\\b(${co})((${of})|\\.)?|(${of}))[eE][+-]?(${co})[fFdD]?\\b`},{begin:`\\b(${co})((${of})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${of})[fFdD]?\\b`},{begin:`\\b(${co})[fFdD]\\b`},{begin:`\\b0[xX]((${lf})\\.?|(${lf})?\\.(${lf}))[pP][+-]?(${co})[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 Gme(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]},s={className:"variable",begin:"\\$"+e.UNDERSCORE_IDENT_RE},o={className:"string",variants:[{begin:'"""',end:'"""(?=[^"])',contains:[s,a]},{begin:"'",end:"'",illegal:/\n/,contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/,contains:[e.BACKSLASH_ESCAPE,s,a]}]};a.contains.push(o);const l={className:"meta",begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+e.UNDERSCORE_IDENT_RE+")?"},c={className:"meta",begin:"@"+e.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/,end:/\)/,contains:[e.inherit(o,{className:"string"}),"self"]}]},u=Hme,d=e.COMMENT("/\\*","\\*/",{contains:[e.C_BLOCK_COMMENT_MODE]}),f={variants:[{className:"type",begin:e.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/,contains:[]}]},h=f;return h.variants[1].contains=[f],f.variants[1].contains=[h],{name:"Kotlin",aliases:["kt","kts"],keywords:t,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,d,n,r,l,c,{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:[f,e.C_LINE_COMMENT_MODE,d],relevance:0},e.C_LINE_COMMENT_MODE,d,l,c,o,e.C_NUMBER_MODE]},d]},{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},l,c]},o,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:`
195
- `},u]}}const qme=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/},UNICODE_RANGE:{scope:"number",begin:/\b[Uu]\+[0-9A-Fa-f][0-9A-Fa-f?]{0,4}(-[0-9A-Fa-f][0-9A-Fa-f]{0,4})?/},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_-]*/}}),Kme=["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"],Vme=["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"],Yme=[...Kme,...Vme],Xme=["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(),EI=["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(),_I=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),Qme=["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","unicode-range","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(),Zme=EI.concat(_I).sort().reverse();function Jme(e){const t=qme(e),n=Zme,r="and or not only",a="[\\w-]+",s="("+a+"|@\\{"+a+"\\})",o=[],l=[],c=function(x){return{className:"string",begin:"~?"+x+".*?"+x}},u=function(x,j,w){return{className:x,begin:j,relevance:w}},d={$pattern:/[a-z-]+/,keyword:r,attribute:Xme.join(" ")},f={begin:"\\(",end:"\\)",contains:l,keywords:d,relevance:0};l.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,c("'"),c('"'),t.CSS_NUMBER_MODE,{begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]",excludeEnd:!0}},t.UNICODE_RANGE,t.HEXCOLOR,f,u("variable","@@?"+a,10),u("variable","@\\{"+a+"\\}"),u("built_in","~?`[^`]*?`"),{className:"attribute",begin:a+"\\s*:",end:":",returnBegin:!0,excludeEnd:!0},t.IMPORTANT,{beginKeywords:"and not"},t.FUNCTION_DISPATCH);const h=l.concat({begin:/\{/,end:/\}/,contains:o}),p={beginKeywords:"when",endsWithParent:!0,contains:[{beginKeywords:"and not"}].concat(l)},g={begin:s+"\\s*:",returnBegin:!0,end:/[;}]/,relevance:0,contains:[{begin:/-(webkit|moz|ms|o)-/},t.CSS_VARIABLE,{className:"attribute",begin:"\\b("+Qme.join("|")+")\\b",end:/(?=:)/,starts:{endsWithParent:!0,illegal:"[<=$]",relevance:0,contains:l}}]},m={className:"keyword",begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{end:"[;{}]",keywords:d,returnEnd:!0,contains:l,relevance:0}},y={className:"variable",variants:[{begin:"@"+a+"\\s*:",relevance:15},{begin:"@"+a}],starts:{end:"[;}]",returnEnd:!0,contains:h}},v={variants:[{begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:s,end:/\{/}],returnBegin:!0,returnEnd:!0,illegal:`[<='$"]`,relevance:0,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,p,u("keyword","all\\b"),u("variable","@\\{"+a+"\\}"),{begin:"\\b("+Yme.join("|")+")\\b",className:"selector-tag"},t.CSS_NUMBER_MODE,u("selector-tag",s,0),u("selector-id","#"+s),u("selector-class","\\."+s,0),u("selector-tag","&",0),t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",begin:":("+EI.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+_I.join("|")+")"},{begin:/\(/,end:/\)/,relevance:0,contains:h},{begin:"!important"},t.FUNCTION_DISPATCH]},k={begin:a+`:(:)?(${n.join("|")})`,returnBegin:!0,contains:[v]};return o.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,m,y,k,g,v,p,t.FUNCTION_DISPATCH),{name:"Less",case_insensitive:!0,illegal:`[=>'/<($"]`,contains:o}}function ege(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 tge(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*(?=[:+?]?=)"},s={className:"meta",begin:/^\.PHONY:/,end:/$/,keywords:{$pattern:/[\.\w]+/,keyword:".PHONY"}},o={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,s,o]}}function nge(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}]},s={className:"bullet",begin:"^[ ]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},o={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},l=/[A-Za-z][A-Za-z0-9+.-]*/,c={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:t.concat(/\[.+?\]\(/,l,/:\/\/.*?\)/),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}]},u={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},d={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},f=e.inherit(u,{contains:[]}),h=e.inherit(d,{contains:[]});u.contains.push(h),d.contains.push(f);let p=[n,c];return[u,d,f,h].forEach(v=>{v.contains=v.contains.concat(p)}),p=p.concat(u,d),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:p},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:p}]}]},n,s,u,d,{className:"quote",begin:"^>\\s+",contains:p,end:"$"},a,r,c,o,{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}function rge(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_]*/,l={"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"]},c={$pattern:n,keyword:["@interface","@class","@protocol","@implementation"]};return{name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"],keywords:l,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:"("+c.keyword.join("|")+")\\b",end:/(\{|$)/,excludeEnd:!0,keywords:c,contains:[e.UNDERSCORE_TITLE_MODE]},{begin:"\\."+e.UNDERSCORE_IDENT_RE,relevance:0}]}}function age(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(" ")},s={className:"subst",begin:"[$@]\\{",end:"\\}",keywords:a},o={begin:/->\{/,end:/\}/},l={scope:"attr",match:/\s+:\s*\w+(\s*\(.*?\))?/},c={scope:"variable",variants:[{begin:/\$\d/},{begin:t.concat(/[$%@](?!")(\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/,"(?![A-Za-z])(?![@$%])")},{begin:/[$%@](?!")[^\s\w{=]|\$=/,relevance:0}],contains:[l]},u={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},d=[e.BACKSLASH_ESCAPE,s,c],f=[/!/,/\//,/\|/,/\?/,/'/,/"/,/#/],h=(m,y,v="\\1")=>{const k=v==="\\1"?v:t.concat(v,y);return t.concat(t.concat("(?:",m,")"),y,/(?:\\.|[^\\\/])*?/,k,/(?:\\.|[^\\\/])*?/,v,r)},p=(m,y,v)=>t.concat(t.concat("(?:",m,")"),y,/(?:\\.|[^\\\/])*?/,v,r),g=[c,e.HASH_COMMENT_MODE,e.COMMENT(/^=\w/,/=cut/,{endsWithParent:!0}),o,{className:"string",contains:d,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}]},u,{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:h("s|tr|y",t.either(...f,{capture:!0}))},{begin:h("s|tr|y","\\(","\\)")},{begin:h("s|tr|y","\\[","\\]")},{begin:h("s|tr|y","\\{","\\}")}],relevance:2},{className:"regexp",variants:[{begin:/(m|qr)\/\//,relevance:0},{begin:p("(?:m|qr)?",/\//,/\//)},{begin:p("m|qr",t.either(...f,{capture:!0}),/\1/)},{begin:p("m|qr",/\(/,/\)/)},{begin:p("m|qr",/\[/,/\]/)},{begin:p("m|qr",/\{/,/\}/)}]}]},{className:"function",beginKeywords:"sub method",end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE,l]},{className:"class",beginKeywords:"class",end:"[;{]",excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE,l,u]},{begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$",subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}]}];return s.contains=g,o.contains=g,{name:"Perl",aliases:["pl","pm"],keywords:a,contains:g}}function ige(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),s=t.concat(/[A-Z]+/,n),o={scope:"variable",match:"\\$+"+r},l={scope:"meta",variants:[{begin:/<\?php/,relevance:10},{begin:/<\?=/},{begin:/<\?/,relevance:.1},{begin:/\?>/}]},c={scope:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]},u=e.inherit(e.APOS_STRING_MODE,{illegal:null}),d=e.inherit(e.QUOTE_STRING_MODE,{illegal:null,contains:e.QUOTE_STRING_MODE.contains.concat(c)}),f={begin:/<<<[ \t]*(?:(\w+)|"(\w+)")\n/,end:/[ \t]*(\w+)\b/,contains:e.QUOTE_STRING_MODE.contains.concat(c),"on:begin":(M,F)=>{F.data._beginMatch=M[1]||M[2]},"on:end":(M,F)=>{F.data._beginMatch!==M[1]&&F.ignoreMatch()}},h=e.END_SAME_AS_BEGIN({begin:/<<<[ \t]*'(\w+)'\n/,end:/[ \t]*(\w+)\b/}),p=`[
196
- ]`,g={scope:"string",variants:[d,u,f,h]},m={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},y=["false","null","true"],v=["__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"],k=["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"],j={keyword:v,literal:(M=>{const F=[];return M.forEach(L=>{F.push(L),L.toLowerCase()===L?F.push(L.toUpperCase()):F.push(L.toLowerCase())}),F})(y),built_in:k},w=M=>M.map(F=>F.replace(/\|\d+$/,"")),b={variants:[{match:[/new/,t.concat(p,"+"),t.concat("(?!",w(k).join("\\b|"),"\\b)"),a],scope:{1:"keyword",4:"title.class"}}]},N=t.concat(r,"\\b(?!\\()"),E={variants:[{match:[t.concat(/::/,t.lookahead(/(?!class\b)/)),N],scope:{2:"variable.constant"}},{match:[/::/,/class/],scope:{2:"variable.language"}},{match:[a,t.concat(/::/,t.lookahead(/(?!class\b)/)),N],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"}}]},O={scope:"attr",match:t.concat(r,t.lookahead(":"),t.lookahead(/(?!::)/))},C={relevance:0,begin:/\(/,end:/\)/,keywords:j,contains:[O,o,E,e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE,e.HASH_COMMENT_MODE,g,m,b]},P={relevance:0,match:[/\b/,t.concat("(?!fn\\b|function\\b|",w(v).join("\\b|"),"|",w(k).join("\\b|"),"\\b)"),r,t.concat(p,"*"),t.lookahead(/(?=\()/)],scope:{3:"title.function.invoke"},contains:[C]};C.contains.push(P);const $=[O,E,e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE,e.HASH_COMMENT_MODE,g,m,b],B={begin:t.concat(/#\[\s*\\?/,t.either(a,s)),beginScope:"meta",end:/]/,endScope:"meta",keywords:{literal:y,keyword:["new","array"]},contains:[{begin:/\[/,end:/]/,keywords:{literal:y,keyword:["new","array"]},contains:["self",...$]},...$,{scope:"meta",variants:[{match:a},{match:s}]}]};return{case_insensitive:!1,keywords:j,contains:[B,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}]}},l,{scope:"variable.language",match:/\$this\b/},o,P,E,{match:[/const/,/\s/,r],scope:{1:"keyword",3:"variable.constant"}},b,{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:j,contains:["self",B,o,E,e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE,e.HASH_COMMENT_MODE,g,m]}]},{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]},g,m]}}function sge(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 oge(e){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}function lge(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"],l={$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"]},c={className:"meta",begin:/^(>>>|\.\.\.) /},u={className:"subst",begin:/\{/,end:/\}/,keywords:l,illegal:/#/},d={begin:/\{\{/,relevance:0},f={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,c],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,c],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,c,d,u]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,c,d,u]},{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,d,u]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,d,u]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},h="[0-9](_?[0-9])*",p=`(\\b(${h}))?\\.(${h})|\\b(${h})\\.`,g=`\\b|${r.join("|")}`,m={className:"number",relevance:0,variants:[{begin:`(\\b(${h})|(${p}))[eE][+-]?(${h})[jJ]?(?=${g})`},{begin:`(${p})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${g})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${g})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${g})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${g})`},{begin:`\\b(${h})[jJ](?=${g})`}]},y={className:"comment",begin:t.lookahead(/# type:/),end:/$/,keywords:l,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},v={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:["self",c,m,f,e.HASH_COMMENT_MODE]}]};return u.contains=[f,m,c],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:l,illegal:/(<\/|\?)|=>/,contains:[c,m,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},f,y,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,n],scope:{1:"keyword",3:"title.function"},contains:[v]},{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:[m,v,f]}]}}function cge(e){return{aliases:["pycon"],contains:[{className:"meta.prompt",starts:{end:/ |$/,starts:{end:"$",subLanguage:"python"}},variants:[{begin:/^>>>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]}}function uge(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=/[=!<>:]=|\|\||&&|:::?|<-|<<-|->>|->|\|>|[-+*\/?!$&|:<=>@^~]|\*\*/,s=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:[s,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:s},{begin:"`",end:"`",contains:[{begin:/\\./}]}]}}function dge(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+)*/),o={"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"]},l={className:"doctag",begin:"@[A-Za-z]+"},c={begin:"#<",end:">"},u=[e.COMMENT("#","$",{contains:[l]}),e.COMMENT("^=begin","^=end",{contains:[l],relevance:10}),e.COMMENT("^__END__",e.MATCH_NOTHING_RE)],d={className:"subst",begin:/#\{/,end:/\}/,keywords:o},f={className:"string",contains:[e.BACKSLASH_ESCAPE,d],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,d]})]}]},h="[1-9](_?[0-9])*|0",p="[0-9](_?[0-9])*",g={className:"number",relevance:0,variants:[{begin:`\\b(${h})(\\.(${p}))?([eE][+-]?(${p})|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"}]},m={variants:[{match:/\(\)/},{className:"params",begin:/\(/,end:/(?=\))/,excludeBegin:!0,endsParent:!0,keywords:o}]},b=[f,{variants:[{match:[/class\s+/,a,/\s+<\s+/,a]},{match:[/\b(class|module)\s+/,a]}],scope:{2:"title.class",4:"title.class.inherited"},keywords:o},{match:[/(include|extend)\s+/,a],scope:{2:"title.class"},keywords:o},{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:[m]},{begin:e.IDENT_RE+"::"},{className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol",begin:":(?!\\s)",contains:[f,{begin:n}],relevance:0},g,{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{className:"params",begin:/\|(?!=)/,end:/\|/,excludeBegin:!0,excludeEnd:!0,relevance:0,keywords:o},{begin:"("+e.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[{className:"regexp",contains:[e.BACKSLASH_ESCAPE,d],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(c,u),relevance:0}].concat(c,u);d.contains=b,m.contains=b;const C=[{begin:/^\s*=>/,starts:{end:"$",contains:b}},{className:"meta.prompt",begin:"^("+"[>?]>"+"|"+"[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]"+"|"+"(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>"+")(?=[ ])",starts:{end:"$",keywords:o,contains:b}}];return u.unshift(c),{name:"Ruby",aliases:["rb","gemspec","podspec","thor","irb"],keywords:o,illegal:/\/\*/,contains:[e.SHEBANG({binary:"ruby"})].concat(C).concat(u).concat(b)}}function fge(e){const t=e.regex,n=/(r#)?/,r=t.concat(n,e.UNDERSCORE_IDENT_RE),a=t.concat(n,e.IDENT_RE),s={className:"title.function.invoke",relevance:0,begin:t.concat(/\b/,/(?!let|for|while|if|else|match\b)/,a,t.lookahead(/\s*\(/))},o="([ui](8|16|32|64|128|size)|f(32|64))?",l=["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"],c=["true","false","Some","None","Ok","Err"],u=["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!"],d=["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:d,keyword:l,literal:c,built_in:u},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_]+)"+o},{begin:"\\b0o([0-7_]+)"+o},{begin:"\\b0x([A-Fa-f0-9_]+)"+o},{begin:"\\b(\\d[\\d_]*(\\.[0-9_]+)?([eE][+-]?[0-9_]+)?)"+o}],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:u,type:d}},{className:"punctuation",begin:"->"},s]}}const hge=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/},UNICODE_RANGE:{scope:"number",begin:/\b[Uu]\+[0-9A-Fa-f][0-9A-Fa-f?]{0,4}(-[0-9A-Fa-f][0-9A-Fa-f]{0,4})?/},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_-]*/}}),pge=["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"],mge=["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"],gge=[...pge,...mge],vge=["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(),yge=["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(),bge=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),xge=["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","unicode-range","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 wge(e){const t=hge(e),n=bge,r=yge,a="@[a-z-]+",s="and or not only",l={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("+gge.join("|")+")\\b",relevance:0},{className:"selector-pseudo",begin:":("+r.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+n.join("|")+")"},l,{begin:/\(/,end:/\)/,contains:[t.CSS_NUMBER_MODE]},t.CSS_VARIABLE,{className:"attribute",begin:"\\b("+xge.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,l,t.HEXCOLOR,t.CSS_NUMBER_MODE,t.UNICODE_RANGE,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:s,attribute:vge.join(" ")},contains:[{begin:a,className:"keyword"},{begin:/[a-z-]+(?=:)/,className:"attribute"},l,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,t.HEXCOLOR,t.CSS_NUMBER_MODE]},t.FUNCTION_DISPATCH]}}function kge(e){return{name:"Shell Session",aliases:["console","shellsession"],contains:[{className:"meta.prompt",begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/,subLanguage:"bash"}}]}}function Sge(e){const t=e.regex,n=e.COMMENT("--","$"),r={scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},a={begin:/"/,end:/"/,contains:[{match:/""/}]},s=["true","false","unknown"],o=["double precision","large object","with timezone","without timezone"],l=["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"],c=["add","asc","collation","desc","final","first","last","view"],u=["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"],d=["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"],f=["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"],h=["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"],p=d,g=[...u,...c].filter(w=>!d.includes(w)),m={scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},y={scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},v={match:t.concat(/\b/,t.either(...p),/\s*\(/),relevance:0,keywords:{built_in:p}};function k(w){return t.concat(/\b/,t.either(...w.map(b=>b.replace(/\s+/,"\\s+"))),/\b/)}const x={scope:"keyword",match:k(h),relevance:0};function j(w,{exceptions:b,when:N}={}){const E=N;return b=b||[],w.map(O=>O.match(/\|\d+$/)||b.includes(O)?O:E(O)?`${O}|0`:O)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:j(g,{when:w=>w.length<3}),literal:s,type:l,built_in:f},contains:[{scope:"type",match:k(o)},x,v,m,r,a,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,n,y]}}function AI(e){return e?typeof e=="string"?e:e.source:null}function pc(e){return it("(?=",e,")")}function it(...e){return e.map(n=>AI(n)).join("")}function jge(e){const t=e[e.length-1];return typeof t=="object"&&t.constructor===Object?(e.splice(e.length-1,1),t):{}}function En(...e){return"("+(jge(e).capture?"":"?:")+e.map(r=>AI(r)).join("|")+")"}const A0=e=>it(/\b/,e,/\w$/.test(e)?/\b/:/\B/),Nge=["Protocol","Type"].map(A0),p_=["init","self"].map(A0),Ege=["Any","Self"],rv=["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"],m_=["false","nil","true"],_ge=["assignment","associativity","higherThan","left","lowerThan","none","right"],Age=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warning"],g_=["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"],CI=En(/[/=\-+!*%<>&|^~?]/,/[\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]/),TI=En(CI,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),av=it(CI,TI,"*"),OI=En(/[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]/),ap=En(OI,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),Jr=it(OI,ap,"*"),cf=it(/[A-Z]/,ap,"*"),Cge=["attached","autoclosure",it(/convention\(/,En("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","freestanding","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",it(/objc\(/,Jr,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","resultBuilder","Sendable","testable","UIApplicationMain","unchecked","unknown","usableFromInline","warn_unqualified_access"],Tge=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"];function Oge(e){const t={match:/\s+/,relevance:0},n=e.COMMENT("/\\*","\\*/",{contains:["self"]}),r=[e.C_LINE_COMMENT_MODE,n],a={match:[/\./,En(...Nge,...p_)],className:{2:"keyword"}},s={match:it(/\./,En(...rv)),relevance:0},o=rv.filter(be=>typeof be=="string").concat(["_|0"]),l=rv.filter(be=>typeof be!="string").concat(Ege).map(A0),c={variants:[{className:"keyword",match:En(...l,...p_)}]},u={$pattern:En(/\b\w+/,/#\w+/),keyword:o.concat(Age),literal:m_},d=[a,s,c],f={match:it(/\./,En(...g_)),relevance:0},h={className:"built_in",match:it(/\b/,En(...g_),/(?=\()/)},p=[f,h],g={match:/->/,relevance:0},m={className:"operator",relevance:0,variants:[{match:av},{match:`\\.(\\.|${TI})+`}]},y=[g,m],v="([0-9]_*)+",k="([0-9a-fA-F]_*)+",x={className:"number",relevance:0,variants:[{match:`\\b(${v})(\\.(${v}))?([eE][+-]?(${v}))?\\b`},{match:`\\b0x(${k})(\\.(${k}))?([pP][+-]?(${v}))?\\b`},{match:/\b0o([0-7]_*)+\b/},{match:/\b0b([01]_*)+\b/}]},j=(be="")=>({className:"subst",variants:[{match:it(/\\/,be,/[0\\tnr"']/)},{match:it(/\\/,be,/u\{[0-9a-fA-F]{1,8}\}/)}]}),w=(be="")=>({className:"subst",match:it(/\\/,be,/[\t ]*(?:[\r\n]|\r\n)/)}),b=(be="")=>({className:"subst",label:"interpol",begin:it(/\\/,be,/\(/),end:/\)/}),N=(be="")=>({begin:it(be,/"""/),end:it(/"""/,be),contains:[j(be),w(be),b(be)]}),E=(be="")=>({begin:it(be,/"/),end:it(/"/,be),contains:[j(be),b(be)]}),O={className:"string",variants:[N(),N("#"),N("##"),N("###"),E(),E("#"),E("##"),E("###")]},C=[e.BACKSLASH_ESCAPE,{begin:/\[/,end:/\]/,relevance:0,contains:[e.BACKSLASH_ESCAPE]}],P={begin:/\/[^\s](?=[^/\n]*\/)/,end:/\//,contains:C},$=be=>{const $e=it(be,/\//),he=it(/\//,be);return{begin:$e,end:he,contains:[...C,{scope:"comment",begin:`#(?!.*${he})`,end:/$/}]}},B={scope:"regexp",variants:[$("###"),$("##"),$("#"),P]},M={match:it(/`/,Jr,/`/)},F={className:"variable",match:/\$\d+/},L={className:"variable",match:`\\$${ap}+`},W=[M,F,L],A={match:/(@|#(un)?)available/,scope:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:Tge,contains:[...y,x,O]}]}},z={scope:"keyword",match:it(/@/,En(...Cge),pc(En(/\(/,/\s+/)))},T={scope:"meta",match:it(/@/,Jr)},K=[A,z,T],D={match:pc(/\b[A-Z]/),relevance:0,contains:[{className:"type",match:it(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,ap,"+")},{className:"type",match:cf,relevance:0},{match:/[?!]+/,relevance:0},{match:/\.\.\./,relevance:0},{match:it(/\s+&\s+/,pc(cf)),relevance:0}]},I={begin:/</,end:/>/,keywords:u,contains:[...r,...d,...K,g,D]};D.contains.push(I);const ce={match:it(Jr,/\s*:/),keywords:"_|0",relevance:0},ge={begin:/\(/,end:/\)/,relevance:0,keywords:u,contains:["self",ce,...r,B,...d,...p,...y,x,O,...W,...K,D]},ve={begin:/</,end:/>/,keywords:"repeat each",contains:[...r,D]},Ce={begin:En(pc(it(Jr,/\s*:/)),pc(it(Jr,/\s+/,Jr,/\s*:/))),end:/:/,relevance:0,contains:[{className:"keyword",match:/\b_\b/},{className:"params",match:Jr}]},Q={begin:/\(/,end:/\)/,keywords:u,contains:[Ce,...r,...d,...y,x,O,...K,D,ge],endsParent:!0,illegal:/["']/},X={match:[/(func|macro)/,/\s+/,En(M.match,Jr,av)],className:{1:"keyword",3:"title.function"},contains:[ve,Q,t],illegal:[/\[/,/%/]},ie={match:[/\b(?:subscript|init[?!]?)/,/\s*(?=[<(])/],className:{1:"keyword"},contains:[ve,Q,t],illegal:/\[|%/},fe={match:[/operator/,/\s+/,av],className:{1:"keyword",3:"title"}},J={begin:[/precedencegroup/,/\s+/,cf],className:{1:"keyword",3:"title"},contains:[D],keywords:[..._ge,...m_],end:/}/},ye={match:[/class\b/,/\s+/,/func\b/,/\s+/,/\b[A-Za-z_][A-Za-z0-9_]*\b/],scope:{1:"keyword",3:"keyword",5:"title.function"}},je={match:[/class\b/,/\s+/,/var\b/],scope:{1:"keyword",3:"keyword"}},_e={begin:[/(struct|protocol|class|extension|enum|actor)/,/\s+/,Jr,/\s*/],beginScope:{1:"keyword",3:"title.class"},keywords:u,contains:[ve,...d,{begin:/:/,end:/\{/,keywords:u,contains:[{scope:"title.class.inherited",match:cf},...d],relevance:0}]};for(const be of O.variants){const $e=be.contains.find(Je=>Je.label==="interpol");$e.keywords=u;const he=[...d,...p,...y,x,O,...W];$e.contains=[...he,{begin:/\(/,end:/\)/,contains:["self",...he]}]}return{name:"Swift",keywords:u,contains:[...r,X,ie,ye,je,_e,fe,J,{beginKeywords:"import",end:/$/,contains:[...r],relevance:0},B,...d,...p,...y,x,O,...W,...K,D,ge]}}const ip="[A-Za-z$_][0-9A-Za-z$_]*",PI=["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"],RI=["true","false","null","undefined","NaN","Infinity"],MI=["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"],II=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],$I=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],LI=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],DI=[].concat($I,MI,II);function Pge(e){const t=e.regex,n=(A,{after:z})=>{const T="</"+A[0].slice(1);return A.input.indexOf(T,z)!==-1},r=ip,a={begin:"<>",end:"</>"},s=/<[A-Za-z0-9\\._:-]+\s*\/>/,o={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(A,z)=>{const T=A[0].length+A.index,K=A.input[T];if(K==="<"||K===","){z.ignoreMatch();return}K===">"&&(n(A,{after:T})||z.ignoreMatch());let D;const I=A.input.substring(T);if(D=I.match(/^\s*=/)){z.ignoreMatch();return}if((D=I.match(/^\s+extends\s+/))&&D.index===0){z.ignoreMatch();return}}},l={$pattern:ip,keyword:PI,literal:RI,built_in:DI,"variable.language":LI},c="[0-9](_?[0-9])*",u=`\\.(${c})`,d="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",f={className:"number",variants:[{begin:`(\\b(${d})((${u})|\\.)?|(${u}))[eE][+-]?(${c})\\b`},{begin:`\\b(${d})\\b((${u})\\b|\\.)?|(${u})\\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},h={className:"subst",begin:"\\$\\{",end:"\\}",keywords:l,contains:[]},p={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,h],subLanguage:"xml"}},g={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,h],subLanguage:"css"}},m={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,h],subLanguage:"graphql"}},y={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,h]},k={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]},x=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,g,m,y,{match:/\$\d+/},f];h.contains=x.concat({begin:/\{/,end:/\}/,keywords:l,contains:["self"].concat(x)});const j=[].concat(k,h.contains),w=j.concat([{begin:/(\s*)\(/,end:/\)/,keywords:l,contains:["self"].concat(j)}]),b={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:w},N={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"}}]},E={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:{_:[...MI,...II]}},O={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},C={variants:[{match:[/function/,/\s+/,r,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[b],illegal:/%/},P={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function $(A){return t.concat("(?!",A.join("|"),")")}const B={match:t.concat(/\b/,$([...$I,"super","import","await"].map(A=>`${A}\\s*\\(`)),r,t.lookahead(/\s*\(/)),className:"title.function",relevance:0},M={begin:t.concat(/\./,t.lookahead(t.concat(r,/(?![0-9A-Za-z$_(])/))),end:r,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},F={match:[/get|set/,/\s+/,r,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},b]},L="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",W={match:[/const|var|let/,/\s+/,r,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(L)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[b]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:l,exports:{PARAMS_CONTAINS:w,CLASS_REFERENCE:E},illegal:/#(?![$_A-Za-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),O,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,g,m,y,k,{match:/\$\d+/},f,E,{scope:"attr",match:r+t.lookahead(":"),relevance:0},W,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[k,e.REGEXP_MODE,{className:"function",begin:L,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:l,contains:w}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:a.begin,end:a.end},{match:s},{begin:o.begin,"on:begin":o.isTrulyOpeningTag,end:o.end}],subLanguage:"xml",contains:[{begin:o.begin,end:o.end,skip:!0,contains:["self"]}]}]},C,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[b,e.inherit(e.TITLE_MODE,{begin:r,className:"title.function"})]},{match:/\.\.\./,relevance:0},M,{match:"\\$"+r,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[b]},B,P,N,F,{match:/\$[(.]/}]}}function Rge(e){const t=e.regex,n=Pge(e),r=ip,a=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],s={begin:[/namespace/,/\s+/,e.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},o={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:a},contains:[n.exports.CLASS_REFERENCE]},l={className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/},c=["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"],u={$pattern:ip,keyword:PI.concat(c),literal:RI,built_in:DI.concat(a),"variable.language":LI},d={className:"meta",begin:"@"+r},f=(m,y,v)=>{const k=m.contains.findIndex(x=>x.label===y);if(k===-1)throw new Error("can not find mode to replace");m.contains.splice(k,1,v)};Object.assign(n.keywords,u),n.exports.PARAMS_CONTAINS.push(d);const h=n.contains.find(m=>m.scope==="attr"),p=Object.assign({},h,{match:t.concat(r,t.lookahead(/\s*\?:/))});n.exports.PARAMS_CONTAINS.push([n.exports.CLASS_REFERENCE,h,p]),n.contains=n.contains.concat([d,s,o,p]),f(n,"shebang",e.SHEBANG()),f(n,"use_strict",l);const g=n.contains.find(m=>m.label==="func.def");return g.relevance=0,Object.assign(n,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),n}function Mge(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}/,s=/\d{4}-\d{1,2}-\d{1,2}/,o=/(\d|1[012])(:\d+){0,2} *(AM|PM)/,l=/\d{1,2}(:\d{1,2}){1,2}/,c={className:"literal",variants:[{begin:t.concat(/# */,t.either(s,a),/ *#/)},{begin:t.concat(/# */,l,/ *#/)},{begin:t.concat(/# */,o,/ *#/)},{begin:t.concat(/# */,t.either(s,a),/ +/,t.either(o,l),/ *#/)}]},u={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])|[%&])?/}]},d={className:"label",begin:/^\w+:/},f=e.COMMENT(/'''/,/$/,{contains:[{className:"doctag",begin:/<\/?/,end:/>/}]}),h=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,c,u,d,f,h,{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:[h]}]}}function Ige(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"}},s={className:"variable",begin:/\$[\w_]+/},o={match:/(\((?!;)|\))+/,className:"punctuation",relevance:0},l={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/},c={match:/(i32|i64|f32|f64)(?!\.)/,className:"type"},u={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"}},s,o,a,e.QUOTE_STRING_MODE,c,u,l]}}function $ge(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]+;/},s={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},o=e.inherit(s,{begin:/\(/,end:/\)/}),l=e.inherit(e.APOS_STRING_MODE,{className:"string"}),c=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),u={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:[s,c,l,o,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[s,o,c,l]}]}]},e.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},a,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[c]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[u],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[u],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:u}]},{className:"tag",begin:t.concat(/<\//,t.lookahead(t.concat(n,/>/))),contains:[{className:"name",begin:n,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}function Lge(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:/\}/}]},s={className:"string",relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:"char.escape",relevance:0}]},o={className:"string",relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,a]},l=e.inherit(o,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),h={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"},p={end:",",endsWithParent:!0,excludeEnd:!0,keywords:t,relevance:0},g={begin:/\{/,end:/\}/,contains:[p],illegal:"\\n",relevance:0},m={begin:"\\[",end:"\\]",contains:[p],illegal:"\\n",relevance:0},y=[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}},h,{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},g,m,s,o],v=[...y];return v.pop(),v.push(l),p.contains=v,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:y}}const Dge={arduino:vme,bash:yme,c:bme,cpp:xme,csharp:wme,css:Tme,diff:Ome,go:Pme,graphql:Rme,ini:Mme,java:Ime,javascript:zme,json:Wme,kotlin:Gme,less:Jme,lua:ege,makefile:tge,markdown:nge,objectivec:rge,perl:age,php:ige,"php-template":sge,plaintext:oge,python:lge,"python-repl":cge,r:uge,ruby:dge,rust:fge,scss:wge,shell:kge,sql:Sge,swift:Oge,typescript:Rge,vbnet:Mge,wasm:Ige,xml:$ge,yaml:Lge};function BI(e){return e instanceof Map?e.clear=e.delete=e.set=function(){throw new Error("map is read-only")}:e instanceof Set&&(e.add=e.clear=e.delete=function(){throw new Error("set is read-only")}),Object.freeze(e),Object.getOwnPropertyNames(e).forEach(t=>{const n=e[t],r=typeof n;(r==="object"||r==="function")&&!Object.isFrozen(n)&&BI(n)}),e}class v_{constructor(t){t.data===void 0&&(t.data={}),this.data=t.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function zI(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;")}function ci(e,...t){const n=Object.create(null);for(const r in e)n[r]=e[r];return t.forEach(function(r){for(const a in r)n[a]=r[a]}),n}const Bge="</span>",y_=e=>!!e.scope,zge=(e,{prefix:t})=>{if(e.startsWith("language:"))return e.replace("language:","language-");if(e.includes(".")){const n=e.split(".");return[`${t}${n.shift()}`,...n.map((r,a)=>`${r}${"_".repeat(a+1)}`)].join(" ")}return`${t}${e}`};class Fge{constructor(t,n){this.buffer="",this.classPrefix=n.classPrefix,t.walk(this)}addText(t){this.buffer+=zI(t)}openNode(t){if(!y_(t))return;const n=zge(t.scope,{prefix:this.classPrefix});this.span(n)}closeNode(t){y_(t)&&(this.buffer+=Bge)}value(){return this.buffer}span(t){this.buffer+=`<span class="${t}">`}}const b_=(e={})=>{const t={children:[]};return Object.assign(t,e),t};class C0{constructor(){this.rootNode=b_(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(t){this.top.children.push(t)}openNode(t){const n=b_({scope:t});this.add(n),this.stack.push(n)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(t){return this.constructor._walk(t,this.rootNode)}static _walk(t,n){return typeof n=="string"?t.addText(n):n.children&&(t.openNode(n),n.children.forEach(r=>this._walk(t,r)),t.closeNode(n)),t}static _collapse(t){typeof t!="string"&&t.children&&(t.children.every(n=>typeof n=="string")?t.children=[t.children.join("")]:t.children.forEach(n=>{C0._collapse(n)}))}}class Uge extends C0{constructor(t){super(),this.options=t}addText(t){t!==""&&this.add(t)}startScope(t){this.openNode(t)}endScope(){this.closeNode()}__addSublanguage(t,n){const r=t.root;n&&(r.scope=`language:${n}`),this.add(r)}toHTML(){return new Fge(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}}function Wu(e){return e?typeof e=="string"?e:e.source:null}function FI(e){return Fs("(?=",e,")")}function Wge(e){return Fs("(?:",e,")*")}function Hge(e){return Fs("(?:",e,")?")}function Fs(...e){return e.map(n=>Wu(n)).join("")}function Gge(e){const t=e[e.length-1];return typeof t=="object"&&t.constructor===Object?(e.splice(e.length-1,1),t):{}}function T0(...e){return"("+(Gge(e).capture?"":"?:")+e.map(r=>Wu(r)).join("|")+")"}function UI(e){return new RegExp(e.toString()+"|").exec("").length-1}function qge(e,t){const n=e&&e.exec(t);return n&&n.index===0}const Kge=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function O0(e,{joinWith:t}){let n=0;return e.map(r=>{n+=1;const a=n;let s=Wu(r),o="";for(;s.length>0;){const l=Kge.exec(s);if(!l){o+=s;break}o+=s.substring(0,l.index),s=s.substring(l.index+l[0].length),l[0][0]==="\\"&&l[1]?o+="\\"+String(Number(l[1])+a):(o+=l[0],l[0]==="("&&n++)}return o}).map(r=>`(${r})`).join(t)}const Vge=/\b\B/,WI="[a-zA-Z]\\w*",P0="[a-zA-Z_]\\w*",HI="\\b\\d+(\\.\\d+)?",GI="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",qI="\\b(0b[01]+)",Yge="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",Xge=(e={})=>{const t=/^#![ ]*\//;return e.binary&&(e.begin=Fs(t,/.*\b/,e.binary,/\b.*/)),ci({scope:"meta",begin:t,end:/$/,relevance:0,"on:begin":(n,r)=>{n.index!==0&&r.ignoreMatch()}},e)},Hu={begin:"\\\\[\\s\\S]",relevance:0},Qge={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[Hu]},Zge={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[Hu]},Jge={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/},km=function(e,t,n={}){const r=ci({scope:"comment",begin:e,end:t,contains:[]},n);r.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 a=T0("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 r.contains.push({begin:Fs(/[ ]+/,"(",a,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),r},eve=km("//","$"),tve=km("/\\*","\\*/"),nve=km("#","$"),rve={scope:"number",begin:HI,relevance:0},ave={scope:"number",begin:GI,relevance:0},ive={scope:"number",begin:qI,relevance:0},sve={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[Hu,{begin:/\[/,end:/\]/,relevance:0,contains:[Hu]}]},ove={scope:"title",begin:WI,relevance:0},lve={scope:"title",begin:P0,relevance:0},cve={begin:"\\.\\s*"+P0,relevance:0},uve=function(e){return Object.assign(e,{"on:begin":(t,n)=>{n.data._beginMatch=t[1]},"on:end":(t,n)=>{n.data._beginMatch!==t[1]&&n.ignoreMatch()}})};var uf=Object.freeze({__proto__:null,APOS_STRING_MODE:Qge,BACKSLASH_ESCAPE:Hu,BINARY_NUMBER_MODE:ive,BINARY_NUMBER_RE:qI,COMMENT:km,C_BLOCK_COMMENT_MODE:tve,C_LINE_COMMENT_MODE:eve,C_NUMBER_MODE:ave,C_NUMBER_RE:GI,END_SAME_AS_BEGIN:uve,HASH_COMMENT_MODE:nve,IDENT_RE:WI,MATCH_NOTHING_RE:Vge,METHOD_GUARD:cve,NUMBER_MODE:rve,NUMBER_RE:HI,PHRASAL_WORDS_MODE:Jge,QUOTE_STRING_MODE:Zge,REGEXP_MODE:sve,RE_STARTERS_RE:Yge,SHEBANG:Xge,TITLE_MODE:ove,UNDERSCORE_IDENT_RE:P0,UNDERSCORE_TITLE_MODE:lve});function dve(e,t){e.input[e.index-1]==="."&&t.ignoreMatch()}function fve(e,t){e.className!==void 0&&(e.scope=e.className,delete e.className)}function hve(e,t){t&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",e.__beforeBegin=dve,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords,e.relevance===void 0&&(e.relevance=0))}function pve(e,t){Array.isArray(e.illegal)&&(e.illegal=T0(...e.illegal))}function mve(e,t){if(e.match){if(e.begin||e.end)throw new Error("begin & end are not supported with match");e.begin=e.match,delete e.match}}function gve(e,t){e.relevance===void 0&&(e.relevance=1)}const vve=(e,t)=>{if(!e.beforeMatch)return;if(e.starts)throw new Error("beforeMatch cannot be used with starts");const n=Object.assign({},e);Object.keys(e).forEach(r=>{delete e[r]}),e.keywords=n.keywords,e.begin=Fs(n.beforeMatch,FI(n.begin)),e.starts={relevance:0,contains:[Object.assign(n,{endsParent:!0})]},e.relevance=0,delete n.beforeMatch},yve=["of","and","for","in","not","or","if","then","parent","list","value"],bve="keyword";function KI(e,t,n=bve){const r=Object.create(null);return typeof e=="string"?a(n,e.split(" ")):Array.isArray(e)?a(n,e):Object.keys(e).forEach(function(s){Object.assign(r,KI(e[s],t,s))}),r;function a(s,o){t&&(o=o.map(l=>l.toLowerCase())),o.forEach(function(l){const c=l.split("|");r[c[0]]=[s,xve(c[0],c[1])]})}}function xve(e,t){return t?Number(t):wve(e)?0:1}function wve(e){return yve.includes(e.toLowerCase())}const x_={},xs=e=>{console.error(e)},w_=(e,...t)=>{console.log(`WARN: ${e}`,...t)},so=(e,t)=>{x_[`${e}/${t}`]||(console.log(`Deprecated as of ${e}. ${t}`),x_[`${e}/${t}`]=!0)},sp=new Error;function VI(e,t,{key:n}){let r=0;const a=e[n],s={},o={};for(let l=1;l<=t.length;l++)o[l+r]=a[l],s[l+r]=!0,r+=UI(t[l-1]);e[n]=o,e[n]._emit=s,e[n]._multi=!0}function kve(e){if(Array.isArray(e.begin)){if(e.skip||e.excludeBegin||e.returnBegin)throw xs("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),sp;if(typeof e.beginScope!="object"||e.beginScope===null)throw xs("beginScope must be object"),sp;VI(e,e.begin,{key:"beginScope"}),e.begin=O0(e.begin,{joinWith:""})}}function Sve(e){if(Array.isArray(e.end)){if(e.skip||e.excludeEnd||e.returnEnd)throw xs("skip, excludeEnd, returnEnd not compatible with endScope: {}"),sp;if(typeof e.endScope!="object"||e.endScope===null)throw xs("endScope must be object"),sp;VI(e,e.end,{key:"endScope"}),e.end=O0(e.end,{joinWith:""})}}function jve(e){e.scope&&typeof e.scope=="object"&&e.scope!==null&&(e.beginScope=e.scope,delete e.scope)}function Nve(e){jve(e),typeof e.beginScope=="string"&&(e.beginScope={_wrap:e.beginScope}),typeof e.endScope=="string"&&(e.endScope={_wrap:e.endScope}),kve(e),Sve(e)}function Eve(e){function t(o,l){return new RegExp(Wu(o),"m"+(e.case_insensitive?"i":"")+(e.unicodeRegex?"u":"")+(l?"g":""))}class n{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(l,c){c.position=this.position++,this.matchIndexes[this.matchAt]=c,this.regexes.push([c,l]),this.matchAt+=UI(l)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);const l=this.regexes.map(c=>c[1]);this.matcherRe=t(O0(l,{joinWith:"|"}),!0),this.lastIndex=0}exec(l){this.matcherRe.lastIndex=this.lastIndex;const c=this.matcherRe.exec(l);if(!c)return null;const u=c.findIndex((f,h)=>h>0&&f!==void 0),d=this.matchIndexes[u];return c.splice(0,u),Object.assign(c,d)}}class r{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(l){if(this.multiRegexes[l])return this.multiRegexes[l];const c=new n;return this.rules.slice(l).forEach(([u,d])=>c.addRule(u,d)),c.compile(),this.multiRegexes[l]=c,c}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(l,c){this.rules.push([l,c]),c.type==="begin"&&this.count++}exec(l){const c=this.getMatcher(this.regexIndex);c.lastIndex=this.lastIndex;let u=c.exec(l);if(this.resumingScanAtSamePosition()&&!(u&&u.index===this.lastIndex)){const d=this.getMatcher(0);d.lastIndex=this.lastIndex+1,u=d.exec(l)}return u&&(this.regexIndex+=u.position+1,this.regexIndex===this.count&&this.considerAll()),u}}function a(o){const l=new r;return o.contains.forEach(c=>l.addRule(c.begin,{rule:c,type:"begin"})),o.terminatorEnd&&l.addRule(o.terminatorEnd,{type:"end"}),o.illegal&&l.addRule(o.illegal,{type:"illegal"}),l}function s(o,l){const c=o;if(o.isCompiled)return c;[fve,mve,Nve,vve].forEach(d=>d(o,l)),e.compilerExtensions.forEach(d=>d(o,l)),o.__beforeBegin=null,[hve,pve,gve].forEach(d=>d(o,l)),o.isCompiled=!0;let u=null;return typeof o.keywords=="object"&&o.keywords.$pattern&&(o.keywords=Object.assign({},o.keywords),u=o.keywords.$pattern,delete o.keywords.$pattern),u=u||/\w+/,o.keywords&&(o.keywords=KI(o.keywords,e.case_insensitive)),c.keywordPatternRe=t(u,!0),l&&(o.begin||(o.begin=/\B|\b/),c.beginRe=t(c.begin),!o.end&&!o.endsWithParent&&(o.end=/\B|\b/),o.end&&(c.endRe=t(c.end)),c.terminatorEnd=Wu(c.end)||"",o.endsWithParent&&l.terminatorEnd&&(c.terminatorEnd+=(o.end?"|":"")+l.terminatorEnd)),o.illegal&&(c.illegalRe=t(o.illegal)),o.contains||(o.contains=[]),o.contains=[].concat(...o.contains.map(function(d){return _ve(d==="self"?o:d)})),o.contains.forEach(function(d){s(d,c)}),o.starts&&s(o.starts,l),c.matcher=a(c),c}if(e.compilerExtensions||(e.compilerExtensions=[]),e.contains&&e.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return e.classNameAliases=ci(e.classNameAliases||{}),s(e)}function YI(e){return e?e.endsWithParent||YI(e.starts):!1}function _ve(e){return e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map(function(t){return ci(e,{variants:null},t)})),e.cachedVariants?e.cachedVariants:YI(e)?ci(e,{starts:e.starts?ci(e.starts):null}):Object.isFrozen(e)?ci(e):e}var Ave="11.11.2";class Cve extends Error{constructor(t,n){super(t),this.name="HTMLInjectionError",this.html=n}}const iv=zI,k_=ci,S_=Symbol("nomatch"),Tve=7,XI=function(e){const t=Object.create(null),n=Object.create(null),r=[];let a=!0;const s="Could not find the language '{}', did you forget to load/include a language module?",o={disableAutodetect:!0,name:"Plain text",contains:[]};let l={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:Uge};function c(L){return l.noHighlightRe.test(L)}function u(L){let W=L.className+" ";W+=L.parentNode?L.parentNode.className:"";const A=l.languageDetectRe.exec(W);if(A){const z=E(A[1]);return z||(w_(s.replace("{}",A[1])),w_("Falling back to no-highlight mode for this block.",L)),z?A[1]:"no-highlight"}return W.split(/\s+/).find(z=>c(z)||E(z))}function d(L,W,A){let z="",T="";typeof W=="object"?(z=L,A=W.ignoreIllegals,T=W.language):(so("10.7.0","highlight(lang, code, ...args) has been deprecated."),so("10.7.0",`Please use highlight(code, options) instead.
197
- https://github.com/highlightjs/highlight.js/issues/2277`),T=L,z=W),A===void 0&&(A=!0);const K={code:z,language:T};M("before:highlight",K);const D=K.result?K.result:f(K.language,K.code,A);return D.code=K.code,M("after:highlight",D),D}function f(L,W,A,z){const T=Object.create(null);function K(U,V){return U.keywords[V]}function D(){if(!he.keywords){Le.addText(Oe);return}let U=0;he.keywordPatternRe.lastIndex=0;let V=he.keywordPatternRe.exec(Oe),oe="";for(;V;){oe+=Oe.substring(U,V.index);const pe=_e.case_insensitive?V[0].toLowerCase():V[0],Ne=K(he,pe);if(Ne){const[Be,vt]=Ne;if(Le.addText(oe),oe="",T[pe]=(T[pe]||0)+1,T[pe]<=Tve&&(nt+=vt),Be.startsWith("_"))oe+=V[0];else{const yt=_e.classNameAliases[Be]||Be;ge(V[0],yt)}}else oe+=V[0];U=he.keywordPatternRe.lastIndex,V=he.keywordPatternRe.exec(Oe)}oe+=Oe.substring(U),Le.addText(oe)}function I(){if(Oe==="")return;let U=null;if(typeof he.subLanguage=="string"){if(!t[he.subLanguage]){Le.addText(Oe);return}U=f(he.subLanguage,Oe,!0,Je[he.subLanguage]),Je[he.subLanguage]=U._top}else U=p(Oe,he.subLanguage.length?he.subLanguage:null);he.relevance>0&&(nt+=U.relevance),Le.__addSublanguage(U._emitter,U.language)}function ce(){he.subLanguage!=null?I():D(),Oe=""}function ge(U,V){U!==""&&(Le.startScope(V),Le.addText(U),Le.endScope())}function ve(U,V){let oe=1;const pe=V.length-1;for(;oe<=pe;){if(!U._emit[oe]){oe++;continue}const Ne=_e.classNameAliases[U[oe]]||U[oe],Be=V[oe];Ne?ge(Be,Ne):(Oe=Be,D(),Oe=""),oe++}}function Ce(U,V){return U.scope&&typeof U.scope=="string"&&Le.openNode(_e.classNameAliases[U.scope]||U.scope),U.beginScope&&(U.beginScope._wrap?(ge(Oe,_e.classNameAliases[U.beginScope._wrap]||U.beginScope._wrap),Oe=""):U.beginScope._multi&&(ve(U.beginScope,V),Oe="")),he=Object.create(U,{parent:{value:he}}),he}function Q(U,V,oe){let pe=qge(U.endRe,oe);if(pe){if(U["on:end"]){const Ne=new v_(U);U["on:end"](V,Ne),Ne.isMatchIgnored&&(pe=!1)}if(pe){for(;U.endsParent&&U.parent;)U=U.parent;return U}}if(U.endsWithParent)return Q(U.parent,V,oe)}function X(U){return he.matcher.regexIndex===0?(Oe+=U[0],1):(fn=!0,0)}function ie(U){const V=U[0],oe=U.rule,pe=new v_(oe),Ne=[oe.__beforeBegin,oe["on:begin"]];for(const Be of Ne)if(Be&&(Be(U,pe),pe.isMatchIgnored))return X(V);return oe.skip?Oe+=V:(oe.excludeBegin&&(Oe+=V),ce(),!oe.returnBegin&&!oe.excludeBegin&&(Oe=V)),Ce(oe,U),oe.returnBegin?0:V.length}function fe(U){const V=U[0],oe=W.substring(U.index),pe=Q(he,U,oe);if(!pe)return S_;const Ne=he;he.endScope&&he.endScope._wrap?(ce(),ge(V,he.endScope._wrap)):he.endScope&&he.endScope._multi?(ce(),ve(he.endScope,U)):Ne.skip?Oe+=V:(Ne.returnEnd||Ne.excludeEnd||(Oe+=V),ce(),Ne.excludeEnd&&(Oe=V));do he.scope&&Le.closeNode(),!he.skip&&!he.subLanguage&&(nt+=he.relevance),he=he.parent;while(he!==pe.parent);return pe.starts&&Ce(pe.starts,U),Ne.returnEnd?0:V.length}function J(){const U=[];for(let V=he;V!==_e;V=V.parent)V.scope&&U.unshift(V.scope);U.forEach(V=>Le.openNode(V))}let ye={};function je(U,V){const oe=V&&V[0];if(Oe+=U,oe==null)return ce(),0;if(ye.type==="begin"&&V.type==="end"&&ye.index===V.index&&oe===""){if(Oe+=W.slice(V.index,V.index+1),!a){const pe=new Error(`0 width match regex (${L})`);throw pe.languageName=L,pe.badRule=ye.rule,pe}return 1}if(ye=V,V.type==="begin")return ie(V);if(V.type==="illegal"&&!A){const pe=new Error('Illegal lexeme "'+oe+'" for mode "'+(he.scope||"<unnamed>")+'"');throw pe.mode=he,pe}else if(V.type==="end"){const pe=fe(V);if(pe!==S_)return pe}if(V.type==="illegal"&&oe==="")return V.index===W.length||(Oe+=`
198
- `),1;if(Ct>1e5&&Ct>V.index*3)throw new Error("potential infinite loop, way more iterations than matches");return Oe+=oe,oe.length}const _e=E(L);if(!_e)throw xs(s.replace("{}",L)),new Error('Unknown language: "'+L+'"');const be=Eve(_e);let $e="",he=z||be;const Je={},Le=new l.__emitter(l);J();let Oe="",nt=0,qe=0,Ct=0,fn=!1;try{if(_e.__emitTokens)_e.__emitTokens(W,Le);else{for(he.matcher.considerAll();;){Ct++,fn?fn=!1:he.matcher.considerAll(),he.matcher.lastIndex=qe;const U=he.matcher.exec(W);if(!U)break;const V=W.substring(qe,U.index),oe=je(V,U);qe=U.index+oe}je(W.substring(qe))}return Le.finalize(),$e=Le.toHTML(),{language:L,value:$e,relevance:nt,illegal:!1,_emitter:Le,_top:he}}catch(U){if(U.message&&U.message.includes("Illegal"))return{language:L,value:iv(W),illegal:!0,relevance:0,_illegalBy:{message:U.message,index:qe,context:W.slice(qe-100,qe+100),mode:U.mode,resultSoFar:$e},_emitter:Le};if(a)return{language:L,value:iv(W),illegal:!1,relevance:0,errorRaised:U,_emitter:Le,_top:he};throw U}}function h(L){const W={value:iv(L),illegal:!1,relevance:0,_top:o,_emitter:new l.__emitter(l)};return W._emitter.addText(L),W}function p(L,W){W=W||l.languages||Object.keys(t);const A=h(L),z=W.filter(E).filter(C).map(ce=>f(ce,L,!1));z.unshift(A);const T=z.sort((ce,ge)=>{if(ce.relevance!==ge.relevance)return ge.relevance-ce.relevance;if(ce.language&&ge.language){if(E(ce.language).supersetOf===ge.language)return 1;if(E(ge.language).supersetOf===ce.language)return-1}return 0}),[K,D]=T,I=K;return I.secondBest=D,I}function g(L,W,A){const z=W&&n[W]||A;L.classList.add("hljs"),L.classList.add(`language-${z}`)}function m(L){let W=null;const A=u(L);if(c(A))return;if(M("before:highlightElement",{el:L,language:A}),L.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",L);return}if(L.children.length>0&&(l.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(L)),l.throwUnescapedHTML))throw new Cve("One of your code blocks includes unescaped HTML.",L.innerHTML);W=L;const z=W.textContent,T=A?d(z,{language:A,ignoreIllegals:!0}):p(z);L.innerHTML=T.value,L.dataset.highlighted="yes",g(L,A,T.language),L.result={language:T.language,re:T.relevance,relevance:T.relevance},T.secondBest&&(L.secondBest={language:T.secondBest.language,relevance:T.secondBest.relevance}),M("after:highlightElement",{el:L,result:T,text:z})}function y(L){l=k_(l,L)}const v=()=>{j(),so("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function k(){j(),so("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let x=!1;function j(){function L(){j()}if(document.readyState==="loading"){x||window.addEventListener("DOMContentLoaded",L,!1),x=!0;return}document.querySelectorAll(l.cssSelector).forEach(m)}function w(L,W){let A=null;try{A=W(e)}catch(z){if(xs("Language definition for '{}' could not be registered.".replace("{}",L)),a)xs(z);else throw z;A=o}A.name||(A.name=L),t[L]=A,A.rawDefinition=W.bind(null,e),A.aliases&&O(A.aliases,{languageName:L})}function b(L){delete t[L];for(const W of Object.keys(n))n[W]===L&&delete n[W]}function N(){return Object.keys(t)}function E(L){return L=(L||"").toLowerCase(),t[L]||t[n[L]]}function O(L,{languageName:W}){typeof L=="string"&&(L=[L]),L.forEach(A=>{n[A.toLowerCase()]=W})}function C(L){const W=E(L);return W&&!W.disableAutodetect}function P(L){L["before:highlightBlock"]&&!L["before:highlightElement"]&&(L["before:highlightElement"]=W=>{L["before:highlightBlock"](Object.assign({block:W.el},W))}),L["after:highlightBlock"]&&!L["after:highlightElement"]&&(L["after:highlightElement"]=W=>{L["after:highlightBlock"](Object.assign({block:W.el},W))})}function $(L){P(L),r.push(L)}function B(L){const W=r.indexOf(L);W!==-1&&r.splice(W,1)}function M(L,W){const A=L;r.forEach(function(z){z[A]&&z[A](W)})}function F(L){return so("10.7.0","highlightBlock will be removed entirely in v12.0"),so("10.7.0","Please use highlightElement now."),m(L)}Object.assign(e,{highlight:d,highlightAuto:p,highlightAll:j,highlightElement:m,highlightBlock:F,configure:y,initHighlighting:v,initHighlightingOnLoad:k,registerLanguage:w,unregisterLanguage:b,listLanguages:N,getLanguage:E,registerAliases:O,autoDetection:C,inherit:k_,addPlugin:$,removePlugin:B}),e.debugMode=function(){a=!1},e.safeMode=function(){a=!0},e.versionString=Ave,e.regex={concat:Fs,lookahead:FI,either:T0,optional:Hge,anyNumberOfTimes:Wge};for(const L in uf)typeof uf[L]=="object"&&BI(uf[L]);return Object.assign(e,uf),e},pl=XI({});pl.newInstance=()=>XI({});var Ove=pl;pl.HighlightJS=pl;pl.default=pl;const Pve=Ze(Ove),j_={},Rve="hljs-";function Mve(e){const t=Pve.newInstance();return e&&s(e),{highlight:n,highlightAuto:r,listLanguages:a,register:s,registerAlias:o,registered:l};function n(c,u,d){const f=d||j_,h=typeof f.prefix=="string"?f.prefix:Rve;if(!t.getLanguage(c))throw new Error("Unknown language: `"+c+"` is not registered");t.configure({__emitter:Ive,classPrefix:h});const p=t.highlight(u,{ignoreIllegals:!0,language:c});if(p.errorRaised)throw new Error("Could not highlight with `Highlight.js`",{cause:p.errorRaised});const g=p._emitter.root,m=g.data;return m.language=p.language,m.relevance=p.relevance,g}function r(c,u){const f=(u||j_).subset||a();let h=-1,p=0,g;for(;++h<f.length;){const m=f[h];if(!t.getLanguage(m))continue;const y=n(m,c,u);y.data&&y.data.relevance!==void 0&&y.data.relevance>p&&(p=y.data.relevance,g=y)}return g||{type:"root",children:[],data:{language:void 0,relevance:p}}}function a(){return t.listLanguages()}function s(c,u){if(typeof c=="string")t.registerLanguage(c,u);else{let d;for(d in c)Object.hasOwn(c,d)&&t.registerLanguage(d,c[d])}}function o(c,u){if(typeof c=="string")t.registerAliases(typeof u=="string"?u:[...u],{languageName:c});else{let d;for(d in c)if(Object.hasOwn(c,d)){const f=c[d];t.registerAliases(typeof f=="string"?f:[...f],{languageName:d})}}}function l(c){return!!t.getLanguage(c)}}class Ive{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(o,l){return l?o+"_".repeat(l):n.options.classPrefix+o}),a=this.stack[this.stack.length-1],s={type:"element",tagName:"span",properties:{className:r},children:[]};a.children.push(s),this.stack.push(s)}closeNode(){this.stack.pop()}finalize(){}toHTML(){return""}}const $ve={};function Lve(e){const t=e||$ve,n=t.aliases,r=t.detect||!1,a=t.languages||Dge,s=t.plainText,o=t.prefix,l=t.subset;let c="hljs";const u=Mve(a);if(n&&u.registerAlias(n),o){const d=o.indexOf("-");c=d===-1?o:o.slice(0,d)}return function(d,f){wm(d,"element",function(h,p,g){if(h.tagName!=="code"||!g||g.type!=="element"||g.tagName!=="pre")return;const m=Dve(h);if(m===!1||!m&&!r||m&&s&&s.includes(m))return;Array.isArray(h.properties.className)||(h.properties.className=[]),h.properties.className.includes(c)||h.properties.className.unshift(c);const y=cme(h,{whitespace:"pre"});let v;try{v=m?u.highlight(m,y,{prefix:o}):u.highlightAuto(y,{prefix:o,subset:l})}catch(k){const x=k;if(m&&/Unknown language/.test(x.message)){f.message("Cannot highlight as `"+m+"`, it’s not registered",{ancestors:[g,h],cause:x,place:h.position,ruleId:"missing-language",source:"rehype-highlight"});return}throw x}!m&&v.data&&v.data.language&&h.properties.className.push("language-"+v.data.language),v.children.length>0&&(h.children=v.children)})}}function Dve(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}const op="[A-Za-z$_][0-9A-Za-z$_]*",QI=["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"],ZI=["true","false","null","undefined","NaN","Infinity"],JI=["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"],e$=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],t$=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],n$=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","self","global"],r$=[].concat(t$,JI,e$);function Bve(e){const t=e.regex,n=(A,{after:z})=>{const T="</"+A[0].slice(1);return A.input.indexOf(T,z)!==-1},r=op,a={begin:"<>",end:"</>"},s=/<[A-Za-z0-9\\._:-]+\s*\/>/,o={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(A,z)=>{const T=A[0].length+A.index,K=A.input[T];if(K==="<"||K===","){z.ignoreMatch();return}K===">"&&(n(A,{after:T})||z.ignoreMatch());let D;const I=A.input.substring(T);if(D=I.match(/^\s*=/)){z.ignoreMatch();return}if((D=I.match(/^\s+extends\s+/))&&D.index===0){z.ignoreMatch();return}}},l={$pattern:op,keyword:QI,literal:ZI,built_in:r$,"variable.language":n$},c="[0-9](_?[0-9])*",u=`\\.(${c})`,d="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",f={className:"number",variants:[{begin:`(\\b(${d})((${u})|\\.)?|(${u}))[eE][+-]?(${c})\\b`},{begin:`\\b(${d})\\b((${u})\\b|\\.)?|(${u})\\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},h={className:"subst",begin:"\\$\\{",end:"\\}",keywords:l,contains:[]},p={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,h],subLanguage:"xml"}},g={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,h],subLanguage:"css"}},m={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,h],subLanguage:"graphql"}},y={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,h]},k={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]},x=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,g,m,y,{match:/\$\d+/},f];h.contains=x.concat({begin:/\{/,end:/\}/,keywords:l,contains:["self"].concat(x)});const j=[].concat(k,h.contains),w=j.concat([{begin:/(\s*)\(/,end:/\)/,keywords:l,contains:["self"].concat(j)}]),b={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:w},N={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"}}]},E={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:{_:[...JI,...e$]}},O={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},C={variants:[{match:[/function/,/\s+/,r,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[b],illegal:/%/},P={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function $(A){return t.concat("(?!",A.join("|"),")")}const B={match:t.concat(/\b/,$([...t$,"super","import","await"].map(A=>`${A}\\s*\\(`)),r,t.lookahead(/\s*\(/)),className:"title.function",relevance:0},M={begin:t.concat(/\./,t.lookahead(t.concat(r,/(?![0-9A-Za-z$_(])/))),end:r,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},F={match:[/get|set/,/\s+/,r,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},b]},L="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",W={match:[/const|var|let/,/\s+/,r,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(L)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[b]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:l,exports:{PARAMS_CONTAINS:w,CLASS_REFERENCE:E},illegal:/#(?![$_A-Za-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),O,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,g,m,y,k,{match:/\$\d+/},f,E,{scope:"attr",match:r+t.lookahead(":"),relevance:0},W,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[k,e.REGEXP_MODE,{className:"function",begin:L,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:l,contains:w}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:a.begin,end:a.end},{match:s},{begin:o.begin,"on:begin":o.isTrulyOpeningTag,end:o.end}],subLanguage:"xml",contains:[{begin:o.begin,end:o.end,skip:!0,contains:["self"]}]}]},C,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[b,e.inherit(e.TITLE_MODE,{begin:r,className:"title.function"})]},{match:/\.\.\./,relevance:0},M,{match:"\\$"+r,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[b]},B,P,N,F,{match:/\$[(.]/}]}}function N_(e){const t=e.regex,n=Bve(e),r=op,a=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],s={begin:[/namespace/,/\s+/,e.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},o={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:a},contains:[n.exports.CLASS_REFERENCE]},l={className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/},c=["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"],u={$pattern:op,keyword:QI.concat(c),literal:ZI,built_in:r$.concat(a),"variable.language":n$},d={className:"meta",begin:"@"+r},f=(m,y,v)=>{const k=m.contains.findIndex(x=>x.label===y);if(k===-1)throw new Error("can not find mode to replace");m.contains.splice(k,1,v)};Object.assign(n.keywords,u),n.exports.PARAMS_CONTAINS.push(d);const h=n.contains.find(m=>m.scope==="attr"),p=Object.assign({},h,{match:t.concat(r,t.lookahead(/\s*\?:/))});n.exports.PARAMS_CONTAINS.push([n.exports.CLASS_REFERENCE,h,p]),n.contains=n.contains.concat([d,s,o,p]),f(n,"shebang",e.SHEBANG()),f(n,"use_strict",l);const g=n.contains.find(m=>m.label==="func.def");return g.relevance=0,Object.assign(n,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),n}const E_="[A-Za-z$_][0-9A-Za-z$_]*",zve=["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"],Fve=["true","false","null","undefined","NaN","Infinity"],a$=["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"],i$=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],s$=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Uve=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","self","global"],Wve=[].concat(s$,a$,i$);function __(e){const t=e.regex,n=(A,{after:z})=>{const T="</"+A[0].slice(1);return A.input.indexOf(T,z)!==-1},r=E_,a={begin:"<>",end:"</>"},s=/<[A-Za-z0-9\\._:-]+\s*\/>/,o={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(A,z)=>{const T=A[0].length+A.index,K=A.input[T];if(K==="<"||K===","){z.ignoreMatch();return}K===">"&&(n(A,{after:T})||z.ignoreMatch());let D;const I=A.input.substring(T);if(D=I.match(/^\s*=/)){z.ignoreMatch();return}if((D=I.match(/^\s+extends\s+/))&&D.index===0){z.ignoreMatch();return}}},l={$pattern:E_,keyword:zve,literal:Fve,built_in:Wve,"variable.language":Uve},c="[0-9](_?[0-9])*",u=`\\.(${c})`,d="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",f={className:"number",variants:[{begin:`(\\b(${d})((${u})|\\.)?|(${u}))[eE][+-]?(${c})\\b`},{begin:`\\b(${d})\\b((${u})\\b|\\.)?|(${u})\\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},h={className:"subst",begin:"\\$\\{",end:"\\}",keywords:l,contains:[]},p={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,h],subLanguage:"xml"}},g={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,h],subLanguage:"css"}},m={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,h],subLanguage:"graphql"}},y={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,h]},k={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]},x=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,g,m,y,{match:/\$\d+/},f];h.contains=x.concat({begin:/\{/,end:/\}/,keywords:l,contains:["self"].concat(x)});const j=[].concat(k,h.contains),w=j.concat([{begin:/(\s*)\(/,end:/\)/,keywords:l,contains:["self"].concat(j)}]),b={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:w},N={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"}}]},E={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:{_:[...a$,...i$]}},O={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},C={variants:[{match:[/function/,/\s+/,r,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[b],illegal:/%/},P={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function $(A){return t.concat("(?!",A.join("|"),")")}const B={match:t.concat(/\b/,$([...s$,"super","import","await"].map(A=>`${A}\\s*\\(`)),r,t.lookahead(/\s*\(/)),className:"title.function",relevance:0},M={begin:t.concat(/\./,t.lookahead(t.concat(r,/(?![0-9A-Za-z$_(])/))),end:r,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},F={match:[/get|set/,/\s+/,r,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},b]},L="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",W={match:[/const|var|let/,/\s+/,r,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(L)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[b]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:l,exports:{PARAMS_CONTAINS:w,CLASS_REFERENCE:E},illegal:/#(?![$_A-Za-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),O,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,g,m,y,k,{match:/\$\d+/},f,E,{scope:"attr",match:r+t.lookahead(":"),relevance:0},W,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[k,e.REGEXP_MODE,{className:"function",begin:L,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:l,contains:w}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:a.begin,end:a.end},{match:s},{begin:o.begin,"on:begin":o.isTrulyOpeningTag,end:o.end}],subLanguage:"xml",contains:[{begin:o.begin,end:o.end,skip:!0,contains:["self"]}]}]},C,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[b,e.inherit(e.TITLE_MODE,{begin:r,className:"title.function"})]},{match:/\.\.\./,relevance:0},M,{match:"\\$"+r,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[b]},B,P,N,F,{match:/\$[(.]/}]}}const Hve="([-+]?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)|NaN|[-+]?Infinity",Gve={scope:"number",match:Hve,relevance:0};function qve(e){const t={className:"attr",begin:/(("(\\.|[^\\"\r\n])*")|('(\\.|[^\\'\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","json5"],keywords:{literal:r},contains:[t,n,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,a,Gve,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}function Kve(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]},s=e.inherit(e.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),o={begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},l={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,n,a]};a.contains.push(l);const c={match:/\\"/},u={className:"string",begin:/'/,end:/'/},d={match:/\\'/},f={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,n]},h=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],p=e.SHEBANG({binary:`(${h.join("|")})`,relevance:10}),g={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},m=["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],y=["true","false"],v={match:/(\/[a-z._-]+)+/},k=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],x=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],j=["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"],w=["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:m,literal:y,built_in:[...k,...x,"set","shopt",...j,...w]},contains:[p,e.SHEBANG(),g,f,s,o,v,l,c,u,d,n]}}function A_(e){return{name:"Shell Session",aliases:["console","shellsession"],contains:[{className:"meta.prompt",begin:/^\s{0,3}[./~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/,subLanguage:"bash"}}]}}function C_(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","lazy","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],l={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:r,built_in:["__import__","abs","aiter","all","anext","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozendict","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","sentinel","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"]},c={className:"meta",begin:/^(>>>|\.\.\.) /},u={className:"subst",begin:/\{/,end:/\}/,keywords:l,illegal:/#/},d={begin:/\{\{/,relevance:0},f={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,c],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,c],relevance:10},{begin:/([fFtT][rR]|[rR][fFtT]|[fFtT])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,c,d,u]},{begin:/([fFtT][rR]|[rR][fFtT]|[fFtT])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,c,d,u]},{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:/([fFtT][rR]|[rR][fFtT]|[fFtT])'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,d,u]},{begin:/([fFtT][rR]|[rR][fFtT]|[fFtT])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,d,u]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},h="[0-9](_?[0-9])*",p=`(\\b(${h}))?\\.(${h})|\\b(${h})\\.`,g=`\\b|${r.join("|")}`,m={className:"number",relevance:0,variants:[{begin:`(\\b(${h})|(${p}))[eE][+-]?(${h})[jJ]?(?=${g})`},{begin:`(${p})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${g})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${g})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${g})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${g})`},{begin:`\\b(${h})[jJ](?=${g})`}]},y={className:"comment",begin:t.lookahead(/# type:/),end:/$/,keywords:l,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},v={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:["self",c,m,f,e.HASH_COMMENT_MODE]}]};return u.contains=[f,m,c],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:l,illegal:/(<\/|\?)|=>/,contains:[c,m,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},f,y,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,n],scope:{1:"keyword",3:"title.function"},contains:[v]},{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:[m,v,f]}]}}function T_(e){const t=e.regex,n={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},r={match:/^ {0,3}([-*_])[ \t]*(?:\1[ \t]*){2,}$/},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}]},s={className:"bullet",begin:"^[ ]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},o={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},l=/[A-Za-z][A-Za-z0-9+.-]*/,c={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:t.concat(/\[.+?\]\(/,l,/:\/\/.*?\)/),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}]},u={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},d={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},f=e.inherit(u,{contains:[]}),h=e.inherit(d,{contains:[]});u.contains.push(h),d.contains.push(f);let p=[n,c];return[u,d,f,h].forEach(v=>{v.contains=v.contains.concat(p)}),p=p.concat(u,d),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:p},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:p}]}]},n,s,r,u,d,{className:"quote",begin:"^>\\s+",contains:p,end:"$"},a,c,o,{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}function O_(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:/\}/}]},s={className:"string",relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:"char.escape",relevance:0}]},o={className:"string",relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,a]},l=e.inherit(o,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),h={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"},p={end:",",endsWithParent:!0,excludeEnd:!0,keywords:t,relevance:0},g={begin:/\{/,end:/\}/,contains:[p],illegal:"\\n",relevance:0},m={begin:"\\[",end:"\\]",contains:[p],illegal:"\\n",relevance:0},y=[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}},h,{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},g,m,s,o],v=[...y];return v.pop(),v.push(l),p.contains=v,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:y}}function Vve(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+,\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 Yve(e){const t=e.regex,n=e.COMMENT("--","$"),r={scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},a={begin:/"/,end:/"/,contains:[{match:/""/}]},s=["true","false","unknown"],o=["double precision","large object","with timezone","without timezone"],l=["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"],c=["add","asc","collation","desc","final","first","last","view"],u=["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"],d=["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"],f=["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"],h=["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"],p=d,g=[...u,...c].filter(w=>!d.includes(w)),m={scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},y={scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},v={match:t.concat(/\b/,t.either(...p),/\s*\(/),relevance:0,keywords:{built_in:p}};function k(w){return t.concat(/\b/,t.either(...w.map(b=>b.replace(/\s+/,"\\s+"))),/\b/)}const x={scope:"keyword",match:k(h),relevance:0};function j(w,{exceptions:b,when:N}={}){const E=N;return b=b||[],w.map(O=>O.match(/\|\d+$/)||b.includes(O)?O:E(O)?`${O}|0`:O)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:j(g,{when:w=>w.length<3}),literal:s,type:l,built_in:f},contains:[{scope:"type",match:k(o)},x,v,m,r,a,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,n,y]}}function P_(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]+;/},s={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},o=e.inherit(s,{begin:/\(/,end:/\)/}),l=e.inherit(e.APOS_STRING_MODE,{className:"string"}),c=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),u={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:[s,c,l,o,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[s,o,c,l]}]}]},e.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},a,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[c]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[u],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:"css"}},{className:"tag",begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[u],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:"javascript"}},{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:u}]},{className:"tag",begin:t.concat(/<\//,t.lookahead(t.concat(n,/>/))),contains:[{className:"name",begin:n,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}const Xve=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/},UNICODE_RANGE:{scope:"number",begin:/\b[Uu]\+[0-9A-Fa-f][0-9A-Fa-f?]{0,5}(-[0-9A-Fa-f][0-9A-Fa-f]{0,5})?/},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_-]*/}}),Qve=["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"],Zve=["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"],Jve=[...Qve,...Zve],eye=["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(),tye=["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(),nye=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),rye=["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","corner-bottom-left-shape","corner-bottom-right-shape","corner-shape","corner-top-left-shape","corner-top-right-shape","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","unicode-range","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 aye(e){const t=e.regex,n=Xve(e),r={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},a="and or not only",s=/@-?\w[\w]*(-\w+)*/,o="[a-zA-Z-][a-zA-Z0-9_-]*",l=[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:"\\."+o,relevance:0},n.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+tye.join("|")+")"},{begin:":(:)?("+nye.join("|")+")"}]},n.CSS_VARIABLE,{className:"attribute",begin:"\\b("+rye.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[n.BLOCK_COMMENT,n.HEXCOLOR,n.IMPORTANT,n.CSS_NUMBER_MODE,n.UNICODE_RANGE,...l,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...l,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},n.FUNCTION_DISPATCH]},{begin:t.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:s},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:a,attribute:eye.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...l,n.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+Jve.join("|")+")\\b"}]}}function R_(e){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}const iye={ts:N_,typescript:N_,js:__,javascript:__,json:qve,bash:Kve,shell:A_,sh:A_,python:C_,py:C_,markdown:T_,md:T_,yaml:O_,yml:O_,diff:Vve,sql:Yve,html:P_,xml:P_,css:aye,text:R_,plaintext:R_};function o$(e){if(e==null)return"";const t=e;return typeof t.value=="string"?t.value:Array.isArray(t.children)?t.children.map(o$).join(""):""}function sye({lang:e,code:t,children:n}){const[r,a]=S.useState(!1),s=async()=>{var o;try{await((o=navigator.clipboard)==null?void 0:o.writeText(t)),a(!0),setTimeout(()=>a(!1),1500)}catch{}};return i.jsxs("div",{className:"md-code-block",children:[i.jsxs("div",{className:"md-code-head",children:[i.jsx("span",{className:"md-code-lang",children:e}),i.jsx("button",{type:"button",className:"md-code-copy",onClick:()=>void s(),children:r?"✓ Copied":"⧉ Copy"})]}),i.jsx("pre",{className:"md-code-pre",children:i.jsx("code",{children:n})})]})}function oye({node:e,children:t}){var o,l,c,u;const n=(o=e==null?void 0:e.children)==null?void 0:o[0],a=((u=(Array.isArray((l=n==null?void 0:n.properties)==null?void 0:l.className)?(c=n==null?void 0:n.properties)==null?void 0:c.className:[]).find(d=>typeof d=="string"&&d.startsWith("language-")))==null?void 0:u.slice(9))??"text",s=S.useMemo(()=>o$(n),[n]);return i.jsx(sye,{lang:a,code:s,children:t})}function M_({text:e}){const t=S.useMemo(()=>({h1:({node:n,...r})=>i.jsx("h1",{className:"md-heading md-h1",...r}),h2:({node:n,...r})=>i.jsx("h2",{className:"md-heading md-h2",...r}),h3:({node:n,...r})=>i.jsx("h3",{className:"md-heading md-h3",...r}),h4:({node:n,...r})=>i.jsx("h4",{className:"md-heading md-h4",...r}),h5:({node:n,...r})=>i.jsx("h5",{className:"md-heading md-h5",...r}),h6:({node:n,...r})=>i.jsx("h6",{className:"md-heading md-h6",...r}),p:({node:n,...r})=>i.jsx("p",{className:"md-para",...r}),ul:({node:n,...r})=>i.jsx("ul",{className:"md-list md-ul",...r}),ol:({node:n,...r})=>i.jsx("ol",{className:"md-list md-ol",...r}),blockquote:({node:n,...r})=>i.jsx("blockquote",{className:"md-quote",...r}),hr:({node:n,...r})=>i.jsx("hr",{className:"md-hr",...r}),table:({node:n,...r})=>i.jsx("table",{className:"md-table",...r}),a:({node:n,...r})=>i.jsx("a",{target:"_blank",rel:"noreferrer",...r}),pre:oye}),[]);return i.jsx("div",{className:"md-root",children:i.jsx(Wfe,{remarkPlugins:[nme],rehypePlugins:[[Lve,{languages:iye}]],components:t,children:e??""})})}const I_=/```([\w+-]*)\n([\s\S]*?)```/g;function lye(e){if(!e.trim())return[];const t=[];let n=null;for(const r of e.split(`
199
- `))r.startsWith("diff --git ")?(n&&t.push(n),n={path:r.split(" b/").slice(1).join(" b/").replace(/^b\//,""),body:r}):n&&(n.body+=`
200
- ${r}`);return n&&t.push(n),t}function cye(e){return/(^|\n)\s*(PASS|FAIL|✅|❌|✗|✓|\bok\b)/i.test(e)||/\b\d+\s+(passed|failed)\b/i.test(e)||/(tests?|build|suite|checks?)\s+(passed|failed|complete|green|red|ok)/i.test(e)||/(exit code|process exited|finished with)/i.test(e)}function uye(e){return/(^|\n)\s*(FAIL|❌|✗)/i.test(e)||/\bfailed\b/i.test(e)?"fail":/(^|\n)\s*(PASS|✅|✓)/i.test(e)||/\bpassed\b/i.test(e)?"pass":"unknown"}function dye(e){for(const t of e.split(`
201
- `)){const n=t.trim();if(n)return n.length>80?`${n.slice(0,77)}…`:n}return"Command output"}const $_=/https?:\/\/[^\s)\]}"'<>]+/i,L_=/(🚀|deploy(?:ed|ment|ing)?|live at|published|available at|open the)/i;function fye(e){return e.replace(/[.,;:!?]+$/,"")}function hye(e){const t=e.split(`
202
- `),n=[],r=new Set;for(let a=0;a<t.length;a+=1){const s=t[a];let o=s.match(L_);!o&&a+1<t.length&&/deploy(?:ed|ment|ing)?:\s*$/i.test(s.trim())&&(o=t[a+1].match(L_));const l=s.match($_)||(a+1<t.length?t[a+1].match($_):null);if(!o||!l)continue;const c=fye(l[0]);r.has(c)||(r.add(c),n.push({url:c,title:s.trim().slice(0,80)||"Deployment"}))}return n}function sv(e){const t=[],n=[],r=[];I_.lastIndex=0;let a;for(;(a=I_.exec(e))!==null;){const s=(a[1]||"").toLowerCase(),o=a[2];if(s==="diff"||o.includes("diff --git ")){const l=lye(o);l.length>0&&t.push({files:l,summary:`${l.length} file${l.length===1?"":"s"} changed`})}else cye(o)&&n.push({verdict:uye(o),title:dye(o),body:o})}for(const s of hye(e))r.push(s);return{diffs:t,results:n,deploys:r}}const pye=/\x1b(?:\[[0-9;?]*[ -/]*[@-~]|\][^\x07\x1b]*(?:\x07|\x1b\\)|[@-Z\\-_])/g;function D_(e){return e?e.replace(pye,""):""}const mye=3e5,gye=2e3,vye=/\.(pdf|docx|xlsx|pptx)$/i,yye=/\.(png|jpe?g|gif|webp|bmp|tiff?)$/i,bye=/\.(txt|md|markdown|text|log|csv|tsv|json|xml|yaml|yml|html?|htaccess|css|js|mjs|cjs|jsx|ts|tsx|py|rb|go|rs|java|kt|c|h|cpp|cs|php|sh|bash|zsh|sql|ini|toml|cfg|conf|env)$/i;function xye(e){let t="";for(let r=0;r<e.length;r+=32768)t+=String.fromCharCode(...e.subarray(r,r+32768));return btoa(t)}function wye(e,t){const n=t.includes(0),r=t.length===0?1:t.reduce((a,s)=>s===9||s===10||s===13||s>=32&&s<127||s>=128?a+1:a,0)/t.length;return!n&&r>.9?{how:"text"}:vye.test(e)?{how:"binary"}:bye.test(e)?{how:"text"}:yye.test(e)?{how:"unsupported",reason:`"${e}" is an image, and this composer only sends text and documents. Save it into the project folder and ask me to describe it — I can read images from there.`}:{how:"unsupported",reason:`"${e}" is not a text file and not a document type I can read. Attach a PDF, DOCX, XLSX, PPTX, or a text/CSV/JSON/Markdown file — or put the file in the project folder and ask me to read it.`}}function kye(e){const t=["pending","running","done","blocked"].includes(e.status),n=typeof e.note=="string"&&e.note.trim()?e.note.trim():void 0;return{id:e.id,description:e.description,status:t?e.status:"pending",...n?{note:n}:{}}}function Sye(e){return e==="read_file"||e==="glob"||e==="list_dir"?"📖":e==="edit_file"||e==="write_file"?"✏️":e==="run_terminal"||e==="run_cli"?"⚙️":e==="web_search"||e==="read_page"?"🌐":e==="delegate"||e==="spawn_subagents"?"👥":e==="ask_user"?"🤔":"🔧"}function jye(e){return/^\s*(?:buff|agent-nuvira|nuvira)\b/i.test(e??"")}function Nye(e){const t=String(e??"").trim().toLowerCase();return t==="max"||t==="maximum"||t==="unlimited"||t==="performance"||t==="performance-first"?"max":"balanced"}const Eye={running:"⏳ running",done:"✅ done",failed:"❌ failed",cancelled:"⏹ cancelled",timeout:"⏰ timed out",error:"💥 error"};function wc({diff:e,selectable:t=!1,onCommitAccepted:n,lockedHint:r}){const[a,s]=S.useState(null),o=new Set(a??e.files.map(d=>d.path)),l=d=>{s(f=>{const h=f??e.files.map(p=>p.path);return h.includes(d)?h.filter(p=>p!==d):[...h,d]})},c=e.files.reduce((d,f)=>{var h;return d+(((h=f.body.match(/^\+/gm))==null?void 0:h.length)??0)},0),u=e.files.reduce((d,f)=>{var h;return d+(((h=f.body.match(/^-/gm))==null?void 0:h.length)??0)},0);return i.jsxs("div",{className:"chat-diff-card",children:[i.jsxs("div",{className:"chat-diff-head",children:[i.jsx("span",{className:"chat-diff-icon",children:"🔧"}),i.jsx("span",{className:"chat-diff-title",children:"git diff"}),i.jsxs("span",{className:"chat-diff-meta",children:[e.files.length," file",e.files.length===1?"":"s"," · +",c," −",u]})]}),i.jsx("div",{className:"chat-diff-files",children:e.files.map(d=>{const f=o.has(d.path);return i.jsxs("details",{className:`chat-diff-file${f?"":" chat-diff-file-rejected"}`,open:e.files.length===1,children:[i.jsxs("summary",{className:"chat-diff-file-path",children:[t?i.jsx("button",{type:"button",className:`chat-diff-toggle${f?" chat-diff-toggle-on":""}`,title:f?"Accepted — click to reject":"Rejected — click to accept",onClick:h=>{h.preventDefault(),h.stopPropagation(),l(d.path)},children:f?"✓":"✗"}):null,d.path]}),i.jsx("pre",{className:"chat-diff-body",children:d.body.split(`
203
- `).map((h,p)=>{const g=h.startsWith("+")?"diff-add":h.startsWith("-")?"diff-del":h.startsWith("@@")?"diff-hunk":"";return i.jsx("div",{className:`chat-diff-line ${g}`,children:h||" "},p)})})]},d.path)})}),t&&n?i.jsxs("div",{className:"chat-diff-actions",children:[i.jsxs("button",{className:"admin-refresh-btn",type:"button",disabled:o.size===0,onClick:()=>n([...o]),children:["Commit accepted (",o.size,")"]}),i.jsx("span",{className:"admin-hint",children:"Only accepted files are committed — the agent re-confirms with a question card."})]}):r?i.jsx("div",{className:"chat-diff-actions",children:i.jsxs("span",{className:"admin-hint chat-diff-locked",children:["🔒 ",r]})}):null]})}function R0({text:e,label:t}){const[n,r]=S.useState(!1),a=async()=>{var s;try{await((s=navigator.clipboard)==null?void 0:s.writeText(e)),r(!0),setTimeout(()=>r(!1),1500)}catch{}};return i.jsx("button",{type:"button",className:"chat-card-copy",title:`Copy ${t}`,onClick:()=>void a(),children:n?"✓ Copied":"⧉ Copy"})}function _ye({result:e}){const t=e.verdict==="pass"?"✅":e.verdict==="fail"?"❌":"📋";return i.jsxs("div",{className:`chat-result-card chat-result-${e.verdict}`,children:[i.jsxs("div",{className:"chat-result-head",children:[i.jsx("span",{className:"chat-result-icon",children:t}),i.jsx("span",{className:"chat-result-title",children:e.title}),i.jsx("span",{className:"chat-result-meta",children:e.verdict}),i.jsx(R0,{text:e.body,label:"result output"})]}),i.jsx("pre",{className:"chat-result-body",children:e.body})]})}function Aye({deploy:e}){return i.jsxs("div",{className:"chat-deploy-card",children:[i.jsxs("div",{className:"chat-deploy-head",children:[i.jsx("span",{className:"chat-deploy-icon",children:"🚀"}),i.jsx("span",{className:"chat-deploy-title",children:e.title||"Deployment"}),i.jsx(R0,{text:e.url,label:"deployment URL"})]}),i.jsx("a",{className:"chat-deploy-url",href:e.url,target:"_blank",rel:"noopener noreferrer",children:e.url})]})}function Cye({children:e}){const t=S.useRef(null),n=r=>{if(!t.current)return;const a=Array.from(t.current.querySelectorAll("[data-artifact-card]"));if(a.length===0)return;const s=a.indexOf(document.activeElement);let o=-1;r.key==="ArrowDown"?o=s+1>=a.length?0:s+1:r.key==="ArrowUp"?o=s-1<0?a.length-1:s-1:r.key==="Home"?o=0:r.key==="End"&&(o=a.length-1),o>=0&&o!==s&&(r.preventDefault(),a[o].focus())};return i.jsx("div",{className:"chat-artifacts",ref:t,role:"group","aria-label":"Artifacts",onKeyDown:n,children:e})}function Tye({task:e,onCancel:t}){const n=e.status==="running",r=e.logs.map(a=>D_(a.text)).join(`
204
- `);return i.jsxs("div",{className:`chat-task-card${n?" chat-task-running":e.status==="done"?" chat-task-ok":" chat-task-err"}`,children:[i.jsxs("div",{className:"chat-task-head",children:[i.jsx("span",{className:"chat-task-icon",children:"⚙️"}),i.jsx("code",{className:"chat-task-cmd",children:e.command}),i.jsx("span",{className:"chat-task-status",title:e.status,children:Eye[e.status]}),!n&&e.exitCode!==null?i.jsxs("span",{className:"chat-task-exit",children:["exit ",e.exitCode]}):null,!n&&e.durationMs!==null?i.jsxs("span",{className:"chat-task-dur",children:[e.durationMs,"ms"]}):null,r?i.jsx(R0,{text:r,label:"task output"}):null,n&&t?i.jsx("button",{className:"admin-mini-btn",type:"button",onClick:t,children:"⏹ Cancel"}):null]}),i.jsx("pre",{className:"chat-task-logs",role:"log",children:e.logs.length>0?e.logs.map((a,s)=>{const o=e.logs[s-1],l=o&&o.stream!==a.stream,c=D_(a.text)||" ";return i.jsxs("div",{children:[l?i.jsx("div",{className:`chat-task-log-sep chat-task-log-sep-${a.stream}`,"aria-hidden":"true",children:a.stream}):null,i.jsx("div",{className:`chat-task-log chat-task-log-${a.stream}`,children:c})]},s)}):i.jsx("div",{className:"admin-hint",children:n?"Waiting for output…":"(no output)"})})]})}function B_({draft:e,onAccept:t,onReject:n,onEdit:r}){const a=e.status??"pending",s=e.markdown.split(`
205
- `),o=s.findIndex(c=>c.startsWith("# "))>=0?s.findIndex(c=>c.startsWith("# ")):0,l=s.slice(o,o+14).join(`
206
- `);return i.jsxs("div",{className:`chat-draft-card${a==="saved"?" chat-draft-saved":""}${a==="rejected"?" chat-draft-rejected":""}`,children:[i.jsxs("div",{className:"chat-draft-head",children:[i.jsx("span",{className:"chat-draft-icon",children:"🧠"}),i.jsxs("span",{className:"chat-draft-title",children:["New skill draft: ",e.name]}),i.jsx("span",{className:"chat-draft-meta",children:"pending your review"})]}),i.jsx("p",{className:"chat-draft-desc",children:e.description}),i.jsx("pre",{className:"chat-draft-body",children:l}),a==="saving"?i.jsx("div",{className:"admin-hint",children:"Saving…"}):a==="saved"?i.jsx("div",{className:"admin-hint",children:"✅ Saved — the skill is live: load it in chat or see it in the Agent Hub Skills tab."}):a==="rejected"?i.jsx("div",{className:"admin-hint",children:"🗑️ Rejected — the draft was discarded, nothing was saved."}):i.jsxs("div",{className:"chat-draft-actions",children:[i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>t(e.name),children:"✅ Accept"}),i.jsx("button",{className:"admin-mini-btn",type:"button",onClick:()=>r(e.name),children:"✏️ Edit"}),i.jsx("button",{className:"admin-mini-btn",type:"button",onClick:()=>n(e.name),children:"↩ Reject"})]})]})}function Oye({request:e,onSave:t}){const[n,r]=S.useState({}),[a,s]=S.useState(!1),o=e.missing.every(u=>{var d;return(d=n[u])==null?void 0:d.trim()}),l=e.missing.filter(u=>e.persisted[u]),c=e.missing.filter(u=>!e.persisted[u]);return i.jsxs("div",{className:"chat-secret-card",children:[i.jsxs("div",{className:"chat-secret-head",children:[i.jsx("span",{className:"chat-secret-icon",children:"🔐"}),i.jsxs("span",{className:"chat-secret-title",children:[e.skillName," needs environment variables"]})]}),l.length>0?i.jsxs("div",{className:"chat-secret-persisted",children:["Already configured: ",l.map(u=>i.jsx("code",{children:u},u)).join(", ")]}):null,c.length>0&&!a?i.jsxs("div",{className:"chat-secret-fields",children:[c.map(u=>i.jsxs("div",{className:"chat-secret-row",children:[i.jsxs("label",{className:"chat-secret-label",htmlFor:`secret-${u}`,children:[u,":"]}),i.jsx("input",{id:`secret-${u}`,className:"chat-secret-input",type:"password",placeholder:`Enter ${u} value…`,value:n[u]??"",onChange:d=>r(f=>({...f,[u]:d.target.value}))})]},u)),i.jsx("button",{className:"admin-refresh-btn",type:"button",disabled:!o,onClick:()=>{t(n),s(!0)},children:"💾 Save to ~/.buff/.env"})]}):a?i.jsx("div",{className:"admin-hint",children:"✅ Saved — the skill will pick up these values on next load."}):i.jsx("div",{className:"admin-hint",children:"All required env vars are already configured."})]})}function Pye({result:e}){const[t,n]=S.useState(!1),r=e.success?"✅":"❌",a=e.success?"Success":`Failed (exit ${e.exitCode})`,s=e.success?"chat-exec-success":"chat-exec-failure",o=new Date(e.timestamp).toLocaleTimeString();return i.jsxs("div",{className:`chat-exec-card ${s}`,children:[i.jsxs("div",{className:"chat-exec-head",onClick:()=>n(!t),style:{cursor:"pointer"},children:[i.jsx("span",{className:"chat-exec-icon",children:"📜"}),i.jsx("span",{className:"chat-exec-title",children:e.skillName}),i.jsxs("span",{className:"chat-exec-status",children:[r," ",a]}),i.jsxs("span",{className:"chat-exec-meta",children:[e.runtime," · ",e.durationMs,"ms · ",o]}),i.jsx("span",{className:"chat-exec-expand",children:t?"▼":"▶"})]}),t&&i.jsxs("div",{className:"chat-exec-body",children:[e.stdout&&i.jsxs("div",{className:"chat-exec-section",children:[i.jsx("div",{className:"chat-exec-section-title",children:"stdout"}),i.jsx("pre",{className:"chat-exec-output",children:e.stdout})]}),e.stderr&&i.jsxs("div",{className:"chat-exec-section chat-exec-stderr",children:[i.jsx("div",{className:"chat-exec-section-title",children:"stderr"}),i.jsx("pre",{className:"chat-exec-output",children:e.stderr})]}),i.jsxs("div",{className:"chat-exec-details",children:[i.jsxs("span",{children:["Runtime: ",e.runtime]}),i.jsxs("span",{children:["Exit code: ",e.exitCode]}),i.jsxs("span",{children:["Duration: ",e.durationMs,"ms"]})]})]})]})}function Rye(e){return e==="done"?"✅":e==="running"?"🔄":e==="blocked"?"⛔":"⬜"}function Mye(e){return e==="done"?"done":e==="running"?"in progress":e==="blocked"?"blocked":"pending"}function z_({plan:e}){const t=e.steps.length,n=e.steps.filter(c=>c.status==="done").length,r=e.steps.filter(c=>c.status==="blocked").length,a=t===0?0:Math.round(n/t*100),s=t>0&&n===t,o=t>0&&e.steps.every(c=>c.status==="done"||c.status==="blocked"),l=e.steps.some(c=>c.note);return i.jsxs("div",{className:`chat-plan-card${s?" chat-plan-complete":""}`,children:[i.jsxs("div",{className:"chat-plan-head",children:[i.jsx("span",{className:"chat-plan-icon",children:"🗂️"}),i.jsx("span",{className:"chat-plan-goal",children:e.goal}),i.jsxs("span",{className:"chat-plan-count",children:[n,"/",t," done · ",a,"%"]})]}),i.jsx("div",{className:"chat-plan-bar",role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":a,children:i.jsx("span",{className:"chat-plan-bar-fill",style:{width:`${a}%`}})}),i.jsxs("table",{className:"chat-plan-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{className:"chat-plan-col-n",children:"#"}),i.jsx("th",{children:"Step"}),i.jsx("th",{className:"chat-plan-col-status",children:"Status"}),l?i.jsx("th",{children:"Notes"}):null]})}),i.jsx("tbody",{children:e.steps.map((c,u)=>i.jsxs("tr",{className:`chat-plan-row chat-plan-row-${c.status}`,children:[i.jsx("td",{className:"chat-plan-col-n",children:u+1}),i.jsx("td",{className:"chat-plan-step-text",children:c.description}),i.jsxs("td",{className:"chat-plan-col-status",children:[i.jsx("span",{className:"chat-plan-step-icon",children:Rye(c.status)})," ",Mye(c.status)]}),l?i.jsx("td",{className:"chat-plan-note",children:c.note??""}):null]},c.id))})]}),o?i.jsx("div",{className:"chat-plan-settled",children:s?`✅ Plan complete — ${n}/${t} steps achieved`:`📋 Plan settled — ${n}/${t} achieved, ${r} blocked`}):null]})}function F_({tools:e,live:t}){return!e||e.length===0?null:i.jsx("div",{className:`chat-tool-cards${t?" chat-tool-cards-live":""}`,children:e.map(n=>{const r=n.phase==="started"||n.ok===void 0,a=n.ok===!1;return i.jsxs("div",{className:`chat-tool-card${r?" chat-tool-running":a?" chat-tool-err":" chat-tool-ok"}`,children:[i.jsxs("div",{className:"chat-tool-head",children:[i.jsx("span",{className:"chat-tool-icon",children:Sye(n.tool)}),i.jsx("span",{className:"chat-tool-name",children:n.tool}),n.args?i.jsx("code",{className:"chat-tool-args",children:n.args}):null,i.jsx("span",{className:"chat-tool-status",title:r?"running":a?"failed":"done",children:r?"⏳":a?"✗":"✓"}),n.durationMs!==void 0&&!r?i.jsxs("span",{className:"chat-tool-dur",children:[n.durationMs,"ms"]}):null]}),n.error||n.result?i.jsxs("details",{className:"chat-tool-detail",children:[i.jsx("summary",{children:a?"Error":"Result"}),i.jsx("pre",{className:"chat-tool-body",children:n.error||n.result})]}):null]},n.id)})})}function Iye(e){return(e.evidence??[]).filter(t=>typeof(t==null?void 0:t.ref)=="string"&&t.ref.trim().length>0)}function U_({findings:e}){return!e||e.length===0?null:i.jsx("div",{className:"chat-finding-cards",children:e.map((t,n)=>{const r=Iye(t),a=t.verdict==="CONFIRMED"&&r.length>0;return i.jsxs("div",{className:`chat-finding-card ${a?"chat-finding-confirmed":"chat-finding-plausible"}`,children:[i.jsxs("div",{className:"chat-finding-head",children:[i.jsx("span",{className:"chat-finding-icon","aria-hidden":"true",children:a?"✅":"🔎"}),i.jsx("span",{className:"chat-finding-claim",children:t.claim}),i.jsx("span",{className:`chat-finding-verdict ${a?"chat-finding-verdict-ok":"chat-finding-verdict-guess"}`,title:a?"a check was performed and is shown below":"reasoned, not verified",children:a?"CONFIRMED":"PLAUSIBLE"})]}),t.outcome?i.jsx("div",{className:"chat-finding-outcome",children:t.outcome}):null,r.length>0?i.jsx("ul",{className:"chat-finding-evidence",children:r.map((s,o)=>i.jsxs("li",{children:[i.jsx("span",{className:"chat-finding-kind",children:s.kind}),i.jsx("code",{className:"chat-finding-ref",children:s.ref}),s.detail?i.jsxs("span",{className:"chat-finding-detail",children:["(",s.detail,")"]}):null]},o))}):i.jsx("div",{className:"chat-finding-noevidence",children:"no evidence — reported as PLAUSIBLE, not verified"}),t.source?i.jsxs("div",{className:"chat-finding-source",children:["source: ",t.source]}):null]},`${n}-${t.claim}`)})})}function $ye({worktree:e}){return i.jsxs("div",{className:"chat-worktree-card",children:[i.jsxs("div",{className:"chat-worktree-head",children:[i.jsx("span",{className:"chat-worktree-icon","aria-hidden":"true",children:"🌿"}),i.jsx("span",{className:"chat-worktree-title",children:"Ran in an isolated worktree"}),i.jsx("span",{className:`chat-worktree-state ${e.removed?"chat-worktree-gone":"chat-worktree-kept"}`,children:e.removed?"removed":"kept"})]}),i.jsxs("div",{className:"chat-worktree-meta",children:[i.jsx("code",{className:"chat-worktree-dir",title:e.dir,children:e.dir}),i.jsxs("span",{className:"admin-hint",children:["base ",e.base.slice(0,7)]})]}),i.jsx("div",{className:"chat-worktree-note admin-hint",children:e.removed?"the diff below is what is left of it — nothing was written into the project tree":"the directory above is still on disk"}),i.jsx(wc,{diff:e.diff.payload})]})}function Lye({resume:e}){return i.jsxs("div",{className:"chat-resume-card",children:[i.jsxs("div",{className:"chat-resume-head",children:[i.jsx("span",{className:"chat-resume-icon","aria-hidden":"true",children:"↩️"}),i.jsx("span",{className:"chat-resume-title",children:"Resumed a recorded run"}),i.jsx("span",{className:`chat-resume-state ${e.saved?"chat-resume-saved":"chat-resume-unsaved"}`,title:e.saved?"the record was written back, so a later resume can replay this run":"the record could NOT be written — a later resume will replay nothing from this run",children:e.saved?"recorded":"not recorded"})]}),i.jsxs("div",{className:"chat-resume-meta",children:[i.jsxs("span",{children:[e.replayed," step",e.replayed===1?"":"s"," replayed"]}),i.jsxs("span",{children:[e.modelCalls," model call",e.modelCalls===1?"":"s"," made"]}),typeof e.callsAvoided=="number"&&e.callsAvoided>0&&i.jsxs("span",{className:"chat-resume-saved-calls",title:"model calls the resume did not re-pay for",children:[e.callsAvoided," model call",e.callsAvoided===1?"":"s"," saved"]}),i.jsx("code",{className:"chat-resume-id",title:"the checkpoint record this run used",children:e.id})]}),i.jsx("div",{className:"chat-resume-note",children:e.notice})]})}function Dye({report:e}){const t=e.verification==="verified"?"VERIFIED":e.verification==="unverified"?"UNVERIFIED":e.verification==="blocked"?"BLOCKED":"no changes",n=[];return e.flags.unverifiedActionClaim&&n.push("claimed an action no tool ran"),e.flags.unverifiedEditClaim&&n.push("claimed a fix nothing verified"),e.flags.unverifiedBuildClaim&&n.push("claimed a failing build worked"),e.flags.unverifiedEdit&&n.push("edited without verifying"),e.flags.undeliveredArtifact&&n.push("deliverable never written"),e.flags.unfulfilledPromise&&n.push("promised an action it did not take"),e.flags.noActionTaken&&n.push("no action taken"),i.jsxs("div",{className:`chat-turn-card chat-turn-${e.verification}`,children:[i.jsxs("div",{className:"chat-turn-head",children:[i.jsx("span",{className:"chat-turn-icon","aria-hidden":"true",children:"📋"}),i.jsx("span",{className:"chat-turn-title",children:"Turn report"}),e.planned?i.jsxs("span",{className:"chat-turn-count",children:[e.stepCounts.done,"/",e.stepCounts.total," steps"]}):null,i.jsx("span",{className:"chat-turn-verdict",title:"derived from recorded evidence, never the model's own narration",children:t})]}),e.summary?i.jsx("div",{className:"chat-turn-summary",children:e.summary}):null,e.steps.length>0?i.jsx("ul",{className:"chat-turn-steps",children:e.steps.map(r=>i.jsxs("li",{className:`chat-turn-step chat-turn-step-${r.status}`,children:[i.jsx("span",{className:"chat-turn-step-icon","aria-hidden":"true",children:r.status==="done"?"✅":r.status==="running"?"🔄":r.status==="blocked"?"⛔":"⬜"}),i.jsx("span",{className:"chat-turn-step-text",children:r.description}),r.note?i.jsx("span",{className:"chat-turn-step-note",children:r.note}):null,r.evidence?i.jsx("span",{className:"chat-turn-step-evidence",children:r.evidence}):null]},r.id))}):null,e.changedPaths.length>0?i.jsxs("div",{className:"chat-turn-files",children:[e.changedPaths.length," file",e.changedPaths.length===1?"":"s"," changed:"," ",i.jsxs("code",{children:[e.changedPaths.slice(0,6).join(", "),e.changedPaths.length>6?` +${e.changedPaths.length-6} more`:""]})]}):null,n.length>0?i.jsx("div",{className:"chat-turn-flags",children:n.map(r=>i.jsxs("span",{className:"chat-turn-flag",children:["⚠️ ",r]},r))}):null]})}function ov(){try{if(typeof crypto<"u"&&typeof crypto.randomUUID=="function")return crypto.randomUUID()}catch{}return`chat-${Date.now()}-${Math.random().toString(36).slice(2,8)}`}const l$="nuvira.dashboard.chat.activeSession";function Bye(){try{const e=sessionStorage.getItem(l$);return e&&e.length>0&&e.length<=64?e:null}catch{return null}}function lv(e){try{sessionStorage.setItem(l$,e)}catch{}}function zye(e,t){const n=t.trim().toLowerCase(),r=n?e.filter(u=>`${u.title} ${u.preview} ${u.firstUser}`.toLowerCase().includes(n)):e,a=[],s=new Date,o=new Date(s.getFullYear(),s.getMonth(),s.getDate()).getTime(),l=864e5,c=[{label:"Today",match:u=>u>=o},{label:"Yesterday",match:u=>u>=o-l&&u<o},{label:"This week",match:u=>u>=o-7*l&&u<o-l},{label:"Older",match:()=>!0}];for(const u of c){const d=r.filter(f=>u.match(f.updatedAt));d.length>0&&a.push({label:u.label,items:d})}return a}function Fye(){var Fl,Ul,Wl,Hl,Gl;const[e,t]=S.useState(null),n=Ds(),[r,a]=S.useState(mye);S.useEffect(()=>{Z.fetchLimits().then(R=>{R&&R.attachmentMaxBytes>0&&a(R.attachmentMaxBytes)})},[]),S.useEffect(()=>{Z.fetchProcessEnv().then(R=>{const ee=R.find(te=>te.name==="NUVIRA_CAPABILITY_MODE");ee&&E(Nye(ee.processValue??ee.fileValue))})},[]),S.useEffect(()=>{Z.listRoutableModels().then(R=>M(R))},[]);const[s,o]=S.useState([]),[l,c]=S.useState(""),[u,d]=S.useState(!1),[f,h]=S.useState(""),[p,g]=S.useState(null),[m,y]=S.useState(!1),[v,k]=S.useState(!1),[x,j]=S.useState(!1),[w,b]=S.useState(""),[N,E]=S.useState("balanced"),[O,C]=S.useState(""),[P,$]=S.useState(null),[B,M]=S.useState([]),[F,L]=S.useState(null),[W,A]=S.useState([]),[z,T]=S.useState([]),[K,D]=S.useState(null),[I,ce]=S.useState(null),[ge,ve]=S.useState(null),[Ce,Q]=S.useState([]),[X,ie]=S.useState([]),[fe,J]=S.useState([]),[ye,je]=S.useState(null),_e=S.useRef([]),be=S.useRef([]),$e=S.useRef(null),he=S.useRef(null),Je=S.useRef(null),Le=S.useRef([]),[Oe,nt]=S.useState(""),qe=S.useRef(""),Ct=S.useRef(null),[fn,U]=S.useState(null),V=S.useRef(Bye()??ov()),oe=S.useRef(""),[pe,Ne]=S.useState([]),[Be,vt]=S.useState(!0),[yt,hn]=S.useState(""),[Kt,bt]=S.useState(null),[St,an]=S.useState(""),[qr,Vt]=S.useState([]),[Nr,Yt]=S.useState(null),[Rn,Er]=S.useState(!1),pa=S.useRef(null),Wa=S.useRef(null),[rt,Ii]=S.useState(null),[sr,Kr]=S.useState(null),[Xt,$i]=S.useState([]),[_r,Li]=S.useState(""),[Di,ma]=S.useState(""),[Ar,Bi]=S.useState(!1),[Gn,Us]=S.useState(""),[Ha,zi]=S.useState([]),[Fi,Ws]=S.useState(null),[H,ue]=S.useState(!1),[Pe,Te]=S.useState([]),[Vr,Hs]=S.useState([]),[or,Gs]=S.useState(""),Ui=S.useRef(null),We=S.useRef(null),Wi=S.useRef(null),ga=S.useRef(null),[zt,Ga]=S.useState(null),[lr,Hi]=S.useState(new Set),[Cr,qs]=S.useState("");S.useEffect(()=>{Z.fetchAdminAuthStatus().then(R=>{t(R?{configured:R.configured,authenticated:R.authenticated,role:R.role??null}:{configured:!1,authenticated:!1,role:null})})},[n]),S.useEffect(()=>{var R,ee;try{(ee=(R=Wi.current)==null?void 0:R.scrollTo)==null||ee.call(R,{top:Wi.current.scrollHeight})}catch{}},[s,u,W]),S.useEffect(()=>()=>{var R;(R=We.current)==null||R.call(We),We.current=null},[]);const Ks=S.useCallback(async R=>{var ke,pn;(ke=We.current)==null||ke.call(We),We.current=null;const ee=await Z.getChatSession(R);if(!ee)return;V.current=R,lv(R),o(ee.turns.map(xt=>({role:xt.role,content:xt.content,...xt.role==="assistant"?{followups:[],artifacts:sv(xt.content)}:{}}))),A([]),_e.current=[],T([]),be.current=[],D(null),$e.current=null,ce(null),he.current=null,ve(null),Je.current=null,Q([]),Le.current=[],qe.current="",nt(""),U(null),h(""),L(null),je(null),Ga(null),vt(!0),$(ee.pinnedProvider&&ee.pinnedModel?{provider:ee.pinnedProvider,model:ee.pinnedModel}:null);const te=ee.projectPath;if(te){if(Kr(te),(rt==null?void 0:rt.path)===te)return;(pn=ga.current)==null||pn.call(ga,te)}else Kr(null)},[rt]),Vs=S.useCallback(()=>{var R;(R=We.current)==null||R.call(We),We.current=null,V.current=ov(),lv(V.current),Kr(null),$(null),o([]),A([]),_e.current=[],T([]),be.current=[],D(null),$e.current=null,ce(null),he.current=null,ve(null),Je.current=null,Q([]),Le.current=[],qe.current="",nt(""),U(null),h(""),L(null),je(null),Ga(null),Vt([]),Yt(null),c(""),vt(!0)},[]),qn=S.useCallback(R=>{Vt(ee=>[...ee,R].slice(-10))},[]),Sm=S.useCallback(R=>{Vt(ee=>ee.filter((te,ke)=>ke!==R))},[]),ld=S.useCallback(async R=>{if(!R)return;if(R.size>r){h(`Attachment "${R.name}" is too large (max ${Math.round(r/1024)} KB). Raise the cap in Admin → Process Environment (NUVIRA_ATTACHMENT_MAX_BYTES).`);return}const ee=new Uint8Array(await R.slice(0,8192).arrayBuffer()),te=wye(R.name,ee);if(te.how==="unsupported"){h(te.reason);return}if(te.how==="binary"){const pn=new Uint8Array(await R.arrayBuffer());qn({name:R.name,content:xye(pn),kind:"file",encoding:"base64"});return}const ke=await R.text();qn({name:R.name,content:ke,kind:"file",encoding:"text"})},[qn]),Ys=S.useCallback(R=>{const ee=R.currentTarget,te=R.clipboardData.getData("text")||"";te.length>=gye&&(Wa.current={start:ee.selectionStart,end:ee.selectionEnd},Yt({text:te}))},[]),Yr=S.useCallback(()=>{const R=Nr;if(!R)return;const ee=Wa.current;c(te=>ee?te.slice(0,ee.start)+te.slice(ee.end):te),qn({name:"pasted-text.txt",content:R.text,kind:"paste",encoding:"text"}),Yt(null),Wa.current=null},[Nr,qn]),cd=S.useCallback(R=>{bt(R.id),an(R.title==="(untitled conversation)"?"":R.title)},[]),It=S.useCallback(async R=>{const ee=await Z.renameChatSession(R,St);ee.ok?Ne(te=>te.map(ke=>ke.id===R?{...ke,title:St.trim()||ke.title}:ke)):h(ee.error||"Could not rename the session."),bt(null),an("")},[St]),ud=S.useCallback(async R=>{const ee=await Z.deleteChatSession(R);ee.ok?(Ne(te=>te.filter(ke=>ke.id!==R)),V.current===R&&Vs()):h(ee.error||"Could not delete the session.")},[Vs]),Gi=(e==null?void 0:e.authenticated)===!0&&(e.role==="admin"||e.role==="operator"),dd=S.useRef(!1);S.useEffect(()=>{if(!Gi||dd.current)return;dd.current=!0;const R=V.current;let ee=!1,te=null;const ke=async()=>{const pn=await Z.getChatSession(R);ee||pn&&(Ct.current||o(pn.turns.map(xt=>({role:xt.role,content:xt.content,...xt.role==="assistant"?{followups:[],artifacts:sv(xt.content)}:{}}))),d(pn.busy===!0),pn.busy&&(te=setTimeout(()=>void ke(),2500)))};return ke(),()=>{ee=!0,te&&clearTimeout(te)}},[Gi]),S.useEffect(()=>{Gi&&(Z.listChatSessions().then(R=>{Array.isArray(R)&&Ne(R)}),Z.listProjects().then(R=>{Array.isArray(R)&&$i(R)}))},[Gi]);const Tr=S.useCallback(async R=>{const ee=R.trim();if(!ee)return;ma("");const te=await Z.attachProject(ee);if(te.ok&&te.project){Ii(te.project),Li("");const ke=await Z.listProjects();Array.isArray(ke)&&$i(ke)}else ma(te.error||"Could not attach that directory.")},[]);ga.current=Tr;const Xr=S.useCallback(async R=>{Bi(!0),ue(!0),Gs("");const ee=await Z.browseDirectories(R,{showDrives:!R});ee.ok&&(Us(ee.path),zi(ee.entries),Ws(ee.parent),ee.drives&&Te(ee.drives),ee.breadcrumbs&&Hs(ee.breadcrumbs)),ue(!1)},[]),Ml=S.useCallback(async R=>{ue(!0),Gs("");const ee=await Z.browseDirectories(R);ee.ok&&(Us(ee.path),zi(ee.entries),Ws(ee.parent),ee.breadcrumbs&&Hs(ee.breadcrumbs)),ue(!1)},[]),Il=S.useCallback(async()=>{if(!Gn)return;const R=await Z.browseDirectories(Gn);R.ok&&zi(R.entries)},[Gn]);S.useEffect(()=>Z.onChatRetryEvent(ee=>{if(ee.sessionId!==V.current){Z.listChatSessions().then(te=>{Array.isArray(te)&&Ne(te)});return}o(te=>[...te,{role:"assistant",content:ee.content}]),ee.kind==="answer"&&U(null)}),[]),S.useEffect(()=>(Ar&&Gn&&(Ui.current=setInterval(()=>{Il()},5e3)),()=>{Ui.current&&clearInterval(Ui.current)}),[Ar,Gn,Il]);const jm=S.useCallback(async()=>{if(typeof window<"u"&&"showDirectoryPicker"in window)try{const te=(await window.showDirectoryPicker({mode:"read"})).name;if(!te){Xr();return}ma(""),d(!0);const ke=await Z.resolveFolder(te);d(!1),ke.ok&&ke.path?(Li(ke.path),Tr(ke.path)):ma('Folder "'+te+'" found — selecting it now. If this is wrong, type the full path below.');return}catch(ee){if((ee==null?void 0:ee.name)==="AbortError")return}Xr()},[Xr,Tr]),Tt=S.useCallback(async(R,ee)=>{var G,ae;const te=R.trim(),ke=Array.isArray(ee)?ee:qr,pn=!Array.isArray(ee)&&(ee==null?void 0:ee.skipResolve)===!0;if(!te&&ke.length===0||u)return;if(h(""),L(null),A([]),_e.current=[],T([]),be.current=[],D(null),$e.current=null,ce(null),he.current=null,ve(null),Je.current=null,Q([]),Le.current=[],o(Y=>[...Y,{role:"user",content:te,attachments:ke.length>0?ke:void 0}]),c(""),Vt([]),Yt(null),oe.current=te||`[${ke.length} attachment(s)]`,d(!0),vt(!1),!pn&&jye(te)){const me=((await Z.chatResolve(te)).matches??[])[0]??null;if(me&&me.command&&!me.ambiguous&&me.score>=.6){je({ask:te,top:me}),d(!1);return}if(me&&me.ambiguous&&!ye){je({ask:te,top:me}),d(!1);return}}const xt=V.current,Mn=new AbortController;Ct.current=Mn,U(null),(G=We.current)==null||G.call(We),We.current=Z.subscribeChat(xt,{onToken:Y=>{qe.current+=Y,nt(qe.current)},onProgress:Y=>{_e.current=[..._e.current,Y],A(_e.current)},onQuestion:Y=>{Ga(Y),Hi(new Set)},onTool:Y=>{const re=[...be.current],me=re.findIndex(ze=>ze.id===Y.id),Ie={id:Y.id,tool:Y.tool,phase:Y.phase,args:Y.args,ok:Y.ok,result:Y.result,error:Y.error,durationMs:Y.durationMs};me>=0?re[me]=Ie:re.push(Ie),be.current=re,T(re)},onPlan:Y=>{const re={goal:Y.goal,steps:Y.steps.map(kye),revision:Y.revision};$e.current=re,D(re)},onDiff:Y=>{const re={files:Y.files,summary:Y.summary};he.current=re,ce(re)},onSkillDraft:Y=>{const re={name:Y.name,description:Y.description,markdown:Y.markdown,updatedAt:Y.updatedAt,status:"pending"};Je.current=re,ve(re)},onFinding:Y=>{Le.current=[...Le.current,Y],Q(Le.current)},onSecretRequest:Y=>{ie(re=>{const me=re.findIndex(Ie=>Ie.skillName===Y.skillName);if(me>=0){const Ie=[...re];return Ie[me]=Y,Ie}return[...re,Y]})},onExecutionResult:Y=>{J(re=>[...re,Y])}});const _=await Z.chatSend(xt,te||`(see ${ke.length} attachment${ke.length===1?"":"s"})`,{...P?{provider:P.provider,model:P.model}:{},projectPath:rt==null?void 0:rt.path,attachments:ke.map(Y=>({name:Y.name,content:Y.content,kind:Y.kind,encoding:Y.encoding??"text"})),...m?{worktree:!0,keepWorktree:v}:{},...x?{resume:w.trim()||!0}:{}},Mn.signal);if(Ct.current=null,(ae=We.current)==null||ae.call(We),We.current=null,qe.current="",nt(""),_.ok){L(_.generationFailed?null:`${_.provider??"provider"}${_.model?` / ${_.model}`:" (auto-routed)"}`),U(_.generationFailed&&!_.retryQueued&&!_.refused?te:null);const Y=_.content||"(the agent produced no text — try rephrasing)";o(re=>[...re,{role:"assistant",content:Y,error:_.generationFailed,followups:_.followups,steps:_e.current,tools:be.current,plan:$e.current,diff:he.current,draft:Je.current,findings:_.findings??Le.current,worktree:_.worktree,resume:_.resume,turnReport:_.turnReport,refused:_.refused,needsProject:_.needsProject,artifacts:sv(Y)}])}else Mn.signal.aborted?(h(""),U(null)):_.unauthorized?(t(Y=>Y&&{...Y,authenticated:!1}),h("Session expired — log in again to chat.")):(h(_.error||"The agent could not answer — check that a provider API key is set for the dashboard process."),U(te));d(!1),vt(!0)},[u,rt,qr,m,v,x,w,P]),Nm=S.useCallback(()=>{var R;(R=Ct.current)==null||R.abort(),Z.chatCancel(V.current)},[]),fd=S.useCallback(async()=>{const R=N==="max"?"balanced":"max";C("");const ee=await Z.saveProcessEnvVar("NUVIRA_CAPABILITY_MODE",R);ee.ok?(E(R),C(R==="max"?"⚡ Max capability is on for the next turn.":"⚖️ Back to balanced.")):C(ee.error||"Could not change the capability mode.")},[N]),Em=S.useCallback(async()=>{g(null);const R=await Z.chatSupportBundle(V.current);g(R.ok?{kind:"ok",text:"Support bundle downloaded — attach it to your bug report."}:{kind:"err",text:R.error||"Could not build the support bundle."})},[]),$l=S.useCallback(async R=>{ve(te=>te&&{...te,status:"saving"});const ee=await Z.skillDraftAccept(R);ve(te=>te&&{...te,status:ee.ok?"saved":"error"}),ee.ok||h(ee.error||"Could not accept the draft.")},[]),Ll=S.useCallback(async R=>{const ee=await Z.skillDraftReject(R);ee.ok?ve(te=>te&&{...te,status:"rejected"}):h(ee.error||"Could not reject the draft.")},[]),Xs=S.useCallback(R=>{Tt(`Revise the skill draft "${R}" — improve it per your best judgment and present it again.`)},[Tt]),Dl=S.useCallback(async R=>{const ee=await Z.saveSecrets(R);if(!ee.ok){h(ee.error||"Could not save secrets.");return}const te=ee.refused??[];te.length>0&&h(te.map(ke=>ke.reason==="provider-credential"?`${ke.name} is a provider credential — set it up as a provider, skills never receive it.`:`${ke.name} was not saved (${ke.reason}).`).join(" "))},[]),hd=S.useCallback(async R=>{const ke=((await Z.chatResolve(R)).matches??[])[0]??null;if(!(ke!=null&&ke.command)){je(null);return}je(null),d(!0);const pn=ke.command.split(/\s+/),xt=await Z.startTask(pn,6e4);if(!xt.ok||!xt.task){h(xt.error||"The command could not be started."),d(!1);return}const Mn=xt.task.id,_={id:Mn,command:ke.command,status:xt.task.status,exitCode:xt.task.exitCode,durationMs:xt.task.durationMs,logs:xt.task.logs??[]};o(me=>[...me,{role:"assistant",content:"",task:_}]);const G=me=>o(Ie=>Ie.map(ze=>ze.task&&ze.task.id===Mn?{...ze,task:{...ze.task,...me}}:ze));let ae=null;ae=Z.subscribeTask(Mn,{onLog:me=>o(Ie=>Ie.map(ze=>ze.task&&ze.task.id===Mn?{...ze,task:{...ze.task,logs:[...ze.task.logs,me]}}:ze)),onStatus:me=>{G({status:me}),me!=="running"&&(Z.getTask(Mn).then(Ie=>{Ie!=null&&Ie.task&&G({exitCode:Ie.task.exitCode,durationMs:Ie.task.durationMs,logs:Ie.task.logs??[]})}),ae==null||ae(),d(!1))}});const Y=await Z.getTask(Mn);Y!=null&&Y.task&&G({status:Y.task.status,exitCode:Y.task.exitCode,durationMs:Y.task.durationMs,logs:Y.task.logs??[]});const re=await Z.getTask(Mn);re!=null&&re.task&&re.task.status!=="running"&&(ae==null||ae(),G({status:re.task.status,exitCode:re.task.exitCode,durationMs:re.task.durationMs,logs:re.task.logs??[]}),d(!1))},[]),_m=S.useCallback(R=>{je(null),Tt(R,{skipResolve:!0})},[Tt]),pd=S.useCallback(R=>{if(R.length===0)return;const ee=rt?` in the attached project ${rt.path}`:"";Tt(`Commit exactly these files that I accepted on the diff card (and nothing else)${ee}: ${R.join(", ")}. Show me a short confirmation before finishing.`)},[Tt,rt]),Qs=S.useCallback(async R=>{await Z.cancelTask(R)},[]),va=S.useCallback(async R=>{const ee=zt;if(!ee)return;Ga(null),qs(""),Hi(new Set);const te=await Z.chatRespond(V.current,ee.questionId,R);te.ok||h(te.error||"The question could not be answered — try sending your message again.")},[zt]),Bl=S.useCallback(()=>{if(!zt)return;const R=Cr.trim(),ee=zt.multiSelect?[...lr]:[...lr][0];zt.multiSelect?va({index:[...lr],...R?{custom:R}:{}}):va(R?{index:-1,custom:R}:ee!==void 0?{index:ee}:{index:-1})},[zt,lr,Cr,va]),md=S.useCallback(()=>{zt&&va({index:-1})},[zt,va]),gd=S.useCallback(R=>{Hi(ee=>{const te=new Set(ee);return zt!=null&&zt.multiSelect?te.has(R)?te.delete(R):te.add(R):(te.clear(),te.add(R)),te})},[zt]),vd=S.useCallback(async()=>{var ee;(ee=We.current)==null||ee.call(We),We.current=null,V.current=ov(),lv(V.current),o([]),A([]),_e.current=[],T([]),be.current=[],D(null),$e.current=null,ce(null),he.current=null,ve(null),Je.current=null,Q([]),Le.current=[],qe.current="",nt(""),U(null),h(""),L(null),je(null),Ga(null);const R=await Z.listChatSessions();Array.isArray(R)&&Ne(R)},[]),zl=((Fl=[...s].reverse().find(R=>{var ee;return R.role==="assistant"&&!R.error&&(((ee=R.followups)==null?void 0:ee.length)??0)>0}))==null?void 0:Fl.followups)??[];return i.jsxs("div",{className:"panel",children:[i.jsx(Me,{icon:"💬",title:"Chat with the agent",actions:i.jsxs("div",{className:"chat-head-actions",children:[F?i.jsx("span",{className:"admin-hint",children:F}):null,i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>void vd(),disabled:u||s.length===0,children:"🗑 New conversation"})]})}),e!=null&&e.authenticated?Gi?i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"chat-project-bar",children:rt?i.jsxs("div",{className:"chat-project-attached",children:[i.jsx("span",{className:"chat-project-icon",children:"📁"}),i.jsx("span",{className:"chat-project-name",children:rt.name}),i.jsxs("span",{className:"chat-project-meta",children:[rt.fileCount," files · ",rt.symbolCount," symbols",rt.truncated?" · truncated map":""]}),i.jsx("span",{className:"chat-project-path",title:rt.path,children:rt.path}),i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>Ii(null),children:"✕ detach"})]}):i.jsxs("div",{className:"chat-project-pick",children:[i.jsx("span",{className:"chat-project-icon",children:"📁"}),i.jsx("span",{className:"chat-project-hint",children:"Select Project Folder"}),Xt.find(R=>R.kind==="cwd")?i.jsxs("span",{className:"chat-project-cwd",title:"Working directory used when no folder is attached",children:["⚙️ ",Xt.find(R=>R.kind==="cwd").path]}):null,Xt.length>0?i.jsx("span",{className:"chat-project-chips",children:Xt.filter(R=>R.kind!=="cwd").slice(0,3).map(R=>i.jsx("button",{type:"button",className:"chat-chip",onClick:()=>void Tr(R.path),children:R.name},R.path))}):null,i.jsx("input",{className:"chat-project-input",value:_r,onChange:R=>Li(R.target.value),onKeyDown:R=>{R.key==="Enter"&&(R.preventDefault(),Tr(_r))},placeholder:"or type a path, e.g. ~/code/my-app",disabled:u}),i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>void Tr(_r),disabled:u||!_r.trim(),children:"Attach"}),i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>void jm(),title:"Pick a project folder using your system's folder picker (Finder / Explorer)",children:"🗂️ Browse"}),Di?i.jsx("span",{className:"chat-project-error",children:Di}):null,Ar?i.jsxs("div",{className:"chat-browse-popover",children:[i.jsxs("div",{className:"chat-browse-head",children:[i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>Bi(!1),title:"Close",children:"✕"}),i.jsx("div",{className:"chat-browse-breadcrumbs",children:Pe.length>0&&!Gn?i.jsx("span",{className:"admin-hint",children:"Select a drive or home folder:"}):i.jsxs(i.Fragment,{children:[i.jsx("button",{type:"button",className:"chat-breadcrumb",onClick:()=>void Xr(),children:"🏠"}),Vr.map((R,ee)=>i.jsxs("span",{children:[i.jsx("span",{className:"chat-breadcrumb-sep",children:"/"}),i.jsx("button",{type:"button",className:"chat-breadcrumb",onClick:()=>void Ml(R.path),children:R.name})]},R.path))]})})]}),Pe.length>0&&!Gn?i.jsx("div",{className:"chat-browse-drives",children:Pe.map(R=>i.jsx("button",{type:"button",className:"chat-browse-drive",onClick:()=>void Ml(R.path),children:R.name},R.path))}):null,Ha.length>5?i.jsx("div",{className:"chat-browse-search",children:i.jsx("input",{type:"text",className:"chat-browse-filter",placeholder:"🔍 Filter folders…",value:or,onChange:R=>Gs(R.target.value),autoFocus:!0})}):null,i.jsx("div",{className:"chat-browse-list",children:H?i.jsx("span",{className:"admin-hint",children:"Loading…"}):Ha.length===0?i.jsx("span",{className:"admin-hint",children:"No subdirectories found"}):Ha.filter(R=>!or||R.name.toLowerCase().includes(or.toLowerCase())).map(R=>i.jsxs("button",{type:"button",className:"chat-browse-entry",onClick:()=>void Ml(R.path),children:[i.jsx("span",{className:"chat-browse-entry-icon",children:"📁"}),i.jsx("span",{className:"chat-browse-entry-name",children:R.name}),R.modified?i.jsx("span",{className:"chat-browse-entry-date",children:new Date(R.modified).toLocaleDateString()}):null]},R.path))}),i.jsxs("div",{className:"chat-browse-foot",children:[i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>void Il(),title:"Refresh folder list",children:"🔄"}),i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>{Bi(!1),Tr(Gn)},disabled:!Gn,children:"📁 Select this folder"})]})]}):null]})}),sr&&(!rt||rt.path!==sr)?i.jsxs("div",{className:"chat-session-project-banner",children:[i.jsxs("span",{children:["⚠️ This conversation was working in ",i.jsx("code",{children:sr})]}),rt?i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>void Tr(sr),children:"📁 Switch to it"}):i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>void Tr(sr),children:"📁 Attach it"})]}):null,i.jsxs("div",{className:"chat-layout",children:[Be?i.jsxs("div",{className:"chat-sidebar",children:[i.jsxs("div",{className:"chat-sidebar-head",children:[i.jsx("span",{children:"📁 Sessions"}),i.jsxs("div",{className:"chat-sidebar-head-actions",children:[i.jsx("button",{type:"button",className:"chat-mini-action",title:"New chat",onClick:Vs,children:"+ New"}),i.jsx("button",{type:"button",className:"chat-mini-action",title:"Collapse history",onClick:()=>vt(!1),children:"▸"})]})]}),i.jsx("input",{className:"chat-session-search",placeholder:"Search conversations…",value:yt,onChange:R=>hn(R.target.value)}),pe.length===0?i.jsx("div",{className:"chat-sidebar-empty",children:"No past conversations yet."}):i.jsx("div",{className:"chat-sidebar-list",children:zye(pe,yt).map(({label:R,items:ee})=>i.jsxs("div",{className:"chat-session-group",children:[i.jsx("div",{className:"chat-session-group-label",children:R}),ee.map(te=>i.jsx("div",{className:`chat-session-item${te.id===V.current?" chat-session-active":""}`,children:Kt===te.id?i.jsxs("div",{className:"chat-session-rename",children:[i.jsx("input",{autoFocus:!0,value:St,onChange:ke=>an(ke.target.value),onKeyDown:ke=>{ke.key==="Enter"&&It(te.id),ke.key==="Escape"&&bt(null)},placeholder:"Session title"}),i.jsx("button",{type:"button",className:"chat-mini-action",onClick:()=>void It(te.id),children:"✓"})]}):i.jsxs(i.Fragment,{children:[i.jsxs("button",{type:"button",className:"chat-session-main",onClick:()=>void Ks(te.id),title:te.preview||te.title,children:[i.jsx("span",{className:"chat-session-title",children:te.title}),i.jsx("span",{className:"chat-session-preview",children:te.firstUser||te.preview}),i.jsxs("span",{className:"chat-session-meta",children:[te.projectPath?`📁 ${te.projectPath.split("/").pop()} · `:"",te.turnCount," msg",te.turnCount===1?"":"s"," · ",new Date(te.updatedAt).toLocaleString()]})]}),i.jsxs("span",{className:"chat-session-actions",children:[i.jsx("button",{type:"button",className:"chat-mini-action",title:"Rename",onClick:()=>cd(te),children:"✏️"}),i.jsx("button",{type:"button",className:"chat-mini-action",title:"Delete",onClick:()=>void ud(te.id),children:"🗑"})]})]})},te.id))]},R))})]}):i.jsx("div",{className:"chat-rail",children:i.jsx("button",{type:"button",className:"chat-rail-btn",onClick:()=>vt(!0),title:"Show history",children:"📁"})}),i.jsxs("div",{className:"chat-main",children:[i.jsxs("div",{className:"chat-thread",ref:Wi,role:"log","aria-live":"polite",children:[s.length===0?i.jsxs("div",{className:"empty-state",children:[i.jsx("p",{className:"empty-state-title",children:"Say anything — the agent decides what to do (answer, fix code, plan, run the pipeline)."}),i.jsxs("div",{className:"empty-state-chips",children:[i.jsx("button",{type:"button",className:"chat-chip",onClick:()=>void Tt("what's the state of this project?"),children:"📋 assess this project"}),i.jsx("button",{type:"button",className:"chat-chip",onClick:()=>void Tt("run the test suite"),children:"🧪 run the tests"}),i.jsx("button",{type:"button",className:"chat-chip",onClick:()=>void Tt("stop the gateway"),children:"⏹ stop the gateway"}),i.jsx("button",{type:"button",className:"chat-chip",onClick:()=>void Tt("load the code-assessment skill and assess this project"),children:"🧠 load the code-assessment skill"}),i.jsx("button",{type:"button",className:"chat-chip",onClick:()=>void Tt("learn the workflow I just did as a skill"),children:"📚 learn a workflow as a skill"}),i.jsx("button",{type:"button",className:"chat-chip",onClick:()=>void Tt("publish the current version"),children:"🚀 publish the release"})]})]}):s.map((R,ee)=>i.jsxs("div",{className:`chat-bubble chat-${R.role}${R.error?" chat-error":""}`,children:[i.jsx("div",{className:"chat-bubble-role",children:R.role==="user"?"You":"🤖 Agent"}),R.role==="assistant"?i.jsx("div",{className:"chat-bubble-text",children:i.jsx(M_,{text:R.content})}):i.jsx("div",{className:"chat-bubble-text",children:R.content}),R.role==="user"&&R.attachments&&R.attachments.length>0?i.jsxs("details",{className:"chat-steps",open:R.attachments.length===1,children:[i.jsxs("summary",{children:["📎 ",R.attachments.length," attachment",R.attachments.length===1?"":"s",":"," ",R.attachments.map(te=>te.name).join(", ")]}),R.attachments.map((te,ke)=>i.jsxs("div",{className:"chat-attach-content",children:[i.jsxs("div",{className:"admin-hint",children:[te.name," — ",mt(te.content.length)," chars"]}),i.jsx("pre",{children:te.content})]},ke))]}):null,R.role==="assistant"&&R.diff?i.jsxs("details",{className:"chat-steps",open:!0,children:[i.jsxs("summary",{children:["Changes: ",R.diff.summary]}),i.jsx(wc,{diff:R.diff,selectable:!0,onCommitAccepted:pd})]}):null,R.role==="assistant"&&R.artifacts&&(R.artifacts.diffs.length>0||R.artifacts.results.length>0||R.artifacts.deploys.length>0)?i.jsxs(Cye,{children:[R.artifacts.diffs.map((te,ke)=>i.jsx("div",{"data-artifact-card":!0,tabIndex:0,role:"group","aria-label":`Diff: ${te.summary}`,className:"chat-artifact-item",children:rt?i.jsx(wc,{diff:te,selectable:!0,onCommitAccepted:pd}):i.jsx(wc,{diff:te,lockedHint:"Attach a project to review and commit these changes."})},`diff-${ke}`)),R.artifacts.results.map((te,ke)=>i.jsx("div",{"data-artifact-card":!0,tabIndex:0,role:"group","aria-label":`Result: ${te.title}`,className:"chat-artifact-item",children:i.jsx(_ye,{result:te})},`result-${ke}`)),R.artifacts.deploys.map((te,ke)=>i.jsx("div",{"data-artifact-card":!0,tabIndex:0,role:"group","aria-label":`Deployment: ${te.url}`,className:"chat-artifact-item",children:i.jsx(Aye,{deploy:te})},`deploy-${ke}`))]}):null,R.role==="assistant"&&R.task?i.jsx(Tye,{task:R.task,onCancel:R.task.status==="running"?()=>void Qs(R.task.id):void 0}):null,R.role==="assistant"&&R.draft?i.jsxs("details",{className:"chat-steps",open:!0,children:[i.jsxs("summary",{children:["Skill draft: ",R.draft.name]}),i.jsx(B_,{draft:R.draft,onAccept:$l,onReject:Ll,onEdit:Xs})]}):null,R.role==="assistant"&&R.plan?i.jsxs("details",{className:"chat-steps",open:!0,children:[i.jsxs("summary",{children:["Plan: ",R.plan.goal]}),i.jsx(z_,{plan:R.plan})]}):null,R.role==="assistant"&&R.refused?i.jsx("div",{className:"chat-refused-line",children:"⛔ This turn did not run — the isolation it asked for could not be made. Nothing was written, and the reason is above."}):null,R.role==="assistant"&&R.needsProject?i.jsx("div",{className:"chat-refused-line",children:"📁 Nothing was run — attach a project folder above, then send the message again."}):null,R.role==="assistant"&&R.worktree?i.jsx($ye,{worktree:R.worktree}):null,R.role==="assistant"&&R.resume?i.jsx(Lye,{resume:R.resume}):null,R.role==="assistant"&&R.turnReport?i.jsx(Dye,{report:R.turnReport}):null,R.role==="assistant"&&R.findings&&R.findings.length>0?i.jsx(U_,{findings:R.findings}):null,R.role==="assistant"&&R.tools&&R.tools.length>0?i.jsxs("details",{className:"chat-steps",open:!0,children:[i.jsxs("summary",{children:[R.tools.length," tool call",R.tools.length===1?"":"s"]}),i.jsx(F_,{tools:R.tools})]}):null,R.role==="assistant"&&R.steps&&R.steps.length>0?i.jsxs("details",{className:"chat-steps",children:[i.jsxs("summary",{children:[R.steps.length," step",R.steps.length===1?"":"s"]}),i.jsx("div",{className:"chat-step-line",children:R.steps.map((te,ke)=>i.jsx("div",{children:te.trim()},ke))})]}):null]},ee)),u?i.jsxs("div",{className:"chat-bubble chat-assistant",children:[i.jsx("div",{className:"chat-bubble-role",children:"🤖 Agent"}),K?i.jsx(z_,{plan:K}):null,I?i.jsx(wc,{diff:I}):null,m&&u?i.jsx("div",{className:"chat-resume-line",children:"🌿 this turn is running in its own git worktree — the diff arrives with the answer"}):null,x&&u?i.jsx("div",{className:"chat-resume-line",children:"↩️ this turn is replaying the recorded steps of this ask that are unchanged — the count arrives with the answer"}):null,Ce.length>0?i.jsx(U_,{findings:Ce}):null,ge?i.jsx(B_,{draft:ge,onAccept:$l,onReject:Ll,onEdit:Xs}):null,X.map(R=>i.jsx(Oye,{request:R,onSave:Dl},R.skillName)),fe.map((R,ee)=>i.jsx(Pye,{result:R},`${R.skillName}-${ee}`)),i.jsx(F_,{tools:z,live:!0}),Oe?i.jsx("div",{className:"chat-bubble-text chat-streaming",children:i.jsx(M_,{text:Oe})}):null,i.jsx("div",{className:"chat-working",children:W.length>0?i.jsx("span",{className:"chat-working-lines",children:W.map((R,ee)=>i.jsx("div",{className:"chat-step-line",children:R.trim()},ee))}):i.jsxs(i.Fragment,{children:["💭 thinking… ",i.jsx("span",{className:"chat-dots"})]})})]}):null]}),f?i.jsx("div",{className:"admin-row-msg admin-row-msg-err",children:f}):null,p?i.jsx("div",{className:`admin-row-msg${p.kind==="err"?" admin-row-msg-err":""}`,children:p.text}):null,fn&&!u?i.jsxs("div",{className:"chat-retry-row",children:[i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>void Tt(fn),children:"↻ Retry"}),i.jsx("span",{className:"admin-hint",children:"Re-send the last message — the turn failed."})]}):null,ye&&!u?i.jsx("div",{className:"chat-resolve-card",children:(Ul=ye.top)!=null&&Ul.ambiguous&&((Wl=ye.top.options)!=null&&Wl.length)?i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"chat-resolve-head",children:[i.jsx("strong",{children:"🤔 Which do you mean?"}),' — "',ye.ask,'" maps to more than one action.']}),i.jsx("div",{className:"chat-resolve-options",children:ye.top.options.map(R=>i.jsxs("button",{className:"chat-chip",type:"button",onClick:()=>void Tt(R.command),children:[R.summary," — ",i.jsx("code",{children:R.command})]},R.command))}),i.jsx("div",{className:"chat-resolve-foot",children:i.jsx("button",{className:"admin-mini-btn",type:"button",onClick:()=>{je(null)},children:"✕ Not that — ask the agent"})})]}):i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"chat-resolve-head",children:[i.jsx("strong",{children:"⚡ Run this command?"}),' — "',ye.ask,'"']}),i.jsx("div",{className:"chat-resolve-cmd",children:i.jsx("code",{children:(Hl=ye.top)==null?void 0:Hl.command})}),(Gl=ye.top)!=null&&Gl.confirmation?i.jsx("div",{className:"admin-hint",children:"⚠ This changes running services/state."}):null,i.jsxs("div",{className:"chat-resolve-foot",children:[i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>void hd(ye.ask),children:"▶ Run"}),i.jsx("button",{className:"admin-mini-btn",type:"button",onClick:()=>_m(ye.ask),children:"✕ No — ask the agent"})]})]})}):null,zt?i.jsxs("div",{className:"chat-resolve-card chat-question-card",children:[i.jsx("div",{className:"chat-resolve-head",children:i.jsxs("strong",{children:["🤔 ",zt.question]})}),i.jsx("div",{className:"chat-resolve-options",children:zt.choices.map((R,ee)=>i.jsxs("button",{type:"button",className:`chat-chip${lr.has(ee)?" chat-chip-selected":""}`,onClick:()=>gd(ee),children:[R.label,R.description?i.jsxs("span",{className:"admin-hint",children:[" — ",R.description]}):null]},`${R.label}-${ee}`))}),i.jsx("input",{className:"chat-question-custom",type:"text",placeholder:"✏️ Or type your own answer…",value:Cr,onChange:R=>qs(R.target.value),onKeyDown:R=>{R.key==="Enter"&&!R.shiftKey&&(R.preventDefault(),Bl())}}),i.jsxs("div",{className:"chat-resolve-foot",children:[i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:Bl,children:Cr.trim()?"Send answer":zt.multiSelect?"Submit":"Choose"}),i.jsx("button",{className:"admin-mini-btn",type:"button",onClick:md,children:"Skip — best judgment"})]})]}):null,zl.length>0&&!u?i.jsxs("div",{className:"chat-followups",children:[i.jsx("span",{className:"admin-hint",children:"Next steps:"}),zl.map((R,ee)=>i.jsx("button",{className:"chat-chip",type:"button",onClick:()=>void Tt(R.prompt),children:R.label||R.prompt},ee))]}):null,i.jsxs("form",{className:`chat-composer${Rn?" chat-composer-drag":""}`,onSubmit:R=>{R.preventDefault(),Tt(l)},onDragOver:R=>{R.preventDefault(),Er(!0)},onDragLeave:()=>Er(!1),onDrop:R=>{var te;R.preventDefault(),Er(!1);const ee=Array.from(((te=R.dataTransfer)==null?void 0:te.files)??[]);for(const ke of ee.slice(0,10))ld(ke)},children:[Nr?i.jsxs("div",{className:"chat-paste-offer",children:[i.jsxs("span",{className:"admin-hint",children:["📄 You pasted ",mt(Nr.text.length)," characters. Attach it as a file instead?"]}),i.jsx("button",{type:"button",className:"chat-chip",onClick:Yr,children:"Attach as text"}),i.jsx("button",{type:"button",className:"chat-mini-action",onClick:()=>{Yt(null),Wa.current=null},children:"Keep inline"})]}):null,qr.length>0?i.jsx("div",{className:"chat-attach-row",children:qr.map((R,ee)=>i.jsxs("span",{className:"chat-attach-chip",title:R.encoding==="base64"?`${R.name} (${mt(R.content.length)} base64 chars — read on the server)`:`${R.name} (${mt(R.content.length)} chars)`,children:["📎 ",R.name,i.jsx("span",{className:"admin-hint",children:R.encoding==="base64"?`${Math.round(R.content.length*3/4096)} KB`:`${mt(R.content.length)}c`}),i.jsx("button",{type:"button",className:"chat-mini-action",onClick:()=>Sm(ee),children:"✕"})]},`${R.name}-${ee}`))}):null,i.jsxs("div",{className:"chat-input-row",children:[i.jsx("input",{ref:pa,type:"file",accept:".pdf,.docx,.xlsx,.pptx,.txt,.md,.markdown,.text,.log,.csv,.tsv,.json,.xml,.yaml,.yml,.html,.htm,text/*",style:{display:"none"},onChange:R=>{var te;const ee=(te=R.target.files)==null?void 0:te[0];ee&&ld(ee),R.target.value=""}}),i.jsx("button",{type:"button",className:"chat-attach-btn",title:"Attach a file (up to 300 KB): PDF, DOCX, XLSX, PPTX or text — documents are read on the server",disabled:u||qr.length>=10,onClick:()=>{var R;return(R=pa.current)==null?void 0:R.click()},children:"📎"}),i.jsx("button",{type:"button",className:"chat-attach-btn","aria-label":"Download support bundle",title:"Download a support bundle for this chat: the session debug log (which backend served each turn) plus the conversation. Needs NUVIRA_DEBUG_LOG=1 in the dashboard process.",onClick:()=>void Em(),children:"🐞"}),i.jsxs("select",{className:"chat-model-picker","aria-label":"Model: Auto or a specific routable model",title:P?`Pinned to ${P.provider}/${P.model} for this chat. Choose Auto to let the agent route again.`:"Auto (default): the agent picks the best routable model each turn. Choose one to pin it for this chat.",value:P?`${P.provider}|${P.model}`:"",disabled:u,onChange:R=>{const ee=R.target.value;if(!ee){$(null);return}const te=ee.indexOf("|");$({provider:ee.slice(0,te),model:ee.slice(te+1)})},children:[i.jsx("option",{value:"",children:"🤖 Auto (agent decides)"}),P&&!B.some(R=>R.provider===P.provider&&R.model===P.model)?i.jsxs("option",{value:`${P.provider}|${P.model}`,children:[P.provider,"/",P.model," · pinned"]}):null,B.map(R=>i.jsxs("option",{value:`${R.provider}|${R.model}`,children:[R.provider,"/",R.model," · ",R.band," (",R.capability.toFixed(2),")"]},`${R.provider}|${R.model}`))]}),i.jsx("button",{type:"button",className:`chat-attach-btn${N==="max"?" chat-attach-btn-on":""}`,"aria-label":"Capability mode: balanced or max","aria-pressed":N==="max",disabled:u,title:N==="max"?"Max capability: every turn routes to a strong model (a reasoning floor — not merely “paid”), cost ceilings are lifted, paid models are always allowed, and the loop gets its longest reasoning budget. Click to return to balanced.":"Balanced (default): the best model for complex/critical work and cheaper models for simple work, escalating when a stall is detected. Click for max capability — cost is not a concern.",onClick:()=>void fd(),children:N==="max"?"⚡ max":"⚖️ balanced"}),O?i.jsx("span",{className:"admin-hint",children:O}):null,i.jsxs("button",{type:"button",className:`chat-attach-btn${m?" chat-attach-btn-on":""}`,"aria-label":"Run turns in an isolated git worktree","aria-pressed":m,title:m?"Turns run in their own git worktree and report the diff — click to run in the project tree again":"Run turns in their own git worktree of the attached project, and report the diff against the base commit. Refuses rather than running in your tree when the directory cannot be isolated. Needs an attached project (or the server's own git working directory).",onClick:()=>{y(R=>!R),g(null)},children:["🌿",m?" isolated":" isolate"]}),i.jsxs("button",{type:"button",className:`chat-attach-btn${x?" chat-attach-btn-on":""}`,"aria-label":"Replay this ask's recorded steps instead of paying for them again","aria-pressed":x,title:x?"Recorded steps whose input is unchanged are replayed instead of paid for — click to run fresh again":"Replay the steps of an earlier run of this same ask whose input is unchanged, instead of paying for them again. The record is keyed by the ask and the directory; name a checkpoint id below to resume a specific one. A step whose input CHANGED is paid for again.",onClick:()=>{j(R=>!R),g(null)},children:["↩️",x?" resuming":" resume"]}),x?i.jsx("input",{className:"chat-resume-input",value:w,onChange:R=>b(R.target.value),placeholder:"checkpoint id (blank = this ask's record)",title:"Resume this specific checkpoint record. Blank resumes the record for this ask in this directory.","aria-label":"Checkpoint id to resume",disabled:u}):null,m?i.jsxs("button",{type:"button",className:`chat-attach-btn${v?" chat-attach-btn-on":""}`,"aria-pressed":v,title:v?"The worktree is KEPT after the turn so you can look inside it":"The worktree is measured and removed after each turn",onClick:()=>k(R=>!R),children:["📌",v?" keep":" drop"]}):null,i.jsx("textarea",{className:"chat-input-box",value:l,onChange:R=>c(R.target.value),onPaste:Ys,onKeyDown:R=>{R.key==="Enter"&&!R.shiftKey?(R.preventDefault(),Tt(l)):R.key==="ArrowUp"&&l===""&&oe.current&&(R.preventDefault(),c(oe.current))},placeholder:"Message the agent… (Enter to send · Shift+Enter for a new line · ↑ recalls last · 📎 attach a file or paste a large document)",disabled:u,maxLength:8e3,rows:1,autoFocus:!0}),u?i.jsx("button",{className:"admin-mini-btn chat-cancel-btn",type:"button",onClick:Nm,children:"⏹ Cancel"}):null,i.jsx("button",{className:"admin-refresh-btn",type:"submit",disabled:u||!l.trim()&&qr.length===0,children:u?"⏳ Working…":"➤ Send"})]})]}),i.jsxs("p",{className:"admin-hint",children:["Each message runs the full agent loop in the dashboard process (same engine as"," ",i.jsx("code",{children:'buff chat "<prompt>"'}),") — the provider API keys must be configured in the dashboard process. Clarifications (",i.jsx("code",{children:"ask_user"}),") appear as a question card here — choose an answer or skip (best judgment)."]})]})]})]}):i.jsx("div",{className:"admin-login-hint",children:i.jsx("p",{children:"Your role can view the dashboard but not chat (requires admin or operator)."})}):i.jsxs("div",{className:"admin-login-hint",children:[i.jsx("p",{children:"Log in (admin or operator) to chat with the agent. Configure the dashboard admin credential first if this is a fresh setup."}),(e==null?void 0:e.configured)===!1?i.jsxs("p",{className:"admin-hint",children:["Run ",i.jsx("code",{children:"buff dashboard"})," once, or set ",i.jsx("code",{children:"BUFF_DASHBOARD_ADMIN_USER"})," / ",i.jsx("code",{children:"BUFF_DASHBOARD_ADMIN_PASSWORD"}),"."]}):null]})]})}const Uye={running:"⏳ running",done:"✅ done",failed:"❌ failed",cancelled:"⏹ cancelled",timeout:"⏰ timed out",error:"💥 error"};function c$({presets:e,customPlaceholder:t,timeoutMs:n=3e5,hint:r}){const[a,s]=S.useState(null),o=Ds(),[l,c]=S.useState(!1),[u,d]=S.useState(""),[f,h]=S.useState(""),[p,g]=S.useState(null),[m,y]=S.useState([]),v=S.useRef(null),k=S.useRef(null);S.useEffect(()=>{Z.fetchAdminAuthStatus().then(b=>{s(b?{authenticated:b.authenticated,role:b.role??null}:{authenticated:!1,role:null})})},[o]),S.useEffect(()=>{var b,N;try{(N=(b=v.current)==null?void 0:b.scrollIntoView)==null||N.call(b,{block:"end"})}catch{}},[m]),S.useEffect(()=>()=>{var b;(b=k.current)==null||b.call(k)},[]);const x=(a==null?void 0:a.authenticated)===!0&&(a.role==="admin"||a.role==="operator"),j=S.useCallback(async(b,N)=>{var P;if(l)return;c(!0),d(""),y([]);const E=await Z.startTask(b,N??n);if(!E.ok||!E.task){d(E.error||"Could not start the command."),c(!1);return}const O=E.task;g(O);const C=await Z.getTask(O.id);C!=null&&C.task&&y(C.task.logs.map($=>({stream:$.stream,text:$.text}))),(P=k.current)==null||P.call(k),k.current=Z.subscribeTask(O.id,{onLog:$=>y(B=>[...B,{stream:$.stream,text:$.text}]),onStatus:$=>{g(B=>B&&{...B,status:$}),$!=="running"&&c(!1)}})},[l,n]),w=S.useCallback(async()=>{p&&await Z.cancelTask(p.id)},[p]);return i.jsxs("div",{className:"ops-console",children:[a!=null&&a.authenticated?x?i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"ops-presets",children:e.map(b=>i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>void j(b.args,b.timeoutMs),disabled:l,children:b.label},b.label))}),i.jsxs("div",{className:"ops-custom-row",children:[i.jsx("input",{type:"text",value:f,onChange:b=>h(b.target.value),placeholder:t,disabled:l,maxLength:160}),i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>void j(f.trim().split(/\s+/)),disabled:l||!f.trim(),children:"Run"})]}),r?i.jsx("p",{className:"admin-hint",children:r}):null]}):i.jsx("div",{className:"admin-login-hint",children:"Your role can view but not run commands (requires admin or operator)."}):i.jsx("div",{className:"admin-login-hint",children:"Log in (admin or operator) to run commands."}),u?i.jsx("div",{className:"admin-row-msg admin-row-msg-err",children:u}):null,p?i.jsxs("div",{className:"ops-console-box",children:[i.jsxs("div",{className:"ops-console-head",children:[i.jsxs("span",{children:[p.command," · ",i.jsx("span",{className:p.status==="running"?"task-status-running":"",children:Uye[p.status]})]}),p.status==="running"?i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>void w(),children:"⏹ Cancel"}):null]}),i.jsxs("pre",{className:"ops-console",role:"log",children:[m.length>0?m.map((b,N)=>i.jsx("div",{children:b.text},N)):i.jsx("div",{className:"admin-hint",children:"Waiting for output…"}),i.jsx("div",{ref:v})]})]}):null]})}const Wye=[{label:"⚡ Quick smoke",args:["eval","run","--tasks","quick","--format","text"]},{label:"⏱ Medium suite",args:["eval","run","--tasks","medium","--format","text"]},{label:"🐢 Slow suite",args:["eval","run","--tasks","slow","--format","text"]},{label:"🏆 M2B parity",args:["eval","run","--suite","m2b","--format","text"]},{label:"📦 Full suite",args:["eval","run","--suite","full","--format","text"]}];function W_(e){return typeof e!="number"?"—":`${Math.round(e*100)}%`}function Hye(e){return new Date(e).toLocaleString()}function Gye({data:e}){var n;const t=((n=e==null?void 0:e.evals)==null?void 0:n.runs)??[];return i.jsxs("div",{className:"panel",children:[i.jsx(Me,{icon:"🏆",title:"Evals — run buff eval from the GUI"}),i.jsx(c$,{presets:Wye,customPlaceholder:"e.g. eval run --tasks my-task --provider groq --model llama",timeoutMs:9e5,hint:i.jsxs(i.Fragment,{children:["Runs the real ",i.jsx("code",{children:"buff eval run"})," as an isolated process — same engine, same ledger, same results as the CLI. Long suites can take minutes; you can cancel mid-run."]})}),i.jsx("h2",{className:"section-subtitle",children:"📜 Past runs (auto-refreshes)"}),t.length>0?i.jsx("div",{className:"admin-table-wrapper",children:i.jsxs("table",{className:"admin-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Started"}),i.jsx("th",{children:"Provider"}),i.jsx("th",{children:"Model"}),i.jsx("th",{children:"Tasks"}),i.jsx("th",{children:"Pass"}),i.jsx("th",{children:"Completion"}),i.jsx("th",{children:"Composite"}),i.jsx("th",{children:"Cost"})]})}),i.jsx("tbody",{children:t.map(r=>i.jsxs("tr",{children:[i.jsx("td",{children:Hye(r.startedAt)}),i.jsx("td",{className:"admin-provider-type",children:r.provider}),i.jsx("td",{children:r.model}),i.jsx("td",{children:r.summary.totalTasks}),i.jsxs("td",{children:[r.summary.tasksPassed,"/",r.summary.totalTasks]}),i.jsx("td",{children:W_(r.summary.completionRate)}),i.jsx("td",{children:W_(r.summary.avgCompositeScore)}),i.jsxs("td",{children:["$",(r.summary.totalCostUsd??0).toFixed(4)]})]},r.id))})]})}):i.jsx("div",{className:"empty-state",children:"No eval runs yet — start one above (or `buff eval run` from the CLI)."})]})}const qye=[{label:"🌐 Gateway status",args:["gateway","status"]},{label:"📮 Delivery ledger",args:["gateway","delivery"]},{label:"▶️ Start gateway (foreground)",args:["gateway","start","--no-events"],timeoutMs:0},{label:"⏰ Cron jobs",args:["admin","cron","list"]}];function Kye(){return i.jsxs("div",{className:"panel",children:[i.jsx(Me,{icon:"🌐",title:"Gateway ops — run buff gateway from the GUI"}),i.jsx(c$,{presets:qye,customPlaceholder:"e.g. admin cron run nightly or gateway alias add ops email:team@example.com",timeoutMs:3e5,hint:i.jsxs(i.Fragment,{children:["Each command runs as the real CLI in an isolated process (the P1 task runner) — the same engine as your terminal. ",i.jsx("code",{children:"gateway start"})," runs in the foreground ",i.jsx("strong",{children:"with no timeout"}),": it keeps running even after you switch tabs (the process lives on the dashboard server, not the page) and streams platform events until you press ",i.jsx("strong",{children:"Cancel"}),". The delivery ledger also has its own view in"," ",i.jsx("strong",{children:"Agent Hub → Channels"}),"."]})})]})}const cv={telegram:{icon:"✈️",category:"Chat",steps:["Open Telegram and search for @BotFather","Send /newbot and follow the prompts",'Give your bot a name (e.g. "My Agent Bot")','Give your bot a username ending in "bot"',"BotFather gives you a token — paste it in Step 2","Open your bot in Telegram and send /start"],testTarget:"telegram:"},discord:{icon:"🎮",category:"Chat",steps:["Go to discord.com/developers/applications",'Click "New Application" and give it a name','Go to Bot tab and click "Add Bot"',"Copy the bot token",'Enable "Message Content Intent"',"Invite bot to your server (OAuth2 URL generator)"],testTarget:"discord:"},slack:{icon:"💬",category:"Chat",steps:["Go to api.slack.com/apps","Create New App from scratch","Add Bot Token Scopes: chat:write, im:read, im:write","Install to workspace","Copy the Bot User OAuth Token (xoxb-...)"],testTarget:"slack:"},whatsapp:{icon:"📱",category:"Chat",steps:["Run: buff whatsapp pair (or from Gateway tab)","Scan the QR code with WhatsApp","Pairing completes automatically"],testTarget:""},whatsapp_cloud:{icon:"☁️",category:"Chat",steps:["Go to developers.facebook.com","Set up WhatsApp Cloud API","Copy token + Phone ID"],testTarget:"whatsapp_cloud:"},email:{icon:"📧",category:"Chat",steps:["Get SMTP credentials (Gmail, SendGrid, etc.)","For Gmail: use App Password at smtp.gmail.com:587","Paste SMTP host + user below"],testTarget:""},signal:{icon:"🔒",category:"Chat",steps:["Run signal-cli-rest-api Docker container","Register a Signal account","Paste account number below"],testTarget:""},dingtalk:{icon:"🔔",category:"Webhooks",steps:["Open DingTalk and create a group","Add custom robot and copy webhook URL","Paste URL below"],testTarget:""},feishu:{icon:"🐦",category:"Webhooks",steps:["Open Feishu and create a bot","Copy webhook URL and paste below"],testTarget:""},wecom:{icon:"🏢",category:"Webhooks",steps:["Open WeCom and create a group bot","Copy webhook URL and paste below"],testTarget:""},mattermost:{icon:"📋",category:"Webhooks",steps:["Open Mattermost, go to Integrations","Create incoming webhook and copy URL"],testTarget:""},matrix:{icon:"🔗",category:"Chat",steps:["Get your Matrix homeserver URL","Create a bot user and get access token","Paste URL + token below"],testTarget:""},webhook:{icon:"🪝",category:"Webhooks",steps:["Enter your webhook URL","The agent sends outbound webhooks to this URL"],testTarget:""},bluebubbles:{icon:"💙",category:"Chat",steps:["Set up BlueBubbles server","Copy server URL + password"],testTarget:""},ntfy:{icon:"📢",category:"Notifications",steps:["Choose an ntfy topic (or use ntfy.sh)","Paste the topic below"],testTarget:""},teams:{icon:"👥",category:"Webhooks",steps:["Open Microsoft Teams, go to channel","Connectors, Incoming Webhook, create","Copy webhook URL"],testTarget:""},google_chat:{icon:"💬",category:"Webhooks",steps:["Open Google Chat, space settings","Create webhook and copy URL"],testTarget:""},weixin:{icon:"🔴",category:"Chat",steps:["Get Weixin iLink bot token","Paste token below"],testTarget:""},sms:{icon:"📲",category:"Chat",steps:["Get Twilio account SID + auth token","Register a phone number","Paste credentials below"],testTarget:""},irc:{icon:"💻",category:"Chat",steps:["Choose an IRC server (e.g. irc.libera.chat)","Set nickname + channel and paste below"],testTarget:""},simplex:{icon:"📨",category:"Chat",steps:["Run local simplex-chat daemon","Paste WebSocket URL (ws://127.0.0.1:5225)"],testTarget:""},homeassistant:{icon:"🏠",category:"IoT",steps:["Open Home Assistant Profile","Create long-lived access token and paste below"],testTarget:""}};function Vye(){const[e,t]=S.useState(null),[n,r]=S.useState("all"),[a,s]=S.useState(null),[o,l]=S.useState(0),[c,u]=S.useState({}),[d,f]=S.useState(!1),[h,p]=S.useState(null),[g,m]=S.useState({status:"idle"}),[y,v]=S.useState(""),[k,x]=S.useState("Hello from agent-nuvira!"),[j,w]=S.useState(!1),[b,N]=S.useState(null),E=S.useRef(!0),O=S.useCallback(async()=>{const A=await Z.getPlatformConfigs();E.current&&t(A)},[]);S.useEffect(()=>(O(),()=>{E.current=!1}),[O]);const C=A=>{s(A),l(0),u(Object.fromEntries(A.envVars.map(T=>[T.varName,T.value]))),p(null),m({status:"idle"});const z=cv[A.platform];v((z==null?void 0:z.testTarget)??""),x("Hello from agent-nuvira!"),N(null)},P=async()=>{if(!a)return;m({status:"checking"});const A=await Z.verifyPlatformConfig(a.platform,c);A.ok?(m({status:"ok",info:A.info}),p({kind:"ok",text:"Verified! "+(A.info?"Connected as "+A.info+".":"Token is valid.")})):(m({status:"err",error:A.error}),p({kind:"err",text:A.error||"Verification failed."}))},$=async()=>{if(!a)return;f(!0),p(null);const A=await Z.setPlatformConfig(a.platform,c);f(!1),A.ok?(p({kind:"ok",text:"Token saved! Verifying..."}),O(),l(2),P()):p({kind:"err",text:A.error||"Save failed."})},B=async()=>{if(!a||!y)return;w(!0),N(null);const A=await Z.sendChannelMessage(y,k);w(!1),A.ok?N({kind:"ok",text:"Message sent via "+A.platform+"! Check your "+a.label+" app."}):N({kind:"err",text:A.error||"Send failed. Make sure the gateway is running (Gateway tab)."})};if(e===null)return i.jsx("div",{className:"empty-state",children:"Loading platforms..."});const M=e.filter(A=>A.configured).length,F=e.filter(A=>n==="configured"?A.configured:n==="unconfigured"?!A.configured:!0),L=a?cv[a.platform]:null;function W(A){return o===A?"wizard-step-dot active":"wizard-step-dot"}return i.jsxs("div",{className:"panel",children:[i.jsx(Me,{icon:"🌐",title:"Platforms — Messaging Gateway Onboarding"}),i.jsxs("div",{className:"platforms-summary",children:[i.jsxs("div",{className:"platforms-summary-stat",children:[i.jsx("span",{className:"platforms-summary-number",children:M}),i.jsx("span",{className:"platforms-summary-label",children:"configured"})]}),i.jsxs("div",{className:"platforms-summary-stat",children:[i.jsx("span",{className:"platforms-summary-number",children:e.length-M}),i.jsx("span",{className:"platforms-summary-label",children:"available"})]}),i.jsx("div",{className:"platforms-summary-filters",children:["all","configured","unconfigured"].map(A=>i.jsx("button",{type:"button",className:n===A?"platforms-filter-btn active":"platforms-filter-btn",onClick:()=>r(A),children:A==="all"?"All":A==="configured"?"Configured":"Not set up"},A))})]}),i.jsx("div",{className:"platforms-grid",children:F.map(A=>{const z=cv[A.platform];return i.jsxs("div",{className:A.configured?"platform-card configured":"platform-card",children:[i.jsxs("div",{className:"platform-card-head",children:[i.jsx("span",{className:"platform-card-icon",children:(z==null?void 0:z.icon)??"🔌"}),i.jsxs("div",{className:"platform-card-info",children:[i.jsx("span",{className:"platform-card-name",children:A.label}),i.jsx("span",{className:"platform-card-category",children:(z==null?void 0:z.category)??"Platform"})]}),i.jsx("span",{className:A.configured?"status-dot connected":"status-dot reconnecting"})]}),i.jsx("div",{className:"platform-card-vars",children:A.envVars.map(T=>i.jsxs("span",{className:T.set?"platform-var-chip set":"platform-var-chip",children:[T.varName," ",T.set?"done":"--"]},T.varName))}),i.jsxs("div",{className:"platform-card-actions",children:[A.configured?i.jsx("span",{className:"platform-card-badge",children:"Active"}):i.jsx("button",{type:"button",className:"wizard-start-btn",onClick:()=>C(A),children:"Setup"}),A.setupUrl?i.jsx("a",{href:A.setupUrl,target:"_blank",rel:"noopener noreferrer",className:"admin-mini-btn platform-docs-link",children:"Docs"}):null]}),!A.configured&&A.setupHint?i.jsx("div",{className:"platform-card-hint",children:A.setupHint}):null]},A.platform)})}),i.jsxs("div",{className:"platforms-cli-hint",children:[i.jsx("span",{className:"admin-hint",children:"Prefer the terminal? "}),i.jsx("code",{children:"buff gateway setup telegram"}),i.jsx("span",{className:"admin-hint",children:" — same wizard from your CLI"})]}),a&&L?i.jsx("div",{className:"wizard-overlay",onClick:()=>s(null),children:i.jsxs("div",{className:"wizard-modal",onClick:A=>A.stopPropagation(),children:[i.jsxs("div",{className:"wizard-header",children:[i.jsx("span",{className:"wizard-icon",children:L.icon}),i.jsxs("span",{className:"wizard-title",children:["Getting Started: ",a.label]}),i.jsxs("div",{className:"wizard-steps-indicator",children:[i.jsx("span",{className:W(0),children:"1"}),i.jsx("span",{className:W(1),children:"2"}),i.jsx("span",{className:W(2),children:"3"})]}),i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>s(null),children:"X"})]}),i.jsxs("div",{className:"wizard-body",children:[o===0&&i.jsxs(i.Fragment,{children:[i.jsxs("p",{className:"wizard-section-title",children:["Step 1: Create your bot on ",a.label]}),i.jsx("ol",{className:"wizard-steps",children:L.steps.map((A,z)=>i.jsx("li",{children:A},z))}),i.jsxs("div",{className:"wizard-nav",children:[i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>l(1),children:"I have my token — Step 2"}),a.setupUrl?i.jsx("a",{href:a.setupUrl,target:"_blank",rel:"noopener noreferrer",className:"admin-mini-btn platform-docs-link",children:"Open docs"}):null]})]}),o===1&&i.jsxs(i.Fragment,{children:[i.jsx("p",{className:"wizard-section-title",children:"Step 2: Paste your token"}),a.envVars.map(A=>i.jsxs("label",{className:"hub-send-target",children:[i.jsx("span",{className:"admin-hint",children:A.prompt}),i.jsx("input",{type:A.secret?"password":"text",value:c[A.varName]??"",onChange:z=>u(T=>({...T,[A.varName]:z.target.value})),placeholder:A.secret?"paste your token here":"value",autoComplete:"off",spellCheck:!1,autoFocus:!0})]},A.varName)),h?i.jsx("div",{className:h.kind==="ok"?"admin-row-msg":"admin-row-msg admin-row-msg-err",children:h.text}):null,i.jsxs("div",{className:"wizard-nav",children:[i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>l(0),children:"Back"}),i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>void $(),disabled:d,children:d?"Saving...":"Save & Verify"})]})]}),o===2&&i.jsxs(i.Fragment,{children:[i.jsx("p",{className:"wizard-section-title",children:"Step 3: Verify and test"}),g.status==="checking"&&i.jsx("div",{className:"wizard-verify-status",children:"Verifying token..."}),g.status==="ok"&&i.jsxs("div",{className:"wizard-verify-status ok",children:["Connected as ",g.info]}),g.status==="err"&&i.jsx("div",{className:"wizard-verify-status err",children:g.error}),g.status==="idle"&&(h==null?void 0:h.kind)==="ok"&&i.jsx("div",{className:"wizard-verify-status ok",children:h.text}),y&&i.jsxs("div",{className:"wizard-test-section",children:[i.jsx("p",{className:"wizard-section-title",children:"Send a test message:"}),i.jsx("div",{className:"wizard-test-row",children:i.jsx("input",{className:"wizard-test-input",value:y,onChange:A=>v(A.target.value),placeholder:"telegram:YOUR_CHAT_ID"})}),i.jsxs("div",{className:"wizard-test-row",children:[i.jsx("input",{className:"wizard-test-input",value:k,onChange:A=>x(A.target.value),placeholder:"Hello from agent-nuvira!"}),i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>void B(),disabled:j||!y,children:j?"Sending...":"Send test"})]}),b?i.jsx("div",{className:b.kind==="ok"?"admin-row-msg":"admin-row-msg admin-row-msg-err",children:b.text}):null]}),i.jsxs("div",{className:"wizard-nav",children:[i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>l(1),children:"Edit token"}),i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>s(null),children:"Done"})]}),!y&&i.jsxs("p",{className:"wizard-hint",children:["Token saved! Start the gateway from the Gateway tab, then send a message from your ",a.label," app."]})]})]})]})}):null]})}const Yye=[{value:"us-east-1",label:"us-east-1 (N. Virginia) — most models"},{value:"us-west-2",label:"us-west-2 (Oregon) — most models"},{value:"eu-west-1",label:"eu-west-1 (Ireland) — EU coverage"},{value:"ap-southeast-1",label:"ap-southeast-1 (Singapore)"},{value:"ap-northeast-1",label:"ap-northeast-1 (Tokyo)"}],H_=[{name:"Anthropic Claude",models:["claude-haiku-4.5","claude-sonnet-4.6","claude-fable-5","claude-opus-4.6"],checked:!0},{name:"Meta Llama",models:["llama3-1-8b","llama3-1-70b","llama3-3-70b","llama4-scout","llama4-maverick"],checked:!0},{name:"Mistral AI",models:["mistral-large-3","devstral-2","ministral-3"],checked:!1},{name:"DeepSeek",models:["deepseek-v3.2","deepseek-r1"],checked:!1},{name:"Amazon Nova",models:["nova-pro","nova-lite"],checked:!1},{name:"OpenAI on Bedrock",models:["gpt-5.6-terra","gpt-oss-120b"],checked:!1},{name:"Qwen",models:["qwen3-coder-next","qwen3-32b"],checked:!1},{name:"Google Gemma",models:["gemma-3-12b"],checked:!1},{name:"xAI",models:["grok-4.6"],checked:!1}];function Xye({canWrite:e,sessionExpired:t}){const[n,r]=S.useState(null),[a,s]=S.useState(null),[o,l]=S.useState(!1),[c,u]=S.useState("overview"),d=S.useRef(!0),[f,h]=S.useState("bearer"),[p,g]=S.useState(""),[m,y]=S.useState(""),[v,k]=S.useState(""),[x,j]=S.useState("us-east-1"),[w,b]=S.useState(H_.filter(M=>M.checked).map(M=>M.name)),[N,E]=S.useState(!1),[O,C]=S.useState(null),P=S.useCallback(async()=>{const M=await Z.getBedrockStatus();d.current&&r(M)},[]);S.useEffect(()=>(P(),()=>{d.current=!1}),[P]);const $=async()=>{l(!0),s(null);try{const M=await Z.probeBedrock((n==null?void 0:n.region)||"us-east-1");if(!d.current)return;M.ok&&M.models&&(s(M.models),u("test"))}catch{}finally{d.current&&l(!1)}},B=async()=>{E(!0),C(null);try{const M={BEDROCK_REGION:x};f==="bearer"&&p?M.AWS_BEARER_TOKEN=p:f==="iam"&&(m&&(M.AWS_ACCESS_KEY_ID=m),v&&(M.AWS_SECRET_ACCESS_KEY=v));const F=await Z.setupBedrock(M);if(!d.current)return;F.ok?(C({kind:"ok",text:"✅ Configuration saved! Running connectivity test…"}),u("overview"),await P(),setTimeout(()=>void $(),500)):C({kind:"err",text:F.error||"Save failed"})}catch{d.current&&C({kind:"err",text:"Could not reach the dashboard server."})}finally{d.current&&E(!1)}};return n===null?i.jsx("div",{className:"empty-state",children:"Loading Bedrock status…"}):i.jsxs("div",{className:"bedrock-onboarding",children:[i.jsx(Me,{icon:"🟠",title:"AWS Bedrock"}),i.jsxs("p",{className:"admin-subtitle",children:["Bedrock gives you access to Claude, Llama, Mistral, DeepSeek, and more — all through a single AWS account. Unlike other providers, Bedrock requires a ",i.jsx("strong",{children:"region"}),", ",i.jsx("strong",{children:"AWS credentials"}),", and explicit ",i.jsx("strong",{children:"model access approval"}),"."]}),O?i.jsx("div",{className:`admin-row-msg${O.kind==="ok"?"":" admin-row-msg-err"}`,children:O.text}):null,i.jsxs("div",{className:"bedrock-status-bar",children:[i.jsxs("div",{className:"bedrock-status-item",children:[i.jsx("span",{className:`status-dot ${n.configured?"connected":"reconnecting"}`}),i.jsx("span",{children:n.configured?"Configured":"Not configured"})]}),i.jsxs("div",{className:"bedrock-status-item",children:[i.jsx("span",{className:"bedrock-status-label",children:"Region:"}),i.jsx("code",{children:n.region})]}),i.jsxs("div",{className:"bedrock-status-item",children:[i.jsx("span",{className:"bedrock-status-label",children:"Auth:"}),i.jsx("code",{children:n.authMethod==="bearer"?"API Key":n.authMethod==="iam"?"IAM":"None"})]}),i.jsxs("div",{className:"bedrock-status-actions",children:[e?i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>u(c==="setup"?"overview":"setup"),children:c==="setup"?"✕ Cancel":"⚙ Setup Wizard"}):null,n.configured?i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>void $(),disabled:o,children:o?"⏳ Probing…":"🔍 Test Models"}):null]})]}),c==="setup"&&i.jsxs("div",{className:"bedrock-setup-wizard",children:[i.jsx("h2",{className:"section-subtitle",children:"🚀 Bedrock Setup Wizard"}),i.jsxs("div",{className:"bedrock-wizard-step",children:[i.jsx("h4",{children:"Step 1: Authentication"}),i.jsxs("div",{className:"bedrock-auth-options",children:[i.jsxs("label",{className:`bedrock-auth-option ${f==="bearer"?"selected":""}`,children:[i.jsx("input",{type:"radio",name:"authMethod",checked:f==="bearer",onChange:()=>h("bearer")}),i.jsxs("div",{children:[i.jsx("strong",{children:"Bedrock API Key"}),i.jsx("span",{children:"Simpler — get from Bedrock → Settings → API keys"})]})]}),i.jsxs("label",{className:`bedrock-auth-option ${f==="iam"?"selected":""}`,children:[i.jsx("input",{type:"radio",name:"authMethod",checked:f==="iam",onChange:()=>h("iam")}),i.jsxs("div",{children:[i.jsx("strong",{children:"IAM Credentials"}),i.jsx("span",{children:"Full AWS SDK auth — AWS_ACCESS_KEY_ID + AWS_SECRET_ACCESS_KEY"})]})]})]}),f==="bearer"?i.jsxs("div",{className:"bedrock-wizard-fields",children:[i.jsxs("div",{className:"bedrock-setup-hint",children:[i.jsx("strong",{children:"How to get a Bedrock API key:"}),i.jsxs("ol",{children:[i.jsxs("li",{children:["Open ",i.jsx("a",{href:"https://console.aws.amazon.com/bedrock/",target:"_blank",rel:"noopener noreferrer",children:"AWS Bedrock Console"})]}),i.jsxs("li",{children:["Go to ",i.jsx("strong",{children:"Settings"})," → ",i.jsx("strong",{children:"API keys"})]}),i.jsx("li",{children:"Create a new key and paste it below"})]})]}),i.jsxs("label",{className:"hub-send-target",children:[i.jsx("span",{className:"admin-hint",children:"Bedrock API Key (Bearer token)"}),i.jsx("input",{type:"password",value:p,onChange:M=>g(M.target.value),placeholder:"••••••••••••",autoComplete:"off",spellCheck:!1})]})]}):i.jsxs("div",{className:"bedrock-wizard-fields",children:[i.jsxs("div",{className:"bedrock-setup-hint",children:[i.jsx("strong",{children:"IAM credentials"})," give full AWS SDK access. Create an IAM user with Bedrock permissions."]}),i.jsxs("label",{className:"hub-send-target",children:[i.jsx("span",{className:"admin-hint",children:"AWS_ACCESS_KEY_ID"}),i.jsx("input",{type:"text",value:m,onChange:M=>y(M.target.value),placeholder:"AKIA...",autoComplete:"off",spellCheck:!1})]}),i.jsxs("label",{className:"hub-send-target",children:[i.jsx("span",{className:"admin-hint",children:"AWS_SECRET_ACCESS_KEY"}),i.jsx("input",{type:"password",value:v,onChange:M=>k(M.target.value),placeholder:"••••••••••••",autoComplete:"off",spellCheck:!1})]})]})]}),i.jsxs("div",{className:"bedrock-wizard-step",children:[i.jsx("h4",{children:"Step 2: AWS Region"}),i.jsxs("p",{className:"admin-hint",children:["Models vary by region. ",i.jsx("strong",{children:"us-east-1"})," and ",i.jsx("strong",{children:"us-west-2"})," have the most models. ⚠️ Do NOT use eu-north-1 unless models are explicitly enabled there."]}),i.jsx("select",{className:"bedrock-region-select",value:x,onChange:M=>j(M.target.value),children:Yye.map(M=>i.jsx("option",{value:M.value,children:M.label},M.value))})]}),i.jsxs("div",{className:"bedrock-wizard-step",children:[i.jsx("h4",{children:"Step 3: Model Access"}),i.jsx("p",{className:"admin-hint",children:"Bedrock requires you to request access for each model family."}),i.jsx("div",{className:"bedrock-model-access-hint",children:i.jsx("a",{href:`https://console.aws.amazon.com/bedrock/home?region=${x}#/modelaccess`,target:"_blank",rel:"noopener noreferrer",className:"admin-mini-btn",children:"📖 Open Model Access in AWS Console"})}),i.jsx("div",{className:"bedrock-family-grid",children:H_.map(M=>i.jsxs("label",{className:`bedrock-family-card ${w.includes(M.name)?"selected":""}`,children:[i.jsx("input",{type:"checkbox",checked:w.includes(M.name),onChange:F=>{F.target.checked?b(L=>[...L,M.name]):b(L=>L.filter(W=>W!==M.name))}}),i.jsxs("div",{children:[i.jsx("strong",{children:M.name}),i.jsxs("span",{children:[M.models.length," model(s)"]})]})]},M.name))}),i.jsx("p",{className:"admin-hint",style:{marginTop:8},children:"In the AWS Console, select the families above and submit. Approval is usually instant for Anthropic and Meta models."})]}),i.jsxs("div",{className:"bedrock-wizard-actions",children:[i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>void B(),disabled:N||f==="bearer"&&!p||f==="iam"&&(!m||!v),children:N?"⏳ Saving…":"💾 Save & Test"}),i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>u("overview"),children:"Cancel"})]})]}),c==="test"&&a&&i.jsxs("div",{className:"bedrock-probe-results",children:[i.jsxs("h2",{className:"section-subtitle",children:["🔍 Model Probe Results (",n.region,")"]}),i.jsx("div",{className:"bedrock-probe-grid",children:a.map(M=>i.jsxs("div",{className:`bedrock-probe-card bedrock-probe-${M.status}`,children:[i.jsx("span",{className:"bedrock-probe-icon",children:M.status==="accessible"?"✅":M.status==="permission-denied"?"🔒":M.status==="not-found"?"⚫":"❌"}),i.jsx("span",{className:"bedrock-probe-id",children:M.modelId}),i.jsx("span",{className:"bedrock-probe-status",children:M.status==="accessible"?"Ready":M.status==="permission-denied"?`Need access (HTTP ${M.httpStatus})`:M.status==="not-found"?"Not in this region":"Error"})]},M.modelId))}),a.some(M=>M.status==="permission-denied")&&i.jsxs("div",{className:"bedrock-probe-action",children:[i.jsxs("p",{children:["Some models exist in ",n.region," but access is not approved."]}),i.jsx("a",{href:`https://console.aws.amazon.com/bedrock/home?region=${n.region}#/modelaccess`,target:"_blank",rel:"noopener noreferrer",className:"admin-mini-btn",children:"🔓 Request Model Access in AWS Console →"})]}),i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>u("overview"),style:{marginTop:12},children:"← Back"})]}),!n.configured&&c==="overview"&&i.jsxs("div",{className:"bedrock-getting-started",children:[i.jsx("h2",{className:"section-subtitle",children:"📋 Getting Started with Bedrock"}),i.jsxs("div",{className:"bedrock-steps",children:[i.jsxs("div",{className:"bedrock-step",children:[i.jsx("span",{className:"bedrock-step-num",children:"1"}),i.jsxs("div",{children:[i.jsx("strong",{children:"Create an AWS account"})," (or use existing)",i.jsxs("span",{children:["New to AWS? Sign up at ",i.jsx("a",{href:"https://aws.amazon.com/",target:"_blank",rel:"noopener noreferrer",children:"aws.amazon.com"})]})]})]}),i.jsxs("div",{className:"bedrock-step",children:[i.jsx("span",{className:"bedrock-step-num",children:"2"}),i.jsxs("div",{children:[i.jsx("strong",{children:"Get Bedrock API key"}),i.jsx("span",{children:"Bedrock → Settings → API keys → Create key"})]})]}),i.jsxs("div",{className:"bedrock-step",children:[i.jsx("span",{className:"bedrock-step-num",children:"3"}),i.jsxs("div",{children:[i.jsx("strong",{children:"Request model access"}),i.jsx("span",{children:"Bedrock → Model access → Select Claude, Llama, etc. → Submit"})]})]}),i.jsxs("div",{className:"bedrock-step",children:[i.jsx("span",{className:"bedrock-step-num",children:"4"}),i.jsxs("div",{children:[i.jsx("strong",{children:"Configure in this wizard"}),i.jsx("span",{children:'Click "Setup Wizard" above to enter your credentials'})]})]})]})]}),n.configured&&c==="overview"&&!a&&i.jsx("div",{className:"bedrock-quick-status",children:i.jsxs("p",{className:"admin-hint",children:["Bedrock is configured. Click ",i.jsx("strong",{children:"🔍 Test Models"})," to verify connectivity and discover which models are accessible in ",n.region,"."]})})]})}const uv=["whatsapp","whatsapp_cloud","telegram","signal","slack","discord","email"];function Qye(){const[e,t]=S.useState([]),[n,r]=S.useState(!0),[a,s]=S.useState("all"),[o,l]=S.useState(null),[c,u]=S.useState(""),[d,f]=S.useState(""),[h,p]=S.useState(null),[g,m]=S.useState({}),[y,v]=S.useState({}),[k,x]=S.useState({}),[j,w]=S.useState(null),[b,N]=S.useState(!1),[E,O]=S.useState(!1),[C,P]=S.useState(!1),[$,B]=S.useState(12e4),M=S.useCallback(async()=>{r(!0);const Q=await Z.getContacts();Q.ok&&Q.contacts&&t(Q.contacts);const X=await Z.gatewayPolicies();if(X.ok&&X.policies){const ie={};for(const fe of uv){const J=X.policies[fe];J&&(ie[fe]={...J.outboundSenders!==void 0?{outboundSenders:J.outboundSenders}:{},...J.requireApprovedTarget!==void 0?{requireApprovedTarget:J.requireApprovedTarget}:{}})}m(ie),v(ie)}O(X.askUserWait===!0),P(X.askUserWait===!0),typeof X.askUserTimeoutMs=="number"&&B(X.askUserTimeoutMs),r(!1)},[]);S.useEffect(()=>{M()},[M]);const F=e.filter(Q=>a==="all"||Q.status===a),L=async Q=>{p(null);const X=await Z.approveContact(Q.platform,Q.name);p(X.ok?{kind:"ok",text:`✅ ${Q.name} approved.`}:{kind:"err",text:X.error||"Failed."}),M()},W=async Q=>{p(null);const X=await Z.rejectContact(Q.platform,Q.name);p(X.ok?{kind:"ok",text:`🚫 ${Q.name} rejected.`}:{kind:"err",text:X.error||"Failed."}),M()},A=async Q=>{p(null);const X=await Z.deleteContact(Q.platform,Q.name);p(X.ok?{kind:"ok",text:`🗑️ ${Q.name} deleted.`}:{kind:"err",text:X.error||"Failed."}),M()},z=async()=>{if(!o)return;p(null);const Q=await Z.updateContact(o.platform,o.id,{name:c,phone:d});p(Q.ok?{kind:"ok",text:`✅ ${c} updated.`}:{kind:"err",text:Q.error||"Failed."}),l(null),M()},T=Q=>Q==="approved"?i.jsx("span",{className:"contact-status-badge approved",children:"✅ Approved"}):Q==="pending"?i.jsx("span",{className:"contact-status-badge pending",children:"⏳ Pending"}):i.jsx("span",{className:"contact-status-badge rejected",children:"🚫 Rejected"}),K=Q=>({telegram:"✈️",whatsapp:"📱",whatsapp_cloud:"📱",email:"📧",slack:"💬",discord:"🎮"})[Q]||"🔌",D=Q=>Q?new Date(Q).toLocaleString():"—",I=Q=>{const X=(k[Q]??"").trim();X&&(m(ie=>{var ye;const fe={...ie[Q]??{}},J=fe.outboundSenders??((ye=y[Q])==null?void 0:ye.outboundSenders)??[];return J.some(je=>je.toLowerCase()===X.toLowerCase())||(fe.outboundSenders=[...J,X]),{...ie,[Q]:fe}}),x(ie=>({...ie,[Q]:""})))},ce=(Q,X)=>{m(ie=>{var ye;const fe={...ie[Q]??{}},J=fe.outboundSenders??((ye=y[Q])==null?void 0:ye.outboundSenders)??[];return fe.outboundSenders=J.filter(je=>je.toLowerCase()!==X.toLowerCase()),{...ie,[Q]:fe}})},ge=Q=>{m(X=>{const ie={...X[Q]??{}};return ie.requireApprovedTarget=ie.requireApprovedTarget!==!0,{...X,[Q]:ie}})},ve=Q=>{m(X=>{const ie={...X[Q]??{}};return delete ie.outboundSenders,{...X,[Q]:ie}})},Ce=async()=>{N(!0),w(null);const Q={};for(const fe of uv){const J=g[fe]??{},ye=y[fe]??{};(JSON.stringify(J.outboundSenders??null)!==JSON.stringify(ye.outboundSenders??null)||!!J.requireApprovedTarget!=!!ye.requireApprovedTarget)&&(Q[fe]={...J.outboundSenders!==void 0?{outboundSenders:J.outboundSenders}:{outboundSenders:null},requireApprovedTarget:!!J.requireApprovedTarget})}const X=E!==C;if(Object.keys(Q).length===0&&!X){N(!1),w({kind:"ok",text:"No changes to save."});return}const ie=await Z.saveGatewayPolicies(Q,void 0,void 0,{wait:E,timeoutMs:$});ie.ok?(w({kind:"ok",text:"✅ Send authority saved."}),M()):w({kind:"err",text:ie.error||"Failed to save send authority."}),N(!1)};return i.jsxs("div",{className:"panel contacts-page",children:[i.jsx(Me,{icon:"📇",title:"Contacts — Outbound Messaging Directory",description:"Manage who the bot can send messages to. Users auto-register on first Telegram message."}),h&&i.jsxs("div",{className:`admin-row-msg ${h.kind==="err"?"admin-row-msg-err":""}`,children:[h.text,i.jsx("button",{className:"admin-mini-btn",onClick:()=>p(null),children:"✕"})]}),i.jsxs("div",{className:"contacts-filters",children:[["all","approved","pending","rejected"].map(Q=>i.jsx("button",{type:"button",className:a===Q?"platforms-filter-btn active":"platforms-filter-btn",onClick:()=>s(Q),children:Q==="all"?`All (${e.length})`:Q==="approved"?`✅ Approved (${e.filter(X=>X.status==="approved").length})`:Q==="pending"?`⏳ Pending (${e.filter(X=>X.status==="pending").length})`:`🚫 Rejected (${e.filter(X=>X.status==="rejected").length})`},Q)),i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>void M(),children:"🔄 Refresh"})]}),n?i.jsx("div",{className:"empty-state",children:"Loading contacts..."}):F.length===0?i.jsxs("div",{className:"empty-state",children:[i.jsxs("p",{children:["No contacts",a!=="all"?` with status "${a}"`:"","."]}),i.jsx("p",{className:"admin-hint",children:'Contacts auto-register when users message the bot on Telegram. They appear here as "Pending" until you approve them.'})]}):i.jsx("div",{className:"contacts-table-wrapper",children:i.jsxs("table",{className:"contacts-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Platform"}),i.jsx("th",{children:"Name"}),i.jsx("th",{children:"ID"}),i.jsx("th",{children:"Phone"}),i.jsx("th",{children:"Status"}),i.jsx("th",{children:"Registered"}),i.jsx("th",{children:"Actions"})]})}),i.jsx("tbody",{children:F.map(Q=>i.jsxs("tr",{className:`contact-row status-${Q.status}`,children:[i.jsxs("td",{children:[K(Q.platform)," ",Q.platform]}),i.jsx("td",{className:"contact-name",children:Q.name}),i.jsx("td",{className:"contact-id",children:i.jsx("code",{children:Q.id})}),i.jsx("td",{className:"contact-phone",children:Q.phone||"—"}),i.jsx("td",{children:T(Q.status)}),i.jsx("td",{className:"contact-date",children:D(Q.registeredAt||Q.addedAt)}),i.jsxs("td",{className:"contact-actions",children:[Q.status!=="approved"&&i.jsx("button",{className:"admin-mini-btn contact-approve-btn",onClick:()=>void L(Q),children:"✅ Approve"}),Q.status!=="rejected"&&i.jsx("button",{className:"admin-mini-btn contact-reject-btn",onClick:()=>void W(Q),children:"🚫 Reject"}),i.jsx("button",{className:"admin-mini-btn",onClick:()=>{l(Q),u(Q.name),f(Q.phone||"")},children:"✏️ Edit"}),i.jsx("button",{className:"admin-mini-btn contact-delete-btn",onClick:()=>void A(Q),children:"🗑️"})]})]},`${Q.platform}:${Q.id}`))})]})}),i.jsxs("div",{className:"panel-header",style:{marginTop:28},children:[i.jsx("h2",{children:"🔐 Send authority — who may message others"}),i.jsxs("p",{className:"admin-hint",children:["Controls who can ask the agent to send a message to ",i.jsx("strong",{children:"someone else"})," through the gateway (e.g. “send this poem to my brother on WhatsApp”). This is separate from a contact’s approval status above, which only gates sending ",i.jsx("em",{children:"to"})," that person. Left empty, a platform ",i.jsx("strong",{children:"inherits"})," its allowed-users list (open). Add ",i.jsx("code",{children:"Allow-All"})," to allow everyone, or list specific senders to restrict it."]})]}),j&&i.jsxs("div",{className:`admin-row-msg ${j.kind==="err"?"admin-row-msg-err":""}`,children:[j.text,i.jsx("button",{className:"admin-mini-btn",onClick:()=>w(null),children:"✕"})]}),i.jsx("div",{className:"hub-permissions",children:uv.map(Q=>{const X=g[Q]??{},ie=X.outboundSenders??[],fe=X.outboundSenders===void 0;return i.jsxs("div",{className:"hub-card",children:[i.jsxs("div",{className:"hub-card-top",children:[i.jsxs("span",{className:"hub-chip",children:[K(Q)," ",Q]}),fe?i.jsx("span",{className:"hub-chip",children:"open"}):i.jsx("span",{className:"hub-chip",children:"restricted"})]}),i.jsx("div",{className:"hub-alias-list",children:fe?i.jsx("span",{className:"admin-hint",children:"Open — anyone who can trigger the agent may send to others."}):ie.length===0?i.jsx("span",{className:"admin-hint",children:"(empty — nobody may send to others)"}):ie.map(J=>i.jsxs("div",{className:"hub-alias-row",children:[i.jsx("span",{className:"hub-chip",children:J}),i.jsx("button",{className:"admin-refresh-btn",disabled:b,onClick:()=>ce(Q,J),children:"✕"})]},`sa-${Q}-${J}`))}),i.jsxs("div",{className:"hub-send-form",children:[i.jsx("input",{type:"text","aria-label":`Allowed sender for ${Q}`,value:k[Q]??"",onChange:J=>x(ye=>({...ye,[Q]:J.target.value})),placeholder:"sender id, or Allow-All",disabled:b}),i.jsx("button",{className:"admin-refresh-btn",disabled:b||!(k[Q]??"").trim(),onClick:()=>I(Q),children:"+ Sender"}),fe?null:i.jsx("button",{className:"admin-refresh-btn",disabled:b,onClick:()=>ve(Q),children:"↺ Reset to open"})]}),i.jsxs("label",{style:{display:"inline-flex",alignItems:"center",gap:6,marginTop:6},children:[i.jsx("input",{type:"checkbox",checked:!!X.requireApprovedTarget,disabled:b,onChange:()=>ge(Q)}),i.jsx("span",{className:"admin-hint",children:"Require approved recipients"})]})]},`sa-${Q}`)})}),i.jsxs("div",{className:"hub-card",style:{marginTop:16},children:[i.jsxs("div",{className:"hub-card-top",children:[i.jsx("span",{className:"hub-chip",children:"🧠 Clarifying questions"}),E?i.jsx("span",{className:"hub-chip",children:"wait for reply"}):i.jsx("span",{className:"hub-chip",children:"assume option 1"}),E!==C?i.jsx("span",{className:"hub-chip",children:"· unsaved"}):null]}),i.jsxs("label",{style:{display:"inline-flex",alignItems:"center",gap:6,marginTop:6},children:[i.jsx("input",{type:"checkbox",checked:E,disabled:b,onChange:()=>O(Q=>!Q)}),i.jsxs("span",{className:"admin-hint",children:["When the agent asks a question on a channel, ",i.jsx("strong",{children:"wait for the sender's reply"})," before acting. Off (default): the question is sent and the ",i.jsx("em",{children:"first"})," option is assumed immediately — so a reply typed afterwards arrives too late to change anything."]})]}),E?i.jsxs("label",{style:{display:"inline-flex",alignItems:"center",gap:6,marginTop:6},children:[i.jsx("span",{className:"admin-hint",children:"Reply window (seconds)"}),i.jsx("input",{type:"number",min:5,max:600,value:Math.round($/1e3),disabled:b,onChange:Q=>B(Math.max(5,Math.min(600,Number(Q.target.value)||120))*1e3),style:{width:90}}),i.jsx("span",{className:"admin-hint",children:"then the first option is used, and the timeout is logged."})]}):null]}),i.jsx("div",{style:{marginTop:12},children:i.jsx("button",{className:"admin-refresh-btn",disabled:b,onClick:()=>void Ce(),children:"💾 Save send authority"})}),o&&i.jsx("div",{className:"wizard-overlay",onClick:()=>l(null),children:i.jsxs("div",{className:"wizard-modal",onClick:Q=>Q.stopPropagation(),children:[i.jsxs("div",{className:"wizard-header",children:[i.jsx("span",{className:"wizard-icon",children:"✏️"}),i.jsxs("span",{className:"wizard-title",children:["Edit Contact: ",o.name]}),i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>l(null),children:"✕"})]}),i.jsxs("div",{className:"wizard-body",children:[i.jsxs("label",{className:"hub-send-target",children:[i.jsx("span",{className:"admin-hint",children:"Name"}),i.jsx("input",{type:"text",value:c,onChange:Q=>u(Q.target.value)})]}),i.jsxs("label",{className:"hub-send-target",children:[i.jsx("span",{className:"admin-hint",children:"Phone (optional, for flexible lookup)"}),i.jsx("input",{type:"text",value:d,onChange:Q=>f(Q.target.value),placeholder:"+918800123456"})]}),i.jsxs("p",{className:"admin-hint",children:["Platform: ",i.jsx("strong",{children:o.platform})," | ID: ",i.jsx("code",{children:o.id})]}),i.jsxs("div",{className:"wizard-nav",children:[i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>l(null),children:"Cancel"}),i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>void z(),children:"Save"})]})]})]})})]})}const G_=["proven-dead","proof-expired","parked","never-verified"];function Lo(e){if(e<=0)return"never";const t=Math.floor(e/1e3),n=Math.floor(t/60),r=Math.floor(n/60),a=Math.floor(r/24);return a>30?`${a}d ago`:a>0?`${a}d ${r%24}h ago`:r>0?`${r}h ${n%60}m ago`:n>0?`${n}m ago`:`${t}s ago`}function Zye(e){if(e<=0)return"never";const t=(Date.now()-e)/(24*60*60*1e3);return t<1?`${(t*24).toFixed(1)}h`:`${t.toFixed(2)}d`}function Jye({entry:e}){const t=Date.now(),n=t-e.lastProbedAt,r=t-e.lastVerifiedAt,a=t-e.lastUsedAt,s=Math.min(100,n/(30*24*60*60*1e3)*100),o=e.lastVerifiedAt>0?Math.min(100,r/(30*24*60*60*1e3)*100):-1,l=e.lastUsedAt>0?Math.min(100,a/(30*24*60*60*1e3)*100):-1;return i.jsxs("div",{className:"timeline-bar-container",children:[i.jsx("div",{className:"timeline-bar",title:`Last probed: ${Lo(n)}`,children:i.jsx("div",{className:"timeline-bar-fill probe",style:{width:`${s}%`}})}),o>=0&&i.jsx("div",{className:"timeline-bar small",title:`Last verified: ${Lo(r)}`,children:i.jsx("div",{className:"timeline-bar-fill verify",style:{width:`${o}%`}})}),l>=0&&i.jsx("div",{className:"timeline-bar small",title:`Last used: ${Lo(a)}`,children:i.jsx("div",{className:"timeline-bar-fill use",style:{width:`${l}%`}})})]})}function q_(e){return{fontSize:11,padding:"2px 8px",borderRadius:4,background:`${e}20`,color:e,border:`1px solid ${e}40`,whiteSpace:"nowrap"}}function ebe(){const[e,t]=S.useState(null),[n,r]=S.useState(!0),[a,s]=S.useState(null),[o,l]=S.useState("all"),[c,u]=S.useState("provider"),d=S.useRef(!0),f=r0(),h=S.useCallback(async()=>{try{const A=await fetch("/api/model-timeline");if(!A.ok)throw new Error("Failed to fetch timeline data");const z=await A.json();d.current&&(t(z),s(null))}catch(A){d.current&&s(A instanceof Error?A.message:"Failed to load timeline")}finally{d.current&&r(!1)}},[]),[p,g]=S.useState(null),[m,y]=S.useState(10),[v,k]=S.useState(!1),[x,j]=S.useState(null),w=S.useRef(!1),b=S.useCallback(async()=>{const A=await Z.fetchVerifyBacklog();if(!d.current)return;g(A);const z=(A==null?void 0:A.status)==="running";w.current&&!z&&h(),w.current=z},[h]);S.useEffect(()=>{d.current=!0,h(),b();const A=setInterval(()=>void h(),3e4);return()=>{d.current=!1,clearInterval(A)}},[h,b]);const N=(p==null?void 0:p.status)==="running";S.useEffect(()=>{if(!N)return;const A=setInterval(()=>void b(),1e3);return()=>clearInterval(A)},[N,b]);const E=S.useCallback(async()=>{k(!0),j(null);const A=await Z.startVerifyBacklog(m);if(d.current){if(A.state&&g(A.state),!A.ok){const z=A.refusal??A.error??"Could not start the run.";j({text:z,kind:A.refusal?"info":"error"})}k(!1)}},[m]);if(n)return i.jsxs("div",{className:"admin-header",children:[i.jsx(Me,{icon:"📅",title:"Model Discovery Timeline"}),i.jsxs("div",{className:"loading-state",children:[i.jsx("div",{className:"loading-spinner"}),i.jsx("p",{children:"Loading timeline..."})]})]});if(a)return i.jsxs("div",{className:"admin-header",children:[i.jsx(Me,{icon:"📅",title:"Model Discovery Timeline"}),i.jsx("div",{className:"admin-row-msg admin-row-msg-err",children:a})]});if(e&&!e.counts)return i.jsxs("div",{className:"admin-header",children:[i.jsx(Me,{icon:"📅",title:"Model Discovery Timeline"}),i.jsxs("div",{className:"admin-row-msg admin-row-msg-err",children:["This dashboard server predates the reachability view. Restart it (",i.jsx("code",{children:"nuvira dashboard stop"}),", then start it again) and reload this page."]})]});const O=(e==null?void 0:e.entries)??[],C=e==null?void 0:e.counts,P=e==null?void 0:e.reachabilityCopy,$=e==null?void 0:e.freshnessCopy,B=C?G_.reduce((A,z)=>A+(C[z]??0),0):0,M=O.filter(A=>o==="routable"?A.reachability==="routable":o==="not-routable"?A.reachability!=="routable":!0),F=[...M].sort((A,z)=>c==="provider"?A.provider.localeCompare(z.provider)||A.model.localeCompare(z.model):z.lastProbedAt-A.lastProbedAt),L=new Map;for(const A of F){const z=L.get(A.provider);z?z.push(A):L.set(A.provider,[A])}const W=A=>({background:A?"var(--accent-green)":"var(--bg-hover)",border:`1px solid ${A?"var(--accent-green)":"var(--border)"}`,padding:"4px 12px",fontSize:12,cursor:"pointer"});return i.jsxs("div",{className:"admin-header",children:[i.jsx(Me,{icon:"📅",title:"Model Discovery Timeline"}),i.jsxs("p",{className:"section-description",children:["The registry's age profile: when each tracked model was last probed, last ",i.jsx("em",{children:"verified"}),", and last used — and which ones routing can actually reach. The Models page answers “is it usable right now”; this one answers “what is ageing out”."]}),i.jsxs("div",{className:"stats-grid",style:{marginBottom:8},children:[i.jsxs("div",{className:"stat-card",children:[i.jsx("div",{className:"stat-value",children:(e==null?void 0:e.totalModels)??0}),i.jsx("div",{className:"stat-label",children:"Tracked models (registry)"})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("div",{className:"stat-value",children:(f==null?void 0:f.trackedProviders)??0}),i.jsx("div",{className:"stat-label",children:"Tracked providers (registry)"})]}),f&&i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"stat-card",children:[i.jsx("div",{className:"stat-value",children:f.listedModels}),i.jsx("div",{className:"stat-label",children:"Listed models (live probe)"})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("div",{className:"stat-value",children:f.listedProviders}),i.jsx("div",{className:"stat-label",children:"Listed providers (live probe)"})]})]}),i.jsxs("div",{className:"stat-card",style:{borderColor:"var(--accent-green)"},children:[i.jsx("div",{className:"stat-value",style:{color:"var(--accent-green)"},children:(C==null?void 0:C.routable)??0}),i.jsx("div",{className:"stat-label",children:"Routable now"})]}),i.jsxs("div",{className:"stat-card",style:{borderColor:"var(--border-hover)"},children:[i.jsx("div",{className:"stat-value",style:{color:"var(--text-secondary)"},children:B}),i.jsx("div",{className:"stat-label",children:"Not routable"})]})]}),C?i.jsx("div",{style:{display:"flex",gap:14,flexWrap:"wrap",marginBottom:14,fontSize:11},children:G_.map(A=>{const z=P==null?void 0:P[A];return i.jsxs("span",{title:z==null?void 0:z.blurb,children:[i.jsx("span",{style:{color:(z==null?void 0:z.color)??"var(--text-secondary)"},children:"■"})," ",i.jsxs("span",{style:{color:"var(--text-secondary)"},children:[(z==null?void 0:z.label)??A,": ",i.jsx("strong",{style:{color:"var(--text-primary)"},children:C[A]??0})]})]},A)})}):null,p?i.jsxs("div",{style:{background:"var(--bg-card)",border:"1px solid var(--border)",borderRadius:8,padding:"12px 14px",marginBottom:16},"data-testid":"verify-backlog-panel",children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,flexWrap:"wrap"},children:[i.jsx("span",{style:{fontWeight:600,color:"var(--text-primary)"},children:"Work the backlog down"}),i.jsxs("span",{style:{fontSize:11,color:"var(--text-secondary)",flex:1,minWidth:260},children:["Each check is a real 1-token generation against one of your provider keys — not a listing lookup. A never-verified model is an ",i.jsx("em",{children:"unknown"}),", not a broken one: a check either proves it routable or marks it proven dead. Runs are bounded and one at a time."]}),i.jsxs("label",{style:{fontSize:11,color:"var(--text-secondary)",display:"flex",alignItems:"center",gap:6},children:["How many",i.jsx("input",{type:"number",min:1,max:p.maxCount??25,value:m,disabled:v||N,"aria-label":"how many models to verify",onChange:A=>y(Number(A.target.value)),style:{width:64,background:"var(--bg-primary)",color:"var(--text-primary)",border:"1px solid var(--border)",borderRadius:4,padding:"3px 6px",fontSize:12}})]}),i.jsx("button",{className:"admin-refresh-btn",type:"button",disabled:v||N||!(m>0),onClick:()=>void E(),style:{background:"var(--accent-green)",border:"1px solid var(--accent-green)",padding:"4px 12px",fontSize:12,cursor:v||N?"default":"pointer"},"data-testid":"verify-backlog-start",children:N?"⏳ Verifying…":v?"Starting…":`▶ Verify next ${m} now`})]}),N?i.jsxs("div",{className:"env-var-notice","data-testid":"verify-backlog-progress",children:["Probing"," ",i.jsx("code",{children:p.current?`${p.current.provider}/${p.current.model}`:"…"})," ","— ",p.processed,"/",p.planned," done · ",p.verified," verified · ",p.unavailable," proven dead"]}):null,!N&&p.status==="done"?i.jsxs("div",{className:"env-var-notice","data-testid":"verify-backlog-summary",children:["✅ ",p.verified," verified · ⛔ ",p.unavailable," proven unavailable · ⚠️ ",p.errored," errored · ⏭"," ",p.skipped," skipped",p.remaining!==null?` — ${p.remaining} still never verified`:""]}):null,(p.results??[]).length>0?i.jsx("div",{style:{display:"flex",gap:10,flexWrap:"wrap",marginTop:8},children:(p.results??[]).map(A=>i.jsxs("span",{style:{fontSize:11,color:"var(--text-secondary)"},title:A.outcome==="verified"?"Proven routable — a 1-token call succeeded":A.outcome==="unavailable"?"Proven dead — the provider refused it (403/404), re-probing will not help":A.outcome==="skipped"?"Skipped — verified recently enough":"Errored — transient, still unknown, will be retried next run",children:[A.outcome==="verified"?"✅":A.outcome==="unavailable"?"⛔":A.outcome==="skipped"?"⏭":"⚠️"," ",i.jsxs("code",{children:[A.provider,"/",A.model]})]},`${A.provider}:${A.model}`))}):null,x?i.jsx("div",{className:`env-var-notice${x.kind==="error"?" env-var-notice-error":""}`,"data-testid":"verify-backlog-message",children:x.text}):p.status==="idle"&&p.refusal?i.jsx("div",{className:"env-var-notice","data-testid":"verify-backlog-message",children:p.refusal}):null]}):null,i.jsxs("div",{style:{display:"flex",gap:8,marginBottom:16,flexWrap:"wrap"},children:[i.jsx("div",{style:{display:"flex",gap:4},children:["all","routable","not-routable"].map(A=>i.jsx("button",{className:`admin-refresh-btn ${o===A?"active":""}`,onClick:()=>l(A),style:W(o===A),children:A==="all"?"All":A==="routable"?"Routable":"Not routable"},A))}),i.jsx("div",{style:{display:"flex",gap:4},children:["provider","lastProbed"].map(A=>i.jsxs("button",{className:`admin-refresh-btn ${c===A?"active":""}`,onClick:()=>u(A),style:W(c===A),children:["Sort: ",A==="lastProbed"?"Last seen":"Provider"]},A))}),i.jsx("button",{className:"admin-refresh-btn",onClick:()=>void h(),style:{background:"var(--bg-hover)",border:"1px solid var(--border)",padding:"4px 12px",fontSize:12,cursor:"pointer"},children:"🔄 Refresh"})]}),i.jsxs("div",{style:{display:"flex",gap:16,marginBottom:4,fontSize:11,color:"var(--text-secondary)",flexWrap:"wrap"},children:[i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-blue)"},children:"■"})," Probe (last seen in the provider's catalog)"]}),i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-green)"},children:"■"})," Verified (last success)"]}),i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-yellow)"},children:"■"})," Used (last invocation)"]})]}),i.jsxs("div",{style:{marginBottom:12,fontSize:11,color:"var(--text-secondary)"},children:[i.jsx("strong",{style:{color:"var(--text-primary)"},children:"Fresh"})," means the provider still lists it."," ",i.jsx("strong",{style:{color:"var(--text-primary)"},children:"Routable"})," means a turn has been proven to work on it within"," ",(e==null?void 0:e.freshDays)??7," days. A fresh model that was never verified is an unknown, not a failure — background spot-checks work through those a few at a time."]}),i.jsx("div",{style:{display:"flex",flexDirection:"column",gap:8},children:Array.from(L.entries()).map(([A,z])=>{const T=z.filter(K=>K.reachability==="routable").length;return i.jsxs("div",{style:{background:"var(--bg-card)",borderRadius:8,border:"1px solid var(--border)",overflow:"hidden"},children:[i.jsxs("div",{style:{padding:"10px 14px",borderBottom:"1px solid var(--border)",display:"flex",alignItems:"center",gap:8},children:[i.jsx("span",{style:{fontSize:16},children:A==="groq"?"⚡":A==="gemini"?"🌀":A==="local"?"💻":"🤖"}),i.jsx("span",{style:{fontWeight:600,color:"var(--text-primary)"},children:A}),i.jsxs("span",{style:{fontSize:12,color:"var(--text-secondary)"},children:["(",z.length," shown · ",T," routable)"]})]}),i.jsx("div",{style:{padding:"8px 14px"},children:z.map(K=>{const D=Date.now(),I=P==null?void 0:P[K.reachability],ce=$==null?void 0:$[K.freshness],ge=(I==null?void 0:I.color)??"var(--text-secondary)";return i.jsxs("div",{"data-testid":`timeline-row-${K.provider}-${K.model}`,style:{display:"flex",alignItems:"center",gap:12,padding:"6px 0",borderBottom:"1px solid var(--border-light)"},children:[i.jsxs("div",{style:{flex:1,minWidth:0},children:[i.jsx("div",{style:{fontSize:13,color:"var(--text-primary)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:K.model}),i.jsxs("div",{style:{fontSize:11,color:"var(--text-secondary)",display:"flex",gap:12,flexWrap:"wrap"},children:[i.jsxs("span",{children:["Probed: ",Lo(D-K.lastProbedAt)]}),i.jsxs("span",{children:["Verified: ",K.lastVerifiedAt>0?Lo(D-K.lastVerifiedAt):"never"]}),K.lastUsedAt>0&&i.jsxs("span",{children:["Used: ",Lo(D-K.lastUsedAt)]}),K.latencyMs!==void 0&&i.jsxs("span",{children:[K.latencyMs,"ms"]}),K.errorRate>0&&i.jsxs("span",{style:{color:K.errorRate>.5?"var(--accent-red)":"var(--accent-yellow)"},children:["err ",(K.errorRate*100).toFixed(0),"%"]}),K.daysSinceVerify!==null&&K.daysSinceVerify>7&&i.jsxs("span",{style:{color:"var(--accent-yellow)"},children:["proof ",Zye(K.lastVerifiedAt)," old"]})]})]}),i.jsx(Jye,{entry:K}),ce&&i.jsx("span",{style:q_(ce.color),title:ce.blurb,children:ce.label}),i.jsx("span",{style:q_(ge),title:(I==null?void 0:I.blurb)??K.reachability,"data-testid":`reachability-${K.provider}-${K.model}`,children:((I==null?void 0:I.label)??K.reachability).toUpperCase()})]},K.model)})})]},A)})}),M.length===0&&i.jsx("div",{style:{textAlign:"center",padding:"40px 20px",color:"var(--text-secondary)"},children:o==="routable"&&O.length>0?"No model is routable right now — every tracked model is unverified, parked, expired or dead. The Models page shows what each provider would offer live.":"No models match the current filter"})]})}function K_(e){const t=Math.max(0,Math.round((Date.now()-e)/6e4));if(t<1)return"just now";if(t<60)return`${t}m ago`;const n=Math.round(t/60);return n<24?`${n}h ago`:`${Math.round(n/24)}d ago`}function V_(e){return(e||"").split(/[\\/]/).filter(Boolean).slice(-2).join("/")||e}function tbe(){const[e,t]=S.useState(null),[n,r]=S.useState(!1),[a,s]=S.useState(!1),[o,l]=S.useState(null),c=S.useCallback(async()=>{const p=await Z.fetchContinuity();t(p),r(!0)},[]);S.useEffect(()=>{let p=!0;return Z.fetchContinuity().then(g=>{p&&(t(g),r(!0))}),()=>{p=!1}},[]);const u=S.useCallback(async(p,g)=>{s(!0),l(null);const m=await Z.clearContinuity(p,g);m.ok?l(`Removed ${m.removed??0} record(s).`):l(m.error||"Could not clear that."),await c(),s(!1)},[c]);if(!n)return i.jsxs(i.Fragment,{children:[i.jsx("h2",{className:"section-subtitle",children:"🔗 Continuity"}),i.jsx("div",{className:"loading-state",children:i.jsx("p",{children:"Loading continuity data…"})})]});const d=e===null,f=(e==null?void 0:e.sessions)??[],h=(e==null?void 0:e.recall)??[];return i.jsxs(i.Fragment,{children:[i.jsx("h2",{className:"section-subtitle",children:"🔗 Continuity"}),i.jsx("p",{className:"memory-namespace-note",children:"The conversation snapshots that let a crashed or killed turn be resumed, and the index of past asks used for semantic recall. Both are history — they never decide that work is done. Turn the switches on or off on the Process Environment page."}),d?i.jsxs("p",{className:"memory-namespace-note",children:["Continuity data is unavailable — this dashboard server has no ",i.jsx("code",{children:"/api/continuity"})," endpoint."]}):i.jsxs(i.Fragment,{children:[i.jsxs("p",{className:"memory-backend",children:["Session store: ",i.jsx("code",{children:e.toggles.sessionStore?"ON":"OFF"})," · ","Semantic recall: ",i.jsx("code",{children:e.toggles.sessionRecall?"ON":"OFF"})]}),o?i.jsx("div",{className:"env-var-notice",children:o}):null,i.jsxs("h3",{className:"section-subtitle",children:["Stored sessions (",f.length,")"]}),f.length===0?i.jsx("p",{className:"memory-namespace-note",children:"No session snapshots yet."}):i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"memory-list",children:f.map(p=>i.jsxs("div",{className:"memory-item",children:[i.jsxs("span",{className:"memory-project",children:[p.open?"↩️ OPEN":"✓ closed"," · ",p.goal]}),i.jsxs("span",{className:"memory-count",children:[V_(p.cwd)," · ",p.steps," step(s) · ",K_(p.savedAt)]}),i.jsx("button",{className:"admin-mini-btn admin-mini-btn-danger",type:"button",disabled:a,"aria-label":`Forget session ${p.goal}`,onClick:()=>void u("session",p.id),children:"🗑️ Forget"})]},p.id))}),i.jsx("button",{className:"admin-mini-btn admin-mini-btn-danger",type:"button",disabled:a||f.length===0,onClick:()=>void u("sessions"),children:"🗑️ Forget all sessions"})]}),i.jsxs("h3",{className:"section-subtitle",children:["Recalled past asks (",h.length,")"]}),h.length===0?i.jsx("p",{className:"memory-namespace-note",children:"Nothing indexed for recall yet."}):i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"memory-list",children:h.map(p=>i.jsxs("div",{className:"memory-item",children:[i.jsxs("span",{className:"memory-project",children:[p.outcome,": ",p.goal]}),i.jsxs("span",{className:"memory-count",children:[V_(p.projectPath)," · ",K_(p.savedAt)]}),i.jsx("button",{className:"admin-mini-btn admin-mini-btn-danger",type:"button",disabled:a,"aria-label":`Forget recall entry ${p.goal}`,onClick:()=>void u("recall-entry",p.id),children:"🗑️ Forget"})]},p.id))}),i.jsx("button",{className:"admin-mini-btn admin-mini-btn-danger",type:"button",disabled:a||h.length===0,onClick:()=>void u("recall"),children:"🗑️ Forget all recall entries"})]})]})]})}function Yi(e){return e==null?"0":e>=1e6?(e/1e6).toFixed(1)+"M":e>=1e3?(e/1e3).toFixed(1)+"K":mt(e)}function nbe(e){return e==null?"0%":(e*100).toFixed(1)+"%"}const Y_={"faiss-native":"native FAISS","faiss-ivf":"FAISS-style IVF-flat ANN",json:"exact flat cosine (JSON)"};function rbe({data:e}){var l,c;if(!e)return i.jsxs(i.Fragment,{children:[i.jsx(Me,{icon:"💾",title:"Memory Store"}),i.jsx("div",{className:"loading-state",children:i.jsx("p",{children:"Loading memory data..."})})]});const{memory:t,health:n}=e,r=Object.entries(t.byFingerprint||{}).sort(([,u],[,d])=>d-u),a=Object.entries(((l=t.facts)==null?void 0:l.byProject)||{}).sort(([,u],[,d])=>d-u),s=[...t.vectorNamespaces||[]].sort((u,d)=>d.entries-u.entries),o=t.recall||{total:0,today:0,last7d:0};return i.jsxs(i.Fragment,{children:[i.jsx(Me,{icon:"💾",title:"Memory Store"}),i.jsxs("div",{className:"stats-grid mini",children:[i.jsxs("div",{className:"stat-card",children:[i.jsx("div",{className:"stat-value",children:Yi(t.total)}),i.jsx("div",{className:"stat-label",children:"Trajectories"})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("div",{className:"stat-value",children:nbe(t.avgScore)}),i.jsx("div",{className:"stat-label",children:"Avg Score"})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("div",{className:"stat-value",children:Yi((c=t.facts)==null?void 0:c.total)}),i.jsx("div",{className:"stat-label",children:"Facts"})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("div",{className:"stat-value",children:Yi(o.total)}),i.jsx("div",{className:"stat-label",children:"Recall Hits"})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("div",{className:"stat-value",children:Yi(n==null?void 0:n.patterns)}),i.jsx("div",{className:"stat-label",children:"Coding Patterns"})]}),i.jsxs("div",{className:"stat-card",children:[i.jsx("div",{className:"stat-value",children:Yi(n==null?void 0:n.feedback)}),i.jsx("div",{className:"stat-label",children:"Feedback Ratings"})]})]}),i.jsxs("p",{className:"memory-backend",children:["Memory tier: ",i.jsx("code",{children:t.backend||"local"})," · ","Vector index: ",i.jsx("code",{children:t.vectorBackend||"unknown"}),t.vectorBackend&&Y_[t.vectorBackend]?` (${Y_[t.vectorBackend]})`:"",o.last7d>0?` · ${Yi(o.last7d)} recall(s) this week, ${Yi(o.today)} today`:" · no recalls yet"]}),i.jsx(tbe,{}),r.length>0&&i.jsxs(i.Fragment,{children:[i.jsx("h2",{className:"section-subtitle",children:"By Project Type"}),i.jsx("div",{className:"memory-list",children:r.map(([u,d])=>i.jsxs("div",{className:"memory-item",children:[i.jsx("span",{className:"memory-project",children:u}),i.jsxs("span",{className:"memory-count",children:[d," trajectory(ies)"]})]},u))})]}),a.length>0&&i.jsxs(i.Fragment,{children:[i.jsx("h2",{className:"section-subtitle",children:"Facts by Project"}),i.jsx("div",{className:"memory-list",children:a.map(([u,d])=>i.jsxs("div",{className:"memory-item",children:[i.jsx("span",{className:"memory-project",children:u}),i.jsxs("span",{className:"memory-count",children:[d," fact(s)"]})]},u))})]}),s.length>0&&i.jsxs(i.Fragment,{children:[i.jsx("h2",{className:"section-subtitle",children:"Vector Index by Namespace"}),i.jsxs("p",{className:"memory-namespace-note",children:["Each namespace is its own index file. ",i.jsx("code",{children:"default"})," holds only successful trajectories and indexed sessions — facts, repo chunks and the model registry have their own namespaces — so a small ",i.jsx("code",{children:"default"})," count is corpus size, not a broken index."]}),i.jsx("div",{className:"memory-list",children:s.map(u=>i.jsxs("div",{className:"memory-item",children:[i.jsx("span",{className:"memory-project",children:u.name}),i.jsxs("span",{className:"memory-count",children:[u.entries," vector(s)"]})]},u.name))})]})]})}function abe(e){return new Date(e).toLocaleDateString("en-US",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}function ibe({data:e}){if(!e)return i.jsxs(i.Fragment,{children:[i.jsx(Me,{icon:"📝",title:"Conversation History"}),i.jsx("div",{className:"loading-state",children:i.jsx("p",{children:"Loading history..."})})]});const{history:t}=e,n=t.recent||[];return i.jsxs(i.Fragment,{children:[i.jsx(Me,{icon:"📝",title:"Conversation History"}),i.jsx("div",{className:"history-stats",children:i.jsxs("span",{className:"history-count",children:["Total: ",i.jsx("strong",{children:t.total})," sessions"]})}),i.jsx("div",{className:"history-list",children:n.length===0?i.jsx("div",{className:"empty-state",children:"No conversations recorded yet."}):n.map(r=>i.jsxs("div",{className:"history-item",children:[i.jsx("div",{className:"history-summary",children:r.summary||"Untitled"}),i.jsxs("div",{className:"history-meta",children:[i.jsxs("span",{children:["📅 ",abe(r.startedAt)]}),i.jsxs("span",{children:["🤖 ",r.provider||"--"]}),i.jsxs("span",{children:["💬 ",r.messageCount||0," msgs"]}),r.tags&&r.tags.length>0&&i.jsxs("span",{children:["🏷️ ",r.tags.map(a=>i.jsx("span",{className:"history-tag",children:a},a))]})]})]},r.id))})]})}function sbe({onFetch:e,onClear:t,onExport:n}){const[r,a]=S.useState([]),[s,o]=S.useState(!1),[l,c]=S.useState(""),[u,d]=S.useState(""),[f,h]=S.useState(null),[p,g]=S.useState(null);S.useEffect(()=>{m()},[l,u]);const m=async()=>{o(!0);try{const j=await e({skillName:l||void 0,status:u||void 0,limit:100});a(j);const w=j.length,b=j.filter(O=>O.status==="success").length,N=j.filter(O=>O.status==="failure").length,E=w>0?Math.round(j.reduce((O,C)=>O+C.durationMs,0)/w):0;g({total:w,success:b,failure:N,avgDuration:E})}catch(j){console.error("Failed to fetch execution history:",j)}finally{o(!1)}},y=async j=>{if(n)try{const w=await n(j),b=new Blob([w],{type:j==="json"?"application/json":"text/csv"}),N=URL.createObjectURL(b),E=document.createElement("a");E.href=N,E.download=`execution-history.${j}`,E.click(),URL.revokeObjectURL(N)}catch(w){console.error("Failed to export history:",w)}},v=async()=>{if(t&&confirm("Are you sure you want to clear all execution history?"))try{await t(),a([]),g(null)}catch(j){console.error("Failed to clear history:",j)}},k=j=>{switch(j){case"success":return"✅";case"failure":return"❌";case"timeout":return"⏰";case"rejected":return"🚫";case"error":return"💥";default:return"❓"}},x=j=>{switch(j){case"python":return"🐍";case"node":return"🟢";case"shell":return"🖥️";case"ruby":return"💎";case"go":return"🔵";case"rust":return"🦀";default:return"📜"}};return i.jsxs("div",{className:"execution-history",children:[i.jsx(Me,{icon:"📜",title:"Execution History",actions:i.jsxs("div",{className:"execution-history-actions",children:[i.jsx("button",{className:"admin-mini-btn",type:"button",onClick:()=>y("json"),children:"📥 Export JSON"}),i.jsx("button",{className:"admin-mini-btn",type:"button",onClick:()=>y("csv"),children:"📥 Export CSV"}),t&&i.jsx("button",{className:"admin-mini-btn admin-mini-btn-danger",type:"button",onClick:v,children:"🗑️ Clear"})]})}),p&&i.jsxs("div",{className:"execution-history-stats",children:[i.jsxs("div",{className:"stat-item",children:[i.jsx("span",{className:"stat-value",children:p.total}),i.jsx("span",{className:"stat-label",children:"Total"})]}),i.jsxs("div",{className:"stat-item stat-success",children:[i.jsx("span",{className:"stat-value",children:p.success}),i.jsx("span",{className:"stat-label",children:"Success"})]}),i.jsxs("div",{className:"stat-item stat-failure",children:[i.jsx("span",{className:"stat-value",children:p.failure}),i.jsx("span",{className:"stat-label",children:"Failed"})]}),i.jsxs("div",{className:"stat-item",children:[i.jsxs("span",{className:"stat-value",children:[p.avgDuration,"ms"]}),i.jsx("span",{className:"stat-label",children:"Avg Duration"})]})]}),i.jsxs("div",{className:"execution-history-filters",children:[i.jsx("input",{className:"env-var-input",type:"text","aria-label":"Filter by skill name",placeholder:"Filter by skill name...",value:l,onChange:j=>c(j.target.value)}),i.jsxs("select",{className:"env-var-input","aria-label":"Filter by status",value:u,onChange:j=>d(j.target.value),children:[i.jsx("option",{value:"",children:"All statuses"}),i.jsx("option",{value:"success",children:"Success"}),i.jsx("option",{value:"failure",children:"Failure"}),i.jsx("option",{value:"timeout",children:"Timeout"}),i.jsx("option",{value:"rejected",children:"Rejected"}),i.jsx("option",{value:"error",children:"Error"})]})]}),i.jsx("div",{className:"execution-history-list",children:s?i.jsx("div",{className:"execution-history-empty",children:"Loading..."}):r.length===0?i.jsx("div",{className:"execution-history-empty",children:"No execution history found. Execute a skill to see results here."}):r.map(j=>i.jsxs("div",{className:`execution-history-entry ${j.status}`,onClick:()=>h((f==null?void 0:f.id)===j.id?null:j),children:[i.jsxs("div",{className:"entry-header",children:[i.jsx("span",{className:"entry-icon",children:k(j.status)}),i.jsx("span",{className:"entry-skill",children:j.skillName}),i.jsxs("span",{className:"entry-runtime",children:[x(j.runtime)," ",j.runtime]}),i.jsxs("span",{className:"entry-duration",children:[j.durationMs,"ms"]}),i.jsx("span",{className:"entry-time",children:new Date(j.timestamp).toLocaleString()}),i.jsx("span",{className:"entry-expand",children:(f==null?void 0:f.id)===j.id?"▼":"▶"})]}),(f==null?void 0:f.id)===j.id&&i.jsxs("div",{className:"entry-details",children:[i.jsxs("div",{className:"entry-detail-row",children:[i.jsx("span",{className:"detail-label",children:"Status:"}),i.jsx("span",{className:"detail-value",children:j.status})]}),i.jsxs("div",{className:"entry-detail-row",children:[i.jsx("span",{className:"detail-label",children:"Runtime:"}),i.jsx("span",{className:"detail-value",children:j.runtime})]}),i.jsxs("div",{className:"entry-detail-row",children:[i.jsx("span",{className:"detail-label",children:"Duration:"}),i.jsxs("span",{className:"detail-value",children:[j.durationMs,"ms"]})]}),j.exitCode!==void 0&&i.jsxs("div",{className:"entry-detail-row",children:[i.jsx("span",{className:"detail-label",children:"Exit Code:"}),i.jsx("span",{className:"detail-value",children:j.exitCode})]}),j.error&&i.jsxs("div",{className:"entry-detail-row",children:[i.jsx("span",{className:"detail-label",children:"Error:"}),i.jsx("span",{className:"detail-value entry-error",children:j.error})]}),j.command&&i.jsxs("div",{className:"entry-detail-row",children:[i.jsx("span",{className:"detail-label",children:"Command:"}),i.jsx("code",{className:"detail-value",children:j.command})]})]})]},j.id))})]})}function obe({envVars:e,onSave:t,onDelete:n,onTest:r,readOnly:a=!1}){const[s,o]=S.useState(null),[l,c]=S.useState(""),[u,d]=S.useState(!1),[f,h]=S.useState(""),[p,g]=S.useState(""),[m,y]=S.useState(null),[v,k]=S.useState({}),x=[...e].sort((N,E)=>N.requiredBy&&!E.requiredBy?-1:!N.requiredBy&&E.requiredBy?1:N.name.localeCompare(E.name)),j=N=>{t(N,l),o(null),c("")},w=()=>{f&&p&&(t(f,p),h(""),g(""),d(!1))},b=async N=>{if(r){y(N);try{const E=await r(N);k(O=>({...O,[N]:E}))}catch{k(E=>({...E,[N]:!1}))}finally{y(null)}}};return i.jsxs("div",{className:"env-var-editor",children:[i.jsxs("div",{className:"env-var-header",children:[i.jsx("h2",{className:"env-var-title",children:"🔐 Environment Variables"}),!a&&i.jsx("button",{className:"admin-mini-btn",type:"button",onClick:()=>d(!u),children:u?"✕ Cancel":"+ Add Variable"})]}),u&&!a&&i.jsxs("div",{className:"env-var-add-form",children:[i.jsx("input",{className:"env-var-input",type:"text",placeholder:"Variable name (e.g., MY_API_KEY)",value:f,onChange:N=>h(N.target.value)}),i.jsx("input",{className:"env-var-input",type:"password",placeholder:"Value",value:p,onChange:N=>g(N.target.value)}),i.jsx("button",{className:"admin-refresh-btn",type:"button",disabled:!f||!p,onClick:w,children:"💾 Save"})]}),i.jsx("div",{className:"env-var-list",children:x.length===0?i.jsx("div",{className:"env-var-empty",children:"No environment variables configured. Add one to get started."}):x.map(N=>i.jsxs("div",{className:`env-var-row ${N.isSet?"env-var-set":"env-var-missing"} ${N.isProviderCredential?"env-var-blocked":""}`,children:[i.jsxs("div",{className:"env-var-row-header",children:[i.jsxs("span",{className:"env-var-name",children:[N.name,N.requiredBy&&i.jsxs("span",{className:"env-var-required-badge",children:["required by ",N.requiredBy]}),N.isProviderCredential&&i.jsx("span",{className:"env-var-blocked-badge",children:"🔒 provider credential (blocked)"})]}),i.jsx("span",{className:"env-var-status",children:N.isSet?"✅ Set":"❌ Not set"})]}),N.description&&i.jsx("div",{className:"env-var-description",children:N.description}),s===N.name?i.jsxs("div",{className:"env-var-edit",children:[i.jsx("input",{className:"env-var-input",type:"password",value:l,onChange:E=>c(E.target.value),placeholder:"Enter new value..."}),i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>j(N.name),children:"💾 Save"}),i.jsx("button",{className:"admin-mini-btn",type:"button",onClick:()=>o(null),children:"Cancel"})]}):i.jsxs("div",{className:"env-var-actions",children:[!a&&!N.isProviderCredential&&i.jsx("button",{className:"admin-mini-btn",type:"button",onClick:()=>{o(N.name),c("")},children:"✏️ Edit"}),r&&i.jsx("button",{className:"admin-mini-btn",type:"button",disabled:m===N.name,onClick:()=>b(N.name),children:m===N.name?"⏳ Testing...":"🧪 Test"}),!a&&i.jsx("button",{className:"admin-mini-btn admin-mini-btn-danger",type:"button",onClick:()=>n(N.name),children:"🗑️ Delete"}),v[N.name]!==void 0&&i.jsx("span",{className:`env-var-test-result ${v[N.name]?"env-var-test-pass":"env-var-test-fail"}`,children:v[N.name]?"✅ Valid":"❌ Invalid"})]})]},N.name))}),i.jsx("div",{className:"env-var-help",children:i.jsxs("p",{children:[i.jsx("strong",{children:"Tip:"})," Environment variables are stored in ",i.jsx("code",{children:"~/.nuvira/.env"})," and injected into skill executions. Provider credentials (ANTHROPIC_API_KEY, OPENAI_API_KEY, etc.) are automatically blocked from skill execution for security."]})})]})}function lbe(){const[e,t]=S.useState({configured:!1,authenticated:!1,role:null}),n=Ds(),[r,a]=S.useState([]),[s,o]=S.useState(!0),[l,c]=S.useState(null),[u,d]=S.useState(null),f=e.authenticated&&(e.role==="admin"||e.role==="operator"),h=S.useCallback(async()=>{o(!0);const y=await Z.fetchSkillEnv();a(y),o(!1)},[]);S.useEffect(()=>{Z.fetchAdminAuthStatus().then(y=>{t(y?{configured:y.configured,authenticated:y.authenticated,role:y.role??null}:{configured:!1,authenticated:!1,role:null})}),h()},[h,n]);const p=S.useCallback(async(y,v)=>{var j;c(null),d(null);const k=await Z.saveSecrets({[y]:v}),x=(j=k.refused)==null?void 0:j.find(w=>w.name===y);!k.ok||x?c(x?cbe(y,x.reason):k.error||`Could not save ${y}.`):d(`Saved ${y}.`),await h()},[h]),g=S.useCallback(async y=>{c(null),d(null);const v=await Z.deleteSkillEnvVar(y);v.ok?d(v.removed?`Deleted ${y}.`:`${y} was not stored in the env file.`):c(v.error||`Could not delete ${y}.`),await h()},[h]),m=S.useCallback(async y=>{const v=await Z.testSkillEnvVar(y);return v.ok?(c(null),d(v.detail||`${y}: ${v.usable?"usable by skills":"not usable by skills"}`),v.usable===!0):(c(v.error||`Could not test ${y}.`),!1)},[]);return i.jsxs("div",{children:[i.jsx(Me,{icon:"🔐",title:"Skill Environment Variables"}),i.jsxs("div",{className:"env-var-header",children:[i.jsx("span",{className:"env-var-title",children:"Values are masked; only names and set/unset state are shown."}),i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>void h(),children:"↻ Refresh"})]}),i.jsxs("div",{className:"admin-hint",children:["Secrets here are injected into skill executions that declare them (",i.jsx("code",{children:"required_environment_variables"}),"). Provider credentials are listed but locked — they belong to provider setup, and skills never receive them."]}),e.authenticated?null:i.jsx("div",{className:"admin-hint",children:e.configured?"Log in to view or edit skill secrets.":"Set up an admin account to manage skill secrets."}),e.authenticated&&!f?i.jsx("div",{className:"admin-hint",children:"Read-only — admins and operators can change these values."}):null,l?i.jsx("div",{className:"env-var-notice env-var-notice-error",children:l}):null,u?i.jsx("div",{className:"env-var-notice",children:u}):null,s?i.jsx("div",{className:"loading-state",children:"Loading…"}):i.jsx(obe,{envVars:r,onSave:(y,v)=>void p(y,v),onDelete:y=>void g(y),onTest:m,readOnly:!f})]})}function cbe(e,t){switch(t){case"provider-credential":return`${e} is a provider credential — configure it in provider setup instead. Skills never receive it.`;case"invalid-name":return`${e} is not a valid environment variable name.`;case"write-failed":return`${e} could not be written to the env file.`;default:return`${e} was not saved (${t}).`}}const ube=[{id:"turn",title:"Turn behaviour",blurb:"How each turn runs. Unset means nobody has asked for anything, which is not the same as asking for no."},{id:"observability",title:"Observability",blurb:"What a run records about itself. Both are off by default and off unless asked for."},{id:"hooks",title:"Tool hooks",blurb:"A command run around every tool call, with the call on stdin as JSON. For a phase, a value here REPLACES the hooks declared in tools.hooks."}];function dbe(){const[e,t]=S.useState({configured:!1,authenticated:!1,role:null}),n=Ds(),[r,a]=S.useState([]),[s,o]=S.useState(!0),[l,c]=S.useState(null),[u,d]=S.useState(null),[f,h]=S.useState({}),[p,g]=S.useState(null),m=e.authenticated&&(e.role==="admin"||e.role==="operator"),y=S.useCallback(async()=>{o(!0),a(await Z.fetchProcessEnv()),o(!1)},[]);S.useEffect(()=>{Z.fetchAdminAuthStatus().then(x=>{t(x?{configured:x.configured,authenticated:x.authenticated,role:x.role??null}:{configured:!1,authenticated:!1,role:null})}),y()},[y,n]);const v=S.useCallback(async(x,j)=>{g(x),c(null),d(null);const w=await Z.saveProcessEnvVar(x,j);if(!w.ok||!w.row)c(w.error||`Could not set ${x}.`);else{const b=w.row;a(N=>N.map(E=>E.name===b.name?b:E)),h(N=>({...N,[x]:""})),d(`${x} = ${b.fileValue}. Takes effect on the next turn; the dashboard picked it up immediately.`)}g(null)},[]),k=S.useCallback(async x=>{g(x),c(null),d(null);const j=await Z.deleteProcessEnvVar(x);if(!j.ok||!j.row)c(j.error||`Could not unset ${x}.`);else{const w=j.row;a(b=>b.map(N=>N.name===w.name?w:N)),h(b=>({...b,[x]:""})),d(j.removed?`${x} removed from the env file. ${w.unsetMeans}`:`${x} had no line in the env file. ${w.unsetMeans}`)}g(null)},[]);return i.jsxs("div",{children:[i.jsx(Me,{icon:"🌱",title:"Process Environment"}),i.jsxs("div",{className:"env-var-header",children:[i.jsx("span",{className:"env-var-title",children:"These are the switches Agent-Nuvira reads for how a run behaves. Values are written to the credential env file and are not masked — do not put a secret in a hook command."}),i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>void y(),children:"↻ Refresh"})]}),i.jsxs("div",{className:"admin-hint",children:["A value exported in your shell ",i.jsx("strong",{children:"wins over this file"}),", for the dashboard and for every CLI run in that shell. A row that says ",i.jsx("em",{children:"shell value wins"})," is reporting exactly that, and writes here will not change it."]}),e.authenticated?null:i.jsx("div",{className:"admin-hint",children:e.configured?"Log in to view or change the process environment.":"Set up an admin account to change the process environment."}),e.authenticated&&!m?i.jsx("div",{className:"admin-hint",children:"Read-only — admins and operators can change these values."}):null,l?i.jsx("div",{className:"env-var-notice env-var-notice-error",children:l}):null,u?i.jsx("div",{className:"env-var-notice",children:u}):null,s?i.jsx("div",{className:"loading-state",children:"Loading…"}):ube.map(x=>{const j=r.filter(w=>w.group===x.id);return j.length===0?null:i.jsxs("section",{className:"process-env-group",children:[i.jsx("h3",{className:"process-env-group-title",children:x.title}),i.jsx("p",{className:"process-env-group-blurb",children:x.blurb}),i.jsx("div",{className:"env-var-list",children:j.map(w=>i.jsx(fbe,{row:w,draft:f[w.name]??"",busy:p===w.name,readOnly:!m,onDraft:b=>h(N=>({...N,[w.name]:b})),onSet:b=>void v(w.name,b),onUnset:()=>void k(w.name)},w.name))})]},x.id)})]})}function fbe({row:e,draft:t,busy:n,readOnly:r,onDraft:a,onSet:s,onUnset:o}){const l=e.state==="on",c=e.state!=="unset",u=f=>`admin-mini-btn${f?" process-env-active":""}`,d=e.kind==="flag"&&e.fileValue!==null&&e.fileValue!=="1"&&e.fileValue!=="0"?e.fileValue:null;return i.jsxs("div",{className:`env-var-row ${c?"env-var-set":"env-var-missing"}`,"data-testid":`process-env-row-${e.name}`,children:[i.jsxs("div",{className:"env-var-row-header",children:[i.jsxs("span",{className:"env-var-name",children:[e.name,e.shadowed?i.jsxs("span",{className:"env-var-blocked-badge",children:["⚠️ shell value wins: ",e.processValue]}):null]}),i.jsxs("span",{className:"env-var-status",children:[e.kind==="flag"?l?"✅ On":c?"⭕ Off":"➖ Unset":c?"✅ Set":"➖ Unset",d?` (${d})`:""]})]}),i.jsxs("div",{className:"env-var-description",children:[i.jsx("strong",{children:e.label})," — ",e.description]}),i.jsxs("div",{className:"env-var-description",children:["Unset: ",e.unsetMeans]}),e.cliEquivalent?i.jsxs("div",{className:"env-var-description",children:["Same switch: ",i.jsx("code",{children:e.cliEquivalent})]}):null,e.warning?i.jsxs("div",{className:"env-var-warning",children:["⚠️ ",e.warning]}):null,r?null:i.jsxs("div",{className:"env-var-actions",children:[e.kind==="flag"?i.jsxs(i.Fragment,{children:[i.jsx("button",{className:u(l),type:"button",disabled:n,onClick:()=>s("1"),children:"On"}),i.jsx("button",{className:u(c&&!l),type:"button",disabled:n,onClick:()=>s("0"),children:"Off"}),i.jsx("button",{className:u(!c),type:"button",disabled:n,onClick:o,children:"Unset"})]}):null,e.kind==="text"||e.acceptsValue?i.jsxs(i.Fragment,{children:[i.jsx("input",{className:"env-var-input",type:"text",value:t,placeholder:e.placeholder,disabled:n,onChange:f=>a(f.target.value),"aria-label":`${e.name} value`}),i.jsxs("button",{className:"admin-mini-btn",type:"button",disabled:n||t.trim()==="",onClick:()=>s(t),children:["💾 ",e.valueLabel??"Save"]})]}):null,e.kind==="text"?i.jsx("button",{className:"admin-mini-btn admin-mini-btn-danger",type:"button",disabled:n,onClick:o,children:"🗑️ Unset"}):null]})]})}function hbe(){const[e,t]=S.useState(null),[n,r]=S.useState(!1),[a,s]=S.useState("--"),[o,l]=S.useState(!1),u=Ai().pathname==="/chat",[d,f]=S.useState(u);S.useEffect(()=>{u&&f(!0)},[u]);const h=S.useCallback(m=>{t(m),s(new Date().toLocaleTimeString())},[]),p=S.useCallback(m=>{r(m)},[]),g=S.useCallback(async()=>{l(!0);try{const m=await Z.fetchAll();m&&h(m)}finally{l(!1)}},[h]);return S.useEffect(()=>{Z.fetchAll().then(v=>{v&&h(v)});const m=Z.subscribe(h),y=Z.onConnectionChange(p);return Z.connect(),()=>{m(),y(),Z.disconnect()}},[h,p]),i.jsxs(cB,{connected:n,lastUpdated:a,onRefresh:g,refreshing:o,children:[d&&i.jsx("div",{style:{display:u?void 0:"none"},children:i.jsx(Fye,{})}),i.jsx("div",{style:{display:u?"none":void 0},children:i.jsxs(C2,{children:[i.jsx(at,{path:"/",element:i.jsx(Yk,{to:"/overview",replace:!0})}),i.jsx(at,{path:"/overview",element:i.jsx(Hie,{data:e,onRefresh:g,refreshing:o})}),i.jsx(at,{path:"/chat",element:null}),i.jsx(at,{path:"/dag",element:i.jsx(tse,{data:e})}),i.jsx(at,{path:"/costs",element:i.jsx(rse,{data:e})}),i.jsx(at,{path:"/benchmarks",element:i.jsx(ise,{data:e})}),i.jsx(at,{path:"/models",element:i.jsx(Gse,{})}),i.jsx(at,{path:"/models/timeline",element:i.jsx(ebe,{})}),i.jsx(at,{path:"/routing",element:i.jsx(Eoe,{data:e})}),i.jsx(at,{path:"/requests",element:i.jsx(Coe,{data:e})}),i.jsx(at,{path:"/traces",element:i.jsx(zoe,{})}),i.jsx(at,{path:"/hub",element:i.jsx(rle,{})}),i.jsx(at,{path:"/tasks",element:i.jsx(dle,{})}),i.jsx(at,{path:"/evals",element:i.jsx(Gye,{data:e})}),i.jsx(at,{path:"/platforms",element:i.jsx(Vye,{})}),i.jsx(at,{path:"/bedrock",element:i.jsx(Xye,{canWrite:!0,sessionExpired:m=>console.error(m)})}),i.jsx(at,{path:"/contacts",element:i.jsx(Qye,{})}),i.jsx(at,{path:"/gateway",element:i.jsx(Kye,{})}),i.jsx(at,{path:"/env",element:i.jsx(lbe,{})}),i.jsx(at,{path:"/process-env",element:i.jsx(dbe,{})}),i.jsx(at,{path:"/memory",element:i.jsx(rbe,{data:e})}),i.jsx(at,{path:"/history",element:i.jsx(ibe,{data:e})}),i.jsx(at,{path:"/executions",element:i.jsx(sbe,{onFetch:m=>Z.fetchExecutionAudit(m)})}),i.jsx(at,{path:"/system",element:i.jsx(cse,{data:e,connected:n,lastUpdated:a})}),i.jsx(at,{path:"/admin",element:i.jsx(qoe,{})}),i.jsx(at,{path:"/help",element:i.jsx(Gie,{})}),i.jsx(at,{path:"*",element:i.jsx(Yk,{to:"/overview",replace:!0})})]})})]})}Yx(ST());lT(document.getElementById("root")).render(i.jsx(S.StrictMode,{children:i.jsx(L2,{children:i.jsx(hbe,{})})}));
207
- //# sourceMappingURL=index-BrZcYhy6.js.map