@abstractframework/code 0.9.0 → 0.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,75 +0,0 @@
1
- var qg=Object.defineProperty;var ey=(e,t,s)=>t in e?qg(e,t,{enumerable:!0,configurable:!0,writable:!0,value:s}):e[t]=s;var mn=(e,t,s)=>ey(e,typeof t!="symbol"?t+"":t,s);(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const l of document.querySelectorAll('link[rel="modulepreload"]'))a(l);new MutationObserver(l=>{for(const u of l)if(u.type==="childList")for(const d of u.addedNodes)d.tagName==="LINK"&&d.rel==="modulepreload"&&a(d)}).observe(document,{childList:!0,subtree:!0});function s(l){const u={};return l.integrity&&(u.integrity=l.integrity),l.referrerPolicy&&(u.referrerPolicy=l.referrerPolicy),l.crossOrigin==="use-credentials"?u.credentials="include":l.crossOrigin==="anonymous"?u.credentials="omit":u.credentials="same-origin",u}function a(l){if(l.ep)return;l.ep=!0;const u=s(l);fetch(l.href,u)}})();function dp(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Oc={exports:{}},_a={},Dc={exports:{}},Be={};/**
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 th;function ty(){if(th)return Be;th=1;var e=Symbol.for("react.element"),t=Symbol.for("react.portal"),s=Symbol.for("react.fragment"),a=Symbol.for("react.strict_mode"),l=Symbol.for("react.profiler"),u=Symbol.for("react.provider"),d=Symbol.for("react.context"),f=Symbol.for("react.forward_ref"),h=Symbol.for("react.suspense"),g=Symbol.for("react.memo"),y=Symbol.for("react.lazy"),v=Symbol.iterator;function x(E){return E===null||typeof E!="object"?null:(E=v&&E[v]||E["@@iterator"],typeof E=="function"?E:null)}var b={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},k=Object.assign,C={};function S(E,F,G){this.props=E,this.context=F,this.refs=C,this.updater=G||b}S.prototype.isReactComponent={},S.prototype.setState=function(E,F){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,F,"setState")},S.prototype.forceUpdate=function(E){this.updater.enqueueForceUpdate(this,E,"forceUpdate")};function A(){}A.prototype=S.prototype;function $(E,F,G){this.props=E,this.context=F,this.refs=C,this.updater=G||b}var T=$.prototype=new A;T.constructor=$,k(T,S.prototype),T.isPureReactComponent=!0;var j=Array.isArray,L=Object.prototype.hasOwnProperty,z={current:null},V={key:!0,ref:!0,__self:!0,__source:!0};function P(E,F,G){var B,oe={},le=null,he=null;if(F!=null)for(B in F.ref!==void 0&&(he=F.ref),F.key!==void 0&&(le=""+F.key),F)L.call(F,B)&&!V.hasOwnProperty(B)&&(oe[B]=F[B]);var Z=arguments.length-2;if(Z===1)oe.children=G;else if(1<Z){for(var Ce=Array(Z),Ue=0;Ue<Z;Ue++)Ce[Ue]=arguments[Ue+2];oe.children=Ce}if(E&&E.defaultProps)for(B in Z=E.defaultProps,Z)oe[B]===void 0&&(oe[B]=Z[B]);return{$$typeof:e,type:E,key:le,ref:he,props:oe,_owner:z.current}}function ce(E,F){return{$$typeof:e,type:E.type,key:F,ref:E.ref,props:E.props,_owner:E._owner}}function re(E){return typeof E=="object"&&E!==null&&E.$$typeof===e}function H(E){var F={"=":"=0",":":"=2"};return"$"+E.replace(/[=:]/g,function(G){return F[G]})}var W=/\/+/g;function J(E,F){return typeof E=="object"&&E!==null&&E.key!=null?H(""+E.key):F.toString(36)}function fe(E,F,G,B,oe){var le=typeof E;(le==="undefined"||le==="boolean")&&(E=null);var he=!1;if(E===null)he=!0;else switch(le){case"string":case"number":he=!0;break;case"object":switch(E.$$typeof){case e:case t:he=!0}}if(he)return he=E,oe=oe(he),E=B===""?"."+J(he,0):B,j(oe)?(G="",E!=null&&(G=E.replace(W,"$&/")+"/"),fe(oe,F,G,"",function(Ue){return Ue})):oe!=null&&(re(oe)&&(oe=ce(oe,G+(!oe.key||he&&he.key===oe.key?"":(""+oe.key).replace(W,"$&/")+"/")+E)),F.push(oe)),1;if(he=0,B=B===""?".":B+":",j(E))for(var Z=0;Z<E.length;Z++){le=E[Z];var Ce=B+J(le,Z);he+=fe(le,F,G,Ce,oe)}else if(Ce=x(E),typeof Ce=="function")for(E=Ce.call(E),Z=0;!(le=E.next()).done;)le=le.value,Ce=B+J(le,Z++),he+=fe(le,F,G,Ce,oe);else if(le==="object")throw F=String(E),Error("Objects are not valid as a React child (found: "+(F==="[object Object]"?"object with keys {"+Object.keys(E).join(", ")+"}":F)+"). If you meant to render a collection of children, use an array instead.");return he}function ue(E,F,G){if(E==null)return E;var B=[],oe=0;return fe(E,B,"","",function(le){return F.call(G,le,oe++)}),B}function ye(E){if(E._status===-1){var F=E._result;F=F(),F.then(function(G){(E._status===0||E._status===-1)&&(E._status=1,E._result=G)},function(G){(E._status===0||E._status===-1)&&(E._status=2,E._result=G)}),E._status===-1&&(E._status=0,E._result=F)}if(E._status===1)return E._result.default;throw E._result}var ve={current:null},q={transition:null},se={ReactCurrentDispatcher:ve,ReactCurrentBatchConfig:q,ReactCurrentOwner:z};function Q(){throw Error("act(...) is not supported in production builds of React.")}return Be.Children={map:ue,forEach:function(E,F,G){ue(E,function(){F.apply(this,arguments)},G)},count:function(E){var F=0;return ue(E,function(){F++}),F},toArray:function(E){return ue(E,function(F){return F})||[]},only:function(E){if(!re(E))throw Error("React.Children.only expected to receive a single React element child.");return E}},Be.Component=S,Be.Fragment=s,Be.Profiler=l,Be.PureComponent=$,Be.StrictMode=a,Be.Suspense=h,Be.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=se,Be.act=Q,Be.cloneElement=function(E,F,G){if(E==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+E+".");var B=k({},E.props),oe=E.key,le=E.ref,he=E._owner;if(F!=null){if(F.ref!==void 0&&(le=F.ref,he=z.current),F.key!==void 0&&(oe=""+F.key),E.type&&E.type.defaultProps)var Z=E.type.defaultProps;for(Ce in F)L.call(F,Ce)&&!V.hasOwnProperty(Ce)&&(B[Ce]=F[Ce]===void 0&&Z!==void 0?Z[Ce]:F[Ce])}var Ce=arguments.length-2;if(Ce===1)B.children=G;else if(1<Ce){Z=Array(Ce);for(var Ue=0;Ue<Ce;Ue++)Z[Ue]=arguments[Ue+2];B.children=Z}return{$$typeof:e,type:E.type,key:oe,ref:le,props:B,_owner:he}},Be.createContext=function(E){return E={$$typeof:d,_currentValue:E,_currentValue2:E,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},E.Provider={$$typeof:u,_context:E},E.Consumer=E},Be.createElement=P,Be.createFactory=function(E){var F=P.bind(null,E);return F.type=E,F},Be.createRef=function(){return{current:null}},Be.forwardRef=function(E){return{$$typeof:f,render:E}},Be.isValidElement=re,Be.lazy=function(E){return{$$typeof:y,_payload:{_status:-1,_result:E},_init:ye}},Be.memo=function(E,F){return{$$typeof:g,type:E,compare:F===void 0?null:F}},Be.startTransition=function(E){var F=q.transition;q.transition={};try{E()}finally{q.transition=F}},Be.unstable_act=Q,Be.useCallback=function(E,F){return ve.current.useCallback(E,F)},Be.useContext=function(E){return ve.current.useContext(E)},Be.useDebugValue=function(){},Be.useDeferredValue=function(E){return ve.current.useDeferredValue(E)},Be.useEffect=function(E,F){return ve.current.useEffect(E,F)},Be.useId=function(){return ve.current.useId()},Be.useImperativeHandle=function(E,F,G){return ve.current.useImperativeHandle(E,F,G)},Be.useInsertionEffect=function(E,F){return ve.current.useInsertionEffect(E,F)},Be.useLayoutEffect=function(E,F){return ve.current.useLayoutEffect(E,F)},Be.useMemo=function(E,F){return ve.current.useMemo(E,F)},Be.useReducer=function(E,F,G){return ve.current.useReducer(E,F,G)},Be.useRef=function(E){return ve.current.useRef(E)},Be.useState=function(E){return ve.current.useState(E)},Be.useSyncExternalStore=function(E,F,G){return ve.current.useSyncExternalStore(E,F,G)},Be.useTransition=function(){return ve.current.useTransition()},Be.version="18.3.1",Be}var nh;function ju(){return nh||(nh=1,Dc.exports=ty()),Dc.exports}/**
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 rh;function ny(){if(rh)return _a;rh=1;var e=ju(),t=Symbol.for("react.element"),s=Symbol.for("react.fragment"),a=Object.prototype.hasOwnProperty,l=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,u={key:!0,ref:!0,__self:!0,__source:!0};function d(f,h,g){var y,v={},x=null,b=null;g!==void 0&&(x=""+g),h.key!==void 0&&(x=""+h.key),h.ref!==void 0&&(b=h.ref);for(y in h)a.call(h,y)&&!u.hasOwnProperty(y)&&(v[y]=h[y]);if(f&&f.defaultProps)for(y in h=f.defaultProps,h)v[y]===void 0&&(v[y]=h[y]);return{$$typeof:t,type:f,key:x,ref:b,props:v,_owner:l.current}}return _a.Fragment=s,_a.jsx=d,_a.jsxs=d,_a}var sh;function ry(){return sh||(sh=1,Oc.exports=ny()),Oc.exports}var i=ry(),w=ju();const ft=dp(w);var Bo={},Fc={exports:{}},en={},zc={exports:{}},Wc={};/**
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
- */var ih;function sy(){return ih||(ih=1,(function(e){function t(q,se){var Q=q.length;q.push(se);e:for(;0<Q;){var E=Q-1>>>1,F=q[E];if(0<l(F,se))q[E]=se,q[Q]=F,Q=E;else break e}}function s(q){return q.length===0?null:q[0]}function a(q){if(q.length===0)return null;var se=q[0],Q=q.pop();if(Q!==se){q[0]=Q;e:for(var E=0,F=q.length,G=F>>>1;E<G;){var B=2*(E+1)-1,oe=q[B],le=B+1,he=q[le];if(0>l(oe,Q))le<F&&0>l(he,oe)?(q[E]=he,q[le]=Q,E=le):(q[E]=oe,q[B]=Q,E=B);else if(le<F&&0>l(he,Q))q[E]=he,q[le]=Q,E=le;else break e}}return se}function l(q,se){var Q=q.sortIndex-se.sortIndex;return Q!==0?Q:q.id-se.id}if(typeof performance=="object"&&typeof performance.now=="function"){var u=performance;e.unstable_now=function(){return u.now()}}else{var d=Date,f=d.now();e.unstable_now=function(){return d.now()-f}}var h=[],g=[],y=1,v=null,x=3,b=!1,k=!1,C=!1,S=typeof setTimeout=="function"?setTimeout:null,A=typeof clearTimeout=="function"?clearTimeout:null,$=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function T(q){for(var se=s(g);se!==null;){if(se.callback===null)a(g);else if(se.startTime<=q)a(g),se.sortIndex=se.expirationTime,t(h,se);else break;se=s(g)}}function j(q){if(C=!1,T(q),!k)if(s(h)!==null)k=!0,ye(L);else{var se=s(g);se!==null&&ve(j,se.startTime-q)}}function L(q,se){k=!1,C&&(C=!1,A(P),P=-1),b=!0;var Q=x;try{for(T(se),v=s(h);v!==null&&(!(v.expirationTime>se)||q&&!H());){var E=v.callback;if(typeof E=="function"){v.callback=null,x=v.priorityLevel;var F=E(v.expirationTime<=se);se=e.unstable_now(),typeof F=="function"?v.callback=F:v===s(h)&&a(h),T(se)}else a(h);v=s(h)}if(v!==null)var G=!0;else{var B=s(g);B!==null&&ve(j,B.startTime-se),G=!1}return G}finally{v=null,x=Q,b=!1}}var z=!1,V=null,P=-1,ce=5,re=-1;function H(){return!(e.unstable_now()-re<ce)}function W(){if(V!==null){var q=e.unstable_now();re=q;var se=!0;try{se=V(!0,q)}finally{se?J():(z=!1,V=null)}}else z=!1}var J;if(typeof $=="function")J=function(){$(W)};else if(typeof MessageChannel<"u"){var fe=new MessageChannel,ue=fe.port2;fe.port1.onmessage=W,J=function(){ue.postMessage(null)}}else J=function(){S(W,0)};function ye(q){V=q,z||(z=!0,J())}function ve(q,se){P=S(function(){q(e.unstable_now())},se)}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(q){q.callback=null},e.unstable_continueExecution=function(){k||b||(k=!0,ye(L))},e.unstable_forceFrameRate=function(q){0>q||125<q?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):ce=0<q?Math.floor(1e3/q):5},e.unstable_getCurrentPriorityLevel=function(){return x},e.unstable_getFirstCallbackNode=function(){return s(h)},e.unstable_next=function(q){switch(x){case 1:case 2:case 3:var se=3;break;default:se=x}var Q=x;x=se;try{return q()}finally{x=Q}},e.unstable_pauseExecution=function(){},e.unstable_requestPaint=function(){},e.unstable_runWithPriority=function(q,se){switch(q){case 1:case 2:case 3:case 4:case 5:break;default:q=3}var Q=x;x=q;try{return se()}finally{x=Q}},e.unstable_scheduleCallback=function(q,se,Q){var E=e.unstable_now();switch(typeof Q=="object"&&Q!==null?(Q=Q.delay,Q=typeof Q=="number"&&0<Q?E+Q:E):Q=E,q){case 1:var F=-1;break;case 2:F=250;break;case 5:F=1073741823;break;case 4:F=1e4;break;default:F=5e3}return F=Q+F,q={id:y++,callback:se,priorityLevel:q,startTime:Q,expirationTime:F,sortIndex:-1},Q>E?(q.sortIndex=Q,t(g,q),s(h)===null&&q===s(g)&&(C?(A(P),P=-1):C=!0,ve(j,Q-E))):(q.sortIndex=F,t(h,q),k||b||(k=!0,ye(L))),q},e.unstable_shouldYield=H,e.unstable_wrapCallback=function(q){var se=x;return function(){var Q=x;x=se;try{return q.apply(this,arguments)}finally{x=Q}}}})(Wc)),Wc}var ah;function iy(){return ah||(ah=1,zc.exports=sy()),zc.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 oh;function ay(){if(oh)return en;oh=1;var e=ju(),t=iy();function s(n){for(var r="https://reactjs.org/docs/error-decoder.html?invariant="+n,o=1;o<arguments.length;o++)r+="&args[]="+encodeURIComponent(arguments[o]);return"Minified React error #"+n+"; visit "+r+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var a=new Set,l={};function u(n,r){d(n,r),d(n+"Capture",r)}function d(n,r){for(l[n]=r,n=0;n<r.length;n++)a.add(r[n])}var f=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),h=Object.prototype.hasOwnProperty,g=/^[: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]*$/,y={},v={};function x(n){return h.call(v,n)?!0:h.call(y,n)?!1:g.test(n)?v[n]=!0:(y[n]=!0,!1)}function b(n,r,o,c){if(o!==null&&o.type===0)return!1;switch(typeof r){case"function":case"symbol":return!0;case"boolean":return c?!1:o!==null?!o.acceptsBooleans:(n=n.toLowerCase().slice(0,5),n!=="data-"&&n!=="aria-");default:return!1}}function k(n,r,o,c){if(r===null||typeof r>"u"||b(n,r,o,c))return!0;if(c)return!1;if(o!==null)switch(o.type){case 3:return!r;case 4:return r===!1;case 5:return isNaN(r);case 6:return isNaN(r)||1>r}return!1}function C(n,r,o,c,p,m,_){this.acceptsBooleans=r===2||r===3||r===4,this.attributeName=c,this.attributeNamespace=p,this.mustUseProperty=o,this.propertyName=n,this.type=r,this.sanitizeURL=m,this.removeEmptyString=_}var S={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(n){S[n]=new C(n,0,!1,n,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(n){var r=n[0];S[r]=new C(r,1,!1,n[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(n){S[n]=new C(n,2,!1,n.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(n){S[n]=new C(n,2,!1,n,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(n){S[n]=new C(n,3,!1,n.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(n){S[n]=new C(n,3,!0,n,null,!1,!1)}),["capture","download"].forEach(function(n){S[n]=new C(n,4,!1,n,null,!1,!1)}),["cols","rows","size","span"].forEach(function(n){S[n]=new C(n,6,!1,n,null,!1,!1)}),["rowSpan","start"].forEach(function(n){S[n]=new C(n,5,!1,n.toLowerCase(),null,!1,!1)});var A=/[\-:]([a-z])/g;function $(n){return n[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(n){var r=n.replace(A,$);S[r]=new C(r,1,!1,n,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(n){var r=n.replace(A,$);S[r]=new C(r,1,!1,n,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(n){var r=n.replace(A,$);S[r]=new C(r,1,!1,n,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(n){S[n]=new C(n,1,!1,n.toLowerCase(),null,!1,!1)}),S.xlinkHref=new C("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(n){S[n]=new C(n,1,!1,n.toLowerCase(),null,!0,!0)});function T(n,r,o,c){var p=S.hasOwnProperty(r)?S[r]:null;(p!==null?p.type!==0:c||!(2<r.length)||r[0]!=="o"&&r[0]!=="O"||r[1]!=="n"&&r[1]!=="N")&&(k(r,o,p,c)&&(o=null),c||p===null?x(r)&&(o===null?n.removeAttribute(r):n.setAttribute(r,""+o)):p.mustUseProperty?n[p.propertyName]=o===null?p.type===3?!1:"":o:(r=p.attributeName,c=p.attributeNamespace,o===null?n.removeAttribute(r):(p=p.type,o=p===3||p===4&&o===!0?"":""+o,c?n.setAttributeNS(c,r,o):n.setAttribute(r,o))))}var j=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,L=Symbol.for("react.element"),z=Symbol.for("react.portal"),V=Symbol.for("react.fragment"),P=Symbol.for("react.strict_mode"),ce=Symbol.for("react.profiler"),re=Symbol.for("react.provider"),H=Symbol.for("react.context"),W=Symbol.for("react.forward_ref"),J=Symbol.for("react.suspense"),fe=Symbol.for("react.suspense_list"),ue=Symbol.for("react.memo"),ye=Symbol.for("react.lazy"),ve=Symbol.for("react.offscreen"),q=Symbol.iterator;function se(n){return n===null||typeof n!="object"?null:(n=q&&n[q]||n["@@iterator"],typeof n=="function"?n:null)}var Q=Object.assign,E;function F(n){if(E===void 0)try{throw Error()}catch(o){var r=o.stack.trim().match(/\n( *(at )?)/);E=r&&r[1]||""}return`
34
- `+E+n}var G=!1;function B(n,r){if(!n||G)return"";G=!0;var o=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(r)if(r=function(){throw Error()},Object.defineProperty(r.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(r,[])}catch(U){var c=U}Reflect.construct(n,[],r)}else{try{r.call()}catch(U){c=U}n.call(r.prototype)}else{try{throw Error()}catch(U){c=U}n()}}catch(U){if(U&&c&&typeof U.stack=="string"){for(var p=U.stack.split(`
35
- `),m=c.stack.split(`
36
- `),_=p.length-1,N=m.length-1;1<=_&&0<=N&&p[_]!==m[N];)N--;for(;1<=_&&0<=N;_--,N--)if(p[_]!==m[N]){if(_!==1||N!==1)do if(_--,N--,0>N||p[_]!==m[N]){var R=`
37
- `+p[_].replace(" at new "," at ");return n.displayName&&R.includes("<anonymous>")&&(R=R.replace("<anonymous>",n.displayName)),R}while(1<=_&&0<=N);break}}}finally{G=!1,Error.prepareStackTrace=o}return(n=n?n.displayName||n.name:"")?F(n):""}function oe(n){switch(n.tag){case 5:return F(n.type);case 16:return F("Lazy");case 13:return F("Suspense");case 19:return F("SuspenseList");case 0:case 2:case 15:return n=B(n.type,!1),n;case 11:return n=B(n.type.render,!1),n;case 1:return n=B(n.type,!0),n;default:return""}}function le(n){if(n==null)return null;if(typeof n=="function")return n.displayName||n.name||null;if(typeof n=="string")return n;switch(n){case V:return"Fragment";case z:return"Portal";case ce:return"Profiler";case P:return"StrictMode";case J:return"Suspense";case fe:return"SuspenseList"}if(typeof n=="object")switch(n.$$typeof){case H:return(n.displayName||"Context")+".Consumer";case re:return(n._context.displayName||"Context")+".Provider";case W:var r=n.render;return n=n.displayName,n||(n=r.displayName||r.name||"",n=n!==""?"ForwardRef("+n+")":"ForwardRef"),n;case ue:return r=n.displayName||null,r!==null?r:le(n.type)||"Memo";case ye:r=n._payload,n=n._init;try{return le(n(r))}catch{}}return null}function he(n){var r=n.type;switch(n.tag){case 24:return"Cache";case 9:return(r.displayName||"Context")+".Consumer";case 10:return(r._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return n=r.render,n=n.displayName||n.name||"",r.displayName||(n!==""?"ForwardRef("+n+")":"ForwardRef");case 7:return"Fragment";case 5:return r;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return le(r);case 8:return r===P?"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 r=="function")return r.displayName||r.name||null;if(typeof r=="string")return r}return null}function Z(n){switch(typeof n){case"boolean":case"number":case"string":case"undefined":return n;case"object":return n;default:return""}}function Ce(n){var r=n.type;return(n=n.nodeName)&&n.toLowerCase()==="input"&&(r==="checkbox"||r==="radio")}function Ue(n){var r=Ce(n)?"checked":"value",o=Object.getOwnPropertyDescriptor(n.constructor.prototype,r),c=""+n[r];if(!n.hasOwnProperty(r)&&typeof o<"u"&&typeof o.get=="function"&&typeof o.set=="function"){var p=o.get,m=o.set;return Object.defineProperty(n,r,{configurable:!0,get:function(){return p.call(this)},set:function(_){c=""+_,m.call(this,_)}}),Object.defineProperty(n,r,{enumerable:o.enumerable}),{getValue:function(){return c},setValue:function(_){c=""+_},stopTracking:function(){n._valueTracker=null,delete n[r]}}}}function ke(n){n._valueTracker||(n._valueTracker=Ue(n))}function X(n){if(!n)return!1;var r=n._valueTracker;if(!r)return!0;var o=r.getValue(),c="";return n&&(c=Ce(n)?n.checked?"true":"false":n.value),n=c,n!==o?(r.setValue(n),!0):!1}function ee(n){if(n=n||(typeof document<"u"?document:void 0),typeof n>"u")return null;try{return n.activeElement||n.body}catch{return n.body}}function pe(n,r){var o=r.checked;return Q({},r,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:o??n._wrapperState.initialChecked})}function De(n,r){var o=r.defaultValue==null?"":r.defaultValue,c=r.checked!=null?r.checked:r.defaultChecked;o=Z(r.value!=null?r.value:o),n._wrapperState={initialChecked:c,initialValue:o,controlled:r.type==="checkbox"||r.type==="radio"?r.checked!=null:r.value!=null}}function we(n,r){r=r.checked,r!=null&&T(n,"checked",r,!1)}function Pe(n,r){we(n,r);var o=Z(r.value),c=r.type;if(o!=null)c==="number"?(o===0&&n.value===""||n.value!=o)&&(n.value=""+o):n.value!==""+o&&(n.value=""+o);else if(c==="submit"||c==="reset"){n.removeAttribute("value");return}r.hasOwnProperty("value")?rt(n,r.type,o):r.hasOwnProperty("defaultValue")&&rt(n,r.type,Z(r.defaultValue)),r.checked==null&&r.defaultChecked!=null&&(n.defaultChecked=!!r.defaultChecked)}function Ve(n,r,o){if(r.hasOwnProperty("value")||r.hasOwnProperty("defaultValue")){var c=r.type;if(!(c!=="submit"&&c!=="reset"||r.value!==void 0&&r.value!==null))return;r=""+n._wrapperState.initialValue,o||r===n.value||(n.value=r),n.defaultValue=r}o=n.name,o!==""&&(n.name=""),n.defaultChecked=!!n._wrapperState.initialChecked,o!==""&&(n.name=o)}function rt(n,r,o){(r!=="number"||ee(n.ownerDocument)!==n)&&(o==null?n.defaultValue=""+n._wrapperState.initialValue:n.defaultValue!==""+o&&(n.defaultValue=""+o))}var K=Array.isArray;function me(n,r,o,c){if(n=n.options,r){r={};for(var p=0;p<o.length;p++)r["$"+o[p]]=!0;for(o=0;o<n.length;o++)p=r.hasOwnProperty("$"+n[o].value),n[o].selected!==p&&(n[o].selected=p),p&&c&&(n[o].defaultSelected=!0)}else{for(o=""+Z(o),r=null,p=0;p<n.length;p++){if(n[p].value===o){n[p].selected=!0,c&&(n[p].defaultSelected=!0);return}r!==null||n[p].disabled||(r=n[p])}r!==null&&(r.selected=!0)}}function Fe(n,r){if(r.dangerouslySetInnerHTML!=null)throw Error(s(91));return Q({},r,{value:void 0,defaultValue:void 0,children:""+n._wrapperState.initialValue})}function Ke(n,r){var o=r.value;if(o==null){if(o=r.children,r=r.defaultValue,o!=null){if(r!=null)throw Error(s(92));if(K(o)){if(1<o.length)throw Error(s(93));o=o[0]}r=o}r==null&&(r=""),o=r}n._wrapperState={initialValue:Z(o)}}function He(n,r){var o=Z(r.value),c=Z(r.defaultValue);o!=null&&(o=""+o,o!==n.value&&(n.value=o),r.defaultValue==null&&n.defaultValue!==o&&(n.defaultValue=o)),c!=null&&(n.defaultValue=""+c)}function ar(n){var r=n.textContent;r===n._wrapperState.initialValue&&r!==""&&r!==null&&(n.value=r)}function Tt(n){switch(n){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 An(n,r){return n==null||n==="http://www.w3.org/1999/xhtml"?Tt(r):n==="http://www.w3.org/2000/svg"&&r==="foreignObject"?"http://www.w3.org/1999/xhtml":n}var Tn,Rn=(function(n){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(r,o,c,p){MSApp.execUnsafeLocalFunction(function(){return n(r,o,c,p)})}:n})(function(n,r){if(n.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in n)n.innerHTML=r;else{for(Tn=Tn||document.createElement("div"),Tn.innerHTML="<svg>"+r.valueOf().toString()+"</svg>",r=Tn.firstChild;n.firstChild;)n.removeChild(n.firstChild);for(;r.firstChild;)n.appendChild(r.firstChild)}});function or(n,r){if(r){var o=n.firstChild;if(o&&o===n.lastChild&&o.nodeType===3){o.nodeValue=r;return}}n.textContent=r}var Er={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},dl=["Webkit","ms","Moz","O"];Object.keys(Er).forEach(function(n){dl.forEach(function(r){r=r+n.charAt(0).toUpperCase()+n.substring(1),Er[r]=Er[n]})});function Ii(n,r,o){return r==null||typeof r=="boolean"||r===""?"":o||typeof r!="number"||r===0||Er.hasOwnProperty(n)&&Er[n]?(""+r).trim():r+"px"}function Os(n,r){n=n.style;for(var o in r)if(r.hasOwnProperty(o)){var c=o.indexOf("--")===0,p=Ii(o,r[o],c);o==="float"&&(o="cssFloat"),c?n.setProperty(o,p):n[o]=p}}var fl=Q({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 gn(n,r){if(r){if(fl[n]&&(r.children!=null||r.dangerouslySetInnerHTML!=null))throw Error(s(137,n));if(r.dangerouslySetInnerHTML!=null){if(r.children!=null)throw Error(s(60));if(typeof r.dangerouslySetInnerHTML!="object"||!("__html"in r.dangerouslySetInnerHTML))throw Error(s(61))}if(r.style!=null&&typeof r.style!="object")throw Error(s(62))}}function ns(n,r){if(n.indexOf("-")===-1)return typeof r.is=="string";switch(n){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 rs=null;function Mi(n){return n=n.target||n.srcElement||window,n.correspondingUseElement&&(n=n.correspondingUseElement),n.nodeType===3?n.parentNode:n}var Ds=null,zt=null,Bn=null;function lr(n){if(n=ia(n)){if(typeof Ds!="function")throw Error(s(280));var r=n.stateNode;r&&(r=ro(r),Ds(n.stateNode,n.type,r))}}function za(n){zt?Bn?Bn.push(n):Bn=[n]:zt=n}function Li(){if(zt){var n=zt,r=Bn;if(Bn=zt=null,lr(n),r)for(n=0;n<r.length;n++)lr(r[n])}}function cr(n,r){return n(r)}function Ht(){}var ss=!1;function Pi(n,r,o){if(ss)return n(r,o);ss=!0;try{return cr(n,r,o)}finally{ss=!1,(zt!==null||Bn!==null)&&(Ht(),Li())}}function $r(n,r){var o=n.stateNode;if(o===null)return null;var c=ro(o);if(c===null)return null;o=c[r];e:switch(r){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(c=!c.disabled)||(n=n.type,c=!(n==="button"||n==="input"||n==="select"||n==="textarea")),n=!c;break e;default:n=!1}if(n)return null;if(o&&typeof o!="function")throw Error(s(231,r,typeof o));return o}var Vn=!1;if(f)try{var ur={};Object.defineProperty(ur,"passive",{get:function(){Vn=!0}}),window.addEventListener("test",ur,ur),window.removeEventListener("test",ur,ur)}catch{Vn=!1}function is(n,r,o,c,p,m,_,N,R){var U=Array.prototype.slice.call(arguments,3);try{r.apply(o,U)}catch(ne){this.onError(ne)}}var In=!1,Ar=null,as=!1,os=null,Oi={onError:function(n){In=!0,Ar=n}};function hl(n,r,o,c,p,m,_,N,R){In=!1,Ar=null,is.apply(Oi,arguments)}function Wa(n,r,o,c,p,m,_,N,R){if(hl.apply(this,arguments),In){if(In){var U=Ar;In=!1,Ar=null}else throw Error(s(198));as||(as=!0,os=U)}}function on(n){var r=n,o=n;if(n.alternate)for(;r.return;)r=r.return;else{n=r;do r=n,(r.flags&4098)!==0&&(o=r.return),n=r.return;while(n)}return r.tag===3?o:null}function Ua(n){if(n.tag===13){var r=n.memoizedState;if(r===null&&(n=n.alternate,n!==null&&(r=n.memoizedState)),r!==null)return r.dehydrated}return null}function Gn(n){if(on(n)!==n)throw Error(s(188))}function Hn(n){var r=n.alternate;if(!r){if(r=on(n),r===null)throw Error(s(188));return r!==n?null:n}for(var o=n,c=r;;){var p=o.return;if(p===null)break;var m=p.alternate;if(m===null){if(c=p.return,c!==null){o=c;continue}break}if(p.child===m.child){for(m=p.child;m;){if(m===o)return Gn(p),n;if(m===c)return Gn(p),r;m=m.sibling}throw Error(s(188))}if(o.return!==c.return)o=p,c=m;else{for(var _=!1,N=p.child;N;){if(N===o){_=!0,o=p,c=m;break}if(N===c){_=!0,c=p,o=m;break}N=N.sibling}if(!_){for(N=m.child;N;){if(N===o){_=!0,o=m,c=p;break}if(N===c){_=!0,c=m,o=p;break}N=N.sibling}if(!_)throw Error(s(189))}}if(o.alternate!==c)throw Error(s(190))}if(o.tag!==3)throw Error(s(188));return o.stateNode.current===o?n:r}function Fs(n){return n=Hn(n),n!==null?yn(n):null}function yn(n){if(n.tag===5||n.tag===6)return n;for(n=n.child;n!==null;){var r=yn(n);if(r!==null)return r;n=n.sibling}return null}var Di=t.unstable_scheduleCallback,zs=t.unstable_cancelCallback,Ws=t.unstable_shouldYield,Fi=t.unstable_requestPaint,lt=t.unstable_now,zi=t.unstable_getCurrentPriorityLevel,Us=t.unstable_ImmediatePriority,Wi=t.unstable_UserBlockingPriority,ls=t.unstable_NormalPriority,pl=t.unstable_LowPriority,Ba=t.unstable_IdlePriority,wn=null,Le=null;function ln(n){if(Le&&typeof Le.onCommitFiberRoot=="function")try{Le.onCommitFiberRoot(wn,n,void 0,(n.current.flags&128)===128)}catch{}}var Wt=Math.clz32?Math.clz32:Vs,dr=Math.log,Bs=Math.LN2;function Vs(n){return n>>>=0,n===0?32:31-(dr(n)/Bs|0)|0}var cn=64,cs=4194304;function vn(n){switch(n&-n){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 n&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return n&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return n}}function us(n,r){var o=n.pendingLanes;if(o===0)return 0;var c=0,p=n.suspendedLanes,m=n.pingedLanes,_=o&268435455;if(_!==0){var N=_&~p;N!==0?c=vn(N):(m&=_,m!==0&&(c=vn(m)))}else _=o&~p,_!==0?c=vn(_):m!==0&&(c=vn(m));if(c===0)return 0;if(r!==0&&r!==c&&(r&p)===0&&(p=c&-c,m=r&-r,p>=m||p===16&&(m&4194240)!==0))return r;if((c&4)!==0&&(c|=o&16),r=n.entangledLanes,r!==0)for(n=n.entanglements,r&=c;0<r;)o=31-Wt(r),p=1<<o,c|=n[o],r&=~p;return c}function _n(n,r){switch(n){case 1:case 2:case 4:return r+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 r+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 Va(n,r){for(var o=n.suspendedLanes,c=n.pingedLanes,p=n.expirationTimes,m=n.pendingLanes;0<m;){var _=31-Wt(m),N=1<<_,R=p[_];R===-1?((N&o)===0||(N&c)!==0)&&(p[_]=_n(N,r)):R<=r&&(n.expiredLanes|=N),m&=~N}}function un(n){return n=n.pendingLanes&-1073741825,n!==0?n:n&1073741824?1073741824:0}function Ui(){var n=cn;return cn<<=1,(cn&4194240)===0&&(cn=64),n}function Kn(n){for(var r=[],o=0;31>o;o++)r.push(n);return r}function Mn(n,r,o){n.pendingLanes|=r,r!==536870912&&(n.suspendedLanes=0,n.pingedLanes=0),n=n.eventTimes,r=31-Wt(r),n[r]=o}function Gs(n,r){var o=n.pendingLanes&~r;n.pendingLanes=r,n.suspendedLanes=0,n.pingedLanes=0,n.expiredLanes&=r,n.mutableReadLanes&=r,n.entangledLanes&=r,r=n.entanglements;var c=n.eventTimes;for(n=n.expirationTimes;0<o;){var p=31-Wt(o),m=1<<p;r[p]=0,c[p]=-1,n[p]=-1,o&=~m}}function Ut(n,r){var o=n.entangledLanes|=r;for(n=n.entanglements;o;){var c=31-Wt(o),p=1<<c;p&r|n[c]&r&&(n[c]|=r),o&=~p}}var Qe=0;function Bi(n){return n&=-n,1<n?4<n?(n&268435455)!==0?16:536870912:4:1}var Hs,Vi,Gi,Ks,Tr,mt=!1,Rr=[],at=null,xn=null,dn=null,fr=new Map,Jn=new Map,Qn=[],Ga="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 Hi(n,r){switch(n){case"focusin":case"focusout":at=null;break;case"dragenter":case"dragleave":xn=null;break;case"mouseover":case"mouseout":dn=null;break;case"pointerover":case"pointerout":fr.delete(r.pointerId);break;case"gotpointercapture":case"lostpointercapture":Jn.delete(r.pointerId)}}function hr(n,r,o,c,p,m){return n===null||n.nativeEvent!==m?(n={blockedOn:r,domEventName:o,eventSystemFlags:c,nativeEvent:m,targetContainers:[p]},r!==null&&(r=ia(r),r!==null&&Vi(r)),n):(n.eventSystemFlags|=c,r=n.targetContainers,p!==null&&r.indexOf(p)===-1&&r.push(p),n)}function ml(n,r,o,c,p){switch(r){case"focusin":return at=hr(at,n,r,o,c,p),!0;case"dragenter":return xn=hr(xn,n,r,o,c,p),!0;case"mouseover":return dn=hr(dn,n,r,o,c,p),!0;case"pointerover":var m=p.pointerId;return fr.set(m,hr(fr.get(m)||null,n,r,o,c,p)),!0;case"gotpointercapture":return m=p.pointerId,Jn.set(m,hr(Jn.get(m)||null,n,r,o,c,p)),!0}return!1}function Ha(n){var r=ws(n.target);if(r!==null){var o=on(r);if(o!==null){if(r=o.tag,r===13){if(r=Ua(o),r!==null){n.blockedOn=r,Tr(n.priority,function(){Gi(o)});return}}else if(r===3&&o.stateNode.current.memoizedState.isDehydrated){n.blockedOn=o.tag===3?o.stateNode.containerInfo:null;return}}}n.blockedOn=null}function Js(n){if(n.blockedOn!==null)return!1;for(var r=n.targetContainers;0<r.length;){var o=Ys(n.domEventName,n.eventSystemFlags,r[0],n.nativeEvent);if(o===null){o=n.nativeEvent;var c=new o.constructor(o.type,o);rs=c,o.target.dispatchEvent(c),rs=null}else return r=ia(o),r!==null&&Vi(r),n.blockedOn=o,!1;r.shift()}return!0}function Ir(n,r,o){Js(n)&&o.delete(r)}function ds(){mt=!1,at!==null&&Js(at)&&(at=null),xn!==null&&Js(xn)&&(xn=null),dn!==null&&Js(dn)&&(dn=null),fr.forEach(Ir),Jn.forEach(Ir)}function Mr(n,r){n.blockedOn===r&&(n.blockedOn=null,mt||(mt=!0,t.unstable_scheduleCallback(t.unstable_NormalPriority,ds)))}function fs(n){function r(p){return Mr(p,n)}if(0<Rr.length){Mr(Rr[0],n);for(var o=1;o<Rr.length;o++){var c=Rr[o];c.blockedOn===n&&(c.blockedOn=null)}}for(at!==null&&Mr(at,n),xn!==null&&Mr(xn,n),dn!==null&&Mr(dn,n),fr.forEach(r),Jn.forEach(r),o=0;o<Qn.length;o++)c=Qn[o],c.blockedOn===n&&(c.blockedOn=null);for(;0<Qn.length&&(o=Qn[0],o.blockedOn===null);)Ha(o),o.blockedOn===null&&Qn.shift()}var Yn=j.ReactCurrentBatchConfig,hs=!0;function Ka(n,r,o,c){var p=Qe,m=Yn.transition;Yn.transition=null;try{Qe=1,Qs(n,r,o,c)}finally{Qe=p,Yn.transition=m}}function Ja(n,r,o,c){var p=Qe,m=Yn.transition;Yn.transition=null;try{Qe=4,Qs(n,r,o,c)}finally{Qe=p,Yn.transition=m}}function Qs(n,r,o,c){if(hs){var p=Ys(n,r,o,c);if(p===null)Cl(n,r,c,ps,o),Hi(n,c);else if(ml(p,n,r,o,c))c.stopPropagation();else if(Hi(n,c),r&4&&-1<Ga.indexOf(n)){for(;p!==null;){var m=ia(p);if(m!==null&&Hs(m),m=Ys(n,r,o,c),m===null&&Cl(n,r,c,ps,o),m===p)break;p=m}p!==null&&c.stopPropagation()}else Cl(n,r,c,null,o)}}var ps=null;function Ys(n,r,o,c){if(ps=null,n=Mi(c),n=ws(n),n!==null)if(r=on(n),r===null)n=null;else if(o=r.tag,o===13){if(n=Ua(r),n!==null)return n;n=null}else if(o===3){if(r.stateNode.current.memoizedState.isDehydrated)return r.tag===3?r.stateNode.containerInfo:null;n=null}else r!==n&&(n=null);return ps=n,null}function Ki(n){switch(n){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(zi()){case Us:return 1;case Wi:return 4;case ls:case pl:return 16;case Ba:return 536870912;default:return 16}default:return 16}}var Ln=null,Xs=null,ms=null;function Ji(){if(ms)return ms;var n,r=Xs,o=r.length,c,p="value"in Ln?Ln.value:Ln.textContent,m=p.length;for(n=0;n<o&&r[n]===p[n];n++);var _=o-n;for(c=1;c<=_&&r[o-c]===p[m-c];c++);return ms=p.slice(n,1<c?1-c:void 0)}function gs(n){var r=n.keyCode;return"charCode"in n?(n=n.charCode,n===0&&r===13&&(n=13)):n=r,n===10&&(n=13),32<=n||n===13?n:0}function ys(){return!0}function Qi(){return!1}function Rt(n){function r(o,c,p,m,_){this._reactName=o,this._targetInst=p,this.type=c,this.nativeEvent=m,this.target=_,this.currentTarget=null;for(var N in n)n.hasOwnProperty(N)&&(o=n[N],this[N]=o?o(m):m[N]);return this.isDefaultPrevented=(m.defaultPrevented!=null?m.defaultPrevented:m.returnValue===!1)?ys:Qi,this.isPropagationStopped=Qi,this}return Q(r.prototype,{preventDefault:function(){this.defaultPrevented=!0;var o=this.nativeEvent;o&&(o.preventDefault?o.preventDefault():typeof o.returnValue!="unknown"&&(o.returnValue=!1),this.isDefaultPrevented=ys)},stopPropagation:function(){var o=this.nativeEvent;o&&(o.stopPropagation?o.stopPropagation():typeof o.cancelBubble!="unknown"&&(o.cancelBubble=!0),this.isPropagationStopped=ys)},persist:function(){},isPersistent:ys}),r}var pr={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(n){return n.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Zs=Rt(pr),Lr=Q({},pr,{view:0,detail:0}),Qa=Rt(Lr),qs,ei,I,Y=Q({},Lr,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:gl,button:0,buttons:0,relatedTarget:function(n){return n.relatedTarget===void 0?n.fromElement===n.srcElement?n.toElement:n.fromElement:n.relatedTarget},movementX:function(n){return"movementX"in n?n.movementX:(n!==I&&(I&&n.type==="mousemove"?(qs=n.screenX-I.screenX,ei=n.screenY-I.screenY):ei=qs=0,I=n),qs)},movementY:function(n){return"movementY"in n?n.movementY:ei}}),Te=Rt(Y),ze=Q({},Y,{dataTransfer:0}),Oe=Rt(ze),It=Q({},Lr,{relatedTarget:0}),Xn=Rt(It),Pr=Q({},pr,{animationName:0,elapsedTime:0,pseudoElement:0}),bt=Rt(Pr),Kt=Q({},pr,{clipboardData:function(n){return"clipboardData"in n?n.clipboardData:window.clipboardData}}),Jt=Rt(Kt),mr=Q({},pr,{data:0}),Pn=Rt(mr),Lm={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},Pm={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"},Om={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Dm(n){var r=this.nativeEvent;return r.getModifierState?r.getModifierState(n):(n=Om[n])?!!r[n]:!1}function gl(){return Dm}var Fm=Q({},Lr,{key:function(n){if(n.key){var r=Lm[n.key]||n.key;if(r!=="Unidentified")return r}return n.type==="keypress"?(n=gs(n),n===13?"Enter":String.fromCharCode(n)):n.type==="keydown"||n.type==="keyup"?Pm[n.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:gl,charCode:function(n){return n.type==="keypress"?gs(n):0},keyCode:function(n){return n.type==="keydown"||n.type==="keyup"?n.keyCode:0},which:function(n){return n.type==="keypress"?gs(n):n.type==="keydown"||n.type==="keyup"?n.keyCode:0}}),zm=Rt(Fm),Wm=Q({},Y,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Gu=Rt(Wm),Um=Q({},Lr,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:gl}),Bm=Rt(Um),Vm=Q({},pr,{propertyName:0,elapsedTime:0,pseudoElement:0}),Gm=Rt(Vm),Hm=Q({},Y,{deltaX:function(n){return"deltaX"in n?n.deltaX:"wheelDeltaX"in n?-n.wheelDeltaX:0},deltaY:function(n){return"deltaY"in n?n.deltaY:"wheelDeltaY"in n?-n.wheelDeltaY:"wheelDelta"in n?-n.wheelDelta:0},deltaZ:0,deltaMode:0}),Km=Rt(Hm),Jm=[9,13,27,32],yl=f&&"CompositionEvent"in window,Yi=null;f&&"documentMode"in document&&(Yi=document.documentMode);var Qm=f&&"TextEvent"in window&&!Yi,Hu=f&&(!yl||Yi&&8<Yi&&11>=Yi),Ku=" ",Ju=!1;function Qu(n,r){switch(n){case"keyup":return Jm.indexOf(r.keyCode)!==-1;case"keydown":return r.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Yu(n){return n=n.detail,typeof n=="object"&&"data"in n?n.data:null}var ti=!1;function Ym(n,r){switch(n){case"compositionend":return Yu(r);case"keypress":return r.which!==32?null:(Ju=!0,Ku);case"textInput":return n=r.data,n===Ku&&Ju?null:n;default:return null}}function Xm(n,r){if(ti)return n==="compositionend"||!yl&&Qu(n,r)?(n=Ji(),ms=Xs=Ln=null,ti=!1,n):null;switch(n){case"paste":return null;case"keypress":if(!(r.ctrlKey||r.altKey||r.metaKey)||r.ctrlKey&&r.altKey){if(r.char&&1<r.char.length)return r.char;if(r.which)return String.fromCharCode(r.which)}return null;case"compositionend":return Hu&&r.locale!=="ko"?null:r.data;default:return null}}var Zm={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 Xu(n){var r=n&&n.nodeName&&n.nodeName.toLowerCase();return r==="input"?!!Zm[n.type]:r==="textarea"}function Zu(n,r,o,c){za(c),r=eo(r,"onChange"),0<r.length&&(o=new Zs("onChange","change",null,o,c),n.push({event:o,listeners:r}))}var Xi=null,Zi=null;function qm(n){gd(n,0)}function Ya(n){var r=ai(n);if(X(r))return n}function eg(n,r){if(n==="change")return r}var qu=!1;if(f){var wl;if(f){var vl="oninput"in document;if(!vl){var ed=document.createElement("div");ed.setAttribute("oninput","return;"),vl=typeof ed.oninput=="function"}wl=vl}else wl=!1;qu=wl&&(!document.documentMode||9<document.documentMode)}function td(){Xi&&(Xi.detachEvent("onpropertychange",nd),Zi=Xi=null)}function nd(n){if(n.propertyName==="value"&&Ya(Zi)){var r=[];Zu(r,Zi,n,Mi(n)),Pi(qm,r)}}function tg(n,r,o){n==="focusin"?(td(),Xi=r,Zi=o,Xi.attachEvent("onpropertychange",nd)):n==="focusout"&&td()}function ng(n){if(n==="selectionchange"||n==="keyup"||n==="keydown")return Ya(Zi)}function rg(n,r){if(n==="click")return Ya(r)}function sg(n,r){if(n==="input"||n==="change")return Ya(r)}function ig(n,r){return n===r&&(n!==0||1/n===1/r)||n!==n&&r!==r}var On=typeof Object.is=="function"?Object.is:ig;function qi(n,r){if(On(n,r))return!0;if(typeof n!="object"||n===null||typeof r!="object"||r===null)return!1;var o=Object.keys(n),c=Object.keys(r);if(o.length!==c.length)return!1;for(c=0;c<o.length;c++){var p=o[c];if(!h.call(r,p)||!On(n[p],r[p]))return!1}return!0}function rd(n){for(;n&&n.firstChild;)n=n.firstChild;return n}function sd(n,r){var o=rd(n);n=0;for(var c;o;){if(o.nodeType===3){if(c=n+o.textContent.length,n<=r&&c>=r)return{node:o,offset:r-n};n=c}e:{for(;o;){if(o.nextSibling){o=o.nextSibling;break e}o=o.parentNode}o=void 0}o=rd(o)}}function id(n,r){return n&&r?n===r?!0:n&&n.nodeType===3?!1:r&&r.nodeType===3?id(n,r.parentNode):"contains"in n?n.contains(r):n.compareDocumentPosition?!!(n.compareDocumentPosition(r)&16):!1:!1}function ad(){for(var n=window,r=ee();r instanceof n.HTMLIFrameElement;){try{var o=typeof r.contentWindow.location.href=="string"}catch{o=!1}if(o)n=r.contentWindow;else break;r=ee(n.document)}return r}function _l(n){var r=n&&n.nodeName&&n.nodeName.toLowerCase();return r&&(r==="input"&&(n.type==="text"||n.type==="search"||n.type==="tel"||n.type==="url"||n.type==="password")||r==="textarea"||n.contentEditable==="true")}function ag(n){var r=ad(),o=n.focusedElem,c=n.selectionRange;if(r!==o&&o&&o.ownerDocument&&id(o.ownerDocument.documentElement,o)){if(c!==null&&_l(o)){if(r=c.start,n=c.end,n===void 0&&(n=r),"selectionStart"in o)o.selectionStart=r,o.selectionEnd=Math.min(n,o.value.length);else if(n=(r=o.ownerDocument||document)&&r.defaultView||window,n.getSelection){n=n.getSelection();var p=o.textContent.length,m=Math.min(c.start,p);c=c.end===void 0?m:Math.min(c.end,p),!n.extend&&m>c&&(p=c,c=m,m=p),p=sd(o,m);var _=sd(o,c);p&&_&&(n.rangeCount!==1||n.anchorNode!==p.node||n.anchorOffset!==p.offset||n.focusNode!==_.node||n.focusOffset!==_.offset)&&(r=r.createRange(),r.setStart(p.node,p.offset),n.removeAllRanges(),m>c?(n.addRange(r),n.extend(_.node,_.offset)):(r.setEnd(_.node,_.offset),n.addRange(r)))}}for(r=[],n=o;n=n.parentNode;)n.nodeType===1&&r.push({element:n,left:n.scrollLeft,top:n.scrollTop});for(typeof o.focus=="function"&&o.focus(),o=0;o<r.length;o++)n=r[o],n.element.scrollLeft=n.left,n.element.scrollTop=n.top}}var og=f&&"documentMode"in document&&11>=document.documentMode,ni=null,xl=null,ea=null,bl=!1;function od(n,r,o){var c=o.window===o?o.document:o.nodeType===9?o:o.ownerDocument;bl||ni==null||ni!==ee(c)||(c=ni,"selectionStart"in c&&_l(c)?c={start:c.selectionStart,end:c.selectionEnd}:(c=(c.ownerDocument&&c.ownerDocument.defaultView||window).getSelection(),c={anchorNode:c.anchorNode,anchorOffset:c.anchorOffset,focusNode:c.focusNode,focusOffset:c.focusOffset}),ea&&qi(ea,c)||(ea=c,c=eo(xl,"onSelect"),0<c.length&&(r=new Zs("onSelect","select",null,r,o),n.push({event:r,listeners:c}),r.target=ni)))}function Xa(n,r){var o={};return o[n.toLowerCase()]=r.toLowerCase(),o["Webkit"+n]="webkit"+r,o["Moz"+n]="moz"+r,o}var ri={animationend:Xa("Animation","AnimationEnd"),animationiteration:Xa("Animation","AnimationIteration"),animationstart:Xa("Animation","AnimationStart"),transitionend:Xa("Transition","TransitionEnd")},kl={},ld={};f&&(ld=document.createElement("div").style,"AnimationEvent"in window||(delete ri.animationend.animation,delete ri.animationiteration.animation,delete ri.animationstart.animation),"TransitionEvent"in window||delete ri.transitionend.transition);function Za(n){if(kl[n])return kl[n];if(!ri[n])return n;var r=ri[n],o;for(o in r)if(r.hasOwnProperty(o)&&o in ld)return kl[n]=r[o];return n}var cd=Za("animationend"),ud=Za("animationiteration"),dd=Za("animationstart"),fd=Za("transitionend"),hd=new Map,pd="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 Or(n,r){hd.set(n,r),u(r,[n])}for(var jl=0;jl<pd.length;jl++){var Sl=pd[jl],lg=Sl.toLowerCase(),cg=Sl[0].toUpperCase()+Sl.slice(1);Or(lg,"on"+cg)}Or(cd,"onAnimationEnd"),Or(ud,"onAnimationIteration"),Or(dd,"onAnimationStart"),Or("dblclick","onDoubleClick"),Or("focusin","onFocus"),Or("focusout","onBlur"),Or(fd,"onTransitionEnd"),d("onMouseEnter",["mouseout","mouseover"]),d("onMouseLeave",["mouseout","mouseover"]),d("onPointerEnter",["pointerout","pointerover"]),d("onPointerLeave",["pointerout","pointerover"]),u("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),u("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),u("onBeforeInput",["compositionend","keypress","textInput","paste"]),u("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),u("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),u("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var ta="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(" "),ug=new Set("cancel close invalid load scroll toggle".split(" ").concat(ta));function md(n,r,o){var c=n.type||"unknown-event";n.currentTarget=o,Wa(c,r,void 0,n),n.currentTarget=null}function gd(n,r){r=(r&4)!==0;for(var o=0;o<n.length;o++){var c=n[o],p=c.event;c=c.listeners;e:{var m=void 0;if(r)for(var _=c.length-1;0<=_;_--){var N=c[_],R=N.instance,U=N.currentTarget;if(N=N.listener,R!==m&&p.isPropagationStopped())break e;md(p,N,U),m=R}else for(_=0;_<c.length;_++){if(N=c[_],R=N.instance,U=N.currentTarget,N=N.listener,R!==m&&p.isPropagationStopped())break e;md(p,N,U),m=R}}}if(as)throw n=os,as=!1,os=null,n}function st(n,r){var o=r[Il];o===void 0&&(o=r[Il]=new Set);var c=n+"__bubble";o.has(c)||(yd(r,n,2,!1),o.add(c))}function Nl(n,r,o){var c=0;r&&(c|=4),yd(o,n,c,r)}var qa="_reactListening"+Math.random().toString(36).slice(2);function na(n){if(!n[qa]){n[qa]=!0,a.forEach(function(o){o!=="selectionchange"&&(ug.has(o)||Nl(o,!1,n),Nl(o,!0,n))});var r=n.nodeType===9?n:n.ownerDocument;r===null||r[qa]||(r[qa]=!0,Nl("selectionchange",!1,r))}}function yd(n,r,o,c){switch(Ki(r)){case 1:var p=Ka;break;case 4:p=Ja;break;default:p=Qs}o=p.bind(null,r,o,n),p=void 0,!Vn||r!=="touchstart"&&r!=="touchmove"&&r!=="wheel"||(p=!0),c?p!==void 0?n.addEventListener(r,o,{capture:!0,passive:p}):n.addEventListener(r,o,!0):p!==void 0?n.addEventListener(r,o,{passive:p}):n.addEventListener(r,o,!1)}function Cl(n,r,o,c,p){var m=c;if((r&1)===0&&(r&2)===0&&c!==null)e:for(;;){if(c===null)return;var _=c.tag;if(_===3||_===4){var N=c.stateNode.containerInfo;if(N===p||N.nodeType===8&&N.parentNode===p)break;if(_===4)for(_=c.return;_!==null;){var R=_.tag;if((R===3||R===4)&&(R=_.stateNode.containerInfo,R===p||R.nodeType===8&&R.parentNode===p))return;_=_.return}for(;N!==null;){if(_=ws(N),_===null)return;if(R=_.tag,R===5||R===6){c=m=_;continue e}N=N.parentNode}}c=c.return}Pi(function(){var U=m,ne=Mi(o),ae=[];e:{var te=hd.get(n);if(te!==void 0){var ge=Zs,xe=n;switch(n){case"keypress":if(gs(o)===0)break e;case"keydown":case"keyup":ge=zm;break;case"focusin":xe="focus",ge=Xn;break;case"focusout":xe="blur",ge=Xn;break;case"beforeblur":case"afterblur":ge=Xn;break;case"click":if(o.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":ge=Te;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":ge=Oe;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":ge=Bm;break;case cd:case ud:case dd:ge=bt;break;case fd:ge=Gm;break;case"scroll":ge=Qa;break;case"wheel":ge=Km;break;case"copy":case"cut":case"paste":ge=Jt;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":ge=Gu}var be=(r&4)!==0,gt=!be&&n==="scroll",O=be?te!==null?te+"Capture":null:te;be=[];for(var M=U,D;M!==null;){D=M;var de=D.stateNode;if(D.tag===5&&de!==null&&(D=de,O!==null&&(de=$r(M,O),de!=null&&be.push(ra(M,de,D)))),gt)break;M=M.return}0<be.length&&(te=new ge(te,xe,null,o,ne),ae.push({event:te,listeners:be}))}}if((r&7)===0){e:{if(te=n==="mouseover"||n==="pointerover",ge=n==="mouseout"||n==="pointerout",te&&o!==rs&&(xe=o.relatedTarget||o.fromElement)&&(ws(xe)||xe[gr]))break e;if((ge||te)&&(te=ne.window===ne?ne:(te=ne.ownerDocument)?te.defaultView||te.parentWindow:window,ge?(xe=o.relatedTarget||o.toElement,ge=U,xe=xe?ws(xe):null,xe!==null&&(gt=on(xe),xe!==gt||xe.tag!==5&&xe.tag!==6)&&(xe=null)):(ge=null,xe=U),ge!==xe)){if(be=Te,de="onMouseLeave",O="onMouseEnter",M="mouse",(n==="pointerout"||n==="pointerover")&&(be=Gu,de="onPointerLeave",O="onPointerEnter",M="pointer"),gt=ge==null?te:ai(ge),D=xe==null?te:ai(xe),te=new be(de,M+"leave",ge,o,ne),te.target=gt,te.relatedTarget=D,de=null,ws(ne)===U&&(be=new be(O,M+"enter",xe,o,ne),be.target=D,be.relatedTarget=gt,de=be),gt=de,ge&&xe)t:{for(be=ge,O=xe,M=0,D=be;D;D=si(D))M++;for(D=0,de=O;de;de=si(de))D++;for(;0<M-D;)be=si(be),M--;for(;0<D-M;)O=si(O),D--;for(;M--;){if(be===O||O!==null&&be===O.alternate)break t;be=si(be),O=si(O)}be=null}else be=null;ge!==null&&wd(ae,te,ge,be,!1),xe!==null&&gt!==null&&wd(ae,gt,xe,be,!0)}}e:{if(te=U?ai(U):window,ge=te.nodeName&&te.nodeName.toLowerCase(),ge==="select"||ge==="input"&&te.type==="file")var je=eg;else if(Xu(te))if(qu)je=sg;else{je=ng;var Ee=tg}else(ge=te.nodeName)&&ge.toLowerCase()==="input"&&(te.type==="checkbox"||te.type==="radio")&&(je=rg);if(je&&(je=je(n,U))){Zu(ae,je,o,ne);break e}Ee&&Ee(n,te,U),n==="focusout"&&(Ee=te._wrapperState)&&Ee.controlled&&te.type==="number"&&rt(te,"number",te.value)}switch(Ee=U?ai(U):window,n){case"focusin":(Xu(Ee)||Ee.contentEditable==="true")&&(ni=Ee,xl=U,ea=null);break;case"focusout":ea=xl=ni=null;break;case"mousedown":bl=!0;break;case"contextmenu":case"mouseup":case"dragend":bl=!1,od(ae,o,ne);break;case"selectionchange":if(og)break;case"keydown":case"keyup":od(ae,o,ne)}var $e;if(yl)e:{switch(n){case"compositionstart":var Ie="onCompositionStart";break e;case"compositionend":Ie="onCompositionEnd";break e;case"compositionupdate":Ie="onCompositionUpdate";break e}Ie=void 0}else ti?Qu(n,o)&&(Ie="onCompositionEnd"):n==="keydown"&&o.keyCode===229&&(Ie="onCompositionStart");Ie&&(Hu&&o.locale!=="ko"&&(ti||Ie!=="onCompositionStart"?Ie==="onCompositionEnd"&&ti&&($e=Ji()):(Ln=ne,Xs="value"in Ln?Ln.value:Ln.textContent,ti=!0)),Ee=eo(U,Ie),0<Ee.length&&(Ie=new Pn(Ie,n,null,o,ne),ae.push({event:Ie,listeners:Ee}),$e?Ie.data=$e:($e=Yu(o),$e!==null&&(Ie.data=$e)))),($e=Qm?Ym(n,o):Xm(n,o))&&(U=eo(U,"onBeforeInput"),0<U.length&&(ne=new Pn("onBeforeInput","beforeinput",null,o,ne),ae.push({event:ne,listeners:U}),ne.data=$e))}gd(ae,r)})}function ra(n,r,o){return{instance:n,listener:r,currentTarget:o}}function eo(n,r){for(var o=r+"Capture",c=[];n!==null;){var p=n,m=p.stateNode;p.tag===5&&m!==null&&(p=m,m=$r(n,o),m!=null&&c.unshift(ra(n,m,p)),m=$r(n,r),m!=null&&c.push(ra(n,m,p))),n=n.return}return c}function si(n){if(n===null)return null;do n=n.return;while(n&&n.tag!==5);return n||null}function wd(n,r,o,c,p){for(var m=r._reactName,_=[];o!==null&&o!==c;){var N=o,R=N.alternate,U=N.stateNode;if(R!==null&&R===c)break;N.tag===5&&U!==null&&(N=U,p?(R=$r(o,m),R!=null&&_.unshift(ra(o,R,N))):p||(R=$r(o,m),R!=null&&_.push(ra(o,R,N)))),o=o.return}_.length!==0&&n.push({event:r,listeners:_})}var dg=/\r\n?/g,fg=/\u0000|\uFFFD/g;function vd(n){return(typeof n=="string"?n:""+n).replace(dg,`
38
- `).replace(fg,"")}function to(n,r,o){if(r=vd(r),vd(n)!==r&&o)throw Error(s(425))}function no(){}var El=null,$l=null;function Al(n,r){return n==="textarea"||n==="noscript"||typeof r.children=="string"||typeof r.children=="number"||typeof r.dangerouslySetInnerHTML=="object"&&r.dangerouslySetInnerHTML!==null&&r.dangerouslySetInnerHTML.__html!=null}var Tl=typeof setTimeout=="function"?setTimeout:void 0,hg=typeof clearTimeout=="function"?clearTimeout:void 0,_d=typeof Promise=="function"?Promise:void 0,pg=typeof queueMicrotask=="function"?queueMicrotask:typeof _d<"u"?function(n){return _d.resolve(null).then(n).catch(mg)}:Tl;function mg(n){setTimeout(function(){throw n})}function Rl(n,r){var o=r,c=0;do{var p=o.nextSibling;if(n.removeChild(o),p&&p.nodeType===8)if(o=p.data,o==="/$"){if(c===0){n.removeChild(p),fs(r);return}c--}else o!=="$"&&o!=="$?"&&o!=="$!"||c++;o=p}while(o);fs(r)}function Dr(n){for(;n!=null;n=n.nextSibling){var r=n.nodeType;if(r===1||r===3)break;if(r===8){if(r=n.data,r==="$"||r==="$!"||r==="$?")break;if(r==="/$")return null}}return n}function xd(n){n=n.previousSibling;for(var r=0;n;){if(n.nodeType===8){var o=n.data;if(o==="$"||o==="$!"||o==="$?"){if(r===0)return n;r--}else o==="/$"&&r++}n=n.previousSibling}return null}var ii=Math.random().toString(36).slice(2),Zn="__reactFiber$"+ii,sa="__reactProps$"+ii,gr="__reactContainer$"+ii,Il="__reactEvents$"+ii,gg="__reactListeners$"+ii,yg="__reactHandles$"+ii;function ws(n){var r=n[Zn];if(r)return r;for(var o=n.parentNode;o;){if(r=o[gr]||o[Zn]){if(o=r.alternate,r.child!==null||o!==null&&o.child!==null)for(n=xd(n);n!==null;){if(o=n[Zn])return o;n=xd(n)}return r}n=o,o=n.parentNode}return null}function ia(n){return n=n[Zn]||n[gr],!n||n.tag!==5&&n.tag!==6&&n.tag!==13&&n.tag!==3?null:n}function ai(n){if(n.tag===5||n.tag===6)return n.stateNode;throw Error(s(33))}function ro(n){return n[sa]||null}var Ml=[],oi=-1;function Fr(n){return{current:n}}function it(n){0>oi||(n.current=Ml[oi],Ml[oi]=null,oi--)}function nt(n,r){oi++,Ml[oi]=n.current,n.current=r}var zr={},Mt=Fr(zr),Qt=Fr(!1),vs=zr;function li(n,r){var o=n.type.contextTypes;if(!o)return zr;var c=n.stateNode;if(c&&c.__reactInternalMemoizedUnmaskedChildContext===r)return c.__reactInternalMemoizedMaskedChildContext;var p={},m;for(m in o)p[m]=r[m];return c&&(n=n.stateNode,n.__reactInternalMemoizedUnmaskedChildContext=r,n.__reactInternalMemoizedMaskedChildContext=p),p}function Yt(n){return n=n.childContextTypes,n!=null}function so(){it(Qt),it(Mt)}function bd(n,r,o){if(Mt.current!==zr)throw Error(s(168));nt(Mt,r),nt(Qt,o)}function kd(n,r,o){var c=n.stateNode;if(r=r.childContextTypes,typeof c.getChildContext!="function")return o;c=c.getChildContext();for(var p in c)if(!(p in r))throw Error(s(108,he(n)||"Unknown",p));return Q({},o,c)}function io(n){return n=(n=n.stateNode)&&n.__reactInternalMemoizedMergedChildContext||zr,vs=Mt.current,nt(Mt,n),nt(Qt,Qt.current),!0}function jd(n,r,o){var c=n.stateNode;if(!c)throw Error(s(169));o?(n=kd(n,r,vs),c.__reactInternalMemoizedMergedChildContext=n,it(Qt),it(Mt),nt(Mt,n)):it(Qt),nt(Qt,o)}var yr=null,ao=!1,Ll=!1;function Sd(n){yr===null?yr=[n]:yr.push(n)}function wg(n){ao=!0,Sd(n)}function Wr(){if(!Ll&&yr!==null){Ll=!0;var n=0,r=Qe;try{var o=yr;for(Qe=1;n<o.length;n++){var c=o[n];do c=c(!0);while(c!==null)}yr=null,ao=!1}catch(p){throw yr!==null&&(yr=yr.slice(n+1)),Di(Us,Wr),p}finally{Qe=r,Ll=!1}}return null}var ci=[],ui=0,oo=null,lo=0,bn=[],kn=0,_s=null,wr=1,vr="";function xs(n,r){ci[ui++]=lo,ci[ui++]=oo,oo=n,lo=r}function Nd(n,r,o){bn[kn++]=wr,bn[kn++]=vr,bn[kn++]=_s,_s=n;var c=wr;n=vr;var p=32-Wt(c)-1;c&=~(1<<p),o+=1;var m=32-Wt(r)+p;if(30<m){var _=p-p%5;m=(c&(1<<_)-1).toString(32),c>>=_,p-=_,wr=1<<32-Wt(r)+p|o<<p|c,vr=m+n}else wr=1<<m|o<<p|c,vr=n}function Pl(n){n.return!==null&&(xs(n,1),Nd(n,1,0))}function Ol(n){for(;n===oo;)oo=ci[--ui],ci[ui]=null,lo=ci[--ui],ci[ui]=null;for(;n===_s;)_s=bn[--kn],bn[kn]=null,vr=bn[--kn],bn[kn]=null,wr=bn[--kn],bn[kn]=null}var fn=null,hn=null,ot=!1,Dn=null;function Cd(n,r){var o=Cn(5,null,null,0);o.elementType="DELETED",o.stateNode=r,o.return=n,r=n.deletions,r===null?(n.deletions=[o],n.flags|=16):r.push(o)}function Ed(n,r){switch(n.tag){case 5:var o=n.type;return r=r.nodeType!==1||o.toLowerCase()!==r.nodeName.toLowerCase()?null:r,r!==null?(n.stateNode=r,fn=n,hn=Dr(r.firstChild),!0):!1;case 6:return r=n.pendingProps===""||r.nodeType!==3?null:r,r!==null?(n.stateNode=r,fn=n,hn=null,!0):!1;case 13:return r=r.nodeType!==8?null:r,r!==null?(o=_s!==null?{id:wr,overflow:vr}:null,n.memoizedState={dehydrated:r,treeContext:o,retryLane:1073741824},o=Cn(18,null,null,0),o.stateNode=r,o.return=n,n.child=o,fn=n,hn=null,!0):!1;default:return!1}}function Dl(n){return(n.mode&1)!==0&&(n.flags&128)===0}function Fl(n){if(ot){var r=hn;if(r){var o=r;if(!Ed(n,r)){if(Dl(n))throw Error(s(418));r=Dr(o.nextSibling);var c=fn;r&&Ed(n,r)?Cd(c,o):(n.flags=n.flags&-4097|2,ot=!1,fn=n)}}else{if(Dl(n))throw Error(s(418));n.flags=n.flags&-4097|2,ot=!1,fn=n}}}function $d(n){for(n=n.return;n!==null&&n.tag!==5&&n.tag!==3&&n.tag!==13;)n=n.return;fn=n}function co(n){if(n!==fn)return!1;if(!ot)return $d(n),ot=!0,!1;var r;if((r=n.tag!==3)&&!(r=n.tag!==5)&&(r=n.type,r=r!=="head"&&r!=="body"&&!Al(n.type,n.memoizedProps)),r&&(r=hn)){if(Dl(n))throw Ad(),Error(s(418));for(;r;)Cd(n,r),r=Dr(r.nextSibling)}if($d(n),n.tag===13){if(n=n.memoizedState,n=n!==null?n.dehydrated:null,!n)throw Error(s(317));e:{for(n=n.nextSibling,r=0;n;){if(n.nodeType===8){var o=n.data;if(o==="/$"){if(r===0){hn=Dr(n.nextSibling);break e}r--}else o!=="$"&&o!=="$!"&&o!=="$?"||r++}n=n.nextSibling}hn=null}}else hn=fn?Dr(n.stateNode.nextSibling):null;return!0}function Ad(){for(var n=hn;n;)n=Dr(n.nextSibling)}function di(){hn=fn=null,ot=!1}function zl(n){Dn===null?Dn=[n]:Dn.push(n)}var vg=j.ReactCurrentBatchConfig;function aa(n,r,o){if(n=o.ref,n!==null&&typeof n!="function"&&typeof n!="object"){if(o._owner){if(o=o._owner,o){if(o.tag!==1)throw Error(s(309));var c=o.stateNode}if(!c)throw Error(s(147,n));var p=c,m=""+n;return r!==null&&r.ref!==null&&typeof r.ref=="function"&&r.ref._stringRef===m?r.ref:(r=function(_){var N=p.refs;_===null?delete N[m]:N[m]=_},r._stringRef=m,r)}if(typeof n!="string")throw Error(s(284));if(!o._owner)throw Error(s(290,n))}return n}function uo(n,r){throw n=Object.prototype.toString.call(r),Error(s(31,n==="[object Object]"?"object with keys {"+Object.keys(r).join(", ")+"}":n))}function Td(n){var r=n._init;return r(n._payload)}function Rd(n){function r(O,M){if(n){var D=O.deletions;D===null?(O.deletions=[M],O.flags|=16):D.push(M)}}function o(O,M){if(!n)return null;for(;M!==null;)r(O,M),M=M.sibling;return null}function c(O,M){for(O=new Map;M!==null;)M.key!==null?O.set(M.key,M):O.set(M.index,M),M=M.sibling;return O}function p(O,M){return O=Qr(O,M),O.index=0,O.sibling=null,O}function m(O,M,D){return O.index=D,n?(D=O.alternate,D!==null?(D=D.index,D<M?(O.flags|=2,M):D):(O.flags|=2,M)):(O.flags|=1048576,M)}function _(O){return n&&O.alternate===null&&(O.flags|=2),O}function N(O,M,D,de){return M===null||M.tag!==6?(M=Tc(D,O.mode,de),M.return=O,M):(M=p(M,D),M.return=O,M)}function R(O,M,D,de){var je=D.type;return je===V?ne(O,M,D.props.children,de,D.key):M!==null&&(M.elementType===je||typeof je=="object"&&je!==null&&je.$$typeof===ye&&Td(je)===M.type)?(de=p(M,D.props),de.ref=aa(O,M,D),de.return=O,de):(de=Lo(D.type,D.key,D.props,null,O.mode,de),de.ref=aa(O,M,D),de.return=O,de)}function U(O,M,D,de){return M===null||M.tag!==4||M.stateNode.containerInfo!==D.containerInfo||M.stateNode.implementation!==D.implementation?(M=Rc(D,O.mode,de),M.return=O,M):(M=p(M,D.children||[]),M.return=O,M)}function ne(O,M,D,de,je){return M===null||M.tag!==7?(M=$s(D,O.mode,de,je),M.return=O,M):(M=p(M,D),M.return=O,M)}function ae(O,M,D){if(typeof M=="string"&&M!==""||typeof M=="number")return M=Tc(""+M,O.mode,D),M.return=O,M;if(typeof M=="object"&&M!==null){switch(M.$$typeof){case L:return D=Lo(M.type,M.key,M.props,null,O.mode,D),D.ref=aa(O,null,M),D.return=O,D;case z:return M=Rc(M,O.mode,D),M.return=O,M;case ye:var de=M._init;return ae(O,de(M._payload),D)}if(K(M)||se(M))return M=$s(M,O.mode,D,null),M.return=O,M;uo(O,M)}return null}function te(O,M,D,de){var je=M!==null?M.key:null;if(typeof D=="string"&&D!==""||typeof D=="number")return je!==null?null:N(O,M,""+D,de);if(typeof D=="object"&&D!==null){switch(D.$$typeof){case L:return D.key===je?R(O,M,D,de):null;case z:return D.key===je?U(O,M,D,de):null;case ye:return je=D._init,te(O,M,je(D._payload),de)}if(K(D)||se(D))return je!==null?null:ne(O,M,D,de,null);uo(O,D)}return null}function ge(O,M,D,de,je){if(typeof de=="string"&&de!==""||typeof de=="number")return O=O.get(D)||null,N(M,O,""+de,je);if(typeof de=="object"&&de!==null){switch(de.$$typeof){case L:return O=O.get(de.key===null?D:de.key)||null,R(M,O,de,je);case z:return O=O.get(de.key===null?D:de.key)||null,U(M,O,de,je);case ye:var Ee=de._init;return ge(O,M,D,Ee(de._payload),je)}if(K(de)||se(de))return O=O.get(D)||null,ne(M,O,de,je,null);uo(M,de)}return null}function xe(O,M,D,de){for(var je=null,Ee=null,$e=M,Ie=M=0,St=null;$e!==null&&Ie<D.length;Ie++){$e.index>Ie?(St=$e,$e=null):St=$e.sibling;var Ye=te(O,$e,D[Ie],de);if(Ye===null){$e===null&&($e=St);break}n&&$e&&Ye.alternate===null&&r(O,$e),M=m(Ye,M,Ie),Ee===null?je=Ye:Ee.sibling=Ye,Ee=Ye,$e=St}if(Ie===D.length)return o(O,$e),ot&&xs(O,Ie),je;if($e===null){for(;Ie<D.length;Ie++)$e=ae(O,D[Ie],de),$e!==null&&(M=m($e,M,Ie),Ee===null?je=$e:Ee.sibling=$e,Ee=$e);return ot&&xs(O,Ie),je}for($e=c(O,$e);Ie<D.length;Ie++)St=ge($e,O,Ie,D[Ie],de),St!==null&&(n&&St.alternate!==null&&$e.delete(St.key===null?Ie:St.key),M=m(St,M,Ie),Ee===null?je=St:Ee.sibling=St,Ee=St);return n&&$e.forEach(function(Yr){return r(O,Yr)}),ot&&xs(O,Ie),je}function be(O,M,D,de){var je=se(D);if(typeof je!="function")throw Error(s(150));if(D=je.call(D),D==null)throw Error(s(151));for(var Ee=je=null,$e=M,Ie=M=0,St=null,Ye=D.next();$e!==null&&!Ye.done;Ie++,Ye=D.next()){$e.index>Ie?(St=$e,$e=null):St=$e.sibling;var Yr=te(O,$e,Ye.value,de);if(Yr===null){$e===null&&($e=St);break}n&&$e&&Yr.alternate===null&&r(O,$e),M=m(Yr,M,Ie),Ee===null?je=Yr:Ee.sibling=Yr,Ee=Yr,$e=St}if(Ye.done)return o(O,$e),ot&&xs(O,Ie),je;if($e===null){for(;!Ye.done;Ie++,Ye=D.next())Ye=ae(O,Ye.value,de),Ye!==null&&(M=m(Ye,M,Ie),Ee===null?je=Ye:Ee.sibling=Ye,Ee=Ye);return ot&&xs(O,Ie),je}for($e=c(O,$e);!Ye.done;Ie++,Ye=D.next())Ye=ge($e,O,Ie,Ye.value,de),Ye!==null&&(n&&Ye.alternate!==null&&$e.delete(Ye.key===null?Ie:Ye.key),M=m(Ye,M,Ie),Ee===null?je=Ye:Ee.sibling=Ye,Ee=Ye);return n&&$e.forEach(function(Zg){return r(O,Zg)}),ot&&xs(O,Ie),je}function gt(O,M,D,de){if(typeof D=="object"&&D!==null&&D.type===V&&D.key===null&&(D=D.props.children),typeof D=="object"&&D!==null){switch(D.$$typeof){case L:e:{for(var je=D.key,Ee=M;Ee!==null;){if(Ee.key===je){if(je=D.type,je===V){if(Ee.tag===7){o(O,Ee.sibling),M=p(Ee,D.props.children),M.return=O,O=M;break e}}else if(Ee.elementType===je||typeof je=="object"&&je!==null&&je.$$typeof===ye&&Td(je)===Ee.type){o(O,Ee.sibling),M=p(Ee,D.props),M.ref=aa(O,Ee,D),M.return=O,O=M;break e}o(O,Ee);break}else r(O,Ee);Ee=Ee.sibling}D.type===V?(M=$s(D.props.children,O.mode,de,D.key),M.return=O,O=M):(de=Lo(D.type,D.key,D.props,null,O.mode,de),de.ref=aa(O,M,D),de.return=O,O=de)}return _(O);case z:e:{for(Ee=D.key;M!==null;){if(M.key===Ee)if(M.tag===4&&M.stateNode.containerInfo===D.containerInfo&&M.stateNode.implementation===D.implementation){o(O,M.sibling),M=p(M,D.children||[]),M.return=O,O=M;break e}else{o(O,M);break}else r(O,M);M=M.sibling}M=Rc(D,O.mode,de),M.return=O,O=M}return _(O);case ye:return Ee=D._init,gt(O,M,Ee(D._payload),de)}if(K(D))return xe(O,M,D,de);if(se(D))return be(O,M,D,de);uo(O,D)}return typeof D=="string"&&D!==""||typeof D=="number"?(D=""+D,M!==null&&M.tag===6?(o(O,M.sibling),M=p(M,D),M.return=O,O=M):(o(O,M),M=Tc(D,O.mode,de),M.return=O,O=M),_(O)):o(O,M)}return gt}var fi=Rd(!0),Id=Rd(!1),fo=Fr(null),ho=null,hi=null,Wl=null;function Ul(){Wl=hi=ho=null}function Bl(n){var r=fo.current;it(fo),n._currentValue=r}function Vl(n,r,o){for(;n!==null;){var c=n.alternate;if((n.childLanes&r)!==r?(n.childLanes|=r,c!==null&&(c.childLanes|=r)):c!==null&&(c.childLanes&r)!==r&&(c.childLanes|=r),n===o)break;n=n.return}}function pi(n,r){ho=n,Wl=hi=null,n=n.dependencies,n!==null&&n.firstContext!==null&&((n.lanes&r)!==0&&(Xt=!0),n.firstContext=null)}function jn(n){var r=n._currentValue;if(Wl!==n)if(n={context:n,memoizedValue:r,next:null},hi===null){if(ho===null)throw Error(s(308));hi=n,ho.dependencies={lanes:0,firstContext:n}}else hi=hi.next=n;return r}var bs=null;function Gl(n){bs===null?bs=[n]:bs.push(n)}function Md(n,r,o,c){var p=r.interleaved;return p===null?(o.next=o,Gl(r)):(o.next=p.next,p.next=o),r.interleaved=o,_r(n,c)}function _r(n,r){n.lanes|=r;var o=n.alternate;for(o!==null&&(o.lanes|=r),o=n,n=n.return;n!==null;)n.childLanes|=r,o=n.alternate,o!==null&&(o.childLanes|=r),o=n,n=n.return;return o.tag===3?o.stateNode:null}var Ur=!1;function Hl(n){n.updateQueue={baseState:n.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Ld(n,r){n=n.updateQueue,r.updateQueue===n&&(r.updateQueue={baseState:n.baseState,firstBaseUpdate:n.firstBaseUpdate,lastBaseUpdate:n.lastBaseUpdate,shared:n.shared,effects:n.effects})}function xr(n,r){return{eventTime:n,lane:r,tag:0,payload:null,callback:null,next:null}}function Br(n,r,o){var c=n.updateQueue;if(c===null)return null;if(c=c.shared,(Je&2)!==0){var p=c.pending;return p===null?r.next=r:(r.next=p.next,p.next=r),c.pending=r,_r(n,o)}return p=c.interleaved,p===null?(r.next=r,Gl(c)):(r.next=p.next,p.next=r),c.interleaved=r,_r(n,o)}function po(n,r,o){if(r=r.updateQueue,r!==null&&(r=r.shared,(o&4194240)!==0)){var c=r.lanes;c&=n.pendingLanes,o|=c,r.lanes=o,Ut(n,o)}}function Pd(n,r){var o=n.updateQueue,c=n.alternate;if(c!==null&&(c=c.updateQueue,o===c)){var p=null,m=null;if(o=o.firstBaseUpdate,o!==null){do{var _={eventTime:o.eventTime,lane:o.lane,tag:o.tag,payload:o.payload,callback:o.callback,next:null};m===null?p=m=_:m=m.next=_,o=o.next}while(o!==null);m===null?p=m=r:m=m.next=r}else p=m=r;o={baseState:c.baseState,firstBaseUpdate:p,lastBaseUpdate:m,shared:c.shared,effects:c.effects},n.updateQueue=o;return}n=o.lastBaseUpdate,n===null?o.firstBaseUpdate=r:n.next=r,o.lastBaseUpdate=r}function mo(n,r,o,c){var p=n.updateQueue;Ur=!1;var m=p.firstBaseUpdate,_=p.lastBaseUpdate,N=p.shared.pending;if(N!==null){p.shared.pending=null;var R=N,U=R.next;R.next=null,_===null?m=U:_.next=U,_=R;var ne=n.alternate;ne!==null&&(ne=ne.updateQueue,N=ne.lastBaseUpdate,N!==_&&(N===null?ne.firstBaseUpdate=U:N.next=U,ne.lastBaseUpdate=R))}if(m!==null){var ae=p.baseState;_=0,ne=U=R=null,N=m;do{var te=N.lane,ge=N.eventTime;if((c&te)===te){ne!==null&&(ne=ne.next={eventTime:ge,lane:0,tag:N.tag,payload:N.payload,callback:N.callback,next:null});e:{var xe=n,be=N;switch(te=r,ge=o,be.tag){case 1:if(xe=be.payload,typeof xe=="function"){ae=xe.call(ge,ae,te);break e}ae=xe;break e;case 3:xe.flags=xe.flags&-65537|128;case 0:if(xe=be.payload,te=typeof xe=="function"?xe.call(ge,ae,te):xe,te==null)break e;ae=Q({},ae,te);break e;case 2:Ur=!0}}N.callback!==null&&N.lane!==0&&(n.flags|=64,te=p.effects,te===null?p.effects=[N]:te.push(N))}else ge={eventTime:ge,lane:te,tag:N.tag,payload:N.payload,callback:N.callback,next:null},ne===null?(U=ne=ge,R=ae):ne=ne.next=ge,_|=te;if(N=N.next,N===null){if(N=p.shared.pending,N===null)break;te=N,N=te.next,te.next=null,p.lastBaseUpdate=te,p.shared.pending=null}}while(!0);if(ne===null&&(R=ae),p.baseState=R,p.firstBaseUpdate=U,p.lastBaseUpdate=ne,r=p.shared.interleaved,r!==null){p=r;do _|=p.lane,p=p.next;while(p!==r)}else m===null&&(p.shared.lanes=0);Ss|=_,n.lanes=_,n.memoizedState=ae}}function Od(n,r,o){if(n=r.effects,r.effects=null,n!==null)for(r=0;r<n.length;r++){var c=n[r],p=c.callback;if(p!==null){if(c.callback=null,c=o,typeof p!="function")throw Error(s(191,p));p.call(c)}}}var oa={},qn=Fr(oa),la=Fr(oa),ca=Fr(oa);function ks(n){if(n===oa)throw Error(s(174));return n}function Kl(n,r){switch(nt(ca,r),nt(la,n),nt(qn,oa),n=r.nodeType,n){case 9:case 11:r=(r=r.documentElement)?r.namespaceURI:An(null,"");break;default:n=n===8?r.parentNode:r,r=n.namespaceURI||null,n=n.tagName,r=An(r,n)}it(qn),nt(qn,r)}function mi(){it(qn),it(la),it(ca)}function Dd(n){ks(ca.current);var r=ks(qn.current),o=An(r,n.type);r!==o&&(nt(la,n),nt(qn,o))}function Jl(n){la.current===n&&(it(qn),it(la))}var ct=Fr(0);function go(n){for(var r=n;r!==null;){if(r.tag===13){var o=r.memoizedState;if(o!==null&&(o=o.dehydrated,o===null||o.data==="$?"||o.data==="$!"))return r}else if(r.tag===19&&r.memoizedProps.revealOrder!==void 0){if((r.flags&128)!==0)return r}else if(r.child!==null){r.child.return=r,r=r.child;continue}if(r===n)break;for(;r.sibling===null;){if(r.return===null||r.return===n)return null;r=r.return}r.sibling.return=r.return,r=r.sibling}return null}var Ql=[];function Yl(){for(var n=0;n<Ql.length;n++)Ql[n]._workInProgressVersionPrimary=null;Ql.length=0}var yo=j.ReactCurrentDispatcher,Xl=j.ReactCurrentBatchConfig,js=0,ut=null,wt=null,kt=null,wo=!1,ua=!1,da=0,_g=0;function Lt(){throw Error(s(321))}function Zl(n,r){if(r===null)return!1;for(var o=0;o<r.length&&o<n.length;o++)if(!On(n[o],r[o]))return!1;return!0}function ql(n,r,o,c,p,m){if(js=m,ut=r,r.memoizedState=null,r.updateQueue=null,r.lanes=0,yo.current=n===null||n.memoizedState===null?jg:Sg,n=o(c,p),ua){m=0;do{if(ua=!1,da=0,25<=m)throw Error(s(301));m+=1,kt=wt=null,r.updateQueue=null,yo.current=Ng,n=o(c,p)}while(ua)}if(yo.current=xo,r=wt!==null&&wt.next!==null,js=0,kt=wt=ut=null,wo=!1,r)throw Error(s(300));return n}function ec(){var n=da!==0;return da=0,n}function er(){var n={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return kt===null?ut.memoizedState=kt=n:kt=kt.next=n,kt}function Sn(){if(wt===null){var n=ut.alternate;n=n!==null?n.memoizedState:null}else n=wt.next;var r=kt===null?ut.memoizedState:kt.next;if(r!==null)kt=r,wt=n;else{if(n===null)throw Error(s(310));wt=n,n={memoizedState:wt.memoizedState,baseState:wt.baseState,baseQueue:wt.baseQueue,queue:wt.queue,next:null},kt===null?ut.memoizedState=kt=n:kt=kt.next=n}return kt}function fa(n,r){return typeof r=="function"?r(n):r}function tc(n){var r=Sn(),o=r.queue;if(o===null)throw Error(s(311));o.lastRenderedReducer=n;var c=wt,p=c.baseQueue,m=o.pending;if(m!==null){if(p!==null){var _=p.next;p.next=m.next,m.next=_}c.baseQueue=p=m,o.pending=null}if(p!==null){m=p.next,c=c.baseState;var N=_=null,R=null,U=m;do{var ne=U.lane;if((js&ne)===ne)R!==null&&(R=R.next={lane:0,action:U.action,hasEagerState:U.hasEagerState,eagerState:U.eagerState,next:null}),c=U.hasEagerState?U.eagerState:n(c,U.action);else{var ae={lane:ne,action:U.action,hasEagerState:U.hasEagerState,eagerState:U.eagerState,next:null};R===null?(N=R=ae,_=c):R=R.next=ae,ut.lanes|=ne,Ss|=ne}U=U.next}while(U!==null&&U!==m);R===null?_=c:R.next=N,On(c,r.memoizedState)||(Xt=!0),r.memoizedState=c,r.baseState=_,r.baseQueue=R,o.lastRenderedState=c}if(n=o.interleaved,n!==null){p=n;do m=p.lane,ut.lanes|=m,Ss|=m,p=p.next;while(p!==n)}else p===null&&(o.lanes=0);return[r.memoizedState,o.dispatch]}function nc(n){var r=Sn(),o=r.queue;if(o===null)throw Error(s(311));o.lastRenderedReducer=n;var c=o.dispatch,p=o.pending,m=r.memoizedState;if(p!==null){o.pending=null;var _=p=p.next;do m=n(m,_.action),_=_.next;while(_!==p);On(m,r.memoizedState)||(Xt=!0),r.memoizedState=m,r.baseQueue===null&&(r.baseState=m),o.lastRenderedState=m}return[m,c]}function Fd(){}function zd(n,r){var o=ut,c=Sn(),p=r(),m=!On(c.memoizedState,p);if(m&&(c.memoizedState=p,Xt=!0),c=c.queue,rc(Bd.bind(null,o,c,n),[n]),c.getSnapshot!==r||m||kt!==null&&kt.memoizedState.tag&1){if(o.flags|=2048,ha(9,Ud.bind(null,o,c,p,r),void 0,null),jt===null)throw Error(s(349));(js&30)!==0||Wd(o,r,p)}return p}function Wd(n,r,o){n.flags|=16384,n={getSnapshot:r,value:o},r=ut.updateQueue,r===null?(r={lastEffect:null,stores:null},ut.updateQueue=r,r.stores=[n]):(o=r.stores,o===null?r.stores=[n]:o.push(n))}function Ud(n,r,o,c){r.value=o,r.getSnapshot=c,Vd(r)&&Gd(n)}function Bd(n,r,o){return o(function(){Vd(r)&&Gd(n)})}function Vd(n){var r=n.getSnapshot;n=n.value;try{var o=r();return!On(n,o)}catch{return!0}}function Gd(n){var r=_r(n,1);r!==null&&Un(r,n,1,-1)}function Hd(n){var r=er();return typeof n=="function"&&(n=n()),r.memoizedState=r.baseState=n,n={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:fa,lastRenderedState:n},r.queue=n,n=n.dispatch=kg.bind(null,ut,n),[r.memoizedState,n]}function ha(n,r,o,c){return n={tag:n,create:r,destroy:o,deps:c,next:null},r=ut.updateQueue,r===null?(r={lastEffect:null,stores:null},ut.updateQueue=r,r.lastEffect=n.next=n):(o=r.lastEffect,o===null?r.lastEffect=n.next=n:(c=o.next,o.next=n,n.next=c,r.lastEffect=n)),n}function Kd(){return Sn().memoizedState}function vo(n,r,o,c){var p=er();ut.flags|=n,p.memoizedState=ha(1|r,o,void 0,c===void 0?null:c)}function _o(n,r,o,c){var p=Sn();c=c===void 0?null:c;var m=void 0;if(wt!==null){var _=wt.memoizedState;if(m=_.destroy,c!==null&&Zl(c,_.deps)){p.memoizedState=ha(r,o,m,c);return}}ut.flags|=n,p.memoizedState=ha(1|r,o,m,c)}function Jd(n,r){return vo(8390656,8,n,r)}function rc(n,r){return _o(2048,8,n,r)}function Qd(n,r){return _o(4,2,n,r)}function Yd(n,r){return _o(4,4,n,r)}function Xd(n,r){if(typeof r=="function")return n=n(),r(n),function(){r(null)};if(r!=null)return n=n(),r.current=n,function(){r.current=null}}function Zd(n,r,o){return o=o!=null?o.concat([n]):null,_o(4,4,Xd.bind(null,r,n),o)}function sc(){}function qd(n,r){var o=Sn();r=r===void 0?null:r;var c=o.memoizedState;return c!==null&&r!==null&&Zl(r,c[1])?c[0]:(o.memoizedState=[n,r],n)}function ef(n,r){var o=Sn();r=r===void 0?null:r;var c=o.memoizedState;return c!==null&&r!==null&&Zl(r,c[1])?c[0]:(n=n(),o.memoizedState=[n,r],n)}function tf(n,r,o){return(js&21)===0?(n.baseState&&(n.baseState=!1,Xt=!0),n.memoizedState=o):(On(o,r)||(o=Ui(),ut.lanes|=o,Ss|=o,n.baseState=!0),r)}function xg(n,r){var o=Qe;Qe=o!==0&&4>o?o:4,n(!0);var c=Xl.transition;Xl.transition={};try{n(!1),r()}finally{Qe=o,Xl.transition=c}}function nf(){return Sn().memoizedState}function bg(n,r,o){var c=Kr(n);if(o={lane:c,action:o,hasEagerState:!1,eagerState:null,next:null},rf(n))sf(r,o);else if(o=Md(n,r,o,c),o!==null){var p=Vt();Un(o,n,c,p),af(o,r,c)}}function kg(n,r,o){var c=Kr(n),p={lane:c,action:o,hasEagerState:!1,eagerState:null,next:null};if(rf(n))sf(r,p);else{var m=n.alternate;if(n.lanes===0&&(m===null||m.lanes===0)&&(m=r.lastRenderedReducer,m!==null))try{var _=r.lastRenderedState,N=m(_,o);if(p.hasEagerState=!0,p.eagerState=N,On(N,_)){var R=r.interleaved;R===null?(p.next=p,Gl(r)):(p.next=R.next,R.next=p),r.interleaved=p;return}}catch{}finally{}o=Md(n,r,p,c),o!==null&&(p=Vt(),Un(o,n,c,p),af(o,r,c))}}function rf(n){var r=n.alternate;return n===ut||r!==null&&r===ut}function sf(n,r){ua=wo=!0;var o=n.pending;o===null?r.next=r:(r.next=o.next,o.next=r),n.pending=r}function af(n,r,o){if((o&4194240)!==0){var c=r.lanes;c&=n.pendingLanes,o|=c,r.lanes=o,Ut(n,o)}}var xo={readContext:jn,useCallback:Lt,useContext:Lt,useEffect:Lt,useImperativeHandle:Lt,useInsertionEffect:Lt,useLayoutEffect:Lt,useMemo:Lt,useReducer:Lt,useRef:Lt,useState:Lt,useDebugValue:Lt,useDeferredValue:Lt,useTransition:Lt,useMutableSource:Lt,useSyncExternalStore:Lt,useId:Lt,unstable_isNewReconciler:!1},jg={readContext:jn,useCallback:function(n,r){return er().memoizedState=[n,r===void 0?null:r],n},useContext:jn,useEffect:Jd,useImperativeHandle:function(n,r,o){return o=o!=null?o.concat([n]):null,vo(4194308,4,Xd.bind(null,r,n),o)},useLayoutEffect:function(n,r){return vo(4194308,4,n,r)},useInsertionEffect:function(n,r){return vo(4,2,n,r)},useMemo:function(n,r){var o=er();return r=r===void 0?null:r,n=n(),o.memoizedState=[n,r],n},useReducer:function(n,r,o){var c=er();return r=o!==void 0?o(r):r,c.memoizedState=c.baseState=r,n={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:n,lastRenderedState:r},c.queue=n,n=n.dispatch=bg.bind(null,ut,n),[c.memoizedState,n]},useRef:function(n){var r=er();return n={current:n},r.memoizedState=n},useState:Hd,useDebugValue:sc,useDeferredValue:function(n){return er().memoizedState=n},useTransition:function(){var n=Hd(!1),r=n[0];return n=xg.bind(null,n[1]),er().memoizedState=n,[r,n]},useMutableSource:function(){},useSyncExternalStore:function(n,r,o){var c=ut,p=er();if(ot){if(o===void 0)throw Error(s(407));o=o()}else{if(o=r(),jt===null)throw Error(s(349));(js&30)!==0||Wd(c,r,o)}p.memoizedState=o;var m={value:o,getSnapshot:r};return p.queue=m,Jd(Bd.bind(null,c,m,n),[n]),c.flags|=2048,ha(9,Ud.bind(null,c,m,o,r),void 0,null),o},useId:function(){var n=er(),r=jt.identifierPrefix;if(ot){var o=vr,c=wr;o=(c&~(1<<32-Wt(c)-1)).toString(32)+o,r=":"+r+"R"+o,o=da++,0<o&&(r+="H"+o.toString(32)),r+=":"}else o=_g++,r=":"+r+"r"+o.toString(32)+":";return n.memoizedState=r},unstable_isNewReconciler:!1},Sg={readContext:jn,useCallback:qd,useContext:jn,useEffect:rc,useImperativeHandle:Zd,useInsertionEffect:Qd,useLayoutEffect:Yd,useMemo:ef,useReducer:tc,useRef:Kd,useState:function(){return tc(fa)},useDebugValue:sc,useDeferredValue:function(n){var r=Sn();return tf(r,wt.memoizedState,n)},useTransition:function(){var n=tc(fa)[0],r=Sn().memoizedState;return[n,r]},useMutableSource:Fd,useSyncExternalStore:zd,useId:nf,unstable_isNewReconciler:!1},Ng={readContext:jn,useCallback:qd,useContext:jn,useEffect:rc,useImperativeHandle:Zd,useInsertionEffect:Qd,useLayoutEffect:Yd,useMemo:ef,useReducer:nc,useRef:Kd,useState:function(){return nc(fa)},useDebugValue:sc,useDeferredValue:function(n){var r=Sn();return wt===null?r.memoizedState=n:tf(r,wt.memoizedState,n)},useTransition:function(){var n=nc(fa)[0],r=Sn().memoizedState;return[n,r]},useMutableSource:Fd,useSyncExternalStore:zd,useId:nf,unstable_isNewReconciler:!1};function Fn(n,r){if(n&&n.defaultProps){r=Q({},r),n=n.defaultProps;for(var o in n)r[o]===void 0&&(r[o]=n[o]);return r}return r}function ic(n,r,o,c){r=n.memoizedState,o=o(c,r),o=o==null?r:Q({},r,o),n.memoizedState=o,n.lanes===0&&(n.updateQueue.baseState=o)}var bo={isMounted:function(n){return(n=n._reactInternals)?on(n)===n:!1},enqueueSetState:function(n,r,o){n=n._reactInternals;var c=Vt(),p=Kr(n),m=xr(c,p);m.payload=r,o!=null&&(m.callback=o),r=Br(n,m,p),r!==null&&(Un(r,n,p,c),po(r,n,p))},enqueueReplaceState:function(n,r,o){n=n._reactInternals;var c=Vt(),p=Kr(n),m=xr(c,p);m.tag=1,m.payload=r,o!=null&&(m.callback=o),r=Br(n,m,p),r!==null&&(Un(r,n,p,c),po(r,n,p))},enqueueForceUpdate:function(n,r){n=n._reactInternals;var o=Vt(),c=Kr(n),p=xr(o,c);p.tag=2,r!=null&&(p.callback=r),r=Br(n,p,c),r!==null&&(Un(r,n,c,o),po(r,n,c))}};function of(n,r,o,c,p,m,_){return n=n.stateNode,typeof n.shouldComponentUpdate=="function"?n.shouldComponentUpdate(c,m,_):r.prototype&&r.prototype.isPureReactComponent?!qi(o,c)||!qi(p,m):!0}function lf(n,r,o){var c=!1,p=zr,m=r.contextType;return typeof m=="object"&&m!==null?m=jn(m):(p=Yt(r)?vs:Mt.current,c=r.contextTypes,m=(c=c!=null)?li(n,p):zr),r=new r(o,m),n.memoizedState=r.state!==null&&r.state!==void 0?r.state:null,r.updater=bo,n.stateNode=r,r._reactInternals=n,c&&(n=n.stateNode,n.__reactInternalMemoizedUnmaskedChildContext=p,n.__reactInternalMemoizedMaskedChildContext=m),r}function cf(n,r,o,c){n=r.state,typeof r.componentWillReceiveProps=="function"&&r.componentWillReceiveProps(o,c),typeof r.UNSAFE_componentWillReceiveProps=="function"&&r.UNSAFE_componentWillReceiveProps(o,c),r.state!==n&&bo.enqueueReplaceState(r,r.state,null)}function ac(n,r,o,c){var p=n.stateNode;p.props=o,p.state=n.memoizedState,p.refs={},Hl(n);var m=r.contextType;typeof m=="object"&&m!==null?p.context=jn(m):(m=Yt(r)?vs:Mt.current,p.context=li(n,m)),p.state=n.memoizedState,m=r.getDerivedStateFromProps,typeof m=="function"&&(ic(n,r,m,o),p.state=n.memoizedState),typeof r.getDerivedStateFromProps=="function"||typeof p.getSnapshotBeforeUpdate=="function"||typeof p.UNSAFE_componentWillMount!="function"&&typeof p.componentWillMount!="function"||(r=p.state,typeof p.componentWillMount=="function"&&p.componentWillMount(),typeof p.UNSAFE_componentWillMount=="function"&&p.UNSAFE_componentWillMount(),r!==p.state&&bo.enqueueReplaceState(p,p.state,null),mo(n,o,p,c),p.state=n.memoizedState),typeof p.componentDidMount=="function"&&(n.flags|=4194308)}function gi(n,r){try{var o="",c=r;do o+=oe(c),c=c.return;while(c);var p=o}catch(m){p=`
39
- Error generating stack: `+m.message+`
40
- `+m.stack}return{value:n,source:r,stack:p,digest:null}}function oc(n,r,o){return{value:n,source:null,stack:o??null,digest:r??null}}function lc(n,r){try{console.error(r.value)}catch(o){setTimeout(function(){throw o})}}var Cg=typeof WeakMap=="function"?WeakMap:Map;function uf(n,r,o){o=xr(-1,o),o.tag=3,o.payload={element:null};var c=r.value;return o.callback=function(){$o||($o=!0,kc=c),lc(n,r)},o}function df(n,r,o){o=xr(-1,o),o.tag=3;var c=n.type.getDerivedStateFromError;if(typeof c=="function"){var p=r.value;o.payload=function(){return c(p)},o.callback=function(){lc(n,r)}}var m=n.stateNode;return m!==null&&typeof m.componentDidCatch=="function"&&(o.callback=function(){lc(n,r),typeof c!="function"&&(Gr===null?Gr=new Set([this]):Gr.add(this));var _=r.stack;this.componentDidCatch(r.value,{componentStack:_!==null?_:""})}),o}function ff(n,r,o){var c=n.pingCache;if(c===null){c=n.pingCache=new Cg;var p=new Set;c.set(r,p)}else p=c.get(r),p===void 0&&(p=new Set,c.set(r,p));p.has(o)||(p.add(o),n=Wg.bind(null,n,r,o),r.then(n,n))}function hf(n){do{var r;if((r=n.tag===13)&&(r=n.memoizedState,r=r!==null?r.dehydrated!==null:!0),r)return n;n=n.return}while(n!==null);return null}function pf(n,r,o,c,p){return(n.mode&1)===0?(n===r?n.flags|=65536:(n.flags|=128,o.flags|=131072,o.flags&=-52805,o.tag===1&&(o.alternate===null?o.tag=17:(r=xr(-1,1),r.tag=2,Br(o,r,1))),o.lanes|=1),n):(n.flags|=65536,n.lanes=p,n)}var Eg=j.ReactCurrentOwner,Xt=!1;function Bt(n,r,o,c){r.child=n===null?Id(r,null,o,c):fi(r,n.child,o,c)}function mf(n,r,o,c,p){o=o.render;var m=r.ref;return pi(r,p),c=ql(n,r,o,c,m,p),o=ec(),n!==null&&!Xt?(r.updateQueue=n.updateQueue,r.flags&=-2053,n.lanes&=~p,br(n,r,p)):(ot&&o&&Pl(r),r.flags|=1,Bt(n,r,c,p),r.child)}function gf(n,r,o,c,p){if(n===null){var m=o.type;return typeof m=="function"&&!Ac(m)&&m.defaultProps===void 0&&o.compare===null&&o.defaultProps===void 0?(r.tag=15,r.type=m,yf(n,r,m,c,p)):(n=Lo(o.type,null,c,r,r.mode,p),n.ref=r.ref,n.return=r,r.child=n)}if(m=n.child,(n.lanes&p)===0){var _=m.memoizedProps;if(o=o.compare,o=o!==null?o:qi,o(_,c)&&n.ref===r.ref)return br(n,r,p)}return r.flags|=1,n=Qr(m,c),n.ref=r.ref,n.return=r,r.child=n}function yf(n,r,o,c,p){if(n!==null){var m=n.memoizedProps;if(qi(m,c)&&n.ref===r.ref)if(Xt=!1,r.pendingProps=c=m,(n.lanes&p)!==0)(n.flags&131072)!==0&&(Xt=!0);else return r.lanes=n.lanes,br(n,r,p)}return cc(n,r,o,c,p)}function wf(n,r,o){var c=r.pendingProps,p=c.children,m=n!==null?n.memoizedState:null;if(c.mode==="hidden")if((r.mode&1)===0)r.memoizedState={baseLanes:0,cachePool:null,transitions:null},nt(wi,pn),pn|=o;else{if((o&1073741824)===0)return n=m!==null?m.baseLanes|o:o,r.lanes=r.childLanes=1073741824,r.memoizedState={baseLanes:n,cachePool:null,transitions:null},r.updateQueue=null,nt(wi,pn),pn|=n,null;r.memoizedState={baseLanes:0,cachePool:null,transitions:null},c=m!==null?m.baseLanes:o,nt(wi,pn),pn|=c}else m!==null?(c=m.baseLanes|o,r.memoizedState=null):c=o,nt(wi,pn),pn|=c;return Bt(n,r,p,o),r.child}function vf(n,r){var o=r.ref;(n===null&&o!==null||n!==null&&n.ref!==o)&&(r.flags|=512,r.flags|=2097152)}function cc(n,r,o,c,p){var m=Yt(o)?vs:Mt.current;return m=li(r,m),pi(r,p),o=ql(n,r,o,c,m,p),c=ec(),n!==null&&!Xt?(r.updateQueue=n.updateQueue,r.flags&=-2053,n.lanes&=~p,br(n,r,p)):(ot&&c&&Pl(r),r.flags|=1,Bt(n,r,o,p),r.child)}function _f(n,r,o,c,p){if(Yt(o)){var m=!0;io(r)}else m=!1;if(pi(r,p),r.stateNode===null)jo(n,r),lf(r,o,c),ac(r,o,c,p),c=!0;else if(n===null){var _=r.stateNode,N=r.memoizedProps;_.props=N;var R=_.context,U=o.contextType;typeof U=="object"&&U!==null?U=jn(U):(U=Yt(o)?vs:Mt.current,U=li(r,U));var ne=o.getDerivedStateFromProps,ae=typeof ne=="function"||typeof _.getSnapshotBeforeUpdate=="function";ae||typeof _.UNSAFE_componentWillReceiveProps!="function"&&typeof _.componentWillReceiveProps!="function"||(N!==c||R!==U)&&cf(r,_,c,U),Ur=!1;var te=r.memoizedState;_.state=te,mo(r,c,_,p),R=r.memoizedState,N!==c||te!==R||Qt.current||Ur?(typeof ne=="function"&&(ic(r,o,ne,c),R=r.memoizedState),(N=Ur||of(r,o,N,c,te,R,U))?(ae||typeof _.UNSAFE_componentWillMount!="function"&&typeof _.componentWillMount!="function"||(typeof _.componentWillMount=="function"&&_.componentWillMount(),typeof _.UNSAFE_componentWillMount=="function"&&_.UNSAFE_componentWillMount()),typeof _.componentDidMount=="function"&&(r.flags|=4194308)):(typeof _.componentDidMount=="function"&&(r.flags|=4194308),r.memoizedProps=c,r.memoizedState=R),_.props=c,_.state=R,_.context=U,c=N):(typeof _.componentDidMount=="function"&&(r.flags|=4194308),c=!1)}else{_=r.stateNode,Ld(n,r),N=r.memoizedProps,U=r.type===r.elementType?N:Fn(r.type,N),_.props=U,ae=r.pendingProps,te=_.context,R=o.contextType,typeof R=="object"&&R!==null?R=jn(R):(R=Yt(o)?vs:Mt.current,R=li(r,R));var ge=o.getDerivedStateFromProps;(ne=typeof ge=="function"||typeof _.getSnapshotBeforeUpdate=="function")||typeof _.UNSAFE_componentWillReceiveProps!="function"&&typeof _.componentWillReceiveProps!="function"||(N!==ae||te!==R)&&cf(r,_,c,R),Ur=!1,te=r.memoizedState,_.state=te,mo(r,c,_,p);var xe=r.memoizedState;N!==ae||te!==xe||Qt.current||Ur?(typeof ge=="function"&&(ic(r,o,ge,c),xe=r.memoizedState),(U=Ur||of(r,o,U,c,te,xe,R)||!1)?(ne||typeof _.UNSAFE_componentWillUpdate!="function"&&typeof _.componentWillUpdate!="function"||(typeof _.componentWillUpdate=="function"&&_.componentWillUpdate(c,xe,R),typeof _.UNSAFE_componentWillUpdate=="function"&&_.UNSAFE_componentWillUpdate(c,xe,R)),typeof _.componentDidUpdate=="function"&&(r.flags|=4),typeof _.getSnapshotBeforeUpdate=="function"&&(r.flags|=1024)):(typeof _.componentDidUpdate!="function"||N===n.memoizedProps&&te===n.memoizedState||(r.flags|=4),typeof _.getSnapshotBeforeUpdate!="function"||N===n.memoizedProps&&te===n.memoizedState||(r.flags|=1024),r.memoizedProps=c,r.memoizedState=xe),_.props=c,_.state=xe,_.context=R,c=U):(typeof _.componentDidUpdate!="function"||N===n.memoizedProps&&te===n.memoizedState||(r.flags|=4),typeof _.getSnapshotBeforeUpdate!="function"||N===n.memoizedProps&&te===n.memoizedState||(r.flags|=1024),c=!1)}return uc(n,r,o,c,m,p)}function uc(n,r,o,c,p,m){vf(n,r);var _=(r.flags&128)!==0;if(!c&&!_)return p&&jd(r,o,!1),br(n,r,m);c=r.stateNode,Eg.current=r;var N=_&&typeof o.getDerivedStateFromError!="function"?null:c.render();return r.flags|=1,n!==null&&_?(r.child=fi(r,n.child,null,m),r.child=fi(r,null,N,m)):Bt(n,r,N,m),r.memoizedState=c.state,p&&jd(r,o,!0),r.child}function xf(n){var r=n.stateNode;r.pendingContext?bd(n,r.pendingContext,r.pendingContext!==r.context):r.context&&bd(n,r.context,!1),Kl(n,r.containerInfo)}function bf(n,r,o,c,p){return di(),zl(p),r.flags|=256,Bt(n,r,o,c),r.child}var dc={dehydrated:null,treeContext:null,retryLane:0};function fc(n){return{baseLanes:n,cachePool:null,transitions:null}}function kf(n,r,o){var c=r.pendingProps,p=ct.current,m=!1,_=(r.flags&128)!==0,N;if((N=_)||(N=n!==null&&n.memoizedState===null?!1:(p&2)!==0),N?(m=!0,r.flags&=-129):(n===null||n.memoizedState!==null)&&(p|=1),nt(ct,p&1),n===null)return Fl(r),n=r.memoizedState,n!==null&&(n=n.dehydrated,n!==null)?((r.mode&1)===0?r.lanes=1:n.data==="$!"?r.lanes=8:r.lanes=1073741824,null):(_=c.children,n=c.fallback,m?(c=r.mode,m=r.child,_={mode:"hidden",children:_},(c&1)===0&&m!==null?(m.childLanes=0,m.pendingProps=_):m=Po(_,c,0,null),n=$s(n,c,o,null),m.return=r,n.return=r,m.sibling=n,r.child=m,r.child.memoizedState=fc(o),r.memoizedState=dc,n):hc(r,_));if(p=n.memoizedState,p!==null&&(N=p.dehydrated,N!==null))return $g(n,r,_,c,N,p,o);if(m){m=c.fallback,_=r.mode,p=n.child,N=p.sibling;var R={mode:"hidden",children:c.children};return(_&1)===0&&r.child!==p?(c=r.child,c.childLanes=0,c.pendingProps=R,r.deletions=null):(c=Qr(p,R),c.subtreeFlags=p.subtreeFlags&14680064),N!==null?m=Qr(N,m):(m=$s(m,_,o,null),m.flags|=2),m.return=r,c.return=r,c.sibling=m,r.child=c,c=m,m=r.child,_=n.child.memoizedState,_=_===null?fc(o):{baseLanes:_.baseLanes|o,cachePool:null,transitions:_.transitions},m.memoizedState=_,m.childLanes=n.childLanes&~o,r.memoizedState=dc,c}return m=n.child,n=m.sibling,c=Qr(m,{mode:"visible",children:c.children}),(r.mode&1)===0&&(c.lanes=o),c.return=r,c.sibling=null,n!==null&&(o=r.deletions,o===null?(r.deletions=[n],r.flags|=16):o.push(n)),r.child=c,r.memoizedState=null,c}function hc(n,r){return r=Po({mode:"visible",children:r},n.mode,0,null),r.return=n,n.child=r}function ko(n,r,o,c){return c!==null&&zl(c),fi(r,n.child,null,o),n=hc(r,r.pendingProps.children),n.flags|=2,r.memoizedState=null,n}function $g(n,r,o,c,p,m,_){if(o)return r.flags&256?(r.flags&=-257,c=oc(Error(s(422))),ko(n,r,_,c)):r.memoizedState!==null?(r.child=n.child,r.flags|=128,null):(m=c.fallback,p=r.mode,c=Po({mode:"visible",children:c.children},p,0,null),m=$s(m,p,_,null),m.flags|=2,c.return=r,m.return=r,c.sibling=m,r.child=c,(r.mode&1)!==0&&fi(r,n.child,null,_),r.child.memoizedState=fc(_),r.memoizedState=dc,m);if((r.mode&1)===0)return ko(n,r,_,null);if(p.data==="$!"){if(c=p.nextSibling&&p.nextSibling.dataset,c)var N=c.dgst;return c=N,m=Error(s(419)),c=oc(m,c,void 0),ko(n,r,_,c)}if(N=(_&n.childLanes)!==0,Xt||N){if(c=jt,c!==null){switch(_&-_){case 4:p=2;break;case 16:p=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:p=32;break;case 536870912:p=268435456;break;default:p=0}p=(p&(c.suspendedLanes|_))!==0?0:p,p!==0&&p!==m.retryLane&&(m.retryLane=p,_r(n,p),Un(c,n,p,-1))}return $c(),c=oc(Error(s(421))),ko(n,r,_,c)}return p.data==="$?"?(r.flags|=128,r.child=n.child,r=Ug.bind(null,n),p._reactRetry=r,null):(n=m.treeContext,hn=Dr(p.nextSibling),fn=r,ot=!0,Dn=null,n!==null&&(bn[kn++]=wr,bn[kn++]=vr,bn[kn++]=_s,wr=n.id,vr=n.overflow,_s=r),r=hc(r,c.children),r.flags|=4096,r)}function jf(n,r,o){n.lanes|=r;var c=n.alternate;c!==null&&(c.lanes|=r),Vl(n.return,r,o)}function pc(n,r,o,c,p){var m=n.memoizedState;m===null?n.memoizedState={isBackwards:r,rendering:null,renderingStartTime:0,last:c,tail:o,tailMode:p}:(m.isBackwards=r,m.rendering=null,m.renderingStartTime=0,m.last=c,m.tail=o,m.tailMode=p)}function Sf(n,r,o){var c=r.pendingProps,p=c.revealOrder,m=c.tail;if(Bt(n,r,c.children,o),c=ct.current,(c&2)!==0)c=c&1|2,r.flags|=128;else{if(n!==null&&(n.flags&128)!==0)e:for(n=r.child;n!==null;){if(n.tag===13)n.memoizedState!==null&&jf(n,o,r);else if(n.tag===19)jf(n,o,r);else if(n.child!==null){n.child.return=n,n=n.child;continue}if(n===r)break e;for(;n.sibling===null;){if(n.return===null||n.return===r)break e;n=n.return}n.sibling.return=n.return,n=n.sibling}c&=1}if(nt(ct,c),(r.mode&1)===0)r.memoizedState=null;else switch(p){case"forwards":for(o=r.child,p=null;o!==null;)n=o.alternate,n!==null&&go(n)===null&&(p=o),o=o.sibling;o=p,o===null?(p=r.child,r.child=null):(p=o.sibling,o.sibling=null),pc(r,!1,p,o,m);break;case"backwards":for(o=null,p=r.child,r.child=null;p!==null;){if(n=p.alternate,n!==null&&go(n)===null){r.child=p;break}n=p.sibling,p.sibling=o,o=p,p=n}pc(r,!0,o,null,m);break;case"together":pc(r,!1,null,null,void 0);break;default:r.memoizedState=null}return r.child}function jo(n,r){(r.mode&1)===0&&n!==null&&(n.alternate=null,r.alternate=null,r.flags|=2)}function br(n,r,o){if(n!==null&&(r.dependencies=n.dependencies),Ss|=r.lanes,(o&r.childLanes)===0)return null;if(n!==null&&r.child!==n.child)throw Error(s(153));if(r.child!==null){for(n=r.child,o=Qr(n,n.pendingProps),r.child=o,o.return=r;n.sibling!==null;)n=n.sibling,o=o.sibling=Qr(n,n.pendingProps),o.return=r;o.sibling=null}return r.child}function Ag(n,r,o){switch(r.tag){case 3:xf(r),di();break;case 5:Dd(r);break;case 1:Yt(r.type)&&io(r);break;case 4:Kl(r,r.stateNode.containerInfo);break;case 10:var c=r.type._context,p=r.memoizedProps.value;nt(fo,c._currentValue),c._currentValue=p;break;case 13:if(c=r.memoizedState,c!==null)return c.dehydrated!==null?(nt(ct,ct.current&1),r.flags|=128,null):(o&r.child.childLanes)!==0?kf(n,r,o):(nt(ct,ct.current&1),n=br(n,r,o),n!==null?n.sibling:null);nt(ct,ct.current&1);break;case 19:if(c=(o&r.childLanes)!==0,(n.flags&128)!==0){if(c)return Sf(n,r,o);r.flags|=128}if(p=r.memoizedState,p!==null&&(p.rendering=null,p.tail=null,p.lastEffect=null),nt(ct,ct.current),c)break;return null;case 22:case 23:return r.lanes=0,wf(n,r,o)}return br(n,r,o)}var Nf,mc,Cf,Ef;Nf=function(n,r){for(var o=r.child;o!==null;){if(o.tag===5||o.tag===6)n.appendChild(o.stateNode);else if(o.tag!==4&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===r)break;for(;o.sibling===null;){if(o.return===null||o.return===r)return;o=o.return}o.sibling.return=o.return,o=o.sibling}},mc=function(){},Cf=function(n,r,o,c){var p=n.memoizedProps;if(p!==c){n=r.stateNode,ks(qn.current);var m=null;switch(o){case"input":p=pe(n,p),c=pe(n,c),m=[];break;case"select":p=Q({},p,{value:void 0}),c=Q({},c,{value:void 0}),m=[];break;case"textarea":p=Fe(n,p),c=Fe(n,c),m=[];break;default:typeof p.onClick!="function"&&typeof c.onClick=="function"&&(n.onclick=no)}gn(o,c);var _;o=null;for(U in p)if(!c.hasOwnProperty(U)&&p.hasOwnProperty(U)&&p[U]!=null)if(U==="style"){var N=p[U];for(_ in N)N.hasOwnProperty(_)&&(o||(o={}),o[_]="")}else U!=="dangerouslySetInnerHTML"&&U!=="children"&&U!=="suppressContentEditableWarning"&&U!=="suppressHydrationWarning"&&U!=="autoFocus"&&(l.hasOwnProperty(U)?m||(m=[]):(m=m||[]).push(U,null));for(U in c){var R=c[U];if(N=p!=null?p[U]:void 0,c.hasOwnProperty(U)&&R!==N&&(R!=null||N!=null))if(U==="style")if(N){for(_ in N)!N.hasOwnProperty(_)||R&&R.hasOwnProperty(_)||(o||(o={}),o[_]="");for(_ in R)R.hasOwnProperty(_)&&N[_]!==R[_]&&(o||(o={}),o[_]=R[_])}else o||(m||(m=[]),m.push(U,o)),o=R;else U==="dangerouslySetInnerHTML"?(R=R?R.__html:void 0,N=N?N.__html:void 0,R!=null&&N!==R&&(m=m||[]).push(U,R)):U==="children"?typeof R!="string"&&typeof R!="number"||(m=m||[]).push(U,""+R):U!=="suppressContentEditableWarning"&&U!=="suppressHydrationWarning"&&(l.hasOwnProperty(U)?(R!=null&&U==="onScroll"&&st("scroll",n),m||N===R||(m=[])):(m=m||[]).push(U,R))}o&&(m=m||[]).push("style",o);var U=m;(r.updateQueue=U)&&(r.flags|=4)}},Ef=function(n,r,o,c){o!==c&&(r.flags|=4)};function pa(n,r){if(!ot)switch(n.tailMode){case"hidden":r=n.tail;for(var o=null;r!==null;)r.alternate!==null&&(o=r),r=r.sibling;o===null?n.tail=null:o.sibling=null;break;case"collapsed":o=n.tail;for(var c=null;o!==null;)o.alternate!==null&&(c=o),o=o.sibling;c===null?r||n.tail===null?n.tail=null:n.tail.sibling=null:c.sibling=null}}function Pt(n){var r=n.alternate!==null&&n.alternate.child===n.child,o=0,c=0;if(r)for(var p=n.child;p!==null;)o|=p.lanes|p.childLanes,c|=p.subtreeFlags&14680064,c|=p.flags&14680064,p.return=n,p=p.sibling;else for(p=n.child;p!==null;)o|=p.lanes|p.childLanes,c|=p.subtreeFlags,c|=p.flags,p.return=n,p=p.sibling;return n.subtreeFlags|=c,n.childLanes=o,r}function Tg(n,r,o){var c=r.pendingProps;switch(Ol(r),r.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Pt(r),null;case 1:return Yt(r.type)&&so(),Pt(r),null;case 3:return c=r.stateNode,mi(),it(Qt),it(Mt),Yl(),c.pendingContext&&(c.context=c.pendingContext,c.pendingContext=null),(n===null||n.child===null)&&(co(r)?r.flags|=4:n===null||n.memoizedState.isDehydrated&&(r.flags&256)===0||(r.flags|=1024,Dn!==null&&(Nc(Dn),Dn=null))),mc(n,r),Pt(r),null;case 5:Jl(r);var p=ks(ca.current);if(o=r.type,n!==null&&r.stateNode!=null)Cf(n,r,o,c,p),n.ref!==r.ref&&(r.flags|=512,r.flags|=2097152);else{if(!c){if(r.stateNode===null)throw Error(s(166));return Pt(r),null}if(n=ks(qn.current),co(r)){c=r.stateNode,o=r.type;var m=r.memoizedProps;switch(c[Zn]=r,c[sa]=m,n=(r.mode&1)!==0,o){case"dialog":st("cancel",c),st("close",c);break;case"iframe":case"object":case"embed":st("load",c);break;case"video":case"audio":for(p=0;p<ta.length;p++)st(ta[p],c);break;case"source":st("error",c);break;case"img":case"image":case"link":st("error",c),st("load",c);break;case"details":st("toggle",c);break;case"input":De(c,m),st("invalid",c);break;case"select":c._wrapperState={wasMultiple:!!m.multiple},st("invalid",c);break;case"textarea":Ke(c,m),st("invalid",c)}gn(o,m),p=null;for(var _ in m)if(m.hasOwnProperty(_)){var N=m[_];_==="children"?typeof N=="string"?c.textContent!==N&&(m.suppressHydrationWarning!==!0&&to(c.textContent,N,n),p=["children",N]):typeof N=="number"&&c.textContent!==""+N&&(m.suppressHydrationWarning!==!0&&to(c.textContent,N,n),p=["children",""+N]):l.hasOwnProperty(_)&&N!=null&&_==="onScroll"&&st("scroll",c)}switch(o){case"input":ke(c),Ve(c,m,!0);break;case"textarea":ke(c),ar(c);break;case"select":case"option":break;default:typeof m.onClick=="function"&&(c.onclick=no)}c=p,r.updateQueue=c,c!==null&&(r.flags|=4)}else{_=p.nodeType===9?p:p.ownerDocument,n==="http://www.w3.org/1999/xhtml"&&(n=Tt(o)),n==="http://www.w3.org/1999/xhtml"?o==="script"?(n=_.createElement("div"),n.innerHTML="<script><\/script>",n=n.removeChild(n.firstChild)):typeof c.is=="string"?n=_.createElement(o,{is:c.is}):(n=_.createElement(o),o==="select"&&(_=n,c.multiple?_.multiple=!0:c.size&&(_.size=c.size))):n=_.createElementNS(n,o),n[Zn]=r,n[sa]=c,Nf(n,r,!1,!1),r.stateNode=n;e:{switch(_=ns(o,c),o){case"dialog":st("cancel",n),st("close",n),p=c;break;case"iframe":case"object":case"embed":st("load",n),p=c;break;case"video":case"audio":for(p=0;p<ta.length;p++)st(ta[p],n);p=c;break;case"source":st("error",n),p=c;break;case"img":case"image":case"link":st("error",n),st("load",n),p=c;break;case"details":st("toggle",n),p=c;break;case"input":De(n,c),p=pe(n,c),st("invalid",n);break;case"option":p=c;break;case"select":n._wrapperState={wasMultiple:!!c.multiple},p=Q({},c,{value:void 0}),st("invalid",n);break;case"textarea":Ke(n,c),p=Fe(n,c),st("invalid",n);break;default:p=c}gn(o,p),N=p;for(m in N)if(N.hasOwnProperty(m)){var R=N[m];m==="style"?Os(n,R):m==="dangerouslySetInnerHTML"?(R=R?R.__html:void 0,R!=null&&Rn(n,R)):m==="children"?typeof R=="string"?(o!=="textarea"||R!=="")&&or(n,R):typeof R=="number"&&or(n,""+R):m!=="suppressContentEditableWarning"&&m!=="suppressHydrationWarning"&&m!=="autoFocus"&&(l.hasOwnProperty(m)?R!=null&&m==="onScroll"&&st("scroll",n):R!=null&&T(n,m,R,_))}switch(o){case"input":ke(n),Ve(n,c,!1);break;case"textarea":ke(n),ar(n);break;case"option":c.value!=null&&n.setAttribute("value",""+Z(c.value));break;case"select":n.multiple=!!c.multiple,m=c.value,m!=null?me(n,!!c.multiple,m,!1):c.defaultValue!=null&&me(n,!!c.multiple,c.defaultValue,!0);break;default:typeof p.onClick=="function"&&(n.onclick=no)}switch(o){case"button":case"input":case"select":case"textarea":c=!!c.autoFocus;break e;case"img":c=!0;break e;default:c=!1}}c&&(r.flags|=4)}r.ref!==null&&(r.flags|=512,r.flags|=2097152)}return Pt(r),null;case 6:if(n&&r.stateNode!=null)Ef(n,r,n.memoizedProps,c);else{if(typeof c!="string"&&r.stateNode===null)throw Error(s(166));if(o=ks(ca.current),ks(qn.current),co(r)){if(c=r.stateNode,o=r.memoizedProps,c[Zn]=r,(m=c.nodeValue!==o)&&(n=fn,n!==null))switch(n.tag){case 3:to(c.nodeValue,o,(n.mode&1)!==0);break;case 5:n.memoizedProps.suppressHydrationWarning!==!0&&to(c.nodeValue,o,(n.mode&1)!==0)}m&&(r.flags|=4)}else c=(o.nodeType===9?o:o.ownerDocument).createTextNode(c),c[Zn]=r,r.stateNode=c}return Pt(r),null;case 13:if(it(ct),c=r.memoizedState,n===null||n.memoizedState!==null&&n.memoizedState.dehydrated!==null){if(ot&&hn!==null&&(r.mode&1)!==0&&(r.flags&128)===0)Ad(),di(),r.flags|=98560,m=!1;else if(m=co(r),c!==null&&c.dehydrated!==null){if(n===null){if(!m)throw Error(s(318));if(m=r.memoizedState,m=m!==null?m.dehydrated:null,!m)throw Error(s(317));m[Zn]=r}else di(),(r.flags&128)===0&&(r.memoizedState=null),r.flags|=4;Pt(r),m=!1}else Dn!==null&&(Nc(Dn),Dn=null),m=!0;if(!m)return r.flags&65536?r:null}return(r.flags&128)!==0?(r.lanes=o,r):(c=c!==null,c!==(n!==null&&n.memoizedState!==null)&&c&&(r.child.flags|=8192,(r.mode&1)!==0&&(n===null||(ct.current&1)!==0?vt===0&&(vt=3):$c())),r.updateQueue!==null&&(r.flags|=4),Pt(r),null);case 4:return mi(),mc(n,r),n===null&&na(r.stateNode.containerInfo),Pt(r),null;case 10:return Bl(r.type._context),Pt(r),null;case 17:return Yt(r.type)&&so(),Pt(r),null;case 19:if(it(ct),m=r.memoizedState,m===null)return Pt(r),null;if(c=(r.flags&128)!==0,_=m.rendering,_===null)if(c)pa(m,!1);else{if(vt!==0||n!==null&&(n.flags&128)!==0)for(n=r.child;n!==null;){if(_=go(n),_!==null){for(r.flags|=128,pa(m,!1),c=_.updateQueue,c!==null&&(r.updateQueue=c,r.flags|=4),r.subtreeFlags=0,c=o,o=r.child;o!==null;)m=o,n=c,m.flags&=14680066,_=m.alternate,_===null?(m.childLanes=0,m.lanes=n,m.child=null,m.subtreeFlags=0,m.memoizedProps=null,m.memoizedState=null,m.updateQueue=null,m.dependencies=null,m.stateNode=null):(m.childLanes=_.childLanes,m.lanes=_.lanes,m.child=_.child,m.subtreeFlags=0,m.deletions=null,m.memoizedProps=_.memoizedProps,m.memoizedState=_.memoizedState,m.updateQueue=_.updateQueue,m.type=_.type,n=_.dependencies,m.dependencies=n===null?null:{lanes:n.lanes,firstContext:n.firstContext}),o=o.sibling;return nt(ct,ct.current&1|2),r.child}n=n.sibling}m.tail!==null&&lt()>vi&&(r.flags|=128,c=!0,pa(m,!1),r.lanes=4194304)}else{if(!c)if(n=go(_),n!==null){if(r.flags|=128,c=!0,o=n.updateQueue,o!==null&&(r.updateQueue=o,r.flags|=4),pa(m,!0),m.tail===null&&m.tailMode==="hidden"&&!_.alternate&&!ot)return Pt(r),null}else 2*lt()-m.renderingStartTime>vi&&o!==1073741824&&(r.flags|=128,c=!0,pa(m,!1),r.lanes=4194304);m.isBackwards?(_.sibling=r.child,r.child=_):(o=m.last,o!==null?o.sibling=_:r.child=_,m.last=_)}return m.tail!==null?(r=m.tail,m.rendering=r,m.tail=r.sibling,m.renderingStartTime=lt(),r.sibling=null,o=ct.current,nt(ct,c?o&1|2:o&1),r):(Pt(r),null);case 22:case 23:return Ec(),c=r.memoizedState!==null,n!==null&&n.memoizedState!==null!==c&&(r.flags|=8192),c&&(r.mode&1)!==0?(pn&1073741824)!==0&&(Pt(r),r.subtreeFlags&6&&(r.flags|=8192)):Pt(r),null;case 24:return null;case 25:return null}throw Error(s(156,r.tag))}function Rg(n,r){switch(Ol(r),r.tag){case 1:return Yt(r.type)&&so(),n=r.flags,n&65536?(r.flags=n&-65537|128,r):null;case 3:return mi(),it(Qt),it(Mt),Yl(),n=r.flags,(n&65536)!==0&&(n&128)===0?(r.flags=n&-65537|128,r):null;case 5:return Jl(r),null;case 13:if(it(ct),n=r.memoizedState,n!==null&&n.dehydrated!==null){if(r.alternate===null)throw Error(s(340));di()}return n=r.flags,n&65536?(r.flags=n&-65537|128,r):null;case 19:return it(ct),null;case 4:return mi(),null;case 10:return Bl(r.type._context),null;case 22:case 23:return Ec(),null;case 24:return null;default:return null}}var So=!1,Ot=!1,Ig=typeof WeakSet=="function"?WeakSet:Set,_e=null;function yi(n,r){var o=n.ref;if(o!==null)if(typeof o=="function")try{o(null)}catch(c){ht(n,r,c)}else o.current=null}function gc(n,r,o){try{o()}catch(c){ht(n,r,c)}}var $f=!1;function Mg(n,r){if(El=hs,n=ad(),_l(n)){if("selectionStart"in n)var o={start:n.selectionStart,end:n.selectionEnd};else e:{o=(o=n.ownerDocument)&&o.defaultView||window;var c=o.getSelection&&o.getSelection();if(c&&c.rangeCount!==0){o=c.anchorNode;var p=c.anchorOffset,m=c.focusNode;c=c.focusOffset;try{o.nodeType,m.nodeType}catch{o=null;break e}var _=0,N=-1,R=-1,U=0,ne=0,ae=n,te=null;t:for(;;){for(var ge;ae!==o||p!==0&&ae.nodeType!==3||(N=_+p),ae!==m||c!==0&&ae.nodeType!==3||(R=_+c),ae.nodeType===3&&(_+=ae.nodeValue.length),(ge=ae.firstChild)!==null;)te=ae,ae=ge;for(;;){if(ae===n)break t;if(te===o&&++U===p&&(N=_),te===m&&++ne===c&&(R=_),(ge=ae.nextSibling)!==null)break;ae=te,te=ae.parentNode}ae=ge}o=N===-1||R===-1?null:{start:N,end:R}}else o=null}o=o||{start:0,end:0}}else o=null;for($l={focusedElem:n,selectionRange:o},hs=!1,_e=r;_e!==null;)if(r=_e,n=r.child,(r.subtreeFlags&1028)!==0&&n!==null)n.return=r,_e=n;else for(;_e!==null;){r=_e;try{var xe=r.alternate;if((r.flags&1024)!==0)switch(r.tag){case 0:case 11:case 15:break;case 1:if(xe!==null){var be=xe.memoizedProps,gt=xe.memoizedState,O=r.stateNode,M=O.getSnapshotBeforeUpdate(r.elementType===r.type?be:Fn(r.type,be),gt);O.__reactInternalSnapshotBeforeUpdate=M}break;case 3:var D=r.stateNode.containerInfo;D.nodeType===1?D.textContent="":D.nodeType===9&&D.documentElement&&D.removeChild(D.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(s(163))}}catch(de){ht(r,r.return,de)}if(n=r.sibling,n!==null){n.return=r.return,_e=n;break}_e=r.return}return xe=$f,$f=!1,xe}function ma(n,r,o){var c=r.updateQueue;if(c=c!==null?c.lastEffect:null,c!==null){var p=c=c.next;do{if((p.tag&n)===n){var m=p.destroy;p.destroy=void 0,m!==void 0&&gc(r,o,m)}p=p.next}while(p!==c)}}function No(n,r){if(r=r.updateQueue,r=r!==null?r.lastEffect:null,r!==null){var o=r=r.next;do{if((o.tag&n)===n){var c=o.create;o.destroy=c()}o=o.next}while(o!==r)}}function yc(n){var r=n.ref;if(r!==null){var o=n.stateNode;switch(n.tag){case 5:n=o;break;default:n=o}typeof r=="function"?r(n):r.current=n}}function Af(n){var r=n.alternate;r!==null&&(n.alternate=null,Af(r)),n.child=null,n.deletions=null,n.sibling=null,n.tag===5&&(r=n.stateNode,r!==null&&(delete r[Zn],delete r[sa],delete r[Il],delete r[gg],delete r[yg])),n.stateNode=null,n.return=null,n.dependencies=null,n.memoizedProps=null,n.memoizedState=null,n.pendingProps=null,n.stateNode=null,n.updateQueue=null}function Tf(n){return n.tag===5||n.tag===3||n.tag===4}function Rf(n){e:for(;;){for(;n.sibling===null;){if(n.return===null||Tf(n.return))return null;n=n.return}for(n.sibling.return=n.return,n=n.sibling;n.tag!==5&&n.tag!==6&&n.tag!==18;){if(n.flags&2||n.child===null||n.tag===4)continue e;n.child.return=n,n=n.child}if(!(n.flags&2))return n.stateNode}}function wc(n,r,o){var c=n.tag;if(c===5||c===6)n=n.stateNode,r?o.nodeType===8?o.parentNode.insertBefore(n,r):o.insertBefore(n,r):(o.nodeType===8?(r=o.parentNode,r.insertBefore(n,o)):(r=o,r.appendChild(n)),o=o._reactRootContainer,o!=null||r.onclick!==null||(r.onclick=no));else if(c!==4&&(n=n.child,n!==null))for(wc(n,r,o),n=n.sibling;n!==null;)wc(n,r,o),n=n.sibling}function vc(n,r,o){var c=n.tag;if(c===5||c===6)n=n.stateNode,r?o.insertBefore(n,r):o.appendChild(n);else if(c!==4&&(n=n.child,n!==null))for(vc(n,r,o),n=n.sibling;n!==null;)vc(n,r,o),n=n.sibling}var Nt=null,zn=!1;function Vr(n,r,o){for(o=o.child;o!==null;)If(n,r,o),o=o.sibling}function If(n,r,o){if(Le&&typeof Le.onCommitFiberUnmount=="function")try{Le.onCommitFiberUnmount(wn,o)}catch{}switch(o.tag){case 5:Ot||yi(o,r);case 6:var c=Nt,p=zn;Nt=null,Vr(n,r,o),Nt=c,zn=p,Nt!==null&&(zn?(n=Nt,o=o.stateNode,n.nodeType===8?n.parentNode.removeChild(o):n.removeChild(o)):Nt.removeChild(o.stateNode));break;case 18:Nt!==null&&(zn?(n=Nt,o=o.stateNode,n.nodeType===8?Rl(n.parentNode,o):n.nodeType===1&&Rl(n,o),fs(n)):Rl(Nt,o.stateNode));break;case 4:c=Nt,p=zn,Nt=o.stateNode.containerInfo,zn=!0,Vr(n,r,o),Nt=c,zn=p;break;case 0:case 11:case 14:case 15:if(!Ot&&(c=o.updateQueue,c!==null&&(c=c.lastEffect,c!==null))){p=c=c.next;do{var m=p,_=m.destroy;m=m.tag,_!==void 0&&((m&2)!==0||(m&4)!==0)&&gc(o,r,_),p=p.next}while(p!==c)}Vr(n,r,o);break;case 1:if(!Ot&&(yi(o,r),c=o.stateNode,typeof c.componentWillUnmount=="function"))try{c.props=o.memoizedProps,c.state=o.memoizedState,c.componentWillUnmount()}catch(N){ht(o,r,N)}Vr(n,r,o);break;case 21:Vr(n,r,o);break;case 22:o.mode&1?(Ot=(c=Ot)||o.memoizedState!==null,Vr(n,r,o),Ot=c):Vr(n,r,o);break;default:Vr(n,r,o)}}function Mf(n){var r=n.updateQueue;if(r!==null){n.updateQueue=null;var o=n.stateNode;o===null&&(o=n.stateNode=new Ig),r.forEach(function(c){var p=Bg.bind(null,n,c);o.has(c)||(o.add(c),c.then(p,p))})}}function Wn(n,r){var o=r.deletions;if(o!==null)for(var c=0;c<o.length;c++){var p=o[c];try{var m=n,_=r,N=_;e:for(;N!==null;){switch(N.tag){case 5:Nt=N.stateNode,zn=!1;break e;case 3:Nt=N.stateNode.containerInfo,zn=!0;break e;case 4:Nt=N.stateNode.containerInfo,zn=!0;break e}N=N.return}if(Nt===null)throw Error(s(160));If(m,_,p),Nt=null,zn=!1;var R=p.alternate;R!==null&&(R.return=null),p.return=null}catch(U){ht(p,r,U)}}if(r.subtreeFlags&12854)for(r=r.child;r!==null;)Lf(r,n),r=r.sibling}function Lf(n,r){var o=n.alternate,c=n.flags;switch(n.tag){case 0:case 11:case 14:case 15:if(Wn(r,n),tr(n),c&4){try{ma(3,n,n.return),No(3,n)}catch(be){ht(n,n.return,be)}try{ma(5,n,n.return)}catch(be){ht(n,n.return,be)}}break;case 1:Wn(r,n),tr(n),c&512&&o!==null&&yi(o,o.return);break;case 5:if(Wn(r,n),tr(n),c&512&&o!==null&&yi(o,o.return),n.flags&32){var p=n.stateNode;try{or(p,"")}catch(be){ht(n,n.return,be)}}if(c&4&&(p=n.stateNode,p!=null)){var m=n.memoizedProps,_=o!==null?o.memoizedProps:m,N=n.type,R=n.updateQueue;if(n.updateQueue=null,R!==null)try{N==="input"&&m.type==="radio"&&m.name!=null&&we(p,m),ns(N,_);var U=ns(N,m);for(_=0;_<R.length;_+=2){var ne=R[_],ae=R[_+1];ne==="style"?Os(p,ae):ne==="dangerouslySetInnerHTML"?Rn(p,ae):ne==="children"?or(p,ae):T(p,ne,ae,U)}switch(N){case"input":Pe(p,m);break;case"textarea":He(p,m);break;case"select":var te=p._wrapperState.wasMultiple;p._wrapperState.wasMultiple=!!m.multiple;var ge=m.value;ge!=null?me(p,!!m.multiple,ge,!1):te!==!!m.multiple&&(m.defaultValue!=null?me(p,!!m.multiple,m.defaultValue,!0):me(p,!!m.multiple,m.multiple?[]:"",!1))}p[sa]=m}catch(be){ht(n,n.return,be)}}break;case 6:if(Wn(r,n),tr(n),c&4){if(n.stateNode===null)throw Error(s(162));p=n.stateNode,m=n.memoizedProps;try{p.nodeValue=m}catch(be){ht(n,n.return,be)}}break;case 3:if(Wn(r,n),tr(n),c&4&&o!==null&&o.memoizedState.isDehydrated)try{fs(r.containerInfo)}catch(be){ht(n,n.return,be)}break;case 4:Wn(r,n),tr(n);break;case 13:Wn(r,n),tr(n),p=n.child,p.flags&8192&&(m=p.memoizedState!==null,p.stateNode.isHidden=m,!m||p.alternate!==null&&p.alternate.memoizedState!==null||(bc=lt())),c&4&&Mf(n);break;case 22:if(ne=o!==null&&o.memoizedState!==null,n.mode&1?(Ot=(U=Ot)||ne,Wn(r,n),Ot=U):Wn(r,n),tr(n),c&8192){if(U=n.memoizedState!==null,(n.stateNode.isHidden=U)&&!ne&&(n.mode&1)!==0)for(_e=n,ne=n.child;ne!==null;){for(ae=_e=ne;_e!==null;){switch(te=_e,ge=te.child,te.tag){case 0:case 11:case 14:case 15:ma(4,te,te.return);break;case 1:yi(te,te.return);var xe=te.stateNode;if(typeof xe.componentWillUnmount=="function"){c=te,o=te.return;try{r=c,xe.props=r.memoizedProps,xe.state=r.memoizedState,xe.componentWillUnmount()}catch(be){ht(c,o,be)}}break;case 5:yi(te,te.return);break;case 22:if(te.memoizedState!==null){Df(ae);continue}}ge!==null?(ge.return=te,_e=ge):Df(ae)}ne=ne.sibling}e:for(ne=null,ae=n;;){if(ae.tag===5){if(ne===null){ne=ae;try{p=ae.stateNode,U?(m=p.style,typeof m.setProperty=="function"?m.setProperty("display","none","important"):m.display="none"):(N=ae.stateNode,R=ae.memoizedProps.style,_=R!=null&&R.hasOwnProperty("display")?R.display:null,N.style.display=Ii("display",_))}catch(be){ht(n,n.return,be)}}}else if(ae.tag===6){if(ne===null)try{ae.stateNode.nodeValue=U?"":ae.memoizedProps}catch(be){ht(n,n.return,be)}}else if((ae.tag!==22&&ae.tag!==23||ae.memoizedState===null||ae===n)&&ae.child!==null){ae.child.return=ae,ae=ae.child;continue}if(ae===n)break e;for(;ae.sibling===null;){if(ae.return===null||ae.return===n)break e;ne===ae&&(ne=null),ae=ae.return}ne===ae&&(ne=null),ae.sibling.return=ae.return,ae=ae.sibling}}break;case 19:Wn(r,n),tr(n),c&4&&Mf(n);break;case 21:break;default:Wn(r,n),tr(n)}}function tr(n){var r=n.flags;if(r&2){try{e:{for(var o=n.return;o!==null;){if(Tf(o)){var c=o;break e}o=o.return}throw Error(s(160))}switch(c.tag){case 5:var p=c.stateNode;c.flags&32&&(or(p,""),c.flags&=-33);var m=Rf(n);vc(n,m,p);break;case 3:case 4:var _=c.stateNode.containerInfo,N=Rf(n);wc(n,N,_);break;default:throw Error(s(161))}}catch(R){ht(n,n.return,R)}n.flags&=-3}r&4096&&(n.flags&=-4097)}function Lg(n,r,o){_e=n,Pf(n)}function Pf(n,r,o){for(var c=(n.mode&1)!==0;_e!==null;){var p=_e,m=p.child;if(p.tag===22&&c){var _=p.memoizedState!==null||So;if(!_){var N=p.alternate,R=N!==null&&N.memoizedState!==null||Ot;N=So;var U=Ot;if(So=_,(Ot=R)&&!U)for(_e=p;_e!==null;)_=_e,R=_.child,_.tag===22&&_.memoizedState!==null?Ff(p):R!==null?(R.return=_,_e=R):Ff(p);for(;m!==null;)_e=m,Pf(m),m=m.sibling;_e=p,So=N,Ot=U}Of(n)}else(p.subtreeFlags&8772)!==0&&m!==null?(m.return=p,_e=m):Of(n)}}function Of(n){for(;_e!==null;){var r=_e;if((r.flags&8772)!==0){var o=r.alternate;try{if((r.flags&8772)!==0)switch(r.tag){case 0:case 11:case 15:Ot||No(5,r);break;case 1:var c=r.stateNode;if(r.flags&4&&!Ot)if(o===null)c.componentDidMount();else{var p=r.elementType===r.type?o.memoizedProps:Fn(r.type,o.memoizedProps);c.componentDidUpdate(p,o.memoizedState,c.__reactInternalSnapshotBeforeUpdate)}var m=r.updateQueue;m!==null&&Od(r,m,c);break;case 3:var _=r.updateQueue;if(_!==null){if(o=null,r.child!==null)switch(r.child.tag){case 5:o=r.child.stateNode;break;case 1:o=r.child.stateNode}Od(r,_,o)}break;case 5:var N=r.stateNode;if(o===null&&r.flags&4){o=N;var R=r.memoizedProps;switch(r.type){case"button":case"input":case"select":case"textarea":R.autoFocus&&o.focus();break;case"img":R.src&&(o.src=R.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(r.memoizedState===null){var U=r.alternate;if(U!==null){var ne=U.memoizedState;if(ne!==null){var ae=ne.dehydrated;ae!==null&&fs(ae)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(s(163))}Ot||r.flags&512&&yc(r)}catch(te){ht(r,r.return,te)}}if(r===n){_e=null;break}if(o=r.sibling,o!==null){o.return=r.return,_e=o;break}_e=r.return}}function Df(n){for(;_e!==null;){var r=_e;if(r===n){_e=null;break}var o=r.sibling;if(o!==null){o.return=r.return,_e=o;break}_e=r.return}}function Ff(n){for(;_e!==null;){var r=_e;try{switch(r.tag){case 0:case 11:case 15:var o=r.return;try{No(4,r)}catch(R){ht(r,o,R)}break;case 1:var c=r.stateNode;if(typeof c.componentDidMount=="function"){var p=r.return;try{c.componentDidMount()}catch(R){ht(r,p,R)}}var m=r.return;try{yc(r)}catch(R){ht(r,m,R)}break;case 5:var _=r.return;try{yc(r)}catch(R){ht(r,_,R)}}}catch(R){ht(r,r.return,R)}if(r===n){_e=null;break}var N=r.sibling;if(N!==null){N.return=r.return,_e=N;break}_e=r.return}}var Pg=Math.ceil,Co=j.ReactCurrentDispatcher,_c=j.ReactCurrentOwner,Nn=j.ReactCurrentBatchConfig,Je=0,jt=null,yt=null,Ct=0,pn=0,wi=Fr(0),vt=0,ga=null,Ss=0,Eo=0,xc=0,ya=null,Zt=null,bc=0,vi=1/0,kr=null,$o=!1,kc=null,Gr=null,Ao=!1,Hr=null,To=0,wa=0,jc=null,Ro=-1,Io=0;function Vt(){return(Je&6)!==0?lt():Ro!==-1?Ro:Ro=lt()}function Kr(n){return(n.mode&1)===0?1:(Je&2)!==0&&Ct!==0?Ct&-Ct:vg.transition!==null?(Io===0&&(Io=Ui()),Io):(n=Qe,n!==0||(n=window.event,n=n===void 0?16:Ki(n.type)),n)}function Un(n,r,o,c){if(50<wa)throw wa=0,jc=null,Error(s(185));Mn(n,o,c),((Je&2)===0||n!==jt)&&(n===jt&&((Je&2)===0&&(Eo|=o),vt===4&&Jr(n,Ct)),qt(n,c),o===1&&Je===0&&(r.mode&1)===0&&(vi=lt()+500,ao&&Wr()))}function qt(n,r){var o=n.callbackNode;Va(n,r);var c=us(n,n===jt?Ct:0);if(c===0)o!==null&&zs(o),n.callbackNode=null,n.callbackPriority=0;else if(r=c&-c,n.callbackPriority!==r){if(o!=null&&zs(o),r===1)n.tag===0?wg(Wf.bind(null,n)):Sd(Wf.bind(null,n)),pg(function(){(Je&6)===0&&Wr()}),o=null;else{switch(Bi(c)){case 1:o=Us;break;case 4:o=Wi;break;case 16:o=ls;break;case 536870912:o=Ba;break;default:o=ls}o=Qf(o,zf.bind(null,n))}n.callbackPriority=r,n.callbackNode=o}}function zf(n,r){if(Ro=-1,Io=0,(Je&6)!==0)throw Error(s(327));var o=n.callbackNode;if(_i()&&n.callbackNode!==o)return null;var c=us(n,n===jt?Ct:0);if(c===0)return null;if((c&30)!==0||(c&n.expiredLanes)!==0||r)r=Mo(n,c);else{r=c;var p=Je;Je|=2;var m=Bf();(jt!==n||Ct!==r)&&(kr=null,vi=lt()+500,Cs(n,r));do try{Fg();break}catch(N){Uf(n,N)}while(!0);Ul(),Co.current=m,Je=p,yt!==null?r=0:(jt=null,Ct=0,r=vt)}if(r!==0){if(r===2&&(p=un(n),p!==0&&(c=p,r=Sc(n,p))),r===1)throw o=ga,Cs(n,0),Jr(n,c),qt(n,lt()),o;if(r===6)Jr(n,c);else{if(p=n.current.alternate,(c&30)===0&&!Og(p)&&(r=Mo(n,c),r===2&&(m=un(n),m!==0&&(c=m,r=Sc(n,m))),r===1))throw o=ga,Cs(n,0),Jr(n,c),qt(n,lt()),o;switch(n.finishedWork=p,n.finishedLanes=c,r){case 0:case 1:throw Error(s(345));case 2:Es(n,Zt,kr);break;case 3:if(Jr(n,c),(c&130023424)===c&&(r=bc+500-lt(),10<r)){if(us(n,0)!==0)break;if(p=n.suspendedLanes,(p&c)!==c){Vt(),n.pingedLanes|=n.suspendedLanes&p;break}n.timeoutHandle=Tl(Es.bind(null,n,Zt,kr),r);break}Es(n,Zt,kr);break;case 4:if(Jr(n,c),(c&4194240)===c)break;for(r=n.eventTimes,p=-1;0<c;){var _=31-Wt(c);m=1<<_,_=r[_],_>p&&(p=_),c&=~m}if(c=p,c=lt()-c,c=(120>c?120:480>c?480:1080>c?1080:1920>c?1920:3e3>c?3e3:4320>c?4320:1960*Pg(c/1960))-c,10<c){n.timeoutHandle=Tl(Es.bind(null,n,Zt,kr),c);break}Es(n,Zt,kr);break;case 5:Es(n,Zt,kr);break;default:throw Error(s(329))}}}return qt(n,lt()),n.callbackNode===o?zf.bind(null,n):null}function Sc(n,r){var o=ya;return n.current.memoizedState.isDehydrated&&(Cs(n,r).flags|=256),n=Mo(n,r),n!==2&&(r=Zt,Zt=o,r!==null&&Nc(r)),n}function Nc(n){Zt===null?Zt=n:Zt.push.apply(Zt,n)}function Og(n){for(var r=n;;){if(r.flags&16384){var o=r.updateQueue;if(o!==null&&(o=o.stores,o!==null))for(var c=0;c<o.length;c++){var p=o[c],m=p.getSnapshot;p=p.value;try{if(!On(m(),p))return!1}catch{return!1}}}if(o=r.child,r.subtreeFlags&16384&&o!==null)o.return=r,r=o;else{if(r===n)break;for(;r.sibling===null;){if(r.return===null||r.return===n)return!0;r=r.return}r.sibling.return=r.return,r=r.sibling}}return!0}function Jr(n,r){for(r&=~xc,r&=~Eo,n.suspendedLanes|=r,n.pingedLanes&=~r,n=n.expirationTimes;0<r;){var o=31-Wt(r),c=1<<o;n[o]=-1,r&=~c}}function Wf(n){if((Je&6)!==0)throw Error(s(327));_i();var r=us(n,0);if((r&1)===0)return qt(n,lt()),null;var o=Mo(n,r);if(n.tag!==0&&o===2){var c=un(n);c!==0&&(r=c,o=Sc(n,c))}if(o===1)throw o=ga,Cs(n,0),Jr(n,r),qt(n,lt()),o;if(o===6)throw Error(s(345));return n.finishedWork=n.current.alternate,n.finishedLanes=r,Es(n,Zt,kr),qt(n,lt()),null}function Cc(n,r){var o=Je;Je|=1;try{return n(r)}finally{Je=o,Je===0&&(vi=lt()+500,ao&&Wr())}}function Ns(n){Hr!==null&&Hr.tag===0&&(Je&6)===0&&_i();var r=Je;Je|=1;var o=Nn.transition,c=Qe;try{if(Nn.transition=null,Qe=1,n)return n()}finally{Qe=c,Nn.transition=o,Je=r,(Je&6)===0&&Wr()}}function Ec(){pn=wi.current,it(wi)}function Cs(n,r){n.finishedWork=null,n.finishedLanes=0;var o=n.timeoutHandle;if(o!==-1&&(n.timeoutHandle=-1,hg(o)),yt!==null)for(o=yt.return;o!==null;){var c=o;switch(Ol(c),c.tag){case 1:c=c.type.childContextTypes,c!=null&&so();break;case 3:mi(),it(Qt),it(Mt),Yl();break;case 5:Jl(c);break;case 4:mi();break;case 13:it(ct);break;case 19:it(ct);break;case 10:Bl(c.type._context);break;case 22:case 23:Ec()}o=o.return}if(jt=n,yt=n=Qr(n.current,null),Ct=pn=r,vt=0,ga=null,xc=Eo=Ss=0,Zt=ya=null,bs!==null){for(r=0;r<bs.length;r++)if(o=bs[r],c=o.interleaved,c!==null){o.interleaved=null;var p=c.next,m=o.pending;if(m!==null){var _=m.next;m.next=p,c.next=_}o.pending=c}bs=null}return n}function Uf(n,r){do{var o=yt;try{if(Ul(),yo.current=xo,wo){for(var c=ut.memoizedState;c!==null;){var p=c.queue;p!==null&&(p.pending=null),c=c.next}wo=!1}if(js=0,kt=wt=ut=null,ua=!1,da=0,_c.current=null,o===null||o.return===null){vt=1,ga=r,yt=null;break}e:{var m=n,_=o.return,N=o,R=r;if(r=Ct,N.flags|=32768,R!==null&&typeof R=="object"&&typeof R.then=="function"){var U=R,ne=N,ae=ne.tag;if((ne.mode&1)===0&&(ae===0||ae===11||ae===15)){var te=ne.alternate;te?(ne.updateQueue=te.updateQueue,ne.memoizedState=te.memoizedState,ne.lanes=te.lanes):(ne.updateQueue=null,ne.memoizedState=null)}var ge=hf(_);if(ge!==null){ge.flags&=-257,pf(ge,_,N,m,r),ge.mode&1&&ff(m,U,r),r=ge,R=U;var xe=r.updateQueue;if(xe===null){var be=new Set;be.add(R),r.updateQueue=be}else xe.add(R);break e}else{if((r&1)===0){ff(m,U,r),$c();break e}R=Error(s(426))}}else if(ot&&N.mode&1){var gt=hf(_);if(gt!==null){(gt.flags&65536)===0&&(gt.flags|=256),pf(gt,_,N,m,r),zl(gi(R,N));break e}}m=R=gi(R,N),vt!==4&&(vt=2),ya===null?ya=[m]:ya.push(m),m=_;do{switch(m.tag){case 3:m.flags|=65536,r&=-r,m.lanes|=r;var O=uf(m,R,r);Pd(m,O);break e;case 1:N=R;var M=m.type,D=m.stateNode;if((m.flags&128)===0&&(typeof M.getDerivedStateFromError=="function"||D!==null&&typeof D.componentDidCatch=="function"&&(Gr===null||!Gr.has(D)))){m.flags|=65536,r&=-r,m.lanes|=r;var de=df(m,N,r);Pd(m,de);break e}}m=m.return}while(m!==null)}Gf(o)}catch(je){r=je,yt===o&&o!==null&&(yt=o=o.return);continue}break}while(!0)}function Bf(){var n=Co.current;return Co.current=xo,n===null?xo:n}function $c(){(vt===0||vt===3||vt===2)&&(vt=4),jt===null||(Ss&268435455)===0&&(Eo&268435455)===0||Jr(jt,Ct)}function Mo(n,r){var o=Je;Je|=2;var c=Bf();(jt!==n||Ct!==r)&&(kr=null,Cs(n,r));do try{Dg();break}catch(p){Uf(n,p)}while(!0);if(Ul(),Je=o,Co.current=c,yt!==null)throw Error(s(261));return jt=null,Ct=0,vt}function Dg(){for(;yt!==null;)Vf(yt)}function Fg(){for(;yt!==null&&!Ws();)Vf(yt)}function Vf(n){var r=Jf(n.alternate,n,pn);n.memoizedProps=n.pendingProps,r===null?Gf(n):yt=r,_c.current=null}function Gf(n){var r=n;do{var o=r.alternate;if(n=r.return,(r.flags&32768)===0){if(o=Tg(o,r,pn),o!==null){yt=o;return}}else{if(o=Rg(o,r),o!==null){o.flags&=32767,yt=o;return}if(n!==null)n.flags|=32768,n.subtreeFlags=0,n.deletions=null;else{vt=6,yt=null;return}}if(r=r.sibling,r!==null){yt=r;return}yt=r=n}while(r!==null);vt===0&&(vt=5)}function Es(n,r,o){var c=Qe,p=Nn.transition;try{Nn.transition=null,Qe=1,zg(n,r,o,c)}finally{Nn.transition=p,Qe=c}return null}function zg(n,r,o,c){do _i();while(Hr!==null);if((Je&6)!==0)throw Error(s(327));o=n.finishedWork;var p=n.finishedLanes;if(o===null)return null;if(n.finishedWork=null,n.finishedLanes=0,o===n.current)throw Error(s(177));n.callbackNode=null,n.callbackPriority=0;var m=o.lanes|o.childLanes;if(Gs(n,m),n===jt&&(yt=jt=null,Ct=0),(o.subtreeFlags&2064)===0&&(o.flags&2064)===0||Ao||(Ao=!0,Qf(ls,function(){return _i(),null})),m=(o.flags&15990)!==0,(o.subtreeFlags&15990)!==0||m){m=Nn.transition,Nn.transition=null;var _=Qe;Qe=1;var N=Je;Je|=4,_c.current=null,Mg(n,o),Lf(o,n),ag($l),hs=!!El,$l=El=null,n.current=o,Lg(o),Fi(),Je=N,Qe=_,Nn.transition=m}else n.current=o;if(Ao&&(Ao=!1,Hr=n,To=p),m=n.pendingLanes,m===0&&(Gr=null),ln(o.stateNode),qt(n,lt()),r!==null)for(c=n.onRecoverableError,o=0;o<r.length;o++)p=r[o],c(p.value,{componentStack:p.stack,digest:p.digest});if($o)throw $o=!1,n=kc,kc=null,n;return(To&1)!==0&&n.tag!==0&&_i(),m=n.pendingLanes,(m&1)!==0?n===jc?wa++:(wa=0,jc=n):wa=0,Wr(),null}function _i(){if(Hr!==null){var n=Bi(To),r=Nn.transition,o=Qe;try{if(Nn.transition=null,Qe=16>n?16:n,Hr===null)var c=!1;else{if(n=Hr,Hr=null,To=0,(Je&6)!==0)throw Error(s(331));var p=Je;for(Je|=4,_e=n.current;_e!==null;){var m=_e,_=m.child;if((_e.flags&16)!==0){var N=m.deletions;if(N!==null){for(var R=0;R<N.length;R++){var U=N[R];for(_e=U;_e!==null;){var ne=_e;switch(ne.tag){case 0:case 11:case 15:ma(8,ne,m)}var ae=ne.child;if(ae!==null)ae.return=ne,_e=ae;else for(;_e!==null;){ne=_e;var te=ne.sibling,ge=ne.return;if(Af(ne),ne===U){_e=null;break}if(te!==null){te.return=ge,_e=te;break}_e=ge}}}var xe=m.alternate;if(xe!==null){var be=xe.child;if(be!==null){xe.child=null;do{var gt=be.sibling;be.sibling=null,be=gt}while(be!==null)}}_e=m}}if((m.subtreeFlags&2064)!==0&&_!==null)_.return=m,_e=_;else e:for(;_e!==null;){if(m=_e,(m.flags&2048)!==0)switch(m.tag){case 0:case 11:case 15:ma(9,m,m.return)}var O=m.sibling;if(O!==null){O.return=m.return,_e=O;break e}_e=m.return}}var M=n.current;for(_e=M;_e!==null;){_=_e;var D=_.child;if((_.subtreeFlags&2064)!==0&&D!==null)D.return=_,_e=D;else e:for(_=M;_e!==null;){if(N=_e,(N.flags&2048)!==0)try{switch(N.tag){case 0:case 11:case 15:No(9,N)}}catch(je){ht(N,N.return,je)}if(N===_){_e=null;break e}var de=N.sibling;if(de!==null){de.return=N.return,_e=de;break e}_e=N.return}}if(Je=p,Wr(),Le&&typeof Le.onPostCommitFiberRoot=="function")try{Le.onPostCommitFiberRoot(wn,n)}catch{}c=!0}return c}finally{Qe=o,Nn.transition=r}}return!1}function Hf(n,r,o){r=gi(o,r),r=uf(n,r,1),n=Br(n,r,1),r=Vt(),n!==null&&(Mn(n,1,r),qt(n,r))}function ht(n,r,o){if(n.tag===3)Hf(n,n,o);else for(;r!==null;){if(r.tag===3){Hf(r,n,o);break}else if(r.tag===1){var c=r.stateNode;if(typeof r.type.getDerivedStateFromError=="function"||typeof c.componentDidCatch=="function"&&(Gr===null||!Gr.has(c))){n=gi(o,n),n=df(r,n,1),r=Br(r,n,1),n=Vt(),r!==null&&(Mn(r,1,n),qt(r,n));break}}r=r.return}}function Wg(n,r,o){var c=n.pingCache;c!==null&&c.delete(r),r=Vt(),n.pingedLanes|=n.suspendedLanes&o,jt===n&&(Ct&o)===o&&(vt===4||vt===3&&(Ct&130023424)===Ct&&500>lt()-bc?Cs(n,0):xc|=o),qt(n,r)}function Kf(n,r){r===0&&((n.mode&1)===0?r=1:(r=cs,cs<<=1,(cs&130023424)===0&&(cs=4194304)));var o=Vt();n=_r(n,r),n!==null&&(Mn(n,r,o),qt(n,o))}function Ug(n){var r=n.memoizedState,o=0;r!==null&&(o=r.retryLane),Kf(n,o)}function Bg(n,r){var o=0;switch(n.tag){case 13:var c=n.stateNode,p=n.memoizedState;p!==null&&(o=p.retryLane);break;case 19:c=n.stateNode;break;default:throw Error(s(314))}c!==null&&c.delete(r),Kf(n,o)}var Jf;Jf=function(n,r,o){if(n!==null)if(n.memoizedProps!==r.pendingProps||Qt.current)Xt=!0;else{if((n.lanes&o)===0&&(r.flags&128)===0)return Xt=!1,Ag(n,r,o);Xt=(n.flags&131072)!==0}else Xt=!1,ot&&(r.flags&1048576)!==0&&Nd(r,lo,r.index);switch(r.lanes=0,r.tag){case 2:var c=r.type;jo(n,r),n=r.pendingProps;var p=li(r,Mt.current);pi(r,o),p=ql(null,r,c,n,p,o);var m=ec();return r.flags|=1,typeof p=="object"&&p!==null&&typeof p.render=="function"&&p.$$typeof===void 0?(r.tag=1,r.memoizedState=null,r.updateQueue=null,Yt(c)?(m=!0,io(r)):m=!1,r.memoizedState=p.state!==null&&p.state!==void 0?p.state:null,Hl(r),p.updater=bo,r.stateNode=p,p._reactInternals=r,ac(r,c,n,o),r=uc(null,r,c,!0,m,o)):(r.tag=0,ot&&m&&Pl(r),Bt(null,r,p,o),r=r.child),r;case 16:c=r.elementType;e:{switch(jo(n,r),n=r.pendingProps,p=c._init,c=p(c._payload),r.type=c,p=r.tag=Gg(c),n=Fn(c,n),p){case 0:r=cc(null,r,c,n,o);break e;case 1:r=_f(null,r,c,n,o);break e;case 11:r=mf(null,r,c,n,o);break e;case 14:r=gf(null,r,c,Fn(c.type,n),o);break e}throw Error(s(306,c,""))}return r;case 0:return c=r.type,p=r.pendingProps,p=r.elementType===c?p:Fn(c,p),cc(n,r,c,p,o);case 1:return c=r.type,p=r.pendingProps,p=r.elementType===c?p:Fn(c,p),_f(n,r,c,p,o);case 3:e:{if(xf(r),n===null)throw Error(s(387));c=r.pendingProps,m=r.memoizedState,p=m.element,Ld(n,r),mo(r,c,null,o);var _=r.memoizedState;if(c=_.element,m.isDehydrated)if(m={element:c,isDehydrated:!1,cache:_.cache,pendingSuspenseBoundaries:_.pendingSuspenseBoundaries,transitions:_.transitions},r.updateQueue.baseState=m,r.memoizedState=m,r.flags&256){p=gi(Error(s(423)),r),r=bf(n,r,c,o,p);break e}else if(c!==p){p=gi(Error(s(424)),r),r=bf(n,r,c,o,p);break e}else for(hn=Dr(r.stateNode.containerInfo.firstChild),fn=r,ot=!0,Dn=null,o=Id(r,null,c,o),r.child=o;o;)o.flags=o.flags&-3|4096,o=o.sibling;else{if(di(),c===p){r=br(n,r,o);break e}Bt(n,r,c,o)}r=r.child}return r;case 5:return Dd(r),n===null&&Fl(r),c=r.type,p=r.pendingProps,m=n!==null?n.memoizedProps:null,_=p.children,Al(c,p)?_=null:m!==null&&Al(c,m)&&(r.flags|=32),vf(n,r),Bt(n,r,_,o),r.child;case 6:return n===null&&Fl(r),null;case 13:return kf(n,r,o);case 4:return Kl(r,r.stateNode.containerInfo),c=r.pendingProps,n===null?r.child=fi(r,null,c,o):Bt(n,r,c,o),r.child;case 11:return c=r.type,p=r.pendingProps,p=r.elementType===c?p:Fn(c,p),mf(n,r,c,p,o);case 7:return Bt(n,r,r.pendingProps,o),r.child;case 8:return Bt(n,r,r.pendingProps.children,o),r.child;case 12:return Bt(n,r,r.pendingProps.children,o),r.child;case 10:e:{if(c=r.type._context,p=r.pendingProps,m=r.memoizedProps,_=p.value,nt(fo,c._currentValue),c._currentValue=_,m!==null)if(On(m.value,_)){if(m.children===p.children&&!Qt.current){r=br(n,r,o);break e}}else for(m=r.child,m!==null&&(m.return=r);m!==null;){var N=m.dependencies;if(N!==null){_=m.child;for(var R=N.firstContext;R!==null;){if(R.context===c){if(m.tag===1){R=xr(-1,o&-o),R.tag=2;var U=m.updateQueue;if(U!==null){U=U.shared;var ne=U.pending;ne===null?R.next=R:(R.next=ne.next,ne.next=R),U.pending=R}}m.lanes|=o,R=m.alternate,R!==null&&(R.lanes|=o),Vl(m.return,o,r),N.lanes|=o;break}R=R.next}}else if(m.tag===10)_=m.type===r.type?null:m.child;else if(m.tag===18){if(_=m.return,_===null)throw Error(s(341));_.lanes|=o,N=_.alternate,N!==null&&(N.lanes|=o),Vl(_,o,r),_=m.sibling}else _=m.child;if(_!==null)_.return=m;else for(_=m;_!==null;){if(_===r){_=null;break}if(m=_.sibling,m!==null){m.return=_.return,_=m;break}_=_.return}m=_}Bt(n,r,p.children,o),r=r.child}return r;case 9:return p=r.type,c=r.pendingProps.children,pi(r,o),p=jn(p),c=c(p),r.flags|=1,Bt(n,r,c,o),r.child;case 14:return c=r.type,p=Fn(c,r.pendingProps),p=Fn(c.type,p),gf(n,r,c,p,o);case 15:return yf(n,r,r.type,r.pendingProps,o);case 17:return c=r.type,p=r.pendingProps,p=r.elementType===c?p:Fn(c,p),jo(n,r),r.tag=1,Yt(c)?(n=!0,io(r)):n=!1,pi(r,o),lf(r,c,p),ac(r,c,p,o),uc(null,r,c,!0,n,o);case 19:return Sf(n,r,o);case 22:return wf(n,r,o)}throw Error(s(156,r.tag))};function Qf(n,r){return Di(n,r)}function Vg(n,r,o,c){this.tag=n,this.key=o,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=r,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=c,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Cn(n,r,o,c){return new Vg(n,r,o,c)}function Ac(n){return n=n.prototype,!(!n||!n.isReactComponent)}function Gg(n){if(typeof n=="function")return Ac(n)?1:0;if(n!=null){if(n=n.$$typeof,n===W)return 11;if(n===ue)return 14}return 2}function Qr(n,r){var o=n.alternate;return o===null?(o=Cn(n.tag,r,n.key,n.mode),o.elementType=n.elementType,o.type=n.type,o.stateNode=n.stateNode,o.alternate=n,n.alternate=o):(o.pendingProps=r,o.type=n.type,o.flags=0,o.subtreeFlags=0,o.deletions=null),o.flags=n.flags&14680064,o.childLanes=n.childLanes,o.lanes=n.lanes,o.child=n.child,o.memoizedProps=n.memoizedProps,o.memoizedState=n.memoizedState,o.updateQueue=n.updateQueue,r=n.dependencies,o.dependencies=r===null?null:{lanes:r.lanes,firstContext:r.firstContext},o.sibling=n.sibling,o.index=n.index,o.ref=n.ref,o}function Lo(n,r,o,c,p,m){var _=2;if(c=n,typeof n=="function")Ac(n)&&(_=1);else if(typeof n=="string")_=5;else e:switch(n){case V:return $s(o.children,p,m,r);case P:_=8,p|=8;break;case ce:return n=Cn(12,o,r,p|2),n.elementType=ce,n.lanes=m,n;case J:return n=Cn(13,o,r,p),n.elementType=J,n.lanes=m,n;case fe:return n=Cn(19,o,r,p),n.elementType=fe,n.lanes=m,n;case ve:return Po(o,p,m,r);default:if(typeof n=="object"&&n!==null)switch(n.$$typeof){case re:_=10;break e;case H:_=9;break e;case W:_=11;break e;case ue:_=14;break e;case ye:_=16,c=null;break e}throw Error(s(130,n==null?n:typeof n,""))}return r=Cn(_,o,r,p),r.elementType=n,r.type=c,r.lanes=m,r}function $s(n,r,o,c){return n=Cn(7,n,c,r),n.lanes=o,n}function Po(n,r,o,c){return n=Cn(22,n,c,r),n.elementType=ve,n.lanes=o,n.stateNode={isHidden:!1},n}function Tc(n,r,o){return n=Cn(6,n,null,r),n.lanes=o,n}function Rc(n,r,o){return r=Cn(4,n.children!==null?n.children:[],n.key,r),r.lanes=o,r.stateNode={containerInfo:n.containerInfo,pendingChildren:null,implementation:n.implementation},r}function Hg(n,r,o,c,p){this.tag=r,this.containerInfo=n,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Kn(0),this.expirationTimes=Kn(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Kn(0),this.identifierPrefix=c,this.onRecoverableError=p,this.mutableSourceEagerHydrationData=null}function Ic(n,r,o,c,p,m,_,N,R){return n=new Hg(n,r,o,N,R),r===1?(r=1,m===!0&&(r|=8)):r=0,m=Cn(3,null,null,r),n.current=m,m.stateNode=n,m.memoizedState={element:c,isDehydrated:o,cache:null,transitions:null,pendingSuspenseBoundaries:null},Hl(m),n}function Kg(n,r,o){var c=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:z,key:c==null?null:""+c,children:n,containerInfo:r,implementation:o}}function Yf(n){if(!n)return zr;n=n._reactInternals;e:{if(on(n)!==n||n.tag!==1)throw Error(s(170));var r=n;do{switch(r.tag){case 3:r=r.stateNode.context;break e;case 1:if(Yt(r.type)){r=r.stateNode.__reactInternalMemoizedMergedChildContext;break e}}r=r.return}while(r!==null);throw Error(s(171))}if(n.tag===1){var o=n.type;if(Yt(o))return kd(n,o,r)}return r}function Xf(n,r,o,c,p,m,_,N,R){return n=Ic(o,c,!0,n,p,m,_,N,R),n.context=Yf(null),o=n.current,c=Vt(),p=Kr(o),m=xr(c,p),m.callback=r??null,Br(o,m,p),n.current.lanes=p,Mn(n,p,c),qt(n,c),n}function Oo(n,r,o,c){var p=r.current,m=Vt(),_=Kr(p);return o=Yf(o),r.context===null?r.context=o:r.pendingContext=o,r=xr(m,_),r.payload={element:n},c=c===void 0?null:c,c!==null&&(r.callback=c),n=Br(p,r,_),n!==null&&(Un(n,p,_,m),po(n,p,_)),_}function Do(n){if(n=n.current,!n.child)return null;switch(n.child.tag){case 5:return n.child.stateNode;default:return n.child.stateNode}}function Zf(n,r){if(n=n.memoizedState,n!==null&&n.dehydrated!==null){var o=n.retryLane;n.retryLane=o!==0&&o<r?o:r}}function Mc(n,r){Zf(n,r),(n=n.alternate)&&Zf(n,r)}function Jg(){return null}var qf=typeof reportError=="function"?reportError:function(n){console.error(n)};function Lc(n){this._internalRoot=n}Fo.prototype.render=Lc.prototype.render=function(n){var r=this._internalRoot;if(r===null)throw Error(s(409));Oo(n,r,null,null)},Fo.prototype.unmount=Lc.prototype.unmount=function(){var n=this._internalRoot;if(n!==null){this._internalRoot=null;var r=n.containerInfo;Ns(function(){Oo(null,n,null,null)}),r[gr]=null}};function Fo(n){this._internalRoot=n}Fo.prototype.unstable_scheduleHydration=function(n){if(n){var r=Ks();n={blockedOn:null,target:n,priority:r};for(var o=0;o<Qn.length&&r!==0&&r<Qn[o].priority;o++);Qn.splice(o,0,n),o===0&&Ha(n)}};function Pc(n){return!(!n||n.nodeType!==1&&n.nodeType!==9&&n.nodeType!==11)}function zo(n){return!(!n||n.nodeType!==1&&n.nodeType!==9&&n.nodeType!==11&&(n.nodeType!==8||n.nodeValue!==" react-mount-point-unstable "))}function eh(){}function Qg(n,r,o,c,p){if(p){if(typeof c=="function"){var m=c;c=function(){var U=Do(_);m.call(U)}}var _=Xf(r,c,n,0,null,!1,!1,"",eh);return n._reactRootContainer=_,n[gr]=_.current,na(n.nodeType===8?n.parentNode:n),Ns(),_}for(;p=n.lastChild;)n.removeChild(p);if(typeof c=="function"){var N=c;c=function(){var U=Do(R);N.call(U)}}var R=Ic(n,0,!1,null,null,!1,!1,"",eh);return n._reactRootContainer=R,n[gr]=R.current,na(n.nodeType===8?n.parentNode:n),Ns(function(){Oo(r,R,o,c)}),R}function Wo(n,r,o,c,p){var m=o._reactRootContainer;if(m){var _=m;if(typeof p=="function"){var N=p;p=function(){var R=Do(_);N.call(R)}}Oo(r,_,n,p)}else _=Qg(o,r,n,p,c);return Do(_)}Hs=function(n){switch(n.tag){case 3:var r=n.stateNode;if(r.current.memoizedState.isDehydrated){var o=vn(r.pendingLanes);o!==0&&(Ut(r,o|1),qt(r,lt()),(Je&6)===0&&(vi=lt()+500,Wr()))}break;case 13:Ns(function(){var c=_r(n,1);if(c!==null){var p=Vt();Un(c,n,1,p)}}),Mc(n,1)}},Vi=function(n){if(n.tag===13){var r=_r(n,134217728);if(r!==null){var o=Vt();Un(r,n,134217728,o)}Mc(n,134217728)}},Gi=function(n){if(n.tag===13){var r=Kr(n),o=_r(n,r);if(o!==null){var c=Vt();Un(o,n,r,c)}Mc(n,r)}},Ks=function(){return Qe},Tr=function(n,r){var o=Qe;try{return Qe=n,r()}finally{Qe=o}},Ds=function(n,r,o){switch(r){case"input":if(Pe(n,o),r=o.name,o.type==="radio"&&r!=null){for(o=n;o.parentNode;)o=o.parentNode;for(o=o.querySelectorAll("input[name="+JSON.stringify(""+r)+'][type="radio"]'),r=0;r<o.length;r++){var c=o[r];if(c!==n&&c.form===n.form){var p=ro(c);if(!p)throw Error(s(90));X(c),Pe(c,p)}}}break;case"textarea":He(n,o);break;case"select":r=o.value,r!=null&&me(n,!!o.multiple,r,!1)}},cr=Cc,Ht=Ns;var Yg={usingClientEntryPoint:!1,Events:[ia,ai,ro,za,Li,Cc]},va={findFiberByHostInstance:ws,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},Xg={bundleType:va.bundleType,version:va.version,rendererPackageName:va.rendererPackageName,rendererConfig:va.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:j.ReactCurrentDispatcher,findHostInstanceByFiber:function(n){return n=Fs(n),n===null?null:n.stateNode},findFiberByHostInstance:va.findFiberByHostInstance||Jg,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 Uo=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Uo.isDisabled&&Uo.supportsFiber)try{wn=Uo.inject(Xg),Le=Uo}catch{}}return en.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Yg,en.createPortal=function(n,r){var o=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!Pc(r))throw Error(s(200));return Kg(n,r,null,o)},en.createRoot=function(n,r){if(!Pc(n))throw Error(s(299));var o=!1,c="",p=qf;return r!=null&&(r.unstable_strictMode===!0&&(o=!0),r.identifierPrefix!==void 0&&(c=r.identifierPrefix),r.onRecoverableError!==void 0&&(p=r.onRecoverableError)),r=Ic(n,1,!1,null,null,o,!1,c,p),n[gr]=r.current,na(n.nodeType===8?n.parentNode:n),new Lc(r)},en.findDOMNode=function(n){if(n==null)return null;if(n.nodeType===1)return n;var r=n._reactInternals;if(r===void 0)throw typeof n.render=="function"?Error(s(188)):(n=Object.keys(n).join(","),Error(s(268,n)));return n=Fs(r),n=n===null?null:n.stateNode,n},en.flushSync=function(n){return Ns(n)},en.hydrate=function(n,r,o){if(!zo(r))throw Error(s(200));return Wo(null,n,r,!0,o)},en.hydrateRoot=function(n,r,o){if(!Pc(n))throw Error(s(405));var c=o!=null&&o.hydratedSources||null,p=!1,m="",_=qf;if(o!=null&&(o.unstable_strictMode===!0&&(p=!0),o.identifierPrefix!==void 0&&(m=o.identifierPrefix),o.onRecoverableError!==void 0&&(_=o.onRecoverableError)),r=Xf(r,null,n,1,o??null,p,!1,m,_),n[gr]=r.current,na(n),c)for(n=0;n<c.length;n++)o=c[n],p=o._getVersion,p=p(o._source),r.mutableSourceEagerHydrationData==null?r.mutableSourceEagerHydrationData=[o,p]:r.mutableSourceEagerHydrationData.push(o,p);return new Fo(r)},en.render=function(n,r,o){if(!zo(r))throw Error(s(200));return Wo(null,n,r,!1,o)},en.unmountComponentAtNode=function(n){if(!zo(n))throw Error(s(40));return n._reactRootContainer?(Ns(function(){Wo(null,null,n,!1,function(){n._reactRootContainer=null,n[gr]=null})}),!0):!1},en.unstable_batchedUpdates=Cc,en.unstable_renderSubtreeIntoContainer=function(n,r,o,c){if(!zo(o))throw Error(s(200));if(n==null||n._reactInternals===void 0)throw Error(s(38));return Wo(n,r,o,!1,c)},en.version="18.3.1-next-f1338f8080-20240426",en}var lh;function fp(){if(lh)return Fc.exports;lh=1;function e(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),Fc.exports=ay(),Fc.exports}var ch;function oy(){if(ch)return Bo;ch=1;var e=fp();return Bo.createRoot=e.createRoot,Bo.hydrateRoot=e.hydrateRoot,Bo}var ly=oy();const cy=dp(ly),hp=[{id:"dark",label:"Dark (Abstract)",group:"dark",swatches:["#1a1a2e","#16213e","#0f3460","#e94560","#60a5fa","#27ae60"]},{id:"observer-night",label:"Observer Night",group:"dark",swatches:["#0b0f14","#10161e","#161e28","#e8a54a","#6ea8d8","#7bc98c"]},{id:"catppuccin-mocha",label:"Catppuccin Mocha",group:"dark",swatches:["#1e1e2e","#181825","#313244","#cba6f7","#89b4fa","#a6e3a1"]},{id:"catppuccin-macchiato",label:"Catppuccin Macchiato",group:"dark",swatches:["#24273a","#1e2030","#363a4f","#c6a0f6","#8aadf4","#a6da95"]},{id:"catppuccin-frappe",label:"Catppuccin Frappe",group:"dark",swatches:["#303446","#292c3c","#414559","#ca9ee6","#8caaee","#a6d189"]},{id:"rose-pine",label:"Rose Pine",group:"dark",swatches:["#191724","#1f1d2e","#26233a","#c4a7e7","#31748f","#9ccfd8"]},{id:"rose-pine-moon",label:"Rose Pine Moon",group:"dark",swatches:["#232136","#2a273f","#393552","#c4a7e7","#3e8fb0","#9ccfd8"]},{id:"tokyo-night",label:"Tokyo Night",group:"dark",swatches:["#1a1b26","#24283b","#414868","#7aa2f7","#2ac3de","#9ece6a"]},{id:"nord",label:"Nord",group:"dark",swatches:["#2e3440","#3b4252","#434c5e","#88c0d0","#5e81ac","#a3be8c"]},{id:"one-dark",label:"One Dark",group:"dark",swatches:["#282c34","#21252b","#3a3f4b","#61afef","#c678dd","#98c379"]},{id:"dracula",label:"Dracula",group:"dark",swatches:["#282a36","#343746","#44475a","#ff79c6","#8be9fd","#50fa7b"]},{id:"monokai",label:"Monokai",group:"dark",swatches:["#272822","#2d2e27","#3e3d32","#66d9ef","#a1efe4","#a6e22e"]},{id:"gruvbox",label:"Gruvbox",group:"dark",swatches:["#282828","#3c3836","#504945","#fe8019","#83a598","#b8bb26"]},{id:"solarized-dark",label:"Solarized Dark",group:"dark",swatches:["#002b36","#073642","#0b4b5a","#268bd2","#2aa198","#859900"]},{id:"everforest-dark",label:"Everforest Dark",group:"dark",swatches:["#2b3339","#323c41","#3a464c","#a7c080","#7fbbb3","#a7c080"]},{id:"catppuccin-latte",label:"Catppuccin Latte",group:"light",swatches:["#eff1f5","#e6e9ef","#ccd0da","#8839ef","#1e66f5","#40a02b"]},{id:"rose-pine-dawn",label:"Rose Pine Dawn",group:"light",swatches:["#faf4ed","#fffaf3","#f2e9e1","#907aa9","#56949f","#286983"]},{id:"one-light",label:"One Light",group:"light",swatches:["#fafafa","#ffffff","#e5e5e6","#4078f2","#a626a4","#50a14f"]},{id:"everforest-light",label:"Everforest Light",group:"light",swatches:["#fdf6e3","#fffbef","#e8e0cc","#4f8f5a","#3a94c5","#4f8f5a"]},{id:"solarized-light",label:"Solarized Light",group:"light",swatches:["#fdf6e3","#eee8d5","#e3ddc9","#268bd2","#2aa198","#859900"]},{id:"light",label:"Light",group:"light",swatches:["#f7f7fb","#ffffff","#e6e8f0","#e94560","#2563eb","#16a34a"]}];hp.map(e=>({id:e.id,label:e.label}));function uy(e){return`theme-${String(e||"").trim()||"dark"}`}function uh(e){try{const t=document.documentElement,s=Array.from(t.classList).filter(a=>a.startsWith("theme-"));for(const a of s)t.classList.remove(a);t.classList.add(uy(e))}catch{}}const ou=[{id:"sm",label:"Small",scale:.9},{id:"md",label:"Medium",scale:1},{id:"lg",label:"Large",scale:1.1},{id:"xl",label:"Extra Large",scale:1.2}],lu=[{id:"compact",label:"Compact",density:.85},{id:"standard",label:"Standard",density:1},{id:"spacious",label:"Spacious",density:1.2}];function dy(e){const t=String(e).trim();return ou.find(s=>s.id===t)||ou[1]}function fy(e){const t=String(e).trim();return lu.find(s=>s.id===t)||lu[1]}function dh(e){try{const t=document.documentElement,s=dy(e.font_scale||"md"),a=fy(e.header_density||"standard");t.style.setProperty("--font-scale",String(s.scale)),t.style.setProperty("--header-density",String(a.density))}catch{}}const fh={md:"(max-width: 1023.98px)",lg:"(max-width: 1439.98px)"};function hy(e){try{return typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia(e).matches}catch{return!1}}function hh(e){const[t,s]=w.useState(()=>hy(e));return w.useEffect(()=>{if(typeof window>"u"||typeof window.matchMedia!="function")return;const a=window.matchMedia(e),l=()=>s(a.matches);return l(),typeof a.addEventListener=="function"?a.addEventListener("change",l):a.addListener(l),()=>{typeof a.removeEventListener=="function"?a.removeEventListener("change",l):a.removeListener(l)}},[e]),t}let xa=null;function py(e,t){const s=Math.max(0,Math.round(e));if(!(t.scale<=1.01))return{vvHeight:s,keyboardInset:0};const a=Math.max(0,Math.min(s,Math.round(t.height))),l=Math.max(0,Math.round(e-t.height-Math.max(0,t.offsetTop)));return{vvHeight:a,keyboardInset:l}}function my(){if(xa)return xa;if(typeof window>"u"||typeof document>"u")return()=>{};const e=window.visualViewport;if(!e)return()=>{};const t=document.documentElement;let s=0;const a=()=>{s=0;const{vvHeight:u,keyboardInset:d}=py(window.innerHeight,{height:e.height,offsetTop:e.offsetTop,scale:e.scale||1});t.style.setProperty("--vv-height",`${u}px`),t.style.setProperty("--keyboard-inset",`${d}px`)},l=()=>{s||(s=window.requestAnimationFrame(a))};return a(),e.addEventListener("resize",l),e.addEventListener("scroll",l),window.addEventListener("orientationchange",l),xa=()=>{e.removeEventListener("resize",l),e.removeEventListener("scroll",l),window.removeEventListener("orientationchange",l),s&&window.cancelAnimationFrame(s),t.style.removeProperty("--vv-height"),t.style.removeProperty("--keyboard-inset"),xa=null},xa}var Su=fp();function xi(...e){return e.filter(Boolean).join(" ")}function ts({value:e,options:t,placeholder:s="Select…",disabled:a=!1,loading:l=!1,searchable:u=!0,searchPlaceholder:d="Search…",allowCustom:f=!1,clearable:h=!1,minPopoverWidth:g=240,variant:y="panel",className:v,triggerClassName:x,ariaLabel:b,id:k,includeValueOption:C=!1,onOpen:S,customOptionLabel:A,validateCustomValue:$,onChange:T,renderOption:j,renderValue:L}){const z=w.useRef(null),V=w.useRef(null),P=w.useRef(null),ce=w.useRef(S),re=w.useId(),H=k||`af-select-${re.replace(/[^a-zA-Z0-9_-]/g,"")}`,W=`${H}-listbox`,[J,fe]=w.useState(!1),[ue,ye]=w.useState(""),[ve,q]=w.useState(0),[se,Q]=w.useState("bottom"),[E,F]=w.useState({left:0,top:0,width:0});w.useEffect(()=>{ce.current=S},[S]);const G=w.useMemo(()=>{if(!C)return t;const K=String(e??"").trim();return!K||t.some(me=>me.value===K)?t:[...t,{value:K,label:K}]},[C,t,e]),B=w.useMemo(()=>{const K=String(e??"");return G.find(me=>me.value===K)||null},[G,e]),oe=w.useMemo(()=>(B==null?void 0:B.label)||String(e||"").trim()||"",[B,e]),le=w.useMemo(()=>{const K=ue.trim().toLowerCase();return K?G.filter(me=>me.label.toLowerCase().includes(K)||me.value.toLowerCase().includes(K)):G},[G,ue]),he=w.useMemo(()=>{if(!f)return null;const K=ue.trim();if(!K||G.some(Ke=>Ke.value===K))return null;const Fe=($==null?void 0:$(K,{options:G}))||"";return{value:K,label:A?A(K):`Use "${K}"`,disabled:!!Fe,reason:Fe}},[f,A,G,ue,$]),Z=w.useMemo(()=>{const K=he?[he,...le]:le;if(K.length>0)return K;const me=String(e??"").trim();return l&&me?[{value:me,label:oe||me}]:K},[he,le,l,oe,e]),Ce=w.useCallback(()=>{const K=z.current;if(!K)return;const me=K.getBoundingClientRect(),Fe=Math.max(me.width,g),Ke=Math.max(8,Math.min(me.left,window.innerWidth-Fe-8)),He=window.innerHeight-me.bottom,ar=me.top,Tt=He>=220||He>=ar?"bottom":"top";Q(Tt);const An=Tt==="bottom"?me.bottom+6:me.top-6;F({left:Ke,top:An,width:Fe})},[g]),Ue=w.useCallback(()=>{fe(!1),ye("")},[]);w.useEffect(()=>{var K;J&&((K=ce.current)==null||K.call(ce))},[J]),w.useEffect(()=>{if(!J)return;Ce();const K=()=>Ce();return window.addEventListener("resize",K),window.addEventListener("scroll",K,!0),()=>{window.removeEventListener("resize",K),window.removeEventListener("scroll",K,!0)}},[J,Ce]),w.useEffect(()=>{if(!J)return;const K=me=>{var Ke,He;const Fe=me.target;Fe&&((Ke=z.current)!=null&&Ke.contains(Fe)||(He=V.current)!=null&&He.contains(Fe)||Ue())};return document.addEventListener("mousedown",K,!0),()=>document.removeEventListener("mousedown",K,!0)},[J,Ue]),w.useEffect(()=>{if(!J)return;const K=Math.max(0,Z.findIndex(me=>me.value===e));q(K===-1?0:K),u&&setTimeout(()=>{var me;return(me=P.current)==null?void 0:me.focus()},0)},[J,u,e,Z]);const ke=K=>{var Fe;const me=Z.find(Ke=>Ke.value===K);me!=null&&me.disabled||(T(K),Ue(),(Fe=z.current)==null||Fe.focus())},X=K=>{var me,Fe;if(K.key==="Escape")return K.preventDefault(),Ue(),(me=z.current)==null||me.focus(),!0;if(K.key==="Tab")return Ue(),(Fe=z.current)==null||Fe.focus(),!1;if(K.key==="ArrowDown")return K.preventDefault(),q(Ke=>Math.min(Ke+1,Math.max(0,Z.length-1))),!0;if(K.key==="ArrowUp")return K.preventDefault(),q(Ke=>Math.max(Ke-1,0)),!0;if(K.key==="Home")return K.preventDefault(),q(0),!0;if(K.key==="End")return K.preventDefault(),q(Math.max(0,Z.length-1)),!0;if(K.key==="Enter"){K.preventDefault();const Ke=Z[ve];return Ke&&ke(Ke.value),!0}return!1},ee=K=>{if(!a){if(J){if(X(K))return;if(K.key===" "&&!u){K.preventDefault();const me=Z[ve];me&&ke(me.value)}return}(K.key==="Enter"||K.key===" "||K.key==="ArrowDown"||K.key==="ArrowUp")&&(K.preventDefault(),fe(!0))}},pe=!!String(e||"").trim(),De=pe?oe:s,we=he!=null&&he.disabled?he.reason||"Unavailable":"",Pe=J&&Z.length>0?`${H}-opt-${ve}`:void 0,Ve=i.jsx("span",{className:xi("af-select-value",!pe&&"af-select-value--placeholder"),children:l&&!pe?"Loading…":De}),rt=L?L(B,String(e||"")):Ve;return i.jsxs("span",{className:xi("af-select",y==="pin"?"af-select--pin":"af-select--panel",v),children:[i.jsxs("button",{ref:z,id:H,type:"button",className:xi("af-select-trigger",h&&pe&&"af-select-trigger--clearable",x),disabled:a,onMouseDown:K=>K.stopPropagation(),onClick:K=>{K.stopPropagation(),!a&&fe(me=>!me)},onKeyDown:ee,role:u?void 0:"combobox","aria-haspopup":"listbox","aria-expanded":J,"aria-controls":J?W:void 0,"aria-activedescendant":u?void 0:Pe,"aria-label":b,children:[rt,i.jsx("span",{className:xi("af-select-caret",J&&"af-select-caret--open"),children:"▾"})]}),h&&pe?i.jsx("button",{type:"button",className:"af-select-clear-btn","aria-label":"Clear selection",disabled:a,onMouseDown:K=>{K.preventDefault(),K.stopPropagation()},onClick:K=>{var me;K.preventDefault(),K.stopPropagation(),T(""),Ue(),(me=z.current)==null||me.focus()},title:"Clear",children:"×"}):null,J?Su.createPortal(i.jsxs("div",{ref:V,className:xi("af-select-popover",se==="top"&&"af-select-popover--top"),style:{position:"fixed",left:`${E.left}px`,top:`${E.top}px`,width:`${E.width}px`},onMouseDown:K=>K.stopPropagation(),onClick:K=>K.stopPropagation(),onWheel:K=>K.stopPropagation(),onKeyDown:X,tabIndex:-1,children:[u?i.jsxs("div",{className:"af-select-search",children:[i.jsx("input",{ref:P,className:"af-select-search-input",value:ue,onChange:K=>ye(K.target.value),placeholder:d,onKeyDown:X,role:"combobox","aria-expanded":!0,"aria-controls":W,"aria-activedescendant":Pe,"aria-invalid":!!we,"aria-describedby":we?`${H}-custom-error`:void 0}),we?i.jsx("div",{id:`${H}-custom-error`,className:"af-select-custom-error",role:"alert",children:we}):null]}):null,i.jsx("div",{className:"af-select-options",role:"listbox",id:W,"aria-label":b,children:l&&Z.length===0?i.jsx("div",{className:"af-select-empty",children:"Loading…"}):Z.length===0?i.jsx("div",{className:"af-select-empty",children:"No results"}):Z.map((K,me)=>{var An;const Fe=K.value===e,Ke=me===ve,He=String(K.group||"").trim(),ar=me>0?String(((An=Z[me-1])==null?void 0:An.group)||"").trim():"",Tt=!!He&&He!==ar;return i.jsxs(ft.Fragment,{children:[Tt?i.jsx("div",{className:"af-select-group",role:"presentation",children:He}):null,i.jsx("div",{id:`${H}-opt-${me}`,role:"option","aria-selected":Fe,className:xi("af-select-option",Fe&&"af-select-option--selected",Ke&&"af-select-option--highlighted",K.disabled&&"af-select-option--disabled"),title:K.disabled?K.reason||"Unavailable":void 0,onMouseEnter:()=>q(me),onMouseDown:Tn=>{Tn.preventDefault(),Tn.stopPropagation()},onClick:()=>ke(K.value),"aria-disabled":K.disabled?!0:void 0,children:j?j(K,{selected:Fe,highlighted:Ke}):i.jsxs(i.Fragment,{children:[i.jsxs("span",{className:"af-select-option-label",children:[i.jsx("span",{children:K.label}),K.reason?i.jsx("small",{className:"af-select-option-reason",children:K.reason}):null]}),Fe?i.jsx("span",{className:"af-select-check",children:"✓"}):null]})})]},K.value)})})]}),document.body):null]})}function gy(e){const t=new Set,s=[];for(const a of e||[]){if(!a||typeof a!="object")continue;const l=String(a.name||"").trim();!l||t.has(l)||(t.add(l),s.push({name:l,display_name:typeof a.display_name=="string"?a.display_name:void 0}))}return s.sort((a,l)=>a.name.localeCompare(l.name)),s}function yy(e){const t=new Set,s=[];for(const a of e||[]){const l=String(a||"").trim();!l||t.has(l)||(t.add(l),s.push(l))}return s.sort(),s}function wy(e){const t=e.disabled===!0,s=e.layout||"stack",a=e.allowGatewayDefault!==!1,l=String(e.gatewayDefaultLabel||"(gateway default)"),u=String(e.providerLabel||"Provider"),d=String(e.modelLabel||"Model"),f=String(e.providerPlaceholder||"(select)"),h=String(e.modelPlaceholder||"(select)"),g=String(e.provider||"").trim(),y=String(e.model||"").trim(),v=gy(e.providers),x=yy(e.models),b=t||!!e.loadingProviders,k=t||!!e.loadingModels,C=[...a?[{value:"",label:l}]:[],...v.map(A=>({value:A.name,label:A.display_name?`${A.display_name} (${A.name})`:A.name}))],S=[...a?[{value:"",label:l}]:[],...x.map(A=>({value:A,label:A}))];return i.jsxs("div",{className:e.className,style:s==="row"?{display:"flex",gap:"10px",flexWrap:"wrap",alignItems:"flex-start"}:{display:"flex",flexDirection:"column",gap:"10px"},children:[i.jsxs("div",{style:s==="row"?{flex:"1 1 260px",minWidth:240}:void 0,children:[i.jsx("label",{children:u}),i.jsx(ts,{value:g,options:C,placeholder:a?l:f,disabled:b,loading:!!e.loadingProviders,searchable:!0,allowCustom:e.allowCustomProvider===!0,clearable:a,variant:"panel",triggerClassName:e.selectClassName,ariaLabel:u,onChange:A=>e.onChange({provider:String(A||"").trim(),model:""})}),e.loadingProviders?i.jsx("div",{className:"mono muted",style:{fontSize:"12px",marginTop:"6px"},children:"Loading providers…"}):null,e.providerError?i.jsx("div",{className:"mono",style:{color:"var(--error)",fontSize:"12px",marginTop:"6px"},children:e.providerError}):null]}),i.jsxs("div",{style:s==="row"?{flex:"1 1 260px",minWidth:240}:void 0,children:[i.jsx("label",{children:d}),i.jsx(ts,{value:y,options:S,placeholder:a?l:h,disabled:k,loading:!!e.loadingModels,searchable:!0,allowCustom:e.allowCustomModel===!0,clearable:a,variant:"panel",triggerClassName:e.selectClassName,ariaLabel:d,onChange:A=>e.onChange({provider:g,model:String(A||"").trim()})}),e.loadingModels?i.jsx("div",{className:"mono muted",style:{fontSize:"12px",marginTop:"6px"},children:"Loading models…"}):null,e.modelError?i.jsx("div",{className:"mono",style:{color:"var(--error)",fontSize:"12px",marginTop:"6px"},children:e.modelError}):null]})]})}function pp(e){if(e===!1||e&&typeof e=="object"&&e.mode==="off")return!1;if(!e||typeof e!="object")return;const t=e;if(!(t.mode!=="native_mtp"||!Number.isInteger(t.num_draft_tokens)||Number(t.num_draft_tokens)<1))return{mode:"native_mtp",num_draft_tokens:Number(t.num_draft_tokens),require_acceleration:!0}}function vy(e){var s;const t=(s=e==null?void 0:e.execution)==null?void 0:s.speculation;return!t||typeof t.supported!="boolean"?null:{supported:t.supported,ready:typeof t.ready=="boolean"?t.ready:null,reason:typeof t.reason=="string"?t.reason:null,supported_depths:t.supported&&Array.isArray(t.supported_depths)?[...new Set(t.supported_depths.filter(a=>typeof a=="number"&&Number.isInteger(a)&&a>0))]:[],default:Object.prototype.hasOwnProperty.call(t,"effective_default")?t.effective_default:t.default,requires_reload:typeof t.requires_reload=="boolean"?t.requires_reload:null}}function ph(e){const t=pp(e);return t===!1?"off":t?String(t.num_draft_tokens):""}function _y(e){if(e==="off")return!1;if(!(!/^\d+$/.test(e)||Number(e)<1))return{mode:"native_mtp",num_draft_tokens:Number(e),require_acceleration:!0}}function xy(e){const t=vy(e.capabilities),s=ph(e.value),a=(t==null?void 0:t.supported_depths.map(String))||[],l=ph(t==null?void 0:t.default),u=e.inheritLabel||"Workflow / Gateway default",d=l?`${u} (${l==="off"?"Off":`depth ${l}`})`:u,f=e.error||(e.loading?"Checking MTP capability…":t?t.reason||(t.requires_reload?"Model reload required before MTP can run.":t.ready===!1?"MTP is supported but not ready on this instance.":t.ready===null&&t.supported?"MTP support verified; loaded-instance readiness is unknown.":t.supported?"":"MTP is not supported on this model/backend."):"MTP capability unknown; no depth is assumed.");return i.jsxs("div",{className:"af-pmp__speculation",children:[i.jsx("label",{children:"MTP depth"}),i.jsx(ts,{ariaLabel:"MTP depth",value:s,placeholder:d,disabled:e.disabled||e.loading,options:[{value:"",label:d},{value:"off",label:"Off"},...a.map(h=>({value:h,label:`Depth ${h}`})),...s&&s!=="off"&&!a.includes(s)?[{value:s,label:`Depth ${s} (saved; not available)`}]:[]],onChange:h=>e.onChange(_y(h))}),f?i.jsx("div",{role:"status",className:"af-pmp__hint",children:f}):null]})}function Nu(e){var q,se;const t=e.disabled===!0,s=e.value||{provider:"",model:""},a=!String(s.provider||"").trim()&&!String(s.model||"").trim(),[l,u]=w.useState(!a),d=a&&!l,f=w.useRef(a);w.useEffect(()=>{a&&!f.current&&u(!1),f.current=a},[a]);const[h,g]=w.useState([]),[y,v]=w.useState(!1),[x,b]=w.useState(""),[k,C]=w.useState([]),[S,A]=w.useState(!1),[$,T]=w.useState(""),j=w.useRef(e);j.current=e,w.useEffect(()=>{if(d||t)return;let Q=!0;return v(!0),(async()=>{try{const E=await j.current.fetchProviders();if(!Q)return;g(Array.isArray(E)?E:[]),b("")}catch(E){if(!Q)return;g([]),b(`#FALLBACK provider discovery failed: ${String((E==null?void 0:E.message)||E)}`)}finally{Q&&v(!1)}})(),()=>{Q=!1}},[d,t]);const L=String(s.provider||"").trim();w.useEffect(()=>{if(!L||t){C([]),T(""),A(!1);return}let Q=!0;return C([]),A(!0),T(""),(async()=>{try{const E=await j.current.fetchModels(L);if(!Q)return;C(Array.isArray(E)?E:[])}catch(E){if(!Q)return;C([]),T(`#FALLBACK model discovery failed: ${String((E==null?void 0:E.message)||E)}`)}finally{Q&&A(!1)}})(),()=>{Q=!1}},[L,t]);const z=w.useMemo(()=>{const Q=[...h];return L&&!Q.some(E=>E.name===L)&&Q.unshift({name:L}),Q},[h,L]),V=String(s.model||"").trim(),P=w.useMemo(()=>{const Q=[...k];return V&&!Q.includes(V)&&Q.unshift(V),Q},[k,V]),ce=e.defaultModeLabel||"Gateway default",re=e.customModeLabel||"Custom",H=L||((q=e.effectiveDefault)==null?void 0:q.provider)||"",W=V||(L?"":(se=e.effectiveDefault)==null?void 0:se.model)||"",[J,fe]=w.useState({levels:[],error:"",loading:!1}),ue=!!e.fetchModelCapabilities,[ye,ve]=w.useState();return w.useEffect(()=>{let Q=!0;if(ve(void 0),fe({levels:[],error:"",loading:ue&&!!W}),!(!ue||!W||t))return j.current.fetchModelCapabilities(W,H).then(E=>{var oe;if(!Q)return;if(E!=null&&E.error)throw new Error(String(E.error));ve(E);const F=(E==null?void 0:E.capabilities)||E||{},G=F.reasoning_levels||F.thinking_levels,B=Array.isArray(G)?[...new Set(G.filter(le=>typeof le=="string"&&!!le.trim()))]:[];!B.length&&F.thinking_support===!0&&((oe=F.thinking_control)!=null&&oe.prompt_disable_token)&&B.push("off","auto"),fe({levels:B,error:"",loading:!1})}).catch(E=>{Q&&fe({levels:[],error:`Reasoning options unavailable: ${String((E==null?void 0:E.message)||E)}`,loading:!1})}),()=>{Q=!1}},[H,W,ue,t]),i.jsxs("div",{className:`af-pmp${e.className?` ${e.className}`:""}`,children:[i.jsxs("div",{className:"af-pmp__seg",role:"tablist","aria-label":"Provider mode",children:[i.jsx("button",{type:"button",role:"tab","aria-selected":d,className:`af-pmp__seg-btn${d?" is-active":""}`,onClick:()=>{u(!1),e.onChange({...s,provider:"",model:"",...ue?{reasoning:""}:{}})},disabled:t,children:ce}),i.jsx("button",{type:"button",role:"tab","aria-selected":!d,className:`af-pmp__seg-btn${d?"":" is-active"}`,onClick:()=>{u(!0)},disabled:t,children:re})]}),d?i.jsx("div",{className:"af-pmp__hint",children:e.defaultHint||"The gateway picks its configured default provider and model for this task."}):i.jsx(wy,{provider:L,model:V,providers:z,models:P,disabled:t,loadingProviders:y,loadingModels:S,providerError:x||void 0,modelError:$||void 0,providerLabel:e.providerLabel,modelLabel:e.modelLabel,allowGatewayDefault:!1,allowCustomProvider:e.allowCustom!==!1,allowCustomModel:e.allowCustom!==!1,onChange:Q=>e.onChange({...s,provider:Q.provider,model:Q.model,...ue?{reasoning:""}:{}})}),ue&&(J.levels.length>0||s.reasoning)?i.jsxs("div",{className:"af-pmp__reasoning",children:[i.jsx("label",{children:e.reasoningLabel||"Reasoning effort"}),i.jsx(ts,{ariaLabel:e.reasoningLabel||"Reasoning effort",placeholder:"Workflow / Gateway default",value:s.reasoning||"",options:[{value:"",label:"Workflow / Gateway default"},...J.levels.map(Q=>({value:Q,label:Q})),...s.reasoning&&!J.levels.includes(s.reasoning)?[{value:s.reasoning,label:`${s.reasoning} (saved; not advertised)`}]:[]],disabled:t||J.loading,onChange:Q=>e.onChange({...s,reasoning:Q})})]}):null,J.error?i.jsx("div",{role:"status",className:"af-pmp__hint",children:J.error}):null,e.enableSpeculation?i.jsx(xy,{value:s.speculation,onChange:Q=>e.onChange({...s,speculation:Q}),capabilities:ye,disabled:t,loading:J.loading,error:J.error?J.error.replace("Reasoning options","MTP options"):void 0}):null]})}function mh(...e){return e.filter(Boolean).join(" ")}function by({kicker:e="AbstractGateway connection",title:t="Connect to AbstractGateway",description:s="Sign in with the Gateway user token assigned by the Gateway admin.",statusLabel:a="Not signed in",statusTone:l="neutral",showGatewayUrl:u=!1,gatewayUrl:d="",gatewayUrlPlaceholder:f="http://127.0.0.1:8080",onGatewayUrlChange:h,userId:g,userPlaceholder:y="admin",onUserIdChange:v,token:x,tokenPlaceholder:b="Paste Gateway user token",showToken:k=!1,onTokenChange:C,onShowTokenChange:S,remember:A=!1,rememberLabel:$="Remember this browser",onRememberChange:T,loading:j=!1,submitting:L=!1,submitDisabled:z=!1,submitLabel:V="Sign in",submittingLabel:P="Signing in...",closeLabel:ce="Close",signOutLabel:re="Sign out",showClose:H=!1,showSignOut:W=!1,error:J,message:fe,className:ue,onSubmit:ye,onClose:ve,onSignOut:q}){const se=j||L,Q=se||z||!String(g||"").trim()||!String(x||"").trim(),E=F=>{F.preventDefault(),!Q&&ye()};return i.jsxs("form",{className:mh("af-gateway-signin",ue),onSubmit:E,children:[i.jsxs("div",{className:"af-gateway-signin__hero",children:[i.jsxs("div",{children:[i.jsx("div",{className:"af-gateway-signin__kicker",children:e}),i.jsx("h2",{children:t}),s?i.jsx("p",{children:s}):null]}),i.jsx("div",{className:"af-gateway-signin__mark","aria-hidden":"true",children:"↔"})]}),i.jsx("div",{className:"af-gateway-signin__status-row",children:i.jsx("span",{className:mh("af-gateway-signin__status",`af-gateway-signin__status--${l}`),children:a})}),i.jsxs("div",{className:"af-gateway-signin__form",children:[u?i.jsxs(i.Fragment,{children:[i.jsx("label",{className:"af-gateway-signin__label",htmlFor:"gateway-session-url",children:"Gateway URL"}),i.jsx("input",{id:"gateway-session-url",value:d,onChange:F=>h==null?void 0:h(F.target.value),placeholder:f,autoComplete:"url",disabled:se})]}):null,i.jsx("label",{className:"af-gateway-signin__label",htmlFor:"gateway-session-user",children:"Gateway user"}),i.jsx("input",{id:"gateway-session-user",value:g,onChange:F=>v(F.target.value),placeholder:y,autoComplete:"username",disabled:se}),i.jsx("label",{className:"af-gateway-signin__label",htmlFor:"gateway-session-token",children:"Gateway token"}),i.jsxs("div",{className:"af-gateway-signin__token-input",children:[i.jsx("input",{id:"gateway-session-token",type:k?"text":"password",value:x,onChange:F=>C(F.target.value),placeholder:b,autoComplete:"current-password",disabled:se}),i.jsx("button",{className:"af-gateway-signin__secondary",type:"button",onClick:()=>S==null?void 0:S(!k),disabled:se,children:k?"Hide":"Show"})]}),i.jsxs("label",{className:"af-gateway-signin__checkbox",children:[i.jsx("input",{type:"checkbox",checked:!!A,onChange:F=>T==null?void 0:T(F.target.checked),disabled:se}),$]})]}),J?i.jsx("div",{className:"af-gateway-signin__message af-gateway-signin__message--error",children:J}):null,!J&&fe?i.jsx("div",{className:"af-gateway-signin__message af-gateway-signin__message--ok",children:fe}):null,i.jsxs("div",{className:"af-gateway-signin__actions",children:[H?i.jsx("button",{className:"af-gateway-signin__secondary",type:"button",onClick:ve,disabled:se,children:ce}):null,W?i.jsx("button",{className:"af-gateway-signin__secondary",type:"button",onClick:()=>void(q==null?void 0:q()),disabled:se,children:re}):null,i.jsx("button",{className:"af-gateway-signin__primary",type:"submit",disabled:Q,children:L?P:V})]})]})}function ky(e){return e==="light"?"Light":"Dark"}function jy(e){const t=e.themes&&e.themes.length?e.themes:hp,s=e.showSwatches!==!1,a=e.variant||"panel",l=w.useMemo(()=>{const d={};for(const f of t)d[f.id]=f;return d},[t]),u=w.useMemo(()=>t.map(d=>({value:d.id,label:d.label,group:ky(d.group)})),[t]);return i.jsx(ts,{value:e.value,options:u,placeholder:e.placeholder||"Select theme…",disabled:e.disabled===!0,searchable:!0,allowCustom:!1,clearable:!1,variant:a,className:e.className,triggerClassName:e.triggerClassName,onChange:d=>e.onChange(String(d||"").trim()),renderValue:(d,f)=>{const h=String(f||"").trim(),g=l[h],y=(g==null?void 0:g.label)||h||e.placeholder||"Select theme…",v=(g==null?void 0:g.swatches)||null,x=!h;return i.jsxs("span",{className:"af-theme-value",children:[i.jsx("span",{className:`af-theme-label ${x?"af-theme-label--placeholder":""}`.trim(),children:y}),s&&v?i.jsx("span",{className:"af-theme-swatches","aria-hidden":"true",children:v.map((b,k)=>i.jsx("span",{className:"af-theme-swatch",style:{background:b}},`${h}:${k}`))}):null]})},renderOption:(d,f)=>{const h=String(d.value||"").trim(),g=l[h],y=(g==null?void 0:g.swatches)||null;return i.jsxs(i.Fragment,{children:[i.jsx("span",{className:"af-theme-option-label",children:d.label}),i.jsxs("span",{className:"af-theme-option-right",children:[s&&y?i.jsx("span",{className:"af-theme-swatches","aria-hidden":"true",children:y.map((v,x)=>i.jsx("span",{className:"af-theme-swatch",style:{background:v}},`${h}:${x}`))}):null,f.selected?i.jsx("span",{className:"af-select-check",children:"✓"}):null]})]})}})}function Sy(e){const t=e.scales&&e.scales.length?e.scales:ou,s=e.variant||"panel",a=w.useMemo(()=>t.map(l=>({value:l.id,label:l.label})),[t]);return i.jsx(ts,{value:e.value,options:a,placeholder:e.placeholder||"Font size…",disabled:e.disabled===!0,searchable:!1,allowCustom:!1,clearable:!1,variant:s,className:e.className,triggerClassName:e.triggerClassName,onChange:l=>e.onChange(String(l||"").trim())})}function Ny(e){const t=e.densities&&e.densities.length?e.densities:lu,s=e.variant||"panel",a=w.useMemo(()=>t.map(l=>({value:l.id,label:l.label})),[t]);return i.jsx(ts,{value:e.value,options:a,placeholder:e.placeholder||"Header size…",disabled:e.disabled===!0,searchable:!1,allowCustom:!1,clearable:!1,variant:s,className:e.className,triggerClassName:e.triggerClassName,onChange:l=>e.onChange(String(l||"").trim())})}const Cy=new Set(["board","inbox","server","agent","playCircle","list","gear"]);function Ey(e){switch(e){case"chat":return i.jsx("path",{d:"M21 15a2 2 0 0 1-2 2H8l-5 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"});case"plus":return i.jsxs(i.Fragment,{children:[i.jsx("path",{d:"M12 5v14"}),i.jsx("path",{d:"M5 12h14"})]});case"history":return i.jsxs(i.Fragment,{children:[i.jsx("circle",{cx:"12",cy:"12",r:"9"}),i.jsx("path",{d:"M12 7v5l3 3"})]});case"refresh":return i.jsxs(i.Fragment,{children:[i.jsx("path",{d:"M21 12a9 9 0 0 0-15.5-6.4L3 8"}),i.jsx("path",{d:"M3 3v5h5"}),i.jsx("path",{d:"M3 12a9 9 0 0 0 15.5 6.4L21 16"}),i.jsx("path",{d:"M21 21v-5h-5"})]});case"settings":return i.jsxs(i.Fragment,{children:[i.jsx("path",{d:"M4 6h16"}),i.jsx("circle",{cx:"8",cy:"6",r:"2"}),i.jsx("path",{d:"M4 12h16"}),i.jsx("circle",{cx:"16",cy:"12",r:"2"}),i.jsx("path",{d:"M4 18h16"}),i.jsx("circle",{cx:"10",cy:"18",r:"2"})]});case"user":return i.jsxs(i.Fragment,{children:[i.jsx("circle",{cx:"12",cy:"8",r:"4"}),i.jsx("path",{d:"M4 21a8 8 0 0 1 16 0"})]});case"bot":return i.jsxs(i.Fragment,{children:[i.jsx("path",{d:"M12 2v3"}),i.jsx("rect",{x:"5",y:"6",width:"14",height:"14",rx:"3"}),i.jsx("circle",{cx:"9",cy:"13",r:"1",fill:"currentColor",stroke:"none"}),i.jsx("circle",{cx:"15",cy:"13",r:"1",fill:"currentColor",stroke:"none"}),i.jsx("path",{d:"M9 17h6"})]});case"paperclip":return i.jsx("path",{d:"M21.44 11.05l-9.19 9.19a5.5 5.5 0 0 1-7.78-7.78l9.19-9.19a3.5 3.5 0 0 1 4.95 4.95l-9.2 9.19a1.5 1.5 0 0 1-2.12-2.12l8.49-8.48"});case"mic":return i.jsxs(i.Fragment,{children:[i.jsx("path",{d:"M12 14a3 3 0 0 0 3-3V5a3 3 0 0 0-6 0v6a3 3 0 0 0 3 3z"}),i.jsx("path",{d:"M19 11a7 7 0 0 1-14 0"}),i.jsx("path",{d:"M12 18v4"}),i.jsx("path",{d:"M8 22h8"})]});case"speaker":return i.jsxs(i.Fragment,{children:[i.jsx("path",{d:"M11 5L6 9H2v6h4l5 4V5z"}),i.jsx("path",{d:"M15.5 8.5a5 5 0 0 1 0 7"}),i.jsx("path",{d:"M18 6a9 9 0 0 1 0 12"})]});case"pause":return i.jsxs(i.Fragment,{children:[i.jsx("rect",{x:"6",y:"4",width:"4",height:"16",rx:"1",fill:"currentColor",stroke:"none"}),i.jsx("rect",{x:"14",y:"4",width:"4",height:"16",rx:"1",fill:"currentColor",stroke:"none"})]});case"terminal":return i.jsxs(i.Fragment,{children:[i.jsx("rect",{x:"3",y:"4",width:"18",height:"16",rx:"2",ry:"2"}),i.jsx("path",{d:"M7 9l3 3-3 3"}),i.jsx("path",{d:"M12 15h5"})]});case"edit":return i.jsxs(i.Fragment,{children:[i.jsx("path",{d:"M12 20h9"}),i.jsx("path",{d:"M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4 12.5-12.5z"})]});case"download":return i.jsxs(i.Fragment,{children:[i.jsx("path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}),i.jsx("path",{d:"M7 10l5 5 5-5"}),i.jsx("path",{d:"M12 15V3"})]});case"loader":return i.jsx("path",{d:"M21 12a9 9 0 1 1-3.3-6.9"});case"info":return i.jsxs(i.Fragment,{children:[i.jsx("circle",{cx:"12",cy:"12",r:"10"}),i.jsx("path",{d:"M12 16v-4"}),i.jsx("circle",{cx:"12",cy:"8",r:"0.75",fill:"currentColor",stroke:"none"})]});case"warning":return i.jsxs(i.Fragment,{children:[i.jsx("path",{d:"M12 3l10 18H2L12 3z"}),i.jsx("path",{d:"M12 9v4"}),i.jsx("circle",{cx:"12",cy:"17",r:"0.75",fill:"currentColor",stroke:"none"})]});case"error":return i.jsxs(i.Fragment,{children:[i.jsx("circle",{cx:"12",cy:"12",r:"10"}),i.jsx("path",{d:"M15 9l-6 6"}),i.jsx("path",{d:"M9 9l6 6"})]});case"copy":return i.jsxs(i.Fragment,{children:[i.jsx("rect",{x:"9",y:"9",width:"13",height:"13",rx:"2"}),i.jsx("path",{d:"M5 15V5a2 2 0 0 1 2-2h10"})]});case"check":return i.jsx("path",{d:"M20 6L9 17l-5-5"});case"x":return i.jsxs(i.Fragment,{children:[i.jsx("path",{d:"M18 6L6 18"}),i.jsx("path",{d:"M6 6l12 12"})]});case"chevronDown":return i.jsx("path",{d:"M6 9l6 6 6-6"});case"chevronRight":return i.jsx("path",{d:"M9 18l6-6-6-6"});case"trash":return i.jsxs(i.Fragment,{children:[i.jsx("path",{d:"M3 6h18"}),i.jsx("path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"}),i.jsx("path",{d:"M6 6l1 16h10l1-16"}),i.jsx("path",{d:"M10 11v6"}),i.jsx("path",{d:"M14 11v6"})]});case"send":return i.jsxs(i.Fragment,{children:[i.jsx("path",{d:"M22 2L11 13"}),i.jsx("path",{d:"M22 2L15 22l-4-9-9-4 20-7z"})]});case"thumbsUp":return i.jsxs(i.Fragment,{children:[i.jsx("path",{d:"M7 10v11"}),i.jsx("path",{d:"M7 10l4.5-8a2 2 0 0 1 3.6 1.5L14 8h5.2a2 2 0 0 1 2 2.4l-1.6 8a2 2 0 0 1-2 1.6H7"})]});case"thumbsDown":return i.jsxs(i.Fragment,{children:[i.jsx("path",{d:"M17 14V3"}),i.jsx("path",{d:"M17 14l-4.5 8a2 2 0 0 1-3.6-1.5L10 16H4.8a2 2 0 0 1-2-2.4l1.6-8a2 2 0 0 1 2-1.6H17"})]});case"thumbsUpFilled":return i.jsxs(i.Fragment,{children:[i.jsx("path",{d:"M7 10v11"}),i.jsx("path",{d:"M7 10l4.5-8a2 2 0 0 1 3.6 1.5L14 8h5.2a2 2 0 0 1 2 2.4l-1.6 8a2 2 0 0 1-2 1.6H7z",fill:"currentColor",stroke:"none"})]});case"thumbsDownFilled":return i.jsxs(i.Fragment,{children:[i.jsx("path",{d:"M17 14V3"}),i.jsx("path",{d:"M17 14l-4.5 8a2 2 0 0 1-3.6-1.5L10 16H4.8a2 2 0 0 1-2-2.4l1.6-8a2 2 0 0 1 2-1.6H17z",fill:"currentColor",stroke:"none"})]});case"board":return i.jsxs(i.Fragment,{children:[i.jsx("rect",{x:"1.5",y:"2",width:"3.6",height:"12",rx:"1"}),i.jsx("rect",{x:"6.2",y:"2",width:"3.6",height:"8.5",rx:"1"}),i.jsx("rect",{x:"10.9",y:"2",width:"3.6",height:"5.5",rx:"1"})]});case"inbox":return i.jsxs(i.Fragment,{children:[i.jsx("path",{d:"M2 9.5 L4 3.5 h8 l2 6"}),i.jsx("path",{d:"M2 9.5 v3 h12 v-3"}),i.jsx("path",{d:"M2 9.5 h3.4 l1 1.6 h3.2 l1-1.6 H14"})]});case"server":return i.jsxs(i.Fragment,{children:[i.jsx("rect",{x:"2",y:"2.5",width:"12",height:"4.6",rx:"1.2"}),i.jsx("rect",{x:"2",y:"8.9",width:"12",height:"4.6",rx:"1.2"}),i.jsx("circle",{cx:"4.6",cy:"4.8",r:"0.8",fill:"currentColor",stroke:"none"}),i.jsx("circle",{cx:"4.6",cy:"11.2",r:"0.8",fill:"currentColor",stroke:"none"})]});case"agent":return i.jsxs(i.Fragment,{children:[i.jsx("rect",{x:"3",y:"4.5",width:"10",height:"8",rx:"2"}),i.jsx("path",{d:"M8 4.5V2.2"}),i.jsx("circle",{cx:"8",cy:"1.8",r:"0.9",fill:"currentColor",stroke:"none"}),i.jsx("circle",{cx:"5.8",cy:"8.4",r:"0.9",fill:"currentColor",stroke:"none"}),i.jsx("circle",{cx:"10.2",cy:"8.4",r:"0.9",fill:"currentColor",stroke:"none"})]});case"playCircle":return i.jsxs(i.Fragment,{children:[i.jsx("circle",{cx:"8",cy:"8",r:"6.2"}),i.jsx("path",{d:"M6.5 5.6 L11 8 L6.5 10.4 Z",fill:"currentColor",stroke:"none"})]});case"list":return i.jsxs(i.Fragment,{children:[i.jsx("path",{d:"M2.5 4h11"}),i.jsx("path",{d:"M2.5 8h11"}),i.jsx("path",{d:"M2.5 12h7"})]});case"gear":return i.jsxs(i.Fragment,{children:[i.jsx("circle",{cx:"8",cy:"8",r:"2.2"}),i.jsx("path",{d:"M8 1.6v2"}),i.jsx("path",{d:"M8 12.4v2"}),i.jsx("path",{d:"M1.6 8h2"}),i.jsx("path",{d:"M12.4 8h2"}),i.jsx("path",{d:"M3.5 3.5l1.4 1.4"}),i.jsx("path",{d:"M11.1 11.1l1.4 1.4"}),i.jsx("path",{d:"M12.5 3.5l-1.4 1.4"}),i.jsx("path",{d:"M4.9 11.1l-1.4 1.4"})]});case"sparkle":return i.jsxs(i.Fragment,{children:[i.jsx("path",{d:"M12 3l1.9 5.1L19 10l-5.1 1.9L12 17l-1.9-5.1L5 10l5.1-1.9z"}),i.jsx("path",{d:"M18.5 15.5l.8 2.2 2.2.8-2.2.8-.8 2.2-.8-2.2-2.2-.8 2.2-.8z"})]});case"contrast":return i.jsxs(i.Fragment,{children:[i.jsx("circle",{cx:"12",cy:"12",r:"9"}),i.jsx("path",{d:"M12 3a9 9 0 0 1 0 18z",fill:"currentColor",stroke:"none"})]});case"logout":return i.jsxs(i.Fragment,{children:[i.jsx("path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4"}),i.jsx("path",{d:"M16 17l5-5-5-5"}),i.jsx("path",{d:"M21 12H9"})]});case"play":return i.jsx("path",{d:"M7 4.5v15a1 1 0 0 0 1.5.86l12-7.5a1 1 0 0 0 0-1.72l-12-7.5A1 1 0 0 0 7 4.5z",fill:"currentColor",stroke:"none"});case"stop":return i.jsx("rect",{x:"5",y:"5",width:"14",height:"14",rx:"2",fill:"currentColor",stroke:"none"});case"folder":return i.jsx("path",{d:"M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z"});case"file":return i.jsxs(i.Fragment,{children:[i.jsx("path",{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"}),i.jsx("path",{d:"M14 2v6h6"})]});case"archive":return i.jsxs(i.Fragment,{children:[i.jsx("rect",{x:"2",y:"3",width:"20",height:"5",rx:"1"}),i.jsx("path",{d:"M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8"}),i.jsx("path",{d:"M10 12h4"})]});case"clock":return i.jsxs(i.Fragment,{children:[i.jsx("circle",{cx:"12",cy:"12",r:"10"}),i.jsx("path",{d:"M12 6v6h4"})]});default:return null}}function ie({name:e,size:t=16,className:s,title:a,...l}){const u=a?void 0:!0,d=Cy.has(e);return i.jsxs("svg",{width:t,height:t,viewBox:d?"0 0 16 16":"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:d?1.4:2,strokeLinecap:"round",strokeLinejoin:"round",className:s,"aria-hidden":u,role:a?"img":"presentation",...l,children:[a?i.jsx("title",{children:a}):null,Ey(e)]})}const el="api/gateway",Oa="api/connection/gateway";function Se(e){const t=String(e||"");if(t.startsWith("/"))throw new Error(`gatewayApiPath takes a route relative to the gateway API, got ${JSON.stringify(t)}.`);return t?`${el}/${t}`:el}function Xe(e,t){const s=String(t||"");if(s.startsWith("/"))throw new Error(`joinBaseUrl takes a relative path, got ${JSON.stringify(s)}.`);let a=String(e??"");for(;a.endsWith("/");)a=a.slice(0,-1);return a?`${a}/${s}`:s}function $y(e){const t=String(e||""),s=`/${el}/`;if(!t.startsWith(s)||t.length===s.length)throw new Error(`Not a gateway API path: ${JSON.stringify(t)} (expected ${JSON.stringify(s)}…).`);const a=t.slice(s.length).split(/[?#]/,1)[0];if(/\\|%2f|%5c/i.test(a))throw new Error(`Not a gateway API path: ${JSON.stringify(t)} (encoded slash or backslash).`);for(const l of a.split("/")){const u=l.replace(/%2e/gi,".");if(u==="."||u==="..")throw new Error(`Not a gateway API path: ${JSON.stringify(t)} (a "." or ".." segment).`)}return t.slice(1)}function Ay(e){return!String(e.unavailableReason||"").trim()&&!e.busy}function Ty(e){return Ay(e)?!e.checked:null}let Ry=0;function Ps(e){const{label:t,checked:s,onChange:a,description:l,reasonVisible:u=!0,describedBy:d,hint:f,busy:h=!1,variant:g="inline",ariaLabel:y,className:v,id:x,action:b}=e,k=String(e.unavailableReason||"").trim(),C=!!k,S=d||(x?`${x}-reason`:C?`af-switch-reason-${++Ry}`:void 0),A=["af-switch",g==="row"?"af-switch--row":g==="sm"?"af-switch--sm":"",C?"af-switch--unavailable":"",v||""].filter(Boolean).join(" "),$=j=>{const L=Ty({checked:s,unavailableReason:k,busy:h});if(L===null){j.preventDefault();return}a==null||a(L)},T=i.jsxs("button",{type:"button",role:"switch",id:x,className:A,"data-action":b,"aria-checked":s?"true":"false","aria-disabled":C?"true":void 0,"aria-describedby":C?S:void 0,"aria-busy":h?"true":void 0,"aria-label":y,"aria-description":l?void 0:f,title:C?f?`${k}
41
- ${f}`:k:f,onClick:$,children:[i.jsx("span",{className:"af-switch__track","aria-hidden":"true",children:i.jsx("span",{className:"af-switch__thumb"})}),i.jsxs("span",{className:"af-switch__text",children:[i.jsx("span",{className:"af-switch__label",children:t}),l?i.jsx("span",{className:"af-switch__desc",children:l}):null]})]});return!C||d?T:i.jsxs("span",{className:g==="row"?"af-switch-wrap af-switch-wrap--row":"af-switch-wrap",children:[T,i.jsx("span",{id:S,className:u?"af-switch__reason":"af-switch__reason af-switch__reason--hidden",children:k})]})}function Iy(e){const t=String(e.unavailableReason||"").trim(),s=["af-switch","af-switch--native",e.variant==="row"?"af-switch--row":"",t?"af-switch--unavailable":""].filter(Boolean).join(" "),a=t?`${e.id||e.name}-reason`:void 0,l=i.jsxs("label",{className:s,title:t||void 0,"data-action":e.action,children:[i.jsx("input",{type:"checkbox",role:"switch",className:"af-switch__input",id:e.id,name:e.name,defaultChecked:e.defaultChecked,disabled:!!t,"aria-describedby":a}),i.jsx("span",{className:"af-switch__track","aria-hidden":"true",children:i.jsx("span",{className:"af-switch__thumb"})}),i.jsx("span",{className:"af-switch__text",children:i.jsx("span",{className:"af-switch__label",children:e.label})})]});return t?i.jsxs("span",{className:e.variant==="row"?"af-switch-wrap af-switch-wrap--row":"af-switch-wrap",children:[l,i.jsx("span",{id:a,className:"af-switch__reason",children:t})]}):l}const My={autoApprove:["list_files","skim_folders","analyze_code","read_file","skim_files","search_files","open_attachment","web_search","skim_websearch","skim_url","fetch_url","list_email_accounts","list_emails","read_email","list_whatsapp_messages","read_whatsapp_message","send_email","send_whatsapp_message","send_telegram_message","send_telegram_artifact"],requireApproval:["write_file","edit_file","execute_command"]};function Ly(e){const t=new Set,s=[];for(const a of e||[]){if(!a)continue;const l=String(a.name||"").trim();!l||t.has(l)||(t.add(l),s.push({name:l,description:typeof a.description=="string"?a.description:void 0,toolset:typeof a.toolset=="string"?a.toolset:void 0,when_to_use:typeof a.when_to_use=="string"?a.when_to_use:void 0,default_approval:a.default_approval==="approve"||a.default_approval==="ask"?a.default_approval:void 0}))}return s.sort((a,l)=>{const u=String(a.toolset||""),d=String(l.toolset||"");return u!==d?u.localeCompare(d):a.name.localeCompare(l.name)}),s}function Py(e,t){return e.default_approval?e.default_approval:t.requireApproval.includes(e.name)?"ask":t.autoApprove.includes(e.name)?"approve":"ask"}function Oy(e,t,s){const a=String(e||"").trim().toLowerCase();if(!a&&!t&&!s)return null;let l;return a==="approval"||a==="local_approval"||a==="local-approval"?l={label:"APPROVAL",detail:"Safe tools auto-run; mutating tools ask for approval.",tone:"safe"}:a==="passthrough"?l={label:"PASSTHROUGH",detail:"All tools require approval before execution.",tone:"warn"}:a==="delegated"||a==="delegate"||a==="job"?l={label:"DELEGATED",detail:"Tool calls wait for external executors.",tone:"info"}:a==="local"||a==="local_all"||a==="local-all"?l={label:"LOCAL",detail:"All tools run locally; client policy may still require approval.",tone:"danger"}:l={label:"UNKNOWN",detail:"#FALLBACK: gateway tool mode not reported.",tone:"warn"},t&&(l={...l,label:t}),s&&(l={...l,detail:s}),l}function Dy(e){const t=e.split("_");return t.map((s,a)=>a<t.length-1?i.jsxs(ft.Fragment,{children:[s,"_",i.jsx("wbr",{})]},a):i.jsx(ft.Fragment,{children:s},a))}function Fy(e){var ce,re;const t=e.defaults||My,s=e.disabled===!0,a=e.title||"Tools",l=e.subtitle||"Default is all tools. Safe/read-only tools auto-approve; mutating tools ask for approval.",u=String(e.note||"").trim(),d=w.useMemo(()=>Oy(e.toolMode,e.toolModeLabel,e.toolModeDetail),[e.toolMode,e.toolModeLabel,e.toolModeDetail]),f=w.useMemo(()=>Ly(e.tools),[e.tools]),h=w.useMemo(()=>f.map(H=>H.name),[f]),g=w.useMemo(()=>new Set(h),[h]),[y,v]=w.useState(""),x=w.useMemo(()=>{var fe;const H=Array.isArray((fe=e.value)==null?void 0:fe.selected)?e.value.selected:[],W=new Set,J=[];for(const ue of H){const ye=String(ue||"").trim();!ye||W.has(ye)||(W.add(ye),J.push(ye))}return J},[(ce=e.value)==null?void 0:ce.selected]),b=w.useMemo(()=>x.filter(H=>g.has(H)),[x,g]),k=w.useMemo(()=>x.filter(H=>!g.has(H)),[x,g]),C=((re=e.value)==null?void 0:re.mode)==="custom"?"custom":"all",S=w.useMemo(()=>{const H=y.trim().toLowerCase();return H?f.filter(W=>{const J=W.name.toLowerCase(),fe=(W.description||"").toLowerCase();return J.includes(H)||fe.includes(H)}):f},[f,y]),A=C==="all"?new Set(h):new Set(b),$=H=>{e.onChange(H)},T=H=>{s||$({...e.value,mode:H,selected:x})},j=(H,W)=>{if(s)return;const J=new Set(b);W?J.add(H):J.delete(H),$({...e.value,selected:[...k,...Array.from(J)],mode:"custom"})},L=(H,W)=>{var fe;if(s)return;const J={...((fe=e.value)==null?void 0:fe.approval)||{}};J[H]=W,$({...e.value,approval:J})},z=()=>{s||$({...e.value,selected:[...k,...h],mode:"custom"})},V=()=>{s||$({...e.value,selected:[...k],mode:"custom"})},P=A.size;return i.jsxs("div",{className:`af-tool-policy ${e.className||""}`.trim(),children:[i.jsxs("div",{className:"af-tool-policy__header",children:[i.jsx("div",{className:"af-tool-policy__title",children:a}),i.jsx("div",{className:"af-tool-policy__subtitle",children:l}),d?i.jsxs("div",{className:`af-tool-policy__mode is-${d.tone}`,children:[i.jsx("div",{className:"af-tool-policy__mode-badge",children:"Tool mode"}),i.jsx("div",{className:"af-tool-policy__mode-value",children:d.label}),i.jsx("div",{className:"af-tool-policy__mode-detail",children:d.detail})]}):null,u?i.jsx("div",{className:"af-tool-policy__note",children:u}):null]}),i.jsxs("div",{className:"af-tool-policy__controls",children:[i.jsxs("div",{className:"af-tool-policy__segmented",role:"group","aria-label":"Tool allowlist mode",children:[i.jsx("button",{type:"button",className:`af-tool-policy__seg-btn ${C==="all"?"is-active":""}`.trim(),onClick:()=>T("all"),disabled:s,"aria-pressed":C==="all",children:"All tools"}),i.jsx("button",{type:"button",className:`af-tool-policy__seg-btn ${C==="custom"?"is-active":""}`.trim(),onClick:()=>T("custom"),disabled:s,"aria-pressed":C==="custom",children:"Custom allowlist"})]}),i.jsxs("div",{className:"af-tool-policy__count",children:[P," / ",h.length," enabled"]}),i.jsxs("div",{className:"af-tool-policy__bulk",children:[i.jsx("button",{type:"button",onClick:z,disabled:s||C!=="custom",children:"Select all"}),i.jsx("button",{type:"button",onClick:V,disabled:s||C!=="custom",children:"Select none"})]})]}),i.jsx("div",{className:"af-tool-policy__filter",children:i.jsx("input",{type:"text",placeholder:"Filter tools...","aria-label":"Filter tools",value:y,onChange:H=>v(H.target.value),disabled:s})}),i.jsxs("div",{className:"af-tool-policy__list",children:[S.map(H=>{var fe,ue;const W=A.has(H.name),J=((ue=(fe=e.value)==null?void 0:fe.approval)==null?void 0:ue[H.name])||Py(H,t);return i.jsxs("div",{className:`af-tool-row ${W?"is-enabled":""}`.trim(),children:[i.jsx("div",{className:"af-tool-row__check",children:i.jsx(Ps,{variant:"sm",action:"tool-enabled",label:"",ariaLabel:H.name,checked:W,busy:s,unavailableReason:C!=="custom"?"Choose Custom to pick tools one by one.":null,reasonVisible:!1,onChange:ye=>j(H.name,ye)})}),i.jsxs("div",{className:"af-tool-row__meta",children:[i.jsxs("div",{className:"af-tool-row__title",children:[i.jsx("span",{className:"af-tool-row__name",children:Dy(H.name)}),H.toolset?i.jsx("span",{className:"af-tool-row__badge",children:H.toolset}):null]}),H.description?i.jsx("div",{className:"af-tool-row__desc",children:H.description}):null,H.when_to_use?i.jsx("div",{className:"af-tool-row__hint",children:H.when_to_use}):null]}),i.jsx("div",{className:"af-tool-row__approval",children:i.jsxs("select",{value:J,disabled:s||!W,onChange:ye=>L(H.name,ye.target.value),"aria-label":`Approval mode for ${H.name}`,children:[i.jsx("option",{value:"approve",children:"Approve"}),i.jsx("option",{value:"ask",children:"Ask"})]})})]},H.name)}),S.length?null:i.jsx("div",{className:"af-tool-policy__empty",children:"No tools match the filter."})]})]})}async function cu(e=Oa){const t=await fetch(e),s=await t.json().catch(()=>null);if(!t.ok){const a=s&&typeof s=="object"&&s.detail?String(s.detail):`HTTP ${t.status}`;throw new Error(a)}return s}async function zy(e,t=Oa){const s=await fetch(t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}),a=await s.json().catch(()=>null);if(!s.ok){const l=a&&typeof a=="object"&&a.detail?String(a.detail):`HTTP ${s.status}`;throw new Error(l)}return a}async function mp(e=Oa){const t=await fetch(e,{method:"DELETE"});if(!t.ok){const s=await t.json().catch(()=>({})),a=s&&typeof s=="object"&&s.detail?String(s.detail):`HTTP ${t.status}`;throw new Error(a)}}function Uc(e){let t=String(e||"").trim();for(let s=0;s<2&&t;s+=1){try{const u=JSON.parse(t);if(typeof u=="string"&&u!==t){t=u.trim();continue}}catch{}const a=t[0],l=t[t.length-1];if(a==='"'&&l==='"'||a==="'"&&l==="'"){t=t.slice(1,-1).trim();continue}break}return t.replace(/\/+$/,"")}function Wy(e){var u,d;if(!e)return{label:"Signed out",tone:"warn"};if(!e.has_session)return{label:"Signed out",tone:"warn"};const t=e.gateway||{},s=(u=t.principal)==null?void 0:u.user_id,a=(d=t.principal)==null?void 0:d.runtime_id;if(t.ok&&s)return{label:`Signed in as ${s}${a?` · runtime ${a}`:""}`,tone:"ok"};if(t.ok)return{label:"Signed in",tone:"ok"};const l=t.error||t.detail;return typeof l=="string"&&l.trim()?{label:"Session rejected — sign in again",tone:"err"}:{label:"Sign in required",tone:"err"}}function Uy(e){const t=e.connectionPath||Oa,[s,a]=w.useState(!1),[l,u]=w.useState(!1),[d,f]=w.useState(null),[h,g]=w.useState(!1);w.useEffect(()=>{e.isOpen||g(!1)},[e.isOpen]);const[y,v]=w.useState(e.defaultGatewayUrl||"http://127.0.0.1:8080"),[x,b]=w.useState("admin"),[k,C]=w.useState(""),[S,A]=w.useState(!1),[$,T]=w.useState(!0),[j,L]=w.useState(""),[z,V]=w.useState(""),P=w.useMemo(()=>Wy(d),[d]),ce=J=>{var fe;f(J),(fe=e.onStatusChange)==null||fe.call(e,J)},re=w.useRef(!1);if(w.useEffect(()=>{var fe;if(!e.isOpen)return;const J=!re.current;if(re.current=!0,J&&e.initialStatus!==void 0&&e.initialStatus!==null){const ue=e.initialStatus;ce(ue),typeof ue.gateway_url=="string"&&ue.gateway_url.trim()&&v(Uc(ue.gateway_url));const ye=(fe=ue.gateway)==null?void 0:fe.principal;ye!=null&&ye.user_id&&b(ye.user_id);return}a(!0),L(""),cu(t).then(ue=>{var ve;ce(ue),typeof ue.gateway_url=="string"&&ue.gateway_url.trim()&&v(Uc(ue.gateway_url));const ye=(ve=ue.gateway)==null?void 0:ve.principal;ye!=null&&ye.user_id&&b(ye.user_id)}).catch(ue=>L(`Failed to load connection status: ${String((ue==null?void 0:ue.message)||ue)}`)).finally(()=>a(!1))},[e.isOpen]),w.useEffect(()=>{if(!e.isOpen)return;const J=fe=>{fe.key==="Escape"&&!fe.defaultPrevented&&!e.blocking&&(fe.preventDefault(),e.onClose())};return window.addEventListener("keydown",J),()=>window.removeEventListener("keydown",J)},[e.isOpen,e.blocking,e.onClose]),!e.isOpen||h)return null;const H=async()=>{u(!0),L(""),V("");try{const J=Uc(y);v(J);const fe=await zy({gateway_url:J,gateway_user_id:x,gateway_token:k,persist:$},t);ce(fe),C(""),g(!0),e.onClose()}catch(J){L(String((J==null?void 0:J.message)||J))}finally{u(!1)}},W=async()=>{u(!0),L(""),V("");try{await mp(t),C("");const J=await cu(t).catch(()=>null);ce(J),V("Signed out. This browser no longer holds a gateway session.")}catch(J){L(String((J==null?void 0:J.message)||J))}finally{u(!1)}};return i.jsx("div",{className:"af-connect-overlay",role:"presentation",onMouseDown:J=>{!e.blocking&&J.target===J.currentTarget&&e.onClose()},children:i.jsx("div",{className:"af-connect-modal",role:"dialog","aria-modal":"true","aria-label":"Gateway connection",children:i.jsx(by,{kicker:`${e.appName||"AbstractFramework"} connection`,title:"Connect this browser to AbstractGateway",description:"Sign in with a Gateway user token. The app exchanges it for an HTTP-only browser session and never stores the raw token.",statusLabel:P.label,statusTone:P.tone,showGatewayUrl:!0,gatewayUrl:y,onGatewayUrlChange:J=>v(J),userId:x,onUserIdChange:b,token:k,tokenPlaceholder:d!=null&&d.has_session?"(browser session already signed in)":"Paste Gateway user token",showToken:S,onTokenChange:C,onShowTokenChange:A,remember:$,rememberLabel:"Keep this browser signed in",onRememberChange:T,loading:s,submitting:l,submittingLabel:"Signing in...",showClose:!e.blocking,onClose:e.onClose,showSignOut:!e.blocking&&!!(d!=null&&d.has_session),onSignOut:W,error:j,message:z,onSubmit:H})})})}function By(e){return!!(e&&e.ok===!0&&e.has_session===!0)}function Vy(e){const t=e||{},s=t.connectionPath||Oa,a=t.variant||"dismissable",l=w.useRef(t.onStatusChange);l.current=t.onStatusChange;const u=w.useRef(a);u.current=a;const d=w.useRef(!!t.autoOpenMidSession);d.current=!!t.autoOpenMidSession;const[f,h]=w.useState(null),[g,y]=w.useState("loading"),[v,x]=w.useState(!1),b=w.useRef(!1),k=w.useRef(!1),C=w.useRef("loading"),S=w.useRef("none"),A=w.useRef(!1),$=w.useRef(0),T=w.useCallback(fe=>{var ye;$.current+=1,h(fe),(ye=l.current)==null||ye.call(l,fe);const ue=By(fe);if(ue)y("connected"),C.current="connected",b.current=!1,S.current="none",k.current||x(!1);else if(fe!==null){const ve=C.current;y("disconnected"),C.current="disconnected",ve!=="disconnected"&&(S.current=A.current?"signout":ve==="connected"?"mid":"boot");const q=u.current==="blocking"||S.current!=="mid"||d.current;!b.current&&q&&x(!0)}fe!==null&&(k.current=ue)},[]),j=w.useCallback(async()=>{const fe=$.current;try{const ue=await cu(s);if($.current!==fe)return;T(ue)}catch{if($.current!==fe)return;T(null)}},[s,T]),[L,z]=w.useState(!1),[V,P]=w.useState(null),ce=w.useCallback(async()=>{z(!0),P(null),$.current+=1;let fe=null;try{await mp(s)}catch(ue){fe=String((ue==null?void 0:ue.message)||ue||"Sign-out request failed")}A.current=!0;try{await j()}finally{A.current=!1}P(fe),z(!1)},[s,j]),re=w.useRef(!1);w.useEffect(()=>{re.current||(re.current=!0,j())},[j]);const H=w.useCallback(()=>{x(!0)},[]),W=w.useCallback(()=>{const fe=C.current;a==="blocking"&&fe==="disconnected"||(fe==="disconnected"&&(b.current=!0),x(!1))},[a]),J=w.useMemo(()=>({isOpen:v,onClose:W,blocking:a==="blocking"&&g!=="connected",appName:t.appName,connectionPath:s,defaultGatewayUrl:t.defaultGatewayUrl,initialStatus:f,onStatusChange:T}),[v,W,a,g,t.appName,s,t.defaultGatewayUrl,f,T]);return{status:f,phase:g,connected:g==="connected",modalOpen:v,signingOut:L,signOutError:V,openModal:H,refresh:j,signOut:ce,modalProps:J}}function Gy(){return globalThis.crypto}function Hy(e){if(e.length<16)throw new Error("uuidV4FromBytes: needs 16 bytes");const t=Array.from(e.subarray(0,16));t[6]=t[6]&15|64,t[8]=t[8]&63|128;const s=t.map(a=>a.toString(16).padStart(2,"0")).join("");return`${s.slice(0,8)}-${s.slice(8,12)}-${s.slice(12,16)}-${s.slice(16,20)}-${s.slice(20)}`}function Cu(){const e=Gy();if(e&&typeof e.randomUUID=="function")try{return e.randomUUID()}catch{}if(e&&typeof e.getRandomValues=="function")return Hy(e.getRandomValues(new Uint8Array(16)));throw new Error("randomId: Web Crypto (crypto.getRandomValues) is unavailable")}function gp(e){return globalThis.isSecureContext!==!1?null:`This page is loaded over http, so ${e} is unavailable — open it over https (for example through tailscale serve; the gateway console's Network page explains how) or on the gateway's own computer.`}function uu(e){const t=e.closeOnEscape!==!1,s=w.useRef(null);return w.useEffect(()=>{if(!e.open||!t)return;const a=l=>{l.key!=="Escape"||l.defaultPrevented||(l.preventDefault(),e.onClose())};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[e.open,t,e.onClose]),w.useEffect(()=>{const a=s.current;a&&(e.open?a.removeAttribute("inert"):a.setAttribute("inert",""))},[e.open]),i.jsxs(i.Fragment,{children:[e.backdrop&&e.open?i.jsx("div",{className:"af-drawer-backdrop","aria-hidden":"true",onClick:e.onClose,style:{top:e.topOffset||0}}):null,i.jsxs("div",{ref:s,className:`af-drawer${e.side==="left"?" af-drawer--left":""}${e.topOffset?" af-drawer--offset":""}${e.open?" af-drawer--open":""}${e.className?` ${e.className}`:""}`,style:{width:e.width||420,top:e.topOffset||0,display:e.open?void 0:"none"},role:"complementary","aria-label":e.label,"aria-hidden":e.open?void 0:!0,children:[e.title!==void 0?i.jsxs("div",{className:"af-drawer__header",children:[i.jsx("div",{className:"af-drawer__title",children:e.title}),i.jsxs("div",{className:"af-drawer__header-actions",children:[e.headerActions,i.jsx("button",{type:"button",className:"af-drawer__close","aria-label":"Close panel",onClick:e.onClose,children:"×"})]})]}):null,i.jsx("div",{className:"af-drawer__body",children:e.children})]})]})}const Ky={name:"AbstractFramework",website:"https://abstractframework.ai",author:"Laurent-Philippe Albou, PhD",years:"2023-2026",copyright:"© 2023-2026 Laurent-Philippe Albou, PhD. Released under the MIT License.",contact_email:"contact@abstractframework.ai"},Jy={abstractframework:{name:"AbstractFramework",website:"https://abstractframework.ai",repo:"https://github.com/lpalbou/AbstractFramework",docs:"https://github.com/lpalbou/AbstractFramework/tree/main/docs",issues:"https://github.com/lpalbou/AbstractFramework/issues",feedback:"https://github.com/lpalbou/AbstractFramework/issues/new?labels=feedback"},abstractgateway:{name:"AbstractGateway",website:"https://abstractframework.ai/gateway",repo:"https://github.com/lpalbou/AbstractGateway",docs:"https://www.lpalbou.info/AbstractGateway/",issues:"https://github.com/lpalbou/AbstractGateway/issues",feedback:"https://github.com/lpalbou/AbstractGateway/issues/new?labels=feedback"},abstractcode:{name:"AbstractCode",website:"https://abstractframework.ai/code",repo:"https://github.com/lpalbou/AbstractCode",docs:"https://github.com/lpalbou/AbstractCode/tree/main/docs",issues:"https://github.com/lpalbou/AbstractCode/issues",feedback:"https://github.com/lpalbou/AbstractCode/issues/new?labels=feedback"},abstractassistant:{name:"AbstractAssistant",website:"https://abstractframework.ai/assistant",repo:"https://github.com/lpalbou/AbstractAssistant",docs:"https://github.com/lpalbou/AbstractAssistant/blob/main/docs/README.md",issues:"https://github.com/lpalbou/AbstractAssistant/issues",feedback:"https://github.com/lpalbou/AbstractAssistant/issues/new?labels=feedback"},abstractflow:{name:"AbstractFlow",website:"https://abstractframework.ai/flow",repo:"https://github.com/lpalbou/AbstractFlow",docs:"https://github.com/lpalbou/AbstractFlow#readme",issues:"https://github.com/lpalbou/AbstractFlow/issues",feedback:"https://github.com/lpalbou/AbstractFlow/issues/new?labels=feedback"},abstractcontinuum:{name:"AbstractContinuum",website:"https://abstractframework.ai",repo:"https://github.com/lpalbou/AbstractContinuum",docs:"https://github.com/lpalbou/AbstractContinuum/tree/main/docs",issues:"https://github.com/lpalbou/AbstractContinuum/issues",feedback:"https://github.com/lpalbou/AbstractContinuum/issues/new?labels=feedback"},abstractentity:{name:"AbstractEntity",website:"https://abstractframework.ai",repo:"https://github.com/lpalbou/AbstractEntity",docs:"https://github.com/lpalbou/AbstractEntity/tree/main/docs",issues:"https://github.com/lpalbou/AbstractEntity/issues",feedback:"https://github.com/lpalbou/AbstractEntity/issues/new?labels=feedback"},abstractobserver:{name:"AbstractObserver",website:"https://abstractframework.ai/observer",repo:"https://github.com/lpalbou/AbstractObserver",docs:"https://github.com/lpalbou/AbstractObserver#readme",issues:"https://github.com/lpalbou/AbstractObserver/issues",feedback:"https://github.com/lpalbou/AbstractObserver/issues/new?labels=feedback"},abstractcore:{name:"AbstractCore",website:"https://www.abstractcore.ai",repo:"https://github.com/lpalbou/AbstractCore",docs:"https://github.com/lpalbou/AbstractCore/tree/main/docs",issues:"https://github.com/lpalbou/AbstractCore/issues",feedback:"https://github.com/lpalbou/AbstractCore/issues/new?labels=feedback"},abstractuic:{name:"AbstractUIC",website:"https://abstractframework.ai",repo:"https://github.com/lpalbou/AbstractUIC",docs:"https://github.com/lpalbou/AbstractUIC/tree/main/docs",issues:"https://github.com/lpalbou/AbstractUIC/issues",feedback:"https://github.com/lpalbou/AbstractUIC/issues/new?labels=feedback"}},Qy={framework:Ky,apps:Jy},tl=Qy;function Yy(){return Object.keys(tl.apps).sort()}function Xy(e,t){const s=Object.prototype.hasOwnProperty.call(tl.apps,e)?tl.apps[e]:void 0;if(!s)throw new Error(`appIdentity: unknown application id "${e}" (known: ${Yy().join(", ")})`);return{id:e,name:s.name,version:t,website:s.website,repo:s.repo,docs:s.docs,issues:s.issues,feedback:s.feedback}}function Zy(e,t){const s=tl.framework,a=[["Application",`${e.name} ${e.version}`],["Part of",`${s.name} — ${s.website}`],["Author",`${s.author} (${s.years})`],["Copyright",s.copyright],["Website",e.website],["Source",e.repo],["Documentation",e.docs],["Report an issue",e.issues],["Give feedback",e.feedback],["Contact",s.contact_email]];for(const[l,u]of t||[])a.push([String(l),String(u)]);return a}function Bc(e){return typeof e=="string"?e.trim():""}function gh(e,t){if(t!=null)return[["Gateway",`unavailable (${String(t).trim()||"unknown error"})`]];const s=e&&typeof e=="object"&&!Array.isArray(e)?e:{},a=Bc(s.abstractgateway);if(!a)return[["Gateway","unavailable (the gateway did not report its version)"]];const l=Bc(s.abstractframework),u=[["Gateway",`AbstractGateway ${a}`],["Gateway framework",l?`AbstractFramework ${l}`:"not installed on the gateway host"]],d=s.packages&&typeof s.packages=="object"&&!Array.isArray(s.packages)?s.packages:{},f=Object.keys(d).filter(h=>h!=="abstractgateway"&&h!=="abstractframework").sort((h,g)=>h<g?-1:h>g?1:0);for(const h of f){const g=Bc(d[h]);g&&u.push([`Gateway package ${h}`,g])}return u}const qy='a[href], button:not(:disabled), input:not(:disabled), select:not(:disabled), textarea:not(:disabled), [tabindex]:not([tabindex="-1"])';function yp(e,t,s){if(e.key!=="Tab"||!t)return;const a=Array.from(t.querySelectorAll(qy));if(a.length===0){e.preventDefault();return}const l=a[0],u=a[a.length-1],d=!!s&&t.contains(s);e.shiftKey?(s===l||!d)&&(e.preventDefault(),u.focus()):(s===u||!d)&&(e.preventDefault(),l.focus())}const ew=/https?:\/\/[^\s<>"]+/g;function tw(e,t){if(e==="Contact")return[{text:t,href:`mailto:${t}`}];const s=[];let a=0;for(const l of t.matchAll(ew)){const u=l.index??0;u>a&&s.push({text:t.slice(a,u)}),s.push({text:l[0],href:l[0]}),a=u+l[0].length}return(a<t.length||s.length===0)&&s.push({text:t.slice(a)}),s}function nw({label:e,value:t}){return i.jsx("span",{children:tw(e,t).map((s,a)=>s.href===void 0?i.jsx(ft.Fragment,{children:s.text},a):s.href.startsWith("mailto:")?i.jsx("a",{className:"af-about__link",href:s.href,children:s.text},a):i.jsx("a",{className:"af-about__link",href:s.href,target:"_blank",rel:"noopener noreferrer",children:s.text},a))})}function rw(e){const t=w.useRef(null),s=w.useRef(null),a=w.useId(),l=w.useRef(e.onClose);if(l.current=e.onClose,w.useEffect(()=>{var g;if(!e.open)return;const f=document.activeElement;(g=t.current)==null||g.focus();const h=y=>{if(!y.defaultPrevented){if(y.key==="Escape"){y.preventDefault(),l.current();return}yp(y,s.current,document.activeElement)}};return window.addEventListener("keydown",h),()=>{window.removeEventListener("keydown",h),f&&typeof f.focus=="function"&&f.focus()}},[e.open]),!e.open)return null;const u=e.title||`About ${e.identity.name}`,d=Zy(e.identity,e.extraRows);return i.jsx("div",{className:"af-appearance-overlay af-about-overlay",onClick:e.onClose,role:"presentation",children:i.jsxs("div",{ref:s,className:"af-appearance af-about",role:"dialog","aria-modal":"true","aria-labelledby":a,onClick:f=>f.stopPropagation(),children:[i.jsx("div",{className:"af-appearance__title",id:a,children:u}),i.jsx("dl",{className:"af-about__rows",children:d.map(([f,h],g)=>i.jsxs("div",{className:"af-about__row",children:[i.jsx("dt",{className:"af-about__label",children:f}),i.jsx("dd",{className:"af-about__value",children:i.jsx(nw,{label:f,value:h})})]},`${g}:${f}`))}),i.jsx("div",{className:"af-appearance__actions",children:i.jsx("button",{ref:t,type:"button",className:"af-appearance__close",onClick:e.onClose,children:"Close"})})]})})}function sw(e){const{connection:t}=e,s=t.phase,a=t.signingOut===!0,[l,u]=w.useState(!1),d=e.about,f=a?"Signing out…":s==="connected"?"Disconnect":s==="loading"?"Connecting…":"Connect",h=s==="connected"?"Disconnect from gateway":s==="loading"?"Checking gateway session…":"Connect to gateway";return i.jsxs("div",{className:`af-topbar${e.className?` ${e.className}`:""}`,role:"group","aria-label":"App actions",children:[e.assistant?i.jsx("button",{type:"button",className:`af-topbar__btn${e.assistant.open?" is-active":""}`,"aria-pressed":e.assistant.open,"aria-label":e.assistant.label||"Open assistant",title:e.assistant.label||"Assistant",onClick:e.assistant.onToggle,children:i.jsx(ie,{name:"sparkle",size:16})}):null,e.appearance?i.jsx("button",{type:"button",className:"af-topbar__btn","aria-label":e.appearance.label||"Appearance (theme and typography)",title:e.appearance.label||"Appearance",onClick:e.appearance.onOpen,children:i.jsx(ie,{name:"contrast",size:16})}):null,d?i.jsx("button",{type:"button",className:"af-topbar__btn af-topbar__btn--about","aria-label":d.label||`About ${d.identity.name}`,title:d.label||"About","aria-haspopup":"dialog",onClick:()=>{var g;u(!0),(g=d.onOpen)==null||g.call(d)},children:i.jsx(ie,{name:"info",size:16})}):null,e.extraActions,i.jsxs("button",{type:"button",className:`af-topbar__pill af-topbar__pill--${s}`,onClick:s==="connected"?t.onDisconnect:t.onConnect,disabled:a,title:h,"aria-label":h,children:[i.jsx("span",{className:`af-topbar__dot af-topbar__dot--${s}`,"aria-hidden":"true"}),i.jsx("span",{className:"af-topbar__pill-label",children:f})]}),d?i.jsx(rw,{open:l,onClose:()=>u(!1),identity:d.identity,extraRows:d.extraRows}):null]})}const Yo={theme:"dark",font_scale:"md",header_density:"standard"};function iw(e){const t=e&&typeof e=="object"?e:{};return{theme:typeof t.theme=="string"&&t.theme?t.theme:Yo.theme,font_scale:typeof t.font_scale=="string"&&t.font_scale?t.font_scale:Yo.font_scale,header_density:typeof t.header_density=="string"&&t.header_density?t.header_density:Yo.header_density}}function aw(e){return`af_appearance_${e}_v1`}function ow(e,t){const s=aw(e),a=w.useMemo(()=>({...Yo,...(t==null?void 0:t.defaults)||{}}),[JSON.stringify((t==null?void 0:t.defaults)||{})]),[l,u]=w.useState(()=>{let d=a;try{const f=localStorage.getItem(s)??(t!=null&&t.legacyKey?localStorage.getItem(t.legacyKey):null);f&&(d=iw({...a,...JSON.parse(f)}))}catch{}try{uh(d.theme),dh({font_scale:d.font_scale,header_density:d.header_density})}catch{}return d});return w.useEffect(()=>{uh(l.theme),dh({font_scale:l.font_scale,header_density:l.header_density});try{localStorage.setItem(s,JSON.stringify(l))}catch{}},[s,l]),[l,u]}function lw(e){return w.useEffect(()=>{if(!e.open)return;const t=s=>{s.key!=="Escape"||s.defaultPrevented||(s.preventDefault(),e.onClose())};return window.addEventListener("keydown",t),()=>window.removeEventListener("keydown",t)},[e.open,e.onClose]),e.open?i.jsx("div",{className:"af-appearance-overlay",onClick:e.onClose,role:"presentation",children:i.jsxs("div",{className:"af-appearance",role:"dialog","aria-modal":"true","aria-label":e.title||"Appearance",onClick:t=>t.stopPropagation(),children:[i.jsx("div",{className:"af-appearance__title",children:e.title||"Appearance"}),i.jsx("div",{className:"af-appearance__note",children:e.note||"Stored locally in this browser, per app."}),i.jsxs("div",{className:"af-appearance__grid",children:[i.jsx("label",{className:"af-appearance__label",children:"Theme"}),i.jsx(jy,{value:e.value.theme,onChange:t=>e.onChange({...e.value,theme:t})}),i.jsx("label",{className:"af-appearance__label",children:"Font size"}),i.jsx(Sy,{value:e.value.font_scale,onChange:t=>e.onChange({...e.value,font_scale:t})}),i.jsx("label",{className:"af-appearance__label",children:"Header size"}),i.jsx(Ny,{value:e.value.header_density,onChange:t=>e.onChange({...e.value,header_density:t})})]}),i.jsx("div",{className:"af-appearance__actions",children:i.jsx("button",{type:"button",className:"af-appearance__close",onClick:e.onClose,children:"Close"})})]})}):null}function cw(){var t;if(typeof window>"u")return!1;const e=navigator;return!!((t=e==null?void 0:e.mediaDevices)!=null&&t.getUserMedia)&&typeof window.MediaRecorder=="function"}function uw(){if(typeof window>"u")return!1;const e=window;return!!(e!=null&&e.AudioContext||e!=null&&e.webkitAudioContext)}function dw(){const e=window.MediaRecorder,t=a=>{var l;try{return!!((l=e==null?void 0:e.isTypeSupported)!=null&&l.call(e,a))}catch{return!1}},s=["audio/webm;codecs=opus","audio/webm","audio/mp4","audio/ogg;codecs=opus","audio/ogg"];for(const a of s)if(t(a))return a;return""}async function Vc(e,t){var l;const s=t.slice(0),a=(l=e.decodeAudioData)==null?void 0:l.bind(e);if(typeof a!="function")throw new Error("decodeAudioData not available");try{const u=a(s);if(u&&typeof u.then=="function")return await u}catch{}return await new Promise((u,d)=>{try{a(s,u,d)}catch(f){d(f)}})}function fw(e){const t=new Uint8Array(e);if(t.length<44)return null;const s=u=>String.fromCharCode(t[u],t[u+1],t[u+2],t[u+3]);if(s(0)!=="RIFF"||s(8)!=="WAVE")return null;const a=new DataView(e);let l=12;for(;l+8<=t.length;){const u=s(l),d=a.getUint32(l+4,!0);if(u==="data")return t.slice(0,l+8);l+=8+d+d%2}return null}function hw(e,t){const s=new Uint8Array(t),a=new Uint8Array(e.length+s.length);a.set(e,0),a.set(s,e.length);const l=new DataView(a.buffer);return l.setUint32(4,a.length-8,!0),l.setUint32(e.length-4,s.length,!0),a.buffer}function pw(e){const t=w.useRef(e);t.current=e;const s=X=>{var ee,pe;return(pe=(ee=t.current).on_error)==null?void 0:pe.call(ee,X)},a=w.useMemo(()=>uw()&&(typeof e.tts=="function"||typeof e.tts_stream=="function"),[e.tts,e.tts_stream]),l=w.useMemo(()=>cw()&&typeof e.transcribe=="function",[e.transcribe]),[u,d]=w.useState({key:"",status:"idle"}),f=w.useRef(u),h=w.useCallback(X=>{f.current=X,d(ee=>ee.key===X.key&&ee.status===X.status?ee:X)},[]),g=w.useRef(""),y=w.useRef(""),v=w.useRef(null),x=w.useRef(null),b=w.useRef(null),k=w.useRef(null),C=w.useRef(0),S=w.useRef(0),A=w.useRef(0),$=w.useRef([]),T=w.useRef(0),j=w.useRef(!0),L=w.useRef(!1),z=()=>{try{const X=globalThis,ee=(X==null?void 0:X.AudioContext)||(X==null?void 0:X.webkitAudioContext);if(!ee)return null;if(!v.current){const we=new ee,Pe=we.createGain();Pe.gain.value=1,Pe.connect(we.destination),v.current=we,x.current=Pe}const pe=v.current,De=x.current;if(!pe||!De)return null;try{pe.state==="suspended"&&pe.resume()}catch{}return{ctx:pe,gain:De}}catch{return null}},V=w.useCallback(()=>{const X=b.current;if(b.current=null,!!X){try{X.onended=null}catch{}try{X.stop()}catch{}try{X.disconnect()}catch{}}},[]),P=w.useCallback(()=>{V(),A.current+=1,$.current=[],T.current=0,j.current=!0,L.current=!1,y.current="",g.current="",k.current=null,C.current=0,S.current=0,h({key:"",status:"idle"})},[V,h]);w.useEffect(()=>()=>{var X,ee;P();try{(X=x.current)==null||X.disconnect()}catch{}try{(ee=v.current)==null||ee.close()}catch{}v.current=null,x.current=null,k.current=null},[]);const ce=async(X,ee,pe)=>{const De=A.current,we=z();if(!we)throw new Error("TTS playback is not supported in this browser");const{ctx:Pe,gain:Ve}=we;try{Pe.state==="suspended"&&await Pe.resume()}catch{}if(De!==A.current)return;V();const rt=Pe.createBufferSource();rt.buffer=ee,rt.connect(Ve);const K=Number.isFinite(Number(ee.duration))?Number(ee.duration):0,me=Math.max(0,Math.min(Number(pe||0),K>0?Math.max(0,K-.01):0));S.current=Pe.currentTime-me,C.current=me,b.current=rt,g.current=X,rt.onended=()=>{b.current===rt&&(b.current=null,C.current=0,S.current=0,g.current="",h({key:"",status:"idle"}))},rt.start(0,me),h({key:X,status:"playing"})},re=(X,ee)=>{if(ee!==A.current)return;const pe=z();if(!pe)return;const De=$.current,we=T.current;if(we>=De.length){j.current&&(g.current="",C.current=0,S.current=0,h({key:"",status:"idle"}));return}const Pe=De[we],{ctx:Ve,gain:rt}=pe;V();const K=Ve.createBufferSource();K.buffer=Pe,K.connect(rt);const me=Number.isFinite(Number(Pe.duration))?Number(Pe.duration):0,Fe=Math.max(0,Math.min(Number(C.current||0),me>0?Math.max(0,me-.01):0));S.current=Ve.currentTime-Fe,b.current=K,g.current=X,K.onended=()=>{ee===A.current&&b.current===K&&(b.current=null,T.current=we+1,C.current=0,re(X,ee))};try{Ve.state==="suspended"&&Ve.resume()}catch{}K.start(0,Fe),h({key:X,status:"playing"})},H=async(X,ee,pe)=>{const De=z();if(!De){s==null||s("TTS playback is not supported in this browser.");return}V();const we=++A.current;$.current=[],T.current=0,j.current=!1,L.current=!1,k.current=null,C.current=0,S.current=0,g.current=X,y.current=X,h({key:X,status:"loading"}),s==null||s("");let Pe=null;try{for await(const Ve of pe(ee)){if(we!==A.current)return;let rt;try{rt=await Vc(De.ctx,Ve),Pe||(Pe=fw(Ve))}catch{if(!Pe)continue;try{rt=await Vc(De.ctx,hw(Pe,Ve))}catch{continue}}if(we!==A.current)return;$.current.push(rt),!b.current&&!L.current&&(y.current="",re(X,we))}if(we!==A.current)return;if(j.current=!0,$.current.length===0){s==null||s("TTS stream produced no audio."),P();return}!b.current&&!L.current&&re(X,we)}catch(Ve){if(we!==A.current)return;s==null||s(String((Ve==null?void 0:Ve.message)||Ve||"TTS stream failed")),P()}},W=w.useCallback(async(X,ee)=>{const pe=String(X||"").trim(),De=String(ee||"").trim();if(!pe||!De)return;const we=t.current.tts,Pe=t.current.tts_stream;if(typeof we!="function"&&typeof Pe!="function"){s==null||s("TTS is not available.");return}const Ve=z();if(!Ve){s==null||s("TTS playback is not supported in this browser.");return}const rt=f.current,K=rt.key===pe;if(K&&rt.status==="playing"){if(b.current){const Fe=Math.max(0,Ve.ctx.currentTime-Number(S.current||0));C.current=Fe}else C.current=0;L.current=!0,V(),h({key:pe,status:"paused"});return}if(K&&rt.status==="paused"){if($.current.length>0){s==null||s(""),L.current=!1,h({key:pe,status:"playing"}),re(pe,A.current);return}const Fe=k.current;if(Fe){s==null||s(""),L.current=!1;try{await ce(pe,Fe,C.current)}catch(Ke){s==null||s(String((Ke==null?void 0:Ke.message)||Ke||"TTS play failed")),h({key:"",status:"idle"})}return}}if(K&&rt.status==="loading")return;if(typeof Pe=="function"){await H(pe,De,Pe);return}V(),A.current+=1;const me=A.current;$.current=[],T.current=0,j.current=!0,L.current=!1,k.current=null,C.current=0,S.current=0,g.current=pe,y.current=pe,h({key:pe,status:"loading"}),s==null||s("");try{const Fe=await we(De);if(y.current!==pe||A.current!==me)return;const Ke=await Vc(Ve.ctx,Fe);if(y.current!==pe||A.current!==me)return;k.current=Ke,C.current=0,await ce(pe,Ke,0)}catch(Fe){if(A.current!==me)return;y.current===pe&&(y.current="",g.current="",h({key:"",status:"idle"})),s==null||s(String((Fe==null?void 0:Fe.message)||Fe||"TTS failed"))}},[]),[J,fe]=w.useState(!1),[ue,ye]=w.useState(!1),ve=w.useRef(!1),q=w.useRef(l);q.current=l;const se=w.useCallback(X=>{ve.current=X,fe(ee=>ee===X?ee:X)},[]),Q=w.useRef(!1),E=w.useRef(null),F=w.useRef(null),G=w.useRef([]),B=w.useRef(""),oe=w.useRef(0),le=w.useRef(!1);function he(){var X,ee;try{(ee=(X=E.current)==null?void 0:X.getTracks)==null||ee.call(X).forEach(pe=>{try{pe.stop()}catch{}})}catch{}E.current=null}const Z=w.useCallback(()=>{oe.current+=1,le.current=!1;const X=F.current;if(X){X.onstop=null,X.ondataavailable=null,X.onerror=null;try{X.stop()}catch{}}F.current=null,he(),se(!1),Q.current=!1,ye(!1),G.current=[]},[se]);w.useEffect(()=>()=>Z(),[Z]);async function Ce(X,ee){var we,Pe;if(s==null||s(""),!X||!X.size||Q.current)return;const pe=t.current.transcribe;if(typeof pe!="function"){s==null||s("Transcription is not available.");return}Q.current=!0;const De=oe.current;ye(!0);try{const Ve=String(await pe(X,ee)||"").trim();De===oe.current&&Ve&&((Pe=(we=t.current).on_transcript)==null||Pe.call(we,Ve))}catch(Ve){De===oe.current&&(s==null||s(String((Ve==null?void 0:Ve.message)||Ve||"Transcription failed")))}finally{De===oe.current&&(Q.current=!1,ye(!1))}}const Ue=w.useCallback(async()=>{if(s==null||s(""),!q.current){s==null||s(gp("the microphone")??"Voice recording is not supported in this browser (MediaRecorder/getUserMedia unavailable).");return}if(Q.current||le.current||ve.current||F.current)return;G.current=[];const X=oe.current;le.current=!0;try{const ee=await navigator.mediaDevices.getUserMedia({audio:!0});if(X!==oe.current){ee.getTracks().forEach(we=>we.stop());return}E.current=ee;const pe=dw();B.current=pe;const De=pe?new MediaRecorder(ee,{mimeType:pe}):new MediaRecorder(ee);F.current=De,De.ondataavailable=we=>{if(X===oe.current)try{we!=null&&we.data&&G.current.push(we.data)}catch{}},De.onerror=()=>{X===oe.current&&(s==null||s("Recording failed."))},De.onstop=()=>{if(X===oe.current){se(!1),he(),F.current=null;try{const we=new Blob(G.current,{type:B.current||""});Ce(we,B.current)}catch(we){s==null||s(String((we==null?void 0:we.message)||we||"Failed to build recording"))}}},De.start(),se(!0)}catch(ee){if(X!==oe.current)return;he(),F.current=null,se(!1);const pe=String((ee==null?void 0:ee.message)||ee||"Failed to access microphone");s==null||s(pe.toLowerCase().includes("permission")?`Microphone permission denied: ${pe}`:pe)}finally{X===oe.current&&(le.current=!1)}},[]),ke=w.useCallback(()=>{const X=F.current;if(!(!ve.current||!X)){se(!1);try{X.stop()}catch(ee){s==null||s(String((ee==null?void 0:ee.message)||ee||"Failed to stop recording"))}}},[]);return w.useEffect(()=>{if(!J)return;const X=()=>ke();return window.addEventListener("pointerup",X),window.addEventListener("pointercancel",X),()=>{window.removeEventListener("pointerup",X),window.removeEventListener("pointercancel",X)}},[J]),{tts_supported:a,tts_playback:u,toggle_tts:W,stop_tts:P,voice_ptt_supported:l,voice_ptt_recording:J,voice_ptt_busy:ue,start_voice_ptt_recording:Ue,stop_voice_ptt_recording:ke,cancel_voice_ptt_recording:Z}}const Vo=e=>Array.isArray(e)?e.map(t=>typeof t=="string"?t:(t==null?void 0:t.id)||(t==null?void 0:t.name)).filter(Boolean):[];function mw({value:e,onChange:t,fetchCatalog:s}){var S,A,$,T;const a=w.useRef(s);a.current=s;const[l,u]=w.useState({}),[d,f]=w.useState(""),[h,g]=w.useState(!1);w.useEffect(()=>{let j=!0;return g(!0),u({}),f(""),a.current(e.provider,e.model).then(L=>{j&&(u(L),f(L.error?String(L.error):""))}).catch(L=>{j&&f(String((L==null?void 0:L.message)||L))}).finally(()=>{j&&g(!1)}),()=>{j=!1}},[e.provider,e.model]);const y=Array.isArray(l.items)?l.items:[...Array.isArray(l.profiles)?l.profiles.map(j=>({...j,voice_kind:"profile"})):[],...Array.isArray(l.voices)?l.voices.map(j=>({...j,voice_kind:"voice"})):[]],v=j=>JSON.stringify([j.provider||"",j.model||"",j.voice_kind==="profile"?"profile":"voice",j.id]),x=y.find(j=>j.id===(e.profile||e.voice)&&j.voice_kind==="profile"==!!e.profile&&(!e.provider||!j.provider||j.provider===e.provider)&&(!e.model||!j.model||j.model===e.model)),b=x?v(x):e.profile||e.voice?JSON.stringify([e.provider||"",e.model||"",e.profile?"profile":"voice",e.profile||e.voice]):"",k=y.filter(j=>(j==null?void 0:j.id)&&(!e.provider||!j.provider||j.provider===e.provider)).map(j=>({value:v(j),label:`${j.label||j.name||j.id}${!e.provider&&j.provider?` · ${j.provider}`:""}`}));b&&!k.some(j=>j.value===b)&&k.unshift({value:b,label:`${e.profile||e.voice} (saved)`});const C=j=>t({...e,...j});return i.jsxs("div",{className:"af-voice-settings",children:[i.jsx("p",{children:"Speech is generated by your authenticated Gateway. Leave routing and voice unset to use its defaults."}),i.jsx(Nu,{value:{provider:e.provider||"",model:e.model||""},onChange:j=>t({...e,...j,voice:"",profile:""}),fetchProviders:async()=>{const j=await a.current();if(j.error&&!Vo(j.tts_providers||j.providers).length)throw new Error(j.error);return Vo(j.tts_providers||j.providers).map(L=>({name:L}))},fetchModels:async j=>{var z;const L=await a.current(j);return Vo(((z=L.tts_models_by_provider)==null?void 0:z[j])||L.tts_models||L.models)},providerLabel:"Speech provider",modelLabel:"Speech model"}),i.jsxs("label",{children:["Voice / profile",i.jsx(ts,{ariaLabel:"AI voice",placeholder:"Gateway / provider default",value:b,disabled:h,options:[{value:"",label:"Gateway / provider default"},...k],onChange:j=>{if(!j){C({voice:"",profile:""});return}const[L,z,V,P]=JSON.parse(j);C({provider:L||e.provider||"",model:z||(L&&L!==e.provider?"":e.model)||"",voice:V==="voice"?P:"",profile:V==="profile"?P:""})}})]}),h?i.jsx("p",{role:"status",children:"Loading available voices…"}):null,d?i.jsxs("p",{role:"alert",children:["Voice discovery unavailable: ",d,". Your saved choice is preserved."]}):null,i.jsxs("label",{children:["Speaking speed",i.jsxs("select",{"aria-label":"Speech speed",value:e.speed??"",onChange:j=>C({speed:j.target.value?Number(j.target.value):void 0}),children:[i.jsx("option",{value:"",children:"Gateway default"}),[.5,.75,1,1.25,1.5,2].map(j=>i.jsxs("option",{value:j,children:[j,"×"]},j))]})]}),(A=(S=l.controls)==null?void 0:S.quality_preset)!=null&&A.supported?i.jsxs("label",{children:["Quality",i.jsxs("select",{"aria-label":"Speech quality",value:e.quality_preset||"",onChange:j=>C({quality_preset:j.target.value}),children:[i.jsx("option",{value:"",children:"Gateway default"}),Vo(l.controls.quality_preset.values).map(j=>i.jsx("option",{value:j,children:j},j))]})]}):null,(T=($=l.controls)==null?void 0:$.instructions)!=null&&T.supported?i.jsxs("label",{children:["Delivery instructions",i.jsx("textarea",{"aria-label":"Voice delivery instructions",rows:3,placeholder:"For example: calm, clear, and conversational",value:e.instructions||"",onChange:j=>C({instructions:j.target.value})})]}):null,i.jsx("button",{type:"button",onClick:()=>t({}),children:"Reset to Gateway defaults"})]})}const Gc=Se("automations"),gw=Se("trigger-sources"),yw=Se("me/email");class yh extends Error{constructor(t){super(t.message),this.name="AutomationApiError",this.status=t.status,this.code=t.code,t.field!==void 0&&(this.field=t.field),t.command_id!==void 0&&(this.command_id=t.command_id)}}function ww(e,t){const s=t&&typeof t=="object"?t.detail:void 0;if(s&&typeof s=="object"&&!Array.isArray(s)){const a=s;if(typeof a.reason_code=="string"&&a.reason_code&&typeof a.message=="string"){const l={status:e,code:a.reason_code,message:a.message};return typeof a.field=="string"&&(l.field=a.field),typeof a.command_id=="string"&&(l.command_id=a.command_id),l}}return{status:e,code:"invalid_response",message:`The gateway answered HTTP ${e} without an automation error envelope.`}}function Hc(e){const t=new URLSearchParams;for(const[a,l]of Object.entries(e))l!==void 0&&t.set(a,String(l));const s=t.toString();return s?`?${s}`:""}function vw(){return Cu()}function _w(e){const t=e.newId??vw,s=l=>`${Gc}/${encodeURIComponent(l)}`;async function a(l,u,d){const f={accept:"application/json",...e.headers?e.headers():{}},h={method:l,headers:f};d!==void 0&&(f["content-type"]="application/json",h.body=JSON.stringify(d));const g=await e.fetch(Xe(e.baseUrl,u),h),y=await g.text();let v,x=!1;if(y)try{v=JSON.parse(y),x=!0}catch{x=!1}if(!g.ok)throw new yh(ww(g.status,v));if(!x||v===null||typeof v!="object")throw new yh({status:g.status,code:"invalid_response",message:`The gateway answered ${l} ${u} with a body that is not a JSON object.`});return v}return{listAutomations:(l={})=>a("GET",`${Gc}${Hc({status:l.status,cursor:l.cursor,limit:l.limit})}`),getAutomation:l=>a("GET",s(l)),createAutomation:l=>a("POST",Gc,l),reviseAutomation:(l,u)=>a("PATCH",s(l),{command_id:u.command_id??t(),...u.expected_revision!==void 0?{expected_revision:u.expected_revision}:{},changes:u.changes}),sendAutomationCommand:(l,u)=>a("POST",`${s(l)}/commands`,{command_id:u.command_id??t(),type:u.type,...u.payload!==void 0?{payload:u.payload}:{}}),listOccurrences:(l,u={})=>a("GET",`${s(l)}/occurrences${Hc({cursor:u.cursor,limit:u.limit})}`),discuss:(l,u)=>a("POST",`${s(l)}/discuss`,{request_id:u.request_id??t(),occurrence_index:u.occurrence_index,prompt:u.prompt}),markSeen:(l,u)=>a("POST",`${s(l)}/seen`,{attention_cursor:u}),listAttention:(l,u={})=>a("GET",`${s(l)}/attention${Hc({cursor:u.cursor,limit:u.limit})}`),listTriggerSources:()=>a("GET",gw),getMyEmail:()=>a("GET",yw)}}const xw={active:"Active",pause:"Pause",resume:"Resume",run_now:"Run now",stop_current:"Stop current",revise:"Edit",archive:"Archive",discuss:"Discuss"},bw={active:`On: it runs on its schedule. Off: paused, scheduled runs are skipped.
42
- Pausing lets a run in progress finish, without further retries; Run now still works and keeps it paused.
43
- Making it active again restarts the schedule at its next time after now; times missed while paused are skipped.`,pause:`Stop scheduled runs until you resume.
44
- A run in progress finishes; a pending retry is cancelled. Run now still works.`,resume:`Restart the schedule at its next time after now.
45
- Times missed while paused are skipped; resuming does not run it now.`,run_now:`Run it once now, without waiting for the schedule.
46
- The schedule does not move: the next scheduled run keeps its time, or starts right after this run if its time comes first.
47
- Does not count toward a run limit. Works while paused; it stays paused.
48
- Not available while a run is in progress.`,stop_current:`Cancel the run in progress, or its pending retry.
49
- It ends as cancelled, with no failure notice. The schedule continues.`,revise:`Change the task, schedule or settings.
50
- Changes apply from the next run; a run in progress keeps its inputs. A changed schedule restarts from now, so no past time runs.`,archive:`Stop it for good: it will not run again.
51
- A run in progress finishes; the history stays readable.`,discuss:`Talk about the results in a separate conversation, seeded with the runs up to this one.
52
- It has its own workspace (the automation's files are read-only) and never changes the automation.`},kw="Next scheduled run: {time}.",jw="Growing context: later runs see this run in their history.",Sw={run_now:{name:"playCircle"}},Nw={trigger_label:"When an email arrives",not_set_up:"Connect a mailbox first — open My email",open_my_email:"open My email",filters_legend:"Only mail that matches (all optional)",from_in:"From these addresses",from_domain_in:"From these domains",to_in:"Sent to these addresses",subject_contains:"Subject contains",has_attachment:"Attachments",has_attachment_any:"any",has_attachment_yes:"only with attachments",has_attachment_no:"only without attachments",list_hint:"Separate entries with commas or new lines. Exact addresses and domains only (no patterns).",every_label:"Check for new mail every",interval_rule:"An automation that runs a model on new mail checks once an hour by default; one that needs no model checks every 60 s. The shortest interval is 60 s.",max_batch_label:"At most this many emails per run",max_batch_hint:"The rest wait for the next run. Each email is read once by this automation; mail that arrived before it was created, or while it is paused, is not processed.",untrusted_hint:"Incoming mail is data, never instructions: the automation acts only on its task. Link-opening tools (fetch_url, browser_probe) always ask for your approval.",notify_label:"Email me the result",notify_hint:"When a run notifies you, or fails for good, the notice is also emailed to you.",recipients_legend:"May send email without asking to",recipients_self:"Only me (default)",recipients_list:"Me and these addresses",recipients_hint:"Sending to anyone else waits for your approval. Your recipient policy in My email still applies."},wp={labels:xw,hints:bw,run_now_next_run_line:kw,run_now_growing_line:jw,icons:Sw,email:Nw},Cw=/^([1-9][0-9]*)([smhd])$/,Ew={s:["second","seconds"],m:["minute","minutes"],h:["hour","hours"],d:["day","days"]};function Da(e){if(typeof e!="string")return null;const t=Cw.exec(e);return t?{amount:Number(t[1]),unit:t[2]}:null}function vp(e){const t=Da(e);if(!t)return`every ${e}`;const[s,a]=Ew[t.unit];return t.amount===1?`every ${s}`:`every ${t.amount} ${a}`}function Cr(e){if(!e)return"";const t=Date.parse(e);if(Number.isNaN(t))return e;const s=new Date(t).toISOString(),a=s.slice(17,19);return`${s.slice(0,10)} ${s.slice(11,16)}${a==="00"?"":`:${a}`} UTC`}function _p(e){const t=e;if(typeof t.every!="string")return t.start_at?`once at ${Cr(t.start_at)}`:"once, now";const s=[`${vp(t.every)} (UTC)`];return typeof t.count=="number"&&s.push(`${t.count} ${t.count===1?"run":"runs"} max`),typeof t.until=="string"&&s.push(`until ${Cr(t.until)}`),s.join(" · ")}function Eu(e){return e.source_id==="schedule"&&e.source_version===1?_p(e.config):e.source_id==="manual"&&e.source_version===1?"manual runs only":ol(e)?Ep(e.config):`${e.source_id}@${e.source_version}`}function xp(e){return e==="growing"?"Growing — each run sees the previous runs":"Independent — each run starts fresh"}const $w={active:"Active",paused:"Paused",completed:"Completed",failed:"Failed",archived:"Archived"},We=wp.email,bp="email.received",kp=1,Aw="1h",Tw="60s",jp=60,$u=100,du=1e3,wh=200,vh=200,_h=50;function ol(e){return!!e&&e.source_id===bp&&e.source_version===kp}function Au(e){return!!e&&e.effective_enabled===!0}function Sp(e){const t=[];for(const s of String(e??"").split(/[\s,;]+/)){const a=s.trim().toLowerCase();a&&!t.includes(a)&&t.push(a)}return t}const Rw=/[\s<>,;:"()[\]]/;function fu(e){const t=e.trim().toLowerCase(),s=t.indexOf("@");return s<=0||s===t.length-1?!1:!t.slice(s+1).includes("@")&&!Rw.test(t)}function Iw(e){const t=e.trim().toLowerCase();return!!t&&!t.includes("@")&&t.includes(".")&&!t.startsWith(".")&&!t.endsWith(".")&&!/[\s<>,;:"()[\]/*]/.test(t)}const Tu={usesModel:!0,every:null,maxBatch:null,fromIn:"",fromDomainIn:"",toIn:"",subjectContains:"",hasAttachment:"any"};function Ru(e){return e?Aw:Tw}function Np(e){const t=Da(e);return t?t.amount*{s:1,m:60,h:3600,d:86400}[t.unit]:null}function Kc(e,t,s,a,l){const u=Sp(e);if(!u.length)return null;const d=u.filter(f=>!s(f));return d.length&&l.push(`${t}: ${d.join(", ")} ${d.length===1?"is not":"are not"} ${a}.`),u.length>wh&&l.push(`${t}: at most ${wh} entries.`),u}function Cp(e){const t=[],s={uses_model:e.usesModel};e.every===null?s.every=Ru(e.usesModel):!Number.isInteger(e.every.amount)||e.every.amount<1?t.push("The check interval must be a whole number of at least 1."):s.every=`${e.every.amount}${e.every.unit}`,s.every!==void 0&&(Np(s.every)??0)<jp&&t.push("The check interval is at least 60 seconds."),e.maxBatch===null?s.max_batch=$u:!Number.isInteger(e.maxBatch)||e.maxBatch<1||e.maxBatch>du?t.push(`At most this many emails per run: a whole number from 1 to ${du}.`):s.max_batch=e.maxBatch;const a={},l=Kc(e.fromIn,We.from_in,fu,"an email address",t);l&&(a.from_in=l);const u=Kc(e.fromDomainIn,We.from_domain_in,Iw,"a domain like example.com",t);u&&(a.from_domain_in=u);const d=Kc(e.toIn,We.to_in,fu,"an email address",t);d&&(a.to_in=d);const f=e.subjectContains.trim();return f&&(f.length>vh||/[\r\n]/.test(f)?t.push(`${We.subject_contains}: one line of at most ${vh} characters.`):a.subject_contains=f),e.hasAttachment==="yes"?a.has_attachment=!0:e.hasAttachment==="no"&&(a.has_attachment=!1),Object.keys(a).length&&(s.filter=a),{config:s,errors:t}}function Ep(e){const t=e,s=t.filter??{},a=["when an email arrives"],l=[...s.from_in??[],...s.from_domain_in??[]];l.length&&a.push(`from ${l.join(", ")}`),s.to_in&&s.to_in.length&&a.push(`to ${s.to_in.join(", ")}`),typeof s.subject_contains=="string"&&s.subject_contains&&a.push(`subject contains “${s.subject_contains}”`),s.has_attachment===!0&&a.push("with attachments"),s.has_attachment===!1&&a.push("without attachments");const u=typeof t.every=="string"?t.every:Ru(t.uses_model!==!1);a.push(`checked ${vp(u)}`);const d=typeof t.max_batch=="number"?t.max_batch:$u;return a.push(`up to ${d} per run`),a.join(" · ")}const hu={mode:"self",addresses:""};function pu(e){if(e.mode==="self")return{recipients:["self"],errors:[]};const t=[],s=Sp(e.addresses).filter(l=>l!=="self");s.length||t.push("Name at least one address the automation may email, or choose Only me.");const a=s.filter(l=>!fu(l));return a.length&&t.push(`${We.recipients_list}: ${a.join(", ")} ${a.length===1?"is not an email address":"are not email addresses"}.`),s.length+1>_h&&t.push(`At most ${_h-1} addresses.`),{recipients:["self",...s],errors:t}}function Mw(e){const t=(e??[]).filter(s=>s!=="self");return t.length?{mode:"list",addresses:t.join(", ")}:{mode:"self",addresses:""}}function Lw(e){const t=(e??["self"]).filter(s=>s!=="self");return t.length?`Me and ${t.join(", ")}`:"Only me"}function $p(e){return{channels:e?["console","email"]:["console"]}}function Ap(e){return!!e&&Array.isArray(e.channels)&&e.channels.includes("email")}function Pw(e){return Ap(e)?"In the console and by email":"In the console"}const ir={pause:"automation.pause",resume:"automation.resume",run_now:"automation.run_now",stop_current:"automation.stop_current",archive:"automation.archive"},Ow=new Set(["running","waiting","backoff"]);function Dw(e,t=[]){return e.current_occurrence!=null}function Tp(e){const t=e.current_occurrence;if(!t)return null;const s=t.attempt>1?` (attempt ${t.attempt})`:"";return t.status==="backoff"?`Run #${t.index} waiting to retry (attempt ${t.attempt+1})`:t.status==="admitted"?`Run #${t.index} starting${s}`:`Run #${t.index} running${s}`}function Rp(e,t){const s=Date.parse(e);if(Number.isNaN(s))return"";const a=Math.round((s-t)/6e4);if(a<=0)return"due now";if(a<60)return`in ${a} min`;const l=Math.floor(a/60);return l<24?`in ${l} h${a%60?` ${a%60} min`:""}`:`in ${Math.floor(l/24)} d${l%24?` ${l%24} h`:""}`}function nl(e,t=[],s=!1){const a=new Set(e.capabilities),l=e.status,u=Dw(e,t),d=(y,v,x)=>s?{enabled:!1,reason:"Working…"}:e.legacy?{enabled:!1,reason:"Legacy schedule: managed with its existing controls."}:a.has(y)?l==="archived"?{enabled:!1,reason:"Archived: history is kept, nothing runs."}:v?{enabled:!0}:{enabled:!1,reason:x}:{enabled:!1,reason:"Not permitted for this automation."},f=l==="active"||l==="paused",h=l==="active"?"pause":"resume";return{active:s?{enabled:!1,reason:"Working…"}:e.legacy?{enabled:!1,reason:"Legacy schedule: managed with its existing controls."}:l==="archived"?{enabled:!1,reason:"Archived: history is kept, nothing runs."}:f?a.has(h)?{enabled:!0}:{enabled:!1,reason:"Not permitted for this automation."}:{enabled:!1,reason:"The automation has ended."},pause:d("pause",l==="active",l==="paused"?"Already paused.":"The automation has ended."),resume:d("resume",l==="paused",l==="active"?"Already running on schedule.":"The automation has ended."),run_now:d("run_now",f&&!u,u?"An occurrence is in progress.":"The automation has ended."),stop_current:d("stop_current",u,"Nothing is running."),revise:d("revise",!0,""),archive:d("archive",!0,""),discuss:s?{enabled:!1,reason:"Working…"}:e.legacy?{enabled:!1,reason:"Legacy schedule: discussion is not available."}:a.has("discuss")?{enabled:!0}:{enabled:!1,reason:"Discussion is not permitted for this automation."}}}function Fw(e){return e.status==="active"?ir.pause:ir.resume}function zw(e){return e.status==="failed"?"failed":e.waits.length>0||e.status==="waiting"?"waiting":e.notify!==null?"notified":e.status==="running"||e.status==="backoff"?"running":"quiet"}function Ww(e){return[...e].sort((t,s)=>t.index-s.index).map(t=>{const s=zw(t),a=`${t.attempts} ${t.attempts===1?"attempt":"attempts"}`,l=s==="failed"?`Failed after ${a}`:s==="waiting"?"Waiting for you":s==="notified"?"Notified":s==="running"?"Running":null,u=t.status==="completed"&&t.attempts>1?`completed after ${a}`:t.status;return{row:t,tone:s,notable:s==="failed"||s==="waiting"||s==="notified",badge:l,statusText:u,canDiscuss:!Ow.has(t.status)}})}function Uw(e){const t=e.attention.items;return t.length?t[t.length-1].cursor:null}function Ip(e){const t=e.attention,s=[];return t.unseen_count>0&&s.push(`${t.unseen_count} unseen`),t.pending_waits>0&&s.push(`${t.pending_waits} waiting for you`),s.length?s.join(" · "):"nothing new"}const Bw={unauthorized:"Sign in to the gateway to manage automations.",forbidden:"You are not allowed to do this with automations.",automation_not_found:"This automation does not exist (or is not yours).",occurrence_not_found:"That occurrence does not exist.",revision_conflict:"The automation changed since this view loaded. Reload it, then try again.",automation_busy:"An occurrence is already running or queued. Wait for it to finish.",invalid_state:"The automation's current state does not allow this.",identity_conflict:"This request id was already used for a different request.",invalid_request:"The gateway rejected the request as malformed.",invalid_definition:"The automation definition is not valid.",unsupported_feature:"The gateway does not support this yet.",unknown_trigger_source:"The gateway does not know this trigger source.",invalid_response:"The gateway gave an unexpected answer.",invalid_payload:"That answer could not be sent."};function Iu(e){return{title:Bw[e.code]??`The gateway refused the request (${e.code}).`,detail:e.message}}function Mu(e){if(!e||typeof e!="object")return!1;const t=e;return typeof t.status=="number"&&typeof t.code=="string"&&typeof t.message=="string"}function Mp(e,t){const s=e.trigger,a=s.source_id==="schedule"||ol(s)?s.config.every:void 0,l=t?t.target.input_data.prompt:void 0;return{title:e.title,every:typeof a=="string"?a:null,context:e.context_mode,prompt:typeof l=="string"?l:null,toolApproval:t?t.policy.tool_approval:null,notifyEmail:t?Ap(t.notify):null,emailRecipients:t?Mw(t.policy.email_allowed_recipients):null}}function Vw(e,t,s){const a=[],l={},u=t.title.trim();u?u.length>120?a.push("Title is at most 120 characters."):u!==e.title&&(l.title=u):a.push("Title is required.");const d=Mp(e,s);if(t.every!==d.every&&t.every!==null){const f=ol(e.trigger);if(!Da(t.every))a.push("Interval must be a whole number of minutes, hours or days.");else if(f&&(Np(t.every)??0)<jp)a.push("The check interval is at least 60 seconds.");else{const h={...e.trigger.config,every:t.every};f&&delete h.start_at,l.trigger={source_id:e.trigger.source_id,source_version:e.trigger.source_version,config:h}}}if(t.context!==e.context_mode&&(l.context={mode:t.context}),s&&typeof d.prompt=="string"&&typeof t.prompt=="string"&&t.prompt.trim()!==d.prompt.trim()){const f=t.prompt.trim();f?l.target={bundle_ref:s.target.bundle_ref,flow_id:s.target.flow_id,input_data:{...s.target.input_data,prompt:f}}:a.push("Task is required.")}if(s&&t.toolApproval&&t.toolApproval!==d.toolApproval&&(l.policy={tool_approval:t.toolApproval}),s&&typeof t.notifyEmail=="boolean"&&t.notifyEmail!==d.notifyEmail&&(l.notify=$p(t.notifyEmail)),s&&t.emailRecipients){const f=pu(t.emailRecipients),h=pu(d.emailRecipients??hu).recipients;f.errors.length?a.push(...f.errors):JSON.stringify(f.recipients)!==JSON.stringify(h)&&(l.policy={...l.policy??{},email_allowed_recipients:f.recipients})}return a.length?{errors:a}:Object.keys(l).length?l:null}const Gw=[{label:"every 5 minutes",when:{kind:"every",amount:5,unit:"m"}},{label:"every 30 minutes",when:{kind:"every",amount:30,unit:"m"}},{label:"every hour",when:{kind:"every",amount:1,unit:"h"}},{label:"every 8 hours",when:{kind:"every",amount:8,unit:"h"}},{label:"every 24 hours",when:{kind:"every",amount:24,unit:"h"}},{label:"every 7 days",when:{kind:"every",amount:7,unit:"d"}}];function Jc(e){if(!e)return null;const t=/^(\d{4}-\d{2}-\d{2})T(\d{2}:\d{2})(:\d{2})?$/.exec(e.trim());if(!t)return null;const s=`${t[1]}T${t[2]}${t[3]??":00"}Z`;return Number.isNaN(Date.parse(s))?null:s}function Hw(e){const t=e.trim().split(`
53
- `)[0].trim();return t.length>120?`${t.slice(0,119)}…`:t}function Lp(e){const t=[],s={};if(e.when.kind==="once"){const l=Jc(e.when.at);return l?s.start_at=l:t.push("Pick the date and time (UTC) to run once."),{config:s,errors:t}}const a=e.when.amount;if(!Number.isInteger(a)||a<1?t.push("The interval must be a whole number of at least 1."):s.every=`${a}${e.when.unit}`,e.startAt){const l=Jc(e.startAt);l?s.start_at=l:t.push("First run must be a date and time (UTC).")}if(e.count!==void 0&&(!Number.isInteger(e.count)||e.count<1?t.push("Maximum runs must be a whole number of at least 1."):s.count=e.count),e.until){const l=Jc(e.until);l?s.until=l:t.push("Stop at must be a date and time (UTC).")}return{config:s,errors:t}}function Kw(e){if(e.trigger==="email"){const l=Cp(e.email??Tu);return l.errors.length?"":Ep(l.config)}const{config:t,errors:s}=Lp(e);if(s.length)return"";const a=_p(t);return e.when.kind==="once"?a:`${a}, first run ${t.start_at?`at ${Cr(t.start_at)}`:"now"}`}function Jw(e,t){const s=[];t.target||s.push("Choose what to run.");const a=e.prompt.trim();a||s.push("Write the task to run.");const l=(e.title??"").trim()||Hw(a);l.length>120&&s.push("Title is at most 120 characters.");const u=e.trigger==="email",d=u?Cp(e.email??Tu):Lp(e);s.push(...d.errors);const f=e.emailRecipients&&e.emailRecipients.mode==="list"?pu(e.emailRecipients):null;if(f&&s.push(...f.errors),s.length||!t.target)return{ok:!1,errors:s};const h={...t.target,input_data:{...t.target.input_data??{},prompt:a}},g={request_id:t.requestId,title:l,target:h,trigger:u?{source_id:bp,source_version:kp,config:d.config}:{source_id:"schedule",source_version:1,config:d.config},context:{mode:e.context},policy:{tool_approval:e.toolApproval??"auto",...f?{email_allowed_recipients:f.recipients}:{}}};return e.notifyEmail===!0&&(g.notify=$p(!0)),{ok:!0,body:g}}const Qw="Tools run without asking (you approve them now by creating this automation)";function Yw(e){if(e.kind!=="tool_approval"||!Array.isArray(e.details))return null;const t=[];for(const s of e.details){if(!s||typeof s!="object"||Array.isArray(s))return null;const a=s;if(typeof a.name!="string"||!a.arguments||typeof a.arguments!="object"||Array.isArray(a.arguments)||a.call_id!==void 0&&typeof a.call_id!="string")return null;t.push({name:a.name,arguments:a.arguments,...typeof a.call_id=="string"?{call_id:a.call_id}:{}})}return t}function Xw(e){const t=e.trim();if(!t)return{ok:!1,error:"Enter a JSON payload."};try{return{ok:!0,payload:JSON.parse(t)}}catch(s){return{ok:!1,error:`The payload is not valid JSON (${s instanceof Error?s.message:String(s)}).`}}}const Pp={ask_user:"Question for you",tool_approval:"Approval needed",event:"Waiting for an event"};class Op{constructor(t){this.mint=t,this.open=new Map}idFor(t){let s=this.open.get(t);return s===void 0&&(s=this.mint(),this.open.set(t,s)),s}settle(t,s){(s.ok||Zw(s.error))&&this.open.delete(t)}}function Zw(e){return Mu(e)&&e.status>0&&e.code!=="invalid_response"}function Dp(){return Cu()}class qw{constructor(){this.acked=null,this.inflight=null,this.failedKey=null,this.failedToken=void 0}next(t,s){return!t||t===this.acked||t===this.inflight||t===this.failedKey&&s===this.failedToken?null:(this.inflight=t,t)}succeeded(t){this.inflight===t&&(this.inflight=null),this.acked=t,this.failedKey=null}failed(t,s){this.inflight===t&&(this.inflight=null),this.failedKey=t,this.failedToken=s}get acknowledged(){return this.acked}}function xh(e,t){if(!e)return null;for(const s of t){const a=e.querySelector(s);if(a&&a.disabled!==!0&&typeof a.focus=="function")return a}return null}function mu(e){if(Au(e.status))return null;const t=We.not_set_up,s=We.open_my_email,a=t.endsWith(s)?t.slice(0,t.length-s.length):`${t} `,l=e.status&&e.status.admin_disabled&&typeof e.status.admin_disabled.cause=="string"?e.status.admin_disabled.cause:"";return i.jsxs("p",{className:"af-auto__hint af-email__notice",role:"note","data-email-setup":"missing",children:[a,e.onOpenMyEmail?i.jsx("button",{type:"button",className:"af-auto__linkbtn","data-action":"open-my-email",onClick:e.onOpenMyEmail,children:s}):s,l?i.jsxs("span",{className:"af-email__cause",children:[" (",l,")"]}):null]})}function ev(e){const t=e.value,s=f=>e.onChange({...t,...f}),a=f=>`${e.idBase}-email-${f}`,l=Da(Ru(t.usesModel)),u=t.every??(l&&l.unit==="s"?{amount:Math.max(1,Math.round(l.amount/60)),unit:"m"}:{amount:l?l.amount:1,unit:l?l.unit:"h"}),d=e.disabled===!0;return i.jsxs("div",{className:"af-email__trigger","data-field":"email-trigger",children:[i.jsxs("div",{className:"af-auto__row",children:[i.jsx("span",{children:We.every_label}),i.jsx("input",{type:"number",min:1,step:1,value:String(u.amount),disabled:d,"aria-label":"Check interval amount",name:"email_every_amount",onChange:f=>s({every:{amount:Number(f.target.value),unit:u.unit}})}),i.jsxs("select",{value:u.unit,disabled:d,"aria-label":"Check interval unit",name:"email_every_unit",onChange:f=>s({every:{amount:u.amount,unit:f.target.value}}),children:[i.jsx("option",{value:"m",children:"minutes"}),i.jsx("option",{value:"h",children:"hours"}),i.jsx("option",{value:"d",children:"days"})]})]}),i.jsx("p",{className:"af-auto__hint","data-email-rule":"interval",children:We.interval_rule}),i.jsxs("label",{className:"af-auto__field",htmlFor:a("batch"),children:[i.jsx("span",{children:We.max_batch_label}),i.jsx("input",{id:a("batch"),name:"email_max_batch",type:"number",min:1,max:du,step:1,disabled:d,value:String(t.maxBatch??$u),onChange:f=>s({maxBatch:f.target.value.trim()===""?null:Number(f.target.value)})})]}),i.jsx("p",{className:"af-auto__hint",children:We.max_batch_hint}),i.jsxs("fieldset",{className:"af-auto__field af-email__filters",disabled:d,children:[i.jsx("legend",{children:We.filters_legend}),i.jsxs("label",{className:"af-auto__field",htmlFor:a("from"),children:[i.jsx("span",{children:We.from_in}),i.jsx("input",{id:a("from"),name:"email_from_in",value:t.fromIn,spellCheck:!1,placeholder:"alice@example.com, billing@example.org",onChange:f=>s({fromIn:f.target.value})})]}),i.jsxs("label",{className:"af-auto__field",htmlFor:a("domain"),children:[i.jsx("span",{children:We.from_domain_in}),i.jsx("input",{id:a("domain"),name:"email_from_domain_in",value:t.fromDomainIn,spellCheck:!1,placeholder:"example.com",onChange:f=>s({fromDomainIn:f.target.value})})]}),i.jsxs("label",{className:"af-auto__field",htmlFor:a("to"),children:[i.jsx("span",{children:We.to_in}),i.jsx("input",{id:a("to"),name:"email_to_in",value:t.toIn,spellCheck:!1,onChange:f=>s({toIn:f.target.value})})]}),i.jsxs("label",{className:"af-auto__field",htmlFor:a("subject"),children:[i.jsx("span",{children:We.subject_contains}),i.jsx("input",{id:a("subject"),name:"email_subject_contains",value:t.subjectContains,maxLength:200,onChange:f=>s({subjectContains:f.target.value})})]}),i.jsxs("label",{className:"af-auto__field",htmlFor:a("attach"),children:[i.jsx("span",{children:We.has_attachment}),i.jsxs("select",{id:a("attach"),name:"email_has_attachment",value:t.hasAttachment,onChange:f=>s({hasAttachment:f.target.value}),children:[i.jsx("option",{value:"any",children:We.has_attachment_any}),i.jsx("option",{value:"yes",children:We.has_attachment_yes}),i.jsx("option",{value:"no",children:We.has_attachment_no})]})]}),i.jsx("p",{className:"af-auto__hint",children:We.list_hint})]})]})}function tv(e){const t=a=>`${e.idBase}-email-${a}`,s=e.disabled===!0;return i.jsxs("div",{className:"af-email__options","data-field":"email-options",children:[i.jsx(Ps,{variant:"row",action:"notify-email",label:We.notify_label,checked:e.notifyEmail,unavailableReason:s?"Connect a mailbox first.":null,onChange:a=>e.onNotifyEmailChange(a)}),i.jsx("p",{className:"af-auto__hint",children:We.notify_hint}),i.jsxs("fieldset",{className:"af-auto__field",disabled:s,"data-field":"email-recipients",children:[i.jsx("legend",{children:We.recipients_legend}),i.jsxs("label",{children:[i.jsx("input",{type:"radio",name:t("rcpt"),value:"self",checked:e.recipients.mode==="self",onChange:()=>e.onRecipientsChange({...e.recipients,mode:"self"})})," ",We.recipients_self]}),i.jsxs("label",{children:[i.jsx("input",{type:"radio",name:t("rcpt"),value:"list",checked:e.recipients.mode==="list",onChange:()=>e.onRecipientsChange({...e.recipients,mode:"list"})})," ",We.recipients_list]}),e.recipients.mode==="list"?i.jsx("textarea",{name:"email_recipient_list","aria-label":We.recipients_list,rows:2,spellCheck:!1,value:e.recipients.addresses,placeholder:"colleague@example.com",onChange:a=>e.onRecipientsChange({mode:"list",addresses:a.target.value})}):null,i.jsx("p",{className:"af-auto__hint",children:We.recipients_hint})]})]})}const nv={active:"play",paused:"pause",completed:"check",failed:"error",archived:"archive"};function Fp(e){const t=String(e.status),s=nv[t];return i.jsxs("span",{className:`af-auto__status af-auto__status--${t}${e.className?` ${e.className}`:""}`,"data-state":t,children:[i.jsx("span",{className:"af-auto__status-word",children:$w[t]??t}),s?i.jsx(ie,{name:s,size:e.iconSize??11,className:"af-auto__status-icon"}):null]})}const bh="Discuss — fork at this occurrence (own workspace, automation files read-only)",ll=e=>i.jsx("div",{className:"af-auto-text","data-unformatted":"true",children:e});function rv(e){return Mu(e)?e:{status:0,code:"client_error",message:e&&typeof e=="object"&&"message"in e?String(e.message):String(e)}}function kh(e){const t=e.path.split(new RegExp("(?<=[/\\\\_-])"));return i.jsx("code",{className:"af-auto__path-text",children:t.map((s,a)=>i.jsxs(ft.Fragment,{children:[s,a<t.length-1?i.jsx("wbr",{}):null]},a))})}function sv(e,t){const s=e.trigger,a=t.find(l=>l.id===s.source_id&&l.version===s.source_version);return a?"available"in a&&a.available===!1?`Trigger source ${s.source_id}@${s.source_version} is unavailable${a.unavailable_reason?`: ${a.unavailable_reason}`:"."}`:null:`This gateway does not list the trigger source ${s.source_id}@${s.source_version}.`}function iv(e){const t=e.summary,s=Tp(t),a=sv(t,e.triggerSources),l=t.next_fire_at?`${Cr(t.next_fire_at)} (${Rp(t.next_fire_at,e.nowMs??Date.now())})`:t.status==="paused"?"none while paused":"none scheduled";return i.jsxs("header",{className:"af-auto__head",children:[i.jsxs("div",{className:"af-auto__titlebar",children:[i.jsx("h2",{className:"af-auto__title",id:e.titleId,tabIndex:-1,children:t.title}),i.jsx(Fp,{status:t.status}),t.legacy?i.jsx("span",{className:"af-auto__legacy",children:"Legacy schedule"}):null]}),i.jsxs("dl",{className:"af-auto__facts",children:[i.jsx("dt",{children:"When"}),i.jsxs("dd",{"data-fact":"trigger",children:[Eu(t.trigger),a?i.jsxs("span",{className:"af-auto__warn",role:"note",children:[" ",a]}):null]}),i.jsx("dt",{children:"Context"}),i.jsx("dd",{"data-fact":"context",children:xp(t.context_mode)}),s?i.jsxs(i.Fragment,{children:[i.jsx("dt",{children:"Now"}),i.jsx("dd",{"data-fact":"current",className:"is-notable",children:s})]}):null,i.jsx("dt",{children:"Next run"}),i.jsx("dd",{"data-fact":"next",children:l}),i.jsx("dt",{children:"Runs"}),i.jsx("dd",{"data-fact":"count",children:t.occurrence_count}),t.workspace_root?i.jsxs(i.Fragment,{children:[i.jsx("dt",{children:"Workspace"}),i.jsx("dd",{"data-fact":"workspace",className:"af-auto__workspace",children:e.onOpenWorkspace?i.jsxs("button",{type:"button",className:"af-auto__path","data-action":"open-workspace",title:`Browse the automation's folder
54
- ${t.workspace_root}`,"aria-label":`Browse the automation's folder ${t.workspace_root}`,onClick:()=>{var u;return(u=e.onOpenWorkspace)==null?void 0:u.call(e,t.automation_id)},children:[i.jsx(ie,{name:"folder",size:14,className:"af-auto__path-icon"}),i.jsx(kh,{path:t.workspace_root})]}):i.jsxs("span",{className:"af-auto__path af-auto__path--static",children:[i.jsx(ie,{name:"folder",size:14,className:"af-auto__path-icon"}),i.jsx(kh,{path:t.workspace_root})]})})]}):null,i.jsx("dt",{children:"Attention"}),i.jsx("dd",{"data-fact":"attention",className:t.attention.unread||t.attention.pending_waits?"is-notable":void 0,children:Ip(t)}),t.revision!==null?i.jsxs(i.Fragment,{children:[i.jsx("dt",{children:"Revision"}),i.jsx("dd",{"data-fact":"revision",children:t.revision})]}):null]})]})}function av(e){const t=e.definition,s=e.renderText??ll,a=t.target.input_data.prompt,l=t.policy.retry,u=t.policy.tool_approval;return i.jsxs("details",{className:"af-auto__definition","data-definition-revision":t.revision,open:e.open,children:[i.jsxs("summary",{children:[i.jsx(ie,{name:"chevronRight",size:14,className:"af-auto__definition-chevron"}),i.jsx(ie,{name:"file",size:14}),i.jsx("span",{className:"af-auto__definition-title",children:"Definition"}),i.jsxs("span",{className:"af-auto__definition-meta",children:["revision ",t.revision]})]}),i.jsxs("dl",{className:"af-auto__facts",children:[i.jsx("dt",{children:"Target"}),i.jsx("dd",{"data-def":"target",children:i.jsx("code",{children:t.target.workflow_id})}),typeof a=="string"&&a?i.jsxs(i.Fragment,{children:[i.jsx("dt",{children:"Task"}),i.jsx("dd",{"data-def":"prompt",children:s(a)})]}):null,i.jsx("dt",{children:"Trigger"}),i.jsxs("dd",{"data-def":"trigger",children:[t.trigger.source_id,"@",t.trigger.source_version," · ",Eu(t.trigger),i.jsx("pre",{className:"af-auto__json",children:JSON.stringify(t.trigger.config,null,2)})]}),i.jsx("dt",{children:"Context"}),i.jsx("dd",{"data-def":"context",children:xp(t.context.mode)}),i.jsx("dt",{children:"Tools"}),i.jsx("dd",{"data-def":"tool_approval",children:u==="ask"?"Ask before each tool call (ask)":u==="auto"?"Run without asking (auto)":String(u)}),i.jsx("dt",{children:"Notify"}),i.jsx("dd",{"data-def":"notify",children:Pw(t.notify)}),i.jsx("dt",{children:"May email"}),i.jsx("dd",{"data-def":"email_allowed_recipients",children:Lw(t.policy.email_allowed_recipients)}),i.jsx("dt",{children:"Retries"}),i.jsxs("dd",{"data-def":"retry",children:[l.max_attempts," ",l.max_attempts===1?"attempt":"attempts",", backoff ",l.backoff.initial," ×",l.backoff.factor," up to ",l.backoff.max]}),i.jsx("dt",{children:"Revision"}),i.jsx("dd",{"data-def":"revision",children:t.revision})]})]})}const Fa=wp,gu=Fa.labels,zp={active:"play",pause:"pause",resume:"play",run_now:Fa.icons.run_now.name,stop_current:"stop",revise:"edit",archive:"archive",discuss:"chat"},yu=Fa.hints,ov=Fa.run_now_next_run_line,lv=Fa.run_now_growing_line;function jh(e,t){const s=[yu[e]];return e==="run_now"&&t&&(t.next_fire_at&&s.push(ov.replace("{time}",Cr(t.next_fire_at))),t.context_mode==="growing"&&s.push(lv)),s.join(`
55
- `)}function cv(e,t,s){const a=new Map;for(const d of t){const f=e[d];if(f.enabled)continue;const h=f.reason??"Not available now.";a.set(h,[...a.get(h)??[],d])}const l=[],u={};return[...a.entries()].forEach(([d,f],h)=>{const g=`${s}-why-${h}`;l.push({id:g,text:`${f.map(y=>gu[y]).join(", ")}: ${d}`});for(const y of f)u[y]=g}),{lines:l,describedBy:u}}function Ft(e){return i.jsxs(i.Fragment,{children:[i.jsx(ie,{name:e.icon,size:14,className:"af-auto__btn-icon"}),i.jsx("span",{children:e.label})]})}function uv(e){const t=nl(e.summary,e.occurrences,e.busy),a=cv(t,["active","run_now","stop_current","revise","archive"],e.idBase??`af-auto-${e.summary.automation_id}`),l=(u,d,f)=>{const h=jh(u,e.summary);return i.jsx("button",{type:"button",className:`af-auto__btn${f!=null&&f.danger?" af-auto__btn--danger":""}`,"data-action":(f==null?void 0:f.action)??u,disabled:!t[u].enabled,title:t[u].enabled?h:`${t[u].reason}
56
- ${h}`,"aria-description":h,"aria-describedby":a.describedBy[u],"aria-pressed":f==null?void 0:f.pressed,onClick:d,children:i.jsx(Ft,{icon:zp[u],label:(f==null?void 0:f.label)??gu[u]})},u)};return i.jsxs("div",{className:"af-auto__controls-wrap",children:[i.jsxs("div",{className:"af-auto__actionbar",children:[i.jsxs("div",{className:"af-auto__controls",role:"toolbar","aria-label":"Automation controls",children:[i.jsx(Ps,{className:"af-auto__switch",action:"active",label:gu.active,checked:e.summary.status==="active",unavailableReason:t.active.enabled?null:t.active.reason??"Not available now.",describedBy:a.describedBy.active,busy:e.busy,hint:jh("active",e.summary),onChange:()=>e.onCommand(Fw(e.summary))},"active"),l("run_now",()=>e.onCommand(ir.run_now)),l("stop_current",()=>e.onCommand(ir.stop_current)),l("revise",e.onToggleRevise,{pressed:e.reviseOpen,action:"edit"}),l("archive",e.onAskArchive,{danger:!0,label:"Archive…"})]}),i.jsx("span",{className:`af-auto__notice${e.notice?" af-auto__notice--on":""}`,role:"status",tabIndex:-1,children:e.notice?i.jsxs(i.Fragment,{children:[i.jsx(ie,{name:"check",size:13}),i.jsx("span",{className:"af-auto__notice-text",children:e.notice}),e.onDismissNotice?i.jsx("button",{type:"button",className:"af-auto__icon-btn af-auto__icon-btn--bare","data-action":"dismiss-notice","aria-label":"Dismiss",title:"Dismiss",onClick:e.onDismissNotice,children:i.jsx(ie,{name:"x",size:12})}):null]}):null})]}),a.lines.length?i.jsxs("p",{className:"af-auto__reasons",children:[i.jsx(ie,{name:"info",size:12,className:"af-auto__reasons-icon"}),a.lines.map(u=>i.jsx("span",{id:u.id,children:u.text},u.id))]}):null,e.summary.status==="paused"&&t.run_now.enabled?i.jsx("p",{className:"af-auto__hint",children:"Paused: scheduled runs are skipped. Run now works and keeps it paused."}):null,e.confirmingArchive?i.jsxs("div",{className:"af-auto__confirm",role:"group","aria-label":"Confirm archive",children:[i.jsxs("p",{children:["Archive “",e.summary.title,"”? Its history stays readable; it will not run again. The current run, if any, finishes."]}),i.jsxs("div",{className:"af-auto__row",children:[i.jsx("button",{type:"button",className:"af-auto__btn af-auto__btn--danger","data-action":"archive-confirm",disabled:!t.archive.enabled,onClick:()=>e.onCommand(ir.archive),children:i.jsx(Ft,{icon:"archive",label:"Archive"})}),i.jsx("button",{type:"button",className:"af-auto__btn","data-action":"archive-cancel",onClick:e.onCancelArchive,children:i.jsx(Ft,{icon:"x",label:"Keep it"})})]})]}):null]})}const Sh=[["m","minutes"],["h","hours"],["d","days"]];function dv(e,t){const s=S=>{const A=e.elements.namedItem(S);return A&&typeof A.value=="string"?A.value:null},a=s("every_amount"),l=s("every_unit"),u=a!==null&&l!==null?`${a.trim()}${l}`:t.every,d=e.elements.namedItem("context"),f=d&&(d.value==="growing"||d.value==="independent")?d.value:t.context,h=s("prompt"),g=e.elements.namedItem("tool_approval"),y=g&&(g.value==="auto"||g.value==="ask")?g.value:t.toolApproval??null,v=e.elements.namedItem("notify_email"),x=v&&typeof v.checked=="boolean"?v.checked:t.notifyEmail??null,b=e.elements.namedItem("email_recipients"),k=s("email_recipient_list"),C=b&&(b.value==="self"||b.value==="list")?{mode:b.value,addresses:k??""}:t.emailRecipients??null;return{title:s("title")??t.title,every:u,context:f,prompt:h??t.prompt??null,toolApproval:y,notifyEmail:x,emailRecipients:C}}function fv(e){const t=Mp(e.summary,e.definition),s=t.every?Da(t.every):null,a=s&&s.unit==="s"?[["s","seconds"],...Sh]:Sh,l=`af-auto-revise-${e.summary.automation_id}`,u=Au(e.emailStatus),d=ol(e.summary.trigger);return i.jsxs("form",{className:"af-auto__revise","aria-labelledby":`${l}-heading`,onSubmit:f=>{f.preventDefault(),e.onSubmit(dv(f.currentTarget,t))},onKeyDown:f=>{f.key==="Escape"&&(f.preventDefault(),e.onCancel())},children:[i.jsxs("h3",{className:"af-auto__form-title",id:`${l}-heading`,children:[i.jsx(ie,{name:"edit",size:14})," Edit automation"]}),i.jsxs("label",{className:"af-auto__field",htmlFor:`${l}-title`,children:[i.jsx("span",{children:"Title"}),i.jsx("input",{id:`${l}-title`,name:"title",defaultValue:t.title,maxLength:120,required:!0})]}),t.prompt!==null&&t.prompt!==void 0?i.jsxs("label",{className:"af-auto__field",htmlFor:`${l}-prompt`,children:[i.jsx("span",{children:"Task"}),i.jsx("textarea",{id:`${l}-prompt`,name:"prompt",defaultValue:t.prompt,rows:Math.min(10,Math.max(3,t.prompt.split(`
57
- `).length+1)),required:!0})]}):null,s?i.jsxs("fieldset",{className:"af-auto__field",children:[i.jsx("legend",{children:d?We.every_label:"Repeat every (UTC)"}),i.jsxs("div",{className:"af-auto__row",children:[i.jsx("input",{name:"every_amount",type:"number",min:1,step:1,defaultValue:s.amount,"aria-label":"Interval amount"}),i.jsx("select",{name:"every_unit",defaultValue:s.unit,"aria-label":"Interval unit",children:a.map(([f,h])=>i.jsx("option",{value:f,children:h},f))})]}),d?i.jsx("p",{className:"af-auto__hint","data-email-rule":"interval",children:We.interval_rule}):null]}):i.jsx("p",{className:"af-auto__hint",children:"This trigger has no interval to change."}),i.jsxs("fieldset",{className:"af-auto__field",children:[i.jsx("legend",{children:"Context"}),i.jsxs("label",{children:[i.jsx("input",{type:"radio",name:"context",value:"independent",defaultChecked:t.context==="independent"})," Independent — each run starts fresh"]}),i.jsxs("label",{children:[i.jsx("input",{type:"radio",name:"context",value:"growing",defaultChecked:t.context==="growing"})," Growing — each run sees the previous runs"]})]}),t.toolApproval?i.jsxs("fieldset",{className:"af-auto__field",children:[i.jsx("legend",{children:"Tools"}),i.jsxs("label",{children:[i.jsx("input",{type:"radio",name:"tool_approval",value:"auto",defaultChecked:t.toolApproval==="auto"})," Run without asking"]}),i.jsxs("label",{children:[i.jsx("input",{type:"radio",name:"tool_approval",value:"ask",defaultChecked:t.toolApproval==="ask"})," Ask before each tool call"]})]}):null,t.notifyEmail!==null&&t.notifyEmail!==void 0&&t.emailRecipients?i.jsxs("fieldset",{className:"af-auto__field","data-field":"email",children:[i.jsx("legend",{children:"Mailbox"}),u?null:i.jsx(mu,{status:e.emailStatus,onOpenMyEmail:e.onOpenMyEmail}),i.jsx(Iy,{variant:"row",action:"notify-email",name:"notify_email",label:We.notify_label,defaultChecked:!!t.notifyEmail,unavailableReason:!u&&!t.notifyEmail?"Connect a mailbox first.":null}),i.jsx("p",{className:"af-auto__hint",children:We.notify_hint}),i.jsxs("fieldset",{className:"af-auto__field","data-field":"email-recipients",children:[i.jsx("legend",{children:We.recipients_legend}),i.jsxs("label",{children:[i.jsx("input",{type:"radio",name:"email_recipients",value:"self",defaultChecked:t.emailRecipients.mode==="self"})," ",We.recipients_self]}),i.jsxs("label",{children:[i.jsx("input",{type:"radio",name:"email_recipients",value:"list",defaultChecked:t.emailRecipients.mode==="list",disabled:!u&&t.emailRecipients.mode!=="list"})," ",We.recipients_list]}),i.jsx("textarea",{name:"email_recipient_list","aria-label":We.recipients_list,rows:2,spellCheck:!1,defaultValue:t.emailRecipients.addresses,disabled:!u&&t.emailRecipients.mode!=="list"}),i.jsx("p",{className:"af-auto__hint",children:We.recipients_hint})]})]}):null,i.jsx("p",{className:"af-auto__hint",children:"Changes apply from the next run; a new interval never fires past ticks."}),e.errors.length?i.jsx("ul",{className:"af-auto__form-errors",role:"alert",children:e.errors.map(f=>i.jsx("li",{children:f},f))}):null,i.jsxs("div",{className:"af-auto__row",children:[i.jsx("button",{type:"submit",className:"af-auto__btn af-auto__btn--primary","data-action":"edit-save",disabled:e.busy,children:i.jsx(Ft,{icon:"check",label:"Save changes"})}),i.jsx("button",{type:"button",className:"af-auto__btn","data-action":"edit-cancel",onClick:e.onCancel,children:i.jsx(Ft,{icon:"x",label:"Cancel"})})]})]})}function wu(e,t){const s=e.elements.namedItem(t);return s&&typeof s.value=="string"?s.value.trim():""}function hv(e){const t=e.wait,s=`${e.idBase}-${t.run_id}-${t.wait_key}-prompt`,a=d=>e.onAnswerWait(t.run_id,t.wait_key,d),l=e.renderText??ll,u=d=>i.jsxs("div",{className:"af-auto-wait__prompt",id:s,children:[i.jsx("span",{className:"af-auto-wait__kind",children:Pp[t.kind]??"Waiting"}),t.prompt?l(t.prompt):i.jsxs("span",{children:[" ",d]})]});if(t.kind==="tool_approval"){const d=Yw(t);return i.jsxs("div",{className:"af-auto-wait af-auto-wait--tool_approval",role:"group","data-wait-key":t.wait_key,"data-wait-kind":t.kind,"aria-labelledby":s,children:[u("A tool call needs your approval."),d&&d.length?i.jsx("ul",{className:"af-auto-wait__calls","aria-label":"Tool calls to approve",children:d.map((f,h)=>i.jsxs("li",{"data-tool":f.name,children:[i.jsx("code",{className:"af-auto-wait__tool",children:f.name}),i.jsx("pre",{className:"af-auto-wait__args",children:JSON.stringify(f.arguments,null,2)})]},f.call_id??`${f.name}:${h}`))}):i.jsx("p",{className:"af-auto__hint",children:"The gateway did not list the tool calls; open the run to see them before approving."}),i.jsxs("div",{className:"af-auto__row",children:[i.jsx("button",{type:"button",className:"af-auto__btn af-auto__btn--primary","data-action":"wait-approve",disabled:e.busy,onClick:()=>a({approved:!0}),children:i.jsx(Ft,{icon:"check",label:"Approve"})}),i.jsx("button",{type:"button",className:"af-auto__btn af-auto__btn--danger","data-action":"wait-deny",disabled:e.busy,onClick:()=>a({approved:!1}),children:i.jsx(Ft,{icon:"x",label:"Deny"})})]})]})}return t.kind==="event"?i.jsxs("form",{className:"af-auto-wait af-auto-wait--event","data-wait-key":t.wait_key,"data-wait-kind":t.kind,"aria-labelledby":s,onSubmit:d=>{var h;d.preventDefault();const f=Xw(wu(d.currentTarget,"payload"));f.ok?a({payload:f.payload}):(h=e.onWaitError)==null||h.call(e,f.error)},children:[u("The run waits for an event."),i.jsx("textarea",{name:"payload",rows:3,"aria-label":"Event payload (JSON)",placeholder:'{"key": "value"}',disabled:e.busy}),i.jsx("div",{className:"af-auto__row",children:i.jsx("button",{type:"submit",className:"af-auto__btn af-auto__btn--primary","data-action":"wait-send-event",disabled:e.busy,children:i.jsx(Ft,{icon:"send",label:"Send event"})})})]}):t.kind==="ask_user"?i.jsxs("form",{className:"af-auto-wait af-auto-wait--ask_user","data-wait-key":t.wait_key,"data-wait-kind":t.kind,"aria-labelledby":s,onSubmit:d=>{d.preventDefault();const f=wu(d.currentTarget,"response");f&&a({response:f})},children:[u("The run is waiting for your input."),t.choices&&t.choices.length?i.jsx("div",{className:"af-auto__row",role:"group","aria-label":"Choices",children:t.choices.map(d=>i.jsx("button",{type:"button",className:"af-auto__btn","data-action":"wait-choice",disabled:e.busy,onClick:()=>a({response:d}),children:d},d))}):null,i.jsxs("div",{className:"af-auto__row",children:[i.jsx("input",{name:"response","aria-label":"Your answer",placeholder:"Your answer",disabled:e.busy}),i.jsx("button",{type:"submit",className:"af-auto__btn af-auto__btn--primary","data-action":"wait-answer",disabled:e.busy,children:i.jsx(Ft,{icon:"send",label:"Answer"})})]})]}):i.jsxs("div",{className:"af-auto-wait",role:"group","data-wait-key":t.wait_key,"data-wait-kind":String(t.kind),"aria-labelledby":s,children:[u("The run is waiting."),i.jsxs("p",{className:"af-auto__hint",children:["This kind of wait (",String(t.kind),") cannot be answered here; open the run."]})]})}function pv(e){const{row:t,tone:s,badge:a,statusText:l}=e.view,u=`af-auto-occ-${t.run_id}`,d=e.renderText??ll,f=e.discuss.enabled&&e.view.canDiscuss&&!e.busy,h=e.discuss.enabled?e.view.canDiscuss?null:"Available once this occurrence finishes.":e.discuss.reason??"Not available.",g=(x,b)=>e.renderTurn?e.renderTurn({kind:x,role:x==="trigger"?"user":"assistant",text:b,index:t.index,runId:t.run_id}):d(b),y=e.renderTurn?" af-auto-turn--card":"",v=s==="failed"?t.failure?"No answer.":"No answer: the run failed.":s==="waiting"?"Waiting for your answer.":s==="running"?"Running…":"No answer.";return i.jsxs("li",{className:`af-auto-occ af-auto-occ--${s}`,"data-index":t.index,"data-tone":s,"aria-labelledby":`${u}-h`,children:[i.jsxs("div",{className:`af-auto-turn af-auto-turn--trigger${y}`,"data-turn":"trigger",children:[i.jsxs("div",{className:"af-auto-turn__meta",id:`${u}-h`,children:[i.jsxs("span",{className:"af-auto-turn__index",children:["#",t.index]})," · ",t.trigger.summary," · fired ",Cr(t.fired_at)]}),i.jsx("div",{className:"af-auto-turn__text",children:g("trigger",t.user_turn)})]}),i.jsxs("div",{className:`af-auto-turn af-auto-turn--answer${y}`,"data-turn":"answer",children:[i.jsxs("div",{className:"af-auto-turn__meta",children:[a?i.jsx("span",{className:`af-auto-badge af-auto-badge--${s}`,children:a}):null,i.jsx("span",{className:"af-auto-turn__status",children:l}),t.finished_at?i.jsxs("span",{children:[" · ",Cr(t.finished_at)]}):null]}),t.notify?i.jsxs("div",{className:"af-auto-notify","data-notify":"true",children:[i.jsx("strong",{children:t.notify.title}),t.notify.body?i.jsx("div",{className:"af-auto-notify__body",children:d(t.notify.body)}):null]}):null,t.failure?i.jsxs("div",{className:"af-auto-failure","data-failure":t.failure.reason_code,children:[i.jsx("strong",{children:t.failure.reason_code}),": ",t.failure.message," ",i.jsxs("span",{className:"af-auto-turn__muted",children:["(after ",t.failure.attempts," ",t.failure.attempts===1?"attempt":"attempts",")"]})]}):null,t.answer?i.jsx("div",{className:"af-auto-turn__text",children:g("answer",t.answer)}):i.jsx("div",{className:"af-auto-turn__empty",children:v}),t.artifacts.length?i.jsx("ul",{className:"af-auto-artifacts","aria-label":"Artifacts",children:t.artifacts.map(x=>i.jsxs("li",{children:[e.onOpenResource?i.jsxs("button",{type:"button",className:"af-auto__linkbtn","data-action":"open-artifact",onClick:()=>{var b;return(b=e.onOpenResource)==null?void 0:b.call(e,{kind:"artifact",url:x.url,name:x.name,mimeType:x.mime_type,runId:t.run_id})},children:[i.jsx(ie,{name:"file",size:13,className:"af-auto__btn-icon"})," ",x.name]}):i.jsx("span",{className:"af-auto-artifact__name",children:x.name})," ",i.jsx("span",{className:"af-auto-turn__muted",children:x.mime_type})]},x.artifact_id))}):null,t.waits.map(x=>i.jsx(hv,{wait:x,busy:e.busy,idBase:u,onAnswerWait:e.onAnswerWait,onWaitError:e.onWaitError,renderText:e.renderText},`${x.run_id}:${x.wait_key}`))]}),i.jsxs("div",{className:"af-auto-occ__foot",children:[i.jsxs("details",{className:"af-auto-occ__details",children:[i.jsx("summary",{children:"Run details"}),i.jsxs("dl",{className:"af-auto__facts",children:[i.jsx("dt",{children:"Run"}),i.jsx("dd",{children:i.jsx("code",{children:t.run_id})}),i.jsx("dt",{children:"Attempts"}),i.jsx("dd",{children:t.attempts})]}),i.jsxs("div",{className:"af-auto__row",children:[i.jsx("button",{type:"button",className:"af-auto__btn","data-action":"open-run",onClick:()=>e.onOpenRun(t.run_id),children:i.jsx(Ft,{icon:"list",label:"Open run ledger"})}),e.onOpenResource?i.jsx("button",{type:"button",className:"af-auto__btn","data-action":"open-ledger-json",onClick:()=>{var x;return(x=e.onOpenResource)==null?void 0:x.call(e,{kind:"ledger",url:t.ledger_url,name:`run-${t.run_id}-ledger.json`,runId:t.run_id})},children:i.jsx(Ft,{icon:"file",label:"Ledger (JSON)"})}):null,t.workspace_url&&e.onOpenWorkspace?i.jsx("button",{type:"button",className:"af-auto__btn","data-action":"open-workspace",title:"Browse this run's folder",onClick:()=>{var x;return(x=e.onOpenWorkspace)==null?void 0:x.call(e,t.run_id)},children:i.jsx(Ft,{icon:"folder",label:"Workspace"})}):null]})]}),e.discussOpen?i.jsxs("form",{className:"af-auto-discuss","aria-label":`${bh}, from occurrence ${t.index}`,onSubmit:x=>{x.preventDefault();const b=wu(x.currentTarget,"prompt");b&&e.onDiscussSubmit(t.index,b)},children:[i.jsxs("p",{className:"af-auto__hint",children:["Starts a new session that forks this automation at #",t.index," with its full history (runs 1–",t.index,"). It works in its own writable workspace; the automation's files are mounted read-only for the file tools (shell commands are not sandboxed), and nothing is written back into the automation's session."]}),i.jsx("textarea",{name:"prompt",rows:3,"aria-label":"Your message",placeholder:"Ask about this result…",required:!0}),i.jsxs("div",{className:"af-auto__row",children:[i.jsx("button",{type:"submit",className:"af-auto__btn af-auto__btn--primary","data-action":"discuss-submit",disabled:e.busy,children:i.jsx(Ft,{icon:"send",label:"Start discussion"})}),i.jsx("button",{type:"button",className:"af-auto__btn","data-action":"discuss-cancel",onClick:e.onDiscussCancel,children:i.jsx(Ft,{icon:"x",label:"Cancel"})})]})]}):i.jsxs(i.Fragment,{children:[i.jsx("button",{type:"button",className:"af-auto__btn af-auto__btn--quiet","data-action":"discuss",disabled:!f,title:yu.discuss,"aria-description":yu.discuss,"aria-describedby":h?`${u}-discuss-why`:void 0,onClick:()=>e.onDiscussOpen(t.index),children:i.jsx(Ft,{icon:zp.discuss,label:bh})}),h?i.jsx("span",{className:"af-auto__reasons",id:`${u}-discuss-why`,children:h}):null]})]})]})}const mv=5e3,gv={[ir.pause]:"Automation paused.",[ir.resume]:"Automation active.",[ir.run_now]:"Run requested.",[ir.stop_current]:"Stop requested."};function yv(e){const{summary:t,busy:s}=e,a=e.renderText??ll,l=w.useId(),u=w.useRef(null),[d,f]=w.useState(!1),h=e.editOpen!==void 0,y=nl(t,e.occurrences,!1).revise.enabled&&(h?e.editOpen===!0:d),v=w.useRef(null);y?(!v.current||v.current.summary.automation_id!==t.automation_id)&&(v.current={summary:t,definition:e.definition}):v.current=null;const x=v.current,b=w.useRef(e.onEditOpenChange);b.current=e.onEditOpenChange;const k=B=>{var oe;h||f(B),(oe=b.current)==null||oe.call(b,B)},[C,S]=w.useState([]),[A,$]=w.useState(!1),[T,j]=w.useState(null),[L,z]=w.useState(null),[V,P]=w.useState(null);w.useEffect(()=>{if(!V)return;const B=setTimeout(()=>P(null),mv);return()=>clearTimeout(B)},[V]),w.useEffect(()=>{var oe;if(!y)return;S([]);const B=xh(u.current,['.af-auto__revise [name="title"]']);B==null||B.focus(),(oe=B==null?void 0:B.scrollIntoView)==null||oe.call(B,{block:"nearest"})},[y,t.automation_id]);const[ce,re]=w.useState(null);w.useEffect(()=>{var B;ce&&((B=xh(u.current,[...ce,".af-auto__notice",".af-auto__title"]))==null||B.focus(),re(null))},[ce]);const H=w.useRef(null);H.current||(H.current=new Op(e.newId??Dp));const W=H.current,J=B=>z(rv(B)),fe=(B,oe,le)=>{z(null),P(null),oe(W.idFor(B)).then(he=>{W.settle(B,{ok:!0}),le(he)},he=>{W.settle(B,{ok:!1,error:he}),J(he)})},ue=Uw(t),ye=w.useRef(e.onSeen);ye.current=e.onSeen;const ve=w.useRef(null);ve.current||(ve.current=new qw),w.useEffect(()=>{const B=ve.current,oe=ue?`${t.automation_id}|${ue}`:null;if(!ue||!B.next(oe,t))return;const le=t;ye.current(ue).then(()=>B.succeeded(oe),he=>{B.failed(oe,le),J(he)})});const q=nl(t,e.occurrences,s),se=Ww(e.occurrences),Q=t.occurrence_count-e.occurrences.length,E=L??e.error??null,F=E?Iu(E):null,G=t.attention;return i.jsxs("section",{ref:u,className:`af-auto${e.className?` ${e.className}`:""}`,"aria-labelledby":l,"aria-busy":s,"data-text-rendering":e.renderText?"rich":"unformatted",children:[i.jsx(iv,{summary:t,triggerSources:e.triggerSources,titleId:l,nowMs:e.nowMs,onOpenWorkspace:e.onOpenWorkspace}),i.jsx(uv,{summary:t,occurrences:e.occurrences,busy:s,confirmingArchive:A,reviseOpen:y,notice:V,onDismissNotice:()=>P(null),idBase:`${l}-ctl`,onCommand:B=>fe(`command:${B}`,oe=>e.onCommand(B,void 0,{command_id:oe}),()=>{B===ir.archive?($(!1),P("Archive requested."),re(['[data-action="archive"]'])):P(gv[B]??"Command sent.")}),onToggleRevise:()=>{S([]),k(!y)},onAskArchive:()=>$(!0),onCancelArchive:()=>{$(!1),re(['[data-action="archive"]'])}}),y&&x?i.jsx(fv,{summary:x.summary,definition:x.definition,busy:s,errors:C,emailStatus:e.emailStatus,onOpenMyEmail:e.onOpenMyEmail,onCancel:()=>{k(!1),re(['[data-action="edit"]'])},onSubmit:B=>{const oe=x.summary,le=Vw(oe,B,x.definition);if(le===null){S(["Nothing changed."]);return}if("errors"in le){S(le.errors);return}S([]),fe(`revise:${oe.revision}:${JSON.stringify(le)}`,he=>e.onRevise(le,oe.revision,{command_id:he}),()=>{P("Saved; applies from the next run."),k(!1),re(['[data-action="edit"]'])})}}):e.definition?i.jsx(av,{definition:e.definition,renderText:a}):null,F?i.jsxs("div",{className:"af-auto__error",role:"alert","data-code":E==null?void 0:E.code,children:[i.jsx(ie,{name:"error",size:14,className:"af-auto__btn-icon"}),i.jsxs("span",{className:"af-auto__error-text",children:[i.jsx("strong",{children:F.title})," ",i.jsx("span",{children:F.detail})]}),L?i.jsx("button",{type:"button",className:"af-auto__icon-btn af-auto__icon-btn--bare","data-action":"dismiss-error","aria-label":"Dismiss",title:"Dismiss",onClick:()=>z(null),children:i.jsx(ie,{name:"x",size:12})}):null]}):null,G.items.length||G.waits.length?i.jsx("section",{className:"af-auto__attention","aria-label":"Needs attention",children:i.jsxs("ul",{children:[G.items.map(B=>i.jsxs("li",{className:`af-auto__attention-item af-auto__attention-item--${B.kind}`,"data-cursor":B.cursor,children:[i.jsx("span",{className:`af-auto-badge af-auto-badge--${B.kind==="failure"?"failed":"notified"}`,children:B.kind==="failure"?"Failed":"Notified"})," ",i.jsx("strong",{children:B.title})," ",i.jsxs("span",{className:"af-auto-turn__muted",children:["#",B.index," · ",Cr(B.at)]}),B.body?i.jsx("div",{className:"af-auto__attention-body",children:a(B.body)}):null]},B.cursor)),G.waits.map(B=>i.jsxs("li",{className:"af-auto__attention-item af-auto__attention-item--wait",children:[i.jsx("span",{className:"af-auto-badge af-auto-badge--waiting","data-wait-kind":B.kind,children:Pp[B.kind]??"Waiting for you"})," ",i.jsxs("span",{className:"af-auto-turn__muted",children:["#",B.index]}),B.prompt?i.jsx("div",{className:"af-auto__attention-body",children:a(B.prompt)}):null]},`${B.run_id}:${B.wait_key}`))]})}):null,Q>0?i.jsx("button",{type:"button",className:"af-auto__btn af-auto__more","data-action":"load-more",disabled:s,onClick:e.onLoadMore,children:i.jsx(Ft,{icon:"history",label:`Load earlier occurrences (${Q} more)`})}):null,se.length?i.jsx("ol",{className:"af-auto__timeline","aria-label":"Occurrences",children:se.map(B=>{const oe=`[data-index="${B.row.index}"]`;return i.jsx(pv,{view:B,busy:s,discuss:q.discuss,renderText:a,renderTurn:e.renderTurn,onOpenWorkspace:e.onOpenWorkspace,onOpenResource:e.onOpenResource?le=>{var he;z(null);try{Promise.resolve((he=e.onOpenResource)==null?void 0:he.call(e,le)).catch(J)}catch(Z){J(Z)}}:void 0,discussOpen:T===B.row.index,onOpenRun:e.onOpenRun,onAnswerWait:(le,he,Z)=>{z(null),e.onAnswerWait(le,he,Z).then(()=>P("Answer sent."),J)},onWaitError:le=>z({status:0,code:"invalid_payload",message:le}),onDiscussOpen:j,onDiscussCancel:()=>{j(null),re([`${oe} [data-action="discuss"]`])},onDiscussSubmit:(le,he)=>fe(`discuss:${le}:${he}`,Z=>e.onDiscuss(le,he,{request_id:Z}),Z=>{j(null),P(`Discussion started (session ${Z.session_id}).`),re([`${oe} [data-action="discuss"]`])})},B.row.run_id)})}):i.jsx("p",{className:"af-auto__empty",children:"No occurrences yet."})]})}function wv(e){var Ue;const t=w.useId(),s=w.useId(),a=w.useRef(null),l=w.useRef(null),u=w.useRef(e.onClose);u.current=e.onClose;const[d,f]=w.useState(e.initialPrompt??""),[h,g]=w.useState("every"),[y,v]=w.useState(Tu),[x,b]=w.useState(!1),[k,C]=w.useState(hu),[S,A]=w.useState("24"),[$,T]=w.useState("h"),[j,L]=w.useState(""),[z,V]=w.useState("independent"),[P,ce]=w.useState("auto"),[re,H]=w.useState(e.initialTitle??""),[W,J]=w.useState(""),[fe,ue]=w.useState(""),[ye,ve]=w.useState(""),[q,se]=w.useState([]),Q=w.useRef(null);if(Q.current||(Q.current=new Op(()=>(e.newRequestId??Dp)())),w.useEffect(()=>{var ee;if(!e.open)return;const ke=document.activeElement;(ee=l.current)==null||ee.focus();const X=pe=>{if(!pe.defaultPrevented){if(pe.key==="Escape"){pe.preventDefault(),u.current();return}yp(pe,a.current,document.activeElement)}};return window.addEventListener("keydown",X),()=>{window.removeEventListener("keydown",X),ke&&typeof ke.focus=="function"&&ke.focus()}},[e.open]),!e.open)return null;const E=Au(e.emailStatus),F=h==="email"&&E,G=h==="email"&&!E?"every":h,B={prompt:d,when:h==="once"?{kind:"once",at:j}:{kind:"every",amount:Number(S),unit:$},...F?{trigger:"email",email:{...y,usesModel:e.targetUsesModel!==!1}}:{},...E&&x?{notifyEmail:!0}:{},...E&&k.mode==="list"?{emailRecipients:k}:{},context:z,toolApproval:P,title:re,...G==="every"&&W?{startAt:W}:{},...G==="every"&&fe.trim()?{count:Number(fe)}:{},...G==="every"&&ye?{until:ye}:{}},oe=Kw(B),le=e.busy===!0,he=e.error?Iu(e.error):null,Z=ke=>`${s}-${ke}`,Ce=ke=>{ke.preventDefault();const X=Jw(B,{target:e.target,requestId:""});if(!X.ok){se(X.errors);return}se([]);const ee=Q.current,pe=JSON.stringify(X.body),De={...X.body,request_id:ee.idFor(pe)};Promise.resolve(e.onSubmit(De)).then(()=>ee.settle(pe,{ok:!0}),we=>ee.settle(pe,{ok:!1,error:we}))};return i.jsx("div",{className:"af-appearance-overlay af-schedule-overlay",onClick:e.onClose,role:"presentation",children:i.jsxs("div",{ref:a,className:"af-appearance af-schedule",role:"dialog","aria-modal":"true","aria-labelledby":t,onClick:ke=>ke.stopPropagation(),children:[i.jsx("div",{className:"af-appearance__title",id:t,children:e.title??"Schedule a task"}),i.jsxs("form",{className:"af-schedule__form",onSubmit:Ce,"aria-busy":le,children:[i.jsxs("fieldset",{className:"af-auto__field",children:[i.jsx("legend",{children:"What"}),e.workflowPicker?i.jsx("div",{className:"af-schedule__picker",children:e.workflowPicker}):null,e.target?null:i.jsx("p",{className:"af-auto__hint",children:"Choose what to run."}),i.jsxs("label",{className:"af-auto__field",htmlFor:Z("prompt"),children:[i.jsx("span",{children:"Task"}),i.jsx("textarea",{id:Z("prompt"),ref:l,rows:3,value:d,onChange:ke=>f(ke.target.value),placeholder:"e.g. Check the price of ACME shares and notify me if it moved more than 2%.",required:!0})]})]}),i.jsxs("fieldset",{className:"af-auto__field",children:[i.jsx("legend",{children:"When (UTC)"}),i.jsxs("div",{className:"af-auto__row",role:"radiogroup","aria-label":"Schedule kind",children:[i.jsxs("label",{children:[i.jsx("input",{type:"radio",name:Z("kind"),value:"every",checked:G==="every",onChange:()=>g("every")})," Repeat"]}),i.jsxs("label",{children:[i.jsx("input",{type:"radio",name:Z("kind"),value:"once",checked:h==="once",onChange:()=>g("once")})," Once at…"]}),i.jsxs("label",{children:[i.jsx("input",{type:"radio",name:Z("kind"),value:"email",checked:F,disabled:!E,onChange:()=>g("email")})," ",We.trigger_label]})]}),E?null:i.jsx(mu,{status:e.emailStatus,onOpenMyEmail:e.onOpenMyEmail}),F?i.jsx(ev,{value:{...y,usesModel:e.targetUsesModel!==!1},onChange:v,idBase:s}):G==="every"?i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"af-auto__row af-schedule__presets",role:"group","aria-label":"Presets",children:Gw.map(ke=>ke.when.kind==="every"?i.jsx("button",{type:"button",className:"af-auto__btn af-auto__btn--quiet","aria-pressed":Number(S)===ke.when.amount&&$===ke.when.unit,onClick:()=>{ke.when.kind==="every"&&(A(String(ke.when.amount)),T(ke.when.unit))},children:ke.label},ke.label):null)}),i.jsxs("div",{className:"af-auto__row",children:[i.jsx("span",{children:"Every"}),i.jsx("input",{type:"number",min:1,step:1,value:S,onChange:ke=>A(ke.target.value),"aria-label":"Interval amount"}),i.jsxs("select",{value:$,onChange:ke=>T(ke.target.value),"aria-label":"Interval unit",children:[i.jsx("option",{value:"m",children:"minutes"}),i.jsx("option",{value:"h",children:"hours"}),i.jsx("option",{value:"d",children:"days"})]})]})]}):i.jsxs("label",{className:"af-auto__field",htmlFor:Z("once"),children:[i.jsx("span",{children:"Run once at (UTC)"}),i.jsx("input",{id:Z("once"),type:"datetime-local",value:j,onChange:ke=>L(ke.target.value)})]}),i.jsx("p",{className:"af-schedule__preview","aria-live":"polite","data-preview":"true",children:oe?`Runs ${oe}.`:F?"Incomplete email trigger.":"Incomplete schedule."})]}),i.jsxs("fieldset",{className:"af-auto__field",children:[i.jsx("legend",{children:"Context"}),i.jsxs("label",{children:[i.jsx("input",{type:"radio",name:Z("ctx"),value:"independent",checked:z==="independent",onChange:()=>V("independent")})," Independent — each run starts fresh"]}),i.jsxs("label",{children:[i.jsx("input",{type:"radio",name:Z("ctx"),value:"growing",checked:z==="growing",onChange:()=>V("growing")})," Growing — each run sees the previous runs"]})]}),i.jsxs("fieldset",{className:"af-auto__field","data-field":"tool-approval",children:[i.jsx("legend",{children:"Tools"}),i.jsxs("label",{children:[i.jsx("input",{type:"radio",name:Z("tools"),value:"auto",checked:P==="auto",onChange:()=>ce("auto")})," Run without asking"]}),i.jsxs("label",{children:[i.jsx("input",{type:"radio",name:Z("tools"),value:"ask",checked:P==="ask",onChange:()=>ce("ask")})," Ask me before each tool call (the run waits for you)"]}),F?i.jsx("p",{className:"af-auto__hint","data-email-rule":"untrusted",children:We.untrusted_hint}):null,P==="auto"?i.jsxs("p",{className:"af-schedule__consent","data-consent":"true",children:[Qw,e.targetTools&&e.targetTools.length?`: ${e.targetTools.join(", ")}.`:"."]}):i.jsx("p",{className:"af-auto__hint",children:"Each tool call waits for your approval in the automation's timeline."})]}),i.jsxs("fieldset",{className:"af-auto__field","data-field":"email",children:[i.jsx("legend",{children:"Mailbox"}),E?null:i.jsx(mu,{status:e.emailStatus,onOpenMyEmail:e.onOpenMyEmail}),i.jsx(tv,{notifyEmail:E&&x,onNotifyEmailChange:b,recipients:E?k:hu,onRecipientsChange:C,disabled:!E,idBase:s})]}),i.jsxs("details",{className:"af-schedule__advanced",children:[i.jsx("summary",{children:"Advanced"}),i.jsxs("label",{className:"af-auto__field",htmlFor:Z("title"),children:[i.jsx("span",{children:"Title"}),i.jsx("input",{id:Z("title"),value:re,maxLength:120,onChange:ke=>H(ke.target.value),placeholder:"Defaults to the task's first line"})]}),G==="every"?i.jsxs(i.Fragment,{children:[i.jsxs("label",{className:"af-auto__field",htmlFor:Z("start"),children:[i.jsx("span",{children:"First run at (UTC; empty = now)"}),i.jsx("input",{id:Z("start"),type:"datetime-local",value:W,onChange:ke=>J(ke.target.value)})]}),i.jsxs("label",{className:"af-auto__field",htmlFor:Z("count"),children:[i.jsx("span",{children:"Stop after this many runs"}),i.jsx("input",{id:Z("count"),type:"number",min:1,step:1,value:fe,onChange:ke=>ue(ke.target.value)})]}),i.jsxs("label",{className:"af-auto__field",htmlFor:Z("until"),children:[i.jsx("span",{children:"Stop at (UTC)"}),i.jsx("input",{id:Z("until"),type:"datetime-local",value:ye,onChange:ke=>ve(ke.target.value)})]})]}):null]}),q.length?i.jsx("ul",{className:"af-auto__form-errors",role:"alert",children:q.map(ke=>i.jsx("li",{children:ke},ke))}):null,he?i.jsxs("div",{className:"af-auto__error",role:"alert","data-code":(Ue=e.error)==null?void 0:Ue.code,children:[i.jsx("strong",{children:he.title})," ",i.jsx("span",{children:he.detail})]}):null,i.jsxs("div",{className:"af-appearance__actions af-auto__row",children:[i.jsx("button",{type:"button",className:"af-auto__btn",onClick:e.onClose,children:"Cancel"}),i.jsx("button",{type:"submit",className:"af-auto__btn af-auto__btn--primary",disabled:le,children:"Create automation"})]})]})]})})}function Nh(e,t,s,a){const l=w.useRef(null);w.useEffect(()=>{var f,h;if(!t)return;if(e){l.current=document.activeElement||null;const g=a(),y=window.setTimeout(()=>g==null?void 0:g.focus(),0);return()=>window.clearTimeout(y)}const u=s(),d=document.activeElement;l.current&&(!d||d===document.body||u&&u.contains(d))&&((h=(f=l.current).focus)==null||h.call(f)),l.current=null},[e,t])}function vv(e,t){return t?"drawers":e?"overlay":"docked"}function _v(e){return{open:e==="docked",wanted:!0}}function xv(e,t,s){return t===s?e:s==="docked"?{open:e.wanted,wanted:e.wanted}:{open:!1,wanted:t==="docked"?e.open:e.wanted}}function bv(e,t,s){return t==="docked"?{open:s,wanted:s}:{open:s,wanted:e.wanted}}function kv(e,t){return t==="drawers"?e:!1}function jv(e){return e.key!=="Escape"||e.defaultPrevented||e.overlayOpen?null:e.sidebarOpen?"sidebar":e.inspectorOpen&&e.inspectorIsOverlay?"inspector":null}function Sv(e=typeof document<"u"?document:void 0){return!!(e!=null&&e.querySelector('[role="dialog"], [role="alertdialog"]'))}function Nv(e){const t=Number.parseFloat(String(e??"").trim());return Number.isFinite(t)&&t>0}let ba=null;function Cv(){var a;if(ba)return ba;if(typeof document>"u"||typeof MutationObserver>"u")return()=>{};const e=document.documentElement,t=()=>{const l=Nv(getComputedStyle(e).getPropertyValue("--keyboard-inset"));l&&e.dataset.keyboard!=="open"?e.dataset.keyboard="open":!l&&e.dataset.keyboard&&delete e.dataset.keyboard},s=new MutationObserver(t);return s.observe(e,{attributes:!0,attributeFilter:["style"]}),(a=window.visualViewport)==null||a.addEventListener("resize",t),t(),ba=()=>{var l;s.disconnect(),(l=window.visualViewport)==null||l.removeEventListener("resize",t),ba=null},ba}function Ev(e){const t=e.querySelector(".code-topbar");if(!t)return null;const a=getComputedStyle(t).display==="contents"?e.querySelector(".code-toolbar"):t,l=a==null?void 0:a.getBoundingClientRect().bottom;return typeof l=="number"&&l>0?Math.round(l):null}function $v(e){const[t,s]=w.useState(e);return w.useEffect(()=>{if(typeof window>"u")return;const a=()=>s(Ev(document)??e);a();const l=typeof ResizeObserver<"u"?new ResizeObserver(a):null,u=document.querySelector(".code-topbar"),d=document.querySelector(".code-toolbar");return l&&u&&l.observe(u),l&&d&&l.observe(d),window.addEventListener("resize",a),()=>{l==null||l.disconnect(),window.removeEventListener("resize",a)}},[e]),t}function Av(e){const t=e.isDrawer&&!e.open;return i.jsx("aside",{className:"code-sidebar","aria-label":"Conversations",...t?{inert:""}:{},children:e.children})}const Wp="abstractcode.sidebar.panels",ka={automations:!0,conversations:!0};function Tv(e){try{const t=e==null?void 0:e.getItem(Wp);if(!t)return{...ka};const s=JSON.parse(t);if(!s||typeof s!="object")return{...ka};const a=s;return{automations:typeof a.automations=="boolean"?a.automations:ka.automations,conversations:typeof a.conversations=="boolean"?a.conversations:ka.conversations}}catch{return{...ka}}}function Rv(e,t){try{t==null||t.setItem(Wp,JSON.stringify(e))}catch{}}function Iv(e,t){return{...e,[t]:!e[t]}}function Ch(){try{return typeof window<"u"?window.localStorage:null}catch{return null}}function Mv(){const[e,t]=w.useState(()=>Tv(Ch())),s=w.useCallback(a=>{t(l=>{const u=Iv(l,a);return Rv(u,Ch()),u})},[]);return[e,s]}const Lu=e=>({toggle:`code-panel-${e}-toggle`,region:`code-panel-${e}`});function Up(e){const t=Lu(e.panel);return i.jsxs("div",{className:"code-section-label",children:[i.jsxs("button",{type:"button",className:"code-panel-toggle",id:t.toggle,"aria-expanded":e.open,"aria-controls":t.region,onClick:e.onToggle,children:[i.jsx(ie,{name:"chevronDown",size:11}),i.jsx("span",{children:e.label})]}),e.actions?i.jsx("span",{className:"code-panel-actions",children:e.actions}):null]})}function Lv(e){const t=Lu("conversations");return i.jsxs("section",{className:"code-panel code-conversations","data-open":e.open?"true":"false",children:[i.jsx(Up,{panel:"conversations",label:"CONVERSATIONS",open:e.open,onToggle:e.onToggle,actions:e.actions}),i.jsx("nav",{className:"code-sessions",id:t.region,"aria-labelledby":t.toggle,hidden:!e.open,children:e.children})]})}function Pv(e){return e.split("/").filter(Boolean).pop()||"Gateway managed"}function Ov(e){const t=Pv(e.path);return i.jsxs("button",{type:"button",className:"code-workspace-row",title:e.path?`Workspace: ${e.path}`:"Workspace: gateway managed",onClick:e.onOpen,children:[i.jsx(ie,{name:"terminal",size:17}),i.jsxs("span",{children:[i.jsx("strong",{children:"Workspace"}),i.jsx("small",{children:t})]}),i.jsx(ie,{name:"chevronRight",size:14})]})}function Bp(e){const t=String(e??"").trim();if(!t||!(t.startsWith("{")&&t.endsWith("}")||t.startsWith("[")&&t.endsWith("]")))return null;try{return JSON.parse(t)}catch{return null}}function Dv(e){if(e==null)return"";if(typeof e=="string")return e;try{return JSON.stringify(e,null,2)}catch{return String(e)}}function Fv(e){const t=String(e.role||"message").trim()||"message",s=String(e.title||"").trim(),a=String(e.ts||"").trim(),l=[t];return s&&l.push(s),a&&l.push(a),l.join(" · ")}function zv(e){return e.endsWith(`
58
- `)?e:`${e}
59
- `}function Wv(e){return String(e||"").trimStart().startsWith("```")}function Uv(e,t){const a=[`# ${"Chat".trim()||"Chat"}`,""];for(const l of e){const u=Fv(l);a.push(`## ${u}`,"");const d=String(l.content||""),f=Bp(d);f!==null&&!Wv(d)?a.push("```json",Dv(f).trimEnd(),"```",""):a.push(zv(d).trimEnd(),""),a.push("---","")}for(;a.length&&!a[a.length-1].trim();)a.pop();return a.length&&a[a.length-1]==="---"&&a.pop(),`${a.join(`
60
- `).trimEnd()}
61
- `}async function Pu(e){var s;const t=String(e||"");if(!t)return!1;try{if(typeof navigator<"u"&&typeof((s=navigator.clipboard)==null?void 0:s.writeText)=="function")return await navigator.clipboard.writeText(t),!0}catch{}try{const a=document.createElement("textarea");a.value=t,a.style.position="fixed",a.style.left="-9999px",document.body.appendChild(a),a.select();const l=document.execCommand("copy")===!0;return document.body.removeChild(a),l}catch{return!1}}function Bv(e){const t=String(e.filename).trim()||"export.txt",s=String(e.text||""),a=String(e.mime||"text/plain;charset=utf-8"),l=new Blob([s],{type:a}),u=URL.createObjectURL(l),d=document.createElement("a");d.href=u,d.download=t,document.body.appendChild(d),d.click(),d.remove(),window.setTimeout(()=>URL.revokeObjectURL(u),1e3)}const Vv=3,Gv=Number.MAX_SAFE_INTEGER;function Vp(e){return!!e&&typeof e=="object"&&!Array.isArray(e)}function Gp(e){return Array.isArray(e)}function Hv(e){if(e==null)return"";if(typeof e=="string")return e;try{return JSON.stringify(e,null,2)}catch{return String(e)}}function Ai({kind:e,children:t}){return i.jsx("span",{className:`pc-json-token ${e}`,children:t})}function Kv(e){const t=JSON.stringify(e.value),s=t.length>96||t.includes("\\n")||t.includes("\\r")||t.includes("\\t"),[a,l]=w.useState(!s||e.expansionMode==="unfolded");return w.useEffect(()=>{s&&l(e.expansionMode==="unfolded")},[s,e.expansionMode,e.expansionVersion]),s?i.jsxs("span",{className:`pc-json-string ${a?"open":"collapsed"}`,children:[i.jsx("button",{type:"button",className:"pc-json-string__toggle",onClick:()=>l(u=>!u),"aria-label":a?"Collapse string value":"Expand string value","aria-expanded":a,children:a?"▾":"▸"}),a?i.jsx("span",{className:"pc-json-token string pc-json-string__value",children:t}):i.jsxs("button",{type:"button",className:"pc-json-string__preview",onClick:()=>l(!0),"aria-label":"Expand string value",children:[i.jsx("span",{className:"pc-json-token string pc-json-string__preview_text",children:t}),i.jsx("span",{className:"pc-json-string__suffix",children:"(...)"})]})]}):i.jsx(Ai,{kind:"string",children:t})}function Jv(e,t,s){return e===null?i.jsx(Ai,{kind:"null",children:"null"}):typeof e=="string"?i.jsx(Kv,{value:e,expansionMode:t,expansionVersion:s}):typeof e=="number"?i.jsx(Ai,{kind:"number",children:String(e)}):typeof e=="boolean"?i.jsx(Ai,{kind:"boolean",children:e?"true":"false"}):i.jsx(Ai,{kind:"string",children:JSON.stringify(String(e))})}function Qv(e){return Gp(e)?e.length===1?"1 item":`${e.length} items`:Vp(e)?Object.keys(e).length===1?"1 key":`${Object.keys(e).length} keys`:""}function Hp(e){const{label:t,value:s,depth:a,collapseAfterDepth:l,expansionMode:u,expansionVersion:d,trailingComma:f}=e,h=a*14,g=Vp(s),y=Gp(s),v=g||y,x=a<l,[b,k]=w.useState(x);w.useEffect(()=>{k(x)},[x,d]);const C=t?i.jsxs(i.Fragment,{children:[i.jsx(Ai,{kind:"key",children:JSON.stringify(t)}),": "]}):null;if(!v)return i.jsxs("div",{className:"pc-json-viewer__line",style:{paddingLeft:h},children:[C,Jv(s,u,d),f?",":""]});const S=y?"[":"{",A=y?"]":"}",$=Qv(s),T=b?`${S}`:`${S}…${A}${$?` (${$})`:""}`,j=y?s.map((L,z)=>({key:String(z),label:void 0,value:L})):Object.entries(s).map(([L,z])=>({key:L,label:L,value:z}));return i.jsxs("details",{className:"pc-json-viewer__details",open:b,onToggle:L=>k(L.currentTarget.open),children:[i.jsxs("summary",{className:"pc-json-viewer__summary",style:{paddingLeft:h},children:[C,i.jsx("span",{className:"pc-json-viewer__caret","aria-hidden":"true",children:b?"▾":"▸"}),i.jsx("span",{className:"pc-json-viewer__punct",children:T}),!b&&f?i.jsx("span",{className:"pc-json-viewer__punct",children:","}):null]}),b?i.jsx("div",{className:"pc-json-viewer__children",children:j.length===0?i.jsxs("div",{className:"pc-json-viewer__line",style:{paddingLeft:h},children:[i.jsx("span",{className:"pc-json-viewer__punct",children:A}),f?",":""]}):i.jsxs(i.Fragment,{children:[j.map((L,z)=>{const V=z===j.length-1;return i.jsx(Hp,{label:L.label,value:L.value,depth:a+1,collapseAfterDepth:l,expansionMode:u,expansionVersion:d,trailingComma:!V},`${a}:${t||"root"}:${L.key}`)}),i.jsxs("div",{className:"pc-json-viewer__line",style:{paddingLeft:h},children:[i.jsx("span",{className:"pc-json-viewer__punct",children:A}),f?",":""]})]})}):null]})}function Yv(e){const t=e.trim();if(!t)return e;if(t.startsWith("{")&&t.endsWith("}")||t.startsWith("[")&&t.endsWith("]"))try{return JSON.parse(t)}catch{return e}return e}function Is(e){const{value:t,className:s,showCopy:a=!0}=e,[l,u]=w.useState({mode:"folded",version:0}),[d,f]=w.useState("idle"),h=typeof e.collapseAfterDepth=="number"&&(Number.isFinite(e.collapseAfterDepth)||e.collapseAfterDepth===1/0)&&e.collapseAfterDepth>=0?e.collapseAfterDepth===1/0?Number.MAX_SAFE_INTEGER:Math.trunc(e.collapseAfterDepth):Vv,g=l.mode==="unfolded"?Gv:h,y=w.useMemo(()=>typeof t=="string"?Yv(t):t,[t]),v=w.useMemo(()=>Hv(t),[t]),x=["pc-json-viewer",s].filter(Boolean).join(" ");w.useEffect(()=>{u(k=>({mode:"folded",version:k.version+1}))},[y]);const b=()=>{u(k=>({mode:k.mode==="unfolded"?"folded":"unfolded",version:k.version+1}))};return i.jsxs("div",{className:x,children:[i.jsxs("div",{className:"pc-json-viewer__toolbar",children:[i.jsx("button",{type:"button",className:"pc-btn pc-json-viewer__toggle-all",onClick:b,"aria-expanded":l.mode==="unfolded",children:l.mode==="unfolded"?"Fold all":"Unfold all"}),a?i.jsx("button",{type:"button",className:"pc-btn pc-json-viewer__copy",onClick:()=>void Pu(v).then(k=>{f(k?"copied":"failed"),window.setTimeout(()=>f("idle"),2e3)}),children:d==="copied"?"Copied":d==="failed"?"Copy failed — select and copy":"Copy JSON"}):null]}),i.jsx("div",{className:"pc-json-viewer__tree",role:"tree","aria-label":"JSON viewer",children:i.jsx(Hp,{value:y,depth:0,collapseAfterDepth:g,expansionMode:l.mode,expansionVersion:l.version,trailingComma:!1})})]})}function ja(e,t){const s=String(e??"");if(!t||!t.needles.length)return[s];const a=[],l=s.toLowerCase();let u=0;for(;u<s.length;){let d=-1,f="";for(let y=0;y<t.needlesLower.length;y++){const v=t.needlesLower[y];if(!v)continue;const x=l.indexOf(v,u);if(x===-1)continue;const b=t.needles[y]||"";b&&(d===-1||x<d||x===d&&b.length>f.length)&&(d=x,f=b)}if(d===-1||!f){a.push(s.slice(u));break}d>u&&a.push(s.slice(u,d));const h=t.hits===0&&t.id?t.id:void 0,g=s.slice(d,d+f.length);a.push(i.jsx("span",{id:h,className:t.className,children:g},`hl:${t.hits}`)),t.hits+=1,u=d+f.length}return a}function Kp(e){const t=String(e||"").trim();if(t&&/^(https?:|mailto:|tel:|#|\/)/i.test(t))return t}const vu="http://same-origin.invalid/";function Xv(e){try{const t=new URL(e,vu);return t.protocol==="http:"&&t.origin===new URL(vu).origin}catch{return!1}}function Jp(e){const t=String(e||"").trim();return Kp(t)??(t&&Xv(t)?t:void 0)}let Ms=null;function Zv(e){const t=String(e||"").trim();if(!t)return!1;const s=typeof document<"u"&&document.baseURI?document.baseURI:null;if(s===null&&/^[a-z][a-z0-9+.-]*:/i.test(t))return!1;const a=s??vu;let l,u;try{l=new URL(a).origin,u=new URL(t,a)}catch{return!1}return u.protocol!=="http:"&&u.protocol!=="https:"?!1:u.origin===l}function Qp(e,t,s){return i.jsx("a",{className:"pc-md_link pc-md_image_link",href:t,target:"_blank",rel:"noopener noreferrer",children:`image: ${s||t}`},e)}function qr(e,t){const s=[],a=String(e??"");let l=0,u="";const d=()=>{if(u){for(const f of ja(u,t))s.push(f);u=""}};for(;l<a.length;){const f=a[l];if(f==="!"&&a[l+1]==="["){const h=a.indexOf("]",l+2);if(h!==-1&&a[h+1]==="("){const g=a.indexOf(")",h+2);if(g!==-1){const y=a.slice(l+2,h),v=Jp(a.slice(h+2,g));if(v&&Ms&&!Ms(v)){d(),s.push(Qp(`img:${l}`,v,y)),l=g+1;continue}if(v){d(),s.push(i.jsxs("span",{className:"pc-md_image_inline",children:[i.jsx("img",{className:"pc-md_img",src:v,alt:y,loading:"lazy"}),y?i.jsx("span",{className:"pc-md_img_caption",children:t?ja(y,t):y}):null]},`img:${l}`)),l=g+1;continue}}}}if(f==="["){const h=a.indexOf("]",l+1);if(h!==-1&&a[h+1]==="("){const g=a.indexOf(")",h+2);if(g!==-1){const y=a.slice(l+1,h),v=Kp(a.slice(h+2,g));if(v){d(),s.push(i.jsx("a",{className:"pc-md_link",href:v,target:v.startsWith("#")?void 0:"_blank",rel:"noreferrer",children:qr(y,t)},`link:${l}`)),l=g+1;continue}}}}if(f==="`"){const h=a.indexOf("`",l+1);if(h!==-1){d();const g=a.slice(l+1,h);s.push(i.jsx("code",{children:t?ja(g,t):g},`code:${l}`)),l=h+1;continue}}if(f==="*"&&a[l+1]==="*"){const h=a.indexOf("**",l+2);if(h!==-1){d();const g=a.slice(l+2,h);s.push(i.jsx("strong",{children:t?ja(g,t):g},`bold:${l}`)),l=h+2;continue}}if(f==="*"&&a[l+1]!=="*"){const h=a.indexOf("*",l+1);if(h!==-1){d();const g=a.slice(l+1,h);s.push(i.jsx("em",{children:t?ja(g,t):g},`em:${l}`)),l=h+1;continue}}u+=f,l+=1}return d(),s}function qv(e){return String(e??"").replace(/\r\n/g,`
62
- `).replace(/\r/g,`
63
- `).split(`
64
- `)}function Xo(e){const s=String(e??"").match(/^([ \t]*)(?:([-*+])|(\d{1,9})[.)])\s+(.*)$/);return s?{indent:s[1].replace(/\t/g," ").length,ordered:!!s[3],start:s[3]?Math.max(1,parseInt(s[3],10)||1):1,content:s[4]??""}:null}function e_(e){const t=[];for(const l of e){const u=Xo(l);u?t.push(u):t.length>0&&l.trim()&&(t[t.length-1].content+=` ${l.trim()}`)}const s=[],a=[];for(const l of t){for(;a.length>0&&l.indent<a[a.length-1].indent;)a.pop();let u=a.length>0?a[a.length-1]:null;if(u&&l.indent>u.indent){const d=u.node.items,f=d[d.length-1];if(f){const h={ordered:l.ordered,start:l.start,items:[]};f.children.push(h),a.push({indent:l.indent,node:h}),u=a[a.length-1]}}else if(u&&u.node.ordered!==l.ordered){a.pop();const d=a.length>0?a[a.length-1]:null,f={ordered:l.ordered,start:l.start,items:[]};if(d){const h=d.node.items,g=h[h.length-1];g?g.children.push(f):d.node.items.push({content:"",children:[f]})}else s.push(f);a.push({indent:l.indent,node:f}),u=a[a.length-1]}if(!u){const d={ordered:l.ordered,start:l.start,items:[]};s.push(d),a.push({indent:l.indent,node:d}),u=a[a.length-1]}u.node.items.push({content:l.content,children:[]})}return s}function Yp(e,t,s){const a=e.items.map((l,u)=>i.jsxs("li",{children:[qr(l.content,t),l.children.map((d,f)=>Yp(d,t,`${s}:${u}:${f}`))]},`${s}:li:${u}`));return e.ordered?i.jsx("ol",{className:"pc-md_ol",start:e.start!==1?e.start:void 0,children:a},s):i.jsx("ul",{className:"pc-md_ul",children:a},s)}function t_(e,t,s){return e_(e).map((a,l)=>Yp(a,t,`${s}:${l}`))}function Eh(e){let t=String(e??"").trim();return t?(t.startsWith("|")&&(t=t.slice(1)),t.endsWith("|")&&(t=t.slice(0,-1)),t.split("|").map(s=>String(s??"").trim())):[]}function $h(e){let t=String(e??"").trim();if(!t)return!1;t.startsWith("|")&&(t=t.slice(1)),t.endsWith("|")&&(t=t.slice(0,-1));const s=t.split("|").map(a=>String(a??"").trim());return s.length<2?!1:s.every(a=>/^:?-{3,}:?$/.test(a))}const Ah=/^(#{1,5})\s+(.*)$/;function Th(e){return e.trim().startsWith("```")}function Rh(e){return e.trimStart().startsWith(">")}function Xp(e){const t=Ms;Ms=e.images==="link"?e.inlineImage||Zv:null;try{return n_(e)}finally{Ms=t}}function n_({text:e,className:t,highlight:s,highlights:a,highlightClassName:l,highlightId:u}){const d=qv(e),f=[],h=[];Array.isArray(a)&&h.push(...a),typeof s=="string"&&s.trim()&&h.push(s);const g=Array.from(new Set(h.map(b=>String(b??"").trim()).filter(Boolean))).filter(b=>b.length>=4),y=g.length?{needles:g,needlesLower:g.map(b=>b.toLowerCase()),className:l||"pc-md_hl",id:u,hits:0}:null;let v=0;for(;v<d.length;){const b=String(d[v]??"");if(!b.trim()){v+=1;continue}const k=b.trim();if(/^([-_*])(\s*\1){2,}$/.test(k)){f.push(i.jsx("hr",{className:"pc-md_hr"},`hr:${v}`)),v+=1;continue}const C=b.match(/^\s*!\[([^\]]*)\]\(([^)]+)\)\s*$/);if(C){const $=Jp(C[2]||"");if($&&Ms&&!Ms($)){f.push(i.jsx("p",{className:"pc-md_p",children:Qp(`img:${v}`,$,C[1]||"")},`p:${v}`)),v+=1;continue}if($){const T=C[1]||"";f.push(i.jsxs("figure",{className:"pc-md_figure",children:[i.jsx("img",{className:"pc-md_img",src:$,alt:T,loading:"lazy"}),T?i.jsx("figcaption",{children:qr(T,y)}):null]},`figure:${v}`)),v+=1;continue}}if(Th(b)){const T=b.trim().replace(/```/g,"").trim(),j=[];for(v+=1;v<d.length&&!String(d[v]??"").trim().startsWith("```");)j.push(String(d[v]??"")),v+=1;v<d.length&&(v+=1);const L=j.join(`
65
- `);f.push(i.jsx("pre",{className:"pc-md_pre",children:i.jsx("code",{className:T?`language-${T}`:void 0,children:L})},`pre:${v}`));continue}const S=b.match(Ah);if(S){const $=S[1].length,T=S[2]||"",j=qr(T,y);$===1?f.push(i.jsx("h1",{children:j},`h1:${v}`)):$===2?f.push(i.jsx("h2",{children:j},`h2:${v}`)):$===3?f.push(i.jsx("h3",{children:j},`h3:${v}`)):$===4?f.push(i.jsx("h4",{children:j},`h4:${v}`)):f.push(i.jsx("h5",{children:j},`h5:${v}`)),v+=1;continue}if(Rh(b)){const $=[];for(;v<d.length&&String(d[v]??"").trimStart().startsWith(">");){const j=String(d[v]??"").trimStart();$.push(j.replace(/^>\s?/,"")),v+=1}f.push(i.jsx("blockquote",{className:"pc-md_quote",children:$.map((T,j)=>i.jsxs(ft.Fragment,{children:[qr(T,y),j<$.length-1?i.jsx("br",{}):null]},`q:${v}:${j}`))},`quote:${v}`));continue}if(b.includes("|")&&v+1<d.length&&$h(String(d[v+1]??""))){const $=Eh(b),T=Math.max(1,$.length),j=[];for(v+=2;v<d.length;){const L=String(d[v]??"");if(!L.trim()||!L.includes("|"))break;const z=Eh(L),V=[];for(let P=0;P<T;P++)V.push(z[P]??"");j.push(V),v+=1}f.push(i.jsx("div",{className:"pc-md_table_wrap",children:i.jsxs("table",{className:"pc-md_table",children:[i.jsx("thead",{children:i.jsx("tr",{children:$.slice(0,T).map((L,z)=>i.jsx("th",{children:qr(L,y)},`th:${v}:${z}`))})}),i.jsx("tbody",{children:j.map((L,z)=>i.jsx("tr",{children:L.map((V,P)=>i.jsx("td",{children:qr(V,y)},`td:${v}:${z}:${P}`))},`tr:${v}:${z}`))})]})},`table:${v}`));continue}if(Xo(b)){const $=[];for(;v<d.length;){const T=String(d[v]??"");if(!T.trim()||T.trimStart().startsWith("```"))break;if(Xo(T)||/^\s{2,}\S/.test(T)){$.push(T),v+=1;continue}break}f.push(i.jsx(ft.Fragment,{children:t_($,y,`list:${v}`)},`list:${v}`));continue}const A=[];for(;v<d.length&&String(d[v]??"").trim()&&!(A.length>0&&Xo(String(d[v]??"")));){const $=String(d[v]??"");if(A.length>0&&(Ah.test($)||Th($)||Rh($))||A.length>0&&$.includes("|")&&v+1<d.length&&$h(String(d[v+1]??"")))break;A.push($),v+=1}f.push(i.jsx("p",{className:"pc-md_p",children:A.map(($,T)=>i.jsxs(ft.Fragment,{children:[qr($,y),T<A.length-1?i.jsx("br",{}):null]},`pl:${v}:${T}`))},`p:${v}`))}const x=["pc-md",t].filter(Boolean).join(" ");return i.jsx("div",{className:x,children:f})}function Zp(e){const t=String(e.text??""),s=w.useMemo(()=>Bp(t),[t]),a=["pc-chat-content",e.className].filter(Boolean).join(" ");return s!==null?i.jsx("div",{className:a,children:i.jsx(Is,{value:s,collapseAfterDepth:e.jsonCollapseAfterDepth})}):e.renderMarkdown?i.jsx("div",{className:a,children:e.renderMarkdown(t)}):i.jsx("div",{className:a,children:i.jsx(Xp,{text:t,images:e.images,inlineImage:e.inlineImage})})}function qp(e){if(typeof e!="string")return e;try{return JSON.parse(e)}catch{return e}}function em(e){const t=qp(e);if(!t||typeof t!="object"||Array.isArray(t))return{label:"input",value:t==null?"":String(t)};const s=Object.entries(t),l=["command","query","url","file_path","path","pattern","name"].map(u=>s.find(([d])=>d===u)).find(Boolean)||s[0];return l?{label:l[0].replace(/_/g," "),value:typeof l[1]=="string"?l[1]:JSON.stringify(l[1])??""}:{label:"",value:""}}function tm({tool:e,showCopy:t=!0}){const[s,a]=w.useState(!1),l=qp(e.arguments),u=em(e.arguments),d=["file path","path"].includes(u.label)&&u.value.length>60?`${u.value.split(/[\\/]/).pop()} · ${u.value.slice(0,24)}…`:u.value,f=e.error&&/^File ['"].+['"] does not exist\.?$/.test(e.error)?"File not found. Expand for the exact path.":e.error&&e.error.length>180?`${e.error.slice(0,100)}…${e.error.slice(-70)}`:e.error,h={running:"Running",waiting:"Approval needed",completed:"Done",failed:"Failed"},g=e.startedAt&&e.endedAt?Date.parse(e.endedAt)-Date.parse(e.startedAt):NaN,y=l&&typeof l=="object"&&!Array.isArray(l)?Object.entries(l):null;return i.jsxs("details",{className:`pc-tool-activity pc-tool-activity--${e.status}`,children:[i.jsxs("summary",{className:"pc-tool-activity__summary",children:[i.jsx("span",{className:"pc-tool-activity__state-icon","aria-hidden":"true",children:i.jsx(ie,{name:e.status==="completed"?"check":e.status==="failed"?"x":e.status==="waiting"?"warning":"loader",size:15})}),i.jsx("strong",{children:e.name}),i.jsx("span",{className:"pc-tool-activity__preview",title:u.value,children:u.value?i.jsxs(i.Fragment,{children:[i.jsx("span",{className:"pc-tool-activity__key",children:u.label}),d]}):"No parameters"}),i.jsx("span",{className:"pc-tool-activity__status",children:h[e.status]}),Number.isFinite(g)&&g>=0?i.jsxs("span",{className:"pc-tool-activity__duration",children:[(g/1e3).toFixed(1),"s"]}):null,i.jsx("span",{className:"pc-tool-activity__chevron","aria-hidden":"true",children:i.jsx(ie,{name:"chevronRight",size:13})}),e.error?i.jsx("span",{className:"pc-tool-activity__error",title:e.error,children:f}):null]}),i.jsxs("div",{className:"pc-tool-activity__detail",children:[e.error?i.jsxs(i.Fragment,{children:[i.jsx("h4",{children:"Error"}),i.jsx("pre",{className:"pc-tool-activity__output",children:e.error})]}):null,i.jsxs("div",{className:"pc-tool-activity__detail-heading",children:[i.jsx("h4",{children:"Parameters"}),t?i.jsxs("button",{type:"button",onClick:async()=>a(await Pu(JSON.stringify(e,null,2))),children:[i.jsx(ie,{name:"copy",size:13}),s?"Copied":"Copy details"]}):null]}),y?i.jsx("dl",{className:"pc-tool-activity__parameters",children:y.map(([v,x])=>i.jsxs(ft.Fragment,{children:[i.jsx("dt",{children:v}),i.jsx("dd",{children:x&&typeof x=="object"?i.jsx(Is,{value:x}):i.jsx("code",{children:typeof x=="string"?x:JSON.stringify(x)})})]},v))}):e.arguments===void 0?i.jsx("p",{children:"Arguments are unavailable in this ledger."}):i.jsx(Is,{value:l}),e.output!==void 0?i.jsxs(i.Fragment,{children:[i.jsx("h4",{children:"Result"}),typeof e.output=="string"?i.jsx("pre",{className:"pc-tool-activity__output",children:e.output}):i.jsx("div",{className:"pc-tool-activity__output",children:i.jsx(Is,{value:e.output})})]}):null]})]})}function nm({tools:e,showCopy:t}){const s=a=>e.filter(l=>l.status===a).length;return i.jsxs("section",{className:"pc-tool-group","aria-label":"Tool activity",children:[i.jsxs("div",{className:"pc-tool-group__heading",children:[i.jsx(ie,{name:"terminal",size:14}),i.jsx("strong",{children:"Tools"}),i.jsxs("span",{children:[e.length," ",e.length===1?"call":"calls"]}),i.jsx("div",{}),s("running")?i.jsxs("span",{className:"pc-tool-group__running",children:[s("running")," running"]}):null,s("waiting")?i.jsxs("span",{className:"pc-tool-group__waiting",children:[s("waiting")," need approval"]}):null,s("failed")?i.jsxs("span",{className:"pc-tool-group__failed",children:[s("failed")," failed"]}):null,s("completed")?i.jsxs("span",{className:"pc-tool-group__completed",children:[s("completed")," done"]}):null]}),e.map(a=>i.jsx(tm,{tool:a,showCopy:t},a.id))]})}const Et="not reported",Gt=e=>e===void 0?Et:Math.round(e).toLocaleString(),nn=e=>{if(e===void 0)return Et;if(e<6e4)return`${(e/1e3).toFixed(1)}s`;const t=Math.round(e/1e3);return`${Math.floor(t/60)}m ${String(t%60).padStart(2,"0")}s`},rm=e=>e===void 0?Et:`${Math.round(e).toLocaleString()} tok/s`,r_=(e,t)=>t>0?`${Math.round(e/t*100)}%`:"",Ls=(e,t,s=`${t}s`)=>`${e.toLocaleString()} ${e===1?t:s}`,s_=e=>{const t=e.split("#")[0].replace(/\/+$/,"");return t.slice(t.lastIndexOf("/")+1)||e};function i_(e){const t=new Map;for(const s of e)s&&t.set(s,(t.get(s)||0)+1);return[...t].map(([s,a])=>a>1?`${s} ×${a}`:s).join(" · ")}function rl(e){const t=[],s=(e.models||[]).map(s_),a=e.providers||[];return(s.length||a.length)&&t.push([s.join(", ")||"model not reported",a.join(", ")].filter(Boolean).join(" · ")),t.push("From the run ledger; summed across this turn and its child runs."),t}function a_(e){const t=e.modelCalls||[],s=[],a=[{label:"Input",value:Gt(e.inputTokens)},{label:"Output",value:Gt(e.outputTokens)}];if(e.reasoningTokens!==void 0&&a.push({label:"Reasoning",value:Gt(e.reasoningTokens),hint:"part of output"}),a.push({label:"Total",value:Gt(e.totalTokens)}),s.push({heading:`Usage · ${Ls(e.llmCalls,"model call")}`,rows:a}),e.measuredCacheCalls){const u=e.cachedTokens||0,d=e.fedTokens||0,f=[{label:"Reused from cache",value:`${Gt(u)}${u+d?` (${r_(u,u+d)})`:""}`},{label:"Newly processed",value:Gt(e.fedTokens)},{label:"Outcome",value:i_(t.map(h=>h.cacheOutcome))||(e.cacheOutcomes||[]).join(" · ")||Et},{label:"Backend",value:(e.cacheBackends||[]).join(", ")||Et}];e.measuredCacheCalls!==e.llmCalls&&f.push({label:"Measured on",value:`${e.measuredCacheCalls} of ${e.llmCalls} calls`}),s.push({heading:"Prompt cache",rows:f})}else e.llmCalls&&s.push({heading:"Prompt cache",rows:[{label:"Cache reuse",value:Et}]});const l=t.filter(u=>u.inputTokens!==void 0);return l.length===1&&t.length===1?s.push({heading:"Context",rows:[{label:"Prompt size",value:`${Gt(l[0].inputTokens)} tokens`}]}):l.length>1&&s.push({heading:"Context",rows:[{label:"First → last call",value:`${Gt(l[0].inputTokens)} → ${Gt(l[l.length-1].inputTokens)} tokens`}],note:"Each call re-sends the conversation, so the input total counts the context once per call."}),t.length>1&&s.push({heading:"Per call",table:{columns:["#","Input","Cached","New","Output","Cache"],rows:t.map((u,d)=>[String(d+1),Gt(u.inputTokens),u.cachedTokens===void 0?"—":Gt(u.cachedTokens),u.fedTokens===void 0?"—":Gt(u.fedTokens),Gt(u.outputTokens),u.cacheOutcome||"—"])}}),{kind:"tokens",title:"Tokens",headline:e.totalTokens===void 0?Et:`${e.totalTokens.toLocaleString()} total`,sections:s,footer:rl(e)}}function Go(e,t,s,a){if(e===void 0)return Et;const l=[nn(e)];return t!==void 0&&l.push(`${t.toLocaleString()} ${a}${s!==void 0?` at ${rm(s)}`:""}`),l.join(" · ")}function o_(e){var g,y,v;const t=e.modelCalls||[],s=[],a=e.durationMs,l=[{label:"Wall clock",value:nn(a)}];if(l.push({label:"Model",value:e.genTimeMs===void 0?Et:`${nn(e.genTimeMs)} · ${Ls(e.timedCalls||0,"call")}${e.timedCalls!==e.llmCalls?` (of ${e.llmCalls})`:""}`}),l.push({label:"Tools",value:e.toolTimeMs!==void 0?`${nn(e.toolTimeMs)} · ${Ls(e.toolBatches||0,"batch","batches")}`:e.toolCalls?Et:"none",hint:e.toolTimeIncludesApproval?"includes approval wait":void 0}),a!==void 0&&e.genTimeMs!==void 0){const x=a-e.genTimeMs-(e.toolTimeMs||0);l.push({label:"Orchestration",value:x>=0?nn(x):"overlaps (parallel runs)",hint:"wall − model − tools: routing, hand-offs, model load"})}s.push({heading:"Turn",rows:l});const u=[],d=e.ttftCalls||0,f=e.promptPhaseCalls||0;e.promptPhaseMs!==void 0?u.push({label:d&&d===f?"Prefill (TTFT)":"Prefill",value:Go(e.promptPhaseMs,e.promptPhaseNewTokens,e.promptPhaseTokensPerSecond,"new tok"),hint:d===f?"measured time to first token":d?`TTFT measured on ${d} of ${f}; rest from provider rate`:"derived: prompt ÷ provider rate"}):e.prefillMs!==void 0&&e.prefillNewTokensPerSecond!==void 0?u.push({label:"Prefill",value:Go(e.prefillMs,e.prefillNewTokens,e.prefillNewTokensPerSecond,"new tok"),hint:"derived: prompt ÷ provider rate"}):e.prefillMs!==void 0?u.push({label:"Prefill",value:`${nn(e.prefillMs)}${e.promptTokensPerSecond!==void 0?` at ${rm(e.promptTokensPerSecond)}`:""}`,hint:"provider rate over all prompt tokens, restored included"}):u.push({label:"Prefill",value:Et}),e.cachedTokens&&(e.promptPhaseMs??e.prefillMs)!==void 0&&u.push({label:"Restored",value:`${e.cachedTokens.toLocaleString()} tok from cache`,hint:"not recomputed"}),u.push({label:"Generation",value:e.generationPhaseMs!==void 0?Go(e.generationPhaseMs,e.generationPhaseTokens,e.generationPhaseTokensPerSecond,"tok"):Go(e.decodeMs,e.outputTokens,e.generationTokensPerSecond,"tok")}),e.measuredSpeedCalls&&e.measuredSpeedCalls!==e.llmCalls&&u.push({label:"Speeds from",value:`${e.measuredSpeedCalls} of ${e.llmCalls} calls`}),s.push({heading:"Model",rows:u});const h=e.speculation;if(h){const x=(h.draftKinds||[]).map(k=>k.toUpperCase()).join(", "),b=[{label:"Mode",value:`${h.used?"on":"off"}${x?` · ${x}`:""}${(g=h.modes)!=null&&g.length?` (${h.modes.join(", ")})`:""}`,hint:h.calls!==e.llmCalls||h.used!==h.calls?`used on ${h.used} of ${e.llmCalls} calls`:void 0},{label:"Acceptance",value:h.acceptanceRate===void 0?Et:`${Math.round(h.acceptanceRate*100)}% · ${Gt(h.acceptedTokens)} of ${Gt(h.draftedTokens)} drafted`}];((y=h.draftLengths)!=null&&y.length||h.rounds!==void 0)&&b.push({label:"Draft length",value:`${(v=h.draftLengths)!=null&&v.length?`${h.draftLengths.join("/")} tok/round`:Et}${h.rounds!==void 0?` · ${h.rounds.toLocaleString()} rounds`:""}`}),s.push({heading:"Speculation",rows:b})}return e.slowestToolBatch&&s.push({heading:"Tools",rows:[{label:"Total",value:`${nn(e.toolTimeMs)} · ${Ls(e.toolBatches||0,"batch","batches")}`},{label:"Slowest",value:`${nn(e.slowestToolBatch.ms)} · ${sm(e.slowestToolBatch)}`}],note:e.toolTimeIncludesApproval?"Gated calls are timed from request to result, so this includes waiting for your approval.":void 0}),t.length>1&&s.push({heading:"Per call",table:{columns:["#","Prefill","New tok/s","Gen","Gen tok/s","Cache"],rows:t.map((x,b)=>[String(b+1),x.promptMs===void 0?"—":`${nn(x.promptMs)}${x.promptSource==="rate"?"*":""}`,x.promptNewTokensPerSecond===void 0?"—":Math.round(x.promptNewTokensPerSecond).toLocaleString(),x.generationMs===void 0?"—":nn(x.generationMs),x.generationTokensPerSecond===void 0?"—":Math.round(x.generationTokensPerSecond).toLocaleString(),x.cacheOutcome||"—"])},note:t.some(x=>x.promptSource==="rate")?"* derived from the provider's prompt rate (no TTFT event).":void 0}),{kind:"time",title:"Time",headline:a===void 0?Et:`${nn(a)} wall clock`,sections:s,footer:rl(e)}}function sm(e){return e.tools.length===1?`${e.tools[0]} ×${e.calls}`:`${Ls(e.calls,"call")} (${e.tools.join(", ")})`}function l_(e){const t=[],s=(e.toolsWaiting||0)+(e.toolsRunning||0);if(!e.toolCalls&&!s)return t.push({heading:"Outcome",rows:[{label:"Tools called",value:"none"}]}),{kind:"tools",title:"Tools",headline:"none",sections:t,footer:rl(e)};const a=[{label:"Succeeded",value:(e.toolCalls-(e.toolsFailed||0)).toLocaleString()},{label:"Failed",value:(e.toolsFailed||0).toLocaleString()}];e.toolsRunning&&a.push({label:"Running",value:e.toolsRunning.toLocaleString()}),e.toolsWaiting&&a.push({label:"Awaiting approval",value:e.toolsWaiting.toLocaleString(),hint:"not run yet — not a failure"}),t.push({heading:"Outcome",rows:a});const l=Object.entries(e.toolBreakdown||{}).sort((f,h)=>h[1].calls-f[1].calls||f[0].localeCompare(h[0]));l.length&&t.push({heading:"By tool",table:{columns:["Tool","Calls","Failed","Time"],rows:l.map(([f,h])=>[f,h.calls.toLocaleString(),h.failed.toLocaleString(),h.ms!==void 0?`${nn(h.ms)}${h.sharedBatches?" +shared":""}`:h.sharedBatches?"shared":Et])},note:l.some(([,f])=>f.sharedBatches)?"A batch that mixed tools ran them together; its time is not split between them.":void 0});const u=l.filter(([,f])=>f.errors&&Object.keys(f.errors).length);u.length&&t.push({heading:"Failures",rows:u.map(([f,h])=>({label:f,value:Object.entries(h.errors).sort((g,y)=>y[1]-g[1]).map(([g,y])=>y>1?`${g} ×${y}`:g).join(" · ")}))});const d=[{label:"Tool time",value:e.toolTimeMs===void 0?Et:`${nn(e.toolTimeMs)} · ${Ls(e.toolBatches||0,"batch","batches")}`}];return e.slowestToolBatch&&d.push({label:"Slowest batch",value:`${nn(e.slowestToolBatch.ms)} · ${sm(e.slowestToolBatch)}`}),t.push({heading:"Timing",rows:d,note:e.toolTimeIncludesApproval?"Gated calls are timed from request to result, so this includes waiting for your approval.":void 0}),{kind:"tools",title:"Tools",headline:`${Ls(e.toolCalls,"call")}${e.toolsFailed?` · ${e.toolsFailed} failed`:""}`,sections:t,footer:rl(e)}}function Qc(e,t){return e==="tokens"?a_(t):e==="time"?o_(t):l_(t)}function c_(e){const t=e.detail;return i.jsxs("div",{ref:e.panelRef,id:e.id,role:"tooltip",className:`pc-stat-detail pc-stat-detail--${t.kind}`,style:e.style,onMouseEnter:e.onMouseEnter,onMouseLeave:e.onMouseLeave,children:[i.jsxs("div",{className:"pc-stat-detail-head",children:[i.jsx("span",{className:"pc-stat-detail-title",children:t.title}),i.jsx("span",{className:"pc-stat-detail-headline",children:t.headline})]}),t.sections.map(s=>{var a;return i.jsxs("div",{className:"pc-stat-detail-section",children:[i.jsx("div",{className:"pc-stat-detail-heading",children:s.heading}),(a=s.rows)!=null&&a.length?i.jsx("dl",{className:"pc-stat-detail-rows",children:s.rows.map(l=>i.jsxs(ft.Fragment,{children:[i.jsx("dt",{children:l.label}),i.jsxs("dd",{children:[i.jsx("span",{className:l.value===Et?"pc-stat-detail-value pc-stat-detail-value--absent":"pc-stat-detail-value",children:l.value}),l.hint?i.jsx("span",{className:"pc-stat-detail-hint",children:l.hint}):null]})]},l.label))}):null,s.table?i.jsxs("table",{className:"pc-stat-detail-table",children:[i.jsx("thead",{children:i.jsx("tr",{children:s.table.columns.map(l=>i.jsx("th",{scope:"col",children:l},l))})}),i.jsx("tbody",{children:s.table.rows.map((l,u)=>i.jsx("tr",{children:l.map((d,f)=>i.jsx("td",{children:d},f))},u))})]}):null,s.note?i.jsx("p",{className:"pc-stat-detail-note",children:s.note}):null]},s.heading)}),i.jsx("div",{className:"pc-stat-detail-foot",children:t.footer.map(s=>i.jsx("div",{children:s},s))})]})}const jr=8;function u_(e){const[t,s]=w.useState(!!e.defaultOpen),[a,l]=w.useState(null),u=w.useRef(null),d=w.useRef(null),f=w.useRef(null),h=`pc-stat-${w.useId().replace(/[^a-zA-Z0-9_-]/g,"")}`,g=w.useCallback(()=>{f.current!==null&&window.clearTimeout(f.current),f.current=null},[]),y=w.useCallback(()=>{g(),s(!0)},[g]),v=w.useCallback(()=>{g(),f.current=window.setTimeout(()=>s(!1),120)},[g]);w.useEffect(()=>g,[g]),w.useLayoutEffect(()=>{if(!t){l(null);return}const C=()=>{const S=u.current,A=d.current;if(!S||!A)return;const $=S.getBoundingClientRect(),T=A.offsetWidth,j=A.offsetHeight,L=window.innerWidth,z=window.innerHeight,V=$.top-jr-j,P=$.bottom+jr,ce=V>=jr?V:P+j<=z-jr?P:Math.max(jr,z-jr-j),re=Math.min(Math.max(jr,$.left),Math.max(jr,L-jr-T));l({top:ce,left:re})};return C(),window.addEventListener("resize",C),window.addEventListener("scroll",C,!0),()=>{window.removeEventListener("resize",C),window.removeEventListener("scroll",C,!0)}},[t]),w.useEffect(()=>{if(!t)return;const C=S=>{S.key==="Escape"&&s(!1)};return document.addEventListener("keydown",C),()=>document.removeEventListener("keydown",C)},[t]);const x=typeof e.onClick=="function",b=x?"button":"span",k=t?i.jsx(c_,{detail:e.detail,id:h,panelRef:d,onMouseEnter:g,onMouseLeave:v,style:{position:"fixed",top:(a==null?void 0:a.top)??0,left:(a==null?void 0:a.left)??0,visibility:a?"visible":"hidden"}}):null;return i.jsxs(i.Fragment,{children:[i.jsxs(b,{ref:u,...x?{type:"button"}:{tabIndex:0},className:["pc-chat-stat","pc-chat-stat--detail",x?"pc-chat-stat--clickable":"",e.className].filter(Boolean).join(" "),"aria-label":`${e.label} — ${e.detail.title.toLowerCase()} details`,"aria-describedby":t?h:void 0,"data-stat-kind":e.detail.kind,onMouseEnter:y,onMouseLeave:v,onFocus:y,onBlur:()=>s(!1),onKeyDown:C=>{C.key==="Escape"&&s(!1)},onClick:x?()=>{var C;return(C=e.onClick)==null?void 0:C.call(e)}:void 0,children:[e.icon?i.jsx("span",{className:"pc-chat-stat-icon","aria-hidden":"true",children:e.icon}):null,i.jsx("span",{className:"pc-chat-stat-label",children:e.label})]}),k&&typeof document<"u"?Su.createPortal(k,document.body):k]})}function d_(e){const t=e.totalTokens!==void 0?Qc("tokens",e):null,s=Qc("tools",e),a=e.durationMs!==void 0?Qc("time",e):null;return[...t?[{label:`${e.totalTokens.toLocaleString()} tokens`,detail:t}]:[],{label:`${e.toolCalls} ${e.toolCalls===1?"tool":"tools"}`,detail:s},...e.changedFiles.length?[{label:`${e.changedFiles.length} ${e.changedFiles.length===1?"file":"files"} changed`,title:e.changedFiles.join(`
66
- `)}]:[],...a?[{label:`${(e.durationMs/1e3).toFixed(e.durationMs<1e4?1:0)}s`,detail:a}]:[]]}function f_(e){const t=String(e.role||"").trim().toLowerCase()||"system",s=String(e.kind||"").trim().toLowerCase(),a=String(e.level||"").trim().toLowerCase();return t==="system"&&s==="report_bug"?{label:String(e.title||"").trim()||"Bug report",icon:"warning",variant:"report_bug"}:t==="system"&&s==="report_feature"?{label:String(e.title||"").trim()||"Feature request",icon:"check",variant:"report_feature"}:t==="user"?{label:String(e.title||"").trim()||"You",icon:"user",variant:"user"}:t==="assistant"?{label:String(e.title||"").trim()||"Agent",icon:"bot",variant:"assistant"}:{label:String(e.title||"").trim()||(a==="error"?"Error":a==="warn"?"Warning":"System"),icon:a==="error"?"error":a==="warn"?"warning":"info",variant:a==="error"?"error":a==="warn"?"warn":"status"}}function im(e){var A;const t=e.message,s=w.useMemo(()=>f_(t),[t.kind,t.level,t.role,t.title]),a=String(t.ts||"").trim(),l=w.useMemo(()=>{if(!a)return"";const $=new Date(a);return Number.isFinite($.getTime())?$.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"}):""},[a]),[u,d]=w.useState("idle"),f=w.useRef(null);w.useEffect(()=>()=>{f.current!==null&&window.clearTimeout(f.current)},[]);const h=t.live,g=!h&&typeof e.onSpeakToggle=="function"&&s.variant==="assistant"&&!!String(t.content||"").trim(),y=g&&((A=e.getSpeakState)==null?void 0:A.call(e,t))||"idle",v=y==="loading"?"loader":y==="playing"?"pause":"speaker",x=y==="loading"?"Generating audio…":y==="playing"?"Pause":y==="paused"?"Resume":"Speak (TTS)",b=e.showCopy!==!1,k=Array.isArray(e.attachments)?e.attachments:[],C=t.statistics,S=w.useMemo(()=>Array.isArray(e.stats)?e.stats:C?d_(C):[],[e.stats,C]);return t.toolActivity?i.jsx(tm,{tool:t.toolActivity,showCopy:e.showCopy}):i.jsxs("div",{className:["pc-chat-item",`pc-chat-item--${s.variant}`,h?"pc-chat-item--live":"",e.className].filter(Boolean).join(" "),...h?{"aria-busy":!0}:{},children:[i.jsxs("div",{className:"pc-chat-header",children:[i.jsx("div",{className:"pc-chat-avatar","aria-hidden":"true",children:i.jsx(ie,{name:s.icon,size:14})}),i.jsx("span",{className:"pc-chat-role",children:s.label}),h?i.jsxs("span",{className:"pc-chat-live-indicator",title:"The reply is still being written",children:[i.jsx("span",{className:"pc-chat-live-dot","aria-hidden":"true"}),"streaming"]}):null,h!=null&&h.caption?i.jsx("span",{className:"pc-chat-live-caption",children:h.caption}):null,i.jsx("span",{className:"pc-chat-header-spacer"}),l?i.jsx("span",{className:"pc-chat-time",children:l}):null,i.jsxs("div",{className:"pc-chat-header-actions",children:[g?i.jsx("button",{className:"pc-chat-icon-btn",type:"button","aria-label":x,title:x,onClick:()=>{var $;return($=e.onSpeakToggle)==null?void 0:$.call(e,t)},children:i.jsx(ie,{name:v,size:22})}):null,b?i.jsx("button",{className:`pc-chat-icon-btn ${u!=="idle"?`pc-chat-icon-btn--${u}`:""}`.trim(),type:"button","aria-label":"Copy message",title:u==="idle"?"Copy":u==="copied"?"Copied":"Copy failed",onClick:async()=>{const $=await Pu(String(t.content||""));d($?"copied":"failed"),f.current!==null&&window.clearTimeout(f.current),f.current=window.setTimeout(()=>d("idle"),900)},children:i.jsx(ie,{name:"copy",size:22})}):null]})]}),h!=null&&h.reasoning?i.jsxs("details",{className:"pc-chat-thinking",children:[i.jsx("summary",{children:"Thinking"}),i.jsx("div",{className:"pc-chat-thinking-body",children:h.reasoning})]}):null,!h||String(t.content||"").trim()?i.jsx("div",{className:"pc-chat-body",children:i.jsx(Zp,{text:String(t.content||""),renderMarkdown:e.renderMarkdown,jsonCollapseAfterDepth:e.jsonCollapseAfterDepth,images:e.images||(s.variant==="user"?"inline":"link"),inlineImage:e.inlineImage})}):null,k.length?i.jsx("div",{className:"pc-chat-attachments","aria-label":"Attachments",children:k.slice(0,24).map(($,T)=>{const j=String($.label||"").trim()||"attachment",L=String($.target||"").trim(),z=String($.title||"").trim(),V=!!$.disabled||typeof $.onClick!="function";return i.jsxs("button",{type:"button",className:"pc-chat-attachment-chip",title:z||j,onClick:V?void 0:$.onClick,disabled:V,children:[i.jsx(ie,{name:"paperclip",size:14}),L?i.jsx("span",{className:`pc-chat-attachment-target pc-chat-attachment-target--${L}`,children:L}):null,i.jsx("span",{className:"pc-chat-attachment-name",children:j})]},$.id||`${j}:${T}`)})}):null,S.length?i.jsx("div",{className:"pc-chat-stats","aria-label":"Stats",children:S.slice(0,12).map(($,T)=>{const j=String($.label||"").trim();if(!j)return null;if($.detail)return i.jsx(u_,{label:j,detail:$.detail,icon:$.icon,onClick:$.onClick},$.id||`${j}:${T}`);const L=String($.title||"").trim(),z=typeof $.onClick=="function",V=z?"button":"span";return i.jsxs(V,{...z?{type:"button"}:{},className:["pc-chat-stat",z?"pc-chat-stat--clickable":""].filter(Boolean).join(" "),title:L||void 0,onClick:z?()=>{var P;return(P=$.onClick)==null?void 0:P.call($)}:void 0,children:[$.icon?i.jsx("span",{className:"pc-chat-stat-icon","aria-hidden":"true",children:$.icon}):null,i.jsx("span",{className:"pc-chat-stat-label",children:j})]},$.id||`${j}:${T}`)})}):null]})}function h_(e,t){const s=Math.max(0,Math.trunc(t));return e.scrollHeight-e.scrollTop-e.clientHeight<=s}function p_(e){const t=typeof e.autoScrollThresholdPx=="number"&&Number.isFinite(e.autoScrollThresholdPx)?e.autoScrollThresholdPx:120,s=e.autoScroll!==!1,a=w.useRef(null),l=w.useRef(null),[u,d]=w.useState(!0),f=w.useMemo(()=>Array.isArray(e.messages)?e.messages:[],[e.messages]),h=w.useMemo(()=>{var v;const y=[];for(const x of f){const b=y[y.length-1];x.toolActivity&&((v=b==null?void 0:b[0])!=null&&v.toolActivity)&&b[0].runId===x.runId?b.push(x):y.push([x])}return y},[f]);w.useEffect(()=>{if(!s)return;const y=a.current;if(!y)return;const v=()=>{d(h_(y,t))};return y.addEventListener("scroll",v,{passive:!0}),v(),()=>y.removeEventListener("scroll",v)},[s,t]);const g=w.useMemo(()=>{let y=0;for(const v of f)y+=String(v.content??"").length;return`${f.length}:${y}:${String(e.afterKey??"")}`},[f,e.afterKey]);return w.useEffect(()=>{if(!s||!u)return;const y=a.current;y&&(y.scrollTop=y.scrollHeight)},[s,u,g]),i.jsxs("div",{ref:a,className:["pc-chat-thread",e.className].filter(Boolean).join(" "),children:[f.length?null:e.empty||null,h.map((y,v)=>{var k;const x=y[0],b=String(x.id||"")||String(x.ts||"")+":"+String(x.role||"")+":"+v;return x.toolActivity?i.jsx(nm,{tools:y.map(C=>C.toolActivity),showCopy:(k=e.messageProps)==null?void 0:k.showCopy},b):i.jsx(im,{message:x,...e.messageProps||{}},b)}),e.after,i.jsx("div",{ref:l})]})}const m_=ft.forwardRef(function(t,s){const a=typeof t.rows=="number"&&Number.isFinite(t.rows)?Math.max(1,Math.trunc(t.rows)):3,l=!!t.disabled,u=!!t.busy,d=!l&&!u&&!!String(t.value||"").trim();return i.jsxs("div",{className:["pc-composer",t.className].filter(Boolean).join(" "),children:[t.leading,i.jsx("textarea",{ref:s,className:["pc-composer__textarea",t.textareaClassName].filter(Boolean).join(" "),value:t.value,onChange:f=>t.onChange(f.target.value),rows:a,style:{"--pc-composer-rows":String(a)},spellCheck:!1,autoCorrect:"off",autoCapitalize:"off",autoComplete:"off",placeholder:t.placeholder||"","aria-label":t.ariaLabel||t.placeholder||"Message",disabled:l,autoFocus:!!t.autoFocus,onPaste:t.onPaste,onKeyDown:f=>{f.key!=="Enter"||f.shiftKey||f.nativeEvent.isComposing||f.keyCode===229||(f.preventDefault(),d&&t.onSubmit())}}),i.jsxs("div",{className:"pc-composer__row",children:[i.jsx("div",{className:"pc-composer__actions",children:t.actions}),i.jsx("button",{type:"button",className:t.sendButtonClassName||"pc-btn",disabled:!d,onClick:()=>t.onSubmit(),children:u?t.busyLabel||"Thinking…":t.sendLabel||"Send"})]}),t.overlay]})}),et=e=>e&&typeof e=="object"&&!Array.isArray(e)?e:{},Zo=e=>Array.isArray(e)?e.map(et):[],Ge=e=>typeof e=="string"?e:"",Sa=e=>Ge(e.runtime_call_id||e.call_uid),Na=e=>Ge(e.call_id||e.id);function am(e,t){const s=t.record,a=et(s.effect);if(a.type!=="tool_calls")return[];const l=et(s.result),u=Zo(et(a.payload).tool_calls),d=u.length||s.status!=="waiting"?u:Zo(et(et(l.wait).details).tool_calls),f=Zo(l.results),h=d.length?d:f,g=[];return h.forEach((y,v)=>{let x=Sa(y)?f.filter(z=>Sa(z)===Sa(y)):[];!x.length&&Na(y)&&d.filter(z=>Na(z)===Na(y)).length===1&&(x=f.filter(z=>Na(z)===Na(y)));const b=d.length?x.length===1?x[0]:d.length===f.length?f[v]:{}:y,k=Sa(y)||Sa(b)||`${Ge(s.idempotency_key)||Ge(s.step_id)||t.cursor}:${v}`,C=`${t.runId}:${k}`,S=e.get(C),A=Ge(y.name||b.name)||(S==null?void 0:S.name);if(!A)return;const $=s.status==="completed"||s.status==="failed",T=s.status==="failed"||b.success===!1||!!b.error,j=y.arguments??b.arguments??(S==null?void 0:S.arguments),L={...S,id:C,runId:t.runId,name:A,arguments:j,status:$?T?"failed":"completed":s.status==="waiting"?"waiting":"running",...typeof b.success=="boolean"?{success:b.success}:{},...b.output!==void 0||b.result!==void 0?{output:b.output??b.result}:{},...b.error?{error:String(b.error)}:{},startedAt:(S==null?void 0:S.startedAt)||Ge(s.started_at)||void 0,endedAt:$&&Ge(s.ended_at)||(S==null?void 0:S.endedAt)};S&&["completed","failed"].includes(S.status)&&!$||(e.set(C,L),g.push(L))}),g}function Ei(e){if(e==null||e===""||typeof e=="boolean")return;const t=Number(e);return Number.isFinite(t)&&t>=0?t:void 0}function rr(e,t){for(const s of t){const a=e==null?void 0:e[s];if(a==null||a===""||typeof a=="boolean")continue;const l=Number(a);if(Number.isFinite(l)&&l>=0)return Math.trunc(l)}}function om(e){if(typeof e=="string")try{return et(JSON.parse(e))}catch{return{}}return et(e)}function bi(e,t){if(t===void 0||t==="")return e;const s=e||[];return s.includes(t)||s.push(t),s}function g_(e){return rr(e,["reasoning_tokens","thinking_tokens"])??rr(et(e.completion_tokens_details),["reasoning_tokens"])??rr(et(e.output_tokens_details),["reasoning_tokens"])}function y_(e){const t=et(typeof e=="string"&&e.trim().startsWith("{")?om(e):e);return Ge(t.error_class)}function w_(e){const t=new Map;for(const s of e){const a=s.record;if(et(a.effect).type!=="emit_event")continue;const l=et(a.result);if(Ge(l.name)!=="abstract.progress")continue;const u=et(l.payload);if(Ge(u.kind)!=="llm"||!Ge(u.step_id))continue;const d=`${Ge(u.run_id)||s.runId}:${Ge(u.step_id)}`,f=t.get(d)||{},h=Ei(u.ttft_s);h!==void 0&&(f.ttftS=h),f.provider=f.provider||Ge(u.provider)||void 0,f.model=f.model||Ge(u.model)||void 0,t.set(d,f)}return t}function qo(e){var C,S,A,$;const t=new Map,s=new Set,a=new Set,l={llmCalls:0,toolCalls:0,changedFiles:[]};let u=1/0,d=-1/0,f=!1,h=0,g=0,y=0;const v=w_(e),x=[],b=new Set;for(const T of e){const j=T.record,L=`${T.runId}:${j.step_id||T.cursor}:${j.status}`;if(s.has(L))continue;s.add(L);for(const Z of[j.started_at,j.ended_at]){const Ce=Date.parse(Ge(Z));Number.isFinite(Ce)&&(u=Math.min(u,Ce),d=Math.max(d,Ce))}for(const Z of am(t,T))Z.status==="waiting"&&b.add(Z.id);if(et(j.effect).type!=="llm_call"||j.status!=="completed")continue;l.llmCalls+=1;const z=et(j.result),V=et(z.output),P=et(z.usage||z.token_usage||z.tokens||V.usage||V.token_usage||V.tokens),ce=rr(P,["input_tokens","prompt_tokens","prompt","input","in"]),re=rr(P,["output_tokens","completion_tokens","completion","output","out"]),H=rr(P,["total_tokens","total"])??(ce!==void 0||re!==void 0?(ce||0)+(re||0):void 0);H!==void 0&&(ce===void 0||re===void 0||ce+re!==H)&&(f=!0),ce!==void 0&&(l.inputTokens=(l.inputTokens||0)+ce),re!==void 0&&(l.outputTokens=(l.outputTokens||0)+re),H!==void 0&&(l.totalTokens=(l.totalTokens||0)+H);const W=Ei(z.gen_time??V.gen_time);W!==void 0&&(l.genTimeMs=(l.genTimeMs||0)+W,l.timedCalls=(l.timedCalls||0)+1);const J=et(z.metadata||V.metadata),fe=et(J.performance),ue=Ei(fe.prompt_tokens_per_second),ye=Ei(fe.generation_tokens_per_second),ve=et(J.prompt_cache),q=Ei(ve.cached_tokens),se=Ei(ve.fed_tokens);if(ue!==void 0||ye!==void 0){if(l.measuredSpeedCalls=(l.measuredSpeedCalls||0)+1,ue!==void 0&&ue>0&&(l.promptTokensPerSecond=(l.promptTokensPerSecond||0)+ue,ce!==void 0)){const Z=ce/ue*1e3;l.prefillMs=(l.prefillMs||0)+Z,se!==void 0&&(h+=se,g+=Z)}ye!==void 0&&ye>0&&(l.generationTokensPerSecond=(l.generationTokensPerSecond||0)+ye,re!==void 0&&(l.decodeMs=(l.decodeMs||0)+re/ye*1e3))}if(q!==void 0||se!==void 0){l.measuredCacheCalls=(l.measuredCacheCalls||0)+1,l.cachedTokens=(l.cachedTokens||0)+(q||0),l.fedTokens=(l.fedTokens||0)+(se||0);const Z=Ge(ve.outcome);if(Z){const Ce=l.cacheOutcomes||[];Ce.includes(Z)||Ce.push(Z),l.cacheOutcomes=Ce}}const Q=Ge(j.step_id)||void 0,E=Q&&v.get(`${T.runId}:${Q}`)||{},F=et(z.route),G={runId:T.runId};Q&&(G.stepId=Q),Ge(j.started_at)&&(G.startedAt=Ge(j.started_at));const B=Ge(z.model||V.model)||Ge(F.model)||E.model,oe=Ge(F.provider)||Ge(et(J._provider_request).provider)||E.provider||Ge(z.provider);B&&(G.model=B),oe&&(G.provider=oe),B&&(l.models=bi(l.models,B)),oe&&(l.providers=bi(l.providers,oe)),(H===void 0||ce!==void 0&&re!==void 0&&ce+re===H)&&(ce!==void 0&&(G.inputTokens=ce),re!==void 0&&(G.outputTokens=re)),H!==void 0&&(G.totalTokens=H);const le=g_(P);le!==void 0&&(G.reasoningTokens=le,l.reasoningTokens=(l.reasoningTokens||0)+le),q!==void 0&&(G.cachedTokens=q),se!==void 0&&(G.fedTokens=se),Ge(ve.outcome)&&(G.cacheOutcome=Ge(ve.outcome)),Ge(ve.backend)&&(G.cacheBackend=Ge(ve.backend),l.cacheBackends=bi(l.cacheBackends,G.cacheBackend)),W!==void 0&&(G.genTimeMs=W),ue!==void 0&&ue>0&&(G.promptTokensPerSecond=ue),ye!==void 0&&ye>0&&(G.generationTokensPerSecond=ye),E.ttftS!==void 0?(G.ttftMs=E.ttftS*1e3,G.promptMs=G.ttftMs,G.promptSource="ttft",l.ttftMs=(l.ttftMs||0)+G.ttftMs,l.ttftCalls=(l.ttftCalls||0)+1):G.promptTokensPerSecond!==void 0&&ce!==void 0&&(G.promptMs=ce/G.promptTokensPerSecond*1e3,G.promptSource="rate"),G.promptMs!==void 0&&(l.promptPhaseMs=(l.promptPhaseMs||0)+G.promptMs,l.promptPhaseCalls=(l.promptPhaseCalls||0)+1,se!==void 0&&G.promptMs>0&&(G.promptNewTokensPerSecond=se/(G.promptMs/1e3),l.promptPhaseNewTokens=(l.promptPhaseNewTokens||0)+se,y+=G.promptMs)),G.ttftMs!==void 0&&W!==void 0&&W>=G.ttftMs?G.generationMs=W-G.ttftMs:G.generationTokensPerSecond!==void 0&&re!==void 0&&(G.generationMs=re/G.generationTokensPerSecond*1e3),G.generationMs!==void 0&&re!==void 0&&(l.generationPhaseMs=(l.generationPhaseMs||0)+G.generationMs,l.generationPhaseTokens=(l.generationPhaseTokens||0)+re);const he=et(J.speculation);if(Object.keys(he).length){const Z={};Ge(he.mode)&&(Z.mode=Ge(he.mode)),typeof he.used=="boolean"&&(Z.used=he.used),Ge(he.draft_kind)&&(Z.draftKind=Ge(he.draft_kind));const Ce=rr(he,["accepted_tokens"]),Ue=rr(he,["drafted_tokens"]),ke=rr(he,["rounds"]),X=rr(he,["num_draft_tokens"]);Ce!==void 0&&(Z.acceptedTokens=Ce),Ue!==void 0&&(Z.draftedTokens=Ue),Ce!==void 0&&Ue&&(Z.acceptanceRate=Ce/Ue),ke!==void 0&&(Z.rounds=ke),X!==void 0&&(Z.draftLength=X),G.speculation=Z;const ee=l.speculation||(l.speculation={calls:0,used:0});ee.calls+=1,Z.used&&(ee.used+=1),Z.mode&&(ee.modes=bi(ee.modes,Z.mode)),Z.draftKind&&(ee.draftKinds=bi(ee.draftKinds,Z.draftKind)),Ce!==void 0&&Ue!==void 0&&(ee.acceptedTokens=(ee.acceptedTokens||0)+Ce,ee.draftedTokens=(ee.draftedTokens||0)+Ue),ke!==void 0&&(ee.rounds=(ee.rounds||0)+ke),X!==void 0&&(ee.draftLengths=bi(ee.draftLengths,X))}x.push(G)}x.length&&(x.every(T=>T.startedAt)&&x.sort((T,j)=>Date.parse(T.startedAt)-Date.parse(j.startedAt)),l.modelCalls=x),y>0&&l.promptPhaseNewTokens!==void 0&&(l.promptPhaseTokensPerSecond=l.promptPhaseNewTokens/(y/1e3)),l.generationPhaseMs&&l.generationPhaseTokens!==void 0&&(l.generationPhaseTokensPerSecond=l.generationPhaseTokens/(l.generationPhaseMs/1e3)),(C=l.speculation)!=null&&C.draftedTokens&&(l.speculation.acceptanceRate=(l.speculation.acceptedTokens||0)/l.speculation.draftedTokens),l.measuredSpeedCalls&&(l.promptTokensPerSecond!==void 0&&(l.promptTokensPerSecond/=l.measuredSpeedCalls),l.generationTokensPerSecond!==void 0&&(l.generationTokensPerSecond/=l.measuredSpeedCalls)),g>0&&(l.prefillNewTokens=h,l.prefillNewTokensPerSecond=h/(g/1e3));const k=new Map;for(const T of t.values()){if(T.status==="waiting"){l.toolsWaiting=(l.toolsWaiting||0)+1;continue}if(T.status==="running"){l.toolsRunning=(l.toolsRunning||0)+1;continue}if(!["completed","failed"].includes(T.status))continue;l.toolCalls+=1;const j=T.status==="failed";j&&(l.toolsFailed=(l.toolsFailed||0)+1);const L=l.toolBreakdown||(l.toolBreakdown={}),z=L[T.name]||(L[T.name]={calls:0,failed:0});if(z.calls+=1,j){z.failed+=1;const H=y_(T.output);H&&((z.errors||(z.errors={}))[H]=(((S=z.errors)==null?void 0:S[H])||0)+1)}const V=Date.parse(Ge(T.startedAt)),P=Date.parse(Ge(T.endedAt));if(Number.isFinite(V)&&Number.isFinite(P)&&P>=V){const H=`${T.runId}|${T.startedAt}|${T.endedAt}`,W=k.get(H)||{ms:P-V,calls:0,names:new Map,waited:!1};W.calls+=1,W.names.set(T.name,(W.names.get(T.name)||0)+1),b.has(T.id)&&(W.waited=!0),k.set(H,W)}if(T.success!==!0||!["write_file","create_file","save_file","edit_file","update_file","replace_in_file","delete_file","remove_file","move_file","rename_file","copy_file"].includes(T.name))continue;const ce=om(T.arguments),re=Ge(ce.destination||ce.destination_path||ce.file_path||ce.path||ce.filename);re&&a.add(re)}for(const T of k.values()){l.toolBatches=(l.toolBatches||0)+1,l.toolTimeMs=(l.toolTimeMs||0)+T.ms,T.waited&&(l.toolTimeIncludesApproval=!0);const j=[...T.names.keys()].sort();(!l.slowestToolBatch||T.ms>l.slowestToolBatch.ms)&&(l.slowestToolBatch={ms:T.ms,calls:T.calls,tools:j});const L=(A=l.toolBreakdown)==null?void 0:A[j[0]];if(j.length===1&&L)L.ms=(L.ms||0)+T.ms;else for(const z of j){const V=($=l.toolBreakdown)==null?void 0:$[z];V&&(V.sharedBatches=(V.sharedBatches||0)+1)}}return l.changedFiles=[...a],f&&(delete l.inputTokens,delete l.outputTokens),Number.isFinite(u)&&Number.isFinite(d)&&(l.durationMs=Math.max(0,d-u)),{tools:[...t.values()],statistics:l}}function v_(e){const t=et(et(e).ledgers);return Object.entries(t).flatMap(([s,a])=>Zo(et(a).items).map((l,u)=>({runId:s,cursor:Number(l.cursor)||u+1,record:Object.keys(et(l.record)).length?et(l.record):l})))}const Yc=e=>e&&typeof e=="object"&&!Array.isArray(e)?e:{};function __(e){var C,S,A,$;const{tools:t,statistics:s}=qo(e.records),a={toolCalls:s.toolCalls,totalTokens:s.totalTokens,startedAt:String(((C=e.run)==null?void 0:C.created_at)||"")||void 0},l=(T,j,L)=>({...a,label:T,detail:j,tone:L});if(e.loading)return l("Loading conversation","Restoring saved activity","neutral");if(["completed","failed","cancelled"].includes(e.status))return l(e.status==="completed"?"Completed":e.status==="failed"?"Run failed":"Stopped","",e.status==="failed"?"error":e.status==="completed"?"success":"neutral");if((e.connection==="reconnecting"||e.connection==="disconnected")&&(!((S=e.records)!=null&&S.length)||!!e.error))return l(e.connection==="reconnecting"?"Reconnecting":"Disconnected",String(e.error||"Live activity is unavailable"),"waiting");if(e.status==="paused"||((A=e.run)==null?void 0:A.paused)===!0)return l("Paused","Resume when you’re ready","waiting");const u=Yc(($=e.interaction)==null?void 0:$.wait),d=Yc(u.details),f=d.kind==="tool_approval"||d.mode==="approval_required",h=f&&e.toolApprovalGranted===!0;if(f&&!h)return l("Approval needed","Review the tool requests below","waiting");if(!f&&["user","ask_user"].includes(u.reason))return l("Your answer is needed",String(u.prompt||"The workflow has a question for you"),"waiting");if(!f&&(u.reason==="event"||String(u.wait_key||"").startsWith("evt:")))return l("Waiting for an event",String(u.prompt||"Listening for the workflow’s trigger"),"waiting");const g=t.filter(T=>{var j;return T.status==="running"||h&&T.status==="waiting"&&T.runId===((j=e.interaction)==null?void 0:j.runId)});if(g.length)return l(g.length===1?"Running a tool":`Running ${g.length} tools`,[...new Set(g.map(T=>T.name))].join(" · "),"working");const y=new Map;for(const T of e.records){const j=`${T.runId}:${T.record.step_id||T.record.idempotency_key||T.cursor}`,L=y.get(j);L&&["completed","failed"].includes(String(L.record.status))||y.set(j,T)}if([...y.values()].reverse().find(T=>Yc(T.record.effect).type==="llm_call"&&["started","running"].includes(String(T.record.status))))return l("Thinking","Generating the next response","working");const x=e.displayStatus.trim(),b=!/^(completed|complete|done|finished|ready|success|succeeded|failed|running|working|waiting|thinking|idle|paused|stopped|cancelled)$/i.test(x)&&!x.startsWith("{")?x:"",k=t[t.length-1];return l(e.status==="idle"?"Ready":"Working",b||(k?`Last tool: ${k.name} · ${k.status==="failed"?"failed":k.status==="completed"?"done":"waiting"}`:"Following the workflow"),e.status==="idle"?"neutral":"working")}function Ho(e){if(!e)return!1;for(let t=0;t<e.length;t+=1)if(e[t]==="Files")return!0;return!1}function Ih(e){var a;const t=e==null?void 0:e.items;if(!t||!t.length)return null;let s=0;for(let l=0;l<t.length;l+=1)((a=t[l])==null?void 0:a.kind)==="file"&&(s+=1);return s>0?s:null}function Mh(e){return e===1?"Drop file to attach":typeof e=="number"&&e>1?`Drop ${e} files to attach`:"Drop files to attach"}function lm(e){const t=[],s=[],a=e==null?void 0:e.items;if(a&&a.length){for(let u=0;u<a.length;u+=1){const d=a[u];if(!d||d.kind!=="file")continue;const f=typeof d.webkitGetAsEntry=="function"?d.webkitGetAsEntry():null,h=typeof d.getAsFile=="function"?d.getAsFile():null;f!=null&&f.isDirectory?s.push(f.name||(h==null?void 0:h.name)||"folder"):h&&t.push(h)}return{files:t,folders:s}}const l=e==null?void 0:e.files;if(l)for(let u=0;u<l.length;u+=1)l[u]&&t.push(l[u]);return{files:t,folders:s}}function x_(e){return e.length?e.length===1?`"${e[0]}" is a folder. Folders are not supported: drop the files inside it instead.`:`${e.length} folders were dropped. Folders are not supported: drop the files inside them instead.`:""}const b_={"image/png":"png","image/jpeg":"jpg","image/gif":"gif","image/webp":"webp","image/heic":"heic","image/tiff":"tiff","image/bmp":"bmp"};function Ca(e){return String(e).padStart(2,"0")}function k_(e,t,s){const a=String(e||"").trim();if(a&&!/^image\.(png|jpe?g|gif|webp|heic|tiff?|bmp)$/i.test(a))return a;const l=b_[String(t||"").toLowerCase()]||a.split(".").pop()||"bin",u=`${s.getFullYear()}-${Ca(s.getMonth()+1)}-${Ca(s.getDate())} at ${Ca(s.getHours())}.${Ca(s.getMinutes())}.${Ca(s.getSeconds())}`;return`${String(t||"").startsWith("image/")||!a?"Pasted image":"Pasted file"} ${u}.${l}`}function j_(e,t=new Date){if(!e)return[];const s=e.types?Array.from(e.types):[];if(s.includes("text/plain")&&s.includes("text/html"))return[];const{files:a}=lm(e);return a.map(l=>{const u=k_(l.name,l.type,t);return u===l.name?l:new File([l],u,{type:l.type,lastModified:l.lastModified})})}class S_{constructor(t=1200){this.staleMs=t,this.depth=0,this.lastSeen=0}enter(t){this.depth+=1,this.lastSeen=t}over(t){this.depth===0&&(this.depth=1),this.lastSeen=t}leave(t){return this.depth=Math.max(0,this.depth-1),this.lastSeen=t,this.depth>0}reset(){this.depth=0}active(t){return this.depth>0&&t-this.lastSeen<this.staleMs}}function N_(e,t){if(e.kind==="ask-user"){if(t.kind==="choice"||t.kind==="free-text")return e.onSubmit(t.answer);throw new Error("Invalid submission for ask-user interaction")}if(e.kind==="tool-approval"){if(t.kind==="approve")return e.onApprove();if(t.kind==="deny")return e.onDeny();if(t.kind==="approve-all"&&e.onApproveAll)return e.onApproveAll();throw new Error("Invalid submission for tool-approval interaction")}if(t.kind==="event")return e.onSend(t.payload);throw new Error("Invalid submission for event-wait interaction")}function C_(e){return(e instanceof Error?e.message:String(e||"Unknown error")).trim()||"Unknown error"}function E_(e){return i.jsxs("div",{className:"pc-workflow-interaction__error",role:"alert",children:[i.jsxs("span",{children:["Could not complete that action: ",e.message]}),i.jsx("button",{type:"button",className:"pc-workflow-interaction__retry",onClick:e.onRetry,disabled:e.disabled,children:"Try again"})]})}function $_(e){var V;const t=e.interaction,[s,a]=w.useState(""),[l,u]=w.useState(()=>t.kind==="event-wait"&&t.initialPayload||""),[d,f]=w.useState(null),[h,g]=w.useState(!1),[y,v]=w.useState(""),[x,b]=w.useState(null),k=`${t.kind}:${t.id}`,C=w.useRef(k),S=w.useRef(!1),A=w.useRef(!1),$=w.useRef(!0),T=w.useRef(0);C.current!==k&&(C.current=k,S.current=!1,A.current=!1,T.current+=1);const j=!!e.disabled||d!==null||h||S.current||A.current,L=async(P,ce)=>{var W;if(e.disabled||S.current||A.current)return;const re=k,H=++T.current;S.current=!0,b(null),v(""),f(P);try{if(await ce(),!$.current||C.current!==re||T.current!==H)return;A.current=!0,g(!0),v("Response sent. Waiting for the workflow to continue.")}catch(J){if(!$.current||C.current!==re||T.current!==H)return;b({submission:P,message:C_(J)}),v("The action failed. You can try again."),(W=e.onError)==null||W.call(e,J)}finally{if(!$.current||C.current!==re||T.current!==H)return;S.current=!1,f(null)}};w.useEffect(()=>{a(""),u(t.kind==="event-wait"&&t.initialPayload||""),b(null),f(null),g(!1),v("")},[k]),w.useEffect(()=>($.current=!0,()=>{$.current=!1,T.current+=1,S.current=!1}),[]);const z=()=>{x&&L(x.submission,()=>N_(t,x.submission))};return i.jsxs("section",{className:"pc-workflow-interaction","aria-labelledby":`pc-workflow-interaction-${k}`,children:[i.jsxs("div",{className:"pc-workflow-interaction__heading",children:[i.jsx(ie,{name:t.kind==="tool-approval"?"warning":t.kind==="event-wait"?"history":"info",size:16}),i.jsxs("div",{children:[i.jsx("h3",{tabIndex:-1,id:`pc-workflow-interaction-${k}`,children:t.title||(t.kind==="tool-approval"?"Tool approval required":"Input required")}),t.description?i.jsx("div",{className:"pc-workflow-interaction__description",children:t.description}):null]})]}),t.kind==="ask-user"?i.jsxs("div",{className:"pc-workflow-interaction__body",children:[i.jsx("div",{className:"pc-workflow-interaction__prompt",children:t.prompt}),(V=t.choices)!=null&&V.length?i.jsx("div",{className:"pc-workflow-interaction__choices","aria-label":"Choices",children:t.choices.map(P=>i.jsxs("button",{type:"button",className:"pc-workflow-interaction__choice",disabled:j||P.disabled,onClick:()=>void L({kind:"choice",answer:P.id},()=>t.onSubmit(P.id)),children:[i.jsx("span",{children:P.label}),P.description?i.jsx("small",{children:P.description}):null]},P.id))}):null,t.allowFreeText!==!1?i.jsxs("div",{className:"pc-workflow-interaction__entry",children:[i.jsx("textarea",{"aria-label":"Response",value:s,onChange:P=>a(P.target.value),placeholder:t.freeTextPlaceholder||"Type a response",rows:2,disabled:j,onKeyDown:P=>{P.key!=="Enter"||P.shiftKey||P.nativeEvent.isComposing||P.keyCode===229||(P.preventDefault(),s.trim()&&L({kind:"free-text",answer:s},()=>t.onSubmit(s)))}},`${k}:text`),i.jsx("button",{type:"button",className:"pc-btn",disabled:j||!s.trim(),onClick:()=>void L({kind:"free-text",answer:s},()=>t.onSubmit(s)),children:(d==null?void 0:d.kind)==="free-text"?"Sending…":t.submitLabel||"Submit"})]}):null]}):t.kind==="tool-approval"?i.jsxs("div",{className:"pc-workflow-interaction__body",children:[i.jsxs("div",{className:"pc-workflow-interaction__prompt",children:["Allow ",i.jsx("strong",{children:t.toolName})," to run?"]}),t.detail?i.jsx("div",{className:"pc-workflow-interaction__detail",children:t.detail}):null,i.jsxs("div",{className:"pc-workflow-interaction__buttons",children:[i.jsx("button",{type:"button",className:"pc-workflow-interaction__deny",disabled:j,onClick:()=>void L({kind:"deny"},t.onDeny),children:(d==null?void 0:d.kind)==="deny"?"Denying…":t.denyLabel||"Deny"}),i.jsx("button",{type:"button",className:"pc-btn",disabled:j,onClick:()=>void L({kind:"approve"},t.onApprove),children:(d==null?void 0:d.kind)==="approve"?"Approving…":t.approveLabel||"Approve"}),t.onApproveAll?i.jsx("button",{type:"button",className:"pc-workflow-interaction__allow-all",disabled:j,onClick:()=>void L({kind:"approve-all"},t.onApproveAll),children:(d==null?void 0:d.kind)==="approve-all"?"Approving…":t.approveAllLabel||"Allow all"}):null]}),t.onApproveAll&&t.approveAllDescription?i.jsx("p",{className:"pc-workflow-interaction__scope",children:t.approveAllDescription}):null]}):i.jsxs("div",{className:"pc-workflow-interaction__body",children:[i.jsx("div",{className:"pc-workflow-interaction__prompt",children:t.prompt}),i.jsxs("label",{className:"pc-workflow-interaction__entry",children:[i.jsx("span",{children:t.payloadLabel||(t.eventName?`Payload for ${t.eventName}`:"Event payload")}),i.jsx("textarea",{value:l,onChange:P=>u(P.target.value),placeholder:t.payloadPlaceholder||"Enter payload",rows:2,"aria-label":t.payloadLabel||(t.eventName?`Payload for ${t.eventName}`:"Event payload"),disabled:j},`${k}:payload`)]}),i.jsx("div",{className:"pc-workflow-interaction__buttons",children:i.jsx("button",{type:"button",className:"pc-btn",disabled:j,onClick:()=>void L({kind:"event",payload:l},()=>t.onSend(l)),children:(d==null?void 0:d.kind)==="event"?"Sending…":t.sendLabel||"Send event"})})]}),x?i.jsx(E_,{message:x.message,onRetry:z,disabled:j}):null,i.jsx("div",{className:"pc-workflow-interaction__outcome","aria-live":"polite",children:y})]})}function Ko(e){return(e instanceof Error?e.message:String(e||"Unknown error")).trim()||"Unknown error"}function A_(e){const[t,s]=w.useState(!1),[a,l]=w.useState(!1),[u,d]=w.useState(!1),[f,h]=w.useState(null),g=w.useRef(!0),y=w.useRef(!1),v=w.useRef(!1),x=w.useRef(!1),b=w.useRef(0),k=w.useRef(0),C=w.useRef(0);w.useEffect(()=>(g.current=!0,()=>{g.current=!1,b.current+=1,k.current+=1,C.current+=1,y.current=!1,v.current=!1,x.current=!1}),[]);const S=!!e.blockedNotice,A=!!e.disabled||S,$=!!e.busy||t,T=t||!!e.busy&&!e.sendWhileBusy,j=e.stopState||null,L=(j==null?void 0:j.phase)==="stopping",z=typeof e.onFiles=="function",V=w.useRef(null),[P,ce]=w.useState(null),[re,H]=w.useState(""),W=w.useRef(e.onFiles);W.current=e.onFiles;const J=w.useRef(A);J.current=A;const fe=async(G,B)=>{const oe=W.current;if(oe){if(J.current){h({action:"attach",message:"attachments are unavailable right now."});return}if(B.length)h({action:"attach",message:x_(B)});else if(G.length)h(null);else{h({action:"attach",message:"the drop contained no files."});return}if(G.length){H(`Attaching ${G.length} ${G.length===1?"file":"files"}…`);try{await oe(G)}catch(le){g.current&&h({action:"attach",message:Ko(le)})}}}},ue=w.useRef(fe);ue.current=fe,w.useEffect(()=>{if(!z||typeof window>"u")return;const G=new S_;let B=0;const oe=ee=>!!(V.current&&ee instanceof Node&&V.current.contains(ee)),le=()=>{G.reset(),B&&window.clearInterval(B),B=0,ce(null)},he=()=>{B||(B=window.setInterval(()=>{G.active(Date.now())||le()},250))},Z=ee=>{var we;if(!Ho((we=ee.dataTransfer)==null?void 0:we.types))return;G.enter(Date.now());const pe=oe(ee.target),De=Ih(ee.dataTransfer);ce(Pe=>Pe&&Pe.over===pe&&Pe.count===(De??Pe.count)?Pe:{count:De??(Pe==null?void 0:Pe.count)??null,over:pe}),he()},Ce=ee=>{var De;if(!Ho((De=ee.dataTransfer)==null?void 0:De.types))return;ee.preventDefault(),G.over(Date.now());const pe=oe(ee.target);ee.dataTransfer&&(ee.dataTransfer.dropEffect=pe&&!J.current?"copy":"none"),ce(we=>we&&we.over===pe?we:{count:(we==null?void 0:we.count)??Ih(ee.dataTransfer),over:pe}),he()},Ue=ee=>{var pe;Ho((pe=ee.dataTransfer)==null?void 0:pe.types)&&(G.leave(Date.now())||le())},ke=ee=>{var Ve;if(!Ho((Ve=ee.dataTransfer)==null?void 0:Ve.types))return;const pe=oe(ee.target),De=ee.defaultPrevented&&!pe;if(ee.preventDefault(),le(),De)return;if(!pe){h({action:"attach",message:"drop files on the conversation to attach them."});return}const{files:we,folders:Pe}=lm(ee.dataTransfer);ue.current(we,Pe)},X=ee=>{ee.key==="Escape"&&G.depth>0&&le()};return window.addEventListener("dragenter",Z),window.addEventListener("dragover",Ce),window.addEventListener("dragleave",Ue),window.addEventListener("drop",ke),window.addEventListener("dragend",le),window.addEventListener("blur",le),window.addEventListener("keydown",X),()=>{window.removeEventListener("dragenter",Z),window.removeEventListener("dragover",Ce),window.removeEventListener("dragleave",Ue),window.removeEventListener("drop",ke),window.removeEventListener("dragend",le),window.removeEventListener("blur",le),window.removeEventListener("keydown",X),B&&window.clearInterval(B)}},[z]);const ye=G=>{if(!z||A)return;const B=j_(G.clipboardData);B.length&&(G.preventDefault(),fe(B,[]))},ve=P?i.jsxs("div",{className:["pc-workflow-chat__dropzone",P.over?"is-over":"",A?"is-disabled":""].filter(Boolean).join(" "),"aria-hidden":"true",children:[i.jsx("span",{className:"pc-workflow-chat__dropzone-icon",children:i.jsx(ie,{name:"paperclip",size:18})}),i.jsxs("span",{className:"pc-workflow-chat__dropzone-text",children:[i.jsx("strong",{children:A?"Attachments are unavailable right now":Mh(P.count)}),A?null:i.jsx("span",{children:P.over?"Release to upload to this conversation":"Drop anywhere on the conversation"})]})]}):null,q=P?A?"Attachments are unavailable right now":Mh(P.count):re,se=async()=>{const G=String(e.draft||"");if(A||y.current||!e.sendWhileBusy&&e.busy||!G.trim())return;const B=++b.current;y.current=!0,h(null),s(!0);try{await e.onSend(G)}catch(oe){g.current&&b.current===B&&h({action:"send",message:Ko(oe)})}finally{g.current&&b.current===B&&(y.current=!1,s(!1))}},Q=async()=>{if(A||v.current||!e.onCancel)return;const G=++k.current;v.current=!0,h(null),l(!0);try{await e.onCancel()}catch(B){g.current&&k.current===G&&h({action:"cancel",message:Ko(B)})}finally{g.current&&k.current===G&&(v.current=!1,l(!1))}},E=async()=>{if(A||x.current||!e.onAttach)return;const G=++C.current;x.current=!0,h(null),d(!0);try{await e.onAttach()}catch(B){g.current&&C.current===G&&h({action:"attach",message:Ko(B)})}finally{g.current&&C.current===G&&(x.current=!1,d(!1))}},F=()=>{f&&(f.action==="send"&&se(),f.action==="cancel"&&Q(),f.action==="attach"&&E())};return i.jsxs("section",{ref:V,className:["pc-workflow-chat",P?"pc-workflow-chat--dragging":"",P!=null&&P.over?"pc-workflow-chat--drag-over":"",e.className].filter(Boolean).join(" "),"aria-label":"Workflow chat","data-stream-replies":e.streamReplies||"gateway_default",children:[e.header?i.jsx("header",{className:"pc-workflow-chat__header",children:e.header}):null,i.jsx("div",{className:"pc-workflow-chat__transcript",children:i.jsx(p_,{messages:Array.isArray(e.messages)?e.messages:[],empty:e.emptyState,autoScroll:!0,messageProps:{...e.messageProps,...e.renderMarkdown?{renderMarkdown:e.renderMarkdown}:{}},after:i.jsxs(i.Fragment,{children:[e.interaction?i.jsx($_,{interaction:e.interaction,disabled:A}):null,S?i.jsx("div",{className:"pc-workflow-chat__blocked",role:"status",children:e.blockedNotice}):null]}),afterKey:`${e.interaction?`${e.interaction.kind}:${e.interaction.id}`:""}:${S?"blocked":""}`})}),f?i.jsxs("div",{className:"pc-workflow-chat__error",role:"alert",children:[i.jsxs("span",{children:["Could not ",f.action==="send"?"send this message":f.action==="attach"?"attach a file":"stop the run",": ",f.message]}),i.jsx("button",{type:"button",onClick:F,disabled:A,children:"Try again"})]}):null,i.jsxs("div",{className:"pc-workflow-chat__composer",children:[i.jsx(m_,{value:e.draft,onChange:e.onDraftChange,onSubmit:()=>void se(),placeholder:e.placeholder||"Send a message",ariaLabel:"Message",disabled:A,busy:T,sendLabel:e.sendLabel,busyLabel:e.busyLabel,rows:2,leading:e.attachments?i.jsx("div",{className:"pc-workflow-chat__attachments",children:e.attachments}):null,overlay:ve,onPaste:z?ye:void 0,actions:i.jsxs(i.Fragment,{children:[e.onAttach?i.jsxs("button",{type:"button",className:"pc-workflow-chat__icon-button","aria-label":"Attach file",title:"Attach file",disabled:A||u,onClick:()=>void E(),children:[i.jsx(ie,{name:"paperclip",size:16}),i.jsx("span",{children:u?"Attaching…":"Attach"})]}):null,e.composerExtras,$&&e.onCancel?i.jsxs("button",{type:"button",className:"pc-workflow-chat__stop",disabled:A||a||L,onClick:()=>void Q(),children:[i.jsx(ie,{name:"x",size:14}),i.jsx("span",{children:a||L?"Stopping…":"Stop"})]}):j?i.jsx("span",{className:`pc-workflow-chat__stop-state pc-workflow-chat__stop-state--${j.phase}`,role:"status","aria-live":"polite",children:j.label}):null]})}),z?i.jsx("div",{className:"pc-sr-only",role:"status","aria-live":"polite",children:q}):null]}),e.footer?i.jsx("footer",{className:"pc-workflow-chat__footer",children:e.footer}):null]})}const Aa="llm.delta",$i="llm.delta_end";function T_(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:null}function As(e){return typeof e=="string"&&e.trim()!==""}function R_(e){return typeof e=="number"&&Number.isInteger(e)&&e>=0}function I_(e){return"reason"in e}function cm(e,t){const s=T_(e),a=s==null?void 0:s.kind,l=t||(typeof a=="string"&&a?a:s&&"reason"in s?$i:Aa),u=h=>{throw new Error(`Malformed ${l} event from the gateway: ${h}`)};if(t!==void 0&&t!==Aa&&t!==$i&&u(`unknown event name ${JSON.stringify(t)}`),!s)return u("the payload is not an object");a!==void 0&&a!==Aa&&a!==$i&&u(`unknown kind ${JSON.stringify(a)}`),a!==void 0&&t!==void 0&&a!==t&&u(`kind ${JSON.stringify(a)} does not match the event name`),As(s.run_id)||u("run_id is missing"),As(s.call_id)||u("call_id is missing"),R_(s.seq)||u("seq is not a non-negative integer");const d=t||a?(t||a)===$i:"reason"in s;s.root_run_id!==void 0&&!As(s.root_run_id)&&u("root_run_id is not a run id"),s.parent_run_id!==void 0&&s.parent_run_id!==null&&!As(s.parent_run_id)&&u("parent_run_id is neither a run id nor null");const f={run_id:s.run_id,...As(s.root_run_id)?{root_run_id:s.root_run_id}:{},...s.parent_run_id!==void 0?{parent_run_id:s.parent_run_id}:{},...As(s.node_id)?{node_id:s.node_id}:{},call_id:s.call_id,seq:s.seq};return d?(["completed","failed","cancelled","unavailable"].includes(String(s.reason))||u(`unknown reason ${JSON.stringify(s.reason)}`),s.detail!==void 0&&s.detail!==null&&typeof s.detail!="string"&&u("detail is not a string"),{kind:$i,...f,reason:s.reason,...As(s.detail)?{detail:s.detail}:{}}):(typeof s.text!="string"&&u("text is not a string"),s.channel!=="content"&&s.channel!=="reasoning"&&u(`unknown channel ${JSON.stringify(s.channel)}`),typeof s.snapshot!="boolean"&&u("snapshot is not a boolean"),{kind:Aa,...f,text:s.text,channel:s.channel,snapshot:s.snapshot})}function M_(e,t){if(e!==Aa&&e!==$i)return null;let s=t;if(typeof t=="string")try{s=JSON.parse(t)}catch{throw new Error(`Malformed ${e} event from the gateway: data is not JSON`)}return cm(s,e)}function L_(e){if(e==="on")return{stream:!0};if(e==="off")return{stream:!1};if(e==="gateway_default")return{};throw new Error(`Unknown streamReplies mode ${JSON.stringify(e)}; use "gateway_default", "on" or "off"`)}const P_={structured_output:"this step asks the model for structured output",remote_core:"the model runs on a remote AbstractCore server",provider_cannot_stream:"the model provider cannot stream",sink_error:"the gateway could not relay the live text",usage_unavailable:"the provider does not report token usage while streaming"};function O_(e){return`This reply is not streamed: ${e?P_[e]||`the gateway reported "${e}"`:"the gateway gave no reason"}. It appears when it is complete.`}function D_(e){return e.toolApprovalGranted?null:e.interaction}const Lh={messages:[],records:[],run:null,interaction:null,status:"idle",displayStatus:"",loading:!1,error:null,connection:"idle",toolApprovalGranted:!1,stop:null};function Re(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:null}function Ae(e){return typeof e=="string"?e.trim():e==null?"":typeof e=="number"||typeof e=="boolean"?String(e):""}function Ta(e){return Array.isArray(e)?e:[]}function tn(e){return Ae(e==null?void 0:e.status).toLowerCase()||"unknown"}function _t(e){return["completed","failed","cancelled"].includes(e.toLowerCase())}function Xr(e){const t=Re(e),s=Number((t==null?void 0:t.status)??(t==null?void 0:t.statusCode));return s===401||s===403}function F_(e){const t=Re(e);return Number((t==null?void 0:t.status)??(t==null?void 0:t.statusCode))}function Xc(e){const t=s=>{if(Array.isArray(s))return s.map(t);const a=Re(s);if(!a)return s;const l={};for(const u of Object.keys(a).sort())l[u]=t(a[u]);return l};try{return JSON.stringify(t(e))}catch{return"[unserializable]"}}function _u(e){if(typeof e=="string")return e.trim();const t=Re(e);if(!t)return"";for(const s of["answer","response","message","text","content","output"]){const a=t[s];if(typeof a=="string"&&a.trim())return a.trim()}return""}function ki(e){const t=_u(e);if(t)return t;if(!Re(e)&&!Array.isArray(e))return"";try{return JSON.stringify(e,null,2)}catch{return""}}function Ph(e){if(!e)return"";for(const a of["prompt","request","task","message","query","input"]){const l=Ae(e[a]);if(l)return l}const t=Re(e.context);for(const a of["task","message"]){const l=Ae(t==null?void 0:t[a]);if(l)return l}const s=Ta(t==null?void 0:t.messages);for(let a=s.length-1;a>=0;a-=1){const l=Re(s[a]);if(Ae(l==null?void 0:l.role).toLowerCase()!=="user")continue;const u=Ae(l==null?void 0:l.content);if(u)return u}return""}function um(e){const t=Re(e.result);return Re(t==null?void 0:t.wait)}function Zc(e){return e?Ae(e.reason)==="subworkflow"||Ae(e.wait_key).startsWith("subworkflow:"):!1}function Oh(e,t){return!!(e&&e.runId===t.runId&&Ae(e.wait.wait_key)===Ae(t.wait.wait_key))}function xu(e){return Re(e.effect)||{}}function z_(e,t){return Ae(e.run_id)||t}function Dh(e){return Ae(e.ended_at)||Ae(e.started_at)||void 0}function Fh(e){const t=new Set,s=g=>{const y=Ae(g);y&&t.add(y)},a=Re(e.result);s(a==null?void 0:a.sub_run_id),s(a==null?void 0:a.subRunId),s(a==null?void 0:a.child_run_id);const l=xu(e),u=Re(l.payload);Ae(l.type)==="start_subworkflow"&&(s(u==null?void 0:u.sub_run_id),s(u==null?void 0:u.subRunId),s(u==null?void 0:u.child_run_id));const d=um(e),f=Re(d==null?void 0:d.details);s(f==null?void 0:f.sub_run_id),s(f==null?void 0:f.subRunId),s(f==null?void 0:f.child_run_id);const h=Ae(d==null?void 0:d.wait_key);return h.startsWith("subworkflow:")&&s(h.slice(12)),[...t]}class W_{constructor(t,s={}){this.transport=t,this.options=s,this.snapshot={...Lh},this.subscribers=new Set,this.controller=null,this.generation=0,this.rootRunId="",this.cursors=new Map,this.seenRecords=new Set,this.seenMessages=new Set,this.watchedRuns=new Set,this.childCatchUpAttempts=new Map,this.runStates=new Map,this.historicalRuns=new Map,this.historicalRunFailures=new Map,this.commandIds=new Map,this.toolActivities=new Map,this.historicalEvidence=new Map,this.approvedWaits=new Set,this.grantedToolWaits=new Set,this.resolvedWaits=new Set,this.approvalEpoch=0,this.toolApprovalPolicy=null,this.toolApprovalSuspended=!1,this.toolApprovalStopped=!1,this.displayStatusAt=-1/0,this.stopRequested=!1,this.stopFollowing=!1,this.openLlmSteps=new Set,this.forcedStop=null,this.liveReplies=new Map,this.closedLiveCalls=new Set,this.shownLiveCalls=new Set,this.liveDirty=new Set,this.liveRenderTimer=null,this.lastLiveRender=-1/0;const a=s.liveRenderIntervalMs??60;if(typeof a!="number"||!Number.isFinite(a)||a<0)throw new Error(`liveRenderIntervalMs must be a non-negative number of milliseconds, got ${JSON.stringify(s.liveRenderIntervalMs)}`);this.liveRenderIntervalMs=a}subscribe(t){return this.subscribers.add(t),()=>this.subscribers.delete(t)}getSnapshot(){return this.snapshot}reset(){var t;this.toolApprovalSuspended=!1,this.toolApprovalStopped=!1,this.approvalEpoch+=1,this.displayStatusAt=-1/0,this.stopRequested=!1,this.stopFollowing=!1,this.openLlmSteps.clear(),this.forcedStop=null,this.generation+=1,(t=this.controller)==null||t.abort(),this.controller=null,this.rootRunId="",this.cursors.clear(),this.seenRecords.clear(),this.seenMessages.clear(),this.watchedRuns.clear(),this.childCatchUpAttempts.clear(),this.runStates.clear(),this.historicalRuns.clear(),this.historicalRunFailures.clear(),this.commandIds.clear(),this.toolActivities.clear(),this.historicalEvidence.clear(),this.approvedWaits.clear(),this.grantedToolWaits.clear(),this.resolvedWaits.clear(),this.liveReplies.clear(),this.closedLiveCalls.clear(),this.shownLiveCalls.clear(),this.liveDirty.clear(),this.lastLiveRender=-1/0,this.liveRenderTimer&&(clearTimeout(this.liveRenderTimer),this.liveRenderTimer=null),this.set({...Lh})}dispose(){this.reset(),this.subscribers.clear()}async load(t){const s=Ae(t);if(this.reset(),!s)return;const a=++this.generation,l=new AbortController;this.controller=l,this.rootRunId=s,this.set({...this.snapshot,loading:!0,status:"loading",error:null,connection:"connecting"});try{const[u,d]=await Promise.all([this.transport.getRun(s,l.signal),this.transport.getHistory(s,l.signal)]);if(!this.live(a))return;const f=Re(u),h=Re(f==null?void 0:f.waiting),g=tn(f);if(await this.ingestHistory(d,s,a),!this.live(a))return;if(this.set({...this.snapshot,run:f,status:g,loading:!1,...h&&!_t(g)?{interaction:this.interactionWith({runId:s,wait:h})}:{}}),f&&this.updateRunState(s,f),h)for(const y of Fh({result:{wait:h}}))y!==s&&this.catchUpAndWatch(y,a);await this.catchUpAndWatch(s,a),this.pollRootLifecycle(s,a)}catch(u){!l.signal.aborted&&this.live(a)&&this.fail(u)}}async sendCommand(t,s={}){var y,v;t==="cancel"&&(this.toolApprovalStopped=!0,this.revokeToolApproval(),this.stopRequested=!0,this.recomputeStop());const a=Ae(s.wait_key),l=t==="resume"?a?this.interactionRunId()||this.rootRunId:this.rootRunId:t==="emit_event"?this.interactionRunId()||this.rootRunId:this.rootRunId;if(!l)throw new Error("No workflow run is loaded");const u=t==="resume"&&a&&((y=this.snapshot.interaction)==null?void 0:y.stepId)||"",d=`${l}\0${t}\0${u}\0${Xc(s)}`;let f=this.commandIds.get(d);f||(f=this.newCommandId(),this.commandIds.set(d,f));const h=this.generation,g=(v=this.controller)==null?void 0:v.signal;try{const x=await this.transport.submitCommand({command_id:f,run_id:l,type:t,payload:s,...this.options.clientId?{client_id:this.options.clientId}:{}},g);if(!this.live(h))return x;const b=Re(x);if(b&&b.accepted===!1)throw t==="cancel"&&(this.stopRequested=!1,this.recomputeStop()),new Error(Ae(b.detail)||"Gateway did not accept the command");return this.commandIds.delete(d),l===this.rootRunId&&["pause","resume","cancel"].includes(t)&&this.refreshRunState(l,h),x}catch(x){throw this.live(h)&&this.fail(x,!1),x}}resume(t){const s=this.requireInteraction();return this.sendCommand("resume",{wait_key:Ae(s.wait.wait_key),payload:{response:t}})}approve(t,s){const a=this.requireInteraction();if(_t(this.snapshot.status))throw new Error("This run has already ended.");if(s&&(a.runId!==s.runId||Ae(a.wait.wait_key)!==s.waitKey||s.stepId!==void 0&&a.stepId!==s.stepId))throw new Error("This approval request has changed. Review the current request before deciding.");if(t&&this.toolApprovalPolicy&&!this.toolCallsMatch(a,this.toolApprovalPolicy.enabledTools))throw new Error("This request includes an unavailable or unselected tool. It cannot be authorized. Deny this request or stop the run and change Tools settings.");const l=this.generation;return this.sendCommand("resume",{wait_key:Ae(a.wait.wait_key),payload:{approved:!!t}}).then(u=>{if(!this.live(l))return u;const d=this.occurrenceKey(a);return this.approvedWaits.add(d),t&&this.isToolApproval(a)&&!this.grantedToolWaits.has(d)&&(this.grantedToolWaits.add(d),this.set({...this.snapshot})),u})}async approveWithPolicyChange(t,s){const a=this.generation,l=this.approvalEpoch;if(!this.isToolApproval(this.requireInteraction()))throw new Error("This is not a tool approval request.");await this.approve(!0,t),!(!this.live(a)||l!==this.approvalEpoch||this.toolApprovalStopped||_t(this.snapshot.status))&&s()}async allowAllToolsForRun(t){const s=this.generation,a=this.approvalEpoch,l=this.requireInteraction();if(!this.isToolApproval(l))throw new Error("This is not a tool approval request.");await this.approve(!0,t),!(!this.live(s)||a!==this.approvalEpoch||_t(this.snapshot.status))&&(this.approvedWaits.add(`${t.runId}:${t.waitKey}${l.stepId?`:${l.stepId}`:""}`),this.set({...this.snapshot,autoApproveTools:!0}))}revokeToolApproval(){this.approvalEpoch+=1,this.toolApprovalSuspended=!0,this.set({...this.snapshot,autoApproveTools:!1})}setToolApprovalPolicy(t){Xc(t)!==Xc(this.toolApprovalPolicy)&&(this.approvalEpoch+=1,this.toolApprovalSuspended=!1,this.toolApprovalPolicy=t?{enabledTools:[...t.enabledTools],autoApproveTools:[...t.autoApproveTools]}:null,this.set({...this.snapshot}))}occurrenceKey(t){return`${t.runId}:${Ae(t.wait.wait_key)}${t.stepId?`:${t.stepId}`:""}`}interactionWith(t){const s=this.snapshot.interaction;return s&&Zc(t.wait)&&!Zc(s.wait)?s:s&&Oh(s,t)&&t.stepId===void 0&&s.stepId!==void 0?{...t,stepId:s.stepId}:t}adoptDurableWait(t,s){const a=Re(s.waiting);if(!a||tn(s)!=="waiting"||Zc(a)||_t(this.snapshot.status)||this.resolvedWaits.has(`${t}:${Ae(a.wait_key)}`))return;const l=this.interactionWith({runId:t,wait:a}),u=this.snapshot.interaction;u&&Oh(u,l)&&u.stepId===l.stepId||this.set({...this.snapshot,interaction:l})}coveredByStandingPermission(t,s){var a;return t.loading||this.toolApprovalStopped||this.toolApprovalSuspended||!this.toolApprovalPolicy&&!t.autoApproveTools||_t(t.status)||((a=t.run)==null?void 0:a.paused)===!0||t.status==="paused"||!s||!this.isToolApproval(s)||this.toolApprovalPolicy&&(!this.toolCallsMatch(s,this.toolApprovalPolicy.enabledTools)||!this.toolCallsMatch(s,this.toolApprovalPolicy.autoApproveTools))?!1:!!Ae(s.wait.wait_key)}present(t){const s=t.interaction,a=s?this.occurrenceKey(s):"",l=!!(s&&this.isToolApproval(s)&&(this.grantedToolWaits.has(a)||!this.approvedWaits.has(a)&&this.coveredByStandingPermission({...t,loading:!1},s)));if(!l&&!this.snapshot.toolApprovalGranted&&!t.toolApprovalGranted)return t.toolApprovalGranted===!1?t:{...t,toolApprovalGranted:!1};let u=!1;const d=t.messages.map(f=>{var y;const h=f.toolActivity;if(!h||((y=this.toolActivities.get(h.id))==null?void 0:y.status)!=="waiting")return f;const g=l&&h.runId===(s==null?void 0:s.runId)?"running":"waiting";return h.status===g?f:(u=!0,this.toolMessage({...h,status:g}))});return{...t,toolApprovalGranted:l,...u?{messages:d}:{}}}toolCallsMatch(t,s){var l;const a=Ta((l=Re(t.wait.details))==null?void 0:l.tool_calls);return a.length>0&&a.every(u=>{var f;const d=Ae((f=Re(u))==null?void 0:f.name);return!!d&&s.includes(d)})}isToolApproval(t){const s=Re(t.wait.details);return(s==null?void 0:s.mode)==="approval_required"||(s==null?void 0:s.kind)==="tool_approval"}autoApproveCurrentWait(){const t=this.snapshot.interaction;if(!this.coveredByStandingPermission(this.snapshot,t))return;const s={runId:t.runId,waitKey:Ae(t.wait.wait_key),stepId:t.stepId},a=this.occurrenceKey(t);if(this.approvedWaits.has(a))return;this.approvedWaits.add(a),this.grantedToolWaits.add(a);const l=this.generation,u=this.approvalEpoch;this.approve(!0,s).catch(d=>{if(this.live(l)){if(this.grantedToolWaits.delete(a),u!==this.approvalEpoch){this.set({...this.snapshot});return}this.toolApprovalSuspended=!0,this.set({...this.snapshot,autoApproveTools:!1}),this.fail(d,!1)}})}emitEvent(t){return this.sendCommand("emit_event",t)}cancel(){return this.sendCommand("cancel",{})}requireInteraction(){if(!this.snapshot.interaction)throw new Error("This workflow is not waiting for input");if(!Ae(this.snapshot.interaction.wait.wait_key))throw new Error("The workflow wait has no wait_key");return this.snapshot.interaction}interactionRunId(){var t;return((t=this.snapshot.interaction)==null?void 0:t.runId)||""}live(t){var s;return t===this.generation&&!((s=this.controller)!=null&&s.signal.aborted)}set(t){this.snapshot=this.present(t);for(const s of this.subscribers)s();this.autoApproveCurrentWait()}async catchUpAndWatch(t,s){var a;if(!(!this.live(s)||this.watchedRuns.has(t))){this.watchedRuns.add(t);try{if(t!==this.rootRunId)try{const l=Re(await this.transport.getRun(t,(a=this.controller)==null?void 0:a.signal));if(!this.live(s))return;l&&this.updateRunState(t,l)}catch(l){if(!this.live(s))return;if(Xr(l))throw l;this.fail(l,!1)}if(await this.catchUp(t,s),!this.live(s)||_t(tn(this.runStates.get(t)||null)))return;this.childCatchUpAttempts.delete(t),this.watch(t,s)}catch(l){if(!this.live(s))return;if(this.watchedRuns.delete(t),t===this.rootRunId)throw l;if(Xr(l)){this.fail(l);return}const u=(this.childCatchUpAttempts.get(t)||0)+1;if(this.childCatchUpAttempts.set(t,u),this.fail(l,!1),u>=5)return;await this.waitForRetry(Math.min(2e3,150*2**(u-1))),this.live(s)&&this.catchUpAndWatch(t,s)}}}async catchUp(t,s){var a;for(let l=0;l<100&&this.live(s);l+=1){const u=this.cursors.get(t)||0,d=await this.transport.getLedger(t,u,(a=this.controller)==null?void 0:a.signal);if(!this.live(s))return;const f=Re(d),h=Array.isArray(d)?d:Ta(f==null?void 0:f.items);for(const y of h)this.ingestItem(t,y);const g=Number(f==null?void 0:f.next_after);if(!h.length||!Number.isFinite(g)||g<=u)break;this.cursors.set(t,g)}}async watch(t,s){try{await this.followStream(t,s)}finally{this.live(s)&&this.closeLiveRepliesVia(t)}}async followStream(t,s){var l;let a=0;for(;this.live(s)&&!_t(tn(this.runStates.get(t)||null));){const u=this.cursors.get(t)||0;this.set({...this.snapshot,connection:a?"reconnecting":"connecting"});try{let d=!1;const f=()=>{!this.live(s)||d||(d=!0,this.set({...this.snapshot,connection:"connected",error:null}))};if(this.dropLiveRepliesVia(t),await this.transport.streamLedger(t,u,g=>{this.live(s)&&(f(),this.ingestItem(t,g))},this.controller.signal,f,g=>{this.live(s)&&(f(),this.ingestDelta(t,g))}),!this.live(s)||(await this.catchUp(t,s),!this.live(s)))return;const h=Re(await this.transport.getRun(t,(l=this.controller)==null?void 0:l.signal));if(!this.live(s))return;h&&this.updateRunState(t,h),a+=1}catch(d){if(!this.live(s))return;if(a+=1,this.fail(d,!1),Xr(d)){this.set({...this.snapshot,connection:"disconnected"});return}}if(a>=5||!this.live(s))break;await this.waitForRetry(Math.min(2e3,150*2**(a-1)))}if(this.live(s)){if(_t(tn(this.runStates.get(t)||null))){this.set({...this.snapshot,connection:"disconnected"});return}this.set({...this.snapshot,connection:"disconnected",error:this.snapshot.error||"Ledger stream reconnect limit reached. Reconnect the workflow to continue."})}}async ingestHistory(t,s,a){const l=Re(t);if(!l)return;const u=Re(l.session),d=Ta(u==null?void 0:u.turns).map(Re).filter(g=>!!g);if(await this.hydrateHistoricalSessionRuns(d,s,a),!this.live(a))return;for(const g of d){const y=Ae(g==null?void 0:g.run_id)||s;this.ingestSessionTurn(g,s,y!==s&&this.historicalRuns.get(y)||null)}const f=`turn:${s}:user`;if(!this.seenMessages.has(f)){const g=Ph(Re(l.input_data));g&&this.addMessage({id:f,role:"user",content:g})}const h=Re(l.ledgers);if(h)for(const[g,y]of Object.entries(h)){const v=Re(y);for(const x of Ta(v==null?void 0:v.items))this.ingestItem(g,x)}}ingestSessionTurn(t,s,a){if(!t)return;const l=Ae(t.run_id)||s,u=Re(t.input_data)||Re(t.input)||{},d=Ae(t.prompt)||Ph(u);d&&this.addMessage({id:`turn:${l}:user`,role:"user",content:d,ts:Ae(t.created_at)||void 0});const f=this.historicalRunFailures.get(l);if(f){const v=Ae(t.answer)||_u(t.output),x=f.missing?"is unavailable because the run no longer exists":"could not be restored",b=v?` Saved reply (not verified as the final result): ${v}`:"";this.addMessage({id:`history:${l}:unavailable`,role:"system",level:"warn",title:"History",content:`The final output for an earlier turn ${x}.${b}`});return}const g=(a&&_t(tn(a))?ki(a.output):"")||(a?Ae(t.answer)||_u(t.output):""),y=this.historicalEvidence.get(l);for(const v of(y==null?void 0:y.tools)||[])this.upsertTool(v);g&&this.addRunAssistantMessage(l,{id:`final:${l}`,role:"assistant",content:g,runId:l,statistics:y==null?void 0:y.statistics,ts:Ae(t.updated_at)||void 0})}async hydrateHistoricalSessionRuns(t,s,a){const l=[...new Set(t.map(h=>Ae(h.run_id)).filter(h=>h&&h!==s&&!this.historicalRuns.has(h)&&!this.historicalRunFailures.has(h)))];if(!l.length||!this.live(a))return;let u=0,d=!1;const f=async()=>{var h,g,y;for(;!d&&this.live(a);){const v=l[u++];if(!v)return;try{const x=Re(await this.transport.getRun(v,(h=this.controller)==null?void 0:h.signal));if(!this.live(a))return;if(x){this.historicalRuns.set(v,x);try{const b=await this.transport.getHistory(v,(g=this.controller)==null?void 0:g.signal);if(!this.live(a))return;this.historicalEvidence.set(v,qo(v_(b)))}catch(b){if(!this.live(a))return;if(Xr(b))throw b;this.fail(new Error(`Earlier turn activity could not be restored: ${b instanceof Error?b.message:String(b)}`),!1)}}else this.historicalRuns.set(v,null),this.historicalRunFailures.set(v,{missing:!1,detail:"gateway returned an invalid historical run snapshot"})}catch(x){if(!this.live(a))return;const b=F_(x)===404;this.historicalRuns.set(v,null),this.historicalRunFailures.set(v,{missing:b,detail:x instanceof Error?x.message:Ae((y=Re(x))==null?void 0:y.detail)||"request failed"}),Xr(x)&&(d=!0,this.fail(x))}}};if(await Promise.all(Array.from({length:Math.min(4,l.length)},()=>f())),d&&this.live(a))for(const h of l)!this.historicalRuns.has(h)&&!this.historicalRunFailures.has(h)&&(this.historicalRuns.set(h,null),this.historicalRunFailures.set(h,{missing:!1,detail:"authorization expired before this historical run could be restored"}))}ingestItem(t,s){const a=Re(s),l=Re(a==null?void 0:a.record)||a;if(!l)return;const u=z_(l,t),d=Number(a==null?void 0:a.cursor),f=Number.isFinite(d)&&d>0?d:(this.cursors.get(u)||0)+1,h=`${u}:${f}`;if(!this.seenRecords.has(h)){if(this.seenRecords.add(h),this.cursors.set(u,Math.max(this.cursors.get(u)||0,f)),this.set({...this.snapshot,records:[...this.snapshot.records,{cursor:f,record:l,runId:u}]}),this.foldRecord(u,l,h),this.snapshot.messages.some(g=>g.id===`final:${this.rootRunId}`)){const g=qo(this.snapshot.records).statistics;this.set({...this.snapshot,messages:this.snapshot.messages.map(y=>y.id===`final:${this.rootRunId}`?{...y,statistics:g}:y)})}for(const g of Fh(l))g!==u&&this.catchUpAndWatch(g,this.generation)}}foldRecord(t,s,a){var y,v,x;const l=xu(s),u=Ae(l.type).toLowerCase(),d=Re(s.result),f=Ae(s.status).toLowerCase(),h=Dh(s);if(this.foldStopEvidence(t,s,u,f),["llm_call","tool_calls"].includes(u)&&["started","running"].includes(f)){const b=Date.parse(h||"");(!Number.isFinite(b)||b>=this.displayStatusAt)&&(Number.isFinite(b)&&(this.displayStatusAt=b),this.snapshot.displayStatus&&this.set({...this.snapshot,displayStatus:""}))}if(u==="answer_user"&&f==="completed"){const b=ki(d)||ki(Re(l.payload));b&&this.addRunAssistantMessage(t,{id:`answer:${t}:${a}`,role:"assistant",content:b,ts:h})}if(u==="emit_event"&&f==="completed"){const b=Re(l.payload)||{},k=Re(d),C=Ae(b.name)||Ae(k==null?void 0:k.name),S=b.payload!==void 0?b.payload:k==null?void 0:k.payload;if(["abstract.message","abstractcode.message"].includes(C)){const A=ki(S);if(A){const $=Ae((y=Re(S))==null?void 0:y.level).toLowerCase(),T=$==="error"?"error":["warn","warning"].includes($)?"warn":"info";this.addMessage({id:`event:${t}:${a}`,role:"system",title:"Workflow",content:A,level:T,ts:h})}}if(["abstract.status","abstractcode.status"].includes(C)){const A=Re(S),$=A?A.status??A.text??A.value:S,T=Date.parse(h||"");!_t(this.snapshot.status)&&typeof $=="string"&&(!Number.isFinite(T)||T>=this.displayStatusAt)&&(Number.isFinite(T)&&(this.displayStatusAt=T),this.set({...this.snapshot,displayStatus:$.trim()}))}if(["abstract.tool_execution","abstractcode.tool_execution","abstract.tool_result","abstractcode.tool_result"].includes(C)){const A=ki(S);A&&this.addMessage({id:`event:${t}:${a}`,role:"system",title:"Tool activity",content:A,ts:h})}}const g=um(s);if(f==="waiting"&&g&&!_t(this.snapshot.status)&&!_t(tn(this.runStates.get(t)||null))&&(this.resolvedWaits.delete(`${t}:${Ae(g.wait_key)}`),this.set({...this.snapshot,interaction:this.interactionWith({runId:t,wait:g,...Ae(s.step_id)?{stepId:Ae(s.step_id)}:{}})})),u==="tool_calls")for(const b of am(this.toolActivities,{runId:t,cursor:this.cursors.get(t)||0,record:s}))this.upsertTool(b);if(u==="resume"&&(d==null?void 0:d.resumed)===!0){const b=Ae((v=Re(l.payload))==null?void 0:v.wait_key);b&&this.resolvedWaits.add(`${t}:${b}`),((x=this.snapshot.interaction)==null?void 0:x.runId)===t&&(this.set({...this.snapshot,interaction:null}),this.refreshRunState(t,this.generation))}}foldStopEvidence(t,s,a,l){let u=!1;if(a==="llm_call"){const d=Ae(s.step_id);if(d){const f=`${t}:${d}`;l==="started"?(this.openLlmSteps.add(f),u=!0):["completed","failed","cancelled","waiting"].includes(l)&&(u=this.openLlmSteps.delete(f)||u),["completed","failed","cancelled"].includes(l)&&this.closeLiveReply(f)}}if(a==="emit_event"&&l==="completed"){const d=Re(xu(s).payload)||{},f=Re(s.result),h=Ae(d.name)||Ae(f==null?void 0:f.name),g=Re(d.payload!==void 0?d.payload:f==null?void 0:f.payload);h==="abstract.status"&&Ae(g==null?void 0:g.killed_by)==="kill_switch"&&(this.forcedStop=g,u=!0)}u&&this.recomputeStop()}recomputeStop(){let t=null;this.forcedStop?t={phase:"forced",label:Ae(this.forcedStop.text)||"Stop forced: inference killed",record:this.forcedStop}:this.stopRequested&&(t=this.snapshot.status==="cancelled"&&this.openLlmSteps.size===0?{phase:"stopped",label:"Stopped"}:{phase:"stopping",label:"Stopping…"});const s=this.snapshot.stop||null;((s==null?void 0:s.phase)!==(t==null?void 0:t.phase)||(s==null?void 0:s.label)!==(t==null?void 0:t.label))&&this.set({...this.snapshot,stop:t}),(t==null?void 0:t.phase)==="stopping"&&this.snapshot.status==="cancelled"&&this.followStop(this.generation)}async followStop(t){var s;if(!this.stopFollowing){this.stopFollowing=!0;try{let a=500,l=null;for(;this.live(t)&&((s=this.snapshot.stop)==null?void 0:s.phase)==="stopping";){if(await this.waitForRetry(a),!this.live(t))return;const u=[this.rootRunId,...[...this.watchedRuns].filter(f=>f!==this.rootRunId)];let d=!1;for(const f of u)try{await this.catchUp(f,t)}catch(h){d=!0,this.live(t)&&(this.fail(h,!1),l=this.snapshot.error)}!d&&l&&this.snapshot.error===l&&(this.set({...this.snapshot,error:null}),l=null),a=Math.min(5e3,a*2)}}finally{this.generation===t&&(this.stopFollowing=!1)}}}addMessage(t){const s=Ae(t.id)||`${t.role}:${t.content}:${t.ts||""}`;this.seenMessages.has(s)||(this.seenMessages.add(s),this.set({...this.snapshot,messages:[...this.snapshot.messages,{...t,id:s}]}))}toolMessage(t){return{id:`tool:${t.id}`,role:"system",kind:"tool_activity",title:"Tool activity",runId:t.runId,toolActivity:t,content:JSON.stringify({tool:t.name,status:t.status,arguments:t.arguments,output:t.output,error:t.error},null,2),ts:t.endedAt||t.startedAt}}upsertTool(t){const s=this.toolMessage(t),a=this.snapshot.messages.findIndex(u=>u.id===s.id);if(a<0){this.addMessage(s);return}const l=[...this.snapshot.messages];l[a]=s,this.set({...this.snapshot,messages:l})}addRunAssistantMessage(t,s){this.closeLiveRepliesOfRun(t);const a=`answer:${t}:`,l=`final:${t}`;this.snapshot.messages.some(u=>u.role==="assistant"&&u.content===s.content&&(u.id===l||String(u.id||"").startsWith(a)))||this.addMessage(s)}ingestDelta(t,s){let a;try{a=cm(s)}catch(h){this.fail(h,!1);return}const l=`${a.run_id}:${a.call_id}`;if(I_(a)){if(a.reason==="unavailable"){this.noteStreamUnavailable(a);return}if(a.reason==="cancelled"&&a.detail==="reinvoked"){this.closeLiveReply(l,"restarted");return}this.closeLiveReply(l,a.reason==="completed"?void 0:a.reason);return}if(this.closedLiveCalls.has(l)||this.runEnded(a.run_id)||this.runEnded(this.rootRunId))return;const u=this.liveReplies.get(l)||{runId:a.run_id,callId:a.call_id,nodeId:a.node_id||"",via:t,text:"",reasoning:"",seq:{content:-1,reasoning:-1}},d=a.channel==="reasoning"?"reasoning":"text",f=u.seq[a.channel];if(a.snapshot){if(a.seq<f)return;u[d]=a.text}else{if(a.seq<=f)return;u[d]+=a.text}u.seq[a.channel]=a.seq,u.via=t,this.liveReplies.set(l,u),this.liveDirty.add(l),this.scheduleLiveRender()}runEnded(t){return _t(tn(this.runStates.get(t)||null))}scheduleLiveRender(){if(this.liveRenderTimer)return;const t=this.lastLiveRender+this.liveRenderIntervalMs-Date.now();if(t<=0){this.renderLiveReplies();return}this.liveRenderTimer=setTimeout(()=>{this.liveRenderTimer=null,this.renderLiveReplies()},t)}renderLiveReplies(){if(this.lastLiveRender=Date.now(),!this.liveDirty.size)return;const t=[...this.snapshot.messages];for(const s of this.liveDirty){const a=this.liveReplies.get(s);if(!a)continue;const l=this.liveMessage(a),u=t.findIndex(d=>d.id===l.id);u<0?t.push(l):t[u]=l,this.shownLiveCalls.add(s)}this.liveDirty.clear(),this.set({...this.snapshot,messages:t})}liveMessage(t){const s=t.runId!==this.rootRunId;return{id:`live:${t.runId}:${t.callId}`,role:"assistant",content:t.text,runId:t.runId,live:{callId:t.callId,reasoning:t.reasoning,...s?{caption:`sub-agent · ${t.nodeId||t.runId}`}:{}}}}closeLiveReply(t,s){this.closedLiveCalls.add(t);const a=this.liveReplies.get(t);if(!a){s==="restarted"&&this.shownLiveCalls.has(t)&&this.addMessage(this.restartNote(t));return}this.liveReplies.delete(t),this.liveDirty.delete(t);const l=`live:${a.runId}:${a.callId}`,u=this.snapshot.messages.findIndex(f=>f.id===l);if(u<0)return;const d=[...this.snapshot.messages];if(s==="restarted"){const f=this.restartNote(t);this.seenMessages.add(String(f.id)),d[u]=f}else if(s){const f=`live-end:${a.runId}:${a.callId}`;this.seenMessages.add(f),d[u]={id:f,role:"system",level:"warn",title:"Reply",runId:a.runId,content:s==="failed"?"The reply stopped because the model call failed.":"The reply stopped because the model call was cancelled."}}else d.splice(u,1);this.set({...this.snapshot,messages:d})}restartNote(t){const s=t.slice(0,t.indexOf(":"));return{id:`live-end:${t}`,role:"system",level:"info",title:"Reply",runId:s,content:"Reply restarted: the model call was interrupted and is running again."}}noteStreamUnavailable(t){const s=`${t.run_id}:${t.call_id}`;this.closeLiveReply(s),this.addMessage({id:`stream-unavailable:${t.run_id}:${t.detail||"unknown"}`,role:"system",level:"info",title:"Reply",runId:t.run_id,content:O_(t.detail)})}closeLiveRepliesOfRun(t){for(const s of[...this.liveReplies.values()])s.runId===t&&this.closeLiveReply(`${s.runId}:${s.callId}`)}closeLiveRepliesVia(t,s){for(const a of[...this.liveReplies.values()])(a.via===t||a.runId===t)&&this.closeLiveReply(`${a.runId}:${a.callId}`,s)}endLiveRepliesOfRun(t,s){const a=s==="failed"||s==="cancelled"?s:void 0;if(t===this.rootRunId){for(const l of[...this.liveReplies.values()])this.closeLiveReply(`${l.runId}:${l.callId}`,a);this.closedLiveCalls.clear(),this.shownLiveCalls.clear();return}this.closeLiveRepliesVia(t,a);for(const l of[...this.closedLiveCalls])l.startsWith(`${t}:`)&&this.closedLiveCalls.delete(l);for(const l of[...this.shownLiveCalls])l.startsWith(`${t}:`)&&this.shownLiveCalls.delete(l)}dropLiveRepliesVia(t){const s=new Set;for(const[a,l]of this.liveReplies)l.via===t&&(this.liveReplies.delete(a),this.liveDirty.delete(a),s.add(`live:${l.runId}:${l.callId}`));s.size&&this.set({...this.snapshot,messages:this.snapshot.messages.filter(a=>!s.has(String(a.id)))})}fail(t,s=!0){var a,l,u;Xr(t)&&(this.approvalEpoch+=1,this.toolApprovalStopped=!0,this.toolApprovalSuspended=!0,(l=(a=this.options).onAuthError)==null||l.call(a,t)),this.set({...this.snapshot,error:t instanceof Error?t.message:Ae((u=Re(t))==null?void 0:u.detail)||String(t),...Xr(t)?{autoApproveTools:!1}:{},...s?{connection:"disconnected"}:{}})}newCommandId(){const t=globalThis.crypto;if(t&&typeof t.randomUUID=="function")return t.randomUUID();if(t&&typeof t.getRandomValues=="function"){const s=t.getRandomValues(new Uint8Array(16));s[6]=s[6]&15|64,s[8]=s[8]&63|128;const a=Array.from(s,l=>l.toString(16).padStart(2,"0")).join("");return`${a.slice(0,8)}-${a.slice(8,12)}-${a.slice(12,16)}-${a.slice(16,20)}-${a.slice(20)}`}return`workflow-${Date.now()}-${Math.random().toString(36).slice(2)}`}updateRunState(t,s){var u;if(this.runStates.set(t,s),_t(tn(s))&&this.endLiveRepliesOfRun(t,tn(s)),t!==this.rootRunId){_t(tn(s))&&((u=this.snapshot.interaction)==null?void 0:u.runId)===t?this.set({...this.snapshot,interaction:null}):this.adoptDurableWait(t,s);return}const a=tn(s),l=_t(a);if(l){const d=ki(s.output);d&&this.upsertFinal(t,d,Dh(s))}this.set({...this.snapshot,run:s,status:a,...l?{interaction:null,autoApproveTools:!1,displayStatus:""}:{}}),l||this.adoptDurableWait(t,s),(this.stopRequested||this.forcedStop)&&this.recomputeStop()}upsertFinal(t,s,a){this.closeLiveRepliesOfRun(t);const l=`final:${t}`;this.seenMessages.add(l);const u={id:l,role:"assistant",content:s,ts:a,runId:t,statistics:qo(this.snapshot.records).statistics},d=this.snapshot.messages.findIndex(h=>h.id===l||String(h.id||"").startsWith(`answer:${t}:`)&&h.content===s);if(d<0){this.set({...this.snapshot,messages:[...this.snapshot.messages,u]});return}const f=[...this.snapshot.messages];f[d]=u,this.set({...this.snapshot,messages:f})}async refreshRunState(t,s){var a;try{const l=Re(await this.transport.getRun(t,(a=this.controller)==null?void 0:a.signal));l&&this.live(s)&&this.updateRunState(t,l)}catch(l){this.live(s)&&this.fail(l,!1)}}async pollRootLifecycle(t,s){var a;for(;this.live(s)&&this.rootRunId===t&&!_t(tn(this.runStates.get(t)||null));){if(await this.waitForRetry(2e3),!this.live(s)||this.rootRunId!==t||_t(tn(this.runStates.get(t)||null)))return;try{const l=Re(await this.transport.getRun(t,(a=this.controller)==null?void 0:a.signal));l&&this.live(s)&&this.rootRunId===t&&this.updateRunState(t,l)}catch(l){if(!this.live(s))return;if(Xr(l)){this.fail(l);return}this.fail(l,!1)}}}waitForRetry(t){var l;const s=(l=this.controller)==null?void 0:l.signal;if(!s||s.aborted)return Promise.resolve();const a=s;return new Promise(u=>{const d=setTimeout(h,t),f=()=>{clearTimeout(d),h()};function h(){a.removeEventListener("abort",f),u()}a.addEventListener("abort",f,{once:!0})})}}function U_(e){const t=w.useMemo(()=>new W_(e.transport,{onAuthError:e.onAuthError,clientId:e.clientId,...e.liveRenderIntervalMs!==void 0?{liveRenderIntervalMs:e.liveRenderIntervalMs}:{}}),[e.transport,e.onAuthError,e.clientId,e.authScopeKey,e.liveRenderIntervalMs]),s=w.useSyncExternalStore(l=>t.subscribe(l),()=>t.getSnapshot(),()=>t.getSnapshot()),a=String(e.runId||"").trim();return w.useEffect(()=>{t.setToolApprovalPolicy(e.enabled===!1?{enabledTools:[],autoApproveTools:[]}:e.toolApprovalPolicy??null)},[t,e.toolApprovalPolicy,e.enabled]),w.useEffect(()=>{if(e.enabled===!1||!a){t.reset();return}return t.load(a),()=>t.reset()},[t,a,e.enabled]),{controller:t,snapshot:s}}function Ts(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:null}function Dt(e){return typeof e=="string"?e.trim():e==null?"":typeof e=="number"||typeof e=="boolean"?String(e):""}function zh(e){return["session","workflow","run","global"].includes(e)?e:null}function Zr(e){return{scope:Dt(e==null?void 0:e.scope).toLowerCase(),name:Dt(e==null?void 0:e.name)||Dt(e==null?void 0:e.event_name),scopeId:Dt(e==null?void 0:e.scope_id)||Dt(e==null?void 0:e.scopeId),sessionId:Dt(e==null?void 0:e.session_id)||Dt(e==null?void 0:e.sessionId),workflowId:Dt(e==null?void 0:e.workflow_id)||Dt(e==null?void 0:e.workflowId),runId:Dt(e==null?void 0:e.run_id)||Dt(e==null?void 0:e.runId)}}function B_(e,t){const s=e.wait,a=Dt(s.wait_key),l=[Zr(s),Zr(Ts(s.details))];for(const u of t){if(u.runId!==e.runId)continue;const d=u.record,f=Ts(d.result),h=Ts(f==null?void 0:f.wait),g=Ts(d.effect),y=Ts(g==null?void 0:g.payload);Dt(h==null?void 0:h.wait_key)!==a&&Dt(y==null?void 0:y.wait_key)!==a||l.push(Zr(d),Zr(y),Zr(Ts(y==null?void 0:y.details)),Zr(h),Zr(Ts(h==null?void 0:h.details)))}return l}function qc(e,t){return t.scopeId?t.scopeId:e==="session"?t.sessionId:e==="workflow"?t.workflowId:e==="run"?t.runId:"global"}function dm(e,t,s){return{scope:e,scopeId:t,name:s,...e==="session"?{sessionId:t}:{},...e==="workflow"?{workflowId:t}:{},...e==="run"?{runId:t}:{}}}function V_(e,t,s){if(!s)return null;const a=`evt:${t}:${s}:`;if(!e.startsWith(a))return null;const l=e.slice(a.length);return l?dm(t,s,l):null}function G_(e,t=[],s){if(!e)return{target:null,error:"No event wait is available."};const a=Dt(e.wait.wait_key),l=/^evt:(session|workflow|run|global):/.exec(a);if(!l)return{target:null,error:"The gateway did not provide a canonical event wait key."};const u=zh(l[1]);if(!u)return{target:null,error:"The event wait uses an unsupported scope."};const d=B_(e,Array.isArray(t)?t:[]),f=new Map;for(const x of d){const b=zh(x.scope);if(!b||!x.name)continue;if(b!==u)return{target:null,error:"Event metadata conflicts with the canonical wait scope."};const k=`evt:${b}:`,C=`:${x.name}`;if(!a.startsWith(k)||!a.endsWith(C)||a.length<=k.length+C.length)return{target:null,error:"Event metadata does not exactly match the canonical wait key."};const S=a.slice(k.length,-C.length),A=qc(b,x);if(A&&A!==S)return{target:null,error:"Event metadata conflicts with the canonical wait target."};const $=dm(b,S,x.name);f.set(`${$.scope}\0${$.scopeId}\0${$.name}`,$)}if(f.size>1)return{target:null,error:"Multiple event targets match this wait; routing is unavailable."};if(f.size===1)return{target:[...f.values()][0]};const h=new Set;u==="run"&&h.add(e.runId),u==="global"&&h.add("global");for(const x of d){const b=qc(u,x);b&&h.add(b)}if(Dt(s==null?void 0:s.run_id)===e.runId){const x=Zr(s||null),b=qc(u,x);b&&h.add(b)}const y=[...h].map(x=>V_(a,u,x)).filter(x=>!!x),v=new Map(y.map(x=>[`${x.scope}\0${x.scopeId}\0${x.name}`,x]));return v.size===1?{target:[...v.values()][0]}:v.size>1?{target:null,error:"The event key is ambiguous for the available scope metadata."}:{target:null,error:"The gateway did not provide enough canonical event routing metadata."}}const Ou=e=>Se(`runs/${encodeURIComponent(e)}/workspace`);function H_(e){return Ou(e)}function K_(e,t){return`${Ou(e)}/files?${new URLSearchParams({path:t,recursive:"false"})}`}function Ma(e,t){return`${Ou(e)}/content?${new URLSearchParams({path:t})}`}async function cl(e,t){let s="";try{const a=await e.text();try{const l=JSON.parse(a),u=(l==null?void 0:l.detail)??(l==null?void 0:l.error)??(l==null?void 0:l.message);s=typeof u=="string"?u:u&&typeof u.message=="string"?u.message:a}catch{s=a}}catch{s=""}return new Error(`${t} (HTTP ${e.status}): ${s.trim()||e.statusText||"no reason given"}`)}function J_(e,t){const s=e&&typeof e=="object"&&!Array.isArray(e)?e:null,a=d=>{throw new Error(`Unexpected /workspace/files response from the gateway: ${d}.`)};if(!s)return a("not an object");Array.isArray(s.entries)||a("no `entries` list"),typeof s.truncated!="boolean"&&a("no `truncated` flag");const l=s.entries.map((d,f)=>{const h=d&&typeof d=="object"?d:{};return(typeof h.name!="string"||typeof h.path!="string"||h.type!=="file"&&h.type!=="dir")&&a(`entry ${f+1} lacks a name, path or file/dir type`),h}),u=s.hidden&&typeof s.hidden=="object"&&!Array.isArray(s.hidden)?s.hidden:void 0;return{path:typeof s.path=="string"?s.path:t,entries:l,truncated:s.truncated,...u?{hidden:u}:{}}}async function Q_(e,t,s){const a=await e(H_(t),{signal:s});if(!a.ok)throw await cl(a,"The workspace is not available");const l=await a.json();if(!l||typeof l.workspace_root!="string"||typeof l.exists!="boolean")throw new Error("Unexpected /workspace response from the gateway: no `workspace_root` / `exists`.");return l}async function Y_(e,t,s,a){const l=await e(K_(t,s),{signal:a});if(!l.ok)throw await cl(l,"The folder could not be listed");return J_(await l.json(),s)}async function X_(e,t,s,a){const l=await e(Ma(t,s),{signal:a});if(!l.ok)throw await cl(l,"The file could not be read");return await l.blob()}async function Z_(e,t,s,a){const l=await Q_(e,t,a);return{where:l,listing:l.exists?await Y_(e,t,s,a):null}}function q_(e){const t=String(e||"").split("/").filter(Boolean),s=[{label:"Workspace",path:""}];return t.forEach((a,l)=>s.push({label:a,path:t.slice(0,l+1).join("/")})),s}function fm(e){if(typeof e!="number"||!Number.isFinite(e)||e<0)return"";if(e<1024)return`${e} B`;const t=["KiB","MiB","GiB","TiB"];let s=e/1024,a=0;for(;s>=1024&&a<t.length-1;)s/=1024,a+=1;return`${s<10?s.toFixed(1):Math.round(s)} ${t[a]}`}function ex(e){return[...e].sort((t,s)=>t.type===s.type?t.name.localeCompare(s.name):t.type==="dir"?-1:1)}function tx(e){const t=e.hidden||{},s=Number(t.blocked||0)+Number(t.outside_links||0)+Number(t.other||0),a=[];return s>0&&a.push(`${s} ${s===1?"entry":"entries"} hidden by the gateway's workspace rules`),e.truncated&&a.push("the list is truncated"),a.join("; ")}const nx=new Set(["image/png","image/jpeg","image/gif","image/webp","image/avif","image/bmp","application/pdf","text/plain","application/json"]);function rx(e){const t=String(e||"").split(";",1)[0].trim().toLowerCase();return nx.has(t)?{mode:"open",type:t}:t.startsWith("text/")||t.endsWith("+xml")||t.endsWith("+json")||t.endsWith("/xml")||t.endsWith("/javascript")||t.endsWith("/x-yaml")||t.endsWith("/toml")?{mode:"open",type:"text/plain;charset=utf-8"}:{mode:"download"}}function hm(e,t,s){const a=s==="open"?rx(e.type):{mode:"download"},l=a.mode==="open"&&a.type!==e.type?new Blob([e],{type:a.type}):e,u=URL.createObjectURL(l);if(a.mode==="open")window.open(u,"_blank","noopener");else{const d=document.createElement("a");d.href=u,d.download=t,document.body.appendChild(d),d.click(),d.remove()}window.setTimeout(()=>URL.revokeObjectURL(u),6e4)}async function sx(e,t,s){const a=await e($y(t),{signal:s.signal});if(!a.ok)throw await cl(a,`${s.name} could not be read`);hm(await a.blob(),s.name,s.mode??"open")}function pm(e){const{fetchGateway:t,runId:s}=e,[a,l]=w.useState({runId:s,path:""}),u=a.runId===s?a.path:"",[d,f]=w.useState(null),[h,g]=w.useState(""),[y,v]=w.useState(!!s),[x,b]=w.useState(""),[k,C]=w.useState(0);w.useEffect(()=>{if(!s)return;const $=new AbortController;return v(!0),g(""),(async()=>{try{const T=await Z_(t,s,u,$.signal);$.signal.aborted||f({runId:s,...T})}catch(T){$.signal.aborted||g(String((T==null?void 0:T.message)||T))}finally{$.signal.aborted||v(!1)}})(),()=>$.abort()},[t,s,u,k,e.refreshKey]);const S=d&&d.runId===s?d:null,A=w.useCallback(async($,T)=>{b($.path),g("");try{hm(await X_(t,s,$.path),$.name,T)}catch(j){g(String((j==null?void 0:j.message)||j))}finally{b("")}},[t,s]);return i.jsx(ix,{title:e.title,note:e.note,where:(S==null?void 0:S.where)??null,path:u,listing:(S==null?void 0:S.listing)??null,error:h,loading:y,fileBusy:x,selectedPath:e.selectedPath,className:e.className,onNavigate:$=>l({runId:s,path:$}),onRefresh:()=>C($=>$+1),onFile:e.onSelectFile?void 0:($,T)=>void A($,T),onSelectFile:e.onSelectFile,onClose:e.onClose})}function ix(e){var a,l,u,d;const t=e.listing?tx(e.listing):"",s=(l=(a=e.where)==null?void 0:a.host)==null?void 0:l.hostname;return i.jsxs("section",{className:`pc-ws${e.className?` ${e.className}`:""}`,"aria-label":e.title,"data-workspace-root":((u=e.where)==null?void 0:u.workspace_root)||void 0,children:[i.jsxs("header",{className:"pc-ws__head",children:[i.jsxs("span",{className:"pc-ws__title",children:[i.jsx(ie,{name:"folder",size:15})," ",e.title]}),i.jsx("span",{className:"pc-ws__spacer"}),i.jsx("button",{type:"button",className:"pc-ws__icon-btn","data-action":"refresh-folder",onClick:e.onRefresh,disabled:e.loading,title:"Refresh","aria-label":"Refresh the folder",children:i.jsx(ie,{name:"refresh",size:14})}),e.onClose?i.jsx("button",{type:"button",className:"pc-ws__icon-btn","data-action":"close-folder",onClick:e.onClose,title:"Close","aria-label":"Close the file browser",children:i.jsx(ie,{name:"x",size:14})}):null]}),e.where?i.jsxs("div",{className:"pc-ws__root",children:[i.jsx("code",{children:e.where.workspace_root}),s&&((d=e.where.host)==null?void 0:d.caller_is_this_machine)!==!0?i.jsxs("span",{className:"pc-ws__muted",children:[" on the gateway host ",s]}):null]}):null,e.note?i.jsx("div",{className:"pc-ws__muted",children:e.note}):null,i.jsx("nav",{className:"pc-ws__crumbs","aria-label":"Folder",children:q_(e.path).map((f,h,g)=>h===g.length-1?i.jsx("span",{"aria-current":"page",children:f.label},f.path):i.jsxs(ft.Fragment,{children:[i.jsx("button",{type:"button",className:"pc-ws__crumb",onClick:()=>e.onNavigate(f.path),children:f.label}),i.jsx("span",{className:"pc-ws__muted",children:" / "})]},f.path))}),e.error?i.jsx("div",{className:"pc-ws__error",role:"alert",children:e.error}):null,e.loading&&!e.listing?i.jsx("div",{className:"pc-ws__muted",role:"status",children:"Loading…"}):null,e.where&&!e.where.exists?i.jsx("div",{className:"pc-ws__muted",children:"The folder does not exist yet: nothing has been written."}):null,e.listing?e.listing.entries.length?i.jsx("ul",{className:"pc-ws__entries",children:ex(e.listing.entries).map(f=>i.jsx("li",{className:`pc-ws__entry${e.selectedPath===f.path?" is-selected":""}`,"data-type":f.type,"data-path":f.path,children:f.type==="dir"?i.jsxs("button",{type:"button",className:"pc-ws__name","data-action":"open-dir",onClick:()=>e.onNavigate(f.path),children:[i.jsx(ie,{name:"folder",size:14})," ",f.name,"/"]}):i.jsxs(i.Fragment,{children:[e.onSelectFile?i.jsxs("button",{type:"button",className:"pc-ws__name","data-action":"select-file","aria-pressed":e.selectedPath===f.path,onClick:()=>{var h;return(h=e.onSelectFile)==null?void 0:h.call(e,f)},children:[i.jsx(ie,{name:"file",size:14})," ",f.name]}):i.jsxs("span",{className:"pc-ws__name",children:[i.jsx(ie,{name:"file",size:14})," ",f.name]}),i.jsx("span",{className:"pc-ws__size",children:fm(f.size_bytes)}),e.onFile?i.jsxs(i.Fragment,{children:[i.jsx("button",{type:"button",className:"pc-ws__btn","data-action":"open-file",disabled:e.fileBusy===f.path,onClick:()=>{var h;return(h=e.onFile)==null?void 0:h.call(e,f,"open")},children:"Open"}),i.jsx("button",{type:"button",className:"pc-ws__icon-btn","data-action":"download-file",disabled:e.fileBusy===f.path,onClick:()=>{var h;return(h=e.onFile)==null?void 0:h.call(e,f,"download")},title:`Download ${f.name}`,"aria-label":`Download ${f.name}`,children:i.jsx(ie,{name:"download",size:14})})]}):null]})},f.path))}):i.jsx("div",{className:"pc-ws__muted",children:"This folder is empty."}):null,t?i.jsx("div",{className:"pc-ws__muted","data-hidden-note":"true",children:t}):null]})}function ax(e){return i.jsx(Zp,{text:e,images:"link"})}const ox={trigger:"Trigger",answer:"Automation"};function lx(e){return i.jsx(im,{message:{id:`${e.runId}:${e.kind}`,role:e.role,content:e.text,title:ox[e.kind],runId:e.runId},images:"link"})}const cx={renderText:ax,renderTurn:lx};function ux(e){const{fetchGateway:t,...s}=e,a=s.onOpenResource??(t?l=>sx(t,l.url,{name:l.name}):void 0);return i.jsx(yv,{...s,onOpenResource:a,...cx})}function dx(e,t,s={}){if(!e)return null;const a=e.wait,l=`${e.runId}:${a.wait_key}:${e.stepId||""}`,u=a.details||{};if(u.mode==="approval_required"||u.kind==="tool_approval"){const f=Array.isArray(u.tool_calls)?u.tool_calls:[],h={runId:e.runId,waitKey:String(a.wait_key||""),stepId:e.stepId},g=[...new Set(f.map(v=>String((v==null?void 0:v.name)||"tool")))],y=s.onPermissionsAll;return{id:l,kind:"tool-approval",title:`${f.length||"Requested"} ${f.length===1?"action needs":"actions need"} permission`,toolName:g.join(", ")||"the requested tools",description:"Review the targets below. Allow once approves this batch only.",detail:i.jsxs("div",{className:"pc-approval-summary",children:[i.jsx(nm,{tools:f.map((v,x)=>({id:String((v==null?void 0:v.call_id)||(v==null?void 0:v.id)||x),runId:e.runId,name:(v==null?void 0:v.name)||"Tool",arguments:v==null?void 0:v.arguments,status:"waiting"}))}),i.jsxs("details",{children:[i.jsx("summary",{children:"Review full tool arguments (JSON)"}),i.jsx(Is,{value:f.length?f:u})]})]}),approveLabel:"Allow once",denyLabel:"Deny",approveAllLabel:y?"Allow all enabled tools":void 0,approveAllDescription:y?"Sets permissions: all for this Gateway account, including future turns. Unchecked tools stay unavailable; explicit Ask overrides and Gateway restrictions remain enforced. Questions still need your answer.":void 0,onApproveAll:y?async()=>{await t.approveWithPolicyChange(h,()=>{y()})}:void 0,onApprove:async()=>{await t.approve(!0,h)},onDeny:async()=>{await t.approve(!1,h)}}}if(a.reason==="user"||a.reason==="ask_user")return{id:l,kind:"ask-user",title:"A question for you",prompt:String(a.prompt||u.prompt||"How would you like to continue?"),allowFreeText:a.allow_free_text!==!1,choices:(Array.isArray(a.choices)?a.choices:[]).map(f=>typeof f=="object"&&f!==null?{id:String(f.value??f.id??f.label),label:String(f.label??f.text??f.value??f.id),description:f.description}:{id:String(f),label:String(f)}),onSubmit:async f=>{await t.resume(f)}};const d=String(a.wait_key||"");if(a.reason==="event"||d.startsWith("evt:")){const f=G_(e,s.records||[],s.currentRun??null),h=f.target,g=(h==null?void 0:h.name)||"";return{id:l,kind:"event-wait",title:h?"Waiting for an event":"Event routing unavailable",eventName:g,prompt:String(a.prompt||`This workflow will continue when “${g||"its trigger"}” arrives.`),description:h?"You can also send the expected event here.":`This event cannot be sent safely. ${f.error}`,initialPayload:"{}",payloadLabel:"Event data (JSON)",sendLabel:"Send event",onSend:async y=>{if(!h)throw new Error(f.error);const v=JSON.parse(y||"{}"),x={name:h.name,scope:h.scope,payload:v};h.scope==="session"?x.session_id=h.scopeId:h.scope==="workflow"?x.workflow_id=h.scopeId:h.scope==="run"&&(x.run_id=h.scopeId),await t.emitEvent(x)}}}return null}const fx="abstractcode.agent.v1";function Du(e){return!!(e!=null&&e.interfaces.some(t=>[fx,"abstractassistant.agent.v1"].includes(t)))}function tt(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)?e:void 0}function sl(e){return Array.isArray(e)?e:[]}function Ne(e){return typeof e!="string"?void 0:e.trim()||void 0}function mm(e){return sl(e).flatMap(t=>{const s=Ne(t);return s?[s]:[]})}function La(e,t=0){if(typeof e!="number"||!Number.isFinite(e))return;const s=Math.trunc(e);return s>=t?s:void 0}function Fu(e,t){if(Array.isArray(e))return e;const s=tt(e);if(!s)return[];for(const a of t)if(Array.isArray(s[a]))return s[a];return[]}function gm(e){const t=tt(e);return t?{...t}:void 0}function Wh(e){const t=gm(e.input_schema??e.inputSchema??e.inputs_schema);if(t)return t;const s=tt(e.inputs);if(s&&("properties"in s||"type"in s||"$schema"in s))return{...s}}function hx(e){const t=Ne(e.bundle_version??e.bundleVersion??e.version);if(t)return t;const s=Ne(e.bundle_ref??e.bundleRef);if(!s)return;const a=s.lastIndexOf("@");return a>0&&a<s.length-1?s.slice(a+1):void 0}function px(e,t,s){return e?`${e}${t?`@${t}`:""}:${s}`:s}function Uh(e,t,s){var f;const a=tt(e),l=Ne((a==null?void 0:a.default_bundle_id)??(a==null?void 0:a.defaultBundleId)),u=Fu(e,["items","bundles"]),d=[];for(const h of u){const g=tt(h);if(!g)continue;const y=tt(g.actions);if((y==null?void 0:y.can_run)===!1)continue;const v=(f=Ne(g.status))==null?void 0:f.toLowerCase();if(g.is_draft===!0||g.is_published===!1||g.version_channel==="draft"||v&&!["published","deprecated"].includes(v)||!s.includeDeprecated&&(v==="deprecated"||v==="deleted"||v==="disabled"))continue;const x=Ne(g.bundle_id??g.bundleId??g.id),b=hx(g);if(b&&/(?:^|[.\-])draft(?:[.\-]|$)/i.test(b))continue;const k=Ne(g.default_entrypoint??g.defaultEntrypoint),C=t==="private"&&(g.is_default===!0||g.isDefault===!0||!!x&&x===l);for(const S of sl(g.entrypoints)){const A=tt(S);if(!A||!s.includeDeprecated&&(A.deprecated===!0||A.enabled===!1))continue;const $=Ne(A.flow_id??A.flowId??A.id);if(!$)continue;const T=mm(A.interfaces??A.interface_ids??A.interfaceIds);if(s.interfaceId&&!T.includes(s.interfaceId))continue;const j=Ne(A.workflow_id??A.workflowId)??px(x,b,$),L=k?k===$:sl(g.entrypoints).length===1;d.push({id:`${t}:${j}`,workflowId:j,...x?{bundleId:x}:{},...b?{bundleVersion:b}:{},flowId:$,name:Ne(A.name??A.title)??$,description:Ne(A.description)??"",interfaces:T,...Wh(A)?{inputSchema:Wh(A)}:{},registryScope:t,isPreferredVersion:t==="tenant_catalog"?g.is_default===!0||g.default_version===b:g.latest_published_version===b,...C&&L?{isDefault:!0}:{}})}}return d}function mx(e){var a;const t=new Map;for(const l of e){const u=l.bundleId||l.id;t.set(u,[...t.get(u)||[],l])}const s=[];for(const l of t.values()){const u=l.filter(g=>g.registryScope==="tenant_catalog"),d=u.length?u:l,f=[...d].sort((g,y)=>+!!y.isPreferredVersion-+!!g.isPreferredVersion||(y.bundleVersion||"").localeCompare(g.bundleVersion||"",void 0,{numeric:!0}))[0],h=(a=l.find(g=>g.isDefault))==null?void 0:a.flowId;for(const g of d.filter(y=>y.bundleVersion===f.bundleVersion))s.push({...g,isDefault:g.flowId===h})}return s.sort((l,u)=>+!!u.isDefault-+!!l.isDefault||l.name.localeCompare(u.name)||l.id.localeCompare(u.id))}function gx(e,t){return t.some(s=>s.id!==e.id&&s.name===e.name)?`${e.name} · ${e.bundleId||e.flowId}`:e.name}function Bh(e,t,s={}){const a=[...Uh(e,"private",s),...Uh(t,"tenant_catalog",s)],l=new Map;for(const u of a)l.set(u.id,u);return[...l.values()].sort((u,d)=>+!!d.isDefault-+!!u.isDefault||u.name.localeCompare(d.name)||u.id.localeCompare(d.id))}function yx(e){const t=tt(e);if(!t)return;const s=tt(t.workflow_selection??t.workflowSelection);if(s)return s;const a=tt(t._runtime),l=tt((a==null?void 0:a.workflow_policy)??(a==null?void 0:a.workflowPolicy));if(l)return l;const u=tt(t.input_data??t.inputData),d=tt(u==null?void 0:u._runtime);return tt((d==null?void 0:d.workflow_policy)??(d==null?void 0:d.workflowPolicy))}function wx(e,t){const s=yx(t.inputData);if(s){const u=Ne(s.registry_scope??s.registryScope),d=Ne(s.bundle_id??s.bundleId),f=Ne(s.bundle_version??s.bundleVersion),h=Ne(s.flow_id??s.flowId);if((u==="private"||u==="tenant_catalog")&&d&&h){const g=e.filter(y=>(y.registryScope??"private")===u&&y.bundleId===d&&y.flowId===h&&(!f||y.bundleVersion===f));if(g.length===1)return g[0]}return}const a=Ne(t.runWorkflowId);if(!a)return;const l=e.filter(u=>(u.registryScope??"private")==="private"&&u.workflowId===a);return l.length===1?l[0]:void 0}function vx(e){const t=tt(e)??{},s=tt(t.policy)??t,l=sl(s.mounts??s.workspace_mounts).flatMap((d,f)=>{const h=tt(d);if(!h)return[];const g=Ne(h.path??h.root),y=Ne(h.id??h.name)??g??`mount-${f+1}`;return[{id:y,label:Ne(h.label??h.name)??y,...g?{path:g}:{},readOnly:h.read_only===!0||h.readOnly===!0||h.writable===!1,raw:{...h}}]}),u=La(s.max_attachment_bytes??s.maxAttachmentBytes,1);return{raw:{...s},clientWorkspaceScopeOverrides:s.client_workspace_scope_overrides===!0||s.clientWorkspaceScopeOverrides===!0,allowedAccessModes:mm(s.allowed_access_modes??s.allowedAccessModes),mounts:l,...u!==void 0?{maxAttachmentBytes:u}:{}}}function _x(e){const t=Fu(e,["items","tools"]),s=new Set,a=[];for(const l of t){const u=tt(l);if(!u)continue;const d=Ne(u.name??u.tool_name??u.id);if(!d||s.has(d))continue;s.add(d);const f=u.enabled!==!1&&u.served_disabled!==!0&&u.servedDisabled!==!0,h=La(u.risk_rank??u.riskRank),g=gm(u.input_schema??u.inputSchema??u.parameters);a.push({name:d,description:Ne(u.description)??"",...Ne(u.toolset)?{toolset:Ne(u.toolset)}:{},...Ne(u.tier)?{tier:Ne(u.tier)}:{},...Ne(u.approval_default??u.default_approval??u.approvalDefault??u.defaultApproval??u.approval)?{approval:Ne(u.approval_default??u.default_approval??u.approvalDefault??u.defaultApproval??u.approval)}:{},...h!==void 0?{riskRank:h}:{},enabled:f,servedDisabled:!f,...Ne(u.enable_gate??u.enableGate)?{enableGate:Ne(u.enable_gate??u.enableGate)}:{},...Ne(u.why_disabled??u.whyDisabled)?{whyDisabled:Ne(u.why_disabled??u.whyDisabled)}:{},...g?{inputSchema:g}:{},raw:{...u}})}return a.sort((l,u)=>l.name.localeCompare(u.name))}function xx(e){var a;const t=(a=Ne(e.status??e.state))==null?void 0:a.toLowerCase();return Ne(e.wait_reason??e.waitReason)||e.waiting===!0||t==="waiting"||t==="paused"?"waiting":t==="running"||t==="queued"||t==="pending"||t==="created"?"running":t==="failed"||t==="error"||t==="cancelled"||t==="canceled"?"failed":t==="completed"||t==="complete"||t==="done"?"done":"unknown"}const Vh={waiting:4,running:3,failed:2,done:1,unknown:0};function ji(e){return Ne(e.updated_at??e.updatedAt??e.finished_at??e.finishedAt??e.created_at??e.createdAt)}function Si(e){if(!e)return Number.NEGATIVE_INFINITY;const t=Date.parse(e);return Number.isFinite(t)?t:Number.NEGATIVE_INFINITY}function Gh(e){var d;const t=Ne(e);if(t)return t;const s=tt(e);if(!s)return;const a=Ne(s.prompt);if(a)return a;const l=tt(s.input_data??s.inputData),u=["prompt","request","task","message","query","input"].map(f=>Ne(l==null?void 0:l[f])).find(Boolean);return u||Ne((d=tt(l==null?void 0:l.context))==null?void 0:d.task)}function ym(e,t={}){const s=tt(e),a=(s==null?void 0:s.has_more)===!0||(s==null?void 0:s.hasMore)===!0,l=Fu(e,["items","runs"]),u=new Map;l.forEach((f,h)=>{const g=tt(f);if(!g||Ne(g.parent_run_id??g.parentRunId))return;const y=Ne(g.session_id??g.sessionId),v=Ne(g.run_id??g.runId??g.id);if(!y||!v)return;const x=u.get(y)??[];x.push({run:g,index:h}),u.set(y,x)});const d=[];for(const[f,h]of u){const g=[...h].sort((k,C)=>Si(ji(C.run))-Si(ji(k.run))||k.index-C.index),y=[...h].sort((k,C)=>{const S=Ne(k.run.created_at??k.run.createdAt)??ji(k.run),A=Ne(C.run.created_at??C.run.createdAt)??ji(C.run);return Si(S)-Si(A)||k.index-C.index}),v=g.flatMap(({run:k})=>{const C=Ne(k.run_id??k.runId??k.id);return C?[C]:[]});if(!v.length)continue;let x="unknown";for(const{run:k}of h){const C=xx(k);Vh[C]>Vh[x]&&(x=C)}let b;for(const{run:k}of y){const C=Ne(k.run_id??k.runId??k.id);if(b=(C?Gh(t[C]):void 0)??Gh(k),b)break}d.push({sessionId:f,state:x,...ji(g[0].run)?{updatedAt:ji(g[0].run)}:{},firstRunId:Ne(y[0].run.run_id??y[0].run.runId??y[0].run.id),latestRunId:v[0],runIds:v,turnCount:h.length,...b?{prompt:b}:{},truncated:a})}return d.sort((f,h)=>Si(h.updatedAt)-Si(f.updatedAt)||f.sessionId.localeCompare(h.sessionId))}function il(e){return e?{...e}:{}}function Ni(e){if(e!==void 0)return e.flatMap(t=>{const s=Ne(t);return s?[s]:[]})}function bx(e,t,s){var A,$,T,j,L,z,V,P,ce;const a=(re,H)=>{var W,J;!Du(t.workflow)&&!((J=tt((W=t.inputSchema)==null?void 0:W.properties))!=null&&J[re])||H!==void 0&&s&&(e[re]=H)},l=Ne((A=t.model)==null?void 0:A.provider),u=Ne(($=t.model)==null?void 0:$.model);if(!!l!=!!u)throw new Error("Choose both a provider and a model, or use the workflow / Gateway defaults.");a("provider",l),a("model",u),t.tools!==void 0&&a("tools",Ni(t.tools)??[]);const d=Ni(t.skills);d!=null&&d.length&&(e.skills=d);const f=Ne((T=t.workspace)==null?void 0:T.root),h=Ne((j=t.workspace)==null?void 0:j.accessMode),g=Ni((L=t.workspace)==null?void 0:L.allowedPaths);f!==void 0&&(e.workspace_root=f),h!==void 0&&(e.workspace_access_mode=h),g!=null&&g.length&&(e.workspace_allowed_paths=g),a("system",Ne(t.system));const y=il(tt(e._runtime)),v=(re,H)=>{H!==void 0&&s&&(y[re]=H)};if(v("provider",l),v("model",u),v("thinking",Ne(t.reasoning)),v("speculation",t.speculation),t.streamReplies!==void 0&&v("stream",L_(t.streamReplies).stream),v("system_prompt_extra",Ne(t.systemPromptExtra)),t.tools!==void 0){const re=Ni(t.tools)??[],H=Array.isArray(y.allowed_tools)?y.allowed_tools:null;y.allowed_tools=H?re.filter(W=>H.includes(W)):re}if(t.review!==void 0&&t.reviewCapable!==!1){v("review_mode",t.review.enabled);const re=t.review.enabled?La(t.review.maxRounds,1):void 0;v("review_max_rounds",re)}const x=Ni((z=t.toolPolicy)==null?void 0:z.autoApproveTools),b=Ni((V=t.toolPolicy)==null?void 0:V.requireApprovalTools);(((x==null?void 0:x.length)??0)>0||((b==null?void 0:b.length)??0)>0)&&v("tool_policy",{...x!=null&&x.length?{auto_approve_tools:x}:{},...b!=null&&b.length?{require_approval_tools:b}:{}}),t.promptCache!==void 0&&v("prompt_cache",t.promptCache),Object.keys(y).length&&(e._runtime=y);const k=il(tt(e._limits)),C=La((P=t.limits)==null?void 0:P.maxIterations,1),S=La((ce=t.limits)==null?void 0:ce.maxTokens,1);C!==void 0&&s&&(k.max_iterations=C),S!==void 0&&s&&(k.max_tokens=S),Object.keys(k).length&&(e._limits=k),a("max_iterations",C),t.gatingMode==="auto"&&a("gating_mode","auto")}function kx(e){var a,l;const t=il(e.schemaInputs),s=Du(e.workflow);if(e.promptProperty){const u=Ne(e.promptProperty);u&&((a=e.prompt)!=null&&a.trim())&&(t[u]=e.prompt)}if(s){const u=e.prompt??"";t.prompt=u;const d=il(tt(t.context));d.task=u,delete d.messages,t.use_context=!1,(l=e.attachments)!=null&&l.length&&(d.attachments=e.attachments.map(f=>({...f}))),t.context=d,t.use_session_history=e.useSessionHistory??!0}return bx(t,e,!0),t}class jx{constructor(){mn(this,"_buffer","");mn(this,"_current",{data_lines:[]})}push(t,s){for(this._buffer+=t;;){const a=this._buffer.indexOf(`
67
- `);if(a===-1)return;const l=this._buffer.slice(0,a);this._buffer=this._buffer.slice(a+1);const u=l.endsWith("\r")?l.slice(0,-1):l;if(u.startsWith(":"))continue;if(u===""){if(this._current.data_lines.length>0||this._current.event||this._current.id){const g={id:this._current.id,event:this._current.event,data:this._current.data_lines.join(`
68
- `)};s(g)}this._current={data_lines:[]};continue}const d=u.indexOf(":"),f=d===-1?u:u.slice(0,d),h=d===-1?"":u.slice(d+1).trimStart();f==="id"?this._current.id=h:f==="event"?this._current.event=h:f==="data"&&this._current.data_lines.push(h)}}}function Ze(e){var a;const t=(e||"").trim(),s={};t&&(s.Authorization=`Bearer ${t}`);try{const l=(a=document.cookie.split(";").map(u=>u.trim()).find(u=>u.startsWith("abstractcode_gateway_csrf=")))==null?void 0:a.slice(26);l&&(s["X-AbstractCode-CSRF"]=decodeURIComponent(l))}catch{}return s}function Sx(e){const t=e.headers.get("retry-after");if(!t)return;const s=Number(t);if(Number.isFinite(s)&&s>0)return s}async function Nx(e){var t;try{if(String(e.headers.get("content-type")||"").toLowerCase().includes("application/json")){const l=await e.json().catch(()=>null);if(l&&typeof l=="object"){const u=l.detail;if(typeof u=="string"&&u.trim())return u.trim();const d=(t=l.error)==null?void 0:t.message;if(typeof d=="string"&&d.trim())return d.trim();try{const f=JSON.stringify(l);if(f&&f!=="{}")return f}catch{}}}const a=await e.text();return a!=null&&a.trim()?a.trim():`${e.status}`}catch{return`${e.status}`}}class wm extends Error{constructor(s,a){super(s);mn(this,"status");mn(this,"retry_after_s");mn(this,"body_text");this.name="GatewayHttpError",this.status=Number.isFinite(Number(a.status))?Number(a.status):0,this.retry_after_s=a.retry_after_s,this.body_text=a.body_text}}async function qe(e,t){const s=await Nx(e);throw new wm(`${t}: ${s}`,{status:e.status,retry_after_s:Sx(e),body_text:s})}class Cx{constructor(t){mn(this,"_cfg");this._cfg={...t,base_url:(t.base_url||"").trim()}}async start_run(t,s,a){const l=String((a==null?void 0:a.bundle_id)||"").trim(),u=(a==null?void 0:a.session_id)===null||(a==null?void 0:a.session_id)===void 0?"":String(a.session_id||"").trim(),d=String(t||"").trim(),f={input_data:s||{}};l&&(f.bundle_id=l),d&&(f.flow_id=d),u&&(f.session_id=u);const h=await fetch(Xe(this._cfg.base_url.trim(),Se("runs/start")),{method:"POST",headers:{"Content-Type":"application/json",...Ze(this._cfg.auth_token)},body:JSON.stringify(f)});if(!h.ok)return await qe(h,"start_run failed");const g=await h.json(),y=g==null?void 0:g.run_id;if(typeof y!="string"||!y)throw new Error("start_run: missing run_id");return y}async get_run(t){const s=String(t||"").trim();if(!s)throw new Error("get_run: run_id is required");const a=await fetch(Xe(this._cfg.base_url.trim(),Se(`runs/${encodeURIComponent(s)}`)),{headers:{...Ze(this._cfg.auth_token)}});return a.ok?await a.json():await qe(a,"get_run failed")}async get_run_history_bundle(t,s){const a=String(t||"").trim();if(!a)throw new Error("get_run_history_bundle: run_id is required");const l=new URLSearchParams;(s==null?void 0:s.include_subruns)===!1&&l.set("include_subruns","false"),(s==null?void 0:s.include_session)===!0&&l.set("include_session","true"),typeof(s==null?void 0:s.session_turn_limit)=="number"&&Number.isFinite(s.session_turn_limit)&&l.set("session_turn_limit",String(Math.max(1,Math.trunc(s.session_turn_limit)))),s!=null&&s.ledger_mode&&l.set("ledger_mode",String(s.ledger_mode)),typeof(s==null?void 0:s.ledger_max_items)=="number"&&Number.isFinite(s.ledger_max_items)&&l.set("ledger_max_items",String(Math.max(0,Math.trunc(s.ledger_max_items))));const u=Xe(this._cfg.base_url.trim(),Se(`runs/${encodeURIComponent(a)}/history_bundle?${l.toString()}`)),d=await fetch(u,{headers:{...Ze(this._cfg.auth_token)}});return d.ok?await d.json():await qe(d,"get_run_history_bundle failed")}async list_runs(t){const s=new URLSearchParams,a=typeof(t==null?void 0:t.limit)=="number"?t.limit:50;s.set("limit",String(a));const l=String((t==null?void 0:t.status)||"").trim();l&&s.set("status",l);const u=String((t==null?void 0:t.workflow_id)||"").trim();u&&s.set("workflow_id",u);const d=String((t==null?void 0:t.session_id)||"").trim();d&&s.set("session_id",d),(t==null?void 0:t.root_only)===!0&&s.set("root_only","true"),(t==null?void 0:t.include_ledger_len)===!1&&s.set("include_ledger_len","false"),(t==null?void 0:t.include_metrics)===!0&&s.set("include_metrics","true");const f=Xe(this._cfg.base_url.trim(),Se(`runs?${s.toString()}`)),h=await fetch(f,{headers:{...Ze(this._cfg.auth_token)}});return h.ok?await h.json():await qe(h,"list_runs failed")}async get_ledger(t,s){const a=String(t||"").trim();if(!a)throw new Error("get_ledger: run_id is required");const l=Number((s==null?void 0:s.after)||0),u=Number((s==null?void 0:s.limit)||0),d=Xe(this._cfg.base_url.trim(),Se(`runs/${encodeURIComponent(a)}/ledger?after=${encodeURIComponent(String(l))}&limit=${encodeURIComponent(String(u))}`)),f=await fetch(d,{headers:{...Ze(this._cfg.auth_token)}});if(!f.ok)return await qe(f,"get_ledger failed");const h=await f.json(),g=Array.isArray(h==null?void 0:h.items)?h.items:[],y=typeof(h==null?void 0:h.next_after)=="number"?h.next_after:l;return{items:g,next_after:y}}async stream_ledger(t,s){var k;const a=String(t||"").trim();if(!a)throw new Error("stream_ledger: run_id is required");if(s.on_delta&&!s.on_delta_error)throw new Error("stream_ledger: on_delta requires on_delta_error (malformed live frames must be reported)");const l=Number((s==null?void 0:s.after)||0),u=s.on_step,d=s.signal,f=Xe(this._cfg.base_url.trim(),Se(`runs/${encodeURIComponent(a)}/ledger/stream?after=${encodeURIComponent(String(l))}`)),h=await fetch(f,{headers:{Accept:"text/event-stream",...Ze(this._cfg.auth_token)},signal:d});if(!h.ok)return await qe(h,"stream_ledger failed");if(!h.body)throw new Error("stream_ledger: response body is missing");(k=s.on_open)==null||k.call(s);const g=h.body.getReader(),y=new TextDecoder("utf-8"),v=new jx,x=s.on_delta,b=s.on_delta_error;for(;;){const{value:C,done:S}=await g.read();if(S)return;const A=y.decode(C,{stream:!0});v.push(A,$=>{if(x&&b){const T=$.event||"message",j=$.data??"";let L;try{L=M_(T,j)}catch(z){b(z instanceof Error?z:new Error(String(z)),{event:T,data:j});return}if(L){x(L);return}}if(!($.event!=="step"||!$.data))try{const T=JSON.parse($.data);T&&typeof T.cursor=="number"&&T.record&&u(T)}catch{}})}}async list_bundles(){const t=await fetch(Xe(this._cfg.base_url.trim(),Se("bundles")),{headers:{...Ze(this._cfg.auth_token)}});return t.ok?await t.json():await qe(t,"list_bundles failed")}async reload_bundles(){const t=await fetch(Xe(this._cfg.base_url.trim(),Se("bundles/reload")),{method:"POST",headers:{...Ze(this._cfg.auth_token)}});return t.ok?await t.json():await qe(t,"reload_bundles failed")}async upload_bundle(t,s){const a=(s==null?void 0:s.overwrite)===!0,l=(s==null?void 0:s.reload)!==!1,u=new FormData;u.set("overwrite",a?"true":"false"),u.set("reload",l?"true":"false"),u.set("file",t,t.name||"upload.flow");const d=await fetch(Xe(this._cfg.base_url.trim(),Se("bundles/upload")),{method:"POST",headers:{...Ze(this._cfg.auth_token)},body:u});return d.ok?await d.json():await qe(d,"upload_bundle failed")}async discovery_tools(){const t=await fetch(Xe(this._cfg.base_url.trim(),Se("discovery/tools")),{headers:{...Ze(this._cfg.auth_token)}});return t.ok?await t.json():await qe(t,"discovery_tools failed")}async discovery_providers(t){const s=(t==null?void 0:t.include_models)===!0,a=Xe(this._cfg.base_url.trim(),Se(`discovery/providers?include_models=${encodeURIComponent(String(s))}`)),l=await fetch(a,{headers:{...Ze(this._cfg.auth_token)}});return l.ok?await l.json():await qe(l,"discovery_providers failed")}async discovery_provider_models(t){const s=String(t||"").trim();if(!s)throw new Error("discovery_provider_models: provider_name is required");const a=await fetch(Xe(this._cfg.base_url.trim(),Se(`discovery/providers/${encodeURIComponent(s)}/models`)),{headers:{...Ze(this._cfg.auth_token)}});return a.ok?await a.json():await qe(a,"discovery_provider_models failed")}async discovery_model_capabilities(t,s=""){const a=String(t||"").trim();if(!a)throw new Error("discovery_model_capabilities: model_name is required");const l=new URLSearchParams({model_name:a});s.trim()&&l.set("provider",s.trim());const u=Xe(this._cfg.base_url.trim(),Se(`discovery/models/capabilities?${l}`)),d=await fetch(u,{headers:{...Ze(this._cfg.auth_token)}});return d.ok?await d.json():await qe(d,"discovery_model_capabilities failed")}async workspace_policy(){const t=await fetch(Xe(this._cfg.base_url.trim(),Se("workspace/policy")),{headers:{...Ze(this._cfg.auth_token)}});return t.ok?await t.json():await qe(t,"workspace_policy failed")}async files_search(t,s){const a=String(t||"").trim(),l=typeof(s==null?void 0:s.limit)=="number"&&Number.isFinite(s.limit)?Math.max(1,Math.trunc(s.limit)):20,u=new URLSearchParams;u.set("query",a),u.set("limit",String(l));const d=s==null?void 0:s.scope;if(d&&typeof d=="object"){const g=String(d.workspace_root||"").trim(),y=String(d.workspace_access_mode||"").trim(),v=String(d.workspace_allowed_paths||"").trim(),x=String(d.workspace_ignored_paths||"").trim();g&&u.set("workspace_root",g),y&&u.set("workspace_access_mode",y),v&&u.set("workspace_allowed_paths",v),x&&u.set("workspace_ignored_paths",x)}const f=Xe(this._cfg.base_url.trim(),Se(`files/search?${u.toString()}`)),h=await fetch(f,{headers:{...Ze(this._cfg.auth_token)},signal:s==null?void 0:s.signal});return h.ok?await h.json():await qe(h,"files_search failed")}async list_run_artifacts(t,s){const a=String(t||"").trim();if(!a)throw new Error("list_run_artifacts: run_id is required");const l=typeof(s==null?void 0:s.limit)=="number"?s.limit:200,u=Xe(this._cfg.base_url.trim(),Se(`runs/${encodeURIComponent(a)}/artifacts?limit=${encodeURIComponent(String(l))}`)),d=await fetch(u,{headers:{...Ze(this._cfg.auth_token)}});return d.ok?await d.json():await qe(d,"list_run_artifacts failed")}async get_run_artifact_blob(t,s,a){const l=String(t||"").trim(),u=String(s||"").trim();if(!l)throw new Error("get_run_artifact_blob: run_id is required");if(!u)throw new Error("get_run_artifact_blob: artifact_id is required");const d=Xe(this._cfg.base_url.trim(),Se(`runs/${encodeURIComponent(l)}/artifacts/${encodeURIComponent(u)}/content`)),f=await fetch(d,{headers:{...Ze(this._cfg.auth_token)}});if(!f.ok)return await qe(f,"get_run_artifact_blob failed");const h=await f.blob(),g=typeof(a==null?void 0:a.max_bytes)=="number"&&Number.isFinite(a.max_bytes)?Math.max(0,Math.trunc(a.max_bytes)):0;if(g>0&&h.size>g)throw new Error(`Artifact too large (${h.size} bytes > ${g} bytes)`);const y=String(f.headers.get("content-type")||"").trim()||"application/octet-stream";return{blob:h,content_type:y}}async get_run_artifact_text(t,s,a){const{blob:l}=await this.get_run_artifact_blob(t,s,a);return await l.text()}async attachments_ingest(t,s,a){const l=String(t||"").trim(),u=String(s||"").trim();if(!l)throw new Error("attachments_ingest: session_id is required");if(!u)throw new Error("attachments_ingest: path is required");const d={session_id:l,path:u},f=a==null?void 0:a.scope;if(f&&typeof f=="object"){const x=String(f.workspace_root||"").trim(),b=String(f.workspace_access_mode||"").trim(),k=String(f.workspace_allowed_paths||"").trim(),C=String(f.workspace_ignored_paths||"").trim();x&&(d.workspace_root=x),b&&(d.workspace_access_mode=b),k&&(d.workspace_allowed_paths=k),C&&(d.workspace_ignored_paths=C)}const h=await fetch(Xe(this._cfg.base_url.trim(),Se("attachments/ingest")),{method:"POST",headers:{"Content-Type":"application/json",...Ze(this._cfg.auth_token)},body:JSON.stringify(d)});if(!h.ok)return await qe(h,"attachments_ingest failed");const g=await h.json(),y=g==null?void 0:g.attachment;if(!y||typeof y!="object")throw new Error("attachments_ingest: missing attachment");if(!String(y.$artifact||"").trim())throw new Error("attachments_ingest: missing attachment.$artifact");return y}async attachments_upload(t,s,a){const l=String(t||"").trim();if(!l)throw new Error("attachments_upload: session_id is required");if(!s)throw new Error("attachments_upload: file is required");const u=String((a==null?void 0:a.filename)||"").trim()||String((s==null?void 0:s.name)||"").trim()||"upload.bin",d=String((a==null?void 0:a.content_type)||"").trim()||String((s==null?void 0:s.type)||"").trim(),f=new FormData;f.append("session_id",l),f.append("file",s,u),f.append("filename",u),d&&f.append("content_type",d);const h=await fetch(Xe(this._cfg.base_url.trim(),Se("attachments/upload")),{method:"POST",headers:{...Ze(this._cfg.auth_token)},body:f});if(!h.ok)return await qe(h,"attachments_upload failed");const g=await h.json(),y=g==null?void 0:g.attachment;if(!y||typeof y!="object")throw new Error("attachments_upload: missing attachment");if(!String(y.$artifact||"").trim())throw new Error("attachments_upload: missing attachment.$artifact");return y}async audio_transcribe(t,s){const a=String(t||"").trim();if(!a)throw new Error("audio_transcribe: run_id is required");const l={audio_artifact:s==null?void 0:s.audio_artifact,request_id:(s==null?void 0:s.request_id)||void 0},u=(s==null?void 0:s.language)===null||(s==null?void 0:s.language)===void 0?"":String(s.language||"").trim();u&&(l.language=u);const d=await fetch(Xe(this._cfg.base_url.trim(),Se(`runs/${encodeURIComponent(a)}/audio/transcribe`)),{method:"POST",headers:{"Content-Type":"application/json",...Ze(this._cfg.auth_token)},body:JSON.stringify(l)});return d.ok?await d.json():await qe(d,"audio_transcribe failed")}async voice_tts(t,s){const a=String(t||"").trim();if(!a)throw new Error("voice_tts: run_id is required");const l={text:String((s==null?void 0:s.text)||"")},u=(s==null?void 0:s.voice)===null||(s==null?void 0:s.voice)===void 0?"":String(s.voice||"").trim(),d=(s==null?void 0:s.format)===null||(s==null?void 0:s.format)===void 0?"":String(s.format||"").trim(),f=(s==null?void 0:s.request_id)===null||(s==null?void 0:s.request_id)===void 0?"":String(s.request_id||"").trim();u&&(l.voice=u),d&&(l.format=d),f&&(l.request_id=f);const h=await fetch(Xe(this._cfg.base_url.trim(),Se(`runs/${encodeURIComponent(a)}/voice/tts`)),{method:"POST",headers:{"Content-Type":"application/json",...Ze(this._cfg.auth_token)},body:JSON.stringify(l)});return h.ok?await h.json():await qe(h,"voice_tts failed")}async submit_command(t){const s={command_id:String((t==null?void 0:t.command_id)||"").trim(),run_id:String((t==null?void 0:t.run_id)||"").trim(),type:String((t==null?void 0:t.type)||"").trim(),payload:t!=null&&t.payload&&typeof t.payload=="object"?t.payload:{}},a=String((t==null?void 0:t.ts)||"").trim();a&&(s.ts=a);const l=String((t==null?void 0:t.client_id)||"").trim();l&&(s.client_id=l);const u=await fetch(Xe(this._cfg.base_url.trim(),Se("commands")),{method:"POST",headers:{"Content-Type":"application/json",...Ze(this._cfg.auth_token)},body:JSON.stringify(s)});return u.ok?await u.json():await qe(u,"submit_command failed")}async bug_report_create(t){const s={session_id:String((t==null?void 0:t.session_id)||"").trim(),description:String((t==null?void 0:t.description)||"")},a=String((t==null?void 0:t.active_run_id)||"").trim();a&&(s.active_run_id=a);const l=String((t==null?void 0:t.workflow_id)||"").trim();l&&(s.workflow_id=l);const u=String((t==null?void 0:t.client)||"").trim();u&&(s.client=u);const d=String((t==null?void 0:t.client_version)||"").trim();d&&(s.client_version=d);const f=String((t==null?void 0:t.user_agent)||"").trim();f&&(s.user_agent=f);const h=String((t==null?void 0:t.url)||"").trim();h&&(s.url=h);const g=String((t==null?void 0:t.provider)||"").trim();g&&(s.provider=g);const y=String((t==null?void 0:t.model)||"").trim();y&&(s.model=y);const v=String((t==null?void 0:t.template)||"").trim();v&&(s.template=v);const x=t==null?void 0:t.context;x&&typeof x=="object"&&(s.context=x);const b=await fetch(Xe(this._cfg.base_url.trim(),Se("bugs/report")),{method:"POST",headers:{"Content-Type":"application/json",...Ze(this._cfg.auth_token)},body:JSON.stringify(s)});return b.ok?await b.json():await qe(b,"bug_report_create failed")}async feature_report_create(t){const s={session_id:String((t==null?void 0:t.session_id)||"").trim(),description:String((t==null?void 0:t.description)||"")},a=String((t==null?void 0:t.active_run_id)||"").trim();a&&(s.active_run_id=a);const l=String((t==null?void 0:t.workflow_id)||"").trim();l&&(s.workflow_id=l);const u=String((t==null?void 0:t.client)||"").trim();u&&(s.client=u);const d=String((t==null?void 0:t.client_version)||"").trim();d&&(s.client_version=d);const f=String((t==null?void 0:t.user_agent)||"").trim();f&&(s.user_agent=f);const h=String((t==null?void 0:t.url)||"").trim();h&&(s.url=h);const g=String((t==null?void 0:t.provider)||"").trim();g&&(s.provider=g);const y=String((t==null?void 0:t.model)||"").trim();y&&(s.model=y);const v=String((t==null?void 0:t.template)||"").trim();v&&(s.template=v);const x=t==null?void 0:t.context;x&&typeof x=="object"&&(s.context=x);const b=await fetch(Xe(this._cfg.base_url.trim(),Se("features/report")),{method:"POST",headers:{"Content-Type":"application/json",...Ze(this._cfg.auth_token)},body:JSON.stringify(s)});return b.ok?await b.json():await qe(b,"feature_report_create failed")}async prompt_cache_stats(t,s){const a=String(t||"").trim(),l=String(s||"").trim();if(!a||!l)throw new Error("prompt_cache_stats: provider and model are required");const u=Xe(this._cfg.base_url.trim(),Se(`prompt_cache/stats?provider=${encodeURIComponent(a)}&model=${encodeURIComponent(l)}`)),d=await fetch(u,{headers:{...Ze(this._cfg.auth_token)}});return d.ok?await d.json():await qe(d,"prompt_cache_stats failed")}async prompt_cache_capabilities(t,s){const a=String(t||"").trim(),l=String(s||"").trim();if(!a||!l)throw new Error("prompt_cache_capabilities: provider and model are required");const u=Xe(this._cfg.base_url.trim(),Se(`prompt_cache/capabilities?provider=${encodeURIComponent(a)}&model=${encodeURIComponent(l)}`)),d=await fetch(u,{headers:{...Ze(this._cfg.auth_token)}});return d.ok?await d.json():await qe(d,"prompt_cache_capabilities failed")}async prompt_cache_saved(t,s){const a=String(t||"").trim(),l=String(s||"").trim();if(!a||!l)throw new Error("prompt_cache_saved: provider and model are required");const u=Xe(this._cfg.base_url.trim(),Se(`prompt_cache/saved?provider=${encodeURIComponent(a)}&model=${encodeURIComponent(l)}`)),d=await fetch(u,{headers:{...Ze(this._cfg.auth_token)}});return d.ok?await d.json():await qe(d,"prompt_cache_saved failed")}async prompt_cache_clear(t){const s={provider:String((t==null?void 0:t.provider)||"").trim(),model:String((t==null?void 0:t.model)||"").trim()},a=(t==null?void 0:t.key)===null||(t==null?void 0:t.key)===void 0?"":String(t.key||"").trim();a&&(s.key=a);const l=await fetch(Xe(this._cfg.base_url.trim(),Se("prompt_cache/clear")),{method:"POST",headers:{"Content-Type":"application/json",...Ze(this._cfg.auth_token)},body:JSON.stringify(s)});return l.ok?await l.json():await qe(l,"prompt_cache_clear failed")}async prompt_cache_save(t){const s={provider:String((t==null?void 0:t.provider)||"").trim(),model:String((t==null?void 0:t.model)||"").trim(),name:String((t==null?void 0:t.name)||"").trim(),key:String((t==null?void 0:t.key)||"").trim(),q8:!!(t!=null&&t.q8)},a=await fetch(Xe(this._cfg.base_url.trim(),Se("prompt_cache/save")),{method:"POST",headers:{"Content-Type":"application/json",...Ze(this._cfg.auth_token)},body:JSON.stringify(s)});return a.ok?await a.json():await qe(a,"prompt_cache_save failed")}async prompt_cache_load(t){const s={provider:String((t==null?void 0:t.provider)||"").trim(),model:String((t==null?void 0:t.model)||"").trim(),name:String((t==null?void 0:t.name)||"").trim(),key:String((t==null?void 0:t.key)||"").trim(),clear_existing:!!(t!=null&&t.clear_existing)},a=await fetch(Xe(this._cfg.base_url.trim(),Se("prompt_cache/load")),{method:"POST",headers:{"Content-Type":"application/json",...Ze(this._cfg.auth_token)},body:JSON.stringify(s)});return a.ok?await a.json():await qe(a,"prompt_cache_load failed")}}function vm(){const e=document.cookie.split(";").map(t=>t.trim()).find(t=>t.startsWith("abstractcode_gateway_csrf="));return e?{"X-AbstractCode-CSRF":decodeURIComponent(e.slice(26))}:{}}async function dt(e,t={}){if(!e.startsWith(`${el}/`))throw new Error("Gateway requests must use the app's authenticated proxy (a relative api/gateway/… path).");const s=new Headers(t.headers);s.set("Accept","application/json"),t.body&&!(t.body instanceof FormData)&&s.set("Content-Type","application/json");for(const[l,u]of Object.entries(vm()))s.set(l,u);const a=await fetch(e,{...t,headers:s,credentials:"same-origin"});if(!a.ok){const l=await a.text();let u=l;try{const d=JSON.parse(l);u=typeof d.detail=="string"?d.detail:JSON.stringify(d.detail||d)}catch{}throw new wm(u||`Gateway request failed (${a.status})`,{status:a.status,body_text:l})}if(a.status!==204)return a.json()}const $n=new Cx({base_url:""});function xt(e){return e instanceof Error?e.message:String(e)}function es(){return Cu()}async function Ex(e,t,s){const{blob:a}=await $n.get_run_artifact_blob(e,t),l=URL.createObjectURL(a),u=document.createElement("a");u.href=l,u.download=s.replace(/[\\/]/g,"_")||"artifact",u.click(),window.setTimeout(()=>URL.revokeObjectURL(l),1e3)}const an=e=>e&&typeof e=="object"&&!Array.isArray(e)?e:{};function $x(e,t){const s=an(t);return Object.fromEntries(Object.keys(an(e.properties)).flatMap(a=>["_runtime","_limits"].includes(a)||!Object.prototype.hasOwnProperty.call(s,a)?[]:[[a,structuredClone(s[a])]]))}function Hh(e){if(!e)return;const t=an(e.input_data_schema||e.input_schema||e.schema||e),s=Object.fromEntries(Object.entries(an(t.properties)).map(([a,l])=>[a,{...an(l)}]));for(const a of Array.isArray(e.inputs)?e.inputs:[])a!=null&&a.id&&(s[a.id]={...an(a.schema),...s[a.id],...a.type?{"x-abstract-type":a.type}:{},...a.label?{title:a.label}:{},...Object.prototype.hasOwnProperty.call(a,"default")?{default:a.default}:{}});for(const[a,l]of Object.entries(an(e.defaults)))s[a]={...s[a],default:l};return{...t,properties:s}}function Ax(e,t){var g;const s=an(t).nodes;if(!Array.isArray(s))throw new Error("The workflow input declarations could not be verified. Please retry.");const a=s.find(y=>{var v;return(((v=y==null?void 0:y.data)==null?void 0:v.nodeType)||(y==null?void 0:y.type))==="on_flow_start"});if(!a||!Array.isArray((g=a.data)==null?void 0:g.outputs))throw new Error("The workflow start inputs could not be verified. Please retry.");const l=a.data.outputs.filter(y=>typeof(y==null?void 0:y.id)=="string"&&y.id&&y.type!=="execution"&&!["exec","exec-out"].includes(y.id)),u=new Set(l.map(y=>y.id)),d=new Set((Array.isArray(e.required)?e.required:[]).filter(y=>!u.has(y))),f={...e.properties},h=an(a.data.pinDefaults);for(const y of l)y.required===!0&&d.add(y.id),f[y.id]={...an(f[y.id]),...an(y.schema),...y.type?{"x-abstract-type":y.type}:{},...y.label?{title:y.label}:{},...Object.prototype.hasOwnProperty.call(h,y.id)?{default:structuredClone(h[y.id])}:{}};return{...e,properties:f,required:[...d]}}function Ra(e){return Object.fromEntries(Object.entries((e==null?void 0:e.properties)||{}).flatMap(([t,s])=>Object.prototype.hasOwnProperty.call(an(s),"default")?[[t,structuredClone(an(s).default)]]:[]))}function Tx(e){const t=Array.isArray(e.type)?e.type.find(a=>a!=="null"):e.type;if(t)return t;const s=e["x-abstract-type"];return["tools","assertions"].includes(s)?"array":["json_schema","memory","assertion"].includes(s)?"object":"string"}function Rx(e){const t=(e==null?void 0:e.properties)||{},s=l=>{const u=t[l];return u&&(u.type==="string"||Array.isArray(u.type)&&u.type.includes("string")||!u.type&&u["x-abstract-type"]==="string")},a=Object.keys(t).filter(l=>{var u;return((u=t[l])==null?void 0:u["x-abstract-role"])==="prompt"&&s(l)});return a.length?a.length===1?a[0]:void 0:["prompt","request","task","message","query","input"].find(s)}function Ix(e,t){var l,u,d;if(!e)return[];const s={...Ra(e),...t},a=[];for(const f of Array.isArray(e.required)?e.required:[])s[f]===void 0&&a.push(`${((u=(l=e.properties)==null?void 0:l[f])==null?void 0:u.title)||f} is required.`);for(const[f,h]of Object.entries(s)){const g=(d=e.properties)==null?void 0:d[f];if(!g||h===void 0)continue;const y=g.title||f;Array.isArray(g.enum)&&!g.enum.some(k=>JSON.stringify(k)===JSON.stringify(h))&&a.push(`${y} must be one of the available choices.`);const v=Array.isArray(g.type)?g.type:g.type?[g.type]:[];if(h===null&&(v.includes("null")||!v.length))continue;const x=Array.isArray(h)?"array":h===null?"null":typeof h,b=v.includes(x)?x:x==="number"&&v.includes("integer")?"integer":v[0];(b==="number"||b==="integer")&&(typeof h!="number"||!Number.isFinite(h)||b==="integer"&&!Number.isInteger(h))&&a.push(`${y} must be ${b==="integer"?"a whole number":"a number"}.`),typeof h=="number"&&g.minimum!==void 0&&h<g.minimum&&a.push(`${y} must be at least ${g.minimum}.`),typeof h=="number"&&g.maximum!==void 0&&h>g.maximum&&a.push(`${y} must be at most ${g.maximum}.`),b==="string"&&typeof h!="string"&&a.push(`${y} must be text.`),typeof h=="string"&&g.minLength!==void 0&&h.length<g.minLength&&a.push(`${y} must contain at least ${g.minLength} characters.`),b==="boolean"&&typeof h!="boolean"&&a.push(`${y} must be true or false.`),b==="array"&&!Array.isArray(h)&&a.push(`${y} must be a JSON array.`),b==="object"&&(h===null||typeof h!="object"||Array.isArray(h))&&a.push(`${y} must be a JSON object.`)}return a}function _m(e){const t=(e==null?void 0:e.properties)||{},s=[];for(const[a,l]of Object.entries(t)){const u=an(l);if(!(a==="provider"||a.endsWith("_provider")||String(u["x-abstract-type"]||"").startsWith("provider")))continue;const d=String(u["x-abstract-type"]||""),f=a.replace("provider","model"),h=Object.keys(t).filter(b=>{var k;return((k=t[b])==null?void 0:k["x-abstract-type"])===d.replace(/^provider/,"model")}),g=f!==a&&t[f]?f:h.length===1?h[0]:"";if(!g)continue;const y=a==="provider"?"":a.startsWith("provider_")?a.slice(9):a.endsWith("_provider")?a.slice(0,-9):d.replace(/^provider_?/,""),v=y&&y!=="text"?`${y}_`:"",x=[`${v}reasoning`,`${v}thinking`,`${v}reasoning_effort`,`reasoning_${y}`,`thinking_${y}`].find(b=>t[b]);s.push({provider:a,model:g,reasoning:x,title:v?v.replace(/_/g," ").trim():"Text model"})}return s}const zu={fetchProviders:async()=>{const e=await $n.discovery_providers(),t=e.providers||e.items;return Array.isArray(t)?t.map(s=>typeof s=="string"?{name:s}:s):[]},fetchModels:async e=>{const t=await $n.discovery_provider_models(e),s=t.models||t.items;return Array.isArray(s)?s.map(a=>typeof a=="string"?a:a.id||a.name).filter(Boolean):[]},fetchModelCapabilities:(e,t="")=>$n.discovery_model_capabilities(e,t)};function Mx(e){for(const t of["output.text","input.text"]){const s=(Array.isArray(e==null?void 0:e.routes)?e.routes:[]).find(a=>a.key===t&&a.source!=="not_configured"&&a.provider&&a.model);if(s)return{provider:s.provider,model:s.model}}}function Lx(e,t){e.startsWith("provider_")?e=`${e.slice(9)}_provider`:t!=null&&t.startsWith("provider_")&&!e.endsWith("_provider")&&(e=`${t.slice(9)}_provider`);const s={image_provider:"text_to_image",image_edit_provider:"image_to_image",image_upscale_provider:"image_upscale",video_provider:"text_to_video",image_to_video_provider:"image_to_video"}[e];if(!s&&!["music_provider","voice_provider"].includes(e))return zu;const a=e==="voice_provider",l=Se(s?`vision/provider_models?task=${s}`:a?"audio/speech/models?compact=true":"audio/music/models?task=text_to_music"),u=s?`${l}&providers_only=true`:Se(a?"voice/voices?providers_only=true&compact=true":"audio/music/providers?task=text_to_music"),d=f=>Array.isArray(f)?f.map(h=>typeof h=="string"?h:h.id||h.name).filter(Boolean):[];return{fetchProviders:async()=>{const f=await dt(u);if(f.error)throw new Error(f.error);return d(f.providers||f.available_providers||f.items).map(h=>({name:h}))},fetchModels:async f=>{var g,y,v;const h=await dt(`${l}&provider=${encodeURIComponent(f)}`);if(h.error)throw new Error(h.error);return d(((g=h.models_by_provider)==null?void 0:g[f])||((y=h.tts_models_by_provider)==null?void 0:y[f])||((v=h.music_models_by_provider)==null?void 0:v[f])||h.models||h.items)}}}const Px=["gateway_default","on","off"],xm={status:"loading"};function Ox(e,t){if(t)return{status:"unsupported",reason:`the gateway's capabilities could not be read (${t})`};const s=e==null?void 0:e.capabilities,a=s==null?void 0:s.streaming;return!a||typeof a!="object"||a.deltas!==!0?{status:"unsupported",reason:"not supported by this gateway (it does not advertise live replies)"}:{status:"supported",gatewayDefault:typeof a.default=="boolean"?a.default:null}}function Dx(e){return Px.includes(e)?e:"gateway_default"}function Fx(e,t){return e==="on"&&t.status!=="supported"?"gateway_default":e}function zx(e,t,s){if(e!=="on"||t.status!=="unsupported"||!s.length)return null;const a=s.find(l=>l.role==="user")||s[0];return{after:a.id?String(a.id):null,message:{id:"stream-replies:unsupported",role:"system",level:"info",title:"Stream replies",content:`Streaming is on in your settings but this gateway does not support live replies: ${t.reason}. Replies appear when they are complete.`}}}function Wx(e){try{const t=JSON.parse(e);return typeof(t==null?void 0:t.call_id)=="string"&&t.call_id?t.call_id:""}catch{return""}}function Ux(e,t){const s=Wx(e.frame.data),a=s?`call:${s}`:`error:${e.error.message}`;return{after:t,message:{id:`stream-replies:malformed:${e.runId}:${a}`,role:"system",level:"warn",title:"Live reply",runId:e.runId,content:`The gateway sent a malformed live reply update (${e.frame.event}): ${e.error.message}. It was skipped; the complete reply still arrives.`}}}function Bx(e,t){return e.some(s=>s.message.id===t.message.id)?[...e]:[...e,t]}function Vx(e,t){const s=t.filter(f=>!!f);if(!s.length)return[...e];const a=[],l=new Set;for(const f of e){a.push(f);for(const h of s)!l.has(h)&&h.after!==null&&String(f.id)===h.after&&(a.push(h.message),l.add(h))}const u=s.filter(f=>!l.has(f)&&f.after===null),d=s.filter(f=>!l.has(f)&&f.after!==null);return[...u.map(f=>f.message),...a,...d.map(f=>f.message)]}function Gx(e){return e.status==="supported"&&e.gatewayDefault!==null?`Gateway default (${e.gatewayDefault?"on":"off"})`:"Gateway default"}const En="@default",Ri="abstractcode.agent.v1";function sr(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)?e:void 0}function rn(e){return typeof e=="string"&&e.trim()?e.trim():void 0}const Hx="gateway does not report a default agent workflow";function Kx(e,t=Ri){var y,v;const s=sr(e);if(!s)return{status:"unavailable",reason:"the gateway's workflow list could not be loaded"};const a=sr(s.default_agent_workflows);if(!a)return{status:"unavailable",reason:Hx};const l=sr(a[t]);if(!l){const x=rn((v=sr((y=sr(s.default_agent_workflows_unavailable))==null?void 0:y[t]))==null?void 0:v.reason);return{status:"unavailable",reason:x?`no default workflow for ${t}: ${x}`:`gateway reports no default workflow for ${t}`}}const u=rn(l.bundle_id),d=rn(l.flow_id),f=rn(l.registry_scope);if(!u||!d||!f)return{status:"unavailable",reason:`gateway's default workflow for ${t} is missing its bundle, flow or registry scope`};const h=rn(l.bundle_version);return{status:"ok",workflow:{workflowId:rn(l.workflow_id)??`${u}${h?`@${h}`:""}:${d}`,bundleId:u,...h?{bundleVersion:h}:{},flowId:d,registryScope:f,name:rn(l.name)??d,...rn(l.source)?{source:rn(l.source)}:{}}}}function Kh(e){if(e.status==="loading")return"Gateway default (loading…)";if(e.status==="unavailable")return`Gateway default — ${e.reason}`;const{name:t,bundleVersion:s}=e.workflow;return`Gateway default → ${t}${s?` @${s}`:""}`}function Jx(e,t,s=Ri){if(e.status!=="ok")return null;const a=e.workflow,l=t.find(u=>(u.registryScope??"private")===a.registryScope&&u.bundleId===a.bundleId&&u.flowId===a.flowId&&(!a.bundleVersion||u.bundleVersion===a.bundleVersion));return l||{id:`${a.registryScope}:${a.workflowId}`,workflowId:a.workflowId,bundleId:a.bundleId,...a.bundleVersion?{bundleVersion:a.bundleVersion}:{},flowId:a.flowId,name:a.name,description:"",interfaces:[s],registryScope:a.registryScope}}function eu(e,t=Ri){if(!e||e.interfaces.includes(t))return"";const s=e.interfaces.length?e.interfaces.join(", "):"no interface";return`The gateway default ${e.name} does not declare ${t} (it declares ${s}); it will not run as a coding agent here.`}function Qx(e,t,s=Ri){return t?[...e]:e.filter(a=>a.interfaces.includes(s))}function Yx(e){const t=s=>s===En||e.visible.some(a=>a.id===s)||!!e.runId&&e.workflows.some(a=>a.id===s);return e.selection&&t(e.selection)?e.selection:e.preferred&&t(e.preferred)?e.preferred:En}function Wu(e){var s,a;const t=sr((a=sr((s=sr(e))==null?void 0:s.input_data))==null?void 0:a.workflow_selection);return rn(t==null?void 0:t.source)}function Xx(e){var t;return Wu(e.restoredInputs)==="gateway_default"?En:(t=e.restored)==null?void 0:t.id}function Zx(e){return!sr(e)||Wu(e)?"":"This gateway does not record whether this conversation used the gateway default workflow; its next turn uses the workflow its last run used."}function qx(e){return e.selection===En?{flow_id:En,interface:e.interfaceId??Ri,session_id:e.sessionId,input_data:e.input}:{bundle_id:e.workflow.bundleId,bundle_version:e.workflow.bundleVersion,registry_scope:e.workflow.registryScope,flow_id:e.workflow.flowId,session_id:e.sessionId,input_data:e.input}}function eb(e){const t=sr(e);if(!t)return{text:"the gateway did not report which workflow it started",missing:!0};const s=rn(t.name)??rn(t.workflow_id)??rn(t.flow_id)??"unnamed workflow",a=rn(t.bundle_version);return{text:`running ${s}${a?` @${a}`:""}${t.source==="gateway_default"?" (gateway default)":""}`,missing:!1}}const tu=25,tb=4,nb=e=>`runs?root_only=true&include_ledger_len=false&limit=${e}`;function rb(e){const t=(e==null?void 0:e.items)??(e==null?void 0:e.runs);return Array.isArray(t)?t.length:0}async function sb(e,t){let s=Math.max(1,t)*tb;for(;;){const a=await e(s);if((a==null?void 0:a.has_more)!==!0||rb(a)<s||ym(a).length>t)return a;s*=2}}function ib(e,t){return{sessions:e.slice(0,t),hasMore:e.length>t}}const nu={gatewayDefault:{status:"loading"},workflows:[],choices:[],policy:null,tools:[],sessions:[],capabilities:{},streaming:xm,loading:!1,errors:[],hasMore:!1};function ab(e){var s;const t=((s=e==null?void 0:e.capabilities)==null?void 0:s.contracts)??(e==null?void 0:e.contracts)??e;return t&&typeof t=="object"&&!Array.isArray(t)?t:{}}function ob(e,t){const[s,a]=w.useState(nu),l=w.useRef(tu),u=w.useRef(0),d=w.useRef(),f=w.useRef(0),h=w.useRef(),g=w.useRef({identity:"",values:{}}),y=w.useCallback(S=>sb(A=>dt(Se(nb(A)),{signal:S}),l.current),[]),v=S=>ib(ym(S,g.current.values),l.current),x=w.useCallback(async(S,A,$)=>{const T=()=>f.current!==A||$.aborted,j=v(S).sessions.filter(L=>!L.prompt&&!(L.firstRunId in g.current.values));for(let L=0;L<j.length;L+=4){if(T()||(await Promise.all(j.slice(L,L+4).map(async z=>{try{const V=await dt(Se(`runs/${encodeURIComponent(z.firstRunId)}/input_data`),{signal:$});T()||(g.current.values[z.firstRunId]=V)}catch(V){!$.aborted&&(V==null?void 0:V.status)===401&&t()}})),T()))return;a(z=>({...z,sessions:v(S).sessions}))}},[t]),b=w.useCallback(async()=>{var $;if(!e)return;const S=++f.current;($=h.current)==null||$.abort();const A=new AbortController;h.current=A,a(T=>({...T,loading:!0}));try{const T=await y(A.signal);if(f.current!==S)return;const j=v(T);a(L=>({...L,loading:!1,sessions:j.sessions,hasMore:j.hasMore,errors:L.errors.filter(z=>!z.startsWith("Conversations: "))})),await x(T,S,A.signal)}catch(T){if(A.signal.aborted||f.current!==S)return;(T==null?void 0:T.status)===401&&t(),a(j=>({...j,loading:!1,errors:[...j.errors.filter(L=>!L.startsWith("Conversations: ")),`Conversations: ${xt(T)}`]}))}},[e,y,x,t]),k=w.useCallback(async()=>{var ce,re;const S=++u.current,A=++f.current;(ce=h.current)==null||ce.abort(),(re=d.current)==null||re.abort();const $=new AbortController;if(d.current=$,g.current.identity!==e&&(g.current={identity:e,values:{}}),!e){a(nu);return}a(H=>({...H,loading:!0,errors:[]}));const T=H=>dt(Se(H),{signal:$.signal}),j=await Promise.allSettled([T("bundles?all_versions=true&include_drafts=false"),T("workspace/policy"),T("discovery/tools"),y($.signal),T("discovery/capabilities"),T("workflow-catalog?scope=tenant"),T("config/capability-defaults")]);if(u.current!==S)return;const L=H=>j[H].status==="fulfilled"?j[H].value:void 0,z=[];j.forEach((H,W)=>{var J,fe;H.status==="rejected"&&(((J=H.reason)==null?void 0:J.status)===401&&t(),!(W===5&&[403,404,501].includes((fe=H.reason)==null?void 0:fe.status))&&z.push(`${["Workflows","Workspace policy","Tools","Conversations","Capabilities","Shared workflows","Gateway defaults"][W]}: ${xt(H.reason)}`))});const V=f.current===A,P=v(L(3));a(H=>({workflows:Bh(L(0),L(5)),choices:mx(Bh(L(0),L(5))),policy:L(1)?vx(L(1)):null,tools:_x(L(2)),sessions:V?P.sessions:H.sessions,capabilities:ab(L(4)),streaming:Ox(L(4),j[4].status==="rejected"?xt(j[4].reason):void 0),defaultModel:Mx(L(6)),gatewayDefault:Kx(L(0)),loading:!1,errors:z,hasMore:V?P.hasMore:H.hasMore})),V&&L(3)&&await x(L(3),A,$.signal)},[e,t,y,x]);w.useEffect(()=>(l.current=tu,a(nu),k(),()=>{var S,A;u.current+=1,f.current+=1,(S=d.current)==null||S.abort(),(A=h.current)==null||A.abort()}),[k]);const C=w.useCallback(()=>{l.current+=tu,b()},[b]);return{...s,refresh:k,loadMore:C}}async function lb(e){if(e.inputSchema)return Hh(e.inputSchema);if(!e.bundleId)return;const t=encodeURIComponent(e.bundleId),s=encodeURIComponent(e.flowId),a=e.registryScope==="tenant_catalog"&&e.bundleVersion?Se(`workflow-catalog/${t}/versions/${encodeURIComponent(e.bundleVersion)}/flows/${s}/input_schema?scope=tenant`):Se(`bundles/${t}/flows/${s}/input_schema${e.bundleVersion?`?bundle_version=${encodeURIComponent(e.bundleVersion)}`:""}`),l=await dt(a),u=Hh(l);if(!u||l!=null&&l.native_loop_factory||(l==null?void 0:l.version)!==1||!Array.isArray(l==null?void 0:l.inputs)||!(l!=null&&l.input_data_schema)||!Array.isArray(u.required)||!u.required.length)return u;const d=e.bundleVersion||l.bundle_version;if(!d)throw new Error("The Gateway did not identify the workflow version. Refresh workflows and retry.");const f={bundle_id:e.bundleId,bundle_version:d,flow_id:e.flowId},h=v=>{for(const[x,b]of Object.entries(f))if((v==null?void 0:v[x])!==b)throw new Error("The Gateway returned inputs for a different workflow version. Refresh workflows and retry.");if(e.registryScope==="tenant_catalog"&&(v==null?void 0:v.registry_scope)!=="tenant_catalog")throw new Error("The Gateway returned inputs from a different workflow registry. Refresh workflows and retry.")};h(l);const g=e.registryScope==="tenant_catalog"?Se(`workflow-catalog/${t}/versions/${encodeURIComponent(d)}/flows/${s}?scope=tenant`):Se(`bundles/${t}/flows/${s}?bundle_version=${encodeURIComponent(d)}`),y=await dt(g);return h(y),Ax(u,y.flow)}const ru=e=>Se(`runs/${encodeURIComponent(e)}`);function cb(e){return{getRun:(t,s)=>dt(ru(t),{signal:s}),getHistory:(t,s)=>dt(`${ru(t)}/history_bundle?include_subruns=true&include_session=true&ledger_mode=full`,{signal:s}),getLedger:(t,s,a)=>dt(`${ru(t)}/ledger?after=${s}&limit=200`,{signal:a}),streamLedger:(t,s,a,l,u,d)=>$n.stream_ledger(t,{after:s,on_step:a,signal:l,on_open:u,on_delta:d,on_delta_error:(f,h)=>e.onDeltaError({runId:t,error:f,frame:h})}),submitCommand:(t,s)=>dt(Se("commands"),{method:"POST",body:JSON.stringify(t),signal:s})}}function nr(e){return typeof e=="string"?e.trim():""}function ub(e){const t=e&&typeof e=="object"&&!Array.isArray(e)?e:{},a=(Array.isArray(t.skills)?t.skills:[]).flatMap(f=>{const h=f&&typeof f=="object"&&!Array.isArray(f)?f:null,g=nr(h==null?void 0:h.name);if(!h||!g)return[];const y=h.source&&typeof h.source=="object"&&!Array.isArray(h.source)?h.source:void 0;return[{name:g,description:nr(h.description),trustLevel:nr(h.trust_level)||"unverified",blocked:h.blocked===!0,requiresReview:h.requires_review===!0,reasons:Array.isArray(h.reasons)?h.reasons.map(nr).filter(Boolean):[],source:y?{source:nr(y.source),binding:nr(y.binding),ambiguous:y.ambiguous===!0}:void 0}]}),l=Array.isArray(t.warnings)?t.warnings.map(nr).filter(Boolean):[],u=nr(t.shelf),d=nr(t.shelf_source);return{skills:a.sort((f,h)=>f.name.localeCompare(h.name)),warnings:l,...u?{shelf:u}:{},...d?{shelfSource:d}:{}}}function db({inventory:e}){return i.jsxs("div",{className:"code-skills-empty",role:"status",children:[i.jsx("p",{children:i.jsx("strong",{children:"This gateway offers no skills."})}),e.warnings.length?e.warnings.map((t,s)=>i.jsx("p",{children:e.shelf?t:`The gateway has no skill shelf: ${t}`},`${t}:${s}`)):i.jsx("p",{children:"The gateway gave no reason for the empty list."}),e.shelf?i.jsxs("p",{className:"code-field-help",children:["Skill shelf: ",i.jsx("code",{children:e.shelf}),e.shelfSource?` (source: ${e.shelfSource})`:""]}):i.jsx("p",{className:"code-field-help",children:"The gateway did not report a skill shelf location."})]})}function fb(e){var a;const t=e.trustLevel.replace(/[_-]+/g," "),s=(a=e.source)!=null&&a.source?`Adopted from ${e.source.source}`:"Source has no adoption record";return`Trust: ${t}. ${s}${e.requiresReview?". Review required":""}.`}function hb({skill:e,checked:t,disabled:s,onChange:a,lockedReasonId:l}){const u=e.reasons.join(" ")||"Blocked by gateway policy.",d=e.blocked?`Blocked by the gateway: ${u}`:s?"Available when a gateway is connected and no run is in progress.":null;return i.jsx("div",{className:"code-field code-skill-row",children:i.jsx(Ps,{variant:"row",action:"skill",label:e.name,description:i.jsxs(i.Fragment,{children:[e.description?i.jsx("span",{className:"code-skill-row__desc",children:e.description}):null,i.jsx("span",{className:"code-skill-row__trust",children:fb(e)})]}),checked:t,unavailableReason:d,describedBy:!e.blocked&&s?l:void 0,onChange:a})})}function pb({value:e,onChange:t,disabled:s,lockedReasonId:a}){const[l,u]=w.useState({skills:[],warnings:[]}),[d,f]=w.useState(""),[h,g]=w.useState(!0),[y,v]=w.useState(""),[x,b]=w.useState(0);w.useEffect(()=>{const A=new AbortController;return g(!0),v(""),dt(Se("skills"),{signal:A.signal}).then($=>{A.signal.aborted||u(ub($))}).catch($=>{A.signal.aborted||v(xt($))}).finally(()=>{A.signal.aborted||g(!1)}),()=>A.abort()},[x]);const k=w.useMemo(()=>new Set(e.map(nr).filter(Boolean)),[e]),C=w.useMemo(()=>{const A=d.trim().toLocaleLowerCase();return A?l.skills.filter($=>`${$.name}
69
- ${$.description}
70
- ${$.trustLevel}`.toLocaleLowerCase().includes(A)):l.skills},[l.skills,d]),S=(A,$)=>{const T=$?[...k,A]:[...k].filter(j=>j!==A);t([...new Set(T)])};return i.jsxs("section",{className:"code-settings-section","aria-labelledby":"code-skills-heading",children:[i.jsx("h3",{id:"code-skills-heading",children:"Skills"}),i.jsx("p",{className:"code-muted",children:"Choose curated guidance for the next turn. The gateway evaluates trust and requirements when the run starts; this browser does not load or execute skill scripts."}),i.jsxs("label",{className:"code-field",children:["Find a skill",i.jsx("input",{type:"search",value:d,onChange:A=>f(A.target.value),disabled:s||h,placeholder:"Search names, descriptions, or trust"})]}),h?i.jsx("p",{className:"code-muted",role:"status",children:"Loading skills from the gateway…"}):null,y?i.jsxs("div",{className:"code-inline-error",role:"alert",children:["Skill selection is unavailable: ",y," ",i.jsx("button",{className:"code-text-button",type:"button",onClick:()=>b(A=>A+1),disabled:s,children:"Retry"})]}):null,l.warnings.length&&l.skills.length?i.jsxs("details",{className:"code-disabled-tools",children:[i.jsxs("summary",{children:["Gateway reported ",l.warnings.length," skills warning",l.warnings.length===1?"":"s"]}),l.warnings.map((A,$)=>i.jsx("p",{children:A},`${A}:${$}`))]}):null,!h&&!y&&!l.skills.length?i.jsx(db,{inventory:l}):null,!h&&!y&&l.skills.length&&!C.length?i.jsx("p",{className:"code-muted",children:"No skills match your search."}):null,C.map(A=>i.jsx(hb,{skill:A,checked:k.has(A.name),disabled:s,lockedReasonId:a,onChange:$=>S(A.name,$)},A.name))]})}function Uu(e){if(!["ArrowLeft","ArrowRight","Home","End"].includes(e.key))return;const t=[...e.currentTarget.querySelectorAll('button[role="tab"]')].filter(l=>!l.disabled),s=t.indexOf(e.target);if(s<0||!t.length)return;e.preventDefault();const a=e.key==="Home"?0:e.key==="End"?t.length-1:(s+(e.key==="ArrowRight"?1:-1)+t.length)%t.length;t[a].focus(),t[a].click()}function bm(e,t,s="default"){const a=e.filter(u=>u.enabled&&!u.servedDisabled&&(t.mode==="all"||t.selected.includes(u.name))),l=u=>{const d=t.approval[u.name];if(d==="ask")return!1;if(d==="approve"||s==="all")return!0;const f=["auto","approve"].includes((u.approval||"").trim().toLowerCase());if(s==="default")return f;const h=f?1:["write_file","edit_file"].includes(u.name)?2:3,g=u.riskRank===void 0||u.riskRank===1?1:u.riskRank===2?2:3;return Math.max(h,g)<=(s==="write"?2:1)};return{enabledTools:a.map(u=>u.name),autoApproveTools:a.filter(l).map(u=>u.name),requireApprovalTools:a.filter(u=>!l(u)).map(u=>u.name)}}function mb(e,t){if(!Array.isArray(t))return e;const s=a=>t.includes(a);return{enabledTools:e.enabledTools.filter(s),autoApproveTools:e.autoApproveTools.filter(s),requireApprovalTools:e.requireApprovalTools.filter(s)}}const Jh="code-settings-locked",Nr={provider:"",model:"",reasoning:"",maxIterations:"",maxTokens:"",system:"",workspaceRoot:"",workspaceMode:"",allowedPaths:"",tools:{mode:"all",selected:[],approval:{}},toolsCustomized:!1,permissions:"default",skills:[],workflow:"@default",showAllWorkflows:!1,streamReplies:"gateway_default"};function gb({open:e,onClose:t,tab:s,onTab:a,value:l,onChange:u,policy:d,tools:f,disabled:h,defaultModel:g,workflowDefault:y,streaming:v=xm,topOffset:x}){const b=k=>u({...l,...k});return i.jsx(uu,{open:e,onClose:t,label:"Run settings",title:"Run settings",width:480,topOffset:x??60,className:"code-settings-drawer",children:i.jsxs("div",{className:"code-settings",children:[i.jsx("p",{className:"code-muted",children:"Settings apply to the next turn. Your gateway enforces the available permissions."}),i.jsx("div",{className:"code-settings-tabs",role:"tablist","aria-label":"Settings sections",onKeyDown:Uu,children:["model","workspace","tools","skills"].map(k=>i.jsx("button",{role:"tab",tabIndex:s===k?0:-1,"aria-selected":s===k,onClick:()=>a(k),children:k==="model"?"Model & behavior":k==="workspace"?"Workspace":k==="tools"?"Tools":"Skills"},k))}),h?i.jsx("p",{className:"code-notice",id:Jh,children:"Settings are unavailable while disconnected or while a run is active. Reconnect, or finish or stop the run, then try again."}):null,s==="model"?i.jsxs(i.Fragment,{children:[i.jsxs("section",{className:"code-settings-section",children:[i.jsx("h3",{children:"Model"}),i.jsx(Nu,{defaultModeLabel:y?"Workflow default":"Gateway default",value:l,onChange:b,disabled:h,effectiveDefault:g,fetchModelCapabilities:zu.fetchModelCapabilities,enableSpeculation:!0,defaultHint:g?`${y?"Workflow":"Gateway"} default: ${g.provider} · ${g.model}.`:void 0,fetchProviders:async()=>{const k=await $n.discovery_providers();return Array.isArray(k.providers)?k.providers:Array.isArray(k.items)?k.items:[]},fetchModels:async k=>{const C=await $n.discovery_provider_models(k);return(Array.isArray(C.models)?C.models:Array.isArray(C.items)?C.items:[]).map(S=>typeof S=="string"?S:S.id||S.name)}})]}),i.jsxs("section",{className:"code-settings-section",children:[i.jsx("h3",{children:"Behavior"}),i.jsxs("div",{className:"code-field-pair",children:[i.jsxs("label",{className:"code-field",children:["Iteration limit",i.jsx("input",{type:"number",min:1,step:1,placeholder:"Workflow default",value:l.maxIterations,disabled:h,onChange:k=>b({maxIterations:k.target.value})})]}),i.jsxs("label",{className:"code-field",children:["Context token limit",i.jsx("input",{type:"number",min:1,step:1,placeholder:"Gateway default",value:l.maxTokens,disabled:h,onChange:k=>b({maxTokens:k.target.value})})]})]}),i.jsxs("label",{className:"code-field",children:["Additional instructions",i.jsx("textarea",{rows:5,value:l.system,placeholder:"Project conventions or guidance for this conversation…",disabled:h,onChange:k=>b({system:k.target.value})})]}),i.jsx("p",{className:"code-field-help",children:"Reasoning and additional instructions depend on the selected workflow and model."}),i.jsx(yb,{value:l.streamReplies,onChange:k=>b({streamReplies:k}),disabled:h,streaming:v})]})]}):s==="workspace"?i.jsxs("section",{className:"code-settings-section",children:[i.jsx("h3",{children:"Workspace access"}),i.jsxs("div",{className:"code-policy",children:[i.jsx("strong",{children:d!=null&&d.clientWorkspaceScopeOverrides?"Client scope requests enabled":"Managed by your gateway"}),i.jsx("p",{children:d!=null&&d.clientWorkspaceScopeOverrides?"You may request a workspace scope. Gateway policy remains authoritative.":"The gateway chooses and restricts the workspace. File browsing and tool execution follow the same policy."})]}),i.jsxs("dl",{className:"code-facts",children:[i.jsx("dt",{children:"Allowed access modes"}),i.jsx("dd",{children:(d==null?void 0:d.allowedAccessModes.join(", "))||"Gateway default"}),i.jsx("dt",{children:"Available mounts"}),i.jsx("dd",{children:d!=null&&d.mounts.length?d.mounts.map(k=>k.label).join(", "):"Default workspace"})]}),d!=null&&d.clientWorkspaceScopeOverrides?i.jsxs(i.Fragment,{children:[i.jsxs("label",{className:"code-field",children:["Workspace root",i.jsx("input",{value:l.workspaceRoot,placeholder:"Gateway default",disabled:h,onChange:k=>b({workspaceRoot:k.target.value})})]}),i.jsxs("label",{className:"code-field",children:["Access mode",i.jsxs("select",{value:l.workspaceMode,disabled:h,onChange:k=>b({workspaceMode:k.target.value}),children:[i.jsx("option",{value:"",children:"Gateway default"}),d.allowedAccessModes.map(k=>i.jsx("option",{value:k,children:k.replace(/_/g," ")},k))]})]}),l.workspaceMode==="workspace_or_allowed"?i.jsxs("label",{className:"code-field",children:["Additional allowed paths",i.jsx("textarea",{rows:3,value:l.allowedPaths,disabled:h,placeholder:"One path per line",onChange:k=>b({allowedPaths:k.target.value})})]}):null]}):null]}):s==="tools"?i.jsxs("section",{className:"code-settings-section",children:[i.jsxs("label",{className:"code-field",children:["Permissions",i.jsxs("select",{"aria-label":"Permissions",value:l.permissions,disabled:h,onChange:k=>b({permissions:k.target.value}),children:[i.jsx("option",{value:"default",children:"Workflow / Gateway defaults"}),i.jsx("option",{value:"read",children:"Read"}),i.jsx("option",{value:"write",children:"Write"}),i.jsx("option",{value:"all",children:"All enabled tools"})]})]}),i.jsx("p",{className:"code-field-help",children:"Saved for this Gateway account and future turns. Permissions never enable an unchecked tool. Explicit Ask overrides still ask, even with permissions: all."}),i.jsx(Fy,{tools:f.filter(k=>k.enabled).map(k=>({...k,default_approval:bm(f,l.tools,l.permissions).autoApproveTools.includes(k.name)?"approve":"ask"})),value:l.tools,onChange:k=>b({tools:k,toolsCustomized:!0}),disabled:h,subtitle:"Choose available tools and when they should ask you. Gateway restrictions always apply.",note:"An empty custom selection disables every tool. Approvals follow the permissions level and each tool's override."}),f.some(k=>!k.enabled)?i.jsxs("details",{className:"code-disabled-tools",children:[i.jsxs("summary",{children:[f.filter(k=>!k.enabled).length," tools unavailable under gateway policy"]}),f.filter(k=>!k.enabled).map(k=>i.jsxs("p",{children:[i.jsx("strong",{children:k.name}),i.jsx("br",{}),k.whyDisabled||"Disabled by the gateway"]},k.name))]}):null,i.jsx("button",{className:"code-text-button",disabled:h,onClick:()=>b({toolsCustomized:!1,tools:Nr.tools,permissions:"default"}),children:"Use workflow tool defaults"})]}):i.jsx(pb,{value:l.skills,onChange:k=>b({skills:k}),disabled:h,lockedReasonId:Jh})]})})}function yb({value:e,onChange:t,disabled:s,streaming:a}){const l=a.status!=="supported",u=a.status==="unsupported"?`Unavailable: ${a.reason}. Replies appear when they are complete.`:a.status==="loading"?"Checking whether this gateway supports live replies…":"Show the reply while the model writes it. The complete reply replaces the live text when the model call ends.";return i.jsxs(i.Fragment,{children:[i.jsxs("label",{className:"code-field",children:["Stream replies",i.jsxs("select",{"aria-label":"Stream replies","aria-describedby":"code-stream-replies-help",value:e,disabled:s||l,onChange:d=>t(d.target.value),children:[i.jsx("option",{value:"gateway_default",children:Gx(a)}),i.jsx("option",{value:"on",children:"On"}),i.jsx("option",{value:"off",children:"Off"})]})]}),i.jsx("p",{id:"code-stream-replies-help",className:"code-field-help","data-streaming":a.status,children:u})]})}function wb(e,t){return e?t?"A run is in progress.":null:"Connect to a gateway first."}function vb(e){return i.jsx(Ps,{id:"code-workflow-all",className:"code-workflow-all",variant:"sm",action:"show-all-workflows",ariaLabel:"Show all workflows",label:i.jsxs(i.Fragment,{children:[i.jsx("span",{className:"code-workflow-all__long",children:"Show all workflows"}),i.jsx("span",{className:"code-workflow-all__short","aria-hidden":"true",children:"All"})]}),hint:"List workflows that are not coding agents too",checked:e.checked,unavailableReason:wb(e.connected,e.locked),onChange:e.onChange})}const Qh=gp("voice and camera")??"Voice and camera are not supported in this browser (getUserMedia unavailable).";function _b(){var t;const e=globalThis.navigator;return typeof((t=e==null?void 0:e.mediaDevices)==null?void 0:t.getUserMedia)=="function"}function xb(e){var l;const t=globalThis.document;if(!t||!t.body||typeof t.execCommand!="function")return!1;const s=t.createElement("textarea");s.value=e,s.setAttribute("readonly",""),s.style.position="fixed",s.style.top="0",s.style.left="-9999px",s.style.opacity="0";const a=t.activeElement;t.body.appendChild(s);try{return s.select(),s.setSelectionRange(0,e.length),t.execCommand("copy")===!0}catch{return!1}finally{t.body.removeChild(s);try{(l=a==null?void 0:a.focus)==null||l.call(a)}catch{}}}async function bb(e){var a;const t=String(e??""),s=globalThis.navigator;if(typeof((a=s==null?void 0:s.clipboard)==null?void 0:a.writeText)=="function")try{return await s.clipboard.writeText(t),!0}catch{}return xb(t)}async function kb(e){const t=String(e??"");return t?bb(t):!1}const jb=3,Yh=["KB","MB","GB","TB"];function Pa(e){const t=Math.max(0,Number(e)||0);if(t<1024)return`${t} B`;let s=t/1024,a=0;for(;s>=1024&&a<Yh.length-1;)s/=1024,a+=1;return`${s<10?Math.round(s*10)/10:Math.round(s)} ${Yh[a]}`}function Xh(e){return`${Math.round(e).toLocaleString("en-US")} bytes`}function km(e,t){if(!t||!(t>0)||e.size<=t)return null;let s=Pa(e.size),a=Pa(t);return s===a&&(s=Xh(e.size),a=Xh(t)),`${e.name||"This file"} is ${s}; the gateway accepts files up to ${a}.`}function Sb(e){return`Upload failed: ${String(e||"").replace(/^attachments_upload failed:?\s*/i,"").trim()||"the gateway did not say why"}`}function Nb(e,t,s){return e.map(a=>{const l=km(a,t);return{id:s(),file:a,name:a.name||"Untitled file",size:a.size,status:l?"refused":"queued",...l?{message:l}:{}}})}async function Cb(e,t,s){let a=0;const l=Array.from({length:Math.max(1,Math.min(Math.floor(t)||1,e.length))},async()=>{for(;a<e.length;){const u=e[a];a+=1,await s(u)}});await Promise.all(l)}function al(e){return`${e} ${e===1?"file":"files"}`}function Zh(e,t){const s=[];return e&&s.push(`${al(e)} attached`),t&&s.push(`${al(t)} could not be attached`),s.join(", ")}function Eb(e){const t=e.filter(l=>l.status==="queued"||l.status==="uploading").length;if(t)return`Wait for ${al(t)} to finish uploading.`;const s=e.filter(l=>l.status==="failed"||l.status==="refused");if(!s.length)return null;const a=s.some(l=>l.status==="failed");return s.length===1?`"${s[0].name}" was not attached. ${a?"Retry or remove":"Remove"} it before sending.`:`${al(s.length)} were not attached. ${a?"Retry or remove":"Remove"} them before sending.`}const qh=1024*1024,$b="1 MiB",ep=e=>Se(`runs/${encodeURIComponent(e)}/workspace`),bu=(e,t)=>fetch(e,{...t,credentials:"same-origin"}),Ab=new Set("txt log csv tsv py js mjs cjs ts tsx jsx rs go java kt c h cc cpp hpp cs rb php swift sh bash zsh fish ps1 toml yaml yml ini cfg conf env xml css scss less sql graphql proto gradle make mk dockerfile gitignore lock r jl lua pl ex exs erl hs ml vue svelte tex rst adoc org diff patch".split(" ")),Tb=new Set("png jpg jpeg gif webp bmp ico avif svg".split(" "));function Rb(e){const t=e.split("/").pop()||e,s=t.lastIndexOf(".");return s>0?t.slice(s+1).toLowerCase():t.toLowerCase()}function tp(e,t=""){const s=Rb(e),a=t.split(";",1)[0].trim().toLowerCase();return s==="md"||s==="markdown"||a==="text/markdown"?"markdown":s==="json"||s==="jsonl"||a==="application/json"||a.endsWith("+json")?s==="jsonl"?"text":"json":Tb.has(s)||a.startsWith("image/")?"image":s==="html"||s==="htm"||a==="text/html"?"html":Ab.has(s)||a.startsWith("text/")||["application/javascript","application/xml","application/x-yaml","application/toml"].includes(a)?"text":"binary"}function Ib(e){var t;return e.open_supported===!0&&((t=e.host)==null?void 0:t.caller_is_this_machine)===!0}function Mb({info:e,onCopy:t,onOpen:s,opening:a}){var u,d;const l=((u=e.host)==null?void 0:u.caller_is_this_machine)!==!0;return i.jsxs("div",{className:"code-session-workspace",children:[i.jsxs("div",{className:"code-session-workspace-path",children:[i.jsx("code",{title:e.workspace_root,children:e.workspace_root}),i.jsx("button",{className:"code-icon-button","aria-label":"Copy workspace path",title:"Copy path",onClick:t,children:i.jsx(ie,{name:"copy",size:13})})]}),l?i.jsxs("p",{className:"code-field-help",children:["on the gateway host ",((d=e.host)==null?void 0:d.hostname)||"(hostname not reported)"]}):null,e.exists?null:i.jsx("p",{className:"code-field-help",children:"This folder does not exist yet. It appears when the workflow writes its first file."}),Ib(e)?i.jsxs("button",{className:"code-subtle-button",onClick:s,disabled:a,children:[i.jsx(ie,{name:"terminal",size:13}),i.jsx("span",{children:a?"Opening…":"Open folder"})]}):null]})}function np(e,t){return typeof e.size_bytes!="number"?null:km({name:e.name,size:e.size_bytes},t)}function Lb(e,t){return t?t.status==="refused"?`Not attached: ${t.message||"refused by the gateway's attachment policy"}`:`${e} is uploading; its chip in the message box shows when it is attached.`:`${e} was not queued for upload.`}function jm(e){const t=e.headers.get("content-range"),s=t?Number(t.split("/")[1]):NaN;if(Number.isFinite(s))return s;const a=Number(e.headers.get("content-length"));return e.status===200&&Number.isFinite(a)&&e.headers.has("content-length")?a:void 0}async function Pb(e,t,s){var g;const a=new TextDecoder;let l="",u=0;const d=(g=e.body)==null?void 0:g.getReader();if(d){for(;u<t;){const{done:y,value:v}=await d.read();if(y)break;const x=v.subarray(0,t-u);u+=x.length,l+=a.decode(x,{stream:!0})}await d.cancel().catch(()=>{})}const f=jm(e)??s,h=f!==void 0?f>u:u>=t;return{text:l,received:u,total:f,partial:h}}function Ob(e){return`Showing the first ${$b} of ${e!==void 0?fm(e):"a file of unknown size"}; download for the rest.`}function Db(e,t,s){const a=Se(`runs/${encodeURIComponent(t)}/workspace/content?`),l=s.split("/").slice(0,-1),u=h=>{if(/^[a-z][a-z0-9+.-]*:/i.test(h)||h.startsWith("/")||h.startsWith("#"))return null;const g=[...l];for(const y of h.split(/[?#]/,1)[0].split("/"))if(!(!y||y==="."))if(y===".."){if(!g.length)return null;g.pop()}else g.push(Fb(y));return g.length?Ma(t,g.join("/")):null},d=h=>{let g="",y=0;for(;y<h.length;){if(h[y]==="!"&&h[y+1]==="["){const v=h.indexOf("]",y+2);if(v!==-1&&h[v+1]==="("){const x=h.indexOf(")",v+2);if(x!==-1){const b=h.slice(y+2,v),k=h.slice(v+2,x).trim(),C=k.startsWith(a)?k:u(k);g+=C?`![${b}](${C})`:`[image: ${b||k}](${k})`,y=x+1;continue}}}g+=h[y],y+=1}return g};let f=!1;return e.split(`
71
- `).map(h=>/^\s*(```|~~~)/.test(h)?(f=!f,h):f?h:d(h)).join(`
72
- `)}function Fb(e){try{return decodeURIComponent(e)}catch{return e}}function zb({entry:e,url:t,state:s,onAttach:a,attaching:l}){return i.jsxs("div",{className:"code-file-preview","aria-label":`Preview of ${e.name}`,children:[i.jsxs("div",{className:"code-file-preview-head",children:[i.jsx("strong",{title:e.path,children:e.name}),i.jsx("a",{className:"code-text-button",href:t,download:e.name,children:"Download"}),i.jsx("button",{className:"code-text-button",onClick:a,disabled:l,children:l?"Attaching…":"Attach to conversation"})]}),s.status==="loading"?i.jsx("p",{className:"code-muted",role:"status",children:"Loading preview…"}):s.status==="error"?i.jsx("p",{className:"code-error-text",role:"alert",children:s.message}):s.status==="ready"?i.jsxs(i.Fragment,{children:[s.partial?i.jsx("p",{className:"code-field-help",role:"status",children:Ob(s.total)}):null,s.kind==="image"?i.jsx("img",{className:"code-file-preview-image",src:t,alt:e.name}):s.kind==="markdown"?i.jsx(Xp,{text:s.text||""}):s.kind==="json"?i.jsx(Wb,{text:s.text||""}):s.kind==="binary"?i.jsx("p",{className:"code-field-help",children:"No preview for this file type. Use Download to open it."}):i.jsx("pre",{className:"code-file-preview-text",children:s.text})]}):null]})}function Wb({text:e}){try{return i.jsx(Is,{value:JSON.parse(e),collapseAfterDepth:2})}catch(t){return i.jsxs(i.Fragment,{children:[i.jsxs("p",{className:"code-field-help",children:["Not valid JSON (",xt(t),"); shown as text."]}),i.jsx("pre",{className:"code-file-preview-text",children:e})]})}}function Ub({runId:e,enabled:t,refreshKey:s,maxAttachmentBytes:a,onAttachFiles:l,heading:u="Conversation workspace"}){const[d,f]=w.useState(null),[h,g]=w.useState(""),[y,v]=w.useState(0),[x,b]=w.useState(""),[k,C]=w.useState(!1),[S,A]=w.useState(null),[$,T]=w.useState({status:"idle"}),[j,L]=w.useState(!1),z=w.useCallback(P=>A(P),[]);if(w.useEffect(()=>{A(null)},[e]),w.useEffect(()=>{if(f(null),g(""),!t||!e)return;const P=new AbortController;return dt(ep(e),{signal:P.signal}).then(ce=>f(ce)).catch(ce=>{P.signal.aborted||g(xt(ce))}),()=>P.abort()},[t,e,y]),w.useEffect(()=>{if(!S||!e){T({status:"idle"});return}if(tp(S.name)==="image"){T({status:"ready",kind:"image",partial:!1});return}const ce=new AbortController;return T({status:"loading"}),fetch(Ma(e,S.path),{credentials:"same-origin",signal:ce.signal,headers:{Range:`bytes=0-${qh-1}`}}).then(async re=>{var J;if(!re.ok)throw new Error(`Preview failed (${re.status}): ${await re.text()||re.statusText}`);const H=tp(S.name,re.headers.get("content-type")||"");if(H==="binary"||H==="image"){await((J=re.body)==null?void 0:J.cancel().catch(()=>{})),T({status:"ready",kind:H,partial:!1});return}const W=await Pb(re,qh,S.size_bytes);T({status:"ready",kind:H,text:H==="markdown"?Db(W.text,e,S.path):W.text,partial:W.partial,total:W.total})}).catch(re=>{ce.signal.aborted||T({status:"error",message:xt(re)})}),()=>ce.abort()},[e,S,s]),!e)return i.jsxs("div",{className:"code-pane-empty",children:[i.jsx(ie,{name:"terminal",size:28}),i.jsx("p",{children:"This conversation's files appear here."}),i.jsx("small",{children:"Start a conversation; the files its workflow creates and edits are listed and previewed here."})]});const V=async()=>{if(!S)return;b("");const P=np(S,a);if(P){b(`Not attached: ${P}`);return}L(!0);try{const ce=new AbortController,re=await fetch(Ma(e,S.path),{credentials:"same-origin",signal:ce.signal});if(!re.ok)throw new Error(`Could not read ${S.name} (${re.status}): ${await re.text()}`);const H=np({...S,size_bytes:jm(re)},a);if(H){ce.abort(),b(`Not attached: ${H}`);return}const W=await re.blob(),[J]=l([new File([W],S.name,{type:W.type})]);b(Lb(S.name,J))}catch(ce){b(xt(ce))}finally{L(!1)}};return i.jsxs(i.Fragment,{children:[h?i.jsxs("div",{className:"code-inline-error",role:"alert",children:["Workspace unavailable: ",h,i.jsx("button",{onClick:()=>v(P=>P+1),children:"Retry"})]}):null,d?i.jsx(Mb,{info:d,opening:k,onCopy:()=>{kb(d.workspace_root).then(P=>b(P?"Path copied.":"Could not copy; select the path instead."))},onOpen:()=>{C(!0),b(""),dt(`${ep(e)}/open`,{method:"POST"}).then(()=>b("Folder opened on this machine.")).catch(P=>b(`Open folder failed: ${xt(P)}`)).finally(()=>C(!1))}}):null,x?i.jsx("p",{className:"code-field-help",role:"status",children:x}):null,t?i.jsx(pm,{fetchGateway:bu,runId:e,title:u,onSelectFile:z,selectedPath:S==null?void 0:S.path,refreshKey:`${s??""}:${y}`,className:"code-workspace-browser"},e):null,S?i.jsx(zb,{entry:S,url:Ma(e,S.path),state:$,attaching:j,onAttach:()=>void V()}):null]})}const Bb=new Set(["abstract.progress","abstractcode.progress"]);function Ci(e){return!!e&&typeof e=="object"&&!Array.isArray(e)}function Rs(e){const t=typeof e=="number"?e:Number(e);return Number.isFinite(t)?t:null}function Vb(e){if(!Ci(e))return null;const t=Ci(e.effect)?e.effect:null;if(!t||String(t.type||"")!=="emit_event")return null;const s=Ci(t.payload)?t.payload:null,a=String((s==null?void 0:s.name)??(s==null?void 0:s.event_name)??"").trim();if(!Bb.has(a))return null;const l=Ci(e.result)?e.result:null,u=Ci(l==null?void 0:l.payload)?l==null?void 0:l.payload:null,d=Ci(s==null?void 0:s.payload)?s==null?void 0:s.payload:null,f=u||d;if(!f||String(f.kind||"")!=="llm")return null;const h=String(f.phase||"").trim();return h!=="prefill"&&h!=="generate"&&h!=="complete"?null:f}function Gb(e){let t=null;for(const s of e||[]){const a=Vb(s);a&&(t=a)}return!t||t.phase==="complete"||t.final===!0?null:t}function Ti(e){return Math.round(e).toLocaleString()}function Sm(e){if(!e||e.phase!=="prefill")return null;const t=Rs(e.prompt_tokens),s=Rs(e.prefill_processed_tokens);if(t===null||t<=0||s===null||s<0)return null;const a=Math.min(s,t),l=Math.min(99,Math.round(a/t*100));return{processed:a,total:t,percent:l}}function Nm(e){return`${Ti(e.processed)} / ${Ti(e.total)} tokens (${e.percent}%)`}function Hb(e){if(!e)return"";if(e.phase==="prefill"){const t=Sm(e);if(t)return`Prefill · ${Nm(t)}`;const s=Rs(e.prompt_tokens);if(s===null||s<=0)return"Prefill";const a=Rs(e.cached_tokens),l=Rs(e.fed_tokens),u=[];a!==null&&a>0&&u.push(`${Ti(a)} cached`),l!==null&&l>0&&u.push(`${Ti(l)} new`);const d=u.length?` (${u.join(", ")})`:"";return`Prefill · ${Ti(s)} tokens${d}`}if(e.phase==="generate"){const t=Rs(e.generated_tokens)??0,s=Math.round(t)===1?"token":"tokens",a=Rs(e.tokens_per_second),l=a!==null&&a>0?` · ${Math.round(a)} tok/s`:"";return`Generating · ${Ti(t)} ${s}${l}`}return""}function Kb(e){return Hb(Gb(e))}const Cm=new Set(["abstract.progress","abstractcode.progress"]),Jb=new Set(["abstract.status","abstractcode.status"]);function Me(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:null}function Bu(e){const t=Me(e);return!!(t&&t.$slim)}function pt(e){const t=typeof e=="number"?e:Number(e);return Number.isFinite(t)?t:null}function sn(e){return Math.round(e).toLocaleString("en-US")}function $t(e,t=120){const s=e.replace(/\s+/g," ").trim();return s.length>t?`${s.slice(0,t-1)}…`:s}function Ia(e,t=120){var l,u;if(e==null)return"";if(typeof e=="string")return $t(e,t);if(typeof e=="number"||typeof e=="boolean")return String(e);if(Array.isArray(e))return $t(e.length===0?"[]":`${e.length} ${e.length===1?"item":"items"}`,t);const s=Me(e);if(!s)return"";if(Bu(s)){const d=String(((l=s.$slim)==null?void 0:l.field)||""),f=pt((u=s.$slim)==null?void 0:u.bytes);return`${d||"payload"} stored${f?` · ${sn(f)} bytes`:""}`}const a=[];for(const[d,f]of Object.entries(s)){const h=typeof f=="string"?$t(f,60):typeof f=="number"||typeof f=="boolean"?String(f):Array.isArray(f)?`${f.length} items`:f==null?"":"{…}";if(h&&(a.push(`${d.replace(/_/g," ")} ${h}`),a.join(" · ").length>=t))break}return $t(a.join(" · "),t)}function ul(e){return`${e>=100?String(Math.round(e)):e.toFixed(e<1?2:1).replace(/\.0+$/,"")} s`}function Em(e,t){const s=Date.parse(String(e||"")),a=Date.parse(String(t||""));if(!Number.isFinite(s)||!Number.isFinite(a))return null;const l=(a-s)/1e3;return l>=0?l:null}function Qb(e){const t=String(e||""),s=/T(\d{2}:\d{2}:\d{2})/.exec(t);return s?s[1]:""}function $m(e){const t=String(e||"").trim();if(!t)return"";const s=t.split("/").pop()||t;return s.length>48?`${s.slice(0,47)}…`:s}function At(e,t=" · "){return e.filter(s=>!!s).join(t)}const rp="visual_react_agent_";function Yb(e){if(!/^[A-Za-z0-9_-]{8,}$/.test(e))return null;try{const t=e.replace(/-/g,"+").replace(/_/g,"/"),s=atob(t+"=".repeat((4-t.length%4)%4));return!/^[ -~]{3,}$/.test(s)||!/[a-z]/i.test(s)?null:s}catch{return null}}function Xb(e){const t=String(e||"").trim();if(!t)return{name:"",node:""};const s=/^([^@]+)@([^:]+)(?::(.+))?$/.exec(t);if(s)return{name:s[1],node:s[3]||""};if(t.startsWith(rp)){const a=t.slice(rp.length),l=/^(.*)_(\d+)_(\d+)_(\d+)_([0-9a-f]{6,12})_(.+)$/.exec(a);if(l){let u=l[1];if(u.includes("__")){const d=u.split("__").filter(Boolean);for(let f=d.length-1;f>=0;f-=1){const h=Yb(d[f]);if(h&&h.length>3){u=h;break}}}return{name:u,node:l[6]}}return{name:a,node:""}}return{name:t,node:""}}function Zb(e){var s;if(!Array.isArray(e)||!e.length)return"";const t=new Map;for(const a of e){const l=String(((s=Me(a))==null?void 0:s.name)||"").trim()||"tool";t.set(l,(t.get(l)||0)+1)}return[...t.entries()].map(([a,l])=>l>1?`${a} ×${l}`:a).join(", ")}function qb(e){var f;const t=Me(e);if(!t)return null;const s=Me(t.effect);if(!s||String(s.type||"")!=="emit_event")return null;const a=Me(s.payload),l=String((a==null?void 0:a.name)??(a==null?void 0:a.event_name)??"").trim();if(!Cm.has(l))return null;const u=Me((f=Me(t.result))==null?void 0:f.payload),d=Me(a==null?void 0:a.payload);return u||d}function ek(e){if(!e.length)return"";const t=e[e.length-1];let s=null,a=null,l=null,u=null,d=null;for(const y of e)s=pt(y.prompt_tokens)??s,a=pt(y.cached_tokens)??a,l=pt(y.generated_tokens)??l,u=pt(y.tokens_per_second)??u,d=pt(y.elapsed_s)??d;if(t.final===!0||String(t.phase||"")==="complete")return At([s!==null?`${sn(s)} tokens in`:null,a!==null&&a>0?`${sn(a)} cached`:null,l!==null?`${sn(l)} out`:null,d!==null?ul(d):null,u!==null&&u>0?`${Math.round(u)} tok/s`:null]);const h=s!==null?`prefill ${sn(s)} tokens${a!==null&&a>0?` (${sn(a)} cached)`:""}`:"prefill";if(String(t.phase||"")==="prefill"){const y=Sm(t);return y?`prefill ${Nm(y)}`:h}const g=At([`generating ${sn(l??0)} ${Math.round(l??0)===1?"token":"tokens"}`,u!==null&&u>0?`${Math.round(u)} tok/s`:null]);return`${h} → ${g}`}function tk(e){if(!e.length)return"";const t=e[e.length-1],s=pt(t.step)??pt(t.index),a=pt(t.total)??pt(t.steps),l=pt(t.percent)??pt(t.progress),u=pt(t.frame),d=pt(t.elapsed_s);return At([typeof t.label=="string"?$t(t.label,60):null,typeof t.phase=="string"&&!t.label?$t(t.phase,40):null,s!==null?`step ${sn(s)}${a!==null?`/${sn(a)}`:""}`:null,u!==null?`frame ${sn(u)}`:null,l!==null?`${Math.round(l<=1?l*100:l)}%`:null,d!==null?ul(d):null])}function sp(e){return e.length?String(e[e.length-1].kind||"")==="llm"?ek(e):tk(e):""}function nk(e,t,s){var A;const a=String(e.provider||"").trim(),l=$m(e.model||(t==null?void 0:t.model)),u=At(["llm",a,l])||"llm call";if(!t){const $=Me(e.params)||{};return{title:u,detail:At([pt($.temperature)!==null?`temperature ${$.temperature}`:null,$.thinking?`thinking ${$.thinking}`:null,(A=Me($.speculation))!=null&&A.mode?`speculation ${Me($.speculation).mode}`:null])}}const d=Me(t.usage)||{},f=Me(t.metadata)||{},h=Me(f.prompt_cache)||{},g=Me(f.performance)||{},y=pt(d.prompt_tokens)??pt(d.input_tokens),v=pt(d.completion_tokens)??pt(d.output_tokens),x=pt(h.cached_tokens),b=String(h.outcome||"").trim(),k=Em(s.started_at,s.ended_at),C=pt(g.generation_tokens_per_second),S=Array.isArray(t.tool_calls)?t.tool_calls.length:0;return{title:u,detail:At([y!==null?`${sn(y)} tokens in`:null,x!==null&&x>0?`${sn(x)} cached`:b?`${b} cache`:null,v!==null?`${sn(v)} out`:null,k!==null?ul(k):null,C!==null&&C>0?`${Math.round(C)} tok/s`:null,S?`${S} tool ${S===1?"call":"calls"}`:null])}}function rk(e,t){if(t.length<=60)return $t(t,60);if(e==="url")try{const s=new URL(t),a=s.pathname.split("/").filter(Boolean).pop()||"";return $t(`${s.host}${a?` · …/${a}`:""}`,72)}catch{}if(e==="file path"||e==="path"){const s=t.split(/[\\/]/).pop()||t;return $t(`${s} · ${t.slice(0,24)}…`,60)}return $t(t,60)}function sk(e,t){const s=Array.isArray(e.tool_calls)?e.tool_calls:[],a=Zb(s),l=Me(s[0]),u=l?em(l.arguments):{label:"",value:""},d=Array.isArray(t==null?void 0:t.results)?t.results:[],f=d.filter(g=>{var y;return((y=Me(g))==null?void 0:y.success)===!0}).length,h=d.length-f;return{title:At(["tools",a||"tool call"]),detail:At([u.value?`${u.label} ${rk(u.label,u.value)}`:null,d.length?`${f} ok`:null,h>0?`${h} failed`:null])}}function ik(e,t){var g,y;const{name:s,node:a}=Xb(e.workflow_id),l=Me(e.vars),u=l&&!Bu(l)?l:null,d=Me(u==null?void 0:u.context),f=typeof(d==null?void 0:d.task)=="string"?d.task:typeof(u==null?void 0:u.request)=="string"?u.request:"",h=String(((y=Me((g=Me(t==null?void 0:t.wait))==null?void 0:g.details))==null?void 0:y.sub_run_id)||"").slice(0,8);return u&&typeof u.state=="string"&&!d?{title:"subflow · status",detail:At([$t(u.state,80),h&&`run ${h}`])}:f?{title:"subflow · agent loop",detail:At([s,$t(f,90),h&&`run ${h}`])}:{title:At(["subflow",s||"workflow"]),detail:At([a,u?Ia(u,80):null,h&&`run ${h}`])}}function ak(e,t){const s=e.until,a=Em(t.started_at,s),l=Qb(s);return{title:a!==null?`wait · delay ${ul(a)}`:`wait · until ${l}`,detail:At([a!==null&&l?`until ${l}`:null,e.resume_to_node?`resumes at ${e.resume_to_node}`:null])}}function ip(e){var f;const t=Me(e)||{},s=Me(t.effect),a=String((s==null?void 0:s.type)||"").trim(),l=Me(s==null?void 0:s.payload)||{},u=Me(t.result);if(a==="emit_event"){const h=String(l.name??l.event_name??"").trim();if(Cm.has(h))return{kind:"progress",title:"progress",detail:"",isProgress:!0,isStatus:!1,isResume:!1,hidden:!0};if(Jb.has(h))return{kind:"event",title:"status",detail:Ia(l.payload,80),isProgress:!1,isStatus:!0,isResume:!1,hidden:!0};const g=String(l.scope||"").trim();return{kind:"event",title:`event · ${h||"unnamed"}${g?` (${g})`:""}`,detail:Ia(l.payload??(u==null?void 0:u.payload),110),isProgress:!1,isStatus:!1,isResume:!1,hidden:!1}}if(a==="resume")return{kind:"step",title:"resume",detail:String(l.wait_reason||""),isProgress:!1,isStatus:!1,isResume:!0,hidden:!0};const d={isProgress:!1,isStatus:!1,isResume:!1,hidden:!1};if(a==="llm_call")return{kind:"llm",...nk(l,u,t),...d};if(a==="tool_calls")return{kind:"tools",...sk(l,u),...d};if(a==="start_subworkflow")return{kind:"subflow",...ik(l,u),...d};if(a==="wait_until")return{kind:"wait",...ak(l,t),...d};if(a==="wait_event")return{kind:"wait",title:"wait · event",detail:At([typeof l.prompt=="string"?$t(l.prompt,90):null,!l.prompt&&l.wait_key?$t(String(l.wait_key),70):null]),...d};if(a==="ask_user")return{kind:"ask",title:"ask · your input",detail:$t(String(l.prompt||((f=Me(u==null?void 0:u.wait))==null?void 0:f.prompt)||"").split(`
73
- `)[0],110),...d};if(a==="answer_user")return{kind:"message",title:"message",detail:$t(String(l.message||""),110),...d};if(!a){if((u==null?void 0:u.completed)===!0){const h=Me(u.output)||{},g=Me(h.stop_reason)||{},y=pt(h.iterations),v=At([String(g.code||h.outcome||"").replace(/_/g," ")||null,y!==null?`${sn(y)} ${y===1?"iteration":"iterations"}`:null]),x=[h.answer,h.response,h.result].find(b=>typeof b=="string"&&b.trim());return{kind:"run",title:"run finished",detail:v||(typeof x=="string"?$t(x,110):Ia(h,110)),...d}}return{kind:"step",title:String(t.node_id||"workflow step"),detail:"",...d}}return{kind:"step",title:a.replace(/_/g," "),detail:Ia(l,110),...d}}function ok(e,t,s){var u,d;const a=Me(e)||{},l=String(a.status||"").trim();if(a.error)return{status:"failed",statusLabel:"failed"};if(l==="failed")return{status:"failed",statusLabel:"failed"};if(l==="completed")return{status:"completed",statusLabel:"completed"};if(l==="waiting"){if(s)return{status:"completed",statusLabel:"completed"};const f=Me((u=Me(a.result))==null?void 0:u.wait);return String(((d=Me(f==null?void 0:f.details))==null?void 0:d.mode)||"")==="approval_required"?{status:"waiting",statusLabel:"approval needed"}:t==="subflow"?{status:"waiting",statusLabel:"waiting for subflow"}:t==="ask"?{status:"waiting",statusLabel:"waiting for you"}:t==="wait"?{status:"waiting",statusLabel:String((f==null?void 0:f.reason)||"")==="until"?"waiting":"waiting for event"}:{status:"waiting",statusLabel:"waiting"}}return l==="started"?{status:"started",statusLabel:"running"}:{status:l||"started",statusLabel:l||"running"}}function lk(e){var l;const t=Me(e.record)||{},s=String(((l=Me(t.effect))==null?void 0:l.type)||"(none)"),a=String(t.idempotency_key||t.step_id||e.cursor);return`${e.runId}|${s}|${a}|${t.attempt??1}`}function ck(e){var h;const t=e.map(g=>Me(g.record)||{}),s=t[t.length-1]||{},a={};for(const g of t){const y=Me((h=Me(g.effect))==null?void 0:h.payload);if(y)for(const[v,x]of Object.entries(y))Bu(x)&&v in a||(a[v]=x)}let l=null,u=null,d=null,f=null;for(const g of t)g.result!==null&&g.result!==void 0&&(l=g.result),g.error!==null&&g.error!==void 0&&(u=g.error),!d&&g.started_at&&(d=g.started_at),g.ended_at&&(f=g.ended_at);return{...s,effect:s.effect?{...s.effect,payload:a}:s.effect,result:l,error:u,started_at:d,ended_at:f}}function uk(e){var s,a;const t=[];for(const l of e){const u=Me((a=Me((s=Me(l.record))==null?void 0:s.result))==null?void 0:a.wait),d=String((u==null?void 0:u.wait_key)||"").trim();d&&t.push(d)}return t}function dk(e,t){return`${e}|${String(t.step_id||t.node_id||"")}`}function fk(e,t){const s=new Map;for(const u of t){const d=qb(u.record);if(!d)continue;const f=dk(u.runId,d),h=s.get(f)||{entries:[],payloads:[]};h.entries.push(u),h.payloads.push(d),s.set(f,h)}if(!s.size)return e.map(u=>({...u}));const a=new Set,l=e.map(u=>{const d=u.stepIds.map(b=>`${u.runId}|${b}`).filter(b=>s.has(b));if(!d.length)return{...u};const f=[],h=[];for(const b of d)a.add(b),f.push(...s.get(b).payloads),h.push(...s.get(b).entries);const g=sp(f),y=f[f.length-1],v=y.final===!0||String(y.phase||"")==="complete",x=!(v&&u.status==="completed"&&u.detail);return{...u,progress:x?g:"",progressFinal:v,progressEvents:h.map(b=>Me(b.record)||{})}});for(const[u,d]of s.entries()){if(a.has(u))continue;const f=d.payloads,h=f[f.length-1],g=String(h.kind||""),y=d.entries[0];l.push({key:`progress:${u}`,runId:y.runId,cursor:d.entries[d.entries.length-1].cursor,kind:"progress",title:At(g==="llm"?["llm",String(h.provider||""),$m(h.model)]:["progress",g]),detail:"",status:h.final===!0||String(h.phase||"")==="complete"?"completed":"started",statusLabel:h.final===!0||String(h.phase||"")==="complete"?"completed":"running",nodeId:String(h.node_id||""),stepIds:[String(h.step_id||"")],progress:sp(f),progressFinal:h.final===!0||String(h.phase||"")==="complete",entries:d.entries,progressEvents:d.entries.map(v=>Me(v.record)||{}),merged:Me(d.entries[d.entries.length-1].record)||{}})}return l}function hk(e){var f,h,g;const t=new Map,s=[],a=[],l=[];for(const y of e||[]){const v=ip(y.record);if(v.isProgress){l.push(y);continue}if(v.isStatus)continue;if(v.isResume){const b=String(((g=(h=Me((f=Me(y.record))==null?void 0:f.effect))==null?void 0:h.payload)==null?void 0:g.wait_key)||"").trim();b&&a.push(b);continue}const x=lk(y);t.has(x)||(t.set(x,[]),s.push(x)),t.get(x).push(y)}const u=new Set(a),d=s.map(y=>{const v=t.get(y),x=ck(v),b=ip(x),k=uk(v).some(S=>u.has(S)),C=ok(x,b.kind,k);return{key:y,runId:v[0].runId,cursor:v[v.length-1].cursor,kind:b.kind,title:b.title,detail:b.detail,status:C.status,statusLabel:C.statusLabel,nodeId:String(x.node_id||""),stepIds:[...new Set(v.map(S=>{var A;return String(((A=Me(S.record))==null?void 0:A.step_id)||"")}).filter(Boolean))],progress:"",progressFinal:!1,entries:v,progressEvents:[],merged:x}});return fk(d,l)}function pk({tab:e,onTab:t,policy:s,runId:a,records:l,enabled:u,isAdmin:d,refreshKey:f,onAttach:h,onAttachFiles:g,onClose:y}){const[v,x]=w.useState("session"),b=w.useMemo(()=>hk(l),[l]);return i.jsxs("aside",{className:"code-inspector","aria-label":"Workspace inspector",children:[i.jsxs("div",{className:"code-inspector-heading",children:[i.jsx("span",{children:"WORKSPACE"}),i.jsx("button",{className:"code-icon-button","aria-label":"Close workspace inspector",onClick:y,children:i.jsx(ie,{name:"x",size:15})})]}),i.jsx("div",{className:"code-inspector-tabs",role:"tablist","aria-label":"Workspace views",onKeyDown:Uu,children:["files","activity","artifacts"].map(k=>i.jsxs("button",{id:`inspector-tab-${k}`,role:"tab",tabIndex:e===k?0:-1,"aria-selected":e===k,"aria-controls":`inspector-panel-${k}`,onClick:()=>t(k),children:[k==="files"?"Files":k==="activity"?"Activity":"Artifacts",k==="activity"&&b.length?i.jsx("span",{children:b.length}):null]},k))}),i.jsx("div",{className:"code-inspector-content",id:`inspector-panel-${e}`,role:"tabpanel","aria-labelledby":`inspector-tab-${e}`,children:e==="files"?i.jsxs(i.Fragment,{children:[d?i.jsxs("div",{className:"code-files-mode",role:"group","aria-label":"Files source",children:[i.jsx("button",{"aria-pressed":v==="session",onClick:()=>x("session"),children:"This conversation"}),i.jsx("button",{"aria-pressed":v==="shared",onClick:()=>x("shared"),children:"Shared workspace (admin)"})]}):null,d&&v==="shared"?i.jsx(mk,{policy:s,enabled:u,runId:a,onAttach:h}):i.jsx(Ub,{runId:a,enabled:u,refreshKey:f,maxAttachmentBytes:s==null?void 0:s.maxAttachmentBytes,onAttachFiles:g})]}):e==="activity"?i.jsx(yk,{rows:b}):i.jsx(wk,{runId:a,enabled:u})}),i.jsxs("div",{className:"code-inspector-foot",children:[i.jsx(ie,{name:"server",size:14}),i.jsx("span",{children:"Access enforced by your gateway"})]})]})}function mk({policy:e,enabled:t,runId:s,onAttach:a}){const[l,u]=w.useState(""),[d,f]=w.useState(""),[h,g]=w.useState([]),[y,v]=w.useState(!1),[x,b]=w.useState(""),[k,C]=w.useState(""),[S,A]=w.useState(0),[$,T]=w.useState("");return w.useEffect(()=>{const j=new AbortController;if(g([]),b(""),C(""),!t||!e)return;v(!0);const L=window.setTimeout(()=>{const z=new URLSearchParams({limit:"100"});l.trim()?z.set("query",l.trim()):d&&z.set("path",d),dt(Se(`files/${l.trim()?"search":"list"}?${z}`),{signal:j.signal}).then(V=>{if(V.error)throw new Error(String(V.error));g(Array.isArray(V.items)?V.items:[]),(V.truncated||V.has_more)&&C("Showing the first 100 results. Search to narrow the list.")}).catch(V=>{j.signal.aborted||b(xt(V))}).finally(()=>{j.signal.aborted||v(!1)})},l?220:0);return()=>{window.clearTimeout(L),j.abort()}},[t,e,l,d,S,s]),i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"code-pane-intro",children:[i.jsx(ie,{name:"terminal",size:17}),i.jsxs("div",{children:[i.jsx("strong",{children:"Shared workspace (admin)"}),i.jsx("span",{children:d||"Authorized shared workspace"})]}),i.jsx("button",{className:"code-icon-button","aria-label":"Refresh files",onClick:()=>A(j=>j+1),disabled:!t,children:i.jsx(ie,{name:"refresh",size:14})})]}),i.jsx("input",{className:"code-search","aria-label":"Search workspace files",placeholder:"Search files…",value:l,onChange:j=>u(j.target.value),disabled:!t}),d?i.jsx("button",{className:"code-back",onClick:()=>{f(d.split("/").slice(0,-1).join("/")),u("")},children:"← Parent folder"}):null,t?null:i.jsx("p",{className:"code-pane-empty",children:"Connect to browse your workspace."}),y?i.jsx("p",{className:"code-muted",role:"status",children:"Loading files…"}):null,x?i.jsxs("div",{className:"code-inline-error",role:"alert",children:[x,i.jsx("button",{onClick:()=>A(j=>j+1),children:"Retry"})]}):null,k?i.jsx("p",{className:"code-field-help",role:"status",children:k}):null,i.jsx("ul",{className:"code-file-list",children:h.map(j=>{const L=j.kind==="folder"||j.is_dir||j.type==="directory"||j.type==="dir";return i.jsx("li",{children:i.jsxs("button",{title:L?`Open ${j.path}`:`Attach ${j.path} to the conversation`,disabled:!!$,onClick:async()=>{if(L){f(j.path),u("");return}T(j.path),b("");try{await a(j.path),C(`${j.name||j.path} attached.`)}catch(z){b(xt(z))}finally{T("")}},children:[i.jsx(ie,{name:L?"chevronRight":"edit",size:14}),i.jsx("span",{children:j.name||j.path}),$===j.path?i.jsx(ie,{name:"loader",size:13}):i.jsx("span",{className:"code-file-action",children:L?"Open":"+"})]})},j.path)})}),!y&&!x&&t&&!h.length?i.jsxs("div",{className:"code-pane-empty",children:[i.jsx(ie,{name:"terminal",size:28}),i.jsx("p",{children:l?"No matching files.":"No shared files yet."}),i.jsx("small",{children:l?"Try a shorter name or another folder.":"Browse files exposed by your gateway or attach files from your device. Generated output is available in Artifacts."})]}):null]})}const gk={llm:"sparkle",tools:"terminal",subflow:"agent",event:"info",wait:"history",ask:"chat",message:"send",run:"playCircle",progress:"loader",step:"list"};function yk({rows:e}){return e.length?i.jsx("div",{className:"code-activity",children:e.map(t=>{const s=t.merged,a=s.effect||{};return i.jsxs("details",{className:`code-activity-row code-activity-row--${t.kind}`,children:[i.jsxs("summary",{children:[i.jsx("span",{className:"code-activity-icon","aria-hidden":"true",children:i.jsx(ie,{name:gk[t.kind],size:14})}),i.jsxs("span",{className:"code-activity-text",children:[i.jsx("span",{className:"code-activity-title",children:t.title}),t.detail?i.jsx("span",{className:"code-activity-sub",children:t.detail}):null,t.progress?i.jsx("span",{className:"code-activity-progress",children:t.progress}):null]}),i.jsx("span",{className:`code-step-dot is-${t.status}`}),i.jsx("small",{children:t.statusLabel})]}),i.jsxs("div",{className:"code-activity-detail",children:[i.jsxs("div",{className:"code-field-help",children:[t.nodeId?`${t.nodeId} · `:"","run ",t.runId.slice(0,8)," ","· ",t.entries.length," ",t.entries.length===1?"record":"records",t.progressEvents.length?` · ${t.progressEvents.length} progress`:""]}),i.jsx(Is,{value:{input:a.payload,result:s.result,error:s.error,records:t.entries.map(l=>l.record),...t.progressEvents.length?{progress:t.progressEvents}:{}},collapseAfterDepth:2})]})]},t.key)})}):i.jsxs("div",{className:"code-pane-empty",children:[i.jsx(ie,{name:"playCircle",size:28}),i.jsx("p",{children:"Follow the work as it happens."}),i.jsx("small",{children:"Workflow steps, tool calls, and results will appear here."})]})}function wk({runId:e,enabled:t}){const[s,a]=w.useState([]),[l,u]=w.useState(""),[d,f]=w.useState(0);return w.useEffect(()=>{if(a([]),u(""),!e||!t)return;const h=new AbortController;return dt(Se(`runs/${encodeURIComponent(e)}/artifacts?limit=200`),{signal:h.signal}).then(g=>a(Array.isArray(g.items)?g.items:Array.isArray(g.artifacts)?g.artifacts:[])).catch(g=>{h.signal.aborted||u(xt(g))}),()=>h.abort()},[e,t,d]),i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"code-pane-intro",children:[i.jsx(ie,{name:"paperclip",size:17}),i.jsxs("div",{children:[i.jsx("strong",{children:"Run artifacts"}),i.jsx("span",{children:"Files and generated output"})]}),i.jsx("button",{className:"code-icon-button","aria-label":"Refresh artifacts",onClick:()=>f(h=>h+1),children:i.jsx(ie,{name:"refresh",size:14})})]}),l?i.jsx("p",{role:"alert",className:"code-error-text",children:l}):null,s.map(h=>{var v;const g=h.artifact_id||h.id,y=h.filename||((v=h.metadata)==null?void 0:v.filename)||g;return i.jsxs("button",{className:"code-artifact",onClick:()=>{Ex(e,g,y).catch(x=>u(xt(x)))},children:[i.jsx(ie,{name:"download",size:16}),i.jsxs("span",{children:[i.jsx("strong",{children:y}),i.jsx("small",{children:h.content_type||"Artifact"})]})]},g)}),!s.length&&!l?i.jsxs("div",{className:"code-pane-empty",children:[i.jsx(ie,{name:"paperclip",size:28}),i.jsx("p",{children:"Everything the workflow creates."}),i.jsx("small",{children:"Generated files and attachments are stored by the gateway and can be downloaded here."})]}):null]})}const vk=[["Gateway","checking…"]];function _k(e){return e?e.ok?gh(e.value):gh(null,e.status?`HTTP ${e.status}`:e.message):vk}const xk=3e4,Jo=50;function bk(){return _w({fetch:(e,t)=>fetch(e,{...t,credentials:"same-origin"}),baseUrl:"",headers:vm})}function kk(e){const t=String(e||"").trim();if(!t)return null;try{const s=new URL(t);return s.protocol!=="http:"&&s.protocol!=="https:"?null:`${s.origin}${s.pathname.replace(/\/+$/,"")}/console#users`}catch{return null}}function jk(e){var s;const t=(s=e==null?void 0:e.common)==null?void 0:s.automations;return t&&typeof t=="object"&&t.available===!0?{available:!0,reason:""}:t&&typeof t=="object"&&t.available===!1?{available:!1,reason:"This gateway has the Automations API turned off."}:{available:!1,reason:"This gateway does not advertise the Automations API (capabilities.contracts.common.automations). Update AbstractGateway (0.6.0 or later) to use automations."}}function Sk(e,t){return e===En?{flow_id:"@default",interface:Ri}:!(t!=null&&t.bundleId)||!t.flowId?null:{bundle_ref:t.bundleVersion?`${t.bundleId}@${t.bundleVersion}`:t.bundleId,flow_id:t.flowId}}function Nk(e,t=Date.now()){const s=e.attention.unseen_count>0||e.attention.pending_waits>0;return{id:e.automation_id,title:e.title,cadence:Eu(e.trigger),current:Tp(e),next:e.next_fire_at?`${Cr(e.next_fire_at)} (${Rp(e.next_fire_at,t)})`:e.status==="paused"?"none while paused":"none scheduled",attention:s?Ip(e):null,legacy:e.legacy===!0||e.capabilities.includes("legacy")}}function Ck(e,t){return t?e:e.filter(s=>s.status!=="archived")}function Ek(e,t){if(e==="ask_user"){if(typeof t.response!="string")throw new Error("An ask_user wait is answered with {response: string}.");return{response:t.response}}if(e==="tool_approval"){if(typeof t.approved!="boolean")throw new Error("A tool_approval wait is answered with {approved: true|false}.");return{approved:t.approved}}if(e==="event"){if(!("payload"in t))throw new Error("An event wait is answered with {payload}.");return{payload:t.payload}}throw new Error(`This wait has no known kind (${JSON.stringify(e)}); open its run to answer it.`)}function $k(e,t,s,a){return{command_id:e,run_id:t,type:"resume",payload:{wait_key:s,payload:a},client_id:"abstractcode-web"}}function Am(e,t){return`Discussion forked from run #${e}. It works in its own workspace ${t.workspace_root}; the automation's files are mounted read-only at ${t.mounted_workspace} for the file tools (shell commands are not sandboxed), and nothing is written back into the automation's session.`}function Sr(e){return Mu(e)?e:{status:0,code:"client_error",message:e&&typeof e=="object"&&"message"in e?String(e.message):String(e)}}function su(e,t){const s=new Map;for(const a of e)s.set(a.run_id,a);for(const a of t)s.set(a.run_id,a);return Array.from(s.values()).sort((a,l)=>l.index-a.index)}const Ak={items:[],loaded:!1,loading:!1,listError:null,error:null,showArchived:!1,selectedId:"",detail:null,triggerSources:[],busy:!1,notice:"",emailStatus:null};function Tk(e){return async(t,s,a)=>{await dt(Se("commands"),{method:"POST",body:JSON.stringify($k(e(),t,s,a))})}}class Rk{constructor(t,s,a=[1500,4e3]){mn(this,"state",{...Ak});mn(this,"listeners",new Set);mn(this,"listSeq",0);mn(this,"detailSeq",0);mn(this,"sourcesLoaded",!1);this.client=t,this.answerWaitVia=s,this.followupsMs=a}subscribe(t){return this.listeners.add(t),()=>{this.listeners.delete(t)}}set(t){this.state={...this.state,...t};for(const s of this.listeners)s()}async listAll(){const t=[];let s;for(let a=0;a<200;a+=1){const l=await this.client.listAutomations({...s?{cursor:s}:{},limit:Jo});if(t.push(...l.items),!l.next_cursor)return t;s=l.next_cursor}throw new Error("GET /api/gateway/automations kept returning next_cursor after 200 pages.")}async loadEmailStatus(){try{const t=await this.client.getMyEmail();this.set({emailStatus:t&&typeof t=="object"?t:null})}catch{this.set({emailStatus:null})}}async refresh(){const t=++this.listSeq;this.set({loading:!0});try{const s=await this.listAll();if(this.loadEmailStatus(),t!==this.listSeq)return;const a=this.state.detail,l=a?s.find(u=>u.automation_id===a.automationId):void 0;this.set({items:s,loaded:!0,loading:!1,listError:null,...a&&l?{detail:{...a,summary:l}}:{}}),a&&await this.reloadDetail(a.automationId)}catch(s){if(t!==this.listSeq)return;this.set({loading:!1,loaded:!0,listError:Sr(s)})}}setShowArchived(t){this.set({showArchived:t})}async select(t){var l;const s=t.trim(),a=++this.detailSeq;if(!s){this.set({selectedId:"",detail:null});return}this.set({selectedId:s,notice:"",error:null,...((l=this.state.detail)==null?void 0:l.automationId)!==s?{detail:null}:{}});try{const[u,d]=await Promise.all([this.client.getAutomation(s),this.client.listOccurrences(s,{limit:Jo})]);if(a!==this.detailSeq)return;const f=this.state.items.find(h=>h.automation_id===s);if(this.set({detail:{automationId:s,summary:f??u.summary,definition:u.definition,occurrences:su([],d.items),nextCursor:d.next_cursor}}),!this.sourcesLoaded){const h=await this.client.listTriggerSources();this.sourcesLoaded=!0,this.set({triggerSources:h.items})}}catch(u){if(a!==this.detailSeq)return;this.set({error:Sr(u)})}}async reloadDetail(t){const[s,a]=await Promise.all([this.client.getAutomation(t),this.client.listOccurrences(t,{limit:Jo})]),l=this.state.detail;if(!l||l.automationId!==t)return;const u=this.state.items.find(d=>d.automation_id===t);this.set({detail:{...l,summary:u??s.summary,definition:s.definition,occurrences:su(l.occurrences,a.items),nextCursor:l.occurrences.length>a.items.length?l.nextCursor:a.next_cursor}})}async loadMore(){const t=this.state.detail;if(!(!t||!t.nextCursor))try{const s=await this.client.listOccurrences(t.automationId,{cursor:t.nextCursor,limit:Jo}),a=this.state.detail;if(!a||a.automationId!==t.automationId)return;this.set({detail:{...a,occurrences:su(a.occurrences,s.items),nextCursor:s.next_cursor}})}catch(s){this.set({error:Sr(s)})}}async afterChange(){await this.refresh();for(const t of this.followupsMs)setTimeout(()=>void this.refresh(),t)}async busyCall(t){this.set({busy:!0});try{const s=await t();return await this.afterChange(),s}catch(s){throw Sr(s)}finally{this.set({busy:!1})}}command(t,s,a){return this.busyCall(()=>this.client.sendAutomationCommand(t,{type:s,...a?{command_id:a}:{}}))}revise(t,s,a,l){return this.busyCall(()=>this.client.reviseAutomation(t,{changes:s,...a!==null?{expected_revision:a}:{},...l?{command_id:l}:{}}))}async create(t){this.set({busy:!0,error:null});try{const s=await this.client.createAutomation(t);this.set({notice:`Automation created: ${s.summary.title}.`}),await this.refresh(),await this.select(s.automation_id);for(const a of this.followupsMs)setTimeout(()=>void this.refresh(),a);return s}catch(s){throw Sr(s)}finally{this.set({busy:!1})}}async discuss(t,s,a,l){this.set({busy:!0});try{const u=await this.client.discuss(t,{occurrence_index:s,prompt:a,...l?{request_id:l}:{}});return this.set({notice:Am(s,u)}),u}catch(u){throw Sr(u)}finally{this.set({busy:!1})}}async seen(t,s){try{await this.client.markSeen(t,s)}catch(a){throw Sr(a)}}answerWait(t,s,a){return this.busyCall(async()=>{var u;const l=(((u=this.state.detail)==null?void 0:u.occurrences)||[]).flatMap(d=>d.waits).find(d=>d.run_id===t&&d.wait_key===s);if(!l)throw new Error(`No loaded wait ${s} on run ${t}; reload the automation.`);await this.answerWaitVia(t,s,Ek(l.kind,a))})}rowControls(t){return nl(t,[],this.state.busy)}reportError(t){this.set({error:Sr(t)})}clearNotice(){this.set({notice:"",error:null})}}const Tm="abstractcode.automation.panels",Ea={occurrences:!0,folder:!0};function Ik(e){try{const t=e==null?void 0:e.getItem(Tm);if(!t)return{...Ea};const s=JSON.parse(t);if(!s||typeof s!="object")return{...Ea};const a=s;return{occurrences:typeof a.occurrences=="boolean"?a.occurrences:Ea.occurrences,folder:typeof a.folder=="boolean"?a.folder:Ea.folder}}catch{return{...Ea}}}function Mk(e,t){try{t==null||t.setItem(Tm,JSON.stringify(e))}catch{}}function Lk(e,t){return{...e,[t]:!e[t]}}function ap(){try{return typeof window<"u"?window.localStorage:null}catch{return null}}function Pk(){const[e,t]=w.useState(()=>Ik(ap())),s=w.useCallback(a=>{t(l=>{const u=Lk(l,a);return Mk(u,ap()),u})},[]);return[e,s]}const Vu=e=>({toggle:`code-detail-${e}-toggle`,region:`code-detail-${e}`});function Rm(e){const t=Vu(e.panel);return i.jsxs("button",{type:"button",className:"code-detail-toggle",id:t.toggle,"data-panel":e.panel,"aria-expanded":e.open,"aria-controls":t.region,onClick:e.onToggle,children:[i.jsx(ie,{name:"chevronDown",size:13}),i.jsx("span",{className:"code-detail-toggle__label",children:e.label}),typeof e.count=="number"?i.jsx("span",{className:"code-detail-toggle__count",children:e.count}):null]})}const Ok=".af-auto__timeline",Dk=".af-auto__more";function Fk(e,t,s){const a=(e==null?void 0:e.querySelector(Ok))??null;if(!a||!a.parentNode)return t.parentNode&&t.remove(),!1;a.id!==s&&(a.id=s);const l=(e==null?void 0:e.querySelector(Dk))??null,u=l&&l.parentNode===a.parentNode?l:a;return(t.parentNode!==u.parentNode||t.nextSibling!==u)&&u.parentNode.insertBefore(t,u),!0}function zk(e,t){const s=w.useMemo(()=>{if(typeof document>"u")return null;const u=document.createElement("div");return u.className="code-detail-head code-detail-head--occurrences",u},[]),[a,l]=w.useState(!1);return w.useLayoutEffect(()=>{const u=e.current;if(!s||!u||!t){s==null||s.remove(),l(!1);return}const d=Vu("occurrences").region,f=()=>l(Fk(u,s,d));f();const h=new MutationObserver(f);return h.observe(u,{childList:!0,subtree:!0}),()=>{h.disconnect(),s.remove()}},[e,s,t]),a?s:null}function Wk(e,t){const s=w.useMemo(()=>new Rk(bk(),Tk(es)),[e]),a=w.useSyncExternalStore(d=>s.subscribe(d),()=>s.state),[l,u]=w.useState(()=>typeof document>"u"||document.visibilityState!=="hidden");return w.useEffect(()=>{const d=()=>u(document.visibilityState!=="hidden");return document.addEventListener("visibilitychange",d),()=>document.removeEventListener("visibilitychange",d)},[]),w.useEffect(()=>{if(!e||!t||!l)return;s.refresh();const d=window.setInterval(()=>void s.refresh(),xk);return()=>window.clearInterval(d)},[s,e,t,l]),{ctl:s,state:a}}function Im({error:e}){if(!e)return null;const t=Iu(e);return i.jsxs("p",{className:"code-inline-error",role:"alert","data-code":e.code,children:[i.jsx("strong",{children:t.title})," ",t.detail]})}function Uk(e){const t=e.open??!0,s=Lu("automations"),a=e.state,l=Ck(a.items,a.showArchived),u=a.items.filter(f=>f.status==="archived").length,d=a.items.reduce((f,h)=>f+h.attention.pending_waits+h.attention.unseen_count,0);return i.jsxs("section",{className:"code-panel code-automations","aria-label":"Automations","data-open":t?"true":"false","data-fill":t&&e.fill?"true":void 0,children:[i.jsx(Up,{panel:"automations",open:t,onToggle:()=>{var f;return(f=e.onToggle)==null?void 0:f.call(e)},label:i.jsxs(i.Fragment,{children:["AUTOMATIONS",d?i.jsx("span",{className:"code-auto-badge","data-field":"attention-total",children:d}):null]}),actions:i.jsxs("span",{className:"code-auto-actions",children:[i.jsx("button",{className:"code-icon-button","aria-label":"New automation",title:"New automation (runs the toolbar's workflow on a schedule)",disabled:!e.available.available,onClick:e.onNew,children:i.jsx(ie,{name:"plus",size:13})}),i.jsx("button",{className:"code-icon-button","aria-label":"Refresh automations",disabled:!e.available.available||a.loading,onClick:e.onRefresh,children:i.jsx(ie,{name:"refresh",size:13})})]})}),i.jsxs("div",{className:"code-auto-rows",id:s.region,role:"region","aria-labelledby":s.toggle,hidden:!t,children:[e.available.available?null:i.jsx("p",{className:"code-history-empty",role:"note","data-unavailable":"true",children:e.available.reason}),i.jsx(Im,{error:a.listError}),e.available.available&&a.loaded&&!a.items.length?i.jsx("p",{className:"code-history-empty",children:"No automations yet. + runs the toolbar's workflow on a schedule."}):null,l.map(f=>{const h=Nk(f,e.nowMs),g=e.selectedId===f.automation_id;return i.jsxs("button",{className:`code-session code-auto-row${g?" is-selected":""}`,"aria-current":g?"page":void 0,"data-automation-id":f.automation_id,"data-status":f.status,title:`${h.title} — ${h.cadence}`,onClick:()=>e.onSelect(f.automation_id),children:[i.jsx(ie,{name:"history",size:15}),i.jsxs("span",{children:[i.jsx("strong",{children:h.title}),i.jsxs("small",{children:[i.jsx("span",{"data-field":"state",children:i.jsx(Fp,{status:f.status})})," ",h.cadence,h.legacy?" · legacy schedule":""]}),h.current?i.jsxs("small",{"data-field":"current",children:["now: ",h.current]}):null,i.jsxs("small",{"data-field":"next",children:["next: ",h.next]}),h.attention?i.jsx("small",{className:"code-auto-attention","data-field":"attention",children:h.attention}):null]})]},f.automation_id)}),u>0?i.jsx(Ps,{className:"code-auto-archived",variant:"sm",action:"show-archived",label:`Show archived (${u})`,checked:a.showArchived,onChange:e.onShowArchived}):null]})]})}function Bk(e,t){const s=e.state.detail;if(!s)return null;const a=s.automationId;return{summary:s.summary,...s.definition?{definition:s.definition}:{},occurrences:s.occurrences,triggerSources:e.state.triggerSources,busy:e.state.busy,...e.state.error?{error:e.state.error}:{},onRevise:(l,u,d)=>e.revise(a,l,u,d==null?void 0:d.command_id),onCommand:(l,u,d)=>e.command(a,l,d==null?void 0:d.command_id),onDiscuss:async(l,u,d)=>{const f=await e.discuss(a,l,u,d==null?void 0:d.request_id);return t.openConversation(f.session_id,f.run_id,Am(l,f)),f},onSeen:l=>e.seen(a,l),onLoadMore:()=>void e.loadMore(),onOpenRun:l=>t.openRun(l),onOpenWorkspace:l=>t.openWorkspace(l),onAnswerWait:(l,u,d)=>e.answerWait(l,u,d),emailStatus:e.state.emailStatus,...t.openMyEmail?{onOpenMyEmail:()=>{var l;return(l=t.openMyEmail)==null?void 0:l.call(t)}}:{}}}function Vk(e){const t=e.last_occurrence,s=e.current_occurrence;return[e.occurrence_count,t?`${t.index}:${t.status}:${t.finished_at??""}`:"",s?`${s.index}:${s.status}`:""].join("|")}function op(e,t,s){if(t===e)return"Automation folder";const a=s.find(l=>l.run_id===t);return a?`Run #${a.index} folder`:"Run folder"}function Gk(e){const t=e.panels.folder,s=Vu("folder");return i.jsxs("div",{className:"code-auto-folder-section","data-open":t?"true":"false","data-folder":e.own?"automation":"run",children:[i.jsx("div",{className:"code-detail-head",children:i.jsx(Rm,{panel:"folder",label:e.title,open:t,onToggle:e.onToggle})}),i.jsx("div",{className:"code-detail-region",id:s.region,hidden:!t,children:e.children})]})}function Hk(e){const t=e.ctl.state,s=t.detail,[a,l]=w.useState({automationId:"",runId:""}),u=(s==null?void 0:s.automationId)??"",d=a.automationId===u&&a.runId?a.runId:u,f=Bk(e.ctl,{...e.host,openWorkspace:x=>l({automationId:u,runId:x})}),[h,g]=Pk(),y=w.useRef(null),v=zk(y,!!(s&&s.occurrences.length));return i.jsxs("main",{className:"code-conversation code-automation-main",id:"code-conversation",tabIndex:-1,"aria-label":"Automation",children:[i.jsxs("div",{className:"code-auto-main-head",children:[i.jsxs("button",{className:"code-subtle-button",onClick:e.onClose,children:[i.jsx(ie,{name:"chat",size:14})," ",i.jsx("span",{children:"Back to the conversation"})]}),t.notice?i.jsx("p",{className:"code-field-help",role:"status",children:t.notice}):null]}),s?i.jsxs("div",{className:"code-auto-main-body",ref:y,"data-occurrences":h.occurrences?"open":"closed",children:[f?i.jsx(ux,{...f,fetchGateway:bu}):null,v?Su.createPortal(i.jsx(Rm,{panel:"occurrences",label:"Occurrences",count:s.summary.occurrence_count,open:h.occurrences,onToggle:()=>g("occurrences")}),v):null,e.enabled?i.jsx(Gk,{panels:h,onToggle:()=>g("folder"),title:op(s.automationId,d,s.occurrences),own:d===s.automationId,children:i.jsx(pm,{className:"code-auto-folder",fetchGateway:bu,runId:d,title:op(s.automationId,d,s.occurrences),refreshKey:Vk(s.summary),onClose:d!==s.automationId?()=>l({automationId:u,runId:""}):void 0})}):null]}):t.error?i.jsx(Im,{error:t.error}):i.jsx("p",{className:"code-muted",role:"status",children:"Loading the automation…"})]})}function Kk(e){const[t,s]=w.useState();return w.useEffect(()=>{e.open&&(s(void 0),e.ctl.loadEmailStatus())},[e.open]),i.jsx(wv,{open:e.open,onClose:e.onClose,target:e.target,workflowPicker:i.jsx("p",{className:"code-field-help","data-field":"target",children:e.target?`Runs ${e.workflowLabel} (the toolbar's workflow).`:"Choose a published workflow in the toolbar first."}),initialPrompt:e.initialPrompt,emailStatus:e.ctl.state.emailStatus,onOpenMyEmail:e.onOpenMyEmail,busy:e.ctl.state.busy,error:t,onSubmit:a=>e.ctl.create(a).then(l=>(e.onCreated(l.automation_id),e.onClose(),l),l=>{throw s(Sr(l)),l})})}function Mm(e){return`abstractcode.workspace.v2:${e}`}function Jk(e){try{const t=JSON.parse(e||"{}"),s=typeof t.workflow=="string"&&t.workflow.trim()?t.workflow.trim():Nr.workflow;return{...Nr,...t,workflow:s,showAllWorkflows:t.showAllWorkflows===!0,speculation:pp(t.speculation),streamReplies:Dx(t.streamReplies),tools:{...Nr.tools,...t.tools}}}catch{return Nr}}function Qk(e){try{return Jk(localStorage.getItem(Mm(e)))}catch{return Nr}}function Yk(e,t){try{localStorage.setItem(Mm(e),JSON.stringify(t))}catch{}}function Xk(e){var h,g;const t=Object.keys(((h=e.schema)==null?void 0:h.properties)||{}),s=((g=e.schema)==null?void 0:g.required)||[],a=[e.promptProperty||"prompt","context","messages","attachments"],l=["provider","model","tools","skills","max_iterations","use_context","use_session_history"],u=_m(e.schema).map(y=>[y.provider,y.model,y.reasoning].filter(v=>!!v)),d=new Set(t.filter(y=>s.includes(y)&&!a.includes(y)));for(const y of u)y.some(v=>d.has(v))&&y.forEach(v=>d.add(v));const f=new Set(t.filter(y=>!d.has(y)&&!a.includes(y)&&!l.includes(y)));for(const y of u)y.some(v=>f.has(v))&&y.forEach(v=>f.add(v));return i.jsxs(i.Fragment,{children:[i.jsxs("section",{className:"code-settings-section","aria-label":"Automatic agent configuration",children:[i.jsx("h3",{children:d.size?"Workflow inputs":"Ready to chat"}),i.jsxs("p",{className:"code-field-help",children:[d.size?"This workflow asks for the inputs below before it can run.":"No setup required. Write a message and press Send."," ","Optional values use workflow and Gateway defaults. Use Settings for model, workspace and tool permission overrides."]})]}),d.size?i.jsx(ku,{...e,omit:t.filter(y=>!d.has(y)),rawObject:!1}):null,f.size?i.jsxs("details",{className:"code-advanced-inputs",children:[i.jsxs("summary",{children:["Advanced workflow inputs"," ",i.jsx("span",{className:"code-muted",children:"Optional"})]}),i.jsx("p",{className:"code-field-help",children:"Leave these unset to use the workflow and Gateway defaults. Only change them when you need a specific override."}),i.jsx(ku,{...e,omit:t.filter(y=>!f.has(y)),rawObject:!1})]}):null]})}function Zk(e,t,s){var l;if(!s.length)return t;const a=(l=e==null?void 0:e.properties)==null?void 0:l.attachments;if(!a||a.type&&a.type!=="array")throw new Error("This workflow does not declare an attachments input. Remove the attached files, or choose an agent or workflow that accepts them.");return{...t,attachments:[...Array.isArray(t.attachments)?t.attachments:[],...s]}}function qk(e){if(!e.trim())return{ok:!0,value:{}};let t;try{t=JSON.parse(e)}catch{return{ok:!1,error:"Enter valid JSON."}}return t===null||typeof t!="object"||Array.isArray(t)?{ok:!1,error:"The workflow input payload must be a JSON object."}:{ok:!0,value:t}}function ku({schema:e,values:t,onChange:s,disabled:a=!1,omit:l=[],rawObject:u=!1,onEditorError:d,defaultModel:f}){const[h,g]=ft.useState("fields"),y=Object.entries((e==null?void 0:e.properties)||{}).filter(([C])=>!l.includes(C)),v=_m(e),x=new Set(v.flatMap(C=>[C.provider,C.model,C.reasoning].filter(Boolean))),b=C=>{g(C),d==null||d("")},k=y.length?i.jsx("div",{className:"code-input-fields",children:y.map(([C,S])=>{const A={...S,type:Tx(S)},$=v.find(V=>V.provider===C);if($)return i.jsxs("section",{className:"code-settings-section",children:[i.jsx("h3",{children:$.title}),i.jsx(Nu,{value:{provider:String(t[$.provider]||""),model:String(t[$.model]||""),...$.reasoning?{reasoning:String(t[$.reasoning]||"")}:{}},onChange:V=>s({...t,[$.provider]:V.provider,[$.model]:V.model,...$.reasoning?{[$.reasoning]:V.reasoning||""}:{}}),...Lx($.provider,A["x-abstract-type"]),fetchModelCapabilities:$.reasoning?zu.fetchModelCapabilities:void 0,effectiveDefault:$.provider==="provider"?f:void 0,defaultHint:$.provider==="provider"&&(f!=null&&f.model)?`Gateway default: ${f.provider} · ${f.model}. Workflow defaults take precedence.`:"Empty routing pins inherit the Gateway defaults. Registered workflow defaults are loaded above any Gateway default.",disabled:a})]},C);if(x.has(C))return null;const T=`workflow-input-${C}`,j=String(A.title||C).replace(/_/g," "),L=Array.isArray(e==null?void 0:e.required)&&e.required.includes(C),z=V=>{const P={...t};V===void 0?delete P[C]:P[C]=V,s(P)};return i.jsxs("div",{className:"code-field",children:[i.jsxs("label",{htmlFor:T,children:[j,L?i.jsx("span",{"aria-label":"required",children:" *"}):null]}),A.enum?i.jsxs("select",{id:T,value:t[C]===void 0?"":JSON.stringify(t[C]),disabled:a,onChange:V=>z(V.target.value?JSON.parse(V.target.value):void 0),children:[i.jsxs("option",{value:"",children:["Choose ",j]}),A.enum.map(V=>i.jsx("option",{value:JSON.stringify(V),children:String(V)},JSON.stringify(V)))]}):A.type==="boolean"?i.jsxs("select",{id:T,value:t[C]===void 0?"":String(t[C]),disabled:a,onChange:V=>z(V.target.value?V.target.value==="true":void 0),children:[i.jsx("option",{value:"",children:"Workflow default"}),i.jsx("option",{value:"true",children:"Yes"}),i.jsx("option",{value:"false",children:"No"})]}):A.type==="number"||A.type==="integer"?i.jsx("input",{id:T,type:"number",value:typeof t[C]=="number"?String(t[C]):"",min:A.minimum,max:A.maximum,step:A.type==="integer"?1:"any",disabled:a,onChange:V=>z(V.target.value===""?void 0:Number(V.target.value))}):A.type==="object"||A.type==="array"?i.jsx(tj,{id:T,value:t[C],disabled:a,onChange:z},C):i.jsx("textarea",{id:T,rows:2,value:String(t[C]??""),disabled:a,onChange:V=>z(V.target.value)}),A.description?i.jsx("p",{className:"code-field-help",id:`${T}-help`,children:A.description}):null]},C)})}):i.jsx("p",{className:"code-muted",children:"This workflow declares no named top-level fields. Use JSON payload mode to provide registered or additional inputs."});return u?i.jsxs("div",{children:[i.jsxs("div",{className:"code-settings-tabs",role:"tablist","aria-label":"Workflow input editor",onKeyDown:Uu,children:[i.jsx("button",{type:"button",role:"tab",tabIndex:h==="fields"?0:-1,"aria-selected":h==="fields",onClick:()=>b("fields"),children:"Fields"}),i.jsx("button",{type:"button",role:"tab",tabIndex:h==="json"?0:-1,"aria-selected":h==="json",onClick:()=>b("json"),children:"JSON payload"})]}),h==="json"?i.jsxs(i.Fragment,{children:[i.jsx(ej,{value:t,disabled:a,onChange:s,onError:C=>d==null?void 0:d(C)}),i.jsx("p",{className:"code-field-help",children:"The complete object is sent unchanged. Nested and additional properties are allowed here; the gateway validates it against the registered workflow schema."})]}):k]}):k}function ej({value:e,onChange:t,onError:s,disabled:a}){const[l,u]=ft.useState(JSON.stringify(e,null,2)),[d,f]=ft.useState(""),h=ft.useRef(e);return ft.useEffect(()=>{e!==h.current&&(h.current=e,u(JSON.stringify(e,null,2)),f(""),s(""))},[e,s]),i.jsxs("div",{className:"code-field",children:[i.jsx("label",{htmlFor:"workflow-input-payload",children:"Complete input object"}),i.jsx("textarea",{id:"workflow-input-payload",className:"code-mono",rows:12,value:l,disabled:a,"aria-invalid":!!d,onChange:g=>{u(g.target.value);const y=qk(g.target.value);if(!y.ok){f(y.error),s(y.error);return}h.current=y.value,f(""),s(""),t(y.value)}}),d?i.jsx("span",{role:"alert",className:"code-error-text",children:d}):null]})}function tj({id:e,value:t,onChange:s,disabled:a}){const[l,u]=ft.useState(t===void 0?"":JSON.stringify(t,null,2)),[d,f]=ft.useState(""),h=ft.useRef(t);return ft.useEffect(()=>{t!==h.current&&(h.current=t,u(t===void 0?"":JSON.stringify(t,null,2)),f(""))},[t]),i.jsxs(i.Fragment,{children:[i.jsx("textarea",{id:e,className:"code-mono",rows:4,value:l,disabled:a,"aria-invalid":!!d,onChange:g=>{u(g.target.value);try{const y=g.target.value.trim()?JSON.parse(g.target.value):void 0;h.current=y,s(y),f("")}catch{h.current=g.target.value,s(g.target.value),f("Enter valid JSON.")}}}),d?i.jsx("span",{role:"alert",className:"code-error-text",children:d}):null]})}function nj({attachments:e,uploads:t,sizes:s,onRemoveAttachment:a,onRemoveUpload:l,onRetryUpload:u}){return i.jsxs("div",{className:"code-attachments",role:"list","aria-label":"Attached files",children:[e.map((d,f)=>{const h=d.filename||d.path||"Attachment",g=typeof d.size_bytes=="number"?d.size_bytes:s==null?void 0:s.get(d.$artifact),y=typeof g=="number"?Pa(g):"";return i.jsxs("div",{role:"listitem",tabIndex:0,className:"code-attachment is-attached","aria-label":`${h}${y?`, ${y}`:""}, attached`,children:[i.jsx("span",{className:"code-attachment__icon","aria-hidden":"true",children:i.jsx(ie,{name:"paperclip",size:13})}),i.jsxs("span",{className:"code-attachment__body",children:[i.jsx("span",{className:"code-attachment__name",title:h,children:h}),y?i.jsx("span",{className:"code-attachment__meta",children:y}):null]}),i.jsx("button",{type:"button",className:"code-attachment__action","aria-label":`Remove ${h}`,title:`Remove ${h}`,onClick:()=>a(f),children:i.jsx(ie,{name:"x",size:12})})]},`${d.$artifact}:${f}`)}),t.map(d=>{const f=d.status==="queued"||d.status==="uploading",h=d.status==="queued"?`Waiting · ${Pa(d.size)}`:d.status==="uploading"?`Uploading · ${Pa(d.size)}`:d.message||"Not attached",g=d.status==="queued"?"waiting to upload":d.status==="uploading"?"uploading":`not attached: ${h}`;return i.jsxs("div",{role:"listitem",tabIndex:0,className:`code-attachment is-${d.status}`,"aria-label":`${d.name}, ${g}`,"aria-busy":f||void 0,children:[i.jsx("span",{className:"code-attachment__icon","aria-hidden":"true",children:f?i.jsx("span",{className:"code-attachment__spinner"}):i.jsx(ie,{name:"warning",size:13})}),i.jsxs("span",{className:"code-attachment__body",children:[i.jsx("span",{className:"code-attachment__name",title:d.name,children:d.name}),i.jsx("span",{className:"code-attachment__meta",children:h})]}),d.status==="failed"?i.jsxs("button",{type:"button",className:"code-attachment__action code-attachment__retry","aria-label":`Retry ${d.name}`,title:"Retry upload",onClick:()=>u(d.id),children:[i.jsx(ie,{name:"refresh",size:12}),i.jsx("span",{children:"Retry"})]}):null,i.jsx("button",{type:"button",className:"code-attachment__action","aria-label":`Remove ${d.name}`,title:`Remove ${d.name}`,onClick:()=>l(d.id),children:i.jsx(ie,{name:"x",size:12})})]},d.id)})]})}function rj({active:e,paused:t,snapshot:s,onRevokeApproval:a,onCommand:l,onActivity:u,onInteraction:d,permissionsAll:f}){const h=w.useMemo(()=>__(s),[s]),y=w.useMemo(()=>h.tone==="working"?Kb(s.records.map(S=>S.record)):"",[h.tone,s.records])||h.detail,[v,x]=w.useState(Date.now);w.useEffect(()=>{if(!e)return;const S=window.setInterval(()=>x(Date.now()),1e3);return()=>window.clearInterval(S)},[e]);const b=Date.parse(h.startedAt||""),k=Number.isFinite(b)?Math.max(0,Math.floor((v-b)/1e3)):null,C=k===null?"":k<60?`${k}s`:`${Math.floor(k/60)}m ${k%60}s`;return i.jsxs("div",{className:`code-run-strip code-run-strip--${h.tone}`,children:[i.jsxs("div",{className:"code-run-strip__activity",role:"status","aria-live":"polite",children:[i.jsx("span",{className:"code-run-strip__icon","aria-hidden":"true",children:i.jsx(ie,{name:h.tone==="working"?"loader":h.tone==="success"?"check":h.tone==="error"?"error":h.tone==="waiting"?"history":"info",size:15})}),d&&h.tone==="waiting"?i.jsxs("button",{className:"code-run-strip__attention",onClick:d,title:"Go to the pending request",children:[i.jsx("strong",{children:h.label}),i.jsx(ie,{name:"chevronRight",size:12})]}):i.jsx("strong",{children:h.label}),i.jsx("span",{className:"code-run-strip__detail",title:y,children:y})]}),i.jsxs("span",{className:"code-run-strip__metrics","aria-label":"Run activity metrics",children:[e&&C?i.jsx("span",{children:C}):null,h.toolCalls?i.jsxs("span",{children:[h.toolCalls," ",h.toolCalls===1?"tool":"tools"]}):null,h.totalTokens!==void 0?i.jsxs("span",{children:[h.totalTokens.toLocaleString()," tokens"]}):null]}),e?i.jsxs(i.Fragment,{children:[i.jsxs("button",{onClick:()=>l(t?"resume":"pause"),children:[t?"Resume":"Pause"," "]}),i.jsx("button",{onClick:()=>l("conclude"),children:"Conclude"})]}):null,i.jsxs("button",{onClick:u,children:["View activity ",i.jsx(ie,{name:"chevronRight",size:12})]}),f?i.jsxs("div",{className:"code-run-strip__consent",children:[i.jsx(ie,{name:"check",size:13}),i.jsx("span",{children:"Permissions: all · enabled tools only"}),i.jsx("button",{onClick:a,children:"Revoke"})]}):null]})}function sj({runId:e,sessionId:t,capability:s,scope:a,preferences:l,onTranscript:u,onError:d}){var v,x;const f=w.useRef(!0),h=w.useRef(a);h.current=a,w.useEffect(()=>(f.current=!0,()=>{f.current=!1}),[]);const g=()=>{if(!f.current||h.current!==a)throw new Error("Voice session changed.")},y=pw({tts:((v=s.tts)==null?void 0:v.available)===!0&&e?async b=>{g();const k=await dt(Se(`runs/${encodeURIComponent(e)}/voice/tts`),{method:"POST",body:JSON.stringify({text:b,request_id:es(),...Object.fromEntries(Object.entries(l).filter(([,A])=>A!==""&&A!==void 0))})});g();const C=k==null?void 0:k.audio_artifact;if(!(C!=null&&C.$artifact))throw new Error("The gateway did not return an audio artifact.");const{blob:S}=await $n.get_run_artifact_blob(String(C.run_id||k.child_run_id||e),C.$artifact,{max_bytes:25e6});return g(),S.arrayBuffer()}:void 0,transcribe:((x=s.stt)==null?void 0:x.available)===!0&&e?async(b,k)=>{var j;g();const C=Number(((j=s.stt)==null?void 0:j.max_upload_bytes)||0);if(C>0&&b.size>C)throw new Error("Recording exceeds the gateway's upload limit. Try a shorter recording.");const S=k.includes("mp4")?"m4a":k.includes("ogg")?"ogg":k.includes("wav")?"wav":"webm",A=new File([b],`recording.${S}`,{type:k||"audio/webm"}),$=await $n.attachments_upload(t,A);g();const T=await $n.audio_transcribe(e,{audio_artifact:$,request_id:es()});return g(),String(T.text||"")}:void 0,on_transcript:b=>{f.current&&h.current===a&&u(b)},on_error:b=>{f.current&&h.current===a&&d(b)}});return w.useEffect(()=>{var b;return y.stop_tts(),(b=y.cancel_voice_ptt_recording)==null||b.call(y),()=>{var k;y.stop_tts(),(k=y.cancel_voice_ptt_recording)==null||k.call(y)}},[a,y.stop_tts,y.cancel_voice_ptt_recording]),y}function ij({voice:e,runId:t,capability:s,answer:a,onSettings:l}){var y,v,x,b,k,C;const u=w.useRef(!1),d=w.useRef(!0);w.useEffect(()=>(d.current=!0,()=>{d.current=!1,u.current=!1}),[]);const f=()=>{u.current=!0,e.start_voice_ptt_recording().then(()=>{(!u.current||!d.current)&&e.stop_voice_ptt_recording()})},h=()=>{u.current=!1,e.stop_voice_ptt_recording()};if(w.useEffect(()=>(window.addEventListener("pointerup",h),window.addEventListener("pointercancel",h),window.addEventListener("blur",h),()=>{window.removeEventListener("pointerup",h),window.removeEventListener("pointercancel",h),window.removeEventListener("blur",h)}),[e.stop_voice_ptt_recording]),!((y=s.tts)!=null&&y.available)&&!((v=s.stt)!=null&&v.available))return null;const g=!_b();return i.jsxs(i.Fragment,{children:[(x=s.stt)!=null&&x.available&&g?i.jsxs(i.Fragment,{children:[i.jsx("button",{className:"code-icon-button","aria-label":"Dictation unavailable","aria-describedby":"code-voice-https-note",title:Qh,disabled:!0,children:i.jsx(ie,{name:"mic",size:15})}),i.jsx("span",{id:"code-voice-https-note",className:"code-voice-note",role:"note",children:Qh})]}):null,(b=s.stt)!=null&&b.available&&!g?i.jsx("button",{className:"code-icon-button","aria-label":e.voice_ptt_recording?"Recording — release to transcribe":"Hold to dictate",title:t?"Hold to dictate (Space or Enter on keyboard)":"Start a conversation to enable dictation",disabled:!e.voice_ptt_supported||e.voice_ptt_busy,"aria-pressed":e.voice_ptt_recording,onPointerDown:S=>{S.button===0&&f()},onPointerUp:h,onPointerCancel:h,onKeyDown:S=>{[" ","Enter"].includes(S.key)&&!S.repeat&&(S.preventDefault(),f())},onKeyUp:S=>{[" ","Enter"].includes(S.key)&&(S.preventDefault(),h())},onBlur:h,children:i.jsx(ie,{name:e.voice_ptt_busy?"loader":"mic",size:15})}):null,(k=s.tts)!=null&&k.available?i.jsx("button",{className:"code-icon-button","aria-label":e.tts_playback.status==="playing"?"Pause spoken reply":e.tts_playback.status==="paused"?"Resume spoken reply":"Read latest reply aloud",disabled:!e.tts_supported||!a||e.tts_playback.status==="loading",onClick:()=>{a&&e.toggle_tts(["playing","paused"].includes(e.tts_playback.status)?e.tts_playback.key:a.id||"latest",a.content)},children:i.jsx(ie,{name:e.tts_playback.status==="playing"?"pause":e.tts_playback.status==="loading"?"loader":"speaker",size:15})}):null,e.tts_playback.status!=="idle"?i.jsx("button",{className:"code-icon-button","aria-label":"Stop spoken reply",onClick:e.stop_tts,children:i.jsx(ie,{name:"x",size:14})}):null,l&&((C=s.tts)!=null&&C.available)?i.jsx("button",{className:"code-icon-button","aria-label":"Voice settings",title:"Voice settings",onClick:l,children:i.jsx(ie,{name:"settings",size:14})}):null,e.voice_ptt_recording||e.voice_ptt_busy?i.jsx("span",{role:"status",children:e.voice_ptt_recording?"Recording…":"Transcribing…"}):null]})}function iu(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)?e:void 0}function Qo(e){return typeof e=="string"?e.trim():""}function aj(e){const t=iu(e),s=iu(t==null?void 0:t.gateway),a=iu(s==null?void 0:s.principal);return JSON.stringify([Qo((t==null?void 0:t.gateway_url)??(t==null?void 0:t.gatewayUrl)),Qo((a==null?void 0:a.tenant_id)??(a==null?void 0:a.tenantId)),Qo((a==null?void 0:a.runtime_id)??(a==null?void 0:a.runtimeId)),Qo((a==null?void 0:a.user_id)??(a==null?void 0:a.userId))||"session"])}function lp(e,t){return!!e.sourceRunId&&e.sessionId===t.sessionId&&e.sessionId===t.snapshotSessionId&&e.sourceRunId===t.runId&&e.sourceRunId===t.snapshotRunId&&e.authEpoch===t.authEpoch}function oj(e){const t=typeof e=="string"?e.trim().toLowerCase():"";return["completed","complete","done"].includes(t)?"advance":["failed","error","cancelled","canceled"].includes(t)?"pause":"wait"}function lj(e,t,s){return e.flatMap(a=>a.id===t.id?[]:a.sessionId!==t.sessionId||a.authEpoch!==t.authEpoch||a.sourceRunId!==t.sourceRunId?[a]:[{...a,sourceRunId:s}])}function cp(){return new DOMException("The conversation changed before the run was attached.","AbortError")}const cj=Xy("abstractcode","0.9.0"),au=e=>["completed","failed","cancelled","canceled"].includes(e);function up(){const e=new URLSearchParams(window.location.hash.replace(/^#/,""));return{sessionId:e.get("session")||es(),runId:e.get("run")||""}}function $a(e,t=""){const s=new URLSearchParams({session:e});t&&s.set("run",t),window.history.replaceState(null,"",`#${s}`)}function uj(){var hs,Ka,Ja,Qs,ps,Ys,Ki,Ln,Xs,ms,Ji,gs,ys,Qi,Rt,pr,Zs,Lr,Qa,qs,ei;const e=Vy({appName:"AbstractCode",variant:"blocking"}),t=e.connected?aj(e.status):"",s=w.useCallback(()=>{e.refresh()},[e.refresh]),a=ob(t,s),[l,u]=ow("abstractcode",{defaults:{theme:"observer-night"}}),[d,f]=w.useState(!1),[h,g]=w.useState(),y=w.useCallback(()=>{g(void 0),dt(Se("about")).then(I=>g({ok:!0,value:I})).catch(I=>g({ok:!1,status:I==null?void 0:I.status,message:xt(I)}))},[]),[v,x]=w.useState(!1),[b,k]=w.useState({});w.useEffect(()=>{try{k(JSON.parse(localStorage.getItem(`abstractcode.voice:${t}`)||"{}"))}catch{k({})}x(!1)},[t]);const C=I=>{if(k(I),t)try{localStorage.setItem(`abstractcode.voice:${t}`,JSON.stringify(I))}catch{}},[S,A]=w.useState(Nr),$=w.useRef(S);$.current=S;const T=Fx(S.streamReplies,a.streaming),[j,L]=w.useState(Nr.workflow),z=w.useMemo(()=>Qx(a.choices,S.showAllWorkflows),[a.choices,S.showAllWorkflows]),V=w.useMemo(()=>Jx(a.gatewayDefault,a.workflows),[a.gatewayDefault,a.workflows]),P=j===En?V:a.workflows.find(I=>I.id===j)||null,[ce,re]=w.useState(null),H=Du(P),[W,J]=w.useState(up),[fe,ue]=w.useState(""),[ye,ve]=w.useState(""),[q,se]=w.useState(""),[Q,E]=w.useState(!1),F=w.useRef(!1),[G,B]=w.useState([]),[oe,le]=w.useState([]),he=w.useRef(new Set),Z=w.useRef(new Map),[Ce,Ue]=w.useState(""),ke=w.useRef(null),[X,ee]=w.useState(),[pe,De]=w.useState(!1),[we,Pe]=w.useState(""),[Ve,rt]=w.useState(0),[K,me]=w.useState({}),[Fe,Ke]=w.useState(""),[He,ar]=w.useState(null),[Tt,An]=w.useState(""),[Tn,Rn]=w.useState(!1),[or,Er]=w.useState(!1),[dl,Ii]=w.useState("model"),Os=hh(fh.md),fl=hh(fh.lg),gn=vv(fl,Os),ns=w.useRef(gn),rs=$v(60),[Mi,Ds]=w.useState(()=>_v(gn)),zt=Mi.open,Bn=gn!=="docked",lr=w.useCallback(I=>Ds(Y=>bv(Y,ns.current,typeof I=="function"?I(Y.open):I)),[]),[za,Li]=w.useState("files"),[cr,Ht]=w.useState(!1),[ss,Pi]=Mv(),$r=jk(a.capabilities),{ctl:Vn,state:ur}=Wk(t,e.connected&&$r.available),[is,In]=w.useState(!1),[Ar,as]=w.useState(!1),os=w.useRef(""),[Oi,hl]=w.useState(""),Wa=w.useRef(null),[on,Ua]=w.useState("steer"),[Gn,Hn]=w.useState([]),[Fs,yn]=w.useState(!1),[Di,zs]=w.useState([]),Ws=w.useMemo(()=>bm(a.tools,S.tools,S.permissions),[a.tools,S.tools,S.permissions]),Fi=w.useRef(null),lt=w.useMemo(()=>{var ze,Oe;const I=((ze=Fi.current)==null?void 0:ze.runId)===W.runId?Fi.current.input:null;if(W.runId&&!He&&!I)return{enabledTools:[],autoApproveTools:[]};const Y=He?He.input_data:I,Te=mb(Ws,(Oe=Y==null?void 0:Y._runtime)==null?void 0:Oe.allowed_tools);return{...Te,autoApproveTools:S.toolsCustomized||S.permissions!=="default"?Te.autoApproveTools:[]}},[Ws,He,W.runId,S.toolsCustomized,S.permissions]),zi=`${t}:${W.sessionId}:${W.runId}`,Us=w.useRef(zi);Us.current=zi;const Wi=w.useRef(null),[ls,pl]=w.useState({scope:"",notes:[]}),Ba=w.useMemo(()=>cb({onDeltaError:I=>{const Y=Us.current,Te=Ux(I,Wi.current);pl(ze=>({scope:Y,notes:Bx(ze.scope===Y?ze.notes:[],Te)}))}}),[]),{controller:wn,snapshot:Le}=U_({transport:Ba,runId:W.runId,enabled:e.connected,onAuthError:s,clientId:"abstractcode-web",authScopeKey:t,toolApprovalPolicy:lt}),ln=!!W.runId&&!au(Le.status)&&Le.status!=="idle",Wt=((hs=Le.run)==null?void 0:hs.paused)===!0||Le.status==="paused",dr=ln||Q,Bs=Le.loading&&Di.length?Di:Le.messages,Vs=Bs[Bs.length-1];Wi.current=Vs!=null&&Vs.id?String(Vs.id):null;const cn=Vx(Bs,[zx(S.streamReplies,a.streaming,Bs),...ls.scope===zi?ls.notes:[]]),cs=((Ja=(Ka=a.capabilities)==null?void 0:Ka.assistant)==null?void 0:Ja.voice)||{},vn=sj({scope:`${t}:${W.sessionId}:${W.runId}`,runId:t?W.runId:"",sessionId:W.sessionId,capability:cs,preferences:b,onTranscript:I=>ue(Y=>Y?`${Y.trimEnd()}
74
- ${I}`:I),onError:ve}),us=D_(Le),_n=w.useMemo(()=>dx(us,wn,{records:Le.records,currentRun:Le.run,onPermissionsAll:async()=>{A(I=>({...I,permissions:"all"}))}}),[us,Le.records,Le.run,wn]),Va=!!_n&&on==="steer",un=H?"prompt":Rx(X),Ui=H||!!(un&&!((Qs=X==null?void 0:X.required)!=null&&Qs.some(I=>I!==un))),Kn=String(((ps=He==null?void 0:He.workspace)==null?void 0:ps.workspace_root)||((Ki=(Ys=Le.run)==null?void 0:Ys.vars)==null?void 0:Ki.workspace_root)||""),Mn=w.useMemo(()=>{var I;return wx(a.workflows,{inputData:He,runWorkflowId:(I=Le.run)==null?void 0:I.workflow_id})},[a.workflows,He,(Ln=Le.run)==null?void 0:Ln.workflow_id]),Gs=W.runId&&He&&!a.loading&&Le.run&&!Mn&&Wu(He)!=="gateway_default"?"This conversation's exact workflow version is unavailable. Restore it in the gateway, or start a new conversation with an available workflow.":"",Ut=a.sessions.find(I=>I.sessionId===W.sessionId),Qe=(Ut==null?void 0:Ut.prompt)||((Xs=cn.find(I=>I.role==="user"))==null?void 0:Xs.content)||"New conversation",Bi=kk((ms=e.status)==null?void 0:ms.gateway_url),Hs=Bi?()=>{window.open(Bi,"_blank","noopener,noreferrer")}:void 0,Vi={...Hs?{openMyEmail:Hs}:{},openConversation:(I,Y,Te)=>{os.current=Te||"",fr(I,Y)},openRun:I=>{dt(Se(`runs/${encodeURIComponent(I)}`)).then(Y=>{if(!(Y!=null&&Y.session_id))throw new Error(`The gateway reported no session for run ${I}.`);fr(Y.session_id,I)}).catch(Y=>Vn.reportError(Y))}},Gi=((Ji=ur.detail)==null?void 0:Ji.summary.title)||"Automation",Ks=w.useRef(""),Tr=w.useRef(t),mt=w.useRef(0);Tr.current!==t&&(mt.current+=1,Tr.current=t);const Rr=w.useRef(!1),at=w.useRef(W);at.current=W,w.useEffect(()=>{if(F.current=!1,E(!1),le([]),ve(""),se(""),!t){B([]),ue(""),Hn([]),yn(!1),zs([]),A(Nr);return}if(Ks.current&&Ks.current!==t){const Y={sessionId:es(),runId:""};J(Y),$a(Y.sessionId)}Ks.current=t,Rr.current=!0;const I=Qk(t);A(I),L(I.workflow)},[t]),w.useEffect(()=>{if(t){if(Rr.current){Rr.current=!1;return}Yk(t,S)}},[S,t]),w.useEffect(()=>{if(a.loading||!a.workflows.length)return;const I=Yx({selection:j,preferred:S.workflow,visible:z,workflows:a.workflows,runId:W.runId});I!==j&&L(I)},[a.loading,a.workflows,z,j,S.workflow,W.runId]),w.useEffect(()=>{let I=!0;if(me({}),Ke(""),ee(void 0),Pe(""),!P){De(!1);return}return De(!0),lb(P).then(Y=>{I&&(ee(Y),me(Ra(Y)))}).catch(Y=>{I&&Pe(xt(Y))}).finally(()=>{I&&De(!1)}),()=>{I=!1}},[P==null?void 0:P.id,Ve]),w.useEffect(()=>{if(ar(null),An(""),!t||!W.runId)return;const I=new AbortController;return dt(Se(`runs/${encodeURIComponent(W.runId)}/input_data`),{signal:I.signal}).then(Y=>{ar(Y)}).catch(Y=>{I.signal.aborted||An(xt(Y))}),()=>I.abort()},[W.runId,t]),w.useEffect(()=>{He&&He.flow_id===(P==null?void 0:P.flowId)&&X&&me({...Ra(X),...$x(X,He.input_data)})},[He,X,P==null?void 0:P.flowId]),w.useEffect(()=>{!W.runId&&e.connected&&(Ut!=null&&Ut.latestRunId)&&J(I=>({...I,runId:Ut.latestRunId}))},[W.runId,e.connected,Ut==null?void 0:Ut.latestRunId]),w.useEffect(()=>{$a(W.sessionId,W.runId),F.current=!1,E(!1),le([]),B([]),zs([]),se(os.current),os.current="",ve(""),Hn([]),yn(!1)},[W.sessionId]),w.useEffect(()=>{const I=()=>{const Y=up();F.current=!1,E(!1),le([]),Hn([]),yn(!1),ue(""),J(Y)};return window.addEventListener("hashchange",I),()=>window.removeEventListener("hashchange",I)},[]),w.useEffect(()=>{!W.runId||!au(Le.status)||a.refresh()},[W.runId,Le.status]),w.useEffect(()=>{if(!W.runId||!He)return;const I=Xx({restoredInputs:He,restored:Mn});I&&L(I)},[W.runId,He,Mn==null?void 0:Mn.id]);const xn=W.runId?Zx(He):"",dn=w.useCallback(()=>{const I={sessionId:es(),runId:""};J(I),L($.current.workflow),$a(I.sessionId),ue(""),Hn([]),yn(!1),Ht(!1),In(!1)},[]),fr=w.useCallback((I,Y)=>{F.current=!1,E(!1),le([]),J({sessionId:I,runId:Y}),$a(I,Y),Ht(!1),Hn([]),yn(!1),ue(""),In(!1)},[]);w.useEffect(()=>{const I=ns.current;ns.current=gn,I!==gn&&(Ds(Y=>xv(Y,I,gn)),Ht(Y=>kv(Y,gn)))},[gn]),Nh(cr,Os,()=>document.querySelector(".code-sidebar"),()=>document.querySelector(".code-mobile-close")),Nh(zt,Bn,()=>document.querySelector(".code-inspector"),()=>document.querySelector(".code-inspector-heading .code-icon-button")),w.useEffect(()=>{const I=Y=>{var ze;const Te=jv({key:Y.key,defaultPrevented:Y.defaultPrevented,overlayOpen:or||Tn||v||Ar||d||Sv(),sidebarOpen:cr,inspectorOpen:zt,inspectorIsOverlay:Bn});if(Te==="sidebar"){Ht(!1),(ze=document.querySelector(".code-mobile-nav"))==null||ze.focus();return}if(Te==="inspector"){lr(!1);return}(Y.metaKey||Y.ctrlKey)&&(Y.key.toLowerCase()==="k"&&(Y.preventDefault(),Ht(!0),window.setTimeout(()=>{var Oe;return(Oe=Wa.current)==null?void 0:Oe.focus()},0)),Y.key.toLowerCase()==="n"&&Y.shiftKey&&(Y.preventDefault(),dn()))};return window.addEventListener("keydown",I),()=>window.removeEventListener("keydown",I)},[dn,cr,zt,Bn,or,Tn,v,Ar,d,lr]);async function Jn(I){if(F.current)throw new Error("A turn is already being submitted.");if(!e.connected)throw new Error("Connect to your gateway first.");if(j===En&&a.gatewayDefault.status==="unavailable")throw new Error(`Gateway default: ${a.gatewayDefault.reason}. Choose a workflow from the list.`);if(!P)throw new Error("Choose a workflow first.");if(!a.policy)throw new Error("Workspace policy is unavailable. Reconnect or refresh before starting.");if(W.runId&&(!He||Tt))throw new Error(Tt||"Wait for the gateway to restore this conversation's workspace.");if(Gs)throw new Error(Gs);if(pe||we)throw new Error(we||"Wait for workflow inputs to load.");if(Fe)throw Rn(!0),new Error(Fe);const Y=Eb(oe);if(Y)throw new Error(Y);if(ln)throw new Error("The current run is still active.");if(!H&&I.trim()&&!un)throw Rn(!0),new Error("This workflow uses structured inputs. Configure its inputs, then select Run workflow.");const Te={...Ra(X),...K,...un&&I.trim()?{[un]:I.trim()}:{}},ze=H?Te:Zk(X,Te,G);for(const[Kt,Jt]of[["Iteration limit",S.maxIterations],["Context token limit",S.maxTokens]])if(Jt&&(!Number.isInteger(Number(Jt))||Number(Jt)<=0))throw new Error(`${Kt} must be a positive whole number.`);F.current=!0,E(!0),ve(""),se("");const Oe=W.sessionId,It=W.runId,Xn=t,Pr=mt.current;let bt="";try{const Kt=kx({workflow:P,inputSchema:X,schemaInputs:ze,prompt:I,promptProperty:un,model:S,reasoning:S.reasoning||void 0,speculation:S.speculation,streamReplies:T,systemPromptExtra:S.system||void 0,attachments:G,limits:{maxIterations:S.maxIterations?Number(S.maxIterations):void 0,maxTokens:S.maxTokens?Number(S.maxTokens):void 0},workspace:a.policy.clientWorkspaceScopeOverrides?{root:S.workspaceRoot||Kn||void 0,accessMode:S.workspaceMode||void 0,allowedPaths:S.allowedPaths.split(`
75
- `).filter(Boolean)}:Kn?{root:Kn}:void 0,tools:S.toolsCustomized?Ws.enabledTools:void 0,toolPolicy:S.toolsCustomized||S.permissions!=="default"?{autoApproveTools:[],requireApprovalTools:Ws.enabledTools}:void 0,skills:S.skills.length?S.skills:void 0}),Jt=Ix(X,Kt);if(Jt.length)throw Rn(!0),new Error(Jt.join(" "));const mr=qx({selection:j,workflow:P,sessionId:Oe,input:Kt}),Pn=await dt(Se("runs/start"),{method:"POST",body:JSON.stringify(mr)});if(!Pn.run_id)throw new Error("The gateway did not return a run identifier.");if(at.current.sessionId!==Oe||at.current.runId!==It||Tr.current!==Xn||mt.current!==Pr)throw cp();return bt=String(Pn.run_id),Fi.current={runId:bt,input:Kt},re({runId:bt,...eb(Pn.resolved_workflow)}),zs([...cn,...I.trim()?[{id:`pending:${Pn.run_id}`,role:"user",content:I.trim()}]:[]]),J({sessionId:Oe,runId:Pn.run_id}),$a(Oe,Pn.run_id),ue(""),B([]),Rn(!1),Pn.runner_warning&&se(String(Pn.runner_warning)),a.refresh(),bt}finally{at.current.sessionId===Oe&&(at.current.runId===It||at.current.runId===bt)&&Tr.current===Xn&&mt.current===Pr&&(F.current=!1,E(!1))}}async function Qn(I){if(!ln)return Jn(I);if(on==="queue")Hn(Y=>[...Y,{id:es(),text:I,sessionId:W.sessionId,sourceRunId:W.runId,authEpoch:mt.current}]),yn(!0),ue(""),se("Queued for the next turn.");else{if(_n)throw new Error("Answer the pending workflow request above, or choose Queue next turn.");const Y=W.sessionId,Te=W.runId,ze=mt.current;if(await wn.sendCommand("inject_guidance",{guidance:I}),at.current.sessionId!==Y||at.current.runId!==Te||mt.current!==ze)return;ue(""),se("Guidance queued. The workflow will read it at its next supported boundary.")}}async function Ga(I){var ze,Oe;const Y=String(((ze=Le.run)==null?void 0:ze.run_id)||"");if(!lp(I,{sessionId:W.sessionId,runId:W.runId,snapshotRunId:Y,snapshotSessionId:String(((Oe=Le.run)==null?void 0:Oe.session_id)||""),authEpoch:mt.current}))throw cp();const Te=await Jn(I.text);Hn(It=>lj(It,I,Te))}w.useEffect(()=>{var Te,ze;if(!Fs||!Gn.length||!e.connected||!He||Tt||F.current)return;const I=oj(Le.status);if(I==="wait")return;if(I==="pause"){yn(!1);const Oe=["failed","error"].includes(Le.status.toLowerCase());se(`Queue paused because the run ${Oe?"failed":"was cancelled"}. Review the result, then use Run next to continue explicitly.`);return}const Y=Gn[0];lp(Y,{sessionId:W.sessionId,runId:W.runId,snapshotRunId:String(((Te=Le.run)==null?void 0:Te.run_id)||""),snapshotSessionId:String(((ze=Le.run)==null?void 0:ze.session_id)||""),authEpoch:mt.current})&&Ga(Y).catch(Oe=>{Oe instanceof DOMException&&Oe.name==="AbortError"||(yn(!1),ve(xt(Oe)))})},[Fs,Gn,Le.status,(gs=Le.run)==null?void 0:gs.run_id,(ys=Le.run)==null?void 0:ys.session_id,e.connected,He,Tt,W.sessionId,W.runId]);async function Hi(I){const Y=W.sessionId,Te=t,ze=mt.current,Oe=()=>at.current.sessionId!==Y||Tr.current!==Te||mt.current!==ze,It=(bt,Kt)=>le(Jt=>Jt.map(mr=>mr.id===bt?{...mr,...Kt}:mr));let Xn=0,Pr=0;await Cb(I,jb,async bt=>{if(!(Oe()||he.current.has(bt.id))){It(bt.id,{status:"uploading",message:void 0});try{const Kt=await $n.attachments_upload(Y,bt.file);if(Oe()||he.current.has(bt.id))return;Z.current.set(Kt.$artifact,bt.size),le(Jt=>Jt.filter(mr=>mr.id!==bt.id)),B(Jt=>[...Jt,Kt]),Xn+=1}catch(Kt){if(Oe()||he.current.has(bt.id))return;It(bt.id,{status:"failed",message:Sb(xt(Kt))}),Pr+=1}}}),!Oe()&&(Xn||Pr)&&Ue(Zh(Xn,Pr))}function hr(I){var ze;if(!I.length)return[];const Y=Nb(I,(ze=a.policy)==null?void 0:ze.maxAttachmentBytes,es);le(Oe=>[...Oe,...Y]);const Te=Y.filter(Oe=>Oe.status==="refused").length;return Te&&Ue(Zh(0,Te)),Hi(Y.filter(Oe=>Oe.status==="queued")),Y}function ml(I){const Y=oe.find(ze=>ze.id===I);if(!Y||Y.status!=="failed")return;const Te={...Y,status:"queued",message:void 0};le(ze=>ze.map(Oe=>Oe.id===I?Te:Oe)),Hi([Te])}function Ha(I){he.current.add(I),le(Y=>Y.filter(Te=>Te.id!==I))}async function Js(){const I=W.sessionId,Y=W.runId,Te=mt.current;await wn.cancel(),at.current.sessionId===I&&at.current.runId===Y&&mt.current===Te&&se("")}const Ir=I=>{Ii(I),Er(!0)},ds=I=>{const Y=mt.current,Te=W.sessionId,ze=W.runId;ve(""),I().catch(Oe=>{Oe instanceof DOMException&&Oe.name==="AbortError"||mt.current===Y&&at.current.sessionId===Te&&at.current.runId===ze&&ve(xt(Oe))})},Mr=a.sessions.filter(I=>`${I.prompt||""} ${I.sessionId}`.toLowerCase().includes(Oi.toLowerCase())),fs=(()=>{var I;try{return new URL(((I=e.status)==null?void 0:I.gateway_url)||"").host}catch{return"Your gateway"}})(),Yn=S.model||(K.provider&&K.model?`Workflow · ${K.model}`:"Gateway default");return i.jsxs("div",{className:`code-app${cr?" code-app--nav-open":""}${zt?" code-app--workspace-open":""}`,children:[i.jsx("a",{className:"code-skip-link",href:"#code-conversation",children:"Skip to conversation"}),i.jsxs(Av,{isDrawer:Os,open:cr,children:[i.jsxs("div",{className:"code-brand",children:[i.jsxs("span",{className:"code-brand-mark","aria-hidden":"true",children:["a",i.jsx("span",{children:"c"})]}),i.jsxs("div",{children:[i.jsx("strong",{children:"AbstractCode"}),i.jsx("span",{children:"YOUR WORK, IN CONTEXT"})]}),i.jsx("button",{className:"code-mobile-close code-icon-button","aria-label":"Close navigation",onClick:()=>Ht(!1),children:i.jsx(ie,{name:"x",size:18})})]}),i.jsxs("button",{className:"code-new-chat",onClick:dn,children:[i.jsx(ie,{name:"plus",size:17}),i.jsx("span",{children:"New conversation"}),i.jsx("kbd",{children:"⇧⌘N"})]}),i.jsxs("div",{className:"code-session-search",children:[i.jsx(ie,{name:"history",size:14}),i.jsx("input",{ref:Wa,"aria-label":"Search conversations",placeholder:"Search conversations",value:Oi,onChange:I=>hl(I.target.value)}),i.jsx("kbd",{children:"⌘K"})]}),i.jsx(Uk,{state:ur,available:$r,selectedId:is?ur.selectedId:"",onSelect:I=>{In(!0),Ht(!1),Vn.select(I)},onNew:()=>as(!0),onRefresh:()=>void Vn.refresh(),onShowArchived:I=>Vn.setShowArchived(I),open:ss.automations,fill:!ss.conversations,onToggle:()=>Pi("automations")}),i.jsxs(Lv,{open:ss.conversations,onToggle:()=>Pi("conversations"),actions:i.jsx("button",{className:"code-icon-button","aria-label":"Refresh conversations",disabled:!e.connected||a.loading,onClick:()=>void a.refresh(),children:i.jsx(ie,{name:"refresh",size:13})}),children:[Ut?null:i.jsxs("button",{className:"code-session is-selected",onClick:()=>Ht(!1),children:[i.jsx(ie,{name:"chat",size:15}),i.jsxs("span",{children:[i.jsx("strong",{children:"New conversation"}),i.jsx("small",{children:"Ready when you are"})]})]}),Mr.map(I=>i.jsx(dj,{item:I,selected:I.sessionId===W.sessionId,onClick:()=>fr(I.sessionId,I.latestRunId)},I.sessionId)),!a.loading&&!Mr.length?i.jsx("p",{className:"code-history-empty",children:Oi?"No conversations match your search.":"Your conversations will live here. Pick up where you left off, on any device."}):null,a.loading?i.jsx("p",{className:"code-history-empty",role:"status",children:"Loading conversations…"}):null,a.hasMore?i.jsx("button",{className:"code-load-more",onClick:a.loadMore,children:"Load more conversations"}):null]}),i.jsxs("div",{className:"code-sidebar-bottom",children:[i.jsx(Ov,{path:Kn,onOpen:()=>Ir("workspace")}),i.jsxs("button",{onClick:()=>Ir("model"),children:[i.jsx(ie,{name:"settings",size:17}),i.jsx("span",{children:"Settings"})]}),i.jsxs("div",{className:"code-gateway-foot",children:[i.jsx("span",{className:`code-status-dot ${e.connected?"is-online":""}`}),i.jsx("span",{children:fs}),i.jsx("small",{children:((pr=(Rt=(Qi=e.status)==null?void 0:Qi.gateway)==null?void 0:Rt.principal)==null?void 0:pr.user_id)||"Signed out"})]})]})]}),cr?i.jsx("button",{className:"code-nav-scrim","aria-label":"Close conversation navigation",onClick:()=>Ht(!1)}):null,i.jsxs("div",{className:"code-main-shell",children:[i.jsxs("header",{className:"code-topbar",children:[i.jsx("button",{className:"code-mobile-nav code-icon-button","aria-label":"Open conversation navigation",onClick:()=>Ht(!0),children:i.jsx(ie,{name:"list",size:19})}),i.jsxs("div",{className:"code-breadcrumb",children:[i.jsx("span",{children:is?"Automations":"Conversations"}),i.jsx("span",{"aria-hidden":"true",children:"/"}),i.jsx("strong",{title:is?Gi:Qe,children:is?Gi:Qe})]}),i.jsx(sw,{appearance:{onOpen:()=>f(!0)},about:{identity:cj,extraRows:_k(h),onOpen:y},extraActions:i.jsx("button",{className:`af-topbar__btn${zt?" is-active":""}`,"aria-label":"Toggle workspace inspector","aria-pressed":zt,onClick:()=>lr(I=>!I),children:i.jsx(ie,{name:"board",size:17})}),connection:{phase:e.phase,signingOut:e.signingOut,onConnect:e.openModal,onDisconnect:()=>{e.signOut()}}})]}),i.jsxs("div",{className:"code-toolbar",children:[i.jsxs("div",{className:"code-workflow-select",children:[i.jsx(ie,{name:"agent",size:17}),i.jsxs("select",{"aria-label":"Workflow",value:j,disabled:dr||a.loading||!e.connected,onChange:I=>{const Y=I.target.value;L(Y),A(Te=>({...Te,workflow:Y}))},children:[i.jsx("option",{value:En,children:Kh(a.gatewayDefault)}),P&&j!==En&&!z.some(I=>I.id===P.id)?i.jsxs("option",{value:P.id,children:[P.name,W.runId?` · conversation version ${P.bundleVersion||""}`:""]}):null,z.map(I=>i.jsx("option",{value:I.id,children:gx(I,z)},I.id))]}),i.jsx("span",{className:"code-workflow-kind",children:H?"AGENT":"WORKFLOW"}),i.jsx(vb,{checked:S.showAllWorkflows,connected:e.connected,locked:dr,onChange:I=>A(Y=>({...Y,showAllWorkflows:I}))}),j===En&&eu(V)?i.jsx("span",{className:"code-workflow-resolved is-missing",role:"alert",title:eu(V),children:eu(V)}):null,xn?i.jsx("span",{className:"code-workflow-resolved is-missing",role:"status",title:xn,children:xn}):null,ce&&ce.runId===W.runId?i.jsx("span",{className:`code-workflow-resolved${ce.missing?" is-missing":""}`,role:"status",children:ce.text}):null]}),i.jsx("span",{className:"code-toolbar-divider"}),i.jsxs("button",{className:"code-model-button",onClick:()=>Ir("model"),"aria-label":`Model: ${Yn}`,title:`Model: ${Yn}`,children:[i.jsx(ie,{name:"sparkle",size:14}),i.jsx("span",{"aria-hidden":"true",children:Yn}),i.jsx(ie,{name:"chevronDown",size:12})]}),i.jsx("div",{className:"code-toolbar-spacer"}),i.jsxs("button",{className:"code-subtle-button",onClick:()=>Rn(!0),disabled:!P,"aria-label":"Inputs",title:"Workflow inputs",children:[i.jsx(ie,{name:"settings",size:14}),i.jsx("span",{children:"Inputs"})]}),i.jsxs("button",{className:"code-subtle-button",onClick:()=>Ir("tools"),"aria-label":"Tools",title:"Tools",children:[i.jsx(ie,{name:"terminal",size:14}),i.jsx("span",{children:"Tools"})]}),cn.length?i.jsx("button",{className:"code-icon-button","aria-label":"Export conversation",title:"Export conversation",onClick:()=>Bv({filename:"conversation.md",text:Uv(cn)}),children:i.jsx(ie,{name:"download",size:15})}):null]}),i.jsxs("div",{className:"code-content",children:[is?i.jsx(Hk,{ctl:Vn,host:Vi,enabled:e.connected,onClose:()=>In(!1)}):i.jsxs("main",{className:"code-conversation",id:"code-conversation",tabIndex:-1,children:[ye||Le.error||e.signOutError||Tt?i.jsxs("div",{className:"code-alert",role:"alert",children:[i.jsx(ie,{name:"warning",size:16}),i.jsx("span",{children:ye||Le.error||e.signOutError||Tt}),Le.error||Tt?i.jsx("button",{onClick:()=>{Tt?window.location.reload():ds(()=>wn.load(W.runId))},children:"Reconnect"}):i.jsx("button",{"aria-label":"Dismiss error",onClick:()=>ve(""),children:i.jsx(ie,{name:"x",size:14})})]}):null,a.errors.length?i.jsx("div",{className:"code-discovery-errors",role:"status",children:i.jsxs("details",{children:[i.jsx("summary",{children:"Some gateway information could not be loaded"}),a.errors.map(I=>i.jsx("p",{children:I},I)),i.jsx("button",{onClick:()=>void a.refresh(),children:"Retry discovery"})]})}):null,Gs?i.jsxs("div",{className:"code-alert",role:"alert",children:[i.jsx("span",{children:Gs}),i.jsx("button",{onClick:dn,children:"New conversation"})]}):null,we?i.jsxs("div",{className:"code-alert",role:"alert",children:[i.jsxs("span",{children:["Workflow inputs: ",we]}),i.jsx("button",{onClick:()=>rt(I=>I+1),children:"Retry"})]}):null,q?i.jsxs("div",{className:"code-notice",role:"status",children:[q,i.jsx("button",{"aria-label":"Dismiss notice",onClick:()=>se(""),children:i.jsx(ie,{name:"x",size:13})})]}):null,ln||au(Le.status)?i.jsx(rj,{active:ln,paused:Wt,snapshot:Le,permissionsAll:S.permissions==="all",onInteraction:_n&&!Wt?()=>{var Te;const I=document.querySelector(".code-conversation .pc-chat-thread"),Y=I==null?void 0:I.querySelector(".pc-workflow-interaction");!I||!Y||(I.scrollTop+=Y.getBoundingClientRect().top-I.getBoundingClientRect().top,(Te=Y.querySelector("h3"))==null||Te.focus({preventScroll:!0}))}:void 0,onRevokeApproval:()=>{wn.revokeToolApproval(),A(I=>({...I,permissions:"default"}))},onCommand:I=>ds(()=>wn.sendCommand(I,{})),onActivity:()=>{Li("activity"),lr(!0)}}):null,i.jsx(A_,{streamReplies:T,messages:(_n==null?void 0:_n.kind)==="tool-approval"?cn.filter(I=>{var Y,Te;return!(((Y=I.toolActivity)==null?void 0:Y.status)==="waiting"&&I.toolActivity.runId===((Te=Le.interaction)==null?void 0:Te.runId))}):cn,messageProps:{...vn.tts_supported?{onSpeakToggle:I=>{vn.toggle_tts(I.id||I.content,I.content)}}:{},getSpeakState:I=>vn.tts_playback.key===(I.id||I.content)?vn.tts_playback.status:"idle"},draft:fe,onDraftChange:ue,onSend:Qn,busy:dr,busyLabel:Va?"Waiting for you":Q?"Starting…":Wt?"Paused":"Working…",sendWhileBusy:ln&&!Q&&!Va,sendLabel:ln?on==="queue"?"Queue":"Steer":"Send",onCancel:Js,stopState:Le.stop??null,disabled:!e.connected,interaction:_n,onAttach:()=>{var I;return(I=ke.current)==null?void 0:I.click()},onFiles:I=>{hr(I)},attachments:G.length||oe.length?i.jsx(nj,{attachments:G,uploads:oe,sizes:Z.current,onRemoveAttachment:I=>B(Y=>Y.filter((Te,ze)=>ze!==I)),onRemoveUpload:Ha,onRetryUpload:ml}):null,placeholder:ln?on==="queue"?"Queue the next task after this run…":_n?"Answer the request above, or choose Queue next turn…":"Guide the current workflow…":"Describe what you want to build, fix, or explore…",emptyState:ln?null:i.jsx(fj,{workflow:P,loading:a.loading||pe,onSuggestion:ue,onInputs:()=>Rn(!0),isAgent:Ui,onRun:()=>ds(()=>Jn(fe)),connected:e.connected}),composerExtras:i.jsxs(i.Fragment,{children:[i.jsxs("button",{className:"code-composer-workspace",onClick:()=>Ir("workspace"),title:Kn||"Workspace is managed by the gateway",children:[i.jsx(ie,{name:"terminal",size:14}),i.jsx("span",{children:Kn.split("/").filter(Boolean).pop()||"Gateway workspace"})]}),e.connected?i.jsx(ij,{runId:W.runId,voice:vn,capability:cs,onSettings:()=>x(!0),answer:[...cn].reverse().find(I=>I.role==="assistant")},`${t}:${W.sessionId}:${W.runId}`):null,ln?i.jsxs("select",{"aria-label":"Message destination",value:on,onChange:I=>Ua(I.target.value),children:[i.jsxs("option",{value:"steer",disabled:!!_n,children:["Guide this run",_n?" (answer above)":""]}),i.jsx("option",{value:"queue",children:"Queue next turn"})]}):null]}),footer:i.jsxs(i.Fragment,{children:[i.jsxs("span",{children:["Enter to send ",i.jsx("span",{"aria-hidden":"true",children:"·"})," Shift + Enter for a new line"]}),i.jsxs("span",{children:[(Zs=a.policy)!=null&&Zs.clientWorkspaceScopeOverrides?"Gateway policy enforced":"Managed workspace",i.jsx("span",{className:"code-small-dot"})]})]})}),Gn.length?i.jsxs("div",{className:"code-queue",children:[i.jsxs("div",{children:[i.jsxs("strong",{children:[Gn.length," queued"," ",Gn.length===1?"turn":"turns"]}),i.jsx(Ps,{className:"code-queue__switch",variant:"sm",action:"queue-running",label:"Run queued turns",hint:"On: each queued turn starts when the current run ends. Off: they wait here.",checked:Fs,onChange:yn})]}),Gn.map(I=>i.jsxs("div",{children:[i.jsx("span",{children:I.text}),ln?null:i.jsx("button",{onClick:()=>ds(()=>Ga(I)),children:"Run next"}),i.jsx("button",{"aria-label":"Remove queued turn",onClick:()=>Hn(Y=>Y.filter(Te=>Te.id!==I.id)),children:i.jsx(ie,{name:"x",size:13})})]},I.id))]}):null]}),zt?i.jsx("button",{className:"code-inspector-scrim","aria-hidden":"true",tabIndex:-1,onClick:()=>lr(!1)}):null,zt?i.jsx(pk,{tab:za,onTab:Li,policy:a.policy,runId:W.runId,records:Le.records,enabled:e.connected,isAdmin:((qs=(Qa=(Lr=e.status)==null?void 0:Lr.gateway)==null?void 0:Qa.principal)==null?void 0:qs.admin)===!0,refreshKey:Le.status,onAttachFiles:hr,onClose:()=>lr(!1),onAttach:async I=>{const Y=W.sessionId,Te=W.runId,ze=mt.current,Oe=await $n.attachments_ingest(Y,I);at.current.sessionId===Y&&at.current.runId===Te&&mt.current===ze&&B(It=>[...It,Oe])}}):null]}),i.jsxs("footer",{className:"code-statusbar",children:[i.jsxs("span",{children:[i.jsx("span",{className:`code-status-dot ${e.connected?"is-online":""}`}),e.connected?"Connected":e.phase==="loading"?"Connecting":"Disconnected"]}),i.jsx("span",{children:(P==null?void 0:P.name)||"No workflow selected"}),i.jsx("div",{}),i.jsx("span",{children:W.runId?`Run ${W.runId.slice(0,8)}`:"Ready to start"}),i.jsx("button",{onClick:()=>f(!0),children:l.theme.replace(/-/g," ")})]})]}),i.jsx("div",{className:"pc-sr-only",role:"status","aria-live":"polite",children:Ce}),i.jsx("input",{ref:ke,hidden:!0,type:"file",multiple:!0,onChange:I=>{hr(Array.from(I.target.files||[])),I.target.value=""}}),i.jsx(Kk,{open:Ar,onClose:()=>as(!1),target:Sk(j,P),workflowLabel:j===En?Kh(a.gatewayDefault):(P==null?void 0:P.name)||"the selected workflow",initialPrompt:fe||((ei=[...cn].reverse().find(I=>I.role==="user"))==null?void 0:ei.content)||"",ctl:Vn,onOpenMyEmail:Hs,onCreated:()=>{In(!0),Ht(!1)}}),i.jsx(Uy,{...e.modalProps}),i.jsx(uu,{open:v,onClose:()=>x(!1),label:"Voice settings",title:"AI voice",width:480,topOffset:rs,className:"code-settings-drawer",children:i.jsx("div",{className:"code-settings",children:e.connected?i.jsx(mw,{value:b,onChange:I=>{vn.stop_tts(),C(I)},fetchCatalog:(I,Y)=>dt(Se(`voice/voices?compact=true${I?`&provider=${encodeURIComponent(I)}`:""}${Y?`&model=${encodeURIComponent(Y)}`:""}`))}):null})}),i.jsx(lw,{open:d,onClose:()=>f(!1),value:l,onChange:u}),i.jsx(gb,{open:or,topOffset:rs,onClose:()=>Er(!1),tab:dl,onTab:Ii,value:S,onChange:I=>{const Y=[];(S.provider||S.model)&&!I.provider&&!I.model&&Y.push("provider","model"),S.toolsCustomized&&!I.toolsCustomized&&Y.push("tools"),S.maxIterations&&!I.maxIterations&&Y.push("max_iterations"),Y.length&&me(Te=>{const ze={...Te},Oe=Ra(X);for(const It of Y)delete ze[It],Object.prototype.hasOwnProperty.call(Oe,It)&&(ze[It]=Oe[It]);return ze}),A(I)},policy:a.policy,tools:a.tools,defaultModel:K.provider&&K.model?{provider:String(K.provider),model:String(K.model)}:a.defaultModel,workflowDefault:!!(K.provider&&K.model),streaming:a.streaming,disabled:dr||!e.connected},t),i.jsx(uu,{open:Tn,onClose:()=>Rn(!1),label:"Workflow inputs",title:(P==null?void 0:P.name)||"Workflow inputs",width:480,topOffset:rs,className:"code-settings-drawer",children:i.jsxs("div",{className:"code-settings",children:[i.jsx("p",{className:"code-muted",children:(P==null?void 0:P.description)||"Configure the values this workflow needs to run."}),pe?i.jsx("p",{role:"status",children:"Loading input schema…"}):we?null:H||un?i.jsx(Xk,{schema:X,promptProperty:un,defaultModel:a.defaultModel,values:K,onChange:me,disabled:dr,onEditorError:Ke},P==null?void 0:P.id):i.jsx(ku,{schema:X,defaultModel:a.defaultModel,values:K,onChange:me,disabled:dr,rawObject:!0,onEditorError:Ke},P==null?void 0:P.id),we?i.jsx("p",{role:"alert",className:"code-error-text",children:we}):null,Ui?i.jsxs("button",{className:"code-primary-button",onClick:()=>Rn(!1),children:["Back to chat ",i.jsx(ie,{name:"chat",size:16})]}):i.jsxs("button",{className:"code-primary-button",disabled:dr||pe||!!we||!!Fe||!e.connected,onClick:()=>ds(()=>Jn(fe||String(K[un||"prompt"]||""))),children:["Run workflow ",i.jsx(ie,{name:"playCircle",size:16})]})]})})]})}function dj({item:e,selected:t,onClick:s}){const a=e.prompt||`Conversation ${e.sessionId.slice(0,8)}`,l=e.updatedAt?new Date(e.updatedAt):null;return i.jsxs("button",{className:`code-session${t?" is-selected":""}`,"aria-current":t?"page":void 0,onClick:s,title:a,children:[i.jsx(ie,{name:"chat",size:15}),i.jsxs("span",{children:[i.jsx("strong",{children:a}),i.jsxs("small",{children:[l&&Number.isFinite(l.getTime())?l.toLocaleDateString(void 0,{month:"short",day:"numeric"}):"Saved conversation"," ",i.jsx("span",{"aria-hidden":"true",children:"·"})," ",e.turnCount," ",e.turnCount===1?"turn":"turns"]})]}),e.state==="running"||e.state==="waiting"?i.jsx("span",{className:`code-status-dot ${e.state==="running"?"is-working":"is-waiting"}`,title:e.state}):null]})}function fj({workflow:e,loading:t,onSuggestion:s,onInputs:a,isAgent:l,onRun:u,connected:d}){return i.jsxs("div",{className:"code-welcome",children:[i.jsxs("div",{className:"code-welcome-symbol","aria-hidden":"true",children:[i.jsx("span",{children:"›"}),i.jsx("span",{children:"_"})]}),i.jsx("p",{className:"code-eyebrow",children:"A LITTLE CONTEXT. A LOT OF POSSIBILITY."}),i.jsx("h1",{children:"What are we building?"}),i.jsxs("p",{className:"code-welcome-description",children:["A focused space to think, code, and get things done.",i.jsx("br",{}),"Your workflows. Your tools. One conversation."]}),e&&!l?i.jsxs("div",{className:"code-workflow-welcome",children:[i.jsx(ie,{name:"playCircle",size:21}),i.jsxs("div",{children:[i.jsx("strong",{children:e.name}),i.jsx("p",{children:e.description||"Run this workflow with its registered inputs."})]}),i.jsx("button",{onClick:a,children:"Configure inputs"}),i.jsx("button",{onClick:u,disabled:t||!d,children:"Run workflow"})]}):i.jsx("div",{className:"code-suggestions",children:[{icon:"terminal",title:"Explore this project",detail:"Find your bearings in the codebase",prompt:"Explore this project and explain its architecture, key entry points, and how to run its tests."},{icon:"edit",title:"Build something new",detail:"Turn an idea into working code",prompt:"I'd like to build a new feature. Help me clarify the requirements and plan the implementation."},{icon:"warning",title:"Track down a bug",detail:"Understand what went wrong",prompt:"Help me investigate a bug. Start by asking what happened and what I expected."},{icon:"check",title:"Review my changes",detail:"Get a second pair of eyes",prompt:"Review the current changes for correctness, edge cases, and maintainability. Explain any findings before making edits."}].map(f=>i.jsxs("button",{onClick:()=>s(f.prompt),disabled:t,children:[i.jsx(ie,{name:f.icon,size:18}),i.jsxs("span",{children:[i.jsx("strong",{children:f.title}),i.jsx("small",{children:f.detail})]}),i.jsx(ie,{name:"chevronRight",size:13})]},f.title))}),i.jsx("p",{className:"code-welcome-hint",children:t?"Discovering your workflows…":e?i.jsxs(i.Fragment,{children:["Using ",i.jsx("strong",{children:e.name})," · Change workflows above"]}):d?"Register a workflow with AbstractGateway to get started.":"Connect your gateway to get started."})]})}class hj extends ft.Component{constructor(){super(...arguments);mn(this,"state",{error:""})}static getDerivedStateFromError(s){return{error:s.message}}render(){return this.state.error?i.jsxs("div",{className:"code-crash",role:"alert",children:[i.jsx("h1",{children:"Something interrupted this view."}),i.jsx("p",{children:this.state.error}),i.jsx("p",{children:"Your runs are stored by the gateway."}),i.jsx("button",{onClick:()=>window.location.reload(),children:"Reload AbstractCode"})]}):this.props.children}}my();Cv();"serviceWorker"in navigator&&window.addEventListener("load",()=>{navigator.serviceWorker.register("sw.js").catch(()=>{})});cy.createRoot(document.getElementById("root")).render(i.jsx(ft.StrictMode,{children:i.jsx(hj,{children:i.jsx(uj,{})})}));